Gruntfile.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. module.exports = function (grunt) {
  2. require('jit-grunt')(grunt);
  3. require('time-grunt')(grunt);
  4. grunt.initConfig({
  5. umd: {
  6. plain: {
  7. src: './src/js/scrollspy.js',
  8. dest: './scrollspy.js',
  9. objectToExport: 'ScrollSpy',
  10. globalAlias: 'ScrollSpy'
  11. },
  12. jquery: {
  13. src: './src/js/jquery.scrollspy.js',
  14. dest: './jquery.scrollspy.js'
  15. }
  16. },
  17. eslint: {
  18. target: ['./src/js/*.js']
  19. },
  20. uglify: {
  21. dev: {
  22. options: {},
  23. files: {
  24. './scrollspy.min.js': ['./scrollspy.js'],
  25. './jquery.scrollspy.min.js': ['./jquery.scrollspy.js']
  26. }
  27. }
  28. },
  29. connect: {
  30. server: {
  31. options: {
  32. base: './',
  33. livereload: true
  34. }
  35. }
  36. },
  37. watch: {
  38. options: {
  39. livereload: true
  40. },
  41. html: {
  42. files: ['./*.html'],
  43. tasks: [],
  44. options: {
  45. spawn: false
  46. }
  47. },
  48. js: {
  49. files: ['./src/js/*.js'],
  50. tasks: ['umd'],
  51. options: {
  52. spawn: false
  53. }
  54. },
  55. css: {
  56. files: ['./css/*.css'],
  57. tasks: [],
  58. options: {
  59. spawn: false
  60. }
  61. }
  62. }
  63. });
  64. grunt.registerTask('default', ['eslint', 'umd']);
  65. grunt.registerTask('serve', ['umd', 'connect', 'watch']);
  66. grunt.registerTask('build', ['eslint', 'umd', 'uglify']);
  67. };