diff --git a/gruntfile.js b/gruntfile.js deleted file mode 100644 index acf34b67..00000000 --- a/gruntfile.js +++ /dev/null @@ -1,189 +0,0 @@ -const sass = require('node-sass'); - -module.exports = grunt => { - - require('load-grunt-tasks')(grunt); - - let port = grunt.option('port') || 8000; - let root = grunt.option('root') || '.'; - - if (!Array.isArray(root)) root = [root]; - - // Project configuration - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - meta: { - banner: - '/*!\n' + - ' * reveal.js <%= pkg.version %> (<%= grunt.template.today("yyyy-mm-dd, HH:MM") %>)\n' + - ' * http://revealjs.com\n' + - ' * MIT licensed\n' + - ' *\n' + - ' * Copyright (C) 2020 Hakim El Hattab, http://hakim.se\n' + - ' */' - }, - - qunit: { - files: [ 'test/*.html' ] - }, - - uglify: { - options: { - banner: '<%= meta.banner %>\n', - ie8: true - }, - build: { - src: 'js/reveal.js', - dest: 'js/reveal.min.js' - } - }, - - sass: { - options: { - implementation: sass, - sourceMap: false - }, - core: { - src: 'css/reveal.scss', - dest: 'css/reveal.css' - }, - themes: { - expand: true, - cwd: 'css/theme/source', - src: ['*.sass', '*.scss'], - dest: 'css/theme', - ext: '.css' - } - }, - - autoprefixer: { - core: { - src: 'css/reveal.css' - } - }, - - cssmin: { - options: { - compatibility: 'ie9' - }, - compress: { - src: 'css/reveal.css', - dest: 'css/reveal.min.css' - } - }, - - jshint: { - options: { - curly: false, - eqeqeq: true, - immed: true, - esnext: true, - latedef: 'nofunc', - newcap: true, - noarg: true, - sub: true, - undef: true, - eqnull: true, - browser: true, - expr: true, - loopfunc: true, - globals: { - head: false, - module: false, - console: false, - unescape: false, - define: false, - exports: false, - require: false - } - }, - files: [ 'gruntfile.js', 'js/reveal.js' ] - }, - - connect: { - server: { - options: { - port: port, - base: root, - livereload: true, - open: true, - useAvailablePort: true - } - } - }, - - zip: { - bundle: { - src: [ - 'index.html', - 'css/**', - 'js/**', - 'lib/**', - 'images/**', - 'plugin/**', - '**.md' - ], - dest: 'reveal-js-presentation.zip' - } - }, - - watch: { - js: { - files: [ 'gruntfile.js', 'js/reveal.js' ], - tasks: 'js' - }, - theme: { - files: [ - 'css/theme/source/*.sass', - 'css/theme/source/*.scss', - 'css/theme/template/*.sass', - 'css/theme/template/*.scss' - ], - tasks: 'css-themes' - }, - css: { - files: [ 'css/reveal.scss' ], - tasks: 'css-core' - }, - test: { - files: [ 'test/*.html' ], - tasks: 'test' - }, - html: { - files: root.map(path => path + '/*.html') - }, - markdown: { - files: root.map(path => path + '/*.md') - }, - options: { - livereload: true - } - } - - }); - - // Default task - grunt.registerTask( 'default', [ 'css', 'js' ] ); - - // JS task - grunt.registerTask( 'js', [ 'jshint', 'uglify', 'qunit' ] ); - - // Theme CSS - grunt.registerTask( 'css-themes', [ 'sass:themes' ] ); - - // Core framework CSS - grunt.registerTask( 'css-core', [ 'sass:core', 'autoprefixer', 'cssmin' ] ); - - // All CSS - grunt.registerTask( 'css', [ 'sass', 'autoprefixer', 'cssmin' ] ); - - // Package presentation to archive - grunt.registerTask( 'package', [ 'default', 'zip' ] ); - - // Serve presentation locally - grunt.registerTask( 'serve', [ 'connect', 'watch' ] ); - - // Run tests - grunt.registerTask( 'test', [ 'jshint', 'qunit' ] ); - -};