├── .gitignore ├── public ├── decks │ ├── jmpress.js │ │ ├── test │ │ │ ├── fixtures │ │ │ │ └── ajax.html │ │ │ ├── components │ │ │ │ ├── ajax.test.js │ │ │ │ └── templates.test.js │ │ │ └── index.html │ │ ├── docs │ │ │ ├── lib │ │ │ │ ├── docs │ │ │ │ │ ├── notFound.jade │ │ │ │ │ ├── page.jade │ │ │ │ │ ├── yamyam.loader.js │ │ │ │ │ └── index.js │ │ │ │ ├── builder │ │ │ │ │ ├── setting.jade │ │ │ │ │ ├── download.png │ │ │ │ │ ├── downloadify.swf │ │ │ │ │ ├── component.jade │ │ │ │ │ ├── page.jade │ │ │ │ │ ├── build.js │ │ │ │ │ └── index.js │ │ │ │ ├── web_modules │ │ │ │ │ ├── jquery-hashchange │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── jquery.ba-hashchange.min.js │ │ │ │ │ ├── jquery │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── bootstrap │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── bootstrap.js │ │ │ │ │ ├── highlight.js │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── github.css │ │ │ │ │ └── downloadify │ │ │ │ │ │ └── index.js │ │ │ │ ├── body.css │ │ │ │ ├── body.jade │ │ │ │ └── index.js │ │ │ └── presentation-mode.png │ │ ├── examples │ │ │ ├── ajax │ │ │ │ ├── content.html │ │ │ │ ├── index.html │ │ │ │ └── ajax.css │ │ │ ├── cube │ │ │ │ └── cube.css │ │ │ ├── animation │ │ │ │ └── animation.css │ │ │ ├── zoomable │ │ │ │ └── zoomable.css │ │ │ ├── form-dynamic │ │ │ │ ├── style.css │ │ │ │ └── index.html │ │ │ ├── automatic-layout │ │ │ │ └── automatic.css │ │ │ ├── tab-control │ │ │ │ └── style.css │ │ │ ├── nested-templates │ │ │ │ └── nested-template.css │ │ │ ├── vacation │ │ │ │ └── vacation.css │ │ │ └── simple │ │ │ │ └── index.html │ │ ├── src │ │ │ ├── docs │ │ │ │ ├── mobile.md │ │ │ │ ├── near.md │ │ │ │ ├── start.md │ │ │ │ ├── circular.md │ │ │ │ ├── mouse.md │ │ │ │ ├── plugintoggle.md │ │ │ │ ├── jqevents.md │ │ │ │ ├── active.md │ │ │ │ ├── viewport.md │ │ │ │ ├── hash.md │ │ │ │ ├── help.md │ │ │ │ ├── ajax.md │ │ │ │ ├── examples.md │ │ │ │ ├── basic.md │ │ │ │ ├── keyboard.md │ │ │ │ ├── downloads.md │ │ │ │ ├── pluginsecondary.md │ │ │ │ ├── animation.md │ │ │ │ ├── ways.md │ │ │ │ ├── inline.md │ │ │ │ ├── index.md │ │ │ │ ├── pluginduration.md │ │ │ │ ├── plugin.md │ │ │ │ ├── templates.md │ │ │ │ └── contribute.md │ │ │ ├── css │ │ │ │ └── animations │ │ │ │ │ └── basic │ │ │ │ │ ├── appear.css │ │ │ │ │ ├── fade.css │ │ │ │ │ ├── drive.css │ │ │ │ │ ├── expand.css │ │ │ │ │ ├── zoom.css │ │ │ │ │ └── warp.css │ │ │ ├── components │ │ │ │ ├── start.js │ │ │ │ ├── jqevents.js │ │ │ │ ├── active.js │ │ │ │ ├── mouse.js │ │ │ │ ├── circular.js │ │ │ │ ├── mobile.js │ │ │ │ ├── ways.js │ │ │ │ ├── near.js │ │ │ │ └── ajax.js │ │ │ ├── plugins │ │ │ │ ├── toggle.js │ │ │ │ ├── secondary.js │ │ │ │ └── duration.js │ │ │ └── docs-nav.jade │ │ ├── AUTHORS │ │ ├── package.json │ │ ├── README.md │ │ ├── index.notes.html │ │ └── presentation-screen.html │ ├── deck.js │ │ ├── .gitignore │ │ ├── test │ │ │ ├── settings.js │ │ │ ├── fixtures │ │ │ │ ├── iframe_simple.html │ │ │ │ ├── empty.html │ │ │ │ ├── complex.html │ │ │ │ ├── iframes.html │ │ │ │ ├── nesteds.html │ │ │ │ └── standard.html │ │ │ ├── spec.scale.js │ │ │ ├── spec.status.js │ │ │ ├── spec.menu.js │ │ │ ├── index.html │ │ │ ├── spec.navigation.js │ │ │ ├── spec.hash.js │ │ │ └── lib │ │ │ │ └── jasmine.css │ │ ├── extensions │ │ │ ├── hash │ │ │ │ ├── deck.hash.html │ │ │ │ ├── deck.hash.css │ │ │ │ └── deck.hash.scss │ │ │ ├── navigation │ │ │ │ ├── deck.navigation.html │ │ │ │ ├── deck.navigation.scss │ │ │ │ ├── deck.navigation.css │ │ │ │ └── deck.navigation.js │ │ │ ├── status │ │ │ │ ├── deck.status.html │ │ │ │ ├── deck.status.css │ │ │ │ ├── deck.status.scss │ │ │ │ └── deck.status.js │ │ │ ├── goto │ │ │ │ ├── deck.goto.html │ │ │ │ ├── deck.goto.scss │ │ │ │ └── deck.goto.css │ │ │ ├── scale │ │ │ │ ├── deck.scale.scss │ │ │ │ └── deck.scale.css │ │ │ └── menu │ │ │ │ ├── deck.menu.scss │ │ │ │ └── deck.menu.css │ │ ├── MIT-license.txt │ │ └── themes │ │ │ ├── transition │ │ │ ├── fade.scss │ │ │ ├── fade.css │ │ │ └── horizontal-slide.scss │ │ │ └── style │ │ │ ├── swiss.scss │ │ │ └── swiss.css │ ├── reveal.js │ │ ├── .gitignore │ │ ├── lib │ │ │ ├── font │ │ │ │ ├── league_gothic_license │ │ │ │ ├── league_gothic-webfont.eot │ │ │ │ ├── league_gothic-webfont.ttf │ │ │ │ └── league_gothic-webfont.woff │ │ │ ├── js │ │ │ │ ├── html5shiv.js │ │ │ │ └── classList.js │ │ │ └── css │ │ │ │ └── zenburn.css │ │ ├── css │ │ │ ├── theme │ │ │ │ ├── README.md │ │ │ │ ├── template │ │ │ │ │ ├── settings.scss │ │ │ │ │ └── mixins.scss │ │ │ │ └── source │ │ │ │ │ ├── night.scss │ │ │ │ │ ├── serif.scss │ │ │ │ │ ├── sky.scss │ │ │ │ │ ├── simple.scss │ │ │ │ │ ├── default.scss │ │ │ │ │ └── beige.scss │ │ │ └── shaders │ │ │ │ └── tile-flip.fs │ │ ├── plugin │ │ │ ├── remotes │ │ │ │ └── remotes.js │ │ │ ├── postmessage │ │ │ │ ├── postmessage.js │ │ │ │ └── example.html │ │ │ ├── markdown │ │ │ │ └── markdown.js │ │ │ └── notes-server │ │ │ │ ├── client.js │ │ │ │ └── index.js │ │ ├── package.json │ │ ├── LICENSE │ │ └── grunt.js │ ├── impress.js │ │ ├── favicon.png │ │ ├── apple-touch-icon.png │ │ └── component.json │ └── scrolldeck.js │ │ ├── img │ │ └── resize.png │ │ ├── decks │ │ └── responsive │ │ │ └── img │ │ │ ├── tuts.png │ │ │ ├── clean_l.jpg │ │ │ ├── clean_m.jpg │ │ │ ├── clean_s.jpg │ │ │ ├── devices.png │ │ │ ├── obama_l.jpg │ │ │ ├── obama_m.jpg │ │ │ ├── obama_s.jpg │ │ │ ├── bootstrap.png │ │ │ ├── foundation.png │ │ │ ├── goldilocks.png │ │ │ ├── skeleton.png │ │ │ ├── treehouse.png │ │ │ ├── greygoose_l.jpg │ │ │ ├── greygoose_s.jpg │ │ │ ├── bostonglobe_l.jpg │ │ │ ├── bostonglobe_m.jpg │ │ │ ├── bostonglobe_s.jpg │ │ │ ├── responsive-book.jpg │ │ │ ├── thisisresponsive.png │ │ │ └── responsive_web_design.png │ │ ├── README.md │ │ └── js │ │ └── jquery.scrollTo-1.4.3.1.min.js ├── favicon.ico ├── controldeck.js ├── control-swipe.html ├── control-2btn.html ├── control-impress.html ├── control-reveal.html ├── controldeck-slides.js └── css │ └── normalize.min.css ├── package.json ├── app.js └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules/ 2 | npm-debug.log -------------------------------------------------------------------------------- /public/decks/jmpress.js/test/fixtures/ajax.html: -------------------------------------------------------------------------------- 1 | foobar -------------------------------------------------------------------------------- /public/decks/deck.js/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .sass-cache/ 3 | progress/ -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/docs/notFound.jade: -------------------------------------------------------------------------------- 1 | .alert.alert-error 2 | | Document not found. -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/ajax/content.html: -------------------------------------------------------------------------------- 1 |

This was loaded via ajax.

