├── .eslintrc ├── .gitignore ├── .nvmrc ├── .travis.yml ├── README.md ├── gulp-tasks └── default.js ├── index.js ├── package-lock.json ├── package.json └── test ├── coffeeScript └── coffee.coffee ├── filterOutFiles ├── .jshintrc └── task.js ├── includeRequireExtensions ├── task.js └── task2.jscript ├── noDeps └── noDeps.js ├── passingGulpAndOptionsToTasks └── test.js ├── subtasks └── annotate │ ├── add.js │ ├── docs │ └── comment.js │ └── remove.js ├── test.js └── withDeps └── withDeps.js /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "eslint:recommended", 3 | "env": { 4 | "node": true, 5 | "mocha": true 6 | }, 7 | 8 | "rules": { 9 | "quotes": [2, "single"], 10 | "yoda": [1, "always"], 11 | "no-irregular-whitespace": 1, 12 | "strict": [2, "global"], 13 | "no-console": 1 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | tmp 3 | 4 | npm-* 5 | .DS_Store 6 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 9 2 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | sudo: false 3 | node_js: 4 | - "9" 5 | - "8" 6 | - "7" 7 | - "6" 8 | - "5" 9 | - "4" 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Gulp Task Loader 2 | ================ 3 | 4 | > Organize your gulp-tasks in separate files 5 | 6 | [![Dependency Status](https://david-dm.org/hontas/gulp-task-loader.svg)](https://david-dm.org/hontas/gulp-task-loader) 7 | [![DevDependency Status](https://david-dm.org/hontas/gulp-task-loader/dev-status.svg)](https://david-dm.org/hontas/gulp-task-loader#info=devDependencies) 8 | [![PeerDependency Status](https://david-dm.org/hontas/gulp-task-loader/peer-status.svg)](https://david-dm.org/hontas/gulp-task-loader#info=peerDependencies) 9 | [![Build Status](https://travis-ci.org/hontas/gulp-task-loader.svg?branch=master)](https://travis-ci.org/hontas/gulp-task-loader) 10 | 11 | ## Not actively maintained 12 | Because I rarely use gulp these days. Wanna take over? Tell me. 13 | 14 | # Install 15 | 16 | ```shell 17 | npm install gulp-task-loader --save-dev 18 | ``` 19 | 20 | # Use 21 | 22 | 1. Create one file / task 23 | 2. Place the task-files in a folder named 'gulp-tasks' (or whatever you like) 24 | 3. Require this module and invoke it [with or without options] 25 | 4. Gulp-tasks now magically exist (named after task file name) 26 | 27 | You may create subfolders of tasks as well. Tasks in these folders will have their task name prefixed by the folder name. For example, if you have a task named `coffee` that compiles CoffeeScript files, you could place this task in the `gulp-tasks/browser` folder and it would be invoked using `gulp browser:coffee`. You may nest folders as deep as required, and each folder will be added to the task name. 28 | 29 | ## Examples 30 | 31 | ### Simple task file 32 | ```js 33 | // gulp-tasks/copy.js 34 | module.exports = function() { 35 | return gulp.src("src/**/*") 36 | .pipe(gulp.dest("dist/**/*")); 37 | }; 38 | ``` 39 | 40 | ```js 41 | // gulpfile.js 42 | // Load all tasks from folder `gulp-tasks` 43 | require('gulp-task-loader')(); 44 | 45 | // use it! 46 | gulp.watch(someFiles, ['copy']); 47 | ``` 48 | 49 | ### With dependencies 50 | ```js 51 | // gulp-tasks/task-with-deps.js 52 | module.exports = function() { 53 | return gulp.src("src/**/*") 54 | .pipe(gulp.dest("dist/**/*")); 55 | }; 56 | module.exports.dependencies = ['copy']; 57 | ``` 58 | 59 | ### Load tasks from another folder 60 | ```js 61 | require('gulp-task-loader')('le-tasks-de-gulp'); 62 | ``` 63 | 64 | ### Load tasks in CoffeeScript 65 | ```js 66 | require('coffee-script/register'); 67 | require('gulp-task-loader')({ exts: ['.coffee'] }); 68 | ``` 69 | 70 | ### Load tasks in other extensions 71 | ```js 72 | require('gulp-task-loader')({ exts: ['.jscript'] }); 73 | ``` 74 | 75 | ### Task context 76 | 77 | Each task is called with a context object containing a reference to `gulp` and `opts` (the options object). 78 | ```js 79 | // gulpfile.js 80 | var pkg = require('./package.json'); 81 | require('gulp-task-loader')({ pkg: pkg, dest: 'dist' }); 82 | 83 | // gulp-tasks/xxx.js 84 | module.exports = function() { 85 | return this.gulp.src(this.opts.pkg.main) 86 | .pipe(this.gulp.dest(this.opts.dest)); 87 | }; 88 | ``` 89 | 90 | ### Subtasks 91 | 92 | ```js 93 | // gulp-tasks/copy/all.js 94 | // gulp-tasks/copy/fonts.js 95 | 96 | // gulpfile.js 97 | gulp.watch(allFiles, ['copy:all']); 98 | gulp.watch(someFiles, ['copy:fonts']); 99 | ``` 100 | 101 | Given the files in folder *copy* - two tasks have been created. `copy:all` & `copy:fonts` 102 | 103 | ## Options 104 | 105 | ### dir 106 | Type `String` Default `gulp-tasks` 107 | 108 | Path to folder with gulp tasks 109 | 110 | ### extensions 111 | Type `Array` Default to keys of `require.extensions` 112 | 113 | List of extensions to filter tasks by. Example: `['.js', '.coffee']` 114 | 115 | ## Test 116 | 117 | ```sh 118 | npm test 119 | ``` 120 | 121 | ## Changelog 122 | 123 | ### 1.4.4 124 | * Bugfix for options.dir 125 | 126 | ### 1.4.1 127 | * Fixed bug that caused subtasks to break 128 | 129 | #### 1.4.0 130 | * Allow loading of infinitely nested children directories 131 | 132 | #### 1.3.0 133 | * Replaced lodash.defaults with object-assign 134 | * Call tasks with context. Thanks to [@mamboer](https://github.com/mamboer) 135 | 136 | #### 1.2.1 137 | * Load tasks relative to project. Thanks to [@archr](https://github.com/archr) 138 | 139 | #### 1.2.0 140 | 141 | * tasks in subfolder will be named `folderName:taskName`. Thanks to [@evanshortiss](https://github.com/evanshortiss). 142 | 143 | #### 1.1.0 144 | 145 | * added support for other sources than .js. Thanks to [@blvz](https://github.com/blvz). 146 | 147 | #### pre 1.1.0 148 | 149 | * the dark ages of not documenting version bumps.. 150 | -------------------------------------------------------------------------------- /gulp-tasks/default.js: -------------------------------------------------------------------------------- 1 | /* for testing purposes only */ 2 | 'use strict'; 3 | module.exports = function() { 4 | return 'default'; 5 | }; 6 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var fs = require('fs'); 3 | var path = require('path'); 4 | var gulp = require('gulp'); 5 | var assign = require('object-assign'); 6 | 7 | function isString(str) { 8 | return 'string' === typeof str; 9 | } 10 | 11 | function getExtensions() { 12 | return Object.keys(require.extensions); 13 | } 14 | 15 | function getDefaults() { 16 | return { 17 | dir: 'gulp-tasks', 18 | exts: getExtensions() || ['.js'] 19 | }; 20 | } 21 | 22 | function cleanDir(options) { 23 | if (!options.dir) return; 24 | options.dir = options.dir 25 | .replace(/^\.\//, '') 26 | .replace(/\/$/, ''); 27 | } 28 | 29 | module.exports = function(options) { 30 | if (isString(options)) { 31 | options = { dir: options }; 32 | } 33 | 34 | if (options) { 35 | cleanDir(options); 36 | } 37 | 38 | var opts = assign(getDefaults(), options); 39 | 40 | function byExtension(fileName) { 41 | var extension = path.extname(fileName); 42 | return ~opts.exts.indexOf(extension); 43 | } 44 | 45 | function stripExtension(fileName) { 46 | var extension = path.extname(fileName); 47 | return path.basename(fileName, extension); 48 | } 49 | 50 | function loadTask(parents, task) { 51 | var modulePath = path.join(process.cwd(), opts.dir, parents.join(path.sep) || '', task); 52 | var func = require(modulePath); 53 | var dependencies = func.dependencies || []; 54 | var taskName = stripExtension(task); 55 | var context = { 56 | gulp: gulp, 57 | opts: opts 58 | }; 59 | 60 | // If subtask -> namespace: "parent:child" 61 | if (parents.length) { 62 | taskName = parents.join(':') + ':' + taskName; 63 | } 64 | 65 | gulp.task(taskName, dependencies, func.bind(context)); 66 | } 67 | 68 | function loadTasks(currentPath) { 69 | var file = path.basename(currentPath); 70 | var stats = fs.lstatSync(currentPath); 71 | 72 | if (stats.isFile() && byExtension(file)) { 73 | var pathWithoutBaseDir = currentPath.replace(path.normalize(opts.dir), '').substr(1); 74 | var pathSegmentsCount = pathWithoutBaseDir.split(path.sep).length; 75 | loadTask(pathWithoutBaseDir.split(path.sep).slice(0, pathSegmentsCount - 1), file); 76 | } 77 | else if (stats.isDirectory()) { 78 | fs.readdirSync(currentPath) 79 | .forEach(function(subPath){ 80 | loadTasks(path.join(currentPath, subPath)); 81 | }); 82 | } 83 | } 84 | 85 | loadTasks(opts.dir); 86 | }; 87 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gulp-task-loader", 3 | "version": "1.5.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "acorn": { 8 | "version": "5.5.3", 9 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", 10 | "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==", 11 | "dev": true 12 | }, 13 | "acorn-jsx": { 14 | "version": "3.0.1", 15 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", 16 | "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", 17 | "dev": true, 18 | "requires": { 19 | "acorn": "3.3.0" 20 | }, 21 | "dependencies": { 22 | "acorn": { 23 | "version": "3.3.0", 24 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", 25 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", 26 | "dev": true 27 | } 28 | } 29 | }, 30 | "ajv": { 31 | "version": "5.5.2", 32 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", 33 | "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", 34 | "dev": true, 35 | "requires": { 36 | "co": "4.6.0", 37 | "fast-deep-equal": "1.1.0", 38 | "fast-json-stable-stringify": "2.0.0", 39 | "json-schema-traverse": "0.3.1" 40 | } 41 | }, 42 | "ajv-keywords": { 43 | "version": "2.1.1", 44 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", 45 | "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", 46 | "dev": true 47 | }, 48 | "ansi-escapes": { 49 | "version": "3.1.0", 50 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", 51 | "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", 52 | "dev": true 53 | }, 54 | "ansi-gray": { 55 | "version": "0.1.1", 56 | "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", 57 | "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", 58 | "dev": true, 59 | "requires": { 60 | "ansi-wrap": "0.1.0" 61 | } 62 | }, 63 | "ansi-regex": { 64 | "version": "2.1.1", 65 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 66 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 67 | "dev": true 68 | }, 69 | "ansi-styles": { 70 | "version": "2.2.1", 71 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 72 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 73 | "dev": true 74 | }, 75 | "ansi-wrap": { 76 | "version": "0.1.0", 77 | "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", 78 | "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", 79 | "dev": true 80 | }, 81 | "archy": { 82 | "version": "1.0.0", 83 | "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", 84 | "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", 85 | "dev": true 86 | }, 87 | "argparse": { 88 | "version": "1.0.10", 89 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 90 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 91 | "dev": true, 92 | "requires": { 93 | "sprintf-js": "1.0.3" 94 | } 95 | }, 96 | "arr-diff": { 97 | "version": "4.0.0", 98 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 99 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 100 | "dev": true 101 | }, 102 | "arr-flatten": { 103 | "version": "1.1.0", 104 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 105 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 106 | "dev": true 107 | }, 108 | "arr-union": { 109 | "version": "3.1.0", 110 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 111 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 112 | "dev": true 113 | }, 114 | "array-differ": { 115 | "version": "1.0.0", 116 | "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", 117 | "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", 118 | "dev": true 119 | }, 120 | "array-each": { 121 | "version": "1.0.1", 122 | "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", 123 | "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", 124 | "dev": true 125 | }, 126 | "array-slice": { 127 | "version": "1.1.0", 128 | "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", 129 | "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", 130 | "dev": true 131 | }, 132 | "array-union": { 133 | "version": "1.0.2", 134 | "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 135 | "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", 136 | "dev": true, 137 | "requires": { 138 | "array-uniq": "1.0.3" 139 | } 140 | }, 141 | "array-uniq": { 142 | "version": "1.0.3", 143 | "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", 144 | "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", 145 | "dev": true 146 | }, 147 | "array-unique": { 148 | "version": "0.3.2", 149 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 150 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 151 | "dev": true 152 | }, 153 | "arrify": { 154 | "version": "1.0.1", 155 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 156 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", 157 | "dev": true 158 | }, 159 | "assertion-error": { 160 | "version": "1.1.0", 161 | "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", 162 | "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", 163 | "dev": true 164 | }, 165 | "assign-symbols": { 166 | "version": "1.0.0", 167 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 168 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 169 | "dev": true 170 | }, 171 | "atob": { 172 | "version": "2.1.1", 173 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", 174 | "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", 175 | "dev": true 176 | }, 177 | "babel-code-frame": { 178 | "version": "6.26.0", 179 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 180 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 181 | "dev": true, 182 | "requires": { 183 | "chalk": "1.1.3", 184 | "esutils": "2.0.2", 185 | "js-tokens": "3.0.2" 186 | } 187 | }, 188 | "balanced-match": { 189 | "version": "1.0.0", 190 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 191 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 192 | "dev": true 193 | }, 194 | "base": { 195 | "version": "0.11.2", 196 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 197 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 198 | "dev": true, 199 | "requires": { 200 | "cache-base": "1.0.1", 201 | "class-utils": "0.3.6", 202 | "component-emitter": "1.2.1", 203 | "define-property": "1.0.0", 204 | "isobject": "3.0.1", 205 | "mixin-deep": "1.3.1", 206 | "pascalcase": "0.1.1" 207 | }, 208 | "dependencies": { 209 | "define-property": { 210 | "version": "1.0.0", 211 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 212 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 213 | "dev": true, 214 | "requires": { 215 | "is-descriptor": "1.0.2" 216 | } 217 | }, 218 | "is-accessor-descriptor": { 219 | "version": "1.0.0", 220 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 221 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 222 | "dev": true, 223 | "requires": { 224 | "kind-of": "6.0.2" 225 | } 226 | }, 227 | "is-data-descriptor": { 228 | "version": "1.0.0", 229 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 230 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 231 | "dev": true, 232 | "requires": { 233 | "kind-of": "6.0.2" 234 | } 235 | }, 236 | "is-descriptor": { 237 | "version": "1.0.2", 238 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 239 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 240 | "dev": true, 241 | "requires": { 242 | "is-accessor-descriptor": "1.0.0", 243 | "is-data-descriptor": "1.0.0", 244 | "kind-of": "6.0.2" 245 | } 246 | } 247 | } 248 | }, 249 | "beeper": { 250 | "version": "1.1.1", 251 | "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", 252 | "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=", 253 | "dev": true 254 | }, 255 | "brace-expansion": { 256 | "version": "1.1.11", 257 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 258 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 259 | "dev": true, 260 | "requires": { 261 | "balanced-match": "1.0.0", 262 | "concat-map": "0.0.1" 263 | } 264 | }, 265 | "braces": { 266 | "version": "2.3.2", 267 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 268 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 269 | "dev": true, 270 | "requires": { 271 | "arr-flatten": "1.1.0", 272 | "array-unique": "0.3.2", 273 | "extend-shallow": "2.0.1", 274 | "fill-range": "4.0.0", 275 | "isobject": "3.0.1", 276 | "repeat-element": "1.1.2", 277 | "snapdragon": "0.8.2", 278 | "snapdragon-node": "2.1.1", 279 | "split-string": "3.1.0", 280 | "to-regex": "3.0.2" 281 | }, 282 | "dependencies": { 283 | "extend-shallow": { 284 | "version": "2.0.1", 285 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 286 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 287 | "dev": true, 288 | "requires": { 289 | "is-extendable": "0.1.1" 290 | } 291 | } 292 | } 293 | }, 294 | "browser-stdout": { 295 | "version": "1.3.1", 296 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", 297 | "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", 298 | "dev": true 299 | }, 300 | "buffer-from": { 301 | "version": "1.0.0", 302 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", 303 | "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==", 304 | "dev": true 305 | }, 306 | "cache-base": { 307 | "version": "1.0.1", 308 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 309 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 310 | "dev": true, 311 | "requires": { 312 | "collection-visit": "1.0.0", 313 | "component-emitter": "1.2.1", 314 | "get-value": "2.0.6", 315 | "has-value": "1.0.0", 316 | "isobject": "3.0.1", 317 | "set-value": "2.0.0", 318 | "to-object-path": "0.3.0", 319 | "union-value": "1.0.0", 320 | "unset-value": "1.0.0" 321 | } 322 | }, 323 | "caller-path": { 324 | "version": "0.1.0", 325 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", 326 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", 327 | "dev": true, 328 | "requires": { 329 | "callsites": "0.2.0" 330 | } 331 | }, 332 | "callsites": { 333 | "version": "0.2.0", 334 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", 335 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", 336 | "dev": true 337 | }, 338 | "chai": { 339 | "version": "4.1.2", 340 | "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", 341 | "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=", 342 | "dev": true, 343 | "requires": { 344 | "assertion-error": "1.1.0", 345 | "check-error": "1.0.2", 346 | "deep-eql": "3.0.1", 347 | "get-func-name": "2.0.0", 348 | "pathval": "1.1.0", 349 | "type-detect": "4.0.8" 350 | } 351 | }, 352 | "chalk": { 353 | "version": "1.1.3", 354 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 355 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 356 | "dev": true, 357 | "requires": { 358 | "ansi-styles": "2.2.1", 359 | "escape-string-regexp": "1.0.5", 360 | "has-ansi": "2.0.0", 361 | "strip-ansi": "3.0.1", 362 | "supports-color": "2.0.0" 363 | } 364 | }, 365 | "chardet": { 366 | "version": "0.4.2", 367 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", 368 | "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", 369 | "dev": true 370 | }, 371 | "check-error": { 372 | "version": "1.0.2", 373 | "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", 374 | "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", 375 | "dev": true 376 | }, 377 | "circular-json": { 378 | "version": "0.3.3", 379 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", 380 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", 381 | "dev": true 382 | }, 383 | "class-utils": { 384 | "version": "0.3.6", 385 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 386 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 387 | "dev": true, 388 | "requires": { 389 | "arr-union": "3.1.0", 390 | "define-property": "0.2.5", 391 | "isobject": "3.0.1", 392 | "static-extend": "0.1.2" 393 | }, 394 | "dependencies": { 395 | "define-property": { 396 | "version": "0.2.5", 397 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 398 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 399 | "dev": true, 400 | "requires": { 401 | "is-descriptor": "0.1.6" 402 | } 403 | } 404 | } 405 | }, 406 | "cli-cursor": { 407 | "version": "2.1.0", 408 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", 409 | "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", 410 | "dev": true, 411 | "requires": { 412 | "restore-cursor": "2.0.0" 413 | } 414 | }, 415 | "cli-width": { 416 | "version": "2.2.0", 417 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", 418 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", 419 | "dev": true 420 | }, 421 | "clone": { 422 | "version": "1.0.4", 423 | "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", 424 | "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", 425 | "dev": true 426 | }, 427 | "clone-stats": { 428 | "version": "0.0.1", 429 | "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", 430 | "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", 431 | "dev": true 432 | }, 433 | "co": { 434 | "version": "4.6.0", 435 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 436 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 437 | "dev": true 438 | }, 439 | "coffee-script": { 440 | "version": "1.12.7", 441 | "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz", 442 | "integrity": "sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==", 443 | "dev": true 444 | }, 445 | "collection-visit": { 446 | "version": "1.0.0", 447 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 448 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 449 | "dev": true, 450 | "requires": { 451 | "map-visit": "1.0.0", 452 | "object-visit": "1.0.1" 453 | } 454 | }, 455 | "color-convert": { 456 | "version": "1.9.1", 457 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", 458 | "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", 459 | "dev": true, 460 | "requires": { 461 | "color-name": "1.1.3" 462 | } 463 | }, 464 | "color-name": { 465 | "version": "1.1.3", 466 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 467 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 468 | "dev": true 469 | }, 470 | "color-support": { 471 | "version": "1.1.3", 472 | "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", 473 | "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", 474 | "dev": true 475 | }, 476 | "commander": { 477 | "version": "2.11.0", 478 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", 479 | "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", 480 | "dev": true 481 | }, 482 | "component-emitter": { 483 | "version": "1.2.1", 484 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", 485 | "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", 486 | "dev": true 487 | }, 488 | "concat-map": { 489 | "version": "0.0.1", 490 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 491 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 492 | "dev": true 493 | }, 494 | "concat-stream": { 495 | "version": "1.6.2", 496 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", 497 | "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", 498 | "dev": true, 499 | "requires": { 500 | "buffer-from": "1.0.0", 501 | "inherits": "2.0.3", 502 | "readable-stream": "2.3.6", 503 | "typedarray": "0.0.6" 504 | } 505 | }, 506 | "copy-descriptor": { 507 | "version": "0.1.1", 508 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 509 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 510 | "dev": true 511 | }, 512 | "core-util-is": { 513 | "version": "1.0.2", 514 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 515 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 516 | "dev": true 517 | }, 518 | "cross-spawn": { 519 | "version": "5.1.0", 520 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", 521 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", 522 | "dev": true, 523 | "requires": { 524 | "lru-cache": "4.1.3", 525 | "shebang-command": "1.2.0", 526 | "which": "1.3.0" 527 | }, 528 | "dependencies": { 529 | "lru-cache": { 530 | "version": "4.1.3", 531 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", 532 | "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", 533 | "dev": true, 534 | "requires": { 535 | "pseudomap": "1.0.2", 536 | "yallist": "2.1.2" 537 | } 538 | } 539 | } 540 | }, 541 | "dateformat": { 542 | "version": "2.2.0", 543 | "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", 544 | "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=", 545 | "dev": true 546 | }, 547 | "debug": { 548 | "version": "2.6.9", 549 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 550 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 551 | "dev": true, 552 | "requires": { 553 | "ms": "2.0.0" 554 | } 555 | }, 556 | "decode-uri-component": { 557 | "version": "0.2.0", 558 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 559 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 560 | "dev": true 561 | }, 562 | "deep-eql": { 563 | "version": "3.0.1", 564 | "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", 565 | "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", 566 | "dev": true, 567 | "requires": { 568 | "type-detect": "4.0.8" 569 | } 570 | }, 571 | "deep-is": { 572 | "version": "0.1.3", 573 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 574 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 575 | "dev": true 576 | }, 577 | "defaults": { 578 | "version": "1.0.3", 579 | "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", 580 | "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", 581 | "dev": true, 582 | "requires": { 583 | "clone": "1.0.4" 584 | } 585 | }, 586 | "define-property": { 587 | "version": "2.0.2", 588 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 589 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 590 | "dev": true, 591 | "requires": { 592 | "is-descriptor": "1.0.2", 593 | "isobject": "3.0.1" 594 | }, 595 | "dependencies": { 596 | "is-accessor-descriptor": { 597 | "version": "1.0.0", 598 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 599 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 600 | "dev": true, 601 | "requires": { 602 | "kind-of": "6.0.2" 603 | } 604 | }, 605 | "is-data-descriptor": { 606 | "version": "1.0.0", 607 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 608 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 609 | "dev": true, 610 | "requires": { 611 | "kind-of": "6.0.2" 612 | } 613 | }, 614 | "is-descriptor": { 615 | "version": "1.0.2", 616 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 617 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 618 | "dev": true, 619 | "requires": { 620 | "is-accessor-descriptor": "1.0.0", 621 | "is-data-descriptor": "1.0.0", 622 | "kind-of": "6.0.2" 623 | } 624 | } 625 | } 626 | }, 627 | "del": { 628 | "version": "2.2.2", 629 | "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", 630 | "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", 631 | "dev": true, 632 | "requires": { 633 | "globby": "5.0.0", 634 | "is-path-cwd": "1.0.0", 635 | "is-path-in-cwd": "1.0.1", 636 | "object-assign": "4.1.1", 637 | "pify": "2.3.0", 638 | "pinkie-promise": "2.0.1", 639 | "rimraf": "2.6.2" 640 | } 641 | }, 642 | "deprecated": { 643 | "version": "0.0.1", 644 | "resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", 645 | "integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=", 646 | "dev": true 647 | }, 648 | "detect-file": { 649 | "version": "1.0.0", 650 | "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", 651 | "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", 652 | "dev": true 653 | }, 654 | "diff": { 655 | "version": "3.5.0", 656 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", 657 | "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", 658 | "dev": true 659 | }, 660 | "doctrine": { 661 | "version": "2.1.0", 662 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 663 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 664 | "dev": true, 665 | "requires": { 666 | "esutils": "2.0.2" 667 | } 668 | }, 669 | "duplexer2": { 670 | "version": "0.0.2", 671 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", 672 | "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", 673 | "dev": true, 674 | "requires": { 675 | "readable-stream": "1.1.14" 676 | }, 677 | "dependencies": { 678 | "isarray": { 679 | "version": "0.0.1", 680 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 681 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 682 | "dev": true 683 | }, 684 | "readable-stream": { 685 | "version": "1.1.14", 686 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", 687 | "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", 688 | "dev": true, 689 | "requires": { 690 | "core-util-is": "1.0.2", 691 | "inherits": "2.0.3", 692 | "isarray": "0.0.1", 693 | "string_decoder": "0.10.31" 694 | } 695 | }, 696 | "string_decoder": { 697 | "version": "0.10.31", 698 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 699 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 700 | "dev": true 701 | } 702 | } 703 | }, 704 | "end-of-stream": { 705 | "version": "0.1.5", 706 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", 707 | "integrity": "sha1-jhdyBsPICDfYVjLouTWd/osvbq8=", 708 | "dev": true, 709 | "requires": { 710 | "once": "1.3.3" 711 | }, 712 | "dependencies": { 713 | "once": { 714 | "version": "1.3.3", 715 | "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", 716 | "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", 717 | "dev": true, 718 | "requires": { 719 | "wrappy": "1.0.2" 720 | } 721 | } 722 | } 723 | }, 724 | "escape-string-regexp": { 725 | "version": "1.0.5", 726 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 727 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 728 | "dev": true 729 | }, 730 | "eslint": { 731 | "version": "4.19.1", 732 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", 733 | "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", 734 | "dev": true, 735 | "requires": { 736 | "ajv": "5.5.2", 737 | "babel-code-frame": "6.26.0", 738 | "chalk": "2.4.1", 739 | "concat-stream": "1.6.2", 740 | "cross-spawn": "5.1.0", 741 | "debug": "3.1.0", 742 | "doctrine": "2.1.0", 743 | "eslint-scope": "3.7.1", 744 | "eslint-visitor-keys": "1.0.0", 745 | "espree": "3.5.4", 746 | "esquery": "1.0.1", 747 | "esutils": "2.0.2", 748 | "file-entry-cache": "2.0.0", 749 | "functional-red-black-tree": "1.0.1", 750 | "glob": "7.1.2", 751 | "globals": "11.5.0", 752 | "ignore": "3.3.8", 753 | "imurmurhash": "0.1.4", 754 | "inquirer": "3.3.0", 755 | "is-resolvable": "1.1.0", 756 | "js-yaml": "3.11.0", 757 | "json-stable-stringify-without-jsonify": "1.0.1", 758 | "levn": "0.3.0", 759 | "lodash": "4.17.10", 760 | "minimatch": "3.0.4", 761 | "mkdirp": "0.5.1", 762 | "natural-compare": "1.4.0", 763 | "optionator": "0.8.2", 764 | "path-is-inside": "1.0.2", 765 | "pluralize": "7.0.0", 766 | "progress": "2.0.0", 767 | "regexpp": "1.1.0", 768 | "require-uncached": "1.0.3", 769 | "semver": "5.5.0", 770 | "strip-ansi": "4.0.0", 771 | "strip-json-comments": "2.0.1", 772 | "table": "4.0.2", 773 | "text-table": "0.2.0" 774 | }, 775 | "dependencies": { 776 | "ansi-regex": { 777 | "version": "3.0.0", 778 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 779 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 780 | "dev": true 781 | }, 782 | "ansi-styles": { 783 | "version": "3.2.1", 784 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 785 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 786 | "dev": true, 787 | "requires": { 788 | "color-convert": "1.9.1" 789 | } 790 | }, 791 | "chalk": { 792 | "version": "2.4.1", 793 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", 794 | "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", 795 | "dev": true, 796 | "requires": { 797 | "ansi-styles": "3.2.1", 798 | "escape-string-regexp": "1.0.5", 799 | "supports-color": "5.4.0" 800 | } 801 | }, 802 | "debug": { 803 | "version": "3.1.0", 804 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 805 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 806 | "dev": true, 807 | "requires": { 808 | "ms": "2.0.0" 809 | } 810 | }, 811 | "semver": { 812 | "version": "5.5.0", 813 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", 814 | "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", 815 | "dev": true 816 | }, 817 | "strip-ansi": { 818 | "version": "4.0.0", 819 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 820 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 821 | "dev": true, 822 | "requires": { 823 | "ansi-regex": "3.0.0" 824 | } 825 | }, 826 | "supports-color": { 827 | "version": "5.4.0", 828 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", 829 | "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", 830 | "dev": true, 831 | "requires": { 832 | "has-flag": "3.0.0" 833 | } 834 | } 835 | } 836 | }, 837 | "eslint-scope": { 838 | "version": "3.7.1", 839 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", 840 | "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", 841 | "dev": true, 842 | "requires": { 843 | "esrecurse": "4.2.1", 844 | "estraverse": "4.2.0" 845 | } 846 | }, 847 | "eslint-visitor-keys": { 848 | "version": "1.0.0", 849 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", 850 | "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", 851 | "dev": true 852 | }, 853 | "espree": { 854 | "version": "3.5.4", 855 | "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", 856 | "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", 857 | "dev": true, 858 | "requires": { 859 | "acorn": "5.5.3", 860 | "acorn-jsx": "3.0.1" 861 | } 862 | }, 863 | "esprima": { 864 | "version": "4.0.0", 865 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", 866 | "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", 867 | "dev": true 868 | }, 869 | "esquery": { 870 | "version": "1.0.1", 871 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", 872 | "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", 873 | "dev": true, 874 | "requires": { 875 | "estraverse": "4.2.0" 876 | } 877 | }, 878 | "esrecurse": { 879 | "version": "4.2.1", 880 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", 881 | "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", 882 | "dev": true, 883 | "requires": { 884 | "estraverse": "4.2.0" 885 | } 886 | }, 887 | "estraverse": { 888 | "version": "4.2.0", 889 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 890 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", 891 | "dev": true 892 | }, 893 | "esutils": { 894 | "version": "2.0.2", 895 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 896 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 897 | "dev": true 898 | }, 899 | "expand-brackets": { 900 | "version": "2.1.4", 901 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 902 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 903 | "dev": true, 904 | "requires": { 905 | "debug": "2.6.9", 906 | "define-property": "0.2.5", 907 | "extend-shallow": "2.0.1", 908 | "posix-character-classes": "0.1.1", 909 | "regex-not": "1.0.2", 910 | "snapdragon": "0.8.2", 911 | "to-regex": "3.0.2" 912 | }, 913 | "dependencies": { 914 | "define-property": { 915 | "version": "0.2.5", 916 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 917 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 918 | "dev": true, 919 | "requires": { 920 | "is-descriptor": "0.1.6" 921 | } 922 | }, 923 | "extend-shallow": { 924 | "version": "2.0.1", 925 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 926 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 927 | "dev": true, 928 | "requires": { 929 | "is-extendable": "0.1.1" 930 | } 931 | } 932 | } 933 | }, 934 | "expand-tilde": { 935 | "version": "2.0.2", 936 | "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", 937 | "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", 938 | "dev": true, 939 | "requires": { 940 | "homedir-polyfill": "1.0.1" 941 | } 942 | }, 943 | "extend": { 944 | "version": "3.0.1", 945 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", 946 | "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", 947 | "dev": true 948 | }, 949 | "extend-shallow": { 950 | "version": "3.0.2", 951 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 952 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 953 | "dev": true, 954 | "requires": { 955 | "assign-symbols": "1.0.0", 956 | "is-extendable": "1.0.1" 957 | }, 958 | "dependencies": { 959 | "is-extendable": { 960 | "version": "1.0.1", 961 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 962 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 963 | "dev": true, 964 | "requires": { 965 | "is-plain-object": "2.0.4" 966 | } 967 | } 968 | } 969 | }, 970 | "external-editor": { 971 | "version": "2.2.0", 972 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", 973 | "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", 974 | "dev": true, 975 | "requires": { 976 | "chardet": "0.4.2", 977 | "iconv-lite": "0.4.23", 978 | "tmp": "0.0.33" 979 | } 980 | }, 981 | "extglob": { 982 | "version": "2.0.4", 983 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 984 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 985 | "dev": true, 986 | "requires": { 987 | "array-unique": "0.3.2", 988 | "define-property": "1.0.0", 989 | "expand-brackets": "2.1.4", 990 | "extend-shallow": "2.0.1", 991 | "fragment-cache": "0.2.1", 992 | "regex-not": "1.0.2", 993 | "snapdragon": "0.8.2", 994 | "to-regex": "3.0.2" 995 | }, 996 | "dependencies": { 997 | "define-property": { 998 | "version": "1.0.0", 999 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 1000 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 1001 | "dev": true, 1002 | "requires": { 1003 | "is-descriptor": "1.0.2" 1004 | } 1005 | }, 1006 | "extend-shallow": { 1007 | "version": "2.0.1", 1008 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1009 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1010 | "dev": true, 1011 | "requires": { 1012 | "is-extendable": "0.1.1" 1013 | } 1014 | }, 1015 | "is-accessor-descriptor": { 1016 | "version": "1.0.0", 1017 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1018 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1019 | "dev": true, 1020 | "requires": { 1021 | "kind-of": "6.0.2" 1022 | } 1023 | }, 1024 | "is-data-descriptor": { 1025 | "version": "1.0.0", 1026 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1027 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1028 | "dev": true, 1029 | "requires": { 1030 | "kind-of": "6.0.2" 1031 | } 1032 | }, 1033 | "is-descriptor": { 1034 | "version": "1.0.2", 1035 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 1036 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1037 | "dev": true, 1038 | "requires": { 1039 | "is-accessor-descriptor": "1.0.0", 1040 | "is-data-descriptor": "1.0.0", 1041 | "kind-of": "6.0.2" 1042 | } 1043 | } 1044 | } 1045 | }, 1046 | "fancy-log": { 1047 | "version": "1.3.2", 1048 | "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", 1049 | "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", 1050 | "dev": true, 1051 | "requires": { 1052 | "ansi-gray": "0.1.1", 1053 | "color-support": "1.1.3", 1054 | "time-stamp": "1.1.0" 1055 | } 1056 | }, 1057 | "fast-deep-equal": { 1058 | "version": "1.1.0", 1059 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", 1060 | "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", 1061 | "dev": true 1062 | }, 1063 | "fast-json-stable-stringify": { 1064 | "version": "2.0.0", 1065 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", 1066 | "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", 1067 | "dev": true 1068 | }, 1069 | "fast-levenshtein": { 1070 | "version": "2.0.6", 1071 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1072 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1073 | "dev": true 1074 | }, 1075 | "figures": { 1076 | "version": "2.0.0", 1077 | "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", 1078 | "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", 1079 | "dev": true, 1080 | "requires": { 1081 | "escape-string-regexp": "1.0.5" 1082 | } 1083 | }, 1084 | "file-entry-cache": { 1085 | "version": "2.0.0", 1086 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", 1087 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", 1088 | "dev": true, 1089 | "requires": { 1090 | "flat-cache": "1.3.0", 1091 | "object-assign": "4.1.1" 1092 | } 1093 | }, 1094 | "fill-range": { 1095 | "version": "4.0.0", 1096 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 1097 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 1098 | "dev": true, 1099 | "requires": { 1100 | "extend-shallow": "2.0.1", 1101 | "is-number": "3.0.0", 1102 | "repeat-string": "1.6.1", 1103 | "to-regex-range": "2.1.1" 1104 | }, 1105 | "dependencies": { 1106 | "extend-shallow": { 1107 | "version": "2.0.1", 1108 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 1109 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 1110 | "dev": true, 1111 | "requires": { 1112 | "is-extendable": "0.1.1" 1113 | } 1114 | } 1115 | } 1116 | }, 1117 | "find-index": { 1118 | "version": "0.1.1", 1119 | "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", 1120 | "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=", 1121 | "dev": true 1122 | }, 1123 | "findup-sync": { 1124 | "version": "2.0.0", 1125 | "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", 1126 | "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", 1127 | "dev": true, 1128 | "requires": { 1129 | "detect-file": "1.0.0", 1130 | "is-glob": "3.1.0", 1131 | "micromatch": "3.1.10", 1132 | "resolve-dir": "1.0.1" 1133 | } 1134 | }, 1135 | "fined": { 1136 | "version": "1.1.0", 1137 | "resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz", 1138 | "integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=", 1139 | "dev": true, 1140 | "requires": { 1141 | "expand-tilde": "2.0.2", 1142 | "is-plain-object": "2.0.4", 1143 | "object.defaults": "1.1.0", 1144 | "object.pick": "1.3.0", 1145 | "parse-filepath": "1.0.2" 1146 | } 1147 | }, 1148 | "first-chunk-stream": { 1149 | "version": "1.0.0", 1150 | "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", 1151 | "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=", 1152 | "dev": true 1153 | }, 1154 | "flagged-respawn": { 1155 | "version": "1.0.0", 1156 | "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz", 1157 | "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c=", 1158 | "dev": true 1159 | }, 1160 | "flat-cache": { 1161 | "version": "1.3.0", 1162 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", 1163 | "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", 1164 | "dev": true, 1165 | "requires": { 1166 | "circular-json": "0.3.3", 1167 | "del": "2.2.2", 1168 | "graceful-fs": "4.1.11", 1169 | "write": "0.2.1" 1170 | } 1171 | }, 1172 | "for-in": { 1173 | "version": "1.0.2", 1174 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1175 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1176 | "dev": true 1177 | }, 1178 | "for-own": { 1179 | "version": "1.0.0", 1180 | "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", 1181 | "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", 1182 | "dev": true, 1183 | "requires": { 1184 | "for-in": "1.0.2" 1185 | } 1186 | }, 1187 | "fragment-cache": { 1188 | "version": "0.2.1", 1189 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 1190 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 1191 | "dev": true, 1192 | "requires": { 1193 | "map-cache": "0.2.2" 1194 | } 1195 | }, 1196 | "fs.realpath": { 1197 | "version": "1.0.0", 1198 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1199 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1200 | "dev": true 1201 | }, 1202 | "functional-red-black-tree": { 1203 | "version": "1.0.1", 1204 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 1205 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 1206 | "dev": true 1207 | }, 1208 | "gaze": { 1209 | "version": "0.5.2", 1210 | "resolved": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz", 1211 | "integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=", 1212 | "dev": true, 1213 | "requires": { 1214 | "globule": "0.1.0" 1215 | } 1216 | }, 1217 | "get-func-name": { 1218 | "version": "2.0.0", 1219 | "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", 1220 | "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", 1221 | "dev": true 1222 | }, 1223 | "get-value": { 1224 | "version": "2.0.6", 1225 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 1226 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 1227 | "dev": true 1228 | }, 1229 | "glob": { 1230 | "version": "7.1.2", 1231 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 1232 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 1233 | "dev": true, 1234 | "requires": { 1235 | "fs.realpath": "1.0.0", 1236 | "inflight": "1.0.6", 1237 | "inherits": "2.0.3", 1238 | "minimatch": "3.0.4", 1239 | "once": "1.4.0", 1240 | "path-is-absolute": "1.0.1" 1241 | } 1242 | }, 1243 | "glob-stream": { 1244 | "version": "3.1.18", 1245 | "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz", 1246 | "integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=", 1247 | "dev": true, 1248 | "requires": { 1249 | "glob": "4.5.3", 1250 | "glob2base": "0.0.12", 1251 | "minimatch": "2.0.10", 1252 | "ordered-read-streams": "0.1.0", 1253 | "through2": "0.6.5", 1254 | "unique-stream": "1.0.0" 1255 | }, 1256 | "dependencies": { 1257 | "glob": { 1258 | "version": "4.5.3", 1259 | "resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz", 1260 | "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=", 1261 | "dev": true, 1262 | "requires": { 1263 | "inflight": "1.0.6", 1264 | "inherits": "2.0.3", 1265 | "minimatch": "2.0.10", 1266 | "once": "1.4.0" 1267 | } 1268 | }, 1269 | "isarray": { 1270 | "version": "0.0.1", 1271 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1272 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 1273 | "dev": true 1274 | }, 1275 | "minimatch": { 1276 | "version": "2.0.10", 1277 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", 1278 | "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", 1279 | "dev": true, 1280 | "requires": { 1281 | "brace-expansion": "1.1.11" 1282 | } 1283 | }, 1284 | "readable-stream": { 1285 | "version": "1.0.34", 1286 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", 1287 | "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", 1288 | "dev": true, 1289 | "requires": { 1290 | "core-util-is": "1.0.2", 1291 | "inherits": "2.0.3", 1292 | "isarray": "0.0.1", 1293 | "string_decoder": "0.10.31" 1294 | } 1295 | }, 1296 | "string_decoder": { 1297 | "version": "0.10.31", 1298 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 1299 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 1300 | "dev": true 1301 | }, 1302 | "through2": { 1303 | "version": "0.6.5", 1304 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", 1305 | "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", 1306 | "dev": true, 1307 | "requires": { 1308 | "readable-stream": "1.0.34", 1309 | "xtend": "4.0.1" 1310 | } 1311 | } 1312 | } 1313 | }, 1314 | "glob-watcher": { 1315 | "version": "0.0.6", 1316 | "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz", 1317 | "integrity": "sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=", 1318 | "dev": true, 1319 | "requires": { 1320 | "gaze": "0.5.2" 1321 | } 1322 | }, 1323 | "glob2base": { 1324 | "version": "0.0.12", 1325 | "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", 1326 | "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", 1327 | "dev": true, 1328 | "requires": { 1329 | "find-index": "0.1.1" 1330 | } 1331 | }, 1332 | "global-modules": { 1333 | "version": "1.0.0", 1334 | "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", 1335 | "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", 1336 | "dev": true, 1337 | "requires": { 1338 | "global-prefix": "1.0.2", 1339 | "is-windows": "1.0.2", 1340 | "resolve-dir": "1.0.1" 1341 | } 1342 | }, 1343 | "global-prefix": { 1344 | "version": "1.0.2", 1345 | "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", 1346 | "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", 1347 | "dev": true, 1348 | "requires": { 1349 | "expand-tilde": "2.0.2", 1350 | "homedir-polyfill": "1.0.1", 1351 | "ini": "1.3.5", 1352 | "is-windows": "1.0.2", 1353 | "which": "1.3.0" 1354 | } 1355 | }, 1356 | "globals": { 1357 | "version": "11.5.0", 1358 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.5.0.tgz", 1359 | "integrity": "sha512-hYyf+kI8dm3nORsiiXUQigOU62hDLfJ9G01uyGMxhc6BKsircrUhC4uJPQPUSuq2GrTmiiEt7ewxlMdBewfmKQ==", 1360 | "dev": true 1361 | }, 1362 | "globby": { 1363 | "version": "5.0.0", 1364 | "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 1365 | "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", 1366 | "dev": true, 1367 | "requires": { 1368 | "array-union": "1.0.2", 1369 | "arrify": "1.0.1", 1370 | "glob": "7.1.2", 1371 | "object-assign": "4.1.1", 1372 | "pify": "2.3.0", 1373 | "pinkie-promise": "2.0.1" 1374 | } 1375 | }, 1376 | "globule": { 1377 | "version": "0.1.0", 1378 | "resolved": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz", 1379 | "integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=", 1380 | "dev": true, 1381 | "requires": { 1382 | "glob": "3.1.21", 1383 | "lodash": "1.0.2", 1384 | "minimatch": "0.2.14" 1385 | }, 1386 | "dependencies": { 1387 | "glob": { 1388 | "version": "3.1.21", 1389 | "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz", 1390 | "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=", 1391 | "dev": true, 1392 | "requires": { 1393 | "graceful-fs": "1.2.3", 1394 | "inherits": "1.0.2", 1395 | "minimatch": "0.2.14" 1396 | } 1397 | }, 1398 | "graceful-fs": { 1399 | "version": "1.2.3", 1400 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz", 1401 | "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=", 1402 | "dev": true 1403 | }, 1404 | "inherits": { 1405 | "version": "1.0.2", 1406 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz", 1407 | "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=", 1408 | "dev": true 1409 | }, 1410 | "lodash": { 1411 | "version": "1.0.2", 1412 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz", 1413 | "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=", 1414 | "dev": true 1415 | }, 1416 | "minimatch": { 1417 | "version": "0.2.14", 1418 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", 1419 | "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", 1420 | "dev": true, 1421 | "requires": { 1422 | "lru-cache": "2.7.3", 1423 | "sigmund": "1.0.1" 1424 | } 1425 | } 1426 | } 1427 | }, 1428 | "glogg": { 1429 | "version": "1.0.1", 1430 | "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz", 1431 | "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==", 1432 | "dev": true, 1433 | "requires": { 1434 | "sparkles": "1.0.1" 1435 | } 1436 | }, 1437 | "graceful-fs": { 1438 | "version": "4.1.11", 1439 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 1440 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 1441 | "dev": true 1442 | }, 1443 | "growl": { 1444 | "version": "1.10.3", 1445 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", 1446 | "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", 1447 | "dev": true 1448 | }, 1449 | "gulp": { 1450 | "version": "3.9.1", 1451 | "resolved": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz", 1452 | "integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=", 1453 | "dev": true, 1454 | "requires": { 1455 | "archy": "1.0.0", 1456 | "chalk": "1.1.3", 1457 | "deprecated": "0.0.1", 1458 | "gulp-util": "3.0.8", 1459 | "interpret": "1.1.0", 1460 | "liftoff": "2.5.0", 1461 | "minimist": "1.2.0", 1462 | "orchestrator": "0.3.8", 1463 | "pretty-hrtime": "1.0.3", 1464 | "semver": "4.3.6", 1465 | "tildify": "1.2.0", 1466 | "v8flags": "2.1.1", 1467 | "vinyl-fs": "0.3.14" 1468 | }, 1469 | "dependencies": { 1470 | "minimist": { 1471 | "version": "1.2.0", 1472 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 1473 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 1474 | "dev": true 1475 | } 1476 | } 1477 | }, 1478 | "gulp-util": { 1479 | "version": "3.0.8", 1480 | "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", 1481 | "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=", 1482 | "dev": true, 1483 | "requires": { 1484 | "array-differ": "1.0.0", 1485 | "array-uniq": "1.0.3", 1486 | "beeper": "1.1.1", 1487 | "chalk": "1.1.3", 1488 | "dateformat": "2.2.0", 1489 | "fancy-log": "1.3.2", 1490 | "gulplog": "1.0.0", 1491 | "has-gulplog": "0.1.0", 1492 | "lodash._reescape": "3.0.0", 1493 | "lodash._reevaluate": "3.0.0", 1494 | "lodash._reinterpolate": "3.0.0", 1495 | "lodash.template": "3.6.2", 1496 | "minimist": "1.2.0", 1497 | "multipipe": "0.1.2", 1498 | "object-assign": "3.0.0", 1499 | "replace-ext": "0.0.1", 1500 | "through2": "2.0.3", 1501 | "vinyl": "0.5.3" 1502 | }, 1503 | "dependencies": { 1504 | "minimist": { 1505 | "version": "1.2.0", 1506 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 1507 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 1508 | "dev": true 1509 | }, 1510 | "object-assign": { 1511 | "version": "3.0.0", 1512 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", 1513 | "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=", 1514 | "dev": true 1515 | } 1516 | } 1517 | }, 1518 | "gulplog": { 1519 | "version": "1.0.0", 1520 | "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", 1521 | "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", 1522 | "dev": true, 1523 | "requires": { 1524 | "glogg": "1.0.1" 1525 | } 1526 | }, 1527 | "has-ansi": { 1528 | "version": "2.0.0", 1529 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 1530 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 1531 | "dev": true, 1532 | "requires": { 1533 | "ansi-regex": "2.1.1" 1534 | } 1535 | }, 1536 | "has-flag": { 1537 | "version": "3.0.0", 1538 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 1539 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 1540 | "dev": true 1541 | }, 1542 | "has-gulplog": { 1543 | "version": "0.1.0", 1544 | "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", 1545 | "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", 1546 | "dev": true, 1547 | "requires": { 1548 | "sparkles": "1.0.1" 1549 | } 1550 | }, 1551 | "has-value": { 1552 | "version": "1.0.0", 1553 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 1554 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 1555 | "dev": true, 1556 | "requires": { 1557 | "get-value": "2.0.6", 1558 | "has-values": "1.0.0", 1559 | "isobject": "3.0.1" 1560 | } 1561 | }, 1562 | "has-values": { 1563 | "version": "1.0.0", 1564 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 1565 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 1566 | "dev": true, 1567 | "requires": { 1568 | "is-number": "3.0.0", 1569 | "kind-of": "4.0.0" 1570 | }, 1571 | "dependencies": { 1572 | "kind-of": { 1573 | "version": "4.0.0", 1574 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 1575 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 1576 | "dev": true, 1577 | "requires": { 1578 | "is-buffer": "1.1.6" 1579 | } 1580 | } 1581 | } 1582 | }, 1583 | "he": { 1584 | "version": "1.1.1", 1585 | "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", 1586 | "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", 1587 | "dev": true 1588 | }, 1589 | "homedir-polyfill": { 1590 | "version": "1.0.1", 1591 | "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", 1592 | "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", 1593 | "dev": true, 1594 | "requires": { 1595 | "parse-passwd": "1.0.0" 1596 | } 1597 | }, 1598 | "iconv-lite": { 1599 | "version": "0.4.23", 1600 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", 1601 | "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", 1602 | "dev": true, 1603 | "requires": { 1604 | "safer-buffer": "2.1.2" 1605 | } 1606 | }, 1607 | "ignore": { 1608 | "version": "3.3.8", 1609 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", 1610 | "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==", 1611 | "dev": true 1612 | }, 1613 | "imurmurhash": { 1614 | "version": "0.1.4", 1615 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1616 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1617 | "dev": true 1618 | }, 1619 | "inflight": { 1620 | "version": "1.0.6", 1621 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1622 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1623 | "dev": true, 1624 | "requires": { 1625 | "once": "1.4.0", 1626 | "wrappy": "1.0.2" 1627 | } 1628 | }, 1629 | "inherits": { 1630 | "version": "2.0.3", 1631 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1632 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", 1633 | "dev": true 1634 | }, 1635 | "ini": { 1636 | "version": "1.3.5", 1637 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", 1638 | "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", 1639 | "dev": true 1640 | }, 1641 | "inquirer": { 1642 | "version": "3.3.0", 1643 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", 1644 | "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", 1645 | "dev": true, 1646 | "requires": { 1647 | "ansi-escapes": "3.1.0", 1648 | "chalk": "2.4.1", 1649 | "cli-cursor": "2.1.0", 1650 | "cli-width": "2.2.0", 1651 | "external-editor": "2.2.0", 1652 | "figures": "2.0.0", 1653 | "lodash": "4.17.10", 1654 | "mute-stream": "0.0.7", 1655 | "run-async": "2.3.0", 1656 | "rx-lite": "4.0.8", 1657 | "rx-lite-aggregates": "4.0.8", 1658 | "string-width": "2.1.1", 1659 | "strip-ansi": "4.0.0", 1660 | "through": "2.3.8" 1661 | }, 1662 | "dependencies": { 1663 | "ansi-regex": { 1664 | "version": "3.0.0", 1665 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 1666 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 1667 | "dev": true 1668 | }, 1669 | "ansi-styles": { 1670 | "version": "3.2.1", 1671 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1672 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1673 | "dev": true, 1674 | "requires": { 1675 | "color-convert": "1.9.1" 1676 | } 1677 | }, 1678 | "chalk": { 1679 | "version": "2.4.1", 1680 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", 1681 | "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", 1682 | "dev": true, 1683 | "requires": { 1684 | "ansi-styles": "3.2.1", 1685 | "escape-string-regexp": "1.0.5", 1686 | "supports-color": "5.4.0" 1687 | } 1688 | }, 1689 | "strip-ansi": { 1690 | "version": "4.0.0", 1691 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1692 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1693 | "dev": true, 1694 | "requires": { 1695 | "ansi-regex": "3.0.0" 1696 | } 1697 | }, 1698 | "supports-color": { 1699 | "version": "5.4.0", 1700 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", 1701 | "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", 1702 | "dev": true, 1703 | "requires": { 1704 | "has-flag": "3.0.0" 1705 | } 1706 | } 1707 | } 1708 | }, 1709 | "interpret": { 1710 | "version": "1.1.0", 1711 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", 1712 | "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", 1713 | "dev": true 1714 | }, 1715 | "is-absolute": { 1716 | "version": "1.0.0", 1717 | "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", 1718 | "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", 1719 | "dev": true, 1720 | "requires": { 1721 | "is-relative": "1.0.0", 1722 | "is-windows": "1.0.2" 1723 | } 1724 | }, 1725 | "is-accessor-descriptor": { 1726 | "version": "0.1.6", 1727 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 1728 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 1729 | "dev": true, 1730 | "requires": { 1731 | "kind-of": "3.2.2" 1732 | }, 1733 | "dependencies": { 1734 | "kind-of": { 1735 | "version": "3.2.2", 1736 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1737 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1738 | "dev": true, 1739 | "requires": { 1740 | "is-buffer": "1.1.6" 1741 | } 1742 | } 1743 | } 1744 | }, 1745 | "is-buffer": { 1746 | "version": "1.1.6", 1747 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 1748 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", 1749 | "dev": true 1750 | }, 1751 | "is-data-descriptor": { 1752 | "version": "0.1.4", 1753 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 1754 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 1755 | "dev": true, 1756 | "requires": { 1757 | "kind-of": "3.2.2" 1758 | }, 1759 | "dependencies": { 1760 | "kind-of": { 1761 | "version": "3.2.2", 1762 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1763 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1764 | "dev": true, 1765 | "requires": { 1766 | "is-buffer": "1.1.6" 1767 | } 1768 | } 1769 | } 1770 | }, 1771 | "is-descriptor": { 1772 | "version": "0.1.6", 1773 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 1774 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 1775 | "dev": true, 1776 | "requires": { 1777 | "is-accessor-descriptor": "0.1.6", 1778 | "is-data-descriptor": "0.1.4", 1779 | "kind-of": "5.1.0" 1780 | }, 1781 | "dependencies": { 1782 | "kind-of": { 1783 | "version": "5.1.0", 1784 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 1785 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 1786 | "dev": true 1787 | } 1788 | } 1789 | }, 1790 | "is-extendable": { 1791 | "version": "0.1.1", 1792 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 1793 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 1794 | "dev": true 1795 | }, 1796 | "is-extglob": { 1797 | "version": "2.1.1", 1798 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1799 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 1800 | "dev": true 1801 | }, 1802 | "is-fullwidth-code-point": { 1803 | "version": "2.0.0", 1804 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 1805 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 1806 | "dev": true 1807 | }, 1808 | "is-glob": { 1809 | "version": "3.1.0", 1810 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", 1811 | "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", 1812 | "dev": true, 1813 | "requires": { 1814 | "is-extglob": "2.1.1" 1815 | } 1816 | }, 1817 | "is-number": { 1818 | "version": "3.0.0", 1819 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 1820 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 1821 | "dev": true, 1822 | "requires": { 1823 | "kind-of": "3.2.2" 1824 | }, 1825 | "dependencies": { 1826 | "kind-of": { 1827 | "version": "3.2.2", 1828 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1829 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1830 | "dev": true, 1831 | "requires": { 1832 | "is-buffer": "1.1.6" 1833 | } 1834 | } 1835 | } 1836 | }, 1837 | "is-odd": { 1838 | "version": "2.0.0", 1839 | "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", 1840 | "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", 1841 | "dev": true, 1842 | "requires": { 1843 | "is-number": "4.0.0" 1844 | }, 1845 | "dependencies": { 1846 | "is-number": { 1847 | "version": "4.0.0", 1848 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", 1849 | "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", 1850 | "dev": true 1851 | } 1852 | } 1853 | }, 1854 | "is-path-cwd": { 1855 | "version": "1.0.0", 1856 | "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 1857 | "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", 1858 | "dev": true 1859 | }, 1860 | "is-path-in-cwd": { 1861 | "version": "1.0.1", 1862 | "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", 1863 | "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", 1864 | "dev": true, 1865 | "requires": { 1866 | "is-path-inside": "1.0.1" 1867 | } 1868 | }, 1869 | "is-path-inside": { 1870 | "version": "1.0.1", 1871 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", 1872 | "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", 1873 | "dev": true, 1874 | "requires": { 1875 | "path-is-inside": "1.0.2" 1876 | } 1877 | }, 1878 | "is-plain-object": { 1879 | "version": "2.0.4", 1880 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 1881 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 1882 | "dev": true, 1883 | "requires": { 1884 | "isobject": "3.0.1" 1885 | } 1886 | }, 1887 | "is-promise": { 1888 | "version": "2.1.0", 1889 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 1890 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", 1891 | "dev": true 1892 | }, 1893 | "is-relative": { 1894 | "version": "1.0.0", 1895 | "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", 1896 | "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", 1897 | "dev": true, 1898 | "requires": { 1899 | "is-unc-path": "1.0.0" 1900 | } 1901 | }, 1902 | "is-resolvable": { 1903 | "version": "1.1.0", 1904 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", 1905 | "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", 1906 | "dev": true 1907 | }, 1908 | "is-unc-path": { 1909 | "version": "1.0.0", 1910 | "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", 1911 | "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", 1912 | "dev": true, 1913 | "requires": { 1914 | "unc-path-regex": "0.1.2" 1915 | } 1916 | }, 1917 | "is-utf8": { 1918 | "version": "0.2.1", 1919 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", 1920 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", 1921 | "dev": true 1922 | }, 1923 | "is-windows": { 1924 | "version": "1.0.2", 1925 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 1926 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 1927 | "dev": true 1928 | }, 1929 | "isarray": { 1930 | "version": "1.0.0", 1931 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1932 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 1933 | "dev": true 1934 | }, 1935 | "isexe": { 1936 | "version": "2.0.0", 1937 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1938 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 1939 | "dev": true 1940 | }, 1941 | "isobject": { 1942 | "version": "3.0.1", 1943 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 1944 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 1945 | "dev": true 1946 | }, 1947 | "js-tokens": { 1948 | "version": "3.0.2", 1949 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 1950 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 1951 | "dev": true 1952 | }, 1953 | "js-yaml": { 1954 | "version": "3.11.0", 1955 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", 1956 | "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", 1957 | "dev": true, 1958 | "requires": { 1959 | "argparse": "1.0.10", 1960 | "esprima": "4.0.0" 1961 | } 1962 | }, 1963 | "json-schema-traverse": { 1964 | "version": "0.3.1", 1965 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", 1966 | "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", 1967 | "dev": true 1968 | }, 1969 | "json-stable-stringify-without-jsonify": { 1970 | "version": "1.0.1", 1971 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 1972 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", 1973 | "dev": true 1974 | }, 1975 | "kind-of": { 1976 | "version": "6.0.2", 1977 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", 1978 | "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", 1979 | "dev": true 1980 | }, 1981 | "levn": { 1982 | "version": "0.3.0", 1983 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 1984 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 1985 | "dev": true, 1986 | "requires": { 1987 | "prelude-ls": "1.1.2", 1988 | "type-check": "0.3.2" 1989 | } 1990 | }, 1991 | "liftoff": { 1992 | "version": "2.5.0", 1993 | "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", 1994 | "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", 1995 | "dev": true, 1996 | "requires": { 1997 | "extend": "3.0.1", 1998 | "findup-sync": "2.0.0", 1999 | "fined": "1.1.0", 2000 | "flagged-respawn": "1.0.0", 2001 | "is-plain-object": "2.0.4", 2002 | "object.map": "1.0.1", 2003 | "rechoir": "0.6.2", 2004 | "resolve": "1.7.1" 2005 | } 2006 | }, 2007 | "lodash": { 2008 | "version": "4.17.10", 2009 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", 2010 | "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", 2011 | "dev": true 2012 | }, 2013 | "lodash._basecopy": { 2014 | "version": "3.0.1", 2015 | "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", 2016 | "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=", 2017 | "dev": true 2018 | }, 2019 | "lodash._basetostring": { 2020 | "version": "3.0.1", 2021 | "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", 2022 | "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=", 2023 | "dev": true 2024 | }, 2025 | "lodash._basevalues": { 2026 | "version": "3.0.0", 2027 | "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", 2028 | "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=", 2029 | "dev": true 2030 | }, 2031 | "lodash._getnative": { 2032 | "version": "3.9.1", 2033 | "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", 2034 | "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", 2035 | "dev": true 2036 | }, 2037 | "lodash._isiterateecall": { 2038 | "version": "3.0.9", 2039 | "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", 2040 | "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=", 2041 | "dev": true 2042 | }, 2043 | "lodash._reescape": { 2044 | "version": "3.0.0", 2045 | "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", 2046 | "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=", 2047 | "dev": true 2048 | }, 2049 | "lodash._reevaluate": { 2050 | "version": "3.0.0", 2051 | "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", 2052 | "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=", 2053 | "dev": true 2054 | }, 2055 | "lodash._reinterpolate": { 2056 | "version": "3.0.0", 2057 | "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", 2058 | "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", 2059 | "dev": true 2060 | }, 2061 | "lodash._root": { 2062 | "version": "3.0.1", 2063 | "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", 2064 | "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=", 2065 | "dev": true 2066 | }, 2067 | "lodash.escape": { 2068 | "version": "3.2.0", 2069 | "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", 2070 | "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", 2071 | "dev": true, 2072 | "requires": { 2073 | "lodash._root": "3.0.1" 2074 | } 2075 | }, 2076 | "lodash.isarguments": { 2077 | "version": "3.1.0", 2078 | "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", 2079 | "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", 2080 | "dev": true 2081 | }, 2082 | "lodash.isarray": { 2083 | "version": "3.0.4", 2084 | "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", 2085 | "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", 2086 | "dev": true 2087 | }, 2088 | "lodash.keys": { 2089 | "version": "3.1.2", 2090 | "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", 2091 | "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", 2092 | "dev": true, 2093 | "requires": { 2094 | "lodash._getnative": "3.9.1", 2095 | "lodash.isarguments": "3.1.0", 2096 | "lodash.isarray": "3.0.4" 2097 | } 2098 | }, 2099 | "lodash.restparam": { 2100 | "version": "3.6.1", 2101 | "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", 2102 | "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", 2103 | "dev": true 2104 | }, 2105 | "lodash.template": { 2106 | "version": "3.6.2", 2107 | "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", 2108 | "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", 2109 | "dev": true, 2110 | "requires": { 2111 | "lodash._basecopy": "3.0.1", 2112 | "lodash._basetostring": "3.0.1", 2113 | "lodash._basevalues": "3.0.0", 2114 | "lodash._isiterateecall": "3.0.9", 2115 | "lodash._reinterpolate": "3.0.0", 2116 | "lodash.escape": "3.2.0", 2117 | "lodash.keys": "3.1.2", 2118 | "lodash.restparam": "3.6.1", 2119 | "lodash.templatesettings": "3.1.1" 2120 | } 2121 | }, 2122 | "lodash.templatesettings": { 2123 | "version": "3.1.1", 2124 | "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", 2125 | "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", 2126 | "dev": true, 2127 | "requires": { 2128 | "lodash._reinterpolate": "3.0.0", 2129 | "lodash.escape": "3.2.0" 2130 | } 2131 | }, 2132 | "lru-cache": { 2133 | "version": "2.7.3", 2134 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", 2135 | "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=", 2136 | "dev": true 2137 | }, 2138 | "make-iterator": { 2139 | "version": "1.0.1", 2140 | "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", 2141 | "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", 2142 | "dev": true, 2143 | "requires": { 2144 | "kind-of": "6.0.2" 2145 | } 2146 | }, 2147 | "map-cache": { 2148 | "version": "0.2.2", 2149 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 2150 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 2151 | "dev": true 2152 | }, 2153 | "map-visit": { 2154 | "version": "1.0.0", 2155 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 2156 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 2157 | "dev": true, 2158 | "requires": { 2159 | "object-visit": "1.0.1" 2160 | } 2161 | }, 2162 | "micromatch": { 2163 | "version": "3.1.10", 2164 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 2165 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 2166 | "dev": true, 2167 | "requires": { 2168 | "arr-diff": "4.0.0", 2169 | "array-unique": "0.3.2", 2170 | "braces": "2.3.2", 2171 | "define-property": "2.0.2", 2172 | "extend-shallow": "3.0.2", 2173 | "extglob": "2.0.4", 2174 | "fragment-cache": "0.2.1", 2175 | "kind-of": "6.0.2", 2176 | "nanomatch": "1.2.9", 2177 | "object.pick": "1.3.0", 2178 | "regex-not": "1.0.2", 2179 | "snapdragon": "0.8.2", 2180 | "to-regex": "3.0.2" 2181 | } 2182 | }, 2183 | "mimic-fn": { 2184 | "version": "1.2.0", 2185 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", 2186 | "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", 2187 | "dev": true 2188 | }, 2189 | "minimatch": { 2190 | "version": "3.0.4", 2191 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 2192 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 2193 | "dev": true, 2194 | "requires": { 2195 | "brace-expansion": "1.1.11" 2196 | } 2197 | }, 2198 | "minimist": { 2199 | "version": "0.0.8", 2200 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 2201 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 2202 | "dev": true 2203 | }, 2204 | "mixin-deep": { 2205 | "version": "1.3.1", 2206 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", 2207 | "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", 2208 | "dev": true, 2209 | "requires": { 2210 | "for-in": "1.0.2", 2211 | "is-extendable": "1.0.1" 2212 | }, 2213 | "dependencies": { 2214 | "is-extendable": { 2215 | "version": "1.0.1", 2216 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 2217 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 2218 | "dev": true, 2219 | "requires": { 2220 | "is-plain-object": "2.0.4" 2221 | } 2222 | } 2223 | } 2224 | }, 2225 | "mkdirp": { 2226 | "version": "0.5.1", 2227 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 2228 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 2229 | "dev": true, 2230 | "requires": { 2231 | "minimist": "0.0.8" 2232 | } 2233 | }, 2234 | "mocha": { 2235 | "version": "5.1.1", 2236 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.1.1.tgz", 2237 | "integrity": "sha512-kKKs/H1KrMMQIEsWNxGmb4/BGsmj0dkeyotEvbrAuQ01FcWRLssUNXCEUZk6SZtyJBi6EE7SL0zDDtItw1rGhw==", 2238 | "dev": true, 2239 | "requires": { 2240 | "browser-stdout": "1.3.1", 2241 | "commander": "2.11.0", 2242 | "debug": "3.1.0", 2243 | "diff": "3.5.0", 2244 | "escape-string-regexp": "1.0.5", 2245 | "glob": "7.1.2", 2246 | "growl": "1.10.3", 2247 | "he": "1.1.1", 2248 | "minimatch": "3.0.4", 2249 | "mkdirp": "0.5.1", 2250 | "supports-color": "4.4.0" 2251 | }, 2252 | "dependencies": { 2253 | "debug": { 2254 | "version": "3.1.0", 2255 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 2256 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 2257 | "dev": true, 2258 | "requires": { 2259 | "ms": "2.0.0" 2260 | } 2261 | }, 2262 | "has-flag": { 2263 | "version": "2.0.0", 2264 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", 2265 | "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", 2266 | "dev": true 2267 | }, 2268 | "supports-color": { 2269 | "version": "4.4.0", 2270 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 2271 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 2272 | "dev": true, 2273 | "requires": { 2274 | "has-flag": "2.0.0" 2275 | } 2276 | } 2277 | } 2278 | }, 2279 | "ms": { 2280 | "version": "2.0.0", 2281 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 2282 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 2283 | "dev": true 2284 | }, 2285 | "multipipe": { 2286 | "version": "0.1.2", 2287 | "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", 2288 | "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", 2289 | "dev": true, 2290 | "requires": { 2291 | "duplexer2": "0.0.2" 2292 | } 2293 | }, 2294 | "mute-stream": { 2295 | "version": "0.0.7", 2296 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", 2297 | "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", 2298 | "dev": true 2299 | }, 2300 | "nanomatch": { 2301 | "version": "1.2.9", 2302 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", 2303 | "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", 2304 | "dev": true, 2305 | "requires": { 2306 | "arr-diff": "4.0.0", 2307 | "array-unique": "0.3.2", 2308 | "define-property": "2.0.2", 2309 | "extend-shallow": "3.0.2", 2310 | "fragment-cache": "0.2.1", 2311 | "is-odd": "2.0.0", 2312 | "is-windows": "1.0.2", 2313 | "kind-of": "6.0.2", 2314 | "object.pick": "1.3.0", 2315 | "regex-not": "1.0.2", 2316 | "snapdragon": "0.8.2", 2317 | "to-regex": "3.0.2" 2318 | } 2319 | }, 2320 | "natives": { 2321 | "version": "1.1.3", 2322 | "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.3.tgz", 2323 | "integrity": "sha512-BZGSYV4YOLxzoTK73l0/s/0sH9l8SHs2ocReMH1f8JYSh5FUWu4ZrKCpJdRkWXV6HFR/pZDz7bwWOVAY07q77g==", 2324 | "dev": true 2325 | }, 2326 | "natural-compare": { 2327 | "version": "1.4.0", 2328 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 2329 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 2330 | "dev": true 2331 | }, 2332 | "object-assign": { 2333 | "version": "4.1.1", 2334 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 2335 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 2336 | }, 2337 | "object-copy": { 2338 | "version": "0.1.0", 2339 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 2340 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 2341 | "dev": true, 2342 | "requires": { 2343 | "copy-descriptor": "0.1.1", 2344 | "define-property": "0.2.5", 2345 | "kind-of": "3.2.2" 2346 | }, 2347 | "dependencies": { 2348 | "define-property": { 2349 | "version": "0.2.5", 2350 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2351 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2352 | "dev": true, 2353 | "requires": { 2354 | "is-descriptor": "0.1.6" 2355 | } 2356 | }, 2357 | "kind-of": { 2358 | "version": "3.2.2", 2359 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2360 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2361 | "dev": true, 2362 | "requires": { 2363 | "is-buffer": "1.1.6" 2364 | } 2365 | } 2366 | } 2367 | }, 2368 | "object-visit": { 2369 | "version": "1.0.1", 2370 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 2371 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 2372 | "dev": true, 2373 | "requires": { 2374 | "isobject": "3.0.1" 2375 | } 2376 | }, 2377 | "object.defaults": { 2378 | "version": "1.1.0", 2379 | "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", 2380 | "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", 2381 | "dev": true, 2382 | "requires": { 2383 | "array-each": "1.0.1", 2384 | "array-slice": "1.1.0", 2385 | "for-own": "1.0.0", 2386 | "isobject": "3.0.1" 2387 | } 2388 | }, 2389 | "object.map": { 2390 | "version": "1.0.1", 2391 | "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", 2392 | "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", 2393 | "dev": true, 2394 | "requires": { 2395 | "for-own": "1.0.0", 2396 | "make-iterator": "1.0.1" 2397 | } 2398 | }, 2399 | "object.pick": { 2400 | "version": "1.3.0", 2401 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 2402 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 2403 | "dev": true, 2404 | "requires": { 2405 | "isobject": "3.0.1" 2406 | } 2407 | }, 2408 | "once": { 2409 | "version": "1.4.0", 2410 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2411 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 2412 | "dev": true, 2413 | "requires": { 2414 | "wrappy": "1.0.2" 2415 | } 2416 | }, 2417 | "onetime": { 2418 | "version": "2.0.1", 2419 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", 2420 | "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", 2421 | "dev": true, 2422 | "requires": { 2423 | "mimic-fn": "1.2.0" 2424 | } 2425 | }, 2426 | "optionator": { 2427 | "version": "0.8.2", 2428 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 2429 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 2430 | "dev": true, 2431 | "requires": { 2432 | "deep-is": "0.1.3", 2433 | "fast-levenshtein": "2.0.6", 2434 | "levn": "0.3.0", 2435 | "prelude-ls": "1.1.2", 2436 | "type-check": "0.3.2", 2437 | "wordwrap": "1.0.0" 2438 | } 2439 | }, 2440 | "orchestrator": { 2441 | "version": "0.3.8", 2442 | "resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", 2443 | "integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=", 2444 | "dev": true, 2445 | "requires": { 2446 | "end-of-stream": "0.1.5", 2447 | "sequencify": "0.0.7", 2448 | "stream-consume": "0.1.1" 2449 | } 2450 | }, 2451 | "ordered-read-streams": { 2452 | "version": "0.1.0", 2453 | "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz", 2454 | "integrity": "sha1-/VZamvjrRHO6abbtijQ1LLVS8SY=", 2455 | "dev": true 2456 | }, 2457 | "os-homedir": { 2458 | "version": "1.0.2", 2459 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 2460 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 2461 | "dev": true 2462 | }, 2463 | "os-tmpdir": { 2464 | "version": "1.0.2", 2465 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 2466 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 2467 | "dev": true 2468 | }, 2469 | "parse-filepath": { 2470 | "version": "1.0.2", 2471 | "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", 2472 | "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", 2473 | "dev": true, 2474 | "requires": { 2475 | "is-absolute": "1.0.0", 2476 | "map-cache": "0.2.2", 2477 | "path-root": "0.1.1" 2478 | } 2479 | }, 2480 | "parse-passwd": { 2481 | "version": "1.0.0", 2482 | "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", 2483 | "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", 2484 | "dev": true 2485 | }, 2486 | "pascalcase": { 2487 | "version": "0.1.1", 2488 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 2489 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 2490 | "dev": true 2491 | }, 2492 | "path-is-absolute": { 2493 | "version": "1.0.1", 2494 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 2495 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 2496 | "dev": true 2497 | }, 2498 | "path-is-inside": { 2499 | "version": "1.0.2", 2500 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 2501 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", 2502 | "dev": true 2503 | }, 2504 | "path-parse": { 2505 | "version": "1.0.5", 2506 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", 2507 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", 2508 | "dev": true 2509 | }, 2510 | "path-root": { 2511 | "version": "0.1.1", 2512 | "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", 2513 | "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", 2514 | "dev": true, 2515 | "requires": { 2516 | "path-root-regex": "0.1.2" 2517 | } 2518 | }, 2519 | "path-root-regex": { 2520 | "version": "0.1.2", 2521 | "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", 2522 | "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", 2523 | "dev": true 2524 | }, 2525 | "pathval": { 2526 | "version": "1.1.0", 2527 | "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", 2528 | "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", 2529 | "dev": true 2530 | }, 2531 | "pify": { 2532 | "version": "2.3.0", 2533 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 2534 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 2535 | "dev": true 2536 | }, 2537 | "pinkie": { 2538 | "version": "2.0.4", 2539 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 2540 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 2541 | "dev": true 2542 | }, 2543 | "pinkie-promise": { 2544 | "version": "2.0.1", 2545 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 2546 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 2547 | "dev": true, 2548 | "requires": { 2549 | "pinkie": "2.0.4" 2550 | } 2551 | }, 2552 | "pluralize": { 2553 | "version": "7.0.0", 2554 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", 2555 | "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", 2556 | "dev": true 2557 | }, 2558 | "posix-character-classes": { 2559 | "version": "0.1.1", 2560 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 2561 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 2562 | "dev": true 2563 | }, 2564 | "prelude-ls": { 2565 | "version": "1.1.2", 2566 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 2567 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 2568 | "dev": true 2569 | }, 2570 | "pretty-hrtime": { 2571 | "version": "1.0.3", 2572 | "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", 2573 | "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", 2574 | "dev": true 2575 | }, 2576 | "process-nextick-args": { 2577 | "version": "2.0.0", 2578 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", 2579 | "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", 2580 | "dev": true 2581 | }, 2582 | "progress": { 2583 | "version": "2.0.0", 2584 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 2585 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", 2586 | "dev": true 2587 | }, 2588 | "pseudomap": { 2589 | "version": "1.0.2", 2590 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 2591 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 2592 | "dev": true 2593 | }, 2594 | "readable-stream": { 2595 | "version": "2.3.6", 2596 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", 2597 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", 2598 | "dev": true, 2599 | "requires": { 2600 | "core-util-is": "1.0.2", 2601 | "inherits": "2.0.3", 2602 | "isarray": "1.0.0", 2603 | "process-nextick-args": "2.0.0", 2604 | "safe-buffer": "5.1.2", 2605 | "string_decoder": "1.1.1", 2606 | "util-deprecate": "1.0.2" 2607 | } 2608 | }, 2609 | "rechoir": { 2610 | "version": "0.6.2", 2611 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", 2612 | "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", 2613 | "dev": true, 2614 | "requires": { 2615 | "resolve": "1.7.1" 2616 | } 2617 | }, 2618 | "regex-not": { 2619 | "version": "1.0.2", 2620 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 2621 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 2622 | "dev": true, 2623 | "requires": { 2624 | "extend-shallow": "3.0.2", 2625 | "safe-regex": "1.1.0" 2626 | } 2627 | }, 2628 | "regexpp": { 2629 | "version": "1.1.0", 2630 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", 2631 | "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", 2632 | "dev": true 2633 | }, 2634 | "repeat-element": { 2635 | "version": "1.1.2", 2636 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", 2637 | "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", 2638 | "dev": true 2639 | }, 2640 | "repeat-string": { 2641 | "version": "1.6.1", 2642 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 2643 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 2644 | "dev": true 2645 | }, 2646 | "replace-ext": { 2647 | "version": "0.0.1", 2648 | "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", 2649 | "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", 2650 | "dev": true 2651 | }, 2652 | "require-uncached": { 2653 | "version": "1.0.3", 2654 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", 2655 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", 2656 | "dev": true, 2657 | "requires": { 2658 | "caller-path": "0.1.0", 2659 | "resolve-from": "1.0.1" 2660 | } 2661 | }, 2662 | "resolve": { 2663 | "version": "1.7.1", 2664 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz", 2665 | "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==", 2666 | "dev": true, 2667 | "requires": { 2668 | "path-parse": "1.0.5" 2669 | } 2670 | }, 2671 | "resolve-dir": { 2672 | "version": "1.0.1", 2673 | "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", 2674 | "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", 2675 | "dev": true, 2676 | "requires": { 2677 | "expand-tilde": "2.0.2", 2678 | "global-modules": "1.0.0" 2679 | } 2680 | }, 2681 | "resolve-from": { 2682 | "version": "1.0.1", 2683 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", 2684 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", 2685 | "dev": true 2686 | }, 2687 | "resolve-url": { 2688 | "version": "0.2.1", 2689 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 2690 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 2691 | "dev": true 2692 | }, 2693 | "restore-cursor": { 2694 | "version": "2.0.0", 2695 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", 2696 | "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", 2697 | "dev": true, 2698 | "requires": { 2699 | "onetime": "2.0.1", 2700 | "signal-exit": "3.0.2" 2701 | } 2702 | }, 2703 | "ret": { 2704 | "version": "0.1.15", 2705 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 2706 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 2707 | "dev": true 2708 | }, 2709 | "rimraf": { 2710 | "version": "2.6.2", 2711 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", 2712 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", 2713 | "dev": true, 2714 | "requires": { 2715 | "glob": "7.1.2" 2716 | } 2717 | }, 2718 | "run-async": { 2719 | "version": "2.3.0", 2720 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", 2721 | "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", 2722 | "dev": true, 2723 | "requires": { 2724 | "is-promise": "2.1.0" 2725 | } 2726 | }, 2727 | "rx-lite": { 2728 | "version": "4.0.8", 2729 | "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", 2730 | "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", 2731 | "dev": true 2732 | }, 2733 | "rx-lite-aggregates": { 2734 | "version": "4.0.8", 2735 | "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", 2736 | "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", 2737 | "dev": true, 2738 | "requires": { 2739 | "rx-lite": "4.0.8" 2740 | } 2741 | }, 2742 | "safe-buffer": { 2743 | "version": "5.1.2", 2744 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 2745 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 2746 | "dev": true 2747 | }, 2748 | "safe-regex": { 2749 | "version": "1.1.0", 2750 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 2751 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 2752 | "dev": true, 2753 | "requires": { 2754 | "ret": "0.1.15" 2755 | } 2756 | }, 2757 | "safer-buffer": { 2758 | "version": "2.1.2", 2759 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 2760 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 2761 | "dev": true 2762 | }, 2763 | "semver": { 2764 | "version": "4.3.6", 2765 | "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", 2766 | "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=", 2767 | "dev": true 2768 | }, 2769 | "sequencify": { 2770 | "version": "0.0.7", 2771 | "resolved": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz", 2772 | "integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=", 2773 | "dev": true 2774 | }, 2775 | "set-value": { 2776 | "version": "2.0.0", 2777 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", 2778 | "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", 2779 | "dev": true, 2780 | "requires": { 2781 | "extend-shallow": "2.0.1", 2782 | "is-extendable": "0.1.1", 2783 | "is-plain-object": "2.0.4", 2784 | "split-string": "3.1.0" 2785 | }, 2786 | "dependencies": { 2787 | "extend-shallow": { 2788 | "version": "2.0.1", 2789 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2790 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2791 | "dev": true, 2792 | "requires": { 2793 | "is-extendable": "0.1.1" 2794 | } 2795 | } 2796 | } 2797 | }, 2798 | "shebang-command": { 2799 | "version": "1.2.0", 2800 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 2801 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 2802 | "dev": true, 2803 | "requires": { 2804 | "shebang-regex": "1.0.0" 2805 | } 2806 | }, 2807 | "shebang-regex": { 2808 | "version": "1.0.0", 2809 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 2810 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 2811 | "dev": true 2812 | }, 2813 | "sigmund": { 2814 | "version": "1.0.1", 2815 | "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", 2816 | "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", 2817 | "dev": true 2818 | }, 2819 | "signal-exit": { 2820 | "version": "3.0.2", 2821 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 2822 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 2823 | "dev": true 2824 | }, 2825 | "slice-ansi": { 2826 | "version": "1.0.0", 2827 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", 2828 | "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", 2829 | "dev": true, 2830 | "requires": { 2831 | "is-fullwidth-code-point": "2.0.0" 2832 | } 2833 | }, 2834 | "snapdragon": { 2835 | "version": "0.8.2", 2836 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 2837 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 2838 | "dev": true, 2839 | "requires": { 2840 | "base": "0.11.2", 2841 | "debug": "2.6.9", 2842 | "define-property": "0.2.5", 2843 | "extend-shallow": "2.0.1", 2844 | "map-cache": "0.2.2", 2845 | "source-map": "0.5.7", 2846 | "source-map-resolve": "0.5.2", 2847 | "use": "3.1.0" 2848 | }, 2849 | "dependencies": { 2850 | "define-property": { 2851 | "version": "0.2.5", 2852 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2853 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2854 | "dev": true, 2855 | "requires": { 2856 | "is-descriptor": "0.1.6" 2857 | } 2858 | }, 2859 | "extend-shallow": { 2860 | "version": "2.0.1", 2861 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2862 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2863 | "dev": true, 2864 | "requires": { 2865 | "is-extendable": "0.1.1" 2866 | } 2867 | } 2868 | } 2869 | }, 2870 | "snapdragon-node": { 2871 | "version": "2.1.1", 2872 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 2873 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 2874 | "dev": true, 2875 | "requires": { 2876 | "define-property": "1.0.0", 2877 | "isobject": "3.0.1", 2878 | "snapdragon-util": "3.0.1" 2879 | }, 2880 | "dependencies": { 2881 | "define-property": { 2882 | "version": "1.0.0", 2883 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 2884 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 2885 | "dev": true, 2886 | "requires": { 2887 | "is-descriptor": "1.0.2" 2888 | } 2889 | }, 2890 | "is-accessor-descriptor": { 2891 | "version": "1.0.0", 2892 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2893 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2894 | "dev": true, 2895 | "requires": { 2896 | "kind-of": "6.0.2" 2897 | } 2898 | }, 2899 | "is-data-descriptor": { 2900 | "version": "1.0.0", 2901 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2902 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2903 | "dev": true, 2904 | "requires": { 2905 | "kind-of": "6.0.2" 2906 | } 2907 | }, 2908 | "is-descriptor": { 2909 | "version": "1.0.2", 2910 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2911 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2912 | "dev": true, 2913 | "requires": { 2914 | "is-accessor-descriptor": "1.0.0", 2915 | "is-data-descriptor": "1.0.0", 2916 | "kind-of": "6.0.2" 2917 | } 2918 | } 2919 | } 2920 | }, 2921 | "snapdragon-util": { 2922 | "version": "3.0.1", 2923 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 2924 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 2925 | "dev": true, 2926 | "requires": { 2927 | "kind-of": "3.2.2" 2928 | }, 2929 | "dependencies": { 2930 | "kind-of": { 2931 | "version": "3.2.2", 2932 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2933 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2934 | "dev": true, 2935 | "requires": { 2936 | "is-buffer": "1.1.6" 2937 | } 2938 | } 2939 | } 2940 | }, 2941 | "source-map": { 2942 | "version": "0.5.7", 2943 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 2944 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 2945 | "dev": true 2946 | }, 2947 | "source-map-resolve": { 2948 | "version": "0.5.2", 2949 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", 2950 | "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", 2951 | "dev": true, 2952 | "requires": { 2953 | "atob": "2.1.1", 2954 | "decode-uri-component": "0.2.0", 2955 | "resolve-url": "0.2.1", 2956 | "source-map-url": "0.4.0", 2957 | "urix": "0.1.0" 2958 | } 2959 | }, 2960 | "source-map-url": { 2961 | "version": "0.4.0", 2962 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 2963 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 2964 | "dev": true 2965 | }, 2966 | "sparkles": { 2967 | "version": "1.0.1", 2968 | "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", 2969 | "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", 2970 | "dev": true 2971 | }, 2972 | "split-string": { 2973 | "version": "3.1.0", 2974 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 2975 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 2976 | "dev": true, 2977 | "requires": { 2978 | "extend-shallow": "3.0.2" 2979 | } 2980 | }, 2981 | "sprintf-js": { 2982 | "version": "1.0.3", 2983 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 2984 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 2985 | "dev": true 2986 | }, 2987 | "static-extend": { 2988 | "version": "0.1.2", 2989 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 2990 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 2991 | "dev": true, 2992 | "requires": { 2993 | "define-property": "0.2.5", 2994 | "object-copy": "0.1.0" 2995 | }, 2996 | "dependencies": { 2997 | "define-property": { 2998 | "version": "0.2.5", 2999 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3000 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3001 | "dev": true, 3002 | "requires": { 3003 | "is-descriptor": "0.1.6" 3004 | } 3005 | } 3006 | } 3007 | }, 3008 | "stream-consume": { 3009 | "version": "0.1.1", 3010 | "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz", 3011 | "integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==", 3012 | "dev": true 3013 | }, 3014 | "string-width": { 3015 | "version": "2.1.1", 3016 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 3017 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 3018 | "dev": true, 3019 | "requires": { 3020 | "is-fullwidth-code-point": "2.0.0", 3021 | "strip-ansi": "4.0.0" 3022 | }, 3023 | "dependencies": { 3024 | "ansi-regex": { 3025 | "version": "3.0.0", 3026 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3027 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3028 | "dev": true 3029 | }, 3030 | "strip-ansi": { 3031 | "version": "4.0.0", 3032 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 3033 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 3034 | "dev": true, 3035 | "requires": { 3036 | "ansi-regex": "3.0.0" 3037 | } 3038 | } 3039 | } 3040 | }, 3041 | "string_decoder": { 3042 | "version": "1.1.1", 3043 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 3044 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 3045 | "dev": true, 3046 | "requires": { 3047 | "safe-buffer": "5.1.2" 3048 | } 3049 | }, 3050 | "strip-ansi": { 3051 | "version": "3.0.1", 3052 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 3053 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 3054 | "dev": true, 3055 | "requires": { 3056 | "ansi-regex": "2.1.1" 3057 | } 3058 | }, 3059 | "strip-bom": { 3060 | "version": "1.0.0", 3061 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz", 3062 | "integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=", 3063 | "dev": true, 3064 | "requires": { 3065 | "first-chunk-stream": "1.0.0", 3066 | "is-utf8": "0.2.1" 3067 | } 3068 | }, 3069 | "strip-json-comments": { 3070 | "version": "2.0.1", 3071 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 3072 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 3073 | "dev": true 3074 | }, 3075 | "supports-color": { 3076 | "version": "2.0.0", 3077 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 3078 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 3079 | "dev": true 3080 | }, 3081 | "table": { 3082 | "version": "4.0.2", 3083 | "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", 3084 | "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", 3085 | "dev": true, 3086 | "requires": { 3087 | "ajv": "5.5.2", 3088 | "ajv-keywords": "2.1.1", 3089 | "chalk": "2.4.1", 3090 | "lodash": "4.17.10", 3091 | "slice-ansi": "1.0.0", 3092 | "string-width": "2.1.1" 3093 | }, 3094 | "dependencies": { 3095 | "ansi-styles": { 3096 | "version": "3.2.1", 3097 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 3098 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 3099 | "dev": true, 3100 | "requires": { 3101 | "color-convert": "1.9.1" 3102 | } 3103 | }, 3104 | "chalk": { 3105 | "version": "2.4.1", 3106 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", 3107 | "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", 3108 | "dev": true, 3109 | "requires": { 3110 | "ansi-styles": "3.2.1", 3111 | "escape-string-regexp": "1.0.5", 3112 | "supports-color": "5.4.0" 3113 | } 3114 | }, 3115 | "supports-color": { 3116 | "version": "5.4.0", 3117 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", 3118 | "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", 3119 | "dev": true, 3120 | "requires": { 3121 | "has-flag": "3.0.0" 3122 | } 3123 | } 3124 | } 3125 | }, 3126 | "text-table": { 3127 | "version": "0.2.0", 3128 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 3129 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 3130 | "dev": true 3131 | }, 3132 | "through": { 3133 | "version": "2.3.8", 3134 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 3135 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 3136 | "dev": true 3137 | }, 3138 | "through2": { 3139 | "version": "2.0.3", 3140 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", 3141 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", 3142 | "dev": true, 3143 | "requires": { 3144 | "readable-stream": "2.3.6", 3145 | "xtend": "4.0.1" 3146 | } 3147 | }, 3148 | "tildify": { 3149 | "version": "1.2.0", 3150 | "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", 3151 | "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", 3152 | "dev": true, 3153 | "requires": { 3154 | "os-homedir": "1.0.2" 3155 | } 3156 | }, 3157 | "time-stamp": { 3158 | "version": "1.1.0", 3159 | "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", 3160 | "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", 3161 | "dev": true 3162 | }, 3163 | "tmp": { 3164 | "version": "0.0.33", 3165 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", 3166 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", 3167 | "dev": true, 3168 | "requires": { 3169 | "os-tmpdir": "1.0.2" 3170 | } 3171 | }, 3172 | "to-object-path": { 3173 | "version": "0.3.0", 3174 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 3175 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 3176 | "dev": true, 3177 | "requires": { 3178 | "kind-of": "3.2.2" 3179 | }, 3180 | "dependencies": { 3181 | "kind-of": { 3182 | "version": "3.2.2", 3183 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3184 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3185 | "dev": true, 3186 | "requires": { 3187 | "is-buffer": "1.1.6" 3188 | } 3189 | } 3190 | } 3191 | }, 3192 | "to-regex": { 3193 | "version": "3.0.2", 3194 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 3195 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 3196 | "dev": true, 3197 | "requires": { 3198 | "define-property": "2.0.2", 3199 | "extend-shallow": "3.0.2", 3200 | "regex-not": "1.0.2", 3201 | "safe-regex": "1.1.0" 3202 | } 3203 | }, 3204 | "to-regex-range": { 3205 | "version": "2.1.1", 3206 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 3207 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 3208 | "dev": true, 3209 | "requires": { 3210 | "is-number": "3.0.0", 3211 | "repeat-string": "1.6.1" 3212 | } 3213 | }, 3214 | "type-check": { 3215 | "version": "0.3.2", 3216 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 3217 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 3218 | "dev": true, 3219 | "requires": { 3220 | "prelude-ls": "1.1.2" 3221 | } 3222 | }, 3223 | "type-detect": { 3224 | "version": "4.0.8", 3225 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", 3226 | "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", 3227 | "dev": true 3228 | }, 3229 | "typedarray": { 3230 | "version": "0.0.6", 3231 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 3232 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", 3233 | "dev": true 3234 | }, 3235 | "unc-path-regex": { 3236 | "version": "0.1.2", 3237 | "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", 3238 | "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", 3239 | "dev": true 3240 | }, 3241 | "union-value": { 3242 | "version": "1.0.0", 3243 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", 3244 | "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", 3245 | "dev": true, 3246 | "requires": { 3247 | "arr-union": "3.1.0", 3248 | "get-value": "2.0.6", 3249 | "is-extendable": "0.1.1", 3250 | "set-value": "0.4.3" 3251 | }, 3252 | "dependencies": { 3253 | "extend-shallow": { 3254 | "version": "2.0.1", 3255 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3256 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3257 | "dev": true, 3258 | "requires": { 3259 | "is-extendable": "0.1.1" 3260 | } 3261 | }, 3262 | "set-value": { 3263 | "version": "0.4.3", 3264 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", 3265 | "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", 3266 | "dev": true, 3267 | "requires": { 3268 | "extend-shallow": "2.0.1", 3269 | "is-extendable": "0.1.1", 3270 | "is-plain-object": "2.0.4", 3271 | "to-object-path": "0.3.0" 3272 | } 3273 | } 3274 | } 3275 | }, 3276 | "unique-stream": { 3277 | "version": "1.0.0", 3278 | "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz", 3279 | "integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=", 3280 | "dev": true 3281 | }, 3282 | "unset-value": { 3283 | "version": "1.0.0", 3284 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 3285 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 3286 | "dev": true, 3287 | "requires": { 3288 | "has-value": "0.3.1", 3289 | "isobject": "3.0.1" 3290 | }, 3291 | "dependencies": { 3292 | "has-value": { 3293 | "version": "0.3.1", 3294 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 3295 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 3296 | "dev": true, 3297 | "requires": { 3298 | "get-value": "2.0.6", 3299 | "has-values": "0.1.4", 3300 | "isobject": "2.1.0" 3301 | }, 3302 | "dependencies": { 3303 | "isobject": { 3304 | "version": "2.1.0", 3305 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 3306 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 3307 | "dev": true, 3308 | "requires": { 3309 | "isarray": "1.0.0" 3310 | } 3311 | } 3312 | } 3313 | }, 3314 | "has-values": { 3315 | "version": "0.1.4", 3316 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 3317 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 3318 | "dev": true 3319 | } 3320 | } 3321 | }, 3322 | "urix": { 3323 | "version": "0.1.0", 3324 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 3325 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 3326 | "dev": true 3327 | }, 3328 | "use": { 3329 | "version": "3.1.0", 3330 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", 3331 | "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", 3332 | "dev": true, 3333 | "requires": { 3334 | "kind-of": "6.0.2" 3335 | } 3336 | }, 3337 | "util-deprecate": { 3338 | "version": "1.0.2", 3339 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 3340 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 3341 | "dev": true 3342 | }, 3343 | "v8flags": { 3344 | "version": "2.1.1", 3345 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", 3346 | "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", 3347 | "dev": true, 3348 | "requires": { 3349 | "user-home": "1.1.1" 3350 | }, 3351 | "dependencies": { 3352 | "user-home": { 3353 | "version": "1.1.1", 3354 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", 3355 | "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", 3356 | "dev": true 3357 | } 3358 | } 3359 | }, 3360 | "vinyl": { 3361 | "version": "0.5.3", 3362 | "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", 3363 | "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", 3364 | "dev": true, 3365 | "requires": { 3366 | "clone": "1.0.4", 3367 | "clone-stats": "0.0.1", 3368 | "replace-ext": "0.0.1" 3369 | } 3370 | }, 3371 | "vinyl-fs": { 3372 | "version": "0.3.14", 3373 | "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz", 3374 | "integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=", 3375 | "dev": true, 3376 | "requires": { 3377 | "defaults": "1.0.3", 3378 | "glob-stream": "3.1.18", 3379 | "glob-watcher": "0.0.6", 3380 | "graceful-fs": "3.0.11", 3381 | "mkdirp": "0.5.1", 3382 | "strip-bom": "1.0.0", 3383 | "through2": "0.6.5", 3384 | "vinyl": "0.4.6" 3385 | }, 3386 | "dependencies": { 3387 | "clone": { 3388 | "version": "0.2.0", 3389 | "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", 3390 | "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", 3391 | "dev": true 3392 | }, 3393 | "graceful-fs": { 3394 | "version": "3.0.11", 3395 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", 3396 | "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", 3397 | "dev": true, 3398 | "requires": { 3399 | "natives": "1.1.3" 3400 | } 3401 | }, 3402 | "isarray": { 3403 | "version": "0.0.1", 3404 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 3405 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 3406 | "dev": true 3407 | }, 3408 | "readable-stream": { 3409 | "version": "1.0.34", 3410 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", 3411 | "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", 3412 | "dev": true, 3413 | "requires": { 3414 | "core-util-is": "1.0.2", 3415 | "inherits": "2.0.3", 3416 | "isarray": "0.0.1", 3417 | "string_decoder": "0.10.31" 3418 | } 3419 | }, 3420 | "string_decoder": { 3421 | "version": "0.10.31", 3422 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 3423 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 3424 | "dev": true 3425 | }, 3426 | "through2": { 3427 | "version": "0.6.5", 3428 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", 3429 | "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", 3430 | "dev": true, 3431 | "requires": { 3432 | "readable-stream": "1.0.34", 3433 | "xtend": "4.0.1" 3434 | } 3435 | }, 3436 | "vinyl": { 3437 | "version": "0.4.6", 3438 | "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", 3439 | "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", 3440 | "dev": true, 3441 | "requires": { 3442 | "clone": "0.2.0", 3443 | "clone-stats": "0.0.1" 3444 | } 3445 | } 3446 | } 3447 | }, 3448 | "which": { 3449 | "version": "1.3.0", 3450 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", 3451 | "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", 3452 | "dev": true, 3453 | "requires": { 3454 | "isexe": "2.0.0" 3455 | } 3456 | }, 3457 | "wordwrap": { 3458 | "version": "1.0.0", 3459 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 3460 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 3461 | "dev": true 3462 | }, 3463 | "wrappy": { 3464 | "version": "1.0.2", 3465 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 3466 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 3467 | "dev": true 3468 | }, 3469 | "write": { 3470 | "version": "0.2.1", 3471 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", 3472 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", 3473 | "dev": true, 3474 | "requires": { 3475 | "mkdirp": "0.5.1" 3476 | } 3477 | }, 3478 | "xtend": { 3479 | "version": "4.0.1", 3480 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 3481 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 3482 | "dev": true 3483 | }, 3484 | "yallist": { 3485 | "version": "2.1.2", 3486 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 3487 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 3488 | "dev": true 3489 | } 3490 | } 3491 | } 3492 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gulp-task-loader", 3 | "repository": "https://github.com/hontas/gulp-task-loader.git", 4 | "version": "1.5.0", 5 | "description": "Load gulp tasks from folder", 6 | "main": "index.js", 7 | "scripts": { 8 | "major": "npm version major -m 'New major version %s' && npm publish", 9 | "minor": "npm version minor -m 'New minor version %s' && npm publish", 10 | "patch": "npm version patch -m 'New patch version %s' && npm publish", 11 | "postpublish": "git push --follow-tags", 12 | "test": "eslint . && mocha --reporter dot", 13 | "tdd": "npm run test -- --watch --reporter nyan" 14 | }, 15 | "keywords": [ 16 | "gulp", 17 | "task", 18 | "loader" 19 | ], 20 | "author": "Pontus Lundin", 21 | "license": "MIT", 22 | "peerDependencies": { 23 | "gulp": "*" 24 | }, 25 | "devDependencies": { 26 | "chai": "^4.1.2", 27 | "coffee-script": "^1.10.0", 28 | "eslint": "^4.19.1", 29 | "gulp": "^3.9.1", 30 | "mocha": "^5.1.1" 31 | }, 32 | "dependencies": { 33 | "object-assign": "^4.0.1" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /test/coffeeScript/coffee.coffee: -------------------------------------------------------------------------------- 1 | module.exports = -> 2 | true; 3 | 4 | module.exports.dependencies = ['dep']; 5 | -------------------------------------------------------------------------------- /test/filterOutFiles/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true 3 | } 4 | -------------------------------------------------------------------------------- /test/filterOutFiles/task.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return; 5 | }; 6 | -------------------------------------------------------------------------------- /test/includeRequireExtensions/task.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return '.js'; 5 | }; 6 | -------------------------------------------------------------------------------- /test/includeRequireExtensions/task2.jscript: -------------------------------------------------------------------------------- 1 | module.exports = function() { 2 | return '.jscript'; 3 | }; 4 | -------------------------------------------------------------------------------- /test/noDeps/noDeps.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return 'no dependencies'; 5 | }; 6 | -------------------------------------------------------------------------------- /test/passingGulpAndOptionsToTasks/test.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return this; 5 | }; 6 | -------------------------------------------------------------------------------- /test/subtasks/annotate/add.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return 'add'; 5 | }; 6 | -------------------------------------------------------------------------------- /test/subtasks/annotate/docs/comment.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return 'comment'; 5 | }; 6 | -------------------------------------------------------------------------------- /test/subtasks/annotate/remove.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return 'remove'; 5 | }; 6 | -------------------------------------------------------------------------------- /test/test.js: -------------------------------------------------------------------------------- 1 | /*eslint no-unused-expressions: 0 */ 2 | 'use strict'; 3 | 4 | var gulp = require('gulp'); 5 | var expect = require('chai').expect; 6 | 7 | function getTask(taskName) { 8 | return gulp.tasks[taskName]; 9 | } 10 | 11 | function callTask(taskName) { 12 | return getTask(taskName).fn(); 13 | } 14 | 15 | function resetTasks() { 16 | gulp.tasks = {}; 17 | } 18 | 19 | describe('gulp-task-loader', function() { 20 | afterEach(function() { 21 | resetTasks(); 22 | }); 23 | 24 | describe('without any supplied options', function() { 25 | beforeEach(function() { 26 | require('../index.js')(); 27 | }); 28 | 29 | it('should use default options', function() { 30 | expect(callTask('default')).to.equal('default'); 31 | }); 32 | }); 33 | 34 | describe('can pass gulp and options to tasks', function() { 35 | var options = { 36 | dir: 'test/passingGulpAndOptionsToTasks', 37 | foo: 'bar' 38 | }; 39 | 40 | beforeEach(function() { 41 | require('../index.js')(options); 42 | }); 43 | 44 | it('should be invoked with reference to gulp', function() { 45 | var self = callTask('test'); 46 | expect(self).to.have.property('gulp'); 47 | expect(self.gulp).to.equal(gulp); 48 | }); 49 | 50 | it('should contain options as opts', function() { 51 | var self = callTask('test'); 52 | expect(self).to.have.property('opts'); 53 | expect(self.opts).to.have.keys(['dir', 'exts', 'foo']); 54 | }); 55 | }); 56 | 57 | describe('without dependencies', function() { 58 | beforeEach(function() { 59 | require('../index.js')('test/noDeps'); 60 | }); 61 | 62 | it('should return true', function() { 63 | expect(callTask('noDeps')).to.equal('no dependencies'); 64 | }); 65 | 66 | it('should not have any dependencies', function() { 67 | expect(getTask('noDeps').dep).to.be.empty; 68 | }); 69 | }); 70 | 71 | describe('with dependencies', function() { 72 | beforeEach(function() { 73 | require('../index.js')('test/withDeps'); 74 | }); 75 | 76 | it('should return true', function() { 77 | expect(callTask('withDeps')).to.equal('with deps'); 78 | }); 79 | 80 | it('should have dependencies', function() { 81 | expect(getTask('withDeps').dep).to.not.be.empty; 82 | }); 83 | }); 84 | 85 | describe('load subtasks in nested folders', function () { 86 | beforeEach(function() { 87 | require('../index.js')('test/subtasks'); 88 | }); 89 | 90 | it('Should load tasks in a subfolder and namespace them', function () { 91 | expect(getTask('annotate:add')).to.be.ok; 92 | expect(getTask('annotate:remove')).to.be.ok; 93 | expect(getTask('annotate:docs:comment')).to.be.ok; 94 | }); 95 | }); 96 | 97 | describe('filter non js files', function() { 98 | it('should filter .jshintrc', function() { 99 | expect(require('../index.js').bind(null, 'test/filterOutFiles')).to.not.throw(); 100 | }); 101 | }); 102 | 103 | describe('include extensions in require.extensions', function() { 104 | describe('coffeescript', function() { 105 | beforeEach(function() { 106 | require('coffee-script/register'); 107 | require('../index.js')({ dir: 'test/coffeeScript' }); 108 | }); 109 | 110 | it('should return true', function() { 111 | expect(callTask('coffee')).to.be.true; 112 | }); 113 | 114 | it('should have dependencies', function() { 115 | expect(getTask('coffee').dep).to.eql(['dep']); 116 | }); 117 | }); 118 | 119 | describe('jscript and js', function() { 120 | var options = { 121 | dir: 'test/includeRequireExtensions', 122 | exts: ['.jscript', '.js'] 123 | }; 124 | 125 | beforeEach(function() { 126 | require('../index.js')(options); 127 | }); 128 | 129 | it('task.js should return true', function() { 130 | expect(callTask('task')).to.equal('.js'); 131 | }); 132 | 133 | it('task2.jscript should also return true', function() { 134 | expect(callTask('task2')).to.equal('.jscript'); 135 | }); 136 | }); 137 | }); 138 | 139 | describe('subfolder tasks referenced by ./', function () { 140 | beforeEach(function() { 141 | require('../index.js')('./test/subtasks'); 142 | }); 143 | 144 | it('Should load tasks in a subfolder and namespace them as before', function () { 145 | expect(getTask('annotate:add')).to.be.ok; 146 | expect(getTask('annotate:remove')).to.be.ok; 147 | expect(getTask('annotate:docs:comment')).to.be.ok; 148 | }); 149 | }); 150 | 151 | describe('subfolder tasks referenced with trailing /', function () { 152 | beforeEach(function() { 153 | require('../index.js')('./test/subtasks/'); 154 | }); 155 | 156 | it('Should load tasks in a subfolder and namespace them as before', function () { 157 | expect(getTask('annotate:add')).to.be.ok; 158 | expect(getTask('annotate:remove')).to.be.ok; 159 | expect(getTask('annotate:docs:comment')).to.be.ok; 160 | }); 161 | }); 162 | }); 163 | -------------------------------------------------------------------------------- /test/withDeps/withDeps.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = function() { 4 | return 'with deps'; 5 | }; 6 | 7 | module.exports.dependencies = ['dep']; 8 | --------------------------------------------------------------------------------