1 | var gulp = require('gulp');
|
2 | var bump = require('gulp-bump');
|
3 | var path = require('path');
|
4 | var ignore = require('gulp-ignore');
|
5 | var runSequence = require('run-sequence');
|
6 | var del = require('del');
|
7 | var fs = require('fs'),
|
8 | publish = require('gulp-publish'),
|
9 | typescript = require('gulp-typescript'),
|
10 | tslint = require('gulp-tslint'),
|
11 |
|
12 | Config = require('./gulpfile.config');
|
13 |
|
14 |
|
15 |
|
16 | var config = new Config();
|
17 |
|
18 |
|
19 |
|
20 |
|
21 | gulp.task('npm', function (done) {
|
22 | var run = require('gulp-run');
|
23 | return run('npm publish').exec().pipe(gulp.dest('output'));
|
24 | });
|
25 |
|
26 |
|
27 |
|
28 | gulp.task('bump', function () {
|
29 | gulp.src('./package.json')
|
30 | .pipe(bump())
|
31 | .pipe(gulp.dest('./'));
|
32 | });
|
33 |
|
34 |
|
35 |
|
36 |
|
37 |
|
38 |
|
39 |
|
40 |
|
41 |
|
42 | gulp.task('ts-lint', function () {
|
43 | return gulp.src(config.allTypeScript).pipe(tslint({
|
44 | formatter: "prose"
|
45 | }))
|
46 | .pipe(tslint.report({
|
47 | emitError: false
|
48 | }));
|
49 |
|
50 | });
|
51 |
|
52 |
|
53 |
|
54 |
|
55 | gulp.task('compile', function () {
|
56 | var tsProject = typescript.createProject('tsconfig.json');
|
57 | var tsResult = tsProject.src().pipe(typescript(tsResult));
|
58 | return tsResult.js.pipe(gulp.dest('./'));
|
59 | });
|
60 |
|
61 |
|
62 |
|
63 |
|
64 | gulp.task('clean-ts', function (cb) {
|
65 | var typeScriptGenFiles = [
|
66 | config.tsOutputPath + '/**/*.js',
|
67 | config.tsOutputPath + '/**/*.js.map',
|
68 | '!' + config.tsOutputPath + '/lib'
|
69 | ];
|
70 |
|
71 |
|
72 | del(typeScriptGenFiles, cb);
|
73 | });
|
74 |
|
75 |
|
76 |
|
77 |
|
78 | gulp.task('publish', function () {
|
79 | runSequence('ts-lint', 'compile','bump', 'npm');
|
80 | });
|
81 |
|
82 |
|
83 |
|
84 |
|
85 |
|
86 |
|
87 |
|
88 |
|
89 | gulp.task('default', ['compile']);
|