From ffa64f6fd3a05c38725136c25f45ea961c788200 Mon Sep 17 00:00:00 2001 From: Colin Eberhardt Date: Tue, 11 Aug 2015 13:49:52 +0100 Subject: [PATCH] Added a grunt build This copies Layout.js to a dist folder, minifies and source-maps. --- Gruntfile.js | 46 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 5 +++++ 2 files changed, 51 insertions(+) create mode 100644 Gruntfile.js diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 00000000..6ff9a040 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,46 @@ +'use strict'; + +module.exports = function(grunt) { + + grunt.initConfig({ + + paths: { + distFolder: 'dist', + srcFolder: 'src' + }, + + clean: ['<%= paths.distFolder %>'], + + copy: { + main: { + expand: true, + src: ['<%= paths.srcFolder %>/Layout.js'], + dest: '<%= paths.distFolder %>', + rename: function(dest, src) { + return dest + '/css-layout.js'; + } + } + }, + + uglify: { + options: { + sourceMap: true, + sourceMapIncludeSources: true + }, + main: { + files: { + '<%= paths.distFolder %>/css-layout.min.js': ['<%= paths.srcFolder %>/Layout.js'] + } + } + } + }); + + grunt.loadNpmTasks('grunt-contrib-clean'); + grunt.loadNpmTasks('grunt-contrib-copy'); + grunt.loadNpmTasks('grunt-contrib-uglify'); + + grunt.registerTask('build', ['clean', 'copy', 'uglify']); + + grunt.registerTask('default', ['build']); + +}; diff --git a/package.json b/package.json index 83d927ae..64cd4ae6 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,11 @@ "homepage": "https://github.com/facebook/css-layout", "devDependencies": { "eslint": "^0.14.1", + "grunt": "^0.4.5", + "grunt-cli": "^0.1.13", + "grunt-contrib-clean": "^0.6.0", + "grunt-contrib-copy": "^0.8.0", + "grunt-contrib-uglify": "^0.9.1", "jasmine-core": "^2.2.0", "karma": "^0.12.31", "karma-chrome-launcher": "^0.1.7",