summaryrefslogtreecommitdiffstats
path: root/src/wwwroot/libraries/fomantic/tasks/docs/serve.js
blob: 51af308861f9c2d7db63c5b69612252815a2a1c1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/*******************************
 Serve Docs
 *******************************/
var
  gulp        = require('gulp'),

  // node dependencies
  console     = require('better-console'),

  // gulp dependencies
  print       = require('gulp-print').default,

  // user config
  config      = require('../config/docs'),

  // task config
  tasks       = require('../config/tasks'),
  configSetup = require('../config/project/config'),

  // shorthand
  log         = tasks.log,

  css         = require('../build/css'),
  js          = require('../build/javascript'),
  assets      = require('../build/assets')
;


module.exports = function () {

  // use a different config
  config = configSetup.addDerivedValues(config);

  console.clear();
  console.log('Watching source files for changes');

  /*--------------
     Copy Source
  ---------------*/

  gulp
    .watch(['src/**/*.*'])
    .on('all', function (event, path) {
      // We don't handle deleted files yet
      if (event === 'unlink' || event === 'unlinkDir') {
        return;
      }
      return gulp.src(path, {
        base: 'src/'
      })
        .pipe(gulp.dest(config.paths.output.less))
        .pipe(print(log.created))
        ;
    })
  ;

  /*--------------
    Copy Examples
  ---------------*/

  gulp
    .watch(['examples/**/*.*'])
    .on('all', function (event, path) {
      // We don't handle deleted files yet
      if (event === 'unlink' || event === 'unlinkDir') {
        return;
      }
      return gulp.src(path, {
        base: 'examples/'
      })
        .pipe(gulp.dest(config.paths.output.examples))
        .pipe(print(log.created))
        ;
    })
  ;

  /*--------------
      Watch CSS
  ---------------*/

  css.watch('docs', config);

  /*--------------
      Watch JS
  ---------------*/

  js.watch('docs', config);

  /*--------------
    Watch Assets
  ---------------*/

  assets.watch('docs', config);

};