Skip to content

Commit d70c92f

Browse files
committed
Add type definitions for gulp-html-replace
1 parent 7b3d5a6 commit d70c92f

File tree

2 files changed

+109
-0
lines changed

2 files changed

+109
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
/// <reference path="gulp-html-replace.d.ts" />
2+
/// <reference path="../gulp/gulp.d.ts" />
3+
/// <reference path="../node/node.d.ts" />
4+
5+
import * as gulp from 'gulp';
6+
import * as htmlreplace from 'gulp-html-replace';
7+
8+
// Examples taken from README.md of the gulp-html-replace project:
9+
// https://www.npmjs.com/package/gulp-html-replace
10+
11+
// Simple examples
12+
gulp.task('simple1', () => {
13+
gulp.src('src')
14+
.pipe(htmlreplace({ js: 'js/main.js' }))
15+
.pipe(gulp.dest('dest'));
16+
});
17+
18+
gulp.task('simple2', () => {
19+
gulp.src('src')
20+
.pipe(htmlreplace({ js: ['js/monster.js', 'js/hero.js'] }))
21+
.pipe(gulp.dest('dest'));
22+
});
23+
24+
// Advanced examples
25+
gulp.task('advanced1', () => {
26+
gulp.src('src')
27+
.pipe(htmlreplace({
28+
js: 'js/main.js',
29+
tpl: '<img src="%s" align="left" />'
30+
}))
31+
.pipe(gulp.dest('dest'));
32+
});
33+
34+
gulp.task('advanced2', () => {
35+
gulp.src('src')
36+
.pipe(htmlreplace({
37+
js: ['data-main.js', 'require-src.js'],
38+
tpl: '<img src="%s" align="left" />'
39+
}))
40+
.pipe(gulp.dest('dest'));
41+
});
42+
43+
// Extended replacements
44+
gulp.task('ext1', () => {
45+
gulp.src('src')
46+
.pipe(htmlreplace({
47+
js: {
48+
src: null,
49+
tpl: '<script src="%f".js></script>'
50+
}
51+
}))
52+
.pipe(gulp.dest('dest'));
53+
});
54+
55+
gulp.task('ext2', () => {
56+
gulp.src('src')
57+
.pipe(htmlreplace({
58+
js: {
59+
src: 'dir',
60+
tpl: '<script src="%f".js></script>'
61+
}
62+
}))
63+
.pipe(gulp.dest('dest'));
64+
});
65+
66+
// Options example
67+
gulp.task('options1', () => {
68+
gulp.src('src')
69+
.pipe(htmlreplace({
70+
js: {
71+
src: null,
72+
tpl: '<script src="%f".js></script>'
73+
}
74+
}, {
75+
keepUnassigned: false,
76+
keepBlockTags: false,
77+
resolvePaths: false
78+
}))
79+
.pipe(gulp.dest('dest'));
80+
});
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
// Type definitions for gulp-html-replace v1.5.5
2+
// Project: https://www.npmjs.com/package/gulp-html-replace
3+
// Definitions by: Peter Juras <https://github.com/peterjuras>
4+
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
5+
/// <reference path="../node/node.d.ts" />
6+
7+
declare module "gulp-html-replace" {
8+
interface AdvancedTask {
9+
src: string | string[];
10+
tpl: string;
11+
}
12+
13+
interface Tasks {
14+
[taskId: string] : string | string[] | AdvancedTask;
15+
}
16+
17+
interface Options {
18+
keepUnassigned?: boolean;
19+
keepBlockTags?: boolean;
20+
resolvePaths?: boolean;
21+
}
22+
23+
interface HtmlReplace {
24+
(tasks: Tasks, options?: Options) : NodeJS.ReadWriteStream;
25+
}
26+
27+
const htmlReplace : HtmlReplace;
28+
export = htmlReplace;
29+
}

0 commit comments

Comments
 (0)