-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
106 lines (93 loc) · 2.03 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
const { dest, series, src, parallel } = require('gulp');
const concat = require('gulp-concat');
const sass = require('gulp-sass')(require('sass'));
const Ordered = require('ordered-read-streams');
const del = require('del');
const djStaticDir = 'shushupe/static';
const filesToDelete = [
`${djStaticDir}/*`
];
/**
* Clean files
*/
async function clean() {
const deletedFilePaths = await del(filesToDelete, { force: true });
deletedFilePaths.forEach((i) => console.log('Deleted', i));
}
/**
* Move JS files to 'js' dir
*/
function js() {
return src([
'node_modules/alpinejs/dist/alpine.js',
])
.pipe(concat('alpine.min.js'))
.pipe(dest(`${djStaticDir}/js`));
}
/**
* Combine scss and css files into one
*/
function scss() {
let sassStream = src([
'./shushupe/scss/**/*.scss'
])
.pipe(sass().on('error', sass.logError));
let cssStream = src([
'./shushupe/assets/css/pygments.css',
]);
return new Ordered([sassStream, cssStream])
.pipe(concat('app.css'))
.pipe(dest(`${djStaticDir}/css`));
}
/**
* Move FontAwesome css to 'css' dir
*/
function facss() {
return src([
'node_modules/@fortawesome/fontawesome-free/css/all.min.css',
])
.pipe(concat('fontawesome.min.css'))
.pipe(dest(`${djStaticDir}/css`));
}
/**
* Move FontAwesome fonts to 'webfonts' css dir
*/
function fafonts() {
return src([
'node_modules/@fortawesome/fontawesome-free/webfonts/*',
])
.pipe(dest(`${djStaticDir}/webfonts`));
}
/**
* Move Inter UI fonts
*/
function interUiFonts() {
return src([
'node_modules/inter-ui/web/*'
])
.pipe(dest(`${djStaticDir}/css/web`));
}
/**
* Move inter UI css
*/
function interUiCss() {
return src([
'node_modules/inter-ui/inter.css'
])
.pipe(dest(`${djStaticDir}/css`));
}
/**
* Move images to 'img' dir
*/
function img() {
return src([
'./shushupe/assets/img/*',
])
.pipe(dest(`${djStaticDir}/img`));
}
exports.clean = clean;
exports.build = series(
clean,
parallel(js, scss, facss, fafonts, interUiFonts, interUiCss),
img
);