-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgulpfile.js
66 lines (55 loc) · 2.59 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
'use strict';
const gulp = require('gulp');
const del = require('del');
const install = require('gulp-install');
const replace = require('gulp-replace');
const WWW_DIR = './www/';
gulp.task('clean-www', clean_www);
var wwwBuild = gulp.series(clean_www, www_src, www_locale, www_libraries, www_resources, www_replace);
gulp.task('www', wwwBuild);
function www_src() {
var wwwSources = [
'./betaflight-configurator/src/**/*',
'!./betaflight-configurator/src/css/dropdown-lists/LICENSE',
'!./betaflight-configurator/src/css/font-awesome/css/font-awesome.css',
'!./betaflight-configurator/src/css/opensans_webfontkit/*.{txt,html}',
'!./betaflight-configurator/src/support/**'
];
return gulp.src(wwwSources, { base: 'betaflight-configurator/src' })
.pipe(gulp.src('betaflight-configurator/manifest.json', { passthrougth: true }))
.pipe(gulp.src('betaflight-configurator/package.json', { passthrougth: true }))
.pipe(gulp.src('betaflight-configurator/changelog.html', { passthrougth: true }))
.pipe(gulp.dest(WWW_DIR))
.pipe(install({
npm: '--production --ignore-scripts'
}));
}
function www_locale() {
return gulp.src('betaflight-configurator/locales/**/*', { base: 'betaflight-configurator/locales'})
.pipe(gulp.dest(WWW_DIR + 'i18n'));
}
function www_libraries() {
return gulp.src('betaflight-configurator/libraries/**/*', { base: 'betaflight-configurator/libraries'})
.pipe(gulp.dest(WWW_DIR + 'js/libraries'));
}
function www_resources() {
return gulp.src('betaflight-configurator/resources/**/*', { base: 'betaflight-configurator/resources'})
.pipe(gulp.dest(WWW_DIR + 'resources'));
}
function www_replace() {
return gulp.src(WWW_DIR + 'js/**')
.pipe(replace('chrome.serial', 'serialConnection'))
.pipe(replace('serial.connect', 'serialConnection.connect'))
.pipe(replace('serial.disconnect', 'serialConnection.disconnect'))
.pipe(replace('serial.send', 'serialConnection.send'))
.pipe(replace('serial.getDevices', 'serialConnection.getDevices'))
.pipe(replace('serial.bitrate', 'serialConnection.bitrate'))
.pipe(replace('serial.bytesReceived', 'serialConnection.bytesReceived'))
.pipe(replace('serial.bytesSent', 'serialConnection.bytesSent'))
.pipe(replace('serial.emptyOutputBuffer', 'serialConnection.emptyOutputBuffer'))
.pipe(replace('serial.onReceive', 'serialConnection.onReceive'))
.pipe(gulp.dest(WWW_DIR + 'js'));
}
function clean_www() {
return del([WWW_DIR + '**'], { force: true });
}