Gruntfile.coffee 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. module.exports = (grunt) ->
  2. grunt.initConfig
  3. pkg: grunt.file.readJSON 'package.json'
  4. concat:
  5. frameworks:
  6. options:
  7. separator: "\n"
  8. src: [
  9. 'bower_components/jQuery/dist/jquery.min.js'
  10. 'bower_components/js-md5/js/md5.min.js'
  11. 'bower_components/mousetrap/mousetrap.min.js'
  12. 'bower_components/mousetrap/plugins/global-bind/mousetrap-global-bind.min.js'
  13. '../assets/js/_frameworks.js'
  14. ]
  15. dest: '../assets/min/frameworks.js'
  16. js:
  17. options:
  18. separator: "\n"
  19. src: [
  20. 'bower_components/jQuery/dist/jquery.min.js'
  21. 'bower_components/js-md5/js/md5.min.js'
  22. 'bower_components/mousetrap/mousetrap.min.js'
  23. 'bower_components/mousetrap/plugins/global-bind/mousetrap-global-bind.min.js'
  24. '../assets/js/*.js'
  25. ]
  26. dest: '../assets/min/main.js'
  27. css:
  28. options:
  29. separator: "\n"
  30. src: [
  31. '../assets/css/*.css'
  32. ]
  33. dest: '../assets/min/main.css'
  34. uglify:
  35. assets:
  36. options:
  37. banner: '/*! <%= pkg.name %> <%= pkg.version %> | <%= grunt.template.today("yyyy-mm-dd") %> */\n'
  38. files:
  39. '../assets/min/main.js': '../assets/min/main.js'
  40. cssmin:
  41. assets:
  42. options:
  43. banner: '/*! <%= pkg.name %> <%= pkg.version %> | <%= grunt.template.today("yyyy-mm-dd") %> */'
  44. files:
  45. '../assets/min/main.css': '../assets/min/main.css'
  46. watch:
  47. js:
  48. files: [
  49. '../assets/js/*.js'
  50. ]
  51. tasks: ['js']
  52. options:
  53. spawn: false
  54. interrupt: true
  55. css:
  56. files: [
  57. '../assets/css/*.css'
  58. ]
  59. tasks: ['css']
  60. options:
  61. spawn: false
  62. interrupt: true
  63. require('load-grunt-tasks')(grunt)
  64. grunt.registerTask 'default', ->
  65. grunt.task.run [
  66. 'concat:frameworks'
  67. 'js'
  68. 'css'
  69. ]
  70. grunt.registerTask 'js', [
  71. 'concat:js'
  72. 'uglify:assets'
  73. ]
  74. grunt.registerTask 'css', [
  75. 'concat:css'
  76. 'cssmin:assets'
  77. ]