Gruntfile.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /* jshint node:true */
  2. module.exports = function(grunt) {
  3. 'use strict';
  4. grunt.util.linefeed = '\n';
  5. grunt.util.linefeed = '\n';
  6. grunt.initConfig(require('./utils/grunt/init')(grunt));
  7. require('./utils/grunt/packaging')(grunt);
  8. require('matchdep').filterDev('grunt-*').forEach( grunt.loadNpmTasks );
  9. grunt.registerTask('buildjs', ['browserify', 'concat', 'uglify']);
  10. grunt.registerTask('dev', [ 'buildjs', 'less', 'parallel:dev']);
  11. grunt.registerTask('post-sync', function() {
  12. var done = this.async();
  13. var exec = require('child_process').exec;
  14. var recompile = "echo 'vamtam_recompile_css()' | wp shell";
  15. exec( recompile, {
  16. cwd: require( 'path' ).resolve( process.cwd(), '..' ),
  17. }, function( error ) {
  18. if ( error ) return done( grunt.util.error( error ) );
  19. done();
  20. });
  21. });
  22. // build process - related tasks go on the same row
  23. grunt.registerTask('package', [
  24. 'jshint', 'buildjs', 'ttf2woff2',
  25. 'build-plugins',
  26. 'parallel:composer',
  27. 'check-api',
  28. 'clean:build', 'clean:dist',
  29. 'makepot', 'add-textdomain',
  30. 'copy:theme',
  31. // samples
  32. // 'scp-download-samples', // removed as it only downloads all-default.css
  33. // 'download-images',
  34. 'download-content-xml',
  35. 'download-sidebars-options',
  36. 'download-revslider',
  37. 'download-ninjaforms',
  38. 'download-booked',
  39. 'download-json:megamenu',
  40. 'download-json:jetpack',
  41. 'download-json:beaver-global-settings',
  42. 'download-json:beaver-user-access',
  43. 'download-json:the-events-calendar',
  44. // clean and compress
  45. 'clean:post-copy',
  46. 'replace:style-switcher',
  47. 'compress:theme',
  48. 'clean:build'
  49. ]);
  50. };