-------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/setting.jade: -------------------------------------------------------------------------------- 1 | button(id="setting-"+name, class="btn btn-"+btn)= title -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/mobile.md: -------------------------------------------------------------------------------- 1 | # Mobile 2 | 3 | Adds support for swipe on touch supported browsers. -------------------------------------------------------------------------------- /public/decks/reveal.js/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .svn 3 | log/*.log 4 | tmp/** 5 | node_modules/ 6 | .sass-cache -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/jquery-hashchange/index.js: -------------------------------------------------------------------------------- 1 | require("script!./jquery.ba-hashchange.min.js"); -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/jquery/index.js: -------------------------------------------------------------------------------- 1 | require("script!./jquery-1.7.2.min.js"); 2 | module.exports = jQuery; -------------------------------------------------------------------------------- /public/decks/impress.js/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/impress.js/favicon.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/bootstrap/index.js: -------------------------------------------------------------------------------- 1 | require("./bootstrap.less"); 2 | require("jquery"); 3 | require("./bootstrap.js"); -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/img/resize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/img/resize.png -------------------------------------------------------------------------------- /public/decks/impress.js/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/impress.js/apple-touch-icon.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/appear.css: -------------------------------------------------------------------------------- 1 | .will-appear { 2 | opacity: 0; 3 | } 4 | 5 | .do-appear { 6 | opacity: 1; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/font/league_gothic_license: -------------------------------------------------------------------------------- 1 | SIL Open Font License (OFL) 2 | http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL 3 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/body.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 90px; 3 | } 4 | 5 | @media(max-width: 980px) { 6 | body { 7 | padding-top: 0; 8 | } 9 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/highlight.js/index.js: -------------------------------------------------------------------------------- 1 | require("./github.css"); 2 | module.exports = eval(require("raw!./highlight.pack.js") + ";hljs"); -------------------------------------------------------------------------------- /public/decks/deck.js/test/settings.js: -------------------------------------------------------------------------------- 1 | // SETTINGS, VARS, UTILITY FUNCTIONS 2 | jasmine.getFixtures().fixturesPath = 'fixtures'; 3 | var defaults = $.deck.defaults; 4 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/presentation-mode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/jmpress.js/docs/presentation-mode.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/jmpress.js/docs/lib/builder/download.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/downloadify.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/jmpress.js/docs/lib/builder/downloadify.swf -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/font/league_gothic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/reveal.js/lib/font/league_gothic-webfont.eot -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/font/league_gothic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/reveal.js/lib/font/league_gothic-webfont.ttf -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/tuts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/tuts.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/downloadify/index.js: -------------------------------------------------------------------------------- 1 | require("script!./js/swfobject.js"); 2 | require("script!./js/downloadify.min.js"); 3 | module.exports = Downloadify; -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/font/league_gothic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/reveal.js/lib/font/league_gothic-webfont.woff -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/clean_l.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/clean_l.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/clean_m.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/clean_m.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/clean_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/clean_s.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/devices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/devices.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/obama_l.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/obama_l.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/obama_m.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/obama_m.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/obama_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/obama_s.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/bootstrap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/bootstrap.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/foundation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/foundation.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/goldilocks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/goldilocks.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/skeleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/skeleton.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/treehouse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/treehouse.png -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/greygoose_l.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/greygoose_l.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/greygoose_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/greygoose_s.jpg -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/near.md: -------------------------------------------------------------------------------- 1 | # Near 2 | 3 | This component adds the `$(...).near` function to jQuery. This function finds the next and previous element in dom which matches a selector. -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_l.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_l.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_m.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_m.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/bostonglobe_s.jpg -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/responsive-book.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/responsive-book.jpg -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/hash/deck.hash.html: -------------------------------------------------------------------------------- 1 | 2 | # -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/thisisresponsive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/thisisresponsive.png -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/start.md: -------------------------------------------------------------------------------- 1 | # Starting Step 2 | 3 | This component handles the config option start. 4 | 5 | ### `property` start : `undefined` 6 | 7 | Selector of step to start from. (ex. `#home`) -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/decks/responsive/img/responsive_web_design.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markdalgleish/controldeck.js/HEAD/public/decks/scrolldeck.js/decks/responsive/img/responsive_web_design.png -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/iframe_simple.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Simple Iframe 9 | 10 | 11 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/AUTHORS: -------------------------------------------------------------------------------- 1 | project: jmpress.js 2 | commits: 396 3 | active : 83 days 4 | files : 143 5 | authors: 6 | 237 Tobias Koppers 59.8% 7 | 157 Kyle Robinson Young 39.6% 8 | 2 Marcus Lunzenauer 0.5% -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/circular.md: -------------------------------------------------------------------------------- 1 | # Circular Stepping 2 | 3 | This component handles the natural flow of the steps, taken from the dom order. 4 | It is based on the [Near](#docs-near) component. It also handles the 5 | `data-exclude` attribute. -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/navigation/deck.navigation.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/status/deck.status.html: -------------------------------------------------------------------------------- 1 | 2 |

3 | 4 | / 5 | 6 |

