@videinfra/static-website-builder 2.0.0-beta.2 → 2.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +1 -1
- package/.prettierrc +11 -0
- package/README.md +2 -2
- package/bin/builder.js +17 -11
- package/gulpfile.js +63 -0
- package/init/default/config/config.js +18 -15
- package/init/default/src/html/data/global.js +1 -1
- package/init/default/src/javascripts/_entries.js +1 -1
- package/init/index.js +44 -37
- package/init/test/config/config.js +20 -16
- package/init/test/src/html/data/global.js +1 -1
- package/lib/camelize-file-name.js +1 -1
- package/lib/generate-gulp-tasks.js +12 -10
- package/lib/get-config.js +99 -52
- package/lib/get-file-names.js +3 -3
- package/lib/get-path.js +15 -22
- package/lib/globs-helper.js +22 -47
- package/lib/gulp/dynamic-task.js +1 -1
- package/lib/gulp/resolve-dynamic-task.js +1 -1
- package/lib/gulp/task-before-dest.js +2 -2
- package/lib/gulp/task-end.js +5 -5
- package/lib/gulp/task-start.js +3 -3
- package/lib/gulp/task-watch.js +10 -10
- package/lib/init/copy-folder.js +4 -4
- package/lib/init/folder-exists.js +2 -2
- package/lib/init/get-folder-list.js +3 -3
- package/lib/init/merge-package.js +8 -8
- package/lib/init/read-package.js +2 -2
- package/lib/log-error.js +3 -3
- package/lib/merge.js +3 -3
- package/lib/run-preprocess.js +2 -2
- package/lib/task-order.js +7 -13
- package/package.json +6 -4
- package/plugins/example/preprocess-config.js +1 -1
- package/plugins/example/task.js +13 -13
- package/plugins/example.js +8 -6
- package/plugins/sass-engine/preprocess-config.js +15 -19
- package/plugins/sass.js +5 -3
- package/plugins/twig/lodash-filters/filters.js +12 -10
- package/plugins/twig/lodash-filters.js +3 -3
- package/plugins/twig/symfony-filters/filters.js +11 -10
- package/plugins/twig/symfony-filters/preposition_nbsp.js +1 -1
- package/plugins/twig/symfony-filters.js +6 -6
- package/plugins/twig/symfony-functions/functions.js +2 -2
- package/plugins/twig/symfony-functions.js +6 -6
- package/plugins/twig-engine/preprocess-config.js +8 -8
- package/plugins/twig.js +11 -6
- package/tasks/browser-sync/config.js +9 -6
- package/tasks/browser-sync/preprocess-config.js +5 -7
- package/tasks/browser-sync/task.js +5 -5
- package/tasks/clean/config.js +8 -5
- package/tasks/clean/preprocess-config.js +5 -5
- package/tasks/clean/task.js +5 -5
- package/tasks/data/config.js +11 -13
- package/tasks/data/data-loader-js.js +11 -2
- package/tasks/data/data-loader-json.js +3 -3
- package/tasks/data/get-data.js +55 -52
- package/tasks/env/config.js +2 -2
- package/tasks/env/get-env.js +13 -13
- package/tasks/fonts/config.js +9 -10
- package/tasks/fonts/task.js +27 -27
- package/tasks/global/config.js +1 -1
- package/tasks/html/config.js +13 -15
- package/tasks/html/task.js +55 -54
- package/tasks/icons/config.js +17 -22
- package/tasks/icons/preprocess-config.js +4 -4
- package/tasks/icons/task.js +34 -35
- package/tasks/images/config.js +11 -14
- package/tasks/images/task.js +26 -26
- package/tasks/javascripts/config.js +12 -14
- package/tasks/javascripts/preprocess-config.js +30 -30
- package/tasks/javascripts/task.js +40 -43
- package/tasks/sitemap/config.js +12 -13
- package/tasks/sitemap/preprocess-config.js +2 -2
- package/tasks/sitemap/task.js +44 -38
- package/tasks/sizereport/config.js +5 -3
- package/tasks/sizereport/task.js +8 -8
- package/tasks/static/config.js +12 -15
- package/tasks/static/task.js +27 -28
- package/tasks/stylesheets/config.js +16 -19
- package/tasks/stylesheets/preprocess-config.js +5 -5
- package/tasks/stylesheets/task.js +28 -28
- package/tests/build/build.test.js +23 -22
- package/tests/camelize-file-name.test.js +1 -1
- package/tests/generate-gulp-tasks.test.js +11 -5
- package/tests/glob-helper.test.js +1 -1
- package/tests/merge.test.js +1 -1
- package/tests/preposition_nbsp.test.js +7 -6
- package/tests/run-preprocess.test.js +2 -1
- package/tests/sass-stringify.test.js +1 -1
- package/tests/sitemap.test.js +7 -6
- package/vendor/gulp-rolldown/index.js +27 -29
- package/vendor/gulp-sass/README.md +10 -19
- package/vendor/gulp-sass/index.js +129 -135
- package/vendor/gulp-sass/package.json +1 -0
- package/vendor/gulp-sass/sass-stringify.js +1 -1
- package/vendor/gulp-twig/index.js +32 -27
- package/vendor/gulp-twig/package.json +1 -0
- package/gulpfile.js/index.js +0 -32
package/.eslintrc.js
CHANGED
package/.prettierrc
ADDED
package/README.md
CHANGED
|
@@ -51,7 +51,7 @@ Note: these commands are added to the project during `npm init`.
|
|
|
51
51
|
|
|
52
52
|
### Development server
|
|
53
53
|
|
|
54
|
-
```npx run builder```
|
|
54
|
+
```npx run builder watch```
|
|
55
55
|
|
|
56
56
|
### Generate production ready files
|
|
57
57
|
|
|
@@ -80,7 +80,7 @@ Built-in plugins:
|
|
|
80
80
|
Plugins can be enabled by adding them to the `config/config.js`, eg.
|
|
81
81
|
|
|
82
82
|
```js
|
|
83
|
-
|
|
83
|
+
export const plugins = [
|
|
84
84
|
// Enables SASS engine and .sass and .scss file compilation
|
|
85
85
|
require('@videinfra/static-website-builder/plugins/sass'),
|
|
86
86
|
|
package/bin/builder.js
CHANGED
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import minimist from 'minimist';
|
|
5
|
+
import { fork } from 'child_process';
|
|
6
|
+
import { createRequire } from 'node:module';
|
|
3
7
|
|
|
4
|
-
const
|
|
8
|
+
const require = createRequire(import.meta.url);
|
|
9
|
+
const allArgs = minimist(process.argv.slice(2));
|
|
5
10
|
const additionalArgs = allArgs._;
|
|
6
11
|
|
|
7
12
|
if (additionalArgs[0] === 'init') {
|
|
8
|
-
|
|
9
|
-
|
|
13
|
+
import('../init/index').then(({ default: init }) => {
|
|
14
|
+
init(additionalArgs[1]);
|
|
15
|
+
});
|
|
10
16
|
} else {
|
|
17
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
18
|
+
|
|
11
19
|
const builderEntryDir = path.resolve(__dirname, '../gulpfile.js');
|
|
12
20
|
const gulpModulePath = path.dirname(require.resolve('gulp'));
|
|
13
21
|
const gulpBinaryFile = path.join(gulpModulePath, '/bin/gulp');
|
|
14
22
|
|
|
15
23
|
let args = ['--gulpfile', builderEntryDir];
|
|
16
24
|
|
|
17
|
-
if(additionalArgs.length) {
|
|
25
|
+
if (additionalArgs.length) {
|
|
18
26
|
args = args.concat(additionalArgs);
|
|
19
27
|
}
|
|
20
28
|
|
|
@@ -25,10 +33,8 @@ if (additionalArgs[0] === 'init') {
|
|
|
25
33
|
args = args.concat('--tasks', '');
|
|
26
34
|
}
|
|
27
35
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.
|
|
31
|
-
|
|
32
|
-
process.exit(code);
|
|
33
|
-
});
|
|
36
|
+
fork(gulpBinaryFile, args).on('exit', function (code) {
|
|
37
|
+
// Exit with error if child process exited with an error
|
|
38
|
+
process.exit(code);
|
|
39
|
+
});
|
|
34
40
|
}
|
package/gulpfile.js
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { getConfigAsync } from './lib/get-config.js';
|
|
2
|
+
import generateGulpTasks from './lib/generate-gulp-tasks.js';
|
|
3
|
+
|
|
4
|
+
// Set mode globally it can be used by tasks
|
|
5
|
+
let hasProductionArg = false;
|
|
6
|
+
|
|
7
|
+
for (let i = 0; i < process.argv.length; i++) {
|
|
8
|
+
const argValue = process.argv[i];
|
|
9
|
+
// If build task is 'build' or '...-build' then set production mode
|
|
10
|
+
if (argValue === 'build' || argValue.match(/^[a-z0-9-]+-build$/)) {
|
|
11
|
+
hasProductionArg = true;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
global.production = global.production || hasProductionArg || process.env.NODE_ENV === 'production';
|
|
16
|
+
global.development = !global.production;
|
|
17
|
+
|
|
18
|
+
// Config file
|
|
19
|
+
let builderConfigFile = process.env.BUILDER_CONFIG_FILE || 'config/config.js';
|
|
20
|
+
|
|
21
|
+
if (process.argv.indexOf('--config') !== -1) {
|
|
22
|
+
builderConfigFile = process.argv[process.argv.indexOf('--config') + 1];
|
|
23
|
+
} else {
|
|
24
|
+
for (let i = 0; i < process.argv.length; i++) {
|
|
25
|
+
if (process.argv[i].indexOf('--config=') !== -1) {
|
|
26
|
+
builderConfigFile = process.argv[i].substr(9);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// Load all config files and generate gulp tasks
|
|
32
|
+
const gulpTasks = generateGulpTasks(await getConfigAsync(builderConfigFile));
|
|
33
|
+
|
|
34
|
+
// Expose main tasks
|
|
35
|
+
export const build = gulpTasks.build;
|
|
36
|
+
export const watch = gulpTasks.watch;
|
|
37
|
+
|
|
38
|
+
// Expose separate tasks
|
|
39
|
+
export const clean = gulpTasks['clean-beforeBuild'];
|
|
40
|
+
|
|
41
|
+
export const fonts = gulpTasks['fonts-build'];
|
|
42
|
+
export const fontsWatch = gulpTasks['fonts-watch'];
|
|
43
|
+
|
|
44
|
+
export const html = gulpTasks['html-build'];
|
|
45
|
+
export const htmlWatch = gulpTasks['html-watch'];
|
|
46
|
+
|
|
47
|
+
export const icons = gulpTasks['icons-build'];
|
|
48
|
+
export const iconsWatch = gulpTasks['icons-watch'];
|
|
49
|
+
|
|
50
|
+
export const images = gulpTasks['images-build'];
|
|
51
|
+
export const imagesWatch = gulpTasks['images-watch'];
|
|
52
|
+
|
|
53
|
+
export const sitemap = gulpTasks['sitemap-afterBuild'];
|
|
54
|
+
export const sitemapWatch = gulpTasks['sitemap-watch'];
|
|
55
|
+
|
|
56
|
+
export const staticFiles = gulpTasks['staticFiles-build'];
|
|
57
|
+
export const staticFilesWatch = gulpTasks['staticFiles-watch'];
|
|
58
|
+
|
|
59
|
+
export const stylesheets = gulpTasks['stylesheets-build'];
|
|
60
|
+
export const stylesheetsWatch = gulpTasks['stylesheets-watch'];
|
|
61
|
+
|
|
62
|
+
export const javascripts = gulpTasks['javascripts-build'];
|
|
63
|
+
export const javascriptsWatch = gulpTasks['javascripts-watch'];
|
|
@@ -6,24 +6,27 @@
|
|
|
6
6
|
* in each tasks config.js file
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
exports.html = {};
|
|
12
|
-
exports.data = {};
|
|
13
|
-
exports.fonts = {};
|
|
14
|
-
exports.icons = {};
|
|
15
|
-
exports.images = {};
|
|
16
|
-
exports.javascripts = {};
|
|
17
|
-
exports.stylesheets = {};
|
|
18
|
-
exports.browserSync = {};
|
|
19
|
-
exports.sizereport = {};
|
|
9
|
+
import * as sassPlugin from '@videinfra/static-website-builder/plugins/sass';
|
|
10
|
+
import * as twigPlugin from '@videinfra/static-website-builder/plugins/twig';
|
|
20
11
|
|
|
21
|
-
|
|
12
|
+
export const clean = {};
|
|
13
|
+
export const staticFiles = {};
|
|
14
|
+
export const html = {};
|
|
15
|
+
export const data = {};
|
|
16
|
+
export const fonts = {};
|
|
17
|
+
export const icons = {};
|
|
18
|
+
export const images = {};
|
|
19
|
+
export const javascripts = {};
|
|
20
|
+
export const stylesheets = {};
|
|
21
|
+
export const browserSync = {};
|
|
22
|
+
export const sizereport = {};
|
|
23
|
+
|
|
24
|
+
export const plugins = [
|
|
22
25
|
// Enables SASS engine and .sass and .scss file compilation
|
|
23
|
-
|
|
26
|
+
sassPlugin,
|
|
24
27
|
|
|
25
28
|
// Enables TwigJS engine .twig file compilation
|
|
26
|
-
|
|
29
|
+
twigPlugin,
|
|
27
30
|
];
|
|
28
31
|
|
|
29
32
|
|
|
@@ -35,7 +38,7 @@ exports.plugins = [
|
|
|
35
38
|
* in each tasks config.js file
|
|
36
39
|
*/
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
export const paths = {
|
|
39
42
|
src: './src',
|
|
40
43
|
dest: './public',
|
|
41
44
|
};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* All files listed in here are created / compiled and additionally
|
|
3
3
|
* shared.js is automatically created, which contains all common JS (chunks / modules imported from more than 1 entry files).
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
export default {
|
|
6
6
|
'main': [
|
|
7
7
|
'./common',
|
|
8
8
|
'./main'
|
package/init/index.js
CHANGED
|
@@ -1,56 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import { getBuilderPath, getProjectPath } from '../lib/get-path.js';
|
|
2
|
+
import copyFolder from '../lib/init/copy-folder.js';
|
|
3
|
+
import readPackage from '../lib/init/read-package.js';
|
|
4
|
+
import mergePackage from '../lib/init/merge-package.js';
|
|
5
|
+
import folderExists from '../lib/init/folder-exists.js';
|
|
6
|
+
import getFolderList from '../lib/init/get-folder-list.js';
|
|
7
|
+
|
|
8
|
+
import chalk from 'chalk';
|
|
9
|
+
import { exec } from 'child_process';
|
|
10
|
+
|
|
11
|
+
export default function init(template = 'default') {
|
|
12
|
+
let templateName = template || 'default';
|
|
13
|
+
let copyFrom = getBuilderPath('init', templateName);
|
|
14
|
+
const copyTo = getProjectPath();
|
|
13
15
|
|
|
14
16
|
if (template === 'test' || !folderExists(copyFrom)) {
|
|
15
|
-
console.log(chalk.red(`Template "${
|
|
17
|
+
console.log(chalk.red(`Template "${templateName}" doesn't exist`));
|
|
16
18
|
|
|
17
|
-
getFolderList(
|
|
19
|
+
getFolderList(getBuilderPath('init')).then((templates) => {
|
|
18
20
|
console.log('Available templates:');
|
|
19
|
-
console.log(chalk.cyan(` ${
|
|
21
|
+
console.log(chalk.cyan(` ${templates.join('\n ')}`));
|
|
20
22
|
});
|
|
21
23
|
return;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
|
-
console.log(chalk.magenta(`Generating project files using template "${
|
|
26
|
+
console.log(chalk.magenta(`Generating project files using template "${templateName}"`));
|
|
25
27
|
|
|
26
28
|
// Copy files
|
|
27
29
|
const filesCopied = copyFolder(copyFrom, copyTo);
|
|
28
30
|
|
|
29
31
|
// Merge template package.json into projects package.json
|
|
30
|
-
const packageMerged = readPackage(
|
|
31
|
-
return mergePackage(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
const packageMerged = readPackage(getBuilderPath('init', templateName, 'package.json'), {}).then((packageJSON) => {
|
|
33
|
+
return mergePackage(getProjectPath('package.json'), packageJSON)
|
|
34
|
+
.then(() => {
|
|
35
|
+
if (packageJSON.dependencies || packageJSON.devDependencies) {
|
|
36
|
+
console.log(chalk.magenta('Installing npm dependencies'));
|
|
37
|
+
|
|
38
|
+
return new Promise((resolve, _reject) => {
|
|
39
|
+
exec('npm install', function (_error, _stdout, _stderr) {
|
|
40
|
+
resolve();
|
|
41
|
+
});
|
|
38
42
|
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
}
|
|
44
|
+
})
|
|
45
|
+
.catch((_err) => {
|
|
46
|
+
// Skip errors
|
|
47
|
+
return Promise.resolve();
|
|
48
|
+
});
|
|
45
49
|
});
|
|
46
50
|
|
|
47
|
-
Promise.all([filesCopied, packageMerged]).then(
|
|
48
|
-
|
|
51
|
+
Promise.all([filesCopied, packageMerged]).then(
|
|
52
|
+
() => {
|
|
53
|
+
console.log(chalk.green('All done\n'));
|
|
49
54
|
|
|
50
|
-
|
|
55
|
+
console.log('To start the dev server:\n' + chalk.cyan(' npm run start'));
|
|
51
56
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
console.log('To build the project:\n' + chalk.cyan(' npm run build'));
|
|
58
|
+
},
|
|
59
|
+
(err) => {
|
|
60
|
+
throw err;
|
|
61
|
+
},
|
|
62
|
+
);
|
|
56
63
|
}
|
|
@@ -2,14 +2,18 @@
|
|
|
2
2
|
* Build a project for testing
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
import * as sassPlugin from '../../../plugins/sass.js';
|
|
6
|
+
import * as twigPlugin from '../../../plugins/twig.js';
|
|
7
|
+
import * as symfonyFiltersPlugin from '../../../plugins/twig/symfony-filters.js';
|
|
8
|
+
|
|
9
|
+
export const clean = {};
|
|
10
|
+
export const staticFiles = {};
|
|
11
|
+
export const html = {};
|
|
12
|
+
export const data = {};
|
|
13
|
+
export const fonts = {};
|
|
14
|
+
export const icons = {};
|
|
15
|
+
export const images = {};
|
|
16
|
+
export const javascripts = {
|
|
13
17
|
entryList: [
|
|
14
18
|
{
|
|
15
19
|
name: '_entries.js',
|
|
@@ -22,21 +26,21 @@ exports.javascripts = {
|
|
|
22
26
|
},
|
|
23
27
|
],
|
|
24
28
|
};
|
|
25
|
-
|
|
26
|
-
|
|
29
|
+
export const stylesheets = {};
|
|
30
|
+
export const sizereport = false;
|
|
27
31
|
|
|
28
|
-
|
|
32
|
+
export const plugins = [
|
|
29
33
|
// Enables SASS engine and .sass and .scss file compilation
|
|
30
|
-
|
|
34
|
+
sassPlugin,
|
|
31
35
|
|
|
32
36
|
// Enables TwigJS engine .twig file compilation
|
|
33
|
-
|
|
37
|
+
twigPlugin,
|
|
34
38
|
|
|
35
39
|
// Enables TWIG Symfony filters
|
|
36
|
-
|
|
40
|
+
symfonyFiltersPlugin,
|
|
37
41
|
];
|
|
38
42
|
|
|
39
|
-
|
|
43
|
+
export const env = {
|
|
40
44
|
map: {
|
|
41
45
|
'HOST': 'host',
|
|
42
46
|
'FOO': 'foo',
|
|
@@ -56,7 +60,7 @@ exports.env = {
|
|
|
56
60
|
* in each tasks config.js file
|
|
57
61
|
*/
|
|
58
62
|
|
|
59
|
-
|
|
63
|
+
export const paths = {
|
|
60
64
|
src: './init/test/src',
|
|
61
65
|
dest: './tests/build/public',
|
|
62
66
|
env: ['./init/test/.env', './init/test/.env.local'],
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import map from 'lodash/map.js';
|
|
2
|
+
import assign from 'lodash/assign.js';
|
|
3
|
+
import filter from 'lodash/filter.js';
|
|
4
|
+
import { series, parallel } from 'gulp';
|
|
5
|
+
import { DEFAULT_TASKS, BUILD_TASKS } from './task-order.js';
|
|
6
|
+
import resolveDynamicTask from './gulp/resolve-dynamic-task.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Sort tasks by .order property
|
|
@@ -21,7 +21,7 @@ function sortTasks (tasks) {
|
|
|
21
21
|
* @param {object} taskConfig Task config
|
|
22
22
|
* @returns {object} Task list
|
|
23
23
|
*/
|
|
24
|
-
function generateTaskList (taskConfig) {
|
|
24
|
+
export function generateTaskList (taskConfig) {
|
|
25
25
|
const taskList = {
|
|
26
26
|
'default': map(DEFAULT_TASKS, (taskName) => []),
|
|
27
27
|
'build': map(BUILD_TASKS, (taskName) => []),
|
|
@@ -58,6 +58,9 @@ function generateTaskList (taskConfig) {
|
|
|
58
58
|
taskList.default = filter(taskList.default, taskGroup => taskGroup.length).sort(sortTasks);
|
|
59
59
|
taskList.build = filter(taskList.build, taskGroup => taskGroup.length).sort(sortTasks);
|
|
60
60
|
|
|
61
|
+
// Alias default to watch
|
|
62
|
+
taskList.watch = taskList.default;
|
|
63
|
+
|
|
61
64
|
return taskList;
|
|
62
65
|
}
|
|
63
66
|
|
|
@@ -67,7 +70,7 @@ function generateTaskList (taskConfig) {
|
|
|
67
70
|
* @param {object} taskConfig Task config
|
|
68
71
|
* @returns {object} Gulp task list
|
|
69
72
|
*/
|
|
70
|
-
|
|
73
|
+
export default function generateGulpTasks (taskConfig) {
|
|
71
74
|
const taskList = generateTaskList(taskConfig);
|
|
72
75
|
|
|
73
76
|
// Create gulp tasks with parallel and series
|
|
@@ -76,8 +79,7 @@ module.exports = function generateGulpTasks (taskConfig) {
|
|
|
76
79
|
|
|
77
80
|
return assign({
|
|
78
81
|
'default': series(...defaultGulpTasks),
|
|
82
|
+
'watch': series(...defaultGulpTasks), // watch and default are aliases
|
|
79
83
|
'build': series(...buildGulpTasks),
|
|
80
84
|
}, taskList.separate);
|
|
81
85
|
}
|
|
82
|
-
|
|
83
|
-
module.exports.generateTaskList = generateTaskList;
|