diff --git a/.travis.yml b/.travis.yml index 7f3afc7..22c4b31 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,8 @@ language: node_js node_js: - - '6.9.1' + - '7.7' + - '6.10' - '6' - '5' - '5.1' - - '4.2' - - '4.1' - - '4.0' + - '4.5.0' diff --git a/generators/app/index.js b/generators/app/index.js index c3f89d9..56840b8 100644 --- a/generators/app/index.js +++ b/generators/app/index.js @@ -1,25 +1,29 @@ /*jshint -W108,-W069*/ 'use strict'; -var pkg = require(__dirname + '/../../package.json'); -var fs = require('fs'); -var extfs = require('extfs'); -var xml2js = require("xml2js"); -var parser = new xml2js.Parser(); -var yeoman = require('yeoman-generator'); +const pkg = require(__dirname + '/../../package.json'); +const fs = require('fs'); +const extfs = require('extfs'); +const xml2js = require("xml2js"); +const parser = new xml2js.Parser(); +const Generator = require('yeoman-generator'); -var promptTexts = require('./lib/prompttexts.js'); -var text = require('./lib/text.js'); +const promptTexts = require('./lib/prompttexts.js'); +const text = require('./lib/text.js'); -var boilerPlatePath = 'AppStoreWidgetBoilerplate/', - emptyBoilerplatePath = 'WidgetBoilerplate/'; +const boilerPlatePath = 'AppStoreWidgetBoilerplate/', + emptyBoilerplatePath = 'WidgetBoilerplate/'; -var banner = text.getBanner(pkg); +const banner = text.getBanner(pkg); -module.exports = yeoman.Base.extend({ - constructor: function () { - yeoman.Base.apply(this, arguments); - var done = this.async(); +module.exports = class extends Generator { + + constructor(args, opts) { + super(args, opts); + } + + initializing() { + const done = this.async(); this.isNew = true; this.FINISHED = false; @@ -30,13 +34,13 @@ module.exports = yeoman.Base.extend({ this.current.name = 'CurrentWidget'; if (this.folders.indexOf('src') !== -1) { - var srcFolderContent = extfs.getDirsSync(this.destinationPath('src')); + const srcFolderContent = extfs.getDirsSync(this.destinationPath('src')); if (srcFolderContent.length === 1) { this.current.name = srcFolderContent[0]; } if (!extfs.isEmptySync(this.destinationPath('package.json'))) { try { - var destPkg = JSON.parse(fs.readFileSync(this.destinationPath('package.json')).toString()); + const destPkg = JSON.parse(fs.readFileSync(this.destinationPath('package.json')).toString()); this.current.description = destPkg.description; this.current.author = destPkg.author; this.current.copyright = destPkg.copyright; @@ -49,14 +53,14 @@ module.exports = yeoman.Base.extend({ } if (!extfs.isEmptySync(this.destinationPath('src/package.xml'))) { this.isNew = false; - var pkgXml = fs.readFileSync(this.destinationPath('src/package.xml')).toString(); + const pkgXml = fs.readFileSync(this.destinationPath('src/package.xml')).toString(); parser.parseString(pkgXml, function (err, result) { if (err) { this.log('Error: ' + err); this.FINISHED = true; done(); return; } if (result.package.clientModule[0]["$"]["version"]) { - var version = result.package.clientModule[0]["$"]["version"]; + let version = result.package.clientModule[0]["$"]["version"]; if (version.split(".").length === 2) { version += ".0"; } @@ -76,9 +80,10 @@ module.exports = yeoman.Base.extend({ } else { done(); } - }, - prompting: function () { - var done = this.async(); + } + + prompting() { + const done = this.async(); if (this.FINISHED) { done(); @@ -107,170 +112,180 @@ module.exports = yeoman.Base.extend({ } }.bind(this)); } - }, + } - writing: { - app: function () { - if (this.FINISHED) { - return; - } - // Define widget variables - this.widget = {}; - this.widget.widgetName = this.props.widgetName; - this.widget.packageName = this.props.widgetName; - this.widget.description = this.props.description || this.current.description; - this.widget.version = this.props.version; - this.widget.author = this.props.author || this.current.author; - this.widget.date = (new Date()).toLocaleDateString(); - this.widget.copyright = this.props.copyright || this.current.copyright; - this.widget.license = this.props.license || this.current.license; - this.widget.generatorVersion = pkg.version; - - this.widget.builder = this.props.builder; - - if (this.isNew) { - var source = this.props.boilerplate === 'appstore' ? boilerPlatePath : emptyBoilerplatePath; - this.props.widgetOptionsObj = {}; - if (this.props.boilerplate === 'empty') { - for (var i = 0; i < this.props.widgetoptions.length; i++) { - this.props.widgetOptionsObj[this.props.widgetoptions[i]] = true; - } - } + writing() { + if (this.FINISHED) { + return; + } - // Copy generic files - this.fs.copy(this.templatePath('icon.png'), this.destinationPath('icon.png')); - this.fs.copy(this.templatePath(boilerPlatePath + 'assets/app_store_banner.png'), this.destinationPath('assets/app_store_banner.png')); - this.fs.copy(this.templatePath(boilerPlatePath + 'assets/app_store_icon.png'), this.destinationPath('assets/app_store_icon.png')); - //this.fs.copy(this.templatePath(source + 'LICENSE'), this.destinationPath('LICENSE')); - this.fs.copy(this.templatePath(source + 'README.md'), this.destinationPath('README.md')); - this.fs.copy(this.templatePath(boilerPlatePath + 'test/Test.mpr'), this.destinationPath('test/Test.mpr')); - this.fs.copy(this.templatePath(boilerPlatePath + 'xsd/widget.xsd'), this.destinationPath('xsd/widget.xsd')); - - // Copy files based on WidgetName - - if (this.props.boilerplate === 'appstore' || this.props.widgetOptionsObj.jquery) { - this.fs.copy( - this.templatePath(boilerPlatePath + 'src/WidgetName/lib/jquery-1.11.2.js'), - this.destinationPath('src/' + this.widget.widgetName + '/lib/jquery-1.11.2.js') - ); - } + console.log(this.props); + // Define widget variables + this.widget = {}; + this.widget.widgetName = this.props.widgetName; + this.widget.packageName = this.props.widgetName; + this.widget.description = this.props.description || this.current.description; + this.widget.version = this.props.version; + this.widget.author = this.props.author || this.current.author; + this.widget.date = (new Date()).toLocaleDateString(); + this.widget.copyright = this.props.copyright || this.current.copyright; + this.widget.license = this.props.license || this.current.license; + this.widget.generatorVersion = pkg.version; + + this.widget.builder = this.props.builder; - if (this.props.boilerplate === 'appstore' || this.props.widgetOptionsObj.templates) { - this.fs.copy( - this.templatePath(source + 'src/WidgetName/widget/template/WidgetName.html'), - this.destinationPath('src/' + this.widget.widgetName + '/widget/template/' + this.widget.widgetName + '.html') - ); + if (this.isNew) { + const source = this.props.boilerplate === 'appstore' ? boilerPlatePath : emptyBoilerplatePath; + this.props.widgetOptionsObj = {}; + if (this.props.boilerplate === 'empty') { + for (let i = 0; i < this.props.widgetoptions.length; i++) { + this.props.widgetOptionsObj[this.props.widgetoptions[i]] = true; } + } + + // Copy generic files + this.fs.copy(this.templatePath('icon.png'), this.destinationPath('icon.png')); + this.fs.copy(this.templatePath(boilerPlatePath + 'assets/app_store_banner.png'), this.destinationPath('assets/app_store_banner.png')); + this.fs.copy(this.templatePath(boilerPlatePath + 'assets/app_store_icon.png'), this.destinationPath('assets/app_store_icon.png')); + //this.fs.copy(this.templatePath(source + 'LICENSE'), this.destinationPath('LICENSE')); + this.fs.copy(this.templatePath(source + 'README.md'), this.destinationPath('README.md')); + this.fs.copy(this.templatePath(boilerPlatePath + 'test/Test.mpr'), this.destinationPath('test/Test.mpr')); + this.fs.copy(this.templatePath(boilerPlatePath + 'xsd/widget.xsd'), this.destinationPath('xsd/widget.xsd')); + + // Copy files based on WidgetName + if (this.props.boilerplate === 'appstore' || this.props.widgetOptionsObj.jquery) { this.fs.copy( - this.templatePath(source + 'src/WidgetName/widget/ui/WidgetName.css'), - this.destinationPath('src/' + this.widget.widgetName + '/widget/ui/' + this.widget.widgetName + '.css') + this.templatePath(boilerPlatePath + 'src/WidgetName/lib/jquery-1.11.2.js'), + this.destinationPath('src/' + this.widget.widgetName + '/lib/jquery-1.11.2.js') ); + } - // Rename references in widget main JS - if (this.props.boilerplate === 'appstore') { - this.fs.copy( - this.templatePath(source + 'src/WidgetName/widget/WidgetName.js'), - this.destinationPath('src/' + this.widget.widgetName + '/widget/' + this.widget.widgetName + '.js'), - { - process: function (file) { - var fileText = file.toString(); - fileText = fileText - .replace(/WidgetName\.widget\.WidgetName/g, this.widget.packageName + '.widget.' + this.widget.widgetName) - .replace(/WidgetName\/widget\/WidgetName/g, this.widget.packageName + '/widget/' + this.widget.widgetName) - .replace(/WidgetName/g, this.widget.widgetName) - .replace(/\{\{version\}\}/g, this.widget.version) - .replace(/\{\{date\}\}/g, this.widget.date) - .replace(/\{\{copyright\}\}/g, this.widget.copyright) - .replace(/\{\{license\}\}/g, this.widget.license) - .replace(/\{\{author\}\}/g, this.widget.author); - return fileText; - }.bind(this) - } - ); - } else { - this.widget.options = this.props.widgetOptionsObj; - this.template( - this.templatePath(source + 'src/WidgetName/widget/WidgetName.js.ejs'), - this.destinationPath('src/' + this.widget.widgetName + '/widget/' + this.widget.widgetName + '.js'), - this.widget - ); - } - - // Rename references package.xml + if (this.props.boilerplate === 'appstore' || this.props.widgetOptionsObj.templates) { this.fs.copy( - this.templatePath(boilerPlatePath + 'src/package.xml'), - this.destinationPath('src/package.xml'), - { - process: function (file) { - var fileText = file.toString(); - fileText = fileText - .replace(/WidgetName/g, this.widget.widgetName) - .replace(/\{\{version\}\}/g, this.widget.version); - return fileText; - }.bind(this) - } + this.templatePath(source + 'src/WidgetName/widget/template/WidgetName.html'), + this.destinationPath('src/' + this.widget.widgetName + '/widget/template/' + this.widget.widgetName + '.html') ); + } - // Rename references WidgetName + this.fs.copy( + this.templatePath(source + 'src/WidgetName/widget/ui/WidgetName.css'), + this.destinationPath('src/' + this.widget.widgetName + '/widget/ui/' + this.widget.widgetName + '.css') + ); + + // Rename references in widget main JS + if (this.props.boilerplate === 'appstore') { this.fs.copy( - this.templatePath(source + 'src/WidgetName/WidgetName.xml'), - this.destinationPath('src/' + this.widget.widgetName + '/' + this.widget.widgetName + '.xml'), + this.templatePath(source + 'src/WidgetName/widget/WidgetName.js'), + this.destinationPath('src/' + this.widget.widgetName + '/widget/' + this.widget.widgetName + '.js'), { process: function (file) { - var fileText = file.toString(); + let fileText = file.toString(); fileText = fileText .replace(/WidgetName\.widget\.WidgetName/g, this.widget.packageName + '.widget.' + this.widget.widgetName) - .replace(/WidgetName/g, this.widget.widgetName); + .replace(/WidgetName\/widget\/WidgetName/g, this.widget.packageName + '/widget/' + this.widget.widgetName) + .replace(/WidgetName/g, this.widget.widgetName) + .replace(/\{\{version\}\}/g, this.widget.version) + .replace(/\{\{date\}\}/g, this.widget.date) + .replace(/\{\{copyright\}\}/g, this.widget.copyright) + .replace(/\{\{license\}\}/g, this.widget.license) + .replace(/\{\{author\}\}/g, this.widget.author); return fileText; }.bind(this) } ); + } else { + this.widget.options = this.props.widgetOptionsObj; + this.fs.copyTpl( + this.templatePath(source + 'src/WidgetName/widget/WidgetName.js.ejs'), + this.destinationPath('src/' + this.widget.widgetName + '/widget/' + this.widget.widgetName + '.js'), + this.widget + ); } - // Gitignore - this.fs.copy(this.templatePath('_gitignore'), this.destinationPath('.gitignore')); + // Rename references package.xml + this.fs.copy( + this.templatePath(boilerPlatePath + 'src/package.xml'), + this.destinationPath('src/package.xml'), + { + process: function (file) { + let fileText = file.toString(); + fileText = fileText + .replace(/WidgetName/g, this.widget.widgetName) + .replace(/\{\{version\}\}/g, this.widget.version); + return fileText; + }.bind(this) + } + ); - // jshint - this.fs.copy(this.templatePath('_jshintrc'), this.destinationPath('.jshintrc')); + // Rename references WidgetName + this.fs.copy( + this.templatePath(source + 'src/WidgetName/WidgetName.xml'), + this.destinationPath('src/' + this.widget.widgetName + '/' + this.widget.widgetName + '.xml'), + { + process: function (file) { + let fileText = file.toString(); + fileText = fileText + .replace(/WidgetName\.widget\.WidgetName/g, this.widget.packageName + '.widget.' + this.widget.widgetName) + .replace(/WidgetName/g, this.widget.widgetName); + return fileText; + }.bind(this) + } + ); + } - // Package.JSON - try { extfs.removeSync(this.destinationPath('package.json')); } catch (e) {} - this.template('_package.json', 'package.json', this.widget, {}); + // Gitignore + this.fs.copy(this.templatePath('_gitignore'), this.destinationPath('.gitignore')); - // Add Gulp/Grunt - this.pkg = pkg; + // jshint + this.fs.copy(this.templatePath('_jshintrc'), this.destinationPath('.jshintrc')); - try { extfs.removeSync(this.destinationPath('Gruntfile.js')); } catch (e) {} - try { extfs.removeSync(this.destinationPath('Gulpfile.js')); } catch (e) {} + // Package.JSON + try { extfs.removeSync(this.destinationPath('package.json')); } catch (e) {} - if (this.widget.builder === 'gulp') { - this.template('Gulpfile.js', 'Gulpfile.js', this, {}); - } else { - this.template('Gruntfile.js', 'Gruntfile.js', this, {}); - } - }, + console.log() + this.fs.copyTpl( + this.templatePath('_package.json'), + this.destinationPath('package.json'), + this.widget, {} + ); - projectfiles: function () { - if (this.FINISHED) { - return; - } - this.fs.copy( - this.templatePath('editorconfig'), - this.destinationPath('.editorconfig') + // Add Gulp/Grunt + this.pkg = pkg; + + try { extfs.removeSync(this.destinationPath('Gruntfile.js')); } catch (e) {} + try { extfs.removeSync(this.destinationPath('Gulpfile.js')); } catch (e) {} + + if (this.widget.builder === 'gulp') { + this.fs.copyTpl( + this.templatePath('Gulpfile.js'), + this.destinationPath('Gulpfile.js'), + this, {} + ); + } else { + this.fs.copyTpl( + this.templatePath('Gruntfile.js'), + this.destinationPath('Gruntfile.js'), + this, + {} ); } - }, - install: function () { + this.fs.copy( + this.templatePath('editorconfig'), + this.destinationPath('.editorconfig') + ); + } + + install() { if (this.FINISHED) { return; } this.log(text.INSTALL_FINISH_MSG); this.npmInstall(); - }, + } - end: function () { + end() { if (this.FINISHED) { return; } @@ -281,4 +296,4 @@ module.exports = yeoman.Base.extend({ this.spawnCommand('npm', ['run', 'build']); } } -}); +}; diff --git a/generators/app/lib/prompttexts.js b/generators/app/lib/prompttexts.js index 6d9cf09..3c89b28 100644 --- a/generators/app/lib/prompttexts.js +++ b/generators/app/lib/prompttexts.js @@ -2,12 +2,12 @@ "use strict"; var semver = require('semver'); -function promptsNew () { - return [ +module.exports = { + promptsNew: () => [ { type: 'input', name: 'widgetName', - validate: function (input) { + validate: input => { if (/^([a-zA-Z]*)$/.test(input)) { return true; } return 'Your widget can only contain letters (a-z & A-Z). Please provide a valid name'; }, @@ -33,7 +33,7 @@ function promptsNew () { },{ type: 'input', name: 'version', - validate: function (input) { + validate: input => { if (semver.valid(input) && semver.satisfies(input, '>=1.0.0')) { return true; } @@ -110,16 +110,12 @@ function promptsNew () { } */ ], - when: function (props) { - return props.boilerplate === 'empty'; - }, + when: props => props.boilerplate === 'empty', store: true } - ]; -} + ], -function promptsUpgrade (current) { - return [ + promptsUpgrade: current => [ { type: 'confirm', name: 'upgrade', @@ -128,19 +124,17 @@ function promptsUpgrade (current) { },{ type: 'input', name: 'widgetName', - validate: function (input) { + validate: input => { if (/^([a-zA-Z]*)$/.test(input)) { return true; } return 'Your widget can only contain letters (a-z & A-Z). Please provide a valid name'; }, message: 'What is name of your widget? (Do not change this, unless you know what you are doing)', default: current.name, - when: function (props) { - return props.upgrade; - } + when: props => props.upgrade },{ type: 'input', name: 'version', - validate: function (input) { + validate: input => { if (semver.valid(input) && semver.satisfies(input, '>=1.0.0')) { return true; } @@ -148,9 +142,7 @@ function promptsUpgrade (current) { }, message: 'Enter your current version (package.xml) or the default version', default: current.version, - when: function (props) { - return props.upgrade; - } + when: props => props.upgrade },{ type: 'list', name: 'builder', @@ -165,10 +157,5 @@ function promptsUpgrade (current) { ], default: 0 } - ]; -} - -module.exports = { - promptsNew: promptsNew, - promptsUpgrade: promptsUpgrade + ] }; diff --git a/generators/app/lib/text.js b/generators/app/lib/text.js index 5974470..78569ee 100644 --- a/generators/app/lib/text.js +++ b/generators/app/lib/text.js @@ -4,22 +4,20 @@ var chalk = require('chalk'); module.exports = { - getBanner: function (pkg) { - return [ - '', - chalk.bold.cyan(' __ ____ __') + ' _ _ _ ', - chalk.bold.cyan(' | \\/ \\ \\ / /') + ' (_) | | | | ', - chalk.bold.cyan(' | \\ / |\\ V / ') + ' __ ___ __| | __ _ ___| |_ ', - chalk.bold.cyan(' | |\\/| | > < ') + ' \\ \\ /\\ / / |/ _` |/ _` |/ _ \\ __| ', - chalk.bold.cyan(' | | | |/ . \\ ') + ' \\ V V /| | (_| | (_| | __/ |_ ', - chalk.bold.cyan(' |_| |_/_/ \\_\\') + ' \\_/\\_/ |_|\\__,_|\\__, |\\___|\\__| ', - ' __/ | ', - ' |___/ ', - ' Generator, version: ' + pkg.version, - ' Issues? Please report them at : ' + chalk.cyan(pkg.bugs.url), - '' - ].join('\n'); - }, + getBanner: pkg => [ + '', + chalk.bold.cyan(' __ ____ __') + ' _ _ _ ', + chalk.bold.cyan(' | \\/ \\ \\ / /') + ' (_) | | | | ', + chalk.bold.cyan(' | \\ / |\\ V / ') + ' __ ___ __| | __ _ ___| |_ ', + chalk.bold.cyan(' | |\\/| | > < ') + ' \\ \\ /\\ / / |/ _` |/ _` |/ _ \\ __| ', + chalk.bold.cyan(' | | | |/ . \\ ') + ' \\ V V /| | (_| | (_| | __/ |_ ', + chalk.bold.cyan(' |_| |_/_/ \\_\\') + ' \\_/\\_/ |_|\\__,_|\\__, |\\___|\\__| ', + ' __/ | ', + ' |___/ ', + ' Generator, version: ' + pkg.version, + ' Issues? Please report them at : ' + chalk.cyan(pkg.bugs.url), + '' + ].join('\n'), PACKAGE_READ_ERROR: "Error reading package.json. Please check the file or remove it before you run the generator again. Error: ", DIR_NOT_EMPTY_ERROR: chalk.bold.red(' The directory is not empty and we cannot detect a widget.\n If you are creating a new widget, please open the generator in an empty folder.\n If you want to upgrade a widget, make sure you are using the generator in a widget folder.\n'), diff --git a/package.json b/package.json index c55b568..7a1bc4b 100644 --- a/package.json +++ b/package.json @@ -34,15 +34,15 @@ "extfs": "0.0.7", "semver": "^5.3.0", "xml2js": "^0.4.17", - "yeoman-generator": "^0.24.1" + "yeoman-generator": "1.1.1" }, "devDependencies": { - "fs-extra": "^0.30.0", + "fs-extra": "2.1.2", "lodash": "^4.17.4", - "mocha": "^3.1.0", + "mocha": "^3.2.0", "mock-spawn": "^0.2.6", "string-template": "1.0.0", - "yeoman-assert": "^2.2.3", + "yeoman-assert": "^3.0.0", "yeoman-test": "^1.6.0" } } diff --git a/yarn.lock b/yarn.lock index 87638b8..fbf8c6f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,8 +3,8 @@ abbrev@1: - version "1.0.9" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" + version "1.1.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" acorn-jsx@^3.0.1: version "3.0.1" @@ -25,8 +25,8 @@ ansi-escapes@^1.1.0: resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" ansi-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" ansi-styles@^2.2.1: version "2.2.1" @@ -65,8 +65,8 @@ ast-query@^2.0.0: traverse "^0.6.6" async@^2.0.0: - version "2.1.4" - resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" + version "2.2.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.2.0.tgz#c324eba010a237e4fbd55a12dee86367d5c0ef32" dependencies: lodash "^4.14.0" @@ -158,14 +158,30 @@ cli-width@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" +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@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" +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" + code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" @@ -189,18 +205,18 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" concat-stream@^1.4.7: - version "1.5.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz#708978624d856af41a5a741defdd261da752c266" + version "1.6.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: - inherits "~2.0.1" - readable-stream "~2.0.0" - typedarray "~0.0.5" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" -create-error-class@^3.0.1: +create-error-class@^3.0.0, create-error-class@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" dependencies: @@ -213,6 +229,14 @@ cross-spawn@^4.0.0: lru-cache "^4.0.1" which "^1.2.9" +cross-spawn@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + css-select@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.0.0.tgz#b1121ca51848dd264e2244d058cee254deeb44b0" @@ -238,6 +262,10 @@ dargs@^4.0.0: dependencies: number-is-nan "^1.0.0" +dargs@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-5.1.0.tgz#ec7ea50c78564cd36c9d5ec18f66329fade27829" + dateformat@^1.0.11: version "1.0.12" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" @@ -245,6 +273,10 @@ dateformat@^1.0.11: get-stdin "^4.0.1" meow "^3.3.0" +dateformat@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" + debug@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" @@ -252,8 +284,8 @@ debug@2.2.0: ms "0.7.1" debug@^2.0.0, debug@^2.1.0: - version "2.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.3.tgz#40c453e67e6e13c901ddec317af8986cda9eff8c" + version "2.6.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" dependencies: ms "0.7.2" @@ -324,13 +356,17 @@ duplexer2@^0.1.4: dependencies: readable-stream "^2.0.2" +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + editions@^1.1.1: version "1.3.3" resolved "https://registry.yarnpkg.com/editions/-/editions-1.3.3.tgz#0907101bdda20fac3cbe334c27cbd0688dc99a5b" ejs@^2.3.1: - version "2.5.5" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.5.tgz#6ef4e954ea7dcf54f66aad2fe7aa421932d9ed77" + version "2.5.6" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.6.tgz#479636bfa3fe3b1debd52087f0acb204b4f19c88" entities@1.0: version "1.0.0" @@ -341,8 +377,8 @@ entities@~1.1.1: resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" error-ex@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.0.tgz#e67b43f3e82c96ea3a584ffee0b9fc3325d802d9" + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" dependencies: is-arrayish "^0.2.1" @@ -358,8 +394,8 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" escodegen-wallaby@^1.6.7: - version "1.6.7" - resolved "https://registry.yarnpkg.com/escodegen-wallaby/-/escodegen-wallaby-1.6.7.tgz#59d0e8b6dadad9523b3ef0da6473eb6399a7be4b" + version "1.6.10" + resolved "https://registry.yarnpkg.com/escodegen-wallaby/-/escodegen-wallaby-1.6.10.tgz#abffe3301b20df346229b51cf1e827873aff1e06" dependencies: esprima "^2.7.1" estraverse "^1.9.1" @@ -403,8 +439,8 @@ extfs@0.0.7: underscore ">= 1.4 < 2" fast-levenshtein@~2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.5.tgz#bd33145744519ab1c36c3ee9f31f08e9079b67f2" + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" figures@^1.3.5: version "1.7.0" @@ -420,6 +456,12 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + 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" @@ -432,15 +474,12 @@ formatio@1.1.1: dependencies: samsam "~1.1" -fs-extra@^0.30.0: - version "0.30.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" +fs-extra@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35" dependencies: graceful-fs "^4.1.2" jsonfile "^2.1.0" - klaw "^1.0.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" fs.realpath@^1.0.0: version "1.0.0" @@ -450,6 +489,10 @@ get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + gh-got@^2.2.0: version "2.4.0" resolved "https://registry.yarnpkg.com/gh-got/-/gh-got-2.4.0.tgz#aa51418911ca5e4f92437114cd1209383a4aa019" @@ -458,6 +501,13 @@ gh-got@^2.2.0: object-assign "^4.0.1" pinkie-promise "^2.0.0" +gh-got@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/gh-got/-/gh-got-5.0.0.tgz#ee95be37106fd8748a96f8d1db4baea89e1bfa8a" + dependencies: + got "^6.2.0" + is-plain-obj "^1.1.0" + github-username@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/github-username/-/github-username-2.1.0.tgz#200e5a104af42ba08a54096c708d4b6ec2fa256b" @@ -465,6 +515,12 @@ github-username@^2.0.0: gh-got "^2.2.0" meow "^3.5.0" +github-username@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/github-username/-/github-username-3.0.0.tgz#0a772219b3130743429f2456d0bdd3db55dce7b1" + dependencies: + gh-got "^5.0.0" + glob@7.0.5: version "7.0.5" resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.5.tgz#b4202a69099bbb4d292a7c1b95b6682b67ebdc95" @@ -508,6 +564,16 @@ globby@^4.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + got@^5.2.0: version "5.7.1" resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" @@ -528,7 +594,23 @@ got@^5.2.0: unzip-response "^1.0.2" url-parse-lax "^1.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: +got@^6.2.0: + version "6.7.1" + resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" + dependencies: + create-error-class "^3.0.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + is-redirect "^1.0.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + lowercase-keys "^1.0.0" + safe-buffer "^5.0.1" + timed-out "^4.0.0" + unzip-response "^2.0.1" + url-parse-lax "^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" @@ -564,8 +646,8 @@ has-flag@^1.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" hosted-git-info@^2.1.4: - version "2.1.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" + version "2.4.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.4.1.tgz#4b0445e41c004a8bd1337773a4ff790ca40318c8" html-wiring@^1.0.0: version "1.2.0" @@ -597,7 +679,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.3, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -650,6 +732,10 @@ is-fullwidth-code-point@^1.0.0: dependencies: number-is-nan "^1.0.0" +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" @@ -662,7 +748,7 @@ is-retry-allowed@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" -is-stream@^1.0.0: +is-stream@^1.0.0, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" @@ -678,9 +764,9 @@ isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" -isexe@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" istextorbinary@^2.1.0: version "2.1.0" @@ -700,12 +786,6 @@ jsonfile@^2.1.0: optionalDependencies: graceful-fs "^4.1.6" -klaw@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - optionalDependencies: - graceful-fs "^4.1.9" - levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" @@ -723,6 +803,22 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -770,15 +866,11 @@ lodash.keys@^3.0.0: lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" -lodash@^3.2.0, lodash@^3.6.0: +lodash@^3.2.0: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" -lodash@^4.0.0, lodash@^4.11.1, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.3.0, lodash@^4.6.1: - version "4.17.2" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.2.tgz#34a3055babe04ce42467b607d700072c7ff6bf42" - -lodash@^4.17.4: +lodash@^4.0.0, lodash@^4.11.1, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.4, lodash@^4.3.0, lodash@^4.6.1: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -829,6 +921,21 @@ mem-fs-editor@^2.0.0: through2 "^2.0.0" vinyl "^1.1.0" +mem-fs-editor@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mem-fs-editor/-/mem-fs-editor-3.0.2.tgz#dd0a6eaf2bb8a6b37740067aa549eb530105af9f" + dependencies: + commondir "^1.0.1" + deep-extend "^0.4.0" + ejs "^2.3.1" + glob "^7.0.3" + globby "^6.1.0" + mkdirp "^0.5.0" + multimatch "^2.0.0" + rimraf "^2.2.8" + through2 "^2.0.0" + vinyl "^2.0.1" + mem-fs@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/mem-fs/-/mem-fs-1.1.3.tgz#b8ae8d2e3fcb6f5d3f9165c12d4551a065d989cc" @@ -862,7 +969,7 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^1.1.0, minimist@^1.1.3: +minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -872,7 +979,7 @@ mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: dependencies: minimist "0.0.8" -mocha@^3.1.0: +mocha@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.2.0.tgz#7dc4f45e5088075171a68896814e6ae9eb7a85e3" dependencies: @@ -926,8 +1033,8 @@ nopt@^3.0.0: abbrev "1" normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.3.5" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.5.tgz#8d924f142960e1777e7ffe170543631cc7cb02df" + version "2.3.6" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff" dependencies: hosted-git-info "^2.1.4" is-builtin-module "^1.0.0" @@ -949,8 +1056,8 @@ object-assign@^2.0.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" object-assign@^4.0.1, object-assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" once@^1.3.0: version "1.4.0" @@ -985,22 +1092,40 @@ os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" +p-limit@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + parse-json@^2.1.0, parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" dependencies: error-ex "^1.2.0" -path-exists@^2.0.0, path-exists@^2.1.0: +path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" dependencies: pinkie-promise "^2.0.0" +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: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" @@ -1009,6 +1134,12 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + dependencies: + pify "^2.0.0" + pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -1037,7 +1168,11 @@ pretty-bytes@^3.0.1: dependencies: number-is-nan "^1.0.0" -process-nextick-args@~1.0.6: +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: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" @@ -1056,6 +1191,12 @@ read-chunk@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/read-chunk/-/read-chunk-1.0.1.tgz#5f68cab307e663f19993527d9b589cace4661194" +read-chunk@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-chunk/-/read-chunk-2.0.0.tgz#3246e877829116cec059674c4d5f300f7a9261f3" + dependencies: + pify "^2.3.0" + read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -1063,6 +1204,13 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" @@ -1071,6 +1219,14 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + readable-stream@1.1: version "1.1.13" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" @@ -1080,9 +1236,9 @@ readable-stream@1.1: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5: - version "2.2.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" +readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2: + version "2.2.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.6.tgz#8b43aed76e71483938d12a8d46c6cf1a00b1f816" dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" @@ -1092,17 +1248,6 @@ readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable string_decoder "~0.10.x" util-deprecate "~1.0.1" -readable-stream@~2.0.0: - version "2.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -1116,6 +1261,10 @@ redent@^1.0.0: indent-string "^2.1.0" strip-indent "^1.0.1" +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" + repeating@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" @@ -1126,9 +1275,15 @@ replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" +replace-ext@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + resolve@^1.1.6: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + version "1.3.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235" + dependencies: + path-parse "^1.0.5" restore-cursor@^1.0.1: version "1.0.1" @@ -1138,8 +1293,8 @@ restore-cursor@^1.0.1: onetime "^1.0.0" rimraf@^2.2.0, rimraf@^2.2.8, rimraf@^2.4.4: - version "2.5.4" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" + version "2.6.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: glob "^7.0.5" @@ -1153,21 +1308,35 @@ rx@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" +safe-buffer@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" + samsam@1.1.2, samsam@~1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.1.2.tgz#bec11fdc83a9fda063401210e40176c3024d1567" sax@>=0.6.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" + version "1.2.2" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" "semver@2 || 3 || 4 || 5", semver@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + shelljs@^0.7.0: - version "0.7.5" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.5.tgz#2eef7a50a21e1ccf37da00df767ec69e30ad0675" + version "0.7.7" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.7.tgz#b2f5c77ef97148f4b4f6e22682e10bba8667cff1" dependencies: glob "^7.0.0" interpret "^1.0.0" @@ -1178,8 +1347,8 @@ signal-exit@^3.0.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" sinon@^1.17.2: - version "1.17.6" - resolved "https://registry.yarnpkg.com/sinon/-/sinon-1.17.6.tgz#a43116db59577c8296356afee13fafc2332e58e1" + version "1.17.7" + resolved "https://registry.yarnpkg.com/sinon/-/sinon-1.17.7.tgz#4542a4f49ba0c45c05eb2e9dd9d203e2b8efe0bf" dependencies: formatio "1.1.1" lolex "1.3.2" @@ -1256,6 +1425,10 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + strip-indent@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" @@ -1280,7 +1453,7 @@ text-table@^0.2.0: version "2.0.1" resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.0.1.tgz#be8cf22d65379c151319f88f0335ad8f667abdca" -through2@^2.0.0: +through2@^2.0.0, through2@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: @@ -1292,8 +1465,12 @@ through@2.3.x, through@^2.3.6: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" timed-out@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.0.0.tgz#ff88de96030ce960eabd42487db61d3add229273" + version "3.1.3" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" + +timed-out@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" tmp@^0.0.29: version "0.0.29" @@ -1315,7 +1492,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -typedarray@~0.0.5: +typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -1340,6 +1517,10 @@ unzip-response@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" +unzip-response@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" + url-parse-lax@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" @@ -1388,11 +1569,23 @@ vinyl@^1.1.0: clone-stats "^0.0.1" replace-ext "0.0.1" +vinyl@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.0.1.tgz#1c3b4931e7ac4c1efee743f3b91a74c094407bb6" + 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" + which@^1.2.9: - version "1.2.12" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.12.tgz#de67b5e450269f194909ef23ece4ebe416fa1192" + version "1.2.14" + resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" dependencies: - isexe "^1.1.1" + isexe "^2.0.0" wordwrap@~1.0.0: version "1.0.0" @@ -1420,20 +1613,17 @@ xtend@~4.0.0, xtend@~4.0.1: resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" yallist@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.0.0.tgz#306c543835f09ee1a4cb23b7bce9ab341c91cdd4" + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" yeoman-assert@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/yeoman-assert/-/yeoman-assert-2.2.1.tgz#524bff6b2a83d344a7a24ea825c5eb16504396f5" - dependencies: - lodash "^3.6.0" - path-exists "^2.1.0" - -yeoman-assert@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/yeoman-assert/-/yeoman-assert-2.2.3.tgz#a5682a83632c50ac0ee84173a5a10fd6f3206474" +yeoman-assert@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/yeoman-assert/-/yeoman-assert-3.0.0.tgz#8e52eb657d3f42d90703f94918091aba1cfc263c" + yeoman-environment@^1.1.0, yeoman-environment@^1.5.2: version "1.6.6" resolved "https://registry.yarnpkg.com/yeoman-environment/-/yeoman-environment-1.6.6.tgz#cd85fa67d156060e440d7807d7ef7cf0d2d1d671" @@ -1451,6 +1641,41 @@ yeoman-environment@^1.1.0, yeoman-environment@^1.5.2: text-table "^0.2.0" untildify "^2.0.0" +yeoman-generator@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-1.1.1.tgz#40c2b4f6cdfbe05e1952fdd72933f0d8925dbdf5" + dependencies: + async "^2.0.0" + chalk "^1.0.0" + class-extend "^0.1.0" + cli-table "^0.3.1" + cross-spawn "^5.0.1" + dargs "^5.1.0" + dateformat "^2.0.0" + debug "^2.1.0" + detect-conflict "^1.0.0" + error "^7.0.2" + find-up "^2.1.0" + github-username "^3.0.0" + glob "^7.0.3" + istextorbinary "^2.1.0" + lodash "^4.11.1" + mem-fs-editor "^3.0.0" + minimist "^1.2.0" + mkdirp "^0.5.0" + path-exists "^3.0.0" + path-is-absolute "^1.0.0" + pretty-bytes "^4.0.2" + read-chunk "^2.0.0" + read-pkg-up "^2.0.0" + rimraf "^2.2.0" + run-async "^2.0.0" + shelljs "^0.7.0" + text-table "^0.2.0" + through2 "^2.0.0" + user-home "^2.0.0" + yeoman-environment "^1.1.0" + yeoman-generator@^0.24.1: version "0.24.1" resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-0.24.1.tgz#1ca74429d9c5c95db0b22859ec180a2599bc1f8e"