From 6001e0613444906e937e90937d3e84e8b4e1b1ce Mon Sep 17 00:00:00 2001 From: Chase Date: Mon, 1 Oct 2018 12:00:49 +0200 Subject: [PATCH] 4.1.3 (#1724) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Exchanges: update-products 1011 * Fix Bittrex error (#1563) I fixed the order cancel error in issue #1514. I changed the cancelOrder and getOrder functions. I also changed 'fistRun' to 'firstRun' * Exchanges: update-products 1019 * Bittrex code cleanup (#1566) This time there are no functional changes, I just wanted to clean up the code. I also combined the warning messages and made it more clear. * Exchanges: update-products 1023 * Exchanges: update-products 1026 * Exchanges: update-products 1029 * Exchanges: update-products 1032 * Exchanges: update-products 1038 * Exchanges: update-products 1041 * Exchanges: update-products 1045 * Exchanges: update-products 1047 * Exchanges: update-products 1051 * Exchanges: update-products 1053 * Exchanges: update-products 1057 * Exchanges: update-products 1059 * so long, Zenbot * Fixed grammatical error in dashboard (#1588) * Mistake with ws calc request. (fix for #516 and partially #868) (#1586) * Docker and commandline improvements (#1583) * [BUG] Docker: Closed critical public access to non-protected database * [ENH] Improved docker handling (synced folder, alpine image for production) * [ENH] Add initial Makefile * [ENH] Docker: Add traefik reverse proxy support * [CLEAN] Cleanup data files from repo * Webpack: split js and css into its own bundles (#1582) So stylesheets get loaded if the browser has strict MIME-Type checking enabled. * Edit max_sell/buy_loss_pct defaults in conf-sample.js (#1578) * Changed default c.max_sell_loss_pct and c.max_buy_loss_pct to 99. With a value of 25, once the current price is 25% under the bought price the bot would refuse to sell unless the current price goes back above the 25% loss, however, this doesn't always happen and can cause the bot to refuse sells and end up with a huge loss. Also the descriptions for these options are very vague and confusing and I don't think most users know what they even are or would want them to use them. If my interpretation of what the option actually does is incorrect let me know. * fix broken balance command (#1573) * Exchanges: update-products 1070 * Exchanges: update-products 1074 * Exchanges: update-products 1076 * Exchanges: update-products 1079 * Exchanges: update-products 1083 * Exchanges: update-products 1085 * CEXIO: getTrades return error to engine (#1595) Instead of retrying infinitely causing requests to get stacked on top of another which will lead to the cursor freezing, rendering the bot inoperable. * Exchanges: update-products 1090 * Exchanges: update-products 1092 * Repairs #1596 error (#1601) * Repair duplicate key issue on backfill, resolves #1596 (#1600) * Exchanges: update-products 1099 * Exchanges: update-products 1101 * Exchanges: update-products 1105 * Exchanges: update-products 1107 * Exchanges: update-products 1109 * Exchanges: update-products 1111 * Exchanges: update-products 1113 * Exchanges: update-products 1124 * Exchanges: update-products 1126 * Exchanges: update-products 1129 * Exchanges: update-products 1132 * Exchanges: update-products 1134 * Exchanges: update-products 1137 * Exchanges: update-products 1141 * fix(package): update webpack-cli to version 3.0.4 (#1616) Closes #1606 * Add OHLC candle backfilling (#1614) * Exchanges: update-products 1147 * Exchanges: update-products 1151 * typo in README.md (#1620) * Exchanges: update-products 1157 * Exchanges: update-products 1163 * Add asset to push message (#1623) If you get bombarded with messages by multiple bots it can get a bit confusing at times to know who is selling/buying what. * Add strategies that utilize TA-Lib and Tulip-Lib (#1621) * Add Backing Libs ta-lib Bollinger Bands ta-lib Stochastic Oscillator ta-lib Stochastic RSI Oscillator Tulip-lib Bollinger Bands Tulip-lib MACD Tulip-lib RSI Tulip-lib Stochastic Oscillator Tulip-lib Stochastic RSI Oscillator * Add strategy ta_srsi_bollinger This Strategy uses SRSI to detect when to buy and sell verifying price position using Bollinger Bands * Add Strategy ti_stoch_bollinger This strategy uses Stochastic Oscillator to detect buy and sell signals verifying using bollinger bands This utilizes the Tulip Libs * Add strategy ti_bollinger This is a duplicate of native bollinger strategy but implemented using Tulip libs. This was for testing the ti_bollinger backing lib. This can be used by itself but does not detect trends so most likely will result in losses. * Add Strategy ti_stoch This is the Stochastic Oscillator implmented using the Tulip lib. this buys and sells at set SO crossover points. This is mainly for testing the backing library. It can be used standalone but does not check for trends so it is likely to result in losses * Add Stragegy ti_stoch_bollinger This strategy buys and sells using Stochastic Oscillator crossover points and verifies using bollinger. implemented us Tulip lib * Fix bugs in Stoch RSI. add option for passing in market data * Fix bugs in Stoch. add option for passing in market data * Set Bollinger time divider to default. adjust but/sell calculation * fix(package): update mathjs to version 5.0.0 (#1622) * Exchanges: update-products 1173 * Debug lib (#1624) * Debug lib Move debugging to its own library so it can be (re)used in every module instead of just engine.js Furthermore this will expose the current debugging state (in debug.on) globally, use it instead of declaring so.debug locally in each module from process.argv * Picky Travis... * fix(package): update poloniex.js to version 0.0.9 (#1618) * fix(package): update gdax to version 0.8.0 (#1594) * fix(package): update bl to version 2.0.1 (#1625) Closes #1591 * fix(package): update stats-lite to version 2.1.1 (#1575) * CEXIO: Migrate over to WebSocket (#1615) * CEXIO: Migrate over to WebSocket Fees and Backfill still using REST due to API limitation. * Cleanup * CEXIO: WebSocket additions * wsTrades catch reject was out-of-scope *duh* * Disconnect message formating * CEXIO: WebSocket * Improve error handling * Reject client requests until authenticated * CEXIO: WebSocket trade * Use REST for Taker/Market orders, looks like this isn't supported (yet?) :disappointed: * CEXIO: Use debug lib (#1626) * CEXIO: Use debug lib Might as well use it :smirk: * CEXIO: Use LF over CRLF *ups* * Exchanges: update-products 1186 * Exchanges: update-products 1188 * Exchanges: update-products 1190 * Add minimum trades and fitnessCalcType options (#1631) --minTrades will try and achieve the minimum x amount of trades before using normal fitness calculations --fitnessCalcType allows for different fitness priorities. i.e. profit does not care how many wins or losses occur. it only looks at how much of a return is occurring. wl does not care about profit, only more wins than losses, profitwl tries to get the best profit, while taking into consideration wins and losses, but rates profit higher. classic uses the legacy calculation and is the default. Addition modifications Add PROPERTY_RANDOM_CHANCE to phenotype process to allow for injection of entirely new species. this helps prevent stagnation during a long run. At some point floatScanWindow was removed from backtester. Commented out code in darwin.js at applies to this change * Exchanges: update-products 1194 * Exchanges: update-products 1200 * Exchanges: update-products 1202 * Exchanges: update-products 1204 * Code Cleanup (#1634) Fix indent to match .eslint requirement Fix undeclared variables to match .eslint requirement * Added missing parameter text (#1638) * Exchanges: update-products 1211 * Exchanges: update-products 1213 * Exchanges: update-products 1215 * chore(package): update yargs to version 12.0.1 (#1643) * Exchanges: update-products 1220 * Exchanges: update-products 1223 * Update strategy.js (#1646) * Update strategy.js Added overbought parameters to trade with crypto assets directly (the original code works fine if starts with FIAT, but not with asset) and use red color to mark RSI with red (sell signal). Tested and works fine. * Update strategy.js * Exchanges: update-products 1231 * Update strategy.js (#1651) Sorry, correct the code. The original was reported first tim goes right. Thanks. * Exchanges: update-products 1236 * Exchanges: update-products 1240 * Exchanges: update-products 1242 * fix(package): update css-loader to version 1.0.0 (#1653) * Exchanges: update-products 1245 * Exchanges: update-products 1250 * Exchanges: update-products 1252 * Exchanges: update-products 1257 * Cross-platform Makefile (#1660) * Added database to .gitignore (#1658) * Time-sync function to update container time (#1659) * Edited Docker ignore edited docker for mac * added time sync function * Exchanges: update-products 1257 * Cross-platform Makefile (#1660) * Added database to .gitignore (#1658) * added time sync function * Fix Poloniex not fetching all available trades (#1565) (#1661) * Exchanges: update-products 1269 * Exchanges: update-products 1273 * Exchanges: update-products 1275 * Exchanges: update-products 1277 * Exchanges: update-products 1279 * Exchanges: update-products 1281 * Exchanges: update-products 1284 * Fix issue #1664: Error 'Invalid end time.' on Poloniex (#1666) For some reason the opts.offset is void, so I patched the code to use the default value in these cases. * Discord has been removed * Update README.md * Stop complaint flood * Exchanges: update-products 1290 * Exchanges: update-products 1292 * Exchanges: update-products 1296 * fix(package): update ws to version 6.0.0 (#1668) * Exchanges: update-products 1299 * Exchanges: update-products 1301 * Exchanges: update-products 1303 * Exchanges: update-products 1305 * Exchanges: update-products 1307 * Exchanges: update-products 1309 * Exchanges: update-products 1311 * Exchanges: update-products 1313 * Exchanges: update-products 1315 * Exchanges: update-products 1317 * Exchanges: update-products 1319 * Exchanges: update-products 1321 * Exchanges: update-products 1323 * Exchanges: update-products 1325 * Exchanges: update-products 1327 * Exchanges: update-products 1329 * Exchanges: update-products 1333 * fix(package): update jasmine to version 3.2.0 (#1676) * fix(package): update postcss-loader to version 3.0.0 (#1675) * fix(package): update style-loader to version 0.22.1 (#1677) Closes #1674 * Exchanges: update-products 1344 * Exchanges: update-products 1346 * Exchanges: update-products 1348 * Exchanges: update-products 1350 * Exchanges: update-products 1352 * Exchanges: update-products 1354 * Exchanges: update-products 1356 * Exchanges: update-products 1358 * Exchanges: update-products 1360 * Exchanges: update-products 1362 * Exchanges: update-products 1364 * Exchanges: update-products 1366 * Exchanges: update-products 1368 * Exchanges: update-products 1370 * Exchanges: update-products 1373 * Modified to support Binance MIN_NOTIONAL Filter (#1687) * Fix issue #1664: Error 'Invalid end time.' on Poloniex For some reason the opts.offset is void, so I patched the code to use the default value in these cases. * Fixed wrong max_size for ADABTC pair. * Fixed EOSETH Pair. * Revert "Fixed EOSETH Pair." This reverts commit ca3cb18fb9b138a8c167ca8f94cb09c421abb03a. * Modified to support MIN_NOTIONAL Filter. Order must be over MIN_NOTIONAL value, so I have modified the script to set min_size a little over MIN_NOTIONAL when it is below. * Update Products with MIN_NOTIONAL filter * Exchanges: update-products 1378 * Exchanges: update-products 1381 * RSI, oversold start optimization (#1691) * Update strategy.js Correct code proposed in the second pull request. This code is tested and works, actually I'm using whit this modifications and all works ok. Sorry again for my error. * Optimized RSI Adding validation before execute all the conditionals * Optimization RSI Adding validation before execute all the conditionals * Optimization RSI strategy * Optimization RSI strategy * Exchanges: update-products 1384 * Fixed max_size. The script was taking maxPrice instead of maxQty. (#1692) * Fix issue #1664: Error 'Invalid end time.' on Poloniex For some reason the opts.offset is void, so I patched the code to use the default value in these cases. * Fixed wrong max_size for ADABTC pair. * Fixed EOSETH Pair. * Revert "Fixed EOSETH Pair." This reverts commit ca3cb18fb9b138a8c167ca8f94cb09c421abb03a. * Modified to support MIN_NOTIONAL Filter. Order must be over MIN_NOTIONAL value, so I have modified the script to set min_size a little over MIN_NOTIONAL when it is below. * Update Products with MIN_NOTIONAL filter * Fixed max_size. The script was taking maxPrice instead of maxQty. * Revert "Fixed max_size. The script was taking maxPrice instead of maxQty." This reverts commit 9dbaa3266af0d3c3f7cab4da789e0c684777b406. * Fixed max_size. The script was taking maxPrice instead of maxQty. * Exchanges: update-products 1389 * Exchanges: update-products 1396 * fix(package): update style-loader to version 0.23.0 (#1695) * Fixed to make proper use of the MIN_NOTIONAL parameter. (#1693) * Fix issue #1664: Error 'Invalid end time.' on Poloniex For some reason the opts.offset is void, so I patched the code to use the default value in these cases. * Fixed wrong max_size for ADABTC pair. * Fixed EOSETH Pair. * Revert "Fixed EOSETH Pair." This reverts commit ca3cb18fb9b138a8c167ca8f94cb09c421abb03a. * Modified to support MIN_NOTIONAL Filter. Order must be over MIN_NOTIONAL value, so I have modified the script to set min_size a little over MIN_NOTIONAL when it is below. * Update Products with MIN_NOTIONAL filter * Fixed max_size. The script was taking maxPrice instead of maxQty. * Revert "Fixed max_size. The script was taking maxPrice instead of maxQty." This reverts commit 9dbaa3266af0d3c3f7cab4da789e0c684777b406. * Fixed max_size. The script was taking maxPrice instead of maxQty. * Fixed to make proper use of the MIN_NOTIONAL. The parameter MIN_NOTIONAL was being used wrong. Now it is fixed to do the right calculations: https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md * fix(package): update babel-loader to version 8.0.0 (#1697) * Exchanges: update-products 1401 * Exchanges: update-products 1403 * Exchanges: update-products 1407 * Exchanges: update-products 1409 * fix(package): update bitfinex-api-node to version 2.0.0 (#1698) * Exchanges: update-products 1412 * Exchanges: update-products 1414 * Exchanges: update-products 1416 * Exchanges: update-products 1418 * Exchanges: update-products 1420 * Exchanges: update-products 1422 * Exchanges: update-products 1424 * Exchanges: update-products 1426 * Exchanges: update-products 1442 * Exchanges: update-products 1442 * Exchanges: update-products 1453 * Greenkeeper/ccxt 1.17.280 (#1708) * chore(package): update ccxt to version 1.17.280 * chore(package): update lockfile package-lock.json * Update stats-lite to the latest version 🚀 (#1706) * fix(package): update stats-lite to version 2.2.0 * chore(package): update lockfile * Exchanges: update-products 1469 * Exchanges: update-products 1469 * Exchanges: update-products 1483 * Exchanges: update-products 1491 * Exchanges: update-products 1500 * Exchanges: update-products 1507 * Exchanges: update-products 1516 * Exchanges: update-products 1524 * Exchanges: update-products 1524 * Update resolve-url-loader to the latest version 🚀 (#1709) * fix(package): update resolve-url-loader to version 3.0.0 * chore(package): update lockfile package-lock.json * Update pushbullet to the latest version 🚀 (#1710) * fix(package): update pushbullet to version 2.3.0 * chore(package): update lockfile package-lock.json * Greenkeeper/ccxt 1.17.321 (#1713) * chore(package): update ccxt to version 1.17.321 * chore(package): update lockfile package-lock.json * Exchanges: update-products 1540 * Exchanges: update-products 1540 * Exchanges: update-products 1548 * Exchanges: update-products 1548 * Exchanges: update-products 1560 * Exchanges: update-products 1568 * Exchanges: update-products 1571 * Exchanges: update-products 1578 * Exchanges: update-products 1585 * Exchanges: update-products 1585 * Exchanges: update-products 1590 * Exchanges: update-products 1598 * Exchanges: update-products 1598 * Exchanges: update-products 1605 * Exchanges: update-products 1605 * Greenkeeper/ccxt 1.17.360 (#1720) * chore(package): update ccxt to version 1.17.360 * chore(package): update lockfile package-lock.json * Greenkeeper/babel loader 8.0.4 (#1721) * chore(package): update babel-loader to version 8.0.4 * chore(package): update lockfile package-lock.json * Greenkeeper/husky 1.0.1 (#1722) * fix(package): update husky to version 1.0.1 Closes #1718 * chore(package): update lockfile package-lock.json * Exchanges: update-products 1618 * fixing vulnerabilities in repo (#1723) --- .env-sample | 5 + .gitignore | 4 +- Dockerfile | 18 +- Makefile | 132 + README.md | 27 +- boot.js | 2 + commands/balance.js | 18 +- commands/sim.js | 4 + commands/trade.js | 5 +- conf-sample.js | 6 +- docker-compose-traefik.yml | 67 + docker-compose.yml | 27 +- extensions/exchanges/binance/exchange.js | 116 +- extensions/exchanges/binance/products.json | 2216 +- .../exchanges/binance/update-products.sh | 15 +- extensions/exchanges/bitfinex/exchange.js | 2 +- extensions/exchanges/bitfinex/products.json | 1456 +- extensions/exchanges/bittrex/exchange.js | 211 +- extensions/exchanges/bittrex/products.json | 1060 +- extensions/exchanges/cexio/exchange.js | 463 +- extensions/exchanges/cexio/products.json | 8 - extensions/exchanges/gdax/products.json | 72 +- extensions/exchanges/gemini/products.json | 24 + extensions/exchanges/hitbtc/exchange.js | 2 +- extensions/exchanges/kraken/products.json | 70 + extensions/exchanges/poloniex/exchange.js | 4 +- extensions/exchanges/poloniex/products.json | 292 +- extensions/exchanges/wexnz/products.json | 58 +- extensions/output/api.js | 2 +- extensions/strategies/rsi/strategy.js | 9 +- .../strategies/ta_srsi_bollinger/strategy.js | 161 + .../strategies/ta_stoch_bollinger/strategy.js | 150 + .../strategies/ti_bollinger/strategy.js | 97 + extensions/strategies/ti_stoch/strategy.js | 100 + .../strategies/ti_stoch_bollinger/strategy.js | 142 + lib/backtester.js | 35 +- lib/debug.js | 15 + lib/engine.js | 59 +- lib/phenotype.js | 96 +- lib/ta_bollinger.js | 86 + lib/ta_stoch.js | 96 + lib/ta_stochrsi.js | 101 + lib/ti_bollinger.js | 55 + lib/ti_macd.js | 46 + lib/ti_rsi.js | 52 + lib/ti_stoch.js | 50 + lib/ti_stochrsi.js | 89 + package-lock.json | 17609 ++++++++-------- package.json | 41 +- .../backtesting_1496817528.csv | 67 - scripts/auto_backtester/package-lock.json | 154 +- scripts/genetic_backtester/darwin.js | 37 +- scripts/genetic_backtester/package-lock.json | 223 +- templates/dashboard.ejs | 4 +- webpack.config.js | 12 +- zenbot.sh | 2 +- 56 files changed, 15571 insertions(+), 10403 deletions(-) create mode 100644 .env-sample create mode 100644 Makefile create mode 100644 docker-compose-traefik.yml create mode 100644 extensions/strategies/ta_srsi_bollinger/strategy.js create mode 100644 extensions/strategies/ta_stoch_bollinger/strategy.js create mode 100644 extensions/strategies/ti_bollinger/strategy.js create mode 100644 extensions/strategies/ti_stoch/strategy.js create mode 100644 extensions/strategies/ti_stoch_bollinger/strategy.js create mode 100644 lib/debug.js create mode 100644 lib/ta_bollinger.js create mode 100644 lib/ta_stoch.js create mode 100644 lib/ta_stochrsi.js create mode 100644 lib/ti_bollinger.js create mode 100644 lib/ti_macd.js create mode 100644 lib/ti_rsi.js create mode 100644 lib/ti_stoch.js create mode 100644 lib/ti_stochrsi.js delete mode 100644 scripts/auto_backtester/backtesting_1496817528.csv diff --git a/.env-sample b/.env-sample new file mode 100644 index 0000000000..2e1fc00086 --- /dev/null +++ b/.env-sample @@ -0,0 +1,5 @@ +BASIC_AUTH_ZEN=ommm:$apr1$1n0zqO2y$A2ueB9zMWZTYTtfckFhql1 +TRAEFIK_HOST_ZEN=myhost.com +BASIC_AUTH_DB=ommm:$apr1$1n0zqO2y$A2ueB9zMWZTYTtfckFhql1 +TRAEFIK_HOST_DB=db.myhost.com +TRAEFIK_NETWORK_NAME=traefik-proxy \ No newline at end of file diff --git a/.gitignore b/.gitignore index b609715067..727a182d30 100644 --- a/.gitignore +++ b/.gitignore @@ -37,4 +37,6 @@ dist/* simulations/sim_*.json gen.*.bat gen.*.sh - +.env +scripts/auto_backtester/backtesting_*.csv +database/* diff --git a/Dockerfile b/Dockerfile index dd23218fee..f9e5ab9881 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,21 @@ -FROM node:8 - -RUN mkdir -p /app +FROM node:8 as builder +ADD . /app WORKDIR /app - -COPY . /app RUN npm install -g node-gyp RUN npm install --unsafe +FROM node:8-alpine + +ADD . /app +WORKDIR /app + +COPY --from=builder /usr/local/lib/node_modules/ /usr/local/lib/node_modules/ +COPY --from=builder /app/node_modules /app/node_modules/ +COPY --from=builder /app/dist /app/dist/ + RUN ln -s /app/zenbot.sh /usr/local/bin/zenbot ENV NODE_ENV production -ENTRYPOINT ["/usr/local/bin/node", "zenbot.js"] +ENTRYPOINT ["/app/zenbot.sh"] CMD [ "trade", "--paper" ] diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000..8a89e6f10a --- /dev/null +++ b/Makefile @@ -0,0 +1,132 @@ +# Check if this is Windows +ifneq (,$(findstring WINDOWS,$(PATH))) +WINDOWS := True +endif + +# Set shell to cmd on windows +ifdef WINDOWS +SHELL := C:/Windows/System32/cmd.exe +endif + +# Don't use sudo on windows +SUDO := "sudo" +ifdef WINDOWS +SUDO := +endif + +# set home dir to user's home on windows running MINGW +ifdef MSYSTEM +HOME := $(subst \,/,$(HOME)) +endif + +# Get the root dir of this file +ROOT_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) + +# Define the full path to this file +THIS_FILE := $(lastword $(MAKEFILE_LIST)) + +# Set docker-compose file selector for windows +ifneq (,$(findstring WINDOWS,$(PATH))) +DC_CONFIG=$(ROOT_DIR)/docker-compose-windows.yml +else +DC_CONFIG=$(ROOT_DIR)/docker-compose.yml +endif + +# Find or create a home for sensitive environment variables +# Check my secret place +CREDS=$(HOME)/.bash/.credentials +ifneq ("$(wildcard $(CREDS))","") +CREDENTIALS := $(CREDS) +else +# Check a normal place +CREDS=$(HOME)/.credentials +ifneq ("$(wildcard $(CREDS))","") +CREDENTIALS := $(CREDS) +else +$(info $(shell "mkdir" $(CREDS))) +endif +endif + +# To use arguments with make execute: make -- +ARGS = $(filter-out $@,$(MAKECMDGOALS)) +MAKEFLAGS += --silent + +list: + sh -c "echo; $(MAKE) -p no_targets__ | awk -F':' '/^[a-zA-Z0-9][^\$$#\/\\t=]*:([^=]|$$)/ {split(\$$1,A,/ /);for(i in A)print A[i]}' | grep -v '__\$$' | grep -v 'Makefile'| sort" + +############################# +# ZENBOT +############################# + +list-strategies: + docker-compose exec server zenbot list-strategies $(ARGS) + +list-selectors: + docker-compose exec server zenbot list-selectors $(ARGS) + +backfill: + docker-compose exec server zenbot backfill $(ARGS) + +sim: + docker-compose exec server zenbot sim $(ARGS) + +trade: + docker-compose exec server zenbot trade $(ARGS) + +paper: + docker-compose exec server zenbot trade --paper $(ARGS) + +balance: + docker-compose exec server zenbot balance $(ARGS) + +buy: + docker-compose exec server zenbot buy $(ARGS) + +sell: + docker-compose exec server zenbot sell $(ARGS) + +zenbot: + docker-compose exec server zenbot $(ARGS) + +############################# +# Docker machine states +############################# +time-sync: + docker run --rm --privileged alpine hwclock -s + +up: + $(SUDO) docker-compose --file=$(DC_CONFIG) up + +start: + docker-compose start + +stop: + docker-compose stop + +state: + docker-compose ps + +rebuild: + $(SUDO) docker-compose stop + $(SUDO) docker-compose pull + $(SUDO) docker-compose rm --force server + $(SUDO) docker-compose rm --force mongodb + -$(SUDO) docker-compose rm --force adminmongo + $(SUDO) docker-compose build --no-cache + $(SUDO) docker-compose --file=$(DC_CONFIG) up -d --force-recreate + + +shell: + docker-compose exec server /bin/sh + +shellw: + docker exec -it -u root $$(docker-compose ps -q server) /bin/sh + +logs: + docker-compose logs $(ARGS) + +############################# +# Argument fix workaround +############################# +%: + @: diff --git a/README.md b/README.md index 4bcb535ee4..e5c2dcd8c3 100644 --- a/README.md +++ b/README.md @@ -5,20 +5,8 @@ # Zenbot [![Build/Test Status](https://travis-ci.org/DeviaVir/zenbot.svg?branch=master)](https://travis-ci.org/DeviaVir/zenbot) [![Greenkeeper badge](https://badges.greenkeeper.io/DeviaVir/zenbot.svg)](https://greenkeeper.io/) -## Current Status - -Zenbot 4 is functional, but is having trouble reliably making profit. At this point, **I would recommend against trading with large amounts** until some of these issues can be worked out: - -- Many people are reporting [losses in live trading](https://github.com/carlos8f/zenbot/issues/189) even if the simulation results and/or paper trading is positive. -- This is my highest priority right now, since an unprofitable bot is not worth much, but please understand that reliably making profit is hard, and so is making a realistic simulator. -- The losses may be due to the default strategy not working well in sideways (non-trending) market conditions, slippage during limit order execution, or both. Currently I would recommend against using Zenbot on a market that is non-trending or trending generally downwards. -- The limit-order strategy that Zenbot uses to avoid taker fees, is prone to race conditions and delays. A mode for using market-type orders will probably need to be made, which may make frequent-trade strategies less viable due to fees, but more reliable execution overall. -- An upcoming feature will allow Zenbot to use a limited amount of your balance, which will help with experimenting with live trading, but mitigating the possible losses from the issues above. - -Zenbot is a hobby project for me and I'm sorry that I can't devote myself full-time to it. Since I'm getting busier, development may slow down a bit from here, so please be patient if issues aren't fixed right away. - ## Questions -Please ask (programming) questions related to zenbot on stackoverflow. The tag is [zenbot](https://stackoverflow.com/questions/tagged/zenbot). +Please ask (programming) questions related to zenbot on reddit. The subreddit is [zenbot](https://reddit.com/r/zenbot). ## Description @@ -76,7 +64,7 @@ cp conf-sample.js conf.js - View and edit `conf.js`. - It's possible to use zenbot in "paper trading" mode without making any changes. - You must add your exchange API keys to enable real trading however. -- API keys do NOT need deposit/withdrawl permissions. +- API keys do NOT need deposit/withdrawal permissions. If using Docker, skip to section "Docker" below. @@ -818,12 +806,6 @@ Or to sell 10% of your BTC, zenbot sell gdax.BTC-USD --pct=10 ``` -## Chat with other Zenbot users - -[![zenbot logo](https://rawgit.com/deviavir/zenbot/master/assets/discord.png)](https://discord.gg/ZdAd2gP) - -Zenbot has a Discord chat! You can get in [through this invite link](https://discord.gg/ZdAd2gP). - ## Donate P.S., some have asked for how to donate to Zenbot development. We accept donations at **Bitcoin addresses** below: @@ -840,6 +822,11 @@ P.S., some have asked for how to donate to Zenbot development. We accept donatio Thanks! +## Noteworthy forks + +- [bot18](https://medium.com/@carlos8f_11468/introducing-bot18-the-new-crypto-trading-bot-to-supersede-zenbot-and-unleash-the-zalgo-da8464b41e53) +- [magic8bot](https://github.com/notVitaliy/magic8bot) + - - - ### License: MIT diff --git a/boot.js b/boot.js index fa1c77afeb..de34d02e38 100644 --- a/boot.js +++ b/boot.js @@ -11,6 +11,8 @@ module.exports = function (cb) { var config = {} var overrides = {} + module.exports.debug = args.debug + // 1. load conf overrides file if present if(!_.isUndefined(args.conf)){ try { diff --git a/commands/balance.js b/commands/balance.js index 8ec509b261..fbab9b2968 100644 --- a/commands/balance.js +++ b/commands/balance.js @@ -4,6 +4,7 @@ var minimist = require('minimist') , colors = require('colors') , moment = require('moment') , objectifySelector = require('../lib/objectify-selector') + , exchangeService = require('../lib/services/exchange-service') , { formatCurrency } = require('../lib/format') module.exports = function (program, conf) { @@ -33,9 +34,18 @@ module.exports = function (program, conf) { so.debug = cmd.debug so.mode = 'live' function balance () { - s.exchange.getBalance(s, function (err, balance) { + var exchangeServiceInstance = exchangeService(conf) + var exchange = exchangeServiceInstance.getExchange() + + var exchangeName = exchange.name // TODO: Refactor all exchanges to be in the format of the stub.exchange, so we can use getName() here. + if (exchange === undefined) { + console.error('\nSorry, couldn\'t find an exchange named [' + exchangeName + '].') + process.exit(1) + } + + exchange.getBalance(s, function (err, balance) { if (err) throw err - s.exchange.getQuote(s, function (err, quote) { + exchange.getQuote(s, function (err, quote) { if (err) throw err var bal = moment().format('YYYY-MM-DD HH:mm:ss').grey + ' ' + formatCurrency(quote.ask, s.currency, true, true, false) + ' ' + (s.product_id).grey + '\n' @@ -46,10 +56,10 @@ module.exports = function (program, conf) { console.log(bal) if (so.calculate_currency) { - s.exchange.getQuote({'product_id': s.asset + '-' + so.calculate_currency}, function (err, asset_quote) { + exchange.getQuote({'product_id': s.asset + '-' + so.calculate_currency}, function (err, asset_quote) { if (err) throw err - s.exchange.getQuote({'product_id': s.currency + '-' + so.calculate_currency}, function (err, currency_quote) { + exchange.getQuote({'product_id': s.currency + '-' + so.calculate_currency}, function (err, currency_quote) { if (err) throw err var asset_total = balance.asset * asset_quote.bid var currency_total = balance.currency * currency_quote.bid diff --git a/commands/sim.js b/commands/sim.js index 9c38369eec..8f7c8bea3e 100644 --- a/commands/sim.js +++ b/commands/sim.js @@ -158,6 +158,10 @@ module.exports = function (program, conf) { output_lines.push('error rate: ' + (sells ? n(losses).divide(sells).format('0.00%') : '0.00%').yellow) } options_output.simresults.start_capital = s.start_capital + options_output.simresults.last_buy_price = s.last_buy_price + options_output.simresults.last_assest_value = s.trades[s.trades.length-1].price + options_output.net_currency = s.net_currency + options_output.simresults.asset_capital = s.asset_capital options_output.simresults.currency = n(s.balance.currency).value() options_output.simresults.profit = profit.value() options_output.simresults.buy_hold = buy_hold.value() diff --git a/commands/trade.js b/commands/trade.js index 4d5af3eada..edb64984b6 100644 --- a/commands/trade.js +++ b/commands/trade.js @@ -14,6 +14,7 @@ var tb = require('timebucket') , objectifySelector = require('../lib/objectify-selector') , engineFactory = require('../lib/engine') , collectionService = require('../lib/services/collection-service') + , debug = require('../lib/debug') module.exports = function (program, conf) { program @@ -519,8 +520,8 @@ module.exports = function (program, conf) { console.log('\nDumping statistics...'.grey) toggleStats() } else if (key === 'L' && !info.ctrl) { - so.debug = !so.debug - console.log('\nDEBUG mode: ' + (so.debug ? 'ON'.green.inverse : 'OFF'.red.inverse)) + debug.flip() + console.log('\nDEBUG mode: ' + (debug.on ? 'ON'.green.inverse : 'OFF'.red.inverse)) } else if (info.name === 'c' && info.ctrl) { // @todo: cancel open orders before exit console.log() diff --git a/conf-sample.js b/conf-sample.js index 805c4c6932..3c374632b0 100644 --- a/conf-sample.js +++ b/conf-sample.js @@ -129,9 +129,9 @@ c.sell_pct = 99 // ms to adjust non-filled order after c.order_adjust_time = 5000 // avoid selling at a loss below this pct set to 0 to ensure selling at a higher price... -c.max_sell_loss_pct = 25 +c.max_sell_loss_pct = 99 // avoid buying at a loss above this pct set to 0 to ensure buying at a lower price... -c.max_buy_loss_pct = 25 +c.max_buy_loss_pct = 99 // ms to poll order status c.order_poll_time = 5000 // ms to wait for settlement (after an order cancel) @@ -252,4 +252,4 @@ c.output = {} c.output.api = {} c.output.api.on = true c.output.api.ip = '0.0.0.0' // IPv4 or IPv6 address to listen on, uses all available interfaces if omitted -c.output.api.port = 0 // 0 = random port +c.output.api.port = 0 // 0 = random port, set to 17365 if you use docker diff --git a/docker-compose-traefik.yml b/docker-compose-traefik.yml new file mode 100644 index 0000000000..4ef1d7b2a1 --- /dev/null +++ b/docker-compose-traefik.yml @@ -0,0 +1,67 @@ +version: '3.1' +services: + zenbotserver: + build: + context: . + dockerfile: Dockerfile + volumes: + - ./:/app/ + - /app/node_modules/ + - /app/dist/ + restart: always + tty: true + expose: + - "17365" + labels: + - "traefik.enable=true" + - "traefik.frontend.rule=Host:$(TRAEFIK_HOST_ZEN)" + - "traefik.docker.network=$(TRAEFIK_NETWORK_NAME)" + - "traefik.port=17365" + - "traefik.frontend.auth.basic=$(BASIC_AUTH_ZEN)" + networks: + - internal + - proxy + depends_on: + - mongodb + environment: + - MONGODB_PORT_27017_TCP_ADDR=mongodb + + mongodb: + image: mongo:latest + restart: always + volumes: + - ./data/db:/data/db + command: mongod --smallfiles --bind_ip=0.0.0.0 --logpath=/dev/null + networks: + - internal + expose: + - 27017 + + # "adminMongo is a Web based user interface (GUI) to handle all your MongoDB connections/databases needs." + adminmongo: + image: mrvautin/adminmongo + expose: + - 1234 + depends_on: + - mongodb + environment: + - "CONN_NAME=zenbot_mongodb" + - "DB_HOST=mongodb" + - "DB_PORT=27017" + labels: + - "traefik.enable=true" + - "traefik.frontend.rule=Host:$(TRAEFIK_HOST_DB)" + - "traefik.docker.network=$(TRAEFIK_NETWORK_NAME)" + - "traefik.port=1234" + - "traefik.frontend.auth.basic=$(BASIC_AUTH_DB)" + networks: + - internal + - proxy + command: "npm start" + +networks: + proxy: + external: + name: "$(TRAEFIK_NETWORK_NAME)" + internal: + external: false \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index bc05dbd3aa..bee965f29e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,31 +1,30 @@ version: '3.1' - services: - server: - image: deviavir/zenbot:unstable + build: + context: . + dockerfile: Dockerfile volumes: - - ./conf.js:/app/conf.js - - ./extensions:/app/extensions - - ./simulations:/app/simulations - - ./models:/app/models - links: - - mongodb - command: [ "trade", "--paper" ] + - ./:/app/ + - /app/node_modules/ + - /app/dist/ + # Avoid syncing database to our server + - /app/database/ restart: always tty: true + ports: + - "17365:17365" depends_on: - mongodb environment: - MONGODB_PORT_27017_TCP_ADDR=mongodb - mongodb: image: mongo:latest volumes: - - ./data/db:/data/db + - ./database:/data/db command: mongod --smallfiles --bind_ip=0.0.0.0 --logpath=/dev/null - ports: - - 27017:27017 + expose: + - 27017 # Remove below comments to use this container. "adminMongo is a Web based user interface (GUI) to handle all your MongoDB connections/databases needs." # diff --git a/extensions/exchanges/binance/exchange.js b/extensions/exchanges/binance/exchange.js index c063271f96..fec912303a 100644 --- a/extensions/exchanges/binance/exchange.js +++ b/extensions/exchanges/binance/exchange.js @@ -1,11 +1,13 @@ const ccxt = require('ccxt') - , path = require('path') - // eslint-disable-next-line no-unused-vars - , colors = require('colors') - , _ = require('lodash') +, path = require('path') +// eslint-disable-next-line no-unused-vars +, colors = require('colors') +, _ = require('lodash') module.exports = function bittrex (conf) { var public_client, authed_client + let firstRun = true + let allowGetMarketCall = true function publicClient () { if (!public_client) public_client = new ccxt.binance({ 'apiKey': '', 'secret': '' }) @@ -23,11 +25,11 @@ module.exports = function bittrex (conf) { } /** - * Convert BNB-BTC to BNB/BTC - * - * @param product_id BNB-BTC - * @returns {string} - */ + * Convert BNB-BTC to BNB/BTC + * + * @param product_id BNB-BTC + * @returns {string} + */ function joinProduct(product_id) { let split = product_id.split('-') return split[0] + '/' + split[1] @@ -59,14 +61,12 @@ module.exports = function bittrex (conf) { getTrades: function (opts, cb) { var func_args = [].slice.call(arguments) - + , trades = [] + , maxTime = 0 + var client = publicClient() var args = {} - if (opts.from) { - args.startTime = opts.from - } - if (opts.to) { - args.endTime = opts.to - } + if (opts.from) args.startTime = opts.from + if (opts.to) args.endTime = opts.to if (args.startTime && !args.endTime) { // add 12 hours args.endTime = parseInt(args.startTime, 10) + 3600000 @@ -75,23 +75,51 @@ module.exports = function bittrex (conf) { // subtract 12 hours args.startTime = parseInt(args.endTime, 10) - 3600000 } - - var client = publicClient() - client.fetchTrades(joinProduct(opts.product_id), undefined, undefined, args).then(result => { - var trades = result.map(function (trade) { - return { - trade_id: trade.id, - time: trade.timestamp, - size: parseFloat(trade.amount), - price: parseFloat(trade.price), - side: trade.side - } + if (allowGetMarketCall != true) { + cb(null, []) + return null + } + if (firstRun) { + client.fetchOHLCV(joinProduct(opts.product_id), args.timeframe, opts.from).then(result => { + var lastVal = 0 + trades = result.map(function(trade) { + let buySell = parseFloat(trade[4]) > lastVal ? 'buy' : 'sell' + lastVal = parseFloat(trade[4]) + if (Number(trade[0]) > maxTime) maxTime = Number(trade[0]) + return { + trade_id: trade[0]+''+ (trade[5]+'').slice(-2) + (trade[4]+'').slice(-2), + time: trade[0], + size: parseFloat(trade[5]), + price: parseFloat(trade[4]), + side: buySell + } + }) + cb(null, trades) + }).catch(function(error) { + firstRun = false + allowGetMarketCall = false + setTimeout(()=>{allowGetMarketCall = true}, 5000) + console.error('[OHLCV] An error occurred', error) + return retry('getTrades', func_args, error) }) - cb(null, trades) - }).catch(function (error) { - console.error('An error occurred', error) - return retry('getTrades', func_args) - }) + } + else { + client.fetchTrades(joinProduct(opts.product_id), undefined, undefined, args).then(result => { + var trades = result.map(function (trade) { + return { + trade_id: trade.id, + time: trade.timestamp, + size: parseFloat(trade.amount), + price: parseFloat(trade.price), + side: trade.side + } + }) + cb(null, trades) + }).catch(function (error) { + console.error('An error occurred', error) + return retry('getTrades', func_args) + }) + } }, getBalance: function (opts, cb) { @@ -111,10 +139,10 @@ module.exports = function bittrex (conf) { }) cb(null, balance) }) - .catch(function (error) { - console.error('An error occurred', error) - return retry('getBalance', func_args) - }) + .catch(function (error) { + console.error('An error occurred', error) + return retry('getBalance', func_args) + }) }, getQuote: function (opts, cb) { @@ -123,10 +151,10 @@ module.exports = function bittrex (conf) { client.fetchTicker(joinProduct(opts.product_id)).then(result => { cb(null, { bid: result.bid, ask: result.ask }) }) - .catch(function (error) { - console.error('An error occurred', error) - return retry('getQuote', func_args) - }) + .catch(function (error) { + console.error('An error occurred', error) + return retry('getQuote', func_args) + }) }, getDepth: function (opts, cb) { @@ -135,10 +163,10 @@ module.exports = function bittrex (conf) { client.fetchOrderBook(joinProduct(opts.product_id), {limit: opts.limit}).then(result => { cb(null, result) }) - .catch(function(error) { - console.error('An error ocurred', error) - return retry('getDepth', func_args) - }) + .catch(function(error) { + console.error('An error ocurred', error) + return retry('getDepth', func_args) + }) }, cancelOrder: function (opts, cb) { diff --git a/extensions/exchanges/binance/products.json b/extensions/exchanges/binance/products.json index ff378f626c..3edc98733f 100644 --- a/extensions/exchanges/binance/products.json +++ b/extensions/exchanges/binance/products.json @@ -3,7 +3,7 @@ "id": "ETHBTC", "asset": "ETH", "currency": "BTC", - "min_size": "0.00100000", + "min_size": "0.028112393348607736", "max_size": "100000.00000000", "increment": "0.000001", "asset_increment": "0.001", @@ -13,7 +13,7 @@ "id": "LTCBTC", "asset": "LTC", "currency": "BTC", - "min_size": "0.01000000", + "min_size": "0.10787486515641855", "max_size": "100000.00000000", "increment": "0.000001", "asset_increment": "0.01", @@ -23,8 +23,8 @@ "id": "BNBBTC", "asset": "BNB", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.6624271330153683", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "BNB/BTC" @@ -33,7 +33,7 @@ "id": "NEOBTC", "asset": "NEO", "currency": "BTC", - "min_size": "0.01000000", + "min_size": "0.3462603878116344", "max_size": "100000.00000000", "increment": "0.000001", "asset_increment": "0.01", @@ -43,8 +43,8 @@ "id": "QTUMETH", "asset": "QTUM", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.6085501293169026", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "QTUM/ETH" @@ -53,8 +53,8 @@ "id": "EOSETH", "asset": "EOS", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.4048091324940291", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "EOS/ETH" @@ -63,8 +63,8 @@ "id": "SNTETH", "asset": "SNT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "62.0347394540943", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNT/ETH" @@ -73,8 +73,8 @@ "id": "BNTETH", "asset": "BNT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.556420233463035", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "BNT/ETH" @@ -83,7 +83,7 @@ "id": "BCCBTC", "asset": "BCH", "currency": "BTC", - "min_size": "0.00100000", + "min_size": "0.012224938875305624", "max_size": "100000.00000000", "increment": "0.000001", "asset_increment": "0.001", @@ -93,7 +93,7 @@ "id": "GASBTC", "asset": "GAS", "currency": "BTC", - "min_size": "0.01000000", + "min_size": "1.0875475802066341", "max_size": "100000.00000000", "increment": "0.000001", "asset_increment": "0.01", @@ -103,8 +103,8 @@ "id": "BNBETH", "asset": "BNB", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.2355268736162796", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "BNB/ETH" @@ -113,7 +113,7 @@ "id": "BTCUSDT", "asset": "BTC", "currency": "USDT", - "min_size": "0.00000100", + "min_size": "0.0015077805244513", "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.000001", @@ -123,7 +123,7 @@ "id": "ETHUSDT", "asset": "ETH", "currency": "USDT", - "min_size": "0.00001000", + "min_size": "0.04233969134365011", "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.00001", @@ -133,8 +133,8 @@ "id": "HSRBTC", "asset": "HSR", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.401541695865452", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "HSR/BTC" @@ -143,8 +143,8 @@ "id": "OAXETH", "asset": "OAX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "12.589701624071509", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "OAX/ETH" @@ -153,8 +153,8 @@ "id": "DNTETH", "asset": "DNT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "96.2000962000962", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "DNT/ETH" @@ -163,8 +163,8 @@ "id": "MCOETH", "asset": "MCO", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.528192261983362", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "MCO/ETH" @@ -173,8 +173,8 @@ "id": "ICNETH", "asset": "ICN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.88893469171427", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "ICN/ETH" @@ -183,8 +183,8 @@ "id": "MCOBTC", "asset": "MCO", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.4825796886582654", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "MCO/BTC" @@ -193,8 +193,8 @@ "id": "WTCBTC", "asset": "WTC", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.2660321776569226", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "WTC/BTC" @@ -203,8 +203,8 @@ "id": "WTCETH", "asset": "WTC", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.8062565508344754", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "WTC/ETH" @@ -213,8 +213,8 @@ "id": "LRCBTC", "asset": "LRC", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "63.37135614702156", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LRC/BTC" @@ -223,8 +223,8 @@ "id": "LRCETH", "asset": "LRC", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "22.534195641886562", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LRC/ETH" @@ -233,8 +233,8 @@ "id": "QTUMBTC", "asset": "QTUM", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.707941929974381", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "QTUM/BTC" @@ -243,8 +243,8 @@ "id": "YOYOBTC", "asset": "YOYOW", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "243.30900243309", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "YOYOW/BTC" @@ -253,8 +253,8 @@ "id": "OMGBTC", "asset": "OMG", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.7793594306049823", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "OMG/BTC" @@ -263,8 +263,8 @@ "id": "OMGETH", "asset": "OMG", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.6338340622425049", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "OMG/ETH" @@ -273,8 +273,8 @@ "id": "ZRXBTC", "asset": "ZRX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "10.24485196188915", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ZRX/BTC" @@ -283,8 +283,8 @@ "id": "ZRXETH", "asset": "ZRX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "3.644992327291151", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ZRX/ETH" @@ -293,8 +293,8 @@ "id": "STRATBTC", "asset": "STRAT", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "4.056795131845841", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "STRAT/BTC" @@ -303,8 +303,8 @@ "id": "STRATETH", "asset": "STRAT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.4367816091954024", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "STRAT/ETH" @@ -313,8 +313,8 @@ "id": "SNGLSBTC", "asset": "SNGLS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "278.5515320334262", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNGLS/BTC" @@ -323,8 +323,8 @@ "id": "SNGLSETH", "asset": "SNGLS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "98.74592673052236", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNGLS/ETH" @@ -333,8 +333,8 @@ "id": "BQXBTC", "asset": "BQX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "19.10949742021785", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BQX/BTC" @@ -343,8 +343,8 @@ "id": "BQXETH", "asset": "BQX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "6.76544212164265", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "BQX/ETH" @@ -353,8 +353,8 @@ "id": "KNCBTC", "asset": "KNC", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "16.753224995811692", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "KNC/BTC" @@ -363,8 +363,8 @@ "id": "KNCETH", "asset": "KNC", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.945303210463734", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "KNC/ETH" @@ -373,8 +373,8 @@ "id": "FUNBTC", "asset": "FUN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "409.8360655737705", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "FUN/BTC" @@ -383,8 +383,8 @@ "id": "FUNETH", "asset": "FUN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "145.96409283316302", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "FUN/ETH" @@ -393,8 +393,8 @@ "id": "SNMBTC", "asset": "SNM", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "115.20737327188941", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNM/BTC" @@ -403,8 +403,8 @@ "id": "SNMETH", "asset": "SNM", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "40.91485618428052", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNM/ETH" @@ -413,8 +413,8 @@ "id": "NEOETH", "asset": "NEO", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.12320429736589213", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "NEO/ETH" @@ -423,8 +423,8 @@ "id": "IOTABTC", "asset": "IOTA", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "11.621150493898895", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "IOTA/BTC" @@ -433,8 +433,8 @@ "id": "IOTAETH", "asset": "IOTA", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "4.144888730462031", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "IOTA/ETH" @@ -443,8 +443,8 @@ "id": "LINKBTC", "asset": "LINK", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "20.056157240272764", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LINK/BTC" @@ -453,8 +453,8 @@ "id": "LINKETH", "asset": "LINK", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "7.08541467389379", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LINK/ETH" @@ -463,8 +463,8 @@ "id": "XVGBTC", "asset": "XVG", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "444.44444444444446", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XVG/BTC" @@ -473,8 +473,8 @@ "id": "XVGETH", "asset": "XVG", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "158.5037248375337", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XVG/ETH" @@ -483,8 +483,8 @@ "id": "SALTBTC", "asset": "SALT", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "13.477088948787062", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "SALT/BTC" @@ -493,8 +493,8 @@ "id": "SALTETH", "asset": "SALT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "4.84027105517909", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "SALT/ETH" @@ -503,8 +503,8 @@ "id": "MDABTC", "asset": "MDA", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "14.992503748125939", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "MDA/BTC" @@ -513,8 +513,8 @@ "id": "MDAETH", "asset": "MDA", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.3361792956243335", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "MDA/ETH" @@ -523,8 +523,8 @@ "id": "MTLBTC", "asset": "MTL", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "9.398496240601503", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "MTL/BTC" @@ -533,8 +533,8 @@ "id": "MTLETH", "asset": "MTL", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.3835222466587718", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "MTL/ETH" @@ -543,8 +543,8 @@ "id": "SUBBTC", "asset": "SUB", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "54.525627044711015", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SUB/BTC" @@ -553,8 +553,8 @@ "id": "SUBETH", "asset": "SUB", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "19.41785277384027", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SUB/ETH" @@ -563,8 +563,8 @@ "id": "EOSBTC", "asset": "EOS", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.1378506002161917", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "EOS/BTC" @@ -573,8 +573,8 @@ "id": "SNTBTC", "asset": "SNT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "173.01038062283735", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SNT/BTC" @@ -583,8 +583,8 @@ "id": "ETCETH", "asset": "ETC", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.2072045004817505", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "ETC/ETH" @@ -593,8 +593,8 @@ "id": "ETCBTC", "asset": "ETC", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.5830903790087464", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "ETC/BTC" @@ -603,8 +603,8 @@ "id": "MTHBTC", "asset": "MTH", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "224.21524663677133", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "MTH/BTC" @@ -613,8 +613,8 @@ "id": "MTHETH", "asset": "MTH", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "79.80845969672785", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "MTH/ETH" @@ -623,8 +623,8 @@ "id": "ENGBTC", "asset": "ENG", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "10.721561059290234", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ENG/BTC" @@ -633,8 +633,8 @@ "id": "ENGETH", "asset": "ENG", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "3.7978048687858417", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "ENG/ETH" @@ -643,8 +643,8 @@ "id": "DNTBTC", "asset": "DNT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "272.47956403269757", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "DNT/BTC" @@ -653,8 +653,8 @@ "id": "ZECBTC", "asset": "ZEC", "currency": "BTC", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.04967216371945162", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.001", "label": "ZEC/BTC" @@ -663,8 +663,8 @@ "id": "ZECETH", "asset": "ZEC", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.017604084147522223", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "ZEC/ETH" @@ -673,8 +673,8 @@ "id": "BNTBTC", "asset": "BNT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "4.368910830529949", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BNT/BTC" @@ -683,8 +683,8 @@ "id": "ASTBTC", "asset": "AST", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "80.64516129032258", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "AST/BTC" @@ -693,8 +693,8 @@ "id": "ASTETH", "asset": "AST", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "28.48191398461977", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "AST/ETH" @@ -703,8 +703,8 @@ "id": "DASHBTC", "asset": "DASH", "currency": "BTC", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.035078488117162146", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.001", "label": "DASH/BTC" @@ -713,8 +713,8 @@ "id": "DASHETH", "asset": "DASH", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.012531171288580344", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "DASH/ETH" @@ -723,8 +723,8 @@ "id": "OAXBTC", "asset": "OAX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "35.46099290780142", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "OAX/BTC" @@ -733,8 +733,8 @@ "id": "ICNBTC", "asset": "ICN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "16.644474034620508", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ICN/BTC" @@ -743,8 +743,8 @@ "id": "BTGBTC", "asset": "BTG", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.2517306482064191", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "BTG/BTC" @@ -753,8 +753,8 @@ "id": "BTGETH", "asset": "BTG", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.08935312802962951", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "BTG/ETH" @@ -763,8 +763,8 @@ "id": "EVXBTC", "asset": "EVX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "14.13427561837456", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "EVX/BTC" @@ -773,8 +773,8 @@ "id": "EVXETH", "asset": "EVX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.039814534825119", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "EVX/ETH" @@ -783,8 +783,8 @@ "id": "REQBTC", "asset": "REQ", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "140.4494382022472", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "REQ/BTC" @@ -793,8 +793,8 @@ "id": "REQETH", "asset": "REQ", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "49.95753609431983", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "REQ/ETH" @@ -803,8 +803,8 @@ "id": "VIBBTC", "asset": "VIB", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "166.38935108153078", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "VIB/BTC" @@ -813,8 +813,8 @@ "id": "VIBETH", "asset": "VIB", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "58.8824118235883", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "VIB/ETH" @@ -823,8 +823,8 @@ "id": "HSRETH", "asset": "HSR", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.01", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "HSR/ETH" @@ -833,8 +833,8 @@ "id": "TRXBTC", "asset": "TRX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "295.85798816568047", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TRX/BTC" @@ -843,8 +843,8 @@ "id": "TRXETH", "asset": "TRX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "105.3740779768177", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TRX/ETH" @@ -853,8 +853,8 @@ "id": "POWRBTC", "asset": "POWR", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "39.447731755424066", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POWR/BTC" @@ -863,8 +863,8 @@ "id": "POWRETH", "asset": "POWR", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "14.142071247754945", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POWR/ETH" @@ -873,8 +873,8 @@ "id": "ARKBTC", "asset": "ARK", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "9.174311926605505", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "ARK/BTC" @@ -883,8 +883,8 @@ "id": "ARKETH", "asset": "ARK", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.26477309826967", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "ARK/ETH" @@ -893,8 +893,8 @@ "id": "YOYOETH", "asset": "YOYOW", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "86.22176237282291", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "YOYOW/ETH" @@ -903,8 +903,8 @@ "id": "XRPBTC", "asset": "XRP", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "10.840108401084011", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XRP/BTC" @@ -913,8 +913,8 @@ "id": "XRPETH", "asset": "XRP", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "3.8698043039963474", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XRP/ETH" @@ -923,8 +923,8 @@ "id": "MODBTC", "asset": "MOD", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "9.920634920634921", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "MOD/BTC" @@ -933,8 +933,8 @@ "id": "MODETH", "asset": "MOD", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.5198873636043646", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "MOD/ETH" @@ -943,8 +943,8 @@ "id": "ENJBTC", "asset": "ENJ", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "110.98779134295228", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ENJ/BTC" @@ -953,8 +953,8 @@ "id": "ENJETH", "asset": "ENJ", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "39.35148748622698", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ENJ/ETH" @@ -963,8 +963,8 @@ "id": "STORJBTC", "asset": "STORJ", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "24.154589371980677", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "STORJ/BTC" @@ -973,8 +973,8 @@ "id": "STORJETH", "asset": "STORJ", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "8.625150940141452", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "STORJ/ETH" @@ -983,8 +983,8 @@ "id": "BNBUSDT", "asset": "BNB", "currency": "USDT", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.999525225517879", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", "label": "BNB/USDT" @@ -993,8 +993,8 @@ "id": "VENBNB", "asset": "VEN", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "6.66000666000666", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", "label": "VEN/BNB" @@ -1003,28 +1003,28 @@ "id": "YOYOBNB", "asset": "YOYOW", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "369.41263391207974", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "YOYOW/BNB" }, { "id": "POWRBNB", "asset": "POWR", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "59.77286312014345", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "POWR/BNB" }, { "id": "VENBTC", "asset": "VEN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "VEN/BTC" @@ -1033,8 +1033,8 @@ "id": "VENETH", "asset": "VEN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "VEN/ETH" @@ -1043,8 +1043,8 @@ "id": "KMDBTC", "asset": "KMD", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "5.574136008918618", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "KMD/BTC" @@ -1053,8 +1053,8 @@ "id": "KMDETH", "asset": "KMD", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.9739439399921046", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "KMD/ETH" @@ -1063,18 +1063,18 @@ "id": "NULSBNB", "asset": "NULS", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "8.300132802124834", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "NULS/BNB" }, { "id": "RCNBTC", "asset": "RCN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "232.5581395348837", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "RCN/BTC" @@ -1083,8 +1083,8 @@ "id": "RCNETH", "asset": "RCN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "82.67195767195768", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "RCN/ETH" @@ -1093,18 +1093,18 @@ "id": "RCNBNB", "asset": "RCN", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "354.6099290780142", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "RCN/BNB" }, { "id": "NULSBTC", "asset": "NULS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.554629783924901", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "NULS/BTC" @@ -1113,8 +1113,8 @@ "id": "NULSETH", "asset": "NULS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1.9586029676752168", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "NULS/ETH" @@ -1123,8 +1123,8 @@ "id": "RDNBTC", "asset": "RDN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "14.5623998835008", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "RDN/BTC" @@ -1133,8 +1133,8 @@ "id": "RDNETH", "asset": "RDN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "5.187529179851637", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "RDN/ETH" @@ -1143,18 +1143,18 @@ "id": "RDNBNB", "asset": "RDN", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "21.929824561403507", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "RDN/BNB" }, { "id": "XMRBTC", "asset": "XMR", "currency": "BTC", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.05696707303178763", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.001", "label": "XMR/BTC" @@ -1163,8 +1163,8 @@ "id": "XMRETH", "asset": "XMR", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.020302095176222185", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "XMR/ETH" @@ -1173,18 +1173,18 @@ "id": "DLTBNB", "asset": "DLT", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "142.85714285714283", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "DLT/BNB" }, { "id": "WTCBNB", "asset": "WTC", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.4176349965823647", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", "label": "WTC/BNB" @@ -1193,8 +1193,8 @@ "id": "DLTBTC", "asset": "DLT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "93.7207122774133", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "DLT/BTC" @@ -1203,8 +1203,8 @@ "id": "DLTETH", "asset": "DLT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "33.145508783559826", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "DLT/ETH" @@ -1213,8 +1213,8 @@ "id": "AMBBTC", "asset": "AMB", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "44.4247001332741", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "AMB/BTC" @@ -1223,8 +1223,8 @@ "id": "AMBETH", "asset": "AMB", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "15.758702743590149", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "AMB/ETH" @@ -1233,18 +1233,18 @@ "id": "AMBBNB", "asset": "AMB", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "64.55777921239509", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "AMB/BNB" }, { "id": "BCCETH", "asset": "BCH", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.0043509095576430255", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "BCH/ETH" @@ -1253,7 +1253,7 @@ "id": "BCCUSDT", "asset": "BCH", "currency": "USDT", - "min_size": "0.00001000", + "min_size": "0.018416884599801096", "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.00001", @@ -1263,8 +1263,8 @@ "id": "BCCBNB", "asset": "BCH", "currency": "BNB", - "min_size": "0.00001000", - "max_size": "100000.00000000", + "min_size": "0.018422991893883568", + "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.00001", "label": "BCH/BNB" @@ -1273,8 +1273,8 @@ "id": "BATBTC", "asset": "BAT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "38.211692777990066", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BAT/BTC" @@ -1283,8 +1283,8 @@ "id": "BATETH", "asset": "BAT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "13.59785697774031", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BAT/ETH" @@ -1293,18 +1293,18 @@ "id": "BATBNB", "asset": "BAT", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "58.038305281485776", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "BAT/BNB" }, { "id": "BCPTBTC", "asset": "BCPT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "64.76683937823834", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BCPT/BTC" @@ -1313,8 +1313,8 @@ "id": "BCPTETH", "asset": "BCPT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "23.057412958266085", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BCPT/ETH" @@ -1323,18 +1323,18 @@ "id": "BCPTBNB", "asset": "BCPT", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "97.08737864077669", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "BCPT/BNB" }, { "id": "ARNBTC", "asset": "ARN", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "18.218254691200585", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ARN/BTC" @@ -1343,8 +1343,8 @@ "id": "ARNETH", "asset": "ARN", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "6.445583164136775", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ARN/ETH" @@ -1353,8 +1353,8 @@ "id": "GVTBTC", "asset": "GVT", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.7143877696813831", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "GVT/BTC" @@ -1363,8 +1363,8 @@ "id": "GVTETH", "asset": "GVT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.25458248472505096", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "GVT/ETH" @@ -1373,8 +1373,8 @@ "id": "CDTBTC", "asset": "CDT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "429.18454935622316", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CDT/BTC" @@ -1383,8 +1383,8 @@ "id": "CDTETH", "asset": "CDT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "153.06903413439463", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CDT/ETH" @@ -1393,8 +1393,8 @@ "id": "GXSBTC", "asset": "GXS", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "4.701457451810062", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "GXS/BTC" @@ -1403,8 +1403,8 @@ "id": "GXSETH", "asset": "GXS", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.665556295802798", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "GXS/ETH" @@ -1413,7 +1413,7 @@ "id": "NEOUSDT", "asset": "NEO", "currency": "USDT", - "min_size": "0.00100000", + "min_size": "0.5220841599665866", "max_size": "10000000.00000000", "increment": "0.001", "asset_increment": "0.001", @@ -1423,7 +1423,7 @@ "id": "NEOBNB", "asset": "NEO", "currency": "BNB", - "min_size": "0.00100000", + "min_size": "0.5227391531625719", "max_size": "10000000.00000000", "increment": "0.001", "asset_increment": "0.001", @@ -1433,8 +1433,8 @@ "id": "POEBTC", "asset": "POE", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "641.0256410256411", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POE/BTC" @@ -1443,8 +1443,8 @@ "id": "POEETH", "asset": "POE", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "228.41480127912286", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POE/ETH" @@ -1453,8 +1453,8 @@ "id": "QSPBTC", "asset": "QSP", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "179.2114695340502", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "QSP/BTC" @@ -1463,8 +1463,8 @@ "id": "QSPETH", "asset": "QSP", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "63.98362019323053", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "QSP/ETH" @@ -1473,18 +1473,18 @@ "id": "QSPBNB", "asset": "QSP", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "272.4795640326975", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "QSP/BNB" }, { "id": "BTSBTC", "asset": "BTS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "57.4712643678161", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BTS/BTC" @@ -1493,8 +1493,8 @@ "id": "BTSETH", "asset": "BTS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "20.46496398166339", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BTS/ETH" @@ -1503,18 +1503,18 @@ "id": "BTSBNB", "asset": "BTS", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "87.03220191470844", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "BTS/BNB" }, { "id": "XZCBTC", "asset": "XZC", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.6664445184938355", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "XZC/BTC" @@ -1523,8 +1523,8 @@ "id": "XZCETH", "asset": "XZC", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.23633398719069787", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "XZC/ETH" @@ -1533,7 +1533,7 @@ "id": "XZCBNB", "asset": "XZC", "currency": "BNB", - "min_size": "0.00100000", + "min_size": "1.0070493454179255", "max_size": "10000000.00000000", "increment": "0.001", "asset_increment": "0.001", @@ -1543,8 +1543,8 @@ "id": "LSKBTC", "asset": "LSK", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.011667672500503", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "LSK/BTC" @@ -1553,8 +1553,8 @@ "id": "LSKETH", "asset": "LSK", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.7147451933385748", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "LSK/ETH" @@ -1563,8 +1563,8 @@ "id": "LSKBNB", "asset": "LSK", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.0275507114744173", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", "label": "LSK/BNB" @@ -1573,8 +1573,8 @@ "id": "TNTBTC", "asset": "TNT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "234.192037470726", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TNT/BTC" @@ -1583,8 +1583,8 @@ "id": "TNTETH", "asset": "TNT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "83.47245409015025", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TNT/ETH" @@ -1593,8 +1593,8 @@ "id": "FUELBTC", "asset": "FUEL", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "384.6153846153847", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "FUEL/BTC" @@ -1603,8 +1603,8 @@ "id": "FUELETH", "asset": "FUEL", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "136.986301369863", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "FUEL/ETH" @@ -1613,8 +1613,8 @@ "id": "MANABTC", "asset": "MANA", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "85.61643835616438", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "MANA/BTC" @@ -1623,8 +1623,8 @@ "id": "MANAETH", "asset": "MANA", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "30.463656857369156", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "MANA/ETH" @@ -1633,8 +1633,8 @@ "id": "BCDBTC", "asset": "BCD", "currency": "BTC", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "3.4482758620689657", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.001", "label": "BCD/BTC" @@ -1643,8 +1643,8 @@ "id": "BCDETH", "asset": "BCD", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "1.2165450121654502", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "BCD/ETH" @@ -1653,8 +1653,8 @@ "id": "DGDBTC", "asset": "DGD", "currency": "BTC", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.17262213015708613", + "max_size": "10000000.00000000", "increment": "0.000001", "asset_increment": "0.001", "label": "DGD/BTC" @@ -1663,8 +1663,8 @@ "id": "DGDETH", "asset": "DGD", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.0615991129727732", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "DGD/ETH" @@ -1673,18 +1673,18 @@ "id": "IOTABNB", "asset": "IOTA", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "17.59633996128805", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "IOTA/BNB" }, { "id": "ADXBTC", "asset": "ADX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "31.595576619273306", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ADX/BTC" @@ -1693,8 +1693,8 @@ "id": "ADXETH", "asset": "ADX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "11.229646266142616", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "ADX/ETH" @@ -1703,18 +1703,18 @@ "id": "ADXBNB", "asset": "ADX", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "47.19207173194903", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "ADX/BNB" }, { "id": "ADABTC", "asset": "ADA", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "77.04160246533128", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ADA/BTC" @@ -1723,8 +1723,8 @@ "id": "ADAETH", "asset": "ADA", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "27.408524050979857", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ADA/ETH" @@ -1733,8 +1733,8 @@ "id": "PPTBTC", "asset": "PPT", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.059732234809475", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "PPT/BTC" @@ -1743,8 +1743,8 @@ "id": "PPTETH", "asset": "PPT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.7363770250368189", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "PPT/ETH" @@ -1753,8 +1753,8 @@ "id": "CMTBTC", "asset": "CMT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "63.856960408684536", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CMT/BTC" @@ -1763,8 +1763,8 @@ "id": "CMTETH", "asset": "CMT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "22.769188733805414", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CMT/ETH" @@ -1773,18 +1773,18 @@ "id": "CMTBNB", "asset": "CMT", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "96.80542110358179", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "CMT/BNB" }, { "id": "XLMBTC", "asset": "XLM", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "25.50369803621525", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XLM/BTC" @@ -1793,8 +1793,8 @@ "id": "XLMETH", "asset": "XLM", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "9.06947215672048", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XLM/ETH" @@ -1803,18 +1803,18 @@ "id": "XLMBNB", "asset": "XLM", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "38.40245775729647", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "XLM/BNB" }, { "id": "CNDBTC", "asset": "CND", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "303.95136778115506", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CND/BTC" @@ -1823,8 +1823,8 @@ "id": "CNDETH", "asset": "CND", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "108.1548777849881", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CND/ETH" @@ -1833,18 +1833,18 @@ "id": "CNDBNB", "asset": "CND", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "460.40515653775327", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "CND/BNB" }, { "id": "LENDBTC", "asset": "LEND", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "446.4285714285715", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LEND/BTC" @@ -1853,8 +1853,8 @@ "id": "LENDETH", "asset": "LEND", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "158.83100381194407", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "LEND/ETH" @@ -1863,8 +1863,8 @@ "id": "WABIBTC", "asset": "WABI", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "31.123560535325243", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "WABI/BTC" @@ -1873,8 +1873,8 @@ "id": "WABIETH", "asset": "WABI", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "11.047892614483786", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "WABI/ETH" @@ -1883,18 +1883,18 @@ "id": "WABIBNB", "asset": "WABI", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "46.728971962616825", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "WABI/BNB" }, { "id": "LTCETH", "asset": "LTC", "currency": "ETH", - "min_size": "0.00100000", - "max_size": "100000.00000000", + "min_size": "0.03844675124951941", + "max_size": "10000000.00000000", "increment": "0.00001", "asset_increment": "0.001", "label": "LTC/ETH" @@ -1903,7 +1903,7 @@ "id": "LTCUSDT", "asset": "LTC", "currency": "USDT", - "min_size": "0.00001000", + "min_size": "0.16240357287860333", "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.00001", @@ -1913,8 +1913,8 @@ "id": "LTCBNB", "asset": "LTC", "currency": "BNB", - "min_size": "0.00001000", - "max_size": "100000.00000000", + "min_size": "0.16286644951140067", + "max_size": "10000000.00000000", "increment": "0.01", "asset_increment": "0.00001", "label": "LTC/BNB" @@ -1923,8 +1923,8 @@ "id": "TNBBTC", "asset": "TNB", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "675.6756756756757", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TNB/BTC" @@ -1933,8 +1933,8 @@ "id": "TNBETH", "asset": "TNB", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "238.72045834328003", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "TNB/ETH" @@ -1943,8 +1943,8 @@ "id": "WAVESBTC", "asset": "WAVES", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.9904306220095696", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "WAVES/BTC" @@ -1953,8 +1953,8 @@ "id": "WAVESETH", "asset": "WAVES", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.0607828577490186", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "WAVES/ETH" @@ -1963,8 +1963,8 @@ "id": "WAVESBNB", "asset": "WAVES", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "4.486316733961417", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", "label": "WAVES/BNB" @@ -1973,8 +1973,8 @@ "id": "GTOBTC", "asset": "GTO", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "96.61835748792271", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "GTO/BTC" @@ -1983,8 +1983,8 @@ "id": "GTOETH", "asset": "GTO", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "34.34655675768504", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "GTO/ETH" @@ -1993,18 +1993,18 @@ "id": "GTOBNB", "asset": "GTO", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "145.7725947521866", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "GTO/BNB" }, { "id": "ICXBTC", "asset": "ICX", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "10.090817356205854", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "ICX/BTC" @@ -2013,8 +2013,8 @@ "id": "ICXETH", "asset": "ICX", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.593890386343217", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "ICX/ETH" @@ -2023,18 +2023,18 @@ "id": "ICXBNB", "asset": "ICX", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "15.243902439024389", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "ICX/BNB" }, { "id": "OSTBTC", "asset": "OST", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "139.4700139470014", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "OST/BTC" @@ -2043,8 +2043,8 @@ "id": "OSTETH", "asset": "OST", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "49.64750273061266", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "OST/ETH" @@ -2053,18 +2053,18 @@ "id": "OSTBNB", "asset": "OST", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "208.33333333333331", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "OST/BNB" }, { "id": "ELFBTC", "asset": "ELF", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "19.19754271453254", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ELF/BTC" @@ -2073,8 +2073,8 @@ "id": "ELFETH", "asset": "ELF", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "6.824727352142283", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ELF/ETH" @@ -2083,8 +2083,8 @@ "id": "AIONBTC", "asset": "AION", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "15.822784810126585", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "AION/BTC" @@ -2093,8 +2093,8 @@ "id": "AIONETH", "asset": "AION", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "5.617977528089888", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "AION/ETH" @@ -2103,18 +2103,18 @@ "id": "AIONBNB", "asset": "AION", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "24.078979051288226", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "AION/BNB" }, { "id": "NEBLBTC", "asset": "NEBL", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.4566194262011747", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "NEBL/BTC" @@ -2123,8 +2123,8 @@ "id": "NEBLETH", "asset": "NEBL", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.2214486380847687", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "NEBL/ETH" @@ -2133,18 +2133,18 @@ "id": "NEBLBNB", "asset": "NEBL", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "5.181078700585462", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "NEBL/BNB" }, { "id": "BRDBTC", "asset": "BRD", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "18.89287738522577", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BRD/BTC" @@ -2153,8 +2153,8 @@ "id": "BRDETH", "asset": "BRD", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "6.654245408570668", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "BRD/ETH" @@ -2163,28 +2163,28 @@ "id": "BRDBNB", "asset": "BRD", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "28.52253280091272", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "BRD/BNB" }, { "id": "MCOBNB", "asset": "MCO", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "2.2547914317925595", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "MCO/BNB" }, { "id": "EDOBTC", "asset": "EDO", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "7.55287009063444", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "EDO/BTC" @@ -2193,8 +2193,8 @@ "id": "EDOETH", "asset": "EDO", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.6730820636193533", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "EDO/ETH" @@ -2203,8 +2203,8 @@ "id": "WINGSBTC", "asset": "WINGS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "46.59832246039142", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "WINGS/BTC" @@ -2213,8 +2213,8 @@ "id": "WINGSETH", "asset": "WINGS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "16.578249336870027", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "WINGS/ETH" @@ -2223,8 +2223,8 @@ "id": "NAVBTC", "asset": "NAV", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "19.41747572815534", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "NAV/BTC" @@ -2233,8 +2233,8 @@ "id": "NAVETH", "asset": "NAV", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "6.901311249137336", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "NAV/ETH" @@ -2243,18 +2243,18 @@ "id": "NAVBNB", "asset": "NAV", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "28.943560057887122", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "NAV/BNB" }, { "id": "LUNBTC", "asset": "LUN", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.884303749764462", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "LUN/BTC" @@ -2263,8 +2263,8 @@ "id": "LUNETH", "asset": "LUN", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.6732193348592971", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "LUN/ETH" @@ -2273,8 +2273,8 @@ "id": "TRIGBTC", "asset": "TRIG", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "26.52519893899204", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "TRIG/BTC" @@ -2283,8 +2283,8 @@ "id": "TRIGETH", "asset": "TRIG", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "9.442870632672332", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "TRIG/ETH" @@ -2293,18 +2293,18 @@ "id": "TRIGBNB", "asset": "TRIG", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "40.306328093510686", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "TRIG/BNB" }, { "id": "APPCBTC", "asset": "APPC", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "59.95203836930456", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "APPC/BTC" @@ -2313,8 +2313,8 @@ "id": "APPCETH", "asset": "APPC", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "21.390374331550802", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "APPC/ETH" @@ -2323,18 +2323,18 @@ "id": "APPCBNB", "asset": "APPC", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "88.261253309797", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "APPC/BNB" }, { "id": "VIBEBTC", "asset": "VIBE", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "80.38585209003216", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "VIBE/BTC" @@ -2343,8 +2343,8 @@ "id": "VIBEETH", "asset": "VIBE", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "28.653295128939828", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "1.", "label": "VIBE/ETH" @@ -2353,8 +2353,8 @@ "id": "RLCBTC", "asset": "RLC", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "16.58374792703151", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "RLC/BTC" @@ -2363,8 +2363,8 @@ "id": "RLCETH", "asset": "RLC", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "5.920663114268798", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "RLC/ETH" @@ -2373,18 +2373,18 @@ "id": "RLCBNB", "asset": "RLC", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "24.75247524752475", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "RLC/BNB" }, { "id": "INSBTC", "asset": "INS", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "17.969451931716083", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "INS/BTC" @@ -2393,8 +2393,8 @@ "id": "INSETH", "asset": "INS", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "6.367398917542184", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "INS/ETH" @@ -2403,8 +2403,8 @@ "id": "PIVXBTC", "asset": "PIVX", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "5.932957579353308", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "PIVX/BTC" @@ -2413,8 +2413,8 @@ "id": "PIVXETH", "asset": "PIVX", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.113718030014796", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "PIVX/ETH" @@ -2423,18 +2423,18 @@ "id": "PIVXBNB", "asset": "PIVX", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "8.975854950184004", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "PIVX/BNB" }, { "id": "IOSTBTC", "asset": "IOST", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "526.3157894736842", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "IOST/BTC" @@ -2443,8 +2443,8 @@ "id": "IOSTETH", "asset": "IOST", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "187.09073900841906", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "IOST/ETH" @@ -2453,8 +2453,8 @@ "id": "CHATBTC", "asset": "CHAT", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "303.030303030303", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CHAT/BTC" @@ -2463,8 +2463,8 @@ "id": "CHATETH", "asset": "CHAT", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "107.45755426606492", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "CHAT/ETH" @@ -2473,8 +2473,8 @@ "id": "STEEMBTC", "asset": "STEEM", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "7.524454477050414", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "STEEM/BTC" @@ -2483,8 +2483,8 @@ "id": "STEEMETH", "asset": "STEEM", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.7041644131963225", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "STEEM/ETH" @@ -2493,48 +2493,48 @@ "id": "STEEMBNB", "asset": "STEEM", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "11.423349326022391", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "STEEM/BNB" }, { "id": "NANOBTC", - "asset": "XRB", + "asset": "NANO", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.9291154071470418", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", - "label": "XRB/BTC" + "label": "NANO/BTC" }, { "id": "NANOETH", - "asset": "XRB", + "asset": "NANO", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.0407993338884263", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", - "label": "XRB/ETH" + "label": "NANO/ETH" }, { "id": "NANOBNB", - "asset": "XRB", + "asset": "NANO", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "4.424778761061948", + "max_size": "10000000.00000000", "increment": "0.0001", "asset_increment": "0.01", - "label": "XRB/BNB" + "label": "NANO/BNB" }, { "id": "VIABTC", "asset": "VIA", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "10.638297872340427", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "VIA/BTC" @@ -2543,8 +2543,8 @@ "id": "VIAETH", "asset": "VIA", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.790750568612585", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "VIA/ETH" @@ -2553,18 +2553,18 @@ "id": "VIABNB", "asset": "VIA", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "16.39344262295082", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "VIA/BNB" }, { "id": "BLZBTC", "asset": "BLZ", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "52.05622071837585", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BLZ/BTC" @@ -2573,8 +2573,8 @@ "id": "BLZETH", "asset": "BLZ", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "18.54805801832548", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "BLZ/ETH" @@ -2583,18 +2583,18 @@ "id": "BLZBNB", "asset": "BLZ", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "78.74015748031496", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "BLZ/BNB" }, { "id": "AEBTC", "asset": "AE", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "6.114338122898197", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "AE/BTC" @@ -2603,8 +2603,8 @@ "id": "AEETH", "asset": "AE", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.1750951604132682", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "AE/ETH" @@ -2613,18 +2613,18 @@ "id": "AEBNB", "asset": "AE", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "9.206407659731171", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "AE/BNB" }, { "id": "RPXBTC", "asset": "RPX", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "RPX/BTC" @@ -2633,8 +2633,8 @@ "id": "RPXETH", "asset": "RPX", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "RPX/ETH" @@ -2643,18 +2643,18 @@ "id": "RPXBNB", "asset": "RPX", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "1", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "RPX/BNB" }, { "id": "NCASHBTC", "asset": "NCASH", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "1219.5121951219512", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "NCASH/BTC" @@ -2663,8 +2663,8 @@ "id": "NCASHETH", "asset": "NCASH", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "432.9004329004329", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "NCASH/ETH" @@ -2673,18 +2673,18 @@ "id": "NCASHBNB", "asset": "NCASH", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "1828.1535648994518", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "NCASH/BNB" }, { "id": "POABTC", "asset": "POA", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "78.4313725490196", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POA/BTC" @@ -2693,8 +2693,8 @@ "id": "POAETH", "asset": "POA", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "28.161081385525204", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "POA/ETH" @@ -2703,18 +2703,18 @@ "id": "POABNB", "asset": "POA", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "119.47431302270013", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "POA/BNB" }, { "id": "ZILBTC", "asset": "ZIL", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "187.26591760299627", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ZIL/BTC" @@ -2723,8 +2723,8 @@ "id": "ZILETH", "asset": "ZIL", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "66.86726847208291", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "ZIL/ETH" @@ -2733,18 +2733,18 @@ "id": "ZILBNB", "asset": "ZIL", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "283.60748723766307", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "ZIL/BNB" }, { "id": "ONTBTC", "asset": "ONT", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "3.3211557622052474", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "ONT/BTC" @@ -2753,8 +2753,8 @@ "id": "ONTETH", "asset": "ONT", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "1.1827321111768183", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "ONT/ETH" @@ -2763,18 +2763,18 @@ "id": "ONTBNB", "asset": "ONT", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "4.991016170892394", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "ONT/BNB" }, { "id": "STORMBTC", "asset": "STORM", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "793.6507936507936", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "STORM/BTC" @@ -2783,8 +2783,8 @@ "id": "STORMETH", "asset": "STORM", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "282.32636928289105", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "STORM/ETH" @@ -2793,27 +2793,27 @@ "id": "STORMBNB", "asset": "STORM", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "1216.54501216545", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "STORM/BNB" }, { "id": "QTUMBNB", "asset": "QTUM", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "2.5817111581556254", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "QTUM/BNB" }, { "id": "QTUMUSDT", "asset": "QTUM", "currency": "USDT", - "min_size": "0.00100000", + "min_size": "2.5726781579624394", "max_size": "10000000.00000000", "increment": "0.001", "asset_increment": "0.001", @@ -2823,8 +2823,8 @@ "id": "XEMBTC", "asset": "XEM", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "69.10850034554251", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XEM/BTC" @@ -2833,8 +2833,8 @@ "id": "XEMETH", "asset": "XEM", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "24.653616685567773", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "XEM/ETH" @@ -2843,18 +2843,18 @@ "id": "XEMBNB", "asset": "XEM", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "104.38413361169103", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "XEM/BNB" }, { "id": "WANBTC", "asset": "WAN", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "6.9930069930069925", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "WAN/BTC" @@ -2863,8 +2863,8 @@ "id": "WANETH", "asset": "WAN", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.4981264051961025", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "WAN/ETH" @@ -2873,18 +2873,18 @@ "id": "WANBNB", "asset": "WAN", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "10.622477161674102", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "WAN/BNB" }, { "id": "WPRBTC", "asset": "WPR", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "265.2519893899204", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "WPR/BTC" @@ -2893,8 +2893,8 @@ "id": "WPRETH", "asset": "WPR", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "93.68559115608019", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "WPR/ETH" @@ -2903,8 +2903,8 @@ "id": "QLCBTC", "asset": "QLC", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "118.2033096926714", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "QLC/BTC" @@ -2913,8 +2913,8 @@ "id": "QLCETH", "asset": "QLC", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "41.98857910648304", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "QLC/ETH" @@ -2923,8 +2923,8 @@ "id": "SYSBTC", "asset": "SYS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "71.63323782234957", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SYS/BTC" @@ -2933,8 +2933,8 @@ "id": "SYSETH", "asset": "SYS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "25.33698185872099", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "SYS/ETH" @@ -2943,28 +2943,28 @@ "id": "SYSBNB", "asset": "SYS", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "108.57763300760044", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "SYS/BNB" }, { "id": "QLCBNB", "asset": "QLC", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", - "increment": "0.00001", - "asset_increment": "0.01", + "min_size": "181.1594202898551", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", "label": "QLC/BNB" }, { "id": "GRSBTC", "asset": "GRS", "currency": "BTC", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "11.813349084465447", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "GRS/BTC" @@ -2973,8 +2973,8 @@ "id": "GRSETH", "asset": "GRS", "currency": "ETH", - "min_size": "1.00000000", - "max_size": "100000.00000000", + "min_size": "4.225971128165253", + "max_size": "90000000.00000000", "increment": "0.00000001", "asset_increment": "1.", "label": "GRS/ETH" @@ -2983,28 +2983,28 @@ "id": "ADAUSDT", "asset": "ADA", "currency": "USDT", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "116.22501162250116", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "ADA/USDT" }, { "id": "ADABNB", "asset": "ADA", "currency": "BNB", - "min_size": "0.01000000", - "max_size": "10000.00000000", + "min_size": "116.41443538998836", + "max_size": "90000000.00000000", "increment": "0.00001", - "asset_increment": "0.01", + "asset_increment": "0.1", "label": "ADA/BNB" }, { "id": "CLOAKBTC", "asset": "CLOAK", "currency": "BTC", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "2.7862914460852606", + "max_size": "90000000.00000000", "increment": "0.0000001", "asset_increment": "0.01", "label": "CLOAK/BTC" @@ -3013,10 +3013,920 @@ "id": "CLOAKETH", "asset": "CLOAK", "currency": "ETH", - "min_size": "0.01000000", - "max_size": "100000.00000000", + "min_size": "0.9872642906506071", + "max_size": "90000000.00000000", "increment": "0.000001", "asset_increment": "0.01", "label": "CLOAK/ETH" + }, + { + "id": "GNTBTC", + "asset": "GNT", + "currency": "BTC", + "min_size": "42.66211604095563", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "GNT/BTC" + }, + { + "id": "GNTETH", + "asset": "GNT", + "currency": "ETH", + "min_size": "15.167602002123465", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "GNT/ETH" + }, + { + "id": "GNTBNB", + "asset": "GNT", + "currency": "BNB", + "min_size": "64.14368184733803", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "GNT/BNB" + }, + { + "id": "LOOMBTC", + "asset": "LOOM", + "currency": "BTC", + "min_size": "61.462814996926866", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "LOOM/BTC" + }, + { + "id": "LOOMETH", + "asset": "LOOM", + "currency": "ETH", + "min_size": "21.765627720703463", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "LOOM/ETH" + }, + { + "id": "LOOMBNB", + "asset": "LOOM", + "currency": "BNB", + "min_size": "92.85051067780873", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "LOOM/BNB" + }, + { + "id": "XRPUSDT", + "asset": "XRP", + "currency": "USDT", + "min_size": "16.35309604990965", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "XRP/USDT" + }, + { + "id": "BCNBTC", + "asset": "BCN", + "currency": "BTC", + "min_size": "2857.1428571428573", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "BCN/BTC" + }, + { + "id": "BCNETH", + "asset": "BCN", + "currency": "ETH", + "min_size": "1013.1712259371834", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "BCN/ETH" + }, + { + "id": "BCNBNB", + "asset": "BCN", + "currency": "BNB", + "min_size": "4310.3448275862065", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "BCN/BNB" + }, + { + "id": "REPBTC", + "asset": "REP", + "currency": "BTC", + "min_size": "0.4819277108433735", + "max_size": "10000000.00000000", + "increment": "0.000001", + "asset_increment": "0.001", + "label": "REP/BTC" + }, + { + "id": "REPETH", + "asset": "REP", + "currency": "ETH", + "min_size": "0.17196904557179707", + "max_size": "10000000.00000000", + "increment": "0.00001", + "asset_increment": "0.001", + "label": "REP/ETH" + }, + { + "id": "REPBNB", + "asset": "REP", + "currency": "BNB", + "min_size": "0.7352941176470589", + "max_size": "10000000.00000000", + "increment": "0.001", + "asset_increment": "0.001", + "label": "REP/BNB" + }, + { + "id": "TUSDBTC", + "asset": "TUSD", + "currency": "BTC", + "min_size": "6.602403274792024", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "TUSD/BTC" + }, + { + "id": "TUSDETH", + "asset": "TUSD", + "currency": "ETH", + "min_size": "2.343297816749424", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "TUSD/ETH" + }, + { + "id": "TUSDBNB", + "asset": "TUSD", + "currency": "BNB", + "min_size": "9.939369843951892", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "TUSD/BNB" + }, + { + "id": "ZENBTC", + "asset": "ZEN", + "currency": "BTC", + "min_size": "0.3993610223642172", + "max_size": "10000000.00000000", + "increment": "0.000001", + "asset_increment": "0.001", + "label": "ZEN/BTC" + }, + { + "id": "ZENETH", + "asset": "ZEN", + "currency": "ETH", + "min_size": "0.14232849416453175", + "max_size": "10000000.00000000", + "increment": "0.00001", + "asset_increment": "0.001", + "label": "ZEN/ETH" + }, + { + "id": "ZENBNB", + "asset": "ZEN", + "currency": "BNB", + "min_size": "0.6038647342995169", + "max_size": "10000000.00000000", + "increment": "0.001", + "asset_increment": "0.001", + "label": "ZEN/BNB" + }, + { + "id": "SKYBTC", + "asset": "SKY", + "currency": "BTC", + "min_size": "1.9047619047619044", + "max_size": "10000000.00000000", + "increment": "0.000001", + "asset_increment": "0.001", + "label": "SKY/BTC" + }, + { + "id": "SKYETH", + "asset": "SKY", + "currency": "ETH", + "min_size": "0.6784260515603799", + "max_size": "10000000.00000000", + "increment": "0.00001", + "asset_increment": "0.001", + "label": "SKY/ETH" + }, + { + "id": "SKYBNB", + "asset": "SKY", + "currency": "BNB", + "min_size": "2.9239766081871346", + "max_size": "10000000.00000000", + "increment": "0.001", + "asset_increment": "0.001", + "label": "SKY/BNB" + }, + { + "id": "EOSUSDT", + "asset": "EOS", + "currency": "USDT", + "min_size": "1.7147070423018227", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "EOS/USDT" + }, + { + "id": "EOSBNB", + "asset": "EOS", + "currency": "BNB", + "min_size": "1.717032967032967", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "EOS/BNB" + }, + { + "id": "CVCBTC", + "asset": "CVC", + "currency": "BTC", + "min_size": "52.219321148825074", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "CVC/BTC" + }, + { + "id": "CVCETH", + "asset": "CVC", + "currency": "ETH", + "min_size": "18.557351494794663", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "CVC/ETH" + }, + { + "id": "CVCBNB", + "asset": "CVC", + "currency": "BNB", + "min_size": "78.24726134585289", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "CVC/BNB" + }, + { + "id": "THETABTC", + "asset": "THETA", + "currency": "BTC", + "min_size": "75.52870090634443", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "THETA/BTC" + }, + { + "id": "THETAETH", + "asset": "THETA", + "currency": "ETH", + "min_size": "26.968716289104638", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "THETA/ETH" + }, + { + "id": "THETABNB", + "asset": "THETA", + "currency": "BNB", + "min_size": "115.07479861910242", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "THETA/BNB" + }, + { + "id": "XRPBNB", + "asset": "XRP", + "currency": "BNB", + "min_size": "16.339869281045754", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "XRP/BNB" + }, + { + "id": "TUSDUSDT", + "asset": "TUSD", + "currency": "USDT", + "min_size": "9.957184108334163", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "TUSD/USDT" + }, + { + "id": "IOTAUSDT", + "asset": "IOTA", + "currency": "USDT", + "min_size": "17.543859649122805", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "IOTA/USDT" + }, + { + "id": "XLMUSDT", + "asset": "XLM", + "currency": "USDT", + "min_size": "3.8439361906592353", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "XLM/USDT" + }, + { + "id": "IOTXBTC", + "asset": "IOTX", + "currency": "BTC", + "min_size": "507.6142131979695", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "IOTX/BTC" + }, + { + "id": "IOTXETH", + "asset": "IOTX", + "currency": "ETH", + "min_size": "179.59770114942532", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "IOTX/ETH" + }, + { + "id": "QKCBTC", + "asset": "QKC", + "currency": "BTC", + "min_size": "138.88888888888889", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "QKC/BTC" + }, + { + "id": "QKCETH", + "asset": "QKC", + "currency": "ETH", + "min_size": "49.3583415597236", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "QKC/ETH" + }, + { + "id": "AGIBTC", + "asset": "AGI", + "currency": "BTC", + "min_size": "146.19883040935673", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "AGI/BTC" + }, + { + "id": "AGIETH", + "asset": "AGI", + "currency": "ETH", + "min_size": "51.99126546740148", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "AGI/ETH" + }, + { + "id": "AGIBNB", + "asset": "AGI", + "currency": "BNB", + "min_size": "218.3406113537118", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "AGI/BNB" + }, + { + "id": "NXSBTC", + "asset": "NXS", + "currency": "BTC", + "min_size": "7.993605115907274", + "max_size": "90000000.00000000", + "increment": "0.0000001", + "asset_increment": "0.01", + "label": "NXS/BTC" + }, + { + "id": "NXSETH", + "asset": "NXS", + "currency": "ETH", + "min_size": "2.849002849002849", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "0.01", + "label": "NXS/ETH" + }, + { + "id": "NXSBNB", + "asset": "NXS", + "currency": "BNB", + "min_size": "12.062726176115802", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "NXS/BNB" + }, + { + "id": "ENJBNB", + "asset": "ENJ", + "currency": "BNB", + "min_size": "165.53550736633008", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "ENJ/BNB" + }, + { + "id": "DATABTC", + "asset": "DATA", + "currency": "BTC", + "min_size": "149.92503748125938", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DATA/BTC" + }, + { + "id": "DATAETH", + "asset": "DATA", + "currency": "ETH", + "min_size": "53.42736549660736", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DATA/ETH" + }, + { + "id": "ONTUSDT", + "asset": "ONT", + "currency": "USDT", + "min_size": "5.006257822277847", + "max_size": "10000000.00000000", + "increment": "0.001", + "asset_increment": "0.001", + "label": "ONT/USDT" + }, + { + "id": "TRXBNB", + "asset": "TRX", + "currency": "BNB", + "min_size": "447.42729306487695", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "TRX/BNB" + }, + { + "id": "TRXUSDT", + "asset": "TRX", + "currency": "USDT", + "min_size": "447.22719141323796", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "TRX/USDT" + }, + { + "id": "ETCUSDT", + "asset": "ETC", + "currency": "USDT", + "min_size": "0.8783872809521719", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "ETC/USDT" + }, + { + "id": "ETCBNB", + "asset": "ETC", + "currency": "BNB", + "min_size": "0.8815232722143865", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "ETC/BNB" + }, + { + "id": "ICXUSDT", + "asset": "ICX", + "currency": "USDT", + "min_size": "15.20796897574329", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "ICX/USDT" + }, + { + "id": "SCBTC", + "asset": "SC", + "currency": "BTC", + "min_size": "1075.268817204301", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "SC/BTC" + }, + { + "id": "SCETH", + "asset": "SC", + "currency": "ETH", + "min_size": "383.5826620636747", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "SC/ETH" + }, + { + "id": "SCBNB", + "asset": "SC", + "currency": "BNB", + "min_size": "1639.3442622950818", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "SC/BNB" + }, + { + "id": "NPXSBTC", + "asset": "NPXS", + "currency": "BTC", + "min_size": "4347.826086956522", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "NPXS/BTC" + }, + { + "id": "NPXSETH", + "asset": "NPXS", + "currency": "ETH", + "min_size": "1515.151515151515", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "NPXS/ETH" + }, + { + "id": "VENUSDT", + "asset": "VEN", + "currency": "USDT", + "min_size": "5.428586938819826", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "VEN/USDT" + }, + { + "id": "KEYBTC", + "asset": "KEY", + "currency": "BTC", + "min_size": "1086.9565217391305", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "KEY/BTC" + }, + { + "id": "KEYETH", + "asset": "KEY", + "currency": "ETH", + "min_size": "381.3882532418002", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "KEY/ETH" + }, + { + "id": "NASBTC", + "asset": "NAS", + "currency": "BTC", + "min_size": "4.595588235294118", + "max_size": "90000000.00000000", + "increment": "0.0000001", + "asset_increment": "0.01", + "label": "NAS/BTC" + }, + { + "id": "NASETH", + "asset": "NAS", + "currency": "ETH", + "min_size": "1.6329196603527107", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "0.01", + "label": "NAS/ETH" + }, + { + "id": "NASBNB", + "asset": "NAS", + "currency": "BNB", + "min_size": "7.001820473323064", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "NAS/BNB" + }, + { + "id": "MFTBTC", + "asset": "MFT", + "currency": "BTC", + "min_size": "925.9259259259259", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "MFT/BTC" + }, + { + "id": "MFTETH", + "asset": "MFT", + "currency": "ETH", + "min_size": "328.62306933946763", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "MFT/ETH" + }, + { + "id": "MFTBNB", + "asset": "MFT", + "currency": "BNB", + "min_size": "1402.5245441795232", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "MFT/BNB" + }, + { + "id": "DENTBTC", + "asset": "DENT", + "currency": "BTC", + "min_size": "2941.176470588235", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DENT/BTC" + }, + { + "id": "DENTETH", + "asset": "DENT", + "currency": "ETH", + "min_size": "1054.8523206751054", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DENT/ETH" + }, + { + "id": "ARDRBTC", + "asset": "ARDR", + "currency": "BTC", + "min_size": "54.28881650380022", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "ARDR/BTC" + }, + { + "id": "ARDRETH", + "asset": "ARDR", + "currency": "ETH", + "min_size": "19.2130341223486", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "ARDR/ETH" + }, + { + "id": "ARDRBNB", + "asset": "ARDR", + "currency": "BNB", + "min_size": "82.98755186721992", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "ARDR/BNB" + }, + { + "id": "NULSUSDT", + "asset": "NULS", + "currency": "USDT", + "min_size": "8.374507997655137", + "max_size": "10000000.00000000", + "increment": "0.0001", + "asset_increment": "0.01", + "label": "NULS/USDT" + }, + { + "id": "HOTBTC", + "asset": "HOT", + "currency": "BTC", + "min_size": "6250", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "HOT/BTC" + }, + { + "id": "HOTETH", + "asset": "HOT", + "currency": "ETH", + "min_size": "2364.0661938534276", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "HOT/ETH" + }, + { + "id": "VETBTC", + "asset": "VET", + "currency": "BTC", + "min_size": "512.8205128205128", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "VET/BTC" + }, + { + "id": "VETETH", + "asset": "VET", + "currency": "ETH", + "min_size": "182.74853801169593", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "VET/ETH" + }, + { + "id": "VETUSDT", + "asset": "VET", + "currency": "USDT", + "min_size": "774.593338497289", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "VET/USDT" + }, + { + "id": "VETBNB", + "asset": "VET", + "currency": "BNB", + "min_size": "781.2499999999999", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "VET/BNB" + }, + { + "id": "DOCKBTC", + "asset": "DOCK", + "currency": "BTC", + "min_size": "358.4229390681004", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DOCK/BTC" + }, + { + "id": "DOCKETH", + "asset": "DOCK", + "currency": "ETH", + "min_size": "126.87135244861712", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "DOCK/ETH" + }, + { + "id": "POLYBTC", + "asset": "POLY", + "currency": "BTC", + "min_size": "38.270187523918864", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "POLY/BTC" + }, + { + "id": "POLYBNB", + "asset": "POLY", + "currency": "BNB", + "min_size": "57.4712643678161", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "POLY/BNB" + }, + { + "id": "PHXBTC", + "asset": "PHX", + "currency": "BTC", + "min_size": "492.61083743842363", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "PHX/BTC" + }, + { + "id": "PHXETH", + "asset": "PHX", + "currency": "ETH", + "min_size": "175.22340984755562", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "PHX/ETH" + }, + { + "id": "PHXBNB", + "asset": "PHX", + "currency": "BNB", + "min_size": "745.156482861401", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "PHX/BNB" + }, + { + "id": "HCBTC", + "asset": "HC", + "currency": "BTC", + "min_size": "2.9351335485764602", + "max_size": "90000000.00000000", + "increment": "0.0000001", + "asset_increment": "0.01", + "label": "HC/BTC" + }, + { + "id": "HCETH", + "asset": "HC", + "currency": "ETH", + "min_size": "1.0427528675703859", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "0.01", + "label": "HC/ETH" + }, + { + "id": "GOBTC", + "asset": "GO", + "currency": "BTC", + "min_size": "184.50184501845015", + "max_size": "90000000.00000000", + "increment": "0.00000001", + "asset_increment": "1.", + "label": "GO/BTC" + }, + { + "id": "GOBNB", + "asset": "GO", + "currency": "BNB", + "min_size": "283.5270768358378", + "max_size": "90000000.00000000", + "increment": "0.000001", + "asset_increment": "1.", + "label": "GO/BNB" + }, + { + "id": "PAXBNB", + "asset": "PAX", + "currency": "BNB", + "min_size": "9.990009990009991", + "max_size": "90000000.00000000", + "increment": "0.00001", + "asset_increment": "0.1", + "label": "PAX/BNB" } ] \ No newline at end of file diff --git a/extensions/exchanges/binance/update-products.sh b/extensions/exchanges/binance/update-products.sh index 505bd63609..9f974f14fb 100755 --- a/extensions/exchanges/binance/update-products.sh +++ b/extensions/exchanges/binance/update-products.sh @@ -21,12 +21,23 @@ new ccxt.binance().fetch_markets().then(function(markets) { break } + // The MIN_NOTIONAL filter defines the minimum notional value allowed for an order on a symbol. + // An orders notional value is the price * quantity. + // In order to know the Value it is necessary to know the price which does not come on this JSon. + // But I have the maxPrice which seems to be: price * 10 + var maxPrice = Number(market.info.filters[0].maxPrice); + var curPrice = maxPrice / 10; + var minNotional = Number(market.info.filters[2].minNotional); + var minNotionalQty = minNotional / curPrice; + var minQty = Number(market.info.filters[1].minQty); + var min_size = Math.max(minQty, minNotionalQty).toString(); + products.push({ id: market.id, asset: market.base, currency: market.quote, - min_size: market.info.filters[1].minQty, - max_size: market.info.filters[0].maxPrice, + min_size: min_size, + max_size: market.info.filters[1].maxQty, increment: currStepSize, asset_increment: assetStepSize, label: market.base + '/' + market.quote diff --git a/extensions/exchanges/bitfinex/exchange.js b/extensions/exchanges/bitfinex/exchange.js index 6bad4eb636..e30f950e16 100644 --- a/extensions/exchanges/bitfinex/exchange.js +++ b/extensions/exchanges/bitfinex/exchange.js @@ -407,7 +407,7 @@ module.exports = function bitfinex (conf) { ws_client.send([0, 'calc', null, [ ['wallet_exchange_' + opts.currency], - ['wallet_exchange_' + opts.wallet + '_' + opts.asset] + ['wallet_exchange_' + opts.asset] ]]) } catch (e) { if (so.debug) { diff --git a/extensions/exchanges/bitfinex/products.json b/extensions/exchanges/bitfinex/products.json index 28b4e044d6..2c05e66d64 100644 --- a/extensions/exchanges/bitfinex/products.json +++ b/extensions/exchanges/bitfinex/products.json @@ -10,23 +10,23 @@ { "asset": "LTC", "currency": "USD", - "min_size": "0.08", + "min_size": "0.2", "max_size": "5000.0", - "increment": "0.001", + "increment": "0.0001", "label": "LTC/USD" }, { "asset": "LTC", "currency": "BTC", - "min_size": "0.08", + "min_size": "0.2", "max_size": "5000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "LTC/BTC" }, { "asset": "ETH", "currency": "USD", - "min_size": "0.02", + "min_size": "0.06", "max_size": "5000.0", "increment": "0.001", "label": "ETH/USD" @@ -34,7 +34,7 @@ { "asset": "ETH", "currency": "BTC", - "min_size": "0.02", + "min_size": "0.06", "max_size": "5000.0", "increment": "0.000001", "label": "ETH/BTC" @@ -42,7 +42,7 @@ { "asset": "ETC", "currency": "BTC", - "min_size": "0.8", + "min_size": "1.0", "max_size": "100000.0", "increment": "0.0000001", "label": "ETC/BTC" @@ -50,7 +50,7 @@ { "asset": "ETC", "currency": "USD", - "min_size": "0.8", + "min_size": "1.0", "max_size": "100000.0", "increment": "0.0001", "label": "ETC/USD" @@ -58,7 +58,7 @@ { "asset": "RRT", "currency": "USD", - "min_size": "210.0", + "min_size": "294.0", "max_size": "100000.0", "increment": "0.0000001", "label": "RRT/USD" @@ -66,7 +66,7 @@ { "asset": "RRT", "currency": "BTC", - "min_size": "210.0", + "min_size": "294.0", "max_size": "100000.0", "increment": "0.0000000001", "label": "RRT/BTC" @@ -74,7 +74,7 @@ { "asset": "ZEC", "currency": "USD", - "min_size": "0.06", + "min_size": "0.1", "max_size": "20000.0", "increment": "0.001", "label": "ZEC/USD" @@ -82,7 +82,7 @@ { "asset": "ZEC", "currency": "BTC", - "min_size": "0.06", + "min_size": "0.1", "max_size": "20000.0", "increment": "0.000001", "label": "ZEC/BTC" @@ -90,23 +90,23 @@ { "asset": "XMR", "currency": "USD", - "min_size": "0.06", + "min_size": "0.2", "max_size": "5000.0", - "increment": "0.001", + "increment": "0.0001", "label": "XMR/USD" }, { "asset": "XMR", "currency": "BTC", - "min_size": "0.06", + "min_size": "0.2", "max_size": "5000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "XMR/BTC" }, { "asset": "DSH", "currency": "USD", - "min_size": "0.04", + "min_size": "0.08", "max_size": "5000.0", "increment": "0.001", "label": "DSH/USD" @@ -114,7 +114,7 @@ { "asset": "DSH", "currency": "BTC", - "min_size": "0.04", + "min_size": "0.08", "max_size": "5000.0", "increment": "0.000001", "label": "DSH/BTC" @@ -138,23 +138,23 @@ { "asset": "XRP", "currency": "USD", - "min_size": "22.0", + "min_size": "38.0", "max_size": "200000.0", - "increment": "0.00001", + "increment": "0.000001", "label": "XRP/USD" }, { "asset": "XRP", "currency": "BTC", - "min_size": "22.0", + "min_size": "38.0", "max_size": "200000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "XRP/BTC" }, { "asset": "IOT", "currency": "USD", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00001", "label": "IOT/USD" @@ -162,7 +162,7 @@ { "asset": "IOT", "currency": "BTC", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00000001", "label": "IOT/BTC" @@ -170,7 +170,7 @@ { "asset": "IOT", "currency": "ETH", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00000001", "label": "IOT/ETH" @@ -202,7 +202,7 @@ { "asset": "SAN", "currency": "USD", - "min_size": "10.0", + "min_size": "24.0", "max_size": "200000.0", "increment": "0.00001", "label": "SAN/USD" @@ -210,7 +210,7 @@ { "asset": "SAN", "currency": "BTC", - "min_size": "10.0", + "min_size": "24.0", "max_size": "200000.0", "increment": "0.00000001", "label": "SAN/BTC" @@ -218,7 +218,7 @@ { "asset": "SAN", "currency": "ETH", - "min_size": "10.0", + "min_size": "24.0", "max_size": "200000.0", "increment": "0.00000001", "label": "SAN/ETH" @@ -226,7 +226,7 @@ { "asset": "OMG", "currency": "USD", - "min_size": "2.0", + "min_size": "4.0", "max_size": "100000.0", "increment": "0.00001", "label": "OMG/USD" @@ -234,7 +234,7 @@ { "asset": "OMG", "currency": "BTC", - "min_size": "2.0", + "min_size": "4.0", "max_size": "100000.0", "increment": "0.00000001", "label": "OMG/BTC" @@ -242,7 +242,7 @@ { "asset": "OMG", "currency": "ETH", - "min_size": "2.0", + "min_size": "4.0", "max_size": "100000.0", "increment": "0.00000001", "label": "OMG/ETH" @@ -274,7 +274,7 @@ { "asset": "NEO", "currency": "USD", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0001", "label": "NEO/USD" @@ -282,7 +282,7 @@ { "asset": "NEO", "currency": "BTC", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0000001", "label": "NEO/BTC" @@ -290,7 +290,7 @@ { "asset": "NEO", "currency": "ETH", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0000001", "label": "NEO/ETH" @@ -298,7 +298,7 @@ { "asset": "ETP", "currency": "USD", - "min_size": "16.0", + "min_size": "8.0", "max_size": "10000.0", "increment": "0.00001", "label": "ETP/USD" @@ -306,7 +306,7 @@ { "asset": "ETP", "currency": "BTC", - "min_size": "16.0", + "min_size": "8.0", "max_size": "10000.0", "increment": "0.00000001", "label": "ETP/BTC" @@ -314,7 +314,7 @@ { "asset": "ETP", "currency": "ETH", - "min_size": "16.0", + "min_size": "8.0", "max_size": "10000.0", "increment": "0.00000001", "label": "ETP/ETH" @@ -322,31 +322,31 @@ { "asset": "QTM", "currency": "USD", - "min_size": "0.8", + "min_size": "4.0", "max_size": "2000.0", - "increment": "0.0001", + "increment": "0.00001", "label": "QTM/USD" }, { "asset": "QTM", "currency": "BTC", - "min_size": "0.8", + "min_size": "4.0", "max_size": "2000.0", - "increment": "0.0000001", + "increment": "0.00000001", "label": "QTM/BTC" }, { "asset": "QTM", "currency": "ETH", - "min_size": "0.8", + "min_size": "4.0", "max_size": "2000.0", - "increment": "0.0000001", + "increment": "0.00000001", "label": "QTM/ETH" }, { "asset": "AVT", "currency": "USD", - "min_size": "12.0", + "min_size": "26.0", "max_size": "50000.0", "increment": "0.00001", "label": "AVT/USD" @@ -354,7 +354,7 @@ { "asset": "AVT", "currency": "BTC", - "min_size": "12.0", + "min_size": "26.0", "max_size": "50000.0", "increment": "0.00000001", "label": "AVT/BTC" @@ -362,7 +362,7 @@ { "asset": "AVT", "currency": "ETH", - "min_size": "12.0", + "min_size": "26.0", "max_size": "50000.0", "increment": "0.00000001", "label": "AVT/ETH" @@ -370,7 +370,7 @@ { "asset": "EDO", "currency": "USD", - "min_size": "8.0", + "min_size": "16.0", "max_size": "50000.0", "increment": "0.00001", "label": "EDO/USD" @@ -378,7 +378,7 @@ { "asset": "EDO", "currency": "BTC", - "min_size": "8.0", + "min_size": "16.0", "max_size": "50000.0", "increment": "0.00000001", "label": "EDO/BTC" @@ -386,7 +386,7 @@ { "asset": "EDO", "currency": "ETH", - "min_size": "8.0", + "min_size": "16.0", "max_size": "50000.0", "increment": "0.00000001", "label": "EDO/ETH" @@ -394,7 +394,7 @@ { "asset": "BTG", "currency": "USD", - "min_size": "0.2", + "min_size": "0.6", "max_size": "2000.0", "increment": "0.0001", "label": "BTG/USD" @@ -402,7 +402,7 @@ { "asset": "BTG", "currency": "BTC", - "min_size": "0.2", + "min_size": "0.6", "max_size": "2000.0", "increment": "0.0000001", "label": "BTG/BTC" @@ -410,7 +410,7 @@ { "asset": "DAT", "currency": "USD", - "min_size": "194.0", + "min_size": "352.0", "max_size": "250000.0", "increment": "0.0000001", "label": "DAT/USD" @@ -418,7 +418,7 @@ { "asset": "DAT", "currency": "BTC", - "min_size": "194.0", + "min_size": "352.0", "max_size": "250000.0", "increment": "0.0000000001", "label": "DAT/BTC" @@ -426,7 +426,7 @@ { "asset": "DAT", "currency": "ETH", - "min_size": "194.0", + "min_size": "352.0", "max_size": "250000.0", "increment": "0.0000000001", "label": "DAT/ETH" @@ -434,31 +434,31 @@ { "asset": "QSH", "currency": "USD", - "min_size": "20.0", + "min_size": "68.0", "max_size": "50000.0", - "increment": "0.00001", + "increment": "0.000001", "label": "QSH/USD" }, { "asset": "QSH", "currency": "BTC", - "min_size": "20.0", + "min_size": "68.0", "max_size": "50000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "QSH/BTC" }, { "asset": "QSH", "currency": "ETH", - "min_size": "20.0", + "min_size": "68.0", "max_size": "50000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "QSH/ETH" }, { "asset": "YYW", "currency": "USD", - "min_size": "148.0", + "min_size": "510.0", "max_size": "50000.0", "increment": "0.0000001", "label": "YYW/USD" @@ -466,7 +466,7 @@ { "asset": "YYW", "currency": "BTC", - "min_size": "148.0", + "min_size": "510.0", "max_size": "50000.0", "increment": "0.0000000001", "label": "YYW/BTC" @@ -474,7 +474,7 @@ { "asset": "YYW", "currency": "ETH", - "min_size": "148.0", + "min_size": "510.0", "max_size": "50000.0", "increment": "0.0000000001", "label": "YYW/ETH" @@ -482,7 +482,7 @@ { "asset": "GNT", "currency": "USD", - "min_size": "50.0", + "min_size": "80.0", "max_size": "200000.0", "increment": "0.000001", "label": "GNT/USD" @@ -490,7 +490,7 @@ { "asset": "GNT", "currency": "BTC", - "min_size": "50.0", + "min_size": "80.0", "max_size": "200000.0", "increment": "0.000000001", "label": "GNT/BTC" @@ -498,7 +498,7 @@ { "asset": "GNT", "currency": "ETH", - "min_size": "50.0", + "min_size": "80.0", "max_size": "200000.0", "increment": "0.000000001", "label": "GNT/ETH" @@ -506,31 +506,31 @@ { "asset": "SNT", "currency": "USD", - "min_size": "120.0", + "min_size": "318.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "SNT/USD" }, { "asset": "SNT", "currency": "BTC", - "min_size": "120.0", + "min_size": "318.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "SNT/BTC" }, { "asset": "SNT", "currency": "ETH", - "min_size": "120.0", + "min_size": "318.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "SNT/ETH" }, { "asset": "IOT", "currency": "EUR", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00000001", "label": "IOT/EUR" @@ -538,7 +538,7 @@ { "asset": "BAT", "currency": "USD", - "min_size": "54.0", + "min_size": "70.0", "max_size": "200000.0", "increment": "0.000001", "label": "BAT/USD" @@ -546,7 +546,7 @@ { "asset": "BAT", "currency": "BTC", - "min_size": "54.0", + "min_size": "70.0", "max_size": "200000.0", "increment": "0.000000001", "label": "BAT/BTC" @@ -554,7 +554,7 @@ { "asset": "BAT", "currency": "ETH", - "min_size": "54.0", + "min_size": "70.0", "max_size": "200000.0", "increment": "0.000000001", "label": "BAT/ETH" @@ -562,7 +562,7 @@ { "asset": "MNA", "currency": "USD", - "min_size": "150.0", + "min_size": "164.0", "max_size": "200000.0", "increment": "0.0000001", "label": "MNA/USD" @@ -570,7 +570,7 @@ { "asset": "MNA", "currency": "BTC", - "min_size": "150.0", + "min_size": "164.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "MNA/BTC" @@ -578,7 +578,7 @@ { "asset": "MNA", "currency": "ETH", - "min_size": "150.0", + "min_size": "164.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "MNA/ETH" @@ -586,7 +586,7 @@ { "asset": "FUN", "currency": "USD", - "min_size": "338.0", + "min_size": "812.0", "max_size": "200000.0", "increment": "0.0000001", "label": "FUN/USD" @@ -594,7 +594,7 @@ { "asset": "FUN", "currency": "BTC", - "min_size": "338.0", + "min_size": "812.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "FUN/BTC" @@ -602,7 +602,7 @@ { "asset": "FUN", "currency": "ETH", - "min_size": "338.0", + "min_size": "812.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "FUN/ETH" @@ -610,7 +610,7 @@ { "asset": "ZRX", "currency": "USD", - "min_size": "22.0", + "min_size": "20.0", "max_size": "200000.0", "increment": "0.00001", "label": "ZRX/USD" @@ -618,7 +618,7 @@ { "asset": "ZRX", "currency": "BTC", - "min_size": "22.0", + "min_size": "20.0", "max_size": "200000.0", "increment": "0.00000001", "label": "ZRX/BTC" @@ -626,7 +626,7 @@ { "asset": "ZRX", "currency": "ETH", - "min_size": "22.0", + "min_size": "20.0", "max_size": "200000.0", "increment": "0.00000001", "label": "ZRX/ETH" @@ -634,7 +634,7 @@ { "asset": "TNB", "currency": "USD", - "min_size": "398.0", + "min_size": "1302.0", "max_size": "200000.0", "increment": "0.0000001", "label": "TNB/USD" @@ -642,7 +642,7 @@ { "asset": "TNB", "currency": "BTC", - "min_size": "398.0", + "min_size": "1302.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "TNB/BTC" @@ -650,7 +650,7 @@ { "asset": "TNB", "currency": "ETH", - "min_size": "398.0", + "min_size": "1302.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "TNB/ETH" @@ -658,31 +658,31 @@ { "asset": "SPK", "currency": "USD", - "min_size": "92.0", + "min_size": "288.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "SPK/USD" }, { "asset": "SPK", "currency": "BTC", - "min_size": "92.0", + "min_size": "288.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "SPK/BTC" }, { "asset": "SPK", "currency": "ETH", - "min_size": "92.0", + "min_size": "288.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "SPK/ETH" }, { "asset": "TRX", "currency": "USD", - "min_size": "354.0", + "min_size": "548.0", "max_size": "1000000.0", "increment": "0.0000001", "label": "TRX/USD" @@ -690,7 +690,7 @@ { "asset": "TRX", "currency": "BTC", - "min_size": "354.0", + "min_size": "548.0", "max_size": "1000000.0", "increment": "0.0000000001", "label": "TRX/BTC" @@ -698,7 +698,7 @@ { "asset": "TRX", "currency": "ETH", - "min_size": "354.0", + "min_size": "548.0", "max_size": "1000000.0", "increment": "0.0000000001", "label": "TRX/ETH" @@ -706,79 +706,79 @@ { "asset": "RCN", "currency": "USD", - "min_size": "130.0", + "min_size": "518.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "RCN/USD" }, { "asset": "RCN", "currency": "BTC", - "min_size": "130.0", + "min_size": "518.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "RCN/BTC" }, { "asset": "RCN", "currency": "ETH", - "min_size": "130.0", + "min_size": "518.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "RCN/ETH" }, { "asset": "RLC", "currency": "USD", - "min_size": "12.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00001", + "increment": "0.000001", "label": "RLC/USD" }, { "asset": "RLC", "currency": "BTC", - "min_size": "12.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "RLC/BTC" }, { "asset": "RLC", "currency": "ETH", - "min_size": "12.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "RLC/ETH" }, { "asset": "AID", "currency": "USD", - "min_size": "74.0", + "min_size": "208.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "AID/USD" }, { "asset": "AID", "currency": "BTC", - "min_size": "74.0", + "min_size": "208.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "AID/BTC" }, { "asset": "AID", "currency": "ETH", - "min_size": "74.0", + "min_size": "208.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "AID/ETH" }, { "asset": "SNG", "currency": "USD", - "min_size": "192.0", + "min_size": "562.0", "max_size": "200000.0", "increment": "0.0000001", "label": "SNG/USD" @@ -786,7 +786,7 @@ { "asset": "SNG", "currency": "BTC", - "min_size": "190.0", + "min_size": "562.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "SNG/BTC" @@ -794,7 +794,7 @@ { "asset": "SNG", "currency": "ETH", - "min_size": "190.0", + "min_size": "562.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "SNG/ETH" @@ -802,7 +802,7 @@ { "asset": "REP", "currency": "USD", - "min_size": "0.4", + "min_size": "0.8", "max_size": "1000.0", "increment": "0.0001", "label": "REP/USD" @@ -810,7 +810,7 @@ { "asset": "REP", "currency": "BTC", - "min_size": "0.4", + "min_size": "0.8", "max_size": "1000.0", "increment": "0.0000001", "label": "REP/BTC" @@ -818,7 +818,7 @@ { "asset": "REP", "currency": "ETH", - "min_size": "0.4", + "min_size": "0.8", "max_size": "1000.0", "increment": "0.0000001", "label": "REP/ETH" @@ -826,25 +826,25 @@ { "asset": "ELF", "currency": "USD", - "min_size": "20.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00001", + "increment": "0.000001", "label": "ELF/USD" }, { "asset": "ELF", "currency": "BTC", - "min_size": "20.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "ELF/BTC" }, { "asset": "ELF", "currency": "ETH", - "min_size": "20.0", + "min_size": "32.0", "max_size": "25000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "ELF/ETH" }, { @@ -858,7 +858,7 @@ { "asset": "ETH", "currency": "EUR", - "min_size": "0.02", + "min_size": "0.06", "max_size": "5000.0", "increment": "0.000001", "label": "ETH/EUR" @@ -866,7 +866,7 @@ { "asset": "ETH", "currency": "JPY", - "min_size": "0.02", + "min_size": "0.06", "max_size": "5000.0", "increment": "0.000001", "label": "ETH/JPY" @@ -874,7 +874,7 @@ { "asset": "ETH", "currency": "GBP", - "min_size": "0.02", + "min_size": "0.06", "max_size": "5000.0", "increment": "0.000001", "label": "ETH/GBP" @@ -882,7 +882,7 @@ { "asset": "NEO", "currency": "EUR", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0000001", "label": "NEO/EUR" @@ -890,7 +890,7 @@ { "asset": "NEO", "currency": "JPY", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0000001", "label": "NEO/JPY" @@ -898,7 +898,7 @@ { "asset": "NEO", "currency": "GBP", - "min_size": "0.2", + "min_size": "0.6", "max_size": "10000.0", "increment": "0.0000001", "label": "NEO/GBP" @@ -930,7 +930,7 @@ { "asset": "IOT", "currency": "JPY", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00000001", "label": "IOT/JPY" @@ -938,7 +938,7 @@ { "asset": "IOT", "currency": "GBP", - "min_size": "10.0", + "min_size": "20.0", "max_size": "100000.0", "increment": "0.00000001", "label": "IOT/GBP" @@ -946,7 +946,7 @@ { "asset": "IOS", "currency": "USD", - "min_size": "324.0", + "min_size": "882.0", "max_size": "200000.0", "increment": "0.0000001", "label": "IOS/USD" @@ -954,7 +954,7 @@ { "asset": "IOS", "currency": "BTC", - "min_size": "324.0", + "min_size": "882.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "IOS/BTC" @@ -962,7 +962,7 @@ { "asset": "IOS", "currency": "ETH", - "min_size": "324.0", + "min_size": "882.0", "max_size": "200000.0", "increment": "0.0000000001", "label": "IOS/ETH" @@ -970,7 +970,7 @@ { "asset": "AIO", "currency": "USD", - "min_size": "4.0", + "min_size": "24.0", "max_size": "20000.0", "increment": "0.00001", "label": "AIO/USD" @@ -978,7 +978,7 @@ { "asset": "AIO", "currency": "BTC", - "min_size": "4.0", + "min_size": "24.0", "max_size": "20000.0", "increment": "0.00000001", "label": "AIO/BTC" @@ -986,7 +986,7 @@ { "asset": "AIO", "currency": "ETH", - "min_size": "4.0", + "min_size": "24.0", "max_size": "20000.0", "increment": "0.00000001", "label": "AIO/ETH" @@ -994,97 +994,97 @@ { "asset": "REQ", "currency": "USD", - "min_size": "64.0", + "min_size": "302.0", "max_size": "100000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "REQ/USD" }, { "asset": "REQ", "currency": "BTC", - "min_size": "64.0", + "min_size": "302.0", "max_size": "100000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "REQ/BTC" }, { "asset": "REQ", "currency": "ETH", - "min_size": "64.0", + "min_size": "302.0", "max_size": "100000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "REQ/ETH" }, { "asset": "RDN", "currency": "USD", - "min_size": "8.0", + "min_size": "32.0", "max_size": "20000.0", - "increment": "0.00001", + "increment": "0.000001", "label": "RDN/USD" }, { "asset": "RDN", "currency": "BTC", - "min_size": "8.0", + "min_size": "32.0", "max_size": "20000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "RDN/BTC" }, { "asset": "RDN", "currency": "ETH", - "min_size": "8.0", + "min_size": "32.0", "max_size": "20000.0", - "increment": "0.00000001", + "increment": "0.000000001", "label": "RDN/ETH" }, { "asset": "LRC", "currency": "USD", - "min_size": "26.0", + "min_size": "134.0", "max_size": "50000.0", - "increment": "0.00001", + "increment": "0.0000001", "label": "LRC/USD" }, { "asset": "LRC", "currency": "BTC", - "min_size": "26.0", + "min_size": "134.0", "max_size": "50000.0", - "increment": "0.00000001", + "increment": "0.0000000001", "label": "LRC/BTC" }, { "asset": "LRC", "currency": "ETH", - "min_size": "26.0", + "min_size": "134.0", "max_size": "50000.0", - "increment": "0.00000001", + "increment": "0.0000000001", "label": "LRC/ETH" }, { "asset": "WAX", "currency": "USD", - "min_size": "58.0", + "min_size": "166.0", "max_size": "50000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "WAX/USD" }, { "asset": "WAX", "currency": "BTC", - "min_size": "58.0", + "min_size": "166.0", "max_size": "50000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "WAX/BTC" }, { "asset": "WAX", "currency": "ETH", - "min_size": "58.0", + "min_size": "166.0", "max_size": "50000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "WAX/ETH" }, { @@ -1114,7 +1114,7 @@ { "asset": "CFI", "currency": "USD", - "min_size": "142.0", + "min_size": "566.0", "max_size": "40000.0", "increment": "0.0000001", "label": "CFI/USD" @@ -1122,7 +1122,7 @@ { "asset": "CFI", "currency": "BTC", - "min_size": "142.0", + "min_size": "566.0", "max_size": "40000.0", "increment": "0.0000000001", "label": "CFI/BTC" @@ -1130,7 +1130,7 @@ { "asset": "CFI", "currency": "ETH", - "min_size": "142.0", + "min_size": "566.0", "max_size": "40000.0", "increment": "0.0000000001", "label": "CFI/ETH" @@ -1138,97 +1138,1169 @@ { "asset": "AGI", "currency": "USD", - "min_size": "74.0", + "min_size": "268.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "AGI/USD" }, { "asset": "AGI", "currency": "BTC", - "min_size": "74.0", + "min_size": "268.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "AGI/BTC" }, { "asset": "AGI", "currency": "ETH", - "min_size": "74.0", + "min_size": "268.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "AGI/ETH" }, { "asset": "BFT", "currency": "USD", - "min_size": "104.0", + "min_size": "260.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "BFT/USD" }, { "asset": "BFT", "currency": "BTC", - "min_size": "104.0", + "min_size": "260.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "BFT/BTC" }, { "asset": "BFT", "currency": "ETH", - "min_size": "104.0", + "min_size": "260.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "BFT/ETH" }, { "asset": "MTN", "currency": "USD", - "min_size": "116.0", + "min_size": "446.0", "max_size": "200000.0", - "increment": "0.000001", + "increment": "0.0000001", "label": "MTN/USD" }, { "asset": "MTN", "currency": "BTC", - "min_size": "116.0", + "min_size": "446.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "MTN/BTC" }, { "asset": "MTN", "currency": "ETH", - "min_size": "116.0", + "min_size": "446.0", "max_size": "200000.0", - "increment": "0.000000001", + "increment": "0.0000000001", "label": "MTN/ETH" }, { "asset": "ODE", "currency": "USD", - "min_size": "174.0", + "min_size": "76.0", "max_size": "200000.0", - "increment": "0.0000001", + "increment": "0.000001", "label": "ODE/USD" }, { "asset": "ODE", "currency": "BTC", - "min_size": "174.0", + "min_size": "76.0", "max_size": "200000.0", - "increment": "0.0000000001", + "increment": "0.000000001", "label": "ODE/BTC" }, { "asset": "ODE", "currency": "ETH", - "min_size": "174.0", + "min_size": "76.0", "max_size": "200000.0", - "increment": "0.0000000001", + "increment": "0.000000001", "label": "ODE/ETH" + }, + { + "asset": "ANT", + "currency": "USD", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00001", + "label": "ANT/USD" + }, + { + "asset": "ANT", + "currency": "BTC", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00000001", + "label": "ANT/BTC" + }, + { + "asset": "ANT", + "currency": "ETH", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00000001", + "label": "ANT/ETH" + }, + { + "asset": "DTH", + "currency": "USD", + "min_size": "618.0", + "max_size": "100000.0", + "increment": "0.0000001", + "label": "DTH/USD" + }, + { + "asset": "DTH", + "currency": "BTC", + "min_size": "618.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "DTH/BTC" + }, + { + "asset": "DTH", + "currency": "ETH", + "min_size": "618.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "DTH/ETH" + }, + { + "asset": "MIT", + "currency": "USD", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000001", + "label": "MIT/USD" + }, + { + "asset": "MIT", + "currency": "BTC", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000000001", + "label": "MIT/BTC" + }, + { + "asset": "MIT", + "currency": "ETH", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000000001", + "label": "MIT/ETH" + }, + { + "asset": "STJ", + "currency": "USD", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000001", + "label": "STJ/USD" + }, + { + "asset": "STJ", + "currency": "BTC", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000000001", + "label": "STJ/BTC" + }, + { + "asset": "STJ", + "currency": "ETH", + "min_size": "40.0", + "max_size": "30000.0", + "increment": "0.000000001", + "label": "STJ/ETH" + }, + { + "asset": "XLM", + "currency": "USD", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000001", + "label": "XLM/USD" + }, + { + "asset": "XLM", + "currency": "EUR", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "XLM/EUR" + }, + { + "asset": "XLM", + "currency": "JPY", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "XLM/JPY" + }, + { + "asset": "XLM", + "currency": "GBP", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "XLM/GBP" + }, + { + "asset": "XLM", + "currency": "BTC", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "XLM/BTC" + }, + { + "asset": "XLM", + "currency": "ETH", + "min_size": "56.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "XLM/ETH" + }, + { + "asset": "XVG", + "currency": "USD", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "XVG/USD" + }, + { + "asset": "XVG", + "currency": "EUR", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XVG/EUR" + }, + { + "asset": "XVG", + "currency": "JPY", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XVG/JPY" + }, + { + "asset": "XVG", + "currency": "GBP", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XVG/GBP" + }, + { + "asset": "XVG", + "currency": "BTC", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XVG/BTC" + }, + { + "asset": "XVG", + "currency": "ETH", + "min_size": "784.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XVG/ETH" + }, + { + "asset": "BCI", + "currency": "USD", + "min_size": "8.0", + "max_size": "5000.0", + "increment": "0.00001", + "label": "BCI/USD" + }, + { + "asset": "BCI", + "currency": "BTC", + "min_size": "8.0", + "max_size": "5000.0", + "increment": "0.00000001", + "label": "BCI/BTC" + }, + { + "asset": "MKR", + "currency": "USD", + "min_size": "0.04", + "max_size": "50.0", + "increment": "0.001", + "label": "MKR/USD" + }, + { + "asset": "MKR", + "currency": "BTC", + "min_size": "0.04", + "max_size": "50.0", + "increment": "0.000001", + "label": "MKR/BTC" + }, + { + "asset": "MKR", + "currency": "ETH", + "min_size": "0.04", + "max_size": "50.0", + "increment": "0.000001", + "label": "MKR/ETH" + }, + { + "asset": "KNC", + "currency": "USD", + "min_size": "28.0", + "max_size": "20000.0", + "increment": "0.00001", + "label": "KNC/USD" + }, + { + "asset": "KNC", + "currency": "BTC", + "min_size": "28.0", + "max_size": "20000.0", + "increment": "0.00000001", + "label": "KNC/BTC" + }, + { + "asset": "KNC", + "currency": "ETH", + "min_size": "28.0", + "max_size": "20000.0", + "increment": "0.00000001", + "label": "KNC/ETH" + }, + { + "asset": "POA", + "currency": "USD", + "min_size": "184.0", + "max_size": "150000.0", + "increment": "0.0000001", + "label": "POA/USD" + }, + { + "asset": "POA", + "currency": "BTC", + "min_size": "184.0", + "max_size": "150000.0", + "increment": "0.0000000001", + "label": "POA/BTC" + }, + { + "asset": "POA", + "currency": "ETH", + "min_size": "184.0", + "max_size": "150000.0", + "increment": "0.0000000001", + "label": "POA/ETH" + }, + { + "asset": "LYM", + "currency": "USD", + "min_size": "874.0", + "max_size": "400000.0", + "increment": "0.0000001", + "label": "LYM/USD" + }, + { + "asset": "LYM", + "currency": "BTC", + "min_size": "874.0", + "max_size": "400000.0", + "increment": "0.0000000001", + "label": "LYM/BTC" + }, + { + "asset": "LYM", + "currency": "ETH", + "min_size": "874.0", + "max_size": "400000.0", + "increment": "0.0000000001", + "label": "LYM/ETH" + }, + { + "asset": "UTK", + "currency": "USD", + "min_size": "426.0", + "max_size": "300000.0", + "increment": "0.0000001", + "label": "UTK/USD" + }, + { + "asset": "UTK", + "currency": "BTC", + "min_size": "426.0", + "max_size": "300000.0", + "increment": "0.0000000001", + "label": "UTK/BTC" + }, + { + "asset": "UTK", + "currency": "ETH", + "min_size": "426.0", + "max_size": "300000.0", + "increment": "0.0000000001", + "label": "UTK/ETH" + }, + { + "asset": "VEE", + "currency": "USD", + "min_size": "1114.0", + "max_size": "800000.0", + "increment": "0.0000001", + "label": "VEE/USD" + }, + { + "asset": "VEE", + "currency": "BTC", + "min_size": "1114.0", + "max_size": "800000.0", + "increment": "0.0000000001", + "label": "VEE/BTC" + }, + { + "asset": "VEE", + "currency": "ETH", + "min_size": "1114.0", + "max_size": "800000.0", + "increment": "0.0000000001", + "label": "VEE/ETH" + }, + { + "asset": "DAD", + "currency": "USD", + "min_size": "140.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "DAD/USD" + }, + { + "asset": "DAD", + "currency": "BTC", + "min_size": "140.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "DAD/BTC" + }, + { + "asset": "DAD", + "currency": "ETH", + "min_size": "140.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "DAD/ETH" + }, + { + "asset": "ORS", + "currency": "USD", + "min_size": "476.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "ORS/USD" + }, + { + "asset": "ORS", + "currency": "BTC", + "min_size": "476.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ORS/BTC" + }, + { + "asset": "ORS", + "currency": "ETH", + "min_size": "476.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ORS/ETH" + }, + { + "asset": "AUC", + "currency": "USD", + "min_size": "242.0", + "max_size": "150000.0", + "increment": "0.0000001", + "label": "AUC/USD" + }, + { + "asset": "AUC", + "currency": "BTC", + "min_size": "242.0", + "max_size": "150000.0", + "increment": "0.0000000001", + "label": "AUC/BTC" + }, + { + "asset": "AUC", + "currency": "ETH", + "min_size": "242.0", + "max_size": "150000.0", + "increment": "0.0000000001", + "label": "AUC/ETH" + }, + { + "asset": "POY", + "currency": "USD", + "min_size": "70.0", + "max_size": "100000.0", + "increment": "0.000001", + "label": "POY/USD" + }, + { + "asset": "POY", + "currency": "BTC", + "min_size": "70.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "POY/BTC" + }, + { + "asset": "POY", + "currency": "ETH", + "min_size": "70.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "POY/ETH" + }, + { + "asset": "FSN", + "currency": "USD", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00001", + "label": "FSN/USD" + }, + { + "asset": "FSN", + "currency": "BTC", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00000001", + "label": "FSN/BTC" + }, + { + "asset": "FSN", + "currency": "ETH", + "min_size": "14.0", + "max_size": "10000.0", + "increment": "0.00000001", + "label": "FSN/ETH" + }, + { + "asset": "CBT", + "currency": "USD", + "min_size": "1010.0", + "max_size": "1000000.0", + "increment": "0.0000001", + "label": "CBT/USD" + }, + { + "asset": "CBT", + "currency": "BTC", + "min_size": "1010.0", + "max_size": "1000000.0", + "increment": "0.0000000001", + "label": "CBT/BTC" + }, + { + "asset": "CBT", + "currency": "ETH", + "min_size": "1010.0", + "max_size": "1000000.0", + "increment": "0.0000000001", + "label": "CBT/ETH" + }, + { + "asset": "ZCN", + "currency": "USD", + "min_size": "124.0", + "max_size": "50000.0", + "increment": "0.000001", + "label": "ZCN/USD" + }, + { + "asset": "ZCN", + "currency": "BTC", + "min_size": "124.0", + "max_size": "50000.0", + "increment": "0.000000001", + "label": "ZCN/BTC" + }, + { + "asset": "ZCN", + "currency": "ETH", + "min_size": "124.0", + "max_size": "50000.0", + "increment": "0.000000001", + "label": "ZCN/ETH" + }, + { + "asset": "SEN", + "currency": "USD", + "min_size": "3694.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "SEN/USD" + }, + { + "asset": "SEN", + "currency": "BTC", + "min_size": "3694.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "SEN/BTC" + }, + { + "asset": "SEN", + "currency": "ETH", + "min_size": "3694.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "SEN/ETH" + }, + { + "asset": "NCA", + "currency": "USD", + "min_size": "1990.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "NCA/USD" + }, + { + "asset": "NCA", + "currency": "BTC", + "min_size": "1990.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "NCA/BTC" + }, + { + "asset": "NCA", + "currency": "ETH", + "min_size": "1990.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "NCA/ETH" + }, + { + "asset": "CND", + "currency": "USD", + "min_size": "606.0", + "max_size": "100000.0", + "increment": "0.0000001", + "label": "CND/USD" + }, + { + "asset": "CND", + "currency": "BTC", + "min_size": "606.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "CND/BTC" + }, + { + "asset": "CND", + "currency": "ETH", + "min_size": "606.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "CND/ETH" + }, + { + "asset": "CTX", + "currency": "USD", + "min_size": "36.0", + "max_size": "50000.0", + "increment": "0.000001", + "label": "CTX/USD" + }, + { + "asset": "CTX", + "currency": "BTC", + "min_size": "36.0", + "max_size": "50000.0", + "increment": "0.000000001", + "label": "CTX/BTC" + }, + { + "asset": "CTX", + "currency": "ETH", + "min_size": "36.0", + "max_size": "50000.0", + "increment": "0.000000001", + "label": "CTX/ETH" + }, + { + "asset": "PAI", + "currency": "USD", + "min_size": "52.0", + "max_size": "100000.0", + "increment": "0.000001", + "label": "PAI/USD" + }, + { + "asset": "PAI", + "currency": "BTC", + "min_size": "52.0", + "max_size": "100000.0", + "increment": "0.000000001", + "label": "PAI/BTC" + }, + { + "asset": "SEE", + "currency": "USD", + "min_size": "5236.0", + "max_size": "2000000.0", + "increment": "0.0000001", + "label": "SEE/USD" + }, + { + "asset": "SEE", + "currency": "BTC", + "min_size": "5236.0", + "max_size": "2000000.0", + "increment": "0.0000000001", + "label": "SEE/BTC" + }, + { + "asset": "SEE", + "currency": "ETH", + "min_size": "5236.0", + "max_size": "2000000.0", + "increment": "0.0000000001", + "label": "SEE/ETH" + }, + { + "asset": "ESS", + "currency": "USD", + "min_size": "1732.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "ESS/USD" + }, + { + "asset": "ESS", + "currency": "BTC", + "min_size": "1732.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "ESS/BTC" + }, + { + "asset": "ESS", + "currency": "ETH", + "min_size": "1732.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "ESS/ETH" + }, + { + "asset": "ATM", + "currency": "USD", + "min_size": "1640.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "ATM/USD" + }, + { + "asset": "ATM", + "currency": "BTC", + "min_size": "1640.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ATM/BTC" + }, + { + "asset": "ATM", + "currency": "ETH", + "min_size": "1640.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ATM/ETH" + }, + { + "asset": "HOT", + "currency": "USD", + "min_size": "966.0", + "max_size": "1000000.0", + "increment": "0.0000001", + "label": "HOT/USD" + }, + { + "asset": "HOT", + "currency": "BTC", + "min_size": "966.0", + "max_size": "1000000.0", + "increment": "0.0000000001", + "label": "HOT/BTC" + }, + { + "asset": "HOT", + "currency": "ETH", + "min_size": "966.0", + "max_size": "1000000.0", + "increment": "0.0000000001", + "label": "HOT/ETH" + }, + { + "asset": "DTA", + "currency": "USD", + "min_size": "5186.0", + "max_size": "5000000.0", + "increment": "0.0000001", + "label": "DTA/USD" + }, + { + "asset": "DTA", + "currency": "BTC", + "min_size": "5186.0", + "max_size": "5000000.0", + "increment": "0.0000000001", + "label": "DTA/BTC" + }, + { + "asset": "DTA", + "currency": "ETH", + "min_size": "5208.0", + "max_size": "5000000.0", + "increment": "0.0000000001", + "label": "DTA/ETH" + }, + { + "asset": "IQX", + "currency": "USD", + "min_size": "1152.0", + "max_size": "100000.0", + "increment": "0.0000001", + "label": "IQX/USD" + }, + { + "asset": "IQX", + "currency": "BTC", + "min_size": "1152.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "IQX/BTC" + }, + { + "asset": "IQX", + "currency": "EOS", + "min_size": "1152.0", + "max_size": "100000.0", + "increment": "0.0000000001", + "label": "IQX/EOS" + }, + { + "asset": "WPR", + "currency": "USD", + "min_size": "590.0", + "max_size": "800000.0", + "increment": "0.0000001", + "label": "WPR/USD" + }, + { + "asset": "WPR", + "currency": "BTC", + "min_size": "590.0", + "max_size": "800000.0", + "increment": "0.0000000001", + "label": "WPR/BTC" + }, + { + "asset": "WPR", + "currency": "ETH", + "min_size": "590.0", + "max_size": "800000.0", + "increment": "0.0000000001", + "label": "WPR/ETH" + }, + { + "asset": "ZIL", + "currency": "USD", + "min_size": "320.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "ZIL/USD" + }, + { + "asset": "ZIL", + "currency": "BTC", + "min_size": "320.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ZIL/BTC" + }, + { + "asset": "ZIL", + "currency": "ETH", + "min_size": "320.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ZIL/ETH" + }, + { + "asset": "BNT", + "currency": "USD", + "min_size": "8.0", + "max_size": "20000.0", + "increment": "0.00001", + "label": "BNT/USD" + }, + { + "asset": "BNT", + "currency": "BTC", + "min_size": "8.0", + "max_size": "20000.0", + "increment": "0.00000001", + "label": "BNT/BTC" + }, + { + "asset": "BNT", + "currency": "ETH", + "min_size": "8.0", + "max_size": "20000.0", + "increment": "0.00000001", + "label": "BNT/ETH" + }, + { + "asset": "ABS", + "currency": "USD", + "min_size": "1040.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "ABS/USD" + }, + { + "asset": "ABS", + "currency": "ETH", + "min_size": "1040.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "ABS/ETH" + }, + { + "asset": "XRA", + "currency": "USD", + "min_size": "296.0", + "max_size": "500000.0", + "increment": "0.0000001", + "label": "XRA/USD" + }, + { + "asset": "XRA", + "currency": "ETH", + "min_size": "296.0", + "max_size": "500000.0", + "increment": "0.0000000001", + "label": "XRA/ETH" + }, + { + "asset": "MAN", + "currency": "USD", + "min_size": "48.0", + "max_size": "50000.0", + "increment": "0.000001", + "label": "MAN/USD" + }, + { + "asset": "MAN", + "currency": "ETH", + "min_size": "48.0", + "max_size": "50000.0", + "increment": "0.000000001", + "label": "MAN/ETH" + }, + { + "asset": "BBN", + "currency": "USD", + "min_size": "1740.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "BBN/USD" + }, + { + "asset": "BBN", + "currency": "ETH", + "min_size": "1740.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "BBN/ETH" + }, + { + "asset": "NIO", + "currency": "USD", + "min_size": "676.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "NIO/USD" + }, + { + "asset": "NIO", + "currency": "ETH", + "min_size": "676.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "NIO/ETH" + }, + { + "asset": "DGX", + "currency": "USD", + "min_size": "0.2", + "max_size": "750.0", + "increment": "0.0001", + "label": "DGX/USD" + }, + { + "asset": "DGX", + "currency": "ETH", + "min_size": "0.2", + "max_size": "750.0", + "increment": "0.0000001", + "label": "DGX/ETH" + }, + { + "asset": "VET", + "currency": "USD", + "min_size": "774.0", + "max_size": "200000.0", + "increment": "0.0000001", + "label": "VET/USD" + }, + { + "asset": "VET", + "currency": "BTC", + "min_size": "774.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "VET/BTC" + }, + { + "asset": "VET", + "currency": "ETH", + "min_size": "774.0", + "max_size": "200000.0", + "increment": "0.0000000001", + "label": "VET/ETH" + }, + { + "asset": "UTN", + "currency": "USD", + "min_size": "2206.0", + "max_size": "5000000.0", + "increment": "0.0000001", + "label": "UTN/USD" + }, + { + "asset": "UTN", + "currency": "ETH", + "min_size": "2206.0", + "max_size": "5000000.0", + "increment": "0.0000000001", + "label": "UTN/ETH" + }, + { + "asset": "TKN", + "currency": "USD", + "min_size": "28.0", + "max_size": "50000.0", + "increment": "0.00001", + "label": "TKN/USD" + }, + { + "asset": "TKN", + "currency": "ETH", + "min_size": "28.0", + "max_size": "50000.0", + "increment": "0.00000001", + "label": "TKN/ETH" + }, + { + "asset": "GOT", + "currency": "USD", + "min_size": "20.0", + "max_size": "50000.0", + "increment": "0.00001", + "label": "GOT/USD" + }, + { + "asset": "GOT", + "currency": "EUR", + "min_size": "20.0", + "max_size": "50000.0", + "increment": "0.00000001", + "label": "GOT/EUR" + }, + { + "asset": "GOT", + "currency": "ETH", + "min_size": "20.0", + "max_size": "50000.0", + "increment": "0.00000001", + "label": "GOT/ETH" + }, + { + "asset": "XTZ", + "currency": "USD", + "min_size": "6.0", + "max_size": "100000.0", + "increment": "0.00001", + "label": "XTZ/USD" + }, + { + "asset": "XTZ", + "currency": "BTC", + "min_size": "6.0", + "max_size": "100000.0", + "increment": "0.00000001", + "label": "XTZ/BTC" + }, + { + "asset": "CNN", + "currency": "USD", + "min_size": "21508.0", + "max_size": "20000000.0", + "increment": "0.0000001", + "label": "CNN/USD" + }, + { + "asset": "CNN", + "currency": "ETH", + "min_size": "21508.0", + "max_size": "20000000.0", + "increment": "0.0000000001", + "label": "CNN/ETH" + }, + { + "asset": "BOX", + "currency": "USD", + "min_size": "700.0", + "max_size": "1500000.0", + "increment": "0.0000001", + "label": "BOX/USD" + }, + { + "asset": "BOX", + "currency": "ETH", + "min_size": "700.0", + "max_size": "1500000.0", + "increment": "0.0000000001", + "label": "BOX/ETH" } ] \ No newline at end of file diff --git a/extensions/exchanges/bittrex/exchange.js b/extensions/exchanges/bittrex/exchange.js index 977e2769d4..5567dc8a05 100644 --- a/extensions/exchanges/bittrex/exchange.js +++ b/extensions/exchanges/bittrex/exchange.js @@ -2,20 +2,16 @@ var bittrex_authed = require('node-bittrex-api'), bittrex_public = require('node-bittrex-api'), n = require('numbro') -/** - ** Bittrex API - **/ module.exports = function bittrex(conf) { let recoverableErrors = new RegExp(/(ESOCKETTIMEOUT|ESOCKETTIMEDOUT|ETIMEDOUT|ECONNRESET|ECONNREFUSED|ENOTFOUND|Invalid nonce|Rate limit exceeded|URL request error)/) - let shownWarning = false - let fistRun = true - let allowGetMarketCall=true + let firstRun = true + let allowGetMarketCall = true let marketRefresh = 15000 bittrex_authed.options({ - 'apikey' : conf.bittrex.key.trim(), - 'apisecret' : conf.bittrex.secret.trim(), + 'apikey': conf.bittrex.key.trim(), + 'apisecret': conf.bittrex.secret.trim(), 'stream': false, 'cleartext': false, 'verbose': false @@ -31,7 +27,7 @@ module.exports = function bittrex(conf) { if (error.message) if (error.message.match(/Rate limit exceeded/)) { timeout = 10000 - } + } setTimeout(function () { exchange[method].apply(exchange, args) }, timeout) @@ -39,47 +35,33 @@ module.exports = function bittrex(conf) { } function handleErrors(command, err, data, args, callback) { - - if (err) - { + if (err) { if (err.message && err.message.match(recoverableErrors)) { - return retry(command, args, err) } - return callback(err, []) + return callback(err, []) } - - if (typeof data !== 'object') { - console.log(`bittrex API ${command} had an abnormal response, quitting.`) + console.log(`Bittrex API ${command} had an abnormal response, quitting.`) return callback(null, []) } - // generic error handler data was null and err was null - if (data == null) - { + if (data == null) { return retry(command, args, err) } - // specific handlers - if ((command == 'getQuote' || command == 'getTrades') && data.result == null ) - { - + if ((command == 'getQuote' || command == 'getTrades') && data.result == null ) { return retry(command, args, data) } - - if(!data.success) { + if (!data.success) { if (data.message && data.message.match(recoverableErrors)) { return retry(command, args, data.message) } return callback(null, []) } - - return true } - var orders = {} var exchange = { @@ -88,166 +70,133 @@ module.exports = function bittrex(conf) { makerFee: 0.25, takerFee: 0.25, - getProducts: function () { + getProducts: function() { return require('./products.json') }, - getTrades: function (opts, cb) { + getTrades: function (opts, cb) { var func_args = [].slice.call(arguments) var args = { market:joinProduct(opts.product_id), marketName: joinProduct(opts.product_id), tickInterval: 'oneMin' } - - //accomplish back trades using 2 calls. - //ticks and getMarket and create a hybrid result. + // accomplish back trades using 2 calls. ticks and getMarket and create a hybrid result. var trades = [] - // first run do the full deal. - // 2nd run. only return the last trades - if (allowGetMarketCall != true) - { + // first run do the full deal. 2nd run only returns the last trades + if (allowGetMarketCall != true) { cb(null, []) return null } - - if (fistRun) - { - bittrex_public.getticks(args, function( data, err) { + if (firstRun) { + bittrex_public.getticks(args, function(data, err) { let res = handleErrors('getTrades', err, data, func_args, cb) - if (!shownWarning) { - console.log('Please note: the bittrex api does not support backfilling directly.') - console.log('Backfill is indirectly supported thru the use of a hybrid system that combines a low resolution long term market of about 10 days and a short term high res market of the last 1-5 minutes.') - console.log('Please note: make sure to set the --period_length=1m to make sure data for trade/paper is fetched.') + console.log('Bittrex backfill is indirectly supported through the use of a hybrid system that combines a low resolution') + console.log('long term market of about 10 days and a short term high resolution market of the last 1-5 minutes.') shownWarning = true } - - if (res) - { + if (res) { let lastVal = 0 - for (const key in Object.keys(data.result)) { - var trade = data.result[key] if (isNaN(opts.from) || new Date(trade.T).getTime() > new Date(opts.from).getTime()) { let buySell = 'sell' - //todo: unsure about the >. if the price is greater than the last one should this one be a buy or sell. figure it out. + // todo: unsure about the >. if the price is greater than the last one should this one be a buy or sell. figure it out. if (parseFloat(trade.C) > lastVal) buySell = 'buy' trades.push({ trade_id: new Date(trade.T).getTime(), time: new Date(trade.T).getTime(), size: parseFloat(trade.V), price: parseFloat(trade.C), - //selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed + // selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed selector: 'bittrex.'+opts.product_id, side: buySell }) lastVal = parseFloat(trade.C) } } - - - - bittrex_public.getmarkethistory(args, function( data, err) { + bittrex_public.getmarkethistory(args, function(data, err) { let res2 = handleErrors('getTrades', err, data, func_args, cb) - - if (res2) - { + if (res2) { for (const key in Object.keys(data.result)) { var trade = data.result[key] if (isNaN(opts.from) || new Date(trade.TimeStamp).getTime() > new Date(opts.from).getTime()) { - trades.push({ - //trade_id: trade.Id, - trade_id: new Date(trade.TimeStamp).getTime(), + // trade_id: trade.Id, + trade_id: trade.id, time: new Date(trade.TimeStamp).getTime(), size: parseFloat(trade.Quantity), price: parseFloat(trade.Price), - //selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed + // selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed selector: 'bittrex.'+opts.product_id, side: trade.OrderType || trade.OrderType == 'SELL' ? 'sell': 'buy' - //selector: + // selector: }) } } - fistRun = false + firstRun = false allowGetMarketCall = false setTimeout(()=>{allowGetMarketCall = true},marketRefresh) - //make sure all times come out sorted correctly. there is a chance they can appear in the array out of order otherwise. + // make sure all times come out sorted correctly. there is a chance they can appear in the array out of order otherwise. trades = trades.sort((a, b) => { - if (a.time < b.time) {return 1} - if (a.time > b.time) {return -1} + if (a.time < b.time) return 1 + if (a.time > b.time) return -1 return 0 } ) - cb(null, trades) - + cb(null, trades) } }) - } }) - } else - { - bittrex_public.getmarkethistory(args, function( data, err) { + } + else { + bittrex_public.getmarkethistory(args, function(data, err) { let res2 = handleErrors('getTrades', err, data, func_args, cb) - - if (res2) - { - + if (res2) { for (const key in Object.keys(data.result)) { var trade = data.result[key] if (isNaN(opts.from) || new Date(trade.TimeStamp).getTime() > new Date(opts.from).getTime()) { trades.push({ - //trade_id: trade.Id, + // trade_id: trade.Id, trade_id: new Date(trade.TimeStamp).getTime(), time: new Date(trade.TimeStamp).getTime(), size: parseFloat(trade.Quantity), price: parseFloat(trade.Price), - //selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed + // selector should get overwritten by backfill, but was a point where it was missing in the backfill function so this was put in so it is never missed selector: 'bittrex.'+opts.product_id, side: trade.OrderType || trade.OrderType == 'SELL' ? 'sell': 'buy' }) } - } - allowGetMarketCall = false - - setTimeout(()=>{allowGetMarketCall = true},marketRefresh) - //Sorting at this point may be redundant. + // Sorting at this point may be redundant. trades = trades.sort((a, b) => { - if (a.time < b.time) {return 1} - if (a.time > b.time) {return -1} + if (a.time < b.time) return 1 + if (a.time > b.time) return -1 return 0 } ) cb(null, trades) - } }) } - }, getBalance: function (opts, cb) { var func_args = [].slice.call(arguments) - - bittrex_authed.getbalances(function( data,err ) { - + bittrex_authed.getbalances(function(data,err ) { let res = handleErrors('getBalance', err, data, func_args, cb) - var balance = { asset: 0, currency: 0 } - if (res) - { + if (res) { for (const key in data.result) { var _balance = data.result[key] - if(opts.last_signal === 'buy') { + if (opts.last_signal === 'buy') { if (_balance['Currency'] === opts.currency.toUpperCase()) { balance.currency = n(_balance.Available).format('0.00000000'), balance.currency_hold = 0 @@ -256,7 +205,8 @@ module.exports = function bittrex(conf) { balance.asset = n(_balance.Available).format('0.00000000'), balance.asset_hold = 0 } - } else { + } + else { if (_balance['Currency'] === opts.asset.toUpperCase()) { balance.asset = n(_balance.Available).format('0.00000000'), balance.asset_hold = 0 @@ -269,7 +219,6 @@ module.exports = function bittrex(conf) { } cb(null, balance) } - }) }, @@ -279,20 +228,19 @@ module.exports = function bittrex(conf) { type: 'both', depth: 10 } - bittrex_public.getorderbook(args, function( data ) { + bittrex_public.getorderbook(args, function(data) { if (typeof data !== 'object') { - console.log('bittrex API (getorderbook) had an abnormal response, quitting.') + console.log('Bittrex API (getorderbook) had an abnormal response, quitting.') return cb(null, []) } - - if(!data.success) { + if (!data.success) { if (data.message && data.message.match(recoverableErrors)) { return retry('getOrderBook', args, data.message) } console.log(data.message) return cb(null, []) } - if(typeof data.result.buy[0].Rate === 'undefined') { + if (typeof data.result.buy[0].Rate === 'undefined') { console.log(data.message) return cb(null, []) } @@ -312,7 +260,7 @@ module.exports = function bittrex(conf) { var args = { market: joinProduct(opts.product_id) } - bittrex_public.getticker(args, function( data, err ) { + bittrex_public.getticker(args, function(data, err ) { let res = handleErrors('getQuote', err, data, func_args, cb) if (res) cb(null, { @@ -327,50 +275,40 @@ module.exports = function bittrex(conf) { let args = { uuid: opts.order_id } - bittrex_authed.cancel(args, function( data,err ) { - - let res = handleErrors('cancelOrder', err, data, func_args, cb) - - - if (res) { - cb(null) + bittrex_authed.cancel(args, function (data, err) { + if (err) { + return retry('cancelOrder', func_args, err) } + cb() }) }, trade: function (type, opts, cb) { var func_args = [].slice.call(arguments) - var params = { market: joinProduct(opts.product_id), quantity: opts.size, rate: opts.price } - - if(!('order_type' in opts) || !opts.order_type) { + if (!('order_type' in opts) || !opts.order_type) { opts.order_type = 'maker' } - var fn = function(data,err) { - if (err != null ) - { - if (data == null) - { + if (err != null ) { + if (data == null) { data = {} data.message = err.message data.success = err.success data.result = err.result - } + } console.log('API Error') console.log(JSON.stringify(err)) if (err.message && err.message.match(recoverableErrors)) { return retry('trade', func_args, err.message) } } - if (err && err.message) - { - if (err.message =='MIN_TRADE_REQUIREMENT_NOT_MET') - { + if (err && err.message) { + if (err.message =='MIN_TRADE_REQUIREMENT_NOT_MET') { let returnResult = { reject_reason:'balance', status:'rejected' @@ -378,20 +316,16 @@ module.exports = function bittrex(conf) { return cb(null, returnResult) } } - if (typeof data !== 'object') { return cb(null, {}) } - - if(!data.success) { + if (!data.success) { if (data.message && data.message.match(recoverableErrors)) { return retry('trade', func_args, data.message) } console.log(data.message) return cb(null, []) } - - var order = { id: data && data.result ? data.result.uuid : null, status: 'open', @@ -402,11 +336,9 @@ module.exports = function bittrex(conf) { filled_size: '0', ordertype: opts.order_type } - orders['~' + data.result.uuid] = order cb(null, order) } - if (type === 'buy') { if (opts.order_type === 'maker') { bittrex_authed.buylimit(params, fn) @@ -414,7 +346,7 @@ module.exports = function bittrex(conf) { if (opts.order_type === 'taker') { bittrex_authed.buymarket(params, fn) } - } + } if (type === 'sell') { if (opts.order_type === 'maker') { bittrex_authed.selllimit(params, fn) @@ -433,31 +365,26 @@ module.exports = function bittrex(conf) { exchange.trade('sell', opts, cb) }, - getOrder: function (opts, cb) { + getOrder: function(opts, cb) { var func_args = [].slice.call(arguments) var order = orders['~' + opts.order_id] if (!order) return cb(new Error('order not found in cache')) var params = { uuid: opts.order_id } - bittrex_authed.getorder(params, function (data,err) { + bittrex_authed.getorder(params, function(data, err) { let res = handleErrors('getOrder', err, data, func_args, cb) - - if (res) - { + if (res) { var orderData = data.result - if (!orderData) { return cb('Order not found') } - - if (orderData.IsOpen === false) { + if (orderData.QuantityRemaining == 0) { order.status = 'done' order.done_at = new Date().getTime() order.filled_size = parseFloat(orderData.Quantity) - parseFloat(orderData.QuantityRemaining) return cb(null, order) } - cb(null, order) } }) diff --git a/extensions/exchanges/bittrex/products.json b/extensions/exchanges/bittrex/products.json index 4f9e3c4791..945f918454 100644 --- a/extensions/exchanges/bittrex/products.json +++ b/extensions/exchanges/bittrex/products.json @@ -2,7 +2,7 @@ { "asset": "LTC", "currency": "BTC", - "min_size": "0.01441756", + "min_size": "0.01435906", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LTC" @@ -10,7 +10,7 @@ { "asset": "DOGE", "currency": "BTC", - "min_size": "362.31884058", + "min_size": "396.82539683", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DOGE" @@ -18,7 +18,7 @@ { "asset": "VTC", "currency": "BTC", - "min_size": "0.80796329", + "min_size": "0.84217618", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VTC" @@ -26,7 +26,7 @@ { "asset": "PPC", "currency": "BTC", - "min_size": "0.94693383", + "min_size": "0.84745763", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PPC" @@ -34,7 +34,7 @@ { "asset": "FTC", "currency": "BTC", - "min_size": "8.51208716", + "min_size": "8.80281690", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/FTC" @@ -42,7 +42,7 @@ { "asset": "RDD", "currency": "BTC", - "min_size": "252.52525253", + "min_size": "287.35632184", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RDD" @@ -50,7 +50,7 @@ { "asset": "NXT", "currency": "BTC", - "min_size": "9.80392157", + "min_size": "11.03752759", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NXT" @@ -58,7 +58,7 @@ { "asset": "DASH", "currency": "BTC", - "min_size": "0.00487329", + "min_size": "0.00437054", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DASH" @@ -66,7 +66,7 @@ { "asset": "POT", "currency": "BTC", - "min_size": "14.35956347", + "min_size": "15.84283904", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/POT" @@ -74,7 +74,7 @@ { "asset": "BLK", "currency": "BTC", - "min_size": "6.80087051", + "min_size": "7.20046083", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BLK" @@ -82,7 +82,7 @@ { "asset": "EMC2", "currency": "BTC", - "min_size": "6.49857031", + "min_size": "6.74763833", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EMC2" @@ -90,7 +90,7 @@ { "asset": "XMY", "currency": "BTC", - "min_size": "215.51724138", + "min_size": "225.22522523", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XMY" @@ -98,7 +98,7 @@ { "asset": "AUR", "currency": "BTC", - "min_size": "1.83688464", + "min_size": "1.55811779", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/AUR" @@ -106,7 +106,7 @@ { "asset": "EFL", "currency": "BTC", - "min_size": "11.01321586", + "min_size": "11.60631383", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EFL" @@ -114,7 +114,7 @@ { "asset": "GLD", "currency": "BTC", - "min_size": "10.23751024", + "min_size": "13.74381528", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GLD" @@ -122,7 +122,7 @@ { "asset": "SLR", "currency": "BTC", - "min_size": "5.29548824", + "min_size": "5.65482922", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SLR" @@ -130,7 +130,7 @@ { "asset": "PTC", "currency": "BTC", - "min_size": "44.64285714", + "min_size": "41.59733777", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PTC" @@ -138,7 +138,7 @@ { "asset": "GRS", "currency": "BTC", - "min_size": "1.43636886", + "min_size": "1.51048275", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GRS" @@ -146,7 +146,7 @@ { "asset": "NLG", "currency": "BTC", - "min_size": "19.59247649", + "min_size": "18.32844575", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NLG" @@ -154,7 +154,7 @@ { "asset": "RBY", "currency": "BTC", - "min_size": "3.29380764", + "min_size": "3.40182338", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RBY" @@ -162,7 +162,7 @@ { "asset": "XWC", "currency": "BTC", - "min_size": "24.34274586", + "min_size": "31.25000000", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XWC" @@ -170,7 +170,7 @@ { "asset": "MONA", "currency": "BTC", - "min_size": "0.51653960", + "min_size": "0.55545681", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MONA" @@ -178,7 +178,7 @@ { "asset": "THC", "currency": "BTC", - "min_size": "20.37489813", + "min_size": "19.56181534", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/THC" @@ -186,7 +186,7 @@ { "asset": "ENRG", "currency": "BTC", - "min_size": "16.65556296", + "min_size": "18.89644747", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ENRG" @@ -194,7 +194,7 @@ { "asset": "ERC", "currency": "BTC", - "min_size": "3.79939210", + "min_size": "3.80401704", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ERC" @@ -202,7 +202,7 @@ { "asset": "VRC", "currency": "BTC", - "min_size": "3.17299150", + "min_size": "3.13008639", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VRC" @@ -210,7 +210,7 @@ { "asset": "CURE", "currency": "BTC", - "min_size": "5.64206725", + "min_size": "5.70645971", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CURE" @@ -218,7 +218,7 @@ { "asset": "XMR", "currency": "BTC", - "min_size": "0.00873147", + "min_size": "0.00799564", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XMR" @@ -226,7 +226,7 @@ { "asset": "CLOAK", "currency": "BTC", - "min_size": "0.14287592", + "min_size": "0.15339117", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CLOAK" @@ -234,7 +234,7 @@ { "asset": "KORE", "currency": "BTC", - "min_size": "0.63164810", + "min_size": "0.63053293", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/KORE" @@ -242,7 +242,7 @@ { "asset": "XDN", "currency": "BTC", - "min_size": "147.05882353", + "min_size": "162.33766234", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XDN" @@ -250,7 +250,7 @@ { "asset": "TRUST", "currency": "BTC", - "min_size": "20.81598668", + "min_size": "20.97315436", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TRUST" @@ -258,7 +258,7 @@ { "asset": "NAV", "currency": "BTC", - "min_size": "1.51735858", + "min_size": "1.54933069", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NAV" @@ -266,7 +266,7 @@ { "asset": "XST", "currency": "BTC", - "min_size": "6.92328995", + "min_size": "6.49013499", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XST" @@ -274,7 +274,7 @@ { "asset": "VIA", "currency": "BTC", - "min_size": "0.95954556", + "min_size": "0.91790278", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VIA" @@ -282,7 +282,7 @@ { "asset": "PINK", "currency": "BTC", - "min_size": "88.02816901", + "min_size": "89.28571429", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PINK" @@ -290,7 +290,7 @@ { "asset": "IOC", "currency": "BTC", - "min_size": "1.47110745", + "min_size": "1.35113225", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/IOC" @@ -298,7 +298,7 @@ { "asset": "CANN", "currency": "BTC", - "min_size": "32.72251309", + "min_size": "32.46753247", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CANN" @@ -306,7 +306,7 @@ { "asset": "SYS", "currency": "BTC", - "min_size": "4.59558824", + "min_size": "4.35767823", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SYS" @@ -314,7 +314,7 @@ { "asset": "NEOS", "currency": "BTC", - "min_size": "0.62956434", + "min_size": "0.60839093", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NEOS" @@ -322,7 +322,7 @@ { "asset": "DGB", "currency": "BTC", - "min_size": "59.38242280", + "min_size": "63.29113924", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DGB" @@ -330,7 +330,7 @@ { "asset": "BURST", "currency": "BTC", - "min_size": "90.90909091", + "min_size": "86.20689655", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BURST" @@ -338,23 +338,23 @@ { "asset": "EXCL", "currency": "BTC", - "min_size": "1.67728950", + "min_size": "1.69894665", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EXCL" }, { - "asset": "SWIFT", + "asset": "BITS", "currency": "BTC", - "min_size": "2.17391304", + "min_size": "2.41662639", "max_size": "1000000", "increment": "0.00000001", - "label": "BTC/SWIFT" + "label": "BTC/BITS" }, { "asset": "DOPE", "currency": "BTC", - "min_size": "31.36762861", + "min_size": "33.64737550", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DOPE" @@ -362,7 +362,7 @@ { "asset": "BLOCK", "currency": "BTC", - "min_size": "0.11230857", + "min_size": "0.11052215", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BLOCK" @@ -370,7 +370,7 @@ { "asset": "ABY", "currency": "BTC", - "min_size": "213.67521368", + "min_size": "233.64485981", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ABY" @@ -378,7 +378,7 @@ { "asset": "BYC", "currency": "BTC", - "min_size": "3.28127051", + "min_size": "3.65070093", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BYC" @@ -386,23 +386,15 @@ { "asset": "XMG", "currency": "BTC", - "min_size": "5.49450549", + "min_size": "6.11097531", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XMG" }, - { - "asset": "BLITZ", - "currency": "BTC", - "min_size": "2.24982001", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/BLITZ" - }, { "asset": "BAY", "currency": "BTC", - "min_size": "30.04807692", + "min_size": "30.26634383", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BAY" @@ -410,23 +402,15 @@ { "asset": "SPR", "currency": "BTC", - "min_size": "5.09683996", + "min_size": "3.53007625", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SPR" }, - { - "asset": "VTR", - "currency": "BTC", - "min_size": "5.65355043", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/VTR" - }, { "asset": "XRP", "currency": "BTC", - "min_size": "2.82741461", + "min_size": "2.56383961", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XRP" @@ -434,7 +418,7 @@ { "asset": "GAME", "currency": "BTC", - "min_size": "1.17918966", + "min_size": "1.21424061", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GAME" @@ -442,7 +426,7 @@ { "asset": "COVAL", "currency": "BTC", - "min_size": "223.21428571", + "min_size": "233.64485981", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/COVAL" @@ -450,7 +434,7 @@ { "asset": "NXS", "currency": "BTC", - "min_size": "0.94428706", + "min_size": "0.93019795", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NXS" @@ -458,7 +442,7 @@ { "asset": "XCP", "currency": "BTC", - "min_size": "0.11573217", + "min_size": "0.10869565", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XCP" @@ -466,7 +450,7 @@ { "asset": "BITB", "currency": "BTC", - "min_size": "189.39393939", + "min_size": "206.61157025", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BITB" @@ -474,7 +458,7 @@ { "asset": "GEO", "currency": "BTC", - "min_size": "0.85144064", + "min_size": "0.75718569", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GEO" @@ -482,7 +466,7 @@ { "asset": "FLDC", "currency": "BTC", - "min_size": "95.78544061", + "min_size": "105.93220339", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/FLDC" @@ -490,7 +474,7 @@ { "asset": "GRC", "currency": "BTC", - "min_size": "41.73622705", + "min_size": "38.46153846", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GRC" @@ -498,7 +482,7 @@ { "asset": "FLO", "currency": "BTC", - "min_size": "21.92982456", + "min_size": "19.34984520", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/FLO" @@ -506,7 +490,7 @@ { "asset": "NBT", "currency": "BTC", - "min_size": "3.49699259", + "min_size": "3.89044507", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NBT" @@ -514,7 +498,7 @@ { "asset": "MUE", "currency": "BTC", - "min_size": "15.31862745", + "min_size": "16.11863314", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MUE" @@ -522,7 +506,7 @@ { "asset": "XEM", "currency": "BTC", - "min_size": "5.42299349", + "min_size": "5.62936276", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XEM" @@ -530,7 +514,7 @@ { "asset": "CLAM", "currency": "BTC", - "min_size": "0.47981882", + "min_size": "0.48923679", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CLAM" @@ -538,7 +522,7 @@ { "asset": "DMD", "currency": "BTC", - "min_size": "0.26681466", + "min_size": "0.25208728", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DMD" @@ -546,7 +530,7 @@ { "asset": "GAM", "currency": "BTC", - "min_size": "0.20258991", + "min_size": "0.24271845", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GAM" @@ -554,7 +538,7 @@ { "asset": "SPHR", "currency": "BTC", - "min_size": "0.76426890", + "min_size": "0.68466889", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SPHR" @@ -562,23 +546,15 @@ { "asset": "OK", "currency": "BTC", - "min_size": "10.15434606", + "min_size": "11.27649977", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/OK" }, - { - "asset": "SNRG", - "currency": "BTC", - "min_size": "3.73134328", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/SNRG" - }, { "asset": "AEON", "currency": "BTC", - "min_size": "1.01754243", + "min_size": "1.03919857", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/AEON" @@ -586,7 +562,7 @@ { "asset": "ETH", "currency": "BTC", - "min_size": "0.00372024", + "min_size": "0.00346548", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ETH" @@ -594,7 +570,7 @@ { "asset": "TX", "currency": "BTC", - "min_size": "1.18253630", + "min_size": "1.25006250", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TX" @@ -602,7 +578,7 @@ { "asset": "BCY", "currency": "BTC", - "min_size": "5.29324582", + "min_size": "5.36711035", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BCY" @@ -610,7 +586,7 @@ { "asset": "EXP", "currency": "BTC", - "min_size": "0.91274188", + "min_size": "0.90619110", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EXP" @@ -618,7 +594,7 @@ { "asset": "OMNI", "currency": "BTC", - "min_size": "0.05326981", + "min_size": "0.05636979", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/OMNI" @@ -626,7 +602,7 @@ { "asset": "AMP", "currency": "BTC", - "min_size": "6.65070497", + "min_size": "7.10227273", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/AMP" @@ -634,7 +610,7 @@ { "asset": "XLM", "currency": "BTC", - "min_size": "5.76701269", + "min_size": "6.02119461", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XLM" @@ -642,7 +618,7 @@ { "asset": "BTC", "currency": "USDT", - "min_size": "0.00036243", + "min_size": "0.00033580", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/BTC" @@ -650,7 +626,7 @@ { "asset": "RVR", "currency": "BTC", - "min_size": "20.08032129", + "min_size": "20.29220779", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RVR" @@ -658,7 +634,7 @@ { "asset": "EMC", "currency": "BTC", - "min_size": "0.56948905", + "min_size": "0.65269039", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EMC" @@ -666,7 +642,7 @@ { "asset": "FCT", "currency": "BTC", - "min_size": "0.06924651", + "min_size": "0.07386856", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/FCT" @@ -674,7 +650,7 @@ { "asset": "EGC", "currency": "BTC", - "min_size": "8.44880027", + "min_size": "7.45823389", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EGC" @@ -682,7 +658,7 @@ { "asset": "SLS", "currency": "BTC", - "min_size": "0.03412937", + "min_size": "0.03571408", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SLS" @@ -690,7 +666,7 @@ { "asset": "RADS", "currency": "BTC", - "min_size": "0.32510176", + "min_size": "0.36759841", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RADS" @@ -698,7 +674,7 @@ { "asset": "DCR", "currency": "BTC", - "min_size": "0.03302999", + "min_size": "0.03381646", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DCR" @@ -706,7 +682,7 @@ { "asset": "BSD", "currency": "BTC", - "min_size": "3.02846760", + "min_size": "2.76548673", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BSD" @@ -714,7 +690,7 @@ { "asset": "XVG", "currency": "BTC", - "min_size": "29.79737783", + "min_size": "32.76539974", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XVG" @@ -722,23 +698,15 @@ { "asset": "PIVX", "currency": "BTC", - "min_size": "0.40194218", + "min_size": "0.39782311", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PIVX" }, - { - "asset": "XVC", - "currency": "BTC", - "min_size": "6.01974476", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/XVC" - }, { "asset": "MEME", "currency": "BTC", - "min_size": "7.36160188", + "min_size": "6.92137320", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MEME" @@ -746,7 +714,7 @@ { "asset": "STEEM", "currency": "BTC", - "min_size": "0.67309246", + "min_size": "0.68136600", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/STEEM" @@ -754,7 +722,7 @@ { "asset": "2GIVE", "currency": "BTC", - "min_size": "200.00000000", + "min_size": "221.23893805", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/2GIVE" @@ -762,7 +730,7 @@ { "asset": "LSK", "currency": "BTC", - "min_size": "0.17857143", + "min_size": "0.18243115", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LSK" @@ -770,7 +738,7 @@ { "asset": "BRK", "currency": "BTC", - "min_size": "7.63591936", + "min_size": "8.26446281", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BRK" @@ -778,7 +746,7 @@ { "asset": "WAVES", "currency": "BTC", - "min_size": "0.40392290", + "min_size": "0.40176778", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/WAVES" @@ -786,7 +754,7 @@ { "asset": "LBC", "currency": "BTC", - "min_size": "6.70600858", + "min_size": "7.28226041", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LBC" @@ -794,7 +762,7 @@ { "asset": "SBD", "currency": "BTC", - "min_size": "0.68613459", + "min_size": "0.67383628", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SBD" @@ -802,7 +770,7 @@ { "asset": "BRX", "currency": "BTC", - "min_size": "1.78253119", + "min_size": "1.76978621", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BRX" @@ -810,7 +778,7 @@ { "asset": "ETC", "currency": "BTC", - "min_size": "0.11363636", + "min_size": "0.10775862", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ETC" @@ -818,7 +786,7 @@ { "asset": "ETC", "currency": "ETH", - "min_size": "0.15258547", + "min_size": "0.15618640", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ETC" @@ -826,7 +794,7 @@ { "asset": "STRAT", "currency": "BTC", - "min_size": "0.36295006", + "min_size": "0.36243440", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/STRAT" @@ -834,7 +802,7 @@ { "asset": "UNB", "currency": "BTC", - "min_size": "2.52627324", + "min_size": "2.59956327", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/UNB" @@ -842,7 +810,7 @@ { "asset": "SYNX", "currency": "BTC", - "min_size": "4.09836066", + "min_size": "4.03551251", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SYNX" @@ -850,7 +818,7 @@ { "asset": "EBST", "currency": "BTC", - "min_size": "5.86579071", + "min_size": "4.28522455", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EBST" @@ -858,7 +826,7 @@ { "asset": "VRM", "currency": "BTC", - "min_size": "0.66146316", + "min_size": "0.64452924", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VRM" @@ -866,7 +834,7 @@ { "asset": "SEQ", "currency": "BTC", - "min_size": "10.17087063", + "min_size": "10.63377286", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SEQ" @@ -874,7 +842,7 @@ { "asset": "REP", "currency": "BTC", - "min_size": "0.05361666", + "min_size": "0.05283089", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/REP" @@ -882,7 +850,7 @@ { "asset": "SHIFT", "currency": "BTC", - "min_size": "0.79279508", + "min_size": "0.83333333", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SHIFT" @@ -890,7 +858,7 @@ { "asset": "ARDR", "currency": "BTC", - "min_size": "5.49450549", + "min_size": "5.62556256", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ARDR" @@ -898,7 +866,7 @@ { "asset": "XZC", "currency": "BTC", - "min_size": "0.05265375", + "min_size": "0.04781934", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XZC" @@ -906,7 +874,7 @@ { "asset": "NEO", "currency": "BTC", - "min_size": "0.02821670", + "min_size": "0.02926862", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NEO" @@ -914,7 +882,7 @@ { "asset": "ZEC", "currency": "BTC", - "min_size": "0.00804295", + "min_size": "0.00748989", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ZEC" @@ -922,7 +890,7 @@ { "asset": "ZCL", "currency": "BTC", - "min_size": "0.33332889", + "min_size": "0.14792987", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ZCL" @@ -930,7 +898,7 @@ { "asset": "IOP", "currency": "BTC", - "min_size": "0.76984665", + "min_size": "0.81969901", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/IOP" @@ -938,7 +906,7 @@ { "asset": "GOLOS", "currency": "BTC", - "min_size": "22.52252252", + "min_size": "20.88554720", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GOLOS" @@ -946,7 +914,7 @@ { "asset": "UBQ", "currency": "BTC", - "min_size": "0.82723934", + "min_size": "0.88283071", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/UBQ" @@ -954,7 +922,7 @@ { "asset": "KMD", "currency": "BTC", - "min_size": "0.53651523", + "min_size": "0.54835384", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/KMD" @@ -962,7 +930,7 @@ { "asset": "GBG", "currency": "BTC", - "min_size": "28.90173410", + "min_size": "29.55082742", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GBG" @@ -970,7 +938,7 @@ { "asset": "SIB", "currency": "BTC", - "min_size": "1.73526758", + "min_size": "1.66489078", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SIB" @@ -978,7 +946,7 @@ { "asset": "ION", "currency": "BTC", - "min_size": "0.73065233", + "min_size": "0.72212594", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ION" @@ -986,7 +954,7 @@ { "asset": "LMC", "currency": "BTC", - "min_size": "30.78817734", + "min_size": "30.33980583", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LMC" @@ -994,7 +962,7 @@ { "asset": "QWARK", "currency": "BTC", - "min_size": "17.05320600", + "min_size": "19.11314985", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/QWARK" @@ -1002,7 +970,7 @@ { "asset": "CRW", "currency": "BTC", - "min_size": "1.31419860", + "min_size": "1.35596898", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CRW" @@ -1010,7 +978,7 @@ { "asset": "SWT", "currency": "BTC", - "min_size": "1.18063754", + "min_size": "1.16474096", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SWT" @@ -1018,7 +986,7 @@ { "asset": "MLN", "currency": "BTC", - "min_size": "0.03144654", + "min_size": "0.03410213", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MLN" @@ -1026,7 +994,7 @@ { "asset": "ARK", "currency": "BTC", - "min_size": "0.67033114", + "min_size": "0.65189048", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ARK" @@ -1034,7 +1002,7 @@ { "asset": "DYN", "currency": "BTC", - "min_size": "1.02274587", + "min_size": "0.98386462", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DYN" @@ -1042,7 +1010,7 @@ { "asset": "TKS", "currency": "BTC", - "min_size": "0.82962766", + "min_size": "0.87062511", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TKS" @@ -1050,7 +1018,7 @@ { "asset": "MUSIC", "currency": "BTC", - "min_size": "116.27906977", + "min_size": "121.35922330", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MUSIC" @@ -1058,7 +1026,7 @@ { "asset": "DTB", "currency": "BTC", - "min_size": "3.03545410", + "min_size": "3.25182102", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DTB" @@ -1066,7 +1034,7 @@ { "asset": "INCNT", "currency": "BTC", - "min_size": "5.66251416", + "min_size": "5.69087184", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/INCNT" @@ -1074,7 +1042,7 @@ { "asset": "GBYTE", "currency": "BTC", - "min_size": "0.00729391", + "min_size": "0.00792858", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GBYTE" @@ -1082,7 +1050,7 @@ { "asset": "GNT", "currency": "BTC", - "min_size": "4.63821892", + "min_size": "3.81679389", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GNT" @@ -1090,7 +1058,7 @@ { "asset": "NXC", "currency": "BTC", - "min_size": "11.08647450", + "min_size": "10.41666667", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NXC" @@ -1098,31 +1066,23 @@ { "asset": "EDG", "currency": "BTC", - "min_size": "3.01386377", + "min_size": "3.13479624", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/EDG" }, { - "asset": "LGD", + "asset": "MORE", "currency": "BTC", - "min_size": "2.90090508", + "min_size": "3.17258883", "max_size": "1000000", "increment": "0.00000001", - "label": "BTC/LGD" - }, - { - "asset": "TRST", - "currency": "BTC", - "min_size": "7.39207569", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/TRST" + "label": "BTC/MORE" }, { "asset": "GNT", "currency": "ETH", - "min_size": "6.16545618", + "min_size": "5.48769111", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/GNT" @@ -1130,7 +1090,7 @@ { "asset": "REP", "currency": "ETH", - "min_size": "0.07047472", + "min_size": "0.07710338", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/REP" @@ -1138,23 +1098,15 @@ { "asset": "ETH", "currency": "USDT", - "min_size": "0.00540540", + "min_size": "0.00464218", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/ETH" }, - { - "asset": "WINGS", - "currency": "ETH", - "min_size": "5.19545294", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/WINGS" - }, { "asset": "WINGS", "currency": "BTC", - "min_size": "3.71471025", + "min_size": "3.49993000", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/WINGS" @@ -1162,7 +1114,7 @@ { "asset": "RLC", "currency": "BTC", - "min_size": "1.26646403", + "min_size": "1.49584156", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RLC" @@ -1170,7 +1122,7 @@ { "asset": "GNO", "currency": "BTC", - "min_size": "0.01881116", + "min_size": "0.02066037", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GNO" @@ -1178,7 +1130,7 @@ { "asset": "GUP", "currency": "BTC", - "min_size": "4.86949747", + "min_size": "4.58547322", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/GUP" @@ -1186,39 +1138,23 @@ { "asset": "LUN", "currency": "BTC", - "min_size": "0.16228708", + "min_size": "0.16367362", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LUN" }, - { - "asset": "GUP", - "currency": "ETH", - "min_size": "6.54835964", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/GUP" - }, { "asset": "RLC", "currency": "ETH", - "min_size": "1.68800302", + "min_size": "2.16582416", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/RLC" }, - { - "asset": "LUN", - "currency": "ETH", - "min_size": "0.21835367", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/LUN" - }, { "asset": "GNO", "currency": "ETH", - "min_size": "0.02538070", + "min_size": "0.02995681", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/GNO" @@ -1226,39 +1162,23 @@ { "asset": "HMQ", "currency": "BTC", - "min_size": "11.90476190", + "min_size": "11.24606388", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/HMQ" }, - { - "asset": "HMQ", - "currency": "ETH", - "min_size": "15.67791296", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/HMQ" - }, { "asset": "ANT", "currency": "BTC", - "min_size": "0.56611037", + "min_size": "0.54221702", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ANT" }, - { - "asset": "TRST", - "currency": "ETH", - "min_size": "9.80392157", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/TRST" - }, { "asset": "ANT", "currency": "ETH", - "min_size": "0.74946226", + "min_size": "0.78012978", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ANT" @@ -1266,7 +1186,7 @@ { "asset": "SC", "currency": "BTC", - "min_size": "105.93220339", + "min_size": "109.17030568", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SC" @@ -1274,7 +1194,7 @@ { "asset": "BAT", "currency": "ETH", - "min_size": "7.51936236", + "min_size": "7.31635938", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/BAT" @@ -1282,7 +1202,7 @@ { "asset": "BAT", "currency": "BTC", - "min_size": "5.59159025", + "min_size": "5.08233381", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BAT" @@ -1290,7 +1210,7 @@ { "asset": "ZEN", "currency": "BTC", - "min_size": "0.05560523", + "min_size": "0.06534820", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ZEN" @@ -1298,79 +1218,47 @@ { "asset": "QRL", "currency": "BTC", - "min_size": "1.70149051", + "min_size": "1.74800727", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/QRL" }, - { - "asset": "QRL", - "currency": "ETH", - "min_size": "2.31761527", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/QRL" - }, { "asset": "CRB", "currency": "BTC", - "min_size": "7.90139064", + "min_size": "8.18866689", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CRB" }, { - "asset": "CRB", + "asset": "MORE", "currency": "ETH", - "min_size": "10.54585337", + "min_size": "4.61650678", "max_size": "1000000", "increment": "0.00000001", - "label": "ETH/CRB" - }, - { - "asset": "LGD", - "currency": "ETH", - "min_size": "3.79075057", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/LGD" + "label": "ETH/MORE" }, { "asset": "PTOY", "currency": "BTC", - "min_size": "10.03613007", + "min_size": "10.92657343", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PTOY" }, - { - "asset": "PTOY", - "currency": "ETH", - "min_size": "13.63661157", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/PTOY" - }, { "asset": "CFI", "currency": "BTC", - "min_size": "21.68256722", + "min_size": "20.49180328", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CFI" }, - { - "asset": "CFI", - "currency": "ETH", - "min_size": "28.90173410", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/CFI" - }, { "asset": "BNT", "currency": "BTC", - "min_size": "0.58624894", + "min_size": "0.51444563", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BNT" @@ -1378,7 +1266,7 @@ { "asset": "BNT", "currency": "ETH", - "min_size": "0.79185592", + "min_size": "0.74850299", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/BNT" @@ -1386,23 +1274,15 @@ { "asset": "NMR", "currency": "BTC", - "min_size": "0.12077295", + "min_size": "0.12189057", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/NMR" }, - { - "asset": "NMR", - "currency": "ETH", - "min_size": "0.16286645", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/NMR" - }, { "asset": "LTC", "currency": "ETH", - "min_size": "0.01944379", + "min_size": "0.02070400", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/LTC" @@ -1410,7 +1290,7 @@ { "asset": "XRP", "currency": "ETH", - "min_size": "3.79722802", + "min_size": "3.73449252", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/XRP" @@ -1418,7 +1298,7 @@ { "asset": "SNT", "currency": "BTC", - "min_size": "15.16990291", + "min_size": "15.03307276", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SNT" @@ -1426,7 +1306,7 @@ { "asset": "SNT", "currency": "ETH", - "min_size": "20.39900453", + "min_size": "21.69385630", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/SNT" @@ -1434,7 +1314,7 @@ { "asset": "DCT", "currency": "BTC", - "min_size": "2.91069973", + "min_size": "2.53369819", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DCT" @@ -1442,7 +1322,7 @@ { "asset": "XEL", "currency": "BTC", - "min_size": "6.00384246", + "min_size": "6.33713561", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/XEL" @@ -1450,7 +1330,7 @@ { "asset": "MCO", "currency": "BTC", - "min_size": "0.14576750", + "min_size": "0.17028001", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MCO" @@ -1458,7 +1338,7 @@ { "asset": "MCO", "currency": "ETH", - "min_size": "0.19976356", + "min_size": "0.24923522", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/MCO" @@ -1466,23 +1346,15 @@ { "asset": "ADT", "currency": "BTC", - "min_size": "41.18616145", + "min_size": "33.60215054", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ADT" }, - { - "asset": "ADT", - "currency": "ETH", - "min_size": "55.65449688", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/ADT" - }, { "asset": "PAY", "currency": "BTC", - "min_size": "1.32978723", + "min_size": "1.39136242", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PAY" @@ -1490,7 +1362,7 @@ { "asset": "PAY", "currency": "ETH", - "min_size": "1.75358608", + "min_size": "2.01508899", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/PAY" @@ -1498,23 +1370,15 @@ { "asset": "STORJ", "currency": "BTC", - "min_size": "1.96016936", + "min_size": "1.98145359", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/STORJ" }, - { - "asset": "STORJ", - "currency": "ETH", - "min_size": "2.62565050", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/STORJ" - }, { "asset": "ADX", "currency": "BTC", - "min_size": "2.36585597", + "min_size": "2.19029262", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ADX" @@ -1522,7 +1386,7 @@ { "asset": "ADX", "currency": "ETH", - "min_size": "3.14001319", + "min_size": "3.15318156", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ADX" @@ -1530,7 +1394,7 @@ { "asset": "DASH", "currency": "ETH", - "min_size": "0.00660536", + "min_size": "0.00643036", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/DASH" @@ -1538,7 +1402,7 @@ { "asset": "SC", "currency": "ETH", - "min_size": "142.00511218", + "min_size": "156.69069257", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/SC" @@ -1546,7 +1410,7 @@ { "asset": "ZEC", "currency": "ETH", - "min_size": "0.01075115", + "min_size": "0.01072884", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ZEC" @@ -1554,7 +1418,7 @@ { "asset": "ZEC", "currency": "USDT", - "min_size": "0.01176891", + "min_size": "0.01001703", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/ZEC" @@ -1562,7 +1426,7 @@ { "asset": "LTC", "currency": "USDT", - "min_size": "0.02097519", + "min_size": "0.01928167", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/LTC" @@ -1570,7 +1434,7 @@ { "asset": "ETC", "currency": "USDT", - "min_size": "0.16528926", + "min_size": "0.14523924", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/ETC" @@ -1578,7 +1442,7 @@ { "asset": "XRP", "currency": "USDT", - "min_size": "4.08997955", + "min_size": "3.47988748", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/XRP" @@ -1586,7 +1450,7 @@ { "asset": "OMG", "currency": "BTC", - "min_size": "0.13261192", + "min_size": "0.14224508", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/OMG" @@ -1594,7 +1458,7 @@ { "asset": "OMG", "currency": "ETH", - "min_size": "0.17856818", + "min_size": "0.20338787", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/OMG" @@ -1602,7 +1466,7 @@ { "asset": "CVC", "currency": "BTC", - "min_size": "5.55432126", + "min_size": "5.40540541", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/CVC" @@ -1610,7 +1474,7 @@ { "asset": "CVC", "currency": "ETH", - "min_size": "7.42302325", + "min_size": "7.75374118", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/CVC" @@ -1618,7 +1482,7 @@ { "asset": "PART", "currency": "BTC", - "min_size": "0.12818738", + "min_size": "0.13450695", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PART" @@ -1626,7 +1490,7 @@ { "asset": "QTUM", "currency": "BTC", - "min_size": "0.11264712", + "min_size": "0.10783485", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/QTUM" @@ -1634,7 +1498,7 @@ { "asset": "QTUM", "currency": "ETH", - "min_size": "0.15105740", + "min_size": "0.15619841", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/QTUM" @@ -1642,7 +1506,7 @@ { "asset": "XMR", "currency": "ETH", - "min_size": "0.01177831", + "min_size": "0.01159747", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/XMR" @@ -1650,7 +1514,7 @@ { "asset": "XEM", "currency": "ETH", - "min_size": "7.20835015", + "min_size": "8.23709659", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/XEM" @@ -1658,7 +1522,7 @@ { "asset": "XLM", "currency": "ETH", - "min_size": "7.69668888", + "min_size": "8.77731941", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/XLM" @@ -1666,7 +1530,7 @@ { "asset": "NEO", "currency": "ETH", - "min_size": "0.03761537", + "min_size": "0.04246609", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/NEO" @@ -1674,7 +1538,7 @@ { "asset": "XMR", "currency": "USDT", - "min_size": "0.01266181", + "min_size": "0.01079137", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/XMR" @@ -1682,55 +1546,47 @@ { "asset": "DASH", "currency": "USDT", - "min_size": "0.00709329", + "min_size": "0.00590621", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/DASH" }, { - "asset": "BCC", + "asset": "BCH", "currency": "ETH", - "min_size": "0.00282371", + "min_size": "0.00218614", "max_size": "1000000", "increment": "0.00000001", - "label": "ETH/BCC" + "label": "ETH/BCH" }, { - "asset": "BCC", + "asset": "BCH", "currency": "USDT", - "min_size": "0.00306588", + "min_size": "0.00202703", "max_size": "1000000", "increment": "0.00000001", - "label": "USDT/BCC" + "label": "USDT/BCH" }, { - "asset": "BCC", + "asset": "BCH", "currency": "BTC", - "min_size": "0.00208856", + "min_size": "0.00157040", "max_size": "1000000", "increment": "0.00000001", - "label": "BTC/BCC" + "label": "BTC/BCH" }, { "asset": "DNT", "currency": "BTC", - "min_size": "24.92522433", + "min_size": "21.15059222", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DNT" }, - { - "asset": "DNT", - "currency": "ETH", - "min_size": "33.29559832", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/DNT" - }, { "asset": "NEO", "currency": "USDT", - "min_size": "0.04087193", + "min_size": "0.03931848", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/NEO" @@ -1738,7 +1594,7 @@ { "asset": "WAVES", "currency": "ETH", - "min_size": "0.54347826", + "min_size": "0.58207285", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/WAVES" @@ -1746,7 +1602,7 @@ { "asset": "STRAT", "currency": "ETH", - "min_size": "0.48543689", + "min_size": "0.52966102", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/STRAT" @@ -1754,23 +1610,15 @@ { "asset": "DGB", "currency": "ETH", - "min_size": "79.16402787", + "min_size": "90.92562284", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/DGB" }, - { - "asset": "FCT", - "currency": "ETH", - "min_size": "0.09307791", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/FCT" - }, { "asset": "OMG", "currency": "USDT", - "min_size": "0.19146217", + "min_size": "0.19083969", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/OMG" @@ -1778,7 +1626,7 @@ { "asset": "ADA", "currency": "BTC", - "min_size": "7.65696784", + "min_size": "7.82962731", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ADA" @@ -1786,7 +1634,7 @@ { "asset": "MANA", "currency": "BTC", - "min_size": "19.23076923", + "min_size": "15.26251526", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MANA" @@ -1794,7 +1642,7 @@ { "asset": "MANA", "currency": "ETH", - "min_size": "25.59115570", + "min_size": "21.95196909", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/MANA" @@ -1802,7 +1650,7 @@ { "asset": "SALT", "currency": "BTC", - "min_size": "0.60245319", + "min_size": "0.61274510", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SALT" @@ -1810,7 +1658,7 @@ { "asset": "SALT", "currency": "ETH", - "min_size": "0.81037277", + "min_size": "0.88099828", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/SALT" @@ -1818,39 +1666,23 @@ { "asset": "TIX", "currency": "BTC", - "min_size": "3.59298649", + "min_size": "3.73134328", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TIX" }, - { - "asset": "TIX", - "currency": "ETH", - "min_size": "4.84575948", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/TIX" - }, { "asset": "RCN", "currency": "BTC", - "min_size": "15.21606817", + "min_size": "15.16990291", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/RCN" }, - { - "asset": "RCN", - "currency": "ETH", - "min_size": "20.48256933", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/RCN" - }, { "asset": "VIB", "currency": "BTC", - "min_size": "11.06194690", + "min_size": "11.19068935", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VIB" @@ -1858,7 +1690,7 @@ { "asset": "VIB", "currency": "ETH", - "min_size": "14.67997651", + "min_size": "16.07613658", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/VIB" @@ -1866,7 +1698,7 @@ { "asset": "MER", "currency": "BTC", - "min_size": "7.17360115", + "min_size": "7.53012048", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/MER" @@ -1874,7 +1706,7 @@ { "asset": "POWR", "currency": "BTC", - "min_size": "4.36604960", + "min_size": "4.41384181", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/POWR" @@ -1882,39 +1714,15 @@ { "asset": "POWR", "currency": "ETH", - "min_size": "5.87116319", + "min_size": "6.41025641", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/POWR" }, - { - "asset": "BTG", - "currency": "BTC", - "min_size": "0.03541312", - "max_size": "1000000", - "increment": "0.00000001", - "label": "BTC/BTG" - }, - { - "asset": "BTG", - "currency": "ETH", - "min_size": "0.04800724", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/BTG" - }, - { - "asset": "BTG", - "currency": "USDT", - "min_size": "0.05138589", - "max_size": "1000000", - "increment": "0.00000001", - "label": "USDT/BTG" - }, { "asset": "ADA", "currency": "ETH", - "min_size": "10.29760066", + "min_size": "11.29943503", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ADA" @@ -1922,7 +1730,7 @@ { "asset": "ENG", "currency": "BTC", - "min_size": "0.94346743", + "min_size": "0.90031691", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ENG" @@ -1930,7 +1738,7 @@ { "asset": "ENG", "currency": "ETH", - "min_size": "1.26797031", + "min_size": "1.30303346", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ENG" @@ -1938,7 +1746,7 @@ { "asset": "ADA", "currency": "USDT", - "min_size": "11.04672263", + "min_size": "10.54116218", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/ADA" @@ -1946,7 +1754,7 @@ { "asset": "XVG", "currency": "USDT", - "min_size": "42.85714286", + "min_size": "44.06580494", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/XVG" @@ -1954,7 +1762,7 @@ { "asset": "NXT", "currency": "USDT", - "min_size": "14.42306791", + "min_size": "14.77832585", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/NXT" @@ -1962,7 +1770,7 @@ { "asset": "UKG", "currency": "BTC", - "min_size": "7.94407372", + "min_size": "8.54408749", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/UKG" @@ -1970,7 +1778,7 @@ { "asset": "UKG", "currency": "ETH", - "min_size": "10.57082452", + "min_size": "12.23421175", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/UKG" @@ -1978,7 +1786,7 @@ { "asset": "IGNIS", "currency": "BTC", - "min_size": "17.42160279", + "min_size": "19.57713391", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/IGNIS" @@ -1986,7 +1794,7 @@ { "asset": "SRN", "currency": "BTC", - "min_size": "5.43714659", + "min_size": "5.71297989", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/SRN" @@ -1994,7 +1802,7 @@ { "asset": "SRN", "currency": "ETH", - "min_size": "7.35672773", + "min_size": "8.15620769", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/SRN" @@ -2002,7 +1810,7 @@ { "asset": "WAX", "currency": "BTC", - "min_size": "5.34644996", + "min_size": "6.19732276", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/WAX" @@ -2010,7 +1818,7 @@ { "asset": "WAX", "currency": "ETH", - "min_size": "7.16876712", + "min_size": "8.92124326", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/WAX" @@ -2018,7 +1826,7 @@ { "asset": "ZRX", "currency": "BTC", - "min_size": "2.26449275", + "min_size": "2.23713647", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/ZRX" @@ -2026,7 +1834,7 @@ { "asset": "ZRX", "currency": "ETH", - "min_size": "3.01719196", + "min_size": "3.19394938", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/ZRX" @@ -2034,39 +1842,23 @@ { "asset": "VEE", "currency": "BTC", - "min_size": "42.37288136", + "min_size": "39.61965135", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/VEE" }, - { - "asset": "VEE", - "currency": "ETH", - "min_size": "57.85697755", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/VEE" - }, { "asset": "BCPT", "currency": "BTC", - "min_size": "3.84615385", + "min_size": "3.77757631", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/BCPT" }, - { - "asset": "BCPT", - "currency": "ETH", - "min_size": "5.17346633", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/BCPT" - }, { "asset": "TRX", "currency": "BTC", - "min_size": "41.39072848", + "min_size": "39.06250000", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TRX" @@ -2074,7 +1866,7 @@ { "asset": "TRX", "currency": "ETH", - "min_size": "55.43237251", + "min_size": "56.69577050", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/TRX" @@ -2082,7 +1874,7 @@ { "asset": "TUSD", "currency": "BTC", - "min_size": "2.07022193", + "min_size": "2.24921278", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/TUSD" @@ -2090,23 +1882,15 @@ { "asset": "LRC", "currency": "BTC", - "min_size": "2.72628135", + "min_size": "2.76946937", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/LRC" }, - { - "asset": "LRC", - "currency": "ETH", - "min_size": "3.68413684", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/LRC" - }, { "asset": "TUSD", "currency": "ETH", - "min_size": "2.73201650", + "min_size": "3.23825808", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/TUSD" @@ -2114,23 +1898,15 @@ { "asset": "UP", "currency": "BTC", - "min_size": "8.31669993", + "min_size": "9.39849624", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/UP" }, - { - "asset": "UP", - "currency": "ETH", - "min_size": "11.49266768", - "max_size": "1000000", - "increment": "0.00000001", - "label": "ETH/UP" - }, { "asset": "DMT", "currency": "BTC", - "min_size": "3.42559605", + "min_size": "3.60854503", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/DMT" @@ -2138,7 +1914,7 @@ { "asset": "DMT", "currency": "ETH", - "min_size": "4.61199303", + "min_size": "5.18817511", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/DMT" @@ -2146,7 +1922,7 @@ { "asset": "TUSD", "currency": "USDT", - "min_size": "2.99580886", + "min_size": "3.00025937", "max_size": "1000000", "increment": "0.00000001", "label": "USDT/TUSD" @@ -2154,7 +1930,7 @@ { "asset": "POLY", "currency": "BTC", - "min_size": "4.81510015", + "min_size": "4.47227191", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/POLY" @@ -2162,7 +1938,7 @@ { "asset": "POLY", "currency": "ETH", - "min_size": "6.41683778", + "min_size": "6.41617904", "max_size": "1000000", "increment": "0.00000001", "label": "ETH/POLY" @@ -2170,17 +1946,337 @@ { "asset": "PRO", "currency": "BTC", - "min_size": "0.00000001", + "min_size": "1.13352981", "max_size": "1000000", "increment": "0.00000001", "label": "BTC/PRO" }, { - "asset": "PRO", + "asset": "SC", + "currency": "USDT", + "min_size": "145.77252392", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USDT/SC" + }, + { + "asset": "TRX", + "currency": "USDT", + "min_size": "52.55785963", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USDT/TRX" + }, + { + "asset": "BLT", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/BLT" + }, + { + "asset": "STORM", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/STORM" + }, + { + "asset": "STORM", + "currency": "ETH", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "ETH/STORM" + }, + { + "asset": "AID", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/AID" + }, + { + "asset": "NGC", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/NGC" + }, + { + "asset": "GTO", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/GTO" + }, + { + "asset": "DCR", + "currency": "USDT", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USDT/DCR" + }, + { + "asset": "OCN", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/OCN" + }, + { + "asset": "OCN", "currency": "ETH", "min_size": "0.00000001", "max_size": "1000000", "increment": "0.00000001", - "label": "ETH/PRO" + "label": "ETH/OCN" + }, + { + "asset": "BTC", + "currency": "USD", + "min_size": "0.00100000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/BTC" + }, + { + "asset": "USDT", + "currency": "USD", + "min_size": "1.00000000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/USDT" + }, + { + "asset": "TUSD", + "currency": "USD", + "min_size": "1.00000000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/TUSD" + }, + { + "asset": "TUBE", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/TUBE" + }, + { + "asset": "CBC", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/CBC" + }, + { + "asset": "CMCT", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/CMCT" + }, + { + "asset": "ETH", + "currency": "USD", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/ETH" + }, + { + "asset": "NLC2", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/NLC2" + }, + { + "asset": "BKX", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/BKX" + }, + { + "asset": "MFT", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/MFT" + }, + { + "asset": "LOOM", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/LOOM" + }, + { + "asset": "RFR", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/RFR" + }, + { + "asset": "DGB", + "currency": "USDT", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USDT/DGB" + }, + { + "asset": "RVN", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/RVN" + }, + { + "asset": "XRP", + "currency": "USD", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/XRP" + }, + { + "asset": "ETC", + "currency": "USD", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/ETC" + }, + { + "asset": "BFT", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/BFT" + }, + { + "asset": "GO", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/GO" + }, + { + "asset": "HYDRO", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/HYDRO" + }, + { + "asset": "UPP", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/UPP" + }, + { + "asset": "ADA", + "currency": "USD", + "min_size": "0.00100000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/ADA" + }, + { + "asset": "ZEC", + "currency": "USD", + "min_size": "0.00100000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/ZEC" + }, + { + "asset": "DOGE", + "currency": "USDT", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USDT/DOGE" + }, + { + "asset": "ENJ", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/ENJ" + }, + { + "asset": "MET", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/MET" + }, + { + "asset": "LTC", + "currency": "USD", + "min_size": "0.00100000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/LTC" + }, + { + "asset": "TRX", + "currency": "USD", + "min_size": "0.00100000", + "max_size": "1000000", + "increment": "0.00000001", + "label": "USD/TRX" + }, + { + "asset": "DTA", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/DTA" + }, + { + "asset": "EDR", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/EDR" + }, + { + "asset": "BOXX", + "currency": "BTC", + "min_size": "0.00000001", + "max_size": "1000000", + "increment": "0.00000001", + "label": "BTC/BOXX" } ] \ No newline at end of file diff --git a/extensions/exchanges/cexio/exchange.js b/extensions/exchanges/cexio/exchange.js index 62af7aa1ed..4f88aa358b 100644 --- a/extensions/exchanges/cexio/exchange.js +++ b/extensions/exchanges/cexio/exchange.js @@ -1,15 +1,19 @@ const CEX = require('cexio-api-node') -var path = require('path') -var n = require('numbro') -var minimist = require('minimist') +const path = require('path') +const n = require('numbro') +const minimist = require('minimist') +const _ = require('lodash') +const debug = require('../../../lib/debug') module.exports = function cexio (conf) { - var s = { + let s = { options: minimist(process.argv) } - var so = s.options + let so = s.options - var public_client, authed_client + let public_client, authed_client, ws_client, ws_authed, ws_subscribed, amount_format + let ws_trades = [] + let orders = {} function publicClient () { if (!public_client) { @@ -33,33 +37,219 @@ module.exports = function cexio (conf) { } function retry (method, args) { - if (so.debug && method !== 'getTrades') { - console.error(('\nCEX.IO API is down! unable to call ' + method + ', retrying in 10s').red) - } + debug.msg(('CEX.IO API is down! unable to call ' + method + ', retrying in 10s').red) setTimeout(function () { exchange[method].apply(exchange, args) }, 10000) } function refreshFees(args) { - var skew = 5000 // in ms - var now = new Date() - var nowUTC = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds()) - var midnightUTC = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds()).setHours(24,0,0,0) - var countdown = midnightUTC - nowUTC + skew - if (so.debug) { - var hours = parseInt((countdown/(1000*60*60))%24) - var minutes = parseInt((countdown/(1000*60))%60) - var seconds = parseInt((countdown/1000)%60) - console.log('\nRefreshing fees in ' + hours + ' hours ' + minutes + ' minutes ' + seconds + ' seconds') + let skew = 5000 // in ms + let now = new Date() + let nowUTC = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds()) + let midnightUTC = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds()).setHours(24,0,0,0) + let countdown = midnightUTC - nowUTC + skew + if (debug.on) { + let hours = parseInt((countdown/(1000*60*60))%24) + let minutes = parseInt((countdown/(1000*60))%60) + let seconds = parseInt((countdown/1000)%60) + debug.msg('Refreshing fees in ' + hours + ' hours ' + minutes + ' minutes ' + seconds + ' seconds') } setTimeout(function() { exchange['setFees'].apply(exchange, args) }, countdown) } - var orders = {} - var exchange = { + function wsClient() { + return new Promise(function(resolve, reject) { + if (!ws_client) { + if (!conf.cexio || !conf.cexio.key || conf.cexio.key === 'YOUR-API-KEY') { + throw new Error('please configure your CEX.IO credentials in ' + path.resolve(__dirname, 'conf.js')) + } + ws_client = new CEX(conf.cexio.key, conf.cexio.secret).ws + ws_client.open() + ws_client.on('open', function() { + debug.msg('WebSocket connected') + ws_client.auth() + ws_client.on('auth', function() { + debug.msg('WebSocket authenticated') + ws_authed = true + resolve(ws_client) + }) + }) + ws_client.on('message', function(msg) { + switch (msg.e) { + case 'disconnecting': + debug.msg('WebSocket disconnecting:', msg.reason) + break + case 'ping': + ws_client.send({ e: 'pong' }) // Heartbeat + break + case 'get-balance': + ws_client.emit('balance', msg.data) + break + case 'ticker': + ws_client.emit('ticker', msg.data) + break + case 'history': + ws_client.emit('history', msg.data) + break + case 'history-update': + msg.data.forEach(function(trade) { + ws_trades.push({ + trade_id: Number(trade[4]), + time: Number(trade[1]), + size: Number(n(trade[2]).divide(amount_format).format('0.00000000')), + price: Number(trade[3]), + side: trade[0] + }) + }) + break + case 'cancel-order': + ws_client.emit('cancelOrder', msg.data) + break + case 'place-order': + ws_client.emit('placeOrder', msg.data) + break + case 'get-order': + ws_client.emit('getOrder', msg.data) + break + } + }) + ws_client.on('error', function(err) { + console.error('WebSocket error:', err) + }) + ws_client.on('close', function() { + ws_client = null + ws_authed = false + ws_subscribed = false + debug.msg('WebSocket disconnected') + }) + } else { + switch (ws_client.ws.readyState) { + case 0: + reject('WebSocket connecting') + break + case 1: + if (ws_authed) { + resolve(ws_client) + } else { + reject('WebSocket auth pending') + } + break + case 2: + reject('WebSocket closing') + break + case 3: + reject('WebSocket closed') + break + } + } + }) + } + + function wsTrades(pair) { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.send({ + e: 'subscribe', + rooms: [ 'pair-' + pair ] + }) + client.once('history', function(trades) { + resolve(trades) + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + function wsBalance() { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.getBalance() + client.once('balance', function(balance) { + if (balance.error) { + reject(balance.error) + } else { + resolve(balance) + } + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + function wsQuote(pair) { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.authTicker(pair) + client.once('ticker', function(quote) { + if (quote.error) { + reject(quote.error) + } else { + resolve(quote) + } + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + function wsCancelOrder(order_id) { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.cancelOrder(order_id) + client.once('cancelOrder', function(order) { + if (order.error) { + reject(order.error) + } else { + resolve() + } + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + function wsTrade(order) { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.placeOrder(order.type, order.pair, order.size, order.price) + client.once('placeOrder', function(order) { + if (order.error) { + reject(order.error) + } else { + resolve(order) + } + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + function wsGetOrder(order_id) { + return new Promise(function(resolve, reject) { + wsClient().then(function(client) { + client.getOrder(order_id) + client.once('getOrder', function(order) { + if (order.error) { + reject(order.error) + } else { + resolve(order) + } + }) + }).catch(function(err) { + reject(err) + }) + }) + } + + let exchange = { name: 'cexio', historyScan: 'forward', backfillRateLimit: 0, @@ -73,103 +263,151 @@ module.exports = function cexio (conf) { }, getTrades: function (opts, cb) { - var func_args = [].slice.call(arguments) - var args - if (typeof opts.from === 'undefined' && opts.product_id === 'BTC-USD') { - args = 2000000 - } else { - args = opts.from - } - var client = publicClient() - var pair = joinProduct(opts.product_id) - client.trade_history(pair, args, function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ngetTrades ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/))) return retry('getTrades', func_args) - var trades = body.map(function (trade) { - return { - trade_id: Number(trade.tid), - time: Number(trade.date) * 1000, - size: Number(trade.amount), - price: Number(trade.price), - side: trade.type + let func_args = [].slice.call(arguments) + if (so._[2] === 'backfill') { // Backfill using REST + let client = publicClient() + let pair = joinProduct(opts.product_id) + client.trade_history(pair, opts.from, function (err, body) { + if (err || (typeof body === 'string' && body.match(/error/))) { + debug.msg(('getTrades ' + (err ? err : body)).red) + return retry('getTrades', func_args) } + let trades = body.map(function (trade) { + return { + trade_id: Number(trade.tid), + time: Number(trade.date) * 1000, + size: Number(trade.amount), + price: Number(trade.price), + side: trade.type + } + }) + cb(null, trades) }) - cb(null, trades) - }) + } else { // WebSocket once Live + if (!ws_subscribed) wsTrades(opts.product_id).then(function(data) { + ws_subscribed = true + amount_format = opts.product_id.split('-')[0] === 'ETH' ? 1000000 : 100000000 // trade amount is an unformatted integer + data.forEach(function(trade) { + let t = trade.split(':') + ws_trades.push({ + trade_id: Number(t[4]), + time: Number(t[1]), + size: Number(n(t[2]).divide(amount_format).format('0.00000000')), + price: Number(t[3]), + side: t[0] + }) + }) + }).catch(function(err) { + debug.msg(('getTrades ' + err).red) + return retry('getTrades', func_args) + }) + _.remove(ws_trades, function(t) { + return t.trade_id <= opts.from + }) + cb(null, ws_trades) + } }, getBalance: function (opts, cb) { - var func_args = [].slice.call(arguments) - var client = authedClient() - client.account_balance(function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ngetBalance ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/))) return retry('getBalance', func_args) - var balance = { asset: 0, currency: 0 } - balance.currency = n(body[opts.currency].available).add(body[opts.currency].orders).format('0.00000000') - balance.currency_hold = n(body[opts.currency].orders).format('0.00000000') - balance.asset = n(body[opts.asset].available).add(body[opts.asset].orders).format('0.00000000') - balance.asset_hold = n(body[opts.asset].orders).format('0.00000000') - cb(null, balance) + let func_args = [].slice.call(arguments) + wsBalance().then(function(data) { + let ws_balance = { + currency: n(data.balance[opts.currency]).format('0.00000000'), + asset: n(data.balance[opts.asset]).format('0.00000000'), + currency_hold: n(data.obalance[opts.currency]).format('0.00000000'), + asset_hold: n(data.obalance[opts.asset]).format('0.00000000') + } + cb(null, ws_balance) + }).catch(function(err) { + debug.msg(('getBalance ' + err).red) + return retry('getBalance', func_args) }) }, getQuote: function (opts, cb) { - var func_args = [].slice.call(arguments) - var client = publicClient() - var pair = joinProduct(opts.product_id) - client.ticker(pair, function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ngetQuote ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/))) return retry('getQuote', func_args) - cb(null, { bid: String(body.bid), ask: String(body.ask) }) + let func_args = [].slice.call(arguments) + wsQuote(opts.product_id).then(function(data) { + let ws_ticker = { + ask: data.ask, + bid: data.bid + } + cb(null, ws_ticker) + }).catch(function(err) { + debug.msg(('getQuote ' + err).red) + return retry('getQuote', func_args) }) }, cancelOrder: function (opts, cb) { - var func_args = [].slice.call(arguments) - var client = authedClient() - client.cancel_order(opts.order_id, function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ncancelOrder ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/) && body !== 'error: Error: Order not found')) return retry('cancelOrder', func_args) + let func_args = [].slice.call(arguments) + wsCancelOrder(opts.order_id).then(function() { cb() + }).catch(function(err) { + debug.msg(('cancelOrder ' + err).red) + if (err !== 'Error: Order not found') return retry('cancelOrder', func_args) }) }, trade: function (action, opts, cb) { - var func_args = [].slice.call(arguments) - var client = authedClient() - var pair = joinProduct(opts.product_id) - if (opts.order_type === 'taker') { + let func_args = [].slice.call(arguments) + if (opts.order_type === 'taker') { // Looks like WebSocket doesn't support taker/market orders (yet?) delete opts.price delete opts.post_only if (action === 'buy') { opts.size = n(opts.size).multiply(opts.orig_price).value() // CEXIO estimates asset size and uses free currency to performe margin buy } - opts.type = 'market' - } - client.place_order(pair, action, opts.size, opts.price, opts.type, function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ntrade ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/) && body !== 'error: Error: Place order error: Insufficient funds.')) return retry('trade', func_args) - if (body === 'error: Error: Place order error: Insufficient funds.') { - var order = { - status: 'rejected', - reject_reason: 'balance' + let client = authedClient() + client.place_order(joinProduct(opts.product_id), action, opts.size, opts.price, 'market', function (err, body) { + if (err || (typeof body === 'string' && body.match(/error/))) { + debug.msg(('trade ' + (err ? err : body)).red) + if (body === 'error: Error: Place order error: Insufficient funds.') { + let order = { + status: 'rejected', + reject_reason: 'balance' + } + return cb(null, order) + } else { + return retry('trade', func_args) + } + } else { + let order = { + id: body.id, + status: 'open', + price: opts.price, + size: opts.size, + post_only: !!opts.post_only, + created_at: body.time, + filled_size: '0', + ordertype: 'taker' + } + orders['~' + body.id] = order + cb(null, order) } - return cb(null, order) - } - if (err) return retry('trade', func_args, err) - order = { - id: body && (body.complete === false || body.message) ? body.id : null, - status: 'open', - price: opts.price, + }) + } else { + wsTrade({ + type: action, + pair: opts.product_id, size: opts.size, - post_only: !!opts.post_only, - created_at: new Date().getTime(), - filled_size: '0', - ordertype: opts.order_type - } - orders['~' + body.id] = order - cb(null, order) - }) + price: opts.price + }).then(function(data) { + let order = { + id: data.id, + status: 'open', + price: data.price, + size: data.amount, + post_only: !!opts.post_only, + created_at: data.time, + filled_size: data.amount - data.pending, + ordertype: 'maker' + } + orders['~' + data.id] = order + cb(null, order) + }).catch(function(err) { + debug.msg(('trade ' + err).red) + return retry('trade', func_args, err) + }) + } }, buy: function (opts, cb) { @@ -181,44 +419,41 @@ module.exports = function cexio (conf) { }, getOrder: function (opts, cb) { - var func_args = [].slice.call(arguments) - var order = orders['~' + opts.order_id] - var client = authedClient() - client.get_order_details(opts.order_id, function (err, body) { - if (so.debug && typeof body === 'string' && body.match(/error/)) console.log(('\ngetOrder ' + body).red) - if (err || (typeof body === 'string' && body.match(/error/))) return retry('getOrder', func_args) - if (body.status === 'c') { + let func_args = [].slice.call(arguments) + let order = orders['~' + opts.order_id] + wsGetOrder(opts.order_id).then(function(data) { + if (data.status === 'c') { order.status = 'rejected' order.reject_reason = 'canceled' - } - if (body.status === 'd' || body.status === 'cd') { + } else if ( data.status === 'd' || data.status === 'cd') { order.status = 'done' order.done_at = new Date().getTime() - order.filled_size = n(body.amount).subtract(body.remains).format('0.00000000') + order.filled_size = n(data.amount).subtract(data.remains).format('0.00000000') } cb(null, order) + }).catch(function(err) { + debug.msg(('getOrder ' + err).red) + return retry('getOrder', func_args) }) }, setFees: function(opts) { - var func_args = [].slice.call(arguments) - var client = authedClient() + let func_args = [].slice.call(arguments) + let client = authedClient() client.get_my_fee(function (err, body) { if (err || (typeof body === 'string' && body.match(/error/))) { - if (so.debug) { - console.log(('\nsetFees ' + body + ' - using fixed fees!').red) - } + debug.msg(('setFees ' + (err ? err : body) + ' - using fixed fees!').red) return retry('setFees', func_args) } else { - var pair = opts.asset + ':' + opts.currency - var makerFee = (parseFloat(body[pair].buyMaker) + parseFloat(body[pair].sellMaker)) / 2 - var takerFee = (parseFloat(body[pair].buy) + parseFloat(body[pair].sell)) / 2 + let pair = opts.asset + ':' + opts.currency + let makerFee = (parseFloat(body[pair].buyMaker) + parseFloat(body[pair].sellMaker)) / 2 + let takerFee = (parseFloat(body[pair].buy) + parseFloat(body[pair].sell)) / 2 if (exchange.makerFee != makerFee) { - if (so.debug) console.log('\nMaker fee changed: ' + exchange.makerFee + '% -> ' + makerFee + '%') + debug.msg('Maker fee changed: ' + exchange.makerFee + '% -> ' + makerFee + '%') exchange.makerFee = makerFee } if (exchange.takerFee != takerFee) { - if (so.debug) console.log('\nTaker fee changed: ' + exchange.takerFee + '% -> ' + takerFee + '%') + debug.msg('Taker fee changed: ' + exchange.takerFee + '% -> ' + takerFee + '%') exchange.takerFee = takerFee } } @@ -232,4 +467,4 @@ module.exports = function cexio (conf) { } } return exchange -} +} \ No newline at end of file diff --git a/extensions/exchanges/cexio/products.json b/extensions/exchanges/cexio/products.json index ef194ff3c3..faa369b143 100644 --- a/extensions/exchanges/cexio/products.json +++ b/extensions/exchanges/cexio/products.json @@ -230,13 +230,5 @@ "max_size": null, "increment": "0.000001", "label": "ZEC/BTC" - }, - { - "asset": "GHS", - "currency": "BTC", - "min_size": "100", - "max_size": null, - "increment": "0.00000001", - "label": "GHS/BTC" } ] \ No newline at end of file diff --git a/extensions/exchanges/gdax/products.json b/extensions/exchanges/gdax/products.json index ceaded9462..992dd7af6e 100644 --- a/extensions/exchanges/gdax/products.json +++ b/extensions/exchanges/gdax/products.json @@ -1,4 +1,20 @@ [ + { + "asset": "ETC", + "currency": "EUR", + "min_size": "0.1", + "max_size": "5000", + "increment": "0.01", + "label": "ETC/EUR" + }, + { + "asset": "BTC", + "currency": "USD", + "min_size": "0.001", + "max_size": "70", + "increment": "0.01", + "label": "BTC/USD" + }, { "asset": "BCH", "currency": "BTC", @@ -31,14 +47,6 @@ "increment": "0.01", "label": "BTC/GBP" }, - { - "asset": "BTC", - "currency": "USD", - "min_size": "0.001", - "max_size": "70", - "increment": "0.01", - "label": "BTC/USD" - }, { "asset": "ETH", "currency": "BTC", @@ -94,5 +102,53 @@ "max_size": "120", "increment": "0.01", "label": "BCH/EUR" + }, + { + "asset": "ETC", + "currency": "USD", + "min_size": "0.1", + "max_size": "5000", + "increment": "0.01", + "label": "ETC/USD" + }, + { + "asset": "ETC", + "currency": "BTC", + "min_size": "0.1", + "max_size": "5000", + "increment": "0.00001", + "label": "ETC/BTC" + }, + { + "asset": "ETC", + "currency": "GBP", + "min_size": "0.1", + "max_size": "5000", + "increment": "0.01", + "label": "ETC/GBP" + }, + { + "asset": "ETH", + "currency": "GBP", + "min_size": "0.01", + "max_size": "350", + "increment": "0.01", + "label": "ETH/GBP" + }, + { + "asset": "LTC", + "currency": "GBP", + "min_size": "0.1", + "max_size": "1000", + "increment": "0.01", + "label": "LTC/GBP" + }, + { + "asset": "BCH", + "currency": "GBP", + "min_size": "0.01", + "max_size": "120", + "increment": "0.01", + "label": "BCH/GBP" } ] \ No newline at end of file diff --git a/extensions/exchanges/gemini/products.json b/extensions/exchanges/gemini/products.json index 6f33d2de11..aede117e65 100644 --- a/extensions/exchanges/gemini/products.json +++ b/extensions/exchanges/gemini/products.json @@ -22,5 +22,29 @@ "max_size": "10000", "increment": "0.01", "label": "ETH/USD" + }, + { + "asset": "ZEC", + "currency": "USD", + "min_size": "0.001", + "max_size": "10000", + "increment": "0.01", + "label": "ZEC/USD" + }, + { + "asset": "ZEC", + "currency": "BTC", + "min_size": "0.001", + "max_size": "10000", + "increment": "0.00001", + "label": "ZEC/BTC" + }, + { + "asset": "ZEC", + "currency": "ETH", + "min_size": "0.001", + "max_size": "10000", + "increment": "0.01", + "label": "ZEC/ETH" } ] \ No newline at end of file diff --git a/extensions/exchanges/hitbtc/exchange.js b/extensions/exchanges/hitbtc/exchange.js index a405d481ab..611501c96b 100644 --- a/extensions/exchanges/hitbtc/exchange.js +++ b/extensions/exchanges/hitbtc/exchange.js @@ -118,7 +118,7 @@ module.exports = function container (conf) { .then(result => { var trades = result.map(function (trade) { return { - trade_id: trade.timestamp, + trade_id: trade.id, time: trade.timestamp, size: parseFloat(trade.amount), price: parseFloat(trade.price), diff --git a/extensions/exchanges/kraken/products.json b/extensions/exchanges/kraken/products.json index 33d55588bf..359324df6d 100644 --- a/extensions/exchanges/kraken/products.json +++ b/extensions/exchanges/kraken/products.json @@ -1,4 +1,39 @@ [ + { + "asset": "ADA", + "currency": "ZCAD", + "min_size": "0.01", + "increment": "0.01", + "label": "ADA/CAD" + }, + { + "asset": "ADA", + "currency": "XETH", + "min_size": "0.01", + "increment": "0.01", + "label": "ADA/ETH" + }, + { + "asset": "ADA", + "currency": "ZEUR", + "min_size": "0.01", + "increment": "0.01", + "label": "ADA/EUR" + }, + { + "asset": "ADA", + "currency": "ZUSD", + "min_size": "0.01", + "increment": "0.01", + "label": "ADA/USD" + }, + { + "asset": "ADA", + "currency": "XXBT", + "min_size": "0.01", + "increment": "0.01", + "label": "ADA/XBT" + }, { "asset": "BCH", "currency": "ZEUR", @@ -97,6 +132,41 @@ "increment": "0.01", "label": "GNO/XBT" }, + { + "asset": "QTUM", + "currency": "ZCAD", + "min_size": "0.01", + "increment": "0.01", + "label": "QTUM/CAD" + }, + { + "asset": "QTUM", + "currency": "XETH", + "min_size": "0.01", + "increment": "0.01", + "label": "QTUM/ETH" + }, + { + "asset": "QTUM", + "currency": "ZEUR", + "min_size": "0.01", + "increment": "0.01", + "label": "QTUM/EUR" + }, + { + "asset": "QTUM", + "currency": "ZUSD", + "min_size": "0.01", + "increment": "0.01", + "label": "QTUM/USD" + }, + { + "asset": "QTUM", + "currency": "XXBT", + "min_size": "0.01", + "increment": "0.01", + "label": "QTUM/XBT" + }, { "asset": "USDT", "currency": "ZUSD", diff --git a/extensions/exchanges/poloniex/exchange.js b/extensions/exchanges/poloniex/exchange.js index 586413b086..f28bf4eb7d 100644 --- a/extensions/exchanges/poloniex/exchange.js +++ b/extensions/exchanges/poloniex/exchange.js @@ -60,11 +60,11 @@ module.exports = function container (conf) { } if (args.start && !args.end) { // add 12 hours - args.end = args.start + opts.offset + args.end = args.start + (opts.offset || this.offset) } else if (args.end && !args.start) { // subtract 12 hours - args.start = args.end - opts.offset + args.start = args.end - (opts.offset || this.offset) } client._public('returnTradeHistory', args, function (err, body) { diff --git a/extensions/exchanges/poloniex/products.json b/extensions/exchanges/poloniex/products.json index fc11f9502c..bb04a735c0 100644 --- a/extensions/exchanges/poloniex/products.json +++ b/extensions/exchanges/poloniex/products.json @@ -16,76 +16,76 @@ "label": "Ardor/Bitcoin" }, { - "asset": "BCH", + "asset": "BAT", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Bitcoin Cash/Bitcoin" + "label": "Basic Attention Token/Bitcoin" }, { - "asset": "BCH", + "asset": "BAT", "currency": "ETH", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Bitcoin Cash/Ethereum" + "label": "Basic Attention Token/Ethereum" }, { - "asset": "BCH", + "asset": "BAT", "currency": "USDT", "min_total": "1", "max_size": null, "increment": "0.00000001", - "label": "Bitcoin Cash/Tether USD" + "label": "Basic Attention Token/Tether USD" }, { - "asset": "BCN", + "asset": "BCH", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Bytecoin/Bitcoin" + "label": "Bitcoin Cash/Bitcoin" }, { - "asset": "BCN", - "currency": "XMR", + "asset": "BCH", + "currency": "ETH", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Bytecoin/Monero" + "label": "Bitcoin Cash/Ethereum" }, { - "asset": "BCY", - "currency": "BTC", - "min_total": "0.0001", + "asset": "BCH", + "currency": "USDT", + "min_total": "1", "max_size": null, "increment": "0.00000001", - "label": "BitCrystals/Bitcoin" + "label": "Bitcoin Cash/Tether USD" }, { - "asset": "BELA", + "asset": "BCN", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Bela Legacy/Bitcoin" + "label": "Bytecoin/Bitcoin" }, { - "asset": "BLK", - "currency": "BTC", + "asset": "BCN", + "currency": "XMR", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "BlackCoin/Bitcoin" + "label": "Bytecoin/Monero" }, { - "asset": "BLK", - "currency": "XMR", + "asset": "BTC", + "currency": "USDC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "BlackCoin/Monero" + "label": "Bitcoin/USD//Coin" }, { "asset": "BTC", @@ -95,30 +95,6 @@ "increment": "0.00000001", "label": "Bitcoin/Tether USD" }, - { - "asset": "BTCD", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "BitcoinDark/Bitcoin" - }, - { - "asset": "BTCD", - "currency": "XMR", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "BitcoinDark/Monero" - }, - { - "asset": "BTM", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "Bitmark/Bitcoin" - }, { "asset": "BTS", "currency": "BTC", @@ -208,12 +184,36 @@ "label": "Dogecoin/Bitcoin" }, { - "asset": "EMC2", + "asset": "DOGE", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "Dogecoin/Tether USD" + }, + { + "asset": "EOS", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Einsteinium/Bitcoin" + "label": "EOS/Bitcoin" + }, + { + "asset": "EOS", + "currency": "ETH", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "EOS/Ethereum" + }, + { + "asset": "EOS", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "EOS/Tether USD" }, { "asset": "ETC", @@ -247,6 +247,14 @@ "increment": "0.00000001", "label": "Ethereum/Bitcoin" }, + { + "asset": "ETH", + "currency": "USDC", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "Ethereum/USD//Coin" + }, { "asset": "ETH", "currency": "USDT", @@ -271,22 +279,6 @@ "increment": "0.00000001", "label": "Factom/Bitcoin" }, - { - "asset": "FLDC", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "FoldingCoin/Bitcoin" - }, - { - "asset": "FLO", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "Florincoin/Bitcoin" - }, { "asset": "GAME", "currency": "BTC", @@ -344,12 +336,12 @@ "label": "Golem/Ethereum" }, { - "asset": "GRC", - "currency": "BTC", - "min_total": "0.0001", + "asset": "GNT", + "currency": "USDT", + "min_total": "1", "max_size": null, "increment": "0.00000001", - "label": "Gridcoin Research/Bitcoin" + "label": "Golem/Tether USD" }, { "asset": "HUC", @@ -359,6 +351,30 @@ "increment": "0.00000001", "label": "Huntercoin/Bitcoin" }, + { + "asset": "KNC", + "currency": "BTC", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "Kyber/Bitcoin" + }, + { + "asset": "KNC", + "currency": "ETH", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "Kyber/Ethereum" + }, + { + "asset": "KNC", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "Kyber/Tether USD" + }, { "asset": "LBC", "currency": "BTC", @@ -367,6 +383,30 @@ "increment": "0.00000001", "label": "LBRY Credits/Bitcoin" }, + { + "asset": "LOOM", + "currency": "BTC", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "LOOM Network/Bitcoin" + }, + { + "asset": "LOOM", + "currency": "ETH", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "LOOM Network/Ethereum" + }, + { + "asset": "LOOM", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "LOOM Network/Tether USD" + }, { "asset": "LSK", "currency": "BTC", @@ -383,6 +423,14 @@ "increment": "0.00000001", "label": "Lisk/Ethereum" }, + { + "asset": "LSK", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "Lisk/Tether USD" + }, { "asset": "LTC", "currency": "BTC", @@ -431,14 +479,6 @@ "increment": "0.00000001", "label": "NAVCoin/Bitcoin" }, - { - "asset": "NEOS", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "Neoscoin/Bitcoin" - }, { "asset": "NMC", "currency": "BTC", @@ -447,14 +487,6 @@ "increment": "0.00000001", "label": "Namecoin/Bitcoin" }, - { - "asset": "NXC", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "Nexium/Bitcoin" - }, { "asset": "NXT", "currency": "BTC", @@ -512,36 +544,36 @@ "label": "PascalCoin/Bitcoin" }, { - "asset": "PINK", + "asset": "PPC", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Pinkcoin/Bitcoin" + "label": "Peercoin/Bitcoin" }, { - "asset": "POT", + "asset": "QTUM", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "PotCoin/Bitcoin" + "label": "Qtum/Bitcoin" }, { - "asset": "PPC", - "currency": "BTC", + "asset": "QTUM", + "currency": "ETH", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Peercoin/Bitcoin" + "label": "Qtum/Ethereum" }, { - "asset": "RADS", - "currency": "BTC", - "min_total": "0.0001", + "asset": "QTUM", + "currency": "USDT", + "min_total": "1", "max_size": null, "increment": "0.00000001", - "label": "Radium/Bitcoin" + "label": "Qtum/Tether USD" }, { "asset": "REP", @@ -568,28 +600,52 @@ "label": "Augur/Tether USD" }, { - "asset": "RIC", + "asset": "SBD", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Riecoin/Bitcoin" + "label": "Steem Dollars/Bitcoin" }, { - "asset": "SBD", + "asset": "SC", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Steem Dollars/Bitcoin" + "label": "Siacoin/Bitcoin" }, { "asset": "SC", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "Siacoin/Tether USD" + }, + { + "asset": "SNT", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Siacoin/Bitcoin" + "label": "Status/Bitcoin" + }, + { + "asset": "SNT", + "currency": "ETH", + "min_total": "0.0001", + "max_size": null, + "increment": "0.00000001", + "label": "Status/Ethereum" + }, + { + "asset": "SNT", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "Status/Tether USD" }, { "asset": "STEEM", @@ -648,20 +704,20 @@ "label": "Syscoin/Bitcoin" }, { - "asset": "VIA", - "currency": "BTC", + "asset": "USDT", + "currency": "USDC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "Viacoin/Bitcoin" + "label": "Tether USD/USD//Coin" }, { - "asset": "VRC", + "asset": "VIA", "currency": "BTC", "min_total": "0.0001", "max_size": null, "increment": "0.00000001", - "label": "VeriCoin/Bitcoin" + "label": "Viacoin/Bitcoin" }, { "asset": "VTC", @@ -671,14 +727,6 @@ "increment": "0.00000001", "label": "Vertcoin/Bitcoin" }, - { - "asset": "XBC", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "BitcoinPlus/Bitcoin" - }, { "asset": "XCP", "currency": "BTC", @@ -735,14 +783,6 @@ "increment": "0.00000001", "label": "Ripple/Tether USD" }, - { - "asset": "XVC", - "currency": "BTC", - "min_total": "0.0001", - "max_size": null, - "increment": "0.00000001", - "label": "Vcash/Bitcoin" - }, { "asset": "ZEC", "currency": "BTC", @@ -790,5 +830,13 @@ "max_size": null, "increment": "0.00000001", "label": "0x/Ethereum" + }, + { + "asset": "ZRX", + "currency": "USDT", + "min_total": "1", + "max_size": null, + "increment": "0.00000001", + "label": "0x/Tether USD" } ] \ No newline at end of file diff --git a/extensions/exchanges/wexnz/products.json b/extensions/exchanges/wexnz/products.json index 008e969088..1c8cbb1eb5 100644 --- a/extensions/exchanges/wexnz/products.json +++ b/extensions/exchanges/wexnz/products.json @@ -411,8 +411,64 @@ "asset": "USDT", "currency": "USD", "min_size": "0.01", - "max_size": "2", + "max_size": "10", "increment": "0.0001", "label": "USDT/USD" + }, + { + "asset": "BTC", + "currency": "USDT", + "min_size": "0.001", + "max_size": "500000", + "increment": "0.0001", + "label": "BTC/USDT" + }, + { + "asset": "XMR", + "currency": "USD", + "min_size": "0.01", + "max_size": "10000", + "increment": "0.0001", + "label": "XMR/USD" + }, + { + "asset": "XMR", + "currency": "BTC", + "min_size": "0.01", + "max_size": "1", + "increment": "0.0001", + "label": "XMR/BTC" + }, + { + "asset": "XMR", + "currency": "ETH", + "min_size": "0.01", + "max_size": "30", + "increment": "0.0001", + "label": "XMR/ETH" + }, + { + "asset": "XMR", + "currency": "RUR", + "min_size": "0.01", + "max_size": "500000", + "increment": "0.0001", + "label": "XMR/RUR" + }, + { + "asset": "ZEC", + "currency": "RUR", + "min_size": "0.01", + "max_size": "500000", + "increment": "0.0001", + "label": "ZEC/RUR" + }, + { + "asset": "XMR", + "currency": "EUR", + "min_size": "0.01", + "max_size": "10000", + "increment": "0.0001", + "label": "XMR/EUR" } ] \ No newline at end of file diff --git a/extensions/output/api.js b/extensions/output/api.js index 65d9d2129b..14cf169b1f 100644 --- a/extensions/output/api.js +++ b/extensions/output/api.js @@ -46,7 +46,7 @@ module.exports = function api () { res.sendFile(path.join(__dirname+'../../../stats/index.html')) }) - if (ip) { + if (ip && ip !== '0.0.0.0') { app.listen(port, ip) tradeObject.url = ip + ':' + port + '/' } else { diff --git a/extensions/strategies/rsi/strategy.js b/extensions/strategies/rsi/strategy.js index 0107f122fe..fac5c82feb 100644 --- a/extensions/strategies/rsi/strategy.js +++ b/extensions/strategies/rsi/strategy.js @@ -26,7 +26,7 @@ module.exports = { onPeriod: function (s, cb) { if (s.in_preroll) return cb() if (typeof s.period.rsi === 'number') { - if (s.trend !== 'oversold' && s.trend !== 'long' && s.period.rsi <= s.options.oversold_rsi) { + if (s.trend === undefined && s.period.rsi <= s.options.oversold_rsi) { s.rsi_low = s.period.rsi s.trend = 'oversold' } @@ -38,6 +38,10 @@ module.exports = { s.rsi_high = s.period.rsi } } + if (s.trend !== 'oversold' && s.trend !== 'long' && s.period.rsi >= s.options.overbought_rsi) { + s.rsi_high = s.period.rsi + s.trend = 'long' + } if (s.trend === 'long') { s.rsi_high = Math.max(s.rsi_high, s.period.rsi) if (s.period.rsi <= s.rsi_high / s.options.rsi_divisor) { @@ -67,6 +71,9 @@ module.exports = { if (s.period.rsi <= s.options.oversold_rsi) { color = 'green' } + if (s.period.rsi >= s.options.overbought_rsi) { + color = 'red' + } cols.push(z(4, n(s.period.rsi).format('0'), ' ')[color]) } return cols diff --git a/extensions/strategies/ta_srsi_bollinger/strategy.js b/extensions/strategies/ta_srsi_bollinger/strategy.js new file mode 100644 index 0000000000..cf46a56e29 --- /dev/null +++ b/extensions/strategies/ta_srsi_bollinger/strategy.js @@ -0,0 +1,161 @@ +let z = require('zero-fill') + , n = require('numbro') + , ta_srsi = require('../../../lib/ta_stochrsi') + , ta_bollinger = require('../../../lib/ta_bollinger') + , Phenotypes = require('../../../lib/phenotype') +module.exports = { + name: 'srsi_bollinger', + description: 'Stochastic RSI BollingerBand Strategy', + + getOptions: function () { + this.option('period', 'period length, same as --period_length', String, '5m') + this.option('period_length', 'period length, same as --period', String, '5m') + this.option('min_periods', 'min. number of history periods', Number, 200) + this.option('rsi_periods', 'number of RSI periods', 14) + this.option('srsi_periods', 'number of Stochastic RSI periods',Number, 9) + this.option('srsi_k', '%D line', Number, 3) + this.option('srsi_d', '%D line', Number, 3) + this.option('srsi_k_sell', 'K must be above this before selling', Number, 60) + this.option('srsi_k_buy', 'K must be below this before buying', Number, 30) + this.option('srsi_dType','D type mode : SMA,EMA,WMA,DEMA,TEMA,TRIMA,KAMA,MAMA,T3', String, 'SMA'), + + //'SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3' + + + this.option('bollinger_size', 'period size', Number, 14) + this.option('bollinger_updev', 'Upper Bollinger Time Divisor', Number, 2) + this.option('bollinger_dndev', 'Lower Bollinger Time Divisor', Number, 2) + this.option('bollinger_dType','mode: : SMA,EMA,WMA,DEMA,TEMA,TRIMA,KAMA,MAMA,T3', String, 'SMA') + this.option('bollinger_upper_bound_pct', 'pct the current price should be near the bollinger upper bound before we sell', Number, 1) + this.option('bollinger_lower_bound_pct', 'pct the current price should be near the bollinger lower bound before we buy', Number, 1) + + + }, + + + calculate: function (s) { + + if (s.in_preroll) return + + }, + + onPeriod: function (s, cb) { + //make sure we have all values + if (s.in_preroll) return cb() + + ta_bollinger(s,'tabollinger',s.options.bollinger_size, s.options.bollinger_updev, s.options.bollinger_dndev, s.options.bollinger_dType). + then(function(inbol){ + ta_srsi(s, 'srsi', s.options.srsi_periods, s.options.srsi_k, s.options.srsi_d, s.options.srsi_dType). + then(function(inres) { + + if (!inres) return cb() + var divergent = inres.outFastK[inres.outFastK.length-1] - inres.outFastD[inres.outFastD.length-1] + s.period.srsi_D = inres.outFastD[inres.outFastD.length-1] + s.period.srsi_K = inres.outFastK[inres.outFastK.length-1] + var last_divergent = inres.outFastK[inres.outFastK.length-2] - inres.outFastD[inres.outFastD.length-2] + var _switch = 0//s.lookback[0]._switch + var nextdivergent = (( divergent + last_divergent ) /2) + (divergent - last_divergent) + if ((last_divergent <= 0 && (divergent > 0)) ) _switch = 1 // price rising + if ((last_divergent >= 0 && (divergent < 0)) ) _switch = -1 // price falling + + s.period.divergent = divergent + s.period._switch = _switch + + + + let upperBound = inbol.outRealUpperBand[inbol.outRealUpperBand.length-1] + let lowerBound = inbol.outRealLowerBand[inbol.outRealLowerBand.length-1] + let midBound =inbol.outRealMiddleBand[inbol.outRealMiddleBand.length-1] + if (!s.period.bollinger) s.period.bollinger = {} + + s.period.bollinger.upperBound = upperBound + s.period.bollinger.lowerBound = lowerBound + s.period.bollinger.midBound = midBound + + + // K is fast moving + + s.signal = null + if (_switch != 0 ) + { + if (s.period.close > ((upperBound / 100) * (100 - s.options.bollinger_upper_bound_pct)) && nextdivergent < divergent && _switch == -1 && s.period.srsi_K > s.options.srsi_k_sell) + { + s.signal = 'sell' + } + else + if (s.period.close < ((lowerBound / 100) * (100 + s.options.bollinger_lower_bound_pct)) && nextdivergent >= divergent && _switch == 1 && s.period.srsi_K < s.options.srsi_k_buy) + { + s.signal = 'buy' + } + + } + + cb() + }).catch(function(){ + cb()}) + + }).catch(function(){ + cb()}) + + }, + + onReport: function (s) { + var cols = [] + if (s.period.bollinger) { + if (s.period.bollinger.upperBound && s.period.bollinger.lowerBound) { + let upperBound = s.period.bollinger.upperBound + let lowerBound = s.period.bollinger.lowerBound + var color = 'grey' + if (s.period.close > (upperBound / 100) * (100 - s.options.bollinger_upper_bound_pct)) { + color = 'green' + } else if (s.period.close < (lowerBound / 100) * (100 + s.options.bollinger_lower_bound_pct)) { + color = 'red' + } + cols.push(z(8, n(s.period.close).format('+00.0000'), ' ')[color]) + cols.push(z(8, n(lowerBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(upperBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.srsi_D).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.srsi_K).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(5, n(s.period.divergent).format('0').substring(0,7), ' ').cyan) + cols.push(z(2, n(s.period._switch).format('0').substring(0,2), ' ').cyan) + } + } + else { + cols.push(' ') + } + return cols + }, + + phenotypes: + { + // -- common + period_length: Phenotypes.ListOption(['1m', '2m', '3m', '4m', '5m', '10m','15m']),//, '10m','15m','30m','45m','60m' + min_periods: Phenotypes.Range(52, 150), + markdown_buy_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + markup_sell_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + order_type: Phenotypes.ListOption(['maker', 'taker']), + sell_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + buy_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + profit_stop_enable_pct: Phenotypes.RangeFactor(0.0, 5.0, 0.1), + profit_stop_pct: Phenotypes.RangeFactor(0.0, 50.0, 0.1), + + // -- strategy + rsi_periods: Phenotypes.Range(10, 20), + srsi_periods: Phenotypes.Range(5, 30), + srsi_k: Phenotypes.Range(1, 30), + srsi_d: Phenotypes.Range(1, 30), + srsi_k_sell: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + srsi_k_buy: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + srsi_dType: Phenotypes.ListOption(['SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3']), + + + + bollinger_size: Phenotypes.RangeFactor(10, 25, 1), + bollinger_updev: Phenotypes.RangeFactor(1, 3.0, 0.1), + bollinger_dndev: Phenotypes.RangeFactor(1, 3.0, 0.1), + bollinger_dType: Phenotypes.ListOption(['SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3']), + bollinger_upper_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + bollinger_lower_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0) + + } +} diff --git a/extensions/strategies/ta_stoch_bollinger/strategy.js b/extensions/strategies/ta_stoch_bollinger/strategy.js new file mode 100644 index 0000000000..3e8e83dd1f --- /dev/null +++ b/extensions/strategies/ta_stoch_bollinger/strategy.js @@ -0,0 +1,150 @@ +let z = require('zero-fill') + , n = require('numbro') + , ta_stoch = require('../../../lib/ta_stoch') + , ta_bollinger = require('../../../lib/ta_bollinger') + , Phenotypes = require('../../../lib/phenotype') +module.exports = { + name: 'ta_stoch_bollinger', + description: 'Stochastic BollingerBand Strategy', + + getOptions: function () { + this.option('period', 'period length, same as --period_length', String, '5m') + this.option('period_length', 'period length, same as --period', String, '5m') + this.option('min_periods', 'min. number of history periods', Number, 200) + this.option('rsi_periods', 'Time period for building the Fast-K line', Number, 14) + this.option('stoch_periods', 'Time period for building the Fast-K line', Number, 5) + this.option('stoch_k', 'Smoothing for making the Slow-K line. Usually set to 3', Number, 3) + this.option('stoch_k_ma_type','Type of Moving Average for Slow-K : SMA,EMA,WMA,DEMA,TEMA,TRIMA,KAMA,MAMA,T3', String, 'SMA'), + this.option('stoch_d', 'Smoothing for making the Slow-D line', Number, 3) + this.option('stoch_d_ma_type','Type of Moving Average for Slow-D : SMA,EMA,WMA,DEMA,TEMA,TRIMA,KAMA,MAMA,T3', String, 'SMA'), + this.option('stoch_k_sell', 'K must be above this before selling', Number, 70) + this.option('stoch_k_buy', 'K must be below this before buying', Number, 30) + + this.option('bollinger_size', 'period size', Number, 14) + this.option('bollinger_updev', '', Number, 2) + this.option('bollinger_dndev', '', Number, 2) + this.option('bollinger_dType','mode: : SMA,EMA,WMA,DEMA,TEMA,TRIMA,KAMA,MAMA,T3', String, 'SMA') + this.option('bollinger_upper_bound_pct', 'pct the current price should be near the bollinger upper bound before we sell', Number,0) + this.option('bollinger_lower_bound_pct', 'pct the current price should be near the bollinger lower bound before we buy', Number, 0) + }, + + + calculate: function (s) { + if (s.in_preroll) return + }, + + onPeriod: function (s, cb) { + //make sure we have all values + if (s.in_preroll) return cb() + ta_bollinger(s,'tabollinger',s.options.bollinger_size, s.options.bollinger_updev, s.options.bollinger_dndev, s.options.bollinger_dType). + then(function(inbol){ + ta_stoch(s, 'stoch', s.options.stoch_periods, s.options.stoch_k, s.options.stoch_k_ma_type, s.options.stoch_d, s.options.stoch_d_ma_type). + then(function(inres) { + + if (!inres) return cb() + var divergent = inres.k[inres.k.length-1] - inres.d[inres.k.length-1] + s.period.stoch_D = inres.d[inres.d.length-1] + s.period.stoch_K = inres.k[inres.k.length-1] + var last_divergent = inres.k[inres.k.length-2] - inres.d[inres.d.length-2] + var _switch = 0 + var nextdivergent = (( divergent + last_divergent ) /2) + (divergent - last_divergent) + if ((last_divergent <= 0 && (divergent > 0)) ) _switch = 1 // price rising + if ((last_divergent >= 0 && (divergent < 0)) ) _switch = -1 // price falling + + s.period.divergent = divergent + s.period._switch = _switch + + let upperBound = inbol.outRealUpperBand[inbol.outRealUpperBand.length-1] + let lowerBound = inbol.outRealLowerBand[inbol.outRealLowerBand.length-1] + let midBound =inbol.outRealMiddleBand[inbol.outRealMiddleBand.length-1] + if (!s.period.bollinger) s.period.bollinger = {} + + s.period.bollinger.upperBound = upperBound + s.period.bollinger.lowerBound = lowerBound + s.period.bollinger.midBound = midBound + + + // K is fast moving + + s.signal = null + if (_switch != 0 ) + { + if (s.period.close >= midBound && s.period.close >= ((upperBound / 100) * (100 + s.options.bollinger_upper_bound_pct)) && nextdivergent < divergent && _switch == -1 && s.period.stoch_K > s.options.stoch_k_sell) + { + s.signal = 'sell' + } + else + if (s.period.close < (lowerBound / 100) * (100 + s.options.bollinger_lower_bound_pct) && nextdivergent >= divergent && _switch == 1 && s.period.stoch_K < s.options.stoch_k_buy) + { + s.signal = 'buy' + } + } + + cb() + }).catch(function(){ + cb()}) + + }).catch(function(){ + cb()}) + }, + + onReport: function (s) { + var cols = [] + if (s.period.bollinger) { + if (s.period.bollinger.upperBound && s.period.bollinger.lowerBound) { + let upperBound = s.period.bollinger.upperBound + let lowerBound = s.period.bollinger.lowerBound + var color = 'grey' + if (s.period.close > (upperBound / 100) * ( 100 + s.options.bollinger_upper_bound_pct)) { color = 'green' + } + if (s.period.close < (lowerBound / 100) * ( 100 - s.options.bollinger_lower_bound_pct)) { color = 'red' + } + cols.push(z(8, n(s.period.close).format('+00.0000'), ' ')[color]) + cols.push(z(8, n(lowerBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(upperBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.stoch_D).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.stoch_K).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(5, n(s.period.divergent).format('0').substring(0,7), ' ').cyan) + cols.push(z(2, n(s.period._switch).format('0').substring(0,2), ' ').cyan) + } + } + else { + cols.push(' ') + } + return cols + }, + + phenotypes: + { + // -- common + period_length: Phenotypes.ListOption(['1m', '2m', '3m', '4m', '5m', '10m','15m']),//, '10m','15m','30m','45m','60m' + min_periods: Phenotypes.Range(52, 150), + markdown_buy_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + markup_sell_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + order_type: Phenotypes.ListOption(['maker', 'taker']), + sell_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + buy_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + profit_stop_enable_pct: Phenotypes.RangeFactor(0.0, 5.0, 0.1), + profit_stop_pct: Phenotypes.RangeFactor(0.0, 50.0, 0.1), + + // -- strategy + rsi_periods: Phenotypes.Range(10, 30), + stoch_periods: Phenotypes.Range(5, 30), + stoch_k: Phenotypes.Range(1, 10), + stoch_k_ma_type: Phenotypes.ListOption(['SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3']), + stoch_d: Phenotypes.Range(1, 10), + stoch_k_sell: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + stoch_k_buy: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + stoch_d_ma_type: Phenotypes.ListOption(['SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3']), + + + + bollinger_size: Phenotypes.RangeFactor(10, 25, 1), + bollinger_updev: Phenotypes.RangeFactor(1, 3.0, 0.1), + bollinger_dndev: Phenotypes.RangeFactor(1, 3.0, 0.1), + bollinger_dType: Phenotypes.ListOption(['SMA','EMA','WMA','DEMA','TEMA','TRIMA','KAMA','MAMA','T3']), + bollinger_upper_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + bollinger_lower_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0) + + } +} diff --git a/extensions/strategies/ti_bollinger/strategy.js b/extensions/strategies/ti_bollinger/strategy.js new file mode 100644 index 0000000000..666d6983e3 --- /dev/null +++ b/extensions/strategies/ti_bollinger/strategy.js @@ -0,0 +1,97 @@ +var z = require('zero-fill') + , n = require('numbro') + , tulip_bollinger = require('../../../lib/ti_bollinger') + , Phenotypes = require('../../../lib/phenotype') + +module.exports = { + name: 'ti_bollinger', + description: 'Buy when (Signal ≤ Lower Bollinger Band) and sell when (Signal ≥ Upper Bollinger Band).', + + getOptions: function () { + this.option('period', 'period length, same as --period_length', String, '5m') + this.option('period_length', 'period length, same as --period', String, '5m') + this.option('bollinger_size', 'period size', Number, 14) + this.option('bollinger_time', 'times of standard deviation between the upper band and the moving averages', Number, 2) + this.option('bollinger_upper_bound_pct', 'pct the current price should be near the bollinger upper bound before we sell', Number, 0) + this.option('bollinger_lower_bound_pct', 'pct the current price should be near the bollinger lower bound before we buy', Number, 0) + }, + + calculate: function (s) { + if (s.in_preroll) return + }, + + onPeriod: function (s, cb) { + + tulip_bollinger(s,'tulip_bollinger', s.options.bollinger_size, s.options.bollinger_time). + then(function(result) + { + if (!result) cb() + let bollinger = { + LowerBand: result.LowerBand[result.LowerBand.length-1], + MiddleBand: result.MiddleBand[result.MiddleBand.length-1], + UpperBand: result.UpperBand[result.UpperBand.length-1] + } + s.period.report = bollinger + if (bollinger.UpperBand) { + let upperBound = (bollinger.UpperBand / 100) * (100 - s.options.bollinger_upper_bound_pct) + let lowerBound = (bollinger.LowerBand / 100) * (100 + s.options.bollinger_lower_bound_pct) + s.signal = null // hold + if (s.period.close < lowerBound ) { + s.signal = 'buy' + } + if (s.period.close > upperBound ) { + s.signal = 'sell' + } + + + } + cb() + }).catch(function(){ + s.signal = null // hold + cb() + }) + }, + + onReport: function (s) { + var cols = [] + if (s.period.report) { + if (s.period.report.UpperBand && s.period.report.LowerBand) { + let upperBound = s.period.report.UpperBand + let lowerBound = s.period.report.LowerBand + var color = 'grey' + if (s.period.close > (upperBound / 100) * (100 - s.options.bollinger_upper_bound_pct)) { + color = 'green' + } else if (s.period.close < (lowerBound / 100) * (100 + s.options.bollinger_lower_bound_pct)) { + color = 'red' + } + cols.push(z(8, n(s.period.close).format('+00.0000'), ' ')[color]) + cols.push(z(8, n(lowerBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(upperBound).format('0.000000').substring(0,7), ' ').cyan) + } + } + else { + cols.push(' ') + } + return cols + }, + + phenotypes: { + // -- common + period_length: Phenotypes.RangePeriod(1, 120, 'm'), + markdown_buy_pct: Phenotypes.RangeFactor(-1.0, 5.0, 0.1), + markup_sell_pct: Phenotypes.RangeFactor(-1.0, 5.0, 0.1), + order_type: Phenotypes.ListOption(['maker', 'taker']), + sell_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.01), + buy_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.01), + profit_stop_enable_pct: Phenotypes.RangeFactor(0.0, 5.0,0.1), + profit_stop_pct: Phenotypes.RangeFactor(0.0, 20.0,0.1), + rsi_periods: Phenotypes.Range(6, 16), + + // -- strategy + bollinger_size: Phenotypes.RangeFactor(1, 30, 1), + bollinger_time: Phenotypes.RangeFactor(1.0, 14.0, 0.1), + bollinger_upper_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 0.1), + bollinger_lower_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 0.1) + } +} + diff --git a/extensions/strategies/ti_stoch/strategy.js b/extensions/strategies/ti_stoch/strategy.js new file mode 100644 index 0000000000..48f3eb9fc0 --- /dev/null +++ b/extensions/strategies/ti_stoch/strategy.js @@ -0,0 +1,100 @@ +var z = require('zero-fill') + , n = require('numbro') + , tulip_stoch = require('../../../lib/ti_stoch') + , Phenotypes = require('../../../lib/phenotype') + +module.exports = { + name: 'ti_stoch', + description: 'Buy when (Signal ≤ srsi_k_buy) and sell when (Signal ≥ srsi_k_sell). (this should not be used alone. you will lose over time)', + + getOptions: function () { + this.option('period', 'period length, same as --period_length', String, '5m') + this.option('period_length', 'period length, same as --period', String, '5m') + this.option('rsi_periods', 'number of RSI periods', 14) + this.option('stoch_kperiods', 'number of RSI periods', Number, 9) + this.option('stoch_k', '%D line', Number, 3) + this.option('stoch_d', '%D line', Number, 3) + this.option('stoch_k_sell', 'K must be above this before selling', Number, 80) + this.option('stoch_k_buy', 'K must be below this before buying', Number, 10) + }, + + calculate: function (s) { + if (s.in_preroll) return + }, + + onPeriod: function (s, cb) { + if (s.in_preroll) return cb() + tulip_stoch(s,'tulip_stoch', s.options.rsi_periods, s.options.stoch_k, s.options.stoch_d). + then(function(result) + { + if (!result) return cb() + if (result.k.length == 0) return cb() + var divergent = result.k[result.k.length-1] - result.d[result.d.length-1] + s.period.srsi_D = result.d[result.d.length-1] + s.period.srsi_K = result.k[result.k.length-1] + var last_divergent = result.k[result.k.length-2] - result.d[result.d.length-2] + var _switch = 0//s.lookback[0]._switch + var nextdivergent = (( divergent + last_divergent ) /2) + (divergent - last_divergent) + if ((last_divergent <= 0 && (divergent > 0)) ) _switch = 1 // price rising + if ((last_divergent >= 0 && (divergent < 0)) ) _switch = -1 // price falling + + s.period.divergent = divergent + s.period._switch = _switch + + s.signal = null + if (_switch != 0 ) + { + if (_switch == -1 && s.period.srsi_K > s.options.stoch_k_sell) + { + s.signal = 'sell' + } + else + if ( nextdivergent >= divergent && _switch == 1 && s.period.srsi_K < s.options.stoch_k_buy) + { + s.signal = 'buy' + } + + } + + return cb() + }).catch(function(){ + s.signal = null // hold + return cb() + }) + + }, + + onReport: function (s) { + var cols = [] + + cols.push(z(8, n(s.period.close).format('+00.0000'), ' ').cyan) + cols.push(z(8, n( s.period.srsi_D).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.srsi_K).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.divergent).format('0').substring(0,3), ' ').cyan) + cols.push(z(8, n( s.period._switch ).format('0').substring(0,2), ' ').cyan) + + + return cols + }, + + phenotypes: { + // -- common + period_length: Phenotypes.RangePeriod(1, 120, 'm'), + markdown_buy_pct: Phenotypes.RangeFactor(-1.0, 5.0, 0.1), + markup_sell_pct: Phenotypes.RangeFactor(-1.0, 5.0, 0.1), + order_type: Phenotypes.ListOption(['maker', 'taker']), + sell_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.01), + buy_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.01), + profit_stop_enable_pct: Phenotypes.RangeFactor(0.0, 5.0,0.1), + profit_stop_pct: Phenotypes.RangeFactor(0.0, 20.0,0.1), + + // -- strategy + rsi_periods: Phenotypes.Range(10, 30), + stoch_periods: Phenotypes.Range(5, 30), + stoch_k: Phenotypes.Range(1, 10), + stoch_d: Phenotypes.Range(1, 10), + stoch_k_sell: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + stoch_k_buy: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + } +} + diff --git a/extensions/strategies/ti_stoch_bollinger/strategy.js b/extensions/strategies/ti_stoch_bollinger/strategy.js new file mode 100644 index 0000000000..1d35da1577 --- /dev/null +++ b/extensions/strategies/ti_stoch_bollinger/strategy.js @@ -0,0 +1,142 @@ +let z = require('zero-fill') + , n = require('numbro') + , ti_stoch = require('../../../lib/ti_stoch') + , ti_bollinger = require('../../../lib/ti_bollinger') + , Phenotypes = require('../../../lib/phenotype') +module.exports = { + name: 'ti_stoch_bollinger', + description: 'Stochastic BollingerBand Strategy', + + getOptions: function () { + this.option('period', 'period length, same as --period_length', String, '5m') + this.option('period_length', 'period length, same as --period', String, '5m') + this.option('min_periods', 'min. number of history periods', Number, 200) + this.option('rsi_periods', 'number of RSI periods', 14) + this.option('stoch_kperiods', 'number of RSI periods', Number, 9) + this.option('stoch_k', '%D line', Number, 5) + this.option('stoch_d', '%D line', Number, 3) + this.option('stoch_k_sell', 'K must be above this before selling', Number, 70) + this.option('stoch_k_buy', 'K must be below this before buying', Number, 20) + + this.option('bollinger_size', 'period size', Number, 14) + this.option('bollinger_time', 'times of standard deviation between the upper band and the moving averages', Number, 2) + this.option('bollinger_upper_bound_pct', 'pct the current price should be near the bollinger upper bound before we sell', Number, 0) + this.option('bollinger_lower_bound_pct', 'pct the current price should be near the bollinger lower bound before we buy', Number, 0) + }, + + + calculate: function (s) { + if (s.in_preroll) return + }, + + onPeriod: function (s, cb) { + //make sure we have all values + if (s.in_preroll) return cb() + + ti_bollinger(s,'ti_bollinger', s.options.bollinger_size, s.options.bollinger_time). + then(function(inbol){ + ti_stoch(s,'ti_stoch', s.options.stoch_kperiods, s.options.stoch_k, s.options.stoch_d). + then(function(inres) { + + if (!inres) return cb() + if (inres.k.length == 0) return cb() + var divergent = inres.k[inres.k.length-1] - inres.d[inres.d.length-1] + s.period.stoch_D = inres.d[inres.d.length-1] + s.period.stoch_K = inres.k[inres.k.length-1] + var last_divergent = inres.k[inres.k.length-2] - inres.d[inres.d.length-2] + var _switch = 0 + var nextdivergent = (( divergent + last_divergent ) /2) + (divergent - last_divergent) + if ((last_divergent <= 0 && (divergent > 0)) ) _switch = 1 // price rising + if ((last_divergent >= 0 && (divergent < 0)) ) _switch = -1 // price falling + + s.period.divergent = divergent + s.period._switch = _switch + + + let LowerBand= inbol.LowerBand[inbol.LowerBand.length-1] + let MiddleBand= inbol.MiddleBand[inbol.MiddleBand.length-1] + let UpperBand= inbol.UpperBand[inbol.UpperBand.length-1] + let bollinger = { + LowerBand: LowerBand, + MiddleBand: MiddleBand, + UpperBand: UpperBand + } + s.period.report = bollinger + + + // K is fast moving + + s.signal = null + if (_switch != 0 ) + { + if (s.period.close >= MiddleBand && s.period.close >= ((UpperBand / 100) * (100 + s.options.bollinger_upper_bound_pct)) && nextdivergent < divergent && _switch == -1 && s.period.stoch_K > s.options.stoch_k_sell) + { + s.signal = 'sell' + } + else + if (s.period.close < (LowerBand / 100) * (100 + s.options.bollinger_lower_bound_pct) && nextdivergent >= divergent && _switch == 1 && s.period.stoch_K < s.options.stoch_k_buy) + { + s.signal = 'buy' + } + + } + + cb() + }).catch(function(){ + cb()}) + }).catch(function(){ + cb()}) + }, + + onReport: function (s) { + var cols = [] + if (s.period.report) { + + let upperBound = s.period.report.UpperBand + let lowerBound = s.period.report.LowerBand + var color = 'grey' + if (s.period.close > (upperBound / 100) * ( 100 + s.options.bollinger_upper_bound_pct)) { color = 'green' } + if (s.period.close < (lowerBound / 100) * ( 100 - s.options.bollinger_lower_bound_pct)) { color = 'red' } + cols.push(z(8, n(s.period.close).format('+00.0000'), ' ')[color]) + cols.push(z(8, n(lowerBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(upperBound).format('0.000000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.stoch_D).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(8, n(s.period.stoch_K).format('0.0000').substring(0,7), ' ').cyan) + cols.push(z(5, n(s.period.divergent).format('0').substring(0,7), ' ').cyan) + cols.push(z(2, n(s.period._switch).format('0').substring(0,2), ' ').cyan) + + } + else { + cols.push(' ') + } + return cols + }, + + phenotypes: + { + // -- common + period_length: Phenotypes.ListOption(['1m', '2m', '3m', '4m', '5m', '10m','15m']),//, '10m','15m','30m','45m','60m' + min_periods: Phenotypes.Range(52, 150), + markdown_buy_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + markup_sell_pct: Phenotypes.RangeFactor(-1.0, 1.0, 0.1), + order_type: Phenotypes.ListOption(['maker', 'taker']), + sell_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + buy_stop_pct: Phenotypes.RangeFactor(0.0, 50.0,0.1), + profit_stop_enable_pct: Phenotypes.RangeFactor(0.0, 5.0, 0.1), + profit_stop_pct: Phenotypes.RangeFactor(0.0, 50.0, 0.1), + + // -- strategy + rsi_periods: Phenotypes.Range(10, 30), + stoch_periods: Phenotypes.Range(5, 30), + stoch_k: Phenotypes.Range(1, 10), + stoch_d: Phenotypes.Range(1, 10), + stoch_k_sell: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + stoch_k_buy: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + + bollinger_size: Phenotypes.RangeFactor(10, 25, 1), + bollinger_time: Phenotypes.RangeFactor(1, 3.0, 0.1), + bollinger_upper_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0), + bollinger_lower_bound_pct: Phenotypes.RangeFactor(0.0, 100.0, 1.0) + + } +} diff --git a/lib/backtester.js b/lib/backtester.js index 928f305de9..fea9eb9e46 100644 --- a/lib/backtester.js +++ b/lib/backtester.js @@ -24,6 +24,11 @@ let processOutput = function (output, taskStrategyName, pheno) { let outputArray let params + let assetPriceLastBuy + let lastAssestValue + let assetCapital + let profit + let startCapital let endBalance let buyHold let vsBuyHold @@ -63,6 +68,13 @@ let processOutput = function (output, taskStrategyName, pheno) { if (typeof (simulationResults) === 'object' && typeof simulationResults.simresults !== typeof undefined) { params = simulationResults endBalance = simulationResults.simresults.currency + assetPriceLastBuy = simulationResults.simresults.last_buy_price + lastAssestValue = simulationResults.simresults.last_assest_value + assetCapital = simulationResults.simresults.asset_capital + startCapital = simulationResults.simresults.start_capital + profit = simulationResults.simresults.profit + + buyHold = simulationResults.simresults.buy_hold vsBuyHold = simulationResults.simresults.vs_buy_hold //wlMatch = (simulationResults.simresults.total_sells - simulationResults.simresults.total_losses) +'/'+ simulationResults.simresults.total_losses @@ -75,6 +87,7 @@ let processOutput = function (output, taskStrategyName, pheno) { } else { console.log(`Couldn't find simulationResults for ${pheno.backtester_generation}`) + console.log(pheno.command.commandString) // this should return a general bad result but not throw an error // our job here is to use the result. not diagnose an error at this point so a failing sim should just be ignored. // idea here is to make the fitness of this calculation as bad as possible so darwin won't use the combonation of parameters again. @@ -84,6 +97,8 @@ let processOutput = function (output, taskStrategyName, pheno) { endBalance: 0, buyHold: 0, vsBuyHold: 0, + lastAssestValue: 0, + assetPriceLastBuy:0, wins: 0, losses: -1, errorRate: 100, @@ -97,7 +112,11 @@ let processOutput = function (output, taskStrategyName, pheno) { roi: -1000, selector: selector, strategy: taskStrategyName, - frequency: 0 + frequency: 0, + assetCapital:0, + startCapital:0, + profit:0 + } } @@ -132,6 +151,15 @@ let processOutput = function (output, taskStrategyName, pheno) { delete r.use_strategies delete r.verbose delete r.simresults + delete r.silent + delete r.generateLaunch + delete r.ignoreLaunchFitness + delete r.maxCores + delete r.minTrades + delete r.noStatSave + delete r.filename + //delete r.fitnessCalcType + r.selector = r.selector.normalized if (start) { @@ -150,6 +178,11 @@ let processOutput = function (output, taskStrategyName, pheno) { let results = { params: 'module.exports = ' + JSON.stringify(r), + assetPriceLastBuy: assetPriceLastBuy, + lastAssestValue: lastAssestValue, + profit: profit, + assetCapital: assetCapital, + startCapital: startCapital, endBalance: parseFloat(endBalance), buyHold: parseFloat(buyHold), vsBuyHold: parseFloat(vsBuyHold) || vsBuyHold, diff --git a/lib/debug.js b/lib/debug.js new file mode 100644 index 0000000000..ac2cbebea1 --- /dev/null +++ b/lib/debug.js @@ -0,0 +1,15 @@ +const boot = require('../boot') +const moment = require('moment') + +let debug = boot.debug +module.exports = { + flip: function() { + module.exports.on = debug = !debug + }, + msg: function(str) { + if (debug) { + console.error('\n' + moment().format('YYYY-MM-DD HH:mm:ss') + ' - ' + str) + } + }, + on: debug +} \ No newline at end of file diff --git a/lib/engine.js b/lib/engine.js index b3d45c400a..8b3284ecfd 100644 --- a/lib/engine.js +++ b/lib/engine.js @@ -13,6 +13,7 @@ let tb = require('timebucket') , async = require('async') , lolex = require('lolex') , { formatAsset, formatPercent, formatCurrency } = require('./format') + , debug = require('./debug') let clock let nice_errors = new RegExp(/(slippage protection|loss protection)/) @@ -69,7 +70,7 @@ module.exports = function (s, conf) { } function memDump () { - if (!so.debug) return + if (!debug.on) return let s_copy = JSON.parse(JSON.stringify(s)) delete s_copy.options.mongo delete s_copy.lookback @@ -110,12 +111,6 @@ module.exports = function (s, conf) { } } - function msg (str) { - if (so.debug) { - console.error('\n' + moment().format('YYYY-MM-DD HH:mm:ss') + ' - ' + str) - } - } - var notifier = notify(conf) function pushMessage(title, message) { @@ -263,7 +258,7 @@ module.exports = function (s, conf) { order.product_id = s.product_id order.post_only = conf.post_only - msg('placing ' + type + ' order...') + debug.msg('placing ' + type + ' order...') let order_copy = JSON.parse(JSON.stringify(order)) s.exchange[type](order_copy, function (err, api_order) { if (err) return cb(err) @@ -271,24 +266,24 @@ module.exports = function (s, conf) { if (api_order.status === 'rejected') { if (api_order.reject_reason === 'post only') { // trigger immediate price adjustment and re-order - msg('post-only ' + type + ' failed, re-ordering') + debug.msg('post-only ' + type + ' failed, re-ordering') return cb(null, null) } else if (api_order.reject_reason === 'balance') { // treat as a no-op. - msg('not enough balance for ' + type + ', aborting') + debug.msg('not enough balance for ' + type + ', aborting') return cb(null, false) } else if (api_order.reject_reason === 'price') { // treat as a no-op. - msg('invalid price for ' + type + ', aborting') + debug.msg('invalid price for ' + type + ', aborting') return cb(null, false) } err = new Error('\norder rejected') err.order = api_order return cb(err) } - msg(type + ' order placed at ' + formatCurrency(order.price, s.currency)) + debug.msg(type + ' order placed at ' + formatCurrency(order.price, s.currency)) order.order_id = api_order.id if (!order.time) { order.orig_time = new Date(api_order.created_at).getTime() @@ -355,7 +350,7 @@ module.exports = function (s, conf) { } syncBalance(function (err, { quote }) { if (err) { - msg('error getting balance') + debug.msg('error getting balance') } let reorder_pct, fee, trade_balance, tradeable_balance, expected_fee if (err) { @@ -368,7 +363,7 @@ module.exports = function (s, conf) { } else { reorder_pct = n(size).divide(s.balance.asset).multiply(100) } - msg('price changed, resizing order, ' + reorder_pct + '% remain') + debug.msg('price changed, resizing order, ' + reorder_pct + '% remain') size = null } if (s.my_prev_trades.length) { @@ -404,7 +399,7 @@ module.exports = function (s, conf) { if (s.product.max_size && Number(size) > Number(s.product.max_size)) { size = s.product.max_size } - msg('preparing buy order over ' + formatAsset(size, s.asset) + ' of ' + formatCurrency(tradeable_balance, s.currency) + ' (' + buy_pct + '%) tradeable balance with a expected fee of ' + formatCurrency(expected_fee, s.currency) + ' (' + fee + '%)') + debug.msg('preparing buy order over ' + formatAsset(size, s.asset) + ' of ' + formatCurrency(tradeable_balance, s.currency) + ' (' + buy_pct + '%) tradeable balance with a expected fee of ' + formatCurrency(expected_fee, s.currency) + ' (' + fee + '%)') let latest_low_sell = _.chain(trades).dropRightWhile(['type','buy']).takeRightWhile(['type','sell']).sortBy(['price']).head().value() // return lowest price let buy_loss = latest_low_sell ? (latest_low_sell.price - Number(price)) / latest_low_sell.price * -100 : null if (so.max_buy_loss_pct != null && buy_loss > so.max_buy_loss_pct) { @@ -422,7 +417,7 @@ module.exports = function (s, conf) { } } if (n(s.balance.deposit).subtract(s.balance.currency_hold || 0).value() < n(price).multiply(size).value() && s.balance.currency_hold > 0) { - msg('buy delayed: ' + formatPercent(n(s.balance.currency_hold || 0).divide(s.balance.deposit).value()) + ' of funds (' + formatCurrency(s.balance.currency_hold, s.currency) + ') on hold') + debug.msg('buy delayed: ' + formatPercent(n(s.balance.currency_hold || 0).divide(s.balance.deposit).value()) + ' of funds (' + formatCurrency(s.balance.currency_hold, s.currency) + ') on hold') return setTimeout(function () { if (s.last_signal === signal) { executeSignal(signal, cb, size, true) @@ -430,7 +425,7 @@ module.exports = function (s, conf) { }, conf.wait_for_settlement) } else { - pushMessage('Buying ' + s.exchange.name.toUpperCase(), 'placing buy order at ' + formatCurrency(price, s.currency) + ', ' + formatCurrency(quote.bid - Number(price), s.currency) + ' under best bid\n') + pushMessage('Buying ' + formatAsset(size, s.asset) + ' on ' + s.exchange.name.toUpperCase(), 'placing buy order at ' + formatCurrency(price, s.currency) + ', ' + formatCurrency(quote.bid - Number(price), s.currency) + ' under best bid\n') doOrder() } } @@ -470,7 +465,7 @@ module.exports = function (s, conf) { } } if (n(s.balance.asset).subtract(s.balance.asset_hold || 0).value() < n(size).value()) { - msg('sell delayed: ' + formatPercent(n(s.balance.asset_hold || 0).divide(s.balance.asset).value()) + ' of funds (' + formatAsset(s.balance.asset_hold, s.asset) + ') on hold') + debug.msg('sell delayed: ' + formatPercent(n(s.balance.asset_hold || 0).divide(s.balance.asset).value()) + ' of funds (' + formatAsset(s.balance.asset_hold, s.asset) + ') on hold') return setTimeout(function () { if (s.last_signal === signal) { executeSignal(signal, cb, size, true) @@ -478,7 +473,7 @@ module.exports = function (s, conf) { }, conf.wait_for_settlement) } else { - pushMessage('Selling ' + s.exchange.name.toUpperCase(), 'placing sell order at ' + formatCurrency(price, s.currency) + ', ' + formatCurrency(Number(price) - quote.bid, s.currency) + ' over best ask\n') + pushMessage('Selling ' + formatAsset(size, s.asset) + ' on ' + s.exchange.name.toUpperCase(), 'placing sell order at ' + formatCurrency(price, s.currency) + ', ' + formatCurrency(Number(price) - quote.bid, s.currency) + ' over best ask\n') doOrder() } } @@ -503,19 +498,19 @@ module.exports = function (s, conf) { if (!order) { if (order === false) { // not enough balance, or signal switched. - msg('not enough balance, or signal switched, cancel ' + signal) + debug.msg('not enough balance, or signal switched, cancel ' + signal) return cb(null, null) } if (s.last_signal !== signal) { // order timed out but a new signal is taking its place - msg('signal switched, cancel ' + signal) + debug.msg('signal switched, cancel ' + signal) return cb(null, null) } // order timed out and needs adjusting - msg(signal + ' order timed out, adjusting price') + debug.msg(signal + ' order timed out, adjusting price') let remaining_size = s[signal + '_order'] ? s[signal + '_order'].remaining_size : size if (remaining_size !== size) { - msg('remaining size: ' + remaining_size) + debug.msg('remaining size: ' + remaining_size) } return executeSignal(signal, _cb, remaining_size, true) } @@ -793,7 +788,7 @@ module.exports = function (s, conf) { if (api_order.status === 'done') { order.time = new Date(api_order.done_at).getTime() order.price = api_order.price || order.price // Use actual price if possible. In market order the actual price (api_order.price) could be very different from trade price - msg('cancel failed, order done, executing') + debug.msg('cancel failed, order done, executing') executeOrder(order, type) return syncBalance(function () { cb(null, order) @@ -812,7 +807,7 @@ module.exports = function (s, conf) { if (on_hold && s.balance.currency_hold > 0) { // wait a bit for settlement - msg('funds on hold after cancel, waiting 5s') + debug.msg('funds on hold after cancel, waiting 5s') setTimeout(function() { checkHold(do_reorder, cb) }, conf.wait_for_settlement) } else { @@ -827,7 +822,7 @@ module.exports = function (s, conf) { function checkOrder (order, type, cb) { if (!s[type + '_order']) { // signal switched, stop checking order - msg('signal switched during ' + type + ', aborting') + debug.msg('signal switched during ' + type + ', aborting') return cancelOrder(order, type, false, cb) } s.exchange.getOrder({order_id: order.order_id, product_id: s.product_id}, function (err, api_order) { @@ -844,11 +839,11 @@ module.exports = function (s, conf) { }) } if (order.status === 'rejected' && (order.reject_reason === 'post only' || api_order.reject_reason === 'post only')) { - msg('post-only ' + type + ' failed, re-ordering') + debug.msg('post-only ' + type + ' failed, re-ordering') return cb(null, null) } if (order.status === 'rejected' && order.reject_reason === 'balance') { - msg('not enough balance for ' + type + ', aborting') + debug.msg('not enough balance for ' + type + ', aborting') return cb(null, null) } if (now() - order.local_time >= so.order_adjust_time) { @@ -861,11 +856,11 @@ module.exports = function (s, conf) { if (type === 'buy') { marked_price = nextBuyForQuote(s, quote) if (so.exact_buy_orders && n(order.price).value() != marked_price) { - msg(marked_price + ' vs! our ' + order.price) + debug.msg(marked_price + ' vs! our ' + order.price) cancelOrder(order, type, true, cb) } else if (n(order.price).value() < marked_price) { - msg(marked_price + ' vs our ' + order.price) + debug.msg(marked_price + ' vs our ' + order.price) cancelOrder(order, type, true, cb) } else { @@ -876,11 +871,11 @@ module.exports = function (s, conf) { else { marked_price = nextSellForQuote(s, quote) if (so.exact_sell_orders && n(order.price).value() != marked_price) { - msg(marked_price + ' vs! our ' + order.price) + debug.msg(marked_price + ' vs! our ' + order.price) cancelOrder(order, type, true, cb) } else if (n(order.price).value() > marked_price) { - msg(marked_price + ' vs our ' + order.price) + debug.msg(marked_price + ' vs our ' + order.price) cancelOrder(order, type, true, cb) } else { diff --git a/lib/phenotype.js b/lib/phenotype.js index 6fdcc395a1..f2d32d591c 100644 --- a/lib/phenotype.js +++ b/lib/phenotype.js @@ -4,8 +4,10 @@ * 07/01/2017 */ -let PROPERTY_MUTATION_CHANCE = 0.30 -let PROPERTY_CROSSOVER_CHANCE = 0.50 +let PROPERTY_RANDOM_CHANCE = 0.30 // Chance of a Mutation to spawn a new species -- Try and prevent some stagnation +let PROPERTY_MUTATION_CHANCE = 0.30 // Chance of a Mutation in an aspect of the species +let PROPERTY_CROSSOVER_CHANCE = 0.50 // Chance of a aspect being inherited by another species + module.exports = { create: function(strategy) { @@ -73,11 +75,13 @@ module.exports = { mutation: function(oldPhenotype, strategy) { var r = module.exports.create(strategy) - for (var k in oldPhenotype) { - if (k === 'sim') continue + if(Math.random() > PROPERTY_RANDOM_CHANCE) { + for (var k in oldPhenotype) { + if (k === 'sim') continue - var v = oldPhenotype[k] - r[k] = (Math.random() < PROPERTY_MUTATION_CHANCE) ? r[k] : v + var v = oldPhenotype[k] + r[k] = (Math.random() < PROPERTY_MUTATION_CHANCE) ? r[k] : v + } } return r }, @@ -88,9 +92,11 @@ module.exports = { for (var k in strategy) { if (k === 'sim') continue + if (k === 'minTrades') continue + if (k === 'fitnessCalcType') continue - p1[k] = Math.random() >= PROPERTY_CROSSOVER_CHANCE ? phenotypeA[k] : phenotypeB[k] - p2[k] = Math.random() >= PROPERTY_CROSSOVER_CHANCE ? phenotypeA[k] : phenotypeB[k] + p1[k] = Math.random() <= PROPERTY_CROSSOVER_CHANCE ? phenotypeA[k] : phenotypeB[k] + p2[k] = Math.random() <= PROPERTY_CROSSOVER_CHANCE ? phenotypeA[k] : phenotypeB[k] } return [p1, p2] @@ -98,16 +104,78 @@ module.exports = { fitness: function(phenotype) { if (typeof phenotype.sim === 'undefined') return 0 + let rate = 0 + if (phenotype.fitnessCalcType == 'profitwl') + { + let profit = phenotype.sim.profit + (phenotype.sim.assetCapital * phenotype.sim.lastAssestValue) + // if minTrades is set use an alternate fitness calculation to hone in on a trade stratagy that has the minimum trade count + // once found use the normal fitness strsategy to find the best parameters. + if (phenotype.minTrades > 0) + { + if (phenotype.sim.wins < phenotype.minTrades && phenotype.sim.wins == 0) return 0.0 + if (phenotype.sim.wins < phenotype.minTrades) return ((phenotype.sim.wins/phenotype.minTrades)+profit)/100 + } + let wlRatio = phenotype.sim.wins / phenotype.sim.losses + if (isNaN(wlRatio)) { // zero trades will result in 0/0 which is NaN + wlRatio = 0 + } + let wlRatioRate = 1.0 / (1.0 + Math.pow(Math.E,-wlRatio)) + rate = (profit * wlRatioRate ) + + } + else if (phenotype.fitnessCalcType == 'profit') + { + //let profit = phenotype.sim.profit + let profit = phenotype.sim.profit + (phenotype.sim.assetCapital * phenotype.sim.lastAssestValue) + // if minTrades is set use an alternate fitness calculation to hone in on a trade stratagy that has the minimum trade count + // once found use the normal fitness strsategy to find the best parameters. + if (phenotype.minTrades > 0) + { + if (phenotype.sim.wins < phenotype.minTrades && phenotype.sim.wins == 0) return 0.0 + if (phenotype.sim.wins < phenotype.minTrades) return ((phenotype.minTrades)+profit)/1000 + } - var vsBuyHoldRate = ((phenotype.sim.vsBuyHold + 100) / 50) - var wlRatio = phenotype.sim.wins / phenotype.sim.losses - if (isNaN(wlRatio)) { // zero trades will result in 0/0 which is NaN - wlRatio = 1 + rate = profit + } + if (phenotype.fitnessCalcType == 'wl') + { + //let vsBuyHoldRate = phenotype.sim.profit + // if minTrades is set use an alternate fitness calculation to hone in on a trade stratagy that has the minimum trade count + // once found use the normal fitness strsategy to find the best parameters. + if (phenotype.minTrades > 0) + { + if (phenotype.sim.wins < phenotype.minTrades && phenotype.sim.wins == 0) return 0.0 + if (phenotype.sim.wins < phenotype.minTrades) return (phenotype.sim.wins/phenotype.minTrades)/100 + } + let wlRatio = phenotype.sim.wins / phenotype.sim.losses + if (isNaN(wlRatio)) { // zero trades will result in 0/0 which is NaN + wlRatio = 0 + } + let wlRatioRate = 1.0 / (1.0 + Math.pow(Math.E,-wlRatio)) + rate = ( wlRatioRate ) } - var wlRatioRate = 1.0 / (1.0 + Math.pow(Math.E, -wlRatio)) - var rate = vsBuyHoldRate * wlRatioRate + else + { + + let vsBuyHoldRate = ((phenotype.sim.vsBuyHold + 100) / 50) + if (phenotype.minTrades > 0) + { + if (phenotype.sim.wins < phenotype.minTrades && phenotype.sim.wins == 0) return 0.0 + if (phenotype.sim.wins < phenotype.minTrades) return ((phenotype.sim.wins/phenotype.minTrades)+vsBuyHoldRate)/100 + } + let wlRatio = phenotype.sim.wins / phenotype.sim.losses + if (isNaN(wlRatio)) { // zero trades will result in 0/0 which is NaN + wlRatio = 1 + } + let wlRatioRate = 1.0 / (1.0 + Math.pow(Math.E, -wlRatio)) + rate = vsBuyHoldRate * wlRatioRate + + } + return rate + }, + competition: function(phenotypeA, phenotypeB) { // TODO: Refer to geneticalgorithm documentation on how to improve this with diverstiy diff --git a/lib/ta_bollinger.js b/lib/ta_bollinger.js new file mode 100644 index 0000000000..cd2f805e06 --- /dev/null +++ b/lib/ta_bollinger.js @@ -0,0 +1,86 @@ +var talib = require('talib') + +module.exports = function ta_bollinger(s, key, rsi_periods, DevUp, DevDn, d_ma_type) +{ + return new Promise(function(resolve, reject) { + + //dont calculate until we have enough data + if (s.lookback.length >= rsi_periods) { + + let tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + + //doublecheck length. + if (tmpMarket.length >= rsi_periods) { + // extract int from string input for ma_type + let optInMAType = getMaTypeFromString(d_ma_type) + talib.execute({ + name: 'BBANDS', + startIdx: tmpMarket.length-1 , + endIdx: tmpMarket.length -1, + inReal: tmpMarket, + optInTimePeriod: rsi_periods, //RSI 14 default + optInNbDevUp: DevUp, // "Deviation multiplier for upper band" Real Default 2 + optInNbDevDn: DevDn, //"Deviation multiplier for lower band" Real Default 2 + optInMAType:optInMAType // "Type of Moving Average" default 0 + + }, function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + resolve({ + outRealUpperBand: result.result.outRealUpperBand, + outRealMiddleBand: result.result.outRealMiddleBand, + outRealLowerBand: result.result.outRealLowerBand + }) + + }) + } + else { + reject('MarketLenth not populated enough') + } + } + else{ + reject('MarketLenth not populated enough') + } + + }) +} + +/** + * Extract int from string input eg (SMA = 0) + * + * @see https://github.com/oransel/node-talib + * @see https://github.com/markcheno/go-talib/blob/master/talib.go#L20 + */ +function getMaTypeFromString(maType) { + // no constant in lib? + + switch (maType.toUpperCase()) { + case 'SMA': + return 0 + case 'EMA': + return 1 + case 'WMA': + return 2 + case 'DEMA': + return 3 + case 'TEMA': + return 4 + case 'TRIMA': + return 5 + case 'KAMA': + return 6 + case 'MAMA': + return 7 + case 'T3': + return 8 + default: + return 0 + } +} diff --git a/lib/ta_stoch.js b/lib/ta_stoch.js new file mode 100644 index 0000000000..4e2489565c --- /dev/null +++ b/lib/ta_stoch.js @@ -0,0 +1,96 @@ +var talib = require('talib') + +module.exports = function stoch(s, key, k_periods, sk_periods, k_ma_type, d_periods, d_ma_type, optMarket) +{ + return new Promise(function(resolve, reject) { + + + let tmpMarket = optMarket + if (!tmpMarket) + { + + tmpMarket = s.lookback.slice(0, 1000) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period) + } + + let tmpMarketHigh = tmpMarket.map(x => x.high) + let tmpMarketClose = tmpMarket.map(x => x.close) + let tmpMarketLow = tmpMarket.map(x => x.low) + + + if (tmpMarket.length >= Math.max(k_periods,d_periods,sk_periods) ) { + + + + + let optInSlowDMAType = getMaTypeFromString(d_ma_type) + let optInSlowKMAType = getMaTypeFromString(k_ma_type) + talib.execute({ + name: 'STOCH', + startIdx: 0 , + endIdx: tmpMarketClose.length - 1, + high: tmpMarketHigh, + low: tmpMarketLow, + close: tmpMarketClose, + optInFastK_Period:k_periods, // K 5 default + optInSlowK_Period:sk_periods, //Slow K 3 default + optInSlowK_MAType:optInSlowKMAType, //Slow K maType default 0 + optInSlowD_Period:d_periods, // D 3 default + optInSlowD_MAType:optInSlowDMAType // type of Fast D default 0 + + }, function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + + resolve({ + k: result.result.outSlowK, + d: result.result.outSlowD + }) + }) + + } + else + { + resolve() + } + }) +} + +/** + * Extract int from string input eg (SMA = 0) + * + * @see https://github.com/oransel/node-talib + * @see https://github.com/markcheno/go-talib/blob/master/talib.go#L20 + */ +function getMaTypeFromString(maType) { + // no constant in lib? + + switch (maType.toUpperCase()) { + case 'SMA': + return 0 + case 'EMA': + return 1 + case 'WMA': + return 2 + case 'DEMA': + return 3 + case 'TEMA': + return 4 + case 'TRIMA': + return 5 + case 'KAMA': + return 6 + case 'MAMA': + return 7 + case 'T3': + return 8 + default: + return 0 + } +} diff --git a/lib/ta_stochrsi.js b/lib/ta_stochrsi.js new file mode 100644 index 0000000000..be6ed7d21d --- /dev/null +++ b/lib/ta_stochrsi.js @@ -0,0 +1,101 @@ +var talib = require('talib') + +module.exports = function srsi(s, key, rsi_periods, k_periods, d_periods, d_ma_type, optMarket) +{ + return new Promise(function(resolve, reject) { + + + + // Returns the parameters needed to execute left comment for latter reference + //var o = talib.explain('STOCHRSI') + + let tmpMarket = optMarket + if (!tmpMarket) + { + tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + } + else + { + tmpMarket = tmpMarket.map(x=>x.close) + } + + + //dont calculate until we have enough data + if (tmpMarket.length > rsi_periods) { + + //doublecheck length. + if (tmpMarket.length >= rsi_periods) { + // extract int from string input for ma_type + let optInMAType = getMaTypeFromString(d_ma_type) + talib.execute({ + name: 'STOCHRSI', + startIdx: 0 , + endIdx: tmpMarket.length -1, + inReal: tmpMarket, + optInTimePeriod: rsi_periods, //RSI 14 default + optInFastK_Period:k_periods, // K 5 default + optInFastD_Period:d_periods, // D 3 default + optInFastD_MAType:optInMAType // type of Fast D default 0 + + }, function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + resolve({ + outFastK: result.result.outFastK, + outFastD: result.result.outFastD + }) + + + }) + } + else { + resolve() + } + } + else + { + resolve() + } + + }) +} + +/** + * Extract int from string input eg (SMA = 0) + * + * @see https://github.com/oransel/node-talib + * @see https://github.com/markcheno/go-talib/blob/master/talib.go#L20 + */ +function getMaTypeFromString(maType) { + // no constant in lib? + + switch (maType.toUpperCase()) { + case 'SMA': + return 0 + case 'EMA': + return 1 + case 'WMA': + return 2 + case 'DEMA': + return 3 + case 'TEMA': + return 4 + case 'TRIMA': + return 5 + case 'KAMA': + return 6 + case 'MAMA': + return 7 + case 'T3': + return 8 + default: + return 0 + } +} diff --git a/lib/ti_bollinger.js b/lib/ti_bollinger.js new file mode 100644 index 0000000000..5463ba30ce --- /dev/null +++ b/lib/ti_bollinger.js @@ -0,0 +1,55 @@ +var tulind = require('tulind') + + +module.exports = function ti_bollinger(s, key, rsi_periods, StdDev, optMarket) +{ + + return new Promise(function(resolve, reject) { + + //dont calculate until we have enough data + + let tmpMarket = optMarket + if (!tmpMarket) + { + tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + } + else + { + tmpMarket = tmpMarket.map(x=>x.close) + } + if ( tmpMarket.length >= rsi_periods) { + //doublecheck length. + if (tmpMarket.length >= rsi_periods) { + // extract int from string input for ma_type + + tulind.indicators.bbands.indicator( + [tmpMarket], + [rsi_periods, StdDev] + , function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + resolve({ + LowerBand: result[0], + MiddleBand: result[1], + UpperBand: result[2] + + }) + }) + } + else { + reject('MarketLenth not populated enough') + } + + } else { + reject('MarketLenth not populated enough')} + }) +} + + diff --git a/lib/ti_macd.js b/lib/ti_macd.js new file mode 100644 index 0000000000..e4ef510996 --- /dev/null +++ b/lib/ti_macd.js @@ -0,0 +1,46 @@ +var tulind = require('tulind') + + +module.exports = function macd(s, key, shortPeriod, longPeriod, signalPeriod ,optMarket) +{ + return new Promise(function(resolve, reject) { + + if (s.lookback.length >= Math.max(shortPeriod,longPeriod) ) { + + let tmpMarket = optMarket + if (!tmpMarket) + { + tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + } + else + { + tmpMarket = tmpMarket.map(x=>x.close) + } + tulind.indicators.macd.indicator( + [tmpMarket], + [shortPeriod, longPeriod, signalPeriod] + , function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + resolve({ + macd: result[0], + macd_signal: result[1], + macd_histogram: result[2] + }) + }) + + } + else + { + reject() + } + }) +} + diff --git a/lib/ti_rsi.js b/lib/ti_rsi.js new file mode 100644 index 0000000000..606ab3d651 --- /dev/null +++ b/lib/ti_rsi.js @@ -0,0 +1,52 @@ +var tulind = require('tulind') + + +module.exports = function ti_rsi(s, key, rsi_period, optMarket) +{ + + return new Promise(function(resolve, reject) { + + //dont calculate until we have enough data + + let tmpMarket = optMarket + if (!tmpMarket) + { + tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + } + else + { + tmpMarket = tmpMarket.map(x=>x.close) + } + + if ( tmpMarket.length >= rsi_period) { + //doublecheck length. + if (tmpMarket.length >= rsi_period) { + // extract int from string input for ma_type + + tulind.indicators.rsi.indicator( + [tmpMarket], + [rsi_period] + , function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + resolve({ + rsi: result[0] + }) + }) + } + else { + reject('MarketLenth not populated enough') + } + + } else { + reject('MarketLenth not populated enough')} + }) +} + + diff --git a/lib/ti_stoch.js b/lib/ti_stoch.js new file mode 100644 index 0000000000..2ea2187eff --- /dev/null +++ b/lib/ti_stoch.js @@ -0,0 +1,50 @@ +var tulind = require('tulind') + + +module.exports = function stoch(s, key, k_periods, sk_periods, d_periods, optMarket) +{ + return new Promise(function(resolve, reject) { + + if (s.lookback.length >= Math.max(k_periods,d_periods,sk_periods) ) { + + //dont calculate until we have enough data + let tmpMarket = optMarket + if (!tmpMarket) + { + + tmpMarket = s.lookback.slice(0, 1000) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period) + } + + let tmpMarketHigh = tmpMarket.map(x => x.high) + let tmpMarketClose = tmpMarket.map(x => x.close) + let tmpMarketLow = tmpMarket.map(x => x.low) + // addCurrentPeriod + + + tulind.indicators.stoch.indicator( + [tmpMarketHigh,tmpMarketLow, tmpMarketClose ], + [k_periods, sk_periods, d_periods] + , function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + + resolve({ + k: result[0], + d: result[1] + }) + }) + + } + else + { + resolve() + } + }) +} + diff --git a/lib/ti_stochrsi.js b/lib/ti_stochrsi.js new file mode 100644 index 0000000000..bab6fc0833 --- /dev/null +++ b/lib/ti_stochrsi.js @@ -0,0 +1,89 @@ +var tulind = require('tulind') + + +module.exports = function ti_stochrsi(s, key, rsi_period, k_periods, d_periods, optMarket) +{ + + return new Promise(function(resolve, reject) { + + //dont calculate until we have enough data + + let tmpMarket = optMarket + if (!tmpMarket) + { + tmpMarket = s.lookback.slice(0, 1000).map(x=>x.close) + tmpMarket.reverse() + //add current period + tmpMarket.push(s.period.close) + } + else + { + tmpMarket = tmpMarket.map(x=>x.close) + } + + if ( tmpMarket.length >= rsi_period) { + //doublecheck length. + if (tmpMarket.length >= rsi_period) { + // extract int from string input for ma_type + + tulind.indicators.rsi.indicator( + [tmpMarket], + [rsi_period] + , function (err, result) { + if (err) { + console.log(err) + reject(err, result) + return + } + let trsi = result[0] + // 0 oldest -- end newest + trsi.reverse() + let stochRSI = [] + + for(let i = 0; i < (k_periods + d_periods - 1); i++) { + let rsiForPeriod = trsi.slice(i, rsi_period + i) + let highestRSI = Math.max(...rsiForPeriod) + let lowestRSI = Math.min(...rsiForPeriod) + + if(highestRSI == lowestRSI) { + stochRSI.push(0) + } else { + stochRSI.push(((trsi[ (rsi_period - 1) + i] - lowestRSI) / (highestRSI - lowestRSI)) ) + } + } + + let percentK = [] + for(let i = 0; i < k_periods; i++) { + let kData = stochRSI.slice(i, k_periods + i) + if(kData.length == k_periods) { + percentK.push(kData.reduce((a,b) => a + b, 0) / kData.length ) + } + } + + let percentD = [] + for(let i = 0; i < d_periods; i++) { + let dData = stochRSI.slice(i, d_periods + i) + if(dData.length == d_periods) { + percentD.push(dData.reduce((a,b) => a + b, 0) / dData.length) + } + } + + + + resolve({ + stochRSI: stochRSI, + stochk :percentK, + stochd :percentD + }) + }) + } + else { + reject('MarketLenth not populated enough') + } + + } else { + reject('MarketLenth not populated enough')} + }) +} + + diff --git a/package-lock.json b/package-lock.json index 660c487a6f..ff81692e71 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,21 +5,97 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0-beta.46", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.46.tgz", - "integrity": "sha512-7BKRkmYaPZm3Yff5HGZJKCz7RqZ5jUjknsXT6Gz5YKG23J3uq9hAj0epncCB0rlqmnZ8Q+UUpQB2tCR5mT37vw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.1.2.tgz", + "integrity": "sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.2", + "@babel/helpers": "^7.1.2", + "@babel/parser": "^7.1.2", + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.1.2", + "convert-source-map": "^1.1.0", + "debug": "^3.1.0", + "json5": "^0.5.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.2.tgz", + "integrity": "sha512-70A9HWLS/1RHk3Ck8tNHKxOoKQuSKocYgwDN85Pyl/RBduss6AKxUR7RIZ/lzduQMSYfWEM4DDBu6A+XGbkFig==", + "requires": { + "@babel/types": "^7.1.2", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=" + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helpers": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.1.2.tgz", + "integrity": "sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA==", "requires": { - "@babel/highlight": "7.0.0-beta.46" + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.1.2" } }, "@babel/highlight": { - "version": "7.0.0-beta.46", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.46.tgz", - "integrity": "sha512-r4snW6Q8ICL3Y8hGzYJRvyG/+sc+kvkewXNedG9tQjoHmUFMwMSv/o45GWQUQswevGnWghiGkpRPivFfOuMsOA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", "requires": { - "chalk": "2.4.0", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" }, "dependencies": { "ansi-styles": { @@ -27,81 +103,133 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, - "@sindresorhus/is": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==" + "@babel/parser": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.2.tgz", + "integrity": "sha512-x5HFsW+E/nQalGMw7hu+fvPqnBeBaIr0lWJ2SG0PPL2j+Pm9lYvCrsZJGIgauPIENx0v10INIyFjmSNUD/gSqQ==" + }, + "@babel/template": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", + "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.1.2", + "@babel/types": "^7.1.2" + } + }, + "@babel/traverse": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.0.tgz", + "integrity": "sha512-bwgln0FsMoxm3pLOgrrnGaXk18sSM9JNf1/nHC/FksmNGFbYnPWY4GYCfLxyP1KRmfsxqkRpfoa6xr6VuuSxdw==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.0.0", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "globals": { + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==" + } + } + }, + "@babel/types": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.2.tgz", + "integrity": "sha512-pb1I05sZEKiSlMUV9UReaqsCPUpgbHHHu2n1piRm7JkuBkm6QxcaIzKu6FMnMtCbih/cEYTR+RGYYC96Yk9HAg==", + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" + } + } + }, + "@samverschueren/stream-to-observable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz", + "integrity": "sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg==", + "requires": { + "any-observable": "^0.3.0" + } }, "@slack/client": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@slack/client/-/client-4.1.0.tgz", - "integrity": "sha512-lcQRQA3/edBlbhkSdBDsn6BW/ynoymCG8yz8kvo96JiLGKGzODxLZJ/FHRs9SMVsqNGsA+sWZcWChUV60gvvRw==", - "requires": { - "@types/delay": "2.0.1", - "@types/form-data": "2.2.1", - "@types/got": "7.1.8", - "@types/is-stream": "1.1.0", - "@types/loglevel": "1.5.3", - "@types/node": "9.6.6", - "@types/p-cancelable": "0.3.0", - "@types/p-queue": "2.3.1", - "@types/p-retry": "1.0.1", - "@types/retry": "0.10.2", - "@types/url-join": "0.8.2", - "@types/ws": "4.0.2", - "delay": "2.0.0", - "eventemitter3": "3.0.1", - "finity": "0.5.4", - "form-data": "2.3.2", - "got": "8.3.0", - "is-stream": "1.1.0", - "loglevel": "1.6.1", - "object.entries": "1.0.4", - "object.getownpropertydescriptors": "2.0.3", - "object.values": "1.0.4", - "p-cancelable": "0.3.0", - "p-queue": "2.4.1", - "p-retry": "1.0.0", - "retry": "0.10.1", - "url-join": "4.0.0", - "ws": "4.1.0" + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@slack/client/-/client-4.6.0.tgz", + "integrity": "sha512-Zdl8cTxsvV5hVZcCSvrBIpLuAHfxh+i0DW8ARrpPc24Tvgfrx6i3JV/p189taxzAK9/qT8VWb381Q388i/0DPA==", + "requires": { + "@types/form-data": "^2.2.1", + "@types/is-stream": "^1.1.0", + "@types/loglevel": "^1.5.3", + "@types/node": ">=6.0.0", + "@types/p-cancelable": "^0.3.0", + "@types/p-queue": "^2.3.1", + "@types/p-retry": "^1.0.1", + "@types/retry": "^0.10.2", + "@types/ws": "^5.1.1", + "axios": "^0.18.0", + "eventemitter3": "^3.0.0", + "finity": "^0.5.4", + "form-data": "^2.3.1", + "is-stream": "^1.1.0", + "loglevel": "^1.6.1", + "object.entries": "^1.0.4", + "object.getownpropertydescriptors": "^2.0.3", + "object.values": "^1.0.4", + "p-cancelable": "^0.3.0", + "p-queue": "^2.3.0", + "p-retry": "^2.0.0", + "retry": "^0.12.0", + "ws": "^5.2.0" }, "dependencies": { "ws": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz", - "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1" + "async-limiter": "~1.0.0" } } } @@ -111,11 +239,6 @@ "resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.1.tgz", "integrity": "sha512-FhlMa34NHp9K5MY1Uz8yb+ZvuX0pnvn3jScRSNAb75KHGB8d3rEU6hqMs3Z2vjuytcMfRg6c5CHMc3wtYyD2/A==" }, - "@types/delay": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/delay/-/delay-2.0.1.tgz", - "integrity": "sha512-D1/YuYOcdOIdaQnaiUJ77VcilVvESkynw79CtGqpjkXyv4OUezEVZtdXnSOwXL8Zcelu66QbyC8QQcVQ/ZPdig==" - }, "@types/events": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-1.2.0.tgz", @@ -126,15 +249,7 @@ "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.1.tgz", "integrity": "sha512-JAMFhOaHIciYVh8fb5/83nmuO/AHwmto+Hq7a9y8FzLDcC1KCU344XDOMEmahnrTFlHjgh4L0WJFczNIX2GxnQ==", "requires": { - "@types/node": "9.6.6" - } - }, - "@types/got": { - "version": "7.1.8", - "resolved": "https://registry.npmjs.org/@types/got/-/got-7.1.8.tgz", - "integrity": "sha512-QxcSkx9PjHH7uqbzqKTKOAjGbayyo+dECnnqM3BBMC0WjYAqx0e6Qi9AFR4jluvx91e7qzgz4aGka7AhCTHYRw==", - "requires": { - "@types/node": "9.6.6" + "@types/node": "*" } }, "@types/is-stream": { @@ -142,7 +257,7 @@ "resolved": "https://registry.npmjs.org/@types/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha512-jkZatu4QVbR60mpIzjINmtS1ZF4a/FqdTUTBeQDVOQ2PYyidtwFKr0B5G6ERukKwliq+7mIXvxyppwzG5EgRYg==", "requires": { - "@types/node": "9.6.6" + "@types/node": "*" } }, "@types/loglevel": { @@ -151,9 +266,9 @@ "integrity": "sha512-TzzIZihV+y9kxSg5xJMkyIkaoGkXi50isZTtGHObNHRqAAwjGNjSCNPI7AUAv0tZUKTq9f2cdkCUd/2JVZUTrA==" }, "@types/node": { - "version": "9.6.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-9.6.6.tgz", - "integrity": "sha512-SJe0g5cZeGNDP5sD8mIX3scb+eq8LQQZ60FXiKZHipYSeEFZ5EKml+NNMiO76F74TY4PoMWlNxF/YRY40FOvZQ==" + "version": "10.11.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.11.3.tgz", + "integrity": "sha512-3AvcEJAh9EMatxs+OxAlvAEs7OTy6AG94mcH1iqyVDwVVndekLxzwkWQ/Z4SDbY6GO2oyUXyWW8tQ4rENSSQVQ==" }, "@types/p-cancelable": { "version": "0.3.0", @@ -170,7 +285,7 @@ "resolved": "https://registry.npmjs.org/@types/p-retry/-/p-retry-1.0.1.tgz", "integrity": "sha512-HgQPG9kkUb4EpTeUv2taH2nBZsVUb5aOTSw3X2YozcTG1ttmGcLaLKx1MbAz1evVfUEDTCAPmdz2HiFztIyWrw==", "requires": { - "@types/retry": "0.10.2" + "@types/retry": "*" } }, "@types/request": { @@ -178,10 +293,10 @@ "resolved": "https://registry.npmjs.org/@types/request/-/request-2.47.0.tgz", "integrity": "sha512-/KXM5oev+nNCLIgBjkwbk8VqxmzI56woD4VUxn95O+YeQ8hJzcSmIZ1IN3WexiqBb6srzDo2bdMbsXxgXNkz5Q==", "requires": { - "@types/caseless": "0.12.1", - "@types/form-data": "2.2.1", - "@types/node": "9.6.6", - "@types/tough-cookie": "2.3.2" + "@types/caseless": "*", + "@types/form-data": "*", + "@types/node": "*", + "@types/tough-cookie": "*" } }, "@types/retry": { @@ -190,22 +305,171 @@ "integrity": "sha512-LqJkY4VQ7S09XhI7kA3ON71AxauROhSv74639VsNXC9ish4IWHnIi98if+nP1MxQV3RMPqXSCYgpPsDHjlg9UQ==" }, "@types/tough-cookie": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.2.tgz", - "integrity": "sha512-vOVmaruQG5EatOU/jM6yU2uCp3Lz6mK1P5Ztu4iJjfM4SVHU9XYktPUQtKlIXuahqXHdEyUarMrBEwg5Cwu+bA==" - }, - "@types/url-join": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/@types/url-join/-/url-join-0.8.2.tgz", - "integrity": "sha1-EYHsvh2XtwNODqHjXmLobMJrQi0=" + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha512-MDQLxNFRLasqS4UlkWMSACMKeSm1x4Q3TxzUC7KQUsh6RK1ZrQ0VEyE3yzXcBu+K8ejVj4wuX32eUG02yNp+YQ==" }, "@types/ws": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-4.0.2.tgz", - "integrity": "sha512-tlDVFHCcJdNqYgjGNDPDCo4tNqhFMymIAdJCcykFbdhYr4X6vD7IlMxY0t3/k6Pfup68YNkMTpRfLKTRuKDmnQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-5.1.2.tgz", + "integrity": "sha512-NkTXUKTYdXdnPE2aUUbGOXE1XfMK527SCvU/9bj86kyFF6kZ9ZnOQ3mK5jADn98Y2vEUD/7wKDgZa7Qst2wYOg==", + "requires": { + "@types/events": "*", + "@types/node": "*" + } + }, + "@webassemblyjs/ast": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.8.tgz", + "integrity": "sha512-dOrtdtEyB8sInpl75yLPNksY4sRl0j/+t6aHyB/YA+ab9hV3Fo7FmG12FHzP+2MvWVAJtDb+6eXR5EZbZJ+uVg==", + "requires": { + "@webassemblyjs/helper-module-context": "1.7.8", + "@webassemblyjs/helper-wasm-bytecode": "1.7.8", + "@webassemblyjs/wast-parser": "1.7.8" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.8.tgz", + "integrity": "sha512-kn2zNKGsbql5i56VAgRYkpG+VazqHhQQZQycT2uXAazrAEDs23gy+Odkh5VblybjnwX2/BITkDtNmSO76hdIvQ==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.8.tgz", + "integrity": "sha512-xUwxDXsd1dUKArJEP5wWM5zxgCSwZApSOJyP1XO7M8rNUChUDblcLQ4FpzTpWG2YeylMwMl1MlP5Ztryiz1x4g==" + }, + "@webassemblyjs/helper-buffer": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.8.tgz", + "integrity": "sha512-WXiIMnuvuwlhWvVOm8xEXU9DnHaa3AgAU0ZPfvY8vO1cSsmYb2WbGbHnMLgs43vXnA7XAob9b56zuZaMkxpCBg==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.8.tgz", + "integrity": "sha512-TLQxyD9qGOIdX5LPQOPo0Ernd88U5rHkFb8WAjeMIeA0sPjCHeVPaGqUGGIXjUcblUkjuDAc07bruCcNHUrHDA==", + "requires": { + "@webassemblyjs/wast-printer": "1.7.8" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.8.tgz", + "integrity": "sha512-TjK0CnD8hAPkV5mbSp5aWl6SO1+H3WFcjWtixWoy8EMA99YnNzYhpc/WSYWhf7yrhpzkq5tZB0tvLK3Svr3IXA==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.8.tgz", + "integrity": "sha512-uCutAKR7Nm0VsFixcvnB4HhAyHouNbj0Dx1p7eRjFjXGGZ+N7ftTaG1ZbWCasAEbtwGj54LP8+lkBZdTCPmLGg==" + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.8.tgz", + "integrity": "sha512-AdCCE3BMW6V34WYaKUmPgVHa88t2Z14P4/0LjLwuGkI0X6pf7nzp0CehzVVk51cKm2ymVXjl9dCG+gR1yhITIQ==" + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.8.tgz", + "integrity": "sha512-BkBhYQuzyl4hgTGOKo87Vdw6f9nj8HhI7WYpI0MCC5qFa5ahrAPOGgyETVdnRbv+Rjukl9MxxfDmVcVC435lDg==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-buffer": "1.7.8", + "@webassemblyjs/helper-wasm-bytecode": "1.7.8", + "@webassemblyjs/wasm-gen": "1.7.8" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.8.tgz", + "integrity": "sha512-tOarWChdG1a3y1yqCX0JMDKzrat5tQe4pV6K/TX19BcXsBLYxFQOL1DEDa5KG9syeyvCrvZ+i1+Mv1ExngvktQ==", + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.8.tgz", + "integrity": "sha512-GCYeGPgUFWJiZuP4NICbcyUQNxNLJIf476Ei+K+jVuuebtLpfvwkvYT6iTUE7oZYehhkor4Zz2g7SJ/iZaPudQ==", + "requires": { + "@xtuc/long": "4.2.1" + } + }, + "@webassemblyjs/utf8": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.8.tgz", + "integrity": "sha512-9X+f0VV+xNXW2ujfIRSXBJENGE6Qh7bNVKqu3yDjTFB3ar3nsThsGBBKdTG58aXOm2iUH6v28VIf88ymPXODHA==" + }, + "@webassemblyjs/wasm-edit": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.8.tgz", + "integrity": "sha512-6D3Hm2gFixrfyx9XjSON4ml1FZTugqpkIz5Awvrou8fnpyprVzcm4X8pyGRtA2Piixjl3DqmX/HB1xdWyE097A==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-buffer": "1.7.8", + "@webassemblyjs/helper-wasm-bytecode": "1.7.8", + "@webassemblyjs/helper-wasm-section": "1.7.8", + "@webassemblyjs/wasm-gen": "1.7.8", + "@webassemblyjs/wasm-opt": "1.7.8", + "@webassemblyjs/wasm-parser": "1.7.8", + "@webassemblyjs/wast-printer": "1.7.8" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.8.tgz", + "integrity": "sha512-a7O/wE6eBeVKKUYgpMK7NOHmMADD85rSXLe3CqrWRDwWff5y3cSVbzpN6Qv3z6C4hdkpq9qyij1Ga1kemOZGvQ==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-wasm-bytecode": "1.7.8", + "@webassemblyjs/ieee754": "1.7.8", + "@webassemblyjs/leb128": "1.7.8", + "@webassemblyjs/utf8": "1.7.8" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.8.tgz", + "integrity": "sha512-3lbQ0PT81NHCdi1sR/7+SNpZadM4qYcTSr62nFFAA7e5lFwJr14M1Gi+A/Y3PgcDWOHYjsaNGPpPU0H03N6Blg==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-buffer": "1.7.8", + "@webassemblyjs/wasm-gen": "1.7.8", + "@webassemblyjs/wasm-parser": "1.7.8" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.8.tgz", + "integrity": "sha512-rZ/zlhp9DHR/05zh1MbAjT2t624sjrPP/OkJCjXqzm7ynH+nIdNcn9Ixc+qzPMFXhIrk0rBoQ3to6sEIvHh9jQ==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-api-error": "1.7.8", + "@webassemblyjs/helper-wasm-bytecode": "1.7.8", + "@webassemblyjs/ieee754": "1.7.8", + "@webassemblyjs/leb128": "1.7.8", + "@webassemblyjs/utf8": "1.7.8" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.8.tgz", + "integrity": "sha512-Q/zrvtUvzWuSiJMcSp90fi6gp2nraiHXjTV2VgAluVdVapM4gy1MQn7akja2p6eSBDQpKJPJ6P4TxRkghRS5dg==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/floating-point-hex-parser": "1.7.8", + "@webassemblyjs/helper-api-error": "1.7.8", + "@webassemblyjs/helper-code-frame": "1.7.8", + "@webassemblyjs/helper-fsm": "1.7.8", + "@xtuc/long": "4.2.1" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.8.tgz", + "integrity": "sha512-GllIthRtwTxRDAURRNXscu7Napzmdf1jt1gpiZiK/QN4fH0lSGs3OTmvdfsMNP7tqI4B3ZtfaaWRlNIQug6Xyg==", "requires": { - "@types/events": "1.2.0", - "@types/node": "9.6.6" + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/wast-parser": "1.7.8", + "@xtuc/long": "4.2.1" } }, "@xmpp/jid": { @@ -218,9 +482,9 @@ "resolved": "https://registry.npmjs.org/@xmpp/streamparser/-/streamparser-0.0.6.tgz", "integrity": "sha1-EYAz6p23yGoctGED8mnr/3n28eo=", "requires": { - "@xmpp/xml": "0.1.3", - "inherits": "2.0.3", - "ltx": "2.7.1" + "@xmpp/xml": "^0.1.3", + "inherits": "^2.0.3", + "ltx": "^2.5.0" } }, "@xmpp/xml": { @@ -228,14 +492,19 @@ "resolved": "https://registry.npmjs.org/@xmpp/xml/-/xml-0.1.3.tgz", "integrity": "sha1-HxQ5nlPkGWiFWGmPbGLnHjmoam4=", "requires": { - "inherits": "2.0.3", - "ltx": "2.7.1" + "inherits": "^2.0.3", + "ltx": "^2.6.2" } }, - "abab": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz", - "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=" + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@xtuc/long": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz", + "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==" }, "abbrev": { "version": "1.1.1", @@ -247,43 +516,35 @@ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "requires": { - "mime-types": "2.1.18", + "mime-types": "~2.1.18", "negotiator": "0.6.1" } }, "acorn": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", - "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==" + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==" }, "acorn-dynamic-import": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", "requires": { - "acorn": "5.5.3" - } - }, - "acorn-globals": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.1.0.tgz", - "integrity": "sha512-KjZwU26uG3u6eZcfGbTULzFcsoz6pegNKtHPksZPOUsiKo5bUmiBPa38FuHZ/Eun+XYh/JCCkS9AS3Lu4McQOQ==", - "requires": { - "acorn": "5.5.3" + "acorn": "^5.0.0" } }, "acorn-jsx": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "resolved": "http://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", "dev": true, "requires": { - "acorn": "3.3.0" + "acorn": "^3.0.4" }, "dependencies": { "acorn": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "resolved": "http://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", "dev": true } @@ -291,16 +552,16 @@ }, "adjust-sourcemap-loader": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-1.2.0.tgz", + "resolved": "http://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-1.2.0.tgz", "integrity": "sha512-958oaHHVEXMvsY7v7cC5gEkNIcoaAVIhZ4mBReYVZJOTP9IgKmzLjIOhTtzpLMu+qriXvLsVjJ155EeInp45IQ==", "requires": { - "assert": "1.4.1", - "camelcase": "1.2.1", - "loader-utils": "1.1.0", - "lodash.assign": "4.2.0", - "lodash.defaults": "3.1.2", - "object-path": "0.9.2", - "regex-parser": "2.2.9" + "assert": "^1.3.0", + "camelcase": "^1.2.1", + "loader-utils": "^1.1.0", + "lodash.assign": "^4.0.1", + "lodash.defaults": "^3.1.2", + "object-path": "^0.9.2", + "regex-parser": "^2.2.9" }, "dependencies": { "camelcase": { @@ -313,8 +574,8 @@ "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz", "integrity": "sha1-xzCLGNv4vJNy1wGnNJPGEZK9Liw=", "requires": { - "lodash.assign": "3.2.0", - "lodash.restparam": "3.6.1" + "lodash.assign": "^3.0.0", + "lodash.restparam": "^3.0.0" }, "dependencies": { "lodash.assign": { @@ -322,9 +583,9 @@ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz", "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=", "requires": { - "lodash._baseassign": "3.2.0", - "lodash._createassigner": "3.1.1", - "lodash.keys": "3.1.2" + "lodash._baseassign": "^3.0.0", + "lodash._createassigner": "^3.0.0", + "lodash.keys": "^3.0.0" } } } @@ -336,21 +597,21 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, - "ajv-keywords": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz", - "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=" + "ajv-errors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz", + "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=" }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=" + "ajv-keywords": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=" }, "amdefine": { "version": "1.0.1", @@ -373,46 +634,36 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" }, "any-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.2.0.tgz", - "integrity": "sha1-xnhwBYADV5AJCD9UrAq6+1wz0kI=" + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz", + "integrity": "sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==" + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" }, "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "requires": { - "micromatch": "3.1.10", - "normalize-path": "2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "1.1.0" - } - } + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" } }, - "app-root-path": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz", - "integrity": "sha1-zWLc+OT9WkF+/GZNLlsQZTxlG0Y=" - }, "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "argparse": { @@ -420,16 +671,18 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, + "arity-n": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", + "integrity": "sha1-2edrEXM+CFacCEeuezmyhgswt0U=" + }, "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "requires": { - "arr-flatten": "1.1.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" }, "arr-flatten": { "version": "1.1.0", @@ -441,16 +694,6 @@ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=" - }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -465,47 +708,53 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, "requires": { - "array-uniq": "1.0.3" + "array-uniq": "^1.0.1" } }, "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true }, "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "array.prototype.findindex": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/array.prototype.findindex/-/array.prototype.findindex-2.0.2.tgz", "integrity": "sha1-WAaNJYh+9QXknckssAxE3O5VsGc=", "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0" + "define-properties": "^1.1.2", + "es-abstract": "^1.5.0" } }, "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true }, "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } }, "asn1.js": { "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "requires": { - "bn.js": "4.11.8", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "assert": { @@ -514,6 +763,21 @@ "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", "requires": { "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + } + } } }, "assert-plus": { @@ -526,17 +790,12 @@ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, - "ast-types": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.3.tgz", - "integrity": "sha512-XA5o5dsNw8MhyW0Q7MWXJWc4oOzZKbdsEJq45h7c8q/d9DwWZ5F2ugUc1PuMLPGsUnphCt/cNDHu8JeBbxf1qA==" - }, "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "requires": { - "lodash": "4.17.5" + "lodash": "^4.17.10" } }, "async-each": { @@ -560,33 +819,9 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.0.tgz", - "integrity": "sha512-SuiKH8vbsOyCALjA/+EINmt/Kdl+TQPrtFgW7XZZcwtryFu9e5kQoX3bjCW6mIvGH1fbeAZZuvwGR5IlBRznGw==" - }, - "autoprefixer": { - "version": "6.7.7", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz", - "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=", - "requires": { - "browserslist": "1.7.7", - "caniuse-db": "1.0.30000830", - "normalize-range": "0.1.2", - "num2fraction": "1.2.2", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" - }, - "dependencies": { - "browserslist": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", - "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", - "requires": { - "caniuse-db": "1.0.30000830", - "electron-to-chromium": "1.3.42" - } - } - } + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "aws-sign2": { "version": "0.7.0", @@ -594,17 +829,17 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" }, "axios": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.16.2.tgz", - "integrity": "sha1-uk+S8XFn37q0CYN4VFS5rBScPG0=", + "version": "0.18.0", + "resolved": "http://registry.npmjs.org/axios/-/axios-0.18.0.tgz", + "integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=", "requires": { - "follow-redirects": "1.4.1", - "is-buffer": "1.1.6" + "follow-redirects": "^1.3.0", + "is-buffer": "^1.1.5" } }, "babel-code-frame": { @@ -612,60 +847,9 @@ "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" - } - }, - "babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", - "requires": { - "babel-code-frame": "6.26.0", - "babel-generator": "6.26.1", - "babel-helpers": "6.24.1", - "babel-messages": "6.23.0", - "babel-register": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "convert-source-map": "1.5.1", - "debug": "2.6.9", - "json5": "0.5.1", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "path-is-absolute": "1.0.1", - "private": "0.1.8", - "slash": "1.0.0", - "source-map": "0.5.7" - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.5", - "source-map": "0.5.7", - "trim-right": "1.0.1" - } - }, - "babel-helper-bindify-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", - "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", - "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" } }, "babel-helper-builder-binary-assignment-operator-visitor": { @@ -673,9 +857,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", "requires": { - "babel-helper-explode-assignable-expression": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-call-delegate": { @@ -683,10 +867,10 @@ "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-define-map": { @@ -694,10 +878,10 @@ "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-helper-explode-assignable-expression": { @@ -705,20 +889,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helper-explode-class": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", - "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", - "requires": { - "babel-helper-bindify-decorators": "6.24.1", - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-function-name": { @@ -726,11 +899,11 @@ "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", "requires": { - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-get-function-arity": { @@ -738,8 +911,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-hoist-variables": { @@ -747,8 +920,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-optimise-call-expression": { @@ -756,8 +929,8 @@ "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-helper-regex": { @@ -765,9 +938,9 @@ "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-helper-remap-async-to-generator": { @@ -775,11 +948,11 @@ "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-helper-replace-supers": { @@ -787,31 +960,23 @@ "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", "requires": { - "babel-helper-optimise-call-expression": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-loader": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.4.tgz", - "integrity": "sha512-/hbyEvPzBJuGpk9o80R0ZyTej6heEOr59GoEUtn8qFKbnx4cJm9FWES6J/iv644sYgrtVw9JJQkjaLW/bqb5gw==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.4.tgz", + "integrity": "sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw==", "requires": { - "find-cache-dir": "1.0.0", - "loader-utils": "1.1.0", - "mkdirp": "0.5.1" + "find-cache-dir": "^1.0.0", + "loader-utils": "^1.0.2", + "mkdirp": "^0.5.1", + "util.promisify": "^1.0.0" } }, "babel-messages": { @@ -819,7 +984,7 @@ "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-check-es2015-constants": { @@ -827,115 +992,32 @@ "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-syntax-async-functions": { "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "resolved": "http://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=" }, - "babel-plugin-syntax-async-generators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", - "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=" - }, - "babel-plugin-syntax-class-constructor-call": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", - "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=" - }, - "babel-plugin-syntax-class-properties": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" - }, - "babel-plugin-syntax-decorators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", - "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" - }, - "babel-plugin-syntax-dynamic-import": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=" - }, "babel-plugin-syntax-exponentiation-operator": { "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "resolved": "http://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=" }, - "babel-plugin-syntax-export-extensions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", - "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=" - }, - "babel-plugin-syntax-flow": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", - "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=" - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" - }, "babel-plugin-syntax-trailing-function-commas": { "version": "6.22.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=" }, - "babel-plugin-transform-async-generator-functions": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", - "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", - "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-generators": "6.13.0", - "babel-runtime": "6.26.0" - } - }, "babel-plugin-transform-async-to-generator": { "version": "6.24.1", "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", "requires": { - "babel-helper-remap-async-to-generator": "6.24.1", - "babel-plugin-syntax-async-functions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-class-constructor-call": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", - "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", - "requires": { - "babel-plugin-syntax-class-constructor-call": "6.18.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-class-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", - "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", - "requires": { - "babel-helper-function-name": "6.24.1", - "babel-plugin-syntax-class-properties": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" - } - }, - "babel-plugin-transform-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", - "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", - "requires": { - "babel-helper-explode-class": "6.24.1", - "babel-plugin-syntax-decorators": "6.13.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-arrow-functions": { @@ -943,7 +1025,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-block-scoped-functions": { @@ -951,7 +1033,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-block-scoping": { @@ -959,11 +1041,11 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" } }, "babel-plugin-transform-es2015-classes": { @@ -971,15 +1053,15 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", "requires": { - "babel-helper-define-map": "6.26.0", - "babel-helper-function-name": "6.24.1", - "babel-helper-optimise-call-expression": "6.24.1", - "babel-helper-replace-supers": "6.24.1", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-define-map": "^6.24.1", + "babel-helper-function-name": "^6.24.1", + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-helper-replace-supers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-computed-properties": { @@ -987,8 +1069,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", "requires": { - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-destructuring": { @@ -996,7 +1078,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-duplicate-keys": { @@ -1004,8 +1086,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-for-of": { @@ -1013,7 +1095,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-function-name": { @@ -1021,9 +1103,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", "requires": { - "babel-helper-function-name": "6.24.1", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-literals": { @@ -1031,7 +1113,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-modules-amd": { @@ -1039,20 +1121,20 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", - "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", "requires": { - "babel-plugin-transform-strict-mode": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-types": "6.26.0" + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" } }, "babel-plugin-transform-es2015-modules-systemjs": { @@ -1060,9 +1142,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", "requires": { - "babel-helper-hoist-variables": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-modules-umd": { @@ -1070,9 +1152,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", "requires": { - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0" + "babel-plugin-transform-es2015-modules-amd": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, "babel-plugin-transform-es2015-object-super": { @@ -1080,8 +1162,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", "requires": { - "babel-helper-replace-supers": "6.24.1", - "babel-runtime": "6.26.0" + "babel-helper-replace-supers": "^6.24.1", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-parameters": { @@ -1089,12 +1171,12 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", "requires": { - "babel-helper-call-delegate": "6.24.1", - "babel-helper-get-function-arity": "6.24.1", - "babel-runtime": "6.26.0", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-shorthand-properties": { @@ -1102,8 +1184,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-spread": { @@ -1111,7 +1193,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-sticky-regex": { @@ -1119,9 +1201,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-plugin-transform-es2015-template-literals": { @@ -1129,7 +1211,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-typeof-symbol": { @@ -1137,7 +1219,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-es2015-unicode-regex": { @@ -1145,9 +1227,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", "requires": { - "babel-helper-regex": "6.26.0", - "babel-runtime": "6.26.0", - "regexpu-core": "2.0.0" + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" } }, "babel-plugin-transform-exponentiation-operator": { @@ -1155,36 +1237,9 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", - "babel-plugin-syntax-exponentiation-operator": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-export-extensions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", - "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", - "requires": { - "babel-plugin-syntax-export-extensions": "6.13.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-flow-strip-types": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", - "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", - "requires": { - "babel-plugin-syntax-flow": "6.18.0", - "babel-runtime": "6.26.0" - } - }, - "babel-plugin-transform-object-rest-spread": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", - "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", - "requires": { - "babel-plugin-syntax-object-rest-spread": "6.13.0", - "babel-runtime": "6.26.0" + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" } }, "babel-plugin-transform-regenerator": { @@ -1192,7 +1247,7 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", "requires": { - "regenerator-transform": "0.10.1" + "regenerator-transform": "^0.10.0" } }, "babel-plugin-transform-strict-mode": { @@ -1200,8 +1255,8 @@ "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0" + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, "babel-polyfill": { @@ -1209,9 +1264,9 @@ "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.23.0.tgz", "integrity": "sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0=", "requires": { - "babel-runtime": "6.26.0", - "core-js": "2.5.5", - "regenerator-runtime": "0.10.5" + "babel-runtime": "^6.22.0", + "core-js": "^2.4.0", + "regenerator-runtime": "^0.10.0" }, "dependencies": { "regenerator-runtime": { @@ -1222,118 +1277,40 @@ } }, "babel-preset-env": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.1.tgz", - "integrity": "sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA==", - "requires": { - "babel-plugin-check-es2015-constants": "6.22.0", - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-es2015-arrow-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoping": "6.26.0", - "babel-plugin-transform-es2015-classes": "6.24.1", - "babel-plugin-transform-es2015-computed-properties": "6.24.1", - "babel-plugin-transform-es2015-destructuring": "6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", - "babel-plugin-transform-es2015-for-of": "6.23.0", - "babel-plugin-transform-es2015-function-name": "6.24.1", - "babel-plugin-transform-es2015-literals": "6.22.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", - "babel-plugin-transform-es2015-modules-umd": "6.24.1", - "babel-plugin-transform-es2015-object-super": "6.24.1", - "babel-plugin-transform-es2015-parameters": "6.24.1", - "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", - "babel-plugin-transform-es2015-spread": "6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "6.24.1", - "babel-plugin-transform-es2015-template-literals": "6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "babel-plugin-transform-regenerator": "6.26.0", - "browserslist": "2.11.3", - "invariant": "2.2.4", - "semver": "5.5.0" - } - }, - "babel-preset-es2015": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", - "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", - "requires": { - "babel-plugin-check-es2015-constants": "6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", - "babel-plugin-transform-es2015-block-scoping": "6.26.0", - "babel-plugin-transform-es2015-classes": "6.24.1", - "babel-plugin-transform-es2015-computed-properties": "6.24.1", - "babel-plugin-transform-es2015-destructuring": "6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", - "babel-plugin-transform-es2015-for-of": "6.23.0", - "babel-plugin-transform-es2015-function-name": "6.24.1", - "babel-plugin-transform-es2015-literals": "6.22.0", - "babel-plugin-transform-es2015-modules-amd": "6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", - "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", - "babel-plugin-transform-es2015-modules-umd": "6.24.1", - "babel-plugin-transform-es2015-object-super": "6.24.1", - "babel-plugin-transform-es2015-parameters": "6.24.1", - "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", - "babel-plugin-transform-es2015-spread": "6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "6.24.1", - "babel-plugin-transform-es2015-template-literals": "6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "6.24.1", - "babel-plugin-transform-regenerator": "6.26.0" - } - }, - "babel-preset-stage-1": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", - "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", - "requires": { - "babel-plugin-transform-class-constructor-call": "6.24.1", - "babel-plugin-transform-export-extensions": "6.22.0", - "babel-preset-stage-2": "6.24.1" - } - }, - "babel-preset-stage-2": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", - "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", - "requires": { - "babel-plugin-syntax-dynamic-import": "6.18.0", - "babel-plugin-transform-class-properties": "6.24.1", - "babel-plugin-transform-decorators": "6.24.1", - "babel-preset-stage-3": "6.24.1" - } - }, - "babel-preset-stage-3": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", - "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", - "requires": { - "babel-plugin-syntax-trailing-function-commas": "6.22.0", - "babel-plugin-transform-async-generator-functions": "6.24.1", - "babel-plugin-transform-async-to-generator": "6.24.1", - "babel-plugin-transform-exponentiation-operator": "6.24.1", - "babel-plugin-transform-object-rest-spread": "6.26.0" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "requires": { - "babel-core": "6.26.0", - "babel-runtime": "6.26.0", - "core-js": "2.5.5", - "home-or-tmp": "2.0.0", - "lodash": "4.17.5", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18" + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", + "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", + "requires": { + "babel-plugin-check-es2015-constants": "^6.22.0", + "babel-plugin-syntax-trailing-function-commas": "^6.22.0", + "babel-plugin-transform-async-to-generator": "^6.22.0", + "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoping": "^6.23.0", + "babel-plugin-transform-es2015-classes": "^6.23.0", + "babel-plugin-transform-es2015-computed-properties": "^6.22.0", + "babel-plugin-transform-es2015-destructuring": "^6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", + "babel-plugin-transform-es2015-for-of": "^6.23.0", + "babel-plugin-transform-es2015-function-name": "^6.22.0", + "babel-plugin-transform-es2015-literals": "^6.22.0", + "babel-plugin-transform-es2015-modules-amd": "^6.22.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", + "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", + "babel-plugin-transform-es2015-modules-umd": "^6.23.0", + "babel-plugin-transform-es2015-object-super": "^6.22.0", + "babel-plugin-transform-es2015-parameters": "^6.23.0", + "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", + "babel-plugin-transform-es2015-spread": "^6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", + "babel-plugin-transform-es2015-template-literals": "^6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", + "babel-plugin-transform-exponentiation-operator": "^6.22.0", + "babel-plugin-transform-regenerator": "^6.22.0", + "browserslist": "^3.2.6", + "invariant": "^2.2.2", + "semver": "^5.3.0" } }, "babel-runtime": { @@ -1341,8 +1318,8 @@ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "2.5.5", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { @@ -1350,11 +1327,11 @@ "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.5" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" } }, "babel-traverse": { @@ -1362,15 +1339,25 @@ "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.4", - "lodash": "4.17.5" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "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" + } + } } }, "babel-types": { @@ -1378,10 +1365,10 @@ "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.5", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, "babylon": { @@ -1404,13 +1391,13 @@ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -1418,7 +1405,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -1426,7 +1413,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -1434,7 +1421,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -1442,20 +1429,10 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" } } }, @@ -1465,12 +1442,12 @@ "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" }, "bcrypt-pbkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "big.js": { @@ -1479,19 +1456,14 @@ "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" }, "bignumber.js": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-5.0.0.tgz", - "integrity": "sha512-KWTu6ZMVk9sxlDJQh2YH1UOnfDP8O8TpxUxgQG/vKASoSnEjK9aVuOueFaPcQEYQ5fyNXNTOYwYw3099RYebWg==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-6.0.0.tgz", + "integrity": "sha512-x247jIuy60/+FtMRvscqfxtVHQf8AGx2hm9c6btkgC0x/hp9yt+teISNhvF8WlwRkCc5yF2fDECH8SIMe8j+GA==" }, "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=" - }, - "binaryextensions": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.1.1.tgz", - "integrity": "sha512-XBaoWE9RW8pPdPQNibZsW2zh8TW6gcarXp1FZPwT8Uop8ScSNldJEWf2k9l3HeTqdrEwsOsFcq74RiJECW34yA==" + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", + "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==" }, "bindings": { "version": "1.3.0", @@ -1503,26 +1475,47 @@ "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", "integrity": "sha1-SfiW1uhYpKSZ34XDj7OZua/4QPg=" }, + "bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, "bitfinex-api-node": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bitfinex-api-node/-/bitfinex-api-node-1.2.1.tgz", - "integrity": "sha512-pG4BMCD7T/R1vkLhLdHPim4Lbfbkdyt/yTaJ+A48vrzGsQO7MwxIRRs6rEx1Acm/vpsUyksbOaQyladh2T8Whw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bitfinex-api-node/-/bitfinex-api-node-2.0.0.tgz", + "integrity": "sha512-wtWAeO/jcWnQ5CWU0zngt5Ej345m8aizJgCBMJXL75dF43nX0C8fPPgLK30T/7v0UL3dNTlPltnLSDGJUYhq2A==", "requires": { - "debug": "2.6.9", - "lodash": "4.17.5", - "request": "2.85.0", - "request-promise": "4.2.2", - "ws": "3.3.3" + "bignumber.js": "^6.0.0", + "bluebird": "^3.5.1", + "cbq": "0.0.1", + "crc-32": "^1.2.0", + "debug": "^2.2.0", + "lodash": "^4.17.4", + "lodash.throttle": "^4.1.1", + "request": "^2.67.0", + "request-promise": "^4.2.0", + "ws": "^3.0.0" }, "dependencies": { + "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" + } + }, "ws": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1", - "ultron": "1.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" } } } @@ -1536,12 +1529,12 @@ } }, "bl": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.0.1.tgz", + "integrity": "sha512-FrMgLukB9jujvJ92p5TA0hcKIHtInVXXhxD7qgAuV7k0cbPt9USZmOYnhDXH6IsnGeIUglX42TSBV7Gn4q5sbQ==", "requires": { - "readable-stream": "2.3.6", - "safe-buffer": "5.1.1" + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } }, "block-stream": { @@ -1549,13 +1542,13 @@ "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", "requires": { - "inherits": "2.0.3" + "inherits": "~2.0.0" } }, "bluebird": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz", + "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==" }, "bn.js": { "version": "4.11.8", @@ -1563,26 +1556,37 @@ "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" }, "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", "requires": { "bytes": "3.0.0", - "content-type": "1.0.4", + "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" + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" }, "dependencies": { + "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" + } + }, "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==" + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } } } }, @@ -1591,41 +1595,50 @@ "resolved": "https://registry.npmjs.org/bollinger-bands/-/bollinger-bands-3.0.1.tgz", "integrity": "sha512-DTod+FHUB6r/KPjbxwwfIDifRjbdt3U9nVbiPwELd0CbXzpslD0NwGbSE8H8E5i7Am1cLtmf4c9E7U+oej6UZQ==", "requires": { - "math-array": "1.1.2", - "moving-averages": "4.0.5", - "s-deviation": "2.0.3" - } - }, - "boom": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "requires": { - "hoek": "4.2.1" + "math-array": "^1.1.2", + "moving-averages": "^4.0.5", + "s-deviation": "^2.0.3" } }, "bootstrap": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.1.0.tgz", - "integrity": "sha512-kCo82nE8qYVfOa/Z3hL98CPgPIEkh6iPdiJrUJMQ9n9r0+6PEET7cmhLlV0XVYmEj5QtKIOaSGMLxy5jSFhKog==" + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.1.3.tgz", + "integrity": "sha512-rDFIzgXcof0jDyjNosjv4Sno77X4KuPeFxG2XZZv1/Kc8DRVGVADdoQyyOVDwPqL36DDmtCQbrpMCqvpPLJQ0w==" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "brorand": { @@ -1633,35 +1646,22 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, - "browser-process-hrtime": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz", - "integrity": "sha1-Ql1opY00R/AqBKqJQYf86K+Le44=" - }, "browser-request": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz", "integrity": "sha1-ns5bWsqJopkyJC4Yv5M975h2zBc=" }, - "browser-resolve": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", - "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=", - "requires": { - "resolve": "1.1.7" - } - }, "browserify-aes": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "requires": { - "buffer-xor": "1.0.3", - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "browserify-cipher": { @@ -1669,28 +1669,37 @@ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "requires": { - "browserify-aes": "1.2.0", - "browserify-des": "1.0.1", - "evp_bytestokey": "1.0.3" + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" } }, "browserify-des": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.1.tgz", - "integrity": "sha512-zy0Cobe3hhgpiOM32Tj7KQ3Vl91m0njwsjzZQK1L+JDf11dzP9qIvjreVinsvXrgfjhStXwUWAEpB9D7Gwmayw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "requires": { - "cipher-base": "1.0.4", - "des.js": "1.0.0", - "inherits": "2.0.3" + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "browserify-rsa": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "requires": { - "bn.js": "4.11.8", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sha3": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/browserify-sha3/-/browserify-sha3-0.0.1.tgz", + "integrity": "sha1-P/NKMAbvFcD7NWflQbkaI0ASPRE=", + "requires": { + "js-sha3": "^0.3.1" } }, "browserify-sign": { @@ -1698,13 +1707,13 @@ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "elliptic": "6.4.0", - "inherits": "2.0.3", - "parse-asn1": "5.1.1" + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" } }, "browserify-zlib": { @@ -1712,37 +1721,65 @@ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "requires": { - "pako": "1.0.6" + "pako": "~1.0.5" } }, "browserslist": { - "version": "2.11.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.3.tgz", - "integrity": "sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", + "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", "requires": { - "caniuse-lite": "1.0.30000830", - "electron-to-chromium": "1.3.42" + "caniuse-lite": "^1.0.30000844", + "electron-to-chromium": "^1.3.47" } }, "bson": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.6.tgz", - "integrity": "sha512-D8zmlb46xfuK2gGvKmUjIklQEouN2nQ0LEHHeZ/NoHM2LDiMk2EYzZ5Ntw/Urk+bgMDosOZxaRzXxvhI5TcAVQ==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.0.tgz", + "integrity": "sha512-9Aeai9TacfNtWXOYarkFJRW2CWo+dRon+fuLZYJmvLV3+MiUp0bEI6IAZfXEIg7/Pl/7IWlLaDnhzTsD81etQA==" }, "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", "requires": { - "base64-js": "1.3.0", - "ieee754": "1.1.11", - "isarray": "1.0.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" } }, - "buffer-from": { + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-fill": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", - "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==" + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "buffer-to-arraybuffer": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", + "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=" }, "buffer-xor": { "version": "1.0.3", @@ -1769,19 +1806,19 @@ "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "requires": { - "bluebird": "3.5.1", - "chownr": "1.0.1", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "lru-cache": "4.1.2", - "mississippi": "2.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "5.3.0", - "unique-filename": "1.1.0", - "y18n": "4.0.0" + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" }, "dependencies": { "y18n": { @@ -1796,43 +1833,15 @@ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - } - } - }, - "cacheable-request": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", - "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", - "requires": { - "clone-response": "1.0.2", - "get-stream": "3.0.0", - "http-cache-semantics": "3.8.1", - "keyv": "3.0.0", - "lowercase-keys": "1.0.0", - "normalize-url": "2.0.1", - "responselike": "1.0.2" - }, - "dependencies": { - "lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" - } + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" } }, "caller-path": { @@ -1841,21 +1850,14 @@ "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", "dev": true, "requires": { - "callsites": "0.2.0" - }, - "dependencies": { - "callsites": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", - "dev": true - } + "callsites": "^0.2.0" } }, "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true }, "camelcase": { "version": "2.1.1", @@ -1867,57 +1869,51 @@ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" - } - }, - "caniuse-api": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz", - "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=", - "requires": { - "browserslist": "1.7.7", - "caniuse-db": "1.0.30000830", - "lodash.memoize": "4.1.2", - "lodash.uniq": "4.5.0" - }, - "dependencies": { - "browserslist": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", - "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", - "requires": { - "caniuse-db": "1.0.30000830", - "electron-to-chromium": "1.3.42" - } - } + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" } }, - "caniuse-db": { - "version": "1.0.30000830", - "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000830.tgz", - "integrity": "sha1-bkUlWzRWSf0V/1kHLaHhK7PeLxM=" - }, "caniuse-lite": { - "version": "1.0.30000830", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000830.tgz", - "integrity": "sha512-yMqGkujkoOIZfvOYiWdqPALgY/PVGiqCHUJb6yNq7xhI/pR+gQO0U2K6lRDqAiJv4+CIU3CtTLblNGw0QGnr6g==" + "version": "1.0.30000888", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000888.tgz", + "integrity": "sha512-vftg+5p/lPsQGpnhSo/yBuYL36ai/cyjLvU3dOPJY1kkKrekLWIy8SLm+wzjX0hpCUdFTasC4/ZT7uqw4rKOnQ==" }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, + "cbq": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/cbq/-/cbq-0.0.1.tgz", + "integrity": "sha512-MCLjfpHAcI3gPdx26xoQx2JqRdNMf68ovhJkqNSiZIx/yQP6yNYYKbf8ww2J6kgNTPGIrXyugFlNz5jmGtg8BQ==" + }, "ccxt": { - "version": "1.13.32", - "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.13.32.tgz", - "integrity": "sha512-QPZ5XNFRBaoT07Z4pARubtETKlXU67KYdb0oLfyAJiJkfuKLafVbuUgtDIUWioerWfNP83lX5hK/YcevZO0TVg==", + "version": "1.17.363", + "resolved": "https://registry.npmjs.org/ccxt/-/ccxt-1.17.363.tgz", + "integrity": "sha512-g7fxYrOaKSzjHXqZVxeEISQ7VHxnZpeeWbpkUa+VGbQyay9LzUhAUMnmhIcA9BA/CSKc6e5cxcBdvgvHYnPxgQ==", "requires": { + "bignumber.js": "7.2.1", "cloudscraper": "1.4.1", "crypto-js": "3.1.9-1", + "ethereumjs-abi": "0.6.5", + "ethereumjs-util": "5.2.0", "fetch-ponyfill": "4.1.0", "opencollective": "1.0.3", - "qs": "6.5.1" + "qs": "6.5.1", + "web3": "1.0.0-beta.34" + }, + "dependencies": { + "bignumber.js": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", + "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==" + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + } } }, "cexio-api-node": { @@ -1925,48 +1921,40 @@ "resolved": "https://registry.npmjs.org/cexio-api-node/-/cexio-api-node-1.2.0.tgz", "integrity": "sha512-vqt4NxuDJbmCHXnKr1J0viefmJfW0BAo1vqHXXcVIJcYMs6Qs9TXztvlkqanGOq09h9mVQ3Y+xj/GWOdwuvunQ==", "requires": { - "debug": "3.1.0", - "moment": "2.22.1", - "request": "2.85.0", - "underscore": "1.9.0", - "ws": "3.3.3" + "debug": "^3.1.0", + "moment": "^2.20.1", + "request": "^2.83.0", + "underscore": "^1.8.3", + "ws": "^3.3.3" }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, "underscore": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.0.tgz", - "integrity": "sha512-4IV1DSSxC1QK48j9ONFK1MoIAKKkbE8i7u55w2R6IqBqbT7A/iG7aZBCR2Bi8piF0Uz+i/MG1aeqLwl/5vqF+A==" + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" }, "ws": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1", - "ultron": "1.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" } } } }, "chalk": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "chardet": { @@ -1975,129 +1963,50 @@ "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" }, "chokidar": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.3.tgz", - "integrity": "sha512-zW8iXYZtXMx4kux/nuZVXjkLP+CyIK5Al5FHnj1OgTKGZfp4Oy6/ymtMSKFv3GD8DviEmUPmJg9eFdJ/JzudMg==", - "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.2", - "fsevents": "1.2.0", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "normalize-path": "2.1.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0", - "upath": "1.0.4" - }, - "dependencies": { - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "0.1.1" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "2.1.1" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "3.2.2" - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "1.1.0" - } - } + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", + "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.2.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "lodash.debounce": "^4.0.8", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.5" } }, "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==" }, "chrome-trace-event": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", - "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", + "requires": { + "tslib": "^1.9.0" + } }, "ci-info": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", - "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==" + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==" }, "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "circular-json": { @@ -2106,23 +2015,15 @@ "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", "dev": true }, - "clap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", - "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", - "requires": { - "chalk": "1.1.3" - } - }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -2130,13 +2031,8 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" } } }, @@ -2145,66 +2041,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "requires": { - "restore-cursor": "2.0.0" - } - }, - "cli-spinners": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz", - "integrity": "sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw=" - }, - "cli-table": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz", - "integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=", - "requires": { - "colors": "1.0.3" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" - } - } - }, - "cli-table2": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/cli-table2/-/cli-table2-0.2.0.tgz", - "integrity": "sha1-LR738hig54biFFQFYtS9F3/jLZc=", - "dev": true, - "requires": { - "colors": "1.2.1", - "lodash": "3.10.1", - "string-width": "1.0.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - } + "restore-cursor": "^2.0.0" } }, "cli-truncate": { @@ -2213,7 +2050,7 @@ "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", "requires": { "slice-ansi": "0.0.4", - "string-width": "1.0.2" + "string-width": "^1.0.1" }, "dependencies": { "is-fullwidth-code-point": { @@ -2221,7 +2058,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -2229,9 +2066,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -2246,9 +2083,9 @@ "resolved": "https://registry.npmjs.org/cliff/-/cliff-0.1.10.tgz", "integrity": "sha1-U74z6p9ZvshWCe4wCsQgdgPlIBM=", "requires": { - "colors": "1.0.3", - "eyes": "0.1.8", - "winston": "0.8.3" + "colors": "~1.0.3", + "eyes": "~0.1.8", + "winston": "0.8.x" }, "dependencies": { "colors": { @@ -2263,9 +2100,9 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" }, "dependencies": { "is-fullwidth-code-point": { @@ -2273,7 +2110,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -2281,70 +2118,27 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } }, "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" - }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" }, "clone-deep": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", "requires": { - "for-own": "1.0.0", - "is-plain-object": "2.0.4", - "kind-of": "6.0.2", - "shallow-clone": "1.0.0" - }, - "dependencies": { - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "requires": { - "for-in": "1.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - } - } - }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "requires": { - "mimic-response": "1.0.0" - } - }, - "clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" - }, - "cloneable-readable": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz", - "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==", - "requires": { - "inherits": "2.0.3", - "process-nextick-args": "2.0.0", - "readable-stream": "2.3.6" + "for-own": "^1.0.0", + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.0", + "shallow-clone": "^1.0.0" } }, "cloudscraper": { @@ -2352,7 +2146,7 @@ "resolved": "https://registry.npmjs.org/cloudscraper/-/cloudscraper-1.4.1.tgz", "integrity": "sha1-8rRDHzFyhtgZsTVyZso0Y7ES68o=", "requires": { - "request": "2.85.0" + "request": "^2.49.0" } }, "co": { @@ -2360,14 +2154,6 @@ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" }, - "coa": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz", - "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=", - "requires": { - "q": "1.5.1" - } - }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -2378,24 +2164,14 @@ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" - } - }, - "color": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", - "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", - "requires": { - "clone": "1.0.4", - "color-convert": "1.9.1", - "color-string": "0.3.0" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "requires": { "color-name": "1.1.3" } @@ -2405,41 +2181,23 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, - "color-string": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", - "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", - "requires": { - "color-name": "1.1.3" - } - }, - "colormin": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz", - "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=", - "requires": { - "color": "0.11.4", - "css-color-names": "0.0.4", - "has": "1.0.1" - } - }, "colors": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.1.tgz", - "integrity": "sha512-s8+wktIuDSLffCywiwSxQOMqtPxML11a/dtHE17tMn4B1MSWw/C22EKf7M2KGUBcDaVFEGT+S8N02geDXeuNKg==" + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.2.tgz", + "integrity": "sha512-rhP0JSBGYvpcNQj4s5AdShMeE5ahMop96cTeDl/v9qQQm2fYClE2QXZRi8wLzc+GmXSxdIqqbOIAhyObEXDbfQ==" }, "combined-stream": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "resolved": "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==" + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.18.0.tgz", + "integrity": "sha512-6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ==" }, "commondir": { "version": "1.0.1", @@ -2447,15 +2205,23 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "complex.js": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/complex.js/-/complex.js-2.0.4.tgz", - "integrity": "sha512-Syl95HpxUTS0QjwNxencZsKukgh1zdS9uXeXX2Us0pHaqBR6kiZZi0AkZ9VpZFwHJyVIUVzI4EumjWdXP3fy6w==" + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/complex.js/-/complex.js-2.0.11.tgz", + "integrity": "sha512-6IArJLApNtdg1P1dFtn3dnyzoZBEF0MwMnrfF1exSBRpZYoy4yieMkpZhQDC0uwctw48vii0CFVyHfpgZ/DfGw==" }, "component-emitter": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" }, + "compose-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", + "integrity": "sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8=", + "requires": { + "arity-n": "^1.0.4" + } + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2466,10 +2232,10 @@ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "requires": { - "buffer-from": "1.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "typedarray": "0.0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "console-browserify": { @@ -2477,7 +2243,7 @@ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "requires": { - "date-now": "0.1.4" + "date-now": "^0.1.4" } }, "console-control-strings": { @@ -2501,9 +2267,12 @@ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "requires": { + "safe-buffer": "~5.1.1" + } }, "convnetjs": { "version": "0.3.0", @@ -2521,21 +2290,21 @@ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "cookiejar": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.1.tgz", - "integrity": "sha1-Qa1XsbVVlR7BcUEqgZQrHoIA00o=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" }, "copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "requires": { - "aproba": "1.2.0", - "fs-write-stream-atomic": "1.0.10", - "iferr": "0.1.5", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" } }, "copy-descriptor": { @@ -2544,40 +2313,32 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, "core-js": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.5.tgz", - "integrity": "sha1-sU3ek2xkDAV5prUMq8wTLdYSfjs=" + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "cors": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.4.tgz", + "integrity": "sha1-K9OB8usgECAQXNUOpZ2mMJBpRoY=", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", - "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.0.6.tgz", + "integrity": "sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ==", "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.11.0", - "parse-json": "4.0.0", - "require-from-string": "2.0.2" - }, - "dependencies": { - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" - }, - "js-yaml": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", - "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", - "requires": { - "argparse": "1.0.10", - "esprima": "4.0.0" - } - } + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0" } }, "counterup": { @@ -2585,42 +2346,51 @@ "resolved": "https://registry.npmjs.org/counterup/-/counterup-1.0.2.tgz", "integrity": "sha1-B9vh5dMYwXAtv/ir4l6aS4Jp3Hg=", "requires": { - "jquery": "3.3.1", - "waypoints": "4.0.1" + "jquery": ">=1.5", + "waypoints": ">=2.0" + } + }, + "crc-32": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.0.tgz", + "integrity": "sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA==", + "requires": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" } }, "create-ecdh": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.1.tgz", - "integrity": "sha512-iZvCCg8XqHQZ1ioNBTzXS/cQSkqkqcPs8xSX4upNB+DAk9Ht3uzQf2J32uAHNCne8LDmKr29AgZrEs4oIrwLuQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0" + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" } }, "create-hash": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "requires": { - "cipher-base": "1.0.4", - "inherits": "2.0.3", - "md5.js": "1.3.4", - "ripemd160": "2.0.2", - "sha.js": "2.4.11" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, "create-hmac": { "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "requires": { - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "inherits": "2.0.3", - "ripemd160": "2.0.2", - "safe-buffer": "5.1.1", - "sha.js": "2.4.11" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "cross-spawn": { @@ -2628,27 +2398,9 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "requires": { - "lru-cache": "4.1.2", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, - "cryptiles": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "requires": { - "boom": "5.2.0" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "requires": { - "hoek": "4.2.1" - } - } + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "crypto-browserify": { @@ -2656,17 +2408,17 @@ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "requires": { - "browserify-cipher": "1.0.1", - "browserify-sign": "4.0.4", - "create-ecdh": "4.0.1", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "diffie-hellman": "5.0.3", - "inherits": "2.0.3", - "pbkdf2": "3.0.16", - "public-encrypt": "4.0.2", - "randombytes": "2.0.6", - "randomfill": "1.0.4" + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" } }, "crypto-js": { @@ -2675,71 +2427,40 @@ "integrity": "sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg=" }, "css": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", - "integrity": "sha1-c6TIHehdtmTU7mdPfUcIXjstVdw=", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", "requires": { - "inherits": "2.0.3", - "source-map": "0.1.43", - "source-map-resolve": "0.3.1", - "urix": "0.1.0" + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" }, "dependencies": { - "atob": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", - "integrity": "sha1-lfE2KbEsOlGl0hWr3OKqnzL4B3M=" - }, "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "requires": { - "amdefine": "1.0.1" - } - }, - "source-map-resolve": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", - "integrity": "sha1-YQ9hIqRFuN1RU1oqcbeD38Ekh2E=", - "requires": { - "atob": "1.1.3", - "resolve-url": "0.2.1", - "source-map-url": "0.3.0", - "urix": "0.1.0" - } - }, - "source-map-url": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=" + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, - "css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=" - }, "css-loader": { - "version": "0.28.11", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.11.tgz", - "integrity": "sha512-wovHgjAx8ZIMGSL8pTys7edA1ClmzxHeY6n/d97gg5odgsxEgKjULPR0viqyC+FWMCL9sfqoC/QCUBo62tLvPg==", - "requires": { - "babel-code-frame": "6.26.0", - "css-selector-tokenizer": "0.7.0", - "cssnano": "3.10.0", - "icss-utils": "2.1.0", - "loader-utils": "1.1.0", - "lodash.camelcase": "4.3.0", - "object-assign": "4.1.1", - "postcss": "5.2.18", - "postcss-modules-extract-imports": "1.2.0", - "postcss-modules-local-by-default": "1.2.0", - "postcss-modules-scope": "1.1.0", - "postcss-modules-values": "1.3.0", - "postcss-value-parser": "3.3.0", - "source-list-map": "2.0.0" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.0.tgz", + "integrity": "sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA==", + "requires": { + "babel-code-frame": "^6.26.0", + "css-selector-tokenizer": "^0.7.0", + "icss-utils": "^2.1.0", + "loader-utils": "^1.0.2", + "lodash.camelcase": "^4.3.0", + "postcss": "^6.0.23", + "postcss-modules-extract-imports": "^1.2.0", + "postcss-modules-local-by-default": "^1.2.0", + "postcss-modules-scope": "^1.1.0", + "postcss-modules-values": "^1.3.0", + "postcss-value-parser": "^3.3.0", + "source-list-map": "^2.0.0" } }, "css-selector-tokenizer": { @@ -2747,9 +2468,9 @@ "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", "requires": { - "cssesc": "0.1.0", - "fastparse": "1.1.1", - "regexpu-core": "1.0.0" + "cssesc": "^0.1.0", + "fastparse": "^1.1.1", + "regexpu-core": "^1.0.0" }, "dependencies": { "regexpu-core": { @@ -2757,9 +2478,9 @@ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" } } } @@ -2769,79 +2490,12 @@ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=" }, - "cssnano": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz", - "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=", - "requires": { - "autoprefixer": "6.7.7", - "decamelize": "1.2.0", - "defined": "1.0.0", - "has": "1.0.1", - "object-assign": "4.1.1", - "postcss": "5.2.18", - "postcss-calc": "5.3.1", - "postcss-colormin": "2.2.2", - "postcss-convert-values": "2.6.1", - "postcss-discard-comments": "2.0.4", - "postcss-discard-duplicates": "2.1.0", - "postcss-discard-empty": "2.1.0", - "postcss-discard-overridden": "0.1.1", - "postcss-discard-unused": "2.2.3", - "postcss-filter-plugins": "2.0.2", - "postcss-merge-idents": "2.1.7", - "postcss-merge-longhand": "2.0.2", - "postcss-merge-rules": "2.1.2", - "postcss-minify-font-values": "1.0.5", - "postcss-minify-gradients": "1.0.5", - "postcss-minify-params": "1.2.2", - "postcss-minify-selectors": "2.1.1", - "postcss-normalize-charset": "1.1.1", - "postcss-normalize-url": "3.0.8", - "postcss-ordered-values": "2.2.3", - "postcss-reduce-idents": "2.4.0", - "postcss-reduce-initial": "1.0.1", - "postcss-reduce-transforms": "1.0.4", - "postcss-svgo": "2.1.6", - "postcss-unique-selectors": "2.0.2", - "postcss-value-parser": "3.3.0", - "postcss-zindex": "2.2.0" - } - }, - "csso": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz", - "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=", - "requires": { - "clap": "1.2.3", - "source-map": "0.5.7" - } - }, - "cssom": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.2.tgz", - "integrity": "sha1-uANhcMefB6kP8vFuIihAJ6JDhIs=" - }, - "cssstyle": { - "version": "0.2.37", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz", - "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=", - "requires": { - "cssom": "0.3.2" - } - }, - "ctype": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz", - "integrity": "sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8=", - "optional": true - }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "requires": { - "array-find-index": "1.0.2" + "array-find-index": "^1.0.1" } }, "cycle": { @@ -2854,27 +2508,20 @@ "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=" }, - "dargs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-5.1.0.tgz", - "integrity": "sha1-7H6lDHhWTNNsnV7Bj2Yyn63ieCk=" + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "requires": { - "assert-plus": "1.0.0" - } - }, - "data-urls": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.0.0.tgz", - "integrity": "sha512-ai40PPQR0Fn1lD2PPie79CibnlMN2AYiDhwFX/rZHVsxbs5kNJSjegqXIprhouGXlRdEnfybva7kqRGnB6mypA==", - "requires": { - "abab": "1.0.4", - "whatwg-mimetype": "2.1.0", - "whatwg-url": "6.4.1" + "assert-plus": "^1.0.0" } }, "date-fns": { @@ -2887,15 +2534,10 @@ "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==" - }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "requires": { "ms": "2.0.0" } @@ -2906,21 +2548,114 @@ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decimal.js": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-9.0.1.tgz", - "integrity": "sha512-2h0iKbJwnImBk4TGk7CG1xadoA0g3LDPlQhQzbZ221zvG0p2YVUedbKIPsOZXKZGx6YmZMJKYOalpCMxSdDqTQ==" + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.0.1.tgz", + "integrity": "sha512-vklWB5C4Cj423xnaOtsUmAv0/7GqlXIgDv2ZKDyR64OV3OSzGHNx2mk4p/1EKnB5s70k73cIOOEcG9YzF0q4Lw==" }, "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, + "decompress": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", + "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", + "requires": { + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } + } + }, "decompress-response": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", "requires": { - "mimic-response": "1.0.0" + "mimic-response": "^1.0.0" + } + }, + "decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", + "requires": { + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" + } + }, + "decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", + "requires": { + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" + }, + "dependencies": { + "file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" + } + } + }, + "decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", + "requires": { + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" + } + }, + "decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "requires": { + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" + }, + "dependencies": { + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" + }, + "get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "requires": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, "dedent": { @@ -2929,22 +2664,22 @@ "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=" }, "deep-extend": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", - "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true }, "define-properties": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "requires": { - "foreach": "2.0.5", - "object-keys": "1.0.11" + "object-keys": "^1.0.12" } }, "define-property": { @@ -2952,8 +2687,8 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { "is-accessor-descriptor": { @@ -2961,7 +2696,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -2969,7 +2704,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -2977,57 +2712,28 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" } } }, - "defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" - }, "del": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "globby": "5.0.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.1", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "rimraf": "2.6.2" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" }, "dependencies": { - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", - "dev": true, - "requires": { - "array-union": "1.0.2", - "arrify": "1.0.1", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" - } - }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -3036,14 +2742,6 @@ } } }, - "delay": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/delay/-/delay-2.0.0.tgz", - "integrity": "sha1-kRLq3APk7H4AKXM3iW8nO72R+uU=", - "requires": { - "p-defer": "1.0.0" - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -3064,8 +2762,8 @@ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "destroy": { @@ -3073,37 +2771,19 @@ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, - "detect-conflict": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/detect-conflict/-/detect-conflict-1.0.1.tgz", - "integrity": "sha1-CIZXpmqWHAUBnbfEIwiDsca0F24=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "requires": { - "repeating": "2.0.1" - } - }, "detect-libc": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==" - }, "diffie-hellman": { "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "requires": { - "bn.js": "4.11.8", - "miller-rabin": "4.0.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" } }, "doctrine": { @@ -3112,20 +2792,27 @@ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { - "esutils": "2.0.2" + "esutils": "^2.0.2" } }, + "dom-walk": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", + "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" + }, "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" }, - "domexception": { + "drbg.js": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", - "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", "requires": { - "webidl-conversions": "4.0.2" + "browserify-aes": "^1.0.6", + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4" } }, "duplexer3": { @@ -3134,52 +2821,48 @@ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" }, "duplexify": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz", - "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", + "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", "requires": { - "end-of-stream": "1.4.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "stream-shift": "1.0.0" + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" } }, "ecc-jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "optional": true, "requires": { - "jsbn": "0.1.1" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, "echarts": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/echarts/-/echarts-4.0.4.tgz", - "integrity": "sha512-PDWGchRwBvMcNJbg94/thIIDgD8Jw2APtbK6K9rq1X8h6rQIdQ3IFTEvRwGS9U0zsUgJQQwXFLXIw+RJ/EH3fw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-4.1.0.tgz", + "integrity": "sha512-gP1e1fNnAj9KJpTDLXV21brklbfJlqeINmpQDJCDta9TX3cPoqyQOiDVcEPzbOVHqgBRgTOwNxC5iGwJ89014A==", "requires": { - "zrender": "4.0.3" + "zrender": "4.0.4" } }, - "editions": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/editions/-/editions-1.3.4.tgz", - "integrity": "sha512-gzao+mxnYDzIysXKMQi/+M1mjy/rjestjg6OPoYTtI+3Izp23oiGZitsl9lPDPiTGXbcSIk1iJWhliSaglxnUg==" - }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "ejs": { - "version": "2.5.9", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.9.tgz", - "integrity": "sha512-GJCAeDBKfREgkBtgrYSf9hQy9kTb3helv0zGdzqhM7iAkW8FA/ZF97VQDbwFiwIT8MQLLOe5VlPZOEvZAqtUAQ==" + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==" }, "electron-to-chromium": { - "version": "1.3.42", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.42.tgz", - "integrity": "sha1-lcM78B0MxAVVauyJn+Yf1NduoPk=" + "version": "1.3.72", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.72.tgz", + "integrity": "sha512-OFbXEC01Lq7A66e3UywkvWYNN00HO1I9MAPereGe0NIXrt2MeaovL1bbY+951HKG0euUdPBe0L7yfKxgqxBMMw==" }, "elegant-spinner": { "version": "1.0.1", @@ -3187,17 +2870,17 @@ "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=" }, "elliptic": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", - "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0", - "hash.js": "1.1.3", - "hmac-drbg": "1.0.1", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" } }, "emojis-list": { @@ -3215,7 +2898,7 @@ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "requires": { - "iconv-lite": "0.4.21" + "iconv-lite": "~0.4.13" } }, "end-of-stream": { @@ -3223,69 +2906,84 @@ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "enhanced-resolve": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz", - "integrity": "sha512-jox/62b2GofV1qTUQTMPEJSDIGycS43evqYzD/KVtEb9OCoki9cnacUPxCrZa7JfPzZSYOCZhu9O9luaMxAX8g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "requires": { - "graceful-fs": "4.1.11", - "memory-fs": "0.4.1", - "tapable": "1.0.0" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, - "envinfo": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-4.4.2.tgz", - "integrity": "sha512-5rfRs+m+6pwoKRCFqpsA5+qsLngFms1aWPrxfKbrObCzQaPc3M3yPloZx+BL9UE3dK58cxw36XVQbFRSCCfGSQ==" - }, "errno": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "requires": { - "prr": "1.0.1" - } - }, - "error": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", - "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", - "requires": { - "string-template": "0.2.1", - "xtend": "4.0.1" + "prr": "~1.0.1" } }, "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "es-abstract": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.11.0.tgz", - "integrity": "sha512-ZnQrE/lXTTQ39ulXZ+J1DTFazV9qBy61x2bY071B+qGco8Z8q1QddsLdt/EF8Ai9hcWH72dWS0kFqXLxOxqslA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", + "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", "requires": { - "es-to-primitive": "1.1.1", - "function-bind": "1.1.1", - "has": "1.0.1", - "is-callable": "1.1.3", - "is-regex": "1.0.4" + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" } }, "es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.46", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", + "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", "requires": { - "is-callable": "1.1.3", - "is-date-object": "1.0.1", - "is-symbol": "1.0.1" + "d": "1", + "es5-ext": "~0.10.14" } }, "escape-html": { @@ -3294,84 +2992,59 @@ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-latex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.0.0.tgz", - "integrity": "sha512-oogO9Cg3n/4nspF34CTfXFymgI79skca66DebIIQgxVy6qRVqczl/ji2YGAqhFCzpD/oAt/fCWF4qlhMAfda+g==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.1.1.tgz", + "integrity": "sha512-N2D6Z2kXh8x/pQNQH+natXDCwrzghhXMRII5dZ518mlTLeuba80NL0LCQyaahqOrAidoLivmmG6GKPnGhHse+A==" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, - "escodegen": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz", - "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", - "requires": { - "esprima": "3.1.3", - "estraverse": "4.2.0", - "esutils": "2.0.2", - "optionator": "0.8.2", - "source-map": "0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, "eslint": { "version": "4.19.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", + "resolved": "http://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", "dev": true, "requires": { - "ajv": "5.5.2", - "babel-code-frame": "6.26.0", - "chalk": "2.4.0", - "concat-stream": "1.6.2", - "cross-spawn": "5.1.0", - "debug": "3.1.0", - "doctrine": "2.1.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "1.0.0", - "espree": "3.5.4", - "esquery": "1.0.1", - "esutils": "2.0.2", - "file-entry-cache": "2.0.0", - "functional-red-black-tree": "1.0.1", - "glob": "7.1.2", - "globals": "11.4.0", - "ignore": "3.3.7", - "imurmurhash": "0.1.4", - "inquirer": "3.0.6", - "is-resolvable": "1.1.0", - "js-yaml": "3.11.0", - "json-stable-stringify-without-jsonify": "1.0.1", - "levn": "0.3.0", - "lodash": "4.17.5", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "optionator": "0.8.2", - "path-is-inside": "1.0.2", - "pluralize": "7.0.0", - "progress": "2.0.0", - "regexpp": "1.1.0", - "require-uncached": "1.0.3", - "semver": "5.5.0", - "strip-ansi": "4.0.0", - "strip-json-comments": "2.0.1", + "ajv": "^5.3.0", + "babel-code-frame": "^6.22.0", + "chalk": "^2.1.0", + "concat-stream": "^1.6.0", + "cross-spawn": "^5.1.0", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^3.7.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^3.5.4", + "esquery": "^1.0.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.0.1", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^3.0.6", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.9.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.4", + "minimatch": "^3.0.2", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.0.1", + "require-uncached": "^1.0.3", + "semver": "^5.3.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "~2.0.1", "table": "4.0.2", - "text-table": "0.2.0" + "text-table": "~0.2.0" }, "dependencies": { "ansi-regex": { @@ -3386,84 +3059,63 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "eslint-scope": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", + "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", "dev": true, "requires": { - "ms": "2.0.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true - }, "globals": { - "version": "11.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.4.0.tgz", - "integrity": "sha512-Dyzmifil8n/TmSqYDEXbm+C8yitzJQqQIlJQLNRMwa+BOUJpRC19pyVeN12JAjt61xonvXjtff+hJruTRXn5HA==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", "dev": true }, - "js-yaml": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", - "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", - "dev": true, - "requires": { - "argparse": "1.0.10", - "esprima": "4.0.0" - } - }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, "eslint-scope": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", "requires": { - "esrecurse": "4.2.1", - "estraverse": "4.2.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, "eslint-visitor-keys": { @@ -3478,14 +3130,14 @@ "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", "dev": true, "requires": { - "acorn": "5.5.3", - "acorn-jsx": "3.0.1" + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" } }, "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { "version": "1.0.1", @@ -3493,7 +3145,7 @@ "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.0.0" } }, "esrecurse": { @@ -3501,7 +3153,7 @@ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.1.0" } }, "estraverse": { @@ -3519,14 +3171,102 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, - "eventemitter3": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.0.1.tgz", - "integrity": "sha512-QOCPu979MMWX9XNlfRZoin+Wm+bK1SP7vv3NGUniYwuSJK/+cPA10blMaeRgzg31RvoSFk6FsCDVa4vNryBTGA==" - }, + "eth-lib": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.27.tgz", + "integrity": "sha512-B8czsfkJYzn2UIEMwjc7Mbj+Cy72V+/OXH/tb44LV8jhrjizQJJ325xMOMyk3+ETa6r6oi0jsUY14+om8mQMWA==", + "requires": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "keccakjs": "^0.2.1", + "nano-json-stream-parser": "^0.1.2", + "servify": "^0.1.12", + "ws": "^3.0.0", + "xhr-request-promise": "^0.1.2" + }, + "dependencies": { + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + } + } + }, + "ethereumjs-abi": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.5.tgz", + "integrity": "sha1-WmN+8Wq0NHP6cqKa2QhxQFs/UkE=", + "requires": { + "bn.js": "^4.10.0", + "ethereumjs-util": "^4.3.0" + }, + "dependencies": { + "ethereumjs-util": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-4.5.0.tgz", + "integrity": "sha1-PpQosxfuvaPXJg2FT93alUsfG8Y=", + "requires": { + "bn.js": "^4.8.0", + "create-hash": "^1.1.2", + "keccakjs": "^0.2.0", + "rlp": "^2.0.0", + "secp256k1": "^3.0.1" + } + } + } + }, + "ethereumjs-util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.0.tgz", + "integrity": "sha512-CJAKdI0wgMbQFLlLRtZKGcy/L6pzVRgelIZqRqNbuVFM3K9VEnyfbcvz0ncWMRNCe4kaHWjwRYQcYMucmwsnWA==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "ethjs-util": "^0.1.3", + "keccak": "^1.0.2", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1", + "secp256k1": "^3.0.1" + } + }, + "ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "requires": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "requires": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + } + }, + "eventemitter3": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==" + }, "events": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" }, "evp_bytestokey": { @@ -3534,8 +3274,8 @@ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "requires": { - "md5.js": "1.3.4", - "safe-buffer": "5.1.1" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, "execa": { @@ -3543,68 +3283,61 @@ "resolved": "https://registry.npmjs.org/execa/-/execa-0.9.0.tgz", "integrity": "sha512-BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA==", "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=" - }, "exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=" }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "requires": { - "is-posix-bracket": "0.1.1" - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "requires": { - "fill-range": "2.2.3" - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "requires": { - "homedir-polyfill": "1.0.1" - } + "exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==" }, - "expect": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-22.4.3.tgz", - "integrity": "sha512-XcNXEPehqn8b/jm8FYotdX0YrXn36qp4HWlrVT4ktwQas1l1LPxiVWncYnnL2eyMtKAmVIaG0XAp0QlrqJaxaA==", + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "requires": { - "ansi-styles": "3.2.1", - "jest-diff": "22.4.3", - "jest-get-type": "22.4.3", - "jest-matcher-utils": "22.4.3", - "jest-message-util": "22.4.3", - "jest-regex-util": "22.4.3" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "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" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "color-convert": "1.9.1" + "is-extendable": "^0.1.0" } } } @@ -3614,7 +3347,7 @@ "resolved": "https://registry.npmjs.org/exports-loader/-/exports-loader-0.7.0.tgz", "integrity": "sha512-RKwCrO4A6IiKm0pG3c9V46JxIHcDplwwGJn6+JJ1RcVnh/WSGJa0xkmk5cRVtgOPzCAtTMGj2F7nluh9L0vpSA==", "requires": { - "loader-utils": "1.1.0", + "loader-utils": "^1.1.0", "source-map": "0.5.0" }, "dependencies": { @@ -3632,53 +3365,134 @@ }, "express": { "version": "4.16.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", + "resolved": "http://registry.npmjs.org/express/-/express-4.16.3.tgz", "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.5", "array-flatten": "1.1.1", "body-parser": "1.18.2", "content-disposition": "0.5.2", - "content-type": "1.0.4", + "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", + "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", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.3", + "proxy-addr": "~2.0.3", "qs": "6.5.1", - "range-parser": "1.2.0", + "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", + "statuses": "~1.4.0", + "type-is": "~1.6.16", "utils-merge": "1.0.1", - "vary": "1.1.2" + "vary": "~1.1.2" + }, + "dependencies": { + "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.1", + "http-errors": "~1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "~2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "~1.6.15" + } + }, + "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" + } + }, + "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==" + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "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.3.1 < 2" + } + }, + "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==" + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + } } }, "extend": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -3686,36 +3500,91 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } }, "external-editor": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "resolved": "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.21", - "tmp": "0.0.33" + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" } }, "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "requires": { - "is-extglob": "1.0.0" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { - "is-extglob": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } } } }, + "extract-text-webpack-plugin": { + "version": "4.0.0-beta.0", + "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-4.0.0-beta.0.tgz", + "integrity": "sha512-Hypkn9jUTnFr0DpekNam53X47tXn3ucY08BQumv7kdGgeVUBLq3DJHJTi6HNxv4jl9W+Skxjz9+RnK0sJyqqjA==", + "requires": { + "async": "^2.4.1", + "loader-utils": "^1.1.0", + "schema-utils": "^0.4.5", + "webpack-sources": "^1.1.0" + } + }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -3739,7 +3608,8 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true }, "fastparse": { "version": "1.1.1", @@ -3751,7 +3621,15 @@ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.9.4.tgz", "integrity": "sha1-iFk0x57/sECVSeDAo4Ae0XpAza0=", "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" + } + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "requires": { + "pend": "~1.2.0" } }, "fetch-ponyfill": { @@ -3759,7 +3637,7 @@ "resolved": "https://registry.npmjs.org/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz", "integrity": "sha1-rjzl9zLGReq4fkroeTQUcJsjmJM=", "requires": { - "node-fetch": "1.7.3" + "node-fetch": "~1.7.1" } }, "figures": { @@ -3767,7 +3645,7 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.5" } }, "file-entry-cache": { @@ -3776,8 +3654,8 @@ "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", "dev": true, "requires": { - "flat-cache": "1.3.0", - "object-assign": "4.1.1" + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" } }, "file-loader": { @@ -3785,44 +3663,63 @@ "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", "requires": { - "loader-utils": "1.1.0", - "schema-utils": "0.4.5" + "loader-utils": "^1.0.2", + "schema-utils": "^0.4.5" } }, "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" }, "fill-range": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", - "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "1.1.7", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "finalhandler": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "resolved": "http://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" + "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" + }, + "dependencies": { + "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" + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + } } }, "find-cache-dir": { @@ -3830,9 +3727,9 @@ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "requires": { - "commondir": "1.0.1", - "make-dir": "1.2.0", - "pkg-dir": "2.0.0" + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" } }, "find-parent-dir": { @@ -3845,7 +3742,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "finity": { @@ -3853,61 +3750,41 @@ "resolved": "https://registry.npmjs.org/finity/-/finity-0.5.4.tgz", "integrity": "sha512-3l+5/1tuw616Lgb0QBimxfdd2TqaDGpfCBpfX6EqtFmqUV3FtQnVEX4Aa62DagYEqnsTIjZcTfbq9msDbXYgyA==" }, - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "requires": { - "readable-stream": "2.3.6" - } - }, "flat-cache": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", "dev": true, "requires": { - "circular-json": "0.3.3", - "del": "2.2.2", - "graceful-fs": "4.1.11", - "write": "0.2.1" + "circular-json": "^0.3.1", + "del": "^2.0.2", + "graceful-fs": "^4.1.2", + "write": "^0.2.1" } }, - "flatten": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=" - }, - "flow-parser": { - "version": "0.70.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.70.0.tgz", - "integrity": "sha512-gGdyVUZWswG5jcINrVDHd3RY4nJptBTAx9mR9thGsrGGmAUR7omgJXQSpR+fXrLtxSTAea3HpAZNU/yzRJc2Cg==" - }, "flush-write-stream": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" } }, "follow-redirects": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.4.1.tgz", - "integrity": "sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==", + "version": "1.5.8", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.8.tgz", + "integrity": "sha512-sy1mXPmv7kLAMKW/8XofG7o9T+6gAjzdZK4AJF6ryqQYUa/hnzgiypoeUecZ53x7XiqKNEpNqLtS97MshW2nxg==", "requires": { - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - } + "debug": "=3.1.0" + } + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" } }, "for-in": { @@ -3916,18 +3793,13 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" }, "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -3935,8 +3807,9 @@ }, "forex.analytics": { "version": "github:mkmarek/forex.analytics#7bc278987700d4204e959af17de61495941d1a14", + "from": "github:mkmarek/forex.analytics#7bc278987700d4204e959af17de61495941d1a14", "requires": { - "nan": "2.10.0" + "nan": "^2.2.0" } }, "form-data": { @@ -3944,9 +3817,9 @@ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", "requires": { - "asynckit": "0.4.0", + "asynckit": "^0.4.0", "combined-stream": "1.0.6", - "mime-types": "2.1.18" + "mime-types": "^2.1.12" } }, "formidable": { @@ -3960,16 +3833,16 @@ "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" }, "fraction.js": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.0.4.tgz", - "integrity": "sha512-aK/oGatyYLTtXRHjfEsytX5fieeR5H4s8sLorzcT12taFS+dbMZejnvm9gRa8mZAPwci24ucjq9epDyaq5u8Iw==" + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.0.9.tgz", + "integrity": "sha512-qP1sNwdrcA+Vs5TTvGETuaaUmz4Tm48V6Jc+8Oh/gqvkb1d42s99w5kvSrZkIATp/mz3rV4CTef6xINkCofu+A==" }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fresh": { @@ -3982,8 +3855,22 @@ "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-extra": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", + "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0" } }, "fs-minipass": { @@ -3991,7 +3878,18 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "requires": { - "minipass": "2.2.4" + "minipass": "^2.2.1" + } + }, + "fs-promise": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fs-promise/-/fs-promise-2.0.3.tgz", + "integrity": "sha1-9k5PhUvPaJqovdy6JokW2z20aFQ=", + "requires": { + "any-promise": "^1.3.0", + "fs-extra": "^2.0.0", + "mz": "^2.6.0", + "thenify-all": "^1.6.0" } }, "fs-write-stream-atomic": { @@ -3999,10 +3897,10 @@ "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "requires": { - "graceful-fs": "4.1.11", - "iferr": "0.1.5", - "imurmurhash": "0.1.4", - "readable-stream": "2.3.6" + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, "fs.realpath": { @@ -4011,34 +3909,26 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.0.tgz", - "integrity": "sha512-ROrBIbmw4ulxmQTwYAAGyN/0xgIOAFd6gX/K3F1aGLP/K5KxkubrlGISMV5EEWEB7qtiEdE0HpaqvMMHR+Ib6w==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", "optional": true, "requires": { - "nan": "2.10.0", - "node-pre-gyp": "0.9.1" + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" }, "dependencies": { "abbrev": { - "version": "1.1.0", + "version": "1.1.1", "bundled": true, "optional": true }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, "ansi-regex": { "version": "2.1.1", "bundled": true }, "aproba": { - "version": "1.1.1", + "version": "1.2.0", "bundled": true, "optional": true }, @@ -4047,251 +3937,106 @@ "bundled": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, - "asn1": { - "version": "0.2.3", + "balanced-match": { + "version": "1.0.0", "bundled": true }, - "assert-plus": { - "version": "0.2.0", - "bundled": true + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } }, - "asynckit": { - "version": "0.4.0", - "bundled": true + "chownr": { + "version": "1.0.1", + "bundled": true, + "optional": true }, - "aws-sign2": { - "version": "0.6.0", + "code-point-at": { + "version": "1.1.0", "bundled": true }, - "aws4": { - "version": "1.6.0", + "concat-map": { + "version": "0.0.1", "bundled": true }, - "balanced-match": { - "version": "0.4.2", - "bundled": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true - }, - "co": { - "version": "4.6.0", - "bundled": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "console-control-strings": { - "version": "1.1.0", + "console-control-strings": { + "version": "1.1.0", "bundled": true }, "core-util-is": { "version": "1.0.2", - "bundled": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", "bundled": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true - } - } + "optional": true }, "debug": { - "version": "2.6.8", + "version": "2.6.9", "bundled": true, + "optional": true, "requires": { "ms": "2.0.0" } }, "deep-extend": { - "version": "0.4.2", + "version": "0.5.1", "bundled": true, "optional": true }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true - }, "delegates": { "version": "1.0.0", "bundled": true, "optional": true }, "detect-libc": { - "version": "1.0.2", + "version": "1.0.3", "bundled": true, "optional": true }, - "ecc-jsbn": { - "version": "0.1.1", + "fs-minipass": { + "version": "1.2.5", "bundled": true, "optional": true, "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" + "minipass": "^2.2.1" } }, "fs.realpath": { "version": "1.0.0", - "bundled": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", "bundled": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } + "optional": true }, "gauge": { "version": "2.7.4", "bundled": true, "optional": true, "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true - } + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { "version": "7.1.2", "bundled": true, + "optional": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-unicode": { @@ -4299,35 +4044,29 @@ "bundled": true, "optional": true }, - "hawk": { - "version": "3.1.3", + "iconv-lite": { + "version": "0.4.21", "bundled": true, + "optional": true, "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" + "safer-buffer": "^2.1.0" } }, - "hoek": { - "version": "2.16.3", - "bundled": true - }, - "http-signature": { - "version": "1.1.1", + "ignore-walk": { + "version": "3.0.1", "bundled": true, + "optional": true, "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" + "minimatch": "^3.0.4" } }, "inflight": { "version": "1.0.6", "bundled": true, + "optional": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -4335,7 +4074,7 @@ "bundled": true }, "ini": { - "version": "1.3.4", + "version": "1.3.5", "bundled": true, "optional": true }, @@ -4343,91 +4082,41 @@ "version": "1.0.0", "bundled": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true - }, "isarray": { "version": "1.0.0", - "bundled": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "jsbn": { - "version": "0.1.1", "bundled": true, "optional": true }, - "json-schema": { - "version": "0.2.3", - "bundled": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true - }, - "jsprim": { - "version": "1.4.0", + "minimatch": { + "version": "3.0.4", "bundled": true, "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true - } + "brace-expansion": "^1.1.7" } }, - "mime-db": { - "version": "1.27.0", + "minimist": { + "version": "0.0.8", "bundled": true }, - "mime-types": { - "version": "2.1.15", + "minipass": { + "version": "2.2.4", "bundled": true, "requires": { - "mime-db": "1.27.0" + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" } }, - "minimatch": { - "version": "3.0.4", + "minizlib": { + "version": "1.1.0", "bundled": true, + "optional": true, "requires": { - "brace-expansion": "1.1.7" + "minipass": "^2.2.1" } }, - "minimist": { - "version": "0.0.8", - "bundled": true - }, "mkdirp": { "version": "0.5.1", "bundled": true, @@ -4437,47 +4126,34 @@ }, "ms": { "version": "2.0.0", - "bundled": true + "bundled": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } }, "node-pre-gyp": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.9.1.tgz", - "integrity": "sha1-8RwHUW3ZL4cZnbx+GDjqt81WyeA=", + "version": "0.10.0", + "bundled": true, "optional": true, "requires": { - "detect-libc": "1.0.2", - "mkdirp": "0.5.1", - "needle": "2.2.0", - "nopt": "4.0.1", - "npm-packlist": "1.1.10", - "npmlog": "4.1.0", - "rc": "1.2.1", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "4.4.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "optional": true - }, - "tar": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz", - "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", - "optional": true, - "requires": { - "chownr": "1.0.1", - "fs-minipass": "1.2.5", - "minipass": "2.2.4", - "minizlib": "1.1.0", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.1", - "yallist": "3.0.2" - } - } + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, "nopt": { @@ -4485,29 +4161,39 @@ "bundled": true, "optional": true, "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npmlog": { - "version": "4.1.0", + "version": "4.1.2", "bundled": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { "version": "1.0.1", "bundled": true }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true - }, "object-assign": { "version": "4.1.1", "bundled": true, @@ -4517,7 +4203,7 @@ "version": "1.4.0", "bundled": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-homedir": { @@ -4531,43 +4217,33 @@ "optional": true }, "osenv": { - "version": "0.1.4", + "version": "0.1.5", "bundled": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "path-is-absolute": { "version": "1.0.1", - "bundled": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true + "bundled": true, + "optional": true }, "process-nextick-args": { - "version": "1.0.7", - "bundled": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true - }, - "qs": { - "version": "6.4.0", - "bundled": true + "version": "2.0.0", + "bundled": true, + "optional": true }, "rc": { - "version": "1.2.1", + "version": "1.2.7", "bundled": true, "optional": true, "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -4578,125 +4254,78 @@ } }, "readable-stream": { - "version": "2.2.9", - "bundled": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", + "version": "2.3.6", "bundled": true, + "optional": true, "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "rimraf": { - "version": "2.6.1", + "version": "2.6.2", "bundled": true, + "optional": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-buffer": { - "version": "5.0.1", + "version": "5.1.1", "bundled": true }, - "semver": { - "version": "5.3.0", + "safer-buffer": { + "version": "2.1.2", "bundled": true, "optional": true }, - "set-blocking": { - "version": "2.0.0", + "sax": { + "version": "1.2.4", "bundled": true, "optional": true }, - "signal-exit": { - "version": "3.0.2", + "semver": { + "version": "5.5.0", "bundled": true, "optional": true }, - "sntp": { - "version": "1.0.9", + "set-blocking": { + "version": "2.0.0", "bundled": true, - "requires": { - "hoek": "2.16.3" - } + "optional": true }, - "sshpk": { - "version": "1.13.0", + "signal-exit": { + "version": "3.0.2", "bundled": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true - } - } + "optional": true }, "string-width": { "version": "1.0.2", "bundled": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "string_decoder": { - "version": "1.0.1", + "version": "1.1.1", "bundled": true, + "optional": true, "requires": { - "safe-buffer": "5.0.1" + "safe-buffer": "~5.1.0" } }, - "stringstream": { - "version": "0.0.5", - "bundled": true - }, "strip-ansi": { "version": "3.0.1", "bundled": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-json-comments": { @@ -4705,72 +4334,30 @@ "optional": true }, "tar": { - "version": "2.2.1", - "bundled": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", + "version": "4.4.1", "bundled": true, + "optional": true, "requires": { - "safe-buffer": "5.0.1" + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" } }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true - }, "util-deprecate": { "version": "1.0.2", - "bundled": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true - }, - "verror": { - "version": "1.3.6", "bundled": true, - "requires": { - "extsprintf": "1.0.2" - } + "optional": true }, "wide-align": { "version": "1.1.2", "bundled": true, "optional": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2" } }, "wrappy": { @@ -4779,9 +4366,7 @@ }, "yallist": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "optional": true + "bundled": true } } }, @@ -4790,10 +4375,10 @@ "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.2" + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" } }, "function-bind": { @@ -4812,14 +4397,14 @@ "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" }, "dependencies": { "is-fullwidth-code-point": { @@ -4827,7 +4412,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -4835,31 +4420,31 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } }, "gaze": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", "requires": { - "globule": "1.2.0" + "globule": "^1.0.0" } }, "gdax": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/gdax/-/gdax-0.7.0.tgz", - "integrity": "sha512-lJHXlGchJVNtql8VWH+Idalehl5T5N6O9g5MUEW7IOuPtsbb7D15vgz6MOx1NgSyZe0fSIINv9s0HxujYB3sqg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/gdax/-/gdax-0.8.0.tgz", + "integrity": "sha512-vBIjEk1q8IyulEOcjewcuPA5Aob25T1xUPUKLtQIrj4g1cxvdxCob7uoJbGZ4B1YVTnx1pvOaVY8Zu6ncL5YnA==", "requires": { "@types/request": "2.47.0", - "bignumber.js": "5.0.0", - "bintrees": "1.0.2", - "request": "2.85.0", - "ws": "4.1.0" + "bignumber.js": "^6.0.0", + "bintrees": "^1.0.1", + "request": "^2.81.0", + "ws": "^4.0.0" }, "dependencies": { "ws": { @@ -4867,8 +4452,8 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz", "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0" } } } @@ -4878,13 +4463,22 @@ "resolved": "https://registry.npmjs.org/gemini-api/-/gemini-api-2.0.4.tgz", "integrity": "sha512-pWWT+jjaVLrFUp2i8qIrBZoD/eBmY5XBu2MELQIc+pbgKdBJXefR5gVi/R9zaccoNbHZvpFztWCWrWhtXOxiKw==", "requires": { - "axios": "0.16.2", - "lodash": "4.17.5", - "qs": "6.5.1", - "shortid": "2.2.8", - "ws": "2.3.1" + "axios": "^0.16.0", + "lodash": "^4.17.4", + "qs": "^6.4.0", + "shortid": "^2.2.8", + "ws": "^2.2.3" }, "dependencies": { + "axios": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.16.2.tgz", + "integrity": "sha1-uk+S8XFn37q0CYN4VFS5rBScPG0=", + "requires": { + "follow-redirects": "^1.2.3", + "is-buffer": "^1.1.5" + } + }, "safe-buffer": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", @@ -4895,35 +4489,25 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-2.3.1.tgz", "integrity": "sha1-a5Sz5EfLajY/eF6vlK9jWejoHIA=", "requires": { - "safe-buffer": "5.0.1", - "ultron": "1.1.1" + "safe-buffer": "~5.0.1", + "ultron": "~1.1.0" } } } }, - "generate-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=" - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "geneticalgorithm": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/geneticalgorithm/-/geneticalgorithm-0.3.5.tgz", + "integrity": "sha512-RRFoCDLjCD+roQ7wNLxtIBp/Ri20UJJxV1eQJpqRUVECgHN9QFsQ76w2P5wUuBx2Y+yV+5dVBPlenw0wsMgSwg==", + "dev": true, "requires": { - "is-property": "1.0.2" + "npm": "^6.4.0" } }, - "geneticalgorithm": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/geneticalgorithm/-/geneticalgorithm-0.3.4.tgz", - "integrity": "sha1-oVdal8Gwcy7yYW53k8bfU1bzA4E=", - "dev": true - }, "get-caller-file": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, "get-own-enumerable-property-symbols": { "version": "2.0.1", @@ -4931,9 +4515,9 @@ "integrity": "sha512-TtY/sbOemiMKPRUDDanGCSgBYe7Mf0vbRsWnBZ+9yghpZ1MvcpSpuZFjHdEeY/LZjZy0vdLjS77L6HosisFiug==" }, "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==" }, "get-stream": { "version": "3.0.0", @@ -4950,175 +4534,54 @@ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "requires": { - "assert-plus": "1.0.0" - } - }, - "gh-got": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gh-got/-/gh-got-6.0.0.tgz", - "integrity": "sha512-F/mS+fsWQMo1zfgG9MD8KWvTWPPzzhuVwY++fhQ5Ggd+0P+CAMHtzMZhNxG+TqGfHDChJKsbh6otfMGqO2AKBw==", - "requires": { - "got": "7.1.0", - "is-plain-obj": "1.1.0" - }, - "dependencies": { - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "requires": { - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-plain-obj": "1.1.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.1", - "p-cancelable": "0.3.0", - "p-timeout": "1.2.1", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "1.0.0", - "url-to-options": "1.0.1" - } - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "requires": { - "p-finally": "1.0.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "1.0.4" - } - } - } - }, - "github-username": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/github-username/-/github-username-4.1.0.tgz", - "integrity": "sha1-y+KABBiDIG2kISrp5LXxacML9Bc=", - "requires": { - "gh-got": "6.0.0" + "assert-plus": "^1.0.0" } }, "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "glob-all": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-all/-/glob-all-3.1.0.tgz", - "integrity": "sha1-iRPd+17hrHgSZWJBsD1SF8ZLAqs=", - "requires": { - "glob": "7.1.2", - "yargs": "1.2.6" - }, - "dependencies": { - "minimist": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.1.0.tgz", - "integrity": "sha1-md9lelJXTCHJBXSX33QnkLK0wN4=" - }, - "yargs": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-1.2.6.tgz", - "integrity": "sha1-nHtKgv1dWVsr8Xq23MQxNUMv40s=", - "requires": { - "minimist": "0.1.0" - } - } - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" - }, - "dependencies": { - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "1.0.0" - } - } + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "requires": { - "is-glob": "2.0.1" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" }, "dependencies": { - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^2.1.0" } } } }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "global": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", + "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", "requires": { - "global-prefix": "1.0.2", - "is-windows": "1.0.2", - "resolve-dir": "1.0.1" + "min-document": "^2.19.0", + "process": "~0.5.1" } }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "requires": { - "expand-tilde": "2.0.2", - "homedir-polyfill": "1.0.1", - "ini": "1.3.5", - "is-windows": "1.0.2", - "which": "1.3.0" - } + "global-modules-path": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/global-modules-path/-/global-modules-path-2.3.0.tgz", + "integrity": "sha512-HchvMJNYh9dGSCy8pOQ2O8u/hoXaL+0XhnrwH0RyLiSXMMTl9W3N6KUU73+JFOg5PGjtzl6VZzUQsnrpm7Szag==" }, "globals": { "version": "9.18.0", @@ -5126,63 +4589,56 @@ "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" }, "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, "requires": { - "array-union": "1.0.2", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true } } }, "globule": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", - "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", "requires": { - "glob": "7.1.2", - "lodash": "4.17.5", - "minimatch": "3.0.4" + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" } }, "got": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/got/-/got-8.3.0.tgz", - "integrity": "sha512-kBNy/S2CGwrYgDSec5KTWGKUvupwkkTVAjIsVFF2shXO13xpZdFP4d4kxa//CLX2tN/rV0aYwK8vY6UKWGn2vQ==", - "requires": { - "@sindresorhus/is": "0.7.0", - "cacheable-request": "2.1.4", - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "into-stream": "3.1.0", - "is-retry-allowed": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.1", - "mimic-response": "1.0.0", - "p-cancelable": "0.4.1", - "p-timeout": "2.0.1", - "pify": "3.0.0", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "3.0.0", - "url-to-options": "1.0.1" - }, - "dependencies": { - "p-cancelable": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==" - } + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "requires": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" } }, "graceful-fs": { @@ -5190,13 +4646,10 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" }, - "grouped-queue": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/grouped-queue/-/grouped-queue-0.3.3.tgz", - "integrity": "sha1-wWfSpTGcWg4JZO9qJbfC34mWyFw=", - "requires": { - "lodash": "4.17.5" - } + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" }, "har-schema": { "version": "2.0.0", @@ -5208,16 +4661,16 @@ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" + "ajv": "^5.3.0", + "har-schema": "^2.0.0" } }, "has": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "requires": { - "function-bind": "1.1.1" + "function-bind": "^1.1.1" } }, "has-ansi": { @@ -5225,30 +4678,30 @@ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=" - }, "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "has-symbol-support-x": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" + }, "has-to-string-tag-x": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", "requires": { - "has-symbol-support-x": "1.4.2" + "has-symbol-support-x": "^1.4.1" } }, "has-unicode": { @@ -5261,16 +4714,9 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - } + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" } }, "has-values": { @@ -5278,34 +4724,16 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -5315,28 +4743,17 @@ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "hash.js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", - "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" - } - }, - "hawk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", + "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.1", - "sntp": "2.1.0" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, "hmac-drbg": { @@ -5344,80 +4761,45 @@ "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "requires": { - "hash.js": "1.1.3", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" - } - }, - "hoek": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", - "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==" - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "homedir-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", - "requires": { - "parse-passwd": "1.0.0" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, "hosted-git-info": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", - "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" - }, - "html-comment-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz", - "integrity": "sha1-ZouTd26q5V696POtRkswekljYl4=" - }, - "html-encoding-sniffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", - "requires": { - "whatwg-encoding": "1.0.3" - } - }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" }, "http-errors": { "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "requires": { - "depd": "1.1.2", + "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.0", - "statuses": "1.4.0" + "statuses": ">= 1.4.0 < 2" } }, + "http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=" + }, "http-parser-js": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.11.tgz", - "integrity": "sha512-QCR5O2AjjMW8Mo4HyI1ctFcv+O99j/0g367V3YoVnrNw5hkDvAWZD0lWGcc+F4yN3V55USPCVix4efb75HxFfA==" + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", + "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=" }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.14.1" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "https-browserify": { @@ -5426,21 +4808,81 @@ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, "husky": { - "version": "0.14.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-0.14.3.tgz", - "integrity": "sha512-e21wivqHpstpoiWA/Yi8eFti8E+sQDSS53cpJsPptPs295QTOQR0ZwnHo2TXy1XOpZFD9rPOd3NpmqTK6uMLJA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/husky/-/husky-1.0.1.tgz", + "integrity": "sha512-MxwLwwwgY7mqV4auSpGWKPTCkZ9RmsdGojQQBvRtr6vxnjSOyI5l/M58QdUz0vRKb0igTpbzBeoUsScx4XJwQg==", "requires": { - "is-ci": "1.1.0", - "normalize-path": "1.0.0", - "strip-indent": "2.0.0" + "cosmiconfig": "^5.0.6", + "execa": "^0.9.0", + "find-up": "^3.0.0", + "get-stdin": "^6.0.0", + "is-ci": "^1.2.1", + "pkg-dir": "^3.0.0", + "please-upgrade-node": "^3.1.1", + "read-pkg": "^4.0.1", + "run-node": "^1.0.0", + "slash": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "^3.0.0" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + } } }, "iconv-lite": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.21.tgz", - "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "icss-replace-symbols": { @@ -5453,69 +4895,18 @@ "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "requires": { - "postcss": "6.0.21" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", - "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "postcss": "^6.0.1" } }, "idgen": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/idgen/-/idgen-2.0.2.tgz", - "integrity": "sha1-ZFpO6n7bUz2UH1jt2UMVVUWPwqg=", - "requires": { - "commander": "2.15.1" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/idgen/-/idgen-2.1.0.tgz", + "integrity": "sha512-gFqW29tHfEpjScFOa42slt3UWL+SKhhqD/0ryh0/bGtYiLkvmTG9jWAcXpvQRROdm+0yBjJngA1VukCiJAzj1A==" }, "ieee754": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz", - "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg==" + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" }, "iferr": { "version": "0.1.5", @@ -5523,9 +4914,9 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==", + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "dev": true }, "ignore-walk": { @@ -5533,16 +4924,87 @@ "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "requires": { - "minimatch": "3.0.4" + "minimatch": "^3.0.4" + } + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "requires": { + "import-from": "^2.1.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "requires": { + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + } } }, "import-local": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", - "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "requires": { - "pkg-dir": "2.0.0", - "resolve-cwd": "2.0.0" + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "^3.0.0" + } + } } }, "imports-loader": { @@ -5550,8 +5012,8 @@ "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.8.0.tgz", "integrity": "sha512-kXWL7Scp8KQ4552ZcdVTeaQCZSLW+e6nJfp3cwUMB673T7Hr98Xjx5JK+ql7ADlJUvj1JS5O01RLbKoutN5QDQ==", "requires": { - "loader-utils": "1.1.0", - "source-map": "0.6.1" + "loader-utils": "^1.0.2", + "source-map": "^0.6.1" }, "dependencies": { "source-map": { @@ -5572,17 +5034,9 @@ "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=" }, "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "requires": { - "repeating": "2.0.1" - } - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=" }, "indexof": { "version": "0.0.1", @@ -5594,8 +5048,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -5613,19 +5067,19 @@ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.0.6.tgz", "integrity": "sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c=", "requires": { - "ansi-escapes": "1.4.0", - "chalk": "1.1.3", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", + "ansi-escapes": "^1.1.0", + "chalk": "^1.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.1", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx": "4.1.0", - "string-width": "2.1.1", - "strip-ansi": "3.0.1", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx": "^4.1.0", + "string-width": "^2.0.0", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" } }, "interpret": { @@ -5633,21 +5087,12 @@ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" }, - "into-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", - "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", - "requires": { - "from2": "2.3.0", - "p-is-promise": "1.1.0" - } - }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "requires": { - "loose-envify": "1.3.1" + "loose-envify": "^1.0.0" } }, "invert-kv": { @@ -5661,21 +5106,26 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, "ipaddr.js": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", - "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" - }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=" }, "is-accessor-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-arrayish": { @@ -5688,7 +5138,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "requires": { - "binary-extensions": "1.11.0" + "binary-extensions": "^1.0.0" } }, "is-buffer": { @@ -5698,23 +5148,23 @@ }, "is-builtin-module": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "resolved": "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-callable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", - "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==" }, "is-ci": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", - "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", "requires": { - "ci-info": "1.1.3" + "ci-info": "^1.5.0" } }, "is-data-descriptor": { @@ -5722,7 +5172,17 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-date-object": { @@ -5735,9 +5195,9 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { @@ -5752,19 +5212,6 @@ "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "requires": { - "is-primitive": "2.0.0" - } - }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -5780,7 +5227,7 @@ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -5788,56 +5235,59 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=" + "is-function": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", + "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" }, "is-glob": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.1" } }, + "is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" + }, "is-integer": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.7.tgz", "integrity": "sha1-a96Bqs3feLZZtmKdYpytxRqIbVw=", "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, - "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==" - }, - "is-my-json-valid": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz", - "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==", - "requires": { - "generate-function": "2.0.0", - "generate-object-property": "1.2.0", - "is-my-ip-valid": "1.0.0", - "jsonpointer": "4.0.1", - "xtend": "4.0.1" - } + "is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" }, "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "is-obj": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" }, "is-object": { @@ -5846,26 +5296,11 @@ "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" }, "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "requires": { - "symbol-observable": "0.2.4" - } - }, - "is-odd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", - "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", "requires": { - "is-number": "4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" - } + "symbol-observable": "^1.1.0" } }, "is-path-cwd": { @@ -5880,7 +5315,7 @@ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", "dev": true, "requires": { - "is-path-inside": "1.0.1" + "is-path-inside": "^1.0.0" } }, "is-path-inside": { @@ -5889,7 +5324,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-obj": { @@ -5902,42 +5337,20 @@ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "requires": { - "isobject": "3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - } + "isobject": "^3.0.1" } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" - }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" - }, "is-regex": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", "requires": { - "has": "1.0.1" + "has": "^1.0.1" } }, "is-regexp": { @@ -5956,32 +5369,19 @@ "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" }, - "is-scoped": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-scoped/-/is-scoped-1.0.0.tgz", - "integrity": "sha1-RJypgpnnEwOCViieyytUDcQ3yzA=", - "requires": { - "scoped-regex": "1.0.0" - } - }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, - "is-svg": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", - "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", "requires": { - "html-comment-regex": "1.1.1" + "has-symbols": "^1.0.0" } }, - "is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=" - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -6013,117 +5413,57 @@ "integrity": "sha1-Dj+XWbWB2Z3YUIbw7Cp0kJz63QE=" }, "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, - "istextorbinary": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.2.1.tgz", - "integrity": "sha512-TS+hoFl8Z5FAFMK38nhBkdLt44CclNRgDHWeMgsV8ko3nDlr/9UI2Sf839sW7enijf8oKsZYXRvM8g0it9Zmcw==", - "requires": { - "binaryextensions": "2.1.1", - "editions": "1.3.4", - "textextensions": "2.2.0" - } - }, "isurl": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", "requires": { - "has-to-string-tag-x": "1.4.1", - "is-object": "1.0.1" + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" } }, "jasmine": { - "version": "2.99.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.99.0.tgz", - "integrity": "sha1-jKctEC5jm4Z8ZImFbg4YqceqQrc=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-3.2.0.tgz", + "integrity": "sha512-qv6TZ32r+slrQz8fbx2EhGbD9zlJo3NwPrpLK1nE8inILtZO9Fap52pyHk7mNTh4tG50a+1+tOiWVT3jO5I0Sg==", "requires": { - "exit": "0.1.2", - "glob": "7.1.2", - "jasmine-core": "2.99.1" + "glob": "^7.0.6", + "jasmine-core": "~3.2.0" } }, "jasmine-core": { - "version": "2.99.1", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.99.1.tgz", - "integrity": "sha1-5kAN8ea1bhMLYcS80JPap/boyhU=" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.2.1.tgz", + "integrity": "sha512-pa9tbBWgU0EE4SWgc85T4sa886ufuQdsgruQANhECYjwqgV4z7Vw/499aCaP8ZH79JDS4vhm8doDG9HO4+e4sA==" }, "javascript-natural-sort": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", "integrity": "sha1-+eIwPUUH9tdDVac2ZNFED7Wg71k=" }, - "jest-config": { + "jest-get-type": { "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-22.4.3.tgz", - "integrity": "sha512-KSg3EOToCgkX+lIvenKY7J8s426h6ahXxaUFJxvGoEk0562Z6inWj1TnKoGycTASwiLD+6kSYFALcjdosq9KIQ==", - "requires": { - "chalk": "2.4.0", - "glob": "7.1.2", - "jest-environment-jsdom": "22.4.3", - "jest-environment-node": "22.4.3", - "jest-get-type": "22.4.3", - "jest-jasmine2": "22.4.3", - "jest-regex-util": "22.4.3", - "jest-resolve": "22.4.3", - "jest-util": "22.4.3", - "jest-validate": "22.4.3", - "pretty-format": "22.4.3" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } - } + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz", + "integrity": "sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==" }, - "jest-diff": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-22.4.3.tgz", - "integrity": "sha512-/QqGvCDP5oZOF6PebDuLwrB2BMD8ffJv6TAGAdEVuDx1+uEgrHpSFrfrOiMRx2eJ1hgNjlQrOQEHetVwij90KA==", + "jest-validate": { + "version": "23.6.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-23.6.0.tgz", + "integrity": "sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A==", "requires": { - "chalk": "2.4.0", - "diff": "3.5.0", - "jest-get-type": "22.4.3", - "pretty-format": "22.4.3" + "chalk": "^2.0.1", + "jest-get-type": "^22.1.0", + "leven": "^2.1.0", + "pretty-format": "^23.6.0" }, "dependencies": { "ansi-styles": { @@ -6131,175 +5471,227 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, - "jest-environment-jsdom": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-22.4.3.tgz", - "integrity": "sha512-FviwfR+VyT3Datf13+ULjIMO5CSeajlayhhYQwpzgunswoaLIPutdbrnfUHEMyJCwvqQFaVtTmn9+Y8WCt6n1w==", - "requires": { - "jest-mock": "22.4.3", - "jest-util": "22.4.3", - "jsdom": "11.9.0" - } + "jquery": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", + "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" }, - "jest-environment-node": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-22.4.3.tgz", - "integrity": "sha512-reZl8XF6t/lMEuPWwo9OLfttyC26A5AMgDyEQ6DBgZuyfyeNUzYT8BFo6uxCCP/Av/b7eb9fTi3sIHFPBzmlRA==", + "js-base64": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.9.tgz", + "integrity": "sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ==" + }, + "js-sha3": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.3.1.tgz", + "integrity": "sha1-hhIoAhQvCChQKg0d7h2V4lO7AkM=" + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", "requires": { - "jest-mock": "22.4.3", - "jest-util": "22.4.3" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, - "jest-get-type": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz", - "integrity": "sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==" + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true }, - "jest-jasmine2": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-22.4.3.tgz", - "integrity": "sha512-yZCPCJUcEY6R5KJB/VReo1AYI2b+5Ky+C+JA1v34jndJsRcLpU4IZX4rFJn7yDTtdNbO/nNqg+3SDIPNH2ecnw==", - "requires": { - "chalk": "2.4.0", - "co": "4.6.0", - "expect": "22.4.3", - "graceful-fs": "4.1.11", - "is-generator-fn": "1.0.0", - "jest-diff": "22.4.3", - "jest-matcher-utils": "22.4.3", - "jest-message-util": "22.4.3", - "jest-snapshot": "22.4.3", - "jest-util": "22.4.3", - "source-map-support": "0.5.4" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-support": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.4.tgz", - "integrity": "sha512-PETSPG6BjY1AHs2t64vS2aqAgu6dMIMXJULWFBGbh2Gr8nVLbCFDo6i/RMMvviIQ2h1Z8+5gQhVKSn2je9nmdg==", - "requires": { - "source-map": "0.6.1" - } - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json2csv": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.2.1.tgz", + "integrity": "sha512-sCdK+ybXmfbn9rl0s8Qh4xDM7vrVzCwGftUL41o6iVsl0J3tU3PYaDgGutEmcD746n2z2bmjMFb69UsL3DSmxg==", + "dev": true, + "requires": { + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.clonedeep": "^4.5.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2" } }, - "jest-matcher-utils": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-22.4.3.tgz", - "integrity": "sha512-lsEHVaTnKzdAPR5t4B6OcxXo9Vy4K+kRRbG5gtddY8lBEC+Mlpvm1CJcsMESRjzUhzkz568exMV1hTB76nAKbA==", + "json5": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", "requires": { - "chalk": "2.4.0", - "jest-get-type": "22.4.3", - "pretty-format": "22.4.3" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "graceful-fs": "^4.1.6" } }, - "jest-message-util": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-22.4.3.tgz", - "integrity": "sha512-iAMeKxhB3Se5xkSjU0NndLLCHtP4n+GtCqV0bISKA5dmOXQfEbdEmYiu2qpnWBDCQdEafNDDU6Q+l6oBMd/+BA==", + "jsonic": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/jsonic/-/jsonic-0.3.0.tgz", + "integrity": "sha1-tUXalfVDkuWLPdoF9fLjd6bJ0b8=" + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "keccak": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-1.4.0.tgz", + "integrity": "sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw==", + "requires": { + "bindings": "^1.2.1", + "inherits": "^2.0.3", + "nan": "^2.2.1", + "safe-buffer": "^5.1.0" + } + }, + "keccakjs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/keccakjs/-/keccakjs-0.2.1.tgz", + "integrity": "sha1-HWM6+QfvMFu/ny+mFtVsRFYd+k0=", + "requires": { + "browserify-sha3": "^0.0.1", + "sha3": "^1.1.0" + } + }, + "keltnerchannel": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/keltnerchannel/-/keltnerchannel-1.4.3.tgz", + "integrity": "sha512-6ClCHZhCSdl4cE01K/uK0KJ2TPSW5kePODdRz4t7SS5uq8VZCjc1j1OrxDK36msqAg7ReO3DvpljPSuoQHezYQ==" + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "kraken-api": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/kraken-api/-/kraken-api-1.0.0.tgz", + "integrity": "sha512-JAfLh9Laks+2KZTM/WW+bpy+iZfImUok0aeLBOb0ehwTEGvcBWWAXlmkthhJXfUTSoOIHuoqqToC94+iBeBBAg==", + "requires": { + "got": "^7.1.0", + "qs": ">=6.4.0" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "^1.0.0" + } + }, + "leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=" + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, "requires": { - "@babel/code-frame": "7.0.0-beta.46", - "chalk": "2.4.0", - "micromatch": "2.3.11", - "slash": "1.0.0", - "stack-utils": "1.0.1" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lint-staged": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-7.3.0.tgz", + "integrity": "sha512-AXk40M9DAiPi7f4tdJggwuKIViUplYtVj1os1MVEteW7qOkU50EOehayCfO9TsoGK24o/EsWb41yrEgfJDDjCw==", + "requires": { + "chalk": "^2.3.1", + "commander": "^2.14.1", + "cosmiconfig": "^5.0.2", + "debug": "^3.1.0", + "dedent": "^0.7.0", + "execa": "^0.9.0", + "find-parent-dir": "^0.3.0", + "is-glob": "^4.0.0", + "is-windows": "^1.0.2", + "jest-validate": "^23.5.0", + "listr": "^0.14.1", + "lodash": "^4.17.5", + "log-symbols": "^2.2.0", + "micromatch": "^3.1.8", + "npm-which": "^3.0.1", + "p-map": "^1.1.1", + "path-is-inside": "^1.0.2", + "pify": "^3.0.0", + "please-upgrade-node": "^3.0.2", + "staged-git-files": "1.1.1", + "string-argv": "^0.0.2", + "stringify-object": "^3.2.2" }, "dependencies": { "ansi-styles": { @@ -6307,763 +5699,343 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "1.0.0" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "1.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, - "jest-mock": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-22.4.3.tgz", - "integrity": "sha512-+4R6mH5M1G4NK16CKg9N1DtCaFmuxhcIqF4lQK/Q1CIotqMs/XBemfpDPeVZBFow6iyUNu6EBT9ugdNOTT5o5Q==" + "listr": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/listr/-/listr-0.14.2.tgz", + "integrity": "sha512-vmaNJ1KlGuGWShHI35X/F8r9xxS0VTHh9GejVXwSN20fG5xpq3Jh4bJbnumoT6q5EDM/8/YP1z3YMtQbFmhuXw==", + "requires": { + "@samverschueren/stream-to-observable": "^0.3.0", + "is-observable": "^1.1.0", + "is-promise": "^2.1.0", + "is-stream": "^1.1.0", + "listr-silent-renderer": "^1.1.1", + "listr-update-renderer": "^0.4.0", + "listr-verbose-renderer": "^0.4.0", + "p-map": "^1.1.1", + "rxjs": "^6.1.0" + } }, - "jest-regex-util": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-22.4.3.tgz", - "integrity": "sha512-LFg1gWr3QinIjb8j833bq7jtQopiwdAs67OGfkPrvy7uNUbVMfTXXcOKXJaeY5GgjobELkKvKENqq1xrUectWg==" + "listr-silent-renderer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", + "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=" }, - "jest-resolve": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-22.4.3.tgz", - "integrity": "sha512-u3BkD/MQBmwrOJDzDIaxpyqTxYH+XqAXzVJP51gt29H8jpj3QgKof5GGO2uPGKGeA1yTMlpbMs1gIQ6U4vcRhw==", + "listr-update-renderer": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz", + "integrity": "sha1-NE2YDaLKLosUW6MFkI8yrj9MyKc=", "requires": { - "browser-resolve": "1.11.2", - "chalk": "2.4.0" + "chalk": "^1.1.3", + "cli-truncate": "^0.2.1", + "elegant-spinner": "^1.0.1", + "figures": "^1.7.0", + "indent-string": "^3.0.0", + "log-symbols": "^1.0.2", + "log-update": "^1.0.2", + "strip-ansi": "^3.0.1" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "requires": { - "has-flag": "3.0.0" + "chalk": "^1.0.0" } } } }, - "jest-snapshot": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-22.4.3.tgz", - "integrity": "sha512-JXA0gVs5YL0HtLDCGa9YxcmmV2LZbwJ+0MfyXBBc5qpgkEYITQFJP7XNhcHFbUvRiniRpRbGVfJrOoYhhGE0RQ==", + "listr-verbose-renderer": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", + "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", "requires": { - "chalk": "2.4.0", - "jest-diff": "22.4.3", - "jest-matcher-utils": "22.4.3", - "mkdirp": "0.5.1", - "natural-compare": "1.4.0", - "pretty-format": "22.4.3" + "chalk": "^1.1.3", + "cli-cursor": "^1.0.2", + "date-fns": "^1.27.2", + "figures": "^1.7.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "requires": { - "color-convert": "1.9.1" + "restore-cursor": "^1.0.1" } }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "onetime": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "requires": { - "has-flag": "3.0.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } } } }, - "jest-util": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-22.4.3.tgz", - "integrity": "sha512-rfDfG8wyC5pDPNdcnAlZgwKnzHvZDu8Td2NJI/jAGKEGxJPYiE4F0ss/gSAkG4778Y23Hvbz+0GMrDJTeo7RjQ==", + "load-json-file": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "requires": { - "callsites": "2.0.0", - "chalk": "2.4.0", - "graceful-fs": "4.1.11", - "is-ci": "1.1.0", - "jest-message-util": "22.4.3", - "mkdirp": "0.5.1", - "source-map": "0.6.1" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "error-ex": "^1.2.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, - "jest-validate": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-22.4.3.tgz", - "integrity": "sha512-CfFM18W3GSP/xgmA4UouIx0ljdtfD2mjeBC6c89Gg17E44D4tQhAcTrZmf9djvipwU30kSTnk6CzcxdCCeSXfA==", + "loader-runner": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz", + "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==" + }, + "loader-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", + "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", "requires": { - "chalk": "2.4.0", - "jest-config": "22.4.3", - "jest-get-type": "22.4.3", - "leven": "2.1.0", - "pretty-format": "22.4.3" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0" } }, - "jquery": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", - "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" - }, - "js-base64": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.3.tgz", - "integrity": "sha512-H7ErYLM34CvDMto3GbD6xD0JLUGYXR3QTcH6B/tr4Hi/QpSThnCsIp+Sy5FRTw3B0d6py4HcNkW7nO/wdtGWEw==" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "js-yaml": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", - "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "argparse": "1.0.10", - "esprima": "2.7.3" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" }, - "jscodeshift": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.5.0.tgz", - "integrity": "sha512-JAcQINNMFpdzzpKJN8k5xXjF3XDuckB1/48uScSzcnNyK199iWEc9AxKL9OoX5144M2w5zEx9Qs4/E/eBZZUlw==", - "requires": { - "babel-plugin-transform-flow-strip-types": "6.22.0", - "babel-preset-es2015": "6.24.1", - "babel-preset-stage-1": "6.24.1", - "babel-register": "6.26.0", - "babylon": "7.0.0-beta.46", - "colors": "1.2.1", - "flow-parser": "0.70.0", - "lodash": "4.17.5", - "micromatch": "2.3.11", - "neo-async": "2.5.1", - "node-dir": "0.1.8", - "nomnom": "1.8.1", - "recast": "0.14.7", - "temp": "0.8.3", - "write-file-atomic": "1.3.4" - }, - "dependencies": { - "babylon": { - "version": "7.0.0-beta.46", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.46.tgz", - "integrity": "sha512-WFJlg2WatdkXRFMpk7BN/Uzzkjkcjk+WaqnrSCpay+RYl4ypW9ZetZyT9kNt22IH/BQNst3M6PaaBn9IXsUNrg==" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "1.0.0" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "1.1.0" - } - } - } - }, - "jsdom": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.9.0.tgz", - "integrity": "sha512-sb3omwJTJ+HwAltLZevM/KQBusY+l2Ar5UfnTCWk9oUVBiDnQPBNiG1BaTAKttCnneonYbNo7vi4EFDY2lBfNA==", - "requires": { - "abab": "1.0.4", - "acorn": "5.5.3", - "acorn-globals": "4.1.0", - "array-equal": "1.0.0", - "cssom": "0.3.2", - "cssstyle": "0.2.37", - "data-urls": "1.0.0", - "domexception": "1.0.1", - "escodegen": "1.9.1", - "html-encoding-sniffer": "1.0.2", - "left-pad": "1.3.0", - "nwmatcher": "1.4.4", - "parse5": "4.0.0", - "pn": "1.1.0", - "request": "2.85.0", - "request-promise-native": "1.0.5", - "sax": "1.2.4", - "symbol-tree": "3.2.2", - "tough-cookie": "2.3.4", - "w3c-hr-time": "1.0.1", - "webidl-conversions": "4.0.2", - "whatwg-encoding": "1.0.3", - "whatwg-mimetype": "2.1.0", - "whatwg-url": "6.4.1", - "ws": "4.1.0", - "xml-name-validator": "3.0.0" - }, - "dependencies": { - "ws": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz", - "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", - "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.1" - } - } + "lodash._baseassign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", + "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "requires": { + "lodash._basecopy": "^3.0.0", + "lodash.keys": "^3.0.0" } }, - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + "lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + "lodash._bindcallback": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", + "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=" }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + "lodash._createassigner": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", + "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", + "requires": { + "lodash._bindcallback": "^3.0.0", + "lodash._isiterateecall": "^3.0.0", + "lodash.restparam": "^3.0.0" + } }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + "lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" }, - "json2csv": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.1.2.tgz", - "integrity": "sha512-cYCezNey5QGRhvYDQvsUJq2GwrFAgKjcLd8UoylP7HlmcHBt85b1kI01QQYmqVFXMIrf8Dsb5PX9efUaSRY2XA==", - "dev": true, - "requires": { - "cli-table2": "0.2.0", - "commander": "2.15.1", - "jsonparse": "1.3.1", - "lodash.clonedeep": "4.5.0", - "lodash.get": "4.4.2", - "lodash.set": "4.3.2" - } + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" }, - "jsonic": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/jsonic/-/jsonic-0.3.0.tgz", - "integrity": "sha1-tUXalfVDkuWLPdoF9fLjd6bJ0b8=" + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, - "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=" + "lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" + }, + "lodash.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" + "lodash._getnative": "^3.0.0", + "lodash.isarguments": "^3.0.0", + "lodash.isarray": "^3.0.0" } }, - "keltnerchannel": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/keltnerchannel/-/keltnerchannel-1.4.2.tgz", - "integrity": "sha512-0UiEdLg5tHHQpcLu2lueKnYpolsg9/IisbTzRwrrnOUCS/2YUPDgWmw71foGMs8Smgo/ctc7kwULG0e38MKvCQ==" + "lodash.mergewith": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz", + "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==" }, - "keyv": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", - "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", - "requires": { - "json-buffer": "3.0.0" - } + "lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=" }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true }, - "kraken-api": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/kraken-api/-/kraken-api-1.0.0.tgz", - "integrity": "sha512-JAfLh9Laks+2KZTM/WW+bpy+iZfImUok0aeLBOb0ehwTEGvcBWWAXlmkthhJXfUTSoOIHuoqqToC94+iBeBBAg==", + "lodash.tail": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", + "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=" + }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", "requires": { - "got": "7.1.0", - "qs": "6.5.1" + "chalk": "^2.0.1" }, "dependencies": { - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "requires": { - "decompress-response": "3.3.0", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-plain-obj": "1.1.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "isurl": "1.0.0", - "lowercase-keys": "1.0.1", - "p-cancelable": "0.3.0", - "p-timeout": "1.2.1", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "url-parse-lax": "1.0.0", - "url-to-options": "1.0.1" - } - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "p-finally": "1.0.0" + "color-convert": "^1.9.0" } }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "prepend-http": "1.0.4" + "has-flag": "^3.0.0" } } } }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "requires": { - "invert-kv": "1.0.0" - } - }, - "left-pad": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", - "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==" - }, - "leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=" - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "1.1.2", - "type-check": "0.3.2" - } - }, - "lint-staged": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-7.0.4.tgz", - "integrity": "sha512-9w4vwNJ1A7o4mwKhz/5B0VateS24KJjeU1ppO2UOBdbTg/iiypF4U6F3yckEms0Fbf5uvfLiPVp9pG2lBbVA6g==", - "requires": { - "app-root-path": "2.0.1", - "chalk": "2.4.0", - "commander": "2.15.1", - "cosmiconfig": "4.0.0", - "debug": "3.1.0", - "dedent": "0.7.0", - "execa": "0.9.0", - "find-parent-dir": "0.3.0", - "is-glob": "4.0.0", - "jest-validate": "22.4.3", - "listr": "0.13.0", - "lodash": "4.17.5", - "log-symbols": "2.2.0", - "micromatch": "3.1.10", - "npm-which": "3.0.1", - "p-map": "1.2.0", - "path-is-inside": "1.0.2", - "pify": "3.0.0", - "please-upgrade-node": "3.0.1", - "staged-git-files": "1.1.1", - "string-argv": "0.0.2", - "stringify-object": "3.2.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } - } - }, - "listr": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/listr/-/listr-0.13.0.tgz", - "integrity": "sha1-ILsLowuuZg7oTMBQPfS+PVYjiH0=", - "requires": { - "chalk": "1.1.3", - "cli-truncate": "0.2.1", - "figures": "1.7.0", - "indent-string": "2.1.0", - "is-observable": "0.2.0", - "is-promise": "2.1.0", - "is-stream": "1.1.0", - "listr-silent-renderer": "1.1.1", - "listr-update-renderer": "0.4.0", - "listr-verbose-renderer": "0.4.1", - "log-symbols": "1.0.2", - "log-update": "1.0.2", - "ora": "0.2.3", - "p-map": "1.2.0", - "rxjs": "5.5.10", - "stream-to-observable": "0.2.0", - "strip-ansi": "3.0.1" - }, - "dependencies": { - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" - } - }, - "log-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", - "requires": { - "chalk": "1.1.3" - } - } - } - }, - "listr-silent-renderer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", - "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=" - }, - "listr-update-renderer": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz", - "integrity": "sha1-NE2YDaLKLosUW6MFkI8yrj9MyKc=", - "requires": { - "chalk": "1.1.3", - "cli-truncate": "0.2.1", - "elegant-spinner": "1.0.1", - "figures": "1.7.0", - "indent-string": "3.2.0", - "log-symbols": "1.0.2", - "log-update": "1.0.2", - "strip-ansi": "3.0.1" - }, - "dependencies": { - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" - } - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=" - }, - "log-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", - "requires": { - "chalk": "1.1.3" - } - } - } - }, - "listr-verbose-renderer": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", - "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", + "log-update": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", + "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", "requires": { - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "date-fns": "1.29.0", - "figures": "1.7.0" + "ansi-escapes": "^1.0.0", + "cli-cursor": "^1.0.2" }, "dependencies": { "cli-cursor": { @@ -7071,16 +6043,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "requires": { - "restore-cursor": "1.0.1" - } - }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "restore-cursor": "^1.0.1" } }, "onetime": { @@ -7093,2738 +6056,4981 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" } } } }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "loglevel": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", + "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=" + }, + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" - }, - "dependencies": { - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "1.3.1" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } + "js-tokens": "^3.0.0 || ^4.0.0" } }, - "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=" + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } }, - "loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "ltx": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/ltx/-/ltx-2.7.3.tgz", + "integrity": "sha512-GGv+0cVOionEl4CUp24Si2tZRuSAtdh6lUKiNgjljMzzDycEKQWUdzkNEjxj73xFKPoqPnJTeoGXJbL4a0aIdQ==", "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "inherits": "^2.0.1" } }, - "lodash": { - "version": "4.17.5", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", - "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==" + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "requires": { + "pify": "^3.0.0" + } }, - "lodash._baseassign": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", - "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "map-age-cleaner": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", + "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", "requires": { - "lodash._basecopy": "3.0.1", - "lodash.keys": "3.1.2" + "p-defer": "^1.0.0" } }, - "lodash._basecopy": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, - "lodash._bindcallback": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", - "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=" + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" }, - "lodash._createassigner": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", - "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "requires": { - "lodash._bindcallback": "3.0.1", - "lodash._isiterateecall": "3.0.9", - "lodash.restparam": "3.6.1" + "object-visit": "^1.0.0" } }, - "lodash._getnative": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" + "math-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/math-array/-/math-array-1.1.2.tgz", + "integrity": "sha512-54uCZjFRNbL4hEzUnaPYDR4MbGBFMnlUOfrk3kDfkB5v3QwaMKwZLIPIWK9WfM1skxxzfV01k05FbCEQGX/4qg==" }, - "lodash._isiterateecall": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" + "mathjs": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-5.1.2.tgz", + "integrity": "sha512-ewA6m6omkS+VPkU6Qd60T2oPVvACG4r8ajD6M6OaWbO0nMQ4wr0ZHFHRjfuzpTb96Y5HT82rTeNqGGktBa5G/w==", + "requires": { + "complex.js": "2.0.11", + "decimal.js": "10.0.1", + "escape-latex": "1.1.1", + "fraction.js": "4.0.9", + "javascript-natural-sort": "0.7.1", + "seed-random": "2.2.0", + "tiny-emitter": "2.0.2", + "typed-function": "1.1.0" + } }, - "lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + "mem": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", + "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^1.0.0", + "p-is-promise": "^1.1.0" + } }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "dev": true + "memory-pager": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.1.0.tgz", + "integrity": "sha512-Mf9OHV/Y7h6YWDxTzX/b4ZZ4oh9NSXblQL8dtPCOomOtZciEHxePR78+uHFLLlsk01A6jVHhHsQZZ/WcIPpnzg==", + "optional": true }, - "lodash.isarguments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + } }, - "lodash.isarray": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, - "lodash.keys": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "micro-request": { + "version": "666.0.10", + "resolved": "https://registry.npmjs.org/micro-request/-/micro-request-666.0.10.tgz", + "integrity": "sha1-oannMhcBT01AGqH+Vp6NdReB1yY=" + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "requires": { - "lodash._getnative": "3.9.1", - "lodash.isarguments": "3.1.0", - "lodash.isarray": "3.0.4" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } }, - "lodash.mergewith": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz", - "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==" + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==" }, - "lodash.restparam": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=" + "mime-db": { + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", + "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==" }, - "lodash.set": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", - "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", - "dev": true + "mime-types": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", + "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", + "requires": { + "mime-db": "~1.36.0" + } }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" }, - "lodash.tail": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", - "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=" + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + "min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "requires": { + "dom-walk": "^0.1.0" + } }, - "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "minctest": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/minctest/-/minctest-0.0.2.tgz", + "integrity": "sha1-mDOxA3vZWrkIYzrQ3Fkn0Ocq3tM=" + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "minipass": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz", + "integrity": "sha512-mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==", "requires": { - "chalk": "2.4.0" + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } + "yallist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" } } }, - "log-update": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", - "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", + "minizlib": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", + "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", + "requires": { + "minipass": "^2.2.1" + } + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "requires": { - "ansi-escapes": "1.4.0", - "cli-cursor": "1.0.2" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "requires": { - "restore-cursor": "1.0.1" - } - }, - "onetime": { - "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" - }, - "restore-cursor": { + "is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "is-plain-object": "^2.0.4" } } } }, - "loglevel": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", - "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=" - }, - "lolex": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.3.2.tgz", - "integrity": "sha512-A5pN2tkFj7H0dGIAM6MFvHKMJcPnjZsOMvR7ujCjfgW5TbV6H9vb1PgxLtHvjqNZTHsUolz+6/WEO0N1xNx2ng==" + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" + } + } }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "mkdirp": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { - "js-tokens": "3.0.2" + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } } }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" + "mkdirp": "*" } }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + "mock-fs": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.7.0.tgz", + "integrity": "sha512-WlQNtUlzMRpvLHf8dqeUmNqfdPjGY29KrJF50Ldb4AcL+vQeR8QH3wQcFMgrhTwb1gHjZn9xggho+84tBskLgA==" }, - "lru-cache": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", - "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", + "mock-require": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.2.tgz", + "integrity": "sha512-aD/Y1ZFHqw5pHg3HVQ50dLbfaAAcytS6sqLuhP51Dk3TSPdFb2VkSAa3mjrHifLIlGAtwQHJHINafAyqAne7vA==", "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" } }, - "ltx": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/ltx/-/ltx-2.7.1.tgz", - "integrity": "sha1-Dly9y1vxeM+ngx6kHcMj2XQiMVo=", + "moment": { + "version": "2.22.2", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", + "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=" + }, + "mongodb": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.1.6.tgz", + "integrity": "sha512-E5QJuXQoMlT7KyCYqNNMfAkhfQD79AT4F8Xd+6x37OX+8BL17GyXyWvfm6wuyx4wnzCCPoCSLeMeUN2S7dU9yw==", "requires": { - "inherits": "2.0.3" + "mongodb-core": "3.1.5", + "safe-buffer": "^5.1.2" } }, - "macaddress": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/macaddress/-/macaddress-0.2.8.tgz", - "integrity": "sha1-WQTcU3w57G2+/q6QIycTX6hRHxI=" - }, - "make-dir": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz", - "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==", + "mongodb-core": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-3.1.5.tgz", + "integrity": "sha512-emT/tM4ZBinqd6RZok+EzDdtN4LjYJIckv71qQVOEFmvXgT5cperZegVmTgox/1cx4XQu6LJ5ZuIwipP/eKdQg==", "requires": { - "pify": "3.0.0" + "bson": "^1.1.0", + "require_optional": "^1.0.1", + "safe-buffer": "^5.1.2", + "saslprep": "^1.0.0" } }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + "mout": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/mout/-/mout-0.11.1.tgz", + "integrity": "sha1-ujYR318OWx/7/QEWa48C0fX6K5k=" }, - "map-obj": { + "move-concurrently": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "requires": { - "object-visit": "1.0.1" + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" } }, - "math-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/math-array/-/math-array-1.1.2.tgz", - "integrity": "sha512-54uCZjFRNbL4hEzUnaPYDR4MbGBFMnlUOfrk3kDfkB5v3QwaMKwZLIPIWK9WfM1skxxzfV01k05FbCEQGX/4qg==" + "moving-averages": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/moving-averages/-/moving-averages-4.0.5.tgz", + "integrity": "sha512-ofrBYz5tIiN3E24a9Q5evRprvb1AQLciE4fnblpv8P0zM/pwwEdGj7GgDQwSxyrAVNe3hfzn9IB5nXi0zt92AA==" }, - "math-expression-evaluator": { - "version": "1.2.17", - "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", - "integrity": "sha1-3oGf282E3M2PrlnGrreWFbnSZqw=" + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, - "mathjs": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-4.1.2.tgz", - "integrity": "sha512-lZhxnazJNxZOzGyYUm3IdWhUXe8LbVeZEIZadqTR0rh3l58Ip6wWJ/KjL7aTEFCHY3VGgBQ6AVlCcqCQ7po3JA==", - "requires": { - "complex.js": "2.0.4", - "decimal.js": "9.0.1", - "escape-latex": "1.0.0", - "fraction.js": "4.0.4", - "javascript-natural-sort": "0.7.1", - "seed-random": "2.2.0", - "tiny-emitter": "2.0.2", - "typed-function": "1.0.3" - } + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" }, - "md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" } }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "nan": { + "version": "2.10.0", + "resolved": "http://registry.npmjs.org/nan/-/nan-2.10.0.tgz", + "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==" }, - "mem": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", - "requires": { - "mimic-fn": "1.2.0" - } + "nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" }, - "mem-fs": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/mem-fs/-/mem-fs-1.1.3.tgz", - "integrity": "sha1-uK6NLj/Lb10/kWXBLUVRoGXZicw=", - "requires": { - "through2": "2.0.3", - "vinyl": "1.2.0", - "vinyl-file": "2.0.0" + "nanoid": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-1.2.5.tgz", + "integrity": "sha512-mOYdCQS3xdgu81Hg3EQEhORykMk53Pkzg15Y6I+O9T3db9qHPf9z6nXzQBCUaHXlQs57eRKotDTzYlYACL+5uA==" + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" } }, - "mem-fs-editor": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-3.0.2.tgz", - "integrity": "sha1-3Qpuryu4prN3QAZ6pUnrUwEFr58=", + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "needle": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.4.tgz", + "integrity": "sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA==", "requires": { - "commondir": "1.0.1", - "deep-extend": "0.4.2", - "ejs": "2.5.9", - "glob": "7.1.2", - "globby": "6.1.0", - "mkdirp": "0.5.1", - "multimatch": "2.1.0", - "rimraf": "2.6.2", - "through2": "2.0.3", - "vinyl": "2.1.0" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" }, "dependencies": { - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=" - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" - }, - "vinyl": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz", - "integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "clone": "2.1.2", - "clone-buffer": "1.0.0", - "clone-stats": "1.0.0", - "cloneable-readable": "1.1.2", - "remove-trailing-separator": "1.1.0", - "replace-ext": "1.0.0" + "ms": "2.0.0" } } } }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "neo-async": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.2.tgz", + "integrity": "sha512-vdqTKI9GBIYcAEbFAcpKPErKINfPF5zIuz3/niBfq8WUZjpT2tytLlFVrBgWdOtqI4uaA/Rb6No0hux39XXDuw==" + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node-bittrex-api": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/node-bittrex-api/-/node-bittrex-api-0.8.3.tgz", + "integrity": "sha1-hJ1NpcIXAXytp0mkbOF4j8OX1/M=", "requires": { - "errno": "0.1.7", - "readable-stream": "2.3.6" + "cloudscraper": "^1.4.1", + "jsonic": "^0.3.0", + "object-assign": "^4.1.1", + "request": ">= 2.35.0", + "signalr-client": "0.0.17" } }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.4.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "encoding": "^0.1.11", + "is-stream": "^1.0.1" } }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "node-forge": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", + "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==" }, - "micro-request": { - "version": "666.0.10", - "resolved": "https://registry.npmjs.org/micro-request/-/micro-request-666.0.10.tgz", - "integrity": "sha1-oannMhcBT01AGqH+Vp6NdReB1yY=" + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + } + } }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "node-libs-browser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", + "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "0.1.1" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^1.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.0", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.10.3", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "buffer": { + "version": "4.9.1", + "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "0.1.6" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "0.1.1" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + } + } + }, + "node-pre-gyp": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz", + "integrity": "sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A==", + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + }, + "dependencies": { + "nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "1.0.2" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "0.1.1" - } - } + "abbrev": "1", + "osenv": "^0.1.4" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "tar": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", + "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "0.1.1" - } - } + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.3", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "yallist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" + } + } + }, + "node-prowl": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/node-prowl/-/node-prowl-0.1.7.tgz", + "integrity": "sha1-Jt4onxRqp6SXBJYZOocBu/GO6rc=", + "requires": { + "request": "2.9.202", + "xml2js": "0.1.13" + }, + "dependencies": { + "request": { + "version": "2.9.202", + "resolved": "http://registry.npmjs.org/request/-/request-2.9.202.tgz", + "integrity": "sha1-xhOZzfu+/aXcSGU7DpvqUX2fhJc=" + } + } + }, + "node-sass": { + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.3.tgz", + "integrity": "sha512-XzXyGjO+84wxyH7fV6IwBOTrEBe2f0a6SBze9QWWYR/cL74AcQUks2AsqcCZenl/Fp/JVbuEaLpgrLtocwBUww==", + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash.assign": "^4.2.0", + "lodash.clonedeep": "^4.3.2", + "lodash.mergewith": "^4.6.0", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.10.0", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "2.87.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", "requires": { - "kind-of": "6.0.2" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "requires": { - "kind-of": "6.0.2" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + }, + "request": { + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } + "punycode": "^1.4.1" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - } - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0" - } - }, - "mime": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", - "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==" - }, - "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" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" - }, - "mimic-response": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz", - "integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4=" - }, - "minctest": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/minctest/-/minctest-0.0.2.tgz", - "integrity": "sha1-mDOxA3vZWrkIYzrQ3Fkn0Ocq3tM=" - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "1.1.11" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "minipass": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", - "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", - "requires": { - "safe-buffer": "5.1.1", - "yallist": "3.0.2" - }, - "dependencies": { - "yallist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" } } }, - "minizlib": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", - "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", - "requires": { - "minipass": "2.2.4" - } - }, - "mississippi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", - "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", - "requires": { - "concat-stream": "1.6.2", - "duplexify": "3.5.4", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.3", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "2.0.1", - "pumpify": "1.4.0", - "stream-each": "1.2.2", - "through2": "2.0.3" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "node-telegram-bot-api": { + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/node-telegram-bot-api/-/node-telegram-bot-api-0.30.0.tgz", + "integrity": "sha512-+EeM+fe3Xt81KIPqN3L6s6eK+FK4QaqyDcwCwkY/jqsleERXwwjGlVbf4lJCOZ0uJuF5PfqTmvVNtua7AZfBXg==", "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "array.prototype.findindex": "^2.0.2", + "bl": "^1.2.1", + "bluebird": "^3.5.1", + "debug": "^3.1.0", + "depd": "^1.1.1", + "eventemitter3": "^3.0.0", + "file-type": "^3.9.0", + "mime": "^1.6.0", + "pump": "^2.0.0", + "request": "^2.83.0", + "request-promise": "^4.2.2" }, "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { - "is-plain-object": "2.0.4" + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" } } }, - "mixin-object": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", - "requires": { - "for-in": "0.1.8", - "is-extendable": "0.1.1" - }, - "dependencies": { - "for-in": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "node-xmpp-client": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/node-xmpp-client/-/node-xmpp-client-3.2.0.tgz", + "integrity": "sha1-r0Un3wzFq9JpDLohOcwezcgeoYk=", "requires": { - "minimist": "0.0.8" + "browser-request": "^0.3.3", + "debug": "^2.2.0", + "md5.js": "^1.3.3", + "minimist": "^1.2.0", + "node-xmpp-core": "^5.0.9", + "request": "^2.65.0", + "ws": "^1.1.1" }, "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "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" + } + }, + "ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + }, + "ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "requires": { + "options": ">=0.0.5", + "ultron": "1.0.x" + } } } }, - "mock-require": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.2.tgz", - "integrity": "sha512-aD/Y1ZFHqw5pHg3HVQ50dLbfaAAcytS6sqLuhP51Dk3TSPdFb2VkSAa3mjrHifLIlGAtwQHJHINafAyqAne7vA==", + "node-xmpp-core": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-5.0.9.tgz", + "integrity": "sha1-XCjCjtsfs/i+uixnYHd2E/SPNCo=", "requires": { - "get-caller-file": "1.0.2", - "normalize-path": "2.1.1" + "@xmpp/jid": "^0.0.2", + "@xmpp/streamparser": "^0.0.6", + "@xmpp/xml": "^0.1.3", + "debug": "^2.2.0", + "inherits": "^2.0.1", + "lodash.assign": "^4.0.0", + "node-xmpp-tls-connect": "^1.0.1", + "reconnect-core": "https://github.com/dodo/reconnect-core/tarball/merged" }, "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "remove-trailing-separator": "1.1.0" + "ms": "2.0.0" } } } }, - "moment": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.1.tgz", - "integrity": "sha512-shJkRTSebXvsVqk56I+lkb2latjBs8I+pc2TzWc545y2iFnSjm7Wg0QMh+ZWcdSLQyGEau5jI8ocnmkyTgr9YQ==" + "node-xmpp-tls-connect": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/node-xmpp-tls-connect/-/node-xmpp-tls-connect-1.0.1.tgz", + "integrity": "sha1-kazkOsJrE4hhsr5HjfnfGdYdxcM=" }, - "mongodb": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.0.7.tgz", - "integrity": "sha512-n/14kMJEoARXz1qhpNPhUocqy+z5130jhqgEIX1Tsl8UVpHrndQ8et+VmgC4yPK/I8Tcgc93JEMQCHTekBUnNA==", - "requires": { - "mongodb-core": "3.0.7" - } + "nonce": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/nonce/-/nonce-1.0.4.tgz", + "integrity": "sha1-7nMCrejBvvR28wG4yR9cxRpIdhI=" }, - "mongodb-core": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-3.0.7.tgz", - "integrity": "sha512-z6YufO7s40wLiv2ssFshqoLS4+Kf+huhHq6KZ7gDArsKNzXYjAwTMnhEIJ9GQ8fIfBGs5tBLNPfbIDoCKGPmOw==", + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "requires": { - "bson": "1.0.6", - "require_optional": "1.0.1" + "abbrev": "1" } }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "requires": { - "aproba": "1.2.0", - "copy-concurrently": "1.0.5", - "fs-write-stream-atomic": "1.0.10", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "moving-averages": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/moving-averages/-/moving-averages-4.0.5.tgz", - "integrity": "sha512-ofrBYz5tIiN3E24a9Q5evRprvb1AQLciE4fnblpv8P0zM/pwwEdGj7GgDQwSxyrAVNe3hfzn9IB5nXi0zt92AA==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "requires": { - "array-differ": "1.0.0", - "array-union": "1.0.2", - "arrify": "1.0.1", - "minimatch": "3.0.4" + "remove-trailing-separator": "^1.0.1" } }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" - }, - "nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==" - }, - "nanomatch": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", - "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", - "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-odd": "2.0.0", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "npm": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/npm/-/npm-6.4.1.tgz", + "integrity": "sha512-mXJL1NTVU136PtuopXCUQaNWuHlXCTp4McwlSW8S9/Aj8OEPAlSBgo8og7kJ01MjCDrkmqFQTvN5tTEhBMhXQg==", + "dev": true, + "requires": { + "JSONStream": "^1.3.4", + "abbrev": "~1.1.1", + "ansicolors": "~0.3.2", + "ansistyles": "~0.1.3", + "aproba": "~1.2.0", + "archy": "~1.0.0", + "bin-links": "^1.1.2", + "bluebird": "~3.5.1", + "byte-size": "^4.0.3", + "cacache": "^11.2.0", + "call-limit": "~1.1.0", + "chownr": "~1.0.1", + "ci-info": "^1.4.0", + "cli-columns": "^3.1.2", + "cli-table3": "^0.5.0", + "cmd-shim": "~2.0.2", + "columnify": "~1.5.4", + "config-chain": "~1.1.11", + "debuglog": "*", + "detect-indent": "~5.0.0", + "detect-newline": "^2.1.0", + "dezalgo": "~1.0.3", + "editor": "~1.0.0", + "figgy-pudding": "^3.4.1", + "find-npm-prefix": "^1.0.2", + "fs-vacuum": "~1.2.10", + "fs-write-stream-atomic": "~1.0.10", + "gentle-fs": "^2.0.1", + "glob": "~7.1.2", + "graceful-fs": "~4.1.11", + "has-unicode": "~2.0.1", + "hosted-git-info": "^2.7.1", + "iferr": "^1.0.2", + "imurmurhash": "*", + "inflight": "~1.0.6", + "inherits": "~2.0.3", + "ini": "^1.3.5", + "init-package-json": "^1.10.3", + "is-cidr": "^2.0.6", + "json-parse-better-errors": "^1.0.2", + "lazy-property": "~1.0.0", + "libcipm": "^2.0.2", + "libnpmhook": "^4.0.1", + "libnpx": "^10.2.0", + "lock-verify": "^2.0.2", + "lockfile": "^1.0.4", + "lodash._baseindexof": "*", + "lodash._baseuniq": "~4.6.0", + "lodash._bindcallback": "*", + "lodash._cacheindexof": "*", + "lodash._createcache": "*", + "lodash._getnative": "*", + "lodash.clonedeep": "~4.5.0", + "lodash.restparam": "*", + "lodash.union": "~4.6.0", + "lodash.uniq": "~4.5.0", + "lodash.without": "~4.4.0", + "lru-cache": "^4.1.3", + "meant": "~1.0.1", + "mississippi": "^3.0.0", + "mkdirp": "~0.5.1", + "move-concurrently": "^1.0.1", + "node-gyp": "^3.8.0", + "nopt": "~4.0.1", + "normalize-package-data": "~2.4.0", + "npm-audit-report": "^1.3.1", + "npm-cache-filename": "~1.0.2", + "npm-install-checks": "~3.0.0", + "npm-lifecycle": "^2.1.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.11", + "npm-pick-manifest": "^2.1.0", + "npm-profile": "^3.0.2", + "npm-registry-client": "^8.6.0", + "npm-registry-fetch": "^1.1.0", + "npm-user-validate": "~1.0.0", + "npmlog": "~4.1.2", + "once": "~1.4.0", + "opener": "^1.5.0", + "osenv": "^0.1.5", + "pacote": "^8.1.6", + "path-is-inside": "~1.0.2", + "promise-inflight": "~1.0.1", + "qrcode-terminal": "^0.12.0", + "query-string": "^6.1.0", + "qw": "~1.0.1", + "read": "~1.0.7", + "read-cmd-shim": "~1.0.1", + "read-installed": "~4.0.3", + "read-package-json": "^2.0.13", + "read-package-tree": "^5.2.1", + "readable-stream": "^2.3.6", + "readdir-scoped-modules": "*", + "request": "^2.88.0", + "retry": "^0.12.0", + "rimraf": "~2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.5.0", + "sha": "~2.0.1", + "slide": "~1.1.6", + "sorted-object": "~2.0.1", + "sorted-union-stream": "~2.1.3", + "ssri": "^6.0.0", + "stringify-package": "^1.0.0", + "tar": "^4.4.6", + "text-table": "~0.2.0", + "tiny-relative-date": "^1.3.0", + "uid-number": "0.0.6", + "umask": "~1.1.0", + "unique-filename": "~1.1.0", + "unpipe": "~1.0.0", + "update-notifier": "^2.5.0", + "uuid": "^3.3.2", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "~3.0.0", + "which": "^1.3.1", + "worker-farm": "^1.6.0", + "write-file-atomic": "^2.3.0" + }, + "dependencies": { + "JSONStream": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.4.tgz", + "integrity": "sha512-Y7vfi3I5oMOYIr+WxV8NZxDSwcbNgzdKYsTNInmycOq9bUYwGg9ryu57Wg5NLmCjqdFPNUmpMBo3kSJN9tCbXg==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - } - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - }, - "needle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.0.tgz", - "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==", - "requires": { - "debug": "2.6.9", - "iconv-lite": "0.4.21", - "sax": "1.2.4" - } - }, - "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "neo-async": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", - "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==" - }, - "nice-try": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz", - "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==" - }, - "node-bittrex-api": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/node-bittrex-api/-/node-bittrex-api-0.8.3.tgz", - "integrity": "sha1-hJ1NpcIXAXytp0mkbOF4j8OX1/M=", - "requires": { - "cloudscraper": "1.4.1", - "jsonic": "0.3.0", - "object-assign": "4.1.1", - "request": "2.85.0", - "signalr-client": "0.0.17" - } - }, - "node-dir": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.8.tgz", - "integrity": "sha1-VfuN62mQcHB/tn+RpGDwRIKUx30=" - }, - "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "requires": { - "encoding": "0.1.12", - "is-stream": "1.1.0" - } - }, - "node-forge": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", - "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==" - }, - "node-gyp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", - "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", - "requires": { - "fstream": "1.0.11", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "npmlog": "4.1.2", - "osenv": "0.1.5", - "request": "2.85.0", - "rimraf": "2.6.2", - "semver": "5.3.0", - "tar": "2.2.1", - "which": "1.3.0" - }, - "dependencies": { - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" - } - } - }, - "node-libs-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", - "requires": { - "assert": "1.4.1", - "browserify-zlib": "0.2.0", - "buffer": "4.9.1", - "console-browserify": "1.1.0", - "constants-browserify": "1.0.0", - "crypto-browserify": "3.12.0", - "domain-browser": "1.2.0", - "events": "1.1.1", - "https-browserify": "1.0.0", - "os-browserify": "0.3.0", - "path-browserify": "0.0.0", - "process": "0.11.10", - "punycode": "1.4.1", - "querystring-es3": "0.2.1", - "readable-stream": "2.3.6", - "stream-browserify": "2.0.1", - "stream-http": "2.8.1", - "string_decoder": "1.1.1", - "timers-browserify": "2.0.10", - "tty-browserify": "0.0.0", - "url": "0.11.0", - "util": "0.10.3", - "vm-browserify": "0.0.4" - } - }, - "node-pre-gyp": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.9.1.tgz", - "integrity": "sha1-8RwHUW3ZL4cZnbx+GDjqt81WyeA=", - "requires": { - "detect-libc": "1.0.3", - "mkdirp": "0.5.1", - "needle": "2.2.0", - "nopt": "4.0.1", - "npm-packlist": "1.1.10", - "npmlog": "4.1.2", - "rc": "1.2.6", - "rimraf": "2.6.2", - "semver": "5.5.0", - "tar": "4.4.1" - }, - "dependencies": { - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "agent-base": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz", + "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", + "dev": true, "requires": { - "abbrev": "1.1.1", - "osenv": "0.1.5" + "es6-promisify": "^5.0.0" } }, - "tar": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz", - "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", + "agentkeepalive": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.4.1.tgz", + "integrity": "sha512-MPIwsZU9PP9kOrZpyu2042kYA8Fdt/AedQYkYXucHgF9QoD9dXVp0ypuGnHXSR0hTstBxdt85Xkh4JolYfK5wg==", + "dev": true, "requires": { - "chownr": "1.0.1", - "fs-minipass": "1.2.5", - "minipass": "2.2.4", - "minizlib": "1.1.0", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.1", - "yallist": "3.0.2" + "humanize-ms": "^1.2.1" } }, - "yallist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" - } - } - }, - "node-prowl": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/node-prowl/-/node-prowl-0.1.7.tgz", - "integrity": "sha1-Jt4onxRqp6SXBJYZOocBu/GO6rc=", - "requires": { - "request": "2.9.202", - "xml2js": "0.1.13" - }, - "dependencies": { - "request": { - "version": "2.9.202", - "resolved": "https://registry.npmjs.org/request/-/request-2.9.202.tgz", - "integrity": "sha1-xhOZzfu+/aXcSGU7DpvqUX2fhJc=" - } - } - }, - "node-sass": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.8.3.tgz", - "integrity": "sha512-tfFWhUsCk/Y19zarDcPo5xpj+IW3qCfOjVdHtYeG6S1CKbQOh1zqylnQK6cV3z9k80yxAnFX9Y+a9+XysDhhfg==", - "requires": { - "async-foreach": "0.1.3", - "chalk": "1.1.3", - "cross-spawn": "3.0.1", - "gaze": "1.1.2", - "get-stdin": "4.0.1", - "glob": "7.1.2", - "in-publish": "2.0.0", - "lodash.assign": "4.2.0", - "lodash.clonedeep": "4.5.0", - "lodash.mergewith": "4.6.1", - "meow": "3.7.0", - "mkdirp": "0.5.1", - "nan": "2.10.0", - "node-gyp": "3.6.2", - "npmlog": "4.1.2", - "request": "2.79.0", - "sass-graph": "2.2.4", - "stdout-stream": "1.4.0", - "true-case-path": "1.0.2" - }, - "dependencies": { - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, "requires": { - "hoek": "2.16.3" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=" - }, - "cross-spawn": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, "requires": { - "lru-cache": "4.1.2", - "which": "1.3.0" + "string-width": "^2.0.0" } }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { - "boom": "2.10.1" + "color-convert": "^1.9.0" } }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", + "ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "dev": true + }, + "ansistyles": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ansistyles/-/ansistyles-0.1.3.tgz", + "integrity": "sha1-XeYEFb2gcbs3EnhUyGT0GyMlRTk=", + "dev": true + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "dev": true, "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.6", - "mime-types": "2.1.18" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, - "har-validator": { + "asap": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "requires": { - "chalk": "1.1.3", - "commander": "2.15.1", - "is-my-json-valid": "2.17.2", - "pinkie-promise": "2.0.1" - } + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" + "safer-buffer": "~2.1.0" } }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "optional": true, "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.14.1" + "tweetnacl": "^0.14.3" } }, - "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=" - }, - "request": { - "version": "2.79.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", - "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", + "bin-links": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-1.1.2.tgz", + "integrity": "sha512-8eEHVgYP03nILphilltWjeIjMbKyJo3wvp9K816pHbhP301ismzw15mxAAEVQ/USUwcP++1uNrbERbp8lOA6Fg==", + "dev": true, "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.7.0", - "caseless": "0.11.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "2.0.6", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "qs": "6.3.2", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.4.3", - "uuid": "3.2.1" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "requires": { - "hoek": "2.16.3" + "bluebird": "^3.5.0", + "cmd-shim": "^2.0.2", + "gentle-fs": "^2.0.0", + "graceful-fs": "^4.1.11", + "write-file-atomic": "^2.3.0" } }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" - } - } - }, - "node-telegram-bot-api": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/node-telegram-bot-api/-/node-telegram-bot-api-0.30.0.tgz", - "integrity": "sha512-+EeM+fe3Xt81KIPqN3L6s6eK+FK4QaqyDcwCwkY/jqsleERXwwjGlVbf4lJCOZ0uJuF5PfqTmvVNtua7AZfBXg==", - "requires": { - "array.prototype.findindex": "2.0.2", - "bl": "1.2.2", - "bluebird": "3.5.1", - "debug": "3.1.0", - "depd": "1.1.2", - "eventemitter3": "3.0.1", - "file-type": "3.9.0", - "mime": "1.6.0", - "pump": "2.0.1", - "request": "2.85.0", - "request-promise": "4.2.2" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, "requires": { - "ms": "2.0.0" + "inherits": "~2.0.0" } }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - } - } - }, - "node-xmpp-client": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/node-xmpp-client/-/node-xmpp-client-3.2.0.tgz", - "integrity": "sha1-r0Un3wzFq9JpDLohOcwezcgeoYk=", - "requires": { - "browser-request": "0.3.3", - "debug": "2.6.9", - "md5.js": "1.3.4", - "minimist": "1.2.0", - "node-xmpp-core": "5.0.9", - "request": "2.85.0", - "ws": "1.1.5" - }, - "dependencies": { - "ultron": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", - "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "dev": true }, - "ws": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", - "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, "requires": { - "options": "0.0.6", - "ultron": "1.0.2" + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" } - } - } - }, - "node-xmpp-core": { - "version": "5.0.9", - "resolved": "https://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-5.0.9.tgz", - "integrity": "sha1-XCjCjtsfs/i+uixnYHd2E/SPNCo=", - "requires": { - "@xmpp/jid": "0.0.2", - "@xmpp/streamparser": "0.0.6", - "@xmpp/xml": "0.1.3", - "debug": "2.6.9", - "inherits": "2.0.3", - "lodash.assign": "4.2.0", - "node-xmpp-tls-connect": "1.0.1", - "reconnect-core": "https://github.com/dodo/reconnect-core/tarball/merged" - } - }, - "node-xmpp-tls-connect": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/node-xmpp-tls-connect/-/node-xmpp-tls-connect-1.0.1.tgz", - "integrity": "sha1-kazkOsJrE4hhsr5HjfnfGdYdxcM=" - }, - "nomnom": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", - "requires": { - "chalk": "0.4.0", - "underscore": "1.6.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=" }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "requires": { - "ansi-styles": "1.0.0", - "has-color": "0.1.7", - "strip-ansi": "0.1.1" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=" + "buffer-from": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", + "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==", + "dev": true }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "nonce": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nonce/-/nonce-1.0.4.tgz", - "integrity": "sha1-7nMCrejBvvR28wG4yR9cxRpIdhI=" - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "requires": { - "abbrev": "1.1.1" - } - }, - "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "requires": { - "hosted-git-info": "2.6.0", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" - } - }, - "normalize-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz", - "integrity": "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=" - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=" - }, - "normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", - "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", - "requires": { - "prepend-http": "2.0.0", - "query-string": "5.1.1", - "sort-keys": "2.0.0" - } - }, - "npm-bundled": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.3.tgz", - "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==" - }, - "npm-packlist": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.10.tgz", - "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==", - "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.3" - } - }, - "npm-path": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz", - "integrity": "sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw==", - "requires": { - "which": "1.3.0" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "requires": { - "path-key": "2.0.1" - } - }, - "npm-which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", - "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", - "requires": { - "commander": "2.15.1", - "npm-path": "2.0.4", - "which": "1.3.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" - }, - "number-abbreviate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/number-abbreviate/-/number-abbreviate-2.0.0.tgz", - "integrity": "sha1-6cstGNuADhU88HKClVPEr+DfeJg=" - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "numbro": { - "version": "github:highvelocityspace/numbro#65a801c05c40496e5701458c0d4e780060e9a742" - }, - "nwmatcher": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz", - "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==" - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "byline": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz", + "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=", + "dev": true + }, + "byte-size": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-4.0.3.tgz", + "integrity": "sha512-JGC3EV2bCzJH/ENSh3afyJrH4vwxbHTuO5ljLoI5+2iJOcEpMgP8T782jH9b5qGxf2mSUIp1lfGnfKNrRHpvVg==", + "dev": true + }, + "cacache": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.2.0.tgz", + "integrity": "sha512-IFWl6lfK6wSeYCHUXh+N1lY72UDrpyrYQJNIVQf48paDuWbv5RbAtJYf/4gUQFObTCHZwdZ5sI8Iw7nqwP6nlQ==", + "dev": true, "requires": { - "is-descriptor": "0.1.6" - } - } - } - }, - "object-keys": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", - "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=" - }, - "object-path": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.9.2.tgz", - "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=" - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - } - } - }, - "object.entries": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.0.4.tgz", - "integrity": "sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8=", - "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0", - "function-bind": "1.1.1", - "has": "1.0.1" - } - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - } - } - }, - "object.values": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.0.4.tgz", - "integrity": "sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo=", - "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.11.0", - "function-bind": "1.1.1", - "has": "1.0.1" - } - }, - "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" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1.0.2" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "requires": { - "mimic-fn": "1.2.0" - } - }, - "opencollective": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/opencollective/-/opencollective-1.0.3.tgz", - "integrity": "sha1-ruY3K8KBRFg2kMPKja7PwSDdDvE=", - "requires": { - "babel-polyfill": "6.23.0", - "chalk": "1.1.3", - "inquirer": "3.0.6", - "minimist": "1.2.0", - "node-fetch": "1.6.3", - "opn": "4.0.2" - }, - "dependencies": { - "node-fetch": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", - "integrity": "sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ=", + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "figgy-pudding": "^3.1.0", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.3", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.0", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + } + }, + "call-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/call-limit/-/call-limit-1.1.0.tgz", + "integrity": "sha1-b9YbA/PaQqLNDsK2DwK9DnGZH+o=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, "requires": { - "encoding": "0.1.12", - "is-stream": "1.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } - } - } - }, - "opn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", - "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" - } - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "0.1.3", - "fast-levenshtein": "2.0.6", - "levn": "0.3.0", - "prelude-ls": "1.1.2", - "type-check": "0.3.2", - "wordwrap": "1.0.0" - } - }, - "options": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" - }, - "ora": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz", - "integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=", - "requires": { - "chalk": "1.1.3", - "cli-cursor": "1.0.2", - "cli-spinners": "0.1.2", - "object-assign": "4.1.1" - }, - "dependencies": { - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + }, + "chownr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", + "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", + "dev": true + }, + "ci-info": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.4.0.tgz", + "integrity": "sha512-Oqmw2pVfCl8sCL+1QgMywPfdxPJPkC51y4usw0iiE2S9qnEOAqXy8bwl1CpMpnoU39g4iKJTz6QZj+28FvOnjQ==", + "dev": true + }, + "cidr-regex": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/cidr-regex/-/cidr-regex-2.0.9.tgz", + "integrity": "sha512-F7/fBRUU45FnvSPjXdpIrc++WRSBdCiSTlyq4ZNhLKOlHFNWgtzZ0Fd+zrqI/J1j0wmlx/f5ZQDmD2GcbrNcmw==", + "dev": true, "requires": { - "restore-cursor": "1.0.1" + "ip-regex": "^2.1.0" } }, - "onetime": { - "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "cli-columns": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cli-columns/-/cli-columns-3.1.2.tgz", + "integrity": "sha1-ZzLZcpee/CrkRKHwjgj6E5yWoY4=", + "dev": true, "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "string-width": "^2.0.0", + "strip-ansi": "^3.0.1" } - } - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "requires": { - "lcid": "1.0.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=" - }, - "p-each-series": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", - "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", - "requires": { - "p-reduce": "1.0.0" - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "p-is-promise": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" - }, - "p-lazy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-lazy/-/p-lazy-1.0.0.tgz", - "integrity": "sha1-7FPIAvLuOsKPFmzILQsrAt4nqDU=" - }, - "p-limit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", - "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", - "requires": { - "p-try": "1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "requires": { - "p-limit": "1.2.0" - } - }, - "p-map": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==" - }, - "p-queue": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-2.4.1.tgz", - "integrity": "sha512-xqevcHZy5F9ewg/pnox4S1gFo+9wbLuo+XRMIpdreSaB7d2hAm4JNDuDauOKtHvSmFiS00gTSQoYNbo8rbLoBA==" - }, - "p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", - "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=" - }, - "p-retry": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-1.0.0.tgz", - "integrity": "sha1-OSczKkt9cCabU1UVEX/FR9oaaWg=", - "requires": { - "retry": "0.10.1" - } - }, - "p-timeout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", - "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", - "requires": { - "p-finally": "1.0.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - }, - "pako": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", - "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" - }, - "parallel-transform": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", - "requires": { - "cyclist": "0.2.2", - "inherits": "2.0.3", - "readable-stream": "2.3.6" - } - }, - "parse-asn1": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", - "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", - "requires": { - "asn1.js": "4.10.1", - "browserify-aes": "1.2.0", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "pbkdf2": "3.0.16" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" - }, - "dependencies": { - "is-extglob": { + }, + "cli-table3": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.0.tgz", + "integrity": "sha512-c7YHpUyO1SaKaO7kYtxd5NZ8FjAmSK3LpKkuzdwn+2CwpFxBpdoQLm+OAnnCfoEl7onKhN9PKQi1lsHuAIUqGQ==", + "dev": true, + "requires": { + "colors": "^1.1.2", + "object-assign": "^4.1.0", + "string-width": "^2.1.1" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "cmd-shim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-2.0.2.tgz", + "integrity": "sha1-b8vamUg6j9FdfTChlspp1oii79s=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "mkdirp": "~0.5.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "^1.1.1" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true, + "optional": true + }, + "columnify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz", + "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", + "dev": true, + "requires": { + "strip-ansi": "^3.0.0", + "wcwidth": "^1.0.0" + } + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "config-chain": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz", + "integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=", + "dev": true, + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + }, + "dependencies": { + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "debuglog": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-extend": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", + "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, + "dezalgo": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", + "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", + "dev": true, + "requires": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "dotenv": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-5.0.1.tgz", + "integrity": "sha512-4As8uPrjfwb7VXC+WnLCbXK7y+Ueb2B3zgNCePYfhxS1PYeaO1YTeplffTEcbfLhvFNGLAz90VvJs9yomG7bow==", + "dev": true + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "duplexify": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", + "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "editor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/editor/-/editor-1.0.0.tgz", + "integrity": "sha1-YMf4e9YrzGqJT6jM1q+3gjok90I=", + "dev": true + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "dev": true, + "requires": { + "iconv-lite": "~0.4.13" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "err-code": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", + "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "es6-promise": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "^4.0.3" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "figgy-pudding": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.4.1.tgz", + "integrity": "sha512-j1SAT641cerGuOvoSBoaE9LbSzh1N/E5ufk9oMpOKuyK8MyW3sGg4rh+4qhLmVTEAzipO5XTHYT4gjb6JYLE8g==", + "dev": true + }, + "find-npm-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/find-npm-prefix/-/find-npm-prefix-1.0.2.tgz", + "integrity": "sha512-KEftzJ+H90x6pcKtdXZEPsQse8/y/UnvzRKrOSQFprnrGaFuJ62fVkP34Iu2IYuMvyauCyoLTNkJZgrrGA2wkA==", + "dev": true + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "flush-write-stream": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", + "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "1.0.6", + "mime-types": "^2.1.12" + } + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-minipass": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs-vacuum": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/fs-vacuum/-/fs-vacuum-1.2.10.tgz", + "integrity": "sha1-t2Kb7AekAxolSP35n17PHMizHjY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "path-is-inside": "^1.0.1", + "rimraf": "^2.5.2" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "genfun": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-4.0.1.tgz", + "integrity": "sha1-7RAEHy5KfxsKOEZtF6XD4n3x38E=", + "dev": true + }, + "gentle-fs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gentle-fs/-/gentle-fs-2.0.1.tgz", + "integrity": "sha512-cEng5+3fuARewXktTEGbwsktcldA+YsnUEaXZwcK/3pjSE1X9ObnTs+/8rYf8s+RnIcQm2D5x3rwpN7Zom8Bew==", + "dev": true, + "requires": { + "aproba": "^1.1.2", + "fs-vacuum": "^1.2.10", + "graceful-fs": "^4.1.11", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "path-is-inside": "^1.0.2", + "read-cmd-shim": "^1.0.1", + "slide": "^1.1.6" + }, + "dependencies": { + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + } + } + }, + "get-caller-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", + "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", + "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", + "dev": true, + "requires": { + "ajv": "^5.3.0", + "har-schema": "^2.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "dev": true + }, + "http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dev": true, + "requires": { + "agent-base": "4", + "debug": "3.1.0" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-proxy-agent": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", + "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "dev": true, + "requires": { + "agent-base": "^4.1.0", + "debug": "^3.1.0" + } + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "iferr": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-1.0.2.tgz", + "integrity": "sha512-9AfeLfji44r5TKInjhz3W9DyZI1zR1JAf2hVBMGhddAKPqBsupb89jGfbCTHIGZd6fGZl9WlHdn4AObygyMKwg==", + "dev": true + }, + "ignore-walk": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "init-package-json": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-1.10.3.tgz", + "integrity": "sha512-zKSiXKhQveNteyhcj1CoOP8tqp1QuxPIPBl8Bid99DGLFqA1p87M6lNgfjJHSBoWJJlidGOv5rWjyYKEB3g2Jw==", + "dev": true, + "requires": { + "glob": "^7.1.1", + "npm-package-arg": "^4.0.0 || ^5.0.0 || ^6.0.0", + "promzard": "^0.3.0", + "read": "~1.0.1", + "read-package-json": "1 || 2", + "semver": "2.x || 3.x || 4 || 5", + "validate-npm-package-license": "^3.0.1", + "validate-npm-package-name": "^3.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-ci": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", + "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "dev": true, + "requires": { + "ci-info": "^1.0.0" + } + }, + "is-cidr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/is-cidr/-/is-cidr-2.0.6.tgz", + "integrity": "sha512-A578p1dV22TgPXn6NCaDAPj6vJvYsBgAzUrAd28a4oldeXJjWqEUuSZOLIW3im51mazOKsoyVp8NU/OItlWacw==", + "dev": true, + "requires": { + "cidr-regex": "^2.0.8" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lazy-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazy-property/-/lazy-property-1.0.0.tgz", + "integrity": "sha1-hN3Es3Bnm6i9TNz6TAa0PVcREUc=", + "dev": true + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "libcipm": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/libcipm/-/libcipm-2.0.2.tgz", + "integrity": "sha512-9uZ6/LAflVEijksTRq/RX0e+pGA4mr8tND9Cmk2JMg7j2fFUBrs8PpFX2DOAJR/XoxPzz+5h8bkWmtIYLunKAg==", + "dev": true, + "requires": { + "bin-links": "^1.1.2", + "bluebird": "^3.5.1", + "find-npm-prefix": "^1.0.2", + "graceful-fs": "^4.1.11", + "lock-verify": "^2.0.2", + "mkdirp": "^0.5.1", + "npm-lifecycle": "^2.0.3", + "npm-logical-tree": "^1.2.1", + "npm-package-arg": "^6.1.0", + "pacote": "^8.1.6", + "protoduck": "^5.0.0", + "read-package-json": "^2.0.13", + "rimraf": "^2.6.2", + "worker-farm": "^1.6.0" + } + }, + "libnpmhook": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/libnpmhook/-/libnpmhook-4.0.1.tgz", + "integrity": "sha512-3qqpfqvBD1712WA6iGe0stkG40WwAeoWcujA6BlC0Be1JArQbqwabnEnZ0CRcD05Tf1fPYJYdCbSfcfedEJCOg==", + "dev": true, + "requires": { + "figgy-pudding": "^3.1.0", + "npm-registry-fetch": "^3.0.0" + }, + "dependencies": { + "npm-registry-fetch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-3.1.1.tgz", + "integrity": "sha512-xBobENeenvjIG8PgQ1dy77AXTI25IbYhmA3DusMIfw/4EL5BaQ5e1V9trkPrqHvyjR3/T0cnH6o0Wt/IzcI5Ag==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "figgy-pudding": "^3.1.0", + "lru-cache": "^4.1.2", + "make-fetch-happen": "^4.0.0", + "npm-package-arg": "^6.0.0" + } + } + } + }, + "libnpx": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/libnpx/-/libnpx-10.2.0.tgz", + "integrity": "sha512-X28coei8/XRCt15cYStbLBph+KGhFra4VQhRBPuH/HHMkC5dxM8v24RVgUsvODKCrUZ0eTgiTqJp6zbl0sskQQ==", + "dev": true, + "requires": { + "dotenv": "^5.0.1", + "npm-package-arg": "^6.0.0", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.0", + "update-notifier": "^2.3.0", + "which": "^1.3.0", + "y18n": "^4.0.0", + "yargs": "^11.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lock-verify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lock-verify/-/lock-verify-2.0.2.tgz", + "integrity": "sha512-QNVwK0EGZBS4R3YQ7F1Ox8p41Po9VGl2QG/2GsuvTbkJZYSsPeWHKMbbH6iZMCHWSMww5nrJroZYnGzI4cePuw==", + "dev": true, + "requires": { + "npm-package-arg": "^5.1.2 || 6", + "semver": "^5.4.1" + } + }, + "lockfile": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz", + "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==", + "dev": true, + "requires": { + "signal-exit": "^3.0.2" + } + }, + "lodash._baseindexof": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz", + "integrity": "sha1-/lK1OhxnYeQmGNZU5KJXie1hgiw=", + "dev": true + }, + "lodash._baseuniq": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz", + "integrity": "sha1-DrtE5FaBSveQXGIS+iybLVG4Qeg=", + "dev": true, + "requires": { + "lodash._createset": "~4.0.0", + "lodash._root": "~3.0.0" + } + }, + "lodash._bindcallback": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", + "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=", + "dev": true + }, + "lodash._cacheindexof": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz", + "integrity": "sha1-PcaayCSY0u5ePOVgkbr9Ktx73pI=", + "dev": true + }, + "lodash._createcache": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash._createcache/-/lodash._createcache-3.1.2.tgz", + "integrity": "sha1-VtagZAF2JeeevKa4AY4XRAvc8JM=", + "dev": true, + "requires": { + "lodash._getnative": "^3.0.0" + } + }, + "lodash._createset": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/lodash._createset/-/lodash._createset-4.0.3.tgz", + "integrity": "sha1-D0ZZ+7CddRlPqeK4imZE02PJ/iY=", + "dev": true + }, + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", + "dev": true + }, + "lodash._root": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", + "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=", + "dev": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", + "dev": true + }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "lodash.without": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.without/-/lodash.without-4.4.0.tgz", + "integrity": "sha1-PNRXSgC2e643OpS3SHcmQFB7eqw=", + "dev": true + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "make-fetch-happen": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", + "integrity": "sha512-7R5ivfy9ilRJ1EMKIOziwrns9fGeAD4bAha8EB7BIiBBLHm2KeTUGCrICFt2rbHfzheTLynv50GnNTK1zDTrcQ==", + "dev": true, + "requires": { + "agentkeepalive": "^3.4.1", + "cacache": "^11.0.1", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" + } + }, + "meant": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/meant/-/meant-1.0.1.tgz", + "integrity": "sha512-UakVLFjKkbbUwNWJ2frVLnnAtbb7D7DsloxRd3s/gDpI8rdv8W5Hp3NaDb+POBI1fQdeussER6NB8vpcRURvlg==", + "dev": true + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "mime-db": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", + "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.19", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", + "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "dev": true, + "requires": { + "mime-db": "~1.35.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "minipass": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.3.tgz", + "integrity": "sha512-/jAn9/tEX4gnpyRATxgHEOV6xbcyxgT7iUnxo9Y3+OB0zX00TgKIv/2FZCf5brBbICcwbLqVv2ImjvWWrQMSYw==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + }, + "dependencies": { + "yallist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", + "dev": true + } + } + }, + "minizlib": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", + "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", + "dev": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "node-fetch-npm": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", + "integrity": "sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw==", + "dev": true, + "requires": { + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "dev": true, + "requires": { + "block-stream": "*", + "fstream": "^1.0.2", + "inherits": "2" + } + } + } + }, + "nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-audit-report": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/npm-audit-report/-/npm-audit-report-1.3.1.tgz", + "integrity": "sha512-SjTF8ZP4rOu3JiFrTMi4M1CmVo2tni2sP4TzhyCMHwnMGf6XkdGLZKt9cdZ12esKf0mbQqFyU9LtY0SoeahL7g==", + "dev": true, + "requires": { + "cli-table3": "^0.5.0", + "console-control-strings": "^1.1.0" + } + }, + "npm-bundled": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.5.tgz", + "integrity": "sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g==", + "dev": true + }, + "npm-cache-filename": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/npm-cache-filename/-/npm-cache-filename-1.0.2.tgz", + "integrity": "sha1-3tMGxbC/yHCp6fr4I7xfKD4FrhE=", + "dev": true + }, + "npm-install-checks": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-3.0.0.tgz", + "integrity": "sha1-1K7N/VGlPjcjt7L5Oy7ijjB7wNc=", + "dev": true, + "requires": { + "semver": "^2.3.0 || 3.x || 4 || 5" + } + }, + "npm-lifecycle": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-2.1.0.tgz", + "integrity": "sha512-QbBfLlGBKsktwBZLj6AviHC6Q9Y3R/AY4a2PYSIRhSKSS0/CxRyD/PfxEX6tPeOCXQgMSNdwGeECacstgptc+g==", + "dev": true, + "requires": { + "byline": "^5.0.0", + "graceful-fs": "^4.1.11", + "node-gyp": "^3.8.0", + "resolve-from": "^4.0.0", + "slide": "^1.1.6", + "uid-number": "0.0.6", + "umask": "^1.1.0", + "which": "^1.3.1" + } + }, + "npm-logical-tree": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/npm-logical-tree/-/npm-logical-tree-1.2.1.tgz", + "integrity": "sha512-AJI/qxDB2PWI4LG1CYN579AY1vCiNyWfkiquCsJWqntRu/WwimVrC8yXeILBFHDwxfOejxewlmnvW9XXjMlYIg==", + "dev": true + }, + "npm-package-arg": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", + "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.6.0", + "osenv": "^0.1.5", + "semver": "^5.5.0", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-packlist": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.11.tgz", + "integrity": "sha512-CxKlZ24urLkJk+9kCm48RTQ7L4hsmgSVzEk0TLGPzzyuFxD7VNgy5Sl24tOLMzQv773a/NeJ1ce1DKeacqffEA==", + "dev": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npm-pick-manifest": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.1.0.tgz", + "integrity": "sha512-q9zLP8cTr8xKPmMZN3naxp1k/NxVFsjxN6uWuO1tiw9gxg7wZWQ/b5UTfzD0ANw2q1lQxdLKTeCCksq+bPSgbQ==", + "dev": true, + "requires": { + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" + } + }, + "npm-profile": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/npm-profile/-/npm-profile-3.0.2.tgz", + "integrity": "sha512-rEJOFR6PbwOvvhGa2YTNOJQKNuc6RovJ6T50xPU7pS9h/zKPNCJ+VHZY2OFXyZvEi+UQYtHRTp8O/YM3tUD20A==", + "dev": true, + "requires": { + "aproba": "^1.1.2 || 2", + "make-fetch-happen": "^2.5.0 || 3 || 4" + } + }, + "npm-registry-client": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.6.0.tgz", + "integrity": "sha512-Qs6P6nnopig+Y8gbzpeN/dkt+n7IyVd8f45NTMotGk6Qo7GfBmzwYx6jRLoOOgKiMnaQfYxsuyQlD8Mc3guBhg==", + "dev": true, + "requires": { + "concat-stream": "^1.5.2", + "graceful-fs": "^4.1.6", + "normalize-package-data": "~1.0.1 || ^2.0.0", + "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0", + "npmlog": "2 || ^3.1.0 || ^4.0.0", + "once": "^1.3.3", + "request": "^2.74.0", + "retry": "^0.10.0", + "safe-buffer": "^5.1.1", + "semver": "2 >=2.2.1 || 3.x || 4 || 5", + "slide": "^1.1.3", + "ssri": "^5.2.4" + }, + "dependencies": { + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + } + } + }, + "npm-registry-fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-1.1.0.tgz", + "integrity": "sha512-XJPIBfMtgaooRtZmuA42xCeLf3tkxdIX0xqRsGWwNrcVvJ9UYFccD7Ho7QWCzvkM3i/QrkUC37Hu0a+vDBmt5g==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "figgy-pudding": "^2.0.1", + "lru-cache": "^4.1.2", + "make-fetch-happen": "^3.0.0", + "npm-package-arg": "^6.0.0", + "safe-buffer": "^5.1.1" + }, + "dependencies": { + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + }, + "dependencies": { + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + } + } + }, + "figgy-pudding": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-2.0.1.tgz", + "integrity": "sha512-yIJPhIBi/oFdU/P+GSXjmk/rmGjuZkm7A5LTXZxNrEprXJXRK012FiI1BR1Pga+0d/d6taWWD+B5d2ozqaxHig==", + "dev": true + }, + "make-fetch-happen": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-3.0.0.tgz", + "integrity": "sha512-FmWY7gC0mL6Z4N86vE14+m719JKE4H0A+pyiOH18B025gF/C113pyfb4gHDDYP5cqnRMHOz06JGdmffC/SES+w==", + "dev": true, + "requires": { + "agentkeepalive": "^3.4.1", + "cacache": "^10.0.4", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.0", + "lru-cache": "^4.1.2", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^3.0.1", + "ssri": "^5.2.4" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "smart-buffer": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", + "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", + "dev": true + }, + "socks": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", + "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", + "dev": true, + "requires": { + "ip": "^1.1.4", + "smart-buffer": "^1.0.13" + } + }, + "socks-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", + "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", + "dev": true, + "requires": { + "agent-base": "^4.1.0", + "socks": "^1.1.10" + } + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + } + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npm-user-validate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/npm-user-validate/-/npm-user-validate-1.0.0.tgz", + "integrity": "sha1-jOyg9c6gTU6TUZ73LQVXp1Ei6VE=", + "dev": true + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "opener": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.0.tgz", + "integrity": "sha512-MD4s/o61y2slS27zm2s4229V2gAUHX0/e3/XOmY/jsXwhysjjCIHN8lx7gqZCrZk19ym+HjCUWHeMKD7YJtKCQ==", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "pacote": { + "version": "8.1.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-8.1.6.tgz", + "integrity": "sha512-wTOOfpaAQNEQNtPEx92x9Y9kRWVu45v583XT8x2oEV2xRB74+xdqMZIeGW4uFvAyZdmSBtye+wKdyyLaT8pcmw==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "cacache": "^11.0.2", + "get-stream": "^3.0.0", + "glob": "^7.1.2", + "lru-cache": "^4.1.3", + "make-fetch-happen": "^4.0.1", + "minimatch": "^3.0.4", + "minipass": "^2.3.3", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "normalize-package-data": "^2.4.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.10", + "npm-pick-manifest": "^2.1.0", + "osenv": "^0.1.5", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "protoduck": "^5.0.0", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.5.0", + "ssri": "^6.0.0", + "tar": "^4.4.3", + "unique-filename": "^1.1.0", + "which": "^1.3.0" + } + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise-retry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", + "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "dev": true, + "requires": { + "err-code": "^1.0.0", + "retry": "^0.10.0" + }, + "dependencies": { + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + } + } + }, + "promzard": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/promzard/-/promzard-0.3.0.tgz", + "integrity": "sha1-JqXW7ox97kyxIggwWs+5O6OCqe4=", + "dev": true, + "requires": { + "read": "1" + } + }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "dev": true + }, + "protoduck": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.0.tgz", + "integrity": "sha512-agsGWD8/RZrS4ga6v82Fxb0RHIS2RZnbsSue6A9/MBRhB/jcqOANAMNrqM9900b8duj+Gx+T/JMy5IowDoO/hQ==", + "dev": true, + "requires": { + "genfun": "^4.0.1" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "query-string": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.1.0.tgz", + "integrity": "sha512-pNB/Gr8SA8ff8KpUFM36o/WFAlthgaThka5bV19AD9PNTH20Pwq5Zxodif2YyHwrctp6SkL4GqlOot0qR/wGaw==", + "dev": true, + "requires": { + "decode-uri-component": "^0.2.0", + "strict-uri-encode": "^2.0.0" + } + }, + "qw": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/qw/-/qw-1.0.1.tgz", + "integrity": "sha1-77/cdA+a0FQwRCassYNBLMi5ltQ=", + "dev": true + }, + "rc": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", + "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", + "dev": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", + "dev": true, + "requires": { + "mute-stream": "~0.0.4" + } + }, + "read-cmd-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz", + "integrity": "sha1-LV0Vd4ajfAVdIgd8MsU/gynpHHs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2" + } + }, + "read-installed": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/read-installed/-/read-installed-4.0.3.tgz", + "integrity": "sha1-/5uLZ/GH0eTCm5/rMfayI6zRkGc=", + "dev": true, + "requires": { + "debuglog": "^1.0.1", + "graceful-fs": "^4.1.2", + "read-package-json": "^2.0.0", + "readdir-scoped-modules": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "slide": "~1.1.3", + "util-extend": "^1.0.1" + } + }, + "read-package-json": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.0.13.tgz", + "integrity": "sha512-/1dZ7TRZvGrYqE0UAfN6qQb5GYBsNcqS1C0tNK601CFOJmtHI7NIGXwetEPU/OtoFHZL3hDxm4rolFFVE9Bnmg==", + "dev": true, + "requires": { + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "json-parse-better-errors": "^1.0.1", + "normalize-package-data": "^2.0.0", + "slash": "^1.0.0" + } + }, + "read-package-tree": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.2.1.tgz", + "integrity": "sha512-2CNoRoh95LxY47LvqrehIAfUVda2JbuFE/HaGYs42bNrGG+ojbw1h3zOcPcQ+1GQ3+rkzNndZn85u1XyZ3UsIA==", + "dev": true, + "requires": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "once": "^1.3.0", + "read-package-json": "^2.0.0", + "readdir-scoped-modules": "^1.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdir-scoped-modules": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.0.2.tgz", + "integrity": "sha1-n6+jfShr5dksuuve4DDcm19AZ0c=", + "dev": true, + "requires": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" + } + }, + "registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "sha": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/sha/-/sha-2.0.1.tgz", + "integrity": "sha1-YDCCL70smCOUn49y7WQR7lzyWq4=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "readable-stream": "^2.0.2" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true }, - "is-glob": { + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "smart-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.1.tgz", + "integrity": "sha512-RFqinRVJVcCAL9Uh1oVqE6FZkqsyLiVOYEZ20TqIOjuX7iFVJ+zsbs4RIghnw/pTs7mZvt8ZHhvm1ZUrR4fykg==", + "dev": true + }, + "socks": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.2.0.tgz", + "integrity": "sha512-uRKV9uXQ9ytMbGm2+DilS1jB7N3AC0mmusmW5TVWjNuBZjxS8+lX38fasKVY9I4opv/bY/iqTbcpFFaTwpfwRg==", + "dev": true, + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.0.1" + } + }, + "socks-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz", + "integrity": "sha512-Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==", + "dev": true, + "requires": { + "agent-base": "~4.2.0", + "socks": "~2.2.0" + } + }, + "sorted-object": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "resolved": "https://registry.npmjs.org/sorted-object/-/sorted-object-2.0.1.tgz", + "integrity": "sha1-fWMfS9OnmKJK8d/8+/6DM3pd9fw=", + "dev": true + }, + "sorted-union-stream": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/sorted-union-stream/-/sorted-union-stream-2.1.3.tgz", + "integrity": "sha1-x3lMfgd4gAUv9xqNSi27Sppjisc=", + "dev": true, "requires": { - "is-extglob": "1.0.0" + "from2": "^1.3.0", + "stream-iterate": "^1.1.0" + }, + "dependencies": { + "from2": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-1.3.0.tgz", + "integrity": "sha1-iEE7qqX5pZfP3pIh2GmGzTwGHf0=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "~1.1.10" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "spdx-correct": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", + "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", + "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", + "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "dev": true + }, + "sshpk": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.0.tgz", + "integrity": "sha512-zYOGfVHPhxyzwi8MdtdNyxv3IynWCIM4jYReR48lqu0VngxgH1c+C6CmipRdJ55eVByTJV/gboFEEI7TEQI8DA==", + "dev": true + }, + "stream-each": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.2.tgz", + "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-iterate": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/stream-iterate/-/stream-iterate-1.2.0.tgz", + "integrity": "sha1-K9fHcpbBcCpGSIuK1B95hl7s1OE=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "stream-shift": "^1.0.0" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" } - } - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "1.3.1", - "json-parse-better-errors": "1.0.2" - } - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=" - }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==" - }, - "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path": { - "version": "0.12.7", - "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", - "requires": { - "process": "0.11.10", - "util": "0.10.3" - } - }, - "path-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "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=" - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "pbkdf2": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", - "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", - "requires": { - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "ripemd160": "2.0.2", - "safe-buffer": "5.1.1", - "sha.js": "2.4.11" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "2.0.4" - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "requires": { - "find-up": "2.1.0" - } - }, - "pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=" - }, - "please-upgrade-node": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.0.1.tgz", - "integrity": "sha1-CmgfLBiRXlQzpcos2U4Lggangts=" - }, - "pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true - }, - "pn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", - "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==" - }, - "poloniex.js": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/poloniex.js/-/poloniex.js-0.0.8.tgz", - "integrity": "sha512-Rrv2dTaW4PeAaVBNvSiqCx8eSAMhgH66Ffd3kACEIX1Wj3EeoagR3dSpAU9IzmXfAZxXu0/3Fb4jXi8F/c8rDA==", - "requires": { - "nonce": "1.0.4", - "request": "2.33.0" - }, - "dependencies": { - "asn1": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz", - "integrity": "sha1-VZvhg3bQik7E2+gId9J4GGObLfc=", - "optional": true }, - "assert-plus": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz", - "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA=", - "optional": true + "stringify-package": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.0.tgz", + "integrity": "sha512-JIQqiWmLiEozOC0b0BtxZ/AOUtdUZHCBPgqIZ2kSJJqGwgb9neo44XdTHUC4HZSGqi03hOeB7W/E8rAlKnGe9g==", + "dev": true }, - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", - "optional": true + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } }, - "aws-sign2": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz", - "integrity": "sha1-xXED96F/wDfwLXwuZLYC6iI/fWM=", - "optional": true + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true }, - "boom": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/boom/-/boom-0.4.2.tgz", - "integrity": "sha1-emNune1O/O+xnO9JR6PGffrukRs=", + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, "requires": { - "hoek": "0.9.1" + "has-flag": "^3.0.0" } }, - "combined-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz", - "integrity": "sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8=", - "optional": true, + "tar": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", + "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", + "dev": true, "requires": { - "delayed-stream": "0.0.5" + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.3", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + }, + "dependencies": { + "yallist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", + "dev": true + } } }, - "cryptiles": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz", - "integrity": "sha1-7ZH/HxetE9N0gohZT4pIoNJvMlw=", - "optional": true, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, "requires": { - "boom": "0.4.2" + "execa": "^0.7.0" } }, - "delayed-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz", - "integrity": "sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8=", + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tiny-relative-date": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz", + "integrity": "sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A==", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, "optional": true }, - "forever-agent": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz", - "integrity": "sha1-bQ4JxJIflKJ/Y9O0nF/v8epMUTA=" + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true }, - "form-data": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-0.1.4.tgz", - "integrity": "sha1-kavXiKupcCsaq/qLwBAxoqyeOxI=", - "optional": true, + "uid-number": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz", + "integrity": "sha1-DqEOgDXo61uOREnwbaHHMGY7qoE=", + "dev": true + }, + "umask": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz", + "integrity": "sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0=", + "dev": true + }, + "unique-filename": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", + "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz", + "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", + "dev": true, "requires": { - "async": "0.9.2", - "combined-stream": "0.0.7", - "mime": "1.2.11" + "imurmurhash": "^0.1.4" } }, - "hawk": { + "unique-string": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-1.0.0.tgz", - "integrity": "sha1-uQuxaYByhUEdp//LjdJZhQLTtS0=", - "optional": true, + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, "requires": { - "boom": "0.4.2", - "cryptiles": "0.2.2", - "hoek": "0.9.1", - "sntp": "0.2.4" + "crypto-random-string": "^1.0.0" } }, - "hoek": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz", - "integrity": "sha1-PTIkYrrfB3Fup+uFuviAec3c5QU=" + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true }, - "http-signature": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz", - "integrity": "sha1-T72sEyVZqoMjEh5UB3nAoBKyfmY=", - "optional": true, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, "requires": { - "asn1": "0.1.11", - "assert-plus": "0.1.5", - "ctype": "0.5.3" + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, - "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=" + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } }, - "node-uuid": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz", - "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=" + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, - "oauth-sign": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.3.0.tgz", - "integrity": "sha1-y1QPk7srIqfVlBaRoojWDo6pOG4=", - "optional": true + "util-extend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=", + "dev": true }, - "qs": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-0.6.6.tgz", - "integrity": "sha1-bgFQmP9RlouKPIGQAdXyyJvEsQc=" + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true }, - "request": { - "version": "2.33.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.33.0.tgz", - "integrity": "sha1-UWeHgTFyYHDsYzdS6iMKI3ncZf8=", - "requires": { - "aws-sign2": "0.5.0", - "forever-agent": "0.5.2", - "form-data": "0.1.4", - "hawk": "1.0.0", - "http-signature": "0.10.1", - "json-stringify-safe": "5.0.1", - "mime": "1.2.11", - "node-uuid": "1.4.8", - "oauth-sign": "0.3.0", - "qs": "0.6.6", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.3.0" - } - }, - "sntp": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz", - "integrity": "sha1-+4hfGLDzqtGJ+CSGJTa87ux1CQA=", - "optional": true, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, "requires": { - "hoek": "0.9.1" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "tunnel-agent": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.3.0.tgz", - "integrity": "sha1-rWgbaPUyGtKCfEz7G31d8s/pQu4=", - "optional": true + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "dev": true, + "requires": { + "string-width": "^1.0.2" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "widest-line": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", + "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", + "dev": true, + "requires": { + "string-width": "^2.1.1" + } + }, + "worker-farm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz", + "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write-file-atomic": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", + "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", + "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + }, + "dependencies": { + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + } + } + }, + "yargs-parser": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", + "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "npm-bundled": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.5.tgz", + "integrity": "sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g==" + }, + "npm-packlist": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.11.tgz", + "integrity": "sha512-CxKlZ24urLkJk+9kCm48RTQ7L4hsmgSVzEk0TLGPzzyuFxD7VNgy5Sl24tOLMzQv773a/NeJ1ce1DKeacqffEA==", + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npm-path": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz", + "integrity": "sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw==", + "requires": { + "which": "^1.2.10" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "^2.0.0" + } + }, + "npm-which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", + "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", + "requires": { + "commander": "^2.9.0", + "npm-path": "^2.0.2", + "which": "^1.2.10" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-abbreviate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/number-abbreviate/-/number-abbreviate-2.0.0.tgz", + "integrity": "sha1-6cstGNuADhU88HKClVPEr+DfeJg=" + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" } } }, - "popper.js": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.14.3.tgz", - "integrity": "sha1-FDj5jQRqz3tNeM1QK/QYrGTU8JU=" + "numbro": { + "version": "github:highvelocityspace/numbro#65a801c05c40496e5701458c0d4e780060e9a742", + "from": "github:highvelocityspace/numbro" }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" }, - "postcss": { - "version": "5.2.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", - "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "requires": { - "chalk": "1.1.3", - "js-base64": "2.4.3", - "source-map": "0.5.7", - "supports-color": "3.2.3" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "has-flag": "1.0.0" + "is-buffer": "^1.1.5" } } } }, - "postcss-calc": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz", - "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=", + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==" + }, + "object-path": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.9.2.tgz", + "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "requires": { - "postcss": "5.2.18", - "postcss-message-helpers": "2.0.0", - "reduce-css-calc": "1.3.0" + "isobject": "^3.0.0" } }, - "postcss-colormin": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz", - "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=", + "object.entries": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.0.4.tgz", + "integrity": "sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8=", "requires": { - "colormin": "1.1.2", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "define-properties": "^1.1.2", + "es-abstract": "^1.6.1", + "function-bind": "^1.1.0", + "has": "^1.0.1" } }, - "postcss-convert-values": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz", - "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=", + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", "requires": { - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" } }, - "postcss-discard-comments": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz", - "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=", + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "requires": { - "postcss": "5.2.18" + "isobject": "^3.0.1" } }, - "postcss-discard-duplicates": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz", - "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=", + "object.values": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.0.4.tgz", + "integrity": "sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo=", "requires": { - "postcss": "5.2.18" + "define-properties": "^1.1.2", + "es-abstract": "^1.6.1", + "function-bind": "^1.1.0", + "has": "^1.0.1" } }, - "postcss-discard-empty": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz", - "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=", + "oboe": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.3.tgz", + "integrity": "sha1-K0hl29Rr6BIlcT9Om/5Lz09oCk8=", "requires": { - "postcss": "5.2.18" + "http-https": "^1.0.0" } }, - "postcss-discard-overridden": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz", - "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=", + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", "requires": { - "postcss": "5.2.18" + "ee-first": "1.1.1" } }, - "postcss-discard-unused": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz", - "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=", + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "postcss": "5.2.18", - "uniqs": "2.0.0" + "wrappy": "1" } }, - "postcss-filter-plugins": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz", - "integrity": "sha1-bYWGJTTXNaxCDkqFgG4fXUKG2Ew=", + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "requires": { - "postcss": "5.2.18", - "uniqid": "4.1.1" + "mimic-fn": "^1.0.0" } }, - "postcss-load-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-1.2.0.tgz", - "integrity": "sha1-U56a/J3chiASHr+djDZz4M5Q0oo=", + "opencollective": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/opencollective/-/opencollective-1.0.3.tgz", + "integrity": "sha1-ruY3K8KBRFg2kMPKja7PwSDdDvE=", "requires": { - "cosmiconfig": "2.2.2", - "object-assign": "4.1.1", - "postcss-load-options": "1.2.0", - "postcss-load-plugins": "2.3.0" + "babel-polyfill": "6.23.0", + "chalk": "1.1.3", + "inquirer": "3.0.6", + "minimist": "1.2.0", + "node-fetch": "1.6.3", + "opn": "4.0.2" }, "dependencies": { - "cosmiconfig": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", - "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", - "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.7.0", - "minimist": "1.2.0", - "object-assign": "4.1.1", - "os-homedir": "1.0.2", - "parse-json": "2.2.0", - "require-from-string": "1.2.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "node-fetch": { + "version": "1.6.3", + "resolved": "http://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", + "integrity": "sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ=", "requires": { - "error-ex": "1.3.1" + "encoding": "^0.1.11", + "is-stream": "^1.0.1" } - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" } } }, - "postcss-load-options": { + "opn": { + "version": "4.0.2", + "resolved": "http://registry.npmjs.org/opn/-/opn-4.0.2.tgz", + "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", + "requires": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "os-locale": { + "version": "1.4.0", + "resolved": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-is-promise": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-map": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-options/-/postcss-load-options-1.2.0.tgz", - "integrity": "sha1-sJixVZ3awt8EvAuzdfmaXP4rbYw=", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==" + }, + "p-queue": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-2.4.2.tgz", + "integrity": "sha512-n8/y+yDJwBjoLQe1GSJbbaYQLTI7QHNZI2+rpmCDbe++WLf9HC3gf6iqj5yfPAV71W4UF3ql5W1+UBPXoXTxng==" + }, + "p-retry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-2.0.0.tgz", + "integrity": "sha512-ZbCuzAmiwJ45q4evp/IG9D+5MUllGSUeCWwPt3j/tdYSi1KPkSD+46uqmAA1LhccDhOXv8kYZKNb8x78VflzfA==", "requires": { - "cosmiconfig": "2.2.2", - "object-assign": "4.1.1" - }, - "dependencies": { - "cosmiconfig": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", - "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", - "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.7.0", - "minimist": "1.2.0", - "object-assign": "4.1.1", - "os-homedir": "1.0.2", - "parse-json": "2.2.0", - "require-from-string": "1.2.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "1.3.1" - } - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" - } + "retry": "^0.12.0" } }, - "postcss-load-plugins": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz", - "integrity": "sha1-dFdoEWWZrKLwCfrUJrABdQSdjZI=", + "p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", "requires": { - "cosmiconfig": "2.2.2", - "object-assign": "4.1.1" - }, - "dependencies": { - "cosmiconfig": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", - "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", - "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.7.0", - "minimist": "1.2.0", - "object-assign": "4.1.1", - "os-homedir": "1.0.2", - "parse-json": "2.2.0", - "require-from-string": "1.2.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "1.3.1" - } - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" - } + "p-finally": "^1.0.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + }, + "pako": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" } }, - "postcss-loader": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.4.tgz", - "integrity": "sha512-L2p654oK945B/gDFUGgOhh7uzj19RWoY1SVMeJVoKno1H2MdbQ0RppR/28JGju4pMb22iRC7BJ9aDzbxXSLf4A==", + "parse-asn1": { + "version": "5.1.1", + "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", "requires": { - "loader-utils": "1.1.0", - "postcss": "6.0.21", - "postcss-load-config": "1.2.0", - "schema-utils": "0.4.5" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", - "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" } }, - "postcss-merge-idents": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz", - "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=", + "parse-headers": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.1.tgz", + "integrity": "sha1-aug6eqJanZtwCswoaYzR8e1+lTY=", "requires": { - "has": "1.0.1", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "for-each": "^0.3.2", + "trim": "0.0.1" } }, - "postcss-merge-longhand": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz", - "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=", + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "requires": { - "postcss": "5.2.18" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, - "postcss-merge-rules": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz", - "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=", + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", "requires": { - "browserslist": "1.7.7", - "caniuse-api": "1.6.1", - "postcss": "5.2.18", - "postcss-selector-parser": "2.2.3", - "vendors": "1.0.2" + "process": "^0.11.1", + "util": "^0.10.3" }, "dependencies": { - "browserslist": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", - "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", - "requires": { - "caniuse-db": "1.0.30000830", - "electron-to-chromium": "1.3.42" - } + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" } } }, - "postcss-message-helpers": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz", - "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=" + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" }, - "postcss-minify-font-values": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz", - "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=", + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "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=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "requires": { - "object-assign": "4.1.1", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } } }, - "postcss-minify-gradients": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz", - "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=", + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "requires": { - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "postcss-minify-params": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz", - "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=", + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "requires": { - "alphanum-sort": "1.0.2", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0", - "uniqs": "2.0.0" + "pinkie": "^2.0.0" } }, - "postcss-minify-selectors": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz", - "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=", + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "requires": { - "alphanum-sort": "1.0.2", - "has": "1.0.1", - "postcss": "5.2.18", - "postcss-selector-parser": "2.2.3" + "find-up": "^2.1.0" } }, - "postcss-modules-extract-imports": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz", - "integrity": "sha1-ZhQOzs447wa/DT41XWm/WdFB6oU=", + "pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=" + }, + "please-upgrade-node": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz", + "integrity": "sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ==", "requires": { - "postcss": "6.0.21" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", - "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } + "semver-compare": "^1.0.0" } }, - "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "poloniex.js": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/poloniex.js/-/poloniex.js-0.0.9.tgz", + "integrity": "sha512-CvbVsrrtrNmjo2N7+1Uc592MJpGwf9PSiAmDB80tcZM+hoz1cnSRkkMgBbazs0Wxu3OxAIT9/ov0cLa/CAS+Ww==", + "requires": { + "nonce": "~1.0.3", + "request": "^2.87.0" + } + }, + "popper.js": { + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.14.4.tgz", + "integrity": "sha1-juwdj/AqWjoVLdQ0FKFce3n9abY=" + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", "requires": { - "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.21" + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" }, "dependencies": { "ansi-styles": { @@ -9832,32 +11038,17 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "source-map": { @@ -9866,112 +11057,105 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, - "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", + "postcss-load-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", "requires": { - "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.21" + "cosmiconfig": "^4.0.0", + "import-cwd": "^2.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", - "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "cosmiconfig": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", "requires": { - "has-flag": "3.0.0" + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0", + "require-from-string": "^2.0.1" } } } }, - "postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", + "postcss-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", "requires": { - "icss-replace-symbols": "1.1.0", - "postcss": "6.0.21" + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" }, "dependencies": { + "ajv": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "postcss": { - "version": "6.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.21.tgz", - "integrity": "sha512-y/bKfbQz2Nn/QBC08bwvYUxEFOVGfPIUOTsJ2CK5inzlXW9SdYR1x4pEsG9blRAF/PX+wRNdOah+gx/hv4q7dw==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.4.tgz", + "integrity": "sha512-Bg1BrMZGKNOI0mkn8NtjJrOrZKgoHrl+geKJ45mTOkeY4WCsYq/mjd1BUWRgRvydHP/lA07Ys2n9m6Va5FsEsw==", + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.5.0" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "requires": { - "chalk": "2.4.0", - "source-map": "0.6.1", - "supports-color": "5.4.0" + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" } }, "source-map": { @@ -9980,134 +11164,48 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } - } - } - }, - "postcss-normalize-charset": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz", - "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=", - "requires": { - "postcss": "5.2.18" - } - }, - "postcss-normalize-url": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz", - "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=", - "requires": { - "is-absolute-url": "2.1.0", - "normalize-url": "1.9.1", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" - }, - "dependencies": { - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "requires": { - "object-assign": "4.1.1", - "prepend-http": "1.0.4", - "query-string": "4.3.4", - "sort-keys": "1.1.2" - } - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "requires": { - "object-assign": "4.1.1", - "strict-uri-encode": "1.1.0" - } - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "is-plain-obj": "1.1.0" + "has-flag": "^3.0.0" } } } }, - "postcss-ordered-values": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz", - "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=", - "requires": { - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" - } - }, - "postcss-reduce-idents": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz", - "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=", - "requires": { - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" - } - }, - "postcss-reduce-initial": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz", - "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=", - "requires": { - "postcss": "5.2.18" - } - }, - "postcss-reduce-transforms": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz", - "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=", + "postcss-modules-extract-imports": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz", + "integrity": "sha1-ZhQOzs447wa/DT41XWm/WdFB6oU=", "requires": { - "has": "1.0.1", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0" + "postcss": "^6.0.1" } }, - "postcss-selector-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", - "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", + "postcss-modules-local-by-default": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", + "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", "requires": { - "flatten": "1.0.2", - "indexes-of": "1.0.1", - "uniq": "1.0.1" + "css-selector-tokenizer": "^0.7.0", + "postcss": "^6.0.1" } }, - "postcss-svgo": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz", - "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=", + "postcss-modules-scope": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", + "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", "requires": { - "is-svg": "2.1.0", - "postcss": "5.2.18", - "postcss-value-parser": "3.3.0", - "svgo": "0.7.2" + "css-selector-tokenizer": "^0.7.0", + "postcss": "^6.0.1" } }, - "postcss-unique-selectors": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz", - "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=", + "postcss-modules-values": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", + "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", "requires": { - "alphanum-sort": "1.0.2", - "postcss": "5.2.18", - "uniqs": "2.0.0" + "icss-replace-symbols": "^1.1.0", + "postcss": "^6.0.1" } }, "postcss-value-parser": { @@ -10115,48 +11213,24 @@ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=" }, - "postcss-zindex": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz", - "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=", - "requires": { - "has": "1.0.1", - "postcss": "5.2.18", - "uniqs": "2.0.0" - } - }, "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true }, "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "prettier": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.12.1.tgz", - "integrity": "sha1-wa0g6APndJ+vkFpAnSNn4Gu+cyU=" - }, - "pretty-bytes": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-4.0.2.tgz", - "integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" }, "pretty-format": { - "version": "22.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-22.4.3.tgz", - "integrity": "sha512-S4oT9/sT6MN7/3COoOy+ZJeA92VmOnveLHgrwBE3Z1W5N9S2A1QGNYiE1z75DAENbJrXXUb+OWXhpJcg05QKQQ==", + "version": "23.6.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-23.6.0.tgz", + "integrity": "sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw==", "requires": { - "ansi-regex": "3.0.0", - "ansi-styles": "3.2.1" + "ansi-regex": "^3.0.0", + "ansi-styles": "^3.2.0" }, "dependencies": { "ansi-regex": { @@ -10169,20 +11243,25 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } } } }, + "printj": { + "version": "1.1.2", + "resolved": "http://registry.npmjs.org/printj/-/printj-1.1.2.tgz", + "integrity": "sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==" + }, "private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" }, "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=" }, "process-nextick-args": { "version": "2.0.0", @@ -10200,12 +11279,12 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, "proxy-addr": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz", - "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", "requires": { - "forwarded": "0.1.2", - "ipaddr.js": "1.6.0" + "forwarded": "~0.1.2", + "ipaddr.js": "1.8.0" } }, "prr": { @@ -10218,16 +11297,21 @@ "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, + "psl": { + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==" + }, "public-encrypt": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", + "resolved": "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "parse-asn1": "5.1.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1" } }, "pump": { @@ -10235,18 +11319,18 @@ "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "pumpify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.4.0.tgz", - "integrity": "sha512-2kmNR9ry+Pf45opRVirpNuIFotsxUGLaYqxIwuR77AYrYRMuFCz9eryHBS52L360O+NcR383CL4QYlMKPq4zYA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", "requires": { - "duplexify": "3.5.4", - "inherits": "2.0.3", - "pump": "2.0.1" + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" } }, "punycode": { @@ -10255,60 +11339,52 @@ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "pushbullet": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/pushbullet/-/pushbullet-2.2.0.tgz", - "integrity": "sha512-ZzFHj9w8Wv5+472QM5F8wASBQBwsrG6vmxxW7f2mMMygYoAdPDhgq1755kfc9n0SPFNZ/2cHMfhja8t+jUOSGQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pushbullet/-/pushbullet-2.3.0.tgz", + "integrity": "sha512-h8d84JQMtxmFWGiDh7QNv+xKs23p9LvhW7w/PrF+4SUXf3bcAXD+jvcsdmmT+IpRyVFJXHXduZponDlgJlDjpQ==", "requires": { - "clone": "2.1.2", - "mime": "1.6.0", - "node-forge": "0.7.5", - "request": "2.85.0", - "request-promise-native": "1.0.5", - "websocket": "1.0.25" - }, - "dependencies": { - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - } + "clone": "^2.1.0", + "mime": "^2.3.1", + "node-forge": "^0.7.5", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "ws": "^6.0.0" } }, "pusher-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/pusher-js/-/pusher-js-4.2.2.tgz", - "integrity": "sha512-EjFE+PAC6lG7Ap3fhU7c2NyVul6DghNlEbiJVkcTca182U3b7iYgiQY8sQu9FCl5YmnOZ2L95RVYT9JM+YX9jQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/pusher-js/-/pusher-js-4.3.1.tgz", + "integrity": "sha512-qs2SNG7eFyALKDCsHqeKh/i8B9uW7QoaSR3CeUJE2xjYjg5saUCgvYx3cHwXaVTSAP43nVNb0InDiX49wp42Qg==", "requires": { "faye-websocket": "0.9.4", - "xmlhttprequest": "1.8.0" + "tweetnacl": "^1.0.0", + "tweetnacl-util": "^0.15.0", + "xmlhttprequest": "^1.8.0" + }, + "dependencies": { + "tweetnacl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.0.tgz", + "integrity": "sha1-cT2LgY2kIGh0C/aDhtBHnmb8ins=" + } } }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" - }, "qbox": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/qbox/-/qbox-0.1.7.tgz", "integrity": "sha1-6A8NxdCfhp2IghaMP2asjdKEDwI=" }, "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, "quadrigacx": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/quadrigacx/-/quadrigacx-0.0.7.tgz", "integrity": "sha1-vptrBG28vDpNqRbBpQtJ2kiulsQ=", "requires": { - "request": "2.85.0" + "request": "^2.53.0" } }, "query-string": { @@ -10316,9 +11392,9 @@ "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", "requires": { - "decode-uri-component": "0.2.0", - "object-assign": "4.1.1", - "strict-uri-encode": "1.1.0" + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" } }, "querystring": { @@ -10336,49 +11412,12 @@ "resolved": "https://registry.npmjs.org/random-port/-/random-port-0.1.0.tgz", "integrity": "sha1-v83GQLMt+CSs1DcR8axbeUP1RFM=" }, - "randomatic": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", - "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", - "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "1.1.6" - } - } - } - }, "randombytes": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.0" } }, "randomfill": { @@ -10386,82 +11425,60 @@ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "requires": { - "randombytes": "2.0.6", - "safe-buffer": "5.1.1" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, + "randomhex": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/randomhex/-/randomhex-0.1.5.tgz", + "integrity": "sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU=" + }, "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=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", "requires": { "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", "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=", + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.4.0" + "safer-buffer": ">= 2.1.2 < 3" } - }, - "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==" - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" } } }, "rc": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.6.tgz", - "integrity": "sha1-6xiYnG1PTxYsOZ953dKfODVWgJI=", - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - } - }, - "read-chunk": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/read-chunk/-/read-chunk-2.1.0.tgz", - "integrity": "sha1-agTAkoAF7Z1C4aasVgDhnLx/9lU=", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "requires": { - "pify": "3.0.0", - "safe-buffer": "5.1.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" } }, "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-4.0.1.tgz", + "integrity": "sha1-ljYlN48+HE1IyFhytabsfV0JMjc=", "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "normalize-package-data": "^2.3.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0" } }, "read-pkg-up": { @@ -10469,8 +11486,8 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { @@ -10478,8 +11495,8 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "path-exists": { @@ -10487,72 +11504,59 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } } } }, "readable-stream": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.1", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "readable-stream": "2.3.6", - "set-immediate-shim": "1.0.1" - } - }, - "recast": { - "version": "0.14.7", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.14.7.tgz", - "integrity": "sha512-/nwm9pkrcWagN40JeJhkPaRxiHXBRkXyRh/hgU088Z/v+qCy+zIHHY6bC6o7NaKAxPqtE6nD8zBH1LfU0/Wx6A==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "requires": { - "ast-types": "0.11.3", - "esprima": "4.0.0", - "private": "0.1.8", - "source-map": "0.6.1" - }, - "dependencies": { - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "rechoir": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, "requires": { - "resolve": "1.1.7" + "resolve": "^1.1.6" } }, "reconnect-core": { "version": "https://github.com/dodo/reconnect-core/tarball/merged", "integrity": "sha512-wZK/v5ZaNaSUs2Wnwh2YSX/Jqv6bQHKNEwojdzV11tByKziR9ikOssf5tvUhx+8/oCBz6AakOFAjZuqPoiRHJQ==", "requires": { - "backoff": "2.3.0" + "backoff": "~2.3.0" } }, "redent": { @@ -10560,56 +11564,24 @@ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" }, "dependencies": { - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "requires": { - "get-stdin": "4.0.1" + "repeating": "^2.0.0" } } } }, - "reduce-css-calc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", - "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", - "requires": { - "balanced-match": "0.4.2", - "math-expression-evaluator": "1.2.17", - "reduce-function-call": "1.0.2" - }, - "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" - } - } - }, - "reduce-function-call": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", - "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", - "requires": { - "balanced-match": "0.4.2" - }, - "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" - } - } - }, "regenerate": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==" }, "regenerator-runtime": { "version": "0.11.1", @@ -10621,17 +11593,9 @@ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", "requires": { - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "private": "0.1.8" - } - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "requires": { - "is-equal-shallow": "0.1.3" + "babel-runtime": "^6.18.0", + "babel-types": "^6.19.0", + "private": "^0.1.6" } }, "regex-not": { @@ -10639,8 +11603,8 @@ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "regex-parser": { @@ -10659,9 +11623,9 @@ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", "requires": { - "regenerate": "1.3.3", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" } }, "regjsgen": { @@ -10674,7 +11638,7 @@ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", "requires": { - "jsesc": "0.5.0" + "jsesc": "~0.5.0" }, "dependencies": { "jsesc": { @@ -10695,9 +11659,9 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" }, "repeat-string": { "version": "1.6.1", @@ -10709,52 +11673,34 @@ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, - "replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" - }, "request": { - "version": "2.85.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", - "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", - "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.2", - "har-validator": "5.0.3", - "hawk": "6.0.2", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.2.1" - }, - "dependencies": { - "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" - } - } + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" } }, "request-promise": { @@ -10762,10 +11708,10 @@ "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", "requires": { - "bluebird": "3.5.1", + "bluebird": "^3.5.0", "request-promise-core": "1.1.1", - "stealthy-require": "1.1.1", - "tough-cookie": "2.3.4" + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" } }, "request-promise-core": { @@ -10773,7 +11719,7 @@ "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", "requires": { - "lodash": "4.17.5" + "lodash": "^4.13.1" } }, "request-promise-native": { @@ -10782,8 +11728,8 @@ "integrity": "sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU=", "requires": { "request-promise-core": "1.1.1", - "stealthy-require": "1.1.1", - "tough-cookie": "2.3.4" + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" } }, "require-directory": { @@ -10807,8 +11753,8 @@ "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", "dev": true, "requires": { - "caller-path": "0.1.0", - "resolve-from": "1.0.1" + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" }, "dependencies": { "resolve-from": { @@ -10824,21 +11770,24 @@ "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", "requires": { - "resolve-from": "2.0.0", - "semver": "5.5.0" + "resolve-from": "^2.0.0", + "semver": "^5.1.0" } }, "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "requires": { + "path-parse": "^1.0.5" + } }, "resolve-cwd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", "requires": { - "resolve-from": "3.0.0" + "resolve-from": "^3.0.0" }, "dependencies": { "resolve-from": { @@ -10848,15 +11797,6 @@ } } }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "requires": { - "expand-tilde": "2.0.2", - "global-modules": "1.0.0" - } - }, "resolve-from": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", @@ -10868,43 +11808,80 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, "resolve-url-loader": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-2.3.0.tgz", - "integrity": "sha512-RaEUWgF/B6aTg9VKaOv2o6dfm5f75/lGh8S+SQwoMcBm48WkA2nhLR+V7KEawkxXjU4lLB16IVeHCe7F69nyVw==", - "requires": { - "adjust-sourcemap-loader": "1.2.0", - "camelcase": "4.1.0", - "convert-source-map": "1.5.1", - "loader-utils": "1.1.0", - "lodash.defaults": "4.2.0", - "rework": "1.0.1", - "rework-visit": "1.0.0", - "source-map": "0.5.7", - "urix": "0.1.0" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-3.0.0.tgz", + "integrity": "sha512-ZzRUnpu+pLkrN2ZBsEEifOD6W+9ZNtdIu+kY3vs+11PwuZ2WykxbAY9qO+S9SmasSDRllxNdSm9IhN8HU4xGKg==", + "requires": { + "adjust-sourcemap-loader": "^1.1.0", + "camelcase": "^4.1.0", + "compose-function": "^3.0.3", + "convert-source-map": "^1.5.1", + "es6-iterator": "^2.0.3", + "loader-utils": "^1.1.0", + "lodash.defaults": "^4.0.0", + "postcss": "^7.0.0", + "rework": "^1.0.1", + "rework-visit": "^1.0.0", + "source-map": "^0.5.7" }, "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "postcss": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.4.tgz", + "integrity": "sha512-Bg1BrMZGKNOI0mkn8NtjJrOrZKgoHrl+geKJ45mTOkeY4WCsYq/mjd1BUWRgRvydHP/lA07Ys2n9m6Va5FsEsw==", + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } } } }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", - "requires": { - "lowercase-keys": "1.0.1" - } - }, "restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } }, "ret": { @@ -10913,22 +11890,22 @@ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" }, "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=" + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=" }, "rework": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", "integrity": "sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc=", "requires": { - "convert-source-map": "0.3.5", - "css": "2.2.1" + "convert-source-map": "^0.3.3", + "css": "^2.0.0" }, "dependencies": { "convert-source-map": { "version": "0.3.5", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", + "resolved": "http://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", "integrity": "sha1-8dgClQr33SYxof6+BZZVDIarMZA=" } } @@ -10943,7 +11920,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "ripemd160": { @@ -10951,8 +11928,16 @@ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rlp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.1.0.tgz", + "integrity": "sha512-93U7IKH5j7nmXFVg19MeNBGzQW5uXW1pmCuKY8veeKIhYTE32C2d0mOegfiIAfXcHOKJjjPlJisn8iHDF5AezA==", + "requires": { + "safe-buffer": "^5.1.1" } }, "round-precision": { @@ -10961,8 +11946,8 @@ "integrity": "sha1-9aK+t+1Z5v6FMS+/VTdpEC6o9k8=", "dev": true, "requires": { - "is-finite": "1.0.2", - "is-integer": "1.0.7" + "is-finite": "~1.0.1", + "is-integer": "~1.0.4" } }, "run-async": { @@ -10970,13 +11955,18 @@ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "requires": { - "is-promise": "2.1.0" + "is-promise": "^2.1.0" } }, + "run-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz", + "integrity": "sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==" + }, "run-parallel-limit": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.0.4.tgz", - "integrity": "sha512-zpNZCoIA+x0fWw2tiD15lrGecycMbao/n4uBER53pcW5GB9TUEu4pZxd5CTgXLBh2MwI0E4nhRv7xymfo592vA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.0.5.tgz", + "integrity": "sha512-NsY+oDngvrvMxKB3G8ijBzIema6aYbQMD2bHOamvN52BysbIGTnEY2xsNyfrcr9GhY995/t/0nQN3R3oZvaDlg==", "dev": true }, "run-queue": { @@ -10984,7 +11974,7 @@ "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "requires": { - "aproba": "1.2.0" + "aproba": "^1.1.1" } }, "rx": { @@ -10992,32 +11982,12 @@ "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=" }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", - "requires": { - "rx-lite": "4.0.8" - } - }, "rxjs": { - "version": "5.5.10", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.10.tgz", - "integrity": "sha512-SRjimIDUHJkon+2hFo7xnvNC4ZEHGzCRwh9P7nzX3zPkCGFEg/tuElrNR7L/rZMagnK2JeH2jQwPRpmyXyLB6A==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "requires": { - "symbol-observable": "1.0.1" - }, - "dependencies": { - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=" - } + "tslib": "^1.9.0" } }, "s-deviation": { @@ -11025,20 +11995,20 @@ "resolved": "https://registry.npmjs.org/s-deviation/-/s-deviation-2.0.3.tgz", "integrity": "sha512-+HPtx5bqltCRCZPHmg7/qyscCbWef7un+/CxvmqNCyraSRjjdcUSfwP7RUjzFaidwfSTXVB1vYSd3q5d+s2YPw==", "requires": { - "moving-averages": "4.0.5" + "moving-averages": "^4.0.2" } }, "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "safer-buffer": { @@ -11046,15 +12016,24 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "saslprep": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.2.tgz", + "integrity": "sha512-4cDsYuAjXssUSjxHKRe4DTZC0agDwsCqcMqtJAQPzC74nJ7LfAJflAtC1Zed5hMzEQKj82d3tuzqdGNRsLJ4Gw==", + "optional": true, + "requires": { + "sparse-bitfield": "^3.0.3" + } + }, "sass-graph": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", "requires": { - "glob": "7.1.2", - "lodash": "4.17.5", - "scss-tokenizer": "0.2.3", - "yargs": "7.1.0" + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^7.0.0" }, "dependencies": { "camelcase": { @@ -11067,7 +12046,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -11075,9 +12054,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "yargs": { @@ -11085,33 +12064,34 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", "requires": { - "camelcase": "3.0.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", - "y18n": "3.2.1", - "yargs-parser": "5.0.0" + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" } } } }, "sass-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.0.1.tgz", - "integrity": "sha512-MeVVJFejJELlAbA7jrRchi88PGP6U9yIfqyiG+bBC4a9s2PX+ulJB9h8bbEohtPBfZmlLhNZ0opQM9hovRXvlw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", "requires": { - "clone-deep": "2.0.2", - "loader-utils": "1.1.0", - "lodash.tail": "4.1.1", - "neo-async": "2.5.1", - "pify": "3.0.0" + "clone-deep": "^2.0.1", + "loader-utils": "^1.0.1", + "lodash.tail": "^4.1.1", + "neo-async": "^2.5.0", + "pify": "^3.0.0", + "semver": "^5.5.0" } }, "sax": { @@ -11120,39 +12100,69 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "schema-utils": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", - "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "requires": { - "ajv": "6.4.0", - "ajv-keywords": "3.1.0" + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" }, "dependencies": { "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" } } }, - "scoped-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/scoped-regex/-/scoped-regex-1.0.0.tgz", - "integrity": "sha1-o0a7Gs1CB65wvXwMfKnlZra63bg=" + "scrypt": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/scrypt/-/scrypt-6.0.3.tgz", + "integrity": "sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0=", + "requires": { + "nan": "^2.0.8" + } + }, + "scrypt.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/scrypt.js/-/scrypt.js-0.2.0.tgz", + "integrity": "sha1-r40UZbcemZARC+38WTuUeeA6ito=", + "requires": { + "scrypt": "^6.0.2", + "scryptsy": "^1.2.1" + } + }, + "scryptsy": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", + "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", + "requires": { + "pbkdf2": "^3.0.3" + } }, "scss-tokenizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", "requires": { - "js-base64": "2.4.3", - "source-map": "0.4.4" + "js-base64": "^2.1.8", + "source-map": "^0.4.2" }, "dependencies": { "source-map": { @@ -11160,20 +12170,58 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } }, + "secp256k1": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.5.2.tgz", + "integrity": "sha512-iin3kojdybY6NArd+UFsoTuapOF7bnJNf2UbcWXaY3z+E1sJDipl60vtzB5hbO/uquBu7z0fd4VC4Irp+xoFVQ==", + "requires": { + "bindings": "^1.2.1", + "bip66": "^1.1.3", + "bn.js": "^4.11.3", + "create-hash": "^1.1.2", + "drbg.js": "^1.0.1", + "elliptic": "^6.2.3", + "nan": "^2.2.1", + "safe-buffer": "^5.1.0" + } + }, "seed-random": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/seed-random/-/seed-random-2.2.0.tgz", "integrity": "sha1-KpsZ4lCoFwmSMaW5mk2vgLf77VQ=" }, + "seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "requires": { + "commander": "~2.8.1" + }, + "dependencies": { + "commander": { + "version": "2.8.1", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": ">= 1.0.0" + } + } + } + }, "semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==" + }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" }, "send": { "version": "0.16.2", @@ -11181,24 +12229,37 @@ "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", + "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", + "http-errors": "~1.6.2", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.4.0" + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" }, "dependencies": { + "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" + } + }, "mime": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" } } }, @@ -11212,31 +12273,38 @@ "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", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", "send": "0.16.2" } }, + "servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "requires": { + "body-parser": "^1.16.0", + "cors": "^2.8.1", + "express": "^4.14.0", + "request": "^2.79.0", + "xhr": "^2.3.3" + } + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" - }, "set-value": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -11244,7 +12312,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -11261,11 +12329,19 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "sha3": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/sha3/-/sha3-1.2.2.tgz", + "integrity": "sha1-pmxQmN5MJbyIM27ItIF9AFvKe6k=", + "requires": { + "nan": "2.10.0" } }, "shallow-clone": { @@ -11273,9 +12349,9 @@ "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", "requires": { - "is-extendable": "0.1.1", - "kind-of": "5.1.0", - "mixin-object": "2.0.1" + "is-extendable": "^0.1.1", + "kind-of": "^5.0.0", + "mixin-object": "^2.0.1" }, "dependencies": { "kind-of": { @@ -11290,7 +12366,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -11299,19 +12375,23 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" }, "shelljs": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.1.tgz", - "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==", + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.2.tgz", + "integrity": "sha512-pRXeNrCA2Wd9itwhvLp5LZQvPJ0wU6bcjaTMywHHGX5XWhVN2nzSu7WV0q+oUY7mGK3mgSkDDzP3MgjqdyIgbQ==", + "dev": true, "requires": { - "glob": "7.1.2", - "interpret": "1.1.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "shortid": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/shortid/-/shortid-2.2.8.tgz", - "integrity": "sha1-AzsRfWoul1gE9vCWnb59PQs1UTE=" + "version": "2.2.13", + "resolved": "https://registry.npmjs.org/shortid/-/shortid-2.2.13.tgz", + "integrity": "sha512-dBuNnQGKrJNfjunmXI2X7bl1gnMO4PwbNxrTzO1JvilODmL7WyyCtA+DYxe9XunLXmxmgzFIvKPQ6XRAQrr46Q==", + "requires": { + "nanoid": "^1.0.7" + } }, "signal-exit": { "version": "3.0.2", @@ -11320,10 +12400,25 @@ }, "signalr-client": { "version": "0.0.17", - "resolved": "https://registry.npmjs.org/signalr-client/-/signalr-client-0.0.17.tgz", + "resolved": "http://registry.npmjs.org/signalr-client/-/signalr-client-0.0.17.tgz", "integrity": "sha1-pSF383ziSOzIcibdEDxB/3DIKbE=", "requires": { - "websocket": "1.0.25" + "websocket": "^1.0.17" + } + }, + "simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=" + }, + "simple-get": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "requires": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" } }, "simple-xmpp": { @@ -11331,46 +12426,44 @@ "resolved": "https://registry.npmjs.org/simple-xmpp/-/simple-xmpp-1.3.0.tgz", "integrity": "sha1-sHfHIVHg9ZKbyak+H+58sihCgss=", "requires": { - "node-xmpp-client": "3.2.0", - "qbox": "0.1.7" + "node-xmpp-client": "^3.0.0", + "qbox": "0.1.x" } }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, "slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=" }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=" - }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.1", - "use": "3.1.0" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { + "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" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -11378,7 +12471,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -11388,9 +12481,9 @@ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "dependencies": { "define-property": { @@ -11398,7 +12491,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -11406,7 +12499,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -11414,7 +12507,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -11422,20 +12515,10 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" } } }, @@ -11444,23 +12527,17 @@ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "requires": { - "kind-of": "3.2.2" - } - }, - "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", - "requires": { - "hoek": "4.2.1" - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "requires": { - "is-plain-obj": "1.1.0" + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "source-list-map": { @@ -11474,23 +12551,15 @@ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, "source-map-resolve": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", - "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", - "requires": { - "atob": "2.1.0", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" - } - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "requires": { - "source-map": "0.5.7" + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-url": { @@ -11498,13 +12567,22 @@ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, + "sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "optional": true, + "requires": { + "memory-pager": "^1.0.2" + } + }, "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.1.tgz", + "integrity": "sha512-hxSPZbRZvSDuOvADntOElzJpenIR7wXJkuoUcUtS0erbgt2fgeaoPIYretfKpslMhfFDY4k0MZ2F5CUzhBsSvQ==", "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -11517,21 +12595,21 @@ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz", + "integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==" }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "sprintf-js": { @@ -11540,18 +12618,19 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz", - "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" } }, "ssri": { @@ -11559,7 +12638,7 @@ "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.1.1" } }, "stack-trace": { @@ -11567,11 +12646,6 @@ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" }, - "stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=" - }, "staged-git-files": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/staged-git-files/-/staged-git-files-1.1.1.tgz", @@ -11582,8 +12656,8 @@ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -11591,30 +12665,30 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } }, "stats-lite": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/stats-lite/-/stats-lite-2.1.0.tgz", - "integrity": "sha1-R2hU/biNA1xJvLv/cEyNhe6Esbo=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stats-lite/-/stats-lite-2.2.0.tgz", + "integrity": "sha512-/Kz55rgUIv2KP2MKphwYT/NCuSfAlbbMRv2ZWw7wyXayu230zdtzhxxuXXcvsc6EmmhS8bSJl3uS1wmMHFumbA==", "requires": { - "isnumber": "1.0.0" + "isnumber": "~1.0.0" } }, "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stdout-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz", - "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.1" } }, "stealthy-require": { @@ -11627,29 +12701,29 @@ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" } }, "stream-each": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.2.tgz", - "integrity": "sha512-mc1dbFhGBxvTM3bIWmAAINbqiuAk9TATcfIQC8P+/+HJefgaiTlMn2dHvkX8qlI12KeYKSQ1Ua9RrIqrn1VPoA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "requires": { - "end-of-stream": "1.4.1", - "stream-shift": "1.0.0" + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" } }, "stream-http": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.1.tgz", - "integrity": "sha512-cQ0jo17BLca2r0GfRdZKYAGLU6JRoIWxqSOakUMuKOT6MOK7AAlE856L33QuDmAy/eeOrhLee3dZKX0Uadu93A==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "requires": { - "builtin-status-codes": "3.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "to-arraybuffer": "1.0.1", - "xtend": "4.0.1" + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" } }, "stream-shift": { @@ -11657,14 +12731,6 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" }, - "stream-to-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.2.0.tgz", - "integrity": "sha1-WdbqOT2HwsDdrBCqDVYbxrpvDhA=", - "requires": { - "any-observable": "0.2.0" - } - }, "strict-uri-encode": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", @@ -11675,18 +12741,13 @@ "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.0.2.tgz", "integrity": "sha1-2sMECGkMIfPDYwo/86BYd73L1zY=" }, - "string-template": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", - "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=" - }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { @@ -11699,7 +12760,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -11709,7 +12770,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "stringify-object": { @@ -11717,22 +12778,17 @@ "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.2.2.tgz", "integrity": "sha512-O696NF21oLiDy8PhpWu8AEqoZHw++QW6mUv0UvKZe8gWSdSvMXkiLufK7OmnP27Dro4GU5kb9U7JIO0mBuCRQg==", "requires": { - "get-own-enumerable-property-symbols": "2.0.1", - "is-obj": "1.0.1", - "is-regexp": "1.0.0" + "get-own-enumerable-property-symbols": "^2.0.1", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" } }, - "stringstream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" - }, "strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-bom": { @@ -11740,16 +12796,15 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, - "strip-bom-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz", - "integrity": "sha1-+H217yYT9paKpUWr/h7HKLaoKco=", + "strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", "requires": { - "first-chunk-stream": "2.0.0", - "strip-bom": "2.0.0" + "is-natural-number": "^4.0.1" } }, "strip-eof": { @@ -11757,10 +12812,28 @@ "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "requires": { + "is-hex-prefixed": "1.0.0" + } + }, "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "^4.0.1" + }, + "dependencies": { + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + } + } }, "strip-json-comments": { "version": "2.0.1", @@ -11768,39 +12841,31 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" }, "style-loader": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.21.0.tgz", - "integrity": "sha512-T+UNsAcl3Yg+BsPKs1vd22Fr8sVT+CJMtzqc6LEw9bbJZb43lm9GoeIfUcDEefBSWC0BhYbcdupV1GtI4DGzxg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.0.tgz", + "integrity": "sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ==", "requires": { - "loader-utils": "1.1.0", - "schema-utils": "0.4.5" + "loader-utils": "^1.1.0", + "schema-utils": "^0.4.5" } }, "superagent": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.2.tgz", - "integrity": "sha512-gVH4QfYHcY3P0f/BZzavLreHW3T1v7hG9B+hpMQotGQqurOvhv87GcMCd6LWySmBuf+BDR44TQd0aISjVHLeNQ==", - "requires": { - "component-emitter": "1.2.1", - "cookiejar": "2.1.1", - "debug": "3.1.0", - "extend": "3.0.1", - "form-data": "2.3.2", - "formidable": "1.2.1", - "methods": "1.1.2", - "mime": "1.6.0", - "qs": "6.5.1", - "readable-stream": "2.3.6" + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", + "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", + "requires": { + "component-emitter": "^1.2.0", + "cookiejar": "^2.1.0", + "debug": "^3.1.0", + "extend": "^3.0.0", + "form-data": "^2.3.1", + "formidable": "^1.2.0", + "methods": "^1.1.1", + "mime": "^1.4.1", + "qs": "^6.5.1", + "readable-stream": "^2.3.5" }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -11813,36 +12878,30 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" }, - "svgo": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", - "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", - "requires": { - "coa": "1.0.4", - "colors": "1.1.2", - "csso": "2.3.2", - "js-yaml": "3.7.0", - "mkdirp": "0.5.1", - "sax": "1.2.4", - "whet.extend": "0.9.9" - }, - "dependencies": { - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" - } + "swarm-js": { + "version": "0.1.37", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.37.tgz", + "integrity": "sha512-G8gi5fcXP/2upwiuOShJ258sIufBVztekgobr3cVgYXObZwJ5AXLqZn52AI+/ffft29pJexF9WNdUxjlkVehoQ==", + "requires": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "decompress": "^4.0.0", + "eth-lib": "^0.1.26", + "fs-extra": "^2.1.2", + "fs-promise": "^2.0.0", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar.gz": "^1.0.5", + "xhr-request-promise": "^0.1.2" } }, "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=" - }, - "symbol-tree": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz", - "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==" }, "table": { "version": "4.0.2", @@ -11850,12 +12909,12 @@ "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", "dev": true, "requires": { - "ajv": "5.5.2", - "ajv-keywords": "2.1.1", - "chalk": "2.4.0", - "lodash": "4.17.5", + "ajv": "^5.2.3", + "ajv-keywords": "^2.1.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", "slice-ansi": "1.0.0", - "string-width": "2.1.1" + "string-width": "^2.1.1" }, "dependencies": { "ajv-keywords": { @@ -11870,98 +12929,132 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, "slice-ansi": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0" + "is-fullwidth-code-point": "^2.0.0" } }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, "talib": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/talib/-/talib-1.0.4.tgz", - "integrity": "sha512-s4QITrKVUZ4feHl78296sMKLRWBG8dbuBPE0nr8NHVJimzrz1GVI27PBfBHlx0Bx1+Bmu8/6IbQM+84x0B0eKQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/talib/-/talib-1.0.5.tgz", + "integrity": "sha512-lR/6bwDugRG9iqTu4rM/jGKG2SL5qTvVnQzlhM4/Sns4jIJ+IDhoD9K7fuvpjgdY13b5yAAtixKLcQCNoqrvCw==", "requires": { - "nan": "2.10.0" + "nan": "^2.10.0" } }, "tapable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", - "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz", + "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==" }, "tar": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" + "block-stream": "*", + "fstream": "^1.0.2", + "inherits": "2" } }, - "temp": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", - "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", "requires": { - "os-tmpdir": "1.0.2", - "rimraf": "2.2.8" + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" }, "dependencies": { - "rimraf": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", - "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=" + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + } + } + }, + "tar.gz": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/tar.gz/-/tar.gz-1.0.7.tgz", + "integrity": "sha512-uhGatJvds/3diZrETqMj4RxBR779LKlIE74SsMcn5JProZsfs9j0QBwWO1RW+IWNJxS2x8Zzra1+AW6OQHWphg==", + "requires": { + "bluebird": "^2.9.34", + "commander": "^2.8.1", + "fstream": "^1.0.8", + "mout": "^0.11.0", + "tar": "^2.1.1" + }, + "dependencies": { + "bluebird": { + "version": "2.11.0", + "resolved": "http://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz", + "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=" } } }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true }, - "textextensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.2.0.tgz", - "integrity": "sha512-j5EMxnryTvKxwH2Cq+Pb43tsf6sdEgw6Pdwxk83mPaq0ToeFJt6WE4J3s5BqY7vmjlLgkgXvhtXUxo80FyBhCA==" + "thenify": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", + "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "requires": { + "thenify": ">= 3.1.0 < 4" + } }, "through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, "through2": { @@ -11969,8 +13062,8 @@ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" } }, "timebucket": { @@ -11978,7 +13071,7 @@ "resolved": "https://registry.npmjs.org/timebucket/-/timebucket-0.4.0.tgz", "integrity": "sha1-2H9xqMhrjqq95zX3qcSzJc6ZhXw=", "requires": { - "moment": "2.22.1" + "moment": "^2.13.0" } }, "timed-out": { @@ -11991,7 +13084,7 @@ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "requires": { - "setimmediate": "1.0.5" + "setimmediate": "^1.0.4" } }, "tiny-emitter": { @@ -12004,7 +13097,7 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.2" } }, "to-arraybuffer": { @@ -12012,6 +13105,11 @@ "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -12022,7 +13120,17 @@ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, "to-regex": { @@ -12030,52 +13138,28 @@ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "3.2.2" - } - } - } - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "requires": { - "punycode": "1.4.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", "requires": { - "punycode": "2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=" - } + "psl": "^1.1.24", + "punycode": "^1.4.1" } }, "trend": { @@ -12083,6 +13167,11 @@ "resolved": "https://registry.npmjs.org/trend/-/trend-0.3.0.tgz", "integrity": "sha1-MA6kPSYYydVrA/JJcwn4VY63i4k=" }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" + }, "trim-newlines": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", @@ -12094,41 +13183,32 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" }, "true-case-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz", - "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", "requires": { - "glob": "6.0.4" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - } + "glob": "^7.1.2" } }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==" + }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, "tulind": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/tulind/-/tulind-0.8.10.tgz", - "integrity": "sha1-/VB5TJxfGOCp870CJT6/JLu93DE=", + "version": "0.8.13", + "resolved": "https://registry.npmjs.org/tulind/-/tulind-0.8.13.tgz", + "integrity": "sha512-UryZ4grdTSY/ZdBD/KI0hQRI1OLxCjYcEliSx4B06lP75Y4MXSvAHYkjZunkXlerJy44Q3PiVVm3dkQHwvm4VA==", "requires": { - "bindings": "1.3.0", - "minctest": "0.0.2", - "nan": "2.10.0", - "node-pre-gyp": "0.9.1" + "bindings": "^1.3.0", + "minctest": "0.0.x", + "nan": "^2.10.0", + "node-pre-gyp": "^0.10.3" } }, "tunnel-agent": { @@ -12136,7 +13216,7 @@ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.0.1" } }, "tweetnacl": { @@ -12145,12 +13225,18 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", "optional": true }, + "tweetnacl-util": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.0.tgz", + "integrity": "sha1-RXbBzuXi1j0gf+5S8boCgZSAvHU=" + }, "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, "requires": { - "prelude-ls": "1.1.2" + "prelude-ls": "~1.1.2" } }, "type-is": { @@ -12159,13 +13245,13 @@ "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", "requires": { "media-typer": "0.3.0", - "mime-types": "2.1.18" + "mime-types": "~2.1.18" } }, "typed-function": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-1.0.3.tgz", - "integrity": "sha512-sVC/1pm70oELDFMdYtFXMFqyawenLoaDiAXA3QvOAwKF/WvFNTSJN23cY2lFNL8iP0kh3T0PPKewrboO8XUVGQ==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-1.1.0.tgz", + "integrity": "sha512-TuQzwiT4DDg19beHam3E66oRXhyqlyfgjHB/5fcvsRXbfmWPJfto9B4a0TBdTrQAPGlGmXh/k7iUI+WsObgORA==" }, "typedarray": { "version": "0.0.6", @@ -12177,7 +13263,7 @@ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "requires": { - "is-typedarray": "1.0.0" + "is-typedarray": "^1.0.0" } }, "uglify-es": { @@ -12185,8 +13271,8 @@ "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", "requires": { - "commander": "2.13.0", - "source-map": "0.6.1" + "commander": "~2.13.0", + "source-map": "~0.6.1" }, "dependencies": { "commander": { @@ -12202,18 +13288,18 @@ } }, "uglifyjs-webpack-plugin": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz", - "integrity": "sha512-hIQJ1yxAPhEA2yW/i7Fr+SXZVMp+VEI3d42RTHBgQd2yhp/1UdBcR3QEWPV5ahBxlqQDMEMTuTEvDHSFINfwSw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", "requires": { - "cacache": "10.0.4", - "find-cache-dir": "1.0.0", - "schema-utils": "0.4.5", - "serialize-javascript": "1.5.0", - "source-map": "0.6.1", - "uglify-es": "3.3.9", - "webpack-sources": "1.1.0", - "worker-farm": "1.6.0" + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" }, "dependencies": { "source-map": { @@ -12228,6 +13314,32 @@ "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" }, + "unbzip2-stream": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.0.tgz", + "integrity": "sha512-kE2WkurNnPUMcryNioS68DDbhoPB8Qxsd8btHSj+sd5Pjh2GsjmeHLzMSqV9HHziAo8FzVxVCJl9ZYhk7yY1pA==", + "requires": { + "buffer": "^3.0.1", + "through": "^2.3.6" + }, + "dependencies": { + "base64-js": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", + "integrity": "sha1-EQHpVE9KdrG8OybUUsqW16NeeXg=" + }, + "buffer": { + "version": "3.6.0", + "resolved": "http://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz", + "integrity": "sha1-pyyTb3e5a/UvX357RnGAYoVR3vs=", + "requires": { + "base64-js": "0.0.8", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + } + } + }, "underscore": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz", @@ -12238,10 +13350,10 @@ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -12249,7 +13361,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -12257,46 +13369,28 @@ "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" - }, - "uniqid": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-4.1.1.tgz", - "integrity": "sha1-iSIN32t1GuUrX3JISGNShZa7hME=", - "requires": { - "macaddress": "0.2.8" - } - }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=" - }, "unique-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", - "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "unique-slug": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz", - "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", "requires": { - "imurmurhash": "0.1.4" + "imurmurhash": "^0.1.4" } }, "unpipe": { @@ -12309,8 +13403,8 @@ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -12318,9 +13412,9 @@ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -12337,36 +13431,26 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" } } }, - "untildify": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-3.0.2.tgz", - "integrity": "sha1-fx8wIFWz/qDz6B3HjrNnZstl4/E=" - }, "upath": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.0.4.tgz", - "integrity": "sha512-d4SJySNBXDaQp+DPrziv3xGS6w3d2Xt69FijJr86zMPBy23JEloMCEOUBBzuN7xCtjLCnmB9tI/z7SBCahHBOw==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==" }, "uri-js": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", - "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "requires": { - "punycode": "2.1.0" + "punycode": "^2.1.0" }, "dependencies": { "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" } } }, @@ -12391,62 +13475,83 @@ } } }, - "url-join": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.0.tgz", - "integrity": "sha1-TTNA6AfTdzvamZH4MFrNzCpmXSo=" - }, "url-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.0.1.tgz", - "integrity": "sha512-rAonpHy7231fmweBKUFe0bYnlGDty77E+fm53NZdij7j/YOpyGzc7ttqG1nAXl3aRs0k41o0PC3TvGXQiw2Zvw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.1.tgz", + "integrity": "sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg==", "requires": { - "loader-utils": "1.1.0", - "mime": "2.3.1", - "schema-utils": "0.4.5" + "loader-utils": "^1.1.0", + "mime": "^2.0.3", + "schema-utils": "^1.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "requires": { - "prepend-http": "2.0.0" + "prepend-http": "^1.0.1" } }, + "url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" + }, "url-to-options": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" }, "use": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", - "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", - "requires": { - "kind-of": "6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - } - } + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "utf8": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.1.tgz", + "integrity": "sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g=" }, "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", "requires": { - "inherits": "2.0.1" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - } + "inherits": "2.0.3" } }, "util-deprecate": { @@ -12454,28 +13559,37 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" }, "v8-compile-cache": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-1.1.2.tgz", - "integrity": "sha512-ejdrifsIydN1XDH7EuR2hn8ZrkRKUYF7tUcBjBy/lhrCvs2K+zRlbW9UHc0IQ9RsYFZJFqJrieoIHfkCa0DBRA==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz", + "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==" }, "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "vary": { @@ -12483,290 +13597,489 @@ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, - "vendors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.2.tgz", - "integrity": "sha512-w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ==" - }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, - "vinyl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", "requires": { - "clone": "1.0.4", - "clone-stats": "0.0.1", - "replace-ext": "0.0.1" + "indexof": "0.0.1" } }, - "vinyl-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-2.0.0.tgz", - "integrity": "sha1-p+v1/779obfRjRQPyweyI++2dRo=", + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, + "waypoints": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/waypoints/-/waypoints-4.0.1.tgz", + "integrity": "sha1-CZeaBXOBCylifLpDZqKEoGLsacg=" + }, + "web3": { + "version": "1.0.0-beta.34", + "resolved": "http://registry.npmjs.org/web3/-/web3-1.0.0-beta.34.tgz", + "integrity": "sha1-NH5WG3hAmMtVYzFfSQR5odkfKrE=", + "requires": { + "web3-bzz": "1.0.0-beta.34", + "web3-core": "1.0.0-beta.34", + "web3-eth": "1.0.0-beta.34", + "web3-eth-personal": "1.0.0-beta.34", + "web3-net": "1.0.0-beta.34", + "web3-shh": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + } + }, + "web3-bzz": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.0.0-beta.34.tgz", + "integrity": "sha1-Bo03d3q2Xlxg+OyLmlDP5FJ3kpw=", "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0", - "strip-bom-stream": "2.0.0", - "vinyl": "1.2.0" + "got": "7.1.0", + "swarm-js": "0.1.37", + "underscore": "1.8.3" }, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" } } }, - "vm-browserify": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "web3-core": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.0.0-beta.34.tgz", + "integrity": "sha1-EhvoVV6fsA0sXQXd0zgdDJ5GmH4=", "requires": { - "indexof": "0.0.1" + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-core-requestmanager": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" } }, - "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "web3-core-helpers": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.34.tgz", + "integrity": "sha1-sWjaANPhnhVrwVriAyA91N/uLQM=", "requires": { - "browser-process-hrtime": "0.1.2" + "underscore": "1.8.3", + "web3-eth-iban": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } } }, - "watchpack": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.5.0.tgz", - "integrity": "sha512-RSlipNQB1u48cq0wH/BNfCu1tD/cJ8ydFIkNYhp9o+3d+8unClkIovpW5qpFPgmL9OE48wfAnlZydXByWP82AA==", + "web3-core-method": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.0.0-beta.34.tgz", + "integrity": "sha1-7BY8iixJD6AqfsFVWfpzB/x8xt0=", "requires": { - "chokidar": "2.0.3", - "graceful-fs": "4.1.11", - "neo-async": "2.5.1" + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-promievent": "1.0.0-beta.34", + "web3-core-subscriptions": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } } }, - "waypoints": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/waypoints/-/waypoints-4.0.1.tgz", - "integrity": "sha1-CZeaBXOBCylifLpDZqKEoGLsacg=" - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" + "web3-core-promievent": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.34.tgz", + "integrity": "sha1-pPT6Z4S7KT6CxglgrltWqUzQPtw=", + "requires": { + "any-promise": "1.3.0", + "eventemitter3": "1.1.1" + }, + "dependencies": { + "eventemitter3": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" + } + } }, - "webpack": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.6.0.tgz", - "integrity": "sha512-Fu/k/3fZeGtIhuFkiYpIy1UDHhMiGKjG4FFPVuvG+5Os2lWA1ttWpmi9Qnn6AgfZqj9MvhZW/rmj/ip+nHr06g==", - "requires": { - "acorn": "5.5.3", - "acorn-dynamic-import": "3.0.0", - "ajv": "6.4.0", - "ajv-keywords": "3.1.0", - "chrome-trace-event": "0.1.3", - "enhanced-resolve": "4.0.0", - "eslint-scope": "3.7.1", - "loader-runner": "2.3.0", - "loader-utils": "1.1.0", - "memory-fs": "0.4.1", - "micromatch": "3.1.10", - "mkdirp": "0.5.1", - "neo-async": "2.5.1", - "node-libs-browser": "2.1.0", - "schema-utils": "0.4.5", - "tapable": "1.0.0", - "uglifyjs-webpack-plugin": "1.2.5", - "watchpack": "1.5.0", - "webpack-sources": "1.1.0" + "web3-core-requestmanager": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.34.tgz", + "integrity": "sha1-Afj2zyrmtvC3DDi64e90G1urIVw=", + "requires": { + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34", + "web3-providers-http": "1.0.0-beta.34", + "web3-providers-ipc": "1.0.0-beta.34", + "web3-providers-ws": "1.0.0-beta.34" }, "dependencies": { - "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", - "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" - } + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" } } }, - "webpack-addons": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/webpack-addons/-/webpack-addons-1.1.5.tgz", - "integrity": "sha512-MGO0nVniCLFAQz1qv22zM02QPjcpAoJdy7ED0i3Zy7SY1IecgXCm460ib7H/Wq7e9oL5VL6S2BxaObxwIcag0g==", + "web3-core-subscriptions": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.34.tgz", + "integrity": "sha1-n+0UQDPyIcPPIQYDAv/a9e8t4t4=", "requires": { - "jscodeshift": "0.4.1" + "eventemitter3": "1.1.1", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34" }, "dependencies": { - "ast-types": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.10.1.tgz", - "integrity": "sha512-UY7+9DPzlJ9VM8eY0b2TUZcZvF+1pO0hzMtAyjBYKhOmnvRlqYNYnWdtsMj0V16CGaMlpL0G1jnLbLo4AyotuQ==" + "eventemitter3": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.1.1.tgz", + "integrity": "sha1-R3hr2qCHyvext15zq8XH1UAVjNA=" }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-eth": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.0.0-beta.34.tgz", + "integrity": "sha1-dAhgAIUMb+b1Ne9Jg31tS7YRMmg=", + "requires": { + "underscore": "1.8.3", + "web3-core": "1.0.0-beta.34", + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-core-subscriptions": "1.0.0-beta.34", + "web3-eth-abi": "1.0.0-beta.34", + "web3-eth-accounts": "1.0.0-beta.34", + "web3-eth-contract": "1.0.0-beta.34", + "web3-eth-iban": "1.0.0-beta.34", + "web3-eth-personal": "1.0.0-beta.34", + "web3-net": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-eth-abi": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.34.tgz", + "integrity": "sha1-A0Uz46ovfln/MXk+rqaFwO1a9no=", + "requires": { + "bn.js": "4.11.6", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" }, - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-eth-accounts": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.34.tgz", + "integrity": "sha1-4JFC7uzHl6w0WbdemyOUbTaV8zM=", + "requires": { + "any-promise": "1.3.0", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.7", + "scrypt.js": "0.2.0", + "underscore": "1.8.3", + "uuid": "2.0.1", + "web3-core": "1.0.0-beta.34", + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "eth-lib": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.7.tgz", + "integrity": "sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=", + "requires": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" }, - "is-glob": { + "uuid": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "1.0.0" - } + "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=" + } + } + }, + "web3-eth-contract": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.34.tgz", + "integrity": "sha1-nbs4+udkOoCEJ6IBgEcOx0FckeY=", + "requires": { + "underscore": "1.8.3", + "web3-core": "1.0.0-beta.34", + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-core-promievent": "1.0.0-beta.34", + "web3-core-subscriptions": "1.0.0-beta.34", + "web3-eth-abi": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-eth-iban": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.34.tgz", + "integrity": "sha1-mvRYYFhnzPdOqXmq8yazi6alugw=", + "requires": { + "bn.js": "4.11.6", + "web3-utils": "1.0.0-beta.34" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "web3-eth-personal": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.34.tgz", + "integrity": "sha1-mvuhZzQuveVCC81YlcP2w0OI8gU=", + "requires": { + "web3-core": "1.0.0-beta.34", + "web3-core-helpers": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-net": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + } + }, + "web3-net": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.0.0-beta.34.tgz", + "integrity": "sha1-QnzqL0MYgUScjjjVIykPFz+f9j0=", + "requires": { + "web3-core": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-utils": "1.0.0-beta.34" + } + }, + "web3-providers-http": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.0.0-beta.34.tgz", + "integrity": "sha1-5WG1K7tDdmKCAH1AKFv+NVDCfno=", + "requires": { + "web3-core-helpers": "1.0.0-beta.34", + "xhr2": "0.1.4" + } + }, + "web3-providers-ipc": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.34.tgz", + "integrity": "sha1-obd/GjBtc2SanAOQUuQMtxMo0Ao=", + "requires": { + "oboe": "2.1.3", + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-providers-ws": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.34.tgz", + "integrity": "sha1-fecPG4Py3jZHZ3IVa+z+9uNRbrM=", + "requires": { + "underscore": "1.8.3", + "web3-core-helpers": "1.0.0-beta.34", + "websocket": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2" + }, + "dependencies": { + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "web3-shh": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.0.0-beta.34.tgz", + "integrity": "sha1-l1Bh1x6uxCzO5Xb3vY9w8DhEr+A=", + "requires": { + "web3-core": "1.0.0-beta.34", + "web3-core-method": "1.0.0-beta.34", + "web3-core-subscriptions": "1.0.0-beta.34", + "web3-net": "1.0.0-beta.34" + } + }, + "web3-utils": { + "version": "1.0.0-beta.34", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.0.0-beta.34.tgz", + "integrity": "sha1-lBH8OarvOcpOBhafdiKX2f8CCXA=", + "requires": { + "bn.js": "4.11.6", + "eth-lib": "0.1.27", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randomhex": "0.1.5", + "underscore": "1.8.3", + "utf8": "2.1.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" }, - "jscodeshift": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.4.1.tgz", - "integrity": "sha512-iOX6If+hsw0q99V3n31t4f5VlD1TQZddH08xbT65ZqA7T4Vkx68emrDZMUOLVvCEAJ6NpAk7DECe3fjC/t52AQ==", - "requires": { - "async": "1.5.2", - "babel-plugin-transform-flow-strip-types": "6.22.0", - "babel-preset-es2015": "6.24.1", - "babel-preset-stage-1": "6.24.1", - "babel-register": "6.26.0", - "babylon": "6.18.0", - "colors": "1.2.1", - "flow-parser": "0.70.0", - "lodash": "4.17.5", - "micromatch": "2.3.11", - "node-dir": "0.1.8", - "nomnom": "1.8.1", - "recast": "0.12.9", - "temp": "0.8.3", - "write-file-atomic": "1.3.4" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + } + } + }, + "webpack": { + "version": "4.20.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.20.2.tgz", + "integrity": "sha512-75WFUMblcWYcocjSLlXCb71QuGyH7egdBZu50FtBGl2Nso8CK3Ej+J7bTZz2FPFq5l6fzCisD9modB7t30ikuA==", + "requires": { + "@webassemblyjs/ast": "1.7.8", + "@webassemblyjs/helper-module-context": "1.7.8", + "@webassemblyjs/wasm-edit": "1.7.8", + "@webassemblyjs/wasm-parser": "1.7.8", + "acorn": "^5.6.2", + "acorn-dynamic-import": "^3.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.1.0", + "uglifyjs-webpack-plugin": "^1.2.4", + "watchpack": "^1.5.0", + "webpack-sources": "^1.3.0" + }, + "dependencies": { + "ajv": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "requires": { - "remove-trailing-separator": "1.1.0" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "recast": { - "version": "0.12.9", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.12.9.tgz", - "integrity": "sha512-y7ANxCWmMW8xLOaiopiRDlyjQ9ajKRENBH+2wjntIbk3A6ZR1+BLQttkmSHMY7Arl+AAZFwJ10grg2T6f1WI8A==", - "requires": { - "ast-types": "0.10.1", - "core-js": "2.5.5", - "esprima": "4.0.0", - "private": "0.1.8", - "source-map": "0.6.1" - } + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" } } }, "webpack-cli": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-2.0.15.tgz", - "integrity": "sha512-bjNeIUO51D4OsmZ5ufzcpzVoacjxfWNfeBZKYL3jc+EMfCME3TyfdCPSUoKiOnebQChfupQuIRpAnx7L4l3Hew==", - "requires": { - "chalk": "2.4.0", - "cross-spawn": "6.0.5", - "diff": "3.5.0", - "enhanced-resolve": "4.0.0", - "envinfo": "4.4.2", - "glob-all": "3.1.0", - "global-modules": "1.0.0", - "got": "8.3.0", - "import-local": "1.0.0", - "inquirer": "5.2.0", - "interpret": "1.1.0", - "jscodeshift": "0.5.0", - "listr": "0.13.0", - "loader-utils": "1.1.0", - "lodash": "4.17.5", - "log-symbols": "2.2.0", - "mkdirp": "0.5.1", - "p-each-series": "1.0.0", - "p-lazy": "1.0.0", - "prettier": "1.12.1", - "supports-color": "5.4.0", - "v8-compile-cache": "1.1.2", - "webpack-addons": "1.1.5", - "yargs": "11.1.0", - "yeoman-environment": "2.0.6", - "yeoman-generator": "2.0.4" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==" - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.2.tgz", + "integrity": "sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ==", + "requires": { + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "enhanced-resolve": "^4.1.0", + "global-modules-path": "^2.3.0", + "import-local": "^2.0.0", + "interpret": "^1.1.0", + "loader-utils": "^1.1.0", + "supports-color": "^5.5.0", + "v8-compile-cache": "^2.0.2", + "yargs": "^12.0.2" + }, + "dependencies": { "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "cross-spawn": { @@ -12774,63 +14087,30 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "requires": { - "nice-try": "1.0.4", - "path-key": "2.0.1", - "semver": "5.5.0", - "shebang-command": "1.2.0", - "which": "1.3.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "inquirer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", - "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", - "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.4.0", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", - "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rxjs": "5.5.10", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "3.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } }, "webpack-sources": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", - "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "requires": { - "source-list-map": "2.0.0", - "source-map": "0.6.1" + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" }, "dependencies": { "source-map": { @@ -12841,14 +14121,23 @@ } }, "websocket": { - "version": "1.0.25", - "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.25.tgz", - "integrity": "sha512-M58njvi6ZxVb5k7kpnHh2BvNKuBWiwIYvsToErBzWhvBZYwlEiLcyLrG41T1jRcrY9ettqPYEqduLI7ul54CVQ==", + "version": "1.0.26", + "resolved": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2", "requires": { - "debug": "2.6.9", - "nan": "2.10.0", - "typedarray-to-buffer": "3.1.5", - "yaeti": "0.0.6" + "debug": "^2.2.0", + "nan": "^2.3.3", + "typedarray-to-buffer": "^3.1.2", + "yaeti": "^0.0.6" + }, + "dependencies": { + "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" + } + } } }, "websocket-driver": { @@ -12856,8 +14145,8 @@ "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "requires": { - "http-parser-js": "0.4.11", - "websocket-extensions": "0.1.3" + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { @@ -12870,47 +14159,12 @@ "resolved": "https://registry.npmjs.org/wexnz/-/wexnz-0.1.3.tgz", "integrity": "sha512-/aOABXmapFoTvv7hLKtQlW2ueWXE43JvrrMK5G3tD62fRA/S7ZX4Tu+Lv5O/VhcRz9FisFrO9PD49bOA0mFang==" }, - "whatwg-encoding": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz", - "integrity": "sha512-jLBwwKUhi8WtBfsMQlL4bUUcT8sMkAtQinscJAe/M4KHCkHuUJAF6vuB0tueNIw4c8ziO6AkRmgY+jL3a0iiPw==", - "requires": { - "iconv-lite": "0.4.19" - }, - "dependencies": { - "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==" - } - } - }, - "whatwg-mimetype": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.1.0.tgz", - "integrity": "sha512-FKxhYLytBQiUKjkYteN71fAUA3g6KpNXoho1isLiLSB3N1G4F35Q5vUxWfKFhBwi5IWF27VE6WxhrnnC+m0Mew==" - }, - "whatwg-url": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz", - "integrity": "sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==", - "requires": { - "lodash.sortby": "4.7.0", - "tr46": "1.0.1", - "webidl-conversions": "4.0.2" - } - }, - "whet.extend": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", - "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=" - }, "which": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -12919,50 +14173,30 @@ "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" }, "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "requires": { - "string-width": "1.0.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "1.0.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - } + "string-width": "^1.0.2 || 2" } }, "winston": { "version": "0.8.3", - "resolved": "https://registry.npmjs.org/winston/-/winston-0.8.3.tgz", + "resolved": "http://registry.npmjs.org/winston/-/winston-0.8.3.tgz", "integrity": "sha1-ZLar9M0Brcrv1QCTk7HY6L7BnbA=", "requires": { - "async": "0.2.10", - "colors": "0.6.2", - "cycle": "1.0.3", - "eyes": "0.1.8", - "isstream": "0.1.2", - "pkginfo": "0.3.1", - "stack-trace": "0.0.10" + "async": "0.2.x", + "colors": "0.6.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" }, "dependencies": { "async": { "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "resolved": "http://registry.npmjs.org/async/-/async-0.2.10.tgz", "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" }, "colors": { @@ -12975,23 +14209,24 @@ "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true }, "worker-farm": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz", "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", "requires": { - "errno": "0.1.7" + "errno": "~0.1.7" } }, "wrap-ansi": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "is-fullwidth-code-point": { @@ -12999,7 +14234,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -13007,9 +14242,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -13025,38 +14260,61 @@ "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", "dev": true, "requires": { - "mkdirp": "0.5.1" + "mkdirp": "^0.5.1" } }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "ws": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.0.0.tgz", + "integrity": "sha512-c2UlYcAZp1VS8AORtpq6y4RJIkJ9dQz18W32SpR/qXGfLDZ2jU4y4wKvvZwqbi7U6gxFQTeE+urMbXU/tsDy4w==", "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" + "async-limiter": "~1.0.0" } }, - "ws": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.1.1.tgz", - "integrity": "sha512-bOusvpCb09TOBLbpMKszd45WKC2KPtxiyiHanv+H2DE3Az+1db5a/L7sVJZVDPUC1Br8f0SKRr1KjLpD1U/IAw==", + "xhr": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.5.0.tgz", + "integrity": "sha512-4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ==", "requires": { - "async-limiter": "1.0.0" + "global": "~4.3.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" } }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + "xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "requires": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" + } + }, + "xhr-request-promise": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz", + "integrity": "sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0=", + "requires": { + "xhr-request": "^1.0.1" + } + }, + "xhr2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", + "integrity": "sha1-f4dliEdxbbUCYyOBL4GMras4el8=" }, "xml2js": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.1.13.tgz", "integrity": "sha1-Q4/zsdhaUa1ln/wuvoNAPhDJhyI=", "requires": { - "sax": "1.2.4" + "sax": ">=0.1.1" } }, "xmlhttprequest": { @@ -13064,6 +14322,11 @@ "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==" + }, "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", @@ -13085,22 +14348,22 @@ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" }, "yargs": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", - "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", - "requires": { - "cliui": "4.1.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", + "requires": { + "cliui": "^4.0.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" }, "dependencies": { "ansi-regex": { @@ -13118,298 +14381,162 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, - "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "xregexp": "4.0.0" } }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", "requires": { - "ansi-regex": "3.0.0" + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, - "which-module": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "invert-kv": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==" }, - "yargs-parser": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "requires": { - "camelcase": "4.1.0" + "invert-kv": "^2.0.0" } - } - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "requires": { - "camelcase": "3.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" - } - } - }, - "yeoman-environment": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.0.6.tgz", - "integrity": "sha512-jzHBTTy8EPI4ImV8dpUMt+Q5zELkSU5xvGpndHcHudQ4tqN6YgIWaCGmRFl+HDchwRUkcgyjQ+n6/w5zlJBCPg==", - "requires": { - "chalk": "2.4.0", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "globby": "6.1.0", - "grouped-queue": "0.3.3", - "inquirer": "3.3.0", - "is-scoped": "1.0.0", - "lodash": "4.17.5", - "log-symbols": "2.2.0", - "mem-fs": "1.1.3", - "text-table": "0.2.0", - "untildify": "3.0.2" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==" }, - "ansi-regex": { + "locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "requires": { - "color-convert": "1.9.1" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", + "os-locale": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "execa": "^0.10.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", "requires": { - "ms": "2.0.0" + "p-try": "^2.0.0" } }, - "has-flag": { + "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.4.0", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.5", - "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" } }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "requires": { - "has-flag": "3.0.0" + "camelcase": "^4.1.0" } } } }, - "yeoman-generator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-2.0.4.tgz", - "integrity": "sha512-Sgvz3MAkOpEIobcpW3rjEl6bOTNnl8SkibP9z7hYKfIGIlw0QDC2k0MAeXvyE2pLqc2M0Duql+6R7/W9GrJojg==", - "requires": { - "async": "2.6.0", - "chalk": "2.4.0", - "cli-table": "0.3.1", - "cross-spawn": "5.1.0", - "dargs": "5.1.0", - "dateformat": "3.0.3", - "debug": "3.1.0", - "detect-conflict": "1.0.1", - "error": "7.0.2", - "find-up": "2.1.0", - "github-username": "4.1.0", - "istextorbinary": "2.2.1", - "lodash": "4.17.5", - "make-dir": "1.2.0", - "mem-fs-editor": "3.0.2", - "minimist": "1.2.0", - "pretty-bytes": "4.0.2", - "read-chunk": "2.1.0", - "read-pkg-up": "3.0.0", - "rimraf": "2.6.2", - "run-async": "2.3.0", - "shelljs": "0.8.1", - "text-table": "0.2.0", - "through2": "2.0.3", - "yeoman-environment": "2.0.6" + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "requires": { + "camelcase": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "1.9.1" - } - }, - "chalk": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.0.tgz", - "integrity": "sha512-Wr/w0f4o9LuE7K53cD0qmbAMM+2XNLzR29vFn5hqko4sxGlUsyy363NvmyGIyk5tpe9cjTr9SJYbysEyPkRnFw==", - "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "4.1.11", - "parse-json": "4.0.0", - "pify": "3.0.0", - "strip-bom": "3.0.0" - } - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "3.0.0" - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "4.0.0", - "normalize-package-data": "2.4.0", - "path-type": "3.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "requires": { - "find-up": "2.1.0", - "read-pkg": "3.0.0" - } - }, - "strip-bom": { + "camelcase": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "requires": { - "has-flag": "3.0.0" - } + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" } } }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, "zero-fill": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/zero-fill/-/zero-fill-2.2.3.tgz", "integrity": "sha1-o97wa6XjmuZEhQu0yirUEStIVek=" }, "zrender": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/zrender/-/zrender-4.0.3.tgz", - "integrity": "sha512-LdkntRaNogzKAwlICuS0wdZcYaeA94llQ0SWqsgbcd6SPasgkjstaoe6vr5P9Pd2ID/rlhf3UrmIuFzqOLdDuA==" + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-4.0.4.tgz", + "integrity": "sha512-03Vd/BDl/cPXp8E61f5+Xbgr/a4vDyFA+uUtUc1s+5KgcPbyY2m+78R/9LQwkR6QwFYHG8qk25Q8ESGs/qpkZw==" } } } diff --git a/package.json b/package.json index ddeb80fcf6..fc07d877bd 100644 --- a/package.json +++ b/package.json @@ -29,45 +29,46 @@ "dependencies": { "@slack/client": "^4.1.0", "async": "^2.5.0", - "babel-core": "^6.26.0", - "babel-loader": "^7.1.2", + "@babel/core": "^7.1.2", + "babel-loader": "^8.0.4", "babel-preset-env": "^1.6.1", - "bitfinex-api-node": "^1.2.0", + "bitfinex-api-node": "^2.0.0", "bitstamp": "^1.0.4", - "bl": "^1.2.2", + "bl": "^2.0.1", "bollinger-bands": "^3.0.1", - "bootstrap": "^4.0.0-beta.2", - "ccxt": "^1.12.97", + "bootstrap": "^4.1.2", + "ccxt": "^1.17.360", "cexio-api-node": "^1.0.8", "cliff": "^0.1.10", "colors": "^1.2.1", "commander": "^2.15.1", "convnetjs": "0.3.0", "counterup": "^1.0.2", - "css-loader": "^0.28.11", + "css-loader": "^1.0.0", "echarts": "^4.0.2", "ejs": "^2.5.8", "exports-loader": "^0.7.0", "expose-loader": "^0.7.5", "express": "^4.16.3", + "extract-text-webpack-plugin": "^4.0.0-beta.0", "file-loader": "^1.1.6", "forex.analytics": "github:mkmarek/forex.analytics#7bc278987700d4204e959af17de61495941d1a14", - "gdax": "^0.7.0", + "gdax": "^0.8.0", "gemini-api": "^2.0.4", "glob": "^7.1.1", "har-validator": "^5.0.3", - "husky": "^0.14.3", + "husky": "^1.0.1", "idgen": "^2.0.2", "imports-loader": "^0.8.0", "ip": "~1.1.5", - "jasmine": "^2.8.0", + "jasmine": "^3.2.0", "jquery": "^3.2.1", "keltnerchannel": "^1.4.2", "kraken-api": "^1.0.0", "lint-staged": "^7.0.4", "lodash": "^4.17.4", "lolex": "^2.3.2", - "mathjs": "^4.0.1", + "mathjs": "^5.0.0", "micro-request": "^666.0.10", "mime": "^2.2.2", "minimist": "^1.2.0", @@ -81,21 +82,21 @@ "number-abbreviate": "^2.0.0", "numbro": "github:highvelocityspace/numbro", "path": "^0.12.7", - "poloniex.js": "0.0.8", + "poloniex.js": "0.0.9", "popper.js": "^1.14.3", - "postcss-loader": "^2.1.3", + "postcss-loader": "^3.0.0", "progress": "^2.0.0", - "pushbullet": "2.2.0", + "pushbullet": "2.3.0", "pusher-js": "^4.1.0", "quadrigacx": "0.0.7", "random-port": "^0.1.0", "regression": "^2.0.0", - "resolve-url-loader": "^2.2.1", + "resolve-url-loader": "^3.0.0", "sass-loader": "^7.0.1", "semver": "^5.4.1", "simple-xmpp": "^1.3.0", - "stats-lite": "2.1.0", - "style-loader": "^0.21.0", + "stats-lite": "2.2.0", + "style-loader": "^0.23.0", "superagent": "^3.8.2", "talib": "^1.0.4", "timebucket": "^0.4.0", @@ -105,9 +106,9 @@ "uuid": "^3.1.0", "waypoints": "^4.0.1", "webpack": "^4.5.0", - "webpack-cli": "^2.0.14", + "webpack-cli": "^3.0.4", "wexnz": "^0.1.3", - "ws": "^5.1.1", + "ws": "^6.0.0", "zero-fill": "^2.2.3" }, "devDependencies": { @@ -117,7 +118,7 @@ "round-precision": "^1.0.0", "run-parallel-limit": "^1.0.4", "shelljs": "^0.8.0", - "yargs": "^11.1.0" + "yargs": "^12.0.1" }, "engines": { "node": "^8.3.0 || ^9.0.0" diff --git a/scripts/auto_backtester/backtesting_1496817528.csv b/scripts/auto_backtester/backtesting_1496817528.csv deleted file mode 100644 index 6dca950856..0000000000 --- a/scripts/auto_backtester/backtesting_1496817528.csv +++ /dev/null @@ -1,67 +0,0 @@ -"ROI (%)","Error Rate (%)","Win/Loss Ratio","# Trades/Day","Ending Balance ($)","# Wins","# Losses","Period","# Days","Trend EMA","Oversold RSI","Oversold RSI Periods","Neutral Rate","Full Parameters" -73.105,41.67,1.4,1.2,1731.05257439,7,5,"10m",10,11,27,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -70.575,38.89,1.571,1.8,1705.74693208,11,7,"10m",10,11,24,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -70.575,38.89,1.571,1.8,1705.74693208,11,7,"10m",10,11,26,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -70.575,38.89,1.571,1.8,1705.74693208,11,7,"10m",10,11,29,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -70.575,38.89,1.571,1.8,1705.74693208,11,7,"10m",10,11,27,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -69.457,38.89,1.571,1.8,1694.56698024,11,7,"10m",10,11,30,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -68.081,40,1.5,1.5,1680.80927738,9,6,"10m",10,11,25,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -67.017,42.86,1.333,2.1,1670.17258222,12,9,"10m",10,11,22,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -67.017,42.86,1.333,2.1,1670.17258222,12,9,"10m",10,11,24,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -66.979,40,1.5,1.5,1669.79277397,9,6,"10m",10,11,28,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -66.979,40,1.5,1.5,1669.79277397,9,6,"10m",10,11,29,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -66.979,40,1.5,1.5,1669.79277397,9,6,"10m",10,11,26,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -64.074,46.15,1.167,1.3,1640.73664917,7,6,"10m",10,11,28,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.735,50,1,1,1637.34797366,5,5,"10m",10,11,29,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.432,42.86,1.333,2.1,1634.319696,12,9,"10m",10,11,25,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.327,44.44,1.25,1.8,1633.27454686,10,8,"10m",10,11,28,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.327,44.44,1.25,1.8,1633.27454686,10,8,"10m",10,11,25,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.327,44.44,1.25,1.8,1633.27454686,10,8,"10m",10,11,22,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.327,44.44,1.25,1.8,1633.27454686,10,8,"10m",10,11,21,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -63.327,44.44,1.25,1.8,1633.27454686,10,8,"10m",10,11,23,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.923,47.62,1.1,2.1,1619.23474146,11,10,"10m",10,11,24,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.923,47.62,1.1,2.1,1619.23474146,11,10,"10m",10,11,27,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.923,47.62,1.1,2.1,1619.23474146,11,10,"10m",10,11,26,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.923,47.62,1.1,2.1,1619.23474146,11,10,"10m",10,11,23,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.495,50,1,1,1614.94754928,5,5,"10m",10,11,30,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -61.052,47.62,1.1,2.1,1610.51960989,11,10,"10m",10,11,20,6,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -60.524,55.56,0.8,14.4,1605.2415965,64,80,"10m",10,11,24,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -60.524,55.56,0.8,14.4,1605.2415965,64,80,"10m",10,11,27,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -59.81,55,0.818,14,1598.10388812,63,77,"10m",10,11,22,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -59.334,54.93,0.821,14.2,1593.33858752,64,78,"10m",10,11,23,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -59.284,54.61,0.831,14.1,1592.83920785,64,77,"10m",10,11,26,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -59.134,54.61,0.831,14.1,1591.33659364,64,77,"10m",10,11,24,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -58.592,56.43,0.772,14,1585.91915139,61,79,"10m",10,11,30,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -58.466,55.24,0.81,14.3,1584.66048935,64,79,"10m",10,11,20,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -58.299,40,1.5,1.5,1582.99449989,9,6,"10m",10,11,30,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -57.854,55.56,0.8,14.4,1578.54444864,64,80,"10m",10,11,25,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -57.854,55.56,0.8,14.4,1578.54444864,64,80,"10m",10,11,21,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -57.687,54.2,0.845,13.1,1576.87029482,60,71,"10m",10,11,27,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.996,54.55,0.833,2.2,1569.95588157,10,12,"10m",10,11,23,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.996,54.55,0.833,2.2,1569.95588157,10,12,"10m",10,11,21,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.96,56.74,0.762,14.1,1569.59736789,61,80,"10m",10,11,28,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.755,55.63,0.797,14.2,1567.55050214,63,79,"10m",10,11,22,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.465,56.74,0.762,14.1,1564.64543291,61,80,"10m",10,11,23,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.28,57.04,0.753,14.2,1562.80151824,61,81,"10m",10,11,24,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 24, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.158,57.14,0.75,14,1561.58065544,60,80,"10m",10,11,26,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -56.135,57.45,0.741,14.1,1561.34525592,60,81,"10m",10,11,27,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 27, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -55.431,54.61,0.831,14.1,1554.30951116,64,77,"10m",10,11,25,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -54.779,56.34,0.775,14.2,1547.79433817,62,80,"10m",10,11,21,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -54.661,57.14,0.75,14,1546.61311256,60,80,"10m",10,11,29,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -54.309,56.74,0.762,14.1,1543.08878821,61,80,"10m",10,11,23,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 23, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -53.786,54.69,0.829,12.8,1537.85737777,58,70,"10m",10,11,29,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -53.501,54.62,0.831,13,1535.00548805,59,71,"10m",10,11,28,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -52.668,55.3,0.808,13.2,1526.67818966,59,73,"10m",10,11,26,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 26, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -52.105,54.7,0.828,11.7,1521.04622822,53,64,"10m",10,11,30,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -51.373,55.88,0.789,13.6,1513.73292807,60,76,"10m",10,11,29,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 29, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -51.323,57.66,0.734,13.7,1513.23147314,58,79,"10m",10,11,20,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -51.284,56.93,0.756,13.7,1512.83532848,59,78,"10m",10,11,28,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 28, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -51.053,55.56,0.8,13.5,1510.52581853,60,75,"10m",10,11,25,6,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 25, ""oversold_rsi_periods"": 6, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 6, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -50.157,54.55,0.833,2.2,1501.56698819,10,12,"10m",10,11,20,7,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -49.3,59.09,0.692,2.2,1492.99620027,9,13,"10m",10,11,22,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -49.241,59.09,0.692,2.2,1492.40600674,9,13,"10m",10,11,20,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -49.241,59.09,0.692,2.2,1492.40600674,9,13,"10m",10,11,21,8,0.25,"{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": 0.25, ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -48.802,57.66,0.734,13.7,1488.02481911,58,79,"10m",10,11,21,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 21, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -47.998,56.74,0.762,14.1,1479.97564923,61,80,"10m",10,11,20,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 20, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -47.806,57.14,0.75,14,1478.05832521,60,80,"10m",10,11,22,8,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 22, ""oversold_rsi_periods"": 8, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 8, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" -46.633,54.2,0.845,13.1,1466.33298384,60,71,"10m",10,11,30,7,"auto","{ ""asset_capital"": 0, ""buy_pct"": 98, ""buy_stop_pct"": 0, ""currency_capital"": 1000, ""days"": 10, ""markup_pct"": 0, ""max_sell_loss_pct"": 25, ""max_slippage_pct"": 5, ""min_periods"": 52, ""mode"": ""sim"", ""neutral_rate"": ""auto"", ""order_adjust_time"": 30000, ""oversold_rsi"": 30, ""oversold_rsi_periods"": 7, ""period"": ""10m"", ""profit_stop_enable_pct"": 0, ""profit_stop_pct"": 1, ""rsi_periods"": 7, ""selector"": ""gdax.ETH-USD"", ""sell_pct"": 98, ""sell_stop_pct"": 0, ""start"": 1495929600000, ""stats"": false, ""strategy"": ""trend_ema"", ""trend_ema"": 11, ""verbose"": false}" \ No newline at end of file diff --git a/scripts/auto_backtester/package-lock.json b/scripts/auto_backtester/package-lock.json index 9866361f98..66b088f112 100644 --- a/scripts/auto_backtester/package-lock.json +++ b/scripts/auto_backtester/package-lock.json @@ -10,16 +10,16 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" }, "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "brace-expansion": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.7.tgz", - "integrity": "sha1-Pv/DxQ4ABTH7cg6v+A8K6O8jz1k=", + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "0.4.2", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -37,12 +37,9 @@ "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" }, "commander": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", - "requires": { - "graceful-readlink": "1.0.1" - } + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.18.0.tgz", + "integrity": "sha512-6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ==" }, "concat-map": { "version": "0.0.1", @@ -50,19 +47,19 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "debug": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "flat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat/-/flat-2.0.1.tgz", - "integrity": "sha1-cOKRiKdL4MPIlAnu0fqVd5B64y8=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", + "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", "requires": { - "is-buffer": "1.1.5" + "is-buffer": "~2.0.3" } }, "fs.realpath": { @@ -71,30 +68,25 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -103,21 +95,21 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "interpret": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.3.tgz", - "integrity": "sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" }, "is-buffer": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz", - "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==" }, "is-finite": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-integer": { @@ -125,24 +117,24 @@ "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.7.tgz", "integrity": "sha1-a96Bqs3feLZZtmKdYpytxRqIbVw=", "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "json2csv": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-3.7.3.tgz", - "integrity": "sha1-2s/fp/sMGxsWOGjcdfOQLQIzVOw=", - "requires": { - "cli-table": "0.3.1", - "commander": "2.9.0", - "debug": "2.6.8", - "flat": "2.0.1", - "lodash.clonedeep": "4.5.0", - "lodash.flatten": "4.4.0", - "lodash.get": "4.4.2", - "lodash.set": "4.3.2", - "lodash.uniq": "4.5.0", - "path-is-absolute": "1.0.1" + "version": "3.11.5", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-3.11.5.tgz", + "integrity": "sha512-ORsw84BuRKMLxfI+HFZuvxRDnsJps53D5fIGr6tLn4ZY+ymcG8XU00E+JJ2wfAiHx5w2QRNmOLE8xHiGAeSfuQ==", + "requires": { + "cli-table": "^0.3.1", + "commander": "^2.8.1", + "debug": "^3.1.0", + "flat": "^4.0.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.0", + "lodash.set": "^4.3.0", + "lodash.uniq": "^4.5.0", + "path-is-absolute": "^1.0.0" } }, "lodash.clonedeep": { @@ -175,13 +167,13 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "1.1.7" + "brace-expansion": "^1.1.7" } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" }, "number-is-nan": { "version": "1.0.1", @@ -193,7 +185,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "path-is-absolute": { @@ -202,24 +194,24 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "rechoir": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "requires": { - "resolve": "1.3.3" + "resolve": "^1.1.6" } }, "resolve": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.3.3.tgz", - "integrity": "sha1-ZVkHw0aahoDcLeOidaj91paR8OU=", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", "requires": { - "path-parse": "1.0.5" + "path-parse": "^1.0.5" } }, "round-precision": { @@ -227,23 +219,23 @@ "resolved": "https://registry.npmjs.org/round-precision/-/round-precision-1.0.0.tgz", "integrity": "sha1-9aK+t+1Z5v6FMS+/VTdpEC6o9k8=", "requires": { - "is-finite": "1.0.2", - "is-integer": "1.0.7" + "is-finite": "~1.0.1", + "is-integer": "~1.0.4" } }, "run-parallel-limit": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.0.3.tgz", - "integrity": "sha1-bDkwzHwLR9Na50IBCfZgqt4kAeM=" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.0.5.tgz", + "integrity": "sha512-NsY+oDngvrvMxKB3G8ijBzIema6aYbQMD2bHOamvN52BysbIGTnEY2xsNyfrcr9GhY995/t/0nQN3R3oZvaDlg==" }, "shelljs": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", "requires": { - "glob": "7.1.2", - "interpret": "1.0.3", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "strip-ansi": { @@ -251,7 +243,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "wrappy": { diff --git a/scripts/genetic_backtester/darwin.js b/scripts/genetic_backtester/darwin.js index ecd4ae73b0..05266a426f 100755 --- a/scripts/genetic_backtester/darwin.js +++ b/scripts/genetic_backtester/darwin.js @@ -20,6 +20,8 @@ * --noStatSave=| true:no statistics are saved to the simulation folder * --silent=| true:can improve performance * --runGenerations= if used run this number of generations, will be shown 1 less due to generations starts at 0 + * --minTrades= Minimum wins before generation is considured fit to evolve + * --fitnessCalcType= Default: Classic. wl will score the highes for wins and losses, profit doesn't care about wins and losses only the higest end balance, classic uses original claculation / profitwl tries to get the highest profit using the lowest win/loss ratio * * * any parameters for sim and or strategy can be passed in and will override the genetic test generated parameter @@ -40,7 +42,7 @@ let Backtester = require('../../lib/backtester') let argv = require('yargs').argv let z = require('zero-fill') let n = require('numbro') -let _ = require('lodash') + let VERSION = 'Zenbot 4 Genetic Backtester v0.2.3' @@ -57,8 +59,10 @@ let runGenerations = undefined let generationProcessing = false let population_data = '' let noStatSave = false -let floatScanWindow = false +//let floatScanWindow = false let ignoreLaunchFitness = false +let minimumTrades = 0 +let fitnessCalcType = 'classic' let readSimDataFile = (iteration) => { let jsonFileName = `simulations/${population_data}/gen_${generationCount}/sim_${iteration}.json` @@ -258,6 +262,8 @@ function simulateGeneration(generateLaunchFile) { } iterationCount++ + phenotype.minTrades = minimumTrades + phenotype.fitnessCalcType = fitnessCalcType Backtester.runCommand(v, phenotype, command, cb) } })).reduce((a, b) => a.concat(b)) @@ -325,9 +331,9 @@ function simulateGeneration(generateLaunchFile) { (a.fitness < b.fitness) ? 1 : (b.fitness < a.fitness) ? -1 : 0) - let bestOverallCommand = generateCommandParams(bestOverallResult[0]) - bestOverallCommand = prefix + bestOverallCommand - bestOverallCommand = bestOverallCommand + ' --asset_capital=' + argv.asset_capital + ' --currency_capital=' + argv.currency_capital + // let bestOverallCommand = generateCommandParams(bestOverallResult[0]) + // bestOverallCommand = prefix + bestOverallCommand + // bestOverallCommand = bestOverallCommand + ' --asset_capital=' + argv.asset_capital + ' --currency_capital=' + argv.currency_capital saveLaunchFiles(generateLaunchFile, bestOverallResult[0]) @@ -371,6 +377,10 @@ if (simArgs.help || !(simArgs.use_strategies)) { console.log('--days= amount of days to use when backfilling') console.log('--noStatSave=|') console.log('--runGenerations= if used run this number of generations, will be shown 1 less due to generations starts at 0') + console.log('--minTrades= Minimum wins before generation is considured fit to evolve') + console.log('--fitnessCalcType= Default: Classic.') + console.log(' wl will score the highes for wins and losses, profit does not care about wins and losses only the higest end balance,') + console.log(' classic uses original claculation / profitwl tries to get the highest profit using the lowest win/loss ratio') process.exit(0) } @@ -384,6 +394,17 @@ if (simArgs.maxCores) { if (simArgs.maxCores < 1) PARALLEL_LIMIT = 1 else PARALLEL_LIMIT = simArgs.maxCores } +fitnessCalcType = 'classic' +if (simArgs.fitnessCalcType) { + + if (simArgs.fitnessCalcType == 'classic') fitnessCalcType = 'classic' + if (simArgs.fitnessCalcType == 'wl') fitnessCalcType = 'wl' + if (simArgs.fitnessCalcType == 'profit') fitnessCalcType = 'profit' + if (simArgs.fitnessCalcType == 'profitwl') fitnessCalcType = 'profitwl' + + +} + if (!isUndefined(simArgs.runGenerations)) { if (simArgs.runGenerations) { @@ -396,7 +417,8 @@ noStatSave = (simArgs.noStatSave) ? true : false let strategyName = (argv.use_strategies) ? argv.use_strategies : 'all' populationSize = (argv.population) ? argv.population : 100 -floatScanWindow = (argv.floatScanWindow) ? argv.floatScanWindow : false +minimumTrades = (argv.minTrades) ? argv.minTrades : 0 +//floatScanWindow = (argv.floatScanWindow) ? argv.floatScanWindow : false ignoreLaunchFitness = (argv.ignoreLaunchFitness) ? argv.ignoreLaunchFitness : false population_data = argv.population_data || `backtest.${simArgs.selector.toLowerCase()}.${moment().format('YYYYMMDDHHmmss')}` @@ -419,7 +441,8 @@ for (var i = 0; i < selectedStrategies.length; i++) { let population = [] for (var i2 = population.length; i2 < populationSize; ++i2) { - population.push(Phenotypes.create(strategyPhenotypes)) + var lPheno = Phenotypes.create(strategyPhenotypes) + population.push(lPheno) evolve = false } diff --git a/scripts/genetic_backtester/package-lock.json b/scripts/genetic_backtester/package-lock.json index 6692a5230c..4e0dbd3d62 100644 --- a/scripts/genetic_backtester/package-lock.json +++ b/scripts/genetic_backtester/package-lock.json @@ -19,7 +19,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -46,9 +46,9 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" }, "dependencies": { "string-width": { @@ -56,9 +56,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -66,7 +66,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -96,15 +96,15 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "requires": { - "lru-cache": "4.1.1", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, "debug": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "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" } @@ -119,7 +119,7 @@ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "execa": { @@ -127,13 +127,13 @@ "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, "find-up": { @@ -141,7 +141,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "flat": { @@ -149,7 +149,7 @@ "resolved": "https://registry.npmjs.org/flat/-/flat-2.0.1.tgz", "integrity": "sha1-cOKRiKdL4MPIlAnu0fqVd5B64y8=", "requires": { - "is-buffer": "1.1.5" + "is-buffer": "~1.1.2" } }, "fs.realpath": { @@ -158,7 +158,8 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "geneticalgorithm": { - "version": "git+https://github.com/cmroche/geneticalgorithm.git#c10b201fb5a2013fc280e400c4f01a5ff1d1a779" + "version": "git+https://github.com/cmroche/geneticalgorithm.git#c10b201fb5a2013fc280e400c4f01a5ff1d1a779", + "from": "git+https://github.com/cmroche/geneticalgorithm.git" }, "get-caller-file": { "version": "1.0.2", @@ -175,12 +176,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "graceful-fs": { @@ -198,8 +199,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -232,7 +233,7 @@ "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-finite": { @@ -240,7 +241,7 @@ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -248,7 +249,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-integer": { @@ -256,7 +257,7 @@ "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.7.tgz", "integrity": "sha1-a96Bqs3feLZZtmKdYpytxRqIbVw=", "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "is-stream": { @@ -274,16 +275,16 @@ "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-3.11.1.tgz", "integrity": "sha1-NHdWVmkQzLMjBiqUNssTcXuB+bc=", "requires": { - "cli-table": "0.3.1", - "commander": "2.11.0", - "debug": "2.6.8", - "flat": "2.0.1", - "lodash.clonedeep": "4.5.0", - "lodash.flatten": "4.4.0", - "lodash.get": "4.4.2", - "lodash.set": "4.3.2", - "lodash.uniq": "4.5.0", - "path-is-absolute": "1.0.1" + "cli-table": "^0.3.1", + "commander": "^2.8.1", + "debug": "^2.2.0", + "flat": "^2.0.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.0", + "lodash.set": "^4.3.0", + "lodash.uniq": "^4.5.0", + "path-is-absolute": "^1.0.0" } }, "lcid": { @@ -291,7 +292,7 @@ "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, "load-json-file": { @@ -299,10 +300,10 @@ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" } }, "locate-path": { @@ -310,8 +311,8 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lodash.clonedeep": { @@ -344,8 +345,8 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "mem": { @@ -353,7 +354,7 @@ "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", "requires": { - "mimic-fn": "1.1.0" + "mimic-fn": "^1.0.0" } }, "mimic-fn": { @@ -366,7 +367,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "1.1.8" + "brace-expansion": "^1.1.7" } }, "ms": { @@ -379,10 +380,10 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "requires": { - "hosted-git-info": "2.5.0", - "is-builtin-module": "1.0.0", - "semver": "5.4.1", - "validate-npm-package-license": "3.0.1" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "npm-run-path": { @@ -390,7 +391,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "number-is-nan": { @@ -403,7 +404,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-locale": { @@ -411,9 +412,9 @@ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "p-finally": { @@ -431,7 +432,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "1.1.0" + "p-limit": "^1.1.0" } }, "parse-json": { @@ -439,7 +440,7 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "path-exists": { @@ -467,7 +468,7 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "requires": { - "pify": "2.3.0" + "pify": "^2.0.0" } }, "pify": { @@ -485,9 +486,9 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" } }, "read-pkg-up": { @@ -495,8 +496,8 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" } }, "rechoir": { @@ -504,7 +505,7 @@ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "requires": { - "resolve": "1.4.0" + "resolve": "^1.1.6" } }, "require-directory": { @@ -522,7 +523,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", "requires": { - "path-parse": "1.0.5" + "path-parse": "^1.0.5" } }, "round-precision": { @@ -530,8 +531,8 @@ "resolved": "https://registry.npmjs.org/round-precision/-/round-precision-1.0.0.tgz", "integrity": "sha1-9aK+t+1Z5v6FMS+/VTdpEC6o9k8=", "requires": { - "is-finite": "1.0.2", - "is-integer": "1.0.7" + "is-finite": "~1.0.1", + "is-integer": "~1.0.4" } }, "run-parallel-limit": { @@ -554,7 +555,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -567,9 +568,9 @@ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", "requires": { - "glob": "7.1.2", - "interpret": "1.0.3", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "signal-exit": { @@ -582,7 +583,7 @@ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", "requires": { - "spdx-license-ids": "1.2.2" + "spdx-license-ids": "^1.0.2" } }, "spdx-expression-parse": { @@ -600,8 +601,8 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { @@ -619,7 +620,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -629,7 +630,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" }, "dependencies": { "ansi-regex": { @@ -654,8 +655,8 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", "requires": { - "spdx-correct": "1.0.2", - "spdx-expression-parse": "1.0.4" + "spdx-correct": "~1.0.0", + "spdx-expression-parse": "~1.0.0" } }, "which": { @@ -663,7 +664,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -676,8 +677,8 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "string-width": { @@ -685,9 +686,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -695,7 +696,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -720,19 +721,19 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", "requires": { - "camelcase": "4.1.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "read-pkg-up": "2.0.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "7.0.0" + "camelcase": "^4.1.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "read-pkg-up": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^7.0.0" } }, "yargs-parser": { @@ -740,7 +741,7 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } diff --git a/templates/dashboard.ejs b/templates/dashboard.ejs index e9566e1f75..bf1c485be3 100644 --- a/templates/dashboard.ejs +++ b/templates/dashboard.ejs @@ -22,7 +22,7 @@ <%= asset.toUpperCase() %>/<%= currency.toUpperCase() %> on <%= exchange.name.toUpperCase() %> - Dashboard - + diff --git a/webpack.config.js b/webpack.config.js index fff4b28746..8e41033789 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -3,6 +3,7 @@ const path = require('path') const webpack = require('webpack') +const ExtractTextPlugin = require("extract-text-webpack-plugin"); module.exports = { entry: { @@ -18,7 +19,8 @@ module.exports = { jQuery: 'jquery', 'window.jQuery': 'jquery', Popper: ['popper.js', 'default'], - }) + }), + new ExtractTextPlugin('[name].bundle.css'), ], output: { publicPath: '/assets-wp/', @@ -48,7 +50,13 @@ module.exports = { loader: 'sass-loader' // compiles SASS to CSS }] }, - { test: /\.css$/, loader: 'style-loader!css-loader' }, + { + test: /\.css$/, + use: ExtractTextPlugin.extract({ + fallback: "style-loader", + use: "css-loader" + }) + }, { test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file' }, { test: /\.(woff|woff2)$/, loader:'url?prefix=font/&limit=5000' }, { test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/octet-stream' }, diff --git a/zenbot.sh b/zenbot.sh index 6e1d5275e7..7e917e0a1d 100755 --- a/zenbot.sh +++ b/zenbot.sh @@ -1,2 +1,2 @@ -#!/bin/bash +#!/bin/sh env node zenbot.js $@