/
build.config.js
72 lines (63 loc) · 2.02 KB
/
build.config.js
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
'use strict';
const path = require('path');
let dir = {
root : './'
};
// main dirs
dir.src = path.join(dir.root, 'src');
dir.build = path.join(dir.root, 'build');
dir.tmp = path.join(dir.root, 'tmp');
// src dirs
dir.stl = path.join(dir.src, 'stl');
dir.tpl = path.join(dir.src, 'tpl');
dir.js = path.join(dir.src, 'js');
dir.fonts = path.join(dir.src, 'fonts');
dir.img = path.join(dir.src, 'img');
dir.dsgn = path.join(dir.src, 'img/design');
dir.svg = path.join(dir.src, 'img/svg');
dir.imggag = path.join(dir.src, 'img/pic');
let flags = {
mode : process.env.NODE_ENV || 'development',
isDev : !process.env.NODE_ENV || process.env.NODE_ENV == 'development',
isProd : process.env.NODE_ENV == 'production',
debug : process.env.DEBUG == 'true',
shouldWatch : !process.env.WATCH || process.env.NODE_WATCH == 'true',
};
module.exports = {
dir, flags,
paths : {
styles: {
watch : path.join(dir.stl, '**/*.*'),
src : path.join(dir.stl, 'main.*'),
dest : path.join(dir.build, 'css'),
},
templates : {
watch : path.join(dir.tpl, '**/*.*'),
src : path.join(dir.tpl, '!(_)*.jade'),
dest : dir.build,
},
fonts : {
src : path.join(dir.fonts, '**.*'),
dest : path.join(dir.build, 'fonts'),
},
img : {
watch : path.join(dir.dsgn, '**/*.@(jpg|jpeg|png|gif)'),
src : path.join(dir.dsgn, '**/*.@(jpg|jpeg|png|gif)'),
dest : path.join(dir.build, 'img'),
},
imggag : {
watch : path.join(dir.imggag, '**/*.@(jpg|jpeg|png|gif)'),
src : path.join(dir.imggag, '**/*.@(jpg|jpeg|png|gif)'),
dest : path.join(dir.build, 'pic'),
},
svg : {
watch : path.join(dir.svg, '**/*.svg'),
src : path.join(dir.svg, '**/*.svg'),
dest : path.join(dir.build, 'svg'),
templates : {
svg : path.resolve(dir.img, 'svg-sprite-templates/svg-sprite.svg'),
css : path.resolve(dir.img, 'svg-sprite-templates/svg-sprite.css'),
},
},
}
};