Selaa lähdekoodia

Fix reveal and moved to npm

Sotaro KARASAWA 10 vuotta sitten
vanhempi
sitoutus
c4d4827a78

+ 0 - 1
bower.json

@@ -20,7 +20,6 @@
   ],
   ],
   "dependencies": {
   "dependencies": {
     "bootstrap-sass-official": "~3.3.1",
     "bootstrap-sass-official": "~3.3.1",
-    "reveal.js": "~3.0.0",
     "inline-attachment": "~2.0.1",
     "inline-attachment": "~2.0.1",
     "jquery-selection": "~1.0.1"
     "jquery-selection": "~1.0.1"
   }
   }

+ 30 - 9
gulpfile.js

@@ -31,13 +31,16 @@ var css = {
   src: dirs.cssSrc + '/' + pkg.name + '.scss',
   src: dirs.cssSrc + '/' + pkg.name + '.scss',
   main: dirs.cssDist + '/crowi-main.css',
   main: dirs.cssDist + '/crowi-main.css',
   dist: dirs.cssDist + '/crowi.css',
   dist: dirs.cssDist + '/crowi.css',
+  revealSrc: dirs.cssSrc + '/' + pkg.name + '-reveal.scss',
+  revealDist: dirs.cssDist + '/crowi-reveal.css',
   watch: ['resource/css/*.scss'],
   watch: ['resource/css/*.scss'],
 };
 };
 
 
 var js = {
 var js = {
-  browserify: [
-    'resource/js/crowi.js', // => crowi-bundled.js
-  ],
+  browserify: {
+    crowi: 'resource/js/crowi.js', // => crowi-bundled.js
+    crowiPresentation: 'resource/js/crowi-presentation.js', // => crowi-presentation.js
+  },
   src: [
   src: [
     'node_modules/jquery/dist/jquery.js',
     'node_modules/jquery/dist/jquery.js',
     'bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js',
     'bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js',
@@ -49,9 +52,9 @@ var js = {
   ],
   ],
   dist: dirs.jsDist + '/crowi.js',
   dist: dirs.jsDist + '/crowi.js',
   revealSrc: [
   revealSrc: [
-    'bower_components/reveal.js/lib/js/head.min.js',
-    'bower_components/reveal.js/lib/js/html5shiv.js',
-    'bower_components/reveal.js/js/reveal.js'
+    'node_modules/reveal.js/lib/js/head.min.js',
+    'node_modules/reveal.js/lib/js/html5shiv.js',
+    dirs.jsDist + '/crowi-presentation.js',
   ],
   ],
   revealDist: dirs.jsDist + '/crowi-reveal.js',
   revealDist: dirs.jsDist + '/crowi-reveal.js',
   formSrc: [
   formSrc: [
@@ -67,11 +70,16 @@ var js = {
 var cssIncludePaths = [
 var cssIncludePaths = [
   'bower_components/bootstrap-sass-official/assets/stylesheets',
   'bower_components/bootstrap-sass-official/assets/stylesheets',
   'node_modules/font-awesome/scss',
   'node_modules/font-awesome/scss',
-  'bower_components/reveal.js/css'
+  'node_modules/reveal.js/css'
 ];
 ];
 
 
 gulp.task('js:browserify', function() {
 gulp.task('js:browserify', function() {
-  return browserify({entries: js.browserify})
+  browserify({entries: js.browserify.crowiPresentation})
+    .bundle()
+    .pipe(source('crowi-presentation.js'))
+    .pipe(gulp.dest(dirs.jsDist));
+
+  return browserify({entries: js.browserify.crowi})
     .bundle()
     .bundle()
     .pipe(source('crowi-bundled.js'))
     .pipe(source('crowi-bundled.js'))
     .pipe(gulp.dest(dirs.jsDist));
     .pipe(gulp.dest(dirs.jsDist));
@@ -124,13 +132,21 @@ gulp.task('test', function() {
 });
 });
 
 
 gulp.task('css:sass', function() {
 gulp.task('css:sass', function() {
+  gulp.src(css.revealSrc) // reveal
+    .pipe(sass({
+        outputStyle: 'nesed',
+        sourceComments: 'map',
+        includePaths: cssIncludePaths
+    }).on('error', sass.logError))
+    .pipe(gulp.dest(dirs.cssDist));
+
   return gulp.src(css.src)
   return gulp.src(css.src)
     .pipe(sass({
     .pipe(sass({
         outputStyle: 'nesed',
         outputStyle: 'nesed',
         sourceComments: 'map',
         sourceComments: 'map',
         includePaths: cssIncludePaths
         includePaths: cssIncludePaths
     }).on('error', sass.logError))
     }).on('error', sass.logError))
-    .pipe(rename({suffix: '-main'}))
+    .pipe(rename({suffix: '-main'})) // create -main.css to prepare concating with highlight.js's css
     .pipe(gulp.dest(dirs.cssDist));
     .pipe(gulp.dest(dirs.cssDist));
 });
 });
 
 
@@ -141,6 +157,11 @@ gulp.task('css:concat', ['css:sass'], function() {
 });
 });
 
 
 gulp.task('css:min', ['css:concat'], function() {
 gulp.task('css:min', ['css:concat'], function() {
+  gulp.src(css.revealDist)
+    .pipe(cssmin())
+    .pipe(rename({suffix: '.min'}))
+    .pipe(gulp.dest(dirs.cssDist));
+
   return gulp.src(css.dist)
   return gulp.src(css.dist)
     .pipe(cssmin())
     .pipe(cssmin())
     .pipe(rename({suffix: '.min'}))
     .pipe(rename({suffix: '.min'}))

+ 4 - 32
lib/views/page_presentation.html

@@ -7,8 +7,8 @@
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
 
 
 
 
-    <link rel="stylesheet" type="text/css" href="/css/crowi-reveal.css">
-    <link rel="stylesheet" type="text/css" href="/bower_components/reveal.js/lib/css/zenburn.css">
+    <link rel="stylesheet" type="text/css" href="/css/crowi-reveal{% if env  == 'production' %}.min{% endif %}.css">
+    <link rel="stylesheet" type="text/css" href="/js/reveal.js/lib/css/zenburn.css">
 
 
     <title>{{ path|path2name }} | {{ path }}</title>
     <title>{{ path|path2name }} | {{ path }}</title>
   </head>
   </head>
@@ -27,35 +27,7 @@
       </div>
       </div>
     </div>
     </div>
 
 
-    <script src="/js/crowi-reveal.js"></script>
-    <script>
-      Reveal.initialize({
-        controls: true,
-        progress: true,
-        history: true,
-        center: true,
-        transition: 'slide',
-
-        // Optional libraries used to extend on reveal.js
-        dependencies: [
-          { src: '/bower_components/reveal.js/lib/js/classList.js', condition: function() { return !document.body.classList; } },
-          { src: '/bower_components/reveal.js/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
-          { src: '/bower_components/reveal.js/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
-          { src: '/bower_components/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
-          { src: '/bower_components/reveal.js/plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
-          { src: '/bower_components/reveal.js/plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
-        ]
-      });
-
-      Reveal.addEventListener('ready', function(event) {
-        // event.currentSlide, event.indexh, event.indexv
-        $('.reveal section').each(function(e) {
-          var $self = $(this);
-          if ($self.children().length == 1) {
-            $self.addClass('only');
-          }
-        });
-      });
-    </script>
+    <script src="/js/crowi{% if env  == 'production' %}.min{% endif %}.js"></script>
+    <script src="/js/crowi-reveal{% if env  == 'production' %}.min{% endif %}.js"></script>
   </body>
   </body>
 </html>
 </html>

+ 1 - 0
package.json

@@ -71,6 +71,7 @@
     "nodemailer": "~1.2.2",
     "nodemailer": "~1.2.2",
     "nodemailer-ses-transport": "~1.1.0",
     "nodemailer-ses-transport": "~1.1.0",
     "redis": "~0.12.1",
     "redis": "~0.12.1",
+    "reveal.js": "~3.2.0",
     "socket.io": "~1.3.0",
     "socket.io": "~1.3.0",
     "socket.io-client": "~1.3.0",
     "socket.io-client": "~1.3.0",
     "swig": "~1.4.0",
     "swig": "~1.4.0",

+ 1 - 1
resource/css/crowi-reveal.scss

@@ -1,4 +1,4 @@
-@import 'reveal';
+@import 'reveal.scss';
 @import 'theme/source/black';
 @import 'theme/source/black';
 
 
 .reveal {
 .reveal {

+ 34 - 0
resource/js/crowi-presentation.js

@@ -0,0 +1,34 @@
+var Reveal = require('reveal.js');
+
+if (!window) {
+  window = {};
+}
+window.Reveal = Reveal;
+
+Reveal.initialize({
+  controls: true,
+  progress: true,
+  history: true,
+  center: true,
+  transition: 'slide',
+
+  // Optional libraries used to extend on reveal.js
+  dependencies: [
+    { src: '/js/reveal.js/lib/js/classList.js', condition: function() { return !document.body.classList; } },
+    { src: '/js/reveal.js/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
+    { src: '/js/reveal.js/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
+    { src: '/js/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
+    { src: '/js/reveal.js/plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
+    { src: '/js/reveal.js/plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
+  ]
+});
+
+Reveal.addEventListener('ready', function(event) {
+  // event.currentSlide, event.indexh, event.indexv
+  $('.reveal section').each(function(e) {
+    var $self = $(this);
+    if ($self.children().length == 1) {
+      $self.addClass('only');
+    }
+  });
+});