pax_global_header00006660000000000000000000000064146207006760014522gustar00rootroot0000000000000052 comment=cb0ad3931175ce5bd27cf4622e13d9f3f4beb5cd isaacs-node-touch-c371e69/000077500000000000000000000000001462070067600153735ustar00rootroot00000000000000isaacs-node-touch-c371e69/.gitignore000066400000000000000000000000611462070067600173600ustar00rootroot00000000000000node_modules/ coverage/ .nyc_output/ nyc_output/ isaacs-node-touch-c371e69/.travis.yml000066400000000000000000000002211462070067600174770ustar00rootroot00000000000000language: node_js sudo: false node_js: - 8 - 6 - 4 notifications: email: false cache: directories: - $HOME/.npm - node_modules isaacs-node-touch-c371e69/LICENSE000066400000000000000000000013541462070067600164030ustar00rootroot00000000000000The ISC License Copyright (c) Isaac Z. Schlueter Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. isaacs-node-touch-c371e69/README.md000066400000000000000000000023101462070067600166460ustar00rootroot00000000000000# node-touch For all your node touching needs. ## Installing ```bash npm install touch ``` ## CLI Usage: See `man touch` This package exports a binary called `nodetouch` that works mostly like the unix builtin `touch(1)`. ## API Usage: ```javascript var touch = require("touch") ``` Gives you the following functions: * `touch(filename, options, cb)` * `touch.sync(filename, options)` * `touch.ftouch(fd, options, cb)` * `touch.ftouchSync(fd, options)` All the `options` objects are optional. All the async functions return a Promise. If a callback function is provided, then it's attached to the Promise. ## Options * `force` like `touch -f` Boolean * `time` like `touch -t ` Can be a Date object, or any parseable Date string, or epoch ms number. * `atime` like `touch -a` Can be either a Boolean, or a Date. * `mtime` like `touch -m` Can be either a Boolean, or a Date. * `ref` like `touch -r ` Must be path to a file. * `nocreate` like `touch -c` Boolean If neither `atime` nor `mtime` are set, then both values are set. If one of them is set, then the other is not. ## cli This package creates a `nodetouch` command line executable that works very much like the unix builtin `touch(1)` isaacs-node-touch-c371e69/bin/000077500000000000000000000000001462070067600161435ustar00rootroot00000000000000isaacs-node-touch-c371e69/bin/nodetouch.js000077500000000000000000000050641462070067600205010ustar00rootroot00000000000000#!/usr/bin/env node const touch = require("../index.js") const usage = code => { console[code ? 'error' : 'log']( 'usage:\n' + 'touch [-acfm] [-r file] [-t [[CC]YY]MMDDhhmm[.SS]] file ...' ) process.exit(code) } const singleFlags = { a: 'atime', m: 'mtime', c: 'nocreate', f: 'force' } const singleOpts = { r: 'ref', t: 'time' } const files = [] const args = process.argv.slice(2) const options = {} for (let i = 0; i < args.length; i++) { const arg = args[i] if (!arg.match(/^-/)) { files.push(arg) continue } // expand shorthands if (arg.charAt(1) !== '-') { const expand = [] for (let f = 1; f < arg.length; f++) { const fc = arg.charAt(f) const sf = singleFlags[fc] const so = singleOpts[fc] if (sf) expand.push('--' + sf) else if (so) { const soslice = arg.slice(f + 1) const soval = soslice.charAt(0) === '=' ? soslice : '=' + soslice expand.push('--' + so + soval) f = arg.length } else if (arg !== '-' + fc) expand.push('-' + fc) } if (expand.length) { args.splice.apply(args, [i, 1].concat(expand)) i-- continue } } const argsplit = arg.split('=') const key = argsplit.shift().replace(/^\-\-/, '') const val = argsplit.length ? argsplit.join('=') : null switch (key) { case 'time': const timestr = val || args[++i] // [-t [[CC]YY]MMDDhhmm[.SS]] const parsedtime = timestr.match( /^(([0-9]{2})?([0-9]{2}))?([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})(\.([0-9]{2}))?$/ ) if (!parsedtime) { console.error('touch: out of range or illegal ' + 'time specification: ' + '[[CC]YY]MMDDhhmm[.SS]') process.exit(1) } else { const y = +parsedtime[1] const year = parsedtime[2] ? y : y <= 68 ? 2000 + y : 1900 + y const MM = +parsedtime[4] - 1 const dd = +parsedtime[5] const hh = +parsedtime[6] const mm = +parsedtime[7] const ss = +parsedtime[8] options.time = new Date(Date.UTC(year, MM, dd, hh, mm, ss)) } continue case 'ref': options.ref = val || args[++i] continue case 'mtime': case 'nocreate': case 'atime': case 'force': options[key] = true continue default: console.error('touch: illegal option -- ' + arg) usage(1) } } if (!files.length) usage() process.exitCode = 0 Promise.all(files.map(f => touch(f, options))) .catch(er => process.exitCode = 1) isaacs-node-touch-c371e69/index.js000066400000000000000000000115541462070067600170460ustar00rootroot00000000000000'use strict' const EE = require('events').EventEmitter const cons = require('constants') const fs = require('fs') module.exports = (f, options, cb) => { if (typeof options === 'function') cb = options, options = {} const p = new Promise((res, rej) => { new Touch(validOpts(options, f, null)) .on('done', res).on('error', rej) }) return cb ? p.then(res => cb(null, res), cb) : p } module.exports.sync = module.exports.touchSync = (f, options) => (new TouchSync(validOpts(options, f, null)), undefined) module.exports.ftouch = (fd, options, cb) => { if (typeof options === 'function') cb = options, options = {} const p = new Promise((res, rej) => { new Touch(validOpts(options, null, fd)) .on('done', res).on('error', rej) }) return cb ? p.then(res => cb(null, res), cb) : p } module.exports.ftouchSync = (fd, opt) => (new TouchSync(validOpts(opt, null, fd)), undefined) const validOpts = (options, path, fd) => { options = Object.create(options || {}) options.fd = fd options.path = path // {mtime: true}, {ctime: true} // If set to something else, then treat as epoch ms value const now = new Date(options.time || Date.now()).getTime() / 1000 if (!options.atime && !options.mtime) options.atime = options.mtime = now else { if (true === options.atime) options.atime = now if (true === options.mtime) options.mtime = now } let oflags = 0 if (!options.force) oflags = oflags | cons.O_RDWR if (!options.nocreate) oflags = oflags | cons.O_CREAT options.oflags = oflags return options } class Touch extends EE { constructor (options) { super(options) this.fd = options.fd this.path = options.path this.atime = options.atime this.mtime = options.mtime this.ref = options.ref this.nocreate = !!options.nocreate this.force = !!options.force this.closeAfter = options.closeAfter this.oflags = options.oflags this.options = options if (typeof this.fd !== 'number') { this.closeAfter = true this.open() } else this.onopen(null, this.fd) } emit (ev, data) { // we only emit when either done or erroring // in both cases, need to close this.close() return super.emit(ev, data) } close () { if (typeof this.fd === 'number' && this.closeAfter) fs.close(this.fd, () => {}) } open () { fs.open(this.path, this.oflags, (er, fd) => this.onopen(er, fd)) } onopen (er, fd) { if (er) { if (er.code === 'EISDIR') this.onopen(null, null) else if (er.code === 'ENOENT' && this.nocreate) this.emit('done') else this.emit('error', er) } else { this.fd = fd if (this.ref) this.statref() else if (!this.atime || !this.mtime) this.fstat() else this.futimes() } } statref () { fs.stat(this.ref, (er, st) => { if (er) this.emit('error', er) else this.onstatref(st) }) } onstatref (st) { this.atime = this.atime && st.atime.getTime()/1000 this.mtime = this.mtime && st.mtime.getTime()/1000 if (!this.atime || !this.mtime) this.fstat() else this.futimes() } fstat () { const stat = this.fd ? 'fstat' : 'stat' const target = this.fd || this.path fs[stat](target, (er, st) => { if (er) this.emit('error', er) else this.onfstat(st) }) } onfstat (st) { if (typeof this.atime !== 'number') this.atime = st.atime.getTime()/1000 if (typeof this.mtime !== 'number') this.mtime = st.mtime.getTime()/1000 this.futimes() } futimes () { const utimes = this.fd ? 'futimes' : 'utimes' const target = this.fd || this.path fs[utimes](target, ''+this.atime, ''+this.mtime, er => { if (er) this.emit('error', er) else this.emit('done') }) } } class TouchSync extends Touch { open () { try { this.onopen(null, fs.openSync(this.path, this.oflags)) } catch (er) { this.onopen(er) } } statref () { let threw = true try { this.onstatref(fs.statSync(this.ref)) threw = false } finally { if (threw) this.close() } } fstat () { let threw = true const stat = this.fd ? 'fstatSync' : 'statSync' const target = this.fd || this.path try { this.onfstat(fs[stat](target)) threw = false } finally { if (threw) this.close() } } futimes () { let threw = true const utimes = this.fd ? 'futimesSync' : 'utimesSync' const target = this.fd || this.path try { fs[utimes](target, this.atime, this.mtime) threw = false } finally { if (threw) this.close() } this.emit('done') } close () { if (typeof this.fd === 'number' && this.closeAfter) try { fs.closeSync(this.fd) } catch (er) {} } } isaacs-node-touch-c371e69/package-lock.json000066400000000000000000004201071462070067600206130ustar00rootroot00000000000000{ "name": "touch", "version": "3.1.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "touch", "version": "3.1.1", "license": "ISC", "bin": { "nodetouch": "bin/nodetouch.js" }, "devDependencies": { "mutate-fs": "^1.1.0", "tap": "^10.7.0" } }, "node_modules/ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { "sprintf-js": "~1.0.2" } }, "node_modules/asn1": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "dev": true, "dependencies": { "safer-buffer": "~2.1.0" } }, "node_modules/assert-plus": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", "integrity": "sha512-u1L0ZLywRziOVjUhRxI0Qg9G+4RnFB9H/Rq40YWn0dieDgO7vAYeJz6jKAO6t/aruzlDFLAPkQTT87e+f8Imaw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, "node_modules/aws-sign2": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", "integrity": "sha512-JnJpAS0p9RmixkOvW2XwDxxzs1bd4/VAGIl6Q0EC5YOo+p+hqIhtDhn/nmFnB/xUNXbLkpE2mOjgVIBRKD4xYw==", "dev": true, "engines": { "node": "*" } }, "node_modules/aws4": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", "dev": true }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "node_modules/bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "dev": true, "dependencies": { "tweetnacl": "^0.14.3" } }, "node_modules/bind-obj-methods": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-1.0.0.tgz", "integrity": "sha512-hIPy2U/FBRlSwCfqrHgY9Te/A35F+4Jf+c4ewfwwpGzUlnxAv8MBMWg49ywM4raR9ZGyq6OyxwHUizz8GKBUkg==", "dev": true }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, "node_modules/boom": { "version": "2.10.1", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha512-KbiZEa9/vofNcVJXGwdWWn25reQ3V3dHBWbS07FTF3/TOehLnm9GEhJV4T6ZvGPkShRpmUqYwnaCrkj0mRnP6Q==", "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", "dev": true, "dependencies": { "hoek": "2.x.x" }, "engines": { "node": ">=0.10.40" } }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "node_modules/caseless": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", "integrity": "sha512-ODLXH644w9C2fMPAm7bMDQ3GRvipZWZfKc+8As6hIadRIelE0n0xZuN38NS6kiK3KPEVrpymmQD8bvncAHWQkQ==", "dev": true }, "node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/clean-yaml-object": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, "bin": { "color-support": "bin.js" } }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "dependencies": { "delayed-stream": "~1.0.0" }, "engines": { "node": ">= 0.8" } }, "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, "node_modules/coveralls": { "version": "2.13.3", "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-2.13.3.tgz", "integrity": "sha512-iiAmn+l1XqRwNLXhW8Rs5qHZRFMYp9ZIPjEOVRpC/c4so6Y/f4/lFi0FfR5B9cCqgyhkJ5cZmbvcVRfP8MHchw==", "dev": true, "dependencies": { "js-yaml": "3.6.1", "lcov-parse": "0.0.10", "log-driver": "1.2.5", "minimist": "1.2.0", "request": "2.79.0" }, "bin": { "coveralls": "bin/coveralls.js" }, "engines": { "node": ">=0.8.6" } }, "node_modules/coveralls/node_modules/esprima": { "version": "2.7.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", "dev": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" }, "engines": { "node": ">=0.10.0" } }, "node_modules/coveralls/node_modules/js-yaml": { "version": "3.6.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz", "integrity": "sha512-BLv3oxhfET+w5fjPwq3PsAsxzi9i3qzU//HMpWVz0A6KplF86HdR9x2TGnv9DXhSUrO7LO8czUiTd3yb3mLSvg==", "dev": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^2.6.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "node_modules/cross-spawn": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", "dev": true, "dependencies": { "lru-cache": "^4.0.1", "which": "^1.2.9" } }, "node_modules/cryptiles": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", "integrity": "sha512-FFN5KwpvvQTTS5hWPxrU8/QE4kQUc6uwZcrnlMBN82t1MgAtq8mnoDwINBly9Tdr02seeIIhtdF+UH1feBYGog==", "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", "dev": true, "dependencies": { "boom": "2.x.x" }, "engines": { "node": ">=0.10.40" } }, "node_modules/dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "dev": true, "dependencies": { "assert-plus": "^1.0.0" }, "engines": { "node": ">=0.10" } }, "node_modules/dashdash/node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { "ms": "2.0.0" } }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true, "engines": { "node": ">=0.4.0" } }, "node_modules/diff": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", "integrity": "sha512-VzVc42hMZbYU9Sx/ltb7KYuQ6pqAw+cbFWVy4XKdkuEL2CFaRLGEnISPs7YdzaUGpi+CpIqvRmu7hPQ4T7EQ5w==", "dev": true, "engines": { "node": ">=0.3.1" } }, "node_modules/ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "dev": true, "dependencies": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" } }, "node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { "node": ">=0.8.0" } }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" }, "engines": { "node": ">=4" } }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "dev": true }, "node_modules/extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", "dev": true, "engines": [ "node >=0.6.0" ] }, "node_modules/foreground-child": { "version": "1.5.6", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", "dev": true, "dependencies": { "cross-spawn": "^4", "signal-exit": "^3.0.0" } }, "node_modules/forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", "dev": true, "engines": { "node": "*" } }, "node_modules/form-data": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", "integrity": "sha512-8HWGSLAPr+AG0hBpsqi5Ob8HrLStN/LWeqhpFl14d7FJgHK48TmgLoALPz69XSUR65YJzDfLUX/BM8+MLJLghQ==", "dev": true, "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.5", "mime-types": "^2.1.12" }, "engines": { "node": ">= 0.12" } }, "node_modules/fs-exists-cached": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz", "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==", "dev": true }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "node_modules/function-loop": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-1.0.2.tgz", "integrity": "sha512-Iw4MzMfS3udk/rqxTiDDCllhGwlOrsr50zViTOO/W6lS/9y6B1J0BD2VZzrnWUYBJsl3aeqjgR5v7bWWhZSYbA==", "dev": true }, "node_modules/generate-function": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", "dev": true, "dependencies": { "is-property": "^1.0.2" } }, "node_modules/generate-object-property": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", "integrity": "sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ==", "dev": true, "dependencies": { "is-property": "^1.0.0" } }, "node_modules/getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "dependencies": { "assert-plus": "^1.0.0" } }, "node_modules/getpass/node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, "engines": { "node": "*" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/har-validator": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", "integrity": "sha512-P6tFV+wCcUL3nbyTDAvveDySfbhy0XkDtAIfZP6HITjM2WUsiPna/Eg1Yy93SFXvahqoX+kt0n+6xlXKDXYowA==", "deprecated": "this library is no longer supported", "dev": true, "dependencies": { "chalk": "^1.1.1", "commander": "^2.9.0", "is-my-json-valid": "^2.12.4", "pinkie-promise": "^2.0.0" }, "bin": { "har-validator": "bin/har-validator" }, "engines": { "node": ">=0.10" } }, "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/hawk": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", "integrity": "sha512-X8xbmTc1cbPXcQV4WkLcRMALuyoxhfpFATmyuCxJPOAvrDS4DNnsTAOmKUxMTOWU6TzrTOkxPKwIx5ZOpJVSrg==", "deprecated": "This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.", "dev": true, "dependencies": { "boom": "2.x.x", "cryptiles": "2.x.x", "hoek": "2.x.x", "sntp": "1.x.x" }, "engines": { "node": ">=0.10.32" } }, "node_modules/hoek": { "version": "2.16.3", "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", "integrity": "sha512-V6Yw1rIcYV/4JsnggjBU0l4Kr+EXhpwqXRusENU1Xx6ro00IHPHYNynCuBTOZAPlr3AAmLvchH9I7N/VUdvOwQ==", "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", "dev": true, "engines": { "node": ">=0.10.40" } }, "node_modules/http-signature": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", "integrity": "sha512-iUn0NcRULlDGtqNLN1Jxmzayk8ogm7NToldASyZBpM2qggbphjXzNOiw3piN8tgz+e/DRs6X5gAzFwTI6BCRcg==", "dev": true, "dependencies": { "assert-plus": "^0.2.0", "jsprim": "^1.2.2", "sshpk": "^1.7.0" }, "engines": { "node": ">=0.8", "npm": ">=1.3.7" } }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "node_modules/is-my-ip-valid": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.1.tgz", "integrity": "sha512-jxc8cBcOWbNK2i2aTkCZP6i7wkHF1bqKFrwEHuN5Jtg5BSaZHUZQ/JTOJwoV41YvHnOaRyWWh72T/KvfNz9DJg==", "dev": true }, "node_modules/is-my-json-valid": { "version": "2.20.6", "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.6.tgz", "integrity": "sha512-1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==", "dev": true, "dependencies": { "generate-function": "^2.0.0", "generate-object-property": "^1.1.0", "is-my-ip-valid": "^1.0.0", "jsonpointer": "^5.0.0", "xtend": "^4.0.0" } }, "node_modules/is-property": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==", "dev": true }, "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "node_modules/isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "dev": true }, "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "node_modules/jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", "dev": true }, "node_modules/json-schema": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "dev": true }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, "node_modules/jsonpointer": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/jsprim": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, "dependencies": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", "json-schema": "0.4.0", "verror": "1.10.0" }, "engines": { "node": ">=0.6.0" } }, "node_modules/jsprim/node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/lcov-parse": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", "integrity": "sha512-YsL0D4QF/vNlNcHPXM832si9d2ROryFQ4r4JvcfMIiUYr1f6WULuO75YCtxNu4P+XMRHz0SfUc524+c+U3G5kg==", "dev": true }, "node_modules/log-driver": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.5.tgz", "integrity": "sha512-UwqFFU6yztduP6DXcjcIjrIyvWQMv/spvrK2vji37XiUykpCm1qTUUM3zO+ER7qjL3CtmbWKAoVC5+bO2HwiNA==", "dev": true, "engines": { "node": ">=0.8.6" } }, "node_modules/lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "dependencies": { "mime-db": "1.52.0" }, "engines": { "node": ">= 0.6" } }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { "brace-expansion": "^1.1.7" }, "engines": { "node": "*" } }, "node_modules/minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw==", "dev": true }, "node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "node_modules/mutate-fs": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/mutate-fs/-/mutate-fs-1.1.0.tgz", "integrity": "sha512-s4Zir41W2Sk9XkHto6hD39JTviRfrwSCurl7E1gOSe4HDRh822JLRGUO434Tq/jgEs6ewg1TuB8cazMHHhnnnA==", "dev": true }, "node_modules/nyc": { "version": "11.9.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.9.0.tgz", "integrity": "sha512-w8OdJAhXL5izerzZMdqzYKMj/pgHJyY3qEPYBjLLxrhcVoHEY9pU5ENIiZyCgG9OR7x3VcUMoD40o6PtVpfR4g==", "bundleDependencies": [ "archy", "arrify", "caching-transform", "convert-source-map", "debug-log", "default-require-extensions", "find-cache-dir", "find-up", "foreground-child", "glob", "istanbul-lib-coverage", "istanbul-lib-hook", "istanbul-lib-instrument", "istanbul-lib-report", "istanbul-lib-source-maps", "istanbul-reports", "md5-hex", "merge-source-map", "micromatch", "mkdirp", "resolve-from", "rimraf", "signal-exit", "spawn-wrap", "test-exclude", "yargs", "yargs-parser" ], "dev": true, "dependencies": { "archy": "^1.0.0", "arrify": "^1.0.1", "caching-transform": "^1.0.0", "convert-source-map": "^1.5.1", "debug-log": "^1.0.1", "default-require-extensions": "^1.0.0", "find-cache-dir": "^0.1.1", "find-up": "^2.1.0", "foreground-child": "^1.5.3", "glob": "^7.0.6", "istanbul-lib-coverage": "^1.1.2", "istanbul-lib-hook": "^1.1.0", "istanbul-lib-instrument": "^1.10.0", "istanbul-lib-report": "^1.1.3", "istanbul-lib-source-maps": "^1.2.3", "istanbul-reports": "^1.4.0", "md5-hex": "^1.2.0", "merge-source-map": "^1.1.0", "micromatch": "^3.1.10", "mkdirp": "^0.5.0", "resolve-from": "^2.0.0", "rimraf": "^2.6.2", "signal-exit": "^3.0.1", "spawn-wrap": "^1.4.2", "test-exclude": "^4.2.0", "yargs": "11.1.0", "yargs-parser": "^8.0.0" }, "bin": { "nyc": "bin/nyc.js" } }, "node_modules/nyc/node_modules/align-text": { "version": "0.1.4", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "dependencies": { "kind-of": "^3.0.2", "longest": "^1.0.1", "repeat-string": "^1.5.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/amdefine": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "BSD-3-Clause OR MIT", "engines": { "node": ">=0.4.2" } }, "node_modules/nyc/node_modules/ansi-regex": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/ansi-styles": { "version": "2.2.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/append-transform": { "version": "0.4.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "default-require-extensions": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/archy": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/arr-diff": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/arr-flatten": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/arr-union": { "version": "3.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/array-unique": { "version": "0.3.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/arrify": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/assign-symbols": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/async": { "version": "1.5.2", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/atob": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "(MIT OR Apache-2.0)", "bin": { "atob": "bin/atob.js" }, "engines": { "node": ">= 4.5.0" } }, "node_modules/nyc/node_modules/babel-code-frame": { "version": "6.26.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "chalk": "^1.1.3", "esutils": "^2.0.2", "js-tokens": "^3.0.2" } }, "node_modules/nyc/node_modules/babel-generator": { "version": "6.26.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "babel-messages": "^6.23.0", "babel-runtime": "^6.26.0", "babel-types": "^6.26.0", "detect-indent": "^4.0.0", "jsesc": "^1.3.0", "lodash": "^4.17.4", "source-map": "^0.5.7", "trim-right": "^1.0.1" } }, "node_modules/nyc/node_modules/babel-messages": { "version": "6.23.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "babel-runtime": "^6.22.0" } }, "node_modules/nyc/node_modules/babel-runtime": { "version": "6.26.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" } }, "node_modules/nyc/node_modules/babel-template": { "version": "6.26.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "babel-runtime": "^6.26.0", "babel-traverse": "^6.26.0", "babel-types": "^6.26.0", "babylon": "^6.18.0", "lodash": "^4.17.4" } }, "node_modules/nyc/node_modules/babel-traverse": { "version": "6.26.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "babel-code-frame": "^6.26.0", "babel-messages": "^6.23.0", "babel-runtime": "^6.26.0", "babel-types": "^6.26.0", "babylon": "^6.18.0", "debug": "^2.6.8", "globals": "^9.18.0", "invariant": "^2.2.2", "lodash": "^4.17.4" } }, "node_modules/nyc/node_modules/babel-types": { "version": "6.26.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "babel-runtime": "^6.26.0", "esutils": "^2.0.2", "lodash": "^4.17.4", "to-fast-properties": "^1.0.3" } }, "node_modules/nyc/node_modules/babylon": { "version": "6.18.0", "dev": true, "inBundle": true, "license": "MIT", "bin": { "babylon": "bin/babylon.js" } }, "node_modules/nyc/node_modules/balanced-match": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/base": { "version": "0.11.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", "component-emitter": "^1.2.1", "define-property": "^1.0.0", "isobject": "^3.0.1", "mixin-deep": "^1.2.0", "pascalcase": "^0.1.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/define-property": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/is-accessor-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/is-data-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/is-descriptor": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/base/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "node_modules/nyc/node_modules/braces": { "version": "2.3.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", "extend-shallow": "^2.0.1", "fill-range": "^4.0.0", "isobject": "^3.0.1", "repeat-element": "^1.1.2", "snapdragon": "^0.8.1", "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/braces/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/builtin-modules": { "version": "1.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/cache-base": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", "get-value": "^2.0.6", "has-value": "^1.0.0", "isobject": "^3.0.1", "set-value": "^2.0.0", "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/cache-base/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/caching-transform": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "md5-hex": "^1.2.0", "mkdirp": "^0.5.1", "write-file-atomic": "^1.1.4" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/camelcase": { "version": "1.2.1", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/center-align": { "version": "0.1.3", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "dependencies": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/chalk": { "version": "1.1.3", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", "has-ansi": "^2.0.0", "strip-ansi": "^3.0.0", "supports-color": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/class-utils": { "version": "0.3.6", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-union": "^3.1.0", "define-property": "^0.2.5", "isobject": "^3.0.0", "static-extend": "^0.1.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/class-utils/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/class-utils/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/cliui": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "ISC", "optional": true, "dependencies": { "center-align": "^0.1.1", "right-align": "^0.1.1", "wordwrap": "0.0.2" } }, "node_modules/nyc/node_modules/cliui/node_modules/wordwrap": { "version": "0.0.2", "dev": true, "inBundle": true, "license": "MIT/X11", "optional": true, "engines": { "node": ">=0.4.0" } }, "node_modules/nyc/node_modules/code-point-at": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/collection-visit": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/commondir": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/component-emitter": { "version": "1.2.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/concat-map": { "version": "0.0.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/convert-source-map": { "version": "1.5.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/copy-descriptor": { "version": "0.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/core-js": { "version": "2.5.6", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/cross-spawn": { "version": "4.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "lru-cache": "^4.0.1", "which": "^1.2.9" } }, "node_modules/nyc/node_modules/debug": { "version": "2.6.9", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/nyc/node_modules/debug-log": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/decamelize": { "version": "1.2.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/decode-uri-component": { "version": "0.2.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10" } }, "node_modules/nyc/node_modules/default-require-extensions": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "strip-bom": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property": { "version": "2.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property/node_modules/is-accessor-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property/node_modules/is-data-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property/node_modules/is-descriptor": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/define-property/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/detect-indent": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "repeating": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/error-ex": { "version": "1.3.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/nyc/node_modules/escape-string-regexp": { "version": "1.0.5", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/nyc/node_modules/esutils": { "version": "2.0.2", "dev": true, "inBundle": true, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/execa": { "version": "0.7.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "cross-spawn": "^5.0.1", "get-stream": "^3.0.0", "is-stream": "^1.1.0", "npm-run-path": "^2.0.0", "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/execa/node_modules/cross-spawn": { "version": "5.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" } }, "node_modules/nyc/node_modules/expand-brackets": { "version": "2.1.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "debug": "^2.3.3", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", "posix-character-classes": "^0.1.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/expand-brackets/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/expand-brackets/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extend-shallow": { "version": "3.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extend-shallow/node_modules/is-extendable": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob": { "version": "2.0.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "array-unique": "^0.3.2", "define-property": "^1.0.0", "expand-brackets": "^2.1.4", "extend-shallow": "^2.0.1", "fragment-cache": "^0.2.1", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/define-property": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/is-accessor-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/is-data-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/is-descriptor": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/extglob/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/fill-range": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/fill-range/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/find-cache-dir": { "version": "0.1.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "commondir": "^1.0.1", "mkdirp": "^0.5.1", "pkg-dir": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/find-up": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/for-in": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/foreground-child": { "version": "1.5.6", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "cross-spawn": "^4", "signal-exit": "^3.0.0" } }, "node_modules/nyc/node_modules/fragment-cache": { "version": "0.2.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "map-cache": "^0.2.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/fs.realpath": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/get-caller-file": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/get-stream": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/get-value": { "version": "2.0.6", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/glob": { "version": "7.1.2", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, "engines": { "node": "*" } }, "node_modules/nyc/node_modules/globals": { "version": "9.18.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/graceful-fs": { "version": "4.1.11", "dev": true, "inBundle": true, "license": "ISC", "engines": { "node": ">=0.4.0" } }, "node_modules/nyc/node_modules/handlebars": { "version": "4.0.11", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "async": "^1.4.0", "optimist": "^0.6.1", "source-map": "^0.4.4" }, "bin": { "handlebars": "bin/handlebars" }, "engines": { "node": ">=0.4.7" }, "optionalDependencies": { "uglify-js": "^2.6" } }, "node_modules/nyc/node_modules/handlebars/node_modules/source-map": { "version": "0.4.4", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "amdefine": ">=0.0.4" }, "engines": { "node": ">=0.8.0" } }, "node_modules/nyc/node_modules/has-ansi": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ansi-regex": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-flag": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-value": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-value/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-values": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-number": "^3.0.0", "kind-of": "^4.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-values/node_modules/is-number": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-values/node_modules/is-number/node_modules/kind-of": { "version": "3.2.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/has-values/node_modules/kind-of": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/hosted-git-info": { "version": "2.6.0", "dev": true, "inBundle": true, "license": "ISC", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/imurmurhash": { "version": "0.1.4", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.8.19" } }, "node_modules/nyc/node_modules/inflight": { "version": "1.0.6", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "node_modules/nyc/node_modules/inherits": { "version": "2.0.3", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/invariant": { "version": "2.2.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "loose-envify": "^1.0.0" } }, "node_modules/nyc/node_modules/invert-kv": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-accessor-descriptor": { "version": "0.1.6", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-arrayish": { "version": "0.2.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/is-buffer": { "version": "1.1.6", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/is-builtin-module": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "builtin-modules": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-data-descriptor": { "version": "0.1.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-descriptor": { "version": "0.1.6", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-descriptor/node_modules/kind-of": { "version": "5.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-extendable": { "version": "0.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-finite": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "number-is-nan": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/is-number": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-odd": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-number": "^4.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-odd/node_modules/is-number": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-plain-object": { "version": "2.0.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-plain-object/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-stream": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/is-utf8": { "version": "0.2.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/is-windows": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/isarray": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/isexe": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/istanbul-lib-coverage": { "version": "1.2.0", "dev": true, "inBundle": true, "license": "BSD-3-Clause" }, "node_modules/nyc/node_modules/istanbul-lib-hook": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "append-transform": "^0.4.0" } }, "node_modules/nyc/node_modules/istanbul-lib-instrument": { "version": "1.10.1", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "babel-generator": "^6.18.0", "babel-template": "^6.16.0", "babel-traverse": "^6.18.0", "babel-types": "^6.18.0", "babylon": "^6.18.0", "istanbul-lib-coverage": "^1.2.0", "semver": "^5.3.0" } }, "node_modules/nyc/node_modules/istanbul-lib-report": { "version": "1.1.3", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^1.1.2", "mkdirp": "^0.5.1", "path-parse": "^1.0.5", "supports-color": "^3.1.2" } }, "node_modules/nyc/node_modules/istanbul-lib-report/node_modules/supports-color": { "version": "3.2.3", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "has-flag": "^1.0.0" }, "engines": { "node": ">=0.8.0" } }, "node_modules/nyc/node_modules/istanbul-lib-source-maps": { "version": "1.2.3", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "debug": "^3.1.0", "istanbul-lib-coverage": "^1.1.2", "mkdirp": "^0.5.1", "rimraf": "^2.6.1", "source-map": "^0.5.3" } }, "node_modules/nyc/node_modules/istanbul-lib-source-maps/node_modules/debug": { "version": "3.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/nyc/node_modules/istanbul-reports": { "version": "1.4.0", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "dependencies": { "handlebars": "^4.0.3" } }, "node_modules/nyc/node_modules/js-tokens": { "version": "3.0.2", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/jsesc": { "version": "1.3.0", "dev": true, "inBundle": true, "license": "MIT", "bin": { "jsesc": "bin/jsesc" } }, "node_modules/nyc/node_modules/kind-of": { "version": "3.2.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/lazy-cache": { "version": "1.0.4", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/lcid": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "invert-kv": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/load-json-file": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", "pify": "^2.0.0", "pinkie-promise": "^2.0.0", "strip-bom": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/locate-path": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/locate-path/node_modules/path-exists": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/lodash": { "version": "4.17.10", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/longest": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/loose-envify": { "version": "1.3.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "js-tokens": "^3.0.0" }, "bin": { "loose-envify": "cli.js" } }, "node_modules/nyc/node_modules/lru-cache": { "version": "4.1.3", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, "node_modules/nyc/node_modules/map-cache": { "version": "0.2.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/map-visit": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "object-visit": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/md5-hex": { "version": "1.3.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "md5-o-matic": "^0.1.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/md5-o-matic": { "version": "0.1.1", "dev": true, "inBundle": true }, "node_modules/nyc/node_modules/mem": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "mimic-fn": "^1.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/merge-source-map": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "source-map": "^0.6.1" } }, "node_modules/nyc/node_modules/merge-source-map/node_modules/source-map": { "version": "0.6.1", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/micromatch": { "version": "3.1.10", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "braces": "^2.3.1", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "extglob": "^2.0.4", "fragment-cache": "^0.2.1", "kind-of": "^6.0.2", "nanomatch": "^1.2.9", "object.pick": "^1.3.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/micromatch/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/mimic-fn": { "version": "1.2.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/minimatch": { "version": "3.0.4", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, "engines": { "node": "*" } }, "node_modules/nyc/node_modules/minimist": { "version": "0.0.8", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/mixin-deep": { "version": "1.3.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/mixin-deep/node_modules/is-extendable": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/mkdirp": { "version": "0.5.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "minimist": "0.0.8" }, "bin": { "mkdirp": "bin/cmd.js" } }, "node_modules/nyc/node_modules/ms": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/nanomatch": { "version": "1.2.9", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "fragment-cache": "^0.2.1", "is-odd": "^2.0.0", "is-windows": "^1.0.2", "kind-of": "^6.0.2", "object.pick": "^1.3.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/nanomatch/node_modules/arr-diff": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/nanomatch/node_modules/array-unique": { "version": "0.3.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/nanomatch/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/normalize-package-data": { "version": "2.4.0", "dev": true, "inBundle": true, "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "is-builtin-module": "^1.0.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" } }, "node_modules/nyc/node_modules/npm-run-path": { "version": "2.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "path-key": "^2.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/number-is-nan": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object-assign": { "version": "4.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object-copy": { "version": "0.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", "kind-of": "^3.0.3" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object-copy/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object-visit": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "isobject": "^3.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object-visit/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object.pick": { "version": "1.3.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/object.pick/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/once": { "version": "1.4.0", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "wrappy": "1" } }, "node_modules/nyc/node_modules/optimist": { "version": "0.6.1", "dev": true, "inBundle": true, "license": "MIT/X11", "dependencies": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" } }, "node_modules/nyc/node_modules/os-homedir": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/os-locale": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "execa": "^0.7.0", "lcid": "^1.0.0", "mem": "^1.1.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/p-finally": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/p-limit": { "version": "1.2.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/p-locate": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/p-try": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/parse-json": { "version": "2.2.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "error-ex": "^1.2.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pascalcase": { "version": "0.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/path-exists": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "pinkie-promise": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/path-is-absolute": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/path-key": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/path-parse": { "version": "1.0.5", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/path-type": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "pify": "^2.0.0", "pinkie-promise": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pify": { "version": "2.3.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pinkie": { "version": "2.0.4", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pinkie-promise": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "pinkie": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pkg-dir": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "find-up": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pkg-dir/node_modules/find-up": { "version": "1.1.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "path-exists": "^2.0.0", "pinkie-promise": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/posix-character-classes": { "version": "0.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/pseudomap": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/read-pkg": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "load-json-file": "^1.0.0", "normalize-package-data": "^2.3.2", "path-type": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/read-pkg-up": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "find-up": "^1.0.0", "read-pkg": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/read-pkg-up/node_modules/find-up": { "version": "1.1.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "path-exists": "^2.0.0", "pinkie-promise": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/regenerator-runtime": { "version": "0.11.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/regex-not": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/repeat-element": { "version": "1.1.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/repeat-string": { "version": "1.6.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10" } }, "node_modules/nyc/node_modules/repeating": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-finite": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/require-directory": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/require-main-filename": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/resolve-from": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/resolve-url": { "version": "0.2.1", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/ret": { "version": "0.1.15", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.12" } }, "node_modules/nyc/node_modules/right-align": { "version": "0.1.3", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "dependencies": { "align-text": "^0.1.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/rimraf": { "version": "2.6.2", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "glob": "^7.0.5" }, "bin": { "rimraf": "bin.js" } }, "node_modules/nyc/node_modules/safe-regex": { "version": "1.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ret": "~0.1.10" } }, "node_modules/nyc/node_modules/semver": { "version": "5.5.0", "dev": true, "inBundle": true, "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/nyc/node_modules/set-blocking": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/set-value": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", "is-plain-object": "^2.0.3", "split-string": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/set-value/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/shebang-command": { "version": "1.2.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/shebang-regex": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/signal-exit": { "version": "3.0.2", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/slide": { "version": "1.1.6", "dev": true, "inBundle": true, "license": "ISC", "engines": { "node": "*" } }, "node_modules/nyc/node_modules/snapdragon": { "version": "0.8.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "base": "^0.11.1", "debug": "^2.2.0", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", "map-cache": "^0.2.2", "source-map": "^0.5.6", "source-map-resolve": "^0.5.0", "use": "^3.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "define-property": "^1.0.0", "isobject": "^3.0.0", "snapdragon-util": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/define-property": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/is-data-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/is-descriptor": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-node/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon-util": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.2.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/snapdragon/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/source-map": { "version": "0.5.7", "dev": true, "inBundle": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/source-map-resolve": { "version": "0.5.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "atob": "^2.0.0", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", "urix": "^0.1.0" } }, "node_modules/nyc/node_modules/source-map-url": { "version": "0.4.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/spawn-wrap": { "version": "1.4.2", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "foreground-child": "^1.5.6", "mkdirp": "^0.5.0", "os-homedir": "^1.0.1", "rimraf": "^2.6.2", "signal-exit": "^3.0.2", "which": "^1.3.0" } }, "node_modules/nyc/node_modules/spdx-correct": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/nyc/node_modules/spdx-exceptions": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "CC-BY-3.0" }, "node_modules/nyc/node_modules/spdx-expression-parse": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/nyc/node_modules/spdx-license-ids": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "CC0-1.0" }, "node_modules/nyc/node_modules/split-string": { "version": "3.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^3.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/static-extend": { "version": "0.1.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "define-property": "^0.2.5", "object-copy": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/static-extend/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/string-width": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/string-width/node_modules/ansi-regex": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/string-width/node_modules/strip-ansi": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ansi-regex": "^3.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/strip-ansi": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ansi-regex": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/strip-bom": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-utf8": "^0.2.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/strip-eof": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/supports-color": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/nyc/node_modules/test-exclude": { "version": "4.2.1", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "arrify": "^1.0.1", "micromatch": "^3.1.8", "object-assign": "^4.1.0", "read-pkg-up": "^1.0.1", "require-main-filename": "^1.0.1" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/arr-diff": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/array-unique": { "version": "0.3.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/braces": { "version": "2.3.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", "extend-shallow": "^2.0.1", "fill-range": "^4.0.0", "isobject": "^3.0.1", "repeat-element": "^1.1.2", "snapdragon": "^0.8.1", "snapdragon-node": "^2.0.1", "split-string": "^3.0.2", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/braces/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets": { "version": "2.1.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "debug": "^2.3.3", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", "posix-character-classes": "^0.1.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/define-property": { "version": "0.2.5", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/is-accessor-descriptor": { "version": "0.1.6", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { "version": "3.2.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/is-data-descriptor": { "version": "0.1.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { "version": "3.2.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/is-descriptor": { "version": "0.1.6", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/expand-brackets/node_modules/kind-of": { "version": "5.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/extglob": { "version": "2.0.4", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "array-unique": "^0.3.2", "define-property": "^1.0.0", "expand-brackets": "^2.1.4", "extend-shallow": "^2.0.1", "fragment-cache": "^0.2.1", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/extglob/node_modules/define-property": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/extglob/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/fill-range": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/fill-range/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/is-accessor-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/is-data-descriptor": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/is-descriptor": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/is-number": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/is-number/node_modules/kind-of": { "version": "3.2.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/test-exclude/node_modules/micromatch": { "version": "3.1.10", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "braces": "^2.3.1", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "extglob": "^2.0.4", "fragment-cache": "^0.2.1", "kind-of": "^6.0.2", "nanomatch": "^1.2.9", "object.pick": "^1.3.0", "regex-not": "^1.0.0", "snapdragon": "^0.8.1", "to-regex": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/to-fast-properties": { "version": "1.0.3", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/to-object-path": { "version": "0.3.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/to-regex": { "version": "3.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/to-regex-range": { "version": "2.1.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/to-regex-range/node_modules/is-number": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/trim-right": { "version": "1.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/uglify-js": { "version": "2.8.29", "dev": true, "inBundle": true, "license": "BSD-2-Clause", "optional": true, "dependencies": { "source-map": "~0.5.1", "yargs": "~3.10.0" }, "bin": { "uglifyjs": "bin/uglifyjs" }, "engines": { "node": ">=0.8.0" }, "optionalDependencies": { "uglify-to-browserify": "~1.0.0" } }, "node_modules/nyc/node_modules/uglify-js/node_modules/yargs": { "version": "3.10.0", "dev": true, "inBundle": true, "license": "MIT", "optional": true, "dependencies": { "camelcase": "^1.0.2", "cliui": "^2.1.0", "decamelize": "^1.0.0", "window-size": "0.1.0" } }, "node_modules/nyc/node_modules/uglify-to-browserify": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "optional": true }, "node_modules/nyc/node_modules/union-value": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^0.4.3" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/union-value/node_modules/extend-shallow": { "version": "2.0.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/union-value/node_modules/set-value": { "version": "0.4.3", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", "is-plain-object": "^2.0.1", "to-object-path": "^0.3.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/unset-value": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "has-value": "^0.3.1", "isobject": "^3.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/unset-value/node_modules/has-value": { "version": "0.3.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "get-value": "^2.0.3", "has-values": "^0.1.4", "isobject": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/unset-value/node_modules/has-value/node_modules/isobject": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "isarray": "1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/unset-value/node_modules/has-values": { "version": "0.1.4", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/unset-value/node_modules/isobject": { "version": "3.0.1", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/urix": { "version": "0.1.0", "dev": true, "inBundle": true, "license": "MIT" }, "node_modules/nyc/node_modules/use": { "version": "3.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "kind-of": "^6.0.2" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/use/node_modules/kind-of": { "version": "6.0.2", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/validate-npm-package-license": { "version": "3.0.3", "dev": true, "inBundle": true, "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, "node_modules/nyc/node_modules/which": { "version": "1.3.0", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, "bin": { "which": "bin/which" } }, "node_modules/nyc/node_modules/which-module": { "version": "2.0.0", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/window-size": { "version": "0.1.0", "dev": true, "inBundle": true, "optional": true, "engines": { "node": ">= 0.8.0" } }, "node_modules/nyc/node_modules/wordwrap": { "version": "0.0.3", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=0.4.0" } }, "node_modules/nyc/node_modules/wrap-ansi": { "version": "2.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { "version": "1.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "number-is-nan": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/wrap-ansi/node_modules/string-width": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/nyc/node_modules/wrappy": { "version": "1.0.2", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/write-file-atomic": { "version": "1.3.4", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", "slide": "^1.1.5" } }, "node_modules/nyc/node_modules/y18n": { "version": "3.2.1", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/yallist": { "version": "2.1.2", "dev": true, "inBundle": true, "license": "ISC" }, "node_modules/nyc/node_modules/yargs": { "version": "11.1.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "cliui": "^4.0.0", "decamelize": "^1.1.1", "find-up": "^2.1.0", "get-caller-file": "^1.0.1", "os-locale": "^2.0.0", "require-directory": "^2.1.1", "require-main-filename": "^1.0.1", "set-blocking": "^2.0.0", "string-width": "^2.0.0", "which-module": "^2.0.0", "y18n": "^3.2.1", "yargs-parser": "^9.0.2" } }, "node_modules/nyc/node_modules/yargs-parser": { "version": "8.1.0", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "camelcase": "^4.1.0" } }, "node_modules/nyc/node_modules/yargs-parser/node_modules/camelcase": { "version": "4.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/yargs/node_modules/ansi-regex": { "version": "3.0.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/yargs/node_modules/camelcase": { "version": "4.1.0", "dev": true, "inBundle": true, "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/yargs/node_modules/cliui": { "version": "4.1.0", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "string-width": "^2.1.1", "strip-ansi": "^4.0.0", "wrap-ansi": "^2.0.0" } }, "node_modules/nyc/node_modules/yargs/node_modules/strip-ansi": { "version": "4.0.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "ansi-regex": "^3.0.0" }, "engines": { "node": ">=4" } }, "node_modules/nyc/node_modules/yargs/node_modules/yargs-parser": { "version": "9.0.2", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "camelcase": "^4.1.0" } }, "node_modules/oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", "integrity": "sha512-VlF07iu3VV3+BTXj43Nmp6Irt/G7j/NgEctUS6IweH1RGhURjjCc2NWtzXFPXXWWfc7hgbXQdtiQu2LGp6MxUg==", "dev": true, "engines": { "node": "*" } }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "dependencies": { "wrappy": "1" } }, "node_modules/opener": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", "dev": true, "bin": { "opener": "bin/opener-bin.js" } }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/own-or": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz", "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==", "dev": true }, "node_modules/own-or-env": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz", "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==", "dev": true, "dependencies": { "own-or": "^1.0.0" } }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, "dependencies": { "pinkie": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", "dev": true }, "node_modules/qs": { "version": "6.3.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.3.tgz", "integrity": "sha512-f8CQ/sKJBr9vfNJBdGiPzTSPUufuWyvOFkCYJKN9voqPWuBuhdlSZM78dOHKigtZ0BwuktYGrRFW2DXXc/f2Fg==", "dev": true, "engines": { "node": ">=0.6" } }, "node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, "node_modules/request": { "version": "2.79.0", "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", "integrity": "sha512-e7MIJshe1eZAmRqg4ryaO0N9G0fs+/gpDe5FlbnIFy6zZznRSwdRFrLp63if0Yt43vrI5wowOqHv1qJdVocdOQ==", "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, "dependencies": { "aws-sign2": "~0.6.0", "aws4": "^1.2.1", "caseless": "~0.11.0", "combined-stream": "~1.0.5", "extend": "~3.0.0", "forever-agent": "~0.6.1", "form-data": "~2.1.1", "har-validator": "~2.0.6", "hawk": "~3.1.3", "http-signature": "~1.1.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", "json-stringify-safe": "~5.0.1", "mime-types": "~2.1.7", "oauth-sign": "~0.8.1", "qs": "~6.3.0", "stringstream": "~0.0.4", "tough-cookie": "~2.3.0", "tunnel-agent": "~0.4.1", "uuid": "^3.0.0" }, "engines": { "node": ">= 4" } }, "node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, "node_modules/sntp": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", "integrity": "sha512-7bgVOAnPj3XjrKY577S+puCKGCRlUrcrEdsMeRXlg9Ghf5df/xNi6sONUa43WrHUd3TjJBF7O04jYoiY0FVa0A==", "deprecated": "This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.", "dev": true, "dependencies": { "hoek": "2.x.x" }, "engines": { "node": ">=0.8.0" } }, "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", "dev": true, "dependencies": { "source-map": "^0.5.6" } }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "node_modules/sshpk": { "version": "1.18.0", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", "dev": true, "dependencies": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", "bcrypt-pbkdf": "^1.0.0", "dashdash": "^1.12.0", "ecc-jsbn": "~0.1.1", "getpass": "^0.1.1", "jsbn": "~0.1.0", "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" }, "bin": { "sshpk-conv": "bin/sshpk-conv", "sshpk-sign": "bin/sshpk-sign", "sshpk-verify": "bin/sshpk-verify" }, "engines": { "node": ">=0.10.0" } }, "node_modules/sshpk/node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/stack-utils": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.5.tgz", "integrity": "sha512-KZiTzuV3CnSnSvgMRrARVCj+Ht7rMbauGDK0LdVFRGyenwdylpajAp4Q0i6SX8rEmbTpMMf6ryq2gb8pPq2WgQ==", "dev": true, "dependencies": { "escape-string-regexp": "^2.0.0" }, "engines": { "node": ">=8" } }, "node_modules/stack-utils/node_modules/escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, "engines": { "node": ">=8" } }, "node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { "safe-buffer": "~5.1.0" } }, "node_modules/stringstream": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", "dev": true }, "node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" } }, "node_modules/tap": { "version": "10.7.3", "resolved": "https://registry.npmjs.org/tap/-/tap-10.7.3.tgz", "integrity": "sha512-oS/FIq+tcmxVgYn5usKtLsX+sOHNEj+G7JIQE9SBjO5mVYB1rbaEJJiDbnYp8k0ZqY2Pe4HbYEpkvzm9jfLDyw==", "dev": true, "dependencies": { "bind-obj-methods": "^1.0.0", "bluebird": "^3.5.1", "clean-yaml-object": "^0.1.0", "color-support": "^1.1.0", "coveralls": "^2.13.3", "foreground-child": "^1.3.3", "fs-exists-cached": "^1.0.0", "function-loop": "^1.0.1", "glob": "^7.0.0", "isexe": "^2.0.0", "js-yaml": "^3.10.0", "nyc": "^11.3.0", "opener": "^1.4.1", "os-homedir": "^1.0.2", "own-or": "^1.0.0", "own-or-env": "^1.0.0", "readable-stream": "^2.3.2", "signal-exit": "^3.0.0", "source-map-support": "^0.4.18", "stack-utils": "^1.0.0", "tap-mocha-reporter": "^3.0.6", "tap-parser": "^5.3.1", "tmatch": "^3.1.0", "trivial-deferred": "^1.0.1", "tsame": "^1.1.2", "yapool": "^1.0.0" }, "bin": { "tap": "bin/run.js" }, "engines": { "node": ">=0.8" } }, "node_modules/tap-mocha-reporter": { "version": "3.0.9", "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-3.0.9.tgz", "integrity": "sha512-VO07vhC9EG27EZdOe7bWBj1ldbK+DL9TnRadOgdQmiQOVZjFpUEQuuqO7+rNSO2kfmkq5hWeluYXDWNG/ytXTQ==", "dev": true, "dependencies": { "color-support": "^1.1.0", "debug": "^2.1.3", "diff": "^1.3.2", "escape-string-regexp": "^1.0.3", "glob": "^7.0.5", "js-yaml": "^3.3.1", "tap-parser": "^5.1.0", "unicode-length": "^1.0.0" }, "bin": { "tap-mocha-reporter": "index.js" }, "optionalDependencies": { "readable-stream": "^2.1.5" } }, "node_modules/tap-parser": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-5.4.0.tgz", "integrity": "sha512-BIsIaGqv7uTQgTW1KLTMNPSEQf4zDDPgYOBRdgOfuB+JFOLRBfEu6cLa/KvMvmqggu1FKXDfitjLwsq4827RvA==", "dev": true, "dependencies": { "events-to-array": "^1.0.1", "js-yaml": "^3.2.7" }, "bin": { "tap-parser": "bin/cmd.js" }, "optionalDependencies": { "readable-stream": "^2" } }, "node_modules/tmatch": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/tmatch/-/tmatch-3.1.0.tgz", "integrity": "sha512-W3MSATOCN4pVu2qFxmJLIArSifeSOFqnfx9hiUaVgOmeRoI2NbU7RNga+6G+L8ojlFeQge+ZPCclWyUpQ8UeNQ==", "dev": true }, "node_modules/tough-cookie": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "dev": true, "dependencies": { "punycode": "^1.4.1" }, "engines": { "node": ">=0.8" } }, "node_modules/trivial-deferred": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.1.2.tgz", "integrity": "sha512-vDPiDBC3hyP6O4JrJYMImW3nl3c03Tsj9fEXc7Qc/XKa1O7gf5ZtFfIR/E0dun9SnDHdwjna1Z2rSzYgqpxh/g==", "dev": true, "engines": { "node": ">= 8" } }, "node_modules/tsame": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/tsame/-/tsame-1.1.2.tgz", "integrity": "sha512-ovCs24PGjmByVPr9tSIOs/yjUX9sJl0grEmOsj9dZA/UknQkgPOKcUqM84aSCvt9awHuhc/boMzTg3BHFalxWw==", "dev": true }, "node_modules/tunnel-agent": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", "integrity": "sha512-e0IoVDWx8SDHc/hwFTqJDQ7CCDTEeGhmcT9jkWJjoGQSpgBz20nAMr80E3Tpk7PatJ1b37DQDgJR3CNSzcMOZQ==", "dev": true, "engines": { "node": "*" } }, "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, "node_modules/unicode-length": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-1.0.3.tgz", "integrity": "sha512-rZKNhIqioUp7H49afr26tivLDCvUSqOXwmwEEnsCwnPX67S1CYbOL45Y5IP3K/XHN73/lg21HlrB8SNlYXKQTg==", "dev": true, "dependencies": { "punycode": "^1.3.2", "strip-ansi": "^3.0.1" } }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, "node_modules/uuid": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "dev": true, "bin": { "uuid": "bin/uuid" } }, "node_modules/verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "dev": true, "engines": [ "node >=0.6.0" ], "dependencies": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" } }, "node_modules/verror/node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true, "engines": { "node": ">=0.8" } }, "node_modules/verror/node_modules/core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true }, "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "dependencies": { "isexe": "^2.0.0" }, "bin": { "which": "bin/which" } }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, "engines": { "node": ">=0.4" } }, "node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, "node_modules/yapool": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/yapool/-/yapool-1.0.0.tgz", "integrity": "sha512-RONBZndo8Lo8pKPfORRxr2DIk2NZKIml654o4kaIu7RXVxQCKsAN6AqrcoZsI3h+2H5YO2mD/04Wy4LbAgd+Pg==", "dev": true } } } isaacs-node-touch-c371e69/package.json000066400000000000000000000011371462070067600176630ustar00rootroot00000000000000{ "author": "Isaac Z. Schlueter (http://blog.izs.me/)", "name": "touch", "description": "like touch(1) in node", "version": "3.1.1", "repository": "git://github.com/isaacs/node-touch.git", "bin": { "nodetouch": "./bin/nodetouch.js" }, "license": "ISC", "scripts": { "test": "tap test/*.js --100 -J", "preversion": "npm test", "postversion": "npm publish", "postpublish": "git push origin --all; git push origin --tags" }, "devDependencies": { "mutate-fs": "^1.1.0", "tap": "^10.7.0" }, "files": [ "index.js", "bin/nodetouch.js" ] } isaacs-node-touch-c371e69/test/000077500000000000000000000000001462070067600163525ustar00rootroot00000000000000isaacs-node-touch-c371e69/test/basic.js000066400000000000000000000263011462070067600177730ustar00rootroot00000000000000'use strict' const fs = require("fs") const touch = require("../") const t = require('tap') const mutateFS = require('mutate-fs') const _ = fn => er => { if (er) throw er fn() } const files = [ 'sync', 'sync-ref', 'async', 'async-ref' ] files.forEach(f => { try { fs.unlinkSync(f) } catch (e) {} }) const dirs = [ 'dir-sync', 'dir-async' ] dirs.forEach(d => { try { fs.rmdirSync(d) } catch (e) {} try { fs.mkdirSync(d) } catch (e) {} }) const now = Date.now() const then = now - 1000000000 // now - 1Msec t.teardown(() => { files.forEach(f => { try { fs.unlinkSync(f) } catch (e) {} }) }) t.test('set both to now', t => { touch.sync("sync") touch("async", _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() // can actually end up a few ms apart on systems with support // for subsecond stat times. t.equal(Math.abs(asm - asa) < 1000, true) t.equal(Math.abs(ssm - ssa) < 1000, true) t.equal(Math.abs(ssa - now) < 1000, true) t.equal(Math.abs(asa - now) < 1000, true) // ctime should always be now-ish t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 10000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 10000) t.end() })) }) t.test('set both to now, using futimes', t => { const runTest = closeAfter => { t.test('closeAfter=' + closeAfter, t => { const sfd = fs.openSync('sync', 'w') if (closeAfter) { touch.ftouchSync(sfd, { closeAfter: true }) } else { touch.ftouchSync(sfd) fs.closeSync(sfd) } const afd = fs.openSync('async', 'w') t.equal(afd, sfd) const then = _(() => { if (!closeAfter) { fs.closeSync(afd) } const astat = fs.statSync("async") const sstat = fs.statSync("sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.equal(asm, asa) t.equal(ssm, ssa) // atime should always be now-ish t.ok(Math.abs(Date.now() - sstat.atime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.atime.getTime()) < 1000) // ctime should always be now-ish t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) }) if (closeAfter) { return touch.ftouch(afd, {closeAfter: true}).then(then) } else { return touch.ftouch(afd, then) } }) } runTest(true) runTest(false) t.end() }) t.test('set both to now - 1Msec', t => { // also use force, just for funsies touch.sync("sync", { time: then, force: true }) touch("async", { time: then, force: true }, _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.notEqual(asm, now) t.equal(asa, asm) t.notEqual(ssm, now) t.equal(ssa, ssm) t.equal(ssa, then) t.equal(asa, then) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('set both to now - 1Msec (dirs)', t => { // Touch dirs using a time in the past because they were just created. touch.sync("dir-sync", { time: then }) touch("dir-async", { time: then }, _(() => { const astat = fs.statSync("dir-async") const sstat = fs.statSync("dir-sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.notEqual(asm, now) t.equal(asa, asm) t.notEqual(ssm, now) t.equal(ssa, ssm) t.equal(ssa, then) t.equal(asa, then) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('set mtime to now', t => { touch.sync("sync", { time: now, mtime: true }) touch("async", { time: now, mtime: true }, _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.notEqual(asa, asm) t.notEqual(ssa, ssm) t.equal(ssa, then) t.equal(asa, then) t.equal(ssm, now) t.equal(asm, now) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('set mtime to now (dirs)', t => { touch.sync("dir-sync", { time: now, mtime: true }) touch("dir-async", { time: now, mtime: true }, _(() => { const astat = fs.statSync("dir-async") const sstat = fs.statSync("dir-sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.notEqual(asa, asm) t.notEqual(ssa, ssm) t.equal(ssa, then) t.equal(asa, then) t.equal(ssm, now) t.equal(asm, now) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('set atime to now', t => { touch.sync("sync", { time: now, atime: true }) touch("async", { time: now, atime: true }, _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.equal(asm, now) t.equal(ssm, now) t.equal(asa, now) t.equal(ssa, now) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('set atime to now (dirs)', t => { touch.sync("dir-sync", { time: now, atime: true }) touch("dir-async", { time: now, atime: true }, _(() => { const astat = fs.statSync("dir-async") const sstat = fs.statSync("dir-sync") const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() t.equal(asm, now) t.equal(ssm, now) t.equal(asa, now) t.equal(ssa, now) t.ok(Math.abs(Date.now() - sstat.ctime.getTime()) < 1000) t.ok(Math.abs(Date.now() - astat.ctime.getTime()) < 1000) t.end() })) }) t.test('nocreate should not throw on ENOENT', t => { touch.sync('sync-noent', { nocreate: true }) t.throws(() => fs.statSync('sync-noent')) return touch('async-noent', { nocreate: true }).then(() => t.throws(() => fs.statSync('async-noent'))) }) t.test('use one file as ref for another, only mtime', t => { fs.writeFileSync('sync-ref', '') fs.writeFileSync('async-ref', '') fs.writeFileSync('sync', '') fs.writeFileSync('async', '') fs.utimesSync('sync-ref', then/1000, then/1000) fs.utimesSync('async-ref', then/1000, then/1000) fs.utimesSync('sync', now, now) fs.utimesSync('async', now, now) touch.sync('sync-ref', { ref: 'sync', mtime: true }) touch('async-ref', { ref: 'async', mtime: true }, _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const arstat = fs.statSync('async-ref') const srstat = fs.statSync('sync-ref') const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const arsa = arstat.atime.getTime() const srsa = srstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() const arsm = arstat.mtime.getTime() const srsm = srstat.mtime.getTime() const arsc = arstat.ctime.getTime() const srsc = srstat.ctime.getTime() t.equal(asm, arsm) t.equal(ssm, srsm) t.not(asa, arsa) t.not(ssa, srsa) t.ok(Math.abs(Date.now() - srsc) < 1000) t.ok(Math.abs(Date.now() - arsc) < 1000) t.end() })) }) t.test('use one file as ref for another', t => { fs.writeFileSync('sync-ref', '') fs.writeFileSync('async-ref', '') fs.writeFileSync('sync', '') fs.writeFileSync('async', '') fs.utimesSync('sync-ref', then, then) fs.utimesSync('async-ref', then, then) fs.utimesSync('sync', now, now) fs.utimesSync('async', now, now) touch.sync('sync-ref', { ref: 'sync' }) touch('async-ref', { ref: 'async' }, _(() => { const astat = fs.statSync("async") const sstat = fs.statSync("sync") const arstat = fs.statSync('async-ref') const srstat = fs.statSync('sync-ref') const asa = astat.atime.getTime() const ssa = sstat.atime.getTime() const arsa = arstat.atime.getTime() const srsa = srstat.atime.getTime() const asm = astat.mtime.getTime() const ssm = sstat.mtime.getTime() const arsm = arstat.mtime.getTime() const srsm = srstat.mtime.getTime() const arsc = arstat.ctime.getTime() const srsc = srstat.ctime.getTime() t.equal(asm, arsm) t.equal(ssm, srsm) t.equal(asa, arsa) t.equal(ssa, srsa) t.ok(Math.abs(Date.now() - srsc) < 1000) t.ok(Math.abs(Date.now() - arsc) < 1000) t.end() })) }) t.test('fstat fail', t => { const poop = new Error('poop') const unmutate = mutateFS.fail('fstat', poop) const fd = fs.openSync('sync', 'r') t.teardown(() => { unmutate() fs.closeSync(fd) }) t.throws(() => { touch.ftouchSync(fd, { time: now, atime: true }) }, poop) touch.ftouch(fd, { time: now, atime: true }).catch(er => { t.equal(er, poop) t.end() }) }) t.test('futimes fail', t => { const poop = new Error('poop') const unmutate = mutateFS.fail('futimes', poop) const fd = fs.openSync('sync', 'r') t.teardown(() => { unmutate() fs.closeSync(fd) }) t.throws(() => { touch.ftouchSync(fd) }, poop) touch.ftouch(fd, er => { t.equal(er, poop) t.end() }) }) t.test('futimes fail, close after', t => { const poop = new Error('poop') touch.sync('sync') const unmutate = mutateFS.fail('futimes', poop) const fd = fs.openSync('sync', 'r') const close = fs.close const closeSync = fs.closeSync let closes = 0 let closeSyncs = 0 fs.close = () => { closes ++ } fs.closeSync = () => { closeSyncs ++ } t.teardown(() => { unmutate() fs.close = close fs.closeSync = closeSync fs.closeSync(fd) }) t.throws(() => { touch.ftouchSync(fd, { closeAfter: true }) }, poop) touch.ftouch(fd, { closeAfter: true }, er => { t.equal(er, poop) t.equal(closes, 1, '1 close') t.equal(closeSyncs, 1, '1 closeSync') t.end() }) }) t.test('ref stat fail', t => { const poop = new Error('poop') t.teardown(mutateFS.fail('stat', poop)) t.throws(() => { touch.touchSync('sync', { ref: 'sync-ref' }) }, poop) touch('async', { ref: 'async-ref' }, er => { t.equal(er, poop) t.end() }) }) t.test('open fail', t => { const poop = new Error('poop') t.teardown(mutateFS.fail('open', poop)) t.throws(() => touch.sync('sync')) return touch('async').then(() => t.fail('should fail'), er => t.equal(er, poop)) }) isaacs-node-touch-c371e69/test/bin.js000066400000000000000000000107671462070067600174730ustar00rootroot00000000000000'use strict' const t = require('tap') const bin = require.resolve('../bin/nodetouch.js') const node = process.execPath const spawn = require('child_process').spawn const fs = require('fs') const exec = args => new Promise(resolve => { const child = spawn(node, [bin].concat(args)) const out = [] child.stdout.on('data', c => out.push(c)) const err = [] child.stderr.on('data', c => err.push(c)) child.on('close', (code, signal) => resolve([code, signal, Buffer.concat(out).toString(), Buffer.concat(err).toString()])) }) t.test('no args, print usage', t => exec([]).then(res => t.match(res, [0, null, /^usage:\ntouch/, '']))) t.test('bad args, print usage and fail', t => exec(['-aw3eawefase']).then(res => t.match(res, [1, null, '', /^touch: illegal option -- -w\nusage:\ntouch/]))) t.test('bad time, print usage and fail', t => exec(['-tasdf']).then(res => t.match(res, [1, null, '', 'touch: out of range or illegal time specification:' + ' [[CC]YY]MMDDhhmm[.SS]' ]))) t.test('no touching null', t => exec(['/dev/null']).then(res => t.match(res, [1, null, '', '']))) t.test('nocreate, no problem', t => Promise.all([ t.test('-c', t => exec(['-c', 'flurple']).then(res => t.match(res, [0, null, '', '']))), t.test('--nocreate', t => exec(['--nocreate', 'flurple']).then(res => t.match(res, [0, null, '', '']))) ])) t.test('mtime only', t => { const file = 'asdf3f2a' const time = new Date(Date.UTC(1979, 6, 1, 17, 10, 0, 0)).toISOString() const n = '7907011710.00' const check = t => { const st = fs.statSync(file) t.equal(st.mtime.toISOString(), time) t.notEqual(st.atime.toISOString(), time) fs.unlinkSync(file) } return Promise.all([ t.test('-m', t => exec(['--time=' + n, '-m', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('--mtime', t => exec(['-t', n, '--mtime', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))) ]) }) t.test('mtime and atime', t => { const file = 'asdf3f2a' const time = new Date(Date.UTC(1979, 6, 1, 17, 10, 0, 0)).toISOString() const n = '197907011710.00' const check = t => { const st = fs.statSync(file) t.equal(st.mtime.toISOString(), time) t.equal(st.atime.toISOString(), time) fs.unlinkSync(file) } return Promise.all([ t.test('-m', t => exec(['--time=' + n, '-a', '--mtime', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('--mtime', t => exec(['-t', n,'--atime', '-m', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))) ]) }) t.test('atime only', t => { const file = 'asdf3f2a' const time = new Date(Date.UTC(2068, 6, 1, 17, 10, 0, 0)).toISOString() const n = '6807011710.00' const check = t => { const st = fs.statSync(file) t.equal(st.mtime.toISOString(), time) t.notEqual(st.atime.toISOString(), time) fs.unlinkSync(file) } return Promise.all([ t.test('-m', t => exec(['--time=' + n, '-m', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('--mtime', t => exec(['-t', n, '--mtime', file]).then(res => (t.match(res, [0, null, '', '']), check(t)))) ]) }) t.test('ref', t => { const file = 'j38ahseas8h3f' const ref = 'refernce-fileasdfja9hf38a' t.beforeEach(() => Promise.resolve(( fs.writeFileSync(ref, 'asdf'), fs.utimesSync(ref, new Date('1979-07-01T17:10:00Z'), new Date('2011-10-05T22:10:35Z')) ))) t.afterEach(() => Promise.resolve(( fs.unlinkSync(ref), fs.unlinkSync(file)))) const check = t => { const st = fs.statSync(file) const atime = new Date('1979-07-01T17:10:00Z') const mtime = new Date('2011-10-05T22:10:35Z') t.equal(st.atime.toISOString(), atime.toISOString()) t.equal(st.mtime.toISOString(), mtime.toISOString()) } return Promise.all([ t.test('-r', t => exec(['-r' + ref, file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('-r=', t => exec(['-r=' + ref, file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('-r ', t => exec(['-r', ref, file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('--ref=', t => exec(['--ref=' + ref, file]).then(res => (t.match(res, [0, null, '', '']), check(t)))), t.test('--ref ', t => exec(['--ref', ref, file]).then(res => (t.match(res, [0, null, '', '']), check(t)))) ]) })