2018-12-14 20:27:57 +03:00
|
|
|
(function () {
|
|
|
|
'use strict';
|
|
|
|
var gulp = require("gulp");
|
|
|
|
var ts = require('gulp-typescript');
|
|
|
|
var sourcemaps = require('gulp-sourcemaps');
|
|
|
|
var tslint = require("gulp-tslint");
|
|
|
|
var uglify = require('gulp-uglify');
|
|
|
|
var rename = require('gulp-rename');
|
|
|
|
var pump = require('pump');
|
|
|
|
var webpack = require('webpack-stream');
|
2019-02-12 23:19:56 +03:00
|
|
|
var dtsBundleWebpack = require('dts-bundle-webpack');
|
2019-03-15 04:00:11 +03:00
|
|
|
|
2019-04-05 17:32:05 +03:00
|
|
|
gulp.task("build", function build() {
|
|
|
|
return gulp.src([
|
|
|
|
"src/**/*.ts",
|
|
|
|
"microsoft.cognitiveservices.speech.sdk.ts"],
|
|
|
|
{ base: '.' })
|
|
|
|
.pipe(tslint({
|
2018-12-14 20:27:57 +03:00
|
|
|
formatter: "prose",
|
2019-04-05 17:32:05 +03:00
|
|
|
configuration: "tslint.json"
|
2018-12-14 20:27:57 +03:00
|
|
|
}))
|
|
|
|
.pipe(tslint.report({
|
2019-04-05 17:32:05 +03:00
|
|
|
summarizeFailureOutput: true
|
2018-12-14 20:27:57 +03:00
|
|
|
}))
|
|
|
|
.pipe(sourcemaps.init())
|
|
|
|
.pipe(ts({
|
2019-04-05 17:32:05 +03:00
|
|
|
target: "ES5",
|
|
|
|
declaration: true,
|
|
|
|
noImplicitAny: true,
|
|
|
|
removeComments: false,
|
|
|
|
outDir: 'distrib/lib'
|
2018-12-14 20:27:57 +03:00
|
|
|
}))
|
|
|
|
.pipe(sourcemaps.write('.'))
|
|
|
|
.pipe(gulp.dest('distrib/lib'));
|
|
|
|
});
|
|
|
|
|
2019-04-05 17:32:05 +03:00
|
|
|
gulp.task("bundle", gulp.series("build", function bundle() {
|
|
|
|
return gulp.src('bundleApp.js')
|
|
|
|
.pipe(webpack({
|
|
|
|
output: { filename: 'microsoft.cognitiveservices.speech.sdk.bundle.js' },
|
|
|
|
devtool: 'source-map',
|
|
|
|
module: {
|
|
|
|
rules: [{
|
|
|
|
enforce: 'pre',
|
|
|
|
test: /\.js$/,
|
|
|
|
loader: "source-map-loader"
|
|
|
|
}],
|
|
|
|
},
|
|
|
|
plugins: [
|
|
|
|
new dtsBundleWebpack({
|
|
|
|
name: 'microsoft.cognitiveservices.speech.sdk.bundle',
|
|
|
|
main: 'distrib/lib/microsoft.cognitiveservices.speech.sdk.d.ts',
|
|
|
|
out: '~/distrib/browser/microsoft.cognitiveservices.speech.sdk.bundle.d.ts',
|
|
|
|
outputAsModuleFolder: true,
|
|
|
|
})
|
|
|
|
]
|
|
|
|
}))
|
|
|
|
.pipe(gulp.dest('distrib/browser'));
|
2019-03-28 06:35:25 +03:00
|
|
|
}, function () {
|
2019-04-05 17:32:05 +03:00
|
|
|
return gulp.src('./src/audioworklet/speech-processor.js')
|
|
|
|
.pipe(gulp.dest('./distrib/browser'));
|
|
|
|
}));
|
2018-12-14 20:27:57 +03:00
|
|
|
|
2019-04-05 17:32:05 +03:00
|
|
|
gulp.task('compress', gulp.series("bundle", function (cb) {
|
2018-12-14 20:27:57 +03:00
|
|
|
return pump([
|
|
|
|
gulp.src('distrib/browser/microsoft.cognitiveservices.speech.sdk.bundle.js'),
|
2019-04-05 17:32:05 +03:00
|
|
|
rename(function (path) { path.basename = "microsoft.cognitiveservices.speech.sdk.bundle-min"; }),
|
2018-12-14 20:27:57 +03:00
|
|
|
uglify(),
|
|
|
|
gulp.dest('distrib/browser')
|
|
|
|
],
|
2019-04-05 17:32:05 +03:00
|
|
|
cb
|
2018-12-14 20:27:57 +03:00
|
|
|
);
|
2019-04-05 17:32:05 +03:00
|
|
|
}));
|
2018-12-14 20:27:57 +03:00
|
|
|
}());
|