-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGulpfile.js
143 lines (120 loc) · 3.67 KB
/
Gulpfile.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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
var gulp = require('gulp');
var concat = require('gulp-concat');
var mainBowerFiles = require('gulp-main-bower-files');
var replace = require('gulp-replace');
//Arquivos JS que serão concatenados e salvo em dist
var jsAppConcat = [
"src/app.js",
"src/resources/app.util.js",
"src/resources/factorys/*.js",
"src/resources/services/*.js",
"src/resources/directives/*.js",
"src/resources/controllers/*.js",
"src/resources/controllers/**/*/*.js",
"src/resources/routes/*.js",
];
//Arquivos HTML que serão apenas copiados para dist
var htmlAppCopy = [
"src/templates/**/*"
];
//Arquivos kan libs que serão apenas copiados para dist
var libsAppCopy = [
"src/resources/libs/**/*"
];
///Tarefas para copiar templates para dist
gulp.task('copy-templates', function () {
gulp.src(htmlAppCopy)
.pipe(gulp.dest('dist/templates'));
});
///Tarefas para copiar index.html para dist
gulp.task('copy-index-html', function () {
gulp.src("src/index.html")
.pipe(replace('../dist/', ''))
.pipe(gulp.dest('dist/'));
});
///Tarefas para copiar pasta img para dist
gulp.task('copy-img', function () {
gulp.src("src/img/**/*")
.pipe(gulp.dest('dist/img'));
});
///Tarefa de concatenação dos arquivos JS - Verificar array jsAppConcat
gulp.task('concat-kan-js', function () {
gulp.src(jsAppConcat)
.pipe(concat('app.js'))
.pipe(gulp.dest('dist/'));
});
///Tarefa para copiar libs kan para dist
gulp.task('copy-kan-libs', function () {
gulp.src(libsAppCopy)
.pipe(gulp.dest('dist/libs'));
});
//Tarefa para copiar as fonts do font-awesome para pasta dist/libs/fonts
gulp.task('libs-fonts', function () {
gulp.src('./bower_components/components-font-awesome/fonts/**/*')
.pipe(gulp.dest('dist/libs/fonts'));
});
//Tarefa para copiar os arquivos .css para pasta dist/libs/css em um unico arquivo e minificar o codigo
gulp.task('libs-css', function () {
return gulp.src('./bower.json')
.pipe(mainBowerFiles(("**/*.css"), {
overrides: {
bootstrap: {
main: [
'./dist/css/bootstrap.min.css'
]
},
sweetalert2: {
main:
[
'./dist/sweetalert2.min.css'
]
}
}
}))
.pipe(concat('public-libs.css'))
.pipe(gulp.dest('dist/libs/css'))
});
//Tarefa para copiar os arquivos .js para pasta dist/libs/js em um unico arquivo e minificar o codigo
gulp.task('libs-js', function () {
return gulp.src('./bower.json')
.pipe(mainBowerFiles(("**/*.js"), {
overrides: {
bootstrap: {
main: [
'./assets/js/vendor/popper.min.js',
'./dist/js/bootstrap.min.js'
]
},
sweetalert2: {
main:
[
'./dist/sweetalert2.min.js'
]
}
}
}))
.pipe(concat('public-libs.js'))
.pipe(gulp.dest('dist/libs/js'))
});
// Tarefa de monitoração caso algum arquivo seja modificado
gulp.task('watch', function () {
gulp.watch("src/**/*", ["files-src"]);
});
gulp.task("files-src", [
"copy-templates",
"copy-index-html",
"copy-img",
"concat-kan-js",
"copy-kan-libs"
]);
gulp.task("public-libs", [
"libs-css",
"libs-js",
"libs-fonts"]
);
// Tarefa padrão quando executado o comando GULP
gulp.task('default', [
"public-libs",
"files-src",
"watch"]
);