gruntfile.js 1.53 KB
var banner = '/* <%= pkg.name %> */\n';

module.exports = function(grunt) {

    require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);

    // Project configuration.
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        svgstore: {
            options: {
                prefix: 'shape-' // This will prefix each <g> ID
            },
            default: {
                files: {
                    'img/svg-defs.svg': ['img/svg/*.svg']
                }
            }
        },

        svgmin: {
            options: {
                plugins: [
                    {
                        removeViewBox: false
                    },
                    {
                        removeUselessStrokeAndFill: false
                    }
                ]
            },
            dist: {
                expand: true,
                cwd: 'src/svg',
                src: ['*.svg'],
                dest: 'img/svg',
                ext: '.svg'
            }
        },

        svg2png: {
            all: {
                // specify files in array format with multiple src-dest mapping
                files: [
                    // rasterize all SVG files in "img" and its subdirectories to "img/png"
                    {
                        cwd: 'src/',
                        src: ['svg/*.svg'],
                        dest: 'img/png/'
                    }
                ]
            }
        }
    });

    grunt.registerTask('buildsvg', ['svgmin'/*, 'svg2png'*//*, 'svgstore', 'svg2string'*/]);
};