From 94a33da996d44ae16efcd623ae21411919346045 Mon Sep 17 00:00:00 2001 From: Kenan Date: Wed, 8 Apr 2020 01:25:54 +0800 Subject: [PATCH 1/4] done --- index.js | 107 ++- package-lock.json | 398 -------- package.json | 10 +- pokedex-bak.json | 1886 ++++++++++++++++++++++++++++++++++++ pokedex.json | 1887 +----------------------------------- public/styles/styles.css | 54 ++ views/form.jsx | 47 + views/home.jsx | 0 yarn.lock | 1945 ++++++++++++++++++++++++++++++++------ 9 files changed, 3737 insertions(+), 2597 deletions(-) delete mode 100644 package-lock.json create mode 100644 pokedex-bak.json create mode 100644 public/styles/styles.css create mode 100644 views/form.jsx create mode 100644 views/home.jsx diff --git a/index.js b/index.js index 156bdd0..e49ab68 100644 --- a/index.js +++ b/index.js @@ -1,54 +1,100 @@ const express = require('express'); const jsonfile = require('jsonfile'); - +const bodyParser = require('body-parser'); +const path = require('path'); +const port = 3000; const FILE = 'pokedex.json'; -/** - * =================================== - * Configurations and set up - * =================================== - */ - -// Init express app +const reactViews = require('express-react-views'); const app = express(); +app.use(bodyParser.urlencoded({extended: false})); +app.use(bodyParser.json()); + +app.set('views', __dirname + '/views'); +app.engine('jsx', reactViews.createEngine()); +app.set('view engine', 'jsx'); +app.use(express.static(path.join(__dirname, 'public'))); +app.listen(port, () => console.log(`~~~ Tuning in to the waves of port ${port} ~~~`)); + + /** * =================================== * Routes * =================================== */ -app.get('/pokemon/:id', (request, response) => { +app.get('/pokemon/new', (req, res) => { + res.render('form'); +}); +app.use('/pokemon', preventDuplicate); +app.post('/pokemon', addPokemon); +app.get('/pokemon/:id', viewPokemonById); +app.get('/', (request, response) => { + response.send("yay"); +}); + +// utils +const getJson = async () => await jsonfile.readFile(FILE); +const writeJson = async (data) => await jsonfile.writeFile(FILE, data); + +// controllers +function preventDuplicate(req, res, next ) { + getJson() + .then(data => checkDuplicates(data, req)) + .then( hasDup =>handleIfDuplicates (hasDup,next,res)); +} + +function checkDuplicates(data, req) { + return data.pokemon.some(item => + item.name === req.body.name || + item.id === req.body.id || + item.num === req.body.num) +} - // get json from specified file +function handleIfDuplicates(hasDuplicate,next,res) { + if(hasDuplicate) { + res.render("There is already an pokemon with id, name , or number"); + } else { + next(); + } +} + +function addPokemon(req, res) { + const {id, num, name, img, height, weight} = req.body; + getJson() + .then(data =>_addPokemon(data, id, num, name, img, height, weight)) + .then(writeJson) +} + +function _addPokemon(data, id, num, name, img, height, weight) { + data.pokemon.push({id, num, name, img, height, weight}); + return data; +} + + + +function viewPokemonById(response, request) { jsonfile.readFile(FILE, (err, obj) => { - - // check to make sure the file was properly read - if( err ){ - - console.log("error with json read file:",err); + if (err) { + console.log("error with json read file:", err); response.status(503).send("error reading filee"); - return; + return; } - // obj is the object from the pokedex json file - // extract input data from request - let inputId = parseInt( request.params.id ); - + let inputId = parseInt(request.params.id); var pokemon; - // find pokemon by id from the pokedex json file - for( let i=0; i { response.send(pokemon); } }); -}); - -app.get('/', (request, response) => { - response.send("yay"); -}); - -/** - * =================================== - * Listen to requests on port 3000 - * =================================== - */ -app.listen(3000, () => console.log('~~~ Tuning in to the waves of port 3000 ~~~')); +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 645cf11..0000000 --- a/package-lock.json +++ /dev/null @@ -1,398 +0,0 @@ -{ - "name": "express-test", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "requires": { - "mime-types": "2.1.18", - "negotiator": "0.6.1" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", - "requires": { - "bytes": "3.0.0", - "content-type": "1.0.4", - "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.3", - "iconv-lite": "0.4.19", - "on-finished": "2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "1.6.16" - } - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "express": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", - "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", - "requires": { - "accepts": "1.3.5", - "array-flatten": "1.1.1", - "body-parser": "1.18.2", - "content-disposition": "0.5.2", - "content-type": "1.0.4", - "cookie": "0.3.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", - "finalhandler": "1.1.1", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.3", - "qs": "6.5.1", - "range-parser": "1.2.0", - "safe-buffer": "5.1.1", - "send": "0.16.2", - "serve-static": "1.13.2", - "setprototypeof": "1.1.0", - "statuses": "1.4.0", - "type-is": "1.6.16", - "utils-merge": "1.0.1", - "vary": "1.1.2" - } - }, - "finalhandler": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", - "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.4.0", - "unpipe": "1.0.0" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "optional": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "requires": { - "depd": "1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": "1.4.0" - } - }, - "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ipaddr.js": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", - "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "requires": { - "graceful-fs": "4.1.11" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "method-override": { - "version": "2.3.10", - "resolved": "https://registry.npmjs.org/method-override/-/method-override-2.3.10.tgz", - "integrity": "sha1-49r41d7hDdLc59SuiNYrvud0drQ=", - "requires": { - "debug": "2.6.9", - "methods": "1.1.2", - "parseurl": "1.3.2", - "vary": "1.1.2" - } - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" - }, - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "1.33.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "proxy-addr": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", - "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", - "requires": { - "forwarded": "0.1.2", - "ipaddr.js": "1.6.0" - } - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.4.0" - } - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" - } - } - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "send": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", - "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", - "requires": { - "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", - "fresh": "0.5.2", - "http-errors": "1.6.3", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.4.0" - } - }, - "serve-static": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", - "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", - "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", - "send": "0.16.2" - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" - }, - "type-is": { - "version": "1.6.16", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", - "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "2.1.18" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - } - } -} diff --git a/package.json b/package.json index 2a610ba..862d80a 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,12 @@ "main": "index.js", "license": "MIT", "dependencies": { - "express": "^4.16.3", - "jsonfile": "^4.0.0", - "method-override": "^2.3.10" + "body-parser": "^1.19.0", + "express": "^4.17.1", + "express-react-views": "^0.11.0", + "jsonfile": "^6.0.1", + "method-override": "^3.0.0", + "react": "^16.13.1", + "react-dom": "^16.13.1" } } diff --git a/pokedex-bak.json b/pokedex-bak.json new file mode 100644 index 0000000..d11c5ec --- /dev/null +++ b/pokedex-bak.json @@ -0,0 +1,1886 @@ +{ + "pokemon": [ + { + "id": 1, + "num": "001", + "name": "Bulbasaur", + "img": "http://www.serebii.net/pokemongo/pokemon/001.png", + "height": "0.71 m", + "weight": "6.9 kg", + "candy": "Bulbasaur Candy", + "candy_count": "25", + "egg": "2 km", + "avg_spawns": "69", + "spawn_time": "20:00" + }, + { + "id": 2, + "num": "002", + "name": "Ivysaur", + "img": "http://www.serebii.net/pokemongo/pokemon/002.png", + "height": "0.99 m", + "weight": "13.0 kg", + "candy": "Bulbasaur Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 4.2, + "spawn_time": "07:00" + }, + { + "id": 3, + "num": "003", + "name": "Venusaur", + "img": "http://www.serebii.net/pokemongo/pokemon/003.png", + "height": "2.01 m", + "weight": "100.0 kg", + "candy": "Bulbasaur Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.7, + "spawn_time": "11:30" + }, + { + "id": 4, + "num": "004", + "name": "Charmander", + "img": "http://www.serebii.net/pokemongo/pokemon/004.png", + "height": "0.61 m", + "weight": "8.5 kg", + "candy": "Charmander Candy", + "candy_count": 25, + "egg": "2 km", + "avg_spawns": 25.3, + "spawn_time": "08:45" + }, + { + "id": 5, + "num": "005", + "name": "Charmeleon", + "img": "http://www.serebii.net/pokemongo/pokemon/005.png", + "height": "1.09 m", + "weight": "19.0 kg", + "candy": "Charmander Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 1.2, + "spawn_time": "19:00" + }, + { + "id": 6, + "num": "006", + "name": "Charizard", + "img": "http://www.serebii.net/pokemongo/pokemon/006.png", + "height": "1.70 m", + "weight": "90.5 kg", + "candy": "Charmander Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.31, + "spawn_time": "13:34" + }, + { + "id": 7, + "num": "007", + "name": "Squirtle", + "img": "http://www.serebii.net/pokemongo/pokemon/007.png", + "height": "0.51 m", + "weight": "9.0 kg", + "candy": "Squirtle Candy", + "candy_count": 25, + "egg": "2 km", + "avg_spawns": 58, + "spawn_time": "04:25" + }, + { + "id": 8, + "num": "008", + "name": "Wartortle", + "img": "http://www.serebii.net/pokemongo/pokemon/008.png", + "height": "0.99 m", + "weight": "22.5 kg", + "candy": "Squirtle Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 3.4, + "spawn_time": "07:02" + }, + { + "id": 9, + "num": "009", + "name": "Blastoise", + "img": "http://www.serebii.net/pokemongo/pokemon/009.png", + "height": "1.60 m", + "weight": "85.5 kg", + "candy": "Squirtle Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.67, + "spawn_time": "00:06" + }, + { + "id": 10, + "num": "010", + "name": "Caterpie", + "img": "http://www.serebii.net/pokemongo/pokemon/010.png", + "height": "0.30 m", + "weight": "2.9 kg", + "candy": "Caterpie Candy", + "candy_count": 12, + "egg": "2 km", + "avg_spawns": 303.2, + "spawn_time": "16:35" + }, + { + "id": 11, + "num": "011", + "name": "Metapod", + "img": "http://www.serebii.net/pokemongo/pokemon/011.png", + "height": "0.71 m", + "weight": "9.9 kg", + "candy": "Caterpie Candy", + "candy_count": 50, + "egg": "Not in Eggs", + "avg_spawns": 18.7, + "spawn_time": "02:11" + }, + { + "id": 12, + "num": "012", + "name": "Butterfree", + "img": "http://www.serebii.net/pokemongo/pokemon/012.png", + "height": "1.09 m", + "weight": "32.0 kg", + "candy": "Caterpie Candy", + "egg": "Not in Eggs", + "avg_spawns": 2.2, + "spawn_time": "05:23" + }, + { + "id": 13, + "num": "013", + "name": "Weedle", + "img": "http://www.serebii.net/pokemongo/pokemon/013.png", + "height": "0.30 m", + "weight": "3.2 kg", + "candy": "Weedle Candy", + "candy_count": 12, + "egg": "2 km", + "avg_spawns": 712, + "spawn_time": "02:21" + }, + { + "id": 14, + "num": "014", + "name": "Kakuna", + "img": "http://www.serebii.net/pokemongo/pokemon/014.png", + "height": "0.61 m", + "weight": "10.0 kg", + "candy": "Weedle Candy", + "candy_count": 50, + "egg": "Not in Eggs", + "avg_spawns": 44, + "spawn_time": "02:30" + }, + { + "id": 15, + "num": "015", + "name": "Beedrill", + "img": "http://www.serebii.net/pokemongo/pokemon/015.png", + "height": "0.99 m", + "weight": "29.5 kg", + "candy": "Weedle Candy", + "egg": "Not in Eggs", + "avg_spawns": 5.1, + "spawn_time": "04:50" + }, + { + "id": 16, + "num": "016", + "name": "Pidgey", + "img": "http://www.serebii.net/pokemongo/pokemon/016.png", + "height": "0.30 m", + "weight": "1.8 kg", + "candy": "Pidgey Candy", + "candy_count": 12, + "egg": "2 km", + "avg_spawns": 1.598, + "spawn_time": "01:34" + }, + { + "id": 17, + "num": "017", + "name": "Pidgeotto", + "img": "http://www.serebii.net/pokemongo/pokemon/017.png", + "height": "1.09 m", + "weight": "30.0 kg", + "candy": "Pidgey Candy", + "candy_count": 50, + "egg": "Not in Eggs", + "avg_spawns": 102, + "spawn_time": "01:30" + }, + { + "id": 18, + "num": "018", + "name": "Pidgeot", + "img": "http://www.serebii.net/pokemongo/pokemon/018.png", + "height": "1.50 m", + "weight": "39.5 kg", + "candy": "Pidgey Candy", + "egg": "Not in Eggs", + "avg_spawns": 13, + "spawn_time": "01:50" + }, + { + "id": 19, + "num": "019", + "name": "Rattata", + "img": "http://www.serebii.net/pokemongo/pokemon/019.png", + "height": "0.30 m", + "weight": "3.5 kg", + "candy": "Rattata Candy", + "candy_count": 25, + "egg": "2 km", + "avg_spawns": 1.305, + "spawn_time": "01:55" + }, + { + "id": 20, + "num": "020", + "name": "Raticate", + "img": "http://www.serebii.net/pokemongo/pokemon/020.png", + "height": "0.71 m", + "weight": "18.5 kg", + "candy": "Rattata Candy", + "egg": "Not in Eggs", + "avg_spawns": 41, + "spawn_time": "01:56" + }, + { + "id": 21, + "num": "021", + "name": "Spearow", + "img": "http://www.serebii.net/pokemongo/pokemon/021.png", + "height": "0.30 m", + "weight": "2.0 kg", + "candy": "Spearow Candy", + "candy_count": 50, + "egg": "2 km", + "avg_spawns": 473, + "spawn_time": "12:25" + }, + { + "id": 22, + "num": "022", + "name": "Fearow", + "img": "http://www.serebii.net/pokemongo/pokemon/022.png", + "height": "1.19 m", + "weight": "38.0 kg", + "candy": "Spearow Candy", + "egg": "Not in Eggs", + "avg_spawns": 15, + "spawn_time": "01:11" + }, + { + "id": 23, + "num": "023", + "name": "Ekans", + "img": "http://www.serebii.net/pokemongo/pokemon/023.png", + "height": "2.01 m", + "weight": "6.9 kg", + "candy": "Ekans Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 227, + "spawn_time": "12:20" + }, + { + "id": 24, + "num": "024", + "name": "Arbok", + "img": "http://www.serebii.net/pokemongo/pokemon/024.png", + "height": "3.51 m", + "weight": "65.0 kg", + "candy": "Ekans Candy", + "egg": "Not in Eggs", + "avg_spawns": 7.2, + "spawn_time": "01:50" + }, + { + "id": 25, + "num": "025", + "name": "Pikachu", + "img": "http://www.serebii.net/pokemongo/pokemon/025.png", + "height": "0.41 m", + "weight": "6.0 kg", + "candy": "Pikachu Candy", + "candy_count": 50, + "egg": "2 km", + "avg_spawns": 21, + "spawn_time": "04:00" + }, + { + "id": 26, + "num": "026", + "name": "Raichu", + "img": "http://www.serebii.net/pokemongo/pokemon/026.png", + "height": "0.79 m", + "weight": "30.0 kg", + "candy": "Pikachu Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.76, + "spawn_time": "23:58" + }, + { + "id": 27, + "num": "027", + "name": "Sandshrew", + "img": "http://www.serebii.net/pokemongo/pokemon/027.png", + "height": "0.61 m", + "weight": "12.0 kg", + "candy": "Sandshrew Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 111, + "spawn_time": "01:58" + }, + { + "id": 28, + "num": "028", + "name": "Sandslash", + "img": "http://www.serebii.net/pokemongo/pokemon/028.png", + "height": "0.99 m", + "weight": "29.5 kg", + "candy": "Sandshrew Candy", + "egg": "Not in Eggs", + "avg_spawns": 3.7, + "spawn_time": "12:34" + }, + { + "id": 29, + "num": "029", + "name": "Nidoran ♀ (Female)", + "img": "http://www.serebii.net/pokemongo/pokemon/029.png", + "height": "0.41 m", + "weight": "7.0 kg", + "candy": "Nidoran ♀ (Female) Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 138, + "spawn_time": "01:51" + }, + { + "id": 30, + "num": "030", + "name": "Nidorina", + "img": "http://www.serebii.net/pokemongo/pokemon/030.png", + "height": "0.79 m", + "weight": "20.0 kg", + "candy": "Nidoran ♀ (Female) Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 8.8, + "spawn_time": "07:22" + }, + { + "id": 31, + "num": "031", + "name": "Nidoqueen", + "img": "http://www.serebii.net/pokemongo/pokemon/031.png", + "height": "1.30 m", + "weight": "60.0 kg", + "candy": "Nidoran ♀ (Female) Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.2, + "spawn_time": "12:35" + }, + { + "id": 32, + "num": "032", + "name": "Nidoran ♂ (Male)", + "img": "http://www.serebii.net/pokemongo/pokemon/032.png", + "height": "0.51 m", + "weight": "9.0 kg", + "candy": "Nidoran ♂ (Male) Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 131, + "spawn_time": "01:12" + }, + { + "id": 33, + "num": "033", + "name": "Nidorino", + "img": "http://www.serebii.net/pokemongo/pokemon/033.png", + "height": "0.89 m", + "weight": "19.5 kg", + "candy": "Nidoran ♂ (Male) Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 8.3, + "spawn_time": "09:02" + }, + { + "id": 34, + "num": "034", + "name": "Nidoking", + "img": "http://www.serebii.net/pokemongo/pokemon/034.png", + "height": "1.40 m", + "weight": "62.0 kg", + "candy": "Nidoran ♂ (Male) Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.7, + "spawn_time": "12:16" + }, + { + "id": 35, + "num": "035", + "name": "Clefairy", + "img": "http://www.serebii.net/pokemongo/pokemon/035.png", + "height": "0.61 m", + "weight": "7.5 kg", + "candy": "Clefairy Candy", + "candy_count": 50, + "egg": "2 km", + "avg_spawns": 92, + "spawn_time": "03:30" + }, + { + "id": 36, + "num": "036", + "name": "Clefable", + "img": "http://www.serebii.net/pokemongo/pokemon/036.png", + "height": "1.30 m", + "weight": "40.0 kg", + "candy": "Clefairy Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.2, + "spawn_time": "03:29" + }, + { + "id": 37, + "num": "037", + "name": "Vulpix", + "img": "http://www.serebii.net/pokemongo/pokemon/037.png", + "height": "0.61 m", + "weight": "9.9 kg", + "candy": "Vulpix Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 22, + "spawn_time": "13:43" + }, + { + "id": 38, + "num": "038", + "name": "Ninetales", + "img": "http://www.serebii.net/pokemongo/pokemon/038.png", + "height": "1.09 m", + "weight": "19.9 kg", + "candy": "Vulpix Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.77, + "spawn_time": "01:32" + }, + { + "id": 39, + "num": "039", + "name": "Jigglypuff", + "img": "http://www.serebii.net/pokemongo/pokemon/039.png", + "height": "0.51 m", + "weight": "5.5 kg", + "candy": "Jigglypuff Candy", + "candy_count": 50, + "egg": "2 km", + "avg_spawns": 39, + "spawn_time": "08:46" + }, + { + "id": 40, + "num": "040", + "name": "Wigglytuff", + "img": "http://www.serebii.net/pokemongo/pokemon/040.png", + "height": "0.99 m", + "weight": "12.0 kg", + "candy": "Jigglypuff Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.8, + "spawn_time": "12:28" + }, + { + "id": 41, + "num": "041", + "name": "Zubat", + "img": "http://www.serebii.net/pokemongo/pokemon/041.png", + "height": "0.79 m", + "weight": "7.5 kg", + "candy": "Zubat Candy", + "candy_count": 50, + "egg": "2 km", + "avg_spawns": 652, + "spawn_time": "12:28" + }, + { + "id": 42, + "num": "042", + "name": "Golbat", + "img": "http://www.serebii.net/pokemongo/pokemon/042.png", + "height": "1.60 m", + "weight": "55.0 kg", + "candy": "Zubat Candy", + "egg": "Not in Eggs", + "avg_spawns": 42, + "spawn_time": "02:15" + }, + { + "id": 43, + "num": "043", + "name": "Oddish", + "img": "http://www.serebii.net/pokemongo/pokemon/043.png", + "height": "0.51 m", + "weight": "5.4 kg", + "candy": "Oddish Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 102, + "spawn_time": "03:58" + }, + { + "id": 44, + "num": "044", + "name": "Gloom", + "img": "http://www.serebii.net/pokemongo/pokemon/044.png", + "height": "0.79 m", + "weight": "8.6 kg", + "candy": "Oddish Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 6.4, + "spawn_time": "11:33" + }, + { + "id": 45, + "num": "045", + "name": "Vileplume", + "img": "http://www.serebii.net/pokemongo/pokemon/045.png", + "height": "1.19 m", + "weight": "18.6 kg", + "candy": "Oddish Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.97, + "spawn_time": "23:58" + }, + { + "id": 46, + "num": "046", + "name": "Paras", + "img": "http://www.serebii.net/pokemongo/pokemon/046.png", + "height": "0.30 m", + "weight": "5.4 kg", + "candy": "Paras Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 236, + "spawn_time": "01:42" + }, + { + "id": 47, + "num": "047", + "name": "Parasect", + "img": "http://www.serebii.net/pokemongo/pokemon/047.png", + "height": "0.99 m", + "weight": "29.5 kg", + "candy": "Paras Candy", + "egg": "Not in Eggs", + "avg_spawns": 7.4, + "spawn_time": "01:22" + }, + { + "id": 48, + "num": "048", + "name": "Venonat", + "img": "http://www.serebii.net/pokemongo/pokemon/048.png", + "height": "0.99 m", + "weight": "30.0 kg", + "candy": "Venonat Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 228, + "spawn_time": "02:31" + }, + { + "id": 49, + "num": "049", + "name": "Venomoth", + "img": "http://www.serebii.net/pokemongo/pokemon/049.png", + "height": "1.50 m", + "weight": "12.5 kg", + "candy": "Venonat Candy", + "egg": "Not in Eggs", + "avg_spawns": 7.2, + "spawn_time": "23:40" + }, + { + "id": 50, + "num": "050", + "name": "Diglett", + "img": "http://www.serebii.net/pokemongo/pokemon/050.png", + "height": "0.20 m", + "weight": "0.8 kg", + "candy": "Diglett Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 40, + "spawn_time": "02:22" + }, + { + "id": 51, + "num": "051", + "name": "Dugtrio", + "img": "http://www.serebii.net/pokemongo/pokemon/051.png", + "height": "0.71 m", + "weight": "33.3 kg", + "candy": "Dugtrio", + "egg": "Not in Eggs", + "avg_spawns": 1.4, + "spawn_time": "12:37" + }, + { + "id": 52, + "num": "052", + "name": "Meowth", + "img": "http://www.serebii.net/pokemongo/pokemon/052.png", + "height": "0.41 m", + "weight": "4.2 kg", + "candy": "Meowth Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 86, + "spawn_time": "02:54" + }, + { + "id": 53, + "num": "053", + "name": "Persian", + "img": "http://www.serebii.net/pokemongo/pokemon/053.png", + "height": "0.99 m", + "weight": "32.0 kg", + "candy": "Meowth Candy", + "egg": "Not in Eggs", + "avg_spawns": 2.2, + "spawn_time": "02:44" + }, + { + "id": 54, + "num": "054", + "name": "Psyduck", + "img": "http://www.serebii.net/pokemongo/pokemon/054.png", + "height": "0.79 m", + "weight": "19.6 kg", + "candy": "Psyduck Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 254, + "spawn_time": "03:41" + }, + { + "id": 55, + "num": "055", + "name": "Golduck", + "img": "http://www.serebii.net/pokemongo/pokemon/055.png", + "height": "1.70 m", + "weight": "76.6 kg", + "candy": "Psyduck Candy", + "egg": "Not in Eggs", + "avg_spawns": 8.7, + "spawn_time": "23:06" + }, + { + "id": 56, + "num": "056", + "name": "Mankey", + "img": "http://www.serebii.net/pokemongo/pokemon/056.png", + "height": "0.51 m", + "weight": "28.0 kg", + "candy": "Mankey Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 92, + "spawn_time": "12:52" + }, + { + "id": 57, + "num": "057", + "name": "Primeape", + "img": "http://www.serebii.net/pokemongo/pokemon/057.png", + "height": "0.99 m", + "weight": "32.0 kg", + "candy": "Mankey Candy", + "egg": "Not in Eggs", + "avg_spawns": 3.1, + "spawn_time": "12:33" + }, + { + "id": 58, + "num": "058", + "name": "Growlithe", + "img": "http://www.serebii.net/pokemongo/pokemon/058.png", + "height": "0.71 m", + "weight": "19.0 kg", + "candy": "Growlithe Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 92, + "spawn_time": "03:57" + }, + { + "id": 59, + "num": "059", + "name": "Arcanine", + "img": "http://www.serebii.net/pokemongo/pokemon/059.png", + "height": "1.91 m", + "weight": "155.0 kg", + "candy": "Growlithe Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.7, + "spawn_time": "03:11" + }, + { + "id": 60, + "num": "060", + "name": "Poliwag", + "img": "http://www.serebii.net/pokemongo/pokemon/060.png", + "height": "0.61 m", + "weight": "12.4 kg", + "candy": "Poliwag Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 219, + "spawn_time": "03:40" + }, + { + "id": 61, + "num": "061", + "name": "Poliwhirl", + "img": "http://www.serebii.net/pokemongo/pokemon/061.png", + "height": "0.99 m", + "weight": "20.0 kg", + "candy": "Poliwag Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 13, + "spawn_time": "09:14" + }, + { + "id": 62, + "num": "062", + "name": "Poliwrath", + "img": "http://www.serebii.net/pokemongo/pokemon/062.png", + "height": "1.30 m", + "weight": "54.0 kg", + "candy": "Poliwag Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.1, + "spawn_time": "01:32" + }, + { + "id": 63, + "num": "063", + "name": "Abra", + "img": "http://www.serebii.net/pokemongo/pokemon/063.png", + "height": "0.89 m", + "weight": "19.5 kg", + "candy": "Abra Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 42, + "spawn_time": "04:30" + }, + { + "id": 64, + "num": "064", + "name": "Kadabra", + "img": "http://www.serebii.net/pokemongo/pokemon/064.png", + "height": "1.30 m", + "weight": "56.5 kg", + "candy": "Abra Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 2.7, + "spawn_time": "11:25" + }, + { + "id": 65, + "num": "065", + "name": "Alakazam", + "img": "http://www.serebii.net/pokemongo/pokemon/065.png", + "height": "1.50 m", + "weight": "48.0 kg", + "candy": "Abra Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.73, + "spawn_time": "12:33" + }, + { + "id": 66, + "num": "066", + "name": "Machop", + "img": "http://www.serebii.net/pokemongo/pokemon/066.png", + "height": "0.79 m", + "weight": "19.5 kg", + "candy": "Machop Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 49, + "spawn_time": "01:55" + }, + { + "id": 67, + "num": "067", + "name": "Machoke", + "img": "http://www.serebii.net/pokemongo/pokemon/067.png", + "height": "1.50 m", + "weight": "70.5 kg", + "candy": "Machop Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 3.4, + "spawn_time": "10:32" + }, + { + "id": 68, + "num": "068", + "name": "Machamp", + "img": "http://www.serebii.net/pokemongo/pokemon/068.png", + "height": "1.60 m", + "weight": "130.0 kg", + "candy": "Machop Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.68, + "spawn_time": "02:55" + }, + { + "id": 69, + "num": "069", + "name": "Bellsprout", + "img": "http://www.serebii.net/pokemongo/pokemon/069.png", + "height": "0.71 m", + "weight": "4.0 kg", + "candy": "Bellsprout Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 115, + "spawn_time": "04:10" + }, + { + "id": 70, + "num": "070", + "name": "Weepinbell", + "img": "http://www.serebii.net/pokemongo/pokemon/070.png", + "height": "0.99 m", + "weight": "6.4 kg", + "candy": "Bellsprout Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 7.2, + "spawn_time": "09:45" + }, + { + "id": 71, + "num": "071", + "name": "Victreebel", + "img": "http://www.serebii.net/pokemongo/pokemon/071.png", + "height": "1.70 m", + "weight": "15.5 kg", + "candy": "Bellsprout Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.59, + "spawn_time": "12:19" + }, + { + "id": 72, + "num": "072", + "name": "Tentacool", + "img": "http://www.serebii.net/pokemongo/pokemon/072.png", + "height": "0.89 m", + "weight": "45.5 kg", + "candy": "Tentacool Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 81, + "spawn_time": "03:20" + }, + { + "id": 73, + "num": "073", + "name": "Tentacruel", + "img": "http://www.serebii.net/pokemongo/pokemon/073.png", + "height": "1.60 m", + "weight": "55.0 kg", + "candy": "Tentacool Candy", + "egg": "Not in Eggs", + "avg_spawns": 8.2, + "spawn_time": "23:36" + }, + { + "id": 74, + "num": "074", + "name": "Geodude", + "img": "http://www.serebii.net/pokemongo/pokemon/074.png", + "height": "0.41 m", + "weight": "20.0 kg", + "candy": "Geodude Candy", + "candy_count": 25, + "egg": "2 km", + "avg_spawns": 119, + "spawn_time": "12:40" + }, + { + "id": 75, + "num": "075", + "name": "Graveler", + "img": "http://www.serebii.net/pokemongo/pokemon/075.png", + "height": "0.99 m", + "weight": "105.0 kg", + "candy": "Geodude Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 7.1, + "spawn_time": "04:53" + }, + { + "id": 76, + "num": "076", + "name": "Golem", + "img": "http://www.serebii.net/pokemongo/pokemon/076.png", + "height": "1.40 m", + "weight": "300.0 kg", + "candy": "Geodude Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.47, + "spawn_time": "12:16" + }, + { + "id": 77, + "num": "077", + "name": "Ponyta", + "img": "http://www.serebii.net/pokemongo/pokemon/077.png", + "height": "0.99 m", + "weight": "30.0 kg", + "candy": "Ponyta Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 51, + "spawn_time": "02:50" + }, + { + "id": 78, + "num": "078", + "name": "Rapidash", + "img": "http://www.serebii.net/pokemongo/pokemon/078.png", + "height": "1.70 m", + "weight": "95.0 kg", + "candy": "Ponyta Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.1, + "spawn_time": "04:00" + }, + { + "id": 79, + "num": "079", + "name": "Slowpoke", + "img": "http://www.serebii.net/pokemongo/pokemon/079.png", + "height": "1.19 m", + "weight": "36.0 kg", + "candy": "Slowpoke Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 105, + "spawn_time": "07:12" + }, + { + "id": 80, + "num": "080", + "name": "Slowbro", + "img": "http://www.serebii.net/pokemongo/pokemon/080.png", + "height": "1.60 m", + "weight": "78.5 kg", + "candy": "Slowpoke Candy", + "egg": "Not in Eggs", + "avg_spawns": 3.6, + "spawn_time": "02:56" + }, + { + "id": 81, + "num": "081", + "name": "Magnemite", + "img": "http://www.serebii.net/pokemongo/pokemon/081.png", + "height": "0.30 m", + "weight": "6.0 kg", + "candy": "Magnemite Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 71, + "spawn_time": "04:04" + }, + { + "id": 82, + "num": "082", + "name": "Magneton", + "img": "http://www.serebii.net/pokemongo/pokemon/082.png", + "height": "0.99 m", + "weight": "60.0 kg", + "candy": "Magnemite Candy", + "egg": "Not in Eggs", + "avg_spawns": 2.3, + "spawn_time": "15:25" + }, + { + "id": 83, + "num": "083", + "name": "Farfetch'd", + "img": "http://www.serebii.net/pokemongo/pokemon/083.png", + "height": "0.79 m", + "weight": "15.0 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 2.12, + "spawn_time": "01:09" + }, + { + "id": 84, + "num": "084", + "name": "Doduo", + "img": "http://www.serebii.net/pokemongo/pokemon/084.png", + "height": "1.40 m", + "weight": "39.2 kg", + "candy": "Doduo Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 52, + "spawn_time": "05:10" + }, + { + "id": 85, + "num": "085", + "name": "Dodrio", + "img": "http://www.serebii.net/pokemongo/pokemon/085.png", + "height": "1.80 m", + "weight": "85.2 kg", + "candy": "Doduo Candy", + "egg": "Not in Eggs", + "avg_spawns": 22, + "spawn_time": "02:12" + }, + { + "id": 86, + "num": "086", + "name": "Seel", + "img": "http://www.serebii.net/pokemongo/pokemon/086.png", + "height": "1.09 m", + "weight": "90.0 kg", + "candy": "Seel Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 28, + "spawn_time": "06:46" + }, + { + "id": 87, + "num": "087", + "name": "Dewgong", + "img": "http://www.serebii.net/pokemongo/pokemon/087.png", + "height": "1.70 m", + "weight": "120.0 kg", + "candy": "Seel Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.3, + "spawn_time": "06:04" + }, + { + "id": 88, + "num": "088", + "name": "Grimer", + "img": "http://www.serebii.net/pokemongo/pokemon/088.png", + "height": "0.89 m", + "weight": "30.0 kg", + "candy": "Grimer Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 5.2, + "spawn_time": "15:11" + }, + { + "id": 89, + "num": "089", + "name": "Muk", + "img": "http://www.serebii.net/pokemongo/pokemon/089.png", + "height": "1.19 m", + "weight": "30.0 kg", + "candy": "Grimer Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.31, + "spawn_time": "01:28" + }, + { + "id": 90, + "num": "090", + "name": "Shellder", + "img": "http://www.serebii.net/pokemongo/pokemon/090.png", + "height": "0.30 m", + "weight": "4.0 kg", + "candy": "Shellder Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 52, + "spawn_time": "07:39" + }, + { + "id": 91, + "num": "091", + "name": "Cloyster", + "img": "http://www.serebii.net/pokemongo/pokemon/091.png", + "height": "1.50 m", + "weight": "132.5 kg", + "candy": "Shellder Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.5, + "spawn_time": "02:33" + }, + { + "id": 92, + "num": "092", + "name": "Gastly", + "img": "http://www.serebii.net/pokemongo/pokemon/092.png", + "height": "1.30 m", + "weight": "0.1 kg", + "candy": "Gastly Candy", + "candy_count": 25, + "egg": "5 km", + "avg_spawns": 79, + "spawn_time": "04:21" + }, + { + "id": 93, + "num": "093", + "name": "Haunter", + "img": "http://www.serebii.net/pokemongo/pokemon/093.png", + "height": "1.60 m", + "weight": "0.1 kg", + "candy": "Gastly Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 5.2, + "spawn_time": "00:10" + }, + { + "id": 94, + "num": "094", + "name": "Gengar", + "img": "http://www.serebii.net/pokemongo/pokemon/094.png", + "height": "1.50 m", + "weight": "40.5 kg", + "candy": "Gastly Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.67, + "spawn_time": "03:55" + }, + { + "id": 95, + "num": "095", + "name": "Onix", + "img": "http://www.serebii.net/pokemongo/pokemon/095.png", + "height": "8.79 m", + "weight": "210.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 10, + "spawn_time": "01:18" + }, + { + "id": 96, + "num": "096", + "name": "Drowzee", + "img": "http://www.serebii.net/pokemongo/pokemon/096.png", + "height": "0.99 m", + "weight": "32.4 kg", + "candy": "Drowzee Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 321, + "spawn_time": "01:51" + }, + { + "id": 97, + "num": "097", + "name": "Hypno", + "img": "http://www.serebii.net/pokemongo/pokemon/097.png", + "height": "1.60 m", + "weight": "75.6 kg", + "candy": "Drowzee Candy", + "egg": "Not in Eggs", + "avg_spawns": 10, + "spawn_time": "02:17" + }, + { + "id": 98, + "num": "098", + "name": "Krabby", + "img": "http://www.serebii.net/pokemongo/pokemon/098.png", + "height": "0.41 m", + "weight": "6.5 kg", + "candy": "Krabby Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 212, + "spawn_time": "03:33" + }, + { + "id": 99, + "num": "099", + "name": "Kingler", + "img": "http://www.serebii.net/pokemongo/pokemon/099.png", + "height": "1.30 m", + "weight": "60.0 kg", + "candy": "Krabby Candy", + "egg": "Not in Eggs", + "avg_spawns": 6.2, + "spawn_time": "03:44" + }, + { + "id": 100, + "num": "100", + "name": "Voltorb", + "img": "http://www.serebii.net/pokemongo/pokemon/100.png", + "height": "0.51 m", + "weight": "10.4 kg", + "candy": "Voltorb Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 65, + "spawn_time": "04:36" + }, + { + "id": 101, + "num": "101", + "name": "Electrode", + "img": "http://www.serebii.net/pokemongo/pokemon/101.png", + "height": "1.19 m", + "weight": "66.6 kg", + "candy": "Voltorb Candy", + "egg": "Not in Eggs", + "avg_spawns": 2, + "spawn_time": "04:10" + }, + { + "id": 102, + "num": "102", + "name": "Exeggcute", + "img": "http://www.serebii.net/pokemongo/pokemon/102.png", + "height": "0.41 m", + "weight": "2.5 kg", + "candy": "Exeggcute Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 78, + "spawn_time": "09:09" + }, + { + "id": 103, + "num": "103", + "name": "Exeggutor", + "img": "http://www.serebii.net/pokemongo/pokemon/103.png", + "height": "2.01 m", + "weight": "120.0 kg", + "candy": "Exeggcute Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.4, + "spawn_time": "12:34" + }, + { + "id": 104, + "num": "104", + "name": "Cubone", + "img": "http://www.serebii.net/pokemongo/pokemon/104.png", + "height": "0.41 m", + "weight": "6.5 kg", + "candy": "Cubone Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 61, + "spawn_time": "01:51" + }, + { + "id": 105, + "num": "105", + "name": "Marowak", + "img": "http://www.serebii.net/pokemongo/pokemon/105.png", + "height": "0.99 m", + "weight": "45.0 kg", + "candy": "Cubone Candy", + "egg": "Not in Eggs", + "avg_spawns": 2, + "spawn_time": "03:59" + }, + { + "id": 106, + "num": "106", + "name": "Hitmonlee", + "img": "http://www.serebii.net/pokemongo/pokemon/106.png", + "height": "1.50 m", + "weight": "49.8 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 2, + "spawn_time": "03:59" + }, + { + "id": 107, + "num": "107", + "name": "Hitmonchan", + "img": "http://www.serebii.net/pokemongo/pokemon/107.png", + "height": "1.40 m", + "weight": "50.2 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 2.2, + "spawn_time": "05:58" + }, + { + "id": 108, + "num": "108", + "name": "Lickitung", + "img": "http://www.serebii.net/pokemongo/pokemon/108.png", + "height": "1.19 m", + "weight": "65.5 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 1.1, + "spawn_time": "02:46" + }, + { + "id": 109, + "num": "109", + "name": "Koffing", + "img": "http://www.serebii.net/pokemongo/pokemon/109.png", + "height": "0.61 m", + "weight": "1.0 kg", + "candy": "Koffing Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 20, + "spawn_time": "08:16" + }, + { + "id": 110, + "num": "110", + "name": "Weezing", + "img": "http://www.serebii.net/pokemongo/pokemon/110.png", + "height": "1.19 m", + "weight": "9.5 kg", + "candy": "Koffing Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.6, + "spawn_time": "12:17" + }, + { + "id": 111, + "num": "111", + "name": "Rhyhorn", + "img": "http://www.serebii.net/pokemongo/pokemon/111.png", + "height": "0.99 m", + "weight": "115.0 kg", + "candy": "Rhyhorn Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 63, + "spawn_time": "03:21" + }, + { + "id": 112, + "num": "112", + "name": "Rhydon", + "img": "http://www.serebii.net/pokemongo/pokemon/112.png", + "height": "1.91 m", + "weight": "120.0 kg", + "candy": "Rhyhorn Candy", + "egg": "Not in Eggs", + "avg_spawns": 2.2, + "spawn_time": "05:50" + }, + { + "id": 113, + "num": "113", + "name": "Chansey", + "img": "http://www.serebii.net/pokemongo/pokemon/113.png", + "height": "1.09 m", + "weight": "34.6 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 1.3, + "spawn_time": "04:46" + }, + { + "id": 114, + "num": "114", + "name": "Tangela", + "img": "http://www.serebii.net/pokemongo/pokemon/114.png", + "height": "0.99 m", + "weight": "35.0 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 22.8, + "spawn_time": "23:13" + }, + { + "id": 115, + "num": "115", + "name": "Kangaskhan", + "img": "http://www.serebii.net/pokemongo/pokemon/115.png", + "height": "2.21 m", + "weight": "80.0 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 0.86, + "spawn_time": "02:40" + }, + { + "id": 116, + "num": "116", + "name": "Horsea", + "img": "http://www.serebii.net/pokemongo/pokemon/116.png", + "height": "0.41 m", + "weight": "8.0 kg", + "candy": "Horsea Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 113, + "spawn_time": "02:53" + }, + { + "id": 117, + "num": "117", + "name": "Seadra", + "img": "http://www.serebii.net/pokemongo/pokemon/117.png", + "height": "1.19 m", + "weight": "25.0 kg", + "candy": "Horsea Candy", + "egg": "Not in Eggs", + "avg_spawns": 3.4, + "spawn_time": "03:18" + }, + { + "id": 118, + "num": "118", + "name": "Goldeen", + "img": "http://www.serebii.net/pokemongo/pokemon/118.png", + "height": "0.61 m", + "weight": "15.0 kg", + "candy": "Goldeen Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 218, + "spawn_time": "03:14" + }, + { + "id": 119, + "num": "119", + "name": "Seaking", + "img": "http://www.serebii.net/pokemongo/pokemon/119.png", + "height": "1.30 m", + "weight": "39.0 kg", + "candy": "Goldeen Candy", + "egg": "Not in Eggs", + "avg_spawns": 8, + "spawn_time": "05:21" + }, + { + "id": 120, + "num": "120", + "name": "Staryu", + "img": "http://www.serebii.net/pokemongo/pokemon/120.png", + "height": "0.79 m", + "weight": "34.5 kg", + "candy": "Staryu Candy", + "candy_count": 50, + "egg": "5 km", + "avg_spawns": 195, + "spawn_time": "22:59" + }, + { + "id": 121, + "num": "121", + "name": "Starmie", + "img": "http://www.serebii.net/pokemongo/pokemon/121.png", + "height": "1.09 m", + "weight": "80.0 kg", + "candy": "Staryu Candy", + "egg": "Not in Eggs", + "avg_spawns": 3.4, + "spawn_time": "06:57" + }, + { + "id": 122, + "num": "122", + "name": "Mr. Mime", + "img": "http://www.serebii.net/pokemongo/pokemon/122.png", + "height": "1.30 m", + "weight": "54.5 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 0.31, + "spawn_time": "01:51" + }, + { + "id": 123, + "num": "123", + "name": "Scyther", + "img": "http://www.serebii.net/pokemongo/pokemon/123.png", + "height": "1.50 m", + "weight": "56.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 14, + "spawn_time": "05:43" + }, + { + "id": 124, + "num": "124", + "name": "Jynx", + "img": "http://www.serebii.net/pokemongo/pokemon/124.png", + "height": "1.40 m", + "weight": "40.6 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 35, + "spawn_time": "05:41" + }, + { + "id": 125, + "num": "125", + "name": "Electabuzz", + "img": "http://www.serebii.net/pokemongo/pokemon/125.png", + "height": "1.09 m", + "weight": "30.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 7.4, + "spawn_time": "04:28" + }, + { + "id": 126, + "num": "126", + "name": "Magmar", + "img": "http://www.serebii.net/pokemongo/pokemon/126.png", + "height": "1.30 m", + "weight": "44.5 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 10, + "spawn_time": "20:36" + }, + { + "id": 127, + "num": "127", + "name": "Pinsir", + "img": "http://www.serebii.net/pokemongo/pokemon/127.png", + "height": "1.50 m", + "weight": "55.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 99, + "spawn_time": "03:25" + }, + { + "id": 128, + "num": "128", + "name": "Tauros", + "img": "http://www.serebii.net/pokemongo/pokemon/128.png", + "height": "1.40 m", + "weight": "88.4 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 12, + "spawn_time": "00:37" + }, + { + "id": 129, + "num": "129", + "name": "Magikarp", + "img": "http://www.serebii.net/pokemongo/pokemon/129.png", + "height": "0.89 m", + "weight": "10.0 kg", + "candy": "Magikarp Candy", + "candy_count": 400, + "egg": "2 km", + "avg_spawns": 478, + "spawn_time": "14:26" + }, + { + "id": 130, + "num": "130", + "name": "Gyarados", + "img": "http://www.serebii.net/pokemongo/pokemon/130.png", + "height": "6.50 m", + "weight": "235.0 kg", + "candy": "Magikarp Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.32, + "spawn_time": "02:15" + }, + { + "id": 131, + "num": "131", + "name": "Lapras", + "img": "http://www.serebii.net/pokemongo/pokemon/131.png", + "height": "2.49 m", + "weight": "220.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 0.6, + "spawn_time": "08:59" + }, + { + "id": 132, + "num": "132", + "name": "Ditto", + "img": "http://www.serebii.net/pokemongo/pokemon/132.png", + "height": "0.30 m", + "weight": "4.0 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + }, + { + "id": 133, + "num": "133", + "name": "Eevee", + "img": "http://www.serebii.net/pokemongo/pokemon/133.png", + "height": "0.30 m", + "weight": "6.5 kg", + "candy": "Eevee Candy", + "candy_count": 25, + "egg": "10 km", + "avg_spawns": 275, + "spawn_time": "05:32" + }, + { + "id": 134, + "num": "134", + "name": "Vaporeon", + "img": "http://www.serebii.net/pokemongo/pokemon/134.png", + "height": "0.99 m", + "weight": "29.0 kg", + "candy": "Eevee Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.4, + "spawn_time": "10:54" + }, + { + "id": 135, + "num": "135", + "name": "Jolteon", + "img": "http://www.serebii.net/pokemongo/pokemon/135.png", + "height": "0.79 m", + "weight": "24.5 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 1.2, + "spawn_time": "02:30" + }, + { + "id": 136, + "num": "136", + "name": "Flareon", + "img": "http://www.serebii.net/pokemongo/pokemon/136.png", + "height": "0.89 m", + "weight": "25.0 kg", + "candy": "Eevee Candy", + "egg": "Not in Eggs", + "avg_spawns": 1.7, + "spawn_time": "07:02" + }, + { + "id": 137, + "num": "137", + "name": "Porygon", + "img": "http://www.serebii.net/pokemongo/pokemon/137.png", + "height": "0.79 m", + "weight": "36.5 kg", + "candy": "None", + "egg": "5 km", + "avg_spawns": 1.2, + "spawn_time": "02:49" + }, + { + "id": 138, + "num": "138", + "name": "Omanyte", + "img": "http://www.serebii.net/pokemongo/pokemon/138.png", + "height": "0.41 m", + "weight": "7.5 kg", + "candy": "Omanyte Candy", + "candy_count": 50, + "egg": "10 km", + "avg_spawns": 14, + "spawn_time": "10:23" + }, + { + "id": 139, + "num": "139", + "name": "Omastar", + "img": "http://www.serebii.net/pokemongo/pokemon/139.png", + "height": "0.99 m", + "weight": "35.0 kg", + "candy": "None", + "egg": "Omanyte Candy", + "avg_spawns": 0.61, + "spawn_time": "05:04" + }, + { + "id": 140, + "num": "140", + "name": "Kabuto", + "img": "http://www.serebii.net/pokemongo/pokemon/140.png", + "height": "0.51 m", + "weight": "11.5 kg", + "candy": "Kabuto Candy", + "candy_count": 50, + "egg": "10 km", + "avg_spawns": 10, + "spawn_time": "00:05" + }, + { + "id": 141, + "num": "141", + "name": "Kabutops", + "img": "http://www.serebii.net/pokemongo/pokemon/141.png", + "height": "1.30 m", + "weight": "40.5 kg", + "candy": "Kabuto Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.32, + "spawn_time": "23:40" + }, + { + "id": 142, + "num": "142", + "name": "Aerodactyl", + "img": "http://www.serebii.net/pokemongo/pokemon/142.png", + "height": "1.80 m", + "weight": "59.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 1.8, + "spawn_time": "23:40" + }, + { + "id": 143, + "num": "143", + "name": "Snorlax", + "img": "http://www.serebii.net/pokemongo/pokemon/143.png", + "height": "2.11 m", + "weight": "460.0 kg", + "candy": "None", + "egg": "10 km", + "avg_spawns": 1.6, + "spawn_time": "23:40" + }, + { + "id": 144, + "num": "144", + "name": "Articuno", + "img": "http://www.serebii.net/pokemongo/pokemon/144.png", + "height": "1.70 m", + "weight": "55.4 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + }, + { + "id": 145, + "num": "145", + "name": "Zapdos", + "img": "http://www.serebii.net/pokemongo/pokemon/145.png", + "height": "1.60 m", + "weight": "52.6 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + }, + { + "id": 146, + "num": "146", + "name": "Moltres", + "img": "http://www.serebii.net/pokemongo/pokemon/146.png", + "height": "2.01 m", + "weight": "60.0 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + }, + { + "id": 147, + "num": "147", + "name": "Dratini", + "img": "http://www.serebii.net/pokemongo/pokemon/147.png", + "height": "1.80 m", + "weight": "3.3 kg", + "candy": "Dratini Candy", + "candy_count": 25, + "egg": "10 km", + "avg_spawns": 30, + "spawn_time": "06:41" + }, + { + "id": 148, + "num": "148", + "name": "Dragonair", + "img": "http://www.serebii.net/pokemongo/pokemon/148.png", + "height": "3.99 m", + "weight": "16.5 kg", + "candy": "Dratini Candy", + "candy_count": 100, + "egg": "Not in Eggs", + "avg_spawns": 2, + "spawn_time": "11:57" + }, + { + "id": 149, + "num": "149", + "name": "Dragonite", + "img": "http://www.serebii.net/pokemongo/pokemon/149.png", + "height": "2.21 m", + "weight": "210.0 kg", + "candy": "Dratini Candy", + "egg": "Not in Eggs", + "avg_spawns": 0.11, + "spawn_time": "23:38" + }, + { + "id": 150, + "num": "150", + "name": "Mewtwo", + "img": "http://www.serebii.net/pokemongo/pokemon/150.png", + "height": "2.01 m", + "weight": "122.0 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + }, + { + "id": 151, + "num": "151", + "name": "Mew", + "img": "http://www.serebii.net/pokemongo/pokemon/151.png", + "height": "0.41 m", + "weight": "4.0 kg", + "candy": "None", + "egg": "Not in Eggs", + "avg_spawns": 0, + "spawn_time": "N/A" + } + ] +} diff --git a/pokedex.json b/pokedex.json index d11c5ec..8eab08a 100644 --- a/pokedex.json +++ b/pokedex.json @@ -1,1886 +1 @@ -{ - "pokemon": [ - { - "id": 1, - "num": "001", - "name": "Bulbasaur", - "img": "http://www.serebii.net/pokemongo/pokemon/001.png", - "height": "0.71 m", - "weight": "6.9 kg", - "candy": "Bulbasaur Candy", - "candy_count": "25", - "egg": "2 km", - "avg_spawns": "69", - "spawn_time": "20:00" - }, - { - "id": 2, - "num": "002", - "name": "Ivysaur", - "img": "http://www.serebii.net/pokemongo/pokemon/002.png", - "height": "0.99 m", - "weight": "13.0 kg", - "candy": "Bulbasaur Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 4.2, - "spawn_time": "07:00" - }, - { - "id": 3, - "num": "003", - "name": "Venusaur", - "img": "http://www.serebii.net/pokemongo/pokemon/003.png", - "height": "2.01 m", - "weight": "100.0 kg", - "candy": "Bulbasaur Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.7, - "spawn_time": "11:30" - }, - { - "id": 4, - "num": "004", - "name": "Charmander", - "img": "http://www.serebii.net/pokemongo/pokemon/004.png", - "height": "0.61 m", - "weight": "8.5 kg", - "candy": "Charmander Candy", - "candy_count": 25, - "egg": "2 km", - "avg_spawns": 25.3, - "spawn_time": "08:45" - }, - { - "id": 5, - "num": "005", - "name": "Charmeleon", - "img": "http://www.serebii.net/pokemongo/pokemon/005.png", - "height": "1.09 m", - "weight": "19.0 kg", - "candy": "Charmander Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 1.2, - "spawn_time": "19:00" - }, - { - "id": 6, - "num": "006", - "name": "Charizard", - "img": "http://www.serebii.net/pokemongo/pokemon/006.png", - "height": "1.70 m", - "weight": "90.5 kg", - "candy": "Charmander Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.31, - "spawn_time": "13:34" - }, - { - "id": 7, - "num": "007", - "name": "Squirtle", - "img": "http://www.serebii.net/pokemongo/pokemon/007.png", - "height": "0.51 m", - "weight": "9.0 kg", - "candy": "Squirtle Candy", - "candy_count": 25, - "egg": "2 km", - "avg_spawns": 58, - "spawn_time": "04:25" - }, - { - "id": 8, - "num": "008", - "name": "Wartortle", - "img": "http://www.serebii.net/pokemongo/pokemon/008.png", - "height": "0.99 m", - "weight": "22.5 kg", - "candy": "Squirtle Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 3.4, - "spawn_time": "07:02" - }, - { - "id": 9, - "num": "009", - "name": "Blastoise", - "img": "http://www.serebii.net/pokemongo/pokemon/009.png", - "height": "1.60 m", - "weight": "85.5 kg", - "candy": "Squirtle Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.67, - "spawn_time": "00:06" - }, - { - "id": 10, - "num": "010", - "name": "Caterpie", - "img": "http://www.serebii.net/pokemongo/pokemon/010.png", - "height": "0.30 m", - "weight": "2.9 kg", - "candy": "Caterpie Candy", - "candy_count": 12, - "egg": "2 km", - "avg_spawns": 303.2, - "spawn_time": "16:35" - }, - { - "id": 11, - "num": "011", - "name": "Metapod", - "img": "http://www.serebii.net/pokemongo/pokemon/011.png", - "height": "0.71 m", - "weight": "9.9 kg", - "candy": "Caterpie Candy", - "candy_count": 50, - "egg": "Not in Eggs", - "avg_spawns": 18.7, - "spawn_time": "02:11" - }, - { - "id": 12, - "num": "012", - "name": "Butterfree", - "img": "http://www.serebii.net/pokemongo/pokemon/012.png", - "height": "1.09 m", - "weight": "32.0 kg", - "candy": "Caterpie Candy", - "egg": "Not in Eggs", - "avg_spawns": 2.2, - "spawn_time": "05:23" - }, - { - "id": 13, - "num": "013", - "name": "Weedle", - "img": "http://www.serebii.net/pokemongo/pokemon/013.png", - "height": "0.30 m", - "weight": "3.2 kg", - "candy": "Weedle Candy", - "candy_count": 12, - "egg": "2 km", - "avg_spawns": 712, - "spawn_time": "02:21" - }, - { - "id": 14, - "num": "014", - "name": "Kakuna", - "img": "http://www.serebii.net/pokemongo/pokemon/014.png", - "height": "0.61 m", - "weight": "10.0 kg", - "candy": "Weedle Candy", - "candy_count": 50, - "egg": "Not in Eggs", - "avg_spawns": 44, - "spawn_time": "02:30" - }, - { - "id": 15, - "num": "015", - "name": "Beedrill", - "img": "http://www.serebii.net/pokemongo/pokemon/015.png", - "height": "0.99 m", - "weight": "29.5 kg", - "candy": "Weedle Candy", - "egg": "Not in Eggs", - "avg_spawns": 5.1, - "spawn_time": "04:50" - }, - { - "id": 16, - "num": "016", - "name": "Pidgey", - "img": "http://www.serebii.net/pokemongo/pokemon/016.png", - "height": "0.30 m", - "weight": "1.8 kg", - "candy": "Pidgey Candy", - "candy_count": 12, - "egg": "2 km", - "avg_spawns": 1.598, - "spawn_time": "01:34" - }, - { - "id": 17, - "num": "017", - "name": "Pidgeotto", - "img": "http://www.serebii.net/pokemongo/pokemon/017.png", - "height": "1.09 m", - "weight": "30.0 kg", - "candy": "Pidgey Candy", - "candy_count": 50, - "egg": "Not in Eggs", - "avg_spawns": 102, - "spawn_time": "01:30" - }, - { - "id": 18, - "num": "018", - "name": "Pidgeot", - "img": "http://www.serebii.net/pokemongo/pokemon/018.png", - "height": "1.50 m", - "weight": "39.5 kg", - "candy": "Pidgey Candy", - "egg": "Not in Eggs", - "avg_spawns": 13, - "spawn_time": "01:50" - }, - { - "id": 19, - "num": "019", - "name": "Rattata", - "img": "http://www.serebii.net/pokemongo/pokemon/019.png", - "height": "0.30 m", - "weight": "3.5 kg", - "candy": "Rattata Candy", - "candy_count": 25, - "egg": "2 km", - "avg_spawns": 1.305, - "spawn_time": "01:55" - }, - { - "id": 20, - "num": "020", - "name": "Raticate", - "img": "http://www.serebii.net/pokemongo/pokemon/020.png", - "height": "0.71 m", - "weight": "18.5 kg", - "candy": "Rattata Candy", - "egg": "Not in Eggs", - "avg_spawns": 41, - "spawn_time": "01:56" - }, - { - "id": 21, - "num": "021", - "name": "Spearow", - "img": "http://www.serebii.net/pokemongo/pokemon/021.png", - "height": "0.30 m", - "weight": "2.0 kg", - "candy": "Spearow Candy", - "candy_count": 50, - "egg": "2 km", - "avg_spawns": 473, - "spawn_time": "12:25" - }, - { - "id": 22, - "num": "022", - "name": "Fearow", - "img": "http://www.serebii.net/pokemongo/pokemon/022.png", - "height": "1.19 m", - "weight": "38.0 kg", - "candy": "Spearow Candy", - "egg": "Not in Eggs", - "avg_spawns": 15, - "spawn_time": "01:11" - }, - { - "id": 23, - "num": "023", - "name": "Ekans", - "img": "http://www.serebii.net/pokemongo/pokemon/023.png", - "height": "2.01 m", - "weight": "6.9 kg", - "candy": "Ekans Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 227, - "spawn_time": "12:20" - }, - { - "id": 24, - "num": "024", - "name": "Arbok", - "img": "http://www.serebii.net/pokemongo/pokemon/024.png", - "height": "3.51 m", - "weight": "65.0 kg", - "candy": "Ekans Candy", - "egg": "Not in Eggs", - "avg_spawns": 7.2, - "spawn_time": "01:50" - }, - { - "id": 25, - "num": "025", - "name": "Pikachu", - "img": "http://www.serebii.net/pokemongo/pokemon/025.png", - "height": "0.41 m", - "weight": "6.0 kg", - "candy": "Pikachu Candy", - "candy_count": 50, - "egg": "2 km", - "avg_spawns": 21, - "spawn_time": "04:00" - }, - { - "id": 26, - "num": "026", - "name": "Raichu", - "img": "http://www.serebii.net/pokemongo/pokemon/026.png", - "height": "0.79 m", - "weight": "30.0 kg", - "candy": "Pikachu Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.76, - "spawn_time": "23:58" - }, - { - "id": 27, - "num": "027", - "name": "Sandshrew", - "img": "http://www.serebii.net/pokemongo/pokemon/027.png", - "height": "0.61 m", - "weight": "12.0 kg", - "candy": "Sandshrew Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 111, - "spawn_time": "01:58" - }, - { - "id": 28, - "num": "028", - "name": "Sandslash", - "img": "http://www.serebii.net/pokemongo/pokemon/028.png", - "height": "0.99 m", - "weight": "29.5 kg", - "candy": "Sandshrew Candy", - "egg": "Not in Eggs", - "avg_spawns": 3.7, - "spawn_time": "12:34" - }, - { - "id": 29, - "num": "029", - "name": "Nidoran ♀ (Female)", - "img": "http://www.serebii.net/pokemongo/pokemon/029.png", - "height": "0.41 m", - "weight": "7.0 kg", - "candy": "Nidoran ♀ (Female) Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 138, - "spawn_time": "01:51" - }, - { - "id": 30, - "num": "030", - "name": "Nidorina", - "img": "http://www.serebii.net/pokemongo/pokemon/030.png", - "height": "0.79 m", - "weight": "20.0 kg", - "candy": "Nidoran ♀ (Female) Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 8.8, - "spawn_time": "07:22" - }, - { - "id": 31, - "num": "031", - "name": "Nidoqueen", - "img": "http://www.serebii.net/pokemongo/pokemon/031.png", - "height": "1.30 m", - "weight": "60.0 kg", - "candy": "Nidoran ♀ (Female) Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.2, - "spawn_time": "12:35" - }, - { - "id": 32, - "num": "032", - "name": "Nidoran ♂ (Male)", - "img": "http://www.serebii.net/pokemongo/pokemon/032.png", - "height": "0.51 m", - "weight": "9.0 kg", - "candy": "Nidoran ♂ (Male) Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 131, - "spawn_time": "01:12" - }, - { - "id": 33, - "num": "033", - "name": "Nidorino", - "img": "http://www.serebii.net/pokemongo/pokemon/033.png", - "height": "0.89 m", - "weight": "19.5 kg", - "candy": "Nidoran ♂ (Male) Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 8.3, - "spawn_time": "09:02" - }, - { - "id": 34, - "num": "034", - "name": "Nidoking", - "img": "http://www.serebii.net/pokemongo/pokemon/034.png", - "height": "1.40 m", - "weight": "62.0 kg", - "candy": "Nidoran ♂ (Male) Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.7, - "spawn_time": "12:16" - }, - { - "id": 35, - "num": "035", - "name": "Clefairy", - "img": "http://www.serebii.net/pokemongo/pokemon/035.png", - "height": "0.61 m", - "weight": "7.5 kg", - "candy": "Clefairy Candy", - "candy_count": 50, - "egg": "2 km", - "avg_spawns": 92, - "spawn_time": "03:30" - }, - { - "id": 36, - "num": "036", - "name": "Clefable", - "img": "http://www.serebii.net/pokemongo/pokemon/036.png", - "height": "1.30 m", - "weight": "40.0 kg", - "candy": "Clefairy Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.2, - "spawn_time": "03:29" - }, - { - "id": 37, - "num": "037", - "name": "Vulpix", - "img": "http://www.serebii.net/pokemongo/pokemon/037.png", - "height": "0.61 m", - "weight": "9.9 kg", - "candy": "Vulpix Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 22, - "spawn_time": "13:43" - }, - { - "id": 38, - "num": "038", - "name": "Ninetales", - "img": "http://www.serebii.net/pokemongo/pokemon/038.png", - "height": "1.09 m", - "weight": "19.9 kg", - "candy": "Vulpix Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.77, - "spawn_time": "01:32" - }, - { - "id": 39, - "num": "039", - "name": "Jigglypuff", - "img": "http://www.serebii.net/pokemongo/pokemon/039.png", - "height": "0.51 m", - "weight": "5.5 kg", - "candy": "Jigglypuff Candy", - "candy_count": 50, - "egg": "2 km", - "avg_spawns": 39, - "spawn_time": "08:46" - }, - { - "id": 40, - "num": "040", - "name": "Wigglytuff", - "img": "http://www.serebii.net/pokemongo/pokemon/040.png", - "height": "0.99 m", - "weight": "12.0 kg", - "candy": "Jigglypuff Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.8, - "spawn_time": "12:28" - }, - { - "id": 41, - "num": "041", - "name": "Zubat", - "img": "http://www.serebii.net/pokemongo/pokemon/041.png", - "height": "0.79 m", - "weight": "7.5 kg", - "candy": "Zubat Candy", - "candy_count": 50, - "egg": "2 km", - "avg_spawns": 652, - "spawn_time": "12:28" - }, - { - "id": 42, - "num": "042", - "name": "Golbat", - "img": "http://www.serebii.net/pokemongo/pokemon/042.png", - "height": "1.60 m", - "weight": "55.0 kg", - "candy": "Zubat Candy", - "egg": "Not in Eggs", - "avg_spawns": 42, - "spawn_time": "02:15" - }, - { - "id": 43, - "num": "043", - "name": "Oddish", - "img": "http://www.serebii.net/pokemongo/pokemon/043.png", - "height": "0.51 m", - "weight": "5.4 kg", - "candy": "Oddish Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 102, - "spawn_time": "03:58" - }, - { - "id": 44, - "num": "044", - "name": "Gloom", - "img": "http://www.serebii.net/pokemongo/pokemon/044.png", - "height": "0.79 m", - "weight": "8.6 kg", - "candy": "Oddish Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 6.4, - "spawn_time": "11:33" - }, - { - "id": 45, - "num": "045", - "name": "Vileplume", - "img": "http://www.serebii.net/pokemongo/pokemon/045.png", - "height": "1.19 m", - "weight": "18.6 kg", - "candy": "Oddish Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.97, - "spawn_time": "23:58" - }, - { - "id": 46, - "num": "046", - "name": "Paras", - "img": "http://www.serebii.net/pokemongo/pokemon/046.png", - "height": "0.30 m", - "weight": "5.4 kg", - "candy": "Paras Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 236, - "spawn_time": "01:42" - }, - { - "id": 47, - "num": "047", - "name": "Parasect", - "img": "http://www.serebii.net/pokemongo/pokemon/047.png", - "height": "0.99 m", - "weight": "29.5 kg", - "candy": "Paras Candy", - "egg": "Not in Eggs", - "avg_spawns": 7.4, - "spawn_time": "01:22" - }, - { - "id": 48, - "num": "048", - "name": "Venonat", - "img": "http://www.serebii.net/pokemongo/pokemon/048.png", - "height": "0.99 m", - "weight": "30.0 kg", - "candy": "Venonat Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 228, - "spawn_time": "02:31" - }, - { - "id": 49, - "num": "049", - "name": "Venomoth", - "img": "http://www.serebii.net/pokemongo/pokemon/049.png", - "height": "1.50 m", - "weight": "12.5 kg", - "candy": "Venonat Candy", - "egg": "Not in Eggs", - "avg_spawns": 7.2, - "spawn_time": "23:40" - }, - { - "id": 50, - "num": "050", - "name": "Diglett", - "img": "http://www.serebii.net/pokemongo/pokemon/050.png", - "height": "0.20 m", - "weight": "0.8 kg", - "candy": "Diglett Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 40, - "spawn_time": "02:22" - }, - { - "id": 51, - "num": "051", - "name": "Dugtrio", - "img": "http://www.serebii.net/pokemongo/pokemon/051.png", - "height": "0.71 m", - "weight": "33.3 kg", - "candy": "Dugtrio", - "egg": "Not in Eggs", - "avg_spawns": 1.4, - "spawn_time": "12:37" - }, - { - "id": 52, - "num": "052", - "name": "Meowth", - "img": "http://www.serebii.net/pokemongo/pokemon/052.png", - "height": "0.41 m", - "weight": "4.2 kg", - "candy": "Meowth Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 86, - "spawn_time": "02:54" - }, - { - "id": 53, - "num": "053", - "name": "Persian", - "img": "http://www.serebii.net/pokemongo/pokemon/053.png", - "height": "0.99 m", - "weight": "32.0 kg", - "candy": "Meowth Candy", - "egg": "Not in Eggs", - "avg_spawns": 2.2, - "spawn_time": "02:44" - }, - { - "id": 54, - "num": "054", - "name": "Psyduck", - "img": "http://www.serebii.net/pokemongo/pokemon/054.png", - "height": "0.79 m", - "weight": "19.6 kg", - "candy": "Psyduck Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 254, - "spawn_time": "03:41" - }, - { - "id": 55, - "num": "055", - "name": "Golduck", - "img": "http://www.serebii.net/pokemongo/pokemon/055.png", - "height": "1.70 m", - "weight": "76.6 kg", - "candy": "Psyduck Candy", - "egg": "Not in Eggs", - "avg_spawns": 8.7, - "spawn_time": "23:06" - }, - { - "id": 56, - "num": "056", - "name": "Mankey", - "img": "http://www.serebii.net/pokemongo/pokemon/056.png", - "height": "0.51 m", - "weight": "28.0 kg", - "candy": "Mankey Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 92, - "spawn_time": "12:52" - }, - { - "id": 57, - "num": "057", - "name": "Primeape", - "img": "http://www.serebii.net/pokemongo/pokemon/057.png", - "height": "0.99 m", - "weight": "32.0 kg", - "candy": "Mankey Candy", - "egg": "Not in Eggs", - "avg_spawns": 3.1, - "spawn_time": "12:33" - }, - { - "id": 58, - "num": "058", - "name": "Growlithe", - "img": "http://www.serebii.net/pokemongo/pokemon/058.png", - "height": "0.71 m", - "weight": "19.0 kg", - "candy": "Growlithe Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 92, - "spawn_time": "03:57" - }, - { - "id": 59, - "num": "059", - "name": "Arcanine", - "img": "http://www.serebii.net/pokemongo/pokemon/059.png", - "height": "1.91 m", - "weight": "155.0 kg", - "candy": "Growlithe Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.7, - "spawn_time": "03:11" - }, - { - "id": 60, - "num": "060", - "name": "Poliwag", - "img": "http://www.serebii.net/pokemongo/pokemon/060.png", - "height": "0.61 m", - "weight": "12.4 kg", - "candy": "Poliwag Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 219, - "spawn_time": "03:40" - }, - { - "id": 61, - "num": "061", - "name": "Poliwhirl", - "img": "http://www.serebii.net/pokemongo/pokemon/061.png", - "height": "0.99 m", - "weight": "20.0 kg", - "candy": "Poliwag Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 13, - "spawn_time": "09:14" - }, - { - "id": 62, - "num": "062", - "name": "Poliwrath", - "img": "http://www.serebii.net/pokemongo/pokemon/062.png", - "height": "1.30 m", - "weight": "54.0 kg", - "candy": "Poliwag Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.1, - "spawn_time": "01:32" - }, - { - "id": 63, - "num": "063", - "name": "Abra", - "img": "http://www.serebii.net/pokemongo/pokemon/063.png", - "height": "0.89 m", - "weight": "19.5 kg", - "candy": "Abra Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 42, - "spawn_time": "04:30" - }, - { - "id": 64, - "num": "064", - "name": "Kadabra", - "img": "http://www.serebii.net/pokemongo/pokemon/064.png", - "height": "1.30 m", - "weight": "56.5 kg", - "candy": "Abra Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 2.7, - "spawn_time": "11:25" - }, - { - "id": 65, - "num": "065", - "name": "Alakazam", - "img": "http://www.serebii.net/pokemongo/pokemon/065.png", - "height": "1.50 m", - "weight": "48.0 kg", - "candy": "Abra Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.73, - "spawn_time": "12:33" - }, - { - "id": 66, - "num": "066", - "name": "Machop", - "img": "http://www.serebii.net/pokemongo/pokemon/066.png", - "height": "0.79 m", - "weight": "19.5 kg", - "candy": "Machop Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 49, - "spawn_time": "01:55" - }, - { - "id": 67, - "num": "067", - "name": "Machoke", - "img": "http://www.serebii.net/pokemongo/pokemon/067.png", - "height": "1.50 m", - "weight": "70.5 kg", - "candy": "Machop Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 3.4, - "spawn_time": "10:32" - }, - { - "id": 68, - "num": "068", - "name": "Machamp", - "img": "http://www.serebii.net/pokemongo/pokemon/068.png", - "height": "1.60 m", - "weight": "130.0 kg", - "candy": "Machop Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.68, - "spawn_time": "02:55" - }, - { - "id": 69, - "num": "069", - "name": "Bellsprout", - "img": "http://www.serebii.net/pokemongo/pokemon/069.png", - "height": "0.71 m", - "weight": "4.0 kg", - "candy": "Bellsprout Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 115, - "spawn_time": "04:10" - }, - { - "id": 70, - "num": "070", - "name": "Weepinbell", - "img": "http://www.serebii.net/pokemongo/pokemon/070.png", - "height": "0.99 m", - "weight": "6.4 kg", - "candy": "Bellsprout Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 7.2, - "spawn_time": "09:45" - }, - { - "id": 71, - "num": "071", - "name": "Victreebel", - "img": "http://www.serebii.net/pokemongo/pokemon/071.png", - "height": "1.70 m", - "weight": "15.5 kg", - "candy": "Bellsprout Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.59, - "spawn_time": "12:19" - }, - { - "id": 72, - "num": "072", - "name": "Tentacool", - "img": "http://www.serebii.net/pokemongo/pokemon/072.png", - "height": "0.89 m", - "weight": "45.5 kg", - "candy": "Tentacool Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 81, - "spawn_time": "03:20" - }, - { - "id": 73, - "num": "073", - "name": "Tentacruel", - "img": "http://www.serebii.net/pokemongo/pokemon/073.png", - "height": "1.60 m", - "weight": "55.0 kg", - "candy": "Tentacool Candy", - "egg": "Not in Eggs", - "avg_spawns": 8.2, - "spawn_time": "23:36" - }, - { - "id": 74, - "num": "074", - "name": "Geodude", - "img": "http://www.serebii.net/pokemongo/pokemon/074.png", - "height": "0.41 m", - "weight": "20.0 kg", - "candy": "Geodude Candy", - "candy_count": 25, - "egg": "2 km", - "avg_spawns": 119, - "spawn_time": "12:40" - }, - { - "id": 75, - "num": "075", - "name": "Graveler", - "img": "http://www.serebii.net/pokemongo/pokemon/075.png", - "height": "0.99 m", - "weight": "105.0 kg", - "candy": "Geodude Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 7.1, - "spawn_time": "04:53" - }, - { - "id": 76, - "num": "076", - "name": "Golem", - "img": "http://www.serebii.net/pokemongo/pokemon/076.png", - "height": "1.40 m", - "weight": "300.0 kg", - "candy": "Geodude Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.47, - "spawn_time": "12:16" - }, - { - "id": 77, - "num": "077", - "name": "Ponyta", - "img": "http://www.serebii.net/pokemongo/pokemon/077.png", - "height": "0.99 m", - "weight": "30.0 kg", - "candy": "Ponyta Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 51, - "spawn_time": "02:50" - }, - { - "id": 78, - "num": "078", - "name": "Rapidash", - "img": "http://www.serebii.net/pokemongo/pokemon/078.png", - "height": "1.70 m", - "weight": "95.0 kg", - "candy": "Ponyta Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.1, - "spawn_time": "04:00" - }, - { - "id": 79, - "num": "079", - "name": "Slowpoke", - "img": "http://www.serebii.net/pokemongo/pokemon/079.png", - "height": "1.19 m", - "weight": "36.0 kg", - "candy": "Slowpoke Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 105, - "spawn_time": "07:12" - }, - { - "id": 80, - "num": "080", - "name": "Slowbro", - "img": "http://www.serebii.net/pokemongo/pokemon/080.png", - "height": "1.60 m", - "weight": "78.5 kg", - "candy": "Slowpoke Candy", - "egg": "Not in Eggs", - "avg_spawns": 3.6, - "spawn_time": "02:56" - }, - { - "id": 81, - "num": "081", - "name": "Magnemite", - "img": "http://www.serebii.net/pokemongo/pokemon/081.png", - "height": "0.30 m", - "weight": "6.0 kg", - "candy": "Magnemite Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 71, - "spawn_time": "04:04" - }, - { - "id": 82, - "num": "082", - "name": "Magneton", - "img": "http://www.serebii.net/pokemongo/pokemon/082.png", - "height": "0.99 m", - "weight": "60.0 kg", - "candy": "Magnemite Candy", - "egg": "Not in Eggs", - "avg_spawns": 2.3, - "spawn_time": "15:25" - }, - { - "id": 83, - "num": "083", - "name": "Farfetch'd", - "img": "http://www.serebii.net/pokemongo/pokemon/083.png", - "height": "0.79 m", - "weight": "15.0 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 2.12, - "spawn_time": "01:09" - }, - { - "id": 84, - "num": "084", - "name": "Doduo", - "img": "http://www.serebii.net/pokemongo/pokemon/084.png", - "height": "1.40 m", - "weight": "39.2 kg", - "candy": "Doduo Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 52, - "spawn_time": "05:10" - }, - { - "id": 85, - "num": "085", - "name": "Dodrio", - "img": "http://www.serebii.net/pokemongo/pokemon/085.png", - "height": "1.80 m", - "weight": "85.2 kg", - "candy": "Doduo Candy", - "egg": "Not in Eggs", - "avg_spawns": 22, - "spawn_time": "02:12" - }, - { - "id": 86, - "num": "086", - "name": "Seel", - "img": "http://www.serebii.net/pokemongo/pokemon/086.png", - "height": "1.09 m", - "weight": "90.0 kg", - "candy": "Seel Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 28, - "spawn_time": "06:46" - }, - { - "id": 87, - "num": "087", - "name": "Dewgong", - "img": "http://www.serebii.net/pokemongo/pokemon/087.png", - "height": "1.70 m", - "weight": "120.0 kg", - "candy": "Seel Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.3, - "spawn_time": "06:04" - }, - { - "id": 88, - "num": "088", - "name": "Grimer", - "img": "http://www.serebii.net/pokemongo/pokemon/088.png", - "height": "0.89 m", - "weight": "30.0 kg", - "candy": "Grimer Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 5.2, - "spawn_time": "15:11" - }, - { - "id": 89, - "num": "089", - "name": "Muk", - "img": "http://www.serebii.net/pokemongo/pokemon/089.png", - "height": "1.19 m", - "weight": "30.0 kg", - "candy": "Grimer Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.31, - "spawn_time": "01:28" - }, - { - "id": 90, - "num": "090", - "name": "Shellder", - "img": "http://www.serebii.net/pokemongo/pokemon/090.png", - "height": "0.30 m", - "weight": "4.0 kg", - "candy": "Shellder Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 52, - "spawn_time": "07:39" - }, - { - "id": 91, - "num": "091", - "name": "Cloyster", - "img": "http://www.serebii.net/pokemongo/pokemon/091.png", - "height": "1.50 m", - "weight": "132.5 kg", - "candy": "Shellder Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.5, - "spawn_time": "02:33" - }, - { - "id": 92, - "num": "092", - "name": "Gastly", - "img": "http://www.serebii.net/pokemongo/pokemon/092.png", - "height": "1.30 m", - "weight": "0.1 kg", - "candy": "Gastly Candy", - "candy_count": 25, - "egg": "5 km", - "avg_spawns": 79, - "spawn_time": "04:21" - }, - { - "id": 93, - "num": "093", - "name": "Haunter", - "img": "http://www.serebii.net/pokemongo/pokemon/093.png", - "height": "1.60 m", - "weight": "0.1 kg", - "candy": "Gastly Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 5.2, - "spawn_time": "00:10" - }, - { - "id": 94, - "num": "094", - "name": "Gengar", - "img": "http://www.serebii.net/pokemongo/pokemon/094.png", - "height": "1.50 m", - "weight": "40.5 kg", - "candy": "Gastly Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.67, - "spawn_time": "03:55" - }, - { - "id": 95, - "num": "095", - "name": "Onix", - "img": "http://www.serebii.net/pokemongo/pokemon/095.png", - "height": "8.79 m", - "weight": "210.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 10, - "spawn_time": "01:18" - }, - { - "id": 96, - "num": "096", - "name": "Drowzee", - "img": "http://www.serebii.net/pokemongo/pokemon/096.png", - "height": "0.99 m", - "weight": "32.4 kg", - "candy": "Drowzee Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 321, - "spawn_time": "01:51" - }, - { - "id": 97, - "num": "097", - "name": "Hypno", - "img": "http://www.serebii.net/pokemongo/pokemon/097.png", - "height": "1.60 m", - "weight": "75.6 kg", - "candy": "Drowzee Candy", - "egg": "Not in Eggs", - "avg_spawns": 10, - "spawn_time": "02:17" - }, - { - "id": 98, - "num": "098", - "name": "Krabby", - "img": "http://www.serebii.net/pokemongo/pokemon/098.png", - "height": "0.41 m", - "weight": "6.5 kg", - "candy": "Krabby Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 212, - "spawn_time": "03:33" - }, - { - "id": 99, - "num": "099", - "name": "Kingler", - "img": "http://www.serebii.net/pokemongo/pokemon/099.png", - "height": "1.30 m", - "weight": "60.0 kg", - "candy": "Krabby Candy", - "egg": "Not in Eggs", - "avg_spawns": 6.2, - "spawn_time": "03:44" - }, - { - "id": 100, - "num": "100", - "name": "Voltorb", - "img": "http://www.serebii.net/pokemongo/pokemon/100.png", - "height": "0.51 m", - "weight": "10.4 kg", - "candy": "Voltorb Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 65, - "spawn_time": "04:36" - }, - { - "id": 101, - "num": "101", - "name": "Electrode", - "img": "http://www.serebii.net/pokemongo/pokemon/101.png", - "height": "1.19 m", - "weight": "66.6 kg", - "candy": "Voltorb Candy", - "egg": "Not in Eggs", - "avg_spawns": 2, - "spawn_time": "04:10" - }, - { - "id": 102, - "num": "102", - "name": "Exeggcute", - "img": "http://www.serebii.net/pokemongo/pokemon/102.png", - "height": "0.41 m", - "weight": "2.5 kg", - "candy": "Exeggcute Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 78, - "spawn_time": "09:09" - }, - { - "id": 103, - "num": "103", - "name": "Exeggutor", - "img": "http://www.serebii.net/pokemongo/pokemon/103.png", - "height": "2.01 m", - "weight": "120.0 kg", - "candy": "Exeggcute Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.4, - "spawn_time": "12:34" - }, - { - "id": 104, - "num": "104", - "name": "Cubone", - "img": "http://www.serebii.net/pokemongo/pokemon/104.png", - "height": "0.41 m", - "weight": "6.5 kg", - "candy": "Cubone Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 61, - "spawn_time": "01:51" - }, - { - "id": 105, - "num": "105", - "name": "Marowak", - "img": "http://www.serebii.net/pokemongo/pokemon/105.png", - "height": "0.99 m", - "weight": "45.0 kg", - "candy": "Cubone Candy", - "egg": "Not in Eggs", - "avg_spawns": 2, - "spawn_time": "03:59" - }, - { - "id": 106, - "num": "106", - "name": "Hitmonlee", - "img": "http://www.serebii.net/pokemongo/pokemon/106.png", - "height": "1.50 m", - "weight": "49.8 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 2, - "spawn_time": "03:59" - }, - { - "id": 107, - "num": "107", - "name": "Hitmonchan", - "img": "http://www.serebii.net/pokemongo/pokemon/107.png", - "height": "1.40 m", - "weight": "50.2 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 2.2, - "spawn_time": "05:58" - }, - { - "id": 108, - "num": "108", - "name": "Lickitung", - "img": "http://www.serebii.net/pokemongo/pokemon/108.png", - "height": "1.19 m", - "weight": "65.5 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 1.1, - "spawn_time": "02:46" - }, - { - "id": 109, - "num": "109", - "name": "Koffing", - "img": "http://www.serebii.net/pokemongo/pokemon/109.png", - "height": "0.61 m", - "weight": "1.0 kg", - "candy": "Koffing Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 20, - "spawn_time": "08:16" - }, - { - "id": 110, - "num": "110", - "name": "Weezing", - "img": "http://www.serebii.net/pokemongo/pokemon/110.png", - "height": "1.19 m", - "weight": "9.5 kg", - "candy": "Koffing Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.6, - "spawn_time": "12:17" - }, - { - "id": 111, - "num": "111", - "name": "Rhyhorn", - "img": "http://www.serebii.net/pokemongo/pokemon/111.png", - "height": "0.99 m", - "weight": "115.0 kg", - "candy": "Rhyhorn Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 63, - "spawn_time": "03:21" - }, - { - "id": 112, - "num": "112", - "name": "Rhydon", - "img": "http://www.serebii.net/pokemongo/pokemon/112.png", - "height": "1.91 m", - "weight": "120.0 kg", - "candy": "Rhyhorn Candy", - "egg": "Not in Eggs", - "avg_spawns": 2.2, - "spawn_time": "05:50" - }, - { - "id": 113, - "num": "113", - "name": "Chansey", - "img": "http://www.serebii.net/pokemongo/pokemon/113.png", - "height": "1.09 m", - "weight": "34.6 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 1.3, - "spawn_time": "04:46" - }, - { - "id": 114, - "num": "114", - "name": "Tangela", - "img": "http://www.serebii.net/pokemongo/pokemon/114.png", - "height": "0.99 m", - "weight": "35.0 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 22.8, - "spawn_time": "23:13" - }, - { - "id": 115, - "num": "115", - "name": "Kangaskhan", - "img": "http://www.serebii.net/pokemongo/pokemon/115.png", - "height": "2.21 m", - "weight": "80.0 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 0.86, - "spawn_time": "02:40" - }, - { - "id": 116, - "num": "116", - "name": "Horsea", - "img": "http://www.serebii.net/pokemongo/pokemon/116.png", - "height": "0.41 m", - "weight": "8.0 kg", - "candy": "Horsea Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 113, - "spawn_time": "02:53" - }, - { - "id": 117, - "num": "117", - "name": "Seadra", - "img": "http://www.serebii.net/pokemongo/pokemon/117.png", - "height": "1.19 m", - "weight": "25.0 kg", - "candy": "Horsea Candy", - "egg": "Not in Eggs", - "avg_spawns": 3.4, - "spawn_time": "03:18" - }, - { - "id": 118, - "num": "118", - "name": "Goldeen", - "img": "http://www.serebii.net/pokemongo/pokemon/118.png", - "height": "0.61 m", - "weight": "15.0 kg", - "candy": "Goldeen Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 218, - "spawn_time": "03:14" - }, - { - "id": 119, - "num": "119", - "name": "Seaking", - "img": "http://www.serebii.net/pokemongo/pokemon/119.png", - "height": "1.30 m", - "weight": "39.0 kg", - "candy": "Goldeen Candy", - "egg": "Not in Eggs", - "avg_spawns": 8, - "spawn_time": "05:21" - }, - { - "id": 120, - "num": "120", - "name": "Staryu", - "img": "http://www.serebii.net/pokemongo/pokemon/120.png", - "height": "0.79 m", - "weight": "34.5 kg", - "candy": "Staryu Candy", - "candy_count": 50, - "egg": "5 km", - "avg_spawns": 195, - "spawn_time": "22:59" - }, - { - "id": 121, - "num": "121", - "name": "Starmie", - "img": "http://www.serebii.net/pokemongo/pokemon/121.png", - "height": "1.09 m", - "weight": "80.0 kg", - "candy": "Staryu Candy", - "egg": "Not in Eggs", - "avg_spawns": 3.4, - "spawn_time": "06:57" - }, - { - "id": 122, - "num": "122", - "name": "Mr. Mime", - "img": "http://www.serebii.net/pokemongo/pokemon/122.png", - "height": "1.30 m", - "weight": "54.5 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 0.31, - "spawn_time": "01:51" - }, - { - "id": 123, - "num": "123", - "name": "Scyther", - "img": "http://www.serebii.net/pokemongo/pokemon/123.png", - "height": "1.50 m", - "weight": "56.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 14, - "spawn_time": "05:43" - }, - { - "id": 124, - "num": "124", - "name": "Jynx", - "img": "http://www.serebii.net/pokemongo/pokemon/124.png", - "height": "1.40 m", - "weight": "40.6 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 35, - "spawn_time": "05:41" - }, - { - "id": 125, - "num": "125", - "name": "Electabuzz", - "img": "http://www.serebii.net/pokemongo/pokemon/125.png", - "height": "1.09 m", - "weight": "30.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 7.4, - "spawn_time": "04:28" - }, - { - "id": 126, - "num": "126", - "name": "Magmar", - "img": "http://www.serebii.net/pokemongo/pokemon/126.png", - "height": "1.30 m", - "weight": "44.5 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 10, - "spawn_time": "20:36" - }, - { - "id": 127, - "num": "127", - "name": "Pinsir", - "img": "http://www.serebii.net/pokemongo/pokemon/127.png", - "height": "1.50 m", - "weight": "55.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 99, - "spawn_time": "03:25" - }, - { - "id": 128, - "num": "128", - "name": "Tauros", - "img": "http://www.serebii.net/pokemongo/pokemon/128.png", - "height": "1.40 m", - "weight": "88.4 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 12, - "spawn_time": "00:37" - }, - { - "id": 129, - "num": "129", - "name": "Magikarp", - "img": "http://www.serebii.net/pokemongo/pokemon/129.png", - "height": "0.89 m", - "weight": "10.0 kg", - "candy": "Magikarp Candy", - "candy_count": 400, - "egg": "2 km", - "avg_spawns": 478, - "spawn_time": "14:26" - }, - { - "id": 130, - "num": "130", - "name": "Gyarados", - "img": "http://www.serebii.net/pokemongo/pokemon/130.png", - "height": "6.50 m", - "weight": "235.0 kg", - "candy": "Magikarp Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.32, - "spawn_time": "02:15" - }, - { - "id": 131, - "num": "131", - "name": "Lapras", - "img": "http://www.serebii.net/pokemongo/pokemon/131.png", - "height": "2.49 m", - "weight": "220.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 0.6, - "spawn_time": "08:59" - }, - { - "id": 132, - "num": "132", - "name": "Ditto", - "img": "http://www.serebii.net/pokemongo/pokemon/132.png", - "height": "0.30 m", - "weight": "4.0 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - }, - { - "id": 133, - "num": "133", - "name": "Eevee", - "img": "http://www.serebii.net/pokemongo/pokemon/133.png", - "height": "0.30 m", - "weight": "6.5 kg", - "candy": "Eevee Candy", - "candy_count": 25, - "egg": "10 km", - "avg_spawns": 275, - "spawn_time": "05:32" - }, - { - "id": 134, - "num": "134", - "name": "Vaporeon", - "img": "http://www.serebii.net/pokemongo/pokemon/134.png", - "height": "0.99 m", - "weight": "29.0 kg", - "candy": "Eevee Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.4, - "spawn_time": "10:54" - }, - { - "id": 135, - "num": "135", - "name": "Jolteon", - "img": "http://www.serebii.net/pokemongo/pokemon/135.png", - "height": "0.79 m", - "weight": "24.5 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 1.2, - "spawn_time": "02:30" - }, - { - "id": 136, - "num": "136", - "name": "Flareon", - "img": "http://www.serebii.net/pokemongo/pokemon/136.png", - "height": "0.89 m", - "weight": "25.0 kg", - "candy": "Eevee Candy", - "egg": "Not in Eggs", - "avg_spawns": 1.7, - "spawn_time": "07:02" - }, - { - "id": 137, - "num": "137", - "name": "Porygon", - "img": "http://www.serebii.net/pokemongo/pokemon/137.png", - "height": "0.79 m", - "weight": "36.5 kg", - "candy": "None", - "egg": "5 km", - "avg_spawns": 1.2, - "spawn_time": "02:49" - }, - { - "id": 138, - "num": "138", - "name": "Omanyte", - "img": "http://www.serebii.net/pokemongo/pokemon/138.png", - "height": "0.41 m", - "weight": "7.5 kg", - "candy": "Omanyte Candy", - "candy_count": 50, - "egg": "10 km", - "avg_spawns": 14, - "spawn_time": "10:23" - }, - { - "id": 139, - "num": "139", - "name": "Omastar", - "img": "http://www.serebii.net/pokemongo/pokemon/139.png", - "height": "0.99 m", - "weight": "35.0 kg", - "candy": "None", - "egg": "Omanyte Candy", - "avg_spawns": 0.61, - "spawn_time": "05:04" - }, - { - "id": 140, - "num": "140", - "name": "Kabuto", - "img": "http://www.serebii.net/pokemongo/pokemon/140.png", - "height": "0.51 m", - "weight": "11.5 kg", - "candy": "Kabuto Candy", - "candy_count": 50, - "egg": "10 km", - "avg_spawns": 10, - "spawn_time": "00:05" - }, - { - "id": 141, - "num": "141", - "name": "Kabutops", - "img": "http://www.serebii.net/pokemongo/pokemon/141.png", - "height": "1.30 m", - "weight": "40.5 kg", - "candy": "Kabuto Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.32, - "spawn_time": "23:40" - }, - { - "id": 142, - "num": "142", - "name": "Aerodactyl", - "img": "http://www.serebii.net/pokemongo/pokemon/142.png", - "height": "1.80 m", - "weight": "59.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 1.8, - "spawn_time": "23:40" - }, - { - "id": 143, - "num": "143", - "name": "Snorlax", - "img": "http://www.serebii.net/pokemongo/pokemon/143.png", - "height": "2.11 m", - "weight": "460.0 kg", - "candy": "None", - "egg": "10 km", - "avg_spawns": 1.6, - "spawn_time": "23:40" - }, - { - "id": 144, - "num": "144", - "name": "Articuno", - "img": "http://www.serebii.net/pokemongo/pokemon/144.png", - "height": "1.70 m", - "weight": "55.4 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - }, - { - "id": 145, - "num": "145", - "name": "Zapdos", - "img": "http://www.serebii.net/pokemongo/pokemon/145.png", - "height": "1.60 m", - "weight": "52.6 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - }, - { - "id": 146, - "num": "146", - "name": "Moltres", - "img": "http://www.serebii.net/pokemongo/pokemon/146.png", - "height": "2.01 m", - "weight": "60.0 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - }, - { - "id": 147, - "num": "147", - "name": "Dratini", - "img": "http://www.serebii.net/pokemongo/pokemon/147.png", - "height": "1.80 m", - "weight": "3.3 kg", - "candy": "Dratini Candy", - "candy_count": 25, - "egg": "10 km", - "avg_spawns": 30, - "spawn_time": "06:41" - }, - { - "id": 148, - "num": "148", - "name": "Dragonair", - "img": "http://www.serebii.net/pokemongo/pokemon/148.png", - "height": "3.99 m", - "weight": "16.5 kg", - "candy": "Dratini Candy", - "candy_count": 100, - "egg": "Not in Eggs", - "avg_spawns": 2, - "spawn_time": "11:57" - }, - { - "id": 149, - "num": "149", - "name": "Dragonite", - "img": "http://www.serebii.net/pokemongo/pokemon/149.png", - "height": "2.21 m", - "weight": "210.0 kg", - "candy": "Dratini Candy", - "egg": "Not in Eggs", - "avg_spawns": 0.11, - "spawn_time": "23:38" - }, - { - "id": 150, - "num": "150", - "name": "Mewtwo", - "img": "http://www.serebii.net/pokemongo/pokemon/150.png", - "height": "2.01 m", - "weight": "122.0 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - }, - { - "id": 151, - "num": "151", - "name": "Mew", - "img": "http://www.serebii.net/pokemongo/pokemon/151.png", - "height": "0.41 m", - "weight": "4.0 kg", - "candy": "None", - "egg": "Not in Eggs", - "avg_spawns": 0, - "spawn_time": "N/A" - } - ] -} +{"pokemon":[{"id":1,"num":"001","name":"Bulbasaur","img":"http://www.serebii.net/pokemongo/pokemon/001.png","height":"0.71 m","weight":"6.9 kg","candy":"Bulbasaur Candy","candy_count":"25","egg":"2 km","avg_spawns":"69","spawn_time":"20:00"},{"id":"2","num":"002","name":"kenan","img":"dfdf","height":"12","weight":"12"}]} diff --git a/public/styles/styles.css b/public/styles/styles.css new file mode 100644 index 0000000..4e20830 --- /dev/null +++ b/public/styles/styles.css @@ -0,0 +1,54 @@ +body { + display: flex; + justify-content: center; + align-items: center; +} +.form { + background: #FFFFFF; + max-width: 360px; + margin: 150px auto; + padding: 45px; + text-align: center; + box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24); +} + +.form-group { + display: flex; + flex-direction: row; + align-items: center; +} + +.form label { + width: 80px; + justify-content: space-between; + align-items: center; + margin-right:1rem; +} +.form input { + font-family: "Roboto", sans-serif; + outline: 0; + background: #f2f2f2; + width: 100%; + border: 0; + margin: 0 0 15px; + padding: 15px; + box-sizing: border-box; + font-size: 14px; +} +.form button { + font-family: "Roboto", sans-serif; + text-transform: uppercase; + outline: 0; + background: #4CAF50; + width: 100%; + border: 0; + padding: 15px; + color: #FFFFFF; + font-size: 14px; + -webkit-transition: all 0.3 ease; + transition: all 0.3 ease; + cursor: pointer; +} +.form button:hover,.form button:active,.form button:focus { + background: #43A047; +} \ No newline at end of file diff --git a/views/form.jsx b/views/form.jsx new file mode 100644 index 0000000..554b8f4 --- /dev/null +++ b/views/form.jsx @@ -0,0 +1,47 @@ +const React = require('react'); + +class Form extends React.Component { + render() { + return ( + + + Pokemon stuff + + + +
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+
+ + + ); + } +} + +module.exports = Form; \ No newline at end of file diff --git a/views/home.jsx b/views/home.jsx new file mode 100644 index 0000000..e69de29 diff --git a/yarn.lock b/yarn.lock index d832d23..11fb91e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,317 +2,1426 @@ # yarn lockfile v1 -accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" +"@babel/code-frame@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" + integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" + "@babel/highlight" "^7.8.3" -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" +"@babel/compat-data@^7.8.6", "@babel/compat-data@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.9.0.tgz#04815556fc90b0c174abd2c0c1bb966faa036a6c" + integrity sha512-zeFQrr+284Ekvd9e7KAX954LkapWiOmQtsfHirhxqfdlX6MEC32iRE+pqUGlYIBchdevaCwvzxWGSy/YBNI85g== + dependencies: + browserslist "^4.9.1" + invariant "^2.2.4" + semver "^5.5.0" + +"@babel/core@^7.0.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e" + integrity sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w== + dependencies: + "@babel/code-frame" "^7.8.3" + "@babel/generator" "^7.9.0" + "@babel/helper-module-transforms" "^7.9.0" + "@babel/helpers" "^7.9.0" + "@babel/parser" "^7.9.0" + "@babel/template" "^7.8.6" + "@babel/traverse" "^7.9.0" + "@babel/types" "^7.9.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.13" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.9.0": + version "7.9.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.4.tgz#12441e90c3b3c4159cdecf312075bf1a8ce2dbce" + integrity sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA== dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" + "@babel/types" "^7.9.0" + jsesc "^2.5.1" + lodash "^4.17.13" + source-map "^0.5.0" + +"@babel/helper-annotate-as-pure@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz#60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee" + integrity sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw== + dependencies: + "@babel/types" "^7.8.3" -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" +"@babel/helper-builder-binary-assignment-operator-visitor@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz#c84097a427a061ac56a1c30ebf54b7b22d241503" + integrity sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helper-builder-react-jsx-experimental@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.9.0.tgz#066d80262ade488f9c1b1823ce5db88a4cedaa43" + integrity sha512-3xJEiyuYU4Q/Ar9BsHisgdxZsRlsShMe90URZ0e6przL26CCs8NJbDoxH94kKT17PcxlMhsCAwZd90evCo26VQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/helper-module-imports" "^7.8.3" + "@babel/types" "^7.9.0" + +"@babel/helper-builder-react-jsx@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.9.0.tgz#16bf391990b57732700a3278d4d9a81231ea8d32" + integrity sha512-weiIo4gaoGgnhff54GQ3P5wsUQmnSwpkvU0r6ZHq6TzoSzKy4JxHEgnxNytaKbov2a9z/CVNyzliuCOUPEX3Jw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/types" "^7.9.0" + +"@babel/helper-compilation-targets@^7.8.7": + version "7.8.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.7.tgz#dac1eea159c0e4bd46e309b5a1b04a66b53c1dde" + integrity sha512-4mWm8DCK2LugIS+p1yArqvG1Pf162upsIsjE7cNBjez+NjliQpVhj20obE520nao0o14DaTnFJv+Fw5a0JpoUw== + dependencies: + "@babel/compat-data" "^7.8.6" + browserslist "^4.9.1" + invariant "^2.2.4" + levenary "^1.1.1" + semver "^5.5.0" + +"@babel/helper-create-regexp-features-plugin@^7.8.3", "@babel/helper-create-regexp-features-plugin@^7.8.8": + version "7.8.8" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz#5d84180b588f560b7864efaeea89243e58312087" + integrity sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/helper-regex" "^7.8.3" + regexpu-core "^4.7.0" + +"@babel/helper-define-map@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz#a0655cad5451c3760b726eba875f1cd8faa02c15" + integrity sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g== + dependencies: + "@babel/helper-function-name" "^7.8.3" + "@babel/types" "^7.8.3" + lodash "^4.17.13" + +"@babel/helper-explode-assignable-expression@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz#a728dc5b4e89e30fc2dfc7d04fa28a930653f982" + integrity sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw== + dependencies: + "@babel/traverse" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helper-function-name@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz#eeeb665a01b1f11068e9fb86ad56a1cb1a824cca" + integrity sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA== + dependencies: + "@babel/helper-get-function-arity" "^7.8.3" + "@babel/template" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helper-get-function-arity@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5" + integrity sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-hoist-variables@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz#1dbe9b6b55d78c9b4183fc8cdc6e30ceb83b7134" + integrity sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-member-expression-to-functions@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz#659b710498ea6c1d9907e0c73f206eee7dadc24c" + integrity sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-module-imports@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz#7fe39589b39c016331b6b8c3f441e8f0b1419498" + integrity sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-module-transforms@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" + integrity sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA== + dependencies: + "@babel/helper-module-imports" "^7.8.3" + "@babel/helper-replace-supers" "^7.8.6" + "@babel/helper-simple-access" "^7.8.3" + "@babel/helper-split-export-declaration" "^7.8.3" + "@babel/template" "^7.8.6" + "@babel/types" "^7.9.0" + lodash "^4.17.13" + +"@babel/helper-optimise-call-expression@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9" + integrity sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670" + integrity sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ== + +"@babel/helper-regex@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.8.3.tgz#139772607d51b93f23effe72105b319d2a4c6965" + integrity sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ== + dependencies: + lodash "^4.17.13" + +"@babel/helper-remap-async-to-generator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz#273c600d8b9bf5006142c1e35887d555c12edd86" + integrity sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/helper-wrap-function" "^7.8.3" + "@babel/template" "^7.8.3" + "@babel/traverse" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helper-replace-supers@^7.8.3", "@babel/helper-replace-supers@^7.8.6": + version "7.8.6" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz#5ada744fd5ad73203bf1d67459a27dcba67effc8" + integrity sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.8.3" + "@babel/helper-optimise-call-expression" "^7.8.3" + "@babel/traverse" "^7.8.6" + "@babel/types" "^7.8.6" + +"@babel/helper-simple-access@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz#7f8109928b4dab4654076986af575231deb639ae" + integrity sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw== + dependencies: + "@babel/template" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helper-split-export-declaration@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" + integrity sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA== + dependencies: + "@babel/types" "^7.8.3" + +"@babel/helper-validator-identifier@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed" + integrity sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw== + +"@babel/helper-wrap-function@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz#9dbdb2bb55ef14aaa01fe8c99b629bd5352d8610" + integrity sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ== + dependencies: + "@babel/helper-function-name" "^7.8.3" + "@babel/template" "^7.8.3" + "@babel/traverse" "^7.8.3" + "@babel/types" "^7.8.3" + +"@babel/helpers@^7.9.0": + version "7.9.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.2.tgz#b42a81a811f1e7313b88cba8adc66b3d9ae6c09f" + integrity sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA== + dependencies: + "@babel/template" "^7.8.3" + "@babel/traverse" "^7.9.0" + "@babel/types" "^7.9.0" + +"@babel/highlight@^7.8.3": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" + integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ== + dependencies: + "@babel/helper-validator-identifier" "^7.9.0" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.8.6", "@babel/parser@^7.9.0": + version "7.9.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8" + integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA== + +"@babel/plugin-proposal-async-generator-functions@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz#bad329c670b382589721b27540c7d288601c6e6f" + integrity sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-remap-async-to-generator" "^7.8.3" + "@babel/plugin-syntax-async-generators" "^7.8.0" + +"@babel/plugin-proposal-dynamic-import@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz#38c4fe555744826e97e2ae930b0fb4cc07e66054" + integrity sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-dynamic-import" "^7.8.0" + +"@babel/plugin-proposal-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz#da5216b238a98b58a1e05d6852104b10f9a70d6b" + integrity sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.0" + +"@babel/plugin-proposal-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz#e4572253fdeed65cddeecfdab3f928afeb2fd5d2" + integrity sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" + +"@babel/plugin-proposal-numeric-separator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz#5d6769409699ec9b3b68684cd8116cedff93bad8" + integrity sha512-jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + +"@babel/plugin-proposal-object-rest-spread@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.0.tgz#a28993699fc13df165995362693962ba6b061d6f" + integrity sha512-UgqBv6bjq4fDb8uku9f+wcm1J7YxJ5nT7WO/jBr0cl0PLKb7t1O6RNR1kZbjgx2LQtsDI9hwoQVmn0yhXeQyow== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.0" + +"@babel/plugin-proposal-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz#9dee96ab1650eed88646ae9734ca167ac4a9c5c9" + integrity sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" + +"@babel/plugin-proposal-optional-chaining@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz#31db16b154c39d6b8a645292472b98394c292a58" + integrity sha512-NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.0" + +"@babel/plugin-proposal-unicode-property-regex@^7.4.4", "@babel/plugin-proposal-unicode-property-regex@^7.8.3": + version "7.8.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.8.tgz#ee3a95e90cdc04fe8cd92ec3279fa017d68a0d1d" + integrity sha512-EVhjVsMpbhLw9ZfHWSx2iy13Q8Z/eg8e8ccVWt23sWQK5l1UdkoLJPN5w69UA4uITGBnEZD2JOe4QOHycYKv8A== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.8.8" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-async-generators@^7.8.0": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-dynamic-import@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-flow@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.8.3.tgz#f2c883bd61a6316f2c89380ae5122f923ba4527f" + integrity sha512-innAx3bUbA0KSYj2E2MNFSn9hiCeowOFLxlsuhXzw8hMQnzkDomUr9QCD7E9VF60NmnG1sNTuuv6Qf4f8INYsg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-json-strings@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-jsx@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz#521b06c83c40480f1e58b4fd33b92eceb1d6ea94" + integrity sha512-WxdW9xyLgBdefoo0Ynn3MRSkhe5tFVxxKNVdnZSh318WrG2e2jH+E9wd/++JsqcLJZPfz87njQJ8j2Upjm0M0A== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.0", "@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz#0e3fb63e09bea1b11e96467271c8308007e7c41f" + integrity sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-object-rest-spread@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.0": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz#3acdece695e6b13aaf57fc291d1a800950c71391" + integrity sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-arrow-functions@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz#82776c2ed0cd9e1a49956daeb896024c9473b8b6" + integrity sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-async-to-generator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz#4308fad0d9409d71eafb9b1a6ee35f9d64b64086" + integrity sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ== + dependencies: + "@babel/helper-module-imports" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-remap-async-to-generator" "^7.8.3" + +"@babel/plugin-transform-block-scoped-functions@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz#437eec5b799b5852072084b3ae5ef66e8349e8a3" + integrity sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-block-scoping@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz#97d35dab66857a437c166358b91d09050c868f3a" + integrity sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + lodash "^4.17.13" + +"@babel/plugin-transform-classes@^7.9.0": + version "7.9.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.2.tgz#8603fc3cc449e31fdbdbc257f67717536a11af8d" + integrity sha512-TC2p3bPzsfvSsqBZo0kJnuelnoK9O3welkUpqSqBQuBF6R5MN2rysopri8kNvtlGIb2jmUO7i15IooAZJjZuMQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/helper-define-map" "^7.8.3" + "@babel/helper-function-name" "^7.8.3" + "@babel/helper-optimise-call-expression" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-replace-supers" "^7.8.6" + "@babel/helper-split-export-declaration" "^7.8.3" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz#96d0d28b7f7ce4eb5b120bb2e0e943343c86f81b" + integrity sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-destructuring@^7.8.3": + version "7.8.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.8.tgz#fadb2bc8e90ccaf5658de6f8d4d22ff6272a2f4b" + integrity sha512-eRJu4Vs2rmttFCdhPUM3bV0Yo/xPSdPw6ML9KHs/bjB4bLA5HXlbvYXPOD5yASodGod+krjYx21xm1QmL8dCJQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-dotall-regex@^7.4.4", "@babel/plugin-transform-dotall-regex@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz#c3c6ec5ee6125c6993c5cbca20dc8621a9ea7a6e" + integrity sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-duplicate-keys@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz#8d12df309aa537f272899c565ea1768e286e21f1" + integrity sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-exponentiation-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz#581a6d7f56970e06bf51560cd64f5e947b70d7b7" + integrity sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-flow-strip-types@^7.0.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.9.0.tgz#8a3538aa40434e000b8f44a3c5c9ac7229bd2392" + integrity sha512-7Qfg0lKQhEHs93FChxVLAvhBshOPQDtJUTVHr/ZwQNRccCm4O9D79r9tVSoV8iNwjP1YgfD+e/fgHcPkN1qEQg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-flow" "^7.8.3" + +"@babel/plugin-transform-for-of@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz#0f260e27d3e29cd1bb3128da5e76c761aa6c108e" + integrity sha512-lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-function-name@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz#279373cb27322aaad67c2683e776dfc47196ed8b" + integrity sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ== + dependencies: + "@babel/helper-function-name" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-literals@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz#aef239823d91994ec7b68e55193525d76dbd5dc1" + integrity sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-member-expression-literals@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz#963fed4b620ac7cbf6029c755424029fa3a40410" + integrity sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-modules-amd@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.0.tgz#19755ee721912cf5bb04c07d50280af3484efef4" + integrity sha512-vZgDDF003B14O8zJy0XXLnPH4sg+9X5hFBBGN1V+B2rgrB+J2xIypSN6Rk9imB2hSTHQi5OHLrFWsZab1GMk+Q== + dependencies: + "@babel/helper-module-transforms" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-commonjs@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz#e3e72f4cbc9b4a260e30be0ea59bdf5a39748940" + integrity sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g== + dependencies: + "@babel/helper-module-transforms" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-simple-access" "^7.8.3" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-systemjs@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.0.tgz#e9fd46a296fc91e009b64e07ddaa86d6f0edeb90" + integrity sha512-FsiAv/nao/ud2ZWy4wFacoLOm5uxl0ExSQ7ErvP7jpoihLR6Cq90ilOFyX9UXct3rbtKsAiZ9kFt5XGfPe/5SQ== + dependencies: + "@babel/helper-hoist-variables" "^7.8.3" + "@babel/helper-module-transforms" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-umd@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz#e909acae276fec280f9b821a5f38e1f08b480697" + integrity sha512-uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ== + dependencies: + "@babel/helper-module-transforms" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz#a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c" + integrity sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.8.3" + +"@babel/plugin-transform-new-target@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz#60cc2ae66d85c95ab540eb34babb6434d4c70c43" + integrity sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-object-super@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz#ebb6a1e7a86ffa96858bd6ac0102d65944261725" + integrity sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-replace-supers" "^7.8.3" + +"@babel/plugin-transform-parameters@^7.8.7": + version "7.9.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.3.tgz#3028d0cc20ddc733166c6e9c8534559cee09f54a" + integrity sha512-fzrQFQhp7mIhOzmOtPiKffvCYQSK10NR8t6BBz2yPbeUHb9OLW8RZGtgDRBn8z2hGcwvKDL3vC7ojPTLNxmqEg== + dependencies: + "@babel/helper-get-function-arity" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-property-literals@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz#33194300d8539c1ed28c62ad5087ba3807b98263" + integrity sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-react-display-name@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz#70ded987c91609f78353dd76d2fb2a0bb991e8e5" + integrity sha512-3Jy/PCw8Fe6uBKtEgz3M82ljt+lTg+xJaM4og+eyu83qLT87ZUSckn0wy7r31jflURWLO83TW6Ylf7lyXj3m5A== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-react-jsx-development@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.9.0.tgz#3c2a130727caf00c2a293f0aed24520825dbf754" + integrity sha512-tK8hWKrQncVvrhvtOiPpKrQjfNX3DtkNLSX4ObuGcpS9p0QrGetKmlySIGR07y48Zft8WVgPakqd/bk46JrMSw== + dependencies: + "@babel/helper-builder-react-jsx-experimental" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-jsx" "^7.8.3" + +"@babel/plugin-transform-react-jsx-self@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.9.0.tgz#f4f26a325820205239bb915bad8e06fcadabb49b" + integrity sha512-K2ObbWPKT7KUTAoyjCsFilOkEgMvFG+y0FqOl6Lezd0/13kMkkjHskVsZvblRPj1PHA44PrToaZANrryppzTvQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-jsx" "^7.8.3" + +"@babel/plugin-transform-react-jsx-source@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.9.0.tgz#89ef93025240dd5d17d3122294a093e5e0183de0" + integrity sha512-K6m3LlSnTSfRkM6FcRk8saNEeaeyG5k7AVkBU2bZK3+1zdkSED3qNdsWrUgQBeTVD2Tp3VMmerxVO2yM5iITmw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-jsx" "^7.8.3" + +"@babel/plugin-transform-react-jsx@^7.9.4": + version "7.9.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.9.4.tgz#86f576c8540bd06d0e95e0b61ea76d55f6cbd03f" + integrity sha512-Mjqf3pZBNLt854CK0C/kRuXAnE6H/bo7xYojP+WGtX8glDGSibcwnsWwhwoSuRg0+EBnxPC1ouVnuetUIlPSAw== + dependencies: + "@babel/helper-builder-react-jsx" "^7.9.0" + "@babel/helper-builder-react-jsx-experimental" "^7.9.0" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-syntax-jsx" "^7.8.3" + +"@babel/plugin-transform-regenerator@^7.8.7": + version "7.8.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.7.tgz#5e46a0dca2bee1ad8285eb0527e6abc9c37672f8" + integrity sha512-TIg+gAl4Z0a3WmD3mbYSk+J9ZUH6n/Yc57rtKRnlA/7rcCvpekHXe0CMZHP1gYp7/KLe9GHTuIba0vXmls6drA== + dependencies: + regenerator-transform "^0.14.2" + +"@babel/plugin-transform-reserved-words@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz#9a0635ac4e665d29b162837dd3cc50745dfdf1f5" + integrity sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-shorthand-properties@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz#28545216e023a832d4d3a1185ed492bcfeac08c8" + integrity sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz#9c8ffe8170fdfb88b114ecb920b82fb6e95fe5e8" + integrity sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-sticky-regex@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz#be7a1290f81dae767475452199e1f76d6175b100" + integrity sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-regex" "^7.8.3" + +"@babel/plugin-transform-template-literals@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz#7bfa4732b455ea6a43130adc0ba767ec0e402a80" + integrity sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-typeof-symbol@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz#ede4062315ce0aaf8a657a920858f1a2f35fc412" + integrity sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-transform-unicode-regex@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz#0cef36e3ba73e5c57273effb182f46b91a1ecaad" + integrity sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/preset-env@^7.0.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.9.0.tgz#a5fc42480e950ae8f5d9f8f2bbc03f52722df3a8" + integrity sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ== + dependencies: + "@babel/compat-data" "^7.9.0" + "@babel/helper-compilation-targets" "^7.8.7" + "@babel/helper-module-imports" "^7.8.3" + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-proposal-async-generator-functions" "^7.8.3" + "@babel/plugin-proposal-dynamic-import" "^7.8.3" + "@babel/plugin-proposal-json-strings" "^7.8.3" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-proposal-numeric-separator" "^7.8.3" + "@babel/plugin-proposal-object-rest-spread" "^7.9.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.8.3" + "@babel/plugin-proposal-optional-chaining" "^7.9.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.8.3" + "@babel/plugin-syntax-async-generators" "^7.8.0" + "@babel/plugin-syntax-dynamic-import" "^7.8.0" + "@babel/plugin-syntax-json-strings" "^7.8.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" + "@babel/plugin-syntax-numeric-separator" "^7.8.0" + "@babel/plugin-syntax-object-rest-spread" "^7.8.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" + "@babel/plugin-syntax-optional-chaining" "^7.8.0" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + "@babel/plugin-transform-arrow-functions" "^7.8.3" + "@babel/plugin-transform-async-to-generator" "^7.8.3" + "@babel/plugin-transform-block-scoped-functions" "^7.8.3" + "@babel/plugin-transform-block-scoping" "^7.8.3" + "@babel/plugin-transform-classes" "^7.9.0" + "@babel/plugin-transform-computed-properties" "^7.8.3" + "@babel/plugin-transform-destructuring" "^7.8.3" + "@babel/plugin-transform-dotall-regex" "^7.8.3" + "@babel/plugin-transform-duplicate-keys" "^7.8.3" + "@babel/plugin-transform-exponentiation-operator" "^7.8.3" + "@babel/plugin-transform-for-of" "^7.9.0" + "@babel/plugin-transform-function-name" "^7.8.3" + "@babel/plugin-transform-literals" "^7.8.3" + "@babel/plugin-transform-member-expression-literals" "^7.8.3" + "@babel/plugin-transform-modules-amd" "^7.9.0" + "@babel/plugin-transform-modules-commonjs" "^7.9.0" + "@babel/plugin-transform-modules-systemjs" "^7.9.0" + "@babel/plugin-transform-modules-umd" "^7.9.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.8.3" + "@babel/plugin-transform-new-target" "^7.8.3" + "@babel/plugin-transform-object-super" "^7.8.3" + "@babel/plugin-transform-parameters" "^7.8.7" + "@babel/plugin-transform-property-literals" "^7.8.3" + "@babel/plugin-transform-regenerator" "^7.8.7" + "@babel/plugin-transform-reserved-words" "^7.8.3" + "@babel/plugin-transform-shorthand-properties" "^7.8.3" + "@babel/plugin-transform-spread" "^7.8.3" + "@babel/plugin-transform-sticky-regex" "^7.8.3" + "@babel/plugin-transform-template-literals" "^7.8.3" + "@babel/plugin-transform-typeof-symbol" "^7.8.4" + "@babel/plugin-transform-unicode-regex" "^7.8.3" + "@babel/preset-modules" "^0.1.3" + "@babel/types" "^7.9.0" + browserslist "^4.9.1" + core-js-compat "^3.6.2" + invariant "^2.2.2" + levenary "^1.1.1" + semver "^5.5.0" + +"@babel/preset-modules@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.3.tgz#13242b53b5ef8c883c3cf7dddd55b36ce80fbc72" + integrity sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/types" "^7.4.4" + esutils "^2.0.2" + +"@babel/preset-react@^7.0.0": + version "7.9.4" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.9.4.tgz#c6c97693ac65b6b9c0b4f25b948a8f665463014d" + integrity sha512-AxylVB3FXeOTQXNXyiuAQJSvss62FEotbX2Pzx3K/7c+MKJMdSg6Ose6QYllkdCFA8EInCJVw7M/o5QbLuA4ZQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + "@babel/plugin-transform-react-display-name" "^7.8.3" + "@babel/plugin-transform-react-jsx" "^7.9.4" + "@babel/plugin-transform-react-jsx-development" "^7.9.0" + "@babel/plugin-transform-react-jsx-self" "^7.9.0" + "@babel/plugin-transform-react-jsx-source" "^7.9.0" + +"@babel/register@^7.0.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.9.0.tgz#02464ede57548bddbb5e9f705d263b7c3f43d48b" + integrity sha512-Tv8Zyi2J2VRR8g7pC5gTeIN8Ihultbmk0ocyNz8H2nEZbmhp1N6q0A1UGsQbDvGP/sNinQKUHf3SqXwqjtFv4Q== + dependencies: + find-cache-dir "^2.0.0" + lodash "^4.17.13" + make-dir "^2.1.0" + pirates "^4.0.0" + source-map-support "^0.5.16" + +"@babel/runtime@^7.8.4": + version "7.9.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.2.tgz#d90df0583a3a252f09aaa619665367bae518db06" + integrity sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q== + dependencies: + regenerator-runtime "^0.13.4" + +"@babel/template@^7.8.3", "@babel/template@^7.8.6": + version "7.8.6" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" + integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg== + dependencies: + "@babel/code-frame" "^7.8.3" + "@babel/parser" "^7.8.6" + "@babel/types" "^7.8.6" + +"@babel/traverse@^7.8.3", "@babel/traverse@^7.8.6", "@babel/traverse@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.0.tgz#d3882c2830e513f4fe4cec9fe76ea1cc78747892" + integrity sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w== + dependencies: + "@babel/code-frame" "^7.8.3" + "@babel/generator" "^7.9.0" + "@babel/helper-function-name" "^7.8.3" + "@babel/helper-split-export-declaration" "^7.8.3" + "@babel/parser" "^7.9.0" + "@babel/types" "^7.9.0" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.13" + +"@babel/types@^7.4.4", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.0.tgz#00b064c3df83ad32b2dbf5ff07312b15c7f1efb5" + integrity sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng== + dependencies: + "@babel/helper-validator-identifier" "^7.9.0" + lodash "^4.17.13" + to-fast-properties "^2.0.0" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +accepts@~1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - -async@^1.4.0: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" +babel-plugin-dynamic-import-node@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" + integrity sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ== + dependencies: + object.assign "^4.1.0" balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -body-parser@1.18.2: - version "1.18.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" +body-parser@1.19.0, body-parser@^1.19.0: + version "1.19.0" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" + integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== dependencies: - bytes "3.0.0" + bytes "3.1.0" content-type "~1.0.4" debug "2.6.9" - depd "~1.1.1" - http-errors "~1.6.2" - iconv-lite "0.4.19" + depd "~1.1.2" + http-errors "1.7.2" + iconv-lite "0.4.24" on-finished "~2.3.0" - qs "6.5.1" - raw-body "2.3.2" - type-is "~1.6.15" + qs "6.7.0" + raw-body "2.4.0" + type-is "~1.6.17" brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - -camelcase@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" +browserslist@^4.8.3, browserslist@^4.9.1: + version "4.11.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.11.1.tgz#92f855ee88d6e050e7e7311d987992014f1a1f1b" + integrity sha512-DCTr3kDrKEYNw6Jb9HFxVLQNaue8z+0ZfRBRjmCunKDEXEBajKDj2Y+Uelg+Pi29OnvaSGwjOsnRyNEkXzHg5g== dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" + caniuse-lite "^1.0.30001038" + electron-to-chromium "^1.3.390" + node-releases "^1.1.53" + pkg-up "^2.0.0" -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + +caniuse-lite@^1.0.30001038: + version "1.0.30001039" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001039.tgz#b3814a1c38ffeb23567f8323500c09526a577bbe" + integrity sha512-SezbWCTT34eyFoWHgx8UWso7YtvtM7oosmFoXbCkdC6qJzRfBTeTgE9REtKtiuKXuMwWTZEvdnFNGAyVMorv8Q== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +commander@^2.19.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" +config-chain@^1.1.12: + version "1.1.12" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +content-disposition@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" content-type@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + +convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + dependencies: + safe-buffer "~5.1.1" cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + +cookie@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" + integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" +core-js-compat@^3.6.2: + version "3.6.4" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.4.tgz#938476569ebb6cda80d339bcf199fae4f16fff17" + integrity sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA== + dependencies: + browserslist "^4.8.3" + semver "7.0.0" debug@2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -decamelize@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" +debug@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" +debug@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" + ms "^2.1.1" -depd@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" +define-properties@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" -depd@~1.1.1, depd@~1.1.2: +depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= destroy@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +editorconfig@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.15.3.tgz#bef84c4e75fb8dcb0ce5cee8efd51c15999befc5" + integrity sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g== + dependencies: + commander "^2.19.0" + lru-cache "^4.1.5" + semver "^5.6.0" + sigmund "^1.0.1" ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +electron-to-chromium@^1.3.390: + version "1.3.398" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.398.tgz#4c01e29091bf39e578ac3f66c1f157d92fa5725d" + integrity sha512-BJjxuWLKFbM5axH3vES7HKMQgAknq9PZHBkMK/rEXUQG9i1Iw5R+6hGkm6GtsQSANjSUrh/a6m32nzCNDNo/+w== encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= -express-handlebars@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/express-handlebars/-/express-handlebars-3.0.0.tgz#80a070bb819b09e4af2ca6d0780f75ce05e75c2f" +express-react-views@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/express-react-views/-/express-react-views-0.11.0.tgz#56bfccee57eb8e65fcfb5321c4f377df0f25f174" + integrity sha512-K1Yu0o6i5p6AULSJOs1Kb7j71Yofgg448lKFXejsEqkX+x45gIS8XT74YdPWVW7VOKBLf9E+Ji3UE10smnN+uw== dependencies: - glob "^6.0.4" - graceful-fs "^4.1.2" - handlebars "^4.0.5" - object.assign "^4.0.3" - promise "^7.0.0" - -express@^4.16.3: - version "4.16.3" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53" + "@babel/core" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/preset-env" "^7.0.0" + "@babel/preset-react" "^7.0.0" + "@babel/register" "^7.0.0" + js-beautify "^1.7.3" + lodash.escaperegexp "^4.1.2" + object-assign "^4.1.1" + +express@^4.17.1: + version "4.17.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" + integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== dependencies: - accepts "~1.3.5" + accepts "~1.3.7" array-flatten "1.1.1" - body-parser "1.18.2" - content-disposition "0.5.2" + body-parser "1.19.0" + content-disposition "0.5.3" content-type "~1.0.4" - cookie "0.3.1" + cookie "0.4.0" cookie-signature "1.0.6" debug "2.6.9" depd "~1.1.2" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "1.1.1" + finalhandler "~1.1.2" fresh "0.5.2" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" - parseurl "~1.3.2" + parseurl "~1.3.3" path-to-regexp "0.1.7" - proxy-addr "~2.0.3" - qs "6.5.1" - range-parser "~1.2.0" - safe-buffer "5.1.1" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" + proxy-addr "~2.0.5" + qs "6.7.0" + range-parser "~1.2.1" + safe-buffer "5.1.2" + send "0.17.1" + serve-static "1.14.1" + setprototypeof "1.1.1" + statuses "~1.5.0" + type-is "~1.6.18" utils-merge "1.0.1" vary "~1.1.2" -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" +finalhandler@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== dependencies: debug "2.6.9" encodeurl "~1.0.2" escape-html "~1.0.3" on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" + parseurl "~1.3.3" + statuses "~1.5.0" unpipe "~1.0.0" -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" +find-cache-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" forwarded@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -glob@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" +gensync@^1.0.0-beta.1: + version "1.0.0-beta.1" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" + integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== + +glob@^7.1.3: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== dependencies: + fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "2 || 3" + minimatch "^3.0.4" once "^1.3.0" path-is-absolute "^1.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -handlebars@^4.0.5: - version "4.0.11" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" - dependencies: - async "^1.4.0" - optimist "^0.6.1" - source-map "^0.4.4" - optionalDependencies: - uglify-js "^2.6" +graceful-fs@^4.1.6: + version "4.2.3" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" + integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" + integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== -http-errors@1.6.2, http-errors@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" +http-errors@1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" + integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== dependencies: - depd "1.1.1" + depd "~1.1.2" inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3: +inherits@2, inherits@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ipaddr.js@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b" +ini@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== + +invariant@^2.2.2, invariant@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== + dependencies: + loose-envify "^1.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -jsonfile@^4.0.0: +js-beautify@^1.7.3: + version "1.11.0" + resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.11.0.tgz#afb873dc47d58986360093dcb69951e8bcd5ded2" + integrity sha512-a26B+Cx7USQGSWnz9YxgJNMmML/QG2nqIaL7VVYPCXbqiKz8PN0waSNvroMtvAK6tY7g/wPdNWGEP+JTNIBr6A== + dependencies: + config-chain "^1.1.12" + editorconfig "^0.15.3" + glob "^7.1.3" + mkdirp "~1.0.3" + nopt "^4.0.3" + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + +json5@^2.1.2: + version "2.1.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" + integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== + dependencies: + minimist "^1.2.5" + +jsonfile@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" + integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== + dependencies: + universalify "^1.0.0" optionalDependencies: graceful-fs "^4.1.6" -kind-of@^3.0.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +levenary@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" + integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== dependencies: - is-buffer "^1.1.5" + leven "^3.1.0" -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +lodash.escaperegexp@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347" + integrity sha1-ZHYsSGGAglGKw99Mz11YhtriA0c= + +lodash@^4.17.13: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lru-cache@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +make-dir@^2.0.0, make-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= -method-override@^2.3.10: - version "2.3.10" - resolved "https://registry.yarnpkg.com/method-override/-/method-override-2.3.10.tgz#e3daf8d5dee10dd2dce7d4ae88d62bbee77476b4" +method-override@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/method-override/-/method-override-3.0.0.tgz#6ab0d5d574e3208f15b0c9cf45ab52000468d7a2" + integrity sha512-IJ2NNN/mSl9w3kzWB92rcdHpz+HjkxhDJWNDBqSlas+zQdP8wBiJzITPg08M/k2uVvMow7Sk41atndNtt/PHSA== dependencies: - debug "2.6.9" + debug "3.1.0" methods "~1.1.2" parseurl "~1.3.2" vary "~1.1.2" @@ -320,46 +1429,94 @@ method-override@^2.3.10: methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" +mime-db@1.43.0: + version "1.43.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58" + integrity sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ== -mime-types@~2.1.18: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" +mime-types@~2.1.24: + version "2.1.26" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06" + integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ== dependencies: - mime-db "~1.33.0" + mime-db "1.43.0" -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -"minimatch@2 || 3": +minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" +minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mkdirp@~1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -object-keys@^1.0.11, object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" +ms@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -object.assign@^4.0.3: +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-releases@^1.1.53: + version "1.1.53" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.53.tgz#2d821bfa499ed7c5dffc5e2f28c88e78a08ee3f4" + integrity sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ== + +nopt@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" + integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== + dependencies: + abbrev "1" + osenv "^0.1.4" + +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-keys@^1.0.11, object-keys@^1.0.12: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== dependencies: define-properties "^1.1.2" function-bind "^1.1.1" @@ -369,81 +1526,288 @@ object.assign@^4.0.3: on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= dependencies: ee-first "1.1.1" once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + +os-tmpdir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + +osenv@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" + p-try "^1.0.0" -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" +p-limit@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parseurl@~1.3.2, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= -promise@^7.0.0: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pirates@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== dependencies: - asap "~2.0.3" + node-modules-regexp "^1.0.0" -proxy-addr@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== + dependencies: + find-up "^3.0.0" + +pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" + integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= + dependencies: + find-up "^2.1.0" + +private@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== + +prop-types@^15.6.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + +proxy-addr@~2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" + integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== dependencies: forwarded "~0.1.2" - ipaddr.js "1.6.0" + ipaddr.js "1.9.1" -qs@6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= -range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" +qs@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== -raw-body@2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" + integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== dependencies: - bytes "3.0.0" - http-errors "1.6.2" - iconv-lite "0.4.19" + bytes "3.1.0" + http-errors "1.7.2" + iconv-lite "0.4.24" unpipe "1.0.0" -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" +react-dom@^16.13.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.13.1.tgz#c1bd37331a0486c078ee54c4740720993b2e0e7f" + integrity sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.19.1" + +react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react@^16.13.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" + integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + +regenerate-unicode-properties@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" + integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== + dependencies: + regenerate "^1.4.0" -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" +regenerate@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== + +regenerator-runtime@^0.13.4: + version "0.13.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" + integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== + +regenerator-transform@^0.14.2: + version "0.14.4" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" + integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== dependencies: - align-text "^0.1.1" + "@babel/runtime" "^7.8.4" + private "^0.1.8" -safe-buffer@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" +regexpu-core@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" + integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^8.2.0" + regjsgen "^0.5.1" + regjsparser "^0.6.4" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.2.0" + +regjsgen@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.1.tgz#48f0bf1a5ea205196929c0d9798b42d1ed98443c" + integrity sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg== + +regjsparser@^0.6.4: + version "0.6.4" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" + integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== + dependencies: + jsesc "~0.5.0" -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" +resolve@^1.3.2: + version "1.15.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" + integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== + dependencies: + path-parse "^1.0.6" + +safe-buffer@5.1.2, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +scheduler@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" + integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + +semver@7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== + +semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +send@0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== dependencies: debug "2.6.9" depd "~1.1.2" @@ -452,97 +1816,130 @@ send@0.16.2: escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" + http-errors "~1.7.2" + mime "1.6.0" + ms "2.1.1" on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" + range-parser "~1.2.1" + statuses "~1.5.0" -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" +serve-static@1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" + parseurl "~1.3.3" + send "0.17.1" -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" +sigmund@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" + integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA= -source-map@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" +source-map-support@^0.5.16: + version "0.5.16" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" + integrity sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ== dependencies: - amdefine ">=0.0.4" + buffer-from "^1.0.0" + source-map "^0.6.0" -source-map@~0.5.1: +source-map@^0.5.0: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -"statuses@>= 1.3.1 < 2", statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +"statuses@>= 1.5.0 < 2", statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" -type-is@~1.6.15, type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + +type-is@~1.6.17, type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== dependencies: media-typer "0.3.0" - mime-types "~2.1.18" + mime-types "~2.1.24" + +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== -uglify-js@^2.6: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== dependencies: - source-map "~0.5.1" - yargs "~3.10.0" - optionalDependencies: - uglify-to-browserify "~1.0.0" + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" +unicode-match-property-value-ecmascript@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" + integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" + integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== + +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" - -wordwrap@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0" +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= From 865cfef162aff14edf7a290de3db568ea35e1bf3 Mon Sep 17 00:00:00 2001 From: Kenan Date: Wed, 8 Apr 2020 10:00:45 +0800 Subject: [PATCH 2/4] add validation --- index.js | 11 ++++++++++- pokedex.json | 2 +- public/styles/styles.css | 6 +++++- views/form.jsx | 6 ++++++ views/home.jsx | 17 +++++++++++++++++ 5 files changed, 39 insertions(+), 3 deletions(-) diff --git a/index.js b/index.js index e49ab68..9f88a8d 100644 --- a/index.js +++ b/index.js @@ -62,9 +62,19 @@ function handleIfDuplicates(hasDuplicate,next,res) { function addPokemon(req, res) { const {id, num, name, img, height, weight} = req.body; + const params = {id,num, name, img, height,weight}; + const errors = {}; + for (const key in params) { + if (!params[key]) { + errors[key] = `${key} is missing` + } + console.log(errors); + } + getJson() .then(data =>_addPokemon(data, id, num, name, img, height, weight)) .then(writeJson) + } function _addPokemon(data, id, num, name, img, height, weight) { @@ -73,7 +83,6 @@ function _addPokemon(data, id, num, name, img, height, weight) { } - function viewPokemonById(response, request) { jsonfile.readFile(FILE, (err, obj) => { if (err) { diff --git a/pokedex.json b/pokedex.json index 8eab08a..b2de410 100644 --- a/pokedex.json +++ b/pokedex.json @@ -1 +1 @@ -{"pokemon":[{"id":1,"num":"001","name":"Bulbasaur","img":"http://www.serebii.net/pokemongo/pokemon/001.png","height":"0.71 m","weight":"6.9 kg","candy":"Bulbasaur Candy","candy_count":"25","egg":"2 km","avg_spawns":"69","spawn_time":"20:00"},{"id":"2","num":"002","name":"kenan","img":"dfdf","height":"12","weight":"12"}]} +{"pokemon":[{"id":1,"num":"001","name":"Bulbasaur","img":"http://www.serebii.net/pokemongo/pokemon/001.png","height":"0.71 m","weight":"6.9 kg","candy":"Bulbasaur Candy","candy_count":"25","egg":"2 km","avg_spawns":"69","spawn_time":"20:00"},{"id":"df","num":"","name":"dfd","img":"","height":"","weight":""}]} diff --git a/public/styles/styles.css b/public/styles/styles.css index 4e20830..0a745e3 100644 --- a/public/styles/styles.css +++ b/public/styles/styles.css @@ -30,11 +30,15 @@ body { background: #f2f2f2; width: 100%; border: 0; - margin: 0 0 15px; + margin: 5px; padding: 15px; box-sizing: border-box; font-size: 14px; } + +.error { + text-align: left; +} .form button { font-family: "Roboto", sans-serif; text-transform: uppercase; diff --git a/views/form.jsx b/views/form.jsx index 554b8f4..4ed00aa 100644 --- a/views/form.jsx +++ b/views/form.jsx @@ -15,26 +15,32 @@ class Form extends React.Component { + {this.props.error && this.props.error.id ? this.props.error.id : ""}
+ {this.props.error && this.props.error.num? this.props.error.num: ""}
+ {this.props.error && this.props.error.name? this.props.error.name: ""}
+ {this.props.error && this.props.error.img? this.props.error.img: ""}
+ {this.props.error && this.props.error.height? this.props.error.height: ""}
+ {this.props.error && this.props.error.weight? this.props.error.weight: ""} diff --git a/views/home.jsx b/views/home.jsx index e69de29..19166c7 100644 --- a/views/home.jsx +++ b/views/home.jsx @@ -0,0 +1,17 @@ +var React = require('react'); + +class Home extends React.Component { + render() { + return ( + + +
+

This is the home page

+
+ + + ); + } +} + +module.exports = Home; \ No newline at end of file From 4ad280e3ba9ebfe593b373da679fc8e6943bb4de Mon Sep 17 00:00:00 2001 From: Kenan Date: Wed, 8 Apr 2020 10:14:42 +0800 Subject: [PATCH 3/4] fixing stuff: --- index.js | 29 +++++++++++++++++++---------- pokedex.json | 2 +- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/index.js b/index.js index 9f88a8d..7f9ea82 100644 --- a/index.js +++ b/index.js @@ -60,20 +60,29 @@ function handleIfDuplicates(hasDuplicate,next,res) { } } -function addPokemon(req, res) { - const {id, num, name, img, height, weight} = req.body; - const params = {id,num, name, img, height,weight}; +function getInvalidInputFields(id, num, name, img, height, weight ) { const errors = {}; + const params = {id, num, name, img, height, weight}; for (const key in params) { - if (!params[key]) { - errors[key] = `${key} is missing` - } - console.log(errors); + if (!params[key]) { + errors[key] = `${key} is missing` + } } + return errors +} - getJson() - .then(data =>_addPokemon(data, id, num, name, img, height, weight)) - .then(writeJson) +function addPokemon(req, res) { + const {id, num, name, img, height, weight} = req.body; + const errors = getInvalidInputFields(); + if (errors.length) { + console.log(errors); + return res.render('form', errors); + } + else { + getJson() + .then(data =>_addPokemon(data, id, num, name, img, height, weight)) + .then(writeJson) + } } diff --git a/pokedex.json b/pokedex.json index b2de410..b56e7f8 100644 --- a/pokedex.json +++ b/pokedex.json @@ -1 +1 @@ -{"pokemon":[{"id":1,"num":"001","name":"Bulbasaur","img":"http://www.serebii.net/pokemongo/pokemon/001.png","height":"0.71 m","weight":"6.9 kg","candy":"Bulbasaur Candy","candy_count":"25","egg":"2 km","avg_spawns":"69","spawn_time":"20:00"},{"id":"df","num":"","name":"dfd","img":"","height":"","weight":""}]} +{"pokemon":[{"id":1,"num":"001","name":"Bulbasaur","img":"http://www.serebii.net/pokemongo/pokemon/001.png","height":"0.71 m","weight":"6.9 kg","candy":"Bulbasaur Candy","candy_count":"25","egg":"2 km","avg_spawns":"69","spawn_time":"20:00"}]} From b798da902a406ee7fbe6a7309b3d591191a91c3f Mon Sep 17 00:00:00 2001 From: Kenan Date: Wed, 8 Apr 2020 11:39:05 +0800 Subject: [PATCH 4/4] display empty input errors --- index.js | 12 +++++++----- public/styles/styles.css | 14 ++++++++++++-- views/form.jsx | 41 ++++++++++++++++++++++++++++------------ 3 files changed, 48 insertions(+), 19 deletions(-) diff --git a/index.js b/index.js index 7f9ea82..ffcd36e 100644 --- a/index.js +++ b/index.js @@ -17,7 +17,6 @@ app.set('view engine', 'jsx'); app.use(express.static(path.join(__dirname, 'public'))); app.listen(port, () => console.log(`~~~ Tuning in to the waves of port ${port} ~~~`)); - /** * =================================== * Routes @@ -73,10 +72,13 @@ function getInvalidInputFields(id, num, name, img, height, weight ) { function addPokemon(req, res) { const {id, num, name, img, height, weight} = req.body; - const errors = getInvalidInputFields(); - if (errors.length) { - console.log(errors); - return res.render('form', errors); + const errors = getInvalidInputFields(id, num, name,img, height, weight); + console.log("error are"); + console.log(errors); + if (Object.keys(errors).length) { + console.log("this is run"); + console.log({errors}); + return res.render('form', {errors}); } else { getJson() diff --git a/public/styles/styles.css b/public/styles/styles.css index 0a745e3..5c766a9 100644 --- a/public/styles/styles.css +++ b/public/styles/styles.css @@ -24,20 +24,29 @@ body { align-items: center; margin-right:1rem; } + +.input { + display: flex; + flex-direction: column; + align-items: flex-start; +} .form input { + + align-self: flex-end; font-family: "Roboto", sans-serif; outline: 0; background: #f2f2f2; width: 100%; border: 0; margin: 5px; - padding: 15px; + padding: 10px 30px; box-sizing: border-box; font-size: 14px; } .error { - text-align: left; + display: block; + color:pink; } .form button { font-family: "Roboto", sans-serif; @@ -52,6 +61,7 @@ body { -webkit-transition: all 0.3 ease; transition: all 0.3 ease; cursor: pointer; + margin-top:10px; } .form button:hover,.form button:active,.form button:focus { background: #43A047; diff --git a/views/form.jsx b/views/form.jsx index 4ed00aa..912f689 100644 --- a/views/form.jsx +++ b/views/form.jsx @@ -13,34 +13,51 @@ class Form extends React.Component {
- +
+ + {this.props.errors && this.props.errors.id ? this.props.errors.id : ""} +
- {this.props.error && this.props.error.id ? this.props.error.id : ""}
- +
+ + {this.props.errors && this.props.errors.num ? this.props.errors.num : ""} +
- {this.props.error && this.props.error.num? this.props.error.num: ""}
- +
+
+ + {this.props.errors && this.props.errors.name ? this.props.errors.name : ""} +
+
- {this.props.error && this.props.error.name? this.props.error.name: ""}
- +
+ + {this.props.errors && this.props.errors.img ? this.props.errors.img : ""} +
- {this.props.error && this.props.error.img? this.props.error.img: ""}
- +
+ + {this.props.errors && this.props.errors.height ? this.props.errors.height : ""} +
- {this.props.error && this.props.error.height? this.props.error.height: ""}
- +
+ + {this.props.errors && this.props.errors.weight ? this.props.errors.weight : ""} +
- {this.props.error && this.props.error.weight? this.props.error.weight: ""}