diff --git a/.gitignore b/.gitignore index 929c2ab..d9c79fe 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +DefinitelyTyped/yarn.lock coverage/ node_modules/ ramda/ diff --git a/.travis.yml b/.travis.yml index 0280d00..ef2a162 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,6 +16,7 @@ script: - yarn run test -- --ci --testPathPattern='/tests/ramda-tests.ts' --verbose=false - yarn run test -- --ci --testPathPattern='/tests/[a-z_]+.ts' - yarn run remap -- --check --list-different +- yarn run test-dt after_success: - if [ "$TRAVIS_BRANCH" = "master" ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then bash ./scripts/deploy.sh; fi diff --git a/DefinitelyTyped/dt-header.txt b/DefinitelyTyped/dt-header.txt new file mode 100644 index 0000000..0b8dbee --- /dev/null +++ b/DefinitelyTyped/dt-header.txt @@ -0,0 +1,13 @@ +// Type definitions for ramda 0.24 +// Project: https://github.com/types/npm-ramda +// Definitions by: Erwin Poeze +// Matt DeKrey +// Liam Goodacre +// Matt Dziuban +// Stephen King +// Alejandro Fernandez Haro +// Vítor Castro +// Jordan Quagliatini +// Simon Højberg +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 diff --git a/DefinitelyTyped/package.json b/DefinitelyTyped/package.json new file mode 100644 index 0000000..f3b436e --- /dev/null +++ b/DefinitelyTyped/package.json @@ -0,0 +1,11 @@ +{ + "private": true, + "name": "definitely-typed", + "version": "0.0.0-dt", + "scripts": { + "lint": "dtslint types ramda" + }, + "devDependencies": { + "dtslint": "Microsoft/dtslint#production" + } +} diff --git a/DefinitelyTyped/tsconfig.json b/DefinitelyTyped/tsconfig.json new file mode 100644 index 0000000..0f57f25 --- /dev/null +++ b/DefinitelyTyped/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["---auto-generated-from-scripts---"] +} diff --git a/DefinitelyTyped/tslint.json b/DefinitelyTyped/tslint.json new file mode 100644 index 0000000..023d68b --- /dev/null +++ b/DefinitelyTyped/tslint.json @@ -0,0 +1,10 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "ban-types": false, + "callable-types": false, + "interface-over-type-literal": false, + "unified-signatures": false, + "no-unnecessary-type-assertion": false + } +} diff --git a/gulpfile.ts b/gulpfile.ts index fa92c91..9dc09aa 100644 --- a/gulpfile.ts +++ b/gulpfile.ts @@ -1,9 +1,15 @@ import * as del from 'del'; import * as gulp from 'gulp'; import * as gulp_run from 'run-sequence'; +import { + build_dt_chores, + build_dt_definitions, + build_dt_tests, +} from './tasks/build-dt'; import { build_watch } from './tasks/build-watch'; import { remap_watch } from './tasks/remap-watch'; import { + dt_ramda_dirname, glob_templates, output_relative_dirname, } from './tasks/utils/constants'; @@ -12,11 +18,13 @@ import { generate_files } from './tasks/utils/generate-files'; import { generate_index } from './tasks/utils/generate-index'; import { generate_remap_content } from './tasks/utils/generate-remap-content'; +type RunCallback = (error?: any) => void; + gulp.task('clean', async () => del(`${output_relative_dirname}/`)); gulp.task('build-index', generate_index); gulp.task('build-files', () => generate_files(glob_templates)); -gulp.task('build', ['clean'], (callback: (error?: any) => void) => +gulp.task('build', ['clean'], (callback: RunCallback) => gulp_run(['build-index', 'build-files'], callback), ); @@ -31,3 +39,18 @@ gulp.task('remap', ['clean-remap'], () => ); gulp.task('remap-watch', ['remap'], remap_watch); + +gulp.task('clean-dt', async () => del(dt_ramda_dirname)); + +gulp.task('build-dt-definitions', build_dt_definitions); +gulp.task('build-dt-chores', build_dt_chores); +gulp.task('build-dt-tests', build_dt_tests); + +gulp.task('build-dt', ['clean-dt', 'build'], (callback: RunCallback) => + gulp_run( + 'build-dt-definitions', + 'build-dt-chores', + 'build-dt-tests', + callback, + ), +); diff --git a/jest.dt.json b/jest.dt.json new file mode 100644 index 0000000..373efe8 --- /dev/null +++ b/jest.dt.json @@ -0,0 +1,16 @@ +{ + "testEnvironment": "node", + "moduleFileExtensions": ["ts", "js", "json"], + "testRegex": "/temp/.+\\.ts$", + "transform": {"/temp/.+\\.ts$": "dts-jest/transform"}, + "moduleNameMapper": { + "../ramda/dist": "/node_modules/ramda" + }, + "globals": { + "_dts_jest_": { + "enclosing_declaration": false, + "compiler_options": "./tsconfig.test.json", + "typescript": "/node_modules/typescript/lib/typescript" + } + } +} diff --git a/jest.json b/jest.json index 36089d5..6a276cc 100644 --- a/jest.json +++ b/jest.json @@ -9,7 +9,8 @@ "globals": { "_dts_jest_": { "enclosing_declaration": true, - "compiler_options": "./tsconfig.test.json" + "compiler_options": "./tsconfig.test.json", + "typescript": "/node_modules/typescript/lib/typescript" } }, "reporters": [ diff --git a/package.json b/package.json index 331aff5..7682507 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,9 @@ "build-watch": "gulp build-watch", "remap": "dts-jest-remap ./tests/*.ts --outDir ./snapshots", "remap-watch": "gulp remap-watch", - "jsdoc": "ts-node ./scripts/migrate-jsdoc.ts v0.24.1 ./templates" + "jsdoc": "ts-node ./scripts/migrate-jsdoc.ts v0.24.1 ./templates", + "build-dt": "gulp build-dt", + "test-dt": "bash ./scripts/test-dt.sh" }, "devDependencies": { "@types/del": "3.0.0", @@ -29,6 +31,7 @@ "@types/gulp-util": "3.0.31", "@types/jest": "20.0.8", "@types/node": "8.0.26", + "@types/prettier": "1.5.0", "@types/ramda": "ikatyang/types-ramda#v0.24.1-dist", "@types/run-sequence": "0.0.29", "@types/through2": "2.0.33", @@ -39,6 +42,8 @@ "dts-jest": "22.0.3", "glob": "7.1.2", "gulp": "3.9.1", + "gulp-modify": "0.1.1", + "gulp-plugin-prettier": "1.0.0", "gulp-rename": "1.2.2", "gulp-util": "3.0.8", "jest": "21.0.1", diff --git a/scripts/test-dt.sh b/scripts/test-dt.sh new file mode 100644 index 0000000..731be83 --- /dev/null +++ b/scripts/test-dt.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +cd ./DefinitelyTyped +yarn install --force +cd .. + +yarn run build-dt + +cd ./DefinitelyTyped +yarn run lint || eval "DT_LINT_STATE=error" +cd .. + +if [ "$DT_LINT_STATE" = "error" ]; then + exit 1; +fi diff --git a/snapshots/ramda-tests.ts b/snapshots/ramda-tests.ts index 655af21..ea38968 100644 --- a/snapshots/ramda-tests.ts +++ b/snapshots/ramda-tests.ts @@ -305,8 +305,8 @@ import * as R from '../ramda/dist/index'; // @dts-jest:group bind (() => { - // @dts-jest:pass:snap -> (message?: any, ...optionalParams: any[]) => void - R.bind(console.log, console); + // @dts-jest:pass:snap -> (arg: any) => arg is any[] + R.bind(Array.isArray, Array); })(); // @dts-jest:group both @@ -1503,7 +1503,7 @@ import * as R from '../ramda/dist/index'; // @dts-jest:group lensIndex (() => { const headLens = R.lensIndex(0); - // @dts-jest:pass:snap -> any + // @dts-jest:pass:snap -> string R.view(headLens, ['a', 'b', 'c']); //=> 'a' // @dts-jest:pass:snap -> string[] @@ -3195,7 +3195,7 @@ import * as R from '../ramda/dist/index'; // @dts-jest:group view (() => { const headLens = R.lensIndex(0); - // @dts-jest:pass:snap -> any + // @dts-jest:pass:snap -> string R.view(headLens, ['a', 'b', 'c']); //=> 'a' })(); diff --git a/snapshots/view.ts b/snapshots/view.ts index c94861c..bcf185f 100644 --- a/snapshots/view.ts +++ b/snapshots/view.ts @@ -24,13 +24,13 @@ R_view(pseudo_lens_a)(a_1_b_2_c_3); // @dts-jest:pass:snap -> 1 R_view(pseudo_lens_a, a_1_b_2_c_3); -// @dts-jest:pass:snap -> (target: U) => U["1"] +// @dts-jest:pass:snap -> (target: U) => U[1] R_view(pseudo_lens_1); // @dts-jest:pass:snap -> number R_view(pseudo_lens_1)(string_number_tuple); // @dts-jest:pass:snap -> number R_view(pseudo_lens_1, string_number_tuple); -// @dts-jest:pass:snap -> any +// @dts-jest:pass:snap -> number R_view(pseudo_lens_1)(number_array); -// @dts-jest:pass:snap -> any +// @dts-jest:pass:snap -> number R_view(pseudo_lens_1, number_array); diff --git a/tasks/build-dt.ts b/tasks/build-dt.ts new file mode 100644 index 0000000..c108814 --- /dev/null +++ b/tasks/build-dt.ts @@ -0,0 +1,110 @@ +import * as child_process from 'child_process'; +import del = require('del'); +import * as fs from 'fs'; +import * as gulp from 'gulp'; +import * as gulp_prettier from 'gulp-plugin-prettier'; +import * as gulp_util from 'gulp-util'; +import * as prettier from 'prettier'; +import * as tslint from 'tslint'; +import { + dt_dirname, + dt_ramda_dirname, + output_relative_dirname, +} from './utils/constants'; + +// tslint:disable-next-line:no-var-requires +const gulp_modify = require('gulp-modify'); + +const test_filename = 'ramda-tests.ts'; + +const definition_names: string[] = []; + +// DT style (https://github.com/Microsoft/dtslint/blob/master/dt.json) +const prettier_options: prettier.Options = { + bracketSpacing: true, + printWidth: 120, // original 200, decreased due to trailing comments + tabWidth: 4, + trailingComma: 'all', + parser: 'typescript', +}; + +export const build_dt_definitions = () => + gulp + .src(`${output_relative_dirname}/**/*`, { + base: output_relative_dirname, + }) + .pipe( + gulp_modify({ + fileModifier: (file: gulp_util.File, contents: string) => { + definition_names.push(file.relative); + if (file.path.endsWith('index.d.ts')) { + const dt_header = fs + .readFileSync(`${dt_dirname}/dt-header.txt`, 'utf8') + .trim(); + return `${dt_header}\n\n${contents}`; + } + return contents; + }, + }), + ) + .pipe( + gulp_prettier.format(prettier_options, { + reporter: gulp_prettier.Reporter.None, + }), + ) + .pipe(gulp.dest(dt_ramda_dirname)); + +export const build_dt_chores = () => + gulp + .src([`${dt_dirname}/tsconfig.json`, `${dt_dirname}/tslint.json`]) + .pipe( + gulp_modify({ + fileModifier: (file: gulp_util.File, contents: string) => { + if (file.path.endsWith('tsconfig.json')) { + const tsconfig = JSON.parse(contents); + tsconfig.files = [...definition_names, test_filename]; + return JSON.stringify(tsconfig, null, 4); + } + return contents; + }, + }), + ) + .pipe(gulp.dest(dt_ramda_dirname)); + +export const build_dt_tests = () => { + const temp_dirname = 'temp'; + const remapped_filename = `${test_filename}.remapped`; + + const commands = [ + `rm -rf ${temp_dirname}`, + `mkdir ${temp_dirname}`, + `cp tests/${test_filename} ${temp_dirname}/`, + `node_modules/.bin/jest -c ./jest.dt.json -u --silent`, + `node_modules/.bin/dts-jest-remap ${temp_dirname}/${test_filename} --rename ${remapped_filename}`, + ]; + + child_process.execSync(commands.join(' && ')); + + const linter = new tslint.Linter({ fix: true }); + + const output_filename = `${dt_ramda_dirname}/${test_filename}`; + + const output_content = prettier.format( + fs + .readFileSync(`${temp_dirname}/${remapped_filename}`, 'utf8') + .replace(`'../ramda/dist/index'`, `'ramda'`) + .replace(/\/\/ @dts-jest:fail.+/g, '// $ExpectError') + .replace(/\/\/ @dts-jest:pass:snap ->/g, '// $ExpectType'), + prettier_options, + ); + + fs.writeFileSync(output_filename, output_content); + + linter.lint( + output_filename, + output_content, + tslint.Linter.findConfiguration(null, output_filename).results, + ); + + del.sync(temp_dirname); +}; diff --git a/tasks/utils/constants.ts b/tasks/utils/constants.ts index 9d9ac13..65cf40b 100644 --- a/tasks/utils/constants.ts +++ b/tasks/utils/constants.ts @@ -13,3 +13,6 @@ export const output_sub_dirname = 'src'; export const output_relative_dirname = `./ramda/dist${output_dirname_postfix}`; export const output_relative_sub_dirname = `${output_relative_dirname}/${output_sub_dirname}`; export const output_extname = '.d.ts'; + +export const dt_dirname = 'DefinitelyTyped'; +export const dt_ramda_dirname = `${dt_dirname}/types/ramda`; diff --git a/tasks/utils/generate-file-content.ts b/tasks/utils/generate-file-content.ts index 637653e..d870a33 100644 --- a/tasks/utils/generate-file-content.ts +++ b/tasks/utils/generate-file-content.ts @@ -203,6 +203,7 @@ function get_top_level_members(filename: string): dts.ITopLevelMember[] { { selectable, placeholder, + inline_return_type: true, }, ); diff --git a/templates/$operation.d.ts b/templates/$operation.d.ts index 5c54d29..c5425d1 100644 --- a/templates/$operation.d.ts +++ b/templates/$operation.d.ts @@ -15,8 +15,3 @@ export type Same = Diff< Diff | Diff >; export type Merge = Omit & U; - -// from https://github.com/tycho01/typical/blob/f0e6918/src/cast.ts#L18 -// to resolve https://github.com/Microsoft/TypeScript/issues/15768 -// tslint:disable-next-line:prettier interface-over-type-literal -export type NumberToString = { 0:'0',1:'1',2:'2',3:'3',4:'4',5:'5',6:'6',7:'7',8:'8',9:'9',10:'10',11:'11',12:'12',13:'13',14:'14',15:'15',16:'16',17:'17',18:'18',19:'19',20:'20',21:'21',22:'22',23:'23',24:'24',25:'25',26:'26',27:'27',28:'28',29:'29',30:'30',31:'31',32:'32',33:'33',34:'34',35:'35',36:'36',37:'37',38:'38',39:'39',40:'40',41:'41',42:'42',43:'43',44:'44',45:'45',46:'46',47:'47',48:'48',49:'49',50:'50',51:'51',52:'52',53:'53',54:'54',55:'55',56:'56',57:'57',58:'58',59:'59',60:'60',61:'61',62:'62',63:'63',64:'64',65:'65',66:'66',67:'67',68:'68',69:'69',70:'70',71:'71',72:'72',73:'73',74:'74',75:'75',76:'76',77:'77',78:'78',79:'79',80:'80',81:'81',82:'82',83:'83',84:'84',85:'85',86:'86',87:'87',88:'88',89:'89',90:'90',91:'91',92:'92',93:'93',94:'94',95:'95',96:'96',97:'97',98:'98',99:'99',100:'100',101:'101',102:'102',103:'103',104:'104',105:'105',106:'106',107:'107',108:'108',109:'109',110:'110',111:'111',112:'112',113:'113',114:'114',115:'115',116:'116',117:'117',118:'118',119:'119',120:'120',121:'121',122:'122',123:'123',124:'124',125:'125',126:'126',127:'127',128:'128',129:'129',130:'130',131:'131',132:'132',133:'133',134:'134',135:'135',136:'136',137:'137',138:'138',139:'139',140:'140',141:'141',142:'142',143:'143',144:'144',145:'145',146:'146',147:'147',148:'148',149:'149',150:'150',151:'151',152:'152',153:'153',154:'154',155:'155',156:'156',157:'157',158:'158',159:'159',160:'160',161:'161',162:'162',163:'163',164:'164',165:'165',166:'166',167:'167',168:'168',169:'169',170:'170',171:'171',172:'172',173:'173',174:'174',175:'175',176:'176',177:'177',178:'178',179:'179',180:'180',181:'181',182:'182',183:'183',184:'184',185:'185',186:'186',187:'187',188:'188',189:'189',190:'190',191:'191',192:'192',193:'193',194:'194',195:'195',196:'196',197:'197',198:'198',199:'199',200:'200',201:'201',202:'202',203:'203',204:'204',205:'205',206:'206',207:'207',208:'208',209:'209',210:'210',211:'211',212:'212',213:'213',214:'214',215:'215',216:'216',217:'217',218:'218',219:'219',220:'220',221:'221',222:'222',223:'223',224:'224',225:'225',226:'226',227:'227',228:'228',229:'229',230:'230',231:'231',232:'232',233:'233',234:'234',235:'235',236:'236',237:'237',238:'238',239:'239',240:'240',241:'241',242:'242',243:'243',244:'244',245:'245',246:'246',247:'247',248:'248',249:'249',250:'250',251:'251',252:'252',253:'253',254:'254',255:'255'}; diff --git a/templates/over.d.ts b/templates/over.d.ts index 9302025..c2b0cf3 100644 --- a/templates/over.d.ts +++ b/templates/over.d.ts @@ -1,9 +1,8 @@ -import { NumberToString } from './$operation'; import { ManualLens, Morphism, PseudoLens } from './$types'; export function $number( lens: PseudoLens, - fn: Morphism, + fn: Morphism, target: U, ): U; export function $string>( diff --git a/templates/set.d.ts b/templates/set.d.ts index c33fefe..3335b8f 100644 --- a/templates/set.d.ts +++ b/templates/set.d.ts @@ -1,9 +1,8 @@ -import { NumberToString } from './$operation'; import { ManualLens, PseudoLens } from './$types'; export function $number( lens: PseudoLens, - value: U[NumberToString[N]], + value: U[N], target: U, ): U; export function $string>( diff --git a/templates/tslint.dts.json b/templates/tslint.dts.json new file mode 100644 index 0000000..06d7c2c --- /dev/null +++ b/templates/tslint.dts.json @@ -0,0 +1,6 @@ +{ + "extends": "./tslint.json", + "rules": { + "naming-convention": false + } +} diff --git a/templates/view.d.ts b/templates/view.d.ts index b5ea786..ff3dbdd 100644 --- a/templates/view.d.ts +++ b/templates/view.d.ts @@ -1,10 +1,9 @@ -import { NumberToString } from './$operation'; import { ManualLens, PseudoLens } from './$types'; export function $number( lens: PseudoLens, target: U, -): U[NumberToString[N]]; +): U[N]; export function $string>( lens: PseudoLens, target: U, diff --git a/tests/__snapshots__/ramda-tests.ts.snap b/tests/__snapshots__/ramda-tests.ts.snap index 3e7700b..8b4b4ed 100644 --- a/tests/__snapshots__/ramda-tests.ts.snap +++ b/tests/__snapshots__/ramda-tests.ts.snap @@ -134,7 +134,7 @@ exports[`binary takesTwoArgs(1, 2, 3) 1`] = `"Expected 2 arguments, but got 3."` exports[`binary takesTwoArgs.length 1`] = `"number"`; -exports[`bind R.bind(console.log, console) 1`] = `"(message?: any, ...optionalParams: any[]) => void"`; +exports[`bind R.bind(Array.isArray, Array) 1`] = `"(arg: any) => arg is any[]"`; exports[`both R.both(gt10)(even)(101) 1`] = `"boolean"`; @@ -694,7 +694,7 @@ exports[`lensIndex R.set(R.__, 'x', ['a', 'b', 'c'])(headLens) 1`] = `"string[]" exports[`lensIndex R.set(headLens, 'x', ['a', 'b', 'c']) 1`] = `"string[]"`; -exports[`lensIndex R.view(headLens, ['a', 'b', 'c']) 1`] = `"any"`; +exports[`lensIndex R.view(headLens, ['a', 'b', 'c']) 1`] = `"string"`; exports[`lensPath R.over(xyLens, R.negate, { x: { y: 2, z: 3 } }) 1`] = `"{ x: { y: number; z: number; }; }"`; @@ -1456,7 +1456,7 @@ exports[`values R.values({ a: 1, b: 2, c: 3 }) 1`] = `"number[]"`; exports[`valuesIn R.valuesIn(f) 1`] = `"string[]"`; -exports[`view R.view(headLens, ['a', 'b', 'c']) 1`] = `"any"`; +exports[`view R.view(headLens, ['a', 'b', 'c']) 1`] = `"string"`; exports[`when truncate('0123456789ABC') 1`] = `"string"`; diff --git a/tests/__snapshots__/view.ts.snap b/tests/__snapshots__/view.ts.snap index ac2bb55..1e0eb41 100644 --- a/tests/__snapshots__/view.ts.snap +++ b/tests/__snapshots__/view.ts.snap @@ -6,13 +6,13 @@ exports[`R_view(menual_lens_number_object)(object) 1`] = `"number"`; exports[`R_view(menual_lens_number_object, object) 1`] = `"number"`; -exports[`R_view(pseudo_lens_1) 1`] = `"(target: U) => U[\\"1\\"]"`; +exports[`R_view(pseudo_lens_1) 1`] = `"(target: U) => U[1]"`; -exports[`R_view(pseudo_lens_1)(number_array) 1`] = `"any"`; +exports[`R_view(pseudo_lens_1)(number_array) 1`] = `"number"`; exports[`R_view(pseudo_lens_1)(string_number_tuple) 1`] = `"number"`; -exports[`R_view(pseudo_lens_1, number_array) 1`] = `"any"`; +exports[`R_view(pseudo_lens_1, number_array) 1`] = `"number"`; exports[`R_view(pseudo_lens_1, string_number_tuple) 1`] = `"number"`; diff --git a/tests/ramda-tests.ts b/tests/ramda-tests.ts index 10ca02e..841da9c 100644 --- a/tests/ramda-tests.ts +++ b/tests/ramda-tests.ts @@ -306,7 +306,7 @@ import * as R from '../ramda/dist/index'; // @dts-jest:group bind (() => { // @dts-jest:pass:snap - R.bind(console.log, console); + R.bind(Array.isArray, Array); })(); // @dts-jest:group both diff --git a/yarn.lock b/yarn.lock index 586d7b4..1f627d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,16 +2,33 @@ # yarn lockfile v1 +"@types/babel-types@*": + version "6.25.1" + resolved "https://registry.yarnpkg.com/@types/babel-types/-/babel-types-6.25.1.tgz#ce8f126a4403e11e1b0033a424f11638afac7889" + "@types/chalk@*": version "0.4.31" resolved "https://registry.yarnpkg.com/@types/chalk/-/chalk-0.4.31.tgz#a31d74241a6b1edbb973cf36d97a2896834a51f9" +"@types/chokidar@*": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@types/chokidar/-/chokidar-1.7.2.tgz#7c6da2d5bd6a47c9bce0f09b904a30770581f605" + dependencies: + "@types/node" "*" + "@types/del@3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/del/-/del-3.0.0.tgz#1c8cd8b6e38da3b572352ca8eaf5527931426288" dependencies: "@types/glob" "*" +"@types/glob-stream@*": + version "3.1.31" + resolved "https://registry.yarnpkg.com/@types/glob-stream/-/glob-stream-3.1.31.tgz#015842260c01dab3b56578d8b37de2e57483d4ad" + dependencies: + "@types/glob" "*" + "@types/node" "*" + "@types/glob@*", "@types/glob@5.0.32": version "5.0.32" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-5.0.32.tgz#aec5cfe987c72f099fdb1184452986aa506d5e8f" @@ -25,7 +42,7 @@ dependencies: "@types/node" "*" -"@types/gulp-util@3.0.31": +"@types/gulp-util@3.0.31", "@types/gulp-util@^3.0.31": version "3.0.31" resolved "https://registry.yarnpkg.com/@types/gulp-util/-/gulp-util-3.0.31.tgz#272e298220365717e1f7f979b50ebadb44297cbf" dependencies: @@ -34,7 +51,15 @@ "@types/through2" "*" "@types/vinyl" "*" -"@types/gulp@*", "@types/gulp@3.8.33": +"@types/gulp@*": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@types/gulp/-/gulp-4.0.4.tgz#753ffe5b0ddaf0c9a60101b346141bb80e602f25" + dependencies: + "@types/chokidar" "*" + "@types/undertaker" "*" + "@types/vinyl-fs" "*" + +"@types/gulp@3.8.33": version "3.8.33" resolved "https://registry.yarnpkg.com/@types/gulp/-/gulp-3.8.33.tgz#b1b076820738c9c4eb7808cd926bff1683e1c2ab" dependencies: @@ -47,8 +72,8 @@ resolved "https://registry.yarnpkg.com/@types/jest/-/jest-20.0.8.tgz#7f8c97f73d20d3bf5448fbe33661a342002b5954" "@types/minimatch@*": - version "2.0.29" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-2.0.29.tgz#5002e14f75e2d71e564281df0431c8c1b4a2a36a" + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.1.tgz#b683eb60be358304ef146f5775db4c0e3696a550" "@types/node@*", "@types/node@8.0.26": version "8.0.26" @@ -61,9 +86,15 @@ "@types/node" "*" "@types/q" "^0" +"@types/prettier@1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.5.0.tgz#35ed47a24bd92bcab439c3670742219499a6b717" + dependencies: + "@types/babel-types" "*" + "@types/q@^0": - version "0.0.36" - resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.36.tgz#97d786389641bcbd0e22bfc729a534175976371d" + version "0.0.37" + resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.37.tgz#7d6a934b35ee2f0ed0646d286eba559599021c9e" "@types/ramda@ikatyang/types-ramda#v0.24.1-dist": version "0.24.1" @@ -76,15 +107,33 @@ "@types/gulp" "*" "@types/node" "*" -"@types/through2@*", "@types/through2@2.0.33": +"@types/through2@*", "@types/through2@2.0.33", "@types/through2@^2.0.33": version "2.0.33" resolved "https://registry.yarnpkg.com/@types/through2/-/through2-2.0.33.tgz#1ff2e88a100dfb5b140e7bb98791f1194400d131" dependencies: "@types/node" "*" +"@types/undertaker-registry@*": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/undertaker-registry/-/undertaker-registry-1.0.0.tgz#6f61a0be75a22e9ef62df68b480c68bce344fe5f" + +"@types/undertaker@*": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/undertaker/-/undertaker-1.1.2.tgz#cf0f62cdcbdf62ad9f70a4d78f81869a5c349a09" + dependencies: + "@types/undertaker-registry" "*" + +"@types/vinyl-fs@*": + version "2.4.7" + resolved "https://registry.yarnpkg.com/@types/vinyl-fs/-/vinyl-fs-2.4.7.tgz#9165d331758b351641debcfe656a133597bacb2f" + dependencies: + "@types/glob-stream" "*" + "@types/node" "*" + "@types/vinyl" "*" + "@types/vinyl@*": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.0.tgz#fd213bf7f4136dde21fe1895500b12c186f8c268" + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.1.tgz#6b414dfdcd4a785e8e76e87565ed29e79490d9b7" dependencies: "@types/node" "*" @@ -263,49 +312,49 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -babel-code-frame@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" +babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" dependencies: - chalk "^1.1.0" + chalk "^1.1.3" esutils "^2.0.2" - js-tokens "^3.0.0" + js-tokens "^3.0.2" -babel-core@^6.0.0, babel-core@^6.24.1: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" +babel-core@^6.0.0, babel-core@^6.24.1, babel-core@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.25.0" + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" babel-helpers "^6.24.1" babel-messages "^6.23.0" - babel-register "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.25.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.0" + debug "^2.6.8" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.7" slash "^1.0.0" - source-map "^0.5.0" + source-map "^0.5.6" -babel-generator@^6.18.0, babel-generator@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" +babel-generator@^6.18.0, babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" dependencies: babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" detect-indent "^4.0.0" jsesc "^1.3.0" - lodash "^4.2.0" - source-map "^0.5.0" + lodash "^4.17.4" + source-map "^0.5.6" trim-right "^1.0.1" babel-helpers@^6.24.1: @@ -345,13 +394,13 @@ babel-plugin-jest-hoist@^21.0.0: resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-21.0.0.tgz#aa2dbab7b0d58fa635640efd53aab730be7b3273" babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" dependencies: babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" babel-plugin-transform-strict-mode@^6.24.1: version "6.24.1" @@ -372,61 +421,61 @@ babel-preset-jest@^21.0.0: dependencies: babel-plugin-jest-hoist "^21.0.0" -babel-register@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" +babel-register@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" dependencies: - babel-core "^6.24.1" - babel-runtime "^6.22.0" - core-js "^2.4.0" + babel-core "^6.26.0" + babel-runtime "^6.26.0" + core-js "^2.5.0" home-or-tmp "^2.0.0" - lodash "^4.2.0" + lodash "^4.17.4" mkdirp "^0.5.1" - source-map-support "^0.4.2" + source-map-support "^0.4.15" -babel-runtime@^6.22.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.25.0.tgz#33b98eaa5d482bb01a8d1aa6b437ad2b01aec41c" +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" dependencies: core-js "^2.4.0" - regenerator-runtime "^0.10.0" + regenerator-runtime "^0.11.0" -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" +babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.25.0" - babel-types "^6.25.0" - babylon "^6.17.2" - lodash "^4.2.0" + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" -babel-traverse@^6.18.0, babel-traverse@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1" +babel-traverse@^6.18.0, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" dependencies: - babel-code-frame "^6.22.0" + babel-code-frame "^6.26.0" babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.25.0" - babylon "^6.17.2" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.25.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" - dependencies: - babel-runtime "^6.22.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" + lodash "^4.17.4" + to-fast-properties "^1.0.3" -babylon@^6.17.2, babylon@^6.17.4: - version "6.17.4" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a" +babylon@^6.17.4, babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" balanced-match@^1.0.0: version "1.0.0" @@ -512,7 +561,7 @@ center-align@^0.1.1: align-text "^0.1.3" lazy-cache "^1.0.3" -chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -606,13 +655,13 @@ content-type-parser@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.1.tgz#c3e56988c53c65127fb46d4032a3a900246fdc94" -convert-source-map@^1.1.0, convert-source-map@^1.4.0: +convert-source-map@^1.4.0, convert-source-map@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" -core-js@^2.4.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086" +core-js@^2.4.0, core-js@^2.5.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -652,7 +701,7 @@ dateformat@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" -debug@^2.1.1, debug@^2.2.0, debug@^2.6.3: +debug@^2.2.0, debug@^2.6.3, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: @@ -718,8 +767,8 @@ detect-indent@^4.0.0: repeating "^2.0.0" diff@^3.1.0, diff@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.0.tgz#056695150d7aa93237ca7e378ac3b1682b7963b9" + version "3.3.1" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" doctrine@^0.7.2: version "0.7.2" @@ -1159,7 +1208,7 @@ global-prefix@^0.1.4: is-windows "^0.2.0" which "^1.2.12" -globals@^9.0.0: +globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -1205,11 +1254,27 @@ growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" +gulp-modify@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/gulp-modify/-/gulp-modify-0.1.1.tgz#4a99a0bb8b7769921c7b09618762ccc179da3675" + dependencies: + gulp-util "*" + through2 "*" + +gulp-plugin-prettier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gulp-plugin-prettier/-/gulp-plugin-prettier-1.0.0.tgz#89f820419b3185389cb551a2fef30ac7f179e52a" + dependencies: + "@types/gulp-util" "^3.0.31" + "@types/through2" "^2.0.33" + gulp-util "^3.0.8" + through2 "^2.0.3" + gulp-rename@1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" -gulp-util@3.0.8, gulp-util@^3.0.0, gulp-util@^3.0.8: +gulp-util@*, gulp-util@3.0.8, gulp-util@^3.0.0, gulp-util@^3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" dependencies: @@ -1376,7 +1441,7 @@ interpret@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" -invariant@^2.2.0: +invariant@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" dependencies: @@ -1535,7 +1600,7 @@ isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" -isobject@^2.0.0, isobject@^2.1.0: +isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" dependencies: @@ -1550,17 +1615,17 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" istanbul-api@^1.1.1: - version "1.1.11" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.11.tgz#fcc0b461e2b3bda71e305155138238768257d9de" + version "1.1.13" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.13.tgz#7197f64413600ebdfec6347a2dc3d4e03f97ed5a" dependencies: async "^2.1.4" fileset "^2.0.2" istanbul-lib-coverage "^1.1.1" istanbul-lib-hook "^1.0.7" - istanbul-lib-instrument "^1.7.4" + istanbul-lib-instrument "^1.7.5" istanbul-lib-report "^1.1.1" istanbul-lib-source-maps "^1.2.1" - istanbul-reports "^1.1.1" + istanbul-reports "^1.1.2" js-yaml "^3.7.0" mkdirp "^0.5.1" once "^1.4.0" @@ -1575,9 +1640,9 @@ istanbul-lib-hook@^1.0.7: dependencies: append-transform "^0.4.0" -istanbul-lib-instrument@^1.4.2, istanbul-lib-instrument@^1.7.2, istanbul-lib-instrument@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.4.tgz#e9fd920e4767f3d19edc765e2d6b3f5ccbd0eea8" +istanbul-lib-instrument@^1.4.2, istanbul-lib-instrument@^1.7.2, istanbul-lib-instrument@^1.7.5: + version "1.7.5" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.5.tgz#adb596f8f0cb8b95e739206351a38a586af21b1e" dependencies: babel-generator "^6.18.0" babel-template "^6.16.0" @@ -1606,9 +1671,9 @@ istanbul-lib-source-maps@^1.1.0, istanbul-lib-source-maps@^1.2.1: rimraf "^2.6.1" source-map "^0.5.3" -istanbul-reports@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.1.tgz#042be5c89e175bc3f86523caab29c014e77fee4e" +istanbul-reports@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.2.tgz#0fb2e3f6aa9922bd3ce45d05d8ab4d5e8e07bd4f" dependencies: handlebars "^4.0.3" @@ -1972,7 +2037,7 @@ jest@21.0.1: dependencies: jest-cli "^21.0.1" -js-tokens@^3.0.0: +js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" @@ -2029,7 +2094,7 @@ json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json5@^0.5.0: +json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -2240,7 +2305,7 @@ lodash.upperfirst@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" -lodash@^4.14.0, lodash@^4.2.0: +lodash@^4.14.0, lodash@^4.17.4: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -2317,15 +2382,15 @@ micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: parse-glob "^3.0.4" regex-cache "^0.4.2" -mime-db@~1.29.0: - version "1.29.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878" +mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.16" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.16.tgz#2b858a52e5ecd516db897ac2be87487830698e23" + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" dependencies: - mime-db "~1.29.0" + mime-db "~1.30.0" mimic-fn@^1.0.0: version "1.1.0" @@ -2350,7 +2415,7 @@ minimatch@~0.2.11: lru-cache "2" sigmund "~1.0.0" -minimist@0.0.8, minimist@~0.0.1: +minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" @@ -2358,6 +2423,10 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" @@ -2487,10 +2556,10 @@ object.omit@^2.0.0: is-extendable "^0.1.1" object.pick@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.2.0.tgz#b5392bee9782da6d9fb7d6afaf539779f1234c2b" + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" dependencies: - isobject "^2.1.0" + isobject "^3.0.1" once@^1.3.0, once@^1.3.3, once@^1.4.0: version "1.4.0" @@ -2626,7 +2695,7 @@ path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" -path-is-absolute@^1.0.0: +path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -2728,7 +2797,7 @@ pretty-hrtime@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" -private@^0.1.6: +private@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" @@ -2838,20 +2907,19 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" +regenerator-runtime@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" regex-cache@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" dependencies: is-equal-shallow "^0.1.3" - is-primitive "^2.0.0" remove-trailing-separator@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" repeat-element@^1.1.2: version "1.1.2" @@ -2991,8 +3059,8 @@ shebang-regex@^1.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" shellwords@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.0.tgz#66afd47b6a12932d9071cbfd98a52e785cd0ba14" + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" sigmund@~1.0.0: version "1.0.1" @@ -3012,9 +3080,9 @@ sntp@1.x.x: dependencies: hoek "2.x.x" -source-map-support@^0.4.0, source-map-support@^0.4.2, source-map-support@^0.4.4: - version "0.4.15" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" +source-map-support@^0.4.0, source-map-support@^0.4.15, source-map-support@^0.4.4: + version "0.4.17" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.17.tgz#6f2150553e6375375d0ccb3180502b78c18ba430" dependencies: source-map "^0.5.6" @@ -3024,9 +3092,9 @@ source-map@^0.4.4: dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" +source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" source-map@~0.2.0: version "0.2.0" @@ -3157,8 +3225,8 @@ supports-color@^3.1.2: has-flag "^1.0.0" supports-color@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.1.tgz#65a4bb2631e90e02420dba5554c375a4754bb836" + version "4.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" dependencies: has-flag "^2.0.0" @@ -3205,7 +3273,7 @@ throat@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" -through2@2.0.3, through2@^2.0.0: +through2@*, through2@2.0.3, through2@^2.0.0, through2@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: @@ -3233,7 +3301,7 @@ tmpl@1.0.x: version "1.0.4" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" -to-fast-properties@^1.0.1: +to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" @@ -3363,8 +3431,8 @@ tsutils@^1.4.0: resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.9.1.tgz#b9f9ab44e55af9681831d5f28d0aeeaf5c750cb0" tsutils@^2.6.1, tsutils@^2.8.0, tsutils@^2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.8.1.tgz#3771404e7ca9f0bedf5d919a47a4b1890a68efff" + version "2.8.2" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.8.2.tgz#2c1486ba431260845b0ac6f902afd9d708a8ea6a" dependencies: tslib "^1.7.1" @@ -3503,8 +3571,8 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" webidl-conversions@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.1.tgz#8015a17ab83e7e1b311638486ace81da6ce206a0" + version "4.0.2" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" whatwg-encoding@^1.0.1: version "1.0.1" @@ -3556,8 +3624,8 @@ wordwrap@~1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" worker-farm@^1.3.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.4.1.tgz#a438bc993a7a7d133bcb6547c95eca7cff4897d8" + version "1.5.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.0.tgz#adfdf0cd40581465ed0a1f648f9735722afd5c8d" dependencies: errno "^0.1.4" xtend "^4.0.1"