From f18bc660c560e40de2d21ebb56c584e4dd614cb0 Mon Sep 17 00:00:00 2001 From: Torgeir Helgevold Date: Sat, 15 Oct 2016 14:36:35 -0400 Subject: [PATCH] chore: publish esm + umd s s --- gulpfile.js | 15 ++++++++++++--- package.json | 10 +++++++--- rollup.config.js | 12 ++++++++++++ tsconfig.json | 2 +- 4 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 rollup.config.js diff --git a/gulpfile.js b/gulpfile.js index 9d10daa..37e1d00 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -3,6 +3,8 @@ var $ = require('gulp-load-plugins')({lazy: true}); var args = require('yargs').argv; var cp = require('child_process'); var del = require('del'); +var rollup = require('rollup-stream'); +var source = require('vinyl-source-stream'); var path = require("path"); @@ -19,18 +21,25 @@ gulp.task('help', $.taskListing.withFilters(function (taskName) { return shouldRemove; })); -gulp.task('build', ['ngc'], function(){ +gulp.task('build', ['umd'], function(){ return gulp .src(jsCopySrc) .pipe(gulp.dest('./')); }); -gulp.task('ngc',['clean'], function(done) { +gulp.task('ngc', ['clean'], function(done) { runNgc('./', done); }); +// Uses rollup-stream plugin https://www.npmjs.com/package/rollup-stream +gulp.task('umd', ['ngc'], function(done) { + return rollup('rollup.config.js') + .pipe(source('in-memory-web-api.umd.js')) + .pipe(gulp.dest('./bundles')); +}); + gulp.task('clean', function(done) { - clean([ngcOutput+'*.js', '*.js.map', '*.d.ts', '!gulpfile.js', '*.metadata.json'], done); + clean([ngcOutput+'*.js', '*.js.map', '*.d.ts', '!gulpfile.js', '*.metadata.json', './bundles/in-memory-web-api.umd.js'], done); }); /** diff --git a/package.json b/package.json index 4f2c49e..257c3da 100644 --- a/package.json +++ b/package.json @@ -2,8 +2,8 @@ "name": "angular-in-memory-web-api", "version": "0.1.7", "description": "An in-memory web api for Angular demos and tests", - "main":"index.js", - "jsnext:main": "esm/index.js", + "main":"bundles/in-memory-web-api.umd.js", + "module": "index.js", "scripts": { "tsc": "tsc", "tsc:w": "tsc -w", @@ -78,6 +78,10 @@ "gulp-task-listing": "^1.0.1", "gulp-util": "^3.0.7", - "yargs": "^5.0.0" + "yargs": "^5.0.0", + + "vinyl-source-stream": "^1.1.0", + "rollup": "^0.36.0", + "rollup-stream": "^1.14.0" } } diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 0000000..bdf6d7d --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,12 @@ +export default { + entry: './src/index.js', + dest: './bundles/in-memory-web-api.umd.js', + format: 'umd', + moduleName: 'ng.inMemoryWebApi', + globals: { + '@angular/core': 'ng.core', + '@angular/http': 'ng.http', + 'rxjs/Observable': 'Rx', + 'rxjs/add/operator/delay': 'Rx' + } +} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 1c73c1a..e75cf9b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { "target": "es5", - "module": "commonjs", + "module": "es2015", "moduleResolution": "node", "sourceMap": true, "sourceRoot": "./src",