index.js   A
last analyzed

Complexity

Total Complexity 5
Complexity/F 1.25

Size

Lines of Code 36
Function Count 4

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
wmc 5
eloc 24
mnd 1
bc 1
fnc 4
dl 0
loc 36
rs 10
bpm 0.25
cpm 1.25
noi 0
c 0
b 0
f 0
1
const gulpUtils = require("./gulp/gulp-utils.js");
2
const utils = require("./gulp/utils.js");
3
const yargs = require("yargs");
4
const fs = require("fs");
5
const { series, parallel } = require("gulp");
6
7
const allExtensionTypes = ["components", "libraries", "modules", "plugins"];
8
const extensionTypes = [];
9
10
allExtensionTypes.forEach(function (type) {
11
    if (fs.existsSync("./extensions/" + type)) {
12
        require("./gulp/" + type + ".js");
13
        extensionTypes.push(type);
14
    }
15
});
16
17
const mainTasks = gulpUtils.getBaseTasks();
18
19
// Configuration read task.  Stores it in gulpUtils.config variable
20
const config = function (done) {
21
    gulpUtils.setConfigurationFromData(utils.readJSON("gulp-config.json"));
22
    gulpUtils.setConfigurationFromData(yargs.argv);
23
    done();
24
};
25
26
extensionTypes.forEach(function (type) {
27
    Object.keys(mainTasks).forEach((task) => {
28
        mainTasks[task].push(task + ":" + type);
29
    });
30
});
31
32
exports.release = series(config, parallel(mainTasks.release));
33
exports.clean = series(config, parallel(mainTasks.clean));
34
exports.copy = series(config, parallel(mainTasks.copy));
35
exports.watch = series(config, parallel(mainTasks.watch));
36
exports.default = parallel(exports[gulpUtils.config.defaultTasks]);
37