UNPKG

maths.ts

Version:

Math utilities library for TypeScript, JavaScript and Node.js

47 lines (41 loc) 1.31 kB
let gulp = require('gulp'); let ts = require('gulp-typescript'); let tsLint = require('gulp-tslint'); let webpack = require('gulp-webpack'); let compress = require('gulp-minify'); let runSeq = require('run-sequence'); gulp.task('default', () => runSeq('ts', 'webpack', 'compress')); gulp.task('ts', function () { let tsProject = ts.createProject('tsconfig.json', { // Changes root dir so a new src folder will not be created on ./lib rootDir: 'src' }); let tsResult = tsProject.src().pipe(tsProject()); // Declaration files tsResult.dts.pipe(gulp.dest('types')); return tsResult.js.pipe(gulp.dest('lib')); }); gulp.task('lint', function () { // noinspection JSUnresolvedFunction gulp.src(['src/**/*.ts', 'test/**/*.ts']) .pipe(tsLint()) .pipe(tsLint.report()); }); gulp.task('watch', ['ts'], function () { gulp.watch('src/**/*.ts', ['ts']); }); gulp.task('webpack', function () { return gulp.src('lib/maths.js') .pipe(webpack(require('./webpack.config'))) .pipe(gulp.dest('.')); }); gulp.task('compress', function () { gulp.src('bundle/maths.js') .pipe(compress({ ext: { src: '.min.js', min: '.js' } })) .pipe(gulp.dest('bundle')); });