├── .eslintrc ├── .gitignore ├── LICENSE ├── README.md ├── index.js ├── lib └── Client.js ├── package.json └── yarn.lock /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "airbnb/base", 3 | "rules": { 4 | "indent": [2, 4] 5 | } 6 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 18 | .grunt 19 | 20 | # node-waf configuration 21 | .lock-wscript 22 | 23 | # Compiled binary addons (http://nodejs.org/api/addons.html) 24 | build/Release 25 | 26 | # Dependency directory 27 | node_modules 28 | 29 | # Optional npm cache directory 30 | .npm 31 | 32 | # Optional REPL history 33 | .node_repl_history 34 | 35 | # IDEs 36 | .idea/ 37 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Simon Schlüter 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. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Hypixel API for Node.js 2 | 3 | This is a client library for the public Hypixel API. 4 | 5 | [![NPM](https://nodei.co/npm/hypixel.png?mini=true)](https://nodei.co/npm/hypixel/) 6 | 7 | ```javascript 8 | const Hypixel = require('hypixel'); 9 | 10 | const client = new Hypixel({ key: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' }); 11 | 12 | // old school callbacks 13 | client.getPlayerByUsername('PxlPanda', (err, player) => { 14 | if (err) { 15 | return console.info('Nope!'); 16 | } 17 | 18 | // or a Promise if no callback provided 19 | client.findGuildByPlayer(player.uuid) 20 | .then((guildId) => { 21 | ... 22 | }) 23 | .catch((err) => { 24 | ... 25 | }); 26 | }); 27 | ``` 28 | 29 | ## Installation 30 | 31 | `npm install hypixel` 32 | 33 | ## Notes 34 | 35 | When querying data by player UUIDs make sure to remove dashes. 36 | 37 | ## Examples 38 | #### Create a Client instance 39 | 40 | ```javascript 41 | const Hypixel = require('hypixel'); 42 | 43 | const client = new Hypixel({ key: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' }); 44 | ``` 45 | 46 | #### Get Key Info 47 | ```javascript 48 | client.getKeyInfo((err, info) => { ... }); 49 | ``` 50 | #### Find Guild Id By Name 51 | ```javascript 52 | client.findGuildByName(name, (err, guildId) => { ... }); 53 | ``` 54 | #### Find Guild Id By Player 55 | ```javascript 56 | client.findGuildByPlayer(playerUuid, (err, guildId) => { ... }); 57 | ``` 58 | #### Get Guild Info 59 | ```javascript 60 | client.getGuild(guildId, (err, guild) => { ... }); 61 | ``` 62 | #### Get Active Boosters 63 | ```javascript 64 | client.getBoosters((err, boosters) => { ... }); 65 | ``` 66 | #### Get Friends 67 | ```javascript 68 | client.getFriends(playerUuidOrUsername, (err, friends) => { ... }); 69 | ``` 70 | #### Get Session 71 | ```javascript 72 | client.getSession(playerUuidOrUsername, (err, sessionId) => { ... }); 73 | ``` 74 | #### Get Player Info 75 | ```javascript 76 | client.getPlayer(playerUuid, (err, player) => { ... }); 77 | ``` 78 | #### Get Player Info (by username) 79 | ```javascript 80 | client.getPlayerByUsername(username, (err, player) => { ... }); 81 | ``` 82 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/Client'); 2 | -------------------------------------------------------------------------------- /lib/Client.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const request = require('request'); 4 | const querystring = require('querystring'); 5 | 6 | const API_HOST = 'https://api.hypixel.net'; 7 | 8 | class Client { 9 | 10 | /** 11 | * Constructs a new Client instance 12 | * 13 | * @param {object} options - an object containing options, currently only the key 14 | */ 15 | constructor(options) { 16 | if (!options.key) { 17 | throw new Error('Hypixel API key not provided.'); 18 | } 19 | 20 | this.key = options.key; 21 | } 22 | 23 | /** 24 | * Returns the full request path for a combination of path and query options 25 | * 26 | * @param {string} path - the path 27 | * @param {object} query - an object of url query params 28 | * @returns {string} the request url 29 | * @private 30 | */ 31 | _buildPath(path, query) { 32 | const params = query || null; 33 | 34 | const _query = querystring.stringify(Object.assign({}, params, { 35 | key: this.key, 36 | })); 37 | 38 | return `${API_HOST}/${path}?${_query}`; 39 | } 40 | 41 | /** 42 | * Sends a request to the API 43 | * 44 | * @param {string} path - the endpoint of the api request 45 | * @param {object} query - an object of url query parameters 46 | * @param {string} resultField - the name of the top level result data field 47 | * @param {function} callback - The callback function 48 | * @private 49 | */ 50 | _sendRequest(path, query, resultField, callback) { 51 | request(this._buildPath(path, query), (error, res, body) => { 52 | let data = null; 53 | 54 | if (!error) { 55 | try { 56 | data = JSON.parse(body); 57 | } catch (ex) { 58 | return callback(new Error('malformed json'), null); 59 | } 60 | } 61 | 62 | if (data) { 63 | if (data.success) { 64 | return callback(error, resultField ? data[resultField] : data); 65 | } 66 | 67 | return callback(new Error(data.cause), null); 68 | } 69 | 70 | return callback(error, data); 71 | }); 72 | } 73 | 74 | /** 75 | * Sends a request to the API and creates and returns a Promise if no callback is provided 76 | * 77 | * @param {string} path - the endpoint of the api request 78 | * @param {object} query - an object of url query parameters 79 | * @param {string} resultField - the name of the top level result data field 80 | * @param {function} callback - The callback function, if not provided {Promise} is returned 81 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 82 | * @private 83 | */ 84 | _request(path, query, resultField, callback) { 85 | if (callback) { 86 | return this._sendRequest(path, query, resultField, callback); 87 | } 88 | 89 | return new Promise((resolve, reject) => { 90 | this._sendRequest(path, query, resultField, (error, data) => { 91 | if (error) { 92 | reject(error); 93 | } else { 94 | resolve(data); 95 | } 96 | }); 97 | }); 98 | } 99 | 100 | /** 101 | * Retrieves information about the provided API key 102 | * 103 | * @param {function} callback - The callback function, if not provided {Promise} is returned 104 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 105 | */ 106 | getKeyInfo(callback) { 107 | return this._request('key', null, 'record', callback); 108 | } 109 | 110 | /** 111 | * Finds the id of a guild 112 | * 113 | * @param {string} field - The field to query 114 | * @param {string} value - The value to query 115 | * @param {function} callback - The callback function, if not provided {Promise} is returned 116 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 117 | * @private 118 | */ 119 | _findGuild(field, value, callback) { 120 | return this._request('findGuild', { [field]: value }, 'guild', callback); 121 | } 122 | 123 | /** 124 | * Finds the id of a guild by the guild name 125 | * 126 | * @param {string} name - the name of the guild 127 | * @param {function} callback - The callback function, if not provided {Promise} is returned 128 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 129 | */ 130 | findGuildByName(name, callback) { 131 | return this._findGuild('byName', name, callback); 132 | } 133 | 134 | /** 135 | * Finds the id of a guild a player is in 136 | * 137 | * @param {string} player - a player in the guild 138 | * @param {function} callback - The callback function, if not provided {Promise} is returned 139 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 140 | */ 141 | findGuildByPlayer(player, callback) { 142 | return this._findGuild('byUuid', player, callback); 143 | } 144 | 145 | /** 146 | * Gets a guild by the guild id 147 | * 148 | * @param {string} id - the id of the guild 149 | * @param {function} callback - The callback function, if not provided {Promise} is returned 150 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 151 | */ 152 | getGuild(id, callback) { 153 | return this._request('guild', { id }, 'guild', callback); 154 | } 155 | 156 | /** 157 | * Gets all active boosters 158 | * 159 | * @param {function} callback - The callback function, if not provided {Promise} is returned 160 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 161 | */ 162 | getBoosters(callback) { 163 | return this._request('boosters', null, 'boosters', callback); 164 | } 165 | 166 | /** 167 | * Gets the friend ids of a player 168 | * 169 | * @param {string} player - The id or username of the player 170 | * @param {function} callback - The callback function, if not provided {Promise} is returned 171 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 172 | */ 173 | getFriends(player, callback) { 174 | return this._request('friends', { player }, 'records', callback); 175 | } 176 | 177 | /** 178 | * Gets a players session 179 | * 180 | * @param {string} player - The id of the player 181 | * @param {function} callback - The callback function, if not provided {Promise} is returned 182 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 183 | */ 184 | getSession(player, callback) { 185 | return this._request('session', { uuid: player }, 'session', callback); 186 | } 187 | 188 | /** 189 | * Gets a player 190 | * 191 | * @param {string} field - The field to query 192 | * @param {string} value - The value to query 193 | * @param {function} callback - The callback function, if not provided {Promise} is returned 194 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 195 | * @private 196 | */ 197 | _getPlayer(field, value, callback) { 198 | return this._request('player', { [field]: value }, 'player', callback); 199 | } 200 | 201 | /** 202 | * Gets a player 203 | * 204 | * @param {string} player - The id of the player 205 | * @param {function} callback - The callback function, if not provided {Promise} is returned 206 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 207 | */ 208 | getPlayer(id, callback) { 209 | return this._getPlayer('uuid', id, callback); 210 | } 211 | 212 | /** 213 | * Gets a player by their username 214 | * 215 | * @param {string} username - The username of the player 216 | * @param {function} callback - The callback function, if not provided {Promise} is returned 217 | * @returns {Promise|undefined} - undefined if callback defined, Promise if no callback 218 | */ 219 | getPlayerByUsername(username, callback) { 220 | return this._getPlayer('name', username, callback); 221 | } 222 | } 223 | 224 | module.exports = Client; 225 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hypixel", 3 | "version": "1.0.2", 4 | "description": "A node client library for the Hypixel API", 5 | "main": "index.js", 6 | "author": "CdePanda", 7 | "license": "MIT", 8 | "dependencies": { 9 | "request": "^2.69.0" 10 | }, 11 | "engines": { 12 | "node": ">=4.0.0" 13 | }, 14 | "repository": { 15 | "type": "git", 16 | "url": "git://github.com/CdePanda/hypixel-js.git" 17 | }, 18 | "scripts": { 19 | "lint": "eslint ." 20 | }, 21 | "devDependencies": { 22 | "eslint": "^2.5.1", 23 | "eslint-config-airbnb": "^6.2.0", 24 | "eslint-plugin-react": "^4.2.3" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | acorn-jsx@^3.0.0: 6 | version "3.0.1" 7 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" 8 | dependencies: 9 | acorn "^3.0.4" 10 | 11 | acorn@^3.0.4: 12 | version "3.3.0" 13 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" 14 | 15 | acorn@^5.5.0: 16 | version "5.5.3" 17 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" 18 | 19 | ajv-keywords@^1.0.0: 20 | version "1.5.1" 21 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" 22 | 23 | ajv@^4.7.0: 24 | version "4.11.8" 25 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" 26 | dependencies: 27 | co "^4.6.0" 28 | json-stable-stringify "^1.0.1" 29 | 30 | ajv@^5.1.0: 31 | version "5.5.2" 32 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" 33 | dependencies: 34 | co "^4.6.0" 35 | fast-deep-equal "^1.0.0" 36 | fast-json-stable-stringify "^2.0.0" 37 | json-schema-traverse "^0.3.0" 38 | 39 | ansi-escapes@^1.1.0: 40 | version "1.4.0" 41 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" 42 | 43 | ansi-regex@^2.0.0: 44 | version "2.1.1" 45 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 46 | 47 | ansi-regex@^3.0.0: 48 | version "3.0.0" 49 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 50 | 51 | ansi-styles@^2.2.1: 52 | version "2.2.1" 53 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 54 | 55 | argparse@^1.0.7: 56 | version "1.0.10" 57 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 58 | dependencies: 59 | sprintf-js "~1.0.2" 60 | 61 | array-union@^1.0.1: 62 | version "1.0.2" 63 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" 64 | dependencies: 65 | array-uniq "^1.0.1" 66 | 67 | array-uniq@^1.0.1: 68 | version "1.0.3" 69 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" 70 | 71 | arrify@^1.0.0: 72 | version "1.0.1" 73 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 74 | 75 | asn1@~0.2.3: 76 | version "0.2.3" 77 | resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" 78 | 79 | assert-plus@1.0.0, assert-plus@^1.0.0: 80 | version "1.0.0" 81 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" 82 | 83 | asynckit@^0.4.0: 84 | version "0.4.0" 85 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 86 | 87 | aws-sign2@~0.7.0: 88 | version "0.7.0" 89 | resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" 90 | 91 | aws4@^1.6.0: 92 | version "1.6.0" 93 | resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" 94 | 95 | balanced-match@^1.0.0: 96 | version "1.0.0" 97 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 98 | 99 | bcrypt-pbkdf@^1.0.0: 100 | version "1.0.1" 101 | resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" 102 | dependencies: 103 | tweetnacl "^0.14.3" 104 | 105 | boom@4.x.x: 106 | version "4.3.1" 107 | resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" 108 | dependencies: 109 | hoek "4.x.x" 110 | 111 | boom@5.x.x: 112 | version "5.2.0" 113 | resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" 114 | dependencies: 115 | hoek "4.x.x" 116 | 117 | brace-expansion@^1.1.7: 118 | version "1.1.11" 119 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 120 | dependencies: 121 | balanced-match "^1.0.0" 122 | concat-map "0.0.1" 123 | 124 | caller-path@^0.1.0: 125 | version "0.1.0" 126 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" 127 | dependencies: 128 | callsites "^0.2.0" 129 | 130 | callsites@^0.2.0: 131 | version "0.2.0" 132 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" 133 | 134 | caseless@~0.12.0: 135 | version "0.12.0" 136 | resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" 137 | 138 | chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: 139 | version "1.1.3" 140 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 141 | dependencies: 142 | ansi-styles "^2.2.1" 143 | escape-string-regexp "^1.0.2" 144 | has-ansi "^2.0.0" 145 | strip-ansi "^3.0.0" 146 | supports-color "^2.0.0" 147 | 148 | circular-json@^0.3.1: 149 | version "0.3.3" 150 | resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" 151 | 152 | cli-cursor@^1.0.1: 153 | version "1.0.2" 154 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" 155 | dependencies: 156 | restore-cursor "^1.0.1" 157 | 158 | cli-width@^2.0.0: 159 | version "2.2.0" 160 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" 161 | 162 | co@^4.6.0: 163 | version "4.6.0" 164 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" 165 | 166 | code-point-at@^1.0.0: 167 | version "1.1.0" 168 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 169 | 170 | combined-stream@1.0.6, combined-stream@~1.0.5: 171 | version "1.0.6" 172 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" 173 | dependencies: 174 | delayed-stream "~1.0.0" 175 | 176 | concat-map@0.0.1: 177 | version "0.0.1" 178 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 179 | 180 | concat-stream@^1.4.6: 181 | version "1.6.1" 182 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.1.tgz#261b8f518301f1d834e36342b9fea095d2620a26" 183 | dependencies: 184 | inherits "^2.0.3" 185 | readable-stream "^2.2.2" 186 | typedarray "^0.0.6" 187 | 188 | core-util-is@1.0.2, core-util-is@~1.0.0: 189 | version "1.0.2" 190 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 191 | 192 | cryptiles@3.x.x: 193 | version "3.1.2" 194 | resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" 195 | dependencies: 196 | boom "5.x.x" 197 | 198 | d@1: 199 | version "1.0.0" 200 | resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" 201 | dependencies: 202 | es5-ext "^0.10.9" 203 | 204 | dashdash@^1.12.0: 205 | version "1.14.1" 206 | resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" 207 | dependencies: 208 | assert-plus "^1.0.0" 209 | 210 | debug@^2.1.1: 211 | version "2.6.9" 212 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 213 | dependencies: 214 | ms "2.0.0" 215 | 216 | deep-is@~0.1.3: 217 | version "0.1.3" 218 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" 219 | 220 | del@^2.0.2: 221 | version "2.2.2" 222 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" 223 | dependencies: 224 | globby "^5.0.0" 225 | is-path-cwd "^1.0.0" 226 | is-path-in-cwd "^1.0.0" 227 | object-assign "^4.0.1" 228 | pify "^2.0.0" 229 | pinkie-promise "^2.0.0" 230 | rimraf "^2.2.8" 231 | 232 | delayed-stream@~1.0.0: 233 | version "1.0.0" 234 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 235 | 236 | doctrine@^1.2.2: 237 | version "1.5.0" 238 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" 239 | dependencies: 240 | esutils "^2.0.2" 241 | isarray "^1.0.0" 242 | 243 | ecc-jsbn@~0.1.1: 244 | version "0.1.1" 245 | resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" 246 | dependencies: 247 | jsbn "~0.1.0" 248 | 249 | es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: 250 | version "0.10.40" 251 | resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.40.tgz#ab3d2179b943008c5e9ef241beb25ef41424c774" 252 | dependencies: 253 | es6-iterator "~2.0.3" 254 | es6-symbol "~3.1.1" 255 | 256 | es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: 257 | version "2.0.3" 258 | resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" 259 | dependencies: 260 | d "1" 261 | es5-ext "^0.10.35" 262 | es6-symbol "^3.1.1" 263 | 264 | es6-map@^0.1.3: 265 | version "0.1.5" 266 | resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" 267 | dependencies: 268 | d "1" 269 | es5-ext "~0.10.14" 270 | es6-iterator "~2.0.1" 271 | es6-set "~0.1.5" 272 | es6-symbol "~3.1.1" 273 | event-emitter "~0.3.5" 274 | 275 | es6-set@~0.1.5: 276 | version "0.1.5" 277 | resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" 278 | dependencies: 279 | d "1" 280 | es5-ext "~0.10.14" 281 | es6-iterator "~2.0.1" 282 | es6-symbol "3.1.1" 283 | event-emitter "~0.3.5" 284 | 285 | es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: 286 | version "3.1.1" 287 | resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" 288 | dependencies: 289 | d "1" 290 | es5-ext "~0.10.14" 291 | 292 | es6-weak-map@^2.0.1: 293 | version "2.0.2" 294 | resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" 295 | dependencies: 296 | d "1" 297 | es5-ext "^0.10.14" 298 | es6-iterator "^2.0.1" 299 | es6-symbol "^3.1.1" 300 | 301 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 302 | version "1.0.5" 303 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 304 | 305 | escope@^3.6.0: 306 | version "3.6.0" 307 | resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" 308 | dependencies: 309 | es6-map "^0.1.3" 310 | es6-weak-map "^2.0.1" 311 | esrecurse "^4.1.0" 312 | estraverse "^4.1.1" 313 | 314 | eslint-config-airbnb@^6.2.0: 315 | version "6.2.0" 316 | resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-6.2.0.tgz#4a28196aa4617de01b8c914e992a82e5d0886a6e" 317 | 318 | eslint-plugin-react@^4.2.3: 319 | version "4.3.0" 320 | resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-4.3.0.tgz#c79aac8069d62de27887c13b8298d592088de378" 321 | 322 | eslint@^2.5.1: 323 | version "2.13.1" 324 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-2.13.1.tgz#e4cc8fa0f009fb829aaae23855a29360be1f6c11" 325 | dependencies: 326 | chalk "^1.1.3" 327 | concat-stream "^1.4.6" 328 | debug "^2.1.1" 329 | doctrine "^1.2.2" 330 | es6-map "^0.1.3" 331 | escope "^3.6.0" 332 | espree "^3.1.6" 333 | estraverse "^4.2.0" 334 | esutils "^2.0.2" 335 | file-entry-cache "^1.1.1" 336 | glob "^7.0.3" 337 | globals "^9.2.0" 338 | ignore "^3.1.2" 339 | imurmurhash "^0.1.4" 340 | inquirer "^0.12.0" 341 | is-my-json-valid "^2.10.0" 342 | is-resolvable "^1.0.0" 343 | js-yaml "^3.5.1" 344 | json-stable-stringify "^1.0.0" 345 | levn "^0.3.0" 346 | lodash "^4.0.0" 347 | mkdirp "^0.5.0" 348 | optionator "^0.8.1" 349 | path-is-absolute "^1.0.0" 350 | path-is-inside "^1.0.1" 351 | pluralize "^1.2.1" 352 | progress "^1.1.8" 353 | require-uncached "^1.0.2" 354 | shelljs "^0.6.0" 355 | strip-json-comments "~1.0.1" 356 | table "^3.7.8" 357 | text-table "~0.2.0" 358 | user-home "^2.0.0" 359 | 360 | espree@^3.1.6: 361 | version "3.5.4" 362 | resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz#b0f447187c8a8bed944b815a660bddf5deb5d1a7" 363 | dependencies: 364 | acorn "^5.5.0" 365 | acorn-jsx "^3.0.0" 366 | 367 | esprima@^4.0.0: 368 | version "4.0.0" 369 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" 370 | 371 | esrecurse@^4.1.0: 372 | version "4.2.1" 373 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" 374 | dependencies: 375 | estraverse "^4.1.0" 376 | 377 | estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: 378 | version "4.2.0" 379 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" 380 | 381 | esutils@^2.0.2: 382 | version "2.0.2" 383 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" 384 | 385 | event-emitter@~0.3.5: 386 | version "0.3.5" 387 | resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" 388 | dependencies: 389 | d "1" 390 | es5-ext "~0.10.14" 391 | 392 | exit-hook@^1.0.0: 393 | version "1.1.1" 394 | resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" 395 | 396 | extend@~3.0.1: 397 | version "3.0.1" 398 | resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" 399 | 400 | extsprintf@1.3.0: 401 | version "1.3.0" 402 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" 403 | 404 | extsprintf@^1.2.0: 405 | version "1.4.0" 406 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" 407 | 408 | fast-deep-equal@^1.0.0: 409 | version "1.1.0" 410 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" 411 | 412 | fast-json-stable-stringify@^2.0.0: 413 | version "2.0.0" 414 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" 415 | 416 | fast-levenshtein@~2.0.4: 417 | version "2.0.6" 418 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 419 | 420 | figures@^1.3.5: 421 | version "1.7.0" 422 | resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" 423 | dependencies: 424 | escape-string-regexp "^1.0.5" 425 | object-assign "^4.1.0" 426 | 427 | file-entry-cache@^1.1.1: 428 | version "1.3.1" 429 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-1.3.1.tgz#44c61ea607ae4be9c1402f41f44270cbfe334ff8" 430 | dependencies: 431 | flat-cache "^1.2.1" 432 | object-assign "^4.0.1" 433 | 434 | flat-cache@^1.2.1: 435 | version "1.3.0" 436 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" 437 | dependencies: 438 | circular-json "^0.3.1" 439 | del "^2.0.2" 440 | graceful-fs "^4.1.2" 441 | write "^0.2.1" 442 | 443 | forever-agent@~0.6.1: 444 | version "0.6.1" 445 | resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" 446 | 447 | form-data@~2.3.1: 448 | version "2.3.2" 449 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" 450 | dependencies: 451 | asynckit "^0.4.0" 452 | combined-stream "1.0.6" 453 | mime-types "^2.1.12" 454 | 455 | fs.realpath@^1.0.0: 456 | version "1.0.0" 457 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 458 | 459 | generate-function@^2.0.0: 460 | version "2.0.0" 461 | resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" 462 | 463 | generate-object-property@^1.1.0: 464 | version "1.2.0" 465 | resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" 466 | dependencies: 467 | is-property "^1.0.0" 468 | 469 | getpass@^0.1.1: 470 | version "0.1.7" 471 | resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" 472 | dependencies: 473 | assert-plus "^1.0.0" 474 | 475 | glob@^7.0.3, glob@^7.0.5: 476 | version "7.1.2" 477 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" 478 | dependencies: 479 | fs.realpath "^1.0.0" 480 | inflight "^1.0.4" 481 | inherits "2" 482 | minimatch "^3.0.4" 483 | once "^1.3.0" 484 | path-is-absolute "^1.0.0" 485 | 486 | globals@^9.2.0: 487 | version "9.18.0" 488 | resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" 489 | 490 | globby@^5.0.0: 491 | version "5.0.0" 492 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" 493 | dependencies: 494 | array-union "^1.0.1" 495 | arrify "^1.0.0" 496 | glob "^7.0.3" 497 | object-assign "^4.0.1" 498 | pify "^2.0.0" 499 | pinkie-promise "^2.0.0" 500 | 501 | graceful-fs@^4.1.2: 502 | version "4.1.11" 503 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" 504 | 505 | har-schema@^2.0.0: 506 | version "2.0.0" 507 | resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" 508 | 509 | har-validator@~5.0.3: 510 | version "5.0.3" 511 | resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" 512 | dependencies: 513 | ajv "^5.1.0" 514 | har-schema "^2.0.0" 515 | 516 | has-ansi@^2.0.0: 517 | version "2.0.0" 518 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 519 | dependencies: 520 | ansi-regex "^2.0.0" 521 | 522 | hawk@~6.0.2: 523 | version "6.0.2" 524 | resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" 525 | dependencies: 526 | boom "4.x.x" 527 | cryptiles "3.x.x" 528 | hoek "4.x.x" 529 | sntp "2.x.x" 530 | 531 | hoek@4.x.x: 532 | version "4.2.1" 533 | resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" 534 | 535 | http-signature@~1.2.0: 536 | version "1.2.0" 537 | resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" 538 | dependencies: 539 | assert-plus "^1.0.0" 540 | jsprim "^1.2.2" 541 | sshpk "^1.7.0" 542 | 543 | ignore@^3.1.2: 544 | version "3.3.7" 545 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" 546 | 547 | imurmurhash@^0.1.4: 548 | version "0.1.4" 549 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 550 | 551 | inflight@^1.0.4: 552 | version "1.0.6" 553 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 554 | dependencies: 555 | once "^1.3.0" 556 | wrappy "1" 557 | 558 | inherits@2, inherits@^2.0.3, inherits@~2.0.3: 559 | version "2.0.3" 560 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 561 | 562 | inquirer@^0.12.0: 563 | version "0.12.0" 564 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e" 565 | dependencies: 566 | ansi-escapes "^1.1.0" 567 | ansi-regex "^2.0.0" 568 | chalk "^1.0.0" 569 | cli-cursor "^1.0.1" 570 | cli-width "^2.0.0" 571 | figures "^1.3.5" 572 | lodash "^4.3.0" 573 | readline2 "^1.0.1" 574 | run-async "^0.1.0" 575 | rx-lite "^3.1.2" 576 | string-width "^1.0.1" 577 | strip-ansi "^3.0.0" 578 | through "^2.3.6" 579 | 580 | is-fullwidth-code-point@^1.0.0: 581 | version "1.0.0" 582 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 583 | dependencies: 584 | number-is-nan "^1.0.0" 585 | 586 | is-fullwidth-code-point@^2.0.0: 587 | version "2.0.0" 588 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 589 | 590 | is-my-ip-valid@^1.0.0: 591 | version "1.0.0" 592 | resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" 593 | 594 | is-my-json-valid@^2.10.0: 595 | version "2.17.2" 596 | resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" 597 | dependencies: 598 | generate-function "^2.0.0" 599 | generate-object-property "^1.1.0" 600 | is-my-ip-valid "^1.0.0" 601 | jsonpointer "^4.0.0" 602 | xtend "^4.0.0" 603 | 604 | is-path-cwd@^1.0.0: 605 | version "1.0.0" 606 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" 607 | 608 | is-path-in-cwd@^1.0.0: 609 | version "1.0.0" 610 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" 611 | dependencies: 612 | is-path-inside "^1.0.0" 613 | 614 | is-path-inside@^1.0.0: 615 | version "1.0.1" 616 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" 617 | dependencies: 618 | path-is-inside "^1.0.1" 619 | 620 | is-property@^1.0.0: 621 | version "1.0.2" 622 | resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" 623 | 624 | is-resolvable@^1.0.0: 625 | version "1.1.0" 626 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" 627 | 628 | is-typedarray@~1.0.0: 629 | version "1.0.0" 630 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 631 | 632 | isarray@^1.0.0, isarray@~1.0.0: 633 | version "1.0.0" 634 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 635 | 636 | isstream@~0.1.2: 637 | version "0.1.2" 638 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" 639 | 640 | js-yaml@^3.5.1: 641 | version "3.11.0" 642 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" 643 | dependencies: 644 | argparse "^1.0.7" 645 | esprima "^4.0.0" 646 | 647 | jsbn@~0.1.0: 648 | version "0.1.1" 649 | resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" 650 | 651 | json-schema-traverse@^0.3.0: 652 | version "0.3.1" 653 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" 654 | 655 | json-schema@0.2.3: 656 | version "0.2.3" 657 | resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" 658 | 659 | json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: 660 | version "1.0.1" 661 | resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" 662 | dependencies: 663 | jsonify "~0.0.0" 664 | 665 | json-stringify-safe@~5.0.1: 666 | version "5.0.1" 667 | resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" 668 | 669 | jsonify@~0.0.0: 670 | version "0.0.0" 671 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" 672 | 673 | jsonpointer@^4.0.0: 674 | version "4.0.1" 675 | resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" 676 | 677 | jsprim@^1.2.2: 678 | version "1.4.1" 679 | resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" 680 | dependencies: 681 | assert-plus "1.0.0" 682 | extsprintf "1.3.0" 683 | json-schema "0.2.3" 684 | verror "1.10.0" 685 | 686 | levn@^0.3.0, levn@~0.3.0: 687 | version "0.3.0" 688 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 689 | dependencies: 690 | prelude-ls "~1.1.2" 691 | type-check "~0.3.2" 692 | 693 | lodash@^4.0.0, lodash@^4.3.0: 694 | version "4.17.5" 695 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" 696 | 697 | mime-db@~1.33.0: 698 | version "1.33.0" 699 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" 700 | 701 | mime-types@^2.1.12, mime-types@~2.1.17: 702 | version "2.1.18" 703 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" 704 | dependencies: 705 | mime-db "~1.33.0" 706 | 707 | minimatch@^3.0.4: 708 | version "3.0.4" 709 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 710 | dependencies: 711 | brace-expansion "^1.1.7" 712 | 713 | minimist@0.0.8: 714 | version "0.0.8" 715 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 716 | 717 | mkdirp@^0.5.0, mkdirp@^0.5.1: 718 | version "0.5.1" 719 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 720 | dependencies: 721 | minimist "0.0.8" 722 | 723 | ms@2.0.0: 724 | version "2.0.0" 725 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 726 | 727 | mute-stream@0.0.5: 728 | version "0.0.5" 729 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" 730 | 731 | number-is-nan@^1.0.0: 732 | version "1.0.1" 733 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 734 | 735 | oauth-sign@~0.8.2: 736 | version "0.8.2" 737 | resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" 738 | 739 | object-assign@^4.0.1, object-assign@^4.1.0: 740 | version "4.1.1" 741 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 742 | 743 | once@^1.3.0: 744 | version "1.4.0" 745 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 746 | dependencies: 747 | wrappy "1" 748 | 749 | onetime@^1.0.0: 750 | version "1.1.0" 751 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" 752 | 753 | optionator@^0.8.1: 754 | version "0.8.2" 755 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" 756 | dependencies: 757 | deep-is "~0.1.3" 758 | fast-levenshtein "~2.0.4" 759 | levn "~0.3.0" 760 | prelude-ls "~1.1.2" 761 | type-check "~0.3.2" 762 | wordwrap "~1.0.0" 763 | 764 | os-homedir@^1.0.0: 765 | version "1.0.2" 766 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 767 | 768 | path-is-absolute@^1.0.0: 769 | version "1.0.1" 770 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 771 | 772 | path-is-inside@^1.0.1: 773 | version "1.0.2" 774 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 775 | 776 | performance-now@^2.1.0: 777 | version "2.1.0" 778 | resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" 779 | 780 | pify@^2.0.0: 781 | version "2.3.0" 782 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 783 | 784 | pinkie-promise@^2.0.0: 785 | version "2.0.1" 786 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 787 | dependencies: 788 | pinkie "^2.0.0" 789 | 790 | pinkie@^2.0.0: 791 | version "2.0.4" 792 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 793 | 794 | pluralize@^1.2.1: 795 | version "1.2.1" 796 | resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" 797 | 798 | prelude-ls@~1.1.2: 799 | version "1.1.2" 800 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 801 | 802 | process-nextick-args@~2.0.0: 803 | version "2.0.0" 804 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" 805 | 806 | progress@^1.1.8: 807 | version "1.1.8" 808 | resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" 809 | 810 | punycode@^1.4.1: 811 | version "1.4.1" 812 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 813 | 814 | qs@~6.5.1: 815 | version "6.5.1" 816 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" 817 | 818 | readable-stream@^2.2.2: 819 | version "2.3.5" 820 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.5.tgz#b4f85003a938cbb6ecbce2a124fb1012bd1a838d" 821 | dependencies: 822 | core-util-is "~1.0.0" 823 | inherits "~2.0.3" 824 | isarray "~1.0.0" 825 | process-nextick-args "~2.0.0" 826 | safe-buffer "~5.1.1" 827 | string_decoder "~1.0.3" 828 | util-deprecate "~1.0.1" 829 | 830 | readline2@^1.0.1: 831 | version "1.0.1" 832 | resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35" 833 | dependencies: 834 | code-point-at "^1.0.0" 835 | is-fullwidth-code-point "^1.0.0" 836 | mute-stream "0.0.5" 837 | 838 | request@^2.69.0: 839 | version "2.85.0" 840 | resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa" 841 | dependencies: 842 | aws-sign2 "~0.7.0" 843 | aws4 "^1.6.0" 844 | caseless "~0.12.0" 845 | combined-stream "~1.0.5" 846 | extend "~3.0.1" 847 | forever-agent "~0.6.1" 848 | form-data "~2.3.1" 849 | har-validator "~5.0.3" 850 | hawk "~6.0.2" 851 | http-signature "~1.2.0" 852 | is-typedarray "~1.0.0" 853 | isstream "~0.1.2" 854 | json-stringify-safe "~5.0.1" 855 | mime-types "~2.1.17" 856 | oauth-sign "~0.8.2" 857 | performance-now "^2.1.0" 858 | qs "~6.5.1" 859 | safe-buffer "^5.1.1" 860 | stringstream "~0.0.5" 861 | tough-cookie "~2.3.3" 862 | tunnel-agent "^0.6.0" 863 | uuid "^3.1.0" 864 | 865 | require-uncached@^1.0.2: 866 | version "1.0.3" 867 | resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" 868 | dependencies: 869 | caller-path "^0.1.0" 870 | resolve-from "^1.0.0" 871 | 872 | resolve-from@^1.0.0: 873 | version "1.0.1" 874 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" 875 | 876 | restore-cursor@^1.0.1: 877 | version "1.0.1" 878 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" 879 | dependencies: 880 | exit-hook "^1.0.0" 881 | onetime "^1.0.0" 882 | 883 | rimraf@^2.2.8: 884 | version "2.6.2" 885 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" 886 | dependencies: 887 | glob "^7.0.5" 888 | 889 | run-async@^0.1.0: 890 | version "0.1.0" 891 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" 892 | dependencies: 893 | once "^1.3.0" 894 | 895 | rx-lite@^3.1.2: 896 | version "3.1.2" 897 | resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" 898 | 899 | safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 900 | version "5.1.1" 901 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" 902 | 903 | shelljs@^0.6.0: 904 | version "0.6.1" 905 | resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.6.1.tgz#ec6211bed1920442088fe0f70b2837232ed2c8a8" 906 | 907 | slice-ansi@0.0.4: 908 | version "0.0.4" 909 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" 910 | 911 | sntp@2.x.x: 912 | version "2.1.0" 913 | resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" 914 | dependencies: 915 | hoek "4.x.x" 916 | 917 | sprintf-js@~1.0.2: 918 | version "1.0.3" 919 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 920 | 921 | sshpk@^1.7.0: 922 | version "1.14.1" 923 | resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.1.tgz#130f5975eddad963f1d56f92b9ac6c51fa9f83eb" 924 | dependencies: 925 | asn1 "~0.2.3" 926 | assert-plus "^1.0.0" 927 | dashdash "^1.12.0" 928 | getpass "^0.1.1" 929 | optionalDependencies: 930 | bcrypt-pbkdf "^1.0.0" 931 | ecc-jsbn "~0.1.1" 932 | jsbn "~0.1.0" 933 | tweetnacl "~0.14.0" 934 | 935 | string-width@^1.0.1: 936 | version "1.0.2" 937 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 938 | dependencies: 939 | code-point-at "^1.0.0" 940 | is-fullwidth-code-point "^1.0.0" 941 | strip-ansi "^3.0.0" 942 | 943 | string-width@^2.0.0: 944 | version "2.1.1" 945 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 946 | dependencies: 947 | is-fullwidth-code-point "^2.0.0" 948 | strip-ansi "^4.0.0" 949 | 950 | string_decoder@~1.0.3: 951 | version "1.0.3" 952 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" 953 | dependencies: 954 | safe-buffer "~5.1.0" 955 | 956 | stringstream@~0.0.5: 957 | version "0.0.5" 958 | resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" 959 | 960 | strip-ansi@^3.0.0: 961 | version "3.0.1" 962 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 963 | dependencies: 964 | ansi-regex "^2.0.0" 965 | 966 | strip-ansi@^4.0.0: 967 | version "4.0.0" 968 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 969 | dependencies: 970 | ansi-regex "^3.0.0" 971 | 972 | strip-json-comments@~1.0.1: 973 | version "1.0.4" 974 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" 975 | 976 | supports-color@^2.0.0: 977 | version "2.0.0" 978 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 979 | 980 | table@^3.7.8: 981 | version "3.8.3" 982 | resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" 983 | dependencies: 984 | ajv "^4.7.0" 985 | ajv-keywords "^1.0.0" 986 | chalk "^1.1.1" 987 | lodash "^4.0.0" 988 | slice-ansi "0.0.4" 989 | string-width "^2.0.0" 990 | 991 | text-table@~0.2.0: 992 | version "0.2.0" 993 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 994 | 995 | through@^2.3.6: 996 | version "2.3.8" 997 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 998 | 999 | tough-cookie@~2.3.3: 1000 | version "2.3.4" 1001 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" 1002 | dependencies: 1003 | punycode "^1.4.1" 1004 | 1005 | tunnel-agent@^0.6.0: 1006 | version "0.6.0" 1007 | resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" 1008 | dependencies: 1009 | safe-buffer "^5.0.1" 1010 | 1011 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 1012 | version "0.14.5" 1013 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" 1014 | 1015 | type-check@~0.3.2: 1016 | version "0.3.2" 1017 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 1018 | dependencies: 1019 | prelude-ls "~1.1.2" 1020 | 1021 | typedarray@^0.0.6: 1022 | version "0.0.6" 1023 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" 1024 | 1025 | user-home@^2.0.0: 1026 | version "2.0.0" 1027 | resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" 1028 | dependencies: 1029 | os-homedir "^1.0.0" 1030 | 1031 | util-deprecate@~1.0.1: 1032 | version "1.0.2" 1033 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 1034 | 1035 | uuid@^3.1.0: 1036 | version "3.2.1" 1037 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" 1038 | 1039 | verror@1.10.0: 1040 | version "1.10.0" 1041 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" 1042 | dependencies: 1043 | assert-plus "^1.0.0" 1044 | core-util-is "1.0.2" 1045 | extsprintf "^1.2.0" 1046 | 1047 | wordwrap@~1.0.0: 1048 | version "1.0.0" 1049 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" 1050 | 1051 | wrappy@1: 1052 | version "1.0.2" 1053 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1054 | 1055 | write@^0.2.1: 1056 | version "0.2.1" 1057 | resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" 1058 | dependencies: 1059 | mkdirp "^0.5.1" 1060 | 1061 | xtend@^4.0.0: 1062 | version "4.0.1" 1063 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 1064 | --------------------------------------------------------------------------------