From 3cd7355872273189de5abd41f578ea24f522caa7 Mon Sep 17 00:00:00 2001 From: Phil Kunz Date: Sun, 30 Apr 2017 00:25:31 +0200 Subject: [PATCH] noe reading correctly --- dist/index.d.ts | 1 + dist/index.js | 7 + dist/smartgulp.classes.gulpstream.d.ts | 10 ++ dist/smartgulp.classes.gulpstream.js | 43 +++++ dist/smartgulp.gulpapi.d.ts | 4 + dist/smartgulp.gulpapi.js | 31 ++++ dist/smartgulp.plugins.d.ts | 5 + dist/smartgulp.plugins.js | 11 ++ package.json | 8 +- test/test.ts | 21 +++ test/testfiles/test01.md | 1 + test/testfiles/test02.md | 1 + test/testfiles/test03.md | 1 + test/testfiles/test04.md | 1 + test/testfiles/test05.md | 1 + test/testfiles/test06.md | 1 + test/testfiles/test07.md | 1 + test/testfiles/test08.md | 1 + test/testfiles/test09.md | 1 + test/testfiles/test10.md | 1 + test/testfiles/test11.md | 1 + test/testfiles/test12.md | 1 + test/testfiles/test13.md | 1 + test/testfiles/test14.md | 1 + test/testfiles/test15.md | 1 + test/testfiles/test16.md | 1 + test/testfiles/test17.md | 1 + test/testfiles/test18.md | 1 + ts/index.ts | 10 +- ts/smartgulp.classes.gulpstream.ts | 30 ++++ ts/smartgulp.gulpapi.ts | 26 +++ ts/smartgulp.plugins.ts | 8 +- yarn.lock | 230 ++++++++++++++++++++++++- 33 files changed, 445 insertions(+), 18 deletions(-) create mode 100644 dist/index.d.ts create mode 100644 dist/index.js create mode 100644 dist/smartgulp.classes.gulpstream.d.ts create mode 100644 dist/smartgulp.classes.gulpstream.js create mode 100644 dist/smartgulp.gulpapi.d.ts create mode 100644 dist/smartgulp.gulpapi.js create mode 100644 dist/smartgulp.plugins.d.ts create mode 100644 dist/smartgulp.plugins.js create mode 100644 test/testfiles/test01.md create mode 100644 test/testfiles/test02.md create mode 100644 test/testfiles/test03.md create mode 100644 test/testfiles/test04.md create mode 100644 test/testfiles/test05.md create mode 100644 test/testfiles/test06.md create mode 100644 test/testfiles/test07.md create mode 100644 test/testfiles/test08.md create mode 100644 test/testfiles/test09.md create mode 100644 test/testfiles/test10.md create mode 100644 test/testfiles/test11.md create mode 100644 test/testfiles/test12.md create mode 100644 test/testfiles/test13.md create mode 100644 test/testfiles/test14.md create mode 100644 test/testfiles/test15.md create mode 100644 test/testfiles/test16.md create mode 100644 test/testfiles/test17.md create mode 100644 test/testfiles/test18.md create mode 100644 ts/smartgulp.classes.gulpstream.ts create mode 100644 ts/smartgulp.gulpapi.ts diff --git a/dist/index.d.ts b/dist/index.d.ts new file mode 100644 index 0000000..9c76a4f --- /dev/null +++ b/dist/index.d.ts @@ -0,0 +1 @@ +export * from './smartgulp.gulpapi'; diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 0000000..aafb324 --- /dev/null +++ b/dist/index.js @@ -0,0 +1,7 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +Object.defineProperty(exports, "__esModule", { value: true }); +__export(require("./smartgulp.gulpapi")); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlDQUFtQyJ9 \ No newline at end of file diff --git a/dist/smartgulp.classes.gulpstream.d.ts b/dist/smartgulp.classes.gulpstream.d.ts new file mode 100644 index 0000000..9cdf2e4 --- /dev/null +++ b/dist/smartgulp.classes.gulpstream.d.ts @@ -0,0 +1,10 @@ +/// +import { Smartfile } from 'smartfile'; +import { Transform } from 'stream'; +export declare class GulpStream { + stream: Transform; + /** + * allows you to pipe a SmartfileArray into the stream + */ + pipeSmartfileArray(smartfileArray: Smartfile[]): Promise; +} diff --git a/dist/smartgulp.classes.gulpstream.js b/dist/smartgulp.classes.gulpstream.js new file mode 100644 index 0000000..7624d3b --- /dev/null +++ b/dist/smartgulp.classes.gulpstream.js @@ -0,0 +1,43 @@ +"use strict"; +// this file contains the code to generate and handle the stream +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const plugins = require("./smartgulp.plugins"); +const stream_1 = require("stream"); +class GulpStream { + constructor() { + this.stream = new stream_1.Transform({ objectMode: true }); + } + /** + * allows you to pipe a SmartfileArray into the stream + */ + pipeSmartfileArray(smartfileArray) { + return __awaiter(this, void 0, void 0, function* () { + // ensure what we get is an array + if (!Array.isArray(smartfileArray)) { + throw new Error('fileArg has unknown format'); + } + for (let smartfile of smartfileArray) { + let hasWritten = this.stream.push(smartfile); + if (!hasWritten) { + yield plugins.smartevent.once(this.stream, 'drain'); + } + else { + // iterate + } + } + ; + // signal end of stream; + this.stream.push(null); + }); + } +} +exports.GulpStream = GulpStream; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRndWxwLmNsYXNzZXMuZ3VscHN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3NtYXJ0Z3VscC5jbGFzc2VzLmd1bHBzdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGdFQUFnRTs7Ozs7Ozs7OztBQUVoRSwrQ0FBOEM7QUFHOUMsbUNBQWtDO0FBRWxDO0lBQUE7UUFDRSxXQUFNLEdBQUcsSUFBSSxrQkFBUyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7SUFzQjlDLENBQUM7SUFwQkM7O09BRUc7SUFDRyxrQkFBa0IsQ0FBQyxjQUEyQjs7WUFDbEQsaUNBQWlDO1lBQ2pDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtZQUMvQyxDQUFDO1lBQ0QsR0FBRyxDQUFDLENBQUMsSUFBSSxTQUFTLElBQUksY0FBYyxDQUFDLENBQUMsQ0FBQztnQkFDckMsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7Z0JBQzVDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztvQkFDaEIsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFBO2dCQUNyRCxDQUFDO2dCQUFDLElBQUksQ0FBQyxDQUFDO29CQUNOLFVBQVU7Z0JBQ1osQ0FBQztZQUNILENBQUM7WUFBQSxDQUFDO1lBQ0Ysd0JBQXdCO1lBRXhCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3hCLENBQUM7S0FBQTtDQUNGO0FBdkJELGdDQXVCQyJ9 \ No newline at end of file diff --git a/dist/smartgulp.gulpapi.d.ts b/dist/smartgulp.gulpapi.d.ts new file mode 100644 index 0000000..d0ddf3a --- /dev/null +++ b/dist/smartgulp.gulpapi.d.ts @@ -0,0 +1,4 @@ +/// +import { Transform } from 'stream'; +export declare let src: (minimatchPathArrayArg: string[]) => Transform; +export declare let dest: () => void; diff --git a/dist/smartgulp.gulpapi.js b/dist/smartgulp.gulpapi.js new file mode 100644 index 0000000..37370bb --- /dev/null +++ b/dist/smartgulp.gulpapi.js @@ -0,0 +1,31 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// this file contains the implementation of the standard gulp api +const plugins = require("./smartgulp.plugins"); +const smartgulp_classes_gulpstream_1 = require("./smartgulp.classes.gulpstream"); +exports.src = (minimatchPathArrayArg) => { + let gulpStream = new smartgulp_classes_gulpstream_1.GulpStream(); + let handleFiles = () => __awaiter(this, void 0, void 0, function* () { + let smartfileArray = []; + for (let minimatchPath of minimatchPathArrayArg) { + let localSmartfileArray = yield plugins.smartfile.fs.fileTreeToObject(process.cwd(), minimatchPath); + smartfileArray = plugins.lodash.concat(smartfileArray, localSmartfileArray); + } + gulpStream.pipeSmartfileArray(smartfileArray); + }); + handleFiles().catch(err => { + console.log(err); + }); + return gulpStream.stream; +}; +exports.dest = () => { +}; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRndWxwLmd1bHBhcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9zbWFydGd1bHAuZ3VscGFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsaUVBQWlFO0FBQ2pFLCtDQUE4QztBQUM5QyxpRkFBMkQ7QUFLaEQsUUFBQSxHQUFHLEdBQUcsQ0FBQyxxQkFBK0I7SUFDL0MsSUFBSSxVQUFVLEdBQUcsSUFBSSx5Q0FBVSxFQUFFLENBQUE7SUFDakMsSUFBSSxXQUFXLEdBQUc7UUFDaEIsSUFBSSxjQUFjLEdBQWdCLEVBQUUsQ0FBQTtRQUNwQyxHQUFHLENBQUMsQ0FBQyxJQUFJLGFBQWEsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7WUFDaEQsSUFBSSxtQkFBbUIsR0FBRyxNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FBQTtZQUNuRyxjQUFjLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDLENBQUE7UUFDN0UsQ0FBQztRQUNELFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUMvQyxDQUFDLENBQUEsQ0FBQTtJQUNELFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHO1FBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDbEIsQ0FBQyxDQUFDLENBQUE7SUFDRixNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQTtBQUMxQixDQUFDLENBQUE7QUFFVSxRQUFBLElBQUksR0FBRztBQUVsQixDQUFDLENBQUEifQ== \ No newline at end of file diff --git a/dist/smartgulp.plugins.d.ts b/dist/smartgulp.plugins.d.ts new file mode 100644 index 0000000..78b043b --- /dev/null +++ b/dist/smartgulp.plugins.d.ts @@ -0,0 +1,5 @@ +import * as smartevent from 'smartevent'; +import * as smartfile from 'smartfile'; +import * as smartstream from 'smartstream'; +import * as lodash from 'lodash'; +export { lodash, smartevent, smartfile, smartstream }; diff --git a/dist/smartgulp.plugins.js b/dist/smartgulp.plugins.js new file mode 100644 index 0000000..b04aa8d --- /dev/null +++ b/dist/smartgulp.plugins.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const smartevent = require("smartevent"); +exports.smartevent = smartevent; +const smartfile = require("smartfile"); +exports.smartfile = smartfile; +const smartstream = require("smartstream"); +exports.smartstream = smartstream; +const lodash = require("lodash"); +exports.lodash = lodash; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRndWxwLnBsdWdpbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9zbWFydGd1bHAucGx1Z2lucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUF3QztBQU90QyxnQ0FBVTtBQU5aLHVDQUFzQztBQU9wQyw4QkFBUztBQU5YLDJDQUEwQztBQU94QyxrQ0FBVztBQU5iLGlDQUFnQztBQUc5Qix3QkFBTSJ9 \ No newline at end of file diff --git a/package.json b/package.json index 2bc2648..1310a3c 100644 --- a/package.json +++ b/package.json @@ -24,10 +24,16 @@ }, "homepage": "https://gitlab.com/pushrocks/smartgulp#README", "devDependencies": { + "gulp-function": "^2.2.3", "tapbundle": "^1.0.10" }, "dependencies": { + "@types/lodash": "^4.14.63", + "lodash": "^4.17.4", + "smartevent": "^1.0.1", + "smartfile": "^4.2.0", "smartq": "^1.1.1", - "smartstream": "^1.0.8" + "smartstream": "^1.0.8", + "typings-global": "^1.0.16" } } diff --git a/test/test.ts b/test/test.ts index e69de29..f4ed5ce 100644 --- a/test/test.ts +++ b/test/test.ts @@ -0,0 +1,21 @@ +import { expect, tap } from 'tapbundle' + +import * as smartgulp from '../dist/index' +import * as smartstream from 'smartstream' +import * as gulpFunction from 'gulp-function' +import * as smartq from 'smartq' + +tap.test('smartgulp.src -> should read a directoy', async () => { + let done = smartq.defer() + smartgulp.src(['./test/testfiles/**/*']) + .pipe(gulpFunction.forEach(async (fileArg) => { + console.log(fileArg.path) + })) + .pipe(gulpFunction.atEnd(async () => { + console.log('hey') + done.resolve() + })) + await done.promise +}) + +tap.start() diff --git a/test/testfiles/test01.md b/test/testfiles/test01.md new file mode 100644 index 0000000..ed59362 --- /dev/null +++ b/test/testfiles/test01.md @@ -0,0 +1 @@ +# the 1st testfile \ No newline at end of file diff --git a/test/testfiles/test02.md b/test/testfiles/test02.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test02.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test03.md b/test/testfiles/test03.md new file mode 100644 index 0000000..3ceff99 --- /dev/null +++ b/test/testfiles/test03.md @@ -0,0 +1 @@ +# the third testfile \ No newline at end of file diff --git a/test/testfiles/test04.md b/test/testfiles/test04.md new file mode 100644 index 0000000..d80f0e7 --- /dev/null +++ b/test/testfiles/test04.md @@ -0,0 +1 @@ +# the fourth testfile \ No newline at end of file diff --git a/test/testfiles/test05.md b/test/testfiles/test05.md new file mode 100644 index 0000000..c3b7c6f --- /dev/null +++ b/test/testfiles/test05.md @@ -0,0 +1 @@ +# the fifth testfile \ No newline at end of file diff --git a/test/testfiles/test06.md b/test/testfiles/test06.md new file mode 100644 index 0000000..419f4e4 --- /dev/null +++ b/test/testfiles/test06.md @@ -0,0 +1 @@ +# the sixth testfile \ No newline at end of file diff --git a/test/testfiles/test07.md b/test/testfiles/test07.md new file mode 100644 index 0000000..7efebce --- /dev/null +++ b/test/testfiles/test07.md @@ -0,0 +1 @@ +# the seventh testfile \ No newline at end of file diff --git a/test/testfiles/test08.md b/test/testfiles/test08.md new file mode 100644 index 0000000..2e8ff19 --- /dev/null +++ b/test/testfiles/test08.md @@ -0,0 +1 @@ +# the eighth testfile \ No newline at end of file diff --git a/test/testfiles/test09.md b/test/testfiles/test09.md new file mode 100644 index 0000000..61c4d66 --- /dev/null +++ b/test/testfiles/test09.md @@ -0,0 +1 @@ +# the nineth testfile \ No newline at end of file diff --git a/test/testfiles/test10.md b/test/testfiles/test10.md new file mode 100644 index 0000000..2bda6a1 --- /dev/null +++ b/test/testfiles/test10.md @@ -0,0 +1 @@ +# the tenth testfile \ No newline at end of file diff --git a/test/testfiles/test11.md b/test/testfiles/test11.md new file mode 100644 index 0000000..d8e2eab --- /dev/null +++ b/test/testfiles/test11.md @@ -0,0 +1 @@ +# the eleventh testfile \ No newline at end of file diff --git a/test/testfiles/test12.md b/test/testfiles/test12.md new file mode 100644 index 0000000..640c018 --- /dev/null +++ b/test/testfiles/test12.md @@ -0,0 +1 @@ +# the twelveth testfile \ No newline at end of file diff --git a/test/testfiles/test13.md b/test/testfiles/test13.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test13.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test14.md b/test/testfiles/test14.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test14.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test15.md b/test/testfiles/test15.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test15.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test16.md b/test/testfiles/test16.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test16.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test17.md b/test/testfiles/test17.md new file mode 100644 index 0000000..7b95b09 --- /dev/null +++ b/test/testfiles/test17.md @@ -0,0 +1 @@ +# the second testfile \ No newline at end of file diff --git a/test/testfiles/test18.md b/test/testfiles/test18.md new file mode 100644 index 0000000..edea4fa --- /dev/null +++ b/test/testfiles/test18.md @@ -0,0 +1 @@ +# the 18th testfile \ No newline at end of file diff --git a/ts/index.ts b/ts/index.ts index c8dba3a..aa93470 100644 --- a/ts/index.ts +++ b/ts/index.ts @@ -1,9 +1 @@ -import * as plugins from './smartgulp.plugins' - -export let src = () => { - -} - -export let dest = () => { - -} \ No newline at end of file +export * from './smartgulp.gulpapi' diff --git a/ts/smartgulp.classes.gulpstream.ts b/ts/smartgulp.classes.gulpstream.ts new file mode 100644 index 0000000..244bc59 --- /dev/null +++ b/ts/smartgulp.classes.gulpstream.ts @@ -0,0 +1,30 @@ +// this file contains the code to generate and handle the stream + +import * as plugins from './smartgulp.plugins' +import { Smartfile } from 'smartfile' + +import { Transform } from 'stream' + +export class GulpStream { + stream = new Transform({ objectMode: true }) + + /** + * allows you to pipe a SmartfileArray into the stream + */ + async pipeSmartfileArray(smartfileArray: Smartfile[]) { + // ensure what we get is an array + if (!Array.isArray(smartfileArray)) { + throw new Error('fileArg has unknown format') + } + for (let smartfile of smartfileArray) { + let hasWritten = this.stream.push(smartfile) + if (!hasWritten) { + await plugins.smartevent.once(this.stream, 'drain') + } else { + // iterate + } + }; + // signal end of stream; + this.stream.push(null) + } +} diff --git a/ts/smartgulp.gulpapi.ts b/ts/smartgulp.gulpapi.ts new file mode 100644 index 0000000..ddb598e --- /dev/null +++ b/ts/smartgulp.gulpapi.ts @@ -0,0 +1,26 @@ +// this file contains the implementation of the standard gulp api +import * as plugins from './smartgulp.plugins' +import { GulpStream } from './smartgulp.classes.gulpstream' +import { Transform } from 'stream' + +import { Smartfile } from 'smartfile' + +export let src = (minimatchPathArrayArg: string[]): Transform => { + let gulpStream = new GulpStream() + let handleFiles = async () => { + let smartfileArray: Smartfile[] = [] + for (let minimatchPath of minimatchPathArrayArg) { + let localSmartfileArray = await plugins.smartfile.fs.fileTreeToObject(process.cwd(), minimatchPath) + smartfileArray = plugins.lodash.concat(smartfileArray, localSmartfileArray) + } + gulpStream.pipeSmartfileArray(smartfileArray) + } + handleFiles().catch(err => { + console.log(err) + }) + return gulpStream.stream +} + +export let dest = () => { + +} diff --git a/ts/smartgulp.plugins.ts b/ts/smartgulp.plugins.ts index 077df2a..998bf59 100644 --- a/ts/smartgulp.plugins.ts +++ b/ts/smartgulp.plugins.ts @@ -1,5 +1,11 @@ +import * as smartevent from 'smartevent' +import * as smartfile from 'smartfile' import * as smartstream from 'smartstream' +import * as lodash from 'lodash' export { + lodash, + smartevent, + smartfile, smartstream -} \ No newline at end of file +} diff --git a/yarn.lock b/yarn.lock index a432f30..71eb20f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,6 +19,16 @@ version "3.5.2" resolved "https://registry.yarnpkg.com/@types/chai/-/chai-3.5.2.tgz#c11cd2817d3a401b7ba0f5a420f35c56139b1c1e" +"@types/fs-extra@2.x.x": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-2.1.0.tgz#8b350239c0455d92b8d3c626edac193860ff395f" + dependencies: + "@types/node" "*" + +"@types/lodash@^4.14.63": + version "4.14.63" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.63.tgz#5ac475f55bfdc62bc88c4239dbc482f2f3bead93" + "@types/node@*": version "7.0.14" resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.14.tgz#1470fa002a113316ac9d9ad163fc738c7a0de2a4" @@ -27,20 +37,36 @@ version "0.0.27" resolved "https://registry.yarnpkg.com/@types/promises-a-plus/-/promises-a-plus-0.0.27.tgz#c64651134614c84b8f5d7114ce8901d36a609780" +"@types/q@0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" + "@types/q@0.x.x": version "0.0.34" resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.34.tgz#e5d3a54e7a56309d904cdf1dc34f61ac595fae2e" -"@types/through2@^2.0.32": +"@types/through2@^2.0.31", "@types/through2@^2.0.32": version "2.0.32" resolved "https://registry.yarnpkg.com/@types/through2/-/through2-2.0.32.tgz#470024450f1ab7640f19f9ebf42d3da574c26129" dependencies: "@types/node" "*" +"@types/vinyl@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.0.tgz#fd213bf7f4136dde21fe1895500b12c186f8c268" + dependencies: + "@types/node" "*" + ansi-256-colors@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-256-colors/-/ansi-256-colors-1.1.0.tgz#910de50efcc7c09e3d82f2f87abd6b700c18818a" +argparse@^1.0.7: + version "1.0.9" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + dependencies: + sprintf-js "~1.0.2" + assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" @@ -93,6 +119,26 @@ check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" +clone-buffer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" + +clone-stats@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" + +clone@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + +cloneable-readable@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.0.0.tgz#a6290d413f217a61232f95e458ff38418cfb0117" + dependencies: + inherits "^2.0.1" + process-nextick-args "^1.0.6" + through2 "^2.0.1" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -115,11 +161,29 @@ early@^2.1.1: smartq "^1.1.1" typings-global "^1.0.16" +esprima@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + +first-chunk-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz#1bdecdb8e083c0664b91945581577a43a9f31d70" + dependencies: + readable-stream "^2.0.2" + +fs-extra@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.0.tgz#244e0c4b0b8818f54040ec049d8a2bddc1202861" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" -glob@^7.0.0: +glob@^7.0.0, glob@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" dependencies: @@ -130,6 +194,26 @@ glob@^7.0.0: once "^1.3.0" path-is-absolute "^1.0.0" +graceful-fs@^4.1.2, graceful-fs@^4.1.6: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +gulp-function@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/gulp-function/-/gulp-function-2.2.3.tgz#8f62de74ce74de3fa91c48ba247472c1f56873bd" + dependencies: + "@types/q" "0.0.32" + "@types/through2" "^2.0.31" + q "^1.4.1" + through2 "^2.0.1" + typings-global "^1.0.14" + +home@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/home/-/home-1.0.1.tgz#96a423ceb49b98378ff5ef3ceae059a557f9dd35" + dependencies: + os-homedir "^1.0.1" + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -137,7 +221,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@~2.0.1: +inherits@2, inherits@^2.0.1, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -145,10 +229,31 @@ interpret@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-utf8@^0.2.0, is-utf8@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" +js-yaml@^3.8.3: + version "3.8.3" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.3.tgz#33a05ec481c850c8875929166fe1beb61c728766" + dependencies: + argparse "^1.0.7" + esprima "^3.1.1" + +jsonfile@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.0.tgz#92e7c7444e5ffd5fa32e6a9ae8b85034df8347d0" + optionalDependencies: + graceful-fs "^4.1.6" + leakage@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/leakage/-/leakage-0.2.0.tgz#9e7a8cc1d241d8c8427e348769e192e172fd8733" @@ -162,6 +267,10 @@ left-pad@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.1.3.tgz#612f61c033f3a9e08e939f1caebeea41b6f3199a" +lodash@^4.17.4: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + memwatch-next@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/memwatch-next/-/memwatch-next-0.3.0.tgz#2111050f9a906e0aa2d72a4ec0f0089c78726f8f" @@ -189,6 +298,10 @@ once@^1.3.0: dependencies: wrappy "1" +os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -197,11 +310,15 @@ path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + pretty-bytes@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" -process-nextick-args@~1.0.6: +process-nextick-args@^1.0.6, process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" @@ -209,7 +326,7 @@ q@^1.4.1: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" -readable-stream@^2.1.5: +readable-stream@^2.0.2, readable-stream@^2.1.5: version "2.2.9" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.9.tgz#cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8" dependencies: @@ -227,6 +344,18 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +remove-trailing-separator@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" + +replace-ext@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + +require-reload@0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/require-reload/-/require-reload-0.2.2.tgz#29a7591846caf91b6e8a3cda991683f95f8d7d42" + resolve@^1.1.6: version "1.3.3" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" @@ -262,13 +391,51 @@ smartdelay@^1.0.1: dependencies: typings-global "^1.0.14" -smartq@^1.1.1: +smartevent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/smartevent/-/smartevent-1.0.1.tgz#13d2bf2cf094ebdf17813fa0d46041f817a302aa" + dependencies: + smartq "^1.1.1" + typings-global "^1.0.16" + +smartfile@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/smartfile/-/smartfile-4.2.0.tgz#0dda1942bcd3460990a3c97d912e86254cb98511" + dependencies: + "@types/fs-extra" "2.x.x" + "@types/vinyl" "^2.0.0" + fs-extra "^3.0.0" + glob "^7.1.1" + js-yaml "^3.8.3" + require-reload "0.2.2" + smartpath "^3.2.8" + smartq "^1.1.1" + smartrequest "^1.0.4" + typings-global "^1.0.16" + vinyl "^2.0.2" + vinyl-file "^3.0.0" + +smartpath@^3.2.8: + version "3.2.8" + resolved "https://registry.yarnpkg.com/smartpath/-/smartpath-3.2.8.tgz#4834bd3a8bae2295baacadba23c87a501952f940" + dependencies: + home "^1.0.1" + typings-global "^1.0.14" + +smartq@^1.1.0, smartq@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/smartq/-/smartq-1.1.1.tgz#efb358705260d41ae18aef7ffd815f7b6fe17dd3" dependencies: typed-promisify "^0.3.0" typings-global "^1.0.14" +smartrequest@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/smartrequest/-/smartrequest-1.0.4.tgz#86af2163ae28f1031b01c2d8ad8c429733920611" + dependencies: + smartq "^1.1.0" + typings-global "^1.0.14" + smartstream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/smartstream/-/smartstream-1.0.8.tgz#da983ba304e0a27f7088b16b5e7a101da161492a" @@ -279,12 +446,35 @@ smartstream@^1.0.8: through2 "^2.0.3" typings-global "^1.0.14" +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + string_decoder@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.0.tgz#f06f41157b664d86069f84bdbdc9b0d8ab281667" dependencies: buffer-shims "~1.0.0" +strip-bom-buf@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz#1cb45aaf57530f4caf86c7f75179d2c9a51dd572" + dependencies: + is-utf8 "^0.2.1" + +strip-bom-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz#f87db5ef2613f6968aa545abfe1ec728b6a829ca" + dependencies: + first-chunk-stream "^2.0.0" + strip-bom "^2.0.0" + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + tapbundle@^1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/tapbundle/-/tapbundle-1.0.10.tgz#36fd40036f6b5b738cbb9b5fc400df4c4031bc26" @@ -296,7 +486,7 @@ tapbundle@^1.0.10: smartq "^1.1.1" typings-global "^1.0.16" -through2@^2.0.3: +through2@^2.0.1, through2@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: @@ -322,10 +512,36 @@ typings-global@^1.0.14, typings-global@^1.0.16: semver "^5.3.0" shelljs "^0.7.7" +universalify@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.0.tgz#9eb1c4651debcc670cc94f1a75762332bb967778" + util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" +vinyl-file@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/vinyl-file/-/vinyl-file-3.0.0.tgz#b104d9e4409ffa325faadd520642d0a3b488b365" + dependencies: + graceful-fs "^4.1.2" + pify "^2.3.0" + strip-bom-buf "^1.0.0" + strip-bom-stream "^2.0.0" + vinyl "^2.0.1" + +vinyl@^2.0.1, vinyl@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.0.2.tgz#0a3713d8d4e9221c58f10ca16c0116c9e25eda7c" + dependencies: + clone "^1.0.0" + clone-buffer "^1.0.0" + clone-stats "^1.0.0" + cloneable-readable "^1.0.0" + is-stream "^1.1.0" + remove-trailing-separator "^1.0.1" + replace-ext "^1.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"