Files
Josh Goldberg 96907e9591 Added --all option
This removes the need for manual *InAll commands. Unfortunately it's rather inelegant without TS 2.3's support for `for await (...)`. Sending a branch+PR until it's released in May.

Fixes #11.
2017-04-24 22:06:26 -07:00

50 lines
1.1 KiB
JavaScript

var gulp = require("gulp");
gulp.task("clean", function () {
var del = require("del");
return del("lib/**/*");
});
gulp.task("tslint", function () {
var tslint = require("gulp-tslint");
return gulp.src(["src/**/*.ts", "!src/**/*.d.ts"])
.pipe(tslint({
formatter: "verbose"
}))
.pipe(tslint.report());
});
gulp.task("tsc", function () {
var merge = require("merge2");
var sourcemaps = require("gulp-sourcemaps");
var gulpTypeScript = require("gulp-typescript");
var project = gulpTypeScript.createProject("tsconfig.json");
var output = project
.src()
.pipe(sourcemaps.init())
.pipe(project());
return merge([
output.dts.pipe(gulp.dest("lib")),
output.js
.pipe(sourcemaps.write())
.pipe(gulp.dest("lib"))
]);
});
gulp.task("watch", ["tsc"], function () {
return gulp.watch(["src/**/*.ts"], ["tsc"]);
});
gulp.task("default", function (callback) {
var runSequence = require("run-sequence").use(gulp);
runSequence(
["clean", "tslint"],
["tsc"],
callback);
});