| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | module.exports = function(grunt) {  grunt.initConfig({    pkg: grunt.file.readJSON('package.json'),    concat: {      options: {        separator: ';'      },      dist: {        src: ['js/searx_src/*.js'],        dest: 'js/searx.js'      }    },    uglify: {      options: {        sourceMap: true,        banner: '/*! oscar/searx.min.js | <%= grunt.template.today("dd-mm-yyyy") %> | <%= process.env.GIT_URL %>  */\n'      },      dist: {        files: {          'js/searx.min.js': ['<%= concat.dist.dest %>']        }      }    },    jshint: {      files: ['gruntfile.js', 'js/searx_src/*.js'],      options: {        reporterOutput: "",        // options here to override JSHint defaults        globals: {          jQuery: true,          console: true,          module: true,          document: true        }      }    },    less: {        development: {            options: {                paths: ["less/pointhi", "less/logicodev", "less/logicodev-dark"]            },            files: {"css/pointhi.css": "less/pointhi/oscar.less",                    "css/logicodev.css": "less/logicodev-dark/oscar.less",                    "css/logicodev-dark.css": "less/logicodev/oscar.less"}        },        production: {            options: {                paths: ["less/pointhi", "less/logicodev", "less/logicodev-dark"],                cleancss: true            },            files: {"css/pointhi.min.css": "less/pointhi/oscar.less",                    "css/logicodev.min.css": "less/logicodev/oscar.less",                    "css/logicodev-dark.min.css": "less/logicodev-dark/oscar.less"}        },        /*        // built with ./manage.sh styles        bootstrap: {            options: {                paths: ["less/bootstrap"],                cleancss: true            },            files: {"css/bootstrap.min.css": "less/bootstrap/bootstrap.less"}        },        */    },    watch: {        scripts: {            files: ['<%= jshint.files %>'],            tasks: ['jshint', 'concat', 'uglify']        },        oscar_styles: {            files: ['less/pointhi/**/*.less'],            tasks: ['less:development', 'less:production']        },        bootstrap_styles: {            files: ['less/bootstrap/**/*.less'],            tasks: ['less:bootstrap']        }    }  });  grunt.loadNpmTasks('grunt-contrib-uglify');  grunt.loadNpmTasks('grunt-contrib-jshint');  grunt.loadNpmTasks('grunt-contrib-watch');  grunt.loadNpmTasks('grunt-contrib-concat');  grunt.loadNpmTasks('grunt-contrib-less');  grunt.registerTask('test', ['jshint']);  grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'less']);  grunt.registerTask('styles', ['less']);};
 |