From 8b5b4b1e1a1234af63f4e23f708603f89b98792a Mon Sep 17 00:00:00 2001
From: Peter Juras
Date: Mon, 25 Jan 2016 19:37:48 +0100
Subject: [PATCH] Add type definitions for gulp-jspm
---
gulp-jspm/gulp-jspm-tests.ts | 33 +++++++++++++++++++++++++++++++++
gulp-jspm/gulp-jspm.d.ts | 22 ++++++++++++++++++++++
2 files changed, 55 insertions(+)
create mode 100644 gulp-jspm/gulp-jspm-tests.ts
create mode 100644 gulp-jspm/gulp-jspm.d.ts
diff --git a/gulp-jspm/gulp-jspm-tests.ts b/gulp-jspm/gulp-jspm-tests.ts
new file mode 100644
index 000000000..3b5c0f3a2
--- /dev/null
+++ b/gulp-jspm/gulp-jspm-tests.ts
@@ -0,0 +1,33 @@
+///
+///
+
+import * as gulp from 'gulp';
+import * as gulpJspm from 'gulp-jspm';
+
+// Examples taken from https://www.npmjs.com/package/gulp-jspm
+gulp.task('default', function(){
+ return gulp.src('src/main.js')
+ .pipe(gulpJspm())
+ .pipe(gulp.dest('build/'));
+});
+
+// Options
+gulp.src('src/main.js')
+ .pipe(gulpJspm({arithmetic: '- message'})) // exclude message.js from bundle
+ .pipe(gulp.dest('build/'));
+
+gulp.src('src/main.js')
+ .pipe(gulpJspm({selfExecutingBundle: true})) // `jspm bundle-sfx main`
+ .pipe(gulp.dest('build/'));
+
+gulp.src('src/main.jsx')
+ .pipe(gulpJspm({plugin: true})) // `jspm bundle main.jsx!`
+ .pipe(gulp.dest('build/'));
+gulp.src('src/main.jsx')
+ .pipe(gulpJspm({plugin: 'jsx'})) // `jspm bundle main.jsx!jsx`
+ .pipe(gulp.dest('build/'));
+
+// all other options given to gulp-jspm are passed on to jspm, e.g.
+gulp.src('src/main.js')
+ .pipe(gulpJspm({inject: true})) // `jspm bundle main --inject`
+ .pipe(gulp.dest('build/'));
diff --git a/gulp-jspm/gulp-jspm.d.ts b/gulp-jspm/gulp-jspm.d.ts
new file mode 100644
index 000000000..632e31741
--- /dev/null
+++ b/gulp-jspm/gulp-jspm.d.ts
@@ -0,0 +1,22 @@
+// Type definitions for gulp-jspm v0.5.4
+// Project: https://www.npmjs.com/package/gulp-jspm
+// Definitions by: Peter Juras
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+///
+
+declare module "gulp-jspm" {
+ interface Options {
+ arithmetic?: string;
+ selfExecutingBundle?: boolean;
+ plugin?: boolean | string;
+ inject?: boolean;
+ minify?: boolean;
+ }
+
+ interface GulpJspm {
+ (options?: Options) : NodeJS.ReadWriteStream;
+ }
+
+ const gulpJspm : GulpJspm;
+ export = gulpJspm;
+}