Skip to content

Commit e190a80

Browse files
authored
Merge pull request microsoft#3 from cliffkoh/master
Add --vscode support for debugging through vscode during gulp serve
2 parents cb9dbd7 + 0ba16e7 commit e190a80

3 files changed

Lines changed: 34 additions & 2 deletions

File tree

‎package.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "web-library-build",
3-
"version": "0.1.3",
3+
"version": "0.2.3",
44
"description": "",
55
"main": "lib/index.js",
66
"typings": "lib/index.d.ts",
@@ -12,6 +12,7 @@
1212
"gulp-core-build-serve": "~0.2.2",
1313
"gulp-core-build-typescript": "~0.4.1",
1414
"gulp-core-build-webpack": "~0.2.1",
15+
"gulp-replace": "^0.5.4",
1516
"node-notifier": "^4.5.0"
1617
},
1718
"devDependencies": {

‎src/PostProcessSourceMaps.ts‎

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { GulpTask } from 'gulp-core-build';
2+
import gulpType = require('gulp');
3+
4+
export class PostProcessSourceMaps extends GulpTask<{}> {
5+
public name: string = 'post-process';
6+
7+
public executeTask(gulp: gulpType.Gulp): NodeJS.ReadWriteStream {
8+
if (this.buildConfig.args.hasOwnProperty('vscode')) {
9+
10+
/* tslint:disable:typedef */
11+
const replace = require('gulp-replace');
12+
/* tslint:enable:typedef */
13+
14+
return gulp.src(['dist/*!(.min).js.map'])
15+
.pipe(replace('webpack:///./', ''))
16+
.pipe(replace('webpack:////source/', ''))
17+
.pipe(replace('webpack:////src/', ''))
18+
.pipe(replace('webpack:///../~/', '../node_modules/'))
19+
.pipe(replace('"sourceRoot":""', '"sourceRoot":"/"'))
20+
.pipe(gulp.dest('dist/'));
21+
22+
} else {
23+
return;
24+
}
25+
}
26+
}

‎src/index.ts‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { sass } from 'gulp-core-build-sass';
44
import { karma } from 'gulp-core-build-karma';
55
import { webpack } from 'gulp-core-build-webpack';
66
import { serve, reload } from 'gulp-core-build-serve';
7+
import { PostProcessSourceMaps } from './PostProcessSourceMaps';
78

89
export * from 'gulp-core-build';
910
export * from 'gulp-core-build-typescript';
@@ -26,6 +27,7 @@ const sourceMatch = [
2627
// Define default task groups.
2728
let buildTasks = task('build', serial(preCopy, sass, parallel(tslint, typescript, text), postCopy));
2829
let bundleTasks = task('bundle', serial(buildTasks, webpack));
30+
const postProcessSourceMaps = new PostProcessSourceMaps();
2931

3032
task('test', serial(sass, parallel(typescript, text), karma));
3133

@@ -36,7 +38,10 @@ task('serve',
3638
serial(
3739
bundleTasks,
3840
serve,
39-
watch(sourceMatch, serial(preCopy, sass, parallel(typescript, text), postCopy, webpack, reload)
41+
postProcessSourceMaps,
42+
watch(
43+
sourceMatch, serial(preCopy, sass, parallel(typescript, text),
44+
postCopy, webpack, postProcessSourceMaps, reload)
4045
)
4146
)
4247
);

0 commit comments

Comments
 (0)