UNPKG

1.75 kBJavaScriptView Raw
1module.exports = function(grunt) {
2
3 grunt.initConfig({
4 pkg: grunt.file.readJSON('package.json'),
5
6 mochaTest: {
7 files: ['test/*.js']
8 },
9 mochaTestConfig: {
10 options: {
11 reporter: 'spec',
12 ui: 'exports'
13 }
14 },
15
16 jshint: {
17 options: {
18 "bitwise": false,
19 "camelcase": false,
20 "curly": false,
21 "eqeqeq": true,
22 "forin": true,
23 "immed": true,
24 "indent": 2,
25 "latedef": false,
26 "newcap": true,
27 "noarg": true,
28 "noempty": false,
29 "nonew": true,
30 "plusplus": false,
31 "quotmark": false,
32 "undef": true,
33 "unused": true,
34 "strict": true,
35 "trailing": true,
36
37 "boss": true,
38 "laxcomma": true,
39 "multistr": true,
40 "sub": true,
41 "supernew": true,
42
43 "browser": true,
44 "node": true,
45 "worker": true,
46
47 "predef": [
48 'define', 'require'
49 ]
50 },
51 files: ['levenshtein.js']
52 },
53
54 uglify: {
55 options: {
56 banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %>. Copyright <%= pkg.author %> */\n'
57 },
58 build: {
59 src: 'levenshtein.js',
60 dest: 'levenshtein.min.js'
61 }
62 },
63
64 benchmarkConfig: {
65 speed: {
66 src: ['benchmark/speed.js']
67 }
68 },
69 });
70
71 require('load-grunt-tasks')(grunt);
72 grunt.renameTask('benchmark', 'benchmarkConfig');
73
74 grunt.registerTask('build', ['jshint', 'uglify', 'mochaTest']);
75
76 grunt.registerTask('default', ['build']);
77
78 grunt.registerTask('benchmark', ['npm-install:levenshtein-edit-distance:levenshtein:natural:levenshtein-component:levenshtein-deltas', 'benchmarkConfig']);
79};
80
81