mirror of
https://gitlab.silvrtree.co.uk/martind2000/ft-webplatform.git
synced 2025-02-11 16:09:15 +00:00
102 lines
2.3 KiB
JavaScript
102 lines
2.3 KiB
JavaScript
|
import gulp from 'gulp';
|
||
|
import transpile from './transpile';
|
||
|
import processMarkup from './process-markup';
|
||
|
import processAssets from './process-assets';
|
||
|
import lintJS from './lint-js';
|
||
|
import {build, CLIOptions} from 'aurelia-cli';
|
||
|
import project from '../aurelia.json';
|
||
|
import processDocs from './process-docs';
|
||
|
import livesiteJS from './livesite-js';
|
||
|
import cleanAssets from './clean';
|
||
|
import copyJsFilesToPL from './copy-js';
|
||
|
import copyDataToPL from './copy-data';
|
||
|
import concatWpJs from './concat-wp';
|
||
|
|
||
|
export function buildJs(done) {
|
||
|
// TODO : review if --dev still required, since au run --watch now works as expected
|
||
|
if (CLIOptions.hasFlag('dev')) {
|
||
|
return gulp.series(
|
||
|
readProjectConfiguration,
|
||
|
gulp.parallel(
|
||
|
transpile,
|
||
|
livesiteJS,
|
||
|
processMarkup
|
||
|
),
|
||
|
writeBundles,
|
||
|
concatWpJs,
|
||
|
copyJsFilesToPL
|
||
|
)(done);
|
||
|
}
|
||
|
return gulp.series(
|
||
|
readProjectConfiguration,
|
||
|
gulp.parallel(
|
||
|
lintJS,
|
||
|
transpile,
|
||
|
livesiteJS,
|
||
|
processMarkup,
|
||
|
processAssets
|
||
|
),
|
||
|
writeBundles,
|
||
|
concatWpJs,
|
||
|
copyJsFilesToPL
|
||
|
)(done);
|
||
|
}
|
||
|
|
||
|
export function buildDocs(done) {
|
||
|
return gulp.series(
|
||
|
readProjectConfiguration,
|
||
|
processDocs
|
||
|
)(done);
|
||
|
}
|
||
|
|
||
|
export function buildAll(done) {
|
||
|
// TODO : review if --dev still required, since au run --watch now works as expected
|
||
|
if (CLIOptions.hasFlag('js') || CLIOptions.hasFlag('dev')) {
|
||
|
return buildJs(done);
|
||
|
} else if (CLIOptions.hasFlag('docs')) {
|
||
|
return gulp.series(
|
||
|
readProjectConfiguration,
|
||
|
gulp.parallel(
|
||
|
processDocs,
|
||
|
transpile,
|
||
|
processMarkup,
|
||
|
processAssets
|
||
|
),
|
||
|
writeBundles
|
||
|
)(done);
|
||
|
} else if (CLIOptions.hasFlag('data')) {
|
||
|
return gulp.series(
|
||
|
readProjectConfiguration,
|
||
|
copyDataToPL
|
||
|
)(done);
|
||
|
}
|
||
|
return gulp.series(
|
||
|
cleanAssets,
|
||
|
readProjectConfiguration,
|
||
|
gulp.parallel(
|
||
|
processDocs,
|
||
|
lintJS,
|
||
|
transpile,
|
||
|
livesiteJS,
|
||
|
processMarkup,
|
||
|
processAssets
|
||
|
),
|
||
|
writeBundles,
|
||
|
concatWpJs,
|
||
|
copyJsFilesToPL,
|
||
|
copyDataToPL
|
||
|
)(done);
|
||
|
}
|
||
|
|
||
|
export default function buildDefault(done) {
|
||
|
return buildAll(done);
|
||
|
}
|
||
|
|
||
|
function readProjectConfiguration() {
|
||
|
return build.src(project);
|
||
|
}
|
||
|
|
||
|
function writeBundles() {
|
||
|
return build.dest();
|
||
|
}
|