serve.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*******************************
  2. Serve Docs
  3. *******************************/
  4. var
  5. gulp = require('gulp'),
  6. // node dependencies
  7. console = require('better-console'),
  8. // gulp dependencies
  9. print = require('gulp-print').default,
  10. // user config
  11. config = require('../config/docs'),
  12. // task config
  13. tasks = require('../config/tasks'),
  14. configSetup = require('../config/project/config'),
  15. // shorthand
  16. log = tasks.log,
  17. css = require('../build/css'),
  18. js = require('../build/javascript'),
  19. assets = require('../build/assets')
  20. ;
  21. module.exports = function () {
  22. // use a different config
  23. config = configSetup.addDerivedValues(config);
  24. console.clear();
  25. console.log('Watching source files for changes');
  26. /*--------------
  27. Copy Source
  28. ---------------*/
  29. gulp
  30. .watch(['src/**/*.*'])
  31. .on('all', function (event, path) {
  32. // We don't handle deleted files yet
  33. if (event === 'unlink' || event === 'unlinkDir') {
  34. return;
  35. }
  36. return gulp.src(path, {
  37. base: 'src/'
  38. })
  39. .pipe(gulp.dest(config.paths.output.less))
  40. .pipe(print(log.created))
  41. ;
  42. })
  43. ;
  44. /*--------------
  45. Copy Examples
  46. ---------------*/
  47. gulp
  48. .watch(['examples/**/*.*'])
  49. .on('all', function (event, path) {
  50. // We don't handle deleted files yet
  51. if (event === 'unlink' || event === 'unlinkDir') {
  52. return;
  53. }
  54. return gulp.src(path, {
  55. base: 'examples/'
  56. })
  57. .pipe(gulp.dest(config.paths.output.examples))
  58. .pipe(print(log.created))
  59. ;
  60. })
  61. ;
  62. /*--------------
  63. Watch CSS
  64. ---------------*/
  65. css.watch('docs', config);
  66. /*--------------
  67. Watch JS
  68. ---------------*/
  69. js.watch('docs', config);
  70. /*--------------
  71. Watch Assets
  72. ---------------*/
  73. assets.watch('docs', config);
  74. };