59 lines
1.6 KiB
JavaScript
59 lines
1.6 KiB
JavaScript
|
'use strict';
|
||
|
|
||
|
// check if gulp dist was called
|
||
|
if (process.argv.indexOf('dist') !== -1) {
|
||
|
// add ship options to command call
|
||
|
process.argv.push('--ship');
|
||
|
}
|
||
|
|
||
|
const path = require('path');
|
||
|
const gulp = require('gulp');
|
||
|
const build = require('@microsoft/sp-build-web');
|
||
|
const gulpSequence = require('gulp-sequence');
|
||
|
|
||
|
build.addSuppression(`Warning - [sass] The local CSS class 'ms-Grid' is not camelCase and will not be type-safe.`);
|
||
|
|
||
|
// Create clean distrubution package
|
||
|
gulp.task('dist', gulpSequence('clean', 'bundle', 'package-solution'));
|
||
|
// Create clean development package
|
||
|
gulp.task('dev', gulpSequence('clean', 'bundle', 'package-solution'));
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Custom Framework Specific gulp tasks
|
||
|
*/
|
||
|
|
||
|
|
||
|
const argv = build.rig.getYargs().argv;
|
||
|
const useCustomServe = argv['custom-serve'];
|
||
|
const fs = require("fs");
|
||
|
const workbenchApi = require("@microsoft/sp-webpart-workbench/lib/api");
|
||
|
|
||
|
if (useCustomServe) {
|
||
|
build.tslintCmd.enabled = false;
|
||
|
|
||
|
const ensureWorkbenchSubtask = build.subTask('ensure-workbench-task', function (gulp, buildOptions, done) {
|
||
|
this.log('Creating workbench.html file...');
|
||
|
try {
|
||
|
workbenchApi.default["/workbench"]();
|
||
|
} catch (e) { }
|
||
|
|
||
|
done();
|
||
|
});
|
||
|
|
||
|
build.rig.addPostBuildTask(build.task('ensure-workbench', ensureWorkbenchSubtask));
|
||
|
|
||
|
build.configureWebpack.mergeConfig({
|
||
|
additionalConfiguration: (generatedConfiguration) => {
|
||
|
fs.writeFileSync("./temp/_webpack_config.json", JSON.stringify(generatedConfiguration, null, 2));
|
||
|
return generatedConfiguration;
|
||
|
}
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
build.initialize(require('gulp'));
|
||
|
|