Rev 14730 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 9886 | obado | 1 | module.exports = function(grunt){ |
| 2 | |||
| 3 | grunt.initConfig({ |
||
| 4 | |||
| 5 | // Vérifie que nos js sont corrects (on considere que les js des librairies le sont deja.) |
||
| 13570 | obado | 6 | eslint: { |
| 9886 | obado | 7 | /*all: ['../../scripts/js/*.js'],*/ |
| 8 | /*ASCII: ['../../scripts/js/ASCII*.js'],*/ |
||
| 9 | /*utils: ['../../scripts/js/utils.js'],*/ |
||
| 9957 | obado | 10 | /*wz: ['../../scripts/js/wz*.js'],*/ |
| 9978 | obado | 11 | interface: ['../../scripts/js/interface/*.js'], |
| 10726 | obado | 12 | /*geogebra: ['../../scripts/js/geogebra/*.js'],*/ |
| 10445 | obado | 13 | /*inc: ['../_inc/*.js'],*/ |
| 9886 | obado | 14 | }, |
| 15 | |||
| 16 | /* Concatene plusieurs fichiers en un seul |
||
| 17 | concat: { |
||
| 18 | options: { |
||
| 19 | // ajoute automatiquement des ";" entre les javascripts, au cas ou il en manque. |
||
| 20 | separator: ';', |
||
| 21 | }, |
||
| 22 | dist: { |
||
| 13570 | obado | 23 | src: ['node_modules/jquery/dist/jquery.min.js'], |
| 9886 | obado | 24 | dest: 'grunt_tests/built.js', |
| 25 | }, |
||
| 26 | },*/ |
||
| 27 | |||
| 10445 | obado | 28 | /* Concatene et minifie les fichiers JS.*/ |
| 9886 | obado | 29 | uglify: { |
| 30 | options: { |
||
| 31 | // mangle permet de renommer les variables JS. |
||
| 13572 | obado | 32 | mangle: false, |
| 33 | output: { |
||
| 34 | // preserve comments |
||
| 35 | comments: '/==============/' |
||
| 36 | } |
||
| 9886 | obado | 37 | }, |
| 10445 | obado | 38 | ASCIIMathML: { |
| 9886 | obado | 39 | files: { |
| 13570 | obado | 40 | '../../scripts/js/ASCIIMathML.js': ['node_modules/asciimathml/ASCIIMathML.js'] |
| 9886 | obado | 41 | } |
| 10445 | obado | 42 | }, |
| 43 | LaTeXMathML: { |
||
| 44 | files: { |
||
| 13570 | obado | 45 | '../../scripts/js/LaTeXMathML.js': ['node_modules/asciimathml/LaTeXMathML.js'] |
| 10445 | obado | 46 | } |
| 10726 | obado | 47 | }, |
| 48 | Geogebra: { |
||
| 49 | files: { |
||
| 50 | '../../scripts/js/geogebra/deployggb.min.js': ['../../scripts/js/geogebra/deployggb.js'] |
||
| 51 | } |
||
| 9886 | obado | 52 | } |
| 10445 | obado | 53 | }, |
| 9886 | obado | 54 | |
| 55 | // Concatene et minifie les fichiers CSS. |
||
| 56 | cssmin: { |
||
| 57 | options: { |
||
| 58 | shorthandCompacting: true, |
||
| 59 | roundingPrecision: -1, |
||
| 60 | keepSpecialComments: "*", |
||
| 61 | /*rebase: true /* change all paths inside css file */ |
||
| 62 | }, |
||
| 63 | normalize: { |
||
| 64 | files: { |
||
| 13570 | obado | 65 | "../../scripts/js/external/normalize.min.css": ["node_modules/normalize.css/*.css"] |
| 9886 | obado | 66 | } |
| 14456 | obado | 67 | }, |
| 68 | carousel:{ |
||
| 69 | files: { |
||
| 70 | "../../scripts/js/external/slick/slick.min.css": ["node_modules/slick-carousel/slick/slick.css"] |
||
| 71 | } |
||
| 9886 | obado | 72 | } |
| 73 | }, |
||
| 74 | |||
| 75 | // Copie les fichiers vers leur répertoire définitif |
||
| 76 | copy: { |
||
| 77 | main: { |
||
| 78 | files: [ |
||
| 79 | // includes all minified files within path "jquery/dist" |
||
| 80 | { |
||
| 81 | expand: true, |
||
| 82 | flatten: true, |
||
| 83 | filter: 'isFile', |
||
| 13570 | obado | 84 | src: ['node_modules/jquery/dist/*.min.*'], |
| 85 | dest: '../../scripts/js/external/jquery/' |
||
| 9886 | obado | 86 | }, |
| 87 | |||
| 13570 | obado | 88 | /*** JQuery UI ***/ |
| 16497 | obado | 89 | // includes all minified files within path "jquery-ui/" |
| 9886 | obado | 90 | { |
| 91 | expand: true, |
||
| 13570 | obado | 92 | flatten: true, |
| 16497 | obado | 93 | src: ['node_modules/jquery-ui-dist/*.min.*'], |
| 13570 | obado | 94 | dest: '../../scripts/js/external/jquery-ui/' |
| 9886 | obado | 95 | }, |
| 13570 | obado | 96 | // includes all translated files for jquery-ui" |
| 9886 | obado | 97 | { |
| 98 | expand: true, |
||
| 13570 | obado | 99 | flatten: true, |
| 16497 | obado | 100 | src: ['node_modules/jquery-ui/ui/i18n/*.js'], |
| 13570 | obado | 101 | dest: '../../scripts/js/external/jquery-ui/ui/i18n/' |
| 9886 | obado | 102 | }, |
| 13570 | obado | 103 | // includes smoothness theme for jquery-ui" |
| 10963 | obado | 104 | { |
| 105 | expand: true, |
||
| 13570 | obado | 106 | flatten: true, |
| 16497 | obado | 107 | src: ['node_modules/jquery-ui/themes/smoothness/*.min.css'], |
| 13570 | obado | 108 | dest: '../../scripts/js/external/jquery-ui/themes/smoothness/' |
| 10963 | obado | 109 | }, |
| 13570 | obado | 110 | // includes smoothness images for jquery-ui" |
| 111 | { |
||
| 112 | expand: true, |
||
| 113 | flatten: true, |
||
| 16497 | obado | 114 | src: ['node_modules/jquery-ui/themes/smoothness/images/*'], |
| 13570 | obado | 115 | dest: '../../scripts/js/external/jquery-ui/themes/smoothness/images/' |
| 116 | }, |
||
| 117 | // includes "base" theme for jquery-ui" |
||
| 118 | { |
||
| 119 | expand: true, |
||
| 120 | flatten: true, |
||
| 16497 | obado | 121 | src: ['node_modules/jquery-ui/themes/base/*.min.css'], |
| 13570 | obado | 122 | dest: '../../scripts/js/external/jquery-ui/themes/base/' |
| 123 | }, |
||
| 124 | // includes "base" images for jquery-ui" |
||
| 125 | { |
||
| 126 | expand: true, |
||
| 127 | flatten: true, |
||
| 16497 | obado | 128 | src: ['node_modules/jquery-ui/themes/base/images/*'], |
| 13570 | obado | 129 | dest: '../../scripts/js/external/jquery-ui/themes/base/images/' |
| 130 | }, |
||
| 131 | // includes all minified files within path "jquery-ui-slider-pips/" |
||
| 132 | { |
||
| 133 | expand: true, |
||
| 134 | flatten: true, |
||
| 135 | src: ['node_modules/jquery-ui-slider-pips/dist/*.min.*'], |
||
| 136 | dest: '../../scripts/js/external/jquery-ui-slider-pips/' |
||
| 137 | }, |
||
| 10963 | obado | 138 | |
| 9886 | obado | 139 | // safari_mobile_links |
| 13570 | obado | 140 | /*{ |
| 9886 | obado | 141 | expand: true, |
| 142 | filter: 'isFile', |
||
| 13570 | obado | 143 | src: ['node_modules/safari_mobile_links/compressed.js'], |
| 144 | dest: '../../scripts/js/external/safari_mobile_links/', |
||
| 145 | },*/ |
||
| 9886 | obado | 146 | |
| 13577 | obado | 147 | /* hoverIntent |
| 9886 | obado | 148 | { |
| 149 | expand: true, |
||
| 13570 | obado | 150 | flatten: true, |
| 9886 | obado | 151 | filter: 'isFile', |
| 13570 | obado | 152 | src: ['node_modules/jquery-hoverIntent/*.min.js'], |
| 153 | dest: '../../scripts/js/external/hoverIntent/', |
||
| 13577 | obado | 154 | },*/ |
| 10726 | obado | 155 | // what-input |
| 156 | { |
||
| 157 | expand: true, |
||
| 13570 | obado | 158 | flatten: true, |
| 10726 | obado | 159 | filter: 'isFile', |
| 14730 | obado | 160 | src: ['node_modules/what-input/dist/*.min.*'], |
| 13570 | obado | 161 | dest: '../../scripts/js/external/what-input/', |
| 10726 | obado | 162 | }, |
| 163 | // Chart.js |
||
| 164 | { |
||
| 165 | expand: true, |
||
| 13570 | obado | 166 | flatten: true, |
| 10726 | obado | 167 | filter: 'isFile', |
| 13570 | obado | 168 | src: ['node_modules/chart.js/dist/*.bundle.min.js'], |
| 169 | dest: '../../scripts/js/external/chart.js/', |
||
| 10726 | obado | 170 | }, |
| 10963 | obado | 171 | // jsxGraph |
| 172 | { |
||
| 173 | expand: true, |
||
| 174 | filter: 'isFile', |
||
| 175 | flatten: 'true', |
||
| 13570 | obado | 176 | src: ['node_modules/jsxgraph/distrib/jsxgraph*', 'node_modules/jsxgraph/distrib/geo*'], |
| 177 | //dest: '../../scripts/js/external/jsxgraph/', |
||
| 10963 | obado | 178 | dest: '../../scripts/js/jsxgraph/', |
| 179 | }, |
||
| 14456 | obado | 180 | // Slick Carousel |
| 181 | { |
||
| 182 | expand: true, |
||
| 183 | filter: 'isFile', |
||
| 184 | flatten: 'true', |
||
| 185 | src: ['node_modules/slick-carousel/slick/*.min.js','node_modules/slick-carousel/slick/*.gif','node_modules/slick-carousel/slick/*-theme.css'], |
||
| 186 | dest: '../../scripts/js/external/slick/', |
||
| 187 | },{ |
||
| 188 | expand: true, |
||
| 189 | filter: 'isFile', |
||
| 190 | flatten: 'true', |
||
| 191 | src: ['node_modules/slick-carousel/slick/fonts/*'], |
||
| 192 | dest: '../../scripts/js/external/slick/fonts/', |
||
| 193 | }, |
||
| 13570 | obado | 194 | // Slideout.js |
| 195 | /*{ |
||
| 196 | expand: true, |
||
| 197 | filter: 'isFile', |
||
| 198 | flatten: 'true', |
||
| 199 | src: ['node_modules/slideout.js/dist/*.min.js', 'node_modules/slideout.js/*.css' ], |
||
| 200 | dest: '../../scripts/js/slideout/', |
||
| 201 | },*/ |
||
| 10445 | obado | 202 | /* ASCIIMathML (+LaTeXMathML) |
| 9886 | obado | 203 | { |
| 204 | expand: true, |
||
| 205 | flatten: true, |
||
| 206 | filter: 'isFile', |
||
| 13570 | obado | 207 | src: ['node_modules/asciimathml/*.js' ], |
| 9886 | obado | 208 | dest: '../../scripts/js/', |
| 10445 | obado | 209 | },*/ |
| 14730 | obado | 210 | /* Marked js (Markdown parser) */ |
| 211 | { |
||
| 212 | expand: true, |
||
| 213 | flatten: true, |
||
| 214 | filter: 'isFile', |
||
| 215 | src: ['node_modules/marked/*.js' ], |
||
| 216 | dest: '../../scripts/js/external/marked/', |
||
| 217 | } |
||
| 9886 | obado | 218 | |
| 219 | ], |
||
| 220 | }, |
||
| 9957 | obado | 221 | |
| 10963 | obado | 222 | // MathJax specific copying task (it could be long) |
| 13570 | obado | 223 | /*MathJax: { |
| 9957 | obado | 224 | files: [ |
| 225 | { |
||
| 226 | expand: true, |
||
| 13570 | obado | 227 | src: ['node_modules/MathJax/**' ], |
| 9957 | obado | 228 | dest: '../../scripts/js/', |
| 229 | }, |
||
| 230 | ], |
||
| 13570 | obado | 231 | },*/ |
| 9886 | obado | 232 | }, |
| 233 | |||
| 11729 | obado | 234 | // RSYNC |
| 13570 | obado | 235 | /*rsync: { |
| 11729 | obado | 236 | options: { |
| 237 | args: ["--verbose"], |
||
| 238 | exclude: [".git*","*.scss","node_modules"], |
||
| 239 | recursive: true |
||
| 240 | }, |
||
| 241 | MathJax: { |
||
| 242 | options: { |
||
| 13570 | obado | 243 | src: "./node_modules/MathJax/", |
| 11729 | obado | 244 | dest: "../../scripts/js/mathjax" |
| 245 | } |
||
| 246 | } |
||
| 13570 | obado | 247 | }*/ |
| 11729 | obado | 248 | |
| 9886 | obado | 249 | }); |
| 250 | |||
| 9957 | obado | 251 | /* available jobs */ |
| 13570 | obado | 252 | grunt.loadNpmTasks('grunt-eslint'); |
| 10445 | obado | 253 | /*grunt.loadNpmTasks('grunt-contrib-concat');*/ |
| 254 | grunt.loadNpmTasks('grunt-contrib-uglify'); |
||
| 9886 | obado | 255 | grunt.loadNpmTasks('grunt-contrib-cssmin'); |
| 256 | grunt.loadNpmTasks('grunt-contrib-copy'); |
||
| 13570 | obado | 257 | //grunt.loadNpmTasks("grunt-rsync"); |
| 9886 | obado | 258 | |
| 9957 | obado | 259 | /* Defined Tasks */ |
| 13570 | obado | 260 | grunt.registerTask('default', ['eslint', 'uglify', 'cssmin', 'copy:main']); |
| 261 | //grunt.registerTask('mathjax', ['copy:MathJax']); |
||
| 262 | grunt.registerTask('mathjax', ['rsync:MathJax']); |
||
| 9886 | obado | 263 | |
| 13570 | obado | 264 | }; |