-------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/component.jade: -------------------------------------------------------------------------------- 1 | label.control-label(for="component-"+name) 2 | - if(locals.plugin) { 3 | span.label.label-info Plugin 4 | - } 5 | b= " " + title 6 | .controls 7 | label.checkbox 8 | input(id="component-"+name, type="checkbox") 9 | span= description -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/js/html5shiv.js: -------------------------------------------------------------------------------- 1 | document.createElement('header'); 2 | document.createElement('nav'); 3 | document.createElement('section'); 4 | document.createElement('article'); 5 | document.createElement('aside'); 6 | document.createElement('footer'); 7 | document.createElement('hgroup'); -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/hash/deck.hash.css: -------------------------------------------------------------------------------- 1 | .deck-container .deck-permalink { 2 | display: none; 3 | position: absolute; 4 | z-index: 4; 5 | bottom: 30px; 6 | right: 0; 7 | width: 48px; 8 | text-align: center; 9 | } 10 | 11 | .no-history .deck-container:hover .deck-permalink { 12 | display: block; 13 | } 14 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/hash/deck.hash.scss: -------------------------------------------------------------------------------- 1 | .deck-container { 2 | .deck-permalink { 3 | display:none; 4 | position:absolute; 5 | z-index:4; 6 | bottom:30px; 7 | right:0; 8 | width:48px; 9 | text-align:center; 10 | } 11 | } 12 | 13 | .no-history .deck-container:hover .deck-permalink { 14 | display:block; 15 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/mouse.md: -------------------------------------------------------------------------------- 1 | # Mouse 2 | 3 | This component handles clicking to activate steps. 4 | 5 | ### `property` mouse.clickSelects : `true` 6 | 7 | By default clicking to active a step is enabled. To disable: 8 | 9 | ``` javascript 10 | $('#jmpress').jmpress({ 11 | mouse: { clickSelects: false } 12 | }); 13 | ``` -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/docs/page.jade: -------------------------------------------------------------------------------- 1 | .container-fluid 2 | .row-fluid 3 | .span10 4 | .page-header 5 | h1 jmpress.js 6 | small docs 7 | .span2 8 | a.btn.btn-large.edit-button(href="#") Edit This Page 9 | .row-fluid 10 | .span2 11 | ul.nav.nav-pills.nav-stacked!= require("../../../src/docs-nav.jade")() 12 | .span10.content -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/components/start.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * start.js 3 | * Set the first step to start on 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | 9 | /* HOOKS */ 10 | $.jmpress( 'selectInitialStep', function( nil, eventData ) { 11 | return eventData.settings.start; 12 | }); 13 | 14 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/status/deck.status.css: -------------------------------------------------------------------------------- 1 | .deck-container .deck-status { 2 | position: absolute; 3 | bottom: 10px; 4 | right: 5px; 5 | color: #888; 6 | z-index: 3; 7 | margin: 0; 8 | } 9 | 10 | body.deck-container .deck-status { 11 | position: fixed; 12 | } 13 | 14 | @media print { 15 | .deck-status { 16 | display: none; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/README.md: -------------------------------------------------------------------------------- 1 | Themes are written using Sass to keep things modular and reduce the need for repeated selectors across files. Find out how to install Sass here http://sass-lang.com/, once Sass is installed run the follwing command to start monitoring the source files for changes. 2 | 3 | ``` 4 | sass --watch css/theme/source/:css/theme --style expanded 5 | ``` -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/goto/deck.goto.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 | 6 | 7 |
-------------------------------------------------------------------------------- /public/decks/deck.js/extensions/status/deck.status.scss: -------------------------------------------------------------------------------- 1 | .deck-container { 2 | .deck-status { 3 | position:absolute; 4 | bottom:10px; 5 | right:5px; 6 | color:#888; 7 | z-index:3; 8 | margin:0; 9 | } 10 | } 11 | 12 | body.deck-container { 13 | .deck-status { 14 | position:fixed; 15 | } 16 | } 17 | 18 | @media print { 19 | .deck-status { 20 | display:none; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/plugintoggle.md: -------------------------------------------------------------------------------- 1 | # Plugin: Toggle 2 | 3 | Bind a key to toggle the de/initialization of jmpress.js. Example: 4 | 5 | ``` javascript 6 | $("#jmpress").jmpress("toggle", 27, { 7 | // jmpress options 8 | }); // Bind escape key 9 | ``` 10 | 11 | There is a optional 3rd boolean parameter which indicate the initial status of jmpress.js. 12 | Set it to `true` to automatically initialize jmpress.js. 13 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "controldeck", 3 | "version": "0.0.0", 4 | "description": "Control HTML5 Presentations with node.js", 5 | "main": "app.js", 6 | "dependencies": { 7 | "node-static": "~0.6.6", 8 | "socket.io": "~0.9.13" 9 | }, 10 | "devDependencies": {}, 11 | "repository": { 12 | "type": "git", 13 | "url": "git://github.com/dfcb/controldeck.js.git" 14 | }, 15 | "keywords": [], 16 | "author": "John Polacek", 17 | "license": "MIT" 18 | } 19 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/jqevents.md: -------------------------------------------------------------------------------- 1 | # jQuery Events 2 | 3 | This component fires the jQuery events `enterStep` and `leaveStep`. 4 | 5 | These events can be added to specific steps to be triggered as the step is entered and left: 6 | 7 | ``` javascript 8 | $('#a-specific-step') 9 | .on('enterStep', function(event) { 10 | // Called when entering only this step 11 | }) 12 | .on('leaveStep', function(event) { 13 | // Called when leaving only this step 14 | }); 15 | ``` 16 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/active.md: -------------------------------------------------------------------------------- 1 | # Active 2 | 3 | This component manages the step active settings. 4 | 5 | ### `property` activeClass : `'active'` 6 | 7 | A class name to set on the current step. 8 | 9 | ### `property` nestedActiveClass : `'nested-active'` 10 | 11 | A class name to set on all parents of the current step. 12 | 13 | ### `callback` setActive : `function( element, eventData )` 14 | 15 | When a step is activated or selected. 16 | 17 | ### `callback` setInactive : `function( element, eventData )` 18 | 19 | When a previously active step is de-activated or not 20 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/viewport.md: -------------------------------------------------------------------------------- 1 | # Viewport 2 | 3 | This component handles camera zooming to window size and zooming in zoomable 4 | steps. The binding of [+] and [-] keys relies on the Keyboard component. 5 | 6 | ### `property` viewPort.width : `false` 7 | 8 | Let camera zoom to contain at least width. 9 | 10 | ### `property` viewPort.height : `false` 11 | 12 | Let camera zoom to contain at least height. 13 | 14 | ### `property` viewPort.maxScale 15 | 16 | Maximum zoom factor of camera. 17 | 18 | ### `property` viewPort.minScale 19 | 20 | Minimum zoom factor of camera. -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/cube/cube.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | pointer-events: none; 8 | } 9 | 10 | /** STEP STYLES **/ 11 | .step { 12 | width: 1000px; 13 | height: 1000px; 14 | 15 | display: block; 16 | padding: 100px; 17 | 18 | font-size: 200px; 19 | 20 | border: 10px solid black; 21 | 22 | -webkit-box-sizing: border-box; 23 | -moz-box-sizing: border-box; 24 | -ms-box-sizing: border-box; 25 | -o-box-sizing: border-box; 26 | box-sizing: border-box; 27 | } 28 | } -------------------------------------------------------------------------------- /public/decks/reveal.js/plugin/remotes/remotes.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Touch-based remote controller for your presentation courtesy 3 | * of the folks at http://remotes.io 4 | */ 5 | 6 | head.ready( 'remotes.ne.min.js', function() { 7 | 8 | new Remotes("preview") 9 | .on("swipe-left", function(e){ Reveal.right(); }) 10 | .on("swipe-right", function(e){ Reveal.left(); }) 11 | .on("swipe-up", function(e){ Reveal.down(); }) 12 | .on("swipe-down", function(e){ Reveal.up(); }) 13 | .on("tap", function(e){ 14 | Reveal.toggleOverview(); 15 | }); 16 | 17 | } ); 18 | 19 | head.js( 'https://raw.github.com/Remotes/Remotes/master/dist/remotes.ne.min.js' ); -------------------------------------------------------------------------------- /public/decks/impress.js/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "impress-js", 3 | "version": "0.5.3", 4 | "main": "./js/impress.js", 5 | "description": "It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com", 6 | "homepage": "https://github.com/bartaz/impress.js", 7 | "license" : ["http://bartaz.mit-license.org/", "http://www.gnu.org/licenses/"], 8 | "main": [ 9 | "./js/impress.js", 10 | ], 11 | "keywords": [ 12 | "slideshow", 13 | "css3" 14 | ], 15 | "author": { 16 | "name": "Bartek Szopka", 17 | "web": "http://bartaz.github.com" 18 | } 19 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/components/jqevents.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * jqevents.js 3 | * Fires jQuery events 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | 9 | /* HOOKS */ 10 | // the events should not bubble up the tree 11 | // elsewise nested jmpress would cause buggy behavior 12 | $.jmpress("setActive", function( step, eventData ) { 13 | if(eventData.prevStep !== step) { 14 | $(step).triggerHandler("enterStep"); 15 | } 16 | }); 17 | $.jmpress("setInactive", function( step, eventData ) { 18 | if(eventData.nextStep !== step) { 19 | $(step).triggerHandler("leaveStep"); 20 | } 21 | }); 22 | 23 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/hash.md: -------------------------------------------------------------------------------- 1 | # Hash in URL 2 | 3 | This component handles updates to and change events from the url hash. It also handles clicks on link to other steps. As the initial hash also defines a starting step which should override the Starting Step component, this component should be included after that. 4 | 5 | ### `property` hash.use : `true` 6 | 7 | Whether the url hash should be used with jmpress. 8 | 9 | ### `property` hash.update : `true` 10 | 11 | Whether the url hash should be updated on step change. 12 | 13 | ### `property` hash.bindChange : `true` 14 | 15 | Whether changes of the url hash and clicks on link should be converted into step selects. -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/empty.html: -------------------------------------------------------------------------------- 1 |
2 | Previous 3 | Next 4 | 5 |

6 | 7 | / 8 | 9 |

10 | 11 |
12 | 13 | 14 | 15 |
16 | 17 | # 18 | Internal Test Link 19 |
-------------------------------------------------------------------------------- /public/decks/jmpress.js/src/plugins/toggle.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * jmpress.toggle plugin 3 | * For binding a key to toggle de/initialization of jmpress.js. 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 'use strict'; 7 | $.jmpress("register", "toggle", function( key, config, initial ) { 8 | var jmpress = this; 9 | $(document).bind("keydown", function( event ) { 10 | if ( event.keyCode === key ) { 11 | if ($(jmpress).jmpress("initialized")) { 12 | $(jmpress).jmpress("deinit"); 13 | } else { 14 | $(jmpress).jmpress(config); 15 | } 16 | } 17 | }); 18 | if ( initial ) { 19 | $(jmpress).jmpress(config); 20 | } 21 | }); 22 | }(jQuery, document, window)); 23 | -------------------------------------------------------------------------------- /public/decks/reveal.js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "reveal.js", 3 | "version": "2.2.0", 4 | "description": "The HTML Presentation Framework", 5 | "homepage": "http://lab.hakim.se/reveal-js", 6 | "author": { 7 | "name": "Hakim El Hattab", 8 | "email": "hakim.elhattab@gmail.com", 9 | "web": "http://hakim.se" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "git://github.com/hakimel/reveal.js.git" 14 | }, 15 | "engines": { 16 | "node": "~0.8.0" 17 | }, 18 | "dependencies": { 19 | "underscore" : "~1.3.3", 20 | "express" : "~2.5.9", 21 | "socket.io" : "~0.9.6", 22 | "mustache" : "~0.4.0" 23 | }, 24 | "devDependencies": { 25 | "grunt-contrib-mincss": "~0.3.1" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/body.jade: -------------------------------------------------------------------------------- 1 | - require("bootstrap"); 2 | - require("./body.css"); 3 | .navbar.navbar-fixed-top 4 | .navbar-inner 5 | .container 6 | a.btn.btn-navbar(data-toggle="collapse", data-target=".nav-collapse") 7 | span.icon-bar 8 | span.icon-bar 9 | span.icon-bar 10 | a.brand(href="http://shama.github.com/jmpress.js") 11 | | jmpress.js 12 | span= " " + require("../../package.json").version 13 | .nav-collapse 14 | ul.nav 15 | li.dropdown 16 | a.dropdown-toggle(href="#docs-index", data-toggle="dropdown") 17 | | Docs 18 | b.caret 19 | ul.dropdown-menu!= require("../../src/docs-nav.jade")() 20 | li: a(href="#builder") Custom Downloader 21 | .page 22 | -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/complex.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
6 |
7 |
8 | 9 |
10 | 11 |
12 | 13 |

14 | 15 | / 16 | 17 |

18 | 19 |
20 | 21 | 22 | 23 |
24 |
-------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/page.jade: -------------------------------------------------------------------------------- 1 | .container-fluid 2 | .row-fluid 3 | .span12 4 | .page-header 5 | h1 6 | | jmpress.js 7 | small custom downloader 8 | .row-fluid 9 | .span8 10 | p 11 | | Build your own version of 12 | b jmpress.js 13 | b   14 | b= require("../../../package.json").version 15 | p 16 | em 17 | | Select the components and plugins you need for your 18 | | project and click on "Download" to save it. 19 | form.form-horizontal#choose-form 20 | fieldset 21 | .form-actions#form-actions 22 | #downloadify 23 | a.btn.btn-primary#dataurl(download="jmpress.js") 24 | | Download (Data Url) 25 | .span4 26 | h2 Common builds 27 | #settings 28 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/help.md: -------------------------------------------------------------------------------- 1 | # Where To Get Help 2 | 3 | If you are stuck or have a question about jmpress.js, there are a few places to get help: 4 | 5 | * [Github Issues](https://github.com/shama/jmpress.js/issues) 6 | Create a new issue. We take support questions there as well. 7 | 8 | * [Google Group](https://groups.google.com/group/jmpressjs) 9 | Ask/Answer questions regarding jmpress.js. 10 | 11 | * [#jmpress on irc.freenode.net](irc://irc.freenode.net/jmpress) 12 | Ask/Answer questions via IRC. 13 | 14 | * [Google+](https://plus.google.com/111820806291252876587/posts) 15 | +1 us on Google+ and get updates about the project. 16 | 17 | * [@shamakry](http://twitter.com/shamakry) 18 | Tweet your question or notification directly. 19 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/docs/yamyam.loader.js: -------------------------------------------------------------------------------- 1 | var YamYam = require("YamYam"); 2 | 3 | module.exports = function(source) { 4 | var cb = this.callback; 5 | YamYam.parse(source, { 6 | format: { 7 | line: { 8 | tag: "", 9 | _prepend: " ", 10 | _prependStart: "" 11 | }, 12 | codeContainer: { 13 | tag: "pre", 14 | "class": function(buffer, params, element) { 15 | if(element.language) 16 | buffer.push("language-" + element.language.replace(/"/g, """)); 17 | } 18 | }, 19 | code: "", 20 | codeText: "", 21 | annotations: { 22 | "@attrs": YamYam.HtmlFormater.ATTRS 23 | } 24 | } 25 | }, function(err, html) { 26 | cb(err, html && ("module.exports =\n\t" + JSON.stringify(html) + ";")); 27 | }); 28 | } 29 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/docs/index.js: -------------------------------------------------------------------------------- 1 | var hljs = require("highlight.js"); 2 | 3 | module.exports = function(element, hash) { 4 | element.html(require("./page.jade")()); 5 | var list = element.find("ul"); 6 | document.title = "jmpress.js - docs"; 7 | var content = element.find(".content"); 8 | var editButton = element.find(".edit-button"); 9 | try { 10 | require("bundle!./yamyam!../../../src/docs/"+hash[0]+".md")(function(doc) { 11 | content.html(doc); 12 | editButton.attr("href", "https://github.com/shama/jmpress.js/edit/dev/src/docs/" + hash[0] + ".md"); 13 | content.find("pre").each(function() { 14 | hljs.highlightBlock(this); 15 | }); 16 | list.find("#docs-"+hash[0]).addClass("active"); 17 | }); 18 | } catch(e) { 19 | content.html(require("./notFound.jade")); 20 | } 21 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/fade.css: -------------------------------------------------------------------------------- 1 | .will-fade { 2 | -webkit-transition: opacity 1s; 3 | -moz-transition: opacity 1s; 4 | -ms-transition: opacity 1s; 5 | -o-transition: opacity 1s; 6 | transition: opacity 1s; 7 | 8 | opacity: 0; 9 | } 10 | .will-fade-slow { 11 | -webkit-transition: opacity 2s; 12 | -moz-transition: opacity 2s; 13 | -ms-transition: opacity 2s; 14 | -o-transition: opacity 2s; 15 | transition: opacity 2s; 16 | 17 | opacity: 0; 18 | } 19 | .will-fade-fast { 20 | -webkit-transition: opacity 0.5s; 21 | -moz-transition: opacity 0.5s; 22 | -ms-transition: opacity 0.5s; 23 | -o-transition: opacity 0.5s; 24 | transition: opacity 0.5s; 25 | 26 | opacity: 0; 27 | } 28 | 29 | .do-fade, .do-fade-slow, .do-fade-fast { 30 | opacity: 1; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/goto/deck.goto.scss: -------------------------------------------------------------------------------- 1 | .deck-container { 2 | .goto-form { 3 | position:absolute; 4 | z-index:3; 5 | bottom:10px; 6 | left:50%; 7 | height:1.75em; 8 | margin:0 0 0 -9.125em; 9 | line-height:1.75em; 10 | padding:0.625em; 11 | display:none; 12 | background:#ccc; 13 | overflow:hidden; 14 | 15 | .borderradius & { 16 | -webkit-border-radius:10px; 17 | -moz-border-radius:10px; 18 | border-radius:10px; 19 | } 20 | 21 | label { 22 | font-weight:bold; 23 | } 24 | 25 | label, input { 26 | display:inline-block; 27 | font-family:inherit; 28 | } 29 | } 30 | } 31 | 32 | .deck-goto .goto-form { 33 | display:block; 34 | } 35 | 36 | #goto-slide { 37 | width:8.375em; 38 | margin:0 0.625em; 39 | height:1.4375em; 40 | } 41 | 42 | @media print { 43 | .goto-form, #goto-slide { 44 | display:none !important; 45 | } 46 | } -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/iframes.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
6 | 7 |
8 | 9 |
10 | 11 |
12 | 13 |
14 | 15 |
16 | 17 |
18 | 19 |
20 | 21 |

22 | 23 | / 24 | 25 |

26 | 27 |
28 | 29 | 30 | 31 |
32 |
33 | -------------------------------------------------------------------------------- /public/controldeck.js: -------------------------------------------------------------------------------- 1 | $(function(){ 2 | var iosocket = io.connect(); 3 | 4 | iosocket.on('connect', function () { 5 | // console.log('connected'); 6 | }); 7 | iosocket.on('disconnect', function() { 8 | // console.log('disconnected'); 9 | }); 10 | 11 | $(window).keydown(function(e) { 12 | // console.log('Sending keyboard command: '+e.keyCode); 13 | iosocket.send(e.keyCode); 14 | }); 15 | 16 | var press = Modernizr.touch ? 'touchstart' : 'click'; 17 | $('body').on(press,'.btn', function(e) { 18 | e.preventDefault(); 19 | if ($(this).attr('data-key')) { 20 | // console.log('sending button command: '+$(this).attr('data-key')); 21 | iosocket.send($(this).attr('data-key')); 22 | } else if ($(this).attr('data-goto')) { 23 | iosocket.send('goto:'+$(this).attr('data-goto')); 24 | } 25 | }); 26 | }); -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/scale/deck.scale.scss: -------------------------------------------------------------------------------- 1 | /* Remove this line if you are embedding deck.js in a page and 2 | using the scale extension. */ 3 | .csstransforms { 4 | overflow:hidden; 5 | } 6 | 7 | .csstransforms .deck-container.deck-scale:not(.deck-menu) { 8 | > .slide { 9 | -webkit-box-sizing: padding-box; 10 | -moz-box-sizing: padding-box; 11 | box-sizing: padding-box; 12 | width:100%; 13 | padding-bottom:20px; 14 | 15 | > .deck-slide-scaler { 16 | -webkit-transform-origin: 50% 0; 17 | -moz-transform-origin: 50% 0; 18 | -o-transform-origin: 50% 0; 19 | -ms-transform-origin: 50% 0; 20 | transform-origin: 50% 0; 21 | } 22 | } 23 | } 24 | 25 | .csstransforms .deck-container.deck-menu .deck-slide-scaler { 26 | -webkit-transform:none !important; 27 | -moz-transform:none !important; 28 | -o-transform:none !important; 29 | -ms-transform:none !important; 30 | transform:none !important; 31 | } -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/nesteds.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 |
7 | 8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 19 |
20 |
21 | 22 |
23 |
24 | 25 |

26 | 27 | / 28 | 29 |

30 | 31 |
32 | 33 | 34 | 35 |
36 |
-------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/ajax.md: -------------------------------------------------------------------------------- 1 | # Ajax 2 | 3 | This component enables you to load step via ajax. It handles the `data-src` and 4 | `href` attribute and offers the `afterStepLoaded` event. 5 | 6 | **Load slides dynamically** 7 | You can load a slide dynamically by setting the *data-src* or *href* attribute 8 | on the slide. The slide will only be loaded when an adjacent slide or the slide 9 | itself is selected. 10 | 11 | ``` html 12 |
13 | Loading... 14 |
15 | ``` 16 | 17 | ### `property` ajaxLoadedClass : `'loaded'` 18 | 19 | Class name to set on each step that has started loading. 20 | 21 | ### `callback` ajax:loadStep : `function( element, eventData )` 22 | 23 | When a step has began loading via AJAX. 24 | 25 | ### `callback` ajax:afterStepLoaded : `function( element, eventData )` 26 | 27 | Called after the AJAX step has finished loading. -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/examples.md: -------------------------------------------------------------------------------- 1 | # Examples 2 | 3 | * [simple](http://shama.github.com/jmpress.js/examples/simple/) 4 | 5 | * [impress.js](http://shama.github.com/jmpress.js/examples/impress/) 6 | 7 | * [vacation](http://shama.github.com/jmpress.js/examples/vacation/) 8 | 9 | * [animation](http://shama.github.com/jmpress.js/examples/animation/) 10 | 11 | * [automatic layout](http://shama.github.com/jmpress.js/examples/automatic-layout/) 12 | 13 | * [nested templates](http://shama.github.com/jmpress.js/examples/nested-templates/) 14 | 15 | * [zoomable steps](http://shama.github.com/jmpress.js/examples/zoomable/) 16 | 17 | * [ajax](http://shama.github.com/jmpress.js/examples/ajax/) 18 | 19 | * [cube](http://shama.github.com/jmpress.js/examples/cube/) 20 | 21 | * [dynamic form](http://shama.github.com/jmpress.js/examples/form-dynamic/) 22 | 23 | * [tab control](http://shama.github.com/jmpress.js/examples/tab-control/) -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/animation/animation.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #FFF; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step { 11 | width: 900px; 12 | height: 500px; 13 | 14 | display: block; 15 | padding: 40px 60px; 16 | border-radius: 10px; 17 | 18 | color: black; 19 | 20 | -webkit-box-sizing: border-box; 21 | -moz-box-sizing: border-box; 22 | -ms-box-sizing: border-box; 23 | -o-box-sizing: border-box; 24 | box-sizing: border-box; 25 | } 26 | 27 | /** ANIMATION **/ 28 | .will-fade { 29 | -webkit-transition: opacity 1s; 30 | -moz-transition: opacity 1s; 31 | -ms-transition: opacity 1s; 32 | -o-transition: opacity 1s; 33 | transition: opacity 1s; 34 | 35 | opacity: 0; 36 | } 37 | .fade, .not-supported .will-fade { 38 | opacity: 1; 39 | } 40 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/basic.md: -------------------------------------------------------------------------------- 1 | # Basic Usage 2 | 3 | **Create a root element:** 4 | 5 | ``` html 6 |
7 | ``` 8 | 9 | **Fill it up with steps:** 10 | 11 | ``` html 12 |
13 |
Slide 1
14 |
Slide 2
15 |
16 | ``` 17 | 18 | **Tell jQuery to run it:** 19 | 20 | ``` javascript 21 | $(function() { 22 | $('#jmpress').jmpress(); 23 | }); 24 | ``` 25 | 26 | **Configure jmpress** 27 | 28 | ``` javascript 29 | $('#jmpress').jmpress({ 30 | stepSelector: 'li' 31 | }); 32 | ``` 33 | 34 | **Customize the hash id of each slide** 35 | The id of the step will appear as the URI hash to recall the slide later. If you don't give your steps ids then the id `step-N` will be used. 36 | 37 | ``` html 38 |
41 | Slide 1 42 |
43 | ``` 44 | -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | var static = require('node-static'), 2 | http = require('http'), 3 | util = require('util'), 4 | url = require('url'), 5 | fs = require('fs'); 6 | 7 | // create static server for decks 8 | var fileServer = new static.Server('./public'); 9 | 10 | var server = http.createServer(function (req, res) { 11 | 12 | var pathname = url.parse(req.url).pathname; 13 | console.log('pathname: '+pathname); 14 | 15 | req.addListener('end', function () { 16 | fileServer.serve(req, res); 17 | }); 18 | 19 | }).listen(8080, function() { 20 | console.log('Listening at: http://localhost:8080'); 21 | }); 22 | 23 | 24 | var io = require('socket.io').listen(server); 25 | io.sockets.on('connection', function(socket){ 26 | 27 | socket.on('message', function(message){ 28 | socket.broadcast.emit('message', message); 29 | }); 30 | 31 | socket.on('disconnect', function(){ 32 | console.log("Connection " + socket.id + " terminated."); 33 | }); 34 | 35 | }); 36 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/goto/deck.goto.css: -------------------------------------------------------------------------------- 1 | .deck-container .goto-form { 2 | position: absolute; 3 | z-index: 3; 4 | bottom: 10px; 5 | left: 50%; 6 | height: 1.75em; 7 | margin: 0 0 0 -9.125em; 8 | line-height: 1.75em; 9 | padding: 0.625em; 10 | display: none; 11 | background: #ccc; 12 | overflow: hidden; 13 | } 14 | .borderradius .deck-container .goto-form { 15 | -webkit-border-radius: 10px; 16 | -moz-border-radius: 10px; 17 | border-radius: 10px; 18 | } 19 | .deck-container .goto-form label { 20 | font-weight: bold; 21 | } 22 | .deck-container .goto-form label, .deck-container .goto-form input { 23 | display: inline-block; 24 | font-family: inherit; 25 | } 26 | 27 | .deck-goto .goto-form { 28 | display: block; 29 | } 30 | 31 | #goto-slide { 32 | width: 8.375em; 33 | margin: 0 0.625em; 34 | height: 1.4375em; 35 | } 36 | 37 | @media print { 38 | .goto-form, #goto-slide { 39 | display: none !important; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/scale/deck.scale.css: -------------------------------------------------------------------------------- 1 | /* Remove this line if you are embedding deck.js in a page and 2 | using the scale extension. */ 3 | .csstransforms { 4 | overflow: hidden; 5 | } 6 | 7 | .csstransforms .deck-container.deck-scale:not(.deck-menu) > .slide { 8 | -webkit-box-sizing: padding-box; 9 | -moz-box-sizing: padding-box; 10 | box-sizing: padding-box; 11 | width: 100%; 12 | padding-bottom: 20px; 13 | } 14 | .csstransforms .deck-container.deck-scale:not(.deck-menu) > .slide > .deck-slide-scaler { 15 | -webkit-transform-origin: 50% 0; 16 | -moz-transform-origin: 50% 0; 17 | -o-transform-origin: 50% 0; 18 | -ms-transform-origin: 50% 0; 19 | transform-origin: 50% 0; 20 | } 21 | 22 | .csstransforms .deck-container.deck-menu .deck-slide-scaler { 23 | -webkit-transform: none !important; 24 | -moz-transform: none !important; 25 | -o-transform: none !important; 26 | -ms-transform: none !important; 27 | transform: none !important; 28 | } 29 | -------------------------------------------------------------------------------- /public/control-swipe.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 |
17 |
18 |

Swipe Control

19 |
20 |
21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/builder/build.js: -------------------------------------------------------------------------------- 1 | var config = require("./config.json"); 2 | 3 | function getComponent(component) { 4 | return require("raw!../../../src/components/"+component+".js"); 5 | } 6 | 7 | function getPlugin(plugin) { 8 | return require("raw!../../../src/plugins/"+plugin+".js"); 9 | } 10 | 11 | function build(options) { 12 | var usedComponents = {}; 13 | function addComponent(component) { 14 | usedComponents[component.name] = true; 15 | if(component.dependencies) { 16 | component.dependencies.forEach(addComponent); 17 | } 18 | } 19 | config.components.forEach(function(component) { 20 | if(options[component.name]) { 21 | addComponent(component); 22 | } 23 | }); 24 | var file = [getComponent("core"), getComponent("near")]; 25 | config.components.forEach(function(component) { 26 | if(usedComponents[component.name]) 27 | file.push(component.plugin ? getPlugin(component.name) : getComponent(component.name)); 28 | }); 29 | return file.join("\n"); 30 | } 31 | 32 | module.exports = build; 33 | -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/template/settings.scss: -------------------------------------------------------------------------------- 1 | // Base settings for all themes that can optionally be 2 | // overridden by the super-theme 3 | 4 | // Background of the presentation 5 | $backgroundColor: #2b2b2b; 6 | 7 | // Primary/body text 8 | $mainFont: 'Lato', Times, 'Times New Roman', serif; 9 | $mainFontSize: 36px; 10 | $mainColor: #eee; 11 | 12 | // Headings 13 | $headingFont: 'League Gothic', Impact, sans-serif; 14 | $headingColor: #eee; 15 | $headingLineHeight: 0.9em; 16 | $headingLetterSpacing: 0.02em; 17 | $headingTextTransform: uppercase; 18 | $headingTextShadow: 0px 0px 6px rgba(0,0,0,0.2); 19 | $heading1TextShadow: $headingTextShadow; 20 | 21 | // Links and actions 22 | $linkColor: #13DAEC; 23 | $linkColorHover: lighten( $linkColor, 20% ); 24 | 25 | // Text selection 26 | $selectionBackgroundColor: #FF5E99; 27 | $selectionColor: #fff; 28 | 29 | // Generates the presentation background, can be overridden 30 | // to return a background image or gradient 31 | @mixin bodyBackground() { 32 | background: $backgroundColor; 33 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/bootstrap/bootstrap.js: -------------------------------------------------------------------------------- 1 | // Comment unrequired stuff 2 | 3 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-alert"); 4 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-button"); 5 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-carousel"); 6 | require("script!../../../../node_modules/bootstrap/js/bootstrap-collapse"); 7 | require("script!../../../../node_modules/bootstrap/js/bootstrap-dropdown"); 8 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-modal"); 9 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-tooltip"); 10 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-popover"); 11 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-scrollspy"); 12 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-tab"); 13 | require("script!../../../../node_modules/bootstrap/js/bootstrap-transition"); 14 | // require("script!../../../../node_modules/bootstrap/js/bootstrap-typeahead"); -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/zoomable/zoomable.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step { 11 | width: 2000px; 12 | height: 2000px; 13 | font-size: 1.7em; 14 | background-color: white; 15 | 16 | display: block; 17 | padding: 40px 60px; 18 | border-radius: 10px; 19 | 20 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 21 | border: 1px solid rgba(0, 0, 0, .3); 22 | 23 | color: rgb(102, 102, 102); 24 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 25 | 26 | letter-spacing: -1px; 27 | 28 | -webkit-box-sizing: border-box; 29 | -moz-box-sizing: border-box; 30 | -ms-box-sizing: border-box; 31 | -o-box-sizing: border-box; 32 | box-sizing: border-box; 33 | 34 | -webkit-transition: opacity 1s; 35 | -moz-transition: opacity 1s; 36 | -ms-transition: opacity 1s; 37 | -o-transition: opacity 1s; 38 | transition: opacity 1s; 39 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/drive.css: -------------------------------------------------------------------------------- 1 | .will-drive-right, .will-drive-left { 2 | position: relative; 3 | 4 | -webkit-transition: opacity 0.6s, left 1s; 5 | -moz-transition: opacity 0.6s, left 1s; 6 | -ms-transition: opacity 0.6s, left 1s; 7 | -o-transition: opacity 0.6s, left 1s; 8 | transition: opacity 0.6s, left 1s; 9 | 10 | opacity: 0; 11 | } 12 | .will-drive-right { 13 | left: -300px; 14 | } 15 | .will-drive-left { 16 | left: 300px; 17 | } 18 | .will-drive-down, .will-drive-up { 19 | position: relative; 20 | 21 | -webkit-transition: opacity 0.6s, top 1s; 22 | -moz-transition: opacity 0.6s, top 1s; 23 | -ms-transition: opacity 0.6s, top 1s; 24 | -o-transition: opacity 0.6s, top 1s; 25 | transition: opacity 0.6s, top 1s; 26 | 27 | opacity: 0; 28 | } 29 | .will-drive-down { 30 | top: -300px; 31 | } 32 | .will-drive-up { 33 | top: 300px; 34 | } 35 | 36 | .do-drive-up, .do-drive-down { 37 | opacity: 1; 38 | top: 0px; 39 | } 40 | .do-drive-right, .do-drive-left { 41 | opacity: 1; 42 | left: 0px; 43 | } 44 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/expand.css: -------------------------------------------------------------------------------- 1 | .will-expand { 2 | -webkit-transition: all 1s; 3 | -moz-transition: all 1s; 4 | -ms-transition: all 1s; 5 | -o-transition: all 1s; 6 | transition: all 1s; 7 | 8 | opacity: 0; 9 | 10 | -webkit-transform: translate3d(0,0,1px) scale(0.7,1); 11 | -moz-transform: translate3d(0,0,1px) scale(0.7,1); 12 | -ms-transform: translate3d(0,0,1px) scale(0.7,1); 13 | -o-transform: translate3d(0,0,1px) scale(0.7,1); 14 | transform: translate3d(0,0,1px) scale(0.7,1); 15 | } 16 | 17 | .do-expand { 18 | opacity: 1; 19 | 20 | -webkit-transform: translate3d(0,0,1px) scale(1,1); 21 | -moz-transform: translate3d(0,0,1px) scale(1,1); 22 | -ms-transform: translate3d(0,0,1px) scale(1,1); 23 | -o-transform: translate3d(0,0,1px) scale(1,1); 24 | transform: translate3d(0,0,1px) scale(1,1); 25 | } 26 | 27 | .has-expand { 28 | -webkit-transform: none; 29 | -moz-transform: none; 30 | -ms-transform: none; 31 | -o-transform: none; 32 | transform: none; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /public/control-2btn.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 |
17 |
18 | 19 | 20 |
21 |
22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/zoom.css: -------------------------------------------------------------------------------- 1 | .will-zoom { 2 | -webkit-transition: all 1s ease-in-out; 3 | -moz-transition: all 1s ease-in-out; 4 | -ms-transition: all 1s ease-in-out; 5 | -o-transition: all 1s ease-in-out; 6 | transition: all 1s ease-in-out; 7 | 8 | opacity: 0; 9 | 10 | -webkit-transform: translate3d(0,0,1px) scale(10,10); 11 | -moz-transform: translate3d(0,0,1px) scale(10,10); 12 | -ms-transform: translate3d(0,0,1px) scale(10,10); 13 | -o-transform: translate3d(0,0,1px) scale(10,10); 14 | transform: translate3d(0,0,1px) scale(10,10); 15 | } 16 | 17 | .do-zoom { 18 | opacity: 1; 19 | 20 | -webkit-transform: translate3d(0,0,1px) scale(1,1); 21 | -moz-transform: translate3d(0,0,1px) scale(1,1); 22 | -ms-transform: translate3d(0,0,1px) scale(1,1); 23 | -o-transform: translate3d(0,0,1px) scale(1,1); 24 | transform: translate3d(0,0,1px) scale(1,1); 25 | } 26 | 27 | .has-zoom { 28 | -webkit-transform: none; 29 | -moz-transform: none; 30 | -ms-transform: none; 31 | -o-transform: none; 32 | transform: none; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/navigation/deck.navigation.scss: -------------------------------------------------------------------------------- 1 | @mixin border-radius($r) { 2 | -webkit-border-radius:$r; 3 | -moz-border-radius:$r; 4 | border-radius:$r; 5 | } 6 | 7 | .deck-container { 8 | .deck-prev-link, .deck-next-link { 9 | display:none; 10 | position:absolute; 11 | z-index:3; 12 | top:50%; 13 | width:32px; 14 | height:32px; 15 | margin-top:-16px; 16 | font-size:20px; 17 | font-weight:bold; 18 | line-height:32px; 19 | vertical-align:middle; 20 | text-align:center; 21 | text-decoration:none; 22 | color:#fff; 23 | background:#888; 24 | 25 | .borderradius & { 26 | @include border-radius(16px); 27 | } 28 | 29 | &:hover, &:focus, &:active, &:visited { 30 | color:#fff; 31 | } 32 | } 33 | 34 | .deck-prev-link { 35 | left:8px; 36 | } 37 | 38 | .deck-next-link { 39 | right:8px; 40 | } 41 | 42 | &:hover .deck-prev-link, &:hover .deck-next-link { 43 | display:block; 44 | 45 | &.deck-nav-disabled, .touch & { 46 | display:none; 47 | } 48 | } 49 | } 50 | 51 | 52 | @media print { 53 | .deck-prev-link, .deck-next-link { 54 | display:none !important; 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /public/decks/reveal.js/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /public/decks/reveal.js/plugin/postmessage/postmessage.js: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | simple postmessage plugin 4 | 5 | Useful when a reveal slideshow is inside an iframe. 6 | It allows to call reveal methods from outside. 7 | 8 | Example: 9 | var reveal = window.frames[0]; 10 | 11 | // Reveal.prev(); 12 | reveal.postMessage(JSON.stringify({method: 'prev', args: []}), '*'); 13 | // Reveal.next(); 14 | reveal.postMessage(JSON.stringify({method: 'next', args: []}), '*'); 15 | // Reveal.slide(2, 2); 16 | reveal.postMessage(JSON.stringify({method: 'slide', args: [2,2]}), '*'); 17 | 18 | Add to the slideshow: 19 | 20 | dependencies: [ 21 | ... 22 | { src: 'plugin/postmessage/postmessage.js', async: true, condition: function() { return !!document.body.classList; } } 23 | ] 24 | 25 | */ 26 | 27 | (function (){ 28 | 29 | window.addEventListener( "message", function ( event ) { 30 | var data = JSON.parse( event.data ), 31 | method = data.method, 32 | args = data.args; 33 | 34 | if( typeof Reveal[method] === 'function' ) { 35 | Reveal[method].apply( Reveal, data.args ); 36 | } 37 | }, false); 38 | 39 | }()); 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/source/night.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Black theme for reveal.js. 3 | * 4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se 5 | */ 6 | 7 | 8 | // Default mixins and settings ----------------- 9 | @import "../template/mixins"; 10 | @import "../template/settings"; 11 | // --------------------------------------------- 12 | 13 | 14 | // Include theme-specific fonts 15 | @import url(http://fonts.googleapis.com/css?family=Montserrat:700); 16 | @import url(http://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic,700italic); 17 | 18 | 19 | // Override theme settings (see ../template/settings.scss) 20 | $backgroundColor: #111; 21 | 22 | $mainFont: 'Open Sans', Times, 'Times New Roman', serif; 23 | $linkColor: #e7ad52; 24 | $linkColorHover: lighten( $linkColor, 20% ); 25 | $headingFont: 'Montserrat', Impact, sans-serif; 26 | $headingTextShadow: none; 27 | $headingLetterSpacing: -0.03em; 28 | $headingTextTransform: none; 29 | $selectionBackgroundColor: #e7ad52; 30 | $mainFontSize: 30px; 31 | 32 | 33 | // Theme template ------------------------------ 34 | @import "../template/theme"; 35 | // --------------------------------------------- -------------------------------------------------------------------------------- /public/decks/jmpress.js/test/components/ajax.test.js: -------------------------------------------------------------------------------- 1 | /*global QUnit:true, module:true, test:true, asyncTest:true, expect:true*/ 2 | /*global start:true, stop:true ok:true, equal:true, notEqual:true, deepEqual:true*/ 3 | /*global notDeepEqual:true, strictEqual:true, notStrictEqual:true, raises:true*/ 4 | (function($) { 5 | 6 | 'use strict'; 7 | 8 | QUnit.testStart = function(test) { 9 | window.location.hash = '#'; 10 | }; 11 | 12 | module('ajax', { 13 | setup: function() { 14 | this.fixture = '#qunit-fixture #jmpress'; 15 | } 16 | }); 17 | 18 | asyncTest('step was loaded via ajax', 1, function() { 19 | $(this.fixture).find('.step').first().attr('data-src', 'fixtures/ajax.html'); 20 | $(this.fixture).jmpress({ 21 | 'ajax:afterStepLoaded': function(el, e) { 22 | equal( $(el).html(), 'foobar' ); 23 | start(); 24 | } 25 | }); 26 | }); 27 | 28 | asyncTest('ajax:loadStep called', 1, function() { 29 | $(this.fixture).find('.step').first().attr('data-src', 'fixtures/ajax.html'); 30 | $(this.fixture).jmpress({ 31 | 'ajax:loadStep': function(el, e) { 32 | ok( $(el).hasClass('loaded') ); 33 | start(); 34 | } 35 | }); 36 | }); 37 | 38 | }(jQuery)); -------------------------------------------------------------------------------- /public/decks/deck.js/MIT-license.txt: -------------------------------------------------------------------------------- 1 | The MIT License 2 | 3 | Copyright (c) 2011 Caleb Troughton 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/css/animations/basic/warp.css: -------------------------------------------------------------------------------- 1 | .will-warp-right, .will-warp-left { 2 | position: relative; 3 | 4 | -webkit-transition: opacity 0.2s, left 0.5s ease-in-out; 5 | -moz-transition: opacity 0.2s, left 0.5s ease-in-out; 6 | -ms-transition: opacity 0.2s, left 0.5s ease-in-out; 7 | -o-transition: opacity 0.2s, left 0.5s ease-in-out; 8 | transition: opacity 0.2s, left 0.5s ease-in-out; 9 | 10 | opacity: 0; 11 | } 12 | .will-warp-right { 13 | left: -600px; 14 | } 15 | .will-warp-left { 16 | left: 600px; 17 | } 18 | .will-warp-down, .will-warp-up { 19 | position: relative; 20 | 21 | -webkit-transition: opacity 0.2s, top 0.5s ease-in-out; 22 | -moz-transition: opacity 0.2s, top 0.5s ease-in-out; 23 | -ms-transition: opacity 0.2s, top 0.5s ease-in-out; 24 | -o-transition: opacity 0.2s, top 0.5s ease-in-out; 25 | transition: opacity 0.2s, top 0.5s ease-in-out; 26 | 27 | opacity: 0; 28 | } 29 | .will-warp-down { 30 | top: -600px; 31 | } 32 | .will-warp-up { 33 | top: 600px; 34 | } 35 | 36 | .do-warp-up, .do-warp-down { 37 | opacity: 1; 38 | top: 0px; 39 | } 40 | .do-warp-right, .do-warp-left { 41 | opacity: 1; 42 | left: 0px; 43 | } 44 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/form-dynamic/style.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step:not(#container) { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /* fade out inactive slides */ 43 | .step:not(.active):not(.nested-active) { 44 | opacity: 0.3; 45 | } 46 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/keyboard.md: -------------------------------------------------------------------------------- 1 | # Keyboard 2 | 3 | This component handles navigation with the keyboard. It also offers a binding mechanism for other components, plugins and the user. 4 | 5 | Example: 6 | 7 | ``` javascript 8 | $(selector).jmpress({ 9 | keyboard: { 10 | keys: { 11 | 189: ['select', '#overview'] 12 | } 13 | } 14 | }); 15 | ``` 16 | 17 | In this example we are binding the '-' key (key code 189) to select a step we have named 'overview'. 18 | 19 | ### `property` keyboard.keys : `{33: "prev", 32: "next", ...}` 20 | 21 | Bind a key to a jmpress command. Set it to null to remove an existing key binding. 22 | 23 | Set it to a string to get the jmpress command invoked. 24 | 25 | Set it to a string containing ":" (ex. "next:prev") to get the first command on default and the second on modified with the shift key. 26 | 27 | Set it to a array to apply the array as arguments a jmpress command (ex. ["select", "#some-cool-step"]). 28 | 29 | ### `property` keyboard.ignore[TAGNAME] : `[32, 37, ...] as TAGNAME = "INPUT"` 30 | 31 | Ignore some keys on a specific tag name. 32 | 33 | ### `property` keyboard.use : `true` 34 | 35 | Whether the keyboard should be used to navigate in jmpress. 36 | -------------------------------------------------------------------------------- /public/decks/reveal.js/plugin/postmessage/example.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 | 9 | 10 |
11 | 12 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/automatic-layout/automatic.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | section { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /** NOT SUPPORTED STYLES **/ 43 | .not-supported section { 44 | position: relative; 45 | opacity: 1; 46 | margin: 20px auto; 47 | } -------------------------------------------------------------------------------- /public/decks/jmpress.js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jmpress.js", 3 | "version": "0.4.3", 4 | "title": "jQuery.jmpress()", 5 | "description": "A jQuery plugin to build a website on the infinite canvas.", 6 | "homepage": "http://shama.github.com/jmpress.js", 7 | "author": { 8 | "name": "Kyle Robinson Young @shama & Tobias Koppers @sokra", 9 | "url": "https://github.com/shama/jmpress.js" 10 | }, 11 | "licenses": [ 12 | { 13 | "type": "MIT", 14 | "url": "http://www.opensource.org/licenses/mit-license.php" 15 | } 16 | ], 17 | "maintainers": [ 18 | { 19 | "name": "Kyle Robinson Young", 20 | "url": "https://github.com/shama" 21 | }, 22 | { 23 | "name": "Tobias Koppers", 24 | "url": "https://github.com/sokra" 25 | } 26 | ], 27 | "repository": { 28 | "type": "git", 29 | "url": "git://github.com/shama/jmpress.js.git" 30 | }, 31 | "bugs": { 32 | "url": "https://github.com/shama/jmpress.js/issues" 33 | }, 34 | "files": [ 35 | "dist/jmpress.js" 36 | ], 37 | "dependencies": { 38 | "jquery": "~1.5" 39 | }, 40 | "devDependencies": { 41 | "grunt": "~0.3.9", 42 | "grunt-css": "~0.2.0", 43 | "grunt-webpack": "0.2.x", 44 | "bootstrap": "https://github.com/twitter/bootstrap/tarball/v2.0.4", 45 | "YamYam": "0.2.x" 46 | } 47 | } -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/source/serif.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * A simple theme for reveal.js presentations, similar 3 | * to the default theme. The accent color is darkblue. 4 | * 5 | * This theme is Copyright (C) 2012 Owen Versteeg, https://github.com/StereotypicalApps. It is MIT licensed. 6 | * reveal.js is Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se; so is the theme - beige.css - that this is based off of. 7 | */ 8 | 9 | 10 | // Default mixins and settings ----------------- 11 | @import "../template/mixins"; 12 | @import "../template/settings"; 13 | // --------------------------------------------- 14 | 15 | 16 | 17 | // Override theme settings (see ../template/settings.scss) 18 | $mainFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif; 19 | $mainColor: #000; 20 | $headingFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif; 21 | $headingColor: #383D3D; 22 | $headingTextShadow: none; 23 | $headingTextTransform: none; 24 | $backgroundColor: #F0F1EB; 25 | $linkColor: #51483D; 26 | $linkColorHover: lighten( $linkColor, 20% ); 27 | $selectionBackgroundColor: #26351C; 28 | 29 | 30 | 31 | // Theme template ------------------------------ 32 | @import "../template/theme"; 33 | // --------------------------------------------- -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/source/sky.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * Sky theme for reveal.js. 3 | * 4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se 5 | */ 6 | 7 | 8 | // Default mixins and settings ----------------- 9 | @import "../template/mixins"; 10 | @import "../template/settings"; 11 | // --------------------------------------------- 12 | 13 | 14 | 15 | // Include theme-specific fonts 16 | @import url(http://fonts.googleapis.com/css?family=Quicksand:400,700,400italic,700italic); 17 | @import url(http://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700); 18 | 19 | 20 | // Override theme settings (see ../template/settings.scss) 21 | $mainFont: 'Open Sans', sans-serif; 22 | $mainColor: #333; 23 | $headingFont: 'Quicksand', sans-serif; 24 | $headingColor: #333; 25 | $headingLetterSpacing: -0.08em; 26 | $headingTextShadow: none; 27 | $backgroundColor: #f7fbfc; 28 | $linkColor: #3b759e; 29 | $linkColorHover: lighten( $linkColor, 20% ); 30 | $selectionBackgroundColor: #134674; 31 | 32 | // Background generator 33 | @mixin bodyBackground() { 34 | @include radial-gradient( #add9e4, #f7fbfc ); 35 | } 36 | 37 | 38 | 39 | // Theme template ------------------------------ 40 | @import "../template/theme"; 41 | // --------------------------------------------- -------------------------------------------------------------------------------- /public/decks/jmpress.js/test/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js test suite 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |

jmpress.js test suite

21 |

22 |
23 |

24 |
    25 |
    26 |
    27 |
    28 | About Step 29 |
    30 |
    31 | Download Step 32 |
    33 |
    34 | Docs Step 35 |
    36 |
    37 |
    38 | 39 | -------------------------------------------------------------------------------- /public/decks/deck.js/test/fixtures/standard.html: -------------------------------------------------------------------------------- 1 |
    2 |
    3 | 4 |
    5 | 6 |
    7 | 8 |
    9 | 10 |
    11 | 12 | Previous 13 | Next 14 | 15 |

    16 | 17 | / 18 | 19 |

    20 | 21 |
    22 | 23 | 24 | 25 | 26 |
    27 | 28 | # 29 | Internal Test Link 30 |
    31 | 32 |
    33 |
    34 | 35 |
    36 | 37 |
    38 | 39 |
    40 | 41 |
    42 |
    -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/downloads.md: -------------------------------------------------------------------------------- 1 | # Downloads 2 | 3 | You can create your own version of jmpress.js with our [Custom Downloader](#builder). 4 | 5 | If you don't like it here are some prebuilded downloads: 6 | 7 | (Right click them and save to...) 8 | 9 | * [jmpress.js](../dist/jmpress.js) - [jmpress.min.js](../dist/jmpress.min.js) 10 | * [jmpress.allplugins.js](../dist/jmpress.allplugins.js) - [jmpress.allplugins.min.js](../dist/jmpress.allplugins.min.js) 11 | * [jmpress.all.js](../dist/jmpress.all.js) - [jmpress.all.min.js](../dist/jmpress.all.min.js) 12 | 13 | And the plugins: 14 | 15 | * [jmpress.duration.js](../dist/plugins/jmpress.duration.js) - [jmpress.duration.min.js](../dist/plugins/jmpress.duration.min.js) 16 | * [jmpress.secondary.js](../dist/plugins/jmpress.secondary.js) - [jmpress.secondary.min.js](../dist/plugins/jmpress.secondary.min.js) 17 | * [jmpress.toggle.js](../dist/plugins/jmpress.toggle.js) - [jmpress.toggle.min.js](../dist/plugins/jmpress.toggle.min.js) 18 | * [jmpress.presentation-mode.js](../dist/plugins/jmpress.presentation-mode.js) - [jmpress.presentation-mode.min.js](../dist/plugins/jmpress.presentation-mode.min.js) 19 | * [presentation-screen.html](../presentation-screen.html) 20 | 21 | The jmpress.demo.js file is only for our demo application and you should **not** use it. -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/pluginsecondary.md: -------------------------------------------------------------------------------- 1 | # Plugin: Secondary 2 | 3 | The secondary plugin applies an alternative step config, on a choosen condition. 4 | 5 | *Alternative step configuration is only useable via template.* 6 | 7 | ### Conditions 8 | 9 | The condition can only be set by template `{ secondary: }`. 10 | 11 | * `self`: If the step is active. 12 | * `siblings`: If a sibling is active. (Including self) 13 | * `siblings self`: If a sibling is active. (Excluding self) 14 | * `grandchildren`: If a child or grand child is active. 15 | * `grandchildren self`: If the step, a child or grand child is active. 16 | 17 | ### Alternative config 18 | 19 | The alternative config is described by prefixing the attribute by `secondary` (But stay in camel case). 20 | 21 | Alternative `{ x: ..., rotateZ: ... }` is `{ secondaryX: ..., secondaryRotateZ: ... }`. 22 | 23 | Because objects in templates are automatically expanded it can be simplified: 24 | 25 | ``` javascript 26 | { 27 | x: ..., 28 | rotateZ: ..., 29 | secondary: { 30 | "": "siblings", 31 | x: ..., 32 | rotateZ: ..., 33 | } 34 | } 35 | ``` 36 | 37 | ### Examples 38 | 39 | * [vacation](http://shama.github.com/jmpress.js/examples/vacation/) 40 | * [tab control](http://shama.github.com/jmpress.js/examples/tab-control/) 41 | 42 | -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/menu/deck.menu.scss: -------------------------------------------------------------------------------- 1 | .deck-menu { 2 | .slide { 3 | background:#eee; 4 | position:relative; 5 | left:0; 6 | top:0; 7 | visibility:visible; 8 | cursor:pointer; 9 | } 10 | 11 | > .slide { 12 | .no-csstransforms & { 13 | float:left; 14 | width:22%; 15 | height:22%; 16 | min-height:0; 17 | margin:1%; 18 | font-size:0.22em; 19 | overflow:hidden; 20 | padding:0 0.5%; 21 | } 22 | 23 | .csstransforms & { 24 | -webkit-transform:scale(.22) !important; 25 | -moz-transform:scale(.22) !important; 26 | -o-transform:scale(.22) !important; 27 | -ms-transform:scale(.22) !important; 28 | transform:scale(.22) !important; 29 | -webkit-transform-origin:0 0; 30 | -moz-transform-origin:0 0; 31 | -o-transform-origin:0 0; 32 | -ms-transform-origin:0 0; 33 | transform-origin:0 0; 34 | -webkit-box-sizing: border-box; 35 | -moz-box-sizing: border-box; 36 | box-sizing: border-box; 37 | width:100%; 38 | height:100%; 39 | overflow:hidden; 40 | padding:0 48px; 41 | margin:12px; 42 | } 43 | } 44 | 45 | iframe, img, video { 46 | max-width:100%; 47 | } 48 | 49 | .deck-current, .no-touch & .slide:hover { 50 | background:#ddf; 51 | } 52 | 53 | &.deck-container:hover { 54 | .deck-prev-link, .deck-next-link { 55 | display:none; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /public/decks/reveal.js/plugin/markdown/markdown.js: -------------------------------------------------------------------------------- 1 | // From https://gist.github.com/1343518 2 | // Modified by Hakim to handle Markdown indented with tabs 3 | (function(){ 4 | 5 | if( typeof Showdown === 'undefined' ) { 6 | throw 'The reveal.js Markdown plugin requires Showdown to be loaded'; 7 | } 8 | 9 | var sections = document.querySelectorAll( '[data-markdown]' ); 10 | 11 | for( var i = 0, len = sections.length; i < len; i++ ) { 12 | var section = sections[i]; 13 | var notes = section.querySelector( 'aside.notes' ); 14 | 15 | var template = section.querySelector( 'script' ); 16 | 17 | // strip leading whitespace so it isn't evaluated as code 18 | var text = ( template || section ).innerHTML; 19 | 20 | var leadingWs = text.match(/^\n?(\s*)/)[1].length, 21 | leadingTabs = text.match(/^\n?(\t*)/)[1].length; 22 | 23 | if( leadingTabs > 0 ) { 24 | text = text.replace( new RegExp('\\n?\\t{' + leadingTabs + '}','g'), '\n' ); 25 | } 26 | else if( leadingWs > 1 ) { 27 | text = text.replace( new RegExp('\\n? {' + leadingWs + '}','g'), '\n' ); 28 | } 29 | 30 | section.innerHTML = (new Showdown.converter()).makeHtml(text); 31 | 32 | if( notes ) { 33 | section.appendChild( notes ); 34 | } 35 | } 36 | 37 | })(); -------------------------------------------------------------------------------- /public/decks/reveal.js/css/theme/source/simple.scss: -------------------------------------------------------------------------------- 1 | /** 2 | * A simple theme for reveal.js presentations, similar 3 | * to the default theme. The accent color is darkblue. 4 | * 5 | * This theme is Copyright (C) 2012 Owen Versteeg, https://github.com/StereotypicalApps. It is MIT licensed. 6 | * reveal.js is Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se 7 | */ 8 | 9 | 10 | // Default mixins and settings ----------------- 11 | @import "../template/mixins"; 12 | @import "../template/settings"; 13 | // --------------------------------------------- 14 | 15 | 16 | 17 | // Include theme-specific fonts 18 | @import url(http://fonts.googleapis.com/css?family=News+Cycle:400,700); 19 | @import url(http://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic); 20 | 21 | 22 | // Override theme settings (see ../template/settings.scss) 23 | $mainFont: 'Lato', Times, 'Times New Roman', serif; 24 | $mainColor: #000; 25 | $headingFont: 'News Cycle', Impact, sans-serif; 26 | $headingColor: #000; 27 | $headingTextShadow: none; 28 | $headingTextTransform: none; 29 | $backgroundColor: #fff; 30 | $linkColor: #00008B; 31 | $linkColorHover: lighten( $linkColor, 20% ); 32 | $selectionBackgroundColor: rgba(0, 0, 0, 0.99); 33 | 34 | 35 | 36 | // Theme template ------------------------------ 37 | @import "../template/theme"; 38 | // --------------------------------------------- -------------------------------------------------------------------------------- /public/decks/deck.js/extensions/menu/deck.menu.css: -------------------------------------------------------------------------------- 1 | .deck-menu .slide { 2 | background: #eee; 3 | position: relative; 4 | left: 0; 5 | top: 0; 6 | visibility: visible; 7 | cursor: pointer; 8 | } 9 | .no-csstransforms .deck-menu > .slide { 10 | float: left; 11 | width: 22%; 12 | height: 22%; 13 | min-height: 0; 14 | margin: 1%; 15 | font-size: 0.22em; 16 | overflow: hidden; 17 | padding: 0 0.5%; 18 | } 19 | .csstransforms .deck-menu > .slide { 20 | -webkit-transform: scale(0.22) !important; 21 | -moz-transform: scale(0.22) !important; 22 | -o-transform: scale(0.22) !important; 23 | -ms-transform: scale(0.22) !important; 24 | transform: scale(0.22) !important; 25 | -webkit-transform-origin: 0 0; 26 | -moz-transform-origin: 0 0; 27 | -o-transform-origin: 0 0; 28 | -ms-transform-origin: 0 0; 29 | transform-origin: 0 0; 30 | -webkit-box-sizing: border-box; 31 | -moz-box-sizing: border-box; 32 | box-sizing: border-box; 33 | width: 100%; 34 | height: 100%; 35 | overflow: hidden; 36 | padding: 0 48px; 37 | margin: 12px; 38 | } 39 | .deck-menu iframe, .deck-menu img, .deck-menu video { 40 | max-width: 100%; 41 | } 42 | .deck-menu .deck-current, .no-touch .deck-menu .slide:hover { 43 | background: #ddf; 44 | } 45 | .deck-menu.deck-container:hover .deck-prev-link, .deck-menu.deck-container:hover .deck-next-link { 46 | display: none; 47 | } 48 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/index.js: -------------------------------------------------------------------------------- 1 | var $ = require("jquery"); 2 | require("jquery-hashchange"); 3 | 4 | $(function() { 5 | $("body").html(require("./body.jade")()); 6 | $(".navbar .dropdown").dropdown(); 7 | $(window).hashchange(function() { 8 | $(window).scrollTop(0); 9 | var hash = location.hash; 10 | hash = hash.replace(/^#/, "").split("-"); 11 | window._gaq.push(['_trackPageview', "/jmpress.js/docs/" + hash.join("/")]); 12 | switch(hash.shift()) { 13 | case "builder": 14 | require("bundle!./builder")(function(page) { 15 | page($(".page"), hash); 16 | }); 17 | break; 18 | case "docs": 19 | require("bundle!./docs")(function(page) { 20 | page($(".page"), hash); 21 | }); 22 | break; 23 | default: 24 | require("bundle!./docs")(function(page) { 25 | page($(".page"), ["index"]); 26 | }); 27 | break; 28 | } 29 | }); 30 | $(window).hashchange(); 31 | }); 32 | // 33 | // IGNORE BELOW THIS LINE 34 | // 35 | var _gaq = window._gaq = window._gaq || []; 36 | _gaq.push(['_setAccount', 'UA-28251006-1']); 37 | 38 | (function() { 39 | var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 40 | ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 41 | var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 42 | })(); -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/tab-control/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: Verdana, sans-serif; 3 | min-height: 740px; 4 | background-color: #ddd; 5 | -webkit-font-smoothing: antialiased; 6 | } 7 | 8 | .nav.jmpress { 9 | width: 600px; 10 | height: 400px; 11 | background: #F29E88; 12 | border: 5px solid #525855; 13 | border-radius: 5px; 14 | } 15 | 16 | .nav.jmpress section { 17 | width: 450px; 18 | height: 200px; 19 | padding: 25px; 20 | margin-bottom: 30px; 21 | 22 | -webkit-transition: 1s; 23 | -moz-transition: 1s; 24 | -ms-transition: 1s; 25 | -o-transition: 1s; 26 | transition: 1s; 27 | 28 | /*background-color: #B2342C;*/ 29 | background-color: #D55D5C; 30 | border: 2px solid #B2342C; 31 | border-radius: 5px; 32 | overflow: hidden; 33 | color: #1E0403; 34 | 35 | cursor: pointer; 36 | } 37 | 38 | .nav.jmpress section.active { 39 | color: #1E0403; 40 | 41 | cursor: inherit; 42 | } 43 | 44 | .nav.jmpress section p { 45 | -webkit-transition: 1s; 46 | -moz-transition: 1s; 47 | -ms-transition: 1s; 48 | -o-transition: 1s; 49 | transition: 1s; 50 | } 51 | 52 | .nav.jmpress section:not(.active) p { 53 | /*font-size: 6pt;*/ 54 | /*opacity: 0;*/ 55 | } 56 | 57 | .nav.jmpress section h1 { 58 | -webkit-transition: 1s; 59 | -moz-transition: 1s; 60 | -ms-transition: 1s; 61 | -o-transition: 1s; 62 | transition: 1s; 63 | } 64 | -------------------------------------------------------------------------------- /public/control-impress.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
    16 |
    17 |
    18 |
    19 | 20 | 21 |
    22 |
    23 | ◀◀ 24 |
    25 |
    26 | overview 27 |
    28 |
    29 |
    30 |
    31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/examples/nested-templates/nested-template.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | font-size: 20px; 8 | } 9 | 10 | /** STEP STYLES **/ 11 | .step { 12 | position: absolute; 13 | width: 900px; 14 | height: 400px; 15 | font-size: 1em; 16 | min-height: 500px; 17 | background-color: white; 18 | 19 | display: block; 20 | padding: 40px 60px; 21 | border-radius: 10px; 22 | 23 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 24 | border: 10px solid rgba(0, 0, 0, 1); 25 | 26 | color: rgb(102, 102, 102); 27 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 28 | 29 | letter-spacing: -1px; 30 | 31 | -webkit-box-sizing: border-box; 32 | -moz-box-sizing: border-box; 33 | -ms-box-sizing: border-box; 34 | -o-box-sizing: border-box; 35 | box-sizing: border-box; 36 | 37 | -webkit-transition: opacity 1s; 38 | -moz-transition: opacity 1s; 39 | -ms-transition: opacity 1s; 40 | -o-transition: opacity 1s; 41 | transition: opacity 1s; 42 | } 43 | 44 | /* fade out inactive slides */ 45 | .step:not(.active):not(.nested-active) { 46 | opacity: 0.3; 47 | } 48 | 49 | .step > .step { 50 | font-size: 70px; 51 | } 52 | 53 | /** NOT SUPPORTED STYLES **/ 54 | .not-supported .step { 55 | position: relative; 56 | opacity: 1; 57 | margin: 20px auto; 58 | } 59 | -------------------------------------------------------------------------------- /public/decks/scrolldeck.js/README.md: -------------------------------------------------------------------------------- 1 | #Scrolldeck 2 | 3 | A jQuery plugin for making scrolling presentation decks 4 | 5 | For more info, check out [the scrolldeck project page](http://johnpolacek.github.com/scrolldeck.js/) 6 | 7 | 8 | ## License 9 | 10 | Dual licensed under the MIT license (below) and [GPL license](http://www.gnu.org/licenses/gpl-3.0.html). 11 | 12 | 13 | MIT License 14 | 15 | Copyright (c) 2012 John Polacek 16 | 17 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 18 | 19 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 20 | 21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/docs/animation.md: -------------------------------------------------------------------------------- 1 | # Animation 2 | 3 | Apply custom animations to steps. Handles the attribute data-jmpress (the 4 | attribute name depends on a config option). Take a look at this 5 | [animation example](http://shama.github.com/jmpress.js/examples/animation/) for more information. 6 | 7 | ### `data-jmpress` 8 | 9 | Apply a custom animation. 10 | 11 | The following strings are supported: 12 | 13 | * `(name)` 14 | * `(name) after (time)` = `(name) after (time) prev` 15 | * `(name) after (time) step` 16 | * `(name) after (time) (selector)` 17 | * `(name) after step` 18 | * `(name) after (selector)` 19 | 20 | 21 | `(name)` is a animation name. It is the basis for the classes that will be added the the element: 22 | 23 | | `will-(name)` | Class ever set. | 24 | | `do-(name)` | Class is only set while the animation is running. | 25 | | `has-(name)` | Class is only set after the animation was ran. | 26 | 27 | `(time)` is `**m`, `**s` or `**ms` (minutes, seconds, milli seconds) in example: `300ms` or `1.4s`. 28 | 29 | `(selector)` is a jQuery Selector after which the substep follows. 30 | 31 | If you set a `(time)` the substep automatically advance. If you do not set a `(time)` substep advance 32 | after the "next" key is pressed. 33 | 34 | `prev` means the previous substep in DOM. `step` means the slide. 35 | 36 | If you have cool animations created, you can contribute them to `jmpress.js/src/css/animations/`. -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/components/active.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * active.js 3 | * Set the active classes on steps 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | var $jmpress = $.jmpress; 9 | 10 | /* DEFINES */ 11 | var activeClass = 'activeClass', 12 | nestedActiveClass = 'nestedActiveClass'; 13 | 14 | /* DEFAULTS */ 15 | var defaults = $jmpress( 'defaults' ); 16 | defaults[nestedActiveClass] = "nested-active"; 17 | defaults[activeClass] = "active"; 18 | 19 | /* HOOKS */ 20 | $jmpress( 'setInactive', function( step, eventData ) { 21 | var settings = eventData.settings, 22 | activeClassSetting = settings[activeClass], 23 | nestedActiveClassSettings = settings[nestedActiveClass]; 24 | if(activeClassSetting) { 25 | $(step).removeClass( activeClassSetting ); 26 | } 27 | if(nestedActiveClassSettings) { 28 | $.each(eventData.parents, function(idx, element) { 29 | $(element).removeClass(nestedActiveClassSettings); 30 | }); 31 | } 32 | }); 33 | $jmpress( 'setActive', function( step, eventData ) { 34 | var settings = eventData.settings, 35 | activeClassSetting = settings[activeClass], 36 | nestedActiveClassSettings = settings[nestedActiveClass]; 37 | if(activeClassSetting) { 38 | $(step).addClass( activeClassSetting ); 39 | } 40 | if(nestedActiveClassSettings) { 41 | $.each(eventData.parents, function(idx, element) { 42 | $(element).addClass(nestedActiveClassSettings); 43 | }); 44 | } 45 | }); 46 | 47 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /public/decks/jmpress.js/src/components/mouse.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mouse.js 3 | * Clicking to select a step 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | var $jmpress = $.jmpress; 9 | 10 | /* FUNCTIONS */ 11 | function randomString() { 12 | return "" + Math.round(Math.random() * 100000, 0); 13 | } 14 | 15 | /* DEFAULTS */ 16 | $jmpress("defaults").mouse = { 17 | clickSelects: true 18 | }; 19 | 20 | /* HOOKS */ 21 | $jmpress("afterInit", function( nil, eventData ) { 22 | var settings = eventData.settings, 23 | stepSelector = settings.stepSelector, 24 | current = eventData.current, 25 | jmpress = $(this); 26 | current.clickableStepsNamespace = ".jmpress-"+randomString(); 27 | jmpress.bind("click"+current.clickableStepsNamespace, function(event) { 28 | if (!settings.mouse.clickSelects || current.userZoom) { 29 | return; 30 | } 31 | 32 | // get clicked step 33 | var clickedStep = $(event.target).closest(stepSelector); 34 | 35 | // clicks on the active step do default 36 | if ( clickedStep.is( jmpress.jmpress("active") ) ) { 37 | return; 38 | } 39 | 40 | if (clickedStep.length) { 41 | // select the clicked step 42 | jmpress.jmpress("select", clickedStep[0], "click"); 43 | event.preventDefault(); 44 | event.stopPropagation(); 45 | } 46 | }); 47 | }); 48 | $jmpress('afterDeinit', function( nil, eventData ) { 49 | $(this).unbind(eventData.current.clickableStepsNamespace); 50 | }); 51 | 52 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /public/decks/reveal.js/lib/js/classList.js: -------------------------------------------------------------------------------- 1 | /*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js*/ 2 | if(typeof document!=="undefined"&&!("classList" in document.createElement("a"))){(function(j){var a="classList",f="prototype",m=(j.HTMLElement||j.Element)[f],b=Object,k=String[f].trim||function(){return this.replace(/^\s+|\s+$/g,"")},c=Array[f].indexOf||function(q){var p=0,o=this.length;for(;p 11 |
    A
    12 |
    B
    13 |
    C
    14 |
    D
    15 | 16 | ``` 17 | 18 | The flow will start with A, goto C, then D and back to A. Only when the user is on C and goes back will they be shown B. 19 | 20 | Using route: 21 | 22 | You can set the flow using the route method. You also don't have to define all the steps. The commando will preserve the natural flow and only modify the indicated steps. 23 | 24 | ``` javascript 25 | $("#jmpress").jmpress("route", ["#a", "#c", "#b", "#d"]); 26 | ``` 27 | 28 | The flow will start with A, goto C, goto B, goto D and back to A. If the user goes backwards he will get the same flow D -> B -> C -> A -> D. 29 | 30 | Unidirectional: 31 | 32 | ``` javascript 33 | $("#jmpress").jmpress("route", ["#a", "#c"], true); 34 | ``` 35 | 36 | The flow will be as the flow above with data attributes. 37 | Forwards: A -> C -> D -> A. Backwards: D -> C -> B -> A -> D. 38 | 39 | If you omit the 4th parameter, the function will set the forward flow. Set it to `true` to set the backward flow. 40 | -------------------------------------------------------------------------------- /public/decks/jmpress.js/README.md: -------------------------------------------------------------------------------- 1 | # jmpress.js (Version 0.4.1) 2 | 3 | A jQuery plugin to build a website on the infinite canvas. 4 | 5 | Started as a jQuery port of [impress.js](https://github.com/bartaz/impress.js) 6 | and utilizes the power of CSS3 transforms and transitions in modern browsers. 7 | 8 | ## DEMO 9 | 10 | jmpress.js demo: [http://shama.github.com/jmpress.js/] 11 | 12 | jmpress.js beta demo: [http://sokra.github.com/jmpress.js/] [dev branch](https://github.com/shama/jmpress.js/tree/dev) 13 | 14 | ## BROWSER SUPPORT 15 | 16 | jmpress.js attempts to use CSS3 transform and transition as its engine. 17 | Here is the current browser support list: 18 | 19 | * Chrome/Chromium: YES 20 | * Safari: YES 21 | * Firefox: YES 22 | * IE: MOSTLY 23 | * Opera: YES 24 | * iPad: YES 25 | * iPhone/iPod: NO 26 | * Android: NO 27 | * Chrome for Android: YES in desktop mode 28 | 29 | ## USAGE 30 | 31 | See the [DOCS](http://shama.github.com/jmpress.js/docs/). 32 | 33 | To build or contribute to this version, please look at the development 34 | documentation under the [contribute section](http://shama.github.com/jmpress.js/docs/#docs-contribute). 35 | 36 | ## CONTRIBUTING 37 | 38 | Good news! We accept pull requests and are looking for more contributors! ;) 39 | Take a look at the 40 | [contribute section](http://shama.github.com/jmpress.js/docs/#docs-contribute) 41 | of the docs for more information on how you can contribute. Thanks! 42 | 43 | ## LICENSE 44 | 45 | Copyright 2012 Kyle Robinson Young & Tobias Koppers. Released under a 46 | [MIT license](http://www.opensource.org/licenses/mit-license.php). -------------------------------------------------------------------------------- /public/decks/jmpress.js/docs/lib/web_modules/jquery-hashchange/jquery.ba-hashchange.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery hashchange event - v1.3 - 7/21/2010 3 | * http://benalman.com/projects/jquery-hashchange-plugin/ 4 | * 5 | * Copyright (c) 2010 "Cowboy" Ben Alman 6 | * Dual licensed under the MIT and GPL licenses. 7 | * http://benalman.com/about/license/ 8 | */ 9 | (function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' 72 | 73 | 74 | 87 | 88 | 89 | 90 | --------------------------------------------------------------------------------