| module.exports = function(grunt) { |
| |
| //Project configuration. |
| grunt.initConfig({ |
| pkg: grunt.file.readJSON('package.json'), |
| concat: { |
| options: { |
| separator: '' |
| }, |
| dist: { |
| src: [ |
| 'src/intro.js', |
| 'src/purify.js', |
| 'src/core.js', |
| 'src/interactiveLayer.js', |
| 'src/tooltip.js', |
| 'src/utils.js', |
| 'src/models/axis.js', |
| 'src/models/historicalBar.js', |
| 'src/models/bullet.js', |
| 'src/models/bulletChart.js', |
| 'src/models/cumulativeLineChart.js', |
| 'src/models/discreteBar.js', |
| 'src/models/discreteBarChart.js', |
| 'src/models/distribution.js', |
| 'src/models/historicalBar.js', |
| 'src/models/historicalBarChart.js', |
| 'src/models/indentedTree.js', |
| 'src/models/legend.js', |
| 'src/models/line.js', |
| 'src/models/lineChart.js', |
| 'src/models/linePlusBarChart.js', |
| 'src/models/lineWithFocusChart.js', |
| 'src/models/linePlusBarWithFocusChart.js', |
| 'src/models/multiBar.js', |
| 'src/models/multiBarChart.js', |
| 'src/models/multiBarHorizontal.js', |
| 'src/models/multiBarHorizontalChart.js', |
| 'src/models/multiChart.js', |
| 'src/models/ohlcBar.js', |
| 'src/models/pie.js', |
| 'src/models/pieChart.js', |
| 'src/models/scatter.js', |
| 'src/models/scatterChart.js', |
| 'src/models/scatterPlusLineChart.js', |
| 'src/models/sparkline.js', |
| 'src/models/sparklinePlus.js', |
| 'src/models/stackedArea.js', |
| 'src/models/stackedAreaChart.js', |
| 'src/outro.js' ], |
| dest: 'nv.d3.js' |
| } |
| }, |
| uglify: { |
| options: { |
| banner: '/*! <%= pkg.name %> - v<%= pkg.version %> - ' + |
| '<%= grunt.template.today("yyyy-mm-dd") %> */' |
| }, |
| js: { |
| files: { |
| 'nv.d3.min.js': ['nv.d3.js'] |
| } |
| } |
| }, |
| jshint: { |
| foo: { |
| src: "src/**/*.js" |
| }, |
| options: { |
| jshintrc: '.jshintrc' |
| } |
| }, |
| watch: { |
| js: { |
| files: ["src/**/*.js"], |
| tasks: ['concat'] |
| } |
| }, |
| copy: { |
| css: { |
| files: [ |
| { src: 'src/nv.d3.css', dest: 'nv.d3.css' } |
| ] |
| } |
| }, |
| cssmin: { |
| dist: { |
| files: { |
| 'nv.d3.min.css' : ['nv.d3.css'] |
| } |
| } |
| } |
| }); |
| |
| grunt.loadNpmTasks('grunt-contrib-watch'); |
| grunt.loadNpmTasks('grunt-contrib-concat'); |
| grunt.loadNpmTasks('grunt-contrib-jshint'); |
| grunt.loadNpmTasks('grunt-contrib-uglify'); |
| grunt.loadNpmTasks('grunt-contrib-copy'); |
| grunt.loadNpmTasks('grunt-contrib-cssmin'); |
| |
| grunt.registerTask('default', ['concat', 'copy']); |
| grunt.registerTask('production', ['concat', 'uglify', 'copy', 'cssmin']); |
| grunt.registerTask('release', ['production']); |
| grunt.registerTask('lint', ['jshint']); |
| }; |