-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpFile.js
46 lines (39 loc) · 1.41 KB
/
gulpFile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/// <binding Clean='clean' ProjectOpened='watch-ts' />
var os = require('os');
var Path = require('path');
var gulp = require("gulp"),
ts = require("gulp-typescript"),
merge = require('merge2'),
fse = require('fs-extra'),
insert = require('gulp-insert'),
sourcemaps = require('gulp-sourcemaps'),
concat = require("gulp-concat");
var rootDir = "file://" + __dirname;
process.on('uncaughtException', console.error.bind(console));
gulp.task('default', [ 'clean', 'compile-ts' ]);
// https://www.npmjs.com/package/gulp-typescript
gulp.task("compile-ts", function ()
{
var tsProject = ts.createProject(
'./tsconfig.json',
{
sortOutput: true,
typescript: require('typescript') // must a project package dependency
});
var tsResult =
gulp.src(['src/**/*.ts', 'typings/tsd.d.ts'], { base: 'src/' })
.pipe(sourcemaps.init())
// .pipe(insert.prepend('"use strict";'))
.pipe(ts(tsProject));
return merge([
tsResult.dts
// .pipe(concat('index.d.ts'))
.pipe(gulp.dest('dist')),
tsResult.js
// .pipe(concat('index.js'))
.pipe(sourcemaps.write('.', {includeContent:false, sourceRoot: rootDir + "/src"}))
.pipe(gulp.dest('dist'))
]
);
});
gulp.task('clean', function(done) { fse.remove('dist', done);});