├── .gitignore ├── .travis.yml ├── LICENSE ├── index.js ├── package-lock.json ├── package.json ├── readme.md └── tests └── index.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | npm-debug.log 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "6" 4 | - "4" 5 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Christoph Stock 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const leftPad = require('left-pad') 4 | const EventEmitter = require('events') 5 | const polygoat = require('polygoat') 6 | 7 | /** 8 | * Factory function for the event store 9 | * @param {object} options 10 | * @param {object} options.pouchdb - pouchdb the events got stored 11 | * @param {object} options.idGenerator - id generator for new resources 12 | * @param {function} options.idGenerator.next - the next function 13 | * @param {object[]} options.viewModels - Array of viewModels {pouchdb, reducer} 14 | */ 15 | module.exports = function eventStoreFactory (options) { 16 | const pouchdb = options.pouchdb 17 | const idGenerator = options.idGenerator 18 | const viewModels = options.viewModels || [] 19 | 20 | const eventEmitter = new EventEmitter() 21 | 22 | const eventStore = (id, events) => { 23 | return { 24 | getId () { return id }, 25 | getEvents () { return events }, 26 | getETag () { return id + '-' + events.length }, 27 | /** 28 | * @param {object} event 29 | * @param {object} user 30 | * @param {function} [callback] 31 | * @return {Promise} if uses without callback 32 | */ 33 | add (event, user, callback) { 34 | event._id = id + '-' + leftPad(events.length, 8, 0) 35 | event.resourceId = id 36 | event.index = events.length 37 | event.createdAt = new Date() 38 | event.user = user 39 | 40 | return polygoat((done) => { 41 | pouchdb.post(event) 42 | .then((result) => { 43 | events.push(event) 44 | done(null, { 45 | ok: true, 46 | id: id, 47 | index: event.index 48 | }) 49 | }) 50 | .catch(done) 51 | }, callback) 52 | } 53 | } 54 | } 55 | 56 | const updateViewModel = (db, reducer, event) => { 57 | if (event.index === 0) { 58 | const newState = reducer({ 59 | _id: event.resourceId, 60 | createdAt: event.createdAt, 61 | createdBy: event.user, 62 | lastModifiedAt: event.createdAt, 63 | lastModifiedBy: event.user 64 | }, event) 65 | 66 | db.post(newState) 67 | .then((result) => eventEmitter.emit('created', result)) 68 | .catch((error) => eventEmitter.emit('error', error)) 69 | } else { 70 | db.get(event.resourceId) 71 | .then((state) => reducer(state, event)) 72 | .then((newState) => { 73 | newState.lastModifiedAt = event.createdAt 74 | newState.lastModifiedBy = event.user 75 | 76 | return db.put(newState) 77 | }) 78 | .then((result) => eventEmitter.emit('updated', result)) 79 | .catch((error) => eventEmitter.emit('error', error)) 80 | } 81 | } 82 | 83 | pouchdb.changes({ 84 | since: 'now', 85 | live: true, 86 | include_docs: true 87 | }).on('change', (change) => { 88 | viewModels.forEach((viewModel) => { 89 | updateViewModel(viewModel.pouchdb, viewModel.reducer, change.doc) 90 | }) 91 | }) 92 | 93 | return { 94 | /** 95 | * @param {string} eventType 96 | * @param {function} eventFunc 97 | */ 98 | on (eventType, eventFunc) { 99 | return eventEmitter.on(eventType, eventFunc) 100 | }, 101 | /** 102 | * @param {string} id 103 | * @param {function} [callback] 104 | * @return {Promise} if uses without callback 105 | */ 106 | get (id, callback) { 107 | return polygoat((done) => { 108 | pouchdb.allDocs({ 109 | startkey: id + '-', 110 | endkey: id + '-99999999', 111 | include_docs: true}, 112 | (error, result) => { 113 | if (error) return done(error) 114 | if (result.rows.length === 0) { 115 | return done({ 116 | status: 404, 117 | name: 'not_found', 118 | message: 'missing', 119 | error: true, 120 | reason: 'missing' 121 | }) 122 | } 123 | done(null, eventStore(id, result.rows.map(row => row.doc))) 124 | }) 125 | }, callback) 126 | }, 127 | 128 | /** 129 | * @param {function} [callback] 130 | * @return {Promise} if uses without callback 131 | */ 132 | create (callback) { 133 | return polygoat((done) => { 134 | idGenerator.next() 135 | .then((id) => done(null, eventStore(id.toString(), []))) 136 | .catch(done) 137 | }, callback) 138 | }, 139 | 140 | /** 141 | * @param {string} id 142 | * @param {function} [callback] 143 | * @return {Promise} if uses without callback 144 | */ 145 | createWithId (id, callback) { 146 | return polygoat((done) => { 147 | done(null, eventStore(id.toString(), [])) 148 | }) 149 | } 150 | } 151 | } 152 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pouchdb-event-store", 3 | "version": "1.4.5", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "abbrev": { 8 | "version": "1.1.0", 9 | "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.0.tgz", 10 | "integrity": "sha1-0FVMIlZjbi9W58LlrRg/hZQo2B8=", 11 | "dev": true 12 | }, 13 | "abstract-leveldown": { 14 | "version": "2.6.2", 15 | "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.2.tgz", 16 | "integrity": "sha512-6RmGuGZSsvwIYS9otANM+Rie7/6UNdE0IbxwUiXFjXmjHNCJZEjyX2Pltl5BvIYszLODlsnXtyA7A7Ujlca4Gw==", 17 | "dev": true, 18 | "requires": { 19 | "xtend": "4.0.1" 20 | }, 21 | "dependencies": { 22 | "xtend": { 23 | "version": "4.0.1", 24 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 25 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 26 | "dev": true 27 | } 28 | } 29 | }, 30 | "acorn": { 31 | "version": "5.1.1", 32 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.1.1.tgz", 33 | "integrity": "sha512-vOk6uEMctu0vQrvuSqFdJyqj1Q0S5VTDL79qtjo+DhRr+1mmaD+tluFSCZqhvi/JUhXSzoZN2BhtstaPEeE8cw==", 34 | "dev": true 35 | }, 36 | "acorn-jsx": { 37 | "version": "3.0.1", 38 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", 39 | "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", 40 | "dev": true, 41 | "requires": { 42 | "acorn": "3.3.0" 43 | }, 44 | "dependencies": { 45 | "acorn": { 46 | "version": "3.3.0", 47 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", 48 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", 49 | "dev": true 50 | } 51 | } 52 | }, 53 | "after": { 54 | "version": "0.8.2", 55 | "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", 56 | "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", 57 | "dev": true 58 | }, 59 | "ajv": { 60 | "version": "4.11.8", 61 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", 62 | "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", 63 | "dev": true, 64 | "requires": { 65 | "co": "4.6.0", 66 | "json-stable-stringify": "1.0.1" 67 | } 68 | }, 69 | "ajv-keywords": { 70 | "version": "1.5.1", 71 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", 72 | "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=", 73 | "dev": true 74 | }, 75 | "ansi": { 76 | "version": "0.3.1", 77 | "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz", 78 | "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=", 79 | "dev": true 80 | }, 81 | "ansi-escapes": { 82 | "version": "1.4.0", 83 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", 84 | "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", 85 | "dev": true 86 | }, 87 | "ansi-regex": { 88 | "version": "2.1.1", 89 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 90 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 91 | "dev": true 92 | }, 93 | "ansi-styles": { 94 | "version": "2.2.1", 95 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 96 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 97 | "dev": true 98 | }, 99 | "are-we-there-yet": { 100 | "version": "1.1.4", 101 | "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", 102 | "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", 103 | "dev": true, 104 | "requires": { 105 | "delegates": "1.0.0", 106 | "readable-stream": "2.3.3" 107 | }, 108 | "dependencies": { 109 | "isarray": { 110 | "version": "1.0.0", 111 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 112 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 113 | "dev": true 114 | }, 115 | "readable-stream": { 116 | "version": "2.3.3", 117 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 118 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 119 | "dev": true, 120 | "requires": { 121 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 122 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 123 | "isarray": "1.0.0", 124 | "process-nextick-args": "1.0.7", 125 | "safe-buffer": "5.1.1", 126 | "string_decoder": "1.0.3", 127 | "util-deprecate": "1.0.2" 128 | } 129 | }, 130 | "string_decoder": { 131 | "version": "1.0.3", 132 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 133 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 134 | "dev": true, 135 | "requires": { 136 | "safe-buffer": "5.1.1" 137 | } 138 | } 139 | } 140 | }, 141 | "argparse": { 142 | "version": "1.0.9", 143 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", 144 | "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", 145 | "dev": true, 146 | "requires": { 147 | "sprintf-js": "1.0.3" 148 | } 149 | }, 150 | "argsarray": { 151 | "version": "0.0.1", 152 | "resolved": "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz", 153 | "integrity": "sha1-bnIHtOzbObCviDA/pa4ivajfYcs=", 154 | "dev": true 155 | }, 156 | "array-index": { 157 | "version": "1.0.0", 158 | "resolved": "https://registry.npmjs.org/array-index/-/array-index-1.0.0.tgz", 159 | "integrity": "sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k=", 160 | "dev": true, 161 | "requires": { 162 | "debug": "2.6.4", 163 | "es6-symbol": "3.1.1" 164 | } 165 | }, 166 | "array-union": { 167 | "version": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 168 | "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", 169 | "dev": true, 170 | "requires": { 171 | "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" 172 | } 173 | }, 174 | "array-uniq": { 175 | "version": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", 176 | "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", 177 | "dev": true 178 | }, 179 | "array.prototype.find": { 180 | "version": "2.0.4", 181 | "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.0.4.tgz", 182 | "integrity": "sha1-VWpcU2LAhkgyPdrrnenRS8GGTJA=", 183 | "dev": true, 184 | "requires": { 185 | "define-properties": "1.1.2", 186 | "es-abstract": "1.8.0" 187 | } 188 | }, 189 | "arrify": { 190 | "version": "1.0.1", 191 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 192 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", 193 | "dev": true 194 | }, 195 | "asn1": { 196 | "version": "0.2.3", 197 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", 198 | "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", 199 | "dev": true 200 | }, 201 | "assert-plus": { 202 | "version": "0.2.0", 203 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", 204 | "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", 205 | "dev": true 206 | }, 207 | "async": { 208 | "version": "1.5.2", 209 | "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", 210 | "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", 211 | "dev": true 212 | }, 213 | "asynckit": { 214 | "version": "0.4.0", 215 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 216 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", 217 | "dev": true 218 | }, 219 | "aws-sign2": { 220 | "version": "0.6.0", 221 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", 222 | "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", 223 | "dev": true 224 | }, 225 | "aws4": { 226 | "version": "1.6.0", 227 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", 228 | "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", 229 | "dev": true 230 | }, 231 | "babel-code-frame": { 232 | "version": "6.22.0", 233 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.22.0.tgz", 234 | "integrity": "sha1-AnYgvuVnqIwyVhV05/0IAdMxGOQ=", 235 | "dev": true, 236 | "requires": { 237 | "chalk": "1.1.3", 238 | "esutils": "2.0.2", 239 | "js-tokens": "3.0.2" 240 | } 241 | }, 242 | "balanced-match": { 243 | "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", 244 | "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", 245 | "dev": true 246 | }, 247 | "bcrypt-pbkdf": { 248 | "version": "1.0.1", 249 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", 250 | "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", 251 | "dev": true, 252 | "optional": true, 253 | "requires": { 254 | "tweetnacl": "0.14.5" 255 | } 256 | }, 257 | "bindings": { 258 | "version": "1.2.1", 259 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz", 260 | "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=", 261 | "dev": true 262 | }, 263 | "bl": { 264 | "version": "1.0.3", 265 | "resolved": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz", 266 | "integrity": "sha1-/FQhoo/UImA2w7OJGmaiW8ZNIm4=", 267 | "dev": true, 268 | "requires": { 269 | "readable-stream": "2.0.6" 270 | }, 271 | "dependencies": { 272 | "isarray": { 273 | "version": "1.0.0", 274 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 275 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 276 | "dev": true 277 | }, 278 | "readable-stream": { 279 | "version": "2.0.6", 280 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", 281 | "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", 282 | "dev": true, 283 | "requires": { 284 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 285 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 286 | "isarray": "1.0.0", 287 | "process-nextick-args": "1.0.7", 288 | "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 289 | "util-deprecate": "1.0.2" 290 | } 291 | } 292 | } 293 | }, 294 | "block-stream": { 295 | "version": "0.0.9", 296 | "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", 297 | "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", 298 | "dev": true, 299 | "requires": { 300 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" 301 | } 302 | }, 303 | "boom": { 304 | "version": "2.10.1", 305 | "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", 306 | "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", 307 | "dev": true, 308 | "requires": { 309 | "hoek": "2.16.3" 310 | } 311 | }, 312 | "brace-expansion": { 313 | "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz", 314 | "integrity": "sha1-cZfX6qm4fmSDkOph/GbIRCdCDfk=", 315 | "dev": true, 316 | "requires": { 317 | "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", 318 | "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 319 | } 320 | }, 321 | "buffer-from": { 322 | "version": "0.1.1", 323 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-0.1.1.tgz", 324 | "integrity": "sha1-V7GLHaChnsBvM4N6UnWiQjUb114=", 325 | "dev": true, 326 | "requires": { 327 | "is-array-buffer-x": "1.3.0" 328 | } 329 | }, 330 | "builtin-modules": { 331 | "version": "1.1.1", 332 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 333 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", 334 | "dev": true 335 | }, 336 | "caller-path": { 337 | "version": "0.1.0", 338 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", 339 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", 340 | "dev": true, 341 | "requires": { 342 | "callsites": "0.2.0" 343 | } 344 | }, 345 | "callsites": { 346 | "version": "0.2.0", 347 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", 348 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", 349 | "dev": true 350 | }, 351 | "caseless": { 352 | "version": "0.12.0", 353 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", 354 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", 355 | "dev": true 356 | }, 357 | "chalk": { 358 | "version": "1.1.3", 359 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 360 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 361 | "dev": true, 362 | "requires": { 363 | "ansi-styles": "2.2.1", 364 | "escape-string-regexp": "1.0.5", 365 | "has-ansi": "2.0.0", 366 | "strip-ansi": "3.0.1", 367 | "supports-color": "2.0.0" 368 | } 369 | }, 370 | "chownr": { 371 | "version": "1.0.1", 372 | "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", 373 | "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", 374 | "dev": true 375 | }, 376 | "circular-json": { 377 | "version": "0.3.3", 378 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", 379 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", 380 | "dev": true 381 | }, 382 | "cli-cursor": { 383 | "version": "1.0.2", 384 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", 385 | "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", 386 | "dev": true, 387 | "requires": { 388 | "restore-cursor": "1.0.1" 389 | } 390 | }, 391 | "cli-width": { 392 | "version": "2.1.0", 393 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.1.0.tgz", 394 | "integrity": "sha1-sjTKIJsp72b8UY2bmNWEewDt8Ao=", 395 | "dev": true 396 | }, 397 | "clone-buffer": { 398 | "version": "1.0.0", 399 | "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", 400 | "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", 401 | "dev": true 402 | }, 403 | "co": { 404 | "version": "4.6.0", 405 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 406 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 407 | "dev": true 408 | }, 409 | "code-point-at": { 410 | "version": "1.1.0", 411 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 412 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", 413 | "dev": true 414 | }, 415 | "combined-stream": { 416 | "version": "1.0.5", 417 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", 418 | "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", 419 | "dev": true, 420 | "requires": { 421 | "delayed-stream": "1.0.0" 422 | } 423 | }, 424 | "concat-map": { 425 | "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 426 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 427 | "dev": true 428 | }, 429 | "concat-stream": { 430 | "version": "1.6.0", 431 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", 432 | "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", 433 | "dev": true, 434 | "requires": { 435 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 436 | "readable-stream": "2.3.3", 437 | "typedarray": "0.0.6" 438 | }, 439 | "dependencies": { 440 | "isarray": { 441 | "version": "1.0.0", 442 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 443 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 444 | "dev": true 445 | }, 446 | "readable-stream": { 447 | "version": "2.3.3", 448 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 449 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 450 | "dev": true, 451 | "requires": { 452 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 453 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 454 | "isarray": "1.0.0", 455 | "process-nextick-args": "1.0.7", 456 | "safe-buffer": "5.1.1", 457 | "string_decoder": "1.0.3", 458 | "util-deprecate": "1.0.2" 459 | } 460 | }, 461 | "string_decoder": { 462 | "version": "1.0.3", 463 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 464 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 465 | "dev": true, 466 | "requires": { 467 | "safe-buffer": "5.1.1" 468 | } 469 | } 470 | } 471 | }, 472 | "contains-path": { 473 | "version": "0.1.0", 474 | "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", 475 | "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", 476 | "dev": true 477 | }, 478 | "core-util-is": { 479 | "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 480 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 481 | "dev": true 482 | }, 483 | "cryptiles": { 484 | "version": "2.0.5", 485 | "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", 486 | "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", 487 | "dev": true, 488 | "requires": { 489 | "boom": "2.10.1" 490 | } 491 | }, 492 | "d": { 493 | "version": "1.0.0", 494 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", 495 | "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", 496 | "dev": true, 497 | "requires": { 498 | "es5-ext": "0.10.27" 499 | } 500 | }, 501 | "dashdash": { 502 | "version": "1.14.1", 503 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", 504 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", 505 | "dev": true, 506 | "requires": { 507 | "assert-plus": "1.0.0" 508 | }, 509 | "dependencies": { 510 | "assert-plus": { 511 | "version": "1.0.0", 512 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 513 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 514 | "dev": true 515 | } 516 | } 517 | }, 518 | "debug": { 519 | "version": "2.6.4", 520 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.4.tgz", 521 | "integrity": "sha1-dYaps8OXQcAoKuM0RcTorHRzT+A=", 522 | "dev": true, 523 | "requires": { 524 | "ms": "0.7.3" 525 | } 526 | }, 527 | "debug-log": { 528 | "version": "1.0.1", 529 | "resolved": "https://registry.npmjs.org/debug-log/-/debug-log-1.0.1.tgz", 530 | "integrity": "sha1-IwdjLUwEOCuN+KMvcLiVBG1SdF8=", 531 | "dev": true 532 | }, 533 | "deep-equal": { 534 | "version": "0.1.2", 535 | "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.1.2.tgz", 536 | "integrity": "sha1-skbCuApXCkfBG+HZvRBw7IeLh84=", 537 | "dev": true 538 | }, 539 | "deep-extend": { 540 | "version": "0.4.2", 541 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", 542 | "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=", 543 | "dev": true 544 | }, 545 | "deep-is": { 546 | "version": "0.1.3", 547 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 548 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 549 | "dev": true 550 | }, 551 | "deferred-leveldown": { 552 | "version": "1.2.2", 553 | "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", 554 | "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", 555 | "dev": true, 556 | "requires": { 557 | "abstract-leveldown": "2.6.2" 558 | } 559 | }, 560 | "define-properties": { 561 | "version": "1.1.2", 562 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", 563 | "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", 564 | "dev": true, 565 | "requires": { 566 | "foreach": "2.0.5", 567 | "object-keys": "1.0.11" 568 | }, 569 | "dependencies": { 570 | "object-keys": { 571 | "version": "1.0.11", 572 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", 573 | "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", 574 | "dev": true 575 | } 576 | } 577 | }, 578 | "defined": { 579 | "version": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz", 580 | "integrity": "sha1-817qfXBekzuvE7LwOz+D2SFAOz4=", 581 | "dev": true 582 | }, 583 | "deglob": { 584 | "version": "2.1.0", 585 | "resolved": "https://registry.npmjs.org/deglob/-/deglob-2.1.0.tgz", 586 | "integrity": "sha1-TUSr4W7zLHebSXK9FBqAMlApoUo=", 587 | "dev": true, 588 | "requires": { 589 | "find-root": "1.1.0", 590 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 591 | "ignore": "3.3.3", 592 | "pkg-config": "1.1.1", 593 | "run-parallel": "1.1.6", 594 | "uniq": "1.0.1" 595 | } 596 | }, 597 | "del": { 598 | "version": "3.0.0", 599 | "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", 600 | "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", 601 | "dev": true, 602 | "requires": { 603 | "globby": "6.1.0", 604 | "is-path-cwd": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 605 | "is-path-in-cwd": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 606 | "p-map": "1.1.1", 607 | "pify": "3.0.0", 608 | "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz" 609 | }, 610 | "dependencies": { 611 | "globby": { 612 | "version": "6.1.0", 613 | "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", 614 | "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", 615 | "dev": true, 616 | "requires": { 617 | "array-union": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 618 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 619 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 620 | "pify": "2.3.0", 621 | "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 622 | }, 623 | "dependencies": { 624 | "pify": { 625 | "version": "2.3.0", 626 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 627 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 628 | "dev": true 629 | } 630 | } 631 | }, 632 | "pify": { 633 | "version": "3.0.0", 634 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 635 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 636 | "dev": true 637 | } 638 | } 639 | }, 640 | "delayed-stream": { 641 | "version": "1.0.0", 642 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 643 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", 644 | "dev": true 645 | }, 646 | "delegates": { 647 | "version": "1.0.0", 648 | "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", 649 | "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", 650 | "dev": true 651 | }, 652 | "doctrine": { 653 | "version": "2.0.0", 654 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", 655 | "integrity": "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=", 656 | "dev": true, 657 | "requires": { 658 | "esutils": "2.0.2", 659 | "isarray": "1.0.0" 660 | }, 661 | "dependencies": { 662 | "isarray": { 663 | "version": "1.0.0", 664 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 665 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 666 | "dev": true 667 | } 668 | } 669 | }, 670 | "double-ended-queue": { 671 | "version": "2.1.0-0", 672 | "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", 673 | "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=", 674 | "dev": true 675 | }, 676 | "duplexer": { 677 | "version": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", 678 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", 679 | "dev": true 680 | }, 681 | "duplexer2": { 682 | "version": "0.0.2", 683 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", 684 | "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", 685 | "dev": true, 686 | "requires": { 687 | "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" 688 | } 689 | }, 690 | "ecc-jsbn": { 691 | "version": "0.1.1", 692 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", 693 | "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", 694 | "dev": true, 695 | "optional": true, 696 | "requires": { 697 | "jsbn": "0.1.1" 698 | } 699 | }, 700 | "end-of-stream": { 701 | "version": "1.4.0", 702 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", 703 | "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", 704 | "dev": true, 705 | "requires": { 706 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 707 | } 708 | }, 709 | "end-stream": { 710 | "version": "0.1.0", 711 | "resolved": "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz", 712 | "integrity": "sha1-MgA/P0OKKwFDFoE3+PpumGbIHtU=", 713 | "dev": true, 714 | "requires": { 715 | "write-stream": "0.4.3" 716 | } 717 | }, 718 | "errno": { 719 | "version": "0.1.4", 720 | "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", 721 | "integrity": "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=", 722 | "dev": true, 723 | "requires": { 724 | "prr": "0.0.0" 725 | }, 726 | "dependencies": { 727 | "prr": { 728 | "version": "0.0.0", 729 | "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", 730 | "integrity": "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=", 731 | "dev": true 732 | } 733 | } 734 | }, 735 | "error-ex": { 736 | "version": "1.3.1", 737 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", 738 | "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", 739 | "dev": true, 740 | "requires": { 741 | "is-arrayish": "0.2.1" 742 | } 743 | }, 744 | "es-abstract": { 745 | "version": "1.8.0", 746 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.8.0.tgz", 747 | "integrity": "sha512-Cf9/h5MrXtExM20gSS55YFrGKCyPrRBjIVBtVyy8vmlsDfe0NPKMWj65tPLgzyfPuapWxh5whpXCtW4+AW5mRg==", 748 | "dev": true, 749 | "requires": { 750 | "es-to-primitive": "1.1.1", 751 | "function-bind": "1.1.0", 752 | "has": "1.0.1", 753 | "is-callable": "1.1.3", 754 | "is-regex": "1.0.4" 755 | } 756 | }, 757 | "es-to-primitive": { 758 | "version": "1.1.1", 759 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", 760 | "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", 761 | "dev": true, 762 | "requires": { 763 | "is-callable": "1.1.3", 764 | "is-date-object": "1.0.1", 765 | "is-symbol": "1.0.1" 766 | } 767 | }, 768 | "es5-ext": { 769 | "version": "0.10.27", 770 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.27.tgz", 771 | "integrity": "sha512-3KXJRYzKXTd7xfFy5uZsJCXue55fAYQ035PRjyYk2PicllxIwcW9l3AbM/eGaw3vgVAUW4tl4xg9AXDEI6yw0w==", 772 | "dev": true, 773 | "requires": { 774 | "es6-iterator": "2.0.1", 775 | "es6-symbol": "3.1.1" 776 | } 777 | }, 778 | "es6-iterator": { 779 | "version": "2.0.1", 780 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.1.tgz", 781 | "integrity": "sha1-jjGcnwRTv1ddN0lAplWSDlnKVRI=", 782 | "dev": true, 783 | "requires": { 784 | "d": "1.0.0", 785 | "es5-ext": "0.10.27", 786 | "es6-symbol": "3.1.1" 787 | } 788 | }, 789 | "es6-map": { 790 | "version": "0.1.5", 791 | "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", 792 | "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", 793 | "dev": true, 794 | "requires": { 795 | "d": "1.0.0", 796 | "es5-ext": "0.10.27", 797 | "es6-iterator": "2.0.1", 798 | "es6-set": "0.1.5", 799 | "es6-symbol": "3.1.1", 800 | "event-emitter": "0.3.5" 801 | } 802 | }, 803 | "es6-set": { 804 | "version": "0.1.5", 805 | "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", 806 | "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", 807 | "dev": true, 808 | "requires": { 809 | "d": "1.0.0", 810 | "es5-ext": "0.10.27", 811 | "es6-iterator": "2.0.1", 812 | "es6-symbol": "3.1.1", 813 | "event-emitter": "0.3.5" 814 | } 815 | }, 816 | "es6-symbol": { 817 | "version": "3.1.1", 818 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", 819 | "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", 820 | "dev": true, 821 | "requires": { 822 | "d": "1.0.0", 823 | "es5-ext": "0.10.27" 824 | } 825 | }, 826 | "es6-weak-map": { 827 | "version": "2.0.2", 828 | "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", 829 | "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", 830 | "dev": true, 831 | "requires": { 832 | "d": "1.0.0", 833 | "es5-ext": "0.10.27", 834 | "es6-iterator": "2.0.1", 835 | "es6-symbol": "3.1.1" 836 | } 837 | }, 838 | "escape-string-regexp": { 839 | "version": "1.0.5", 840 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 841 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 842 | "dev": true 843 | }, 844 | "escope": { 845 | "version": "3.6.0", 846 | "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", 847 | "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", 848 | "dev": true, 849 | "requires": { 850 | "es6-map": "0.1.5", 851 | "es6-weak-map": "2.0.2", 852 | "esrecurse": "4.2.0", 853 | "estraverse": "4.2.0" 854 | } 855 | }, 856 | "eslint": { 857 | "version": "3.19.0", 858 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", 859 | "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", 860 | "dev": true, 861 | "requires": { 862 | "babel-code-frame": "6.22.0", 863 | "chalk": "1.1.3", 864 | "concat-stream": "1.6.0", 865 | "debug": "2.6.4", 866 | "doctrine": "2.0.0", 867 | "escope": "3.6.0", 868 | "espree": "3.5.0", 869 | "esquery": "1.0.0", 870 | "estraverse": "4.2.0", 871 | "esutils": "2.0.2", 872 | "file-entry-cache": "2.0.0", 873 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 874 | "globals": "9.18.0", 875 | "ignore": "3.3.3", 876 | "imurmurhash": "0.1.4", 877 | "inquirer": "0.12.0", 878 | "is-my-json-valid": "2.16.0", 879 | "is-resolvable": "1.0.0", 880 | "js-yaml": "3.9.1", 881 | "json-stable-stringify": "1.0.1", 882 | "levn": "0.3.0", 883 | "lodash": "4.17.4", 884 | "mkdirp": "0.5.1", 885 | "natural-compare": "1.4.0", 886 | "optionator": "0.8.2", 887 | "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 888 | "pluralize": "1.2.1", 889 | "progress": "1.1.8", 890 | "require-uncached": "1.0.3", 891 | "shelljs": "0.7.8", 892 | "strip-bom": "3.0.0", 893 | "strip-json-comments": "2.0.1", 894 | "table": "3.8.3", 895 | "text-table": "0.2.0", 896 | "user-home": "2.0.0" 897 | } 898 | }, 899 | "eslint-config-standard": { 900 | "version": "10.2.1", 901 | "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz", 902 | "integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE=", 903 | "dev": true 904 | }, 905 | "eslint-config-standard-jsx": { 906 | "version": "4.0.2", 907 | "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-4.0.2.tgz", 908 | "integrity": "sha512-F8fRh2WFnTek7dZH9ZaE0PCBwdVGkwVWZmizla/DDNOmg7Tx6B/IlK5+oYpiX29jpu73LszeJj5i1axEZv6VMw==", 909 | "dev": true 910 | }, 911 | "eslint-import-resolver-node": { 912 | "version": "0.2.3", 913 | "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz", 914 | "integrity": "sha1-Wt2BBujJKNssuiMrzZ76hG49oWw=", 915 | "dev": true, 916 | "requires": { 917 | "debug": "2.6.4", 918 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 919 | "resolve": "1.4.0" 920 | } 921 | }, 922 | "eslint-module-utils": { 923 | "version": "2.1.1", 924 | "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz", 925 | "integrity": "sha512-jDI/X5l/6D1rRD/3T43q8Qgbls2nq5km5KSqiwlyUbGo5+04fXhMKdCPhjwbqAa6HXWaMxj8Q4hQDIh7IadJQw==", 926 | "dev": true, 927 | "requires": { 928 | "debug": "2.6.8", 929 | "pkg-dir": "1.0.0" 930 | }, 931 | "dependencies": { 932 | "debug": { 933 | "version": "2.6.8", 934 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", 935 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", 936 | "dev": true, 937 | "requires": { 938 | "ms": "2.0.0" 939 | } 940 | }, 941 | "ms": { 942 | "version": "2.0.0", 943 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 944 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 945 | "dev": true 946 | } 947 | } 948 | }, 949 | "eslint-plugin-import": { 950 | "version": "2.2.0", 951 | "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz", 952 | "integrity": "sha1-crowb60wXWfEgWNIpGmaQimsi04=", 953 | "dev": true, 954 | "requires": { 955 | "builtin-modules": "1.1.1", 956 | "contains-path": "0.1.0", 957 | "debug": "2.6.4", 958 | "doctrine": "1.5.0", 959 | "eslint-import-resolver-node": "0.2.3", 960 | "eslint-module-utils": "2.1.1", 961 | "has": "1.0.1", 962 | "lodash.cond": "4.5.2", 963 | "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 964 | "pkg-up": "1.0.0" 965 | }, 966 | "dependencies": { 967 | "doctrine": { 968 | "version": "1.5.0", 969 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", 970 | "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", 971 | "dev": true, 972 | "requires": { 973 | "esutils": "2.0.2", 974 | "isarray": "1.0.0" 975 | } 976 | }, 977 | "isarray": { 978 | "version": "1.0.0", 979 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 980 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 981 | "dev": true 982 | } 983 | } 984 | }, 985 | "eslint-plugin-node": { 986 | "version": "4.2.3", 987 | "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-4.2.3.tgz", 988 | "integrity": "sha512-vIUQPuwbVYdz/CYnlTLsJrRy7iXHQjdEe5wz0XhhdTym3IInM/zZLlPf9nZ2mThsH0QcsieCOWs2vOeCy/22LQ==", 989 | "dev": true, 990 | "requires": { 991 | "ignore": "3.3.3", 992 | "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 993 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 994 | "resolve": "1.4.0", 995 | "semver": "5.3.0" 996 | } 997 | }, 998 | "eslint-plugin-promise": { 999 | "version": "3.5.0", 1000 | "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz", 1001 | "integrity": "sha1-ePu2/+BHIBYnVp6FpsU3OvKmj8o=", 1002 | "dev": true 1003 | }, 1004 | "eslint-plugin-react": { 1005 | "version": "6.10.3", 1006 | "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz", 1007 | "integrity": "sha1-xUNb6wZ3ThLH2y9qut3L+QDNP3g=", 1008 | "dev": true, 1009 | "requires": { 1010 | "array.prototype.find": "2.0.4", 1011 | "doctrine": "1.5.0", 1012 | "has": "1.0.1", 1013 | "jsx-ast-utils": "1.4.1", 1014 | "object.assign": "4.0.4" 1015 | }, 1016 | "dependencies": { 1017 | "doctrine": { 1018 | "version": "1.5.0", 1019 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", 1020 | "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", 1021 | "dev": true, 1022 | "requires": { 1023 | "esutils": "2.0.2", 1024 | "isarray": "1.0.0" 1025 | } 1026 | }, 1027 | "isarray": { 1028 | "version": "1.0.0", 1029 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1030 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 1031 | "dev": true 1032 | } 1033 | } 1034 | }, 1035 | "eslint-plugin-standard": { 1036 | "version": "3.0.1", 1037 | "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz", 1038 | "integrity": "sha1-NNDJFbRe3G8BA5PH7vOCOwhWXPI=", 1039 | "dev": true 1040 | }, 1041 | "espree": { 1042 | "version": "3.5.0", 1043 | "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.0.tgz", 1044 | "integrity": "sha1-mDWGJb3QVYYeon4oZ+pyn69GPY0=", 1045 | "dev": true, 1046 | "requires": { 1047 | "acorn": "5.1.1", 1048 | "acorn-jsx": "3.0.1" 1049 | } 1050 | }, 1051 | "esprima": { 1052 | "version": "4.0.0", 1053 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", 1054 | "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", 1055 | "dev": true 1056 | }, 1057 | "esquery": { 1058 | "version": "1.0.0", 1059 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", 1060 | "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", 1061 | "dev": true, 1062 | "requires": { 1063 | "estraverse": "4.2.0" 1064 | } 1065 | }, 1066 | "esrecurse": { 1067 | "version": "4.2.0", 1068 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", 1069 | "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", 1070 | "dev": true, 1071 | "requires": { 1072 | "estraverse": "4.2.0", 1073 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" 1074 | } 1075 | }, 1076 | "estraverse": { 1077 | "version": "4.2.0", 1078 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 1079 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", 1080 | "dev": true 1081 | }, 1082 | "esutils": { 1083 | "version": "2.0.2", 1084 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1085 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 1086 | "dev": true 1087 | }, 1088 | "event-emitter": { 1089 | "version": "0.3.5", 1090 | "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", 1091 | "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", 1092 | "dev": true, 1093 | "requires": { 1094 | "d": "1.0.0", 1095 | "es5-ext": "0.10.27" 1096 | } 1097 | }, 1098 | "execspawn": { 1099 | "version": "1.0.1", 1100 | "resolved": "https://registry.npmjs.org/execspawn/-/execspawn-1.0.1.tgz", 1101 | "integrity": "sha1-gob53efOzeeQX73ATiTzaPI/jaY=", 1102 | "dev": true, 1103 | "requires": { 1104 | "util-extend": "1.0.3" 1105 | } 1106 | }, 1107 | "exit-hook": { 1108 | "version": "1.1.1", 1109 | "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", 1110 | "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", 1111 | "dev": true 1112 | }, 1113 | "expand-template": { 1114 | "version": "1.0.3", 1115 | "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.0.3.tgz", 1116 | "integrity": "sha1-bDAzIxd6YrGyLAcCefeGEoe2mxo=", 1117 | "dev": true 1118 | }, 1119 | "extend": { 1120 | "version": "3.0.1", 1121 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", 1122 | "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", 1123 | "dev": true 1124 | }, 1125 | "extsprintf": { 1126 | "version": "1.3.0", 1127 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", 1128 | "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", 1129 | "dev": true 1130 | }, 1131 | "fast-future": { 1132 | "version": "1.0.2", 1133 | "resolved": "https://registry.npmjs.org/fast-future/-/fast-future-1.0.2.tgz", 1134 | "integrity": "sha1-hDWpqqAteSSNF9cE52JZMB2ZKAo=", 1135 | "dev": true 1136 | }, 1137 | "fast-levenshtein": { 1138 | "version": "2.0.6", 1139 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1140 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1141 | "dev": true 1142 | }, 1143 | "faucet": { 1144 | "version": "https://registry.npmjs.org/faucet/-/faucet-0.0.1.tgz", 1145 | "integrity": "sha1-WX3PHSGJosBiMhtZHo8VHtIDnZw=", 1146 | "dev": true, 1147 | "requires": { 1148 | "defined": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz", 1149 | "duplexer": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", 1150 | "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.5.tgz", 1151 | "sprintf": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", 1152 | "tap-parser": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.4.3.tgz", 1153 | "tape": "2.3.3", 1154 | "through2": "https://registry.npmjs.org/through2/-/through2-0.2.3.tgz" 1155 | }, 1156 | "dependencies": { 1157 | "tape": { 1158 | "version": "2.3.3", 1159 | "resolved": "https://registry.npmjs.org/tape/-/tape-2.3.3.tgz", 1160 | "integrity": "sha1-Lnzgox3wn41oUWZKcYQuDKUFevc=", 1161 | "dev": true, 1162 | "requires": { 1163 | "deep-equal": "0.1.2", 1164 | "defined": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz", 1165 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1166 | "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 1167 | "resumer": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", 1168 | "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 1169 | } 1170 | } 1171 | } 1172 | }, 1173 | "figures": { 1174 | "version": "1.7.0", 1175 | "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", 1176 | "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", 1177 | "dev": true, 1178 | "requires": { 1179 | "escape-string-regexp": "1.0.5", 1180 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" 1181 | } 1182 | }, 1183 | "file-entry-cache": { 1184 | "version": "2.0.0", 1185 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", 1186 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", 1187 | "dev": true, 1188 | "requires": { 1189 | "flat-cache": "1.2.2", 1190 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" 1191 | } 1192 | }, 1193 | "find-root": { 1194 | "version": "1.1.0", 1195 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", 1196 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", 1197 | "dev": true 1198 | }, 1199 | "find-up": { 1200 | "version": "1.1.2", 1201 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 1202 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 1203 | "dev": true, 1204 | "requires": { 1205 | "path-exists": "2.1.0", 1206 | "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 1207 | } 1208 | }, 1209 | "flat-cache": { 1210 | "version": "1.2.2", 1211 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.2.2.tgz", 1212 | "integrity": "sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y=", 1213 | "dev": true, 1214 | "requires": { 1215 | "circular-json": "0.3.3", 1216 | "del": "2.2.2", 1217 | "graceful-fs": "4.1.11", 1218 | "write": "0.2.1" 1219 | }, 1220 | "dependencies": { 1221 | "del": { 1222 | "version": "2.2.2", 1223 | "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", 1224 | "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", 1225 | "dev": true, 1226 | "requires": { 1227 | "globby": "5.0.0", 1228 | "is-path-cwd": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 1229 | "is-path-in-cwd": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 1230 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 1231 | "pify": "2.3.0", 1232 | "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 1233 | "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz" 1234 | } 1235 | } 1236 | } 1237 | }, 1238 | "for-each": { 1239 | "version": "0.3.2", 1240 | "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.2.tgz", 1241 | "integrity": "sha1-LEBFC5NI6X8oEyJZO6lnBLmr1NQ=", 1242 | "dev": true, 1243 | "requires": { 1244 | "is-function": "1.0.1" 1245 | } 1246 | }, 1247 | "foreach": { 1248 | "version": "2.0.5", 1249 | "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", 1250 | "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", 1251 | "dev": true 1252 | }, 1253 | "forever-agent": { 1254 | "version": "0.6.1", 1255 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", 1256 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", 1257 | "dev": true 1258 | }, 1259 | "form-data": { 1260 | "version": "2.1.4", 1261 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", 1262 | "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", 1263 | "dev": true, 1264 | "requires": { 1265 | "asynckit": "0.4.0", 1266 | "combined-stream": "1.0.5", 1267 | "mime-types": "2.1.16" 1268 | } 1269 | }, 1270 | "fs.realpath": { 1271 | "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1272 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1273 | "dev": true 1274 | }, 1275 | "fstream": { 1276 | "version": "1.0.11", 1277 | "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", 1278 | "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", 1279 | "dev": true, 1280 | "requires": { 1281 | "graceful-fs": "4.1.11", 1282 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1283 | "mkdirp": "0.5.1", 1284 | "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz" 1285 | } 1286 | }, 1287 | "function-bind": { 1288 | "version": "1.1.0", 1289 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.0.tgz", 1290 | "integrity": "sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E=", 1291 | "dev": true 1292 | }, 1293 | "gauge": { 1294 | "version": "1.2.7", 1295 | "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz", 1296 | "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=", 1297 | "dev": true, 1298 | "requires": { 1299 | "ansi": "0.3.1", 1300 | "has-unicode": "2.0.1", 1301 | "lodash.pad": "4.5.1", 1302 | "lodash.padend": "4.6.1", 1303 | "lodash.padstart": "4.6.1" 1304 | } 1305 | }, 1306 | "generate-function": { 1307 | "version": "2.0.0", 1308 | "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", 1309 | "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", 1310 | "dev": true 1311 | }, 1312 | "generate-object-property": { 1313 | "version": "1.2.0", 1314 | "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", 1315 | "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", 1316 | "dev": true, 1317 | "requires": { 1318 | "is-property": "1.0.2" 1319 | } 1320 | }, 1321 | "get-stdin": { 1322 | "version": "5.0.1", 1323 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", 1324 | "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", 1325 | "dev": true 1326 | }, 1327 | "getpass": { 1328 | "version": "0.1.7", 1329 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", 1330 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", 1331 | "dev": true, 1332 | "requires": { 1333 | "assert-plus": "1.0.0" 1334 | }, 1335 | "dependencies": { 1336 | "assert-plus": { 1337 | "version": "1.0.0", 1338 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 1339 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 1340 | "dev": true 1341 | } 1342 | } 1343 | }, 1344 | "ghreleases": { 1345 | "version": "1.0.5", 1346 | "resolved": "https://registry.npmjs.org/ghreleases/-/ghreleases-1.0.5.tgz", 1347 | "integrity": "sha1-og+BlAdDEeGdhMy6em4IxLQ0/YA=", 1348 | "dev": true, 1349 | "requires": { 1350 | "after": "0.8.2", 1351 | "ghrepos": "2.0.0", 1352 | "ghutils": "3.2.1", 1353 | "simple-mime": "0.1.0", 1354 | "url-template": "2.0.8", 1355 | "xtend": "4.0.1" 1356 | }, 1357 | "dependencies": { 1358 | "xtend": { 1359 | "version": "4.0.1", 1360 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1361 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1362 | "dev": true 1363 | } 1364 | } 1365 | }, 1366 | "ghrepos": { 1367 | "version": "2.0.0", 1368 | "resolved": "https://registry.npmjs.org/ghrepos/-/ghrepos-2.0.0.tgz", 1369 | "integrity": "sha1-1m6unZijtTmORg1tt+EKdCaS6Bs=", 1370 | "dev": true, 1371 | "requires": { 1372 | "ghutils": "3.2.1" 1373 | } 1374 | }, 1375 | "ghutils": { 1376 | "version": "3.2.1", 1377 | "resolved": "https://registry.npmjs.org/ghutils/-/ghutils-3.2.1.tgz", 1378 | "integrity": "sha1-T87f+sk1/KzgbhKhfGF04sKf/k8=", 1379 | "dev": true, 1380 | "requires": { 1381 | "jsonist": "1.3.0", 1382 | "xtend": "4.0.1" 1383 | }, 1384 | "dependencies": { 1385 | "xtend": { 1386 | "version": "4.0.1", 1387 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1388 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1389 | "dev": true 1390 | } 1391 | } 1392 | }, 1393 | "github-from-package": { 1394 | "version": "0.0.0", 1395 | "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", 1396 | "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=", 1397 | "dev": true 1398 | }, 1399 | "glob": { 1400 | "version": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 1401 | "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", 1402 | "dev": true, 1403 | "requires": { 1404 | "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1405 | "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1406 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1407 | "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 1408 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1409 | "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 1410 | } 1411 | }, 1412 | "globals": { 1413 | "version": "9.18.0", 1414 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 1415 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 1416 | "dev": true 1417 | }, 1418 | "globby": { 1419 | "version": "5.0.0", 1420 | "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 1421 | "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", 1422 | "dev": true, 1423 | "requires": { 1424 | "array-union": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 1425 | "arrify": "1.0.1", 1426 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 1427 | "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 1428 | "pify": "2.3.0", 1429 | "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 1430 | } 1431 | }, 1432 | "graceful-fs": { 1433 | "version": "4.1.11", 1434 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 1435 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 1436 | "dev": true 1437 | }, 1438 | "har-schema": { 1439 | "version": "1.0.5", 1440 | "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", 1441 | "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", 1442 | "dev": true 1443 | }, 1444 | "har-validator": { 1445 | "version": "4.2.1", 1446 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", 1447 | "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", 1448 | "dev": true, 1449 | "requires": { 1450 | "ajv": "4.11.8", 1451 | "har-schema": "1.0.5" 1452 | } 1453 | }, 1454 | "has": { 1455 | "version": "1.0.1", 1456 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", 1457 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", 1458 | "dev": true, 1459 | "requires": { 1460 | "function-bind": "1.1.0" 1461 | } 1462 | }, 1463 | "has-ansi": { 1464 | "version": "2.0.0", 1465 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 1466 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 1467 | "dev": true, 1468 | "requires": { 1469 | "ansi-regex": "2.1.1" 1470 | } 1471 | }, 1472 | "has-symbol-support-x": { 1473 | "version": "1.4.0", 1474 | "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.0.tgz", 1475 | "integrity": "sha512-F1NtLDtW9NyUrS3faUcI1yVFHCTXyzPb1jfrZBQi5NHxFPlXxZnFLFGzfA2DsdmgCxv2MZ0+bfcgC4EZTmk4SQ==", 1476 | "dev": true 1477 | }, 1478 | "has-to-string-tag-x": { 1479 | "version": "1.4.0", 1480 | "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.0.tgz", 1481 | "integrity": "sha512-R3OdOP9j6AH5hS1yXeu9wAS+iKSZQx/CC6aMdN6WiaqPlBoA2S+47MtoMsZgKr2m0eAJ+73WWGX0RaFFE5XWKA==", 1482 | "dev": true, 1483 | "requires": { 1484 | "has-symbol-support-x": "1.4.0" 1485 | } 1486 | }, 1487 | "has-unicode": { 1488 | "version": "2.0.1", 1489 | "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", 1490 | "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", 1491 | "dev": true 1492 | }, 1493 | "hawk": { 1494 | "version": "3.1.3", 1495 | "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", 1496 | "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", 1497 | "dev": true, 1498 | "requires": { 1499 | "boom": "2.10.1", 1500 | "cryptiles": "2.0.5", 1501 | "hoek": "2.16.3", 1502 | "sntp": "1.0.9" 1503 | } 1504 | }, 1505 | "hoek": { 1506 | "version": "2.16.3", 1507 | "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", 1508 | "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", 1509 | "dev": true 1510 | }, 1511 | "http-signature": { 1512 | "version": "1.1.1", 1513 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", 1514 | "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", 1515 | "dev": true, 1516 | "requires": { 1517 | "assert-plus": "0.2.0", 1518 | "jsprim": "1.4.1", 1519 | "sshpk": "1.13.1" 1520 | } 1521 | }, 1522 | "hyperquest": { 1523 | "version": "1.2.0", 1524 | "resolved": "https://registry.npmjs.org/hyperquest/-/hyperquest-1.2.0.tgz", 1525 | "integrity": "sha1-OeH+9miI3Hzg3sbA3YFPb8iUStU=", 1526 | "dev": true, 1527 | "requires": { 1528 | "duplexer2": "0.0.2", 1529 | "through2": "0.6.5" 1530 | }, 1531 | "dependencies": { 1532 | "readable-stream": { 1533 | "version": "1.0.34", 1534 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", 1535 | "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", 1536 | "dev": true, 1537 | "requires": { 1538 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1539 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1540 | "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1541 | "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" 1542 | } 1543 | }, 1544 | "through2": { 1545 | "version": "0.6.5", 1546 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", 1547 | "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", 1548 | "dev": true, 1549 | "requires": { 1550 | "readable-stream": "1.0.34", 1551 | "xtend": "4.0.1" 1552 | } 1553 | }, 1554 | "xtend": { 1555 | "version": "4.0.1", 1556 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1557 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1558 | "dev": true 1559 | } 1560 | } 1561 | }, 1562 | "ignore": { 1563 | "version": "3.3.3", 1564 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.3.tgz", 1565 | "integrity": "sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0=", 1566 | "dev": true 1567 | }, 1568 | "immediate": { 1569 | "version": "3.0.6", 1570 | "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", 1571 | "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", 1572 | "dev": true 1573 | }, 1574 | "imurmurhash": { 1575 | "version": "0.1.4", 1576 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1577 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1578 | "dev": true 1579 | }, 1580 | "inflight": { 1581 | "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1582 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1583 | "dev": true, 1584 | "requires": { 1585 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1586 | "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 1587 | } 1588 | }, 1589 | "inherits": { 1590 | "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1591 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", 1592 | "dev": true 1593 | }, 1594 | "ini": { 1595 | "version": "1.3.4", 1596 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", 1597 | "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=", 1598 | "dev": true 1599 | }, 1600 | "inquirer": { 1601 | "version": "0.12.0", 1602 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", 1603 | "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", 1604 | "dev": true, 1605 | "requires": { 1606 | "ansi-escapes": "1.4.0", 1607 | "ansi-regex": "2.1.1", 1608 | "chalk": "1.1.3", 1609 | "cli-cursor": "1.0.2", 1610 | "cli-width": "2.1.0", 1611 | "figures": "1.7.0", 1612 | "lodash": "4.17.4", 1613 | "readline2": "1.0.1", 1614 | "run-async": "0.1.0", 1615 | "rx-lite": "3.1.2", 1616 | "string-width": "1.0.2", 1617 | "strip-ansi": "3.0.1", 1618 | "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 1619 | } 1620 | }, 1621 | "interpret": { 1622 | "version": "1.0.3", 1623 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.3.tgz", 1624 | "integrity": "sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A=", 1625 | "dev": true 1626 | }, 1627 | "is-array-buffer-x": { 1628 | "version": "1.3.0", 1629 | "resolved": "https://registry.npmjs.org/is-array-buffer-x/-/is-array-buffer-x-1.3.0.tgz", 1630 | "integrity": "sha512-whzwpofpDnd+7xMeELyPoBzqYqLtP1mnx66y/3PtsJJ5OzC+z79zr+9ItoEH+BJWm4SaXNR0CIdiUGIMUqXpvw==", 1631 | "dev": true, 1632 | "requires": { 1633 | "has-to-string-tag-x": "1.4.0", 1634 | "is-object-like-x": "1.5.0", 1635 | "to-string-tag-x": "1.4.0" 1636 | } 1637 | }, 1638 | "is-arrayish": { 1639 | "version": "0.2.1", 1640 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 1641 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 1642 | "dev": true 1643 | }, 1644 | "is-callable": { 1645 | "version": "1.1.3", 1646 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", 1647 | "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", 1648 | "dev": true 1649 | }, 1650 | "is-date-object": { 1651 | "version": "1.0.1", 1652 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", 1653 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", 1654 | "dev": true 1655 | }, 1656 | "is-fullwidth-code-point": { 1657 | "version": "1.0.0", 1658 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 1659 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 1660 | "dev": true, 1661 | "requires": { 1662 | "number-is-nan": "1.0.1" 1663 | } 1664 | }, 1665 | "is-function": { 1666 | "version": "1.0.1", 1667 | "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", 1668 | "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=", 1669 | "dev": true 1670 | }, 1671 | "is-function-x": { 1672 | "version": "3.1.0", 1673 | "resolved": "https://registry.npmjs.org/is-function-x/-/is-function-x-3.1.0.tgz", 1674 | "integrity": "sha512-QYIql/y+5SRlQyMCO93R+Gq3mPXkSy49MxsEuSu1DCoEx3UUuw+kbsPn7tGf1oStPchZBAqe20/xfqS1wZGSlQ==", 1675 | "dev": true, 1676 | "requires": { 1677 | "has-to-string-tag-x": "1.4.0", 1678 | "is-primitive": "2.0.0", 1679 | "normalize-space-x": "1.3.2", 1680 | "replace-comments-x": "1.0.1", 1681 | "to-string-tag-x": "1.4.0" 1682 | } 1683 | }, 1684 | "is-my-json-valid": { 1685 | "version": "2.16.0", 1686 | "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz", 1687 | "integrity": "sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM=", 1688 | "dev": true, 1689 | "requires": { 1690 | "generate-function": "2.0.0", 1691 | "generate-object-property": "1.2.0", 1692 | "jsonpointer": "4.0.1", 1693 | "xtend": "4.0.1" 1694 | }, 1695 | "dependencies": { 1696 | "xtend": { 1697 | "version": "4.0.1", 1698 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1699 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1700 | "dev": true 1701 | } 1702 | } 1703 | }, 1704 | "is-object-like-x": { 1705 | "version": "1.5.0", 1706 | "resolved": "https://registry.npmjs.org/is-object-like-x/-/is-object-like-x-1.5.0.tgz", 1707 | "integrity": "sha512-8nt2Uf/75/JWi0zL4cSesOkCKW/rcFtNiYi5776ny/LJCchPqheKnx/328MPUaN3uYzkSZKNjo7zbTGMpBfthw==", 1708 | "dev": true, 1709 | "requires": { 1710 | "is-function-x": "3.1.0", 1711 | "is-primitive": "2.0.0" 1712 | } 1713 | }, 1714 | "is-path-cwd": { 1715 | "version": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 1716 | "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", 1717 | "dev": true 1718 | }, 1719 | "is-path-in-cwd": { 1720 | "version": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 1721 | "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", 1722 | "dev": true, 1723 | "requires": { 1724 | "is-path-inside": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" 1725 | } 1726 | }, 1727 | "is-path-inside": { 1728 | "version": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", 1729 | "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", 1730 | "dev": true, 1731 | "requires": { 1732 | "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" 1733 | } 1734 | }, 1735 | "is-primitive": { 1736 | "version": "2.0.0", 1737 | "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", 1738 | "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", 1739 | "dev": true 1740 | }, 1741 | "is-property": { 1742 | "version": "1.0.2", 1743 | "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", 1744 | "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", 1745 | "dev": true 1746 | }, 1747 | "is-regex": { 1748 | "version": "1.0.4", 1749 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 1750 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 1751 | "dev": true, 1752 | "requires": { 1753 | "has": "1.0.1" 1754 | } 1755 | }, 1756 | "is-resolvable": { 1757 | "version": "1.0.0", 1758 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", 1759 | "integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=", 1760 | "dev": true, 1761 | "requires": { 1762 | "tryit": "1.0.3" 1763 | } 1764 | }, 1765 | "is-string": { 1766 | "version": "1.0.4", 1767 | "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.4.tgz", 1768 | "integrity": "sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=", 1769 | "dev": true 1770 | }, 1771 | "is-symbol": { 1772 | "version": "1.0.1", 1773 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", 1774 | "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", 1775 | "dev": true 1776 | }, 1777 | "is-typedarray": { 1778 | "version": "1.0.0", 1779 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 1780 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", 1781 | "dev": true 1782 | }, 1783 | "isarray": { 1784 | "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1785 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 1786 | "dev": true 1787 | }, 1788 | "isexe": { 1789 | "version": "2.0.0", 1790 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1791 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 1792 | "dev": true 1793 | }, 1794 | "isstream": { 1795 | "version": "0.1.2", 1796 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", 1797 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", 1798 | "dev": true 1799 | }, 1800 | "js-tokens": { 1801 | "version": "3.0.2", 1802 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 1803 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 1804 | "dev": true 1805 | }, 1806 | "js-yaml": { 1807 | "version": "3.9.1", 1808 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.1.tgz", 1809 | "integrity": "sha512-CbcG379L1e+mWBnLvHWWeLs8GyV/EMw862uLI3c+GxVyDHWZcjZinwuBd3iW2pgxgIlksW/1vNJa4to+RvDOww==", 1810 | "dev": true, 1811 | "requires": { 1812 | "argparse": "1.0.9", 1813 | "esprima": "4.0.0" 1814 | } 1815 | }, 1816 | "jsbn": { 1817 | "version": "0.1.1", 1818 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", 1819 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", 1820 | "dev": true, 1821 | "optional": true 1822 | }, 1823 | "json-schema": { 1824 | "version": "0.2.3", 1825 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", 1826 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", 1827 | "dev": true 1828 | }, 1829 | "json-stable-stringify": { 1830 | "version": "1.0.1", 1831 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", 1832 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", 1833 | "dev": true, 1834 | "requires": { 1835 | "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" 1836 | } 1837 | }, 1838 | "json-stringify-safe": { 1839 | "version": "5.0.1", 1840 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", 1841 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", 1842 | "dev": true 1843 | }, 1844 | "jsonify": { 1845 | "version": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 1846 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 1847 | "dev": true 1848 | }, 1849 | "jsonist": { 1850 | "version": "1.3.0", 1851 | "resolved": "https://registry.npmjs.org/jsonist/-/jsonist-1.3.0.tgz", 1852 | "integrity": "sha1-wMdLle8clSA4YZsp76UgscyYdVY=", 1853 | "dev": true, 1854 | "requires": { 1855 | "bl": "1.0.3", 1856 | "hyperquest": "1.2.0", 1857 | "json-stringify-safe": "5.0.1", 1858 | "xtend": "4.0.1" 1859 | }, 1860 | "dependencies": { 1861 | "xtend": { 1862 | "version": "4.0.1", 1863 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1864 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1865 | "dev": true 1866 | } 1867 | } 1868 | }, 1869 | "jsonpointer": { 1870 | "version": "4.0.1", 1871 | "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", 1872 | "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", 1873 | "dev": true 1874 | }, 1875 | "jsprim": { 1876 | "version": "1.4.1", 1877 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", 1878 | "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", 1879 | "dev": true, 1880 | "requires": { 1881 | "assert-plus": "1.0.0", 1882 | "extsprintf": "1.3.0", 1883 | "json-schema": "0.2.3", 1884 | "verror": "1.10.0" 1885 | }, 1886 | "dependencies": { 1887 | "assert-plus": { 1888 | "version": "1.0.0", 1889 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 1890 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 1891 | "dev": true 1892 | } 1893 | } 1894 | }, 1895 | "jsx-ast-utils": { 1896 | "version": "1.4.1", 1897 | "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz", 1898 | "integrity": "sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE=", 1899 | "dev": true 1900 | }, 1901 | "left-pad": { 1902 | "version": "1.1.3", 1903 | "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.1.3.tgz", 1904 | "integrity": "sha1-YS9hwDPzqeCOk58crr7qQbbzGZo=" 1905 | }, 1906 | "level-codec": { 1907 | "version": "7.0.0", 1908 | "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.0.tgz", 1909 | "integrity": "sha1-x1W2jQ1E/6Cxy6BEuPgaVaFK05s=", 1910 | "dev": true 1911 | }, 1912 | "level-errors": { 1913 | "version": "1.0.4", 1914 | "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.4.tgz", 1915 | "integrity": "sha1-NYXmI5dMc3qTdVSSpDwCZ82kQl8=", 1916 | "dev": true, 1917 | "requires": { 1918 | "errno": "0.1.4" 1919 | } 1920 | }, 1921 | "level-iterator-stream": { 1922 | "version": "1.3.1", 1923 | "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", 1924 | "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", 1925 | "dev": true, 1926 | "requires": { 1927 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1928 | "level-errors": "1.0.4", 1929 | "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", 1930 | "xtend": "4.0.1" 1931 | }, 1932 | "dependencies": { 1933 | "xtend": { 1934 | "version": "4.0.1", 1935 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1936 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1937 | "dev": true 1938 | } 1939 | } 1940 | }, 1941 | "level-write-stream": { 1942 | "version": "1.0.0", 1943 | "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", 1944 | "integrity": "sha1-P3+7Z5pVE3wP6zA97nZuEu4Twdw=", 1945 | "dev": true, 1946 | "requires": { 1947 | "end-stream": "0.1.0" 1948 | } 1949 | }, 1950 | "leveldown": { 1951 | "version": "1.5.0", 1952 | "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-1.5.0.tgz", 1953 | "integrity": "sha1-a408vqekqJqkdERgfXNYIT5vy4E=", 1954 | "dev": true, 1955 | "requires": { 1956 | "abstract-leveldown": "2.6.2", 1957 | "bindings": "1.2.1", 1958 | "fast-future": "1.0.2", 1959 | "nan": "2.4.0", 1960 | "prebuild": "4.5.0" 1961 | } 1962 | }, 1963 | "levelup": { 1964 | "version": "1.3.8", 1965 | "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.8.tgz", 1966 | "integrity": "sha1-+0QsSI776hBD9+uZKaeSp0+9HaY=", 1967 | "dev": true, 1968 | "requires": { 1969 | "deferred-leveldown": "1.2.2", 1970 | "level-codec": "6.1.0", 1971 | "level-errors": "1.0.4", 1972 | "level-iterator-stream": "1.3.1", 1973 | "prr": "1.0.1", 1974 | "semver": "5.1.1", 1975 | "xtend": "4.0.1" 1976 | }, 1977 | "dependencies": { 1978 | "level-codec": { 1979 | "version": "6.1.0", 1980 | "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-6.1.0.tgz", 1981 | "integrity": "sha1-9d8KmVgvdtrEOFUVGrb05NDWAEU=", 1982 | "dev": true 1983 | }, 1984 | "semver": { 1985 | "version": "5.1.1", 1986 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.1.1.tgz", 1987 | "integrity": "sha1-oykqNz5vPgeY2gsgZBuanFvEfhk=", 1988 | "dev": true 1989 | }, 1990 | "xtend": { 1991 | "version": "4.0.1", 1992 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 1993 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 1994 | "dev": true 1995 | } 1996 | } 1997 | }, 1998 | "levn": { 1999 | "version": "0.3.0", 2000 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 2001 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 2002 | "dev": true, 2003 | "requires": { 2004 | "prelude-ls": "1.1.2", 2005 | "type-check": "0.3.2" 2006 | } 2007 | }, 2008 | "lie": { 2009 | "version": "3.1.1", 2010 | "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", 2011 | "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", 2012 | "dev": true, 2013 | "requires": { 2014 | "immediate": "3.0.6" 2015 | } 2016 | }, 2017 | "load-json-file": { 2018 | "version": "2.0.0", 2019 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 2020 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 2021 | "dev": true, 2022 | "requires": { 2023 | "graceful-fs": "4.1.11", 2024 | "parse-json": "2.2.0", 2025 | "pify": "2.3.0", 2026 | "strip-bom": "3.0.0" 2027 | } 2028 | }, 2029 | "locate-path": { 2030 | "version": "2.0.0", 2031 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 2032 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 2033 | "dev": true, 2034 | "requires": { 2035 | "p-locate": "2.0.0", 2036 | "path-exists": "3.0.0" 2037 | }, 2038 | "dependencies": { 2039 | "path-exists": { 2040 | "version": "3.0.0", 2041 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 2042 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 2043 | "dev": true 2044 | } 2045 | } 2046 | }, 2047 | "lodash": { 2048 | "version": "4.17.4", 2049 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", 2050 | "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", 2051 | "dev": true 2052 | }, 2053 | "lodash.cond": { 2054 | "version": "4.5.2", 2055 | "resolved": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz", 2056 | "integrity": "sha1-9HGh2khr5g9quVXRcRVSPdHSVdU=", 2057 | "dev": true 2058 | }, 2059 | "lodash.isnull": { 2060 | "version": "3.0.0", 2061 | "resolved": "https://registry.npmjs.org/lodash.isnull/-/lodash.isnull-3.0.0.tgz", 2062 | "integrity": "sha1-+vvlnqHcon7teGU0A53YTC4HxW4=", 2063 | "dev": true 2064 | }, 2065 | "lodash.pad": { 2066 | "version": "4.5.1", 2067 | "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.5.1.tgz", 2068 | "integrity": "sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=", 2069 | "dev": true 2070 | }, 2071 | "lodash.padend": { 2072 | "version": "4.6.1", 2073 | "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz", 2074 | "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=", 2075 | "dev": true 2076 | }, 2077 | "lodash.padstart": { 2078 | "version": "4.6.1", 2079 | "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz", 2080 | "integrity": "sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=", 2081 | "dev": true 2082 | }, 2083 | "ltgt": { 2084 | "version": "2.2.0", 2085 | "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.0.tgz", 2086 | "integrity": "sha1-tlul/LNJopkkyOMz98alVi8uSEI=", 2087 | "dev": true 2088 | }, 2089 | "mime-db": { 2090 | "version": "1.29.0", 2091 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.29.0.tgz", 2092 | "integrity": "sha1-SNJtI1WJZRcErFkWygYAGRQmaHg=", 2093 | "dev": true 2094 | }, 2095 | "mime-types": { 2096 | "version": "2.1.16", 2097 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.16.tgz", 2098 | "integrity": "sha1-K4WKUuXs1RbbiXrCvodIeDBpjiM=", 2099 | "dev": true, 2100 | "requires": { 2101 | "mime-db": "1.29.0" 2102 | } 2103 | }, 2104 | "minimatch": { 2105 | "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 2106 | "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", 2107 | "dev": true, 2108 | "requires": { 2109 | "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" 2110 | } 2111 | }, 2112 | "minimist": { 2113 | "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.5.tgz", 2114 | "integrity": "sha1-16oye87PUY+RBqxrjwA/o7zqhWY=", 2115 | "dev": true 2116 | }, 2117 | "mkdirp": { 2118 | "version": "0.5.1", 2119 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 2120 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 2121 | "dev": true, 2122 | "requires": { 2123 | "minimist": "0.0.8" 2124 | }, 2125 | "dependencies": { 2126 | "minimist": { 2127 | "version": "0.0.8", 2128 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 2129 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 2130 | "dev": true 2131 | } 2132 | } 2133 | }, 2134 | "ms": { 2135 | "version": "0.7.3", 2136 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz", 2137 | "integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8=", 2138 | "dev": true 2139 | }, 2140 | "mute-stream": { 2141 | "version": "0.0.5", 2142 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", 2143 | "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=", 2144 | "dev": true 2145 | }, 2146 | "nan": { 2147 | "version": "2.4.0", 2148 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", 2149 | "integrity": "sha1-+zxZ1F/k7/4hXwuJD4rfbrMtIjI=", 2150 | "dev": true 2151 | }, 2152 | "natural-compare": { 2153 | "version": "1.4.0", 2154 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 2155 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 2156 | "dev": true 2157 | }, 2158 | "node-gyp": { 2159 | "version": "3.6.2", 2160 | "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", 2161 | "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", 2162 | "dev": true, 2163 | "requires": { 2164 | "fstream": "1.0.11", 2165 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 2166 | "graceful-fs": "4.1.11", 2167 | "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 2168 | "mkdirp": "0.5.1", 2169 | "nopt": "3.0.6", 2170 | "npmlog": "2.0.4", 2171 | "osenv": "0.1.4", 2172 | "request": "2.80.0", 2173 | "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", 2174 | "semver": "5.3.0", 2175 | "tar": "2.2.1", 2176 | "which": "1.3.0" 2177 | } 2178 | }, 2179 | "node-ninja": { 2180 | "version": "1.0.2", 2181 | "resolved": "https://registry.npmjs.org/node-ninja/-/node-ninja-1.0.2.tgz", 2182 | "integrity": "sha1-IKCeV7kuLfWRmT1L8JisPnJwYrY=", 2183 | "dev": true, 2184 | "requires": { 2185 | "fstream": "1.0.11", 2186 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 2187 | "graceful-fs": "4.1.11", 2188 | "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", 2189 | "mkdirp": "0.5.1", 2190 | "nopt": "3.0.6", 2191 | "npmlog": "2.0.4", 2192 | "osenv": "0.1.4", 2193 | "path-array": "1.0.1", 2194 | "request": "2.80.0", 2195 | "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", 2196 | "semver": "5.3.0", 2197 | "tar": "2.2.1", 2198 | "which": "1.3.0" 2199 | } 2200 | }, 2201 | "noop-logger": { 2202 | "version": "0.1.1", 2203 | "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", 2204 | "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=", 2205 | "dev": true 2206 | }, 2207 | "nopt": { 2208 | "version": "3.0.6", 2209 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", 2210 | "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", 2211 | "dev": true, 2212 | "requires": { 2213 | "abbrev": "1.1.0" 2214 | } 2215 | }, 2216 | "normalize-space-x": { 2217 | "version": "1.3.2", 2218 | "resolved": "https://registry.npmjs.org/normalize-space-x/-/normalize-space-x-1.3.2.tgz", 2219 | "integrity": "sha512-90FkeM1xmKZ47Kl0JY5PhTQCSfxxxPwqQyv744KRyoHi4Ulp9g9uWoygJR/Rdv1oklABuFnwgej1Y+fb+2pQjA==", 2220 | "dev": true, 2221 | "requires": { 2222 | "trim-x": "1.0.2", 2223 | "white-space-x": "2.0.2" 2224 | } 2225 | }, 2226 | "npmlog": { 2227 | "version": "2.0.4", 2228 | "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", 2229 | "integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=", 2230 | "dev": true, 2231 | "requires": { 2232 | "ansi": "0.3.1", 2233 | "are-we-there-yet": "1.1.4", 2234 | "gauge": "1.2.7" 2235 | } 2236 | }, 2237 | "number-is-nan": { 2238 | "version": "1.0.1", 2239 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 2240 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 2241 | "dev": true 2242 | }, 2243 | "oauth-sign": { 2244 | "version": "0.8.2", 2245 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", 2246 | "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", 2247 | "dev": true 2248 | }, 2249 | "object-assign": { 2250 | "version": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", 2251 | "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=", 2252 | "dev": true 2253 | }, 2254 | "object-inspect": { 2255 | "version": "1.3.0", 2256 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.3.0.tgz", 2257 | "integrity": "sha512-OHHnLgLNXpM++GnJRyyhbr2bwl3pPVm4YvaraHrRvDt/N3r+s/gDVHciA7EJBTkijKXj61ssgSAikq1fb0IBRg==", 2258 | "dev": true 2259 | }, 2260 | "object-keys": { 2261 | "version": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", 2262 | "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", 2263 | "dev": true 2264 | }, 2265 | "object.assign": { 2266 | "version": "4.0.4", 2267 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.0.4.tgz", 2268 | "integrity": "sha1-scnMBE7xuf5jYG/BQau7MuFHMMw=", 2269 | "dev": true, 2270 | "requires": { 2271 | "define-properties": "1.1.2", 2272 | "function-bind": "1.1.0", 2273 | "object-keys": "1.0.11" 2274 | }, 2275 | "dependencies": { 2276 | "object-keys": { 2277 | "version": "1.0.11", 2278 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", 2279 | "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", 2280 | "dev": true 2281 | } 2282 | } 2283 | }, 2284 | "once": { 2285 | "version": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2286 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 2287 | "dev": true, 2288 | "requires": { 2289 | "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 2290 | } 2291 | }, 2292 | "onetime": { 2293 | "version": "1.1.0", 2294 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", 2295 | "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", 2296 | "dev": true 2297 | }, 2298 | "optionator": { 2299 | "version": "0.8.2", 2300 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 2301 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 2302 | "dev": true, 2303 | "requires": { 2304 | "deep-is": "0.1.3", 2305 | "fast-levenshtein": "2.0.6", 2306 | "levn": "0.3.0", 2307 | "prelude-ls": "1.1.2", 2308 | "type-check": "0.3.2", 2309 | "wordwrap": "1.0.0" 2310 | } 2311 | }, 2312 | "os-homedir": { 2313 | "version": "1.0.2", 2314 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 2315 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 2316 | "dev": true 2317 | }, 2318 | "os-tmpdir": { 2319 | "version": "1.0.2", 2320 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 2321 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 2322 | "dev": true 2323 | }, 2324 | "osenv": { 2325 | "version": "0.1.4", 2326 | "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", 2327 | "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", 2328 | "dev": true, 2329 | "requires": { 2330 | "os-homedir": "1.0.2", 2331 | "os-tmpdir": "1.0.2" 2332 | } 2333 | }, 2334 | "p-limit": { 2335 | "version": "1.1.0", 2336 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", 2337 | "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", 2338 | "dev": true 2339 | }, 2340 | "p-locate": { 2341 | "version": "2.0.0", 2342 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 2343 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 2344 | "dev": true, 2345 | "requires": { 2346 | "p-limit": "1.1.0" 2347 | } 2348 | }, 2349 | "p-map": { 2350 | "version": "1.1.1", 2351 | "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.1.1.tgz", 2352 | "integrity": "sha1-BfXkrpegaDcbwqXMhr+9vBnErno=", 2353 | "dev": true 2354 | }, 2355 | "parse-json": { 2356 | "version": "2.2.0", 2357 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 2358 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 2359 | "dev": true, 2360 | "requires": { 2361 | "error-ex": "1.3.1" 2362 | } 2363 | }, 2364 | "path-array": { 2365 | "version": "1.0.1", 2366 | "resolved": "https://registry.npmjs.org/path-array/-/path-array-1.0.1.tgz", 2367 | "integrity": "sha1-fi8PNfB6IBUSK4aLfqwOssT+wnE=", 2368 | "dev": true, 2369 | "requires": { 2370 | "array-index": "1.0.0" 2371 | } 2372 | }, 2373 | "path-exists": { 2374 | "version": "2.1.0", 2375 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 2376 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 2377 | "dev": true, 2378 | "requires": { 2379 | "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 2380 | } 2381 | }, 2382 | "path-is-absolute": { 2383 | "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 2384 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 2385 | "dev": true 2386 | }, 2387 | "path-is-inside": { 2388 | "version": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 2389 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", 2390 | "dev": true 2391 | }, 2392 | "path-parse": { 2393 | "version": "1.0.5", 2394 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", 2395 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", 2396 | "dev": true 2397 | }, 2398 | "performance-now": { 2399 | "version": "0.2.0", 2400 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", 2401 | "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", 2402 | "dev": true 2403 | }, 2404 | "pify": { 2405 | "version": "2.3.0", 2406 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 2407 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 2408 | "dev": true 2409 | }, 2410 | "pinkie": { 2411 | "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 2412 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 2413 | "dev": true 2414 | }, 2415 | "pinkie-promise": { 2416 | "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 2417 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 2418 | "dev": true, 2419 | "requires": { 2420 | "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" 2421 | } 2422 | }, 2423 | "pkg-conf": { 2424 | "version": "2.0.0", 2425 | "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.0.0.tgz", 2426 | "integrity": "sha1-BxyHZQQDvM+5xif1h1G/5HwGcnk=", 2427 | "dev": true, 2428 | "requires": { 2429 | "find-up": "2.1.0", 2430 | "load-json-file": "2.0.0" 2431 | }, 2432 | "dependencies": { 2433 | "find-up": { 2434 | "version": "2.1.0", 2435 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 2436 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 2437 | "dev": true, 2438 | "requires": { 2439 | "locate-path": "2.0.0" 2440 | } 2441 | } 2442 | } 2443 | }, 2444 | "pkg-config": { 2445 | "version": "1.1.1", 2446 | "resolved": "https://registry.npmjs.org/pkg-config/-/pkg-config-1.1.1.tgz", 2447 | "integrity": "sha1-VX7yLXPaPIg3EHdmxS6tq94pj+Q=", 2448 | "dev": true, 2449 | "requires": { 2450 | "debug-log": "1.0.1", 2451 | "find-root": "1.1.0", 2452 | "xtend": "4.0.1" 2453 | }, 2454 | "dependencies": { 2455 | "xtend": { 2456 | "version": "4.0.1", 2457 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 2458 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 2459 | "dev": true 2460 | } 2461 | } 2462 | }, 2463 | "pkg-dir": { 2464 | "version": "1.0.0", 2465 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", 2466 | "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", 2467 | "dev": true, 2468 | "requires": { 2469 | "find-up": "1.1.2" 2470 | } 2471 | }, 2472 | "pkg-up": { 2473 | "version": "1.0.0", 2474 | "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-1.0.0.tgz", 2475 | "integrity": "sha1-Pgj7RhUlxEIWJKM7n35tCvWwWiY=", 2476 | "dev": true, 2477 | "requires": { 2478 | "find-up": "1.1.2" 2479 | } 2480 | }, 2481 | "pluralize": { 2482 | "version": "1.2.1", 2483 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", 2484 | "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=", 2485 | "dev": true 2486 | }, 2487 | "polygoat": { 2488 | "version": "https://registry.npmjs.org/polygoat/-/polygoat-1.1.4.tgz", 2489 | "integrity": "sha1-Mp+aDRstSkUUniU5Ujxvff2FCl8=" 2490 | }, 2491 | "pouchdb-node": { 2492 | "version": "6.3.4", 2493 | "resolved": "https://registry.npmjs.org/pouchdb-node/-/pouchdb-node-6.3.4.tgz", 2494 | "integrity": "sha512-LpvTPuvYUEas7hG8ql+sk1XQn4gh04xsYIv90x49h4XcJHNi5tQ9DUTVpmaXDNmtsrIyG8Xc3oz5JpvSob8f5Q==", 2495 | "dev": true, 2496 | "requires": { 2497 | "argsarray": "0.0.1", 2498 | "buffer-from": "0.1.1", 2499 | "clone-buffer": "1.0.0", 2500 | "debug": "2.6.4", 2501 | "double-ended-queue": "2.1.0-0", 2502 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2503 | "level-codec": "7.0.0", 2504 | "level-write-stream": "1.0.0", 2505 | "leveldown": "1.5.0", 2506 | "levelup": "1.3.8", 2507 | "lie": "3.1.1", 2508 | "ltgt": "2.2.0", 2509 | "readable-stream": "1.0.33", 2510 | "request": "2.80.0", 2511 | "through2": "2.0.3", 2512 | "uuid": "3.1.0", 2513 | "vuvuzela": "1.0.3" 2514 | }, 2515 | "dependencies": { 2516 | "readable-stream": { 2517 | "version": "1.0.33", 2518 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", 2519 | "integrity": "sha1-OjYN1mwbHX/UcFOJhg7aHQ9hEmw=", 2520 | "dev": true, 2521 | "requires": { 2522 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 2523 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2524 | "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 2525 | "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" 2526 | } 2527 | }, 2528 | "through2": { 2529 | "version": "2.0.3", 2530 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", 2531 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", 2532 | "dev": true, 2533 | "requires": { 2534 | "readable-stream": "2.3.3", 2535 | "xtend": "4.0.1" 2536 | }, 2537 | "dependencies": { 2538 | "isarray": { 2539 | "version": "1.0.0", 2540 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2541 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 2542 | "dev": true 2543 | }, 2544 | "readable-stream": { 2545 | "version": "2.3.3", 2546 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 2547 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 2548 | "dev": true, 2549 | "requires": { 2550 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 2551 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2552 | "isarray": "1.0.0", 2553 | "process-nextick-args": "1.0.7", 2554 | "safe-buffer": "5.1.1", 2555 | "string_decoder": "1.0.3", 2556 | "util-deprecate": "1.0.2" 2557 | } 2558 | }, 2559 | "string_decoder": { 2560 | "version": "1.0.3", 2561 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 2562 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 2563 | "dev": true, 2564 | "requires": { 2565 | "safe-buffer": "5.1.1" 2566 | } 2567 | } 2568 | } 2569 | }, 2570 | "xtend": { 2571 | "version": "4.0.1", 2572 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 2573 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 2574 | "dev": true 2575 | } 2576 | } 2577 | }, 2578 | "prebuild": { 2579 | "version": "4.5.0", 2580 | "resolved": "https://registry.npmjs.org/prebuild/-/prebuild-4.5.0.tgz", 2581 | "integrity": "sha1-KqoN8gY7/4FKgDvU3JT/m2Tl3wA=", 2582 | "dev": true, 2583 | "requires": { 2584 | "async": "1.5.2", 2585 | "execspawn": "1.0.1", 2586 | "expand-template": "1.0.3", 2587 | "ghreleases": "1.0.5", 2588 | "github-from-package": "0.0.0", 2589 | "minimist": "1.2.0", 2590 | "mkdirp": "0.5.1", 2591 | "node-gyp": "3.6.2", 2592 | "node-ninja": "1.0.2", 2593 | "noop-logger": "0.1.1", 2594 | "npmlog": "2.0.4", 2595 | "os-homedir": "1.0.2", 2596 | "pump": "1.0.2", 2597 | "rc": "1.2.1", 2598 | "simple-get": "1.4.3", 2599 | "tar-fs": "1.15.3", 2600 | "tar-stream": "1.5.4", 2601 | "xtend": "4.0.1" 2602 | }, 2603 | "dependencies": { 2604 | "minimist": { 2605 | "version": "1.2.0", 2606 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 2607 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 2608 | "dev": true 2609 | }, 2610 | "xtend": { 2611 | "version": "4.0.1", 2612 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 2613 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 2614 | "dev": true 2615 | } 2616 | } 2617 | }, 2618 | "prelude-ls": { 2619 | "version": "1.1.2", 2620 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 2621 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 2622 | "dev": true 2623 | }, 2624 | "process-nextick-args": { 2625 | "version": "1.0.7", 2626 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 2627 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", 2628 | "dev": true 2629 | }, 2630 | "progress": { 2631 | "version": "1.1.8", 2632 | "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", 2633 | "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", 2634 | "dev": true 2635 | }, 2636 | "prr": { 2637 | "version": "1.0.1", 2638 | "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", 2639 | "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", 2640 | "dev": true 2641 | }, 2642 | "pump": { 2643 | "version": "1.0.2", 2644 | "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.2.tgz", 2645 | "integrity": "sha1-Oz7mUS+U8OV1U4wXmV+fFpkKXVE=", 2646 | "dev": true, 2647 | "requires": { 2648 | "end-of-stream": "1.4.0", 2649 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 2650 | } 2651 | }, 2652 | "punycode": { 2653 | "version": "1.4.1", 2654 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", 2655 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", 2656 | "dev": true 2657 | }, 2658 | "qs": { 2659 | "version": "6.3.2", 2660 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", 2661 | "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", 2662 | "dev": true 2663 | }, 2664 | "rc": { 2665 | "version": "1.2.1", 2666 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz", 2667 | "integrity": "sha1-LgPo5C7kULjLPc5lvhv4l04d/ZU=", 2668 | "dev": true, 2669 | "requires": { 2670 | "deep-extend": "0.4.2", 2671 | "ini": "1.3.4", 2672 | "minimist": "1.2.0", 2673 | "strip-json-comments": "2.0.1" 2674 | }, 2675 | "dependencies": { 2676 | "minimist": { 2677 | "version": "1.2.0", 2678 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 2679 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 2680 | "dev": true 2681 | } 2682 | } 2683 | }, 2684 | "readable-stream": { 2685 | "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", 2686 | "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", 2687 | "dev": true, 2688 | "requires": { 2689 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 2690 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 2691 | "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 2692 | "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" 2693 | } 2694 | }, 2695 | "readline2": { 2696 | "version": "1.0.1", 2697 | "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", 2698 | "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=", 2699 | "dev": true, 2700 | "requires": { 2701 | "code-point-at": "1.1.0", 2702 | "is-fullwidth-code-point": "1.0.0", 2703 | "mute-stream": "0.0.5" 2704 | } 2705 | }, 2706 | "rechoir": { 2707 | "version": "0.6.2", 2708 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", 2709 | "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", 2710 | "dev": true, 2711 | "requires": { 2712 | "resolve": "1.4.0" 2713 | } 2714 | }, 2715 | "replace-comments-x": { 2716 | "version": "1.0.1", 2717 | "resolved": "https://registry.npmjs.org/replace-comments-x/-/replace-comments-x-1.0.1.tgz", 2718 | "integrity": "sha512-FZLlrcoYb3Cb8bzPxiUTaMR7lm7ZTuUTovb6bHL+aMf41HnGgyRL+oABQ6KKoZo1JBt2UXZs5t2MI06ei2KupA==", 2719 | "dev": true, 2720 | "requires": { 2721 | "is-string": "1.0.4" 2722 | } 2723 | }, 2724 | "request": { 2725 | "version": "2.80.0", 2726 | "resolved": "https://registry.npmjs.org/request/-/request-2.80.0.tgz", 2727 | "integrity": "sha1-jMFi1215OBze/dNQXXa4C2BYm9A=", 2728 | "dev": true, 2729 | "requires": { 2730 | "aws-sign2": "0.6.0", 2731 | "aws4": "1.6.0", 2732 | "caseless": "0.12.0", 2733 | "combined-stream": "1.0.5", 2734 | "extend": "3.0.1", 2735 | "forever-agent": "0.6.1", 2736 | "form-data": "2.1.4", 2737 | "har-validator": "4.2.1", 2738 | "hawk": "3.1.3", 2739 | "http-signature": "1.1.1", 2740 | "is-typedarray": "1.0.0", 2741 | "isstream": "0.1.2", 2742 | "json-stringify-safe": "5.0.1", 2743 | "mime-types": "2.1.16", 2744 | "oauth-sign": "0.8.2", 2745 | "performance-now": "0.2.0", 2746 | "qs": "6.3.2", 2747 | "stringstream": "0.0.5", 2748 | "tough-cookie": "2.3.2", 2749 | "tunnel-agent": "0.4.3", 2750 | "uuid": "3.1.0" 2751 | } 2752 | }, 2753 | "require-uncached": { 2754 | "version": "1.0.3", 2755 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", 2756 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", 2757 | "dev": true, 2758 | "requires": { 2759 | "caller-path": "0.1.0", 2760 | "resolve-from": "1.0.1" 2761 | } 2762 | }, 2763 | "resolve": { 2764 | "version": "1.4.0", 2765 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", 2766 | "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", 2767 | "dev": true, 2768 | "requires": { 2769 | "path-parse": "1.0.5" 2770 | } 2771 | }, 2772 | "resolve-from": { 2773 | "version": "1.0.1", 2774 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", 2775 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", 2776 | "dev": true 2777 | }, 2778 | "restore-cursor": { 2779 | "version": "1.0.1", 2780 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", 2781 | "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", 2782 | "dev": true, 2783 | "requires": { 2784 | "exit-hook": "1.1.1", 2785 | "onetime": "1.1.0" 2786 | } 2787 | }, 2788 | "resumer": { 2789 | "version": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", 2790 | "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", 2791 | "dev": true, 2792 | "requires": { 2793 | "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 2794 | } 2795 | }, 2796 | "rimraf": { 2797 | "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", 2798 | "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", 2799 | "dev": true, 2800 | "requires": { 2801 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz" 2802 | } 2803 | }, 2804 | "run-async": { 2805 | "version": "0.1.0", 2806 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", 2807 | "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", 2808 | "dev": true, 2809 | "requires": { 2810 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 2811 | } 2812 | }, 2813 | "run-parallel": { 2814 | "version": "1.1.6", 2815 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.6.tgz", 2816 | "integrity": "sha1-KQA8miFj4B4tLfyQV18sbB1hoDk=", 2817 | "dev": true 2818 | }, 2819 | "rx-lite": { 2820 | "version": "3.1.2", 2821 | "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", 2822 | "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=", 2823 | "dev": true 2824 | }, 2825 | "safe-buffer": { 2826 | "version": "5.1.1", 2827 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 2828 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", 2829 | "dev": true 2830 | }, 2831 | "semver": { 2832 | "version": "5.3.0", 2833 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", 2834 | "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", 2835 | "dev": true 2836 | }, 2837 | "shelljs": { 2838 | "version": "0.7.8", 2839 | "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", 2840 | "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", 2841 | "dev": true, 2842 | "requires": { 2843 | "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 2844 | "interpret": "1.0.3", 2845 | "rechoir": "0.6.2" 2846 | } 2847 | }, 2848 | "simple-get": { 2849 | "version": "1.4.3", 2850 | "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-1.4.3.tgz", 2851 | "integrity": "sha1-6XVe2kB+ltpAxeUVjJ6jezO+y+s=", 2852 | "dev": true, 2853 | "requires": { 2854 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2855 | "unzip-response": "1.0.2", 2856 | "xtend": "4.0.1" 2857 | }, 2858 | "dependencies": { 2859 | "xtend": { 2860 | "version": "4.0.1", 2861 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 2862 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 2863 | "dev": true 2864 | } 2865 | } 2866 | }, 2867 | "simple-mime": { 2868 | "version": "0.1.0", 2869 | "resolved": "https://registry.npmjs.org/simple-mime/-/simple-mime-0.1.0.tgz", 2870 | "integrity": "sha1-lfUXxPRm18/1YacfydqyWW6p7y4=", 2871 | "dev": true 2872 | }, 2873 | "slice-ansi": { 2874 | "version": "0.0.4", 2875 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", 2876 | "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", 2877 | "dev": true 2878 | }, 2879 | "sntp": { 2880 | "version": "1.0.9", 2881 | "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", 2882 | "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", 2883 | "dev": true, 2884 | "requires": { 2885 | "hoek": "2.16.3" 2886 | } 2887 | }, 2888 | "sprintf": { 2889 | "version": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", 2890 | "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=", 2891 | "dev": true 2892 | }, 2893 | "sprintf-js": { 2894 | "version": "1.0.3", 2895 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 2896 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 2897 | "dev": true 2898 | }, 2899 | "sshpk": { 2900 | "version": "1.13.1", 2901 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", 2902 | "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", 2903 | "dev": true, 2904 | "requires": { 2905 | "asn1": "0.2.3", 2906 | "assert-plus": "1.0.0", 2907 | "bcrypt-pbkdf": "1.0.1", 2908 | "dashdash": "1.14.1", 2909 | "ecc-jsbn": "0.1.1", 2910 | "getpass": "0.1.7", 2911 | "jsbn": "0.1.1", 2912 | "tweetnacl": "0.14.5" 2913 | }, 2914 | "dependencies": { 2915 | "assert-plus": { 2916 | "version": "1.0.0", 2917 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 2918 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 2919 | "dev": true 2920 | } 2921 | } 2922 | }, 2923 | "standard": { 2924 | "version": "10.0.3", 2925 | "resolved": "https://registry.npmjs.org/standard/-/standard-10.0.3.tgz", 2926 | "integrity": "sha512-JURZ+85ExKLQULckDFijdX5WHzN6RC7fgiZNSV4jFQVo+3tPoQGHyBrGekye/yf0aOfb4210EM5qPNlc2cRh4w==", 2927 | "dev": true, 2928 | "requires": { 2929 | "eslint": "3.19.0", 2930 | "eslint-config-standard": "10.2.1", 2931 | "eslint-config-standard-jsx": "4.0.2", 2932 | "eslint-plugin-import": "2.2.0", 2933 | "eslint-plugin-node": "4.2.3", 2934 | "eslint-plugin-promise": "3.5.0", 2935 | "eslint-plugin-react": "6.10.3", 2936 | "eslint-plugin-standard": "3.0.1", 2937 | "standard-engine": "7.0.0" 2938 | } 2939 | }, 2940 | "standard-engine": { 2941 | "version": "7.0.0", 2942 | "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-7.0.0.tgz", 2943 | "integrity": "sha1-67d7nI/CyBZf+jU72Rug3/Qa9pA=", 2944 | "dev": true, 2945 | "requires": { 2946 | "deglob": "2.1.0", 2947 | "get-stdin": "5.0.1", 2948 | "minimist": "1.2.0", 2949 | "pkg-conf": "2.0.0" 2950 | }, 2951 | "dependencies": { 2952 | "minimist": { 2953 | "version": "1.2.0", 2954 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 2955 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 2956 | "dev": true 2957 | } 2958 | } 2959 | }, 2960 | "string-width": { 2961 | "version": "1.0.2", 2962 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 2963 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 2964 | "dev": true, 2965 | "requires": { 2966 | "code-point-at": "1.1.0", 2967 | "is-fullwidth-code-point": "1.0.0", 2968 | "strip-ansi": "3.0.1" 2969 | } 2970 | }, 2971 | "string.prototype.trim": { 2972 | "version": "1.1.2", 2973 | "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz", 2974 | "integrity": "sha1-0E3iyJ4Tf019IG8Ia17S+ua+jOo=", 2975 | "dev": true, 2976 | "requires": { 2977 | "define-properties": "1.1.2", 2978 | "es-abstract": "1.8.0", 2979 | "function-bind": "1.1.0" 2980 | } 2981 | }, 2982 | "string_decoder": { 2983 | "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 2984 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 2985 | "dev": true 2986 | }, 2987 | "stringstream": { 2988 | "version": "0.0.5", 2989 | "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", 2990 | "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", 2991 | "dev": true 2992 | }, 2993 | "strip-ansi": { 2994 | "version": "3.0.1", 2995 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 2996 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 2997 | "dev": true, 2998 | "requires": { 2999 | "ansi-regex": "2.1.1" 3000 | } 3001 | }, 3002 | "strip-bom": { 3003 | "version": "3.0.0", 3004 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 3005 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 3006 | "dev": true 3007 | }, 3008 | "strip-json-comments": { 3009 | "version": "2.0.1", 3010 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 3011 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 3012 | "dev": true 3013 | }, 3014 | "supports-color": { 3015 | "version": "2.0.0", 3016 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 3017 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 3018 | "dev": true 3019 | }, 3020 | "table": { 3021 | "version": "3.8.3", 3022 | "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", 3023 | "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", 3024 | "dev": true, 3025 | "requires": { 3026 | "ajv": "4.11.8", 3027 | "ajv-keywords": "1.5.1", 3028 | "chalk": "1.1.3", 3029 | "lodash": "4.17.4", 3030 | "slice-ansi": "0.0.4", 3031 | "string-width": "2.1.1" 3032 | }, 3033 | "dependencies": { 3034 | "ansi-regex": { 3035 | "version": "3.0.0", 3036 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3037 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3038 | "dev": true 3039 | }, 3040 | "is-fullwidth-code-point": { 3041 | "version": "2.0.0", 3042 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 3043 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 3044 | "dev": true 3045 | }, 3046 | "string-width": { 3047 | "version": "2.1.1", 3048 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 3049 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 3050 | "dev": true, 3051 | "requires": { 3052 | "is-fullwidth-code-point": "2.0.0", 3053 | "strip-ansi": "4.0.0" 3054 | } 3055 | }, 3056 | "strip-ansi": { 3057 | "version": "4.0.0", 3058 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 3059 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 3060 | "dev": true, 3061 | "requires": { 3062 | "ansi-regex": "3.0.0" 3063 | } 3064 | } 3065 | } 3066 | }, 3067 | "tap-parser": { 3068 | "version": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.4.3.tgz", 3069 | "integrity": "sha1-pOrhkMENdsehEZIf84u+TVjwnuo=", 3070 | "dev": true, 3071 | "requires": { 3072 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3073 | "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" 3074 | } 3075 | }, 3076 | "tape": { 3077 | "version": "4.8.0", 3078 | "resolved": "https://registry.npmjs.org/tape/-/tape-4.8.0.tgz", 3079 | "integrity": "sha512-TWILfEnvO7I8mFe35d98F6T5fbLaEtbFTG/lxWvid8qDfFTxt19EBijWmB4j3+Hoh5TfHE2faWs73ua+EphuBA==", 3080 | "dev": true, 3081 | "requires": { 3082 | "deep-equal": "1.0.1", 3083 | "defined": "1.0.0", 3084 | "for-each": "0.3.2", 3085 | "function-bind": "1.1.0", 3086 | "glob": "7.1.2", 3087 | "has": "1.0.1", 3088 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3089 | "minimist": "1.2.0", 3090 | "object-inspect": "1.3.0", 3091 | "resolve": "1.4.0", 3092 | "resumer": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", 3093 | "string.prototype.trim": "1.1.2", 3094 | "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 3095 | }, 3096 | "dependencies": { 3097 | "balanced-match": { 3098 | "version": "1.0.0", 3099 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 3100 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 3101 | "dev": true 3102 | }, 3103 | "brace-expansion": { 3104 | "version": "1.1.8", 3105 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 3106 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 3107 | "dev": true, 3108 | "requires": { 3109 | "balanced-match": "1.0.0", 3110 | "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 3111 | } 3112 | }, 3113 | "deep-equal": { 3114 | "version": "1.0.1", 3115 | "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", 3116 | "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", 3117 | "dev": true 3118 | }, 3119 | "defined": { 3120 | "version": "1.0.0", 3121 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", 3122 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", 3123 | "dev": true 3124 | }, 3125 | "glob": { 3126 | "version": "7.1.2", 3127 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 3128 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 3129 | "dev": true, 3130 | "requires": { 3131 | "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 3132 | "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 3133 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3134 | "minimatch": "3.0.4", 3135 | "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3136 | "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 3137 | } 3138 | }, 3139 | "minimatch": { 3140 | "version": "3.0.4", 3141 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 3142 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 3143 | "dev": true, 3144 | "requires": { 3145 | "brace-expansion": "1.1.8" 3146 | } 3147 | }, 3148 | "minimist": { 3149 | "version": "1.2.0", 3150 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 3151 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 3152 | "dev": true 3153 | } 3154 | } 3155 | }, 3156 | "tar": { 3157 | "version": "2.2.1", 3158 | "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", 3159 | "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", 3160 | "dev": true, 3161 | "requires": { 3162 | "block-stream": "0.0.9", 3163 | "fstream": "1.0.11", 3164 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" 3165 | } 3166 | }, 3167 | "tar-fs": { 3168 | "version": "1.15.3", 3169 | "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.15.3.tgz", 3170 | "integrity": "sha1-7M+TXpQUk9gVECjmNuUc5MPKfyA=", 3171 | "dev": true, 3172 | "requires": { 3173 | "chownr": "1.0.1", 3174 | "mkdirp": "0.5.1", 3175 | "pump": "1.0.2", 3176 | "tar-stream": "1.5.4" 3177 | } 3178 | }, 3179 | "tar-stream": { 3180 | "version": "1.5.4", 3181 | "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.4.tgz", 3182 | "integrity": "sha1-NlSc8E7RrumyowwBQyUiONr5QBY=", 3183 | "dev": true, 3184 | "requires": { 3185 | "bl": "1.0.3", 3186 | "end-of-stream": "1.4.0", 3187 | "readable-stream": "2.3.3", 3188 | "xtend": "4.0.1" 3189 | }, 3190 | "dependencies": { 3191 | "isarray": { 3192 | "version": "1.0.0", 3193 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 3194 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 3195 | "dev": true 3196 | }, 3197 | "readable-stream": { 3198 | "version": "2.3.3", 3199 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 3200 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 3201 | "dev": true, 3202 | "requires": { 3203 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 3204 | "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3205 | "isarray": "1.0.0", 3206 | "process-nextick-args": "1.0.7", 3207 | "safe-buffer": "5.1.1", 3208 | "string_decoder": "1.0.3", 3209 | "util-deprecate": "1.0.2" 3210 | } 3211 | }, 3212 | "string_decoder": { 3213 | "version": "1.0.3", 3214 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 3215 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 3216 | "dev": true, 3217 | "requires": { 3218 | "safe-buffer": "5.1.1" 3219 | } 3220 | }, 3221 | "xtend": { 3222 | "version": "4.0.1", 3223 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 3224 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", 3225 | "dev": true 3226 | } 3227 | } 3228 | }, 3229 | "text-table": { 3230 | "version": "0.2.0", 3231 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 3232 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 3233 | "dev": true 3234 | }, 3235 | "through": { 3236 | "version": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 3237 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 3238 | "dev": true 3239 | }, 3240 | "through2": { 3241 | "version": "https://registry.npmjs.org/through2/-/through2-0.2.3.tgz", 3242 | "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=", 3243 | "dev": true, 3244 | "requires": { 3245 | "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", 3246 | "xtend": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz" 3247 | } 3248 | }, 3249 | "to-string-tag-x": { 3250 | "version": "1.4.0", 3251 | "resolved": "https://registry.npmjs.org/to-string-tag-x/-/to-string-tag-x-1.4.0.tgz", 3252 | "integrity": "sha512-+hKRhsBP35H2Poucdg/lnHnV3OBwx9Ynz865ZBtdCY5kcgFzOVpGq2zjKHSvOaQDUk/FITmsDHRtCLYBi67vVA==", 3253 | "dev": true, 3254 | "requires": { 3255 | "lodash.isnull": "3.0.0", 3256 | "validate.io-undefined": "1.0.3" 3257 | } 3258 | }, 3259 | "to-string-x": { 3260 | "version": "1.4.0", 3261 | "resolved": "https://registry.npmjs.org/to-string-x/-/to-string-x-1.4.0.tgz", 3262 | "integrity": "sha512-Wc3+16c087b3Oj8ycNLrdJmQPkGGMdtPdeDwsWhNwtTGnGClNdcqUuoZSq0d9br6qh9GDPtlCUjyhz8eIwPmZQ==", 3263 | "dev": true, 3264 | "requires": { 3265 | "is-symbol": "1.0.1" 3266 | } 3267 | }, 3268 | "tough-cookie": { 3269 | "version": "2.3.2", 3270 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz", 3271 | "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=", 3272 | "dev": true, 3273 | "requires": { 3274 | "punycode": "1.4.1" 3275 | } 3276 | }, 3277 | "trim-left-x": { 3278 | "version": "1.3.3", 3279 | "resolved": "https://registry.npmjs.org/trim-left-x/-/trim-left-x-1.3.3.tgz", 3280 | "integrity": "sha512-+BR0IT+4pQvoQemCY0j6D6aFs2W/9mpYuXMtPtTWjwd2Juq7JFlprBvLBJF6FdlEOkKneG4Zwc7zcf4Zdj7j1g==", 3281 | "dev": true, 3282 | "requires": { 3283 | "to-string-x": "1.4.0", 3284 | "white-space-x": "2.0.2" 3285 | } 3286 | }, 3287 | "trim-right-x": { 3288 | "version": "1.3.2", 3289 | "resolved": "https://registry.npmjs.org/trim-right-x/-/trim-right-x-1.3.2.tgz", 3290 | "integrity": "sha512-BFpADj8aAgQb8+KSOEIC9KNZXCqybLA94F0lAnyXxF9D3P0IBzQ3/qPPGw3KkDV0uy38z75mHeGPq47Uucwvpw==", 3291 | "dev": true, 3292 | "requires": { 3293 | "to-string-x": "1.4.0", 3294 | "white-space-x": "2.0.2" 3295 | } 3296 | }, 3297 | "trim-x": { 3298 | "version": "1.0.2", 3299 | "resolved": "https://registry.npmjs.org/trim-x/-/trim-x-1.0.2.tgz", 3300 | "integrity": "sha512-jH5BwdQ+/sFqrKhJyJiX3wck5UVzZZbVOm7468zijazVddT9y5/gf+XlwHo9bOYhLPLsUbnsSivCT2G3dXcQJg==", 3301 | "dev": true, 3302 | "requires": { 3303 | "trim-left-x": "1.3.3", 3304 | "trim-right-x": "1.3.2" 3305 | } 3306 | }, 3307 | "tryit": { 3308 | "version": "1.0.3", 3309 | "resolved": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz", 3310 | "integrity": "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=", 3311 | "dev": true 3312 | }, 3313 | "tunnel-agent": { 3314 | "version": "0.4.3", 3315 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", 3316 | "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", 3317 | "dev": true 3318 | }, 3319 | "tweetnacl": { 3320 | "version": "0.14.5", 3321 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", 3322 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", 3323 | "dev": true, 3324 | "optional": true 3325 | }, 3326 | "type-check": { 3327 | "version": "0.3.2", 3328 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 3329 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 3330 | "dev": true, 3331 | "requires": { 3332 | "prelude-ls": "1.1.2" 3333 | } 3334 | }, 3335 | "typedarray": { 3336 | "version": "0.0.6", 3337 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 3338 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", 3339 | "dev": true 3340 | }, 3341 | "uniq": { 3342 | "version": "1.0.1", 3343 | "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", 3344 | "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", 3345 | "dev": true 3346 | }, 3347 | "unzip-response": { 3348 | "version": "1.0.2", 3349 | "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", 3350 | "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=", 3351 | "dev": true 3352 | }, 3353 | "url-template": { 3354 | "version": "2.0.8", 3355 | "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", 3356 | "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=", 3357 | "dev": true 3358 | }, 3359 | "user-home": { 3360 | "version": "2.0.0", 3361 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", 3362 | "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", 3363 | "dev": true, 3364 | "requires": { 3365 | "os-homedir": "1.0.2" 3366 | } 3367 | }, 3368 | "util-deprecate": { 3369 | "version": "1.0.2", 3370 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 3371 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 3372 | "dev": true 3373 | }, 3374 | "util-extend": { 3375 | "version": "1.0.3", 3376 | "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", 3377 | "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=", 3378 | "dev": true 3379 | }, 3380 | "uuid": { 3381 | "version": "3.1.0", 3382 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", 3383 | "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", 3384 | "dev": true 3385 | }, 3386 | "validate.io-undefined": { 3387 | "version": "1.0.3", 3388 | "resolved": "https://registry.npmjs.org/validate.io-undefined/-/validate.io-undefined-1.0.3.tgz", 3389 | "integrity": "sha1-fif8uzFbhB54JDQxiXZxkp4gt/Q=", 3390 | "dev": true 3391 | }, 3392 | "verror": { 3393 | "version": "1.10.0", 3394 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", 3395 | "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", 3396 | "dev": true, 3397 | "requires": { 3398 | "assert-plus": "1.0.0", 3399 | "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 3400 | "extsprintf": "1.3.0" 3401 | }, 3402 | "dependencies": { 3403 | "assert-plus": { 3404 | "version": "1.0.0", 3405 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 3406 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 3407 | "dev": true 3408 | } 3409 | } 3410 | }, 3411 | "vuvuzela": { 3412 | "version": "1.0.3", 3413 | "resolved": "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz", 3414 | "integrity": "sha1-O+FF5YJxxzylUnndhR8SpoIRSws=", 3415 | "dev": true 3416 | }, 3417 | "which": { 3418 | "version": "1.3.0", 3419 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", 3420 | "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", 3421 | "dev": true, 3422 | "requires": { 3423 | "isexe": "2.0.0" 3424 | } 3425 | }, 3426 | "white-space-x": { 3427 | "version": "2.0.2", 3428 | "resolved": "https://registry.npmjs.org/white-space-x/-/white-space-x-2.0.2.tgz", 3429 | "integrity": "sha512-fFV+/CTimN5y1ivUbnnH1yL/D8WiXqK9IixeLlxXWMttTJWY6g40v7o+i0Q6wFH0eQ/IPo8fBH2CaquIwEDkxw==", 3430 | "dev": true 3431 | }, 3432 | "wordwrap": { 3433 | "version": "1.0.0", 3434 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 3435 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 3436 | "dev": true 3437 | }, 3438 | "wrappy": { 3439 | "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 3440 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 3441 | "dev": true 3442 | }, 3443 | "write": { 3444 | "version": "0.2.1", 3445 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", 3446 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", 3447 | "dev": true, 3448 | "requires": { 3449 | "mkdirp": "0.5.1" 3450 | } 3451 | }, 3452 | "write-stream": { 3453 | "version": "0.4.3", 3454 | "resolved": "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz", 3455 | "integrity": "sha1-g8yMA0fQr2BXqThitOOuAd5cgcE=", 3456 | "dev": true, 3457 | "requires": { 3458 | "readable-stream": "0.0.4" 3459 | }, 3460 | "dependencies": { 3461 | "readable-stream": { 3462 | "version": "0.0.4", 3463 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz", 3464 | "integrity": "sha1-8y124/uGM0SlSNeZIwBxc2ZbO40=", 3465 | "dev": true 3466 | } 3467 | } 3468 | }, 3469 | "xtend": { 3470 | "version": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", 3471 | "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", 3472 | "dev": true, 3473 | "requires": { 3474 | "object-keys": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz" 3475 | } 3476 | } 3477 | } 3478 | } 3479 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pouchdb-event-store", 3 | "version": "1.4.5", 4 | "description": "event store on top of pouchdb", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "node ./node_modules/standard/bin/cmd.js && ./node_modules/tape/bin/tape ./tests/**/*.js | ./node_modules/faucet/bin/cmd.js", 8 | "updtr": "updtr --save-exact", 9 | "clean": "rm -rf node_modules" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "git+https://github.com/stockulus/pouchdb-event-store.git" 14 | }, 15 | "dependencies": { 16 | "left-pad": "1.1.3", 17 | "polygoat": "1.1.4" 18 | }, 19 | "devDependencies": { 20 | "del": "3.0.0", 21 | "faucet": "0.0.1", 22 | "pouchdb-node": "6.3.4", 23 | "standard": "10.0.3", 24 | "tape": "4.8.0" 25 | }, 26 | "keywords": [ 27 | "pouchdb", 28 | "eventstore" 29 | ], 30 | "author": "Christoph Stock (@stockulus)", 31 | "license": "MIT", 32 | "bugs": { 33 | "url": "https://github.com/stockulus/pouchdb-event-store/issues" 34 | }, 35 | "homepage": "https://github.com/stockulus/pouchdb-event-store#readme" 36 | } 37 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | pouchdb-event-store 2 | ====== 3 | mimimal eventStore on top of pouchdb 4 | 5 | [![bitHound Overall Score](https://www.bithound.io/github/stockulus/pouchdb-event-store/badges/score.svg)](https://www.bithound.io/github/stockulus/pouchdb-event-store) [![npm Package](https://img.shields.io/npm/dm/pouchdb-event-store.svg)](https://www.npmjs.com/package/pouchdb-event-store) [![npm Package](https://img.shields.io/npm/v/pouchdb-event-store.svg)](https://www.npmjs.com/package/pouchdb-event-store) [![travis-ci.org](https://travis-ci.org/stockulus/pouchdb-event-store.svg)](https://travis-ci.org/stockulus/pouchdb-event-store) [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/) [![license](https://img.shields.io/npm/l/pouchdb-event-store.svg?maxAge=2592000)](https://opensource.org/licenses/MIT) 6 | 7 | ### Usage 8 | 9 | ```bash 10 | npm i pouchdb-event-store 11 | ``` 12 | 13 | ```js 14 | const PouchDB = require('pouchdb') // or pouchdb-node / pouchdb-browser / pouchdb-react-native 15 | const pouchdbEventStore = require('pouchdb-event-store') 16 | 17 | let lastId = 0 18 | const options = { 19 | pouchdb: new PouchDB('events'), 20 | idGenerator: { 21 | next () { return new Promise((resolve, reject) => { resolve(lastId++) }) } 22 | }, 23 | viewModels: [ 24 | { 25 | pouchdb: new PouchDB('viewModel'), 26 | reducer (state, event) { 27 | if (!state.items) state.items = [] 28 | state.items.push(event) 29 | return state 30 | } 31 | } 32 | ] 33 | } 34 | 35 | const eventStoreFactory = pouchdbEventStore(options) 36 | eventStoreFactory.create() 37 | .then((eventStore) => eventStore.add({type: 'CREATE'}, 123)) 38 | .then((result) => { 39 | console.log(result) 40 | }) 41 | .catch((error) => console.error(error)) 42 | 43 | eventStoreFactory.get('1') 44 | .then((eventStore) => { 45 | console.log(eventStore.getEvents()) 46 | }) 47 | .catch((error) => console.error(error)) 48 | 49 | // or callback style 50 | eventStoreFactory(options).create((error, eventStore) => { 51 | if (error) return console.error(error) 52 | eventStore.add({type: 'CREATE'}, 123, (error, result) => { 53 | if (error) return console.error(error) 54 | console.log(result) 55 | }) 56 | }) 57 | 58 | eventStoreFactory.get('2', (error, eventStore) => { 59 | if (error) return console.error(error) 60 | console.log(eventStore.getEvents()) 61 | }) 62 | 63 | ``` 64 | 65 | --- 66 | [![Twitter URL](https://img.shields.io/twitter/url/http/shields.io.svg?style=social&maxAge=2592000)](https://twitter.com/stockulus) [![GitHub stars](https://img.shields.io/github/stars/stockulus/pouchdb-event-store.svg?style=social&label=Star)](https://github.com/stockulus/pouchdb-event-store) 67 | -------------------------------------------------------------------------------- /tests/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const test = require('tape') 4 | const fs = require('fs') 5 | const del = require('del') 6 | const pouchdb = require('pouchdb-node') 7 | .defaults({prefix: '/tmp/eventStore/'}) 8 | 9 | del.sync(['/tmp/eventStore'], {force: true}) 10 | fs.mkdirSync('/tmp/eventStore') 11 | 12 | let lastId = 0 13 | 14 | const viewModelDb = pouchdb('viewModel') 15 | const options = { 16 | pouchdb: pouchdb('events'), 17 | idGenerator: { 18 | next () { return new Promise((resolve, reject) => { resolve(++lastId) }) } 19 | }, 20 | viewModels: [ 21 | { 22 | pouchdb: viewModelDb, 23 | reducer (state, event) { 24 | if (!state.items) state.items = [] 25 | state.items.push(event) 26 | return state 27 | } 28 | } 29 | ] 30 | } 31 | 32 | const eventStoreFactory = require('../index')(options) 33 | 34 | test('create new', (assert) => { 35 | eventStoreFactory.create() 36 | .then((eventStore) => eventStore.add({type: 'CREATE'}, 123)) 37 | .then((result) => { 38 | assert.equal(result.id, '1') 39 | assert.end() 40 | }) 41 | .catch((error) => assert.error(error)) 42 | }) 43 | 44 | test('create new callback style', (assert) => { 45 | eventStoreFactory.create((error, eventStore) => { 46 | if (error) return assert.error(error) 47 | eventStore.add({type: 'CREATE'}, 123, (error, result) => { 48 | if (error) return assert.error(error) 49 | assert.equal(result.id, '2') 50 | assert.end() 51 | }) 52 | }) 53 | }) 54 | 55 | test('read eventstore', (assert) => { 56 | eventStoreFactory.get('1') 57 | .then((eventStore) => { 58 | assert.equal(eventStore.getId(), '1') 59 | assert.equal(eventStore.getEvents().length, 1) 60 | assert.end() 61 | }) 62 | .catch((error) => assert.error(error)) 63 | }) 64 | 65 | test('read eventstore callback style', (assert) => { 66 | eventStoreFactory.get('2', (error, eventStore) => { 67 | if (error) return assert.error(error) 68 | 69 | assert.equal(eventStore.getId(), '2') 70 | assert.equal(eventStore.getEvents().length, 1) 71 | assert.end() 72 | }) 73 | }) 74 | 75 | test('read viewModel', (assert) => { 76 | viewModelDb.get('1') 77 | .then((viewModel) => { 78 | assert.equal(viewModel._id, '1') 79 | assert.equal(viewModel.items.length, 1) 80 | assert.end() 81 | }) 82 | .catch((error) => assert.error(error)) 83 | }) 84 | 85 | test('create new with id', (assert) => { 86 | eventStoreFactory.createWithId('4711') 87 | .then((eventStore) => eventStore.add({type: 'CREATE'}, 123)) 88 | .then((result) => { 89 | assert.equal(result.id, '4711') 90 | assert.end() 91 | }) 92 | .catch((error) => assert.error(error)) 93 | }) 94 | --------------------------------------------------------------------------------