From 3fbace3bc8e9e42e00e21e8a72414fe3943708b2 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Thu, 25 Jul 2019 16:32:44 +0300 Subject: [PATCH 01/48] add deex gateway --- app/api/apiConfig.js | 5 +++++ app/branding.js | 3 ++- app/components/Modal/DepositModal.jsx | 24 ++++++++++++++++++++---- app/lib/common/gatewayUtils.js | 4 ++++ app/lib/common/gateways.js | 16 +++++++++++++++- 5 files changed, 46 insertions(+), 6 deletions(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 78763eca36..5c92a8250c 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -62,6 +62,11 @@ export const gdex2APIs = { TRADING_PAIRS: "/trading-pairs" }; +export const deexAPIs = { + BASE: "https://deex.exchange/gateway", + COINS_LIST: "/pay/get_coins" +}; + // Legacy Deposit/Withdraw export const gdexAPIs = { BASE: "https://api.gdex.io", diff --git a/app/branding.js b/app/branding.js index 3da8cd4974..8e5391ac46 100644 --- a/app/branding.js +++ b/app/branding.js @@ -377,7 +377,8 @@ export function allowedGateway(gateway) { "GDEX", "XBTSX", "SPARKDEX", - "CITADEL" + "CITADEL", + "DEEX" ].indexOf(gateway) >= 0 ); } diff --git a/app/components/Modal/DepositModal.jsx b/app/components/Modal/DepositModal.jsx index 6e0024a9b4..f9b520d060 100644 --- a/app/components/Modal/DepositModal.jsx +++ b/app/components/Modal/DepositModal.jsx @@ -69,6 +69,8 @@ class DepositModalContent extends DecimalChecker { } ); + console.log("selectedAsset", selectedAsset); + if (selectedGateway) { this._getDepositAddress(selectedAsset, selectedGateway); } @@ -86,19 +88,21 @@ class DepositModalContent extends DecimalChecker { } _setDepositAsset(asset) { + console.log("asset", asset); // DEEX let coinToGatewayMapping = _getCoinToGatewayMapping.call(this); this.setState({coinToGatewayMapping}); if (!asset) return; - let backedAsset = asset.split("."); + let backedAsset = asset.split("."); // [DEEX] + // this.state.gatewayStatus = {DEEX:{}} let usingGateway = this.state.gatewayStatus[backedAsset[0]] ? true - : false; + : false; // true if (usingGateway) { - let assetName = backedAsset[1]; - let assetGateway = backedAsset[0]; + let assetName = backedAsset[1] || asset; // undefined + let assetGateway = backedAsset[0]; // deex this._getDepositAddress(assetName, assetGateway); } else { this.setState({selectedAsset: "BTS"}); @@ -123,6 +127,11 @@ class DepositModalContent extends DecimalChecker { } _getDepositAddress(selectedAsset, selectedGateway) { + console.log( + "selectedAsset, selectedGateway", + selectedAsset, + selectedGateway + ); let {account} = this.props; let {gatewayStatus} = this.state; @@ -133,10 +142,17 @@ class DepositModalContent extends DecimalChecker { }); // Get Backing Asset for Gateway + console.log( + "this.props.backedCoins", + this.props.backedCoins.toJS(), + selectedGateway.toUpperCase() + ); let backingAsset = this.props.backedCoins .get(selectedGateway.toUpperCase(), []) .find(c => { + console.log("c", c); let backingCoin = c.backingCoinType || c.backingCoin; + console.log("backingCoin", backingCoin); if (backingCoin.toUpperCase().indexOf("EOS.") !== -1) { backingCoin = backingCoin.split(".")[1]; diff --git a/app/lib/common/gatewayUtils.js b/app/lib/common/gatewayUtils.js index d1c6f726eb..7ccbd86df7 100644 --- a/app/lib/common/gatewayUtils.js +++ b/app/lib/common/gatewayUtils.js @@ -102,6 +102,10 @@ export function updateGatewayBackers(chain = "4018d784") { // Walk all Gateways for (let gateway in availableGateways) { + console.log( + "availableGateways[gateway]", + availableGateways[gateway] + ); if (!!availableGateways[gateway].isEnabled) { if (!!availableGateways[gateway].isSimple) { GatewayActions.fetchCoinsSimple.defer({ diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index cc1978c31c..f622b1adc2 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -11,7 +11,8 @@ import { cryptoBridgeAPIs, gdex2APIs, xbtsxAPIs, - citadelAPIs + citadelAPIs, + deexAPIs } from "api/apiConfig"; import {allowedGateway} from "branding"; @@ -103,6 +104,19 @@ export const availableGateways = { enabled: false, selected: false } + }, + DEEX: { + id: "DEEX", + name: "DEEX", + baseAPI: deexAPIs, + isSimple: true, + simpleAssetGateway: true, + fixedMemo: {prepend: "dex:", append: ""}, + isEnabled: allowedGateway("DEEX"), + options: { + enabled: false, + selected: false + } } }; From 4901ef633f04a4833cedd0cd2fcad8bbc51694d0 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Fri, 26 Jul 2019 13:59:12 +0300 Subject: [PATCH 02/48] change config --- app/api/apiConfig.js | 2 +- app/lib/common/gateways.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 5c92a8250c..6c533cffd9 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -63,7 +63,7 @@ export const gdex2APIs = { }; export const deexAPIs = { - BASE: "https://deex.exchange/gateway", + BASE: "http://192.168.40.64/gateway", COINS_LIST: "/pay/get_coins" }; diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index f622b1adc2..8a7388a925 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -113,6 +113,7 @@ export const availableGateways = { simpleAssetGateway: true, fixedMemo: {prepend: "dex:", append: ""}, isEnabled: allowedGateway("DEEX"), + addressValidatorMethod: "POST", options: { enabled: false, selected: false From d0a3985836849aa90f2b6cee16620d31fbcdd2a4 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Fri, 26 Jul 2019 14:03:41 +0300 Subject: [PATCH 03/48] delete debug --- app/components/Modal/DepositModal.jsx | 24 ++++-------------------- app/lib/common/gatewayUtils.js | 4 ---- 2 files changed, 4 insertions(+), 24 deletions(-) diff --git a/app/components/Modal/DepositModal.jsx b/app/components/Modal/DepositModal.jsx index f9b520d060..2a1779fe7f 100644 --- a/app/components/Modal/DepositModal.jsx +++ b/app/components/Modal/DepositModal.jsx @@ -69,8 +69,6 @@ class DepositModalContent extends DecimalChecker { } ); - console.log("selectedAsset", selectedAsset); - if (selectedGateway) { this._getDepositAddress(selectedAsset, selectedGateway); } @@ -88,21 +86,19 @@ class DepositModalContent extends DecimalChecker { } _setDepositAsset(asset) { - console.log("asset", asset); // DEEX let coinToGatewayMapping = _getCoinToGatewayMapping.call(this); this.setState({coinToGatewayMapping}); if (!asset) return; - let backedAsset = asset.split("."); // [DEEX] - // this.state.gatewayStatus = {DEEX:{}} + let backedAsset = asset.split("."); let usingGateway = this.state.gatewayStatus[backedAsset[0]] ? true - : false; // true + : false; if (usingGateway) { - let assetName = backedAsset[1] || asset; // undefined - let assetGateway = backedAsset[0]; // deex + let assetName = backedAsset[1] || asset; + let assetGateway = backedAsset[0]; this._getDepositAddress(assetName, assetGateway); } else { this.setState({selectedAsset: "BTS"}); @@ -127,11 +123,6 @@ class DepositModalContent extends DecimalChecker { } _getDepositAddress(selectedAsset, selectedGateway) { - console.log( - "selectedAsset, selectedGateway", - selectedAsset, - selectedGateway - ); let {account} = this.props; let {gatewayStatus} = this.state; @@ -142,17 +133,10 @@ class DepositModalContent extends DecimalChecker { }); // Get Backing Asset for Gateway - console.log( - "this.props.backedCoins", - this.props.backedCoins.toJS(), - selectedGateway.toUpperCase() - ); let backingAsset = this.props.backedCoins .get(selectedGateway.toUpperCase(), []) .find(c => { - console.log("c", c); let backingCoin = c.backingCoinType || c.backingCoin; - console.log("backingCoin", backingCoin); if (backingCoin.toUpperCase().indexOf("EOS.") !== -1) { backingCoin = backingCoin.split(".")[1]; diff --git a/app/lib/common/gatewayUtils.js b/app/lib/common/gatewayUtils.js index 7ccbd86df7..d1c6f726eb 100644 --- a/app/lib/common/gatewayUtils.js +++ b/app/lib/common/gatewayUtils.js @@ -102,10 +102,6 @@ export function updateGatewayBackers(chain = "4018d784") { // Walk all Gateways for (let gateway in availableGateways) { - console.log( - "availableGateways[gateway]", - availableGateways[gateway] - ); if (!!availableGateways[gateway].isEnabled) { if (!!availableGateways[gateway].isSimple) { GatewayActions.fetchCoinsSimple.defer({ From 5e54123bef1b20ff226fd6c017b0050bcf1505e4 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Fri, 26 Jul 2019 16:38:00 +0300 Subject: [PATCH 04/48] change option gateway --- app/lib/common/gateways.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 8a7388a925..19a6ce55c9 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -110,7 +110,7 @@ export const availableGateways = { name: "DEEX", baseAPI: deexAPIs, isSimple: true, - simpleAssetGateway: true, + simpleAssetGateway: false, fixedMemo: {prepend: "dex:", append: ""}, isEnabled: allowedGateway("DEEX"), addressValidatorMethod: "POST", From 65bdd39997449e8e952a155790a342d7c92795cc Mon Sep 17 00:00:00 2001 From: mirotincev Date: Fri, 26 Jul 2019 13:59:12 +0300 Subject: [PATCH 05/48] change config delete debug change option gateway --- app/api/apiConfig.js | 2 +- app/components/Modal/DepositModal.jsx | 24 ++++-------------------- app/lib/common/gatewayUtils.js | 4 ---- app/lib/common/gateways.js | 3 ++- 4 files changed, 7 insertions(+), 26 deletions(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 5c92a8250c..6c533cffd9 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -63,7 +63,7 @@ export const gdex2APIs = { }; export const deexAPIs = { - BASE: "https://deex.exchange/gateway", + BASE: "http://192.168.40.64/gateway", COINS_LIST: "/pay/get_coins" }; diff --git a/app/components/Modal/DepositModal.jsx b/app/components/Modal/DepositModal.jsx index f9b520d060..2a1779fe7f 100644 --- a/app/components/Modal/DepositModal.jsx +++ b/app/components/Modal/DepositModal.jsx @@ -69,8 +69,6 @@ class DepositModalContent extends DecimalChecker { } ); - console.log("selectedAsset", selectedAsset); - if (selectedGateway) { this._getDepositAddress(selectedAsset, selectedGateway); } @@ -88,21 +86,19 @@ class DepositModalContent extends DecimalChecker { } _setDepositAsset(asset) { - console.log("asset", asset); // DEEX let coinToGatewayMapping = _getCoinToGatewayMapping.call(this); this.setState({coinToGatewayMapping}); if (!asset) return; - let backedAsset = asset.split("."); // [DEEX] - // this.state.gatewayStatus = {DEEX:{}} + let backedAsset = asset.split("."); let usingGateway = this.state.gatewayStatus[backedAsset[0]] ? true - : false; // true + : false; if (usingGateway) { - let assetName = backedAsset[1] || asset; // undefined - let assetGateway = backedAsset[0]; // deex + let assetName = backedAsset[1] || asset; + let assetGateway = backedAsset[0]; this._getDepositAddress(assetName, assetGateway); } else { this.setState({selectedAsset: "BTS"}); @@ -127,11 +123,6 @@ class DepositModalContent extends DecimalChecker { } _getDepositAddress(selectedAsset, selectedGateway) { - console.log( - "selectedAsset, selectedGateway", - selectedAsset, - selectedGateway - ); let {account} = this.props; let {gatewayStatus} = this.state; @@ -142,17 +133,10 @@ class DepositModalContent extends DecimalChecker { }); // Get Backing Asset for Gateway - console.log( - "this.props.backedCoins", - this.props.backedCoins.toJS(), - selectedGateway.toUpperCase() - ); let backingAsset = this.props.backedCoins .get(selectedGateway.toUpperCase(), []) .find(c => { - console.log("c", c); let backingCoin = c.backingCoinType || c.backingCoin; - console.log("backingCoin", backingCoin); if (backingCoin.toUpperCase().indexOf("EOS.") !== -1) { backingCoin = backingCoin.split(".")[1]; diff --git a/app/lib/common/gatewayUtils.js b/app/lib/common/gatewayUtils.js index 7ccbd86df7..d1c6f726eb 100644 --- a/app/lib/common/gatewayUtils.js +++ b/app/lib/common/gatewayUtils.js @@ -102,10 +102,6 @@ export function updateGatewayBackers(chain = "4018d784") { // Walk all Gateways for (let gateway in availableGateways) { - console.log( - "availableGateways[gateway]", - availableGateways[gateway] - ); if (!!availableGateways[gateway].isEnabled) { if (!!availableGateways[gateway].isSimple) { GatewayActions.fetchCoinsSimple.defer({ diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index f622b1adc2..19a6ce55c9 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -110,9 +110,10 @@ export const availableGateways = { name: "DEEX", baseAPI: deexAPIs, isSimple: true, - simpleAssetGateway: true, + simpleAssetGateway: false, fixedMemo: {prepend: "dex:", append: ""}, isEnabled: allowedGateway("DEEX"), + addressValidatorMethod: "POST", options: { enabled: false, selected: false From abf3c502160d4a37a37e86186b4af7355701bdc9 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Wed, 14 Aug 2019 13:04:02 +0300 Subject: [PATCH 06/48] change develop base --- app/api/apiConfig.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 6c533cffd9..5c92a8250c 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -63,7 +63,7 @@ export const gdex2APIs = { }; export const deexAPIs = { - BASE: "http://192.168.40.64/gateway", + BASE: "https://deex.exchange/gateway", COINS_LIST: "/pay/get_coins" }; From d89d59f6e9b0d6b9a229d6e489b5d41ce6acdc23 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Wed, 14 Aug 2019 13:52:17 +0300 Subject: [PATCH 07/48] change isEnabled gateways config --- app/branding.js | 3 ++- app/lib/common/gateways.js | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/branding.js b/app/branding.js index 8e5391ac46..4c2d85d062 100644 --- a/app/branding.js +++ b/app/branding.js @@ -350,7 +350,8 @@ export function getAssetNamespaces() { "GDEX.", "XBTSX.", "SPARKDEX.", - "CITADEL." + "CITADEL.", + "DEEX." ]; } diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index c707df30fb..3aed0335e4 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -128,7 +128,7 @@ export const availableGateways = { isSimple: true, simpleAssetGateway: false, fixedMemo: {prepend: "dex:", append: ""}, - isEnabled: allowedGateway("DEEX"), + isEnabled: _isEnabled("DEEX"), addressValidatorMethod: "POST", options: { enabled: false, From 3e59b8eb4a957ec6ae6d5906df60f8cb1e9d3de6 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Mon, 26 Aug 2019 14:58:16 +0300 Subject: [PATCH 08/48] change config --- app/api/apiConfig.js | 2 +- app/components/Modal/DepositModal.jsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 5c92a8250c..192242ddd1 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -64,7 +64,7 @@ export const gdex2APIs = { export const deexAPIs = { BASE: "https://deex.exchange/gateway", - COINS_LIST: "/pay/get_coins" + COINS_LIST: "/compatibility/get_coins" }; // Legacy Deposit/Withdraw diff --git a/app/components/Modal/DepositModal.jsx b/app/components/Modal/DepositModal.jsx index 2a1779fe7f..6e0024a9b4 100644 --- a/app/components/Modal/DepositModal.jsx +++ b/app/components/Modal/DepositModal.jsx @@ -97,7 +97,7 @@ class DepositModalContent extends DecimalChecker { : false; if (usingGateway) { - let assetName = backedAsset[1] || asset; + let assetName = backedAsset[1]; let assetGateway = backedAsset[0]; this._getDepositAddress(assetName, assetGateway); } else { From 86bd9454891c79333660d90ab8a64d844a83fb9d Mon Sep 17 00:00:00 2001 From: mirotincev Date: Thu, 12 Dec 2019 18:10:10 +0300 Subject: [PATCH 09/48] add deex gateways --- app/api/apiConfig.js | 5 +++++ app/branding.js | 6 ++++-- app/lib/common/gateways.js | 17 ++++++++++++++++- package.json | 1 + 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index bc155ad982..17f67030b5 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -83,6 +83,11 @@ export const xbtsxAPIs = { COINS_LIST: "/coin" }; +export const deexAPIs = { + BASE: "https://deex.exchange/gateway", + COINS_LIST: "/compatibility/get_coins" +}; + export const nodeRegions = [ // region of the node follows roughly https://en.wikipedia.org/wiki/Subregion#/media/File:United_Nations_geographical_subregions.png "Northern Europe", diff --git a/app/branding.js b/app/branding.js index 89d480d0cc..1309eb57e1 100644 --- a/app/branding.js +++ b/app/branding.js @@ -374,7 +374,8 @@ export function getAssetNamespaces() { "GDEX.", "XBTSX.", "SPARKDEX.", - "CITADEL." + "CITADEL.", + "DEEX." ]; } @@ -401,7 +402,8 @@ export function allowedGateway(gateway) { "GDEX", "XBTSX", "SPARKDEX", - "CITADEL" + "CITADEL", + "DEEX" ]; if (!gateway) { // answers the question: are any allowed? diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 253e22064a..001831c5d5 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -10,7 +10,8 @@ import { cryptoBridgeAPIs, gdex2APIs, xbtsxAPIs, - citadelAPIs + citadelAPIs, + deexAPIs } from "api/apiConfig"; import {allowedGateway} from "branding"; import {isGatewayTemporarilyDisabled} from "../chain/onChainConfig"; @@ -189,6 +190,20 @@ export const availableGateways = { }, landing: "https://citadel.li/", wallet: "https://citadel.li/wallet/" + }, + DEEX: { + id: "DEEX", + name: "DEEX", + baseAPI: deexAPIs, + isSimple: true, + simpleAssetGateway: false, + fixedMemo: {prepend: "dex:", append: ""}, + isEnabled: _isEnabled("DEEX"), + addressValidatorMethod: "POST", + options: { + enabled: false, + selected: false + } } }; diff --git a/package.json b/package.json index fe19e50a65..308a279c97 100644 --- a/package.json +++ b/package.json @@ -142,6 +142,7 @@ "alt": "git+https://github.com/bitshares/alt.git#b6b42ceb790ca321402e9add95b9f77af8a7657d", "alt-container": "git+https://github.com/bitshares/alt-container.git#cf4e2c690a54e49fc9fe2dc99ab8816e6c3e5a86", "alt-react": "git+https://github.com/bitshares/alt-react.git#d91addef51f58e41e9857ebb0dd9177cfbd3b583", + "antd": "^3.26.2", "bignumber.js": "^4.0.0", "bitshares-report": "git+https://github.com/bitshares/bitshares-report.git#bba397fc7b4eb903d1ca109ac33301e9d2e2d753", "bitshares-ui-style-guide": "git+https://github.com/bitshares/bitshares-ui-style-guide.git#23ca108d47442dc70634797fb113d1e751e9b1cb", From 4c985a8d2c0fa82112e4f3ea52184dc3ad2561e4 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Thu, 12 Dec 2019 18:11:19 +0300 Subject: [PATCH 10/48] add deex gateways --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index 308a279c97..fe19e50a65 100644 --- a/package.json +++ b/package.json @@ -142,7 +142,6 @@ "alt": "git+https://github.com/bitshares/alt.git#b6b42ceb790ca321402e9add95b9f77af8a7657d", "alt-container": "git+https://github.com/bitshares/alt-container.git#cf4e2c690a54e49fc9fe2dc99ab8816e6c3e5a86", "alt-react": "git+https://github.com/bitshares/alt-react.git#d91addef51f58e41e9857ebb0dd9177cfbd3b583", - "antd": "^3.26.2", "bignumber.js": "^4.0.0", "bitshares-report": "git+https://github.com/bitshares/bitshares-report.git#bba397fc7b4eb903d1ca109ac33301e9d2e2d753", "bitshares-ui-style-guide": "git+https://github.com/bitshares/bitshares-ui-style-guide.git#23ca108d47442dc70634797fb113d1e751e9b1cb", From 80a9bb19bcf620c43bc92bee79ddaa3d5e78f75f Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Fri, 13 Dec 2019 12:48:53 +0300 Subject: [PATCH 11/48] add RuDEX's markets to getFeaturedMarkets --- app/branding.js | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/app/branding.js b/app/branding.js index 89d480d0cc..64721cf63e 100644 --- a/app/branding.js +++ b/app/branding.js @@ -189,14 +189,15 @@ export function getMyMarketsQuotes() { ], rudexTokens: [ "PPY", - "RUDEX.GBG", - "RUDEX.GOLOS", - "RUDEX.KRM", - "RUDEX.SBD", - "RUDEX.STEEM", "RUDEX.BTC", "RUDEX.ETH", + "RUDEX.USDT", "RUDEX.EOS", + "RUDEX.GOLOS", + "RUDEX.GBG", + "RUDEX.STEEM", + "RUDEX.SBD", + "RUDEX.KRM", "RUDEX.WLS", "RUDEX.SMOKE", "RUDEX.GRC" @@ -275,9 +276,14 @@ export function getFeaturedMarkets(quotes = []) { ["USD", "GDEX.EOS"], ["USD", "GDEX.BTO"], ["USD", "OPEN.EOSDAC"], - ["USD", "RUDEX.BTC"], + ["USD", "RUDEX.GOLOS"], ["USD", "RUDEX.STEEM"], ["USD", "RUDEX.EOS"], + ["USD", "RUDEX.BTC"], + ["USD", "RUDEX.ETH"], + ["USD", "RUDEX.USDT"], + ["USD", "RUDEX.WLS"], + ["USD", "RUDEX.SMOKE"], ["CNY", "BTS"], ["CNY", "OPEN.BTC"], ["CNY", "USD"], @@ -294,9 +300,13 @@ export function getFeaturedMarkets(quotes = []) { ["CNY", "GDEX.USDT"], ["CNY", "GDEX.GXC"], ["CNY", "RUDEX.GOLOS"], - ["CNY", "RUDEX.GBG"], - ["CNY", "RUDEX.BTC"], + ["CNY", "RUDEX.STEEM"], ["CNY", "RUDEX.EOS"], + ["CNY", "RUDEX.BTC"], + ["CNY", "RUDEX.ETH"], + ["CNY", "RUDEX.USDT"], + ["CNY", "RUDEX.WLS"], + ["CNY", "RUDEX.SMOKE"], ["OPEN.BTC", "BTS"], ["OPEN.BTC", "OPEN.ETH"], ["OPEN.BTC", "OPEN.DASH"], @@ -324,20 +334,26 @@ export function getFeaturedMarkets(quotes = []) { ["USD", "OPEN.MAID"], ["OPEN.USDT", "OPEN.BTC"], ["OPEN.BTC", "OPEN.MAID"], + ["RUDEX.USDT", "RUDEX.BTC"], + ["RUDEX.USDT", "RUDEX.ETH"], + ["RUDEX.USDT", "RUDEX.EOS"], + ["RUDEX.BTC", "RUDEX.ETH"], + ["RUDEX.BTC", "RUDEX.EOS"], + ["RUDEX.BTC", "RUDEX.STEEM"], + ["RUDEX.BTC", "RUDEX.GOLOS"], + ["RUDEX.BTC", "RUDEX.WLS"], ["BTS", "OPEN.MAID"], ["BTS", "OPEN.HEAT"], ["BTS", "OPEN.INCENT"], ["RUB", "RUDEX.GOLOS"], - ["RUB", "RUDEX.GBG"], + ["BTS", "RUDEX.GOLOS"], ["BTS", "RUDEX.STEEM"], - ["BTS", "RUDEX.SBD"], - ["BTS", "RUDEX.KRM"], ["BTS", "RUDEX.EOS"], ["BTS", "RUDEX.BTC"], ["BTS", "RUDEX.ETH"], + ["BTS", "RUDEX.USDT"], ["BTS", "RUDEX.WLS"], ["BTS", "RUDEX.SMOKE"], - ["BTS", "RUDEX.GRC"], ["BTS", "XBTSX.STH"], ["BTS", "XBTSX.WAVES"], ["BTS", "ZEPH"], From f8f6666514f9beb10affcf44e1093ed46a83c6cb Mon Sep 17 00:00:00 2001 From: sschiessl-bcp Date: Tue, 17 Dec 2019 21:48:59 +0100 Subject: [PATCH 12/48] update russian Signed-off-by: sschiessl-bcp --- app/assets/locales/locale-ru.json | 625 +++++++++++++++--------------- 1 file changed, 307 insertions(+), 318 deletions(-) diff --git a/app/assets/locales/locale-ru.json b/app/assets/locales/locale-ru.json index ad5d32a81b..8eba0de6f6 100644 --- a/app/assets/locales/locale-ru.json +++ b/app/assets/locales/locale-ru.json @@ -9,7 +9,7 @@ "average_price": "Средняя цена", "bittrex_scam": "Этот аккаунт не является реальным аккаунтом Bittrex, пожалуйста, отправляйте на этот аккаунт: bittrex-deposit.", "bts_market": "Рынок", - "cancel_orders": "Cancel orders", + "cancel_orders": "Отменить ордера", "collaterals": "Маржинальные позиции", "confirm_asset_modal": { "are_you_sure": "Вы уверены, что хотите сохранить все изменения в данных вкладках?", @@ -60,22 +60,22 @@ "id": "Идентификатор аккаунта", "identicon": "Айдентикон", "ignore": "Скрыть", - "inCollateral": "In Collateral", - "inOrders": "In Orders", - "inVestingBalances": "In Vesting Balances", + "inCollateral": "В обеспечении", + "inOrders": "В ордерах", + "inVestingBalances": "В вестинговых балансах", "in_open": "Это количество %(asset)s, находящихся в ваших открытых ордерах.", "in_open_value": "Это оценочная стоимость %(asset)s, находящихся в ваших открытых ордерах.", "intro_text_1": "Ваша децентрализованная платформа", "intro_text_2": "DEX децентрализована по самой своей сути и позволяет вам торговать основным токеном BitShares (BTS) и разнообразными не требующими доверия активами со стабильной, привязанной к рынку ценой, такими как bitUSD, bitCNY, bitGold и многими другими. Все эти активы могут торговаться без риска, связанного с участием контрагентов, оставляя контроль над вашими средствами исключительно в ваших руках.", - "intro_text_3": "Также DEX дает возможность создавать выпускаемые пользователем активы (user-issued assets – UIA), которые могут торговаться против любого другого не требующего доверия/выпущенного пользователем актива на платформе. Самым известным эмитентом на платформе является OpenLedger, поддерживающий такие активы, как BTC, ETH, DASH, STEEM и многие другие", + "intro_text_3": "Также DEX дает возможность создавать выпускаемые пользователем активы (user-issued assets – UIA), которые могут торговаться против любого другого не требующего доверия/выпущенного пользователем актива на платформе. Самым известным эмитентом на платформе является OpenLedger, поддерживающий такие активы, как BTC, ETH, DASH, STEEM, LTC, DOGE и многие другие", "intro_text_4": "Это уникальный микс традиционной и децентрализованной торговли, и всё это в столь знакомом для криптовалютных трейдеров интерфейсе биржи. Удачной торговли!", "intro_text_title": "Добро пожаловать в %(wallet_name)s", "login_with": "Войти при помощи", "market_actions": "Рыночные операции", - "market_orders": "Market orders", + "market_orders": "Рыночные ордера", "market_value": "Рыночная стоимость", "member": { - "action": "Action", + "action": "Действие", "annual": "Годовой подписчик", "available": "Доступно к востребованию", "balance_type": "Тип", @@ -83,33 +83,33 @@ "cashback": "Остаток вестингового баланса", "claim": "Востребовать сейчас", "coindays": "монето-дней", - "days": "days", + "days": "дней", "earned": "Накоплено монето-дней", "expires": "Истекает", "fee_allocation": "Распределение комиссии", - "fee_division": "Fee Division", + "fee_division": "Распределение комиссии", "fee_division_text": { - "paragraph_1": "Every time %(account)s pays a transaction fee, that fee is divided among several different accounts. The network takes %(fee_share_network)s%. The Lifetime Member who referred %(account)s takes %(fee_share_ltm)s%.", - "paragraph_2": "The registrar is the account that paid the transaction fee to register %(account)s with the network and decide how to divide the remaining %(fee_share_registrar)s% between themselves and their own Affiliate Referrer program. %(account)s's registrar chose to share %(fee_share_affiliate)s% of the total fee with the Affiliate Referrer.", - "paragraph_3": "Fee shares, market rewards and other rewards is found on the Vesting Balances page" + "paragraph_1": "Каждый раз, когда %(account)s оплачивает комиссию за перевод, эта комиссия распределяется между несколькими отдельными аккаунтами. Сеть получает %(fee_share_network)s%. Пожизненный член, который привлёк в сеть %(account)s, получает %(fee_share_ltm)s%.", + "paragraph_2": "Регистратор – это аккаунт, оплативший комиссию за регистрацию в сети %(account)s, который имеет право решать, как будут распределяться оставшиеся %(fee_share_registrar)s% на него самого и его реферальную программу. Регистратор %(account)s решил выделить аффилированным реферерам %(fee_share_affiliate)s% от суммы комиссии.", + "paragraph_3": "На странице Вестинговых балансов вы найдёте доли комиссий, вознаграждения рынка и другие бонусы" }, - "fee_pending": "Pending Fees", - "fee_pending_text": "Fees paid by %(account)s are divided among the network, referrers, and registrars once every maintenance interval (%(maintenanceInterval)s seconds). The next maintenance time is %(nextMaintenanceTime)s.", - "fee_vesting": "Vesting Fees", - "fee_vesting_text": "Most fees are made available immediately, but fees over %(vestingThresholdAmount)s %(vestingThresholdAsset)s (such as those paid to upgrade your membership or register a premium account name) must vest for a total of %(vestingPeriod)s days.", + "fee_pending": "Комиссии в обработке", + "fee_pending_text": "Комиссии, оплачиваемые %(account)s, распределяются между сетью, реферерами и регистраторами один раз в каждый период обслуживания (%(maintenanceInterval)s секунд). Следующее время обслуживания наступит в %(nextMaintenanceTime)s.", + "fee_vesting": "Вестинговые комиссии", + "fee_vesting_text": "Большинство комиссий становятся доступны немедленно, однако комиссии свыше %(vestingThresholdAmount)s %(vestingThresholdAsset)s (например, плата за повышение уровня вашего членства или регистрацию премиум-имени) должны находиться в вестинге %(vestingPeriod)s дней.", "fees_cashback": "Статистика выплат", "fees_paid": "Всего выплачено комиссий", "join": "Присоединился ", "lifetime": "Пожизненный член", "lifetime_referrer": "Пожизненный реферер", - "lifetime_title": "Earn cashback", + "lifetime_title": "Получайте кэшбэк", "membership": "Членство", "membership_expiration": "Окончание членства", "network_percentage": "Сеть", - "ref_distribution": "Referral Fee Distribution", - "referal_fees": "Referral Fee Distribution", - "referral_info": "As a lifetime member (LTM) you are eligable for a %(feesCashback)s% cashback on all your fees. You will also recieve cashback from markets with a referral reward. The referral reward is based on your own and your referred members market orders.", - "referral_link": "Ваша реферальная ссылка", + "ref_distribution": "Распределение реферальных комиссий", + "referal_fees": "Распределение реферальных комиссий", + "referral_info": "Как пожизненный член (LTM) вы имеете право на кэшбэк в размере %(feesCashback)s% от всех ваших комиссий. Вы также будете получать кэшбэк с рынков с реферальным вознаграждением. Реферальное вознаграждение основано на ваших собственных рыночных ордерах и также ордерах ваших рефералов.", + "referral_link": "Ваша персональная реферальная ссылка", "referral_text": "Дайте эту ссылку людям, которых вы хотите пригласить в %(wallet_name)s", "referrals": "Рефералы", "referrer": "Аффилированный реферер", @@ -120,7 +120,7 @@ "stats": "Статистика членства", "subscribe": "Купить годовую подписку", "suspected_scammer": "Предполагаемый мошенник", - "total_ref": "Total referred %(total)s", + "total_ref": "Всего рефералов %(total)s", "unknown": "Неизвестный пользователь", "upgrade_lifetime": "Купить пожизненную подписку", "vested": "В вестинге" @@ -135,7 +135,7 @@ "premium_name_warning": "Это премиум имя, которое является более дорогостоящим, чем имя, содержащее дефис (-) или цифры." }, "new_user": "Новый пользователь?", - "no_order_history": "No order history", + "no_order_history": "История ордеров отсутствует", "no_orders": "Нет открытых ордеров", "no_price": "--", "open_orders": "Открытые ордера", @@ -156,7 +156,7 @@ "pay": "Отправить на", "pay_from": "Оплатить с аккаунта ", "payees": "Получатели", - "percent": "Процент от общего объёма предложения", + "percent": "% всего предложения", "perm": { "account_name_or_key": "Имя аккаунта или ключ", "acct_or_key": "Аккаунт / Ключ / Адрес", @@ -185,11 +185,11 @@ "private": "Приватный ключ (WIF – Wallet Import Format)", "public": "Публичный ключ", "publish": "Сохранить", - "publish_prediction": "Publish", + "publish_prediction": "Опубликовать", "remove_proxy": "Удалить прокси", "remove_text": "Удалить", "reset": "Сбросить", - "resolve_prediction_disabled_button": "The button will be enabled after resolution date has passed", + "resolve_prediction_disabled_button": "Кнопка будет активирована в момент наступления даты подведения итога", "save": "Сохранить изменения", "save_all": "Сохранить все изменения", "show": "Показать", @@ -210,12 +210,12 @@ "portfolio": "Портфель", "propose_from": "Предложить от", "proposed_transactions": { - "advanced_feature": "This is an advanced feature. Please answer the following questions", - "answered_no": "If your answer to any of the questions above is no, do NOT continue. You can also turn this on and off in Settings.", - "question1": "Do you know what a proposal is?", - "question2": "Are you expecting a proposal?", - "question3": "Are you aware that a proposal can steal your funds or lock you out of the account?", - "show_me_proposals": "Show me Proposals" + "advanced_feature": "Это расширенная функция. Пожалуйста, ответьте на представленные вопросы", + "answered_no": "Если ваш ответ на любой из приведенных выше вопросов – «нет», то НЕ продолжайте. Вы также можете включить и выключить это в настройках.", + "question1": "Знаете ли вы, что такое предложение в сети Bitshares?", + "question2": "Вы ожидаете предложения?", + "question3": "Знаете ли вы, что предложение может украсть ваши средства или заблокировать вход в ваш аккаунт?", + "show_me_proposals": "Показать предложения" }, "qty": "Кол-во", "quote": "Тикер", @@ -226,7 +226,7 @@ "see_open": "Отобразить открытые ордера", "select_placeholder": "Выберите аккаунт...", "settle": "Погасить", - "settle_orders": "Settle orders", + "settle_orders": "Ордера на погашение", "show_hidden": "Скрытые", "show_ignored": "Показать скрытые аккаунты", "show_visual": "Визуально", @@ -301,7 +301,7 @@ "flags": "Маркеры", "force_settlement_delay_sec": "Задержка для принудительного погашения (в минутах)", "force_settlement_offset_percent": "Процент смещения принудительного погашения", - "global_settle": "Позволить эмитенту форсировать принудительное погашение", + "global_settle": "Позволить владельцу актива форсировать принудительное погашение", "id": "ID", "invalid_backing_asset_change": "Вы не можете изменить залоговый актив того актива, текущее предложение которого не равно нулю", "invalid_market_pair": "Предпочтительная рыночная пара не может быть с того же рынка", @@ -317,9 +317,9 @@ "mpa": "SmartCoin", "name": "Имя актива", "need_asset": "Как минимум один из двух активов должен быть %(name)s", - "new_issuer": "Новый аккаунт владельца", + "new_issuer": "Новый аккаунт владельца актива", "optional": "Дополнительные настройки", - "override_authority": "Эмитент может возвращать активы самому себе", + "override_authority": "Владелец актива может переводить актив обратно самому себе", "perm_warning": "ПРЕДУПРЕЖДЕНИЕ: Права доступа могут быть только отключены; однажды отключив, вы не сможете активировать их повторно!", "pm": "Рынок бинарных прогнозов", "precision": "Точность", @@ -327,8 +327,8 @@ "primary": "Основные настройки", "quote": "Количество котируемого актива", "quote_name": "Котируемый актив", - "resolve_prediction": "Resolve prediction", - "resolve_prediction_text": "The asset prediction can be resolved here.", + "resolve_prediction": "Подвести итог прогноза", + "resolve_prediction_text": "Подвести итоги прогноза по активу можно здесь.", "reward_percent": "Процент вознаграждения", "reward_percent_tooltip": "Если была установлена рыночная комиссия, то процент вознаграждения указывает, какая часть этой комиссии будет распределяться через программу вознаграждения рефералов, помимо отчислений владельцу актива.", "short": "Короткое имя (максимум 32 символа)", @@ -336,7 +336,7 @@ "to": "Эмитировать на аккаунт", "too_large": "Максимальное предложение токенов слишком велико, пожалуйста, выберите меньшее количество", "too_many_feed": "Число производителей котировок превысило максимально допустимое (%(max)s).", - "transfer_restricted": "Эмитент должен утверждать все переводы", + "transfer_restricted": "Владелец актива должен утверждать все переводы", "update_owner": "Обновить владельца", "update_owner_text": "Владелец актива может передать владение другому аккаунту, используя данную форму:", "visible": "Не отображать актив в поиске и на рынках", @@ -349,11 +349,11 @@ "no_balances": "У этого аккаунта нет вестинговых балансов", "title": "Вестинговые балансы", "type": { - "cashback": "Cashback", - "market_fee_sharing": "Market fee sharing", - "unspecified": "Unspecified", - "witness": "Witness", - "worker": "Worker" + "cashback": "Кэшбэк", + "market_fee_sharing": "Разделение рыночной комиссии", + "unspecified": "Не указан", + "witness": "Заверитель", + "worker": "Работник" } }, "votes": { @@ -494,18 +494,18 @@ "errors": { "below": "Ваш коэффициент обеспечения ниже %(mr)s, что не допускается.", "below_info": "Поддерживающий коэффициент обеспечения вашей позиции находится ниже требуемого! Коэффициент обеспечения можно увеличить, тогда как долг можно только уменьшить.", - "below_mcr_tcr": "Any ratio below %(mr)s will be treated as %(mr)s by chain.", + "below_mcr_tcr": "Любой коэффициент ниже %(mr)s будет расцениваться блокчейном как %(mr)s.", "below_ratio_mcr_update": "Ваш коэффициент обеспечения ниже вашего оригинального %(ocr)s. Для попавших под маржин колл ордеров доступен только увеличенный коэффициент.", "close": "Ваш коэффициент обеспечения близок к %(mr)s, т.е. в случае падения цены данная позиция попадёт под маржин колл.", "collateral": "Недостаточный баланс залога", "increased_debt_on_margin_call": "Вы увеличили свой долг, что является недопустимым действием при обновлении попавшей под маржин колл позиции" }, - "lockedCR": "Locking Collateral Ratio will override other locked fields", + "lockedCR": "Фиксация коэффициента обеспечения будет приоритетнее других фиксированных полей", "maximize_debt_set_ratio_slider": "Прежде чем максимизировать долг, вы должны задать коэффициент залогового обеспечения", "no_valid": "Для %(asset_symbol)s нет действующих котировок", "pay_max_debt": "Выплатить максимальный долг", "target_collateral_ratio": "Целевой коэффициент обеспечения", - "target_collateral_ratio_explanation": "Когда позиция попадет под маржин колл, соответствующий ордер будет достаточно большим, чтобы привести коэффициент обеспечения позиции к целевому коэффициенту обеспечения (TCR) или превысить его.", + "target_collateral_ratio_explanation": "Соответствующий маржин коллу ордер будет настолько большим, чтобы привести коэффициент обеспечения позиции к целевому коэффициенту обеспечения (TCR).", "target_collateral_ratio_short": "Целевой коэффициент обеспечения (TCR)", "title": "%(asset_symbol)s маржа", "update": "Обновить", @@ -519,10 +519,10 @@ "connection": { "automatic_reconnect": " Повторная попытка соединения будет совершена автоматически через %(reconnect_in_seconds)s секунд.", "manual_ping": "Пинговать узлы", - "manual_ping_and_narrow_down": "Narrow down nodes and ping", + "manual_ping_and_narrow_down": "Сузить спектр узлов и пинга", "manual_reconnect": "Попробуйте присоединиться повторно", - "narrow_down_nodes": "Narrow down nodes", - "narrow_down_nodes_tooltip": "Restrict the ping and automatic selection process of the wallet to only the selected nodes/regions. Choose nodes/regions close to your geolocation, this may significantly increase your felt connectivity. Leave empty to consider all.", + "narrow_down_nodes": "Сузить спектр узлов", + "narrow_down_nodes_tooltip": "Ограничьте процесс пинга и автоматического выбора в кошельке только выбранными узлами/регионами. Выбирайте узлы/регионы, близкие к вашей геолокации, это может значительно улучшить связь. Оставьте это поле пустым, чтобы рассмотреть все доступные варианты.", "out_of_sync": "Ваше соединение рассинхронизировано %(out_of_sync_seconds)s секунд.", "title_out_of_sync": "Соединение рассинхронизировано", "want_to_reconnect": "Если соединение восстановится, данное сообщение исчезнет автоматически." @@ -538,7 +538,7 @@ } }, "customizable_table": { - "customize_the_columns": "Customize the Columns" + "customize_the_columns": "Кастомизировать столбцы" }, "dashboard": { "featured_markets": "Рекомендуемые рынки", @@ -547,11 +547,11 @@ "top_markets": "Лучшие рынки" }, "errors": { - "loading_from_blockchain": "Error fetching form the blockchain, please retry.", - "loading_from_es": "Error fetching from elastic search database." + "loading_from_blockchain": "Ошибка при извлечении данных из блокчейна, пожалуйста, повторите попытку.", + "loading_from_es": "Ошибка при извлечении из базы данных elasticsearch." }, "exchange": { - "actions": "Actions", + "actions": "Действия", "add_quote": "Добавить", "asks": "Ордера на продажу", "atr": "Средний истинный диапазон", @@ -566,15 +566,15 @@ "buy_sell": "Форма ордера", "buysell_formatter": "{direction} {asset}", "call": "Цена досрочного погашения", - "cancel_order_select_all": "Select all orders", + "cancel_order_select_all": "Выбрать все ордера", "cancel_selected_orders": "Отменить выбранный ордер(а)", "change": "Изменить", - "chart_error": "Chart already exist", + "chart_error": "График уже существует", "chart_height": "Высота графика (в пикселях)", "chart_hide": "Скрыть графики", - "chart_load": "Load", + "chart_load": "Загрузить", "chart_modal": "Параметры графика", - "chart_save": "Save", + "chart_save": "Сохранить", "chart_type": "Тип графика", "checking_for_worth_less_settlement": "Идёт поиск возможностей продать на рынке по лучшей цене, пожалуйста, подождите...", "confirm_buy": "Ваш ордер в %(diff)s раз выше, чем самое низкое предложение, вы уверены?", @@ -586,9 +586,9 @@ "deposit": "Внести депозит", "description": "Описание", "ema": "Экспоненциальная скользящая средняя", - "enter_chart_layout_name": "Enter Chart Layout Name", + "enter_chart_layout_name": "Введите имя схемы размещения графиков", "featured": "Лучшие рынки", - "fee": "Fee", + "fee": "Комиссия", "feed_price": "Цена котировок", "filter": "Фильтрация...", "flip": "Инвертировать", @@ -603,10 +603,10 @@ "invalid_price": "Недействительная цена", "invert": "Инвертировать цену", "latest": "Последние", - "layout_name": "Layout Name", + "layout_name": "Имя схемы размещения", "limit": "Лимит", - "load_chart_layout": "Load Chart Layout", - "load_custom_charts": "Load custom charts", + "load_chart_layout": "Загрузить схему размещения графиков", + "load_custom_charts": "Загрузить кастомные графики", "lowest_ask": "Самый низкий запрос", "maintenance": "Цена требования дополнительного обеспечения", "market": "Рынок", @@ -614,7 +614,7 @@ "market_frozen": "Владелец %(asset)s запретил торговлю на этом рынке.", "market_name": "Мои рынки", "market_picker": { - "filter_by_issuer": "Фильтровать по эмитенту", + "filter_by_issuer": "Фильтровать по владельцу актива", "find_by_asset": "Найти по активу", "results": "Результаты (%(total_assets)s)", "search": "Имя актива", @@ -625,7 +625,7 @@ "title": "Выбор рынка", "use": "Использовать" }, - "modified": "Modified", + "modified": "Модифицированный", "more": "Найти рынки", "move_down": "Вниз", "move_up": "Вверх", @@ -643,7 +643,7 @@ "order_book": "Биржевой стакан", "order_depth": "Глубина рынка", "order_grouping": "Группировка ордеров %(orderlimit)s%", - "orders": "Orders", + "orders": "Ордера", "others": "Другие", "overbought": "Перекуплен", "oversold": "Перепродан", @@ -672,26 +672,26 @@ "quick_deposit_gateway": "Разместите депозит в реальных %(asset)s с помощью шлюза, чтобы получить долговые расписки, которые обеспечиваются средствами соответствующего шлюза", "quick_deposit_gateway_button": "Использовать шлюз", "quick_deposit_tooltip": "Разместить депозит %(asset)s, нажмите для показа опций", - "quick_trade": "Quick trade", + "quick_trade": "Быстрая торговля", "quick_trade_details": { - "amount": "Amount", - "effective": "effective", - "feed_price": "Feed price", - "id": "Id", - "last_price": "Last market price", - "liquidity_penalty": "Liquidity penalty", - "market_fee": "Market fee", - "order": "Order", - "orders": "Orders", - "placeholder_receive": "Choose asset to receive", - "placeholder_sell": "Choose asset to sell", - "price": "Price", - "seller": "Seller", - "subscribe_to_market": "Subscribe to market", - "tooltip": "Enter at least three characters of an asset symbol to search", - "total": "Total", - "transaction_fee": "Transaction fee", - "your_price": "Your price" + "amount": "Сумма", + "effective": "фактический", + "feed_price": "Цена котировок", + "id": "ID", + "last_price": "Последняя рыночная цена", + "liquidity_penalty": "Взыскание за ликвидность", + "market_fee": "Рыночная комиссия", + "order": "Ордер", + "orders": "Ордера", + "placeholder_receive": "Выбрать актив для получения", + "placeholder_sell": "Выбрать актив для продажи", + "price": "Цена", + "seller": "Продавец", + "subscribe_to_market": "Подписаться на этот рынок", + "tooltip": "Для поиска нужно ввести как минимум три символа из названия актива", + "total": "Всего", + "transaction_fee": "Комиссия за транзакцию", + "your_price": "Ваша цена" }, "quote": "Котируемая валюта:", "quote_selection": "Изменить тикер валюты", @@ -699,8 +699,8 @@ "receive": "Получить", "remove": "Удалить", "rsi": "Индекс относительной силы", - "save_custom_charts": "Save custom charts", - "save_new_chart_layout": "Save New Chart Layout ", + "save_custom_charts": "Сохранить кастомные графики", + "save_new_chart_layout": "Сохранить новую схему размещения графиков", "scaled": "Масштабирован", "search": "Ищите другие рынки здесь", "sell": "Продать", @@ -719,8 +719,8 @@ "grouping_standalone": "Отдельная", "hidden_chart": "Скрыть график", "horizontal": "Горизонтальная", - "position_order_asset_opt1": "Ордера над активом", - "position_order_asset_opt2": "Актив над ордерами", + "position_order_asset_opt1": "Биржевой стакан выше Формы ордера", + "position_order_asset_opt2": "Форма ордера выше Биржевого стакана", "position_order_form_opt1": "Покупка - продажа", "position_order_form_opt2": "Продажа - покупка", "position_order_orders_opt1": "Покупка - продажа", @@ -758,12 +758,9 @@ "hide_function_buttons": "Скрыть все кнопки, которыми можно управлять из персонализированной формы", "increase_chart_height": " Увеличить высоту графика", "market_location": "На какую сторону прикрепить вертикальный биржевой стакан. Это поменяет его местами с панелью рынка", - "market_trades": "", - "my_trades": "", - "open_orders": "", "order_book_grouping": "Сгруппировать ордера, которые близки по заданному проценту", "order_style": "Использовать вертикальный биржевой стакан для прикрепления к боковой панели", - "orderbook_auto_scroll": "Автоматически прокручивать биржевой стакан, чтобы держаться центра при поступлении новых ордеров. Отключите, чтобы разрешить прокрутку", + "orderbook_auto_scroll": "Автоматически прокручивать биржевой стакан для просмотра новых ордеров. Отключите, чтобы разрешить прокрутку", "panel_grouping": "Задать группировку панелей", "position_order_asset": "Задать вертикальный порядок для формы ордера / биржевого стакана", "position_order_form": "Задать горизонтальный порядок для формы ордера", @@ -771,7 +768,6 @@ "reduce_scrollbars": "Отключить полосы прокрутки по умолчанию", "reload": "Изменение этой опции вступит в силу только после ручной перезагрузки", "reverse_order_book": "Отобразить биржевой стакан в обратном порядке, чтобы ордера на покупку отображались сверху", - "settlements": "", "show_market_depth": "Показывать глубину рынка", "show_price_chart": " Показывать график цен", "single_colum_order_form": "Закрепить цену, количество, общую сумму и т.п. в одной колонке (неподвижно)" @@ -786,10 +782,10 @@ "settle_globally_settled_tooltip": "Этот актив попал под глобальное погашение. Вы можете провести мгновенное погашение по цене глобального погашения (смотрите информацию на бирже или в подробностях об активе)", "settle_offset": "Смещение расчетной цены: %(offset)s%", "settle_orders": "Ордера на погашение", - "settlement_date": "Settlement date", - "settlement_description": "Settlement of %(quoteAsset)s %(quoteName)s", + "settlement_date": "Дата погашения", + "settlement_description": "Погашение %(quoteAsset)s %(quoteName)s", "settlement_hint": "Вы пытаетесь погасить {long}. Текущая цена на {market_link}", - "settlement_of": "Settlement of", + "settlement_of": "Погашение ", "short": "Шорт", "show_all_orders": "Отобразить все %(rowcount)s ордера", "show_all_trades": "Отобразить все %(rowcount)s сделки", @@ -835,7 +831,7 @@ "bid": "Цена предложения", "collateral": "Дополнительное залоговое обеспечение", "debt": "Покрытый долг", - "empty": "No collateral bids", + "empty": "Нет залоговых ставок", "included": { "no": "Нет", "partial": "Частично", @@ -848,25 +844,25 @@ "claim_balance": "Востребовать остаток пула комиссий", "claim_fees": "Востребовать комиссии", "claim_pool_text": "Владелец актива может выводить средства из пула комиссий, используя эту форму:", - "claim_text": "Эмитент актива может востребовать любые накопленные комиссии здесь.", + "claim_text": "Владелец актива может востребовать любые накопленные комиссии здесь.", "core_exchange_rate": "Основной обменный курс (CER)", "fund": "Пополнить пул комиссий", "fund_text": "Любой желающий может добавлять %(core)s в пул комиссий, используя эту форму:", "pool_balance": "Баланс пула", "pool_text": "Пул комиссий используется для оплаты комиссий в %(core)s путём конвертации комиссии в %(asset)s в %(core)s. Если в пуле комиссий заканчиваются средства, то комиссии становится невозможно платить в %(asset)s, и они начнут по умолчанию выплачиваться в %(core)s.

Основной обменный курс – это цена, по которой %(asset)s конвертируются в %(core)s.", - "select_fee_asset": "Select asset to pay fee", + "select_fee_asset": "Выберите актив для оплаты комиссии", "title": "Пул комиссий", - "unclaimed_issuer_income": "Невостребованный доход эмитента", - "use_asset_as_default_fee": "Make selected asset default for paying fees", - "use_selected_asset": "Use selected asset" + "unclaimed_issuer_income": "Невостребованный доход владельца актива", + "use_asset_as_default_fee": "Сделать выбранный актив приоритетным для оплаты комиссий", + "use_selected_asset": "Использовать выбранный актив" }, "feed_producer": "Производитель котировок", "feed_producer_text": "Утвержденные производители котировок могут публиковать новые котировки посредством представленной ниже формы:", "info": "Информация об активе", "invalid": "%(name)s – недопустимое имя актива", "margin_positions": { - "click_to_switch_to_cumulative": "Click to switch between cumulative and position values", - "empty": "No margin positions", + "click_to_switch_to_cumulative": "Нажмите, чтобы переключиться между кумулятивным и позиционным значением.", + "empty": "Маржинальные позиции отсутствуют", "ratio_danger": "Позиция находится ниже поддерживающего коэффициента обеспечения (MCR) и попадёт под маржин колл", "ratio_warning": "Позиция находится близко к поддерживающему коэффициенту обеспечения (MCR) и рискует попасть под маржин колл", "title": "Маржинальные позиции" @@ -883,16 +879,16 @@ "whitelist_markets": "Рынки белого списка" }, "prediction_market_asset": { - "prediction": "Prediction", - "resolution_date": "Resolution date", - "tooltip_prediction": "The prediction is a statement defined by the asset owner. If the statement is true, this prediction market asset should be resolved to a settlement price of 1 by the asset owner.", - "tooltip_resolution_date": "The resolution date is an informal statement when the asset owner intends to resolve this betting market." + "prediction": "Прогноз", + "resolution_date": "Дата подведения итога", + "tooltip_prediction": "Прогноз – это утверждение, созданное владельцем актива. Если данное утверждение верно, этот актив прогнозного рынка должен быть рассчитан по цене 1:1 владельцем актива.", + "tooltip_resolution_date": "Дата подведения итога – это неофициальное заявление о том, когда владелец актива намеревается подвести итог этого рынка ставок." }, "price_feed": { "external_feed_price": "Цена в котировках (медиана котировок заверителей)", "feed_lifetime": "Срок действия котировок (в часах)", "feed_price": "Цена котировок", - "global_settlement_price": "Global settlement Price will be", + "global_settlement_price": "Цена глобального погашения составит ", "global_settlement_trigger": "Глобальное погашение запускается при цене", "maintenance_collateral_ratio": "Поддерживающий коэффициент обеспечения (MCR)", "maximum_short_squeeze_price": "Максимальная цена короткого сжатия (MSSP)", @@ -903,7 +899,7 @@ }, "price_feed_data": { "core_exchange_rate": "CER (основной обменный курс)", - "empty": "No valid feed producers", + "empty": "Нет подходящих производителей котировок", "feed_price": "Цена котировок", "maintenance_collateral_ratio": "MCR (поддерживающий коэффициент обеспечения)", "maximum_short_squeeze_ratio": "MSSR (максимальный коэффициент короткого сжатия)", @@ -923,7 +919,7 @@ "gs_or": "или", "gs_place_bid": "нажмите здесь, чтобы разместить предложение", "gs_revert": "Восстановление", - "gs_revive": "Актив будет восстановлен автоматически, когда цена автовосстановления (включая заявки) превысит цену в котировках или же долг будет принудительно погашен. ", + "gs_revive": "Актив будет восстановлен автоматически, когда цена котировок превысит цену автовосстановления (включая заявки) или же долг будет принудительно погашен. ", "gs_see_actions": "показать действия с активом", "max_settle_volume": "Максимальный объем погашения на каждый период обслуживания", "offset": "включая смещение", @@ -937,7 +933,7 @@ "summary": { "asset_type": "Тип актива", "current_supply": "Текущее предложение", - "issuer": "Эмитент", + "issuer": "Владелец актива", "market_fee": "Рыночная комиссия", "market_fee_referral_reward_percent": "Реферальное вознаграждение с рыночной комиссии", "stealth_supply": "Стелс предложение" @@ -955,9 +951,8 @@ }, "assets": { "backing_asset": "Актив обеспечения", - "blacklisted": "This asset is blacklisted, beware of scam attempts!", "id": "ID", - "issuer": "Эмитент", + "issuer": "Владелец актива", "market": "SmartCoins", "precision": "Точность", "prediction": "Активы рынка прогнозов", @@ -971,14 +966,14 @@ "asset_issue": "Количество к выпуску", "asset_update": "Обновляемый актив", "authorizing_account": "Авторизующий аккаунт", - "call_limit": "Предел колла, %(price)s", + "call_limit": "Предел колла %(price)s", "common_options": "Общие параметры", "count": "Количество транзакций", "date": "Дата", "fee_payer": "Оплачивающий комиссии аккаунт", "feed_price": "Цена котировок, %(price)s", "go_to": "Перейти к блоку", - "gs_support": "Global settlement limit, %(price)s", + "gs_support": "Предел глобального погашения, %(price)s ", "id": "ID блока", "key": "Публичный ключ", "lifetime": "Обновить до пожизненного членства", @@ -1075,40 +1070,38 @@ }, "external_service_provider": { "bridge": { - "description": "Bridges are external service providers that allow you to swap assets in and out of the BitShares Blockchain. For example, you can send your BTC on the Bitcoin Blockchain to a Bridge, who will swap it and give you an equivalent amount of BTS or another Gateways UIA on the BitShares Blockchain (for a fee of course). Normally, a Bridge does not hold your funds, but trust is required that they send you back the proper amount of the target asset. As it is an external service providers you implicitly agree to their Terms and Conditions by using any of their services or assets.", - "short": "Bridge", - "what_is": "What is a Bridge?" + "description": "Мосты – это провайдеры внешних сервисов, которые позволяют менять активы в блокчейне BitShares. Например, вы можете отправить свои BTC в блокчейне Bitcoin на мост, который поменяет их и выдаст вам эквивалентное количество BTS или другого шлюзового UIA в блокчейне BitShares (с оплатой комиссии). Обычно мост не удерживает ваши средства у себя, но вам всё же приходится доверять им в том, что они вернут вам нужную сумму целевого актива. Поскольку это сторонние провайдеры, вы косвенно соглашаетесь с их условиями использования услуг или активов.", + "short": "Мост", + "what_is": "Что такое мост?" }, - "disabled_asset_1": "This asset is managed by an external service provider (gateway). Currently deposits and withdrawals for this asset are disabled", - "disabled_asset_2": "For more information visit Settings -> Entry External Service Providers. For any issues or questions please contact the gateway operator directly.", - "expect_more": "If you expect to see more deposit and withdraw options for your assets, please check the External Service Providers in Settings > General.", + "expect_more": "Если вы хотите увидеть больше возможностей депозита и вывода для своих активов, ознакомьтесь с провайдерами внешних сервисов в разделе Настройки > Общие.", "gateway": { - "description": "Gateways are external service providers that allow you to deposit, trade and withdraw assets into the BitShares Blockchain that are not native to it. For example, you can send your BTC on the Bitcoin Blockchain to a Gateway, who will in turn give you an UIA (user issued asset) on the BitShares Blockchain, with the promise that you can withdraw it again (for a fee of course). While you are holding such an UIA on the BitShares Blockchain, the Gateway becomes the custodian of your funds. As it is external service providers you implicitly agree to their Terms and Conditions by using any of their services or assets.", - "prefix": "Prefix", - "short": "Gateway", - "what_is": "What is a Gateway?" + "description": "Шлюзы – это провайдеры внешних сервисов, которые позволяют вам вносить депозиты, торговать и выводить не нативные активы в блокчейне BitShares. Например, вы можете отправить свои BTC в блокчейне Bitcoin на шлюз, который, в свою очередь, выдаст вам UIA (выпущенный пользователем актив) в блокчейне BitShares, с возможностью вывести его снова (с оплатой комиссии). Пока вы держите такой UIA в блокчейне BitShares, шлюз является хранителем ваших средств. Поскольку это внешние провайдеры, вы косвенно соглашаетесь с их условиями использования сервисов или активов.", + "prefix": "Префикс", + "short": "Шлюз", + "what_is": "Что такое шлюз?" }, - "is_down": "The external provider that offers this service is currently not working correctly. You can check the status in the Settings (General > External Service Provider).", + "is_down": "Внешний провайдер, который предоставляет этот сервис, в настоящее время испытывает сбои в работе. Вы можете проверить его статус в Настройках (Общие > Провайдер внешних сервисов).", "selector": { - "cancel": "Cancel", - "choose_services": "Choose Services", - "landing": "Landing Page", - "name": "Name", - "not_now": "Not now", - "table_description": "The table below lists all Gateways and Bridges that are currently integrated with the BitShares UI, this does not reflect any kind of endorsement. It lists the Name (sorted alphabetically), the type (Bridge or Gateway, and if Gateway the asset prefix, e.g. RUDEX.BTC), a link to their landing page with further information and an affiliate link to the Gateways wallet (if exists, usually a branded version of this UI). Please do your own due dilligence.", - "title": "Choose your preferred Service Providers", - "type": "Type", - "use_none": "Use none", - "use_selected": "Use selected", - "wallet": "Wallet" + "cancel": "Отменить", + "choose_services": "Выбрать сервисы", + "landing": "Лендинг", + "name": "Имя", + "not_now": "Не сейчас", + "table_description": "В приведенной ниже таблице перечислены все шлюзы и мосты, которые в настоящее время интегрированы с пользовательским интерфейсом BitShares, однако это не выражает одобрения кого-либо из них. В ней перечислены имена (в алфавитном порядке), типы (мост или шлюз и наличие у шлюза префикса актива, например, RUDEX.BTC), ссылка на их веб-сайт с дополнительной информацией и партнерская ссылка на кошелек шлюза (если таковой существует, обычно это фирменный вариант данного интерфейса). Пожалуйста, проведите собственную оценку перед использованием.", + "title": "Выберите предпочтительных провайдеров сервисов", + "type": "Тип", + "use_none": "Не использовать никакой", + "use_selected": "Использовать выбранный", + "wallet": "Кошелек" }, "welcome": { - "explanation_dex": "BitShares offers a native decentralized exchange, the BitShares DEX. It is running completely on the blockchain with no need for centralized services, even the order matching is transparently on-chain.", - "explanation_later": "If you want to adjust this later on, you can also choose the external service providers in the Settings.", - "explanation_service_providers": "You can trade anything against everything, as long as the asset (token) is available on the BitShares Blockchain. For tokens that are not native to it there exist external service providers (so called Gateways and Bridges), that allow you to trade tokens like BTC on the BitShares DEX by providing you their own IOU ('I owe you') of it.", - "explanation_what_to_do": "You may choose which of those service providers you want to see readily available in the BitShares UI. To do so, click 'Choose Services'. If you want to keep using the BitShares UI just like before, lick 'Not now'.", - "first_line": "today, we want to give you some insight on the BitShares Blockchain and services around it.", - "hello": "Dear BitShares' User" + "explanation_dex": "BitShares предоставляет собственную децентрализованную биржу, BitShares DEX. Она полностью автономно работает на блокчейне без необходимости в централизованных сервисах, даже сопоставление ордеров выполняется в рамках блокчейна совершенно прозрачно.", + "explanation_later": "Если вы хотите сделать это позже, вы также можете выбрать провайдеров внешних сервисов в Настройках.", + "explanation_service_providers": "Вы можете торговать всем против всего, если только актив (токен) доступен в блокчейне BitShares. Для токенов, которые не являются нативными, существуют провайдеры внешних сервисов (т.н. шлюзы и мосты), позволяющие вам торговать токенами, такими как BTC, на BitShares DEX, предоставляя вам собственный IOU (I owe you), или долговое обязательство.", + "explanation_what_to_do": "Вы можете выбрать, каких из этих провайдеров вы хотите видеть доступными в пользовательском интерфейсе BitShares. Для этого нажмите «Выбрать сервисы». Если вы хотите продолжать использовать интерфейс BitShares, как и раньше, нажмите «Не сейчас».", + "first_line": "Мы хотим дать вам некоторое представление о блокчейне BitShares и дополнительных сервисах этой экосистемы.", + "hello": "Уважаемый пользователь BitShares!" } }, "fees": { @@ -1155,7 +1148,6 @@ "open": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от OpenLedger.", "rudex": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от Rudex.", "trade": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от Blocktrades.", - "win": "", "xbtsx": "Актив %(asset)s обеспечен реальными %(backed)s в соотношении 1:1 и может быть введён/выведен с помощью сервиса шлюза от XBTS." }, "balance": "Текущий баланс", @@ -1203,13 +1195,13 @@ "deposit_warning_memo": "Депозит %(asset)s должен содержать мемо (примечание), иначе он не будет зачислен", "fee": "Комиссия шлюза", "fiat": "Фиат", - "fiat_text": "Примечание: Фиатные шлюзы будут закрыты до дальнейшего уведомления. Приносим извинения за неудобства! Пожалуйста, следите за нашими последними новостями и обновлениями здесь blog.openledger.info", + "fiat_text": "Примечание: фиатные шлюзы закрыты до дальнейшего уведомления. Приносим извинения за неудобства! Пожалуйста, следите за последними новостями и обновлениями данного шлюза здесь: Blog.openledger.info", "frozen": "Аккаунт пользователя %(account)s был заморожен", "gateway": "Шлюз", "gateway_deposit": { "confirmations": { - "last_irreversible": "Средства будут зачислены на счет после того, как транзакция станет необратимой", - "n_blocks": "Средства будут зачислены на счет после %(blocks)s подтверждений сети" + "last_irreversible": "Ваш депозит будет размещён после того, как транзакция станет необратимой", + "n_blocks": "Ваш депозит будет размещён после %(blocks)s подтверждений от сети" } }, "gateway_text": "Здесь выберите, хотите ли вы разместить депозит или вывести средства", @@ -1225,7 +1217,7 @@ "limit_withdraw_asset_max": "Максимальная сумма вывода: %(min)s %(coin)s", "limit_withdraw_asset_min": "Минимальная сумма вывода: %(min)s %(coin)s", "limit_withdraw_asset_none": "Нет", - "logout_now": "Logout now", + "logout_now": "Выйти из аккаунта сейчас", "memo": "Мемо", "meta": { "open_website": "Открыть веб-сайт" @@ -1312,7 +1304,7 @@ "account_notify": "В настоящее время активен аккаунт %(account)s", "account_value": "Стоимость аккаунта", "accounts_manage": "Управление аккаунтами", - "advanced": "Advanced", + "advanced": "Расширенный", "collateral_ratio": "Коэффициент обеспечения", "create_account": "Создать аккаунт", "create_asset": "Создать актив", @@ -1323,7 +1315,7 @@ "exchange": "Биржа", "explorer": "Обозреватель", "help": "Помощь", - "insight": "Insight", + "insight": "Инсайт", "lock": "Выйти (заблокировать локальный кошелек)", "lock_short": "Выйти", "locked_tip": "
Нажмите, чтобы войти.

Закрыв окно браузера, вы также выйдете из аккаунта.", @@ -1468,52 +1460,52 @@ "warning": "Если вы закроете браузер без резервного копирования вашего кошелька, вы потеряете этот аккаунт навсегда." }, "invoice": { - "amount": "Amount", - "date": "Date", - "invalid_format": "Invoice has invalid format", - "invoice_data_found": "Invoice data found", - "items": "Items", - "memo": "Memo", - "note": "Note", - "paid_by": "Paid by", + "amount": "Сумма", + "date": "Дата", + "invalid_format": "Инвойс имеет недопустимый формат", + "invoice_data_found": "Найдены данные инвойса", + "items": "Элементы", + "memo": "Мемо", + "note": "Примечание", + "paid_by": "Оплачен ", "pay": { - "barcode": "Barcode", - "invoice_qr_code": "Invoice QR code", - "payment_qr_code": "Payment QR code", - "title": "Pay" - }, - "pay_button": "Pay %(asset)s to %(name)s", - "pay_invoice": "Pay Invoice", - "pay_to": "Pay To", - "payment_proof": "Payment proof", - "payment_request": "Payment request", - "print_receipt": "Print receipt", - "raw_invoice_data": "raw invoice data", - "receipt_total": "Receipt Total", + "barcode": "Штрих-код", + "invoice_qr_code": "QR-код инвойса", + "payment_qr_code": "QR-код оплаты", + "title": "Оплатить" + }, + "pay_button": "Оплатить %(asset)s %(name)s", + "pay_invoice": "Оплатить инвойс", + "pay_to": "Оплатить на", + "payment_proof": "Доказательство оплаты", + "payment_request": "Запрос на оплату", + "print_receipt": "Распечатать чек", + "raw_invoice_data": "Необработанные данные инвойса", + "receipt_total": "Итого", "request": { - "action": "Action", - "create_invoice_string": "Create invoice string", - "currency": "Currency", - "identifier": "Identifier", - "identifier_tooltip": "The identifier needs to be used as the memo/message when the request is paid.", - "items": "Items", - "note": "Note", - "note_tooltip": "You can attach a note to this payment request, this can be any additional information.", - "payment_asset": "Payment Asset", - "payment_asset_tooltip": "This payment request will be paid with one transfer, and will be requesting to be paid in the indicated asset.", - "price": "Price", - "quantity": "Quantity", - "recipient_account": "Recipient Account", - "recipient_name": "Recipient Name", - "recipient_name_tooltip": "You can define an arbitrary plaintext name for yourself to indicate who is being paid. Must not be a BitShares account name.", - "submit": "Submit", - "title": "Request" - }, - "tooltip_payment_proof": "Your account history has been searched for a match of sender, recipient and asset. This is an educated guess, but there is no direct link between this transfer and the shown invoice written on-chain.", - "total": "Total", - "transaction": "Transaction", - "unit": "Unit", - "use_invoice_data": "Use invoice data" + "action": "Действие", + "create_invoice_string": "Создать строку инвойса", + "currency": "Валюта", + "identifier": "ID", + "identifier_tooltip": "При оплате запроса необходимо использовать ID в поле мемо/сообщения.", + "items": "Пункты", + "note": "Примечание", + "note_tooltip": "Вы можете прикрепить к этому запросу на оплату примечание, которое может содержать любую дополнительную информацию.", + "payment_asset": "Актив оплаты", + "payment_asset_tooltip": "Этот запрос на оплату будет оплачен одним переводом в указанном активе.", + "price": "Цена", + "quantity": "Количество", + "recipient_account": "Аккаунт получателя", + "recipient_name": "Имя получателя", + "recipient_name_tooltip": "Для удобства вы можете задать произвольное имя в виде простого текста, чтобы быстро определять, кому платите. Для этого нельзя использовать имя аккаунта BitShares.", + "submit": "Отправить запрос", + "title": "Запрос" + }, + "tooltip_payment_proof": "В вашей истории аккаунта был произведён поиск совпадений по имени отправителя, получателя и актива. Это лишь предположение, но между этим переводом и отображаемым инвойсом, записанным в блокчейне, нет прямой связи.", + "total": "Всего", + "transaction": "Транзакция", + "unit": "Ед. измерения", + "use_invoice_data": "Использовать данные инвойса" }, "languages": { "de": "Deutsch", @@ -1534,7 +1526,7 @@ "invalidFormat": "Неподходящий формат!", "loginButton": "Войти", "selectDifferent": "Выбрать другой файл", - "supportWarning": "Внимание! Ваш браузер не поддерживает некоторые операции с файлами, необходимые для восстановления из резервной копии, мы рекомендуем вам воспользоваться для этого браузерами Chrome или Firefox.", + "supportWarning": "Внимание! Ваш браузер не поддерживает операции с файлами, необходимые для восстановления из резервной копии. Мы рекомендуем вам воспользоваться для этого браузерами Chrome или Firefox.", "title": "Выберите тип входа", "withoutBinFile": "У меня нет bin-файла" }, @@ -1627,9 +1619,9 @@ "copyLog": "Скопировать журнал", "copyScreenshot": "Щелкните правой кнопкой мыши в превью изображения -> Копировать", "copySuccess": "Конец копирования", - "explanatory_text_1": "Этот отчет собирает последние записи в консольном журнале и делает скриншот текущего вида перед открытием модального окна. Нажмите на любую запись, чтобы увидеть детали.", + "explanatory_text_1": "Этот отчёт собирает последние записи в журнале ошибок и делает скриншот текущего представления без открытого диалогового окна. Нажмите на запись, чтобы увидеть детали.", "explanatory_text_2": "Пожалуйста, сообщите о найденной проблеме на GitHub:", - "explanatory_text_3": "Вы можете скопировать и вставить (CTRL + V) скриншот и записи журнала непосредственно в текстовую область содержимого проблемы. Вставка скриншота также работает в Telegram-чате.", + "explanatory_text_3": "Вы можете скопировать и вставить (CTRL+C и CTRL+V) скриншот и записи журнала непосредственно в текстовую область содержимого проблемы. Вставка скриншота также работает в Telegram-чате.", "explanatory_text_4": "Если обнаруженная вами проблема затрагивает безопасность пользователей, вы можете претендовать на вознаграждение. В таком случае не сообщайте о ней публично, а воспользуйтесь данным способом: ", "hideLog": "Скрыть журнал", "hideScreenshot": "Скрыть скриншот", @@ -1798,89 +1790,89 @@ }, "prediction": { "add_opinion_modal": { - "amount": "Amount", - "condition": "Condition", - "no": "NO", - "probability": "Probability (0...1)", - "resolution": "Resolution", - "symbol": "Symbol", - "title": "Add Prediction Offer", - "warning": "Set amount", - "yes": "YES" + "amount": "Сумма", + "condition": "Состояние", + "no": "НЕТ", + "probability": "Вероятность (0...1)", + "resolution": "Итог", + "symbol": "Тикер", + "title": "Добавить прогнозное предложение", + "warning": "Указать сумму", + "yes": "ДА" }, "create_market_modal": { - "backing_asset": "Backing asset", - "commission": "Commission", - "condition": "Condition", - "description": "Description", - "resolution_date": "Resolution date", - "select_date_and_time": "Select date and time", - "symbol": "Symbol", - "title": "Create prediction market", - "tooltip_backing_asset": "The backing asset will be used to pay the premium, i.e. it is the leverage that participants use.", - "tooltip_commission": "Every participant pays the commission when opposing opinions on the prediction are being matched. On the blockchain, the commission is the market fee of this new asset.", - "tooltip_condition": "The condition is a statement that can be resolved unambiguous to correct or incorrect at the resolution state.", - "tooltip_description": "The description gives background information that help the user understand the significance of the prediction.", - "tooltip_resolution_date": "The point in time at which the prediction will be resolved. This needs to be done manually by you as the asset owner.", - "tooltip_symbol": "A prediction market asset has a symbol just like any other assets. Pick a symbol with 5 or more letters to minimize the creation fee.", - "warning": "Fill all blanks" + "backing_asset": "Актив обеспечения", + "commission": "Комиссия (в %)", + "condition": "Условие", + "description": "Описание", + "resolution_date": "Дата подведения итога", + "select_date_and_time": "Указать дату и время", + "symbol": "Тикер", + "title": "Создать рынок прогнозов", + "tooltip_backing_asset": "Актив обеспечения будет использоваться для оплаты премии, т.е. это левередж, который используют участники.", + "tooltip_commission": "При сопоставлении противоположных мнений о прогнозе каждый участник платит комиссию. Комиссия в блокчейне – рыночная комиссия этого нового актива.", + "tooltip_condition": "Условие – это заявление, которое при подведении итога можно разрешить однозначно: верно оно или неверно.", + "tooltip_description": "Описание даёт справочную информацию, которая помогает пользователю понять значение прогноза.", + "tooltip_resolution_date": "Момент времени, в который будет подведён итог прогноза. Это должен сделать вручную владелец актива.", + "tooltip_symbol": "Актив прогнозного рынка имеет тикер, как и любой другой актив. Выберите тикер из 5 или более букв, чтобы минимизировать комиссию за создание.", + "warning": "Заполните все поля" }, "details": { - "add_prediction": "Add prediction", - "all": "All", - "amount": "Amount", - "cancel": "Cancel", - "commission": "Commission", - "fee": "Fee", - "i_think_that": "I think that the prediction", - "incorrect": "Is incorrect", - "list_of_current_prediction_offers": "List of current prediction offers", - "oppose": "Oppose", - "potential_profit": "Potential Winnings", - "predicated_likelihood": "Predicated Likelihood", - "prediction": "Prediction", - "predictor": "Predictor", - "premium": "Premium", - "proves_true": "Proves true" + "add_prediction": "Добавить прогноз", + "all": "Все", + "amount": "Сумма", + "cancel": "Отменить", + "commission": "Комиссия", + "fee": "Комиссия", + "i_think_that": "Я полагаю, что прогноз ", + "incorrect": "неверный", + "list_of_current_prediction_offers": "Список текущих предложенных прогнозов", + "oppose": "Противопоставить", + "potential_profit": "Потенциальный выигрыш", + "predicated_likelihood": "Прогнозируемая вероятность", + "prediction": "Прогноз", + "predictor": "Прогнозист", + "premium": "Премиум", + "proves_true": "Оказался верным" }, "overview": { - "action": "Action", - "all": "All", - "create_market": "Create Prediction Market", - "description": "Description", - "expiry": "Resolution date", - "hide_invalid_asset": "Hide invalid assets", - "hide_unknown_houses": "Hide unknown houses", - "issuer": "House", - "loading": "Loading...", - "market_confidence": "Market confidence", - "market_predicated_likelihood": "Market predicated likelihood", - "no": "No", - "odds": "Odds", - "open": "Open", - "past_resolution_date": "Past Resolution Time", - "prediction": "Prediction", - "resolve": "Resolve", - "yes": "Yes" + "action": "Действие", + "all": "Все", + "create_market": "Создать рынок прогнозов", + "description": "Описание", + "expiry": "Дата подведения итога", + "hide_invalid_asset": "Скрыть недействительные активы", + "hide_unknown_houses": "Скрыть неизвестные дома", + "issuer": "Дом", + "loading": "Загрузка...", + "market_confidence": "Доверие участников рынка", + "market_predicated_likelihood": "Прогнозируемая рынком вероятность", + "no": "Нет", + "odds": "Шансы", + "open": "Открытый", + "past_resolution_date": "Прошлая дата подведения итога", + "prediction": "Прогноз", + "resolve": "Подвести итог", + "yes": "Да" }, "resolve_modal": { - "prediction": "Prediction", - "proven_true": "... has proven true", - "resolution": "Resolution", - "symbol": "Symbol", - "the_prediction_has": "The prediction ...", - "title": "Resolve Prediction Market Asset", - "was_incorrect": "... was incorrect" + "prediction": "Прогноз", + "proven_true": "... оказался верным", + "resolution": "Итог", + "symbol": "Тикер", + "the_prediction_has": "Прогноз ... ", + "title": "Подвести итог по активу рынка прогнозов", + "was_incorrect": "... был неверным" }, "tooltips": { - "add_prediction": "A prediction is reflected as a limit order on the market of the prediction market asset with its collateral. This lets you create a buy order (you agree with the prediction), or a sell order with previous borrowing of the prediction market asset (you disagree with the prediction). You can also oppose one of the existing predictions listed below, which correlates to matching one of the existing limit orders on the blockchain.", - "create_prediction_market_asset": "A prediction market is a special kind of SmartCoin. This lets you create such a prediction market asset with inputs tailored for this purpose.", - "hide_invalid_asset": "Per default the table below only shows prediction market assets that meet common standards required for a consistent user experience (prediction and resolution date are given, and reasonable market fee). Uncheck this to show all assets that exist on the blockchain, and make sure you know what you are doing.", - "hide_unknown_houses": "Per default the table below only shows prediction market assets of known asset owners that meet requirements to increase their trustworthiness. As a participant, you need trust in the asset owner such that the asset will be resolved according to the real world outcome. Uncheck this to show all asset owners that exist on the blockchain, and make sure you know what you are doing. If you are the owner of a prediction market asset and want to be included in the default list, please contact the BitShares community.", - "oppose_is_incorrect": "You are opposing someone that thinks the prediction is incorrect. That means, you think the prediction will prove true. On the blockchain that reflects as buying and hodling the prediction market asset.", - "oppose_proves_true": "You are opposing someone that thinks the prediction proves true. That means, you think the prediction will be incorrect. On the blockchain that reflects as borrowing and selling the prediction market asset.", - "what_is_a_prediction_market_asset": "A prediction market asset is a special kind of asset that allows you to agree or disagree with the prediction statement of the asset and put collateral behind your opinion. It can be created by any user, and if you are participating you need to trust the asset owner to properly reflects the real world outcome on the blockchain.", - "what_is_a_prediction_offer": "A prediction offer reflects limit orders on the market of the prediction market asset and its collateral. Agreement with the prediction (Prediction proves true) means that you want to buy the prediction market asset, disagreement (Prediction is incorrect) means that you borrow the prediction market asset and sell it" + "add_prediction": "Прогноз отображается как лимитный ордер на рынке прогнозного актива вместе с его обеспечением. Это позволяет создать ордер на покупку (вы соглашаетесь с прогнозом) или ордер на продажу с предшествующим заимствованием актива прогнозного рынка (вы не согласны с прогнозом). Вы также можете противопоставить позицию одному из существующих прогнозов, перечисленных ниже, что соответствует сопоставлению с одним из существующих лимитных ордеров в блокчейне.", + "create_prediction_market_asset": "Прогнозный рынок – это особый вид SmartCoin. Он позволяет вам создать актив прогнозного рынка с исходными данными, специально предназначенными для этой цели.", + "hide_invalid_asset": "По умолчанию в приведенной ниже таблице показаны только активы прогнозного рынка, соответствующие стандартам качественного пользовательского опыта (указаны даты прогноза и подведения итога и разумная комиссия). Снимите этот флажок, чтобы просмотреть все активы, которые существуют в блокчейне, если вы знаете, что делаете.", + "hide_unknown_houses": "По умолчанию в таблице ниже представлены только активы прогнозного рынка известных владельцев активов, которые отвечают требованиям надежности. Вам, как участнику, необходимо доверять владельцу актива в том, что итог по активу будет подведён в соответствии с результатом в реальном мире. Снимите этот флажок, чтобы просмотреть всех владельцев активов, существующих в блокчейне, если вы знаете, что делаете. Если вы являетесь владельцем актива прогнозного рынка и хотите быть включённым в список по умолчанию, обратитесь к сообществу BitShares.", + "oppose_is_incorrect": "Вы противопоставляете позицию тому, кто считает, что прогноз неверен. Это означает, что вы считаете прогноз верным. В блокчейне это отображается как покупка и удержание актива прогнозного рынка.", + "oppose_proves_true": "Вы противопоставляете позицию тому, кто считает, что прогноз верен. Это означает, что вы считаете прогноз неверным. В блокчейне это отображается как заимствование и продажа актива прогнозного рынка.", + "what_is_a_prediction_market_asset": "Актив прогнозного рынка – это особый вид актива, который позволяет вам соглашаться или не соглашаться с прогнозным заявлением актива и размещать обеспечение в соответствии со своим мнением. Он может быть создан любым пользователем, и если вы участвуете, вам нужно доверять владельцу актива в том, что он правильно отобразит реальный результат в блокчейне.", + "what_is_a_prediction_offer": "Прогнозное предложение отражает лимитные ордера на рынке прогнозного актива и его обеспечения. Согласие с прогнозом (прогноз верен) означает, что вы хотите купить актив прогнозного рынка, несогласие (прогноз неверен) означает, что вы заимствуете актив прогнозного рынка и продаёте его." } }, "proposal": { @@ -1970,7 +1962,7 @@ "checkboxRemember": "Я запомнил или иным образом зафиксировал свой пароль и сохранил .bin-файл в безопасном месте.", "checkboxUploaded": "Я осознаю, что в процессе входа в аккаунт нужно загрузить .bin-файл, и что без этого файла я потеряю доступ к своим средствам.", "continue": "Продолжить", - "copyPassword": "Скопируйте и сохраните свой пароль.", + "copyPassword": "Скопировать пароль", "createAccountTitle": "Создать аккаунт из .bin-файла", "createByPassword": "Создать аккаунт с именем и паролем", "downloadFile": "Загрузить файл", @@ -1982,7 +1974,7 @@ "securityWalletModel": "Высокий", "select": "Выбрать", "title": "Регистрация", - "walletDescription": "bin-файл будет создан автоматически. Пожалуйста, скачайте и сохраните его в безопасном месте. В будущем вам нужно будет загрузить этот файл, чтобы войти в свой аккаунт. ", + "walletDescription": "Ваш bin-файл будет создан автоматически. Пожалуйста, скачайте и сохраните его в безопасном месте. В будущем вам нужно будет загрузить этот файл, чтобы войти в свой аккаунт. ", "walletLoginByValue": "bin-файл + пароль", "walletModelTitle": "с bin-файлом", "walletNote": "Пожалуйста, имейте в виду, что BitShares не хранит пароли пользователей и не может восстановить их аккаунты в случае утери пароля.", @@ -2014,7 +2006,6 @@ }, "settings": { "access": "Узлы", - "access_text": "", "accounts": "Аккаунты", "accounts_text": "Список ваших аккаунтов", "activate": "Активировать", @@ -2047,27 +2038,27 @@ "browser_notifications_additional_transfer_to_me": "Уведомлять о переводах на мой аккаунт", "browser_notifications_allow": "Включить уведомления", "browser_notifications_disabled_by_browser_notify": "В вашем браузере отключены уведомления. Нажмите, чтобы узнать, как их включить", - "can_change_default_fee_asset_tooltip": "The default asset used to pay transaction fees can be changed in the settings", - "change": "Change", - "change_default": "Change default", - "change_default_fee_asset": "Change default fee asset", - "change_default_fee_asset_tooltip": "Change the default asset that is used to pay the transaction fee", + "can_change_default_fee_asset_tooltip": "Актив, по умолчанию используемый для оплаты комиссий за транзакции, можно изменить в настройках", + "change": "Изменить", + "change_default": "Изменить по умолчанию", + "change_default_fee_asset": "Изменить актив оплаты комиссий по умолчанию", + "change_default_fee_asset_tooltip": "Изменить актив, используемый для оплаты комиссий по умолчанию", "cloud_login": "Вход в облачный кошелек", "confirmMarketOrder": "Запрашивать подтверждение рыночных ордеров", "confirm_no": "Никогда", "confirm_remove": "Вы уверены, что хотите удалить %(name)s из вашего списка доступных узлов?", "confirm_yes": "Всегда", "connection_error": "Не удается подключиться к узлу API %(url)s, возврат к известным рабочим узлам. Ошибка: %(error)s", - "current_fee_asset": "Current fee asset is: ", - "custom": "Custom", + "current_fee_asset": "Текущий актив комиссий:", + "custom": "Специальные", "darkTheme": "Тёмная тема", "delete_select": "Выберите локальный кошелёк для удаления", "disabled": "Отключен", "enable_wallet": "Переключиться на локальный кошелёк", "faucet_address": "Адрес сервера-крана (faucet)", "faucet_address_text": "Адрес сервера-крана, который используется для оплаты регистрационного сбора для новых пользователей.", - "fee_asset": "Default fee paying asset", - "filteredServiceProviders": "External service providers (Gateways, Bridges)", + "fee_asset": "Актив оплаты комиссий по умолчанию", + "filteredServiceProviders": "Провайдеры внешних сервисов (шлюзы, мосты)", "general": "Общие", "general_text": "Изменить основные настройки.", "global_settings": "Общие настройки по умолчанию", @@ -2115,7 +2106,7 @@ "scrollbars_hide": "Сократить полосы прокрутки", "show": "Показать", "showAssetPercent": "Показать процентное соотношение активов на странице аккаунтов", - "showProposedTx": "Показывать предложенные транзакции", + "showProposedTx": "Показывать предложенные транзакции на панели", "showSettles": "Показать ордера на погашение на графике глубины", "skipped": "Пропущенные", "switch": "Сменить узел", @@ -2200,8 +2191,7 @@ }, "steps_costs": { "text": "Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст", - "title": "Погашение", - "title_within": "" + "title": "Погашение" }, "steps_introduction": { "text": "Используйте это нативное децентрализованное приложение на базе блокчейна BitShares для управления обеспечением депозита и генерацией SmartCoins.", @@ -2238,7 +2228,7 @@ "limit": "лимит", "limit_per_period": "Максимальная сумма за период", "num_of_periods": "Количество периодов", - "payer_balance_not_sufficient": "There are not enough funds in the payer's account to claim the full limit amount of {limit}. The limit has been adjusted to reflect the currently available balance!", + "payer_balance_not_sufficient": "На аккаунте плательщика недостаточно средств, чтобы востребовать полную сумму лимита {limit}. Лимит был скорректирован с учётом текущего доступного баланса!", "period": "Укажите определённый период", "start_date": "Первый период начнётся ", "title": "Прямой дебет", @@ -2294,20 +2284,20 @@ } }, "instant_trade": { - "description": "Instantly execute market orders in a simplified interface.", - "title": "Instant trade" + "description": "Мгновенное выполнение рыночных ордеров в упрощенном интерфейсе.", + "title": "Мгновенная сделка" }, "merchant_protocol": { - "description": "Create, view and pay remittance requests or invoices", - "title": "Merchant Protocol" + "description": "Создание, просмотр и оплата запросов на переводы или инвойсов", + "title": "Торговый протокол" }, "paper_wallet": { "description": "Создайте PDF-файл с напечатанными ключами вашего аккаунта (простой текст и штрих-код). Если кошелек разблокирован, в файл также добавляются приватные ключи.", "title": "Бумажный кошелёк" }, "prediction_market": { - "description": "Create a prediction into the future that others can agree or disagree with, leveraged with collateral.", - "title": "Prediction Markets" + "description": "Создайте прогноз на будущее, с которым другие могут согласиться или не согласиться, используя залоговое обеспечение.", + "title": "Рынки прогнозов" }, "timed_transfer": { "description": "Инициируйте перевод, который будет выполнен в указанное время.", @@ -2391,7 +2381,7 @@ "nodes_popup": "Нажмите здесь, чтобы открыть всплывающее окно настроек доступа, позволяющее вам при необходимости переключаться между узлами", "over_limit": "Мост не обладает достаточным количеством желаемого актива для данного ордера на покупку", "own_account": "Вы обладаете ключами от этого аккаунта", - "print_receipt": "Click here to create pdf receipt", + "print_receipt": "Нажмите здесь, чтобы создать чек в формате pdf", "propose_scam": "Это предложение было создано известным мошенником или человеком из вашего чёрного списка – подтверждение невозможно!", "propose_tip": "Предложить другому пользователю инициировать транзакцию", "propose_unhide": "Не снимайте эту галочку, если не уверены в своих действиях", @@ -2409,14 +2399,14 @@ "scam_account": "Аккаунт подозревается в мошенничестве", "self_help": "В зависимости от используемой в данный момент панели это откроет справочное руководство с пояснениями о том, что вы видите в данный момент, или общий справочный раздел кошелька.", "settle": "Погашение позволит вам обменять ваши %(asset)s на %(backingAsset)s с задержкой в %(settleDelay)s часа по цене, равной цене котировок на момент погашения.", - "settle_market_prediction": "Settling a prediction market asset is only possible after its resolution.", + "settle_market_prediction": "Расчёт актива прогнозного рынка возможен только после подведения итога.", "settle_price": "Это цена, при которой будут исполняться ордера на погашение.", "show_asset": "Нажмите здесь, чтобы отобразить этот актив в основном списке.", "show_block": "Нажмите здесь, чтобы увидеть блок #%(block)s, в котором произведена транзакция.", "sign_owner": "Если вы – владелец данного аккаунта, пожалуйста, подтвердите это, чтобы обеспечить правильность подписи транзакции. Это необходимо только если вы используете аккаунт владельца, и этот аккаунт не включен в активные права доступа.", "sync_no": "Данный узел не синхронизирован с блокчейном, попробуйте переключиться на другой", "sync_yes": "Данный узел синхронизирован с блокчейном", - "target_collateral_ratio": "Установление целевого коэффициента обеспечения (TCR) позволит блокчейну автоматически продавать необходимое количество вашего залога, дабы удерживать ваш коэффициент обеспечения равным или выше указанного вами TCR, когда ценность вашего залогового обеспечения падает.

Чтобы совершать частые продажи небольших сумм, установите низкую цель (напр. < 2)

. Чтобы совершать нечастые продажи более крупных сумм, установите высокую цель (напр. > 3)", + "target_collateral_ratio": "Установление целевого коэффициента обеспечения (TCR) позволит блокчейну автоматически продавать необходимое количество вашего залога, дабы удерживать ваш коэффициент обеспечения равным или выше указанного вами TCR, когда ценность вашего залогового обеспечения падает. Чтобы совершать частые продажи небольших сумм, установите низкую цель (напр. < 2). Чтобы совершать нечастые продажи более крупных сумм, установите высокую цель (напр. > 3)", "transfer_actions": "Нажмите здесь, чтобы совершить перевод или разместить депозит/вывести те активы, которые это позволяют.", "unlock_account_name": "Нажмите, чтобы изменить имя аккаунта, например, когда ваш аккаунт установлен в списке прав доступа другого аккаунта.", "update_position": "Нажмите здесь, чтобы обновить вашу позицию. Вы в любой момент сможете изменить уровни долга и/или обеспечения вашей позиции.", @@ -2475,7 +2465,7 @@ "fee": "Обычная комиссия за транзакцию", "fee_per_day": "Цена за день", "fee_per_kb": "Цена за Кбайт размера транзакции", - "long_symbol": "Длинные символы", + "long_symbol": "Длинные тикеры", "membership_annual_fee": "Годовое членство", "membership_lifetime_fee": "Пожизненное членство", "premium_fee": "Комиссия для премиум имён", @@ -2493,14 +2483,14 @@ "fund_pool": "пополнил пул комиссий %(asset)s на", "funding_account": "Аккаунт финансирования", "global_parameters_update": "Обновил глобальные параметры", - "hide": "Hide", + "hide": "Скрыть", "inputs": "Входы", "market_fee": "Рыночная комиссия", "max_market_fee": "Максимальная рыночная комиссия", "min_receive": "Минимальное принимаемое количество", "new_url": "Веб-сайт", "obtain": "получить", - "operations": "Operations", + "operations": "Действия", "order_id": "ID ордера", "outputs": "Выходы", "paid": "оплачена", @@ -2509,7 +2499,7 @@ "seller": "Продавец", "sent": "отправлена", "settlement_date": "Дата погашения", - "show_more": "Show more", + "show_more": "Показать больше", "to": "кому", "transaction_confirmed": "Транзакция подтверждена", "trxTypes": { @@ -2535,7 +2525,7 @@ "asset_update": "Обновить актив", "asset_update_bitasset": "Обновить SmartCoin", "asset_update_feed_producers": "Обновить производителей котировок актива", - "asset_update_issuer": "Обновить эмитента актива", + "asset_update_issuer": "Обновить владельца актива", "balance_claim": "Востребовать баланс", "bid_collateral": "Залоговая ставка", "blind_transfer": "Слепой перевод", @@ -2573,7 +2563,7 @@ "worker_create": "Создание работника" }, "vesting_balance_create": "создал вестинговый баланс", - "view_json": "Show raw json", + "view_json": "Показать необработанный json", "waiting": "Ожидание подтверждения...", "whitelist_states": { "black_listed": "В чёрном списке", @@ -2588,7 +2578,7 @@ }, "transfer": { "again": "СДЕЛАТЬ НОВЫЙ ПЕРЕВОД", - "amount": "Количество", + "amount": "Сумма", "available": "Доступно", "back": "НАЗАД", "balances": "Балансы", @@ -2601,7 +2591,7 @@ "copy_address": "Скопировать адрес", "copy_memo": "Скопировать мемо", "errors": { - "asset_unsupported": "Asset %(currency)s is not supported by this blockchain.", + "asset_unsupported": "Актив %(currency)s не поддерживается данным блокчейном.", "balance": "Итоговый баланс должен быть больше нуля", "insufficient": "Недостаточно средств", "memo_error": "Произошла ошибка считывания мемо перевода, пожалуйста, повторите попытку позже.", @@ -2610,11 +2600,11 @@ "noFeeBalance": "Средств на вашем балансе недостаточно для оплаты комиссии с использованием данного актива, пожалуйста, выберите другой актив для оплаты комиссии", "noFunds": "Нет средств", "noPoolBalance": "Средств на балансе пула комиссий этого актива недостаточно для оплаты комиссий. Пожалуйста, сообщите об этом владельцу актива или выберите другой актив для оплаты комиссий.", - "noPoolBalanceShort": "Fee pool empty", + "noPoolBalanceShort": "Пул комиссий пуст", "pos": "Сумма должна быть положительной", "precision": "Минимальное значение точности для вывода: %(precision)s", "req": "Обязательно для заполнения", - "unknown": "Unknown error", + "unknown": "Неизвестная ошибка", "valid": "Пожалуйста, введите правильное, положительное число" }, "explict_price": "Заданная цена:", @@ -2631,8 +2621,8 @@ "phase_out_warning": "Мы рекомендуем использовать новое {modal_link} модальное окно, поскольку эта страница будет упразднена", "see": "ПОКАЗАТЬ МОИ ПЕРЕВОДЫ", "send": "Отправить", - "to": "To", - "total": "Total: ", + "to": "Кому", + "total": "Итого:", "warn_name_unable_read_memo": "Предупреждение: %(name)s не сможет прочесть это мемо" }, "trx_error": { @@ -2643,10 +2633,10 @@ "asset_select_placeholder": "Выберите актив", "total_x_assets": "Всего %(count)s активов", "total_x_items": "Всего %(count)s позиций", - "total_x_items_y_hidden": "Total of %(totelCount)s items loaded, %(count)s of those shown in pagination", + "total_x_items_y_hidden": "Всего загружено %(totelCount)s элементов, %(count)s из которых отображены в нумерации страниц", "total_x_markets": "Всего %(count)s рынков", "total_x_operations": "Всего %(count)s операций", - "x_assets_hidden": "%(count)s of %(total)s assets filtered out" + "x_assets_hidden": "Отфильтровано %(count)s из %(total)s активов " }, "validation": { "messages": { @@ -2669,7 +2659,6 @@ "rangeNamed": "%(name)s должен быть в диапазоне от %(min)s до %(max)s", "required": "Поле обязательно для заполнения", "requiredNamed": "%(name)s обязательно", - "test": "", "types": { "array": "Поле должно содержать массив", "arrayNamed": "%(name)s должен быть массивом", @@ -2735,7 +2724,7 @@ "ask_to_select_wallet": "Пожалуйста, выберите файл резервной копии ключей", "back": "Назад", "backup_brainkey": "Резервный Brainkey", - "backup_explain": "Нажав на кнопку ниже, вы создадите резервную копию с расширением .bin. Этот файл зашифрован паролем вашего кошелька и содержит все приватные ключи вашего аккаунта. Он может быть использован для восстановления вашего кошелька или его перемещения на другой компьютер/браузер.", + "backup_explain": "Нажав на кнопку ниже, вы создадите файл резервной копии с расширением .bin. Этот файл зашифрован паролем вашего кошелька и содержит все приватные ключи вашего аккаунта. Он может быть использован для восстановления вашего кошелька или его перемещения на другой компьютер/браузер.", "backup_login": "Резервное копирование и вход в систему", "backup_new_account": "Поздравляем, вы только что создали новый аккаунт в %(wallet_name)s, работающем на базе блокчейна BitShares! Настоятельно рекомендуем вам сразу же создать резервную копию кошелька. Без резервной копии восстановить ваш аккаунт в случае повреждения компьютера будет невозможно.", "backup_types": "Типы резервных копий", @@ -2801,7 +2790,7 @@ "has_wallet": "Как только вы создадите ваш первый аккаунт %(wallet_name)s, будет автоматически создан локальный кошелек %(wallet_name)s, который будет храниться в вашем браузере. Этот локальный кошелек зашифрован вашим паролем и содержит все приватные ключи, принадлежащие вашим аккаунтам. Не забудьте создать резервную копию этого кошелька!", "import_20_notice1": "Сначала импортируйте вашу резервную копию BTS 2.0+", "import_20_notice2": "(если таковая имеется)", - "import_backup": "Импортировать резервную копию %(wallet_name)s 2.0 (.bin-файл)", + "import_backup": "Импортировать резервную копию %(wallet_name)s 2.0 (.bin)", "import_backup_choose": "Пожалуйста, выберите вашу резервную копию в окне ниже. Это абсолютно безопасно, так как файл копии никуда не загружается и никогда не покидает ваш браузер.", "import_balance": "Импортировать баланс(ы)", "import_bts": "Импортировать ключи, экспортированные с BTS 0.9.3c", @@ -2814,7 +2803,7 @@ "import_private_key": "Импортировать приватный ключ", "invalid_format": "Недопустимый формат", "key_file": "Файл копии ключей", - "key_file_bin": "Файл резервной копии ключей (.bin)", + "key_file_bin": "Файл ключа или .bin-файл", "last_backup": "Последняя резервная копия", "link_account": "Аккаунт", "link_deposit": "Депозиты", @@ -2905,8 +2894,8 @@ "wallet_move": "Резервная копия также может использоваться для перемещения вашего локального кошелька на другие компьютеры или браузеры. Для восстановления локального кошелька из резервной копии вам также понадобится ваш пароль!", "wallet_password": "Входите откуда угодно, используя пароль", "wallet_types": "Типы кошельков", - "wif_associated_accounts": "Associated Account(s): ", - "wif_import_error": "Please enter a valid WIF", - "wif_length_error": "Incorrect input length" + "wif_associated_accounts": "Связанный аккаунт(ы):", + "wif_import_error": "Пожалуйста, введите действительный WIF", + "wif_length_error": "Неверная длина введённого WIF" } } From 0b87b742b1cf3cfc8eb0555c6716ae2df7af3791 Mon Sep 17 00:00:00 2001 From: sschiessl-bcp Date: Tue, 17 Dec 2019 21:57:18 +0100 Subject: [PATCH 13/48] sync language files Signed-off-by: sschiessl-bcp --- app/assets/locales/locale-ru.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/app/assets/locales/locale-ru.json b/app/assets/locales/locale-ru.json index 8eba0de6f6..f07e0016d2 100644 --- a/app/assets/locales/locale-ru.json +++ b/app/assets/locales/locale-ru.json @@ -758,6 +758,9 @@ "hide_function_buttons": "Скрыть все кнопки, которыми можно управлять из персонализированной формы", "increase_chart_height": " Увеличить высоту графика", "market_location": "На какую сторону прикрепить вертикальный биржевой стакан. Это поменяет его местами с панелью рынка", + "market_trades": "", + "my_trades": "", + "open_orders": "", "order_book_grouping": "Сгруппировать ордера, которые близки по заданному проценту", "order_style": "Использовать вертикальный биржевой стакан для прикрепления к боковой панели", "orderbook_auto_scroll": "Автоматически прокручивать биржевой стакан для просмотра новых ордеров. Отключите, чтобы разрешить прокрутку", @@ -768,6 +771,7 @@ "reduce_scrollbars": "Отключить полосы прокрутки по умолчанию", "reload": "Изменение этой опции вступит в силу только после ручной перезагрузки", "reverse_order_book": "Отобразить биржевой стакан в обратном порядке, чтобы ордера на покупку отображались сверху", + "settlements": "", "show_market_depth": "Показывать глубину рынка", "show_price_chart": " Показывать график цен", "single_colum_order_form": "Закрепить цену, количество, общую сумму и т.п. в одной колонке (неподвижно)" @@ -951,6 +955,7 @@ }, "assets": { "backing_asset": "Актив обеспечения", + "blacklisted": "This asset is blacklisted, beware of scam attempts!", "id": "ID", "issuer": "Владелец актива", "market": "SmartCoins", @@ -1074,6 +1079,8 @@ "short": "Мост", "what_is": "Что такое мост?" }, + "disabled_asset_1": "This asset is managed by an external service provider (gateway). Currently deposits and withdrawals for this asset are disabled", + "disabled_asset_2": "For more information visit Settings -> Entry External Service Providers. For any issues or questions please contact the gateway operator directly.", "expect_more": "Если вы хотите увидеть больше возможностей депозита и вывода для своих активов, ознакомьтесь с провайдерами внешних сервисов в разделе Настройки > Общие.", "gateway": { "description": "Шлюзы – это провайдеры внешних сервисов, которые позволяют вам вносить депозиты, торговать и выводить не нативные активы в блокчейне BitShares. Например, вы можете отправить свои BTC в блокчейне Bitcoin на шлюз, который, в свою очередь, выдаст вам UIA (выпущенный пользователем актив) в блокчейне BitShares, с возможностью вывести его снова (с оплатой комиссии). Пока вы держите такой UIA в блокчейне BitShares, шлюз является хранителем ваших средств. Поскольку это внешние провайдеры, вы косвенно соглашаетесь с их условиями использования сервисов или активов.", @@ -1148,6 +1155,7 @@ "open": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от OpenLedger.", "rudex": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от Rudex.", "trade": "Актив %(asset)s обеспечивается реальными %(backed)s в соотношении 1:1 и может быть депонирован или выведен с помощью сервиса шлюза от Blocktrades.", + "win": "", "xbtsx": "Актив %(asset)s обеспечен реальными %(backed)s в соотношении 1:1 и может быть введён/выведен с помощью сервиса шлюза от XBTS." }, "balance": "Текущий баланс", @@ -2006,6 +2014,7 @@ }, "settings": { "access": "Узлы", + "access_text": "", "accounts": "Аккаунты", "accounts_text": "Список ваших аккаунтов", "activate": "Активировать", @@ -2191,7 +2200,8 @@ }, "steps_costs": { "text": "Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст Более длинный текст", - "title": "Погашение" + "title": "Погашение", + "title_within": "" }, "steps_introduction": { "text": "Используйте это нативное децентрализованное приложение на базе блокчейна BitShares для управления обеспечением депозита и генерацией SmartCoins.", @@ -2659,6 +2669,7 @@ "rangeNamed": "%(name)s должен быть в диапазоне от %(min)s до %(max)s", "required": "Поле обязательно для заполнения", "requiredNamed": "%(name)s обязательно", + "test": "", "types": { "array": "Поле должно содержать массив", "arrayNamed": "%(name)s должен быть массивом", From 9996d636773e540b2f877ff34d7223f3eab31fb1 Mon Sep 17 00:00:00 2001 From: startail Date: Mon, 30 Dec 2019 17:33:54 +0100 Subject: [PATCH 14/48] Always view settle orders - Settle orders that aren't settled should still display --- app/components/Exchange/OpenSettleOrders.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/components/Exchange/OpenSettleOrders.jsx b/app/components/Exchange/OpenSettleOrders.jsx index 91eba041a7..e17488d810 100644 --- a/app/components/Exchange/OpenSettleOrders.jsx +++ b/app/components/Exchange/OpenSettleOrders.jsx @@ -154,14 +154,14 @@ class OpenSettleOrders extends React.Component { return a.isBefore(b) ? -1 : 1; }) .map(order => { - return Date.now() < order.settlement_date ? ( + return ( - ) : null; + ); }) .toArray(); } From 0fab9039b758a505936dbd3b7f98329008b2883d Mon Sep 17 00:00:00 2001 From: startail Date: Wed, 1 Jan 2020 20:40:49 +0100 Subject: [PATCH 15/48] Depth Chart Fix Markets without Asks/Bids would crash DepthChart rendering Example: SGD_BTS --- app/stores/MarketsStore.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/stores/MarketsStore.js b/app/stores/MarketsStore.js index ea45e92148..9d187c3413 100644 --- a/app/stores/MarketsStore.js +++ b/app/stores/MarketsStore.js @@ -1227,7 +1227,7 @@ class MarketsStore { 1000 ); - if (flat_bids.length) { + if (flat_bids.length > 0) { flat_bids.unshift([0, flat_bids[0][1]]); } @@ -1237,7 +1237,8 @@ class MarketsStore { false, 1000 ); - if (flat_asks.length) { + + if (flat_asks.length > 0) { flat_asks.push([ flat_asks[flat_asks.length - 1][0] * 1.5, flat_asks[flat_asks.length - 1][1] @@ -1287,7 +1288,7 @@ class MarketsStore { 1000 ); if ( - flat_asks.length && + flat_asks.length > 0 && flat_calls[flat_calls.length - 1][0] < flat_asks[flat_asks.length - 1][0] ) { @@ -1333,7 +1334,7 @@ class MarketsStore { if (!this.feedPrice.inverted) { flat_settles.unshift([0, flat_settles[0][1]]); - } else { + } else if (flat_asks.length > 0) { flat_settles.push([ flat_asks[flat_asks.length - 1][0], flat_settles[0][1] @@ -1381,7 +1382,7 @@ class MarketsStore { 1000 ); - if (flat_bids.length) { + if (flat_bids.length > 0) { flat_bids.unshift([0, flat_bids[0][1]]); } @@ -1391,7 +1392,7 @@ class MarketsStore { false, 1000 ); - if (flat_asks.length) { + if (flat_asks.length > 0) { flat_asks.push([ flat_asks[flat_asks.length - 1][0] * 1.5, flat_asks[flat_asks.length - 1][1] From 00a8c233352c9c5cced26c21a431f437f99e08bf Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Thu, 9 Jan 2020 01:29:12 +0100 Subject: [PATCH 16/48] remove margin for top-bar --- app/assets/stylesheets/components/_header.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/assets/stylesheets/components/_header.scss b/app/assets/stylesheets/components/_header.scss index d2e6024675..e722ef1cde 100644 --- a/app/assets/stylesheets/components/_header.scss +++ b/app/assets/stylesheets/components/_header.scss @@ -85,6 +85,10 @@ div.header-right-menu { } } +ul.top-stats { + margin-bottom: 0px !important; // remove margin for top-bar +} + .grp-menu-items-group { flex-flow: row nowrap; display: flex; From 7c84c44eeb9e88c511e2c482d4778a6d99e9ac66 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Fri, 17 Jan 2020 17:47:30 +0300 Subject: [PATCH 17/48] fixed gateways fixedMemo --- app/lib/common/gateways.js | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 98eda74051..60979a3bfb 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -197,21 +197,10 @@ export const availableGateways = { baseAPI: deexAPIs, isSimple: true, simpleAssetGateway: false, - fixedMemo: {prepend: "dex:", append: ""}, - isEnabled: _isEnabled("DEEX"), - addressValidatorMethod: "POST", - options: { - enabled: false, - selected: false - } - }, - DEEX: { - id: "DEEX", - name: "DEEX", - baseAPI: deexAPIs, - isSimple: true, - simpleAssetGateway: false, - fixedMemo: {prepend: "dex:", append: ""}, + fixedMemo: { + prepend_default: "dex:", + append: "" + }, isEnabled: _isEnabled("DEEX"), addressValidatorMethod: "POST", options: { From d089f5009311338bb46f248604fc30b48e35449a Mon Sep 17 00:00:00 2001 From: mirotincev Date: Mon, 3 Feb 2020 13:07:43 +0300 Subject: [PATCH 18/48] Add landing and wallet links --- app/lib/common/gateways.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 60979a3bfb..c215b933e1 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -206,7 +206,9 @@ export const availableGateways = { options: { enabled: false, selected: false - } + }, + landing: "https://deex.one/", + wallet: "https://deex.exchnage/" } }; From 9f149010440bda9d169556b34a190f83e71c2496 Mon Sep 17 00:00:00 2001 From: mirotincev Date: Tue, 4 Feb 2020 10:13:56 +0300 Subject: [PATCH 19/48] =?UTF-8?q?=F0=9F=A4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/lib/common/gateways.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index c215b933e1..277c5f8219 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -208,7 +208,7 @@ export const availableGateways = { selected: false }, landing: "https://deex.one/", - wallet: "https://deex.exchnage/" + wallet: "https://deex.exchange/" } }; From 70cf33deb97eb015956539f45e4e414c4aa84bd7 Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Wed, 19 Feb 2020 15:28:47 +0100 Subject: [PATCH 20/48] Use BTS as find market basic pair --- app/components/Exchange/MyMarkets.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/components/Exchange/MyMarkets.jsx b/app/components/Exchange/MyMarkets.jsx index a5271acc96..34a9c99088 100644 --- a/app/components/Exchange/MyMarkets.jsx +++ b/app/components/Exchange/MyMarkets.jsx @@ -336,8 +336,8 @@ class MyMarkets extends React.Component { lookupBase: null, inputValue: "", minWidth: "100%", - findBaseInput: "USD", - activeFindBase: "USD" + findBaseInput: "BTS", + activeFindBase: "BTS" }; this._setMinWidth = this._setMinWidth.bind(this); From 84b454d9e2d4fadf8416305cb2c34c9e115feb72 Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Wed, 19 Feb 2020 16:55:17 +0100 Subject: [PATCH 21/48] Remove SPARKDEX and BRIDGE --- app/branding.js | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/app/branding.js b/app/branding.js index 64721cf63e..fffc19f1c9 100644 --- a/app/branding.js +++ b/app/branding.js @@ -202,17 +202,6 @@ export function getMyMarketsQuotes() { "RUDEX.SMOKE", "RUDEX.GRC" ], - sparkTokens: [ - "ZEPH", - "PEG.PHP", - "SPARKDEX.ETH", - "SPARKDEX.BTC", - "SPARKDEX.HKD", - "SPARKDEX.SGD", - "SPARKDEX.AUD", - "SPARKDEX.EUR", - "SPARKDEX.GBP" - ], xbtsxTokens: [ "XBTSX.STH", "XBTSX.POST", @@ -356,18 +345,7 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.SMOKE"], ["BTS", "XBTSX.STH"], ["BTS", "XBTSX.WAVES"], - ["BTS", "ZEPH"], ["BTS", "HERTZ"], - ["BTS", "SPARKDEX.BTC"], - ["BTS", "SPARKDEX.ETH"], - ["BTS", "SPARKDEX.HKD"], - ["SPARKDEX.HKD", "SPARKDEX.BTC"], - ["SPARKDEX.HKD", "SPARKDEX.ETH"], - ["BTS", "SPARKDEX.SGD"], - ["BTS", "SPARKDEX.AUD"], - ["BTS", "SPARKDEX.EUR"], - ["BTS", "SPARKDEX.GBP"], - ["BTS", "PEG.PHP"] ].filter(a => { if (!quotes.length) return true; return quotes.indexOf(a[0]) !== -1; @@ -386,10 +364,8 @@ export function getAssetNamespaces() { return [ "OPEN.", "RUDEX.", - "BRIDGE.", "GDEX.", "XBTSX.", - "SPARKDEX.", "CITADEL." ]; } @@ -413,10 +389,8 @@ export function allowedGateway(gateway) { "TRADE", "OPEN", "RUDEX", - "BRIDGE", "GDEX", "XBTSX", - "SPARKDEX", "CITADEL" ]; if (!gateway) { From 2fafde7988b572d7db6d533658460a9851e4f6ce Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Wed, 19 Feb 2020 17:29:05 +0100 Subject: [PATCH 22/48] Remove Bridge tokens --- app/branding.js | 1 - 1 file changed, 1 deletion(-) diff --git a/app/branding.js b/app/branding.js index 64721cf63e..4ec9dc706c 100644 --- a/app/branding.js +++ b/app/branding.js @@ -136,7 +136,6 @@ export function getMyMarketsQuotes() { "SILVER", "USD" ], - bridgeTokens: ["BRIDGE.BCO", "BRIDGE.BTC", "BRIDGE.MONA", "BRIDGE.ZNY"], gdexTokens: [ "GDEX.BTC", "GDEX.BTO", From 21876ed80d14a236adbd2d6b1eb60c175fd8ac7d Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Fri, 21 Feb 2020 05:55:42 +0100 Subject: [PATCH 23/48] Collateral is not part of total value --- app/components/Account/AccountPortfolioList.jsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/components/Account/AccountPortfolioList.jsx b/app/components/Account/AccountPortfolioList.jsx index 1e034503f7..ff2b90bd08 100644 --- a/app/components/Account/AccountPortfolioList.jsx +++ b/app/components/Account/AccountPortfolioList.jsx @@ -1071,8 +1071,7 @@ class AccountPortfolioList extends React.Component { const totalValue = balanceToAsset(balanceObject).amount + (orders[asset.get("id")] ? orders[asset.get("id")] : 0) + - this._sumVestingBalances(vestingBalances) + - this._sumCollateralBalances(collateralBalances); + this._sumVestingBalances(vestingBalances); balances.push({ key: asset.get("symbol"), From f8b4177d53bc8279639326bea13387a54cf5203a Mon Sep 17 00:00:00 2001 From: froooze <40874087+froooze@users.noreply.github.com> Date: Mon, 24 Feb 2020 18:38:55 +0100 Subject: [PATCH 24/48] Remove OPEN.Assets from showalways --- app/components/Account/AccountOverview.jsx | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/app/components/Account/AccountOverview.jsx b/app/components/Account/AccountOverview.jsx index 673d2821b5..57f31a67bd 100644 --- a/app/components/Account/AccountOverview.jsx +++ b/app/components/Account/AccountOverview.jsx @@ -29,13 +29,7 @@ class AccountOverview extends React.Component { alwaysShowAssets: [ "BTS" // "USD", - // "CNY", - // "OPEN.BTC", - // "OPEN.USDT", - // "OPEN.ETH", - // "OPEN.MAID", - // "OPEN.STEEM", - // "OPEN.DASH" + // "CNY" ], hideFishingProposals: true, question1: false, From 0759eb5718fc75a4b0bf071071c5aafbce15153a Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Wed, 26 Feb 2020 12:56:20 +0100 Subject: [PATCH 25/48] mark CB as shutdown Signed-off-by: Stefan Schiessl --- .../Gateways/GatewaySelectorModal.jsx | 48 +++++++++++-------- app/lib/common/gateways.js | 4 +- 2 files changed, 30 insertions(+), 22 deletions(-) diff --git a/app/components/Gateways/GatewaySelectorModal.jsx b/app/components/Gateways/GatewaySelectorModal.jsx index 9ad0bef472..8795f06b04 100644 --- a/app/components/Gateways/GatewaySelectorModal.jsx +++ b/app/components/Gateways/GatewaySelectorModal.jsx @@ -142,16 +142,20 @@ class GatewaySelectorModal extends React.Component { align: "left", render: row => { if (!row.landing) return "-"; - return ( - - External Link - - ); + if (row.landing.startsWith("http")) { + return ( + + External Link + + ); + } else { + return {row.landing}; + } } }, { @@ -162,16 +166,20 @@ class GatewaySelectorModal extends React.Component { align: "left", render: row => { if (!row.wallet) return "-"; - return ( - - External Link - - ); + if (row.wallet.startsWith("http")) { + return ( + + External Link + + ); + } else { + return {row.wallet}; + } } } ]; diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 253e22064a..6288fd20d5 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -147,8 +147,8 @@ export const availableGateways = { enabled: false, selected: false }, - landing: "https://crypto-bridge.org/", - wallet: "https://wallet.crypto-bridge.org/" + landing: "Shutdown", + wallet: "Shutdown" }, GDEX: { id: "GDEX", From f72c97ab37052d786bfab1fc67c675e589011fb5 Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Wed, 26 Feb 2020 13:11:39 +0100 Subject: [PATCH 26/48] use 2048 bit certificate for dev server #3205 #3206 Signed-off-by: Stefan Schiessl --- ssl/server.crt | 41 +++++++++++++++++++++----------- ssl/server.key | 63 +++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 78 insertions(+), 26 deletions(-) diff --git a/ssl/server.crt b/ssl/server.crt index 3c744066a1..96a6061ad5 100644 --- a/ssl/server.crt +++ b/ssl/server.crt @@ -1,15 +1,30 @@ -----BEGIN CERTIFICATE----- -MIICWTCCAcICCQCbBM5rROyQVzANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJC -VDESMBAGA1UECAwJQml0c2hhcmVzMRIwEAYDVQQHDAlCaXRzaGFyZXMxEjAQBgNV -BAoMCUJpdHNoYXJlczESMBAGA1UECwwJQml0c2hhcmVzMRIwEAYDVQQDDAlCaXRz -aGFyZXMwHhcNMTgwMzI0MTcxNDI3WhcNMTkwMzI0MTcxNDI3WjBxMQswCQYDVQQG -EwJCVDESMBAGA1UECAwJQml0c2hhcmVzMRIwEAYDVQQHDAlCaXRzaGFyZXMxEjAQ -BgNVBAoMCUJpdHNoYXJlczESMBAGA1UECwwJQml0c2hhcmVzMRIwEAYDVQQDDAlC -aXRzaGFyZXMwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAP7p6jDucc2fCwVI -d+19Uvc3Vrdp4zw1Q0zR4e4ezlGOZ4lr28xnE4j7CqsbXURBlXImh8avYSJroS+A -RwB5UdL8UsT3qcF2WdOL/58g0xX4ErLjOXhZWN/Ujh0Yw8nFQ2B26PDmL9h7KMx7 -46oHzKiXEqdyCE7lzsnD97urPMgrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEARTtM -OcHgdGDdokeNhUobW4tRF1BOFQge2fcKMsrAdTiIuKI3QDVYnKoFyZLDCqSkvVAA -gr6/nVxDV+yQ/2t+OKPJ4vxLVLz0DbG9HCFX6nfYuFfYWjg7Tf/NgyUexwufsL6c -Gw7VVc1NYd3E/Wyket8gyC1oGFKob0/kfmIxtyo= +MIIFODCCAyCgAwIBAgIUeiRFjkwnGu+dLMuKLkjeFXvEAeYwDQYJKoZIhvcNAQEL +BQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMjIzMTczMTUyWhcNMzAw +MjIwMTczMTUyWjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCAiIwDQYJKoZIhvcN +AQEBBQADggIPADCCAgoCggIBAMxP6WPlqVhNG6kLbPzYhVMfpHHK9lP0rGAlheXG +C+iPzUW2dz/2kiKp1OjwricXwCyqK48cH+h9s95u96cmmYl6mwzI9my3Bm6t368X +OUpaic4NQAEcLMlfuKD9hzRMh4vHAghE3amWOn9rNYPgc4dOBQqR6mb7ZhxgLxWK ++0wvYHwAkuClnkon4eM7xV20XKiBziOjuS1OxFxuUcmfsOm/Oei39/dUL/FbAPll +K24mHVqsEiptfWfFWWifIsFepUHYEyS23xMxGBcKXAvDX1xg8ZwEAul3vXt/d0L7 +0CN+YKwWnYoNGFwQsQJsEww4VLu1YICFxrWVz77qEOwTXwHF3pKLiRpBKdG2c0LS +tDZ5r2CFcBPFiRioZpkvFGQ0SVLx4lSbovv+ZXOEF3S4mWTxasQ/J+/5fBjtht53 +3p3oMLFwFLM02jSnjYrYJlP3M+xqMY65ISAtrPuuyEmqsIdma4ASxryU/d8+jQ+p +Tj38Zu/ZLTVMnalncihN/gVA0SMPCXIlTjD+J1RBlfJizNK4dP0C+JyRQcezv5bK +I28UMWcMdanxOeXn2AoCh3F7MLZNyeo9yzYYpLR2GDDw+A4CdnONW6RzdIh+RE58 +RFyZqPMRn/JOuMBCA+IDgfjIaIwscTN0xLwGeDDY9LyU7e4QQ+yhQ6HQcXwNnft4 +jb0RAgMBAAGjfjB8MB0GA1UdDgQWBBQo9Aa7/ZebFXlbdaGbxXPEdefSZzAfBgNV +HSMEGDAWgBQo9Aa7/ZebFXlbdaGbxXPEdefSZzAPBgNVHRMBAf8EBTADAQH/MCkG +A1UdEQQiMCCCC2V4YW1wbGUuY29tggtleGFtcGxlLm5ldIcEfwAAATANBgkqhkiG +9w0BAQsFAAOCAgEATnMbM9CoKjEdiPAnmj/96TsNN+yuGA/rTIYGnTSTLrASsm+J +M8nevBL350vXSrDH+eN3SpmCUk3ZtA0vP9k/hIVhxz9qoRiKpRMLF6L5fXUdotVF +0JcN0AqNaYFbBXNVT2tDXTHkNCeqEEbkXELIf+kKOl3Na2hiFHRy1VwQtKb6otEs +MIKzdXezi4dy07C66HBholR3GBaEky1zeeAOLMFbJbJETZI5kBxQRMae6DI2jGjI +U5A65bz4XuuCjVGXWdddDMQt0PVdfgOtpNiu8cWdj8OzpGZvDUE9rCcHR9q/Nm6s +MSAkodNkmCPSQrnmR/DGhwADTE9+Xo9686EFd0cvo44HoXxYbXNCbcsxr+elg+tF +Hdq3GvCFwcwLo3xhrwBBoqVLbXLB/IgeSOmyaKDJ/w5X8btBMsLZsItHhvsdZFPD +D2+ajoI9YmqpRQiwQs2PEt2VIyWTrKdfoKzBsn0lBNZ0ggBWDNK/SKwhXCPTvkZJ +i/f1gWh77Cy3hBFXtUHKWvR/MwCza77Q0URQ34QJEZp2u3/emjhH6wTRCO2Hks5V +ZZYSjpTo+evTvhsGvB87dkFlCY+hDOLet4Y34dxzTwhhB92arIC25Wu6PkNS73pj +h1GcDl8508f3tePSub/Rl9hmm/sYsqDhae0rgdls07qIOqEA/a9DggKAnGo= -----END CERTIFICATE----- diff --git a/ssl/server.key b/ssl/server.key index 79d0758053..cde7b7f3ff 100644 --- a/ssl/server.key +++ b/ssl/server.key @@ -1,15 +1,52 @@ -----BEGIN RSA PRIVATE KEY----- -MIICXQIBAAKBgQD+6eow7nHNnwsFSHftfVL3N1a3aeM8NUNM0eHuHs5RjmeJa9vM -ZxOI+wqrG11EQZVyJofGr2Eia6EvgEcAeVHS/FLE96nBdlnTi/+fINMV+BKy4zl4 -WVjf1I4dGMPJxUNgdujw5i/YeyjMe+OqB8yolxKncghO5c7Jw/e7qzzIKwIDAQAB -AoGBAL0T/jzLMKiHFqKVjTcf5UEvz+d96CoJi+DYMQ/x07FUwmGBGmiz8B6DrvcZ -9gUh7FreT4nFHnRshwN3z7J/SnuM65NjeagsB58ZPGJQoCTL+ienFANdl+DMqxJy -AXlmkh9W51bve23RUNHFyG6mjmKuaHLPa6FOsRsBMmIOu0KRAkEA//x2hKjlYhLW -acIp1iGrIIcvCzt1zel8gmVea2wuuQb72J3f6uG1dvLZ+6ZYsBJh+QQ6Os//uZnx -8nUilm0vmQJBAP7tb+EhxqGYHubppbyEMYSG/kNKHxRc4qmTOpD9J6RUP/WhllHr -CLUWJh42KfC3+n6BWhV8rCnMK/TZqLi6YGMCQQCyrdVIWd/q6f0xyu6K4etiBBop -O/LJrO1U007pqpSeYCqQk/pFKBETGwZeqkkDdYFfYL0IakE0mykPtQVUfJgZAkAa -wxJbsBAKJs4Xr6+Weso3/3Px3HYmzRl+c9ZSIkFnHvEX+D6vmtzvJcQap9T/UFEb -trieSNhKCwUST0dHHUnBAkB49e+o94JYL782sWILZPVcNIjBTWQOtUAimOWMo5np -yp8Dv+vmTOomy5WwnmryMWXE7TcT0qGajRRfq61xQYub +MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDMT+lj5alYTRup +C2z82IVTH6RxyvZT9KxgJYXlxgvoj81Ftnc/9pIiqdTo8K4nF8AsqiuPHB/ofbPe +bvenJpmJepsMyPZstwZurd+vFzlKWonODUABHCzJX7ig/Yc0TIeLxwIIRN2pljp/ +azWD4HOHTgUKkepm+2YcYC8VivtML2B8AJLgpZ5KJ+HjO8VdtFyogc4jo7ktTsRc +blHJn7Dpvznot/f3VC/xWwD5ZStuJh1arBIqbX1nxVlonyLBXqVB2BMktt8TMRgX +ClwLw19cYPGcBALpd717f3dC+9AjfmCsFp2KDRhcELECbBMMOFS7tWCAhca1lc++ +6hDsE18Bxd6Si4kaQSnRtnNC0rQ2ea9ghXATxYkYqGaZLxRkNElS8eJUm6L7/mVz +hBd0uJlk8WrEPyfv+XwY7Ybed96d6DCxcBSzNNo0p42K2CZT9zPsajGOuSEgLaz7 +rshJqrCHZmuAEsa8lP3fPo0PqU49/Gbv2S01TJ2pZ3IoTf4FQNEjDwlyJU4w/idU +QZXyYszSuHT9AvickUHHs7+WyiNvFDFnDHWp8Tnl59gKAodxezC2TcnqPcs2GKS0 +dhgw8PgOAnZzjVukc3SIfkROfERcmajzEZ/yTrjAQgPiA4H4yGiMLHEzdMS8Bngw +2PS8lO3uEEPsoUOh0HF8DZ37eI29EQIDAQABAoICAHD0HQvlhGIU/x3N+0suSUdT +Tw66LsTrmADvvb7yZtMD7XCFGBh8sP4I9nRx21Yxg0UuLzbHTbyzAiYPI0t9w5SF +/AJteA9SgHPgHLIoHLxGobkRCjmS4g/So7gdcgov5SAZvb3klMeVDnIzSzrFdBlx +wMe/M+ALTMCTTHSUians52Kmzoz0AzbsJa4C9XKArFlcqiJ5+X5a9aREOWNGrgAM +gG9whd5u5LKCpV87127mE4R1bPWX4qTkLjHxCL3vHV3xn2PE1j89/Rt/1rOKJ8Zi +sjCW5yU71b3ZEo4tuTxmOfvp5N7Vron3kGTOaxluayn7dIaZbuolEN1zejeJ3hOX +Mu2FBjdQsZ5R4ySnYrIWSPVzrGPN5KEJh14mxysncf8XFKUkntnsifrcNsIqFT2j +EhUYpwNmYIZf7Lhf6GIge9DdNcSjXQxBhmuE7TUj4+hDxraZ9hZISWlvL3tvxzrh +bOSJJdn04ROO0b6tpm/VUiFXEJ1Mn2YF2+cIlQRKN1TB+nzmlYqHmFK5i7tQKkeq +cqPasaOaaH1VTjT372JEtKokTSuDwUur3iMyXgrbKoT9bpWeSRn2LcacXwksjwEw +QsXX44l5gKPLvTYQgSgLE7V0OSssLx27YkEQVxf8stXU+FdUjkUfdXcrsxwREA48 +HEuii96CuZc/3YYPq/chAoIBAQD3SLX8YrFEB9EhYS2/46inHtGKxSRAR/cqAov1 +hb1d71r68SjC8METFOlRLNShIGnIo8PHfL6q3xcDWxr+JReemiKXb959qXn3QyuX +5I0nK3MGSLAGoVJ4plTfn1ngqycDEKcK48gCLRVqC932P/yJ+Rpwl47MQs7+VYBP +7/zvWWLoMzYdjd8V7Rw8ZsH7O+c1Y2xlQOqOScOpu8CEs/zPOoEuAGYeBXET4Dlv +pXAfhPlNR9NFWKxOXpHMl8xGwb8F3Hz7J+z9lEJmI+dd8r5eGR4ZRL2eHlcSJV7H +wHUS03foULv/T53FAson2gLbTLjcuD2kyAff72JIoRqDAxh/AoIBAQDTg3UtDa2e +DUPD61EVs7dN/jCbWqyiwdhOrmJAPv6vtW+QJ2eydRSvQgRq+jzUGXTaxn3uyygr +JQdWgbxDoBL4mlXrMZBtBKSKg16pgCpJx5xwEdVdrd6QHhjfJl/h9/YeADJagjhF +TISIGjlVpBBM8HizIHGrnpuEoDYB0Dd3FmwlmUCZ6Br8RgQeEOoA/ayuAtLwNGaU +Q8K2VWLN99Mfqm2iYJQG5BUYaBRJZF7l1eeQu9YaM5/ldtNmQP1s8C1qkgGwCYom +DGHRH+GfmJvxF6glh3gHhZimZsMWgUzah41JZYJj1rlujAVKqmmoIm2VXzNRjk2y +nO+Xgh82auJvAoIBAQDDqL2OEEzwZjr77Vd0oF6etQzZfzk6v3Z6v/8b6pE2VSAo +tE4rSLGMNpyRxSYMw4fP4HwVSMfYjaI43opSEulIbe724eYqicFeesBwc7+YAZIG +o9bbuCN4ISvAsOY9lU7N5ww02pwz1JZADVm38VMRnI9mDRVI24fKx746AcqhW5md +3n9wDQQ55h3UUP4lmnVL0fo/d4jfws/VaiBfH8bl9QWnb1tdX7LkJiNsCnvYBK/5 +jN5G3W2gqMU2G9nfFofdzGL7mtCyp++Nv9TeiiZEcB1XowNhq+H7EqSW6tn3ZmlW +4SKPVeCgtJ9dvutJt8ABrKnhywAoGNIsY4SFqxpjAoIBAGuLCYcQz1fvUqdI/H9W +UztapQg4gFJ40SygSeB0pzZbwA/BmV4JXa0Gmgxyk38cOmgKSHmj3hahyytW54xS +1ZKFlm3xU4e6tpae2QDB476DuazZxGzPPLx2MRs0/cd9Nixm2TNfxpClqTUycDh1 +JLyaACTDuEgUaupyM0OUxL7OLcqoM0qN0zq1tt46p2A9mxEW6n2rhwSXt2bR31zu +RvBwzTGkfV9LlNZGBRqT6BRgQE880k2cNg6L7kyteq1rKQxolGcXUqCp5wpXdXaa +N5/L8XizenoImWbyFPtaXuM1zMam0DdHNB1bIE2oe/Q7HRC3yPYMrsDEPqYASTJ4 +Ag0CggEAZmb+fGC9tXoHs1WffIM453+2OgCC3QWSiiA68exkSYnzmC5YvbSLC4Xr +9AqiJjeSlTCiviUyS4BLLAVv/Cx46PDiVxAbjo85iGwAjzTU0U2Pv/SDyEzceeQ6 +/klpELR4tnP8KHoq7MLl4WSu1VgPOpT+oUbdm+6ql1hurmtVGJDDEhgVOVSV2rBX +UK6JbXg9wEjWGsgv+C2txlocv1D2YvVnow65Dm+2IaUdwZDQolTYjDIvwmg0pIrl +jA2FxdhLNpM8aQXId2dYkFMkADf3SgJbC8Kl7U6Bp14RlbStI2u2K/ZbDh2qujLk +xAWEFLxKgPGMX0dBLp4DEe0EtSsJhw== -----END RSA PRIVATE KEY----- From a53d136699a68af3e2130c88364077534298f754 Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Thu, 27 Feb 2020 14:13:12 +0300 Subject: [PATCH 27/48] - add rudex.usdt icon - add some translates - update RuDEX help - add some markets --- app/assets/asset-symbols/rudex.usdt.png | Bin 0 -> 6909 bytes app/assets/asset-symbols/symbols.js | 1 + app/assets/locales/locale-ru.json | 6 +++--- app/branding.js | 19 +++++++++---------- app/help/en/gateways/rudex.md | 7 ++++++- app/help/ru/gateways/introduction.md | 10 ++++++++++ app/help/ru/gateways/rudex.md | 7 ++++++- app/help/ru/toc.md | 2 +- 8 files changed, 36 insertions(+), 16 deletions(-) create mode 100644 app/assets/asset-symbols/rudex.usdt.png create mode 100644 app/help/ru/gateways/introduction.md diff --git a/app/assets/asset-symbols/rudex.usdt.png b/app/assets/asset-symbols/rudex.usdt.png new file mode 100644 index 0000000000000000000000000000000000000000..1f5798c905ef073f7060a5996e4cb1f5678a747c GIT binary patch literal 6909 zcmZu$Wl)?;vwrc#2~P0f?rw{_L-4R0Jh&uiU>A3SJHg#aARBCfAi>=h2_E1834}m` zT~2+s>bpPgkDjjTuIcJ|W~!&3nK%PIbwa$ScmMzpYHFw$J?g}N1%&-LHX;?}9~G{b zhJ`Nx;FJ9;Xh2>8H2~o0yC^Fg7&v?SdHOngdNFA#D>HfdcsjbcIRHSwYN4@{iSZ$& z+||Y}CGA*PhPI~>1&GN=DFH^F%FfM27BGho0+71-NI|-o2jU~8Tx&E~BpT8$ zRZ<%SBL~1i$x4*~SPczUn8R)i6k`IAF}s&LfB_!>;RxHG17L;Mxxr|FRR%K!T5&4C zMCK5y0yxV6^;6H|RRMEBfZS30ixjZT2MB7KIcfmS9RPBY1iuvk5deaQu~A$AW-tI5 zVPOdXB69(9wR1DspFE8u2i%WH<+jQqSfy0qRvXYP3g z+MdE>uwm}^rEI5|&M)wbUtc9Swi1Is0>y``W*1)nVxwB}4zaSbx4XNn^+m}FI%@Xz z-l^XfX?ExKCsg+K>hfF9HY;4%2Cj~I{jGoemre!UR2pvN%eDO!_1g~ohgm;!ErGaM?hpy=G9oVm+|H-$snrSsB7jv4NTGmR;I79RL-vyP` zUpDgBx>nGZbgKCGdQ_d}6!pA-73p|ZZ3K27{H1#5>u7GAjv$rBs5i_!73u;Mf#EC9L);p{_?nCZFW$f7O%MwE!Und*&W6saCshc&biKNwMW=!0pY31UYdUC}_m;6yjqUF3 zZ=p^vshm0n8wXC)yVKu(ew%bBheH^%LR3d@NgwL_!G~P>x%5WfWWlMz+reL1hXPLK zQzTQ%B0KG5V_aWc3XSvU)SalD5WW!?u?cb7;bZ*S^8ERxgqVKtiEJS>#2S${?8Sc#};J?olblt2E)mPSsJAFK05wH_T zHEURE?x^suy@H-m$^Vx3dA}pSBP+2XykTKGE`jVA=@`==@GP>8+Efl>d9Z&7dYA#K zU~Fhk7;$h#xE1=%bx;U%Z?b|k%HenG%86oPF+!0-F(teqe6O#8*?HujcMZ%}2RW0e zlP*M22BF^^rf2k zw8XgOYx!Tvu1b6s{j4y=?`Sc;U|wjh>84F5#n0U+?%~$6d3$mZvt782zY|QABQRp) z6<9La|0}ABvWB0OS2_!<6RRhg@k5b>yP7hQ?VQY?Eg3JcpT6JenZS(rOzg6!!Cm z9Xahgz8R}`h-$qb^hoFsV93Pz>e}|M9?OCcuU)C~yNM;|5;sn(lY^OK??l|FR90OP z&&0`i+bHUtM8VnnhZE9%(yg@iifC;!K6>;0?)q0!t+L*MD7+mCES~7+*!8lX;@i31 z7xe2+%(5FpyV-+uUEweKM#K9)qPZU9o8s+7y**xAIlyfNGnef7vD&Z zqROTSTjpE~*rSc{9PQ0r%lJ@J_XS};N8q>4*U1SP1(R}bkm<|Js8xMKjf1a9nV>(Y$H9QfQ2;J-p7kakpvEbN4;cnZ=`xpj&kmBXNPKtVN*Kg~?Z!)x+?)bf@#F#KO$Nx1s!h z)*z_T_TU4%$<0^9o@bv){I+IQ9}*5^x@0D;&p-K{x1#pQ%s!drHA&mLANd{0-lxy$ z4|f)H<~1U$T@j~2-5-M;uMTO8BqrB?bqD^Wd{|s4l9F5Rz6kQX8oavPq+Ad6;kcU| z>s;~YIBn?C@3Q>`K2cmzUXNK&u)1GcK3fZWh4e4Jm|0W5!j6iVx=+1KAy&pp$xRuH zCX7BVl9ZQ{+E(znJG`w@p0b}}FQU3Hy&r3&q7(?dUN~NwoXMFf$v)3c?{yEUxI01~ z(=?%m`iB^Lz6OX0z4-O~=A_Sm&7c0PY?D}jH-ssS^TGK~%cb#j)lE80dinz&MV3g{WJPz{>yXs4`>C%ck`ZKW0(YI+1-=S zRgKGp(!_OBpKZpMD#AmZ3#F5oR+0;slUbzN?X5mkM@ZL1kR!(I&UWM+|3YokTp#QH zR@%+!q^)HdY4({+!JqCa*^6;m5fu;`SB<5r1BHerq?}dIh?JTOH!%ZKO-l=%g$v~`*&U9tquKVdF?jNX_1#ICtD<`7Bx$xp%!Na(-%c$Fo+o$MN;4k z^<~Cvy6xOo;a39sCUov!LLGm*(mpspVBzXSd_PLv^ut+v-92-+T*O@In)JNu_26#* z@_Z*p=vrIYrhoYy3TRe&^DAlajk~LgIRI=V$1dLC1oz6l{bx5!6S7E}HPCyQBsZ_H z@f)$>JP^DXS$sSbbMLnwq5sf1`ZWt#|BUw-bw!Yf6SSkaM4m_DColVJVOQPho(guV z=2e{ll{!8<{n6R@BeK};ELoxGZg*`82v}Rho{wsF^W)<+eYLqB=Jh+h?EwR(2|2h937D6WJWtoA**{i z7{FxQ_dlk6<96(N-y!Q^jlH3M!8aR)W%s9_7$+>87U7PYlTPW3?*j=5>EKm_1Y?uSUSVU%*4?>(R(}3kt2(gtk6zP3H^%4nWI$1% z*2C787EV?1x!YY)R0qTSUD(J2urjM)2UTv!&A|G}z#ZeYv=v#Fswz&0e2drqEEI4z ze-XqCui=gi&|q#YJNp?mmmLbv8+3#m3A*LxG4oOo{e?(DN918NjPzQVN2+txY~sAXSA~KB;|iQ@}QTE zCnYN!o+RGIJpIK*8g&D6wEqF#{<7R;iAybfcmI_Goi^yjj8ZFY5Lo-dAd~i!;5LzTv_kGCzaUytH-@}N;gID4!Icv8(w@Dq{8dhkyj@nFF(G` zGreGJqz^nxy=GB93wQ~Ay;s9AlIuXuS60$G0RrCF_BDO~_L|!wq;gml zUJVZ3Ng?PqBQ^($$N31pd~V^V#;U;VLL(w9i-h^Y+-w3ivxM&g#(b6 zNFBPMVKUm&u(}t`AZ7zm!o**0L+~US?my9l5GN2Q5=gdY7|dPa!W1J0)!0%|Fw)#^ z&vy>no~|gIm)5~&!tbdfjywA=yJGkx!}F5g*zWL+T+|hrwgqh6PY66lKX3@yqorAr z?%vqAe!p<%!j8#?3SWmDnBf6zD0GVoSWgGb_JR`p>~m1YZcPpwf(N6Dfkf9ABfhol^D{s?58^S~r-x?|Q`$&Mr&t*ACq4Df4rxypoUuJ?n z=Ukfc%q~OFY(%k)y#1S)M34T$H`7zO2GeE&a@{h=5$clWDDVa+oRk~xLdTfGR2}qV zF;j@HJCp&lyi%}h&>cWt+}->b-?zC6c@Sty-1-q^xJ)w5*?B{qu87Pt6XS-p*ys~IE!W`@b<{6XS| z4~(wseB-YapbM@Bn3$0y%~&{8=ZGIcw2;ZeWwACKcp)rAie9PmPP)MxBVj90cod1Kq1b z+(;q1O_;ERA{eqvIl2}OwGwovjdt%Nr7Q4-0f~au8Hy$ITz0;Ii6_LlTiP2Ph7T8( zfcg??(RAskYFzbK)%*~me_0Mwpl1I5W2wFBr5RJ=R^w%}Bo6Zz z_+0oF(ny#u!;MUJ4BW?E2Fc+xcgWzyZ*R_qv3Xr(ZC~P45|NT{qQpU%x3$Ud_EkrA z)aQ4Umyeaf3nfAnktF8rNv-ZB_PLxE*!vB#T3K=RhDu+>XAX&>PW4wsS6xN913znc zAc@T7fh9b6A@SHvwan!=#UfaE6(mZxh1_Rk)V!NqMqG*=CN;-qcOp3F~a0dZYZc@-XA_uX!ryT#7W=* ze-b|bcQtw&zXE-7LVuu{FCYhxi0B{psBcu|i zbnS#YfPwZB6V*yH$ss0qO|&Wq-UtRwxzh|m>ZzO#Jhs2@1}08TFq!g$!C)2wJYyth zl$ohwap->Bi}(Q&u){|h#Y|yL6Z-bjeqU`mHA#VVtDLV6UMy`e;wVD&@ao}|dvgf} z+YSnSPlo=u!#YVHZ}J+W8MwbGPC~;R8?K@EtECRrpV{xjuxVFc1{^Lk({;aLV1i8r zes*OulV!SFXtJ`3dxBjFSekx(x;Au^PW7{I-XSFLf~iOBoQ>e))i$F-0HN=oEOkZW zQBgH5F990Fhe(a<&4(+9vK0Z=95O@*2cHhFLNBrW=NAxMiIW#<*O-Grg?`uK;g<3m z4RD*JZJk`=_v%m*E0#=;-?^B}8Lyb81?>!~zaOmIVchCIJ`gI@kBCsN!1JpGLn#B*kBFL_U+>?bnAS;yA72k1He#{TiU#GiwD&qDH zMq%>vvvT(#GvAAQz0S68%Hi@WtzQzkxbC}A_wpL!mqnB?+R|>M9Nb)Ot*z-66!gU7 z*U+quJG>Le<3v$@A}MBKii8>B;cXMtVO1APdS3{00)ucJX1_lfe3MW-q6FW90tDJz zI}|^;OAzASvkMd8Kd+2L4v*dIZcC}dw+H@^a0&kRO0DlY zn+_9ijyi1!#^V=p*vPHDto1m4%o(fyJpJfR@aETcNirdIvM2H&`0qOr?M!BOsgxSG zry_qu9TTL=wF1k>*vNG-R8iosq7XbBx@jl%4vKW%-9mpIvK&2)mE)!RmYq6_~@v8eg!&+WT`1#-P z41?;#$Mg4Xcic2_N`I%YZs$8;bW0Ck{3)1P4lcObjaHAZR$_>iVPxJORqF8k*@t$l z1XQ!+u#!|t)JwFiW~fY=AiOq$2^X$Jz4})15e#yU>na`sY2z(JQO-ytCAtGjrBC$T z_<^9bFTF8B)WiNjD7SFfS}3N}1#W~abG|&5I4Y3Z8r>r#FHZ~QmK<%5iqj#@HpX?< zf!oeKS?mS{hr|YA#0H^*j^#056L%#${NT3S>#j}aOO+ITbM}hUg5B}lg`AJfVgOuf z055~kjL@)gXk-tBw7^ViV19_$0*mNDcLSwjA?)5tQ_?kSy5ok2=FfVsS(v~ecsAD$ z?xR^&yBS^Gc4RR8iuqxZeQ?wpT9yrl$K5cgv9T|H2OHB-U}Hhffehpb;q1R zGqM+pm)MRAQ=ycZ>WI-}c1R@b30@NaJ@I3?E3W1>tyYvbRi3AfL|(_W$(f zHJ!2ZQmLJ%NOOmXF-L1Ti>O&$GYsSLeJ2Nz#^lHe!#wS~=>=qYLdE-$N^AN(s@bSZ z+rRx&HiSCNqybXdUnv}X7gs)m;40!*;m3s=aOe5F{lz5&pG|HMH{u<`W|zxduh<}` zi?-zLdo!Pv-W`7%W`T%);#!2xn;@c)Pc_jCZ%d~Ao9x@df}ONkBv2t>a}Rc2-(#?- z-KkoerFGE^e)@mgnCwE3)^DO{kX_gq}UdQHc<;cb@5UmtbJ z`K6xGE1PuHZxqf(zbnBgg=y5TI2j2DkJq7dNpZZz{$Ss8d+nAy@>9Yc6S@isiP1`% zM}wG1uUDnW(-j2e)r+=zc#pw#aP}xIk|&=_a--&RC!GThEVG~!jJf{?GV{spZ8<^NFGvTD zmrqVMS8pu@nLj-M3O;Pw8h3W6<*jw5sZDllLtO?uon&4MrY?MZJdJ?Rxg8tF_IR259gOE7&e&wX+jnUTLOGneJMu&4h zH3H07vKpY-&eGE%oeRa9<+FA_y}mPxR@ZG#y9V7TZ87TYwr;vmIFlZZ9|lN%pyK)D zYo?911HRC20Ca^5rO1ds$|Xv>_0Jn2O%yKNiNdTup(lFW2NRx#2>IxUR^z z(yzp3j`Gr3`&J%Nj_id}n>0ixudae@I>M4&jU6773wwmb){9nD+iM-C-1!n>A_I(9Q+v zNSGJ17CV(@I%HPD4PciVVjz2^n{X&0KOIe0UQ9bdQ zQ>uA>4*f4l{{L9D1=fEl_kWo6|E1ixi6%UU4>*9iL>30ux@O_y`vRb;s;APZ1PT8i DQak3Q literal 0 HcmV?d00001 diff --git a/app/assets/asset-symbols/symbols.js b/app/assets/asset-symbols/symbols.js index 3b5e055ee4..33c70c7227 100644 --- a/app/assets/asset-symbols/symbols.js +++ b/app/assets/asset-symbols/symbols.js @@ -87,6 +87,7 @@ require("file-loader?name=asset-symbols/[name].png!./nmc.png"); // 3rd party assets (RuDEX) require("file-loader?name=asset-symbols/[name].png!./ppy.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.btc.png"); +require("file-loader?name=asset-symbols/[name].png!./rudex.usdt.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.eos.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.eth.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.gbg.png"); diff --git a/app/assets/locales/locale-ru.json b/app/assets/locales/locale-ru.json index f07e0016d2..4ff92d9c60 100644 --- a/app/assets/locales/locale-ru.json +++ b/app/assets/locales/locale-ru.json @@ -701,7 +701,7 @@ "rsi": "Индекс относительной силы", "save_custom_charts": "Сохранить кастомные графики", "save_new_chart_layout": "Сохранить новую схему размещения графиков", - "scaled": "Масштабирован", + "scaled": "Масштабирование", "search": "Ищите другие рынки здесь", "sell": "Продать", "sell_description": "Продать %(baseAsset)s %(baseName)s за %(quoteAsset)s %(quoteName)s", @@ -1079,8 +1079,8 @@ "short": "Мост", "what_is": "Что такое мост?" }, - "disabled_asset_1": "This asset is managed by an external service provider (gateway). Currently deposits and withdrawals for this asset are disabled", - "disabled_asset_2": "For more information visit Settings -> Entry External Service Providers. For any issues or questions please contact the gateway operator directly.", + "disabled_asset_1": "Этой монетой управляет внешний поставщик услуг (шлюз). В настоящий момент пополнение и снятие средств этой монеты недоступно", + "disabled_asset_2": "Для получения дополнительной информации посетите: Настройки -> Entry External Service Providers. По любым проблемам и вопросам, пожалуйста, связывайтесь со службой поддержки шлюза, напрямую", "expect_more": "Если вы хотите увидеть больше возможностей депозита и вывода для своих активов, ознакомьтесь с провайдерами внешних сервисов в разделе Настройки > Общие.", "gateway": { "description": "Шлюзы – это провайдеры внешних сервисов, которые позволяют вам вносить депозиты, торговать и выводить не нативные активы в блокчейне BitShares. Например, вы можете отправить свои BTC в блокчейне Bitcoin на шлюз, который, в свою очередь, выдаст вам UIA (выпущенный пользователем актив) в блокчейне BitShares, с возможностью вывести его снова (с оплатой комиссии). Пока вы держите такой UIA в блокчейне BitShares, шлюз является хранителем ваших средств. Поскольку это внешние провайдеры, вы косвенно соглашаетесь с их условиями использования сервисов или активов.", diff --git a/app/branding.js b/app/branding.js index e8ea443aff..c504b6b484 100644 --- a/app/branding.js +++ b/app/branding.js @@ -325,15 +325,21 @@ export function getFeaturedMarkets(quotes = []) { ["RUDEX.USDT", "RUDEX.BTC"], ["RUDEX.USDT", "RUDEX.ETH"], ["RUDEX.USDT", "RUDEX.EOS"], + ["RUDEX.USDT", "PPY"], + ["RUDEX.USDT", "RUBLE"], ["RUDEX.BTC", "RUDEX.ETH"], ["RUDEX.BTC", "RUDEX.EOS"], ["RUDEX.BTC", "RUDEX.STEEM"], ["RUDEX.BTC", "RUDEX.GOLOS"], ["RUDEX.BTC", "RUDEX.WLS"], + ["RUDEX.BTC", "PPY"], ["BTS", "OPEN.MAID"], ["BTS", "OPEN.HEAT"], ["BTS", "OPEN.INCENT"], - ["RUB", "RUDEX.GOLOS"], + ["RUBLE", "RUDEX.BTC"], + ["RUBLE", "RUDEX.ETH"], + ["RUBLE", "RUDEX.USDT"], + ["RUBLE", "RUDEX.GOLOS"], ["BTS", "RUDEX.GOLOS"], ["BTS", "RUDEX.STEEM"], ["BTS", "RUDEX.EOS"], @@ -344,7 +350,7 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.SMOKE"], ["BTS", "XBTSX.STH"], ["BTS", "XBTSX.WAVES"], - ["BTS", "HERTZ"], + ["BTS", "HERTZ"] ].filter(a => { if (!quotes.length) return true; return quotes.indexOf(a[0]) !== -1; @@ -360,14 +366,7 @@ export function getAssetNamespaces() { if (_isTestnet()) { return []; } - return [ - "OPEN.", - "RUDEX.", - "GDEX.", - "XBTSX.", - "CITADEL.", - "DEEX." - ]; + return ["OPEN.", "RUDEX.", "GDEX.", "XBTSX.", "CITADEL.", "DEEX."]; } /** diff --git a/app/help/en/gateways/rudex.md b/app/help/en/gateways/rudex.md index 5b64725893..ad8e8a7099 100644 --- a/app/help/en/gateways/rudex.md +++ b/app/help/en/gateways/rudex.md @@ -1,10 +1,15 @@ # Rudex Gateway Service -Rudex is a gateway service built on the Bitshares Exchange. A gateway service is responsible for moving cryptocurrencies to and from the Bitshares Exchange. They support a wide range of popular assets. You can easily identify those supported by RuDEX because they are prefixed with the word RUDEX.*. For example RUDEX.STEEM, RUDEX.GOLOS etc. +Rudex is a gateway service built on the Bitshares Exchange. A gateway service is responsible for moving cryptocurrencies to and from the Bitshares Exchange. They support a wide range of popular assets. You can easily identify those supported by RuDEX because they are prefixed with the word RUDEX.*. For example RUDEX.BTC, RUDEX.EOS, RUDEX.USDT, RUDEX.GOLOS etc. ## Website [https://rudex.org](https://rudex.org) +## Public audit of gateway funds: + +- [Audit](https://audit.rudex.org/) + ## Support +- [Gateway Service Agreement](https://rudex.freshdesk.com/support/solutions/articles/35000138245-gateway-service-agreement) - [Open a Ticket](https://rudex.freshdesk.com) - [Telegram Chat](https://t.me/BitSharesDEX_RU) diff --git a/app/help/ru/gateways/introduction.md b/app/help/ru/gateways/introduction.md new file mode 100644 index 0000000000..935a84daaa --- /dev/null +++ b/app/help/ru/gateways/introduction.md @@ -0,0 +1,10 @@ +# Шлюзы BitShares + +Шлюзы и Мосты являются внешними поставщиками услуг, позволяющими вносить депозиты, +торговать и выводить из блокчейна BitShares активы, которые были созданы в других блокчейнах. +Например, вы можете отправить свой BTC из блокчейна Биткойн на шлюз, который +в свою очередь выдаст вам эквивалентный UIA (выпущенный пользователем актив) в блокчейне BitShares с +обещанием, что вы можете вывести его снова (за комиссию, конечно). +Пока вы держите такие UIA в блокчейне BitShares, именно шлюз является хранителем ваших средств. +Используя услуги сторонних поставщиков, вы безоговорочно соглашаетесь с их условиями использования +любых сервисов или активов. \ No newline at end of file diff --git a/app/help/ru/gateways/rudex.md b/app/help/ru/gateways/rudex.md index 67ff52da53..21f456813c 100644 --- a/app/help/ru/gateways/rudex.md +++ b/app/help/ru/gateways/rudex.md @@ -1,12 +1,17 @@ # Шлюз от RuDEX -RuDEX предоставляет сервис шлюза, построенный на бирже BitShares. Сервис шлюза отвечает за ввод и вывод криптовалют с биржи BitShares. Он поддерживает обширный список популярных активов. Вы легко можете определить, какие из них поддерживает RuDEX, так как они обладают префиксом вида RUDEX.*. Например, RUDEX.STEEM, RUDEX.GOLOS и т.п. +RuDEX предоставляет сервис шлюза, построенный на бирже BitShares. Сервис шлюза отвечает за ввод и вывод криптовалют с биржи BitShares. Он поддерживает обширный список популярных активов. Вы легко можете определить, какие из них поддерживает RuDEX, так как они обладают префиксом вида RUDEX.*. Например, RUDEX.BTC, RUDEX.EOS, RUDEX.USDT, RUDEX.GOLOS и т.п. ## Веб-сайт [RuDEX.org](https://rudex.org) +## Публичный аудит шлюза: + +- [Аудит](https://audit.rudex.org/) + ## Поддержка +- [Cоглашение об оказании услуг шлюза](https://rudex.freshdesk.com/support/solutions/articles/35000138247-cоглашение-об-оказании-услуг-шлюза) - [Открыть тикет](https://rudex.freshdesk.com) - [Telegram Чат](https://t.me/BitSharesDEX_RU) diff --git a/app/help/ru/toc.md b/app/help/ru/toc.md index 129c5b4c60..cb8f2f1c14 100644 --- a/app/help/ru/toc.md +++ b/app/help/ru/toc.md @@ -17,7 +17,7 @@ - [Децентрализованная биржа](dex/introduction.md) - [Торговля](dex/trading.md) - [Короткая продажа BitAssets](dex/shorting.md) -- Шлюзы +- [Шлюзы](gateways/introduction.md) - [OpenLedger](gateways/openledger.md) - [Rudex](gateways/rudex.md) - [CryptoBridge](gateways/cryptobridge.md) From 4a67cdf3a5364c3cf5a3de03adbfd2a4b4c9c1b1 Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Thu, 27 Feb 2020 16:15:03 +0300 Subject: [PATCH 28/48] - HELP: change link to market.rudex.org --- app/help/en/gateways/rudex.md | 2 +- app/help/ru/gateways/rudex.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/help/en/gateways/rudex.md b/app/help/en/gateways/rudex.md index ad8e8a7099..0876f044ca 100644 --- a/app/help/en/gateways/rudex.md +++ b/app/help/en/gateways/rudex.md @@ -3,7 +3,7 @@ Rudex is a gateway service built on the Bitshares Exchange. A gateway service is responsible for moving cryptocurrencies to and from the Bitshares Exchange. They support a wide range of popular assets. You can easily identify those supported by RuDEX because they are prefixed with the word RUDEX.*. For example RUDEX.BTC, RUDEX.EOS, RUDEX.USDT, RUDEX.GOLOS etc. ## Website -[https://rudex.org](https://rudex.org) +[market.rudex.org](https://market.rudex.org) ## Public audit of gateway funds: diff --git a/app/help/ru/gateways/rudex.md b/app/help/ru/gateways/rudex.md index 21f456813c..c87d0e6f7f 100644 --- a/app/help/ru/gateways/rudex.md +++ b/app/help/ru/gateways/rudex.md @@ -4,7 +4,7 @@ RuDEX предоставляет сервис шлюза, построенный ## Веб-сайт -[RuDEX.org](https://rudex.org) +[market.rudex.org](https://market.rudex.org) ## Публичный аудит шлюза: From 22251ec20898085a1447440f5e457728608f1793 Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Thu, 27 Feb 2020 16:21:55 +0300 Subject: [PATCH 29/48] - formatting From 511354bcc54937e6bad42440e053294fdee759ac Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Fri, 28 Feb 2020 15:29:13 +0100 Subject: [PATCH 30/48] deactivate default search without quote asset Signed-off-by: Stefan Schiessl --- app/components/Exchange/MyMarkets.jsx | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/app/components/Exchange/MyMarkets.jsx b/app/components/Exchange/MyMarkets.jsx index 34a9c99088..85ec76cc11 100644 --- a/app/components/Exchange/MyMarkets.jsx +++ b/app/components/Exchange/MyMarkets.jsx @@ -348,15 +348,6 @@ class MyMarkets extends React.Component { } shouldComponentUpdate(nextProps, nextState) { - /* Trigger a lookup when switching tabs to find-market */ - if ( - this.state.activeTab !== "find-market" && - nextState.activeTab === "find-market" && - !nextProps.searchAssets.size - ) { - this._lookupAssets("OPEN.", true); - } - if (this.state.activeTab !== nextState.activeTab) { this._changeTab(nextState.activeTab); } else if ( @@ -418,10 +409,6 @@ class MyMarkets extends React.Component { this._setMinWidth(); - if (this.state.activeTab === "find-market") { - this._lookupAssets("OPEN.", true); - } - if (this.state.activeTab !== this.props.activeTab) { setTimeout(() => { this._changeTab(this.props.activeTab); From 440e5129b3752a44ed52661bbe5554788517f68d Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Fri, 28 Feb 2020 15:29:39 +0100 Subject: [PATCH 31/48] deal with potentially undefined lists of orders and balances Signed-off-by: Stefan Schiessl --- app/components/Account/AccountPortfolioList.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/components/Account/AccountPortfolioList.jsx b/app/components/Account/AccountPortfolioList.jsx index 1e034503f7..20397d887a 100644 --- a/app/components/Account/AccountPortfolioList.jsx +++ b/app/components/Account/AccountPortfolioList.jsx @@ -895,7 +895,7 @@ class AccountPortfolioList extends React.Component { let balances = []; const emptyCell = "-"; - balanceList.forEach(balance => { + (balanceList || []).forEach(balance => { let balanceObject = ChainStore.getObject(balance); if (!balanceObject) return; let asset_type = balanceObject.get("asset_type"); @@ -982,7 +982,7 @@ class AccountPortfolioList extends React.Component { // Collateral let collateralBalances = []; - this.props.callOrders.forEach(order => { + (this.props.callOrders || []).forEach(order => { let collateralObject = ChainStore.getObject(order); if ( collateralObject.getIn([ From a5b7fc9adebca47981bcf475c278efcab9d20497 Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Mon, 16 Mar 2020 13:58:12 +0300 Subject: [PATCH 32/48] fix 2 not working buttons: - show the brain key - confirm the password (in the password change section in options) --- app/components/Wallet/BackupBrainkey.jsx | 25 +++++++++---------- .../Wallet/WalletChangePassword.jsx | 6 ++++- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/app/components/Wallet/BackupBrainkey.jsx b/app/components/Wallet/BackupBrainkey.jsx index 41952da286..540a12c2a3 100644 --- a/app/components/Wallet/BackupBrainkey.jsx +++ b/app/components/Wallet/BackupBrainkey.jsx @@ -4,7 +4,8 @@ import Translate from "react-translate-component"; import WalletActions from "actions/WalletActions"; import WalletDb from "stores/WalletDb"; import {hash} from "bitsharesjs"; -import {Card, Input, Button} from "bitshares-ui-style-guide"; +import {Card, Input, Button, Notification} from "bitshares-ui-style-guide"; +import counterpart from "counterpart"; export default class BackupBrainkey extends Component { constructor() { @@ -113,20 +114,14 @@ export default class BackupBrainkey extends Component { id="password" onChange={this.onPassword.bind(this)} /> -

- {this.state.invalid_password ? ( - Invalid password - ) : ( - - - - )} -

{brainkey_backup_time}
- @@ -165,10 +160,14 @@ export default class BackupBrainkey extends Component { var brainkey = WalletDb.getBrainKey(); if (was_locked) WalletDb.onLock(); this.setState({brainkey}); - } else this.setState({invalid_password: true}); + } else { + Notification.error({ + message: counterpart.translate("notifications.invalid_password") + }); + } } onPassword(event) { - this.setState({password: event.target.value, invalid_password: false}); + this.setState({password: event.target.value}); } } diff --git a/app/components/Wallet/WalletChangePassword.jsx b/app/components/Wallet/WalletChangePassword.jsx index b68a3ec632..5a51c47709 100644 --- a/app/components/Wallet/WalletChangePassword.jsx +++ b/app/components/Wallet/WalletChangePassword.jsx @@ -168,7 +168,11 @@ class WalletPassword extends Component { value={this.state.password} /> - From ec54ffe7865e4613909f432b618e60a6007e7828 Mon Sep 17 00:00:00 2001 From: mateusz Date: Fri, 27 Mar 2020 15:25:11 +0100 Subject: [PATCH 33/48] Make bridge withdrawals based on mapping data --- .../BlockTradesBridgeDepositRequest.jsx | 9 +- .../blocktrades/WithdrawModalBlocktrades.jsx | 98 ++++++++++--------- app/lib/common/gatewayMethods.js | 49 ++++++++++ 3 files changed, 108 insertions(+), 48 deletions(-) diff --git a/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx b/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx index 80f5b44605..3182f16701 100644 --- a/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx +++ b/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx @@ -75,8 +75,8 @@ class ButtonConversion extends React.Component { let feeID = balances.has(defaultFeeAssetId) ? defaultFeeAssetId : balance - ? balance.get("asset_type") - : "1.3.0"; + ? balance.get("asset_type") + : "1.3.0"; return feeID; } @@ -421,6 +421,7 @@ class ButtonWithdraw extends React.Component { asset={this.props.asset.get("id")} output_coin_name={this.props.output_coin_name} output_coin_symbol={this.props.output_coin_symbol} + input_coin_type={this.props.input_coin_type} output_coin_type={this.props.output_coin_type} output_supports_memos={this.props.output_supports_memos} amount_to_withdraw={this.props.amount_to_withdraw} @@ -460,6 +461,7 @@ class ButtonWithdrawContainer extends React.Component { asset={this.props.asset} output_coin_name={this.props.output_coin_name} output_coin_symbol={this.props.output_coin_symbol} + input_coin_type={this.props.input_coin_type} output_coin_type={this.props.output_coin_type} output_supports_memos={this.props.output_supports_memos} amount_to_withdraw={this.props.amount_to_withdraw} @@ -2414,6 +2416,9 @@ class BlockTradesBridgeDepositRequest extends React.Component { this.state.withdraw_output_coin_type ].symbol } + input_coin_type={ + this.state.withdraw_input_coin_type + } output_coin_type={ this.state.withdraw_output_coin_type } diff --git a/app/components/DepositWithdraw/blocktrades/WithdrawModalBlocktrades.jsx b/app/components/DepositWithdraw/blocktrades/WithdrawModalBlocktrades.jsx index 2b75eab99d..658b641383 100644 --- a/app/components/DepositWithdraw/blocktrades/WithdrawModalBlocktrades.jsx +++ b/app/components/DepositWithdraw/blocktrades/WithdrawModalBlocktrades.jsx @@ -7,7 +7,11 @@ import BalanceComponent from "components/Utility/BalanceComponent"; import counterpart from "counterpart"; import AmountSelector from "components/Utility/AmountSelector"; import AccountActions from "actions/AccountActions"; -import {validateAddress, WithdrawAddresses} from "common/gatewayMethods"; +import { + validateAddress, + WithdrawAddresses, + getMappingData +} from "common/gatewayMethods"; import {ChainStore} from "bitsharesjs"; import {checkFeeStatusAsync, checkBalance} from "common/trxHelper"; import {debounce} from "lodash-es"; @@ -272,8 +276,7 @@ class WithdrawModalBlocktrades extends React.Component { onSubmit() { if ( !this.state.withdraw_address_check_in_progress && - (this.state.withdraw_address && - this.state.withdraw_address.length) && + this.state.withdraw_address && this.state.withdraw_address.length && this.state.withdraw_amount !== null ) { if (!this.state.withdraw_address_is_valid) { @@ -357,20 +360,24 @@ class WithdrawModalBlocktrades extends React.Component { sendAmount = balanceAmount; } - AccountActions.transfer( - this.props.account.get("id"), - this.props.issuer.get("id"), - sendAmount.getAmount(), - asset.get("id"), - this.props.output_coin_type + - ":" + - this.state.withdraw_address + - (this.state.memo - ? ":" + new Buffer(this.state.memo, "utf-8") - : ""), - null, - feeAmount ? feeAmount.asset_id : "1.3.0" - ); + getMappingData( + this.props.input_coin_type, + this.props.output_coin_type, + this.state.withdraw_address + ).then(result => { + AccountActions.transfer( + this.props.account.get("id"), + this.props.issuer.get("id"), + sendAmount.getAmount(), + asset.get("id"), + result["memo"] + + (this.state.memo + ? ":" + new Buffer(this.state.memo, "utf-8") + : ""), + null, + feeAmount ? feeAmount.asset_id : "1.3.0" + ); + }); this.setState({ empty_withdraw_value: false @@ -419,20 +426,24 @@ class WithdrawModalBlocktrades extends React.Component { const {feeAmount, fee_asset_id} = this.state; - AccountActions.transfer( - this.props.account.get("id"), - this.props.issuer.get("id"), - parseInt(amount * precision, 10), - asset.get("id"), - this.props.output_coin_type + - ":" + - this.state.withdraw_address + - (this.state.memo - ? ":" + new Buffer(this.state.memo, "utf-8") - : ""), - null, - feeAmount ? feeAmount.asset_id : fee_asset_id - ); + getMappingData( + this.props.input_coin_type, + this.props.output_coin_type, + this.state.withdraw_address + ).then(result => { + AccountActions.transfer( + this.props.account.get("id"), + this.props.issuer.get("id"), + parseInt(amount * precision, 10), + asset.get("id"), + result["memo"] + + (this.state.memo + ? ":" + new Buffer(this.state.memo, "utf-8") + : ""), + null, + feeAmount ? feeAmount.asset_id : fee_asset_id + ); + }); } onDropDownList() { @@ -602,7 +613,7 @@ class WithdrawModalBlocktrades extends React.Component { if ( !this.state.withdraw_address_check_in_progress && - (this.state.withdraw_address && this.state.withdraw_address.length) + this.state.withdraw_address && this.state.withdraw_address.length ) { if (!this.state.withdraw_address_is_valid) { invalid_address_message = ( @@ -865,18 +876,13 @@ class WithdrawModalBlocktrades extends React.Component { WithdrawModalBlocktrades = BindToChainState(WithdrawModalBlocktrades); -export default connect( - WithdrawModalBlocktrades, - { - listenTo() { - return [SettingsStore]; - }, - getProps(props) { - return { - fee_asset_symbol: SettingsStore.getState().settings.get( - "fee_asset" - ) - }; - } +export default connect(WithdrawModalBlocktrades, { + listenTo() { + return [SettingsStore]; + }, + getProps(props) { + return { + fee_asset_symbol: SettingsStore.getState().settings.get("fee_asset") + }; } -); +}); diff --git a/app/lib/common/gatewayMethods.js b/app/lib/common/gatewayMethods.js index e5048558c3..091740f3a1 100644 --- a/app/lib/common/gatewayMethods.js +++ b/app/lib/common/gatewayMethods.js @@ -2,6 +2,9 @@ import ls from "./localStorage"; import {blockTradesAPIs, openledgerAPIs} from "api/apiConfig"; import {availableGateways} from "common/gateways"; const blockTradesStorage = new ls(""); +let oidcStorage = new ls( + "oidc.user:https://blocktrades.us/:10ecf048-b982-467b-9965-0b0926330869" +); let fetchInProgess = {}; let fetchCache = {}; @@ -333,6 +336,52 @@ export function requestDepositAddress({ }); } +export function getMappingData(inputCoinType, outputCoinType, outputAddress) { + let body = JSON.stringify({ + inputCoinType, + outputCoinType, + outputAddress: { + address: outputAddress + } + }); + let mapping = inputCoinType + outputCoinType + outputAddress; + if (blockTradesStorage.has(`history_mapping_${mapping}`)) { + return Promise.resolve( + blockTradesStorage.get(`history_mapping_${mapping}`) + ); + } else { + return new Promise((resolve, reject) => { + let headers = { + Accept: "application/json", + "Content-Type": "application/json", + Authorization: `Bearer ${oidcStorage.get("")["access_token"]}` + }; + fetch(`${blockTradesAPIs.BASE}/mappings`, { + method: "post", + headers: headers, + body: body + }) + .then(reply => { + reply.json().then(result => { + if (result["inputAddress"]) { + blockTradesStorage.set( + `history_mapping_${mapping}`, + result["inputAddress"] + ); + resolve(result && result["inputAddress"]); + } else { + reject(); + } + }); + }) + .catch(error => { + console.log("Error: ", error); + reject(); + }); + }); + } +} + export function getBackedCoins({allCoins, tradingPairs, backer}) { let gatewayStatus = availableGateways[backer]; let coins_by_type = {}; From e03dcca87ffe1738c4eb930522cd082ee5d66fd0 Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Sat, 28 Mar 2020 09:14:20 +0100 Subject: [PATCH 34/48] fix bug in issuemodal Signed-off-by: Stefan Schiessl --- app/components/Modal/IssueModal.jsx | 1 + 1 file changed, 1 insertion(+) diff --git a/app/components/Modal/IssueModal.jsx b/app/components/Modal/IssueModal.jsx index 8e88d40b83..cc0d240181 100644 --- a/app/components/Modal/IssueModal.jsx +++ b/app/components/Modal/IssueModal.jsx @@ -116,6 +116,7 @@ class IssueModal extends React.Component { onAccountChanged={this.onToAccountChanged.bind( this )} + typeahead={true} onChange={this.onToChanged.bind(this)} account={this.state.to} tabIndex={tabIndex++} From 8768210593adbbe16d4592419fda276952517658 Mon Sep 17 00:00:00 2001 From: Stefan Schiessl Date: Wed, 8 Apr 2020 14:01:45 +0200 Subject: [PATCH 35/48] fix WSOD error "ReferenceError: counterpart is not defined" Signed-off-by: Stefan Schiessl --- app/components/Settings/AccessSettings.jsx | 1 + 1 file changed, 1 insertion(+) diff --git a/app/components/Settings/AccessSettings.jsx b/app/components/Settings/AccessSettings.jsx index f95ff80a2a..ff00d9480b 100644 --- a/app/components/Settings/AccessSettings.jsx +++ b/app/components/Settings/AccessSettings.jsx @@ -10,6 +10,7 @@ import Icon from "../Icon/Icon"; import LoadingButton from "../Utility/LoadingButton"; import {Switch, Button} from "bitshares-ui-style-guide"; import NodeSelector from "../Utility/NodeSelector"; +import counterpart from "counterpart"; const autoSelectionUrl = "wss://fake.automatic-selection.com"; From e9462b97c2b3253c0e04f39cbccb8a37fa60da21 Mon Sep 17 00:00:00 2001 From: technolog Date: Mon, 20 Apr 2020 19:23:11 +0300 Subject: [PATCH 36/48] branding:remove XBTSX.XSPEC --- app/branding.js | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/app/branding.js b/app/branding.js index e8ea443aff..d259778617 100644 --- a/app/branding.js +++ b/app/branding.js @@ -210,7 +210,6 @@ export function getMyMarketsQuotes() { "XBTSX.BCH", "XBTSX.LTC", "XBTSX.DASH", - "XBTSX.XSPEC", "XBTSX.NVC", "XBTSX.UNI", "XBTSX.NMC", @@ -344,7 +343,7 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.SMOKE"], ["BTS", "XBTSX.STH"], ["BTS", "XBTSX.WAVES"], - ["BTS", "HERTZ"], + ["BTS", "HERTZ"] ].filter(a => { if (!quotes.length) return true; return quotes.indexOf(a[0]) !== -1; @@ -360,14 +359,7 @@ export function getAssetNamespaces() { if (_isTestnet()) { return []; } - return [ - "OPEN.", - "RUDEX.", - "GDEX.", - "XBTSX.", - "CITADEL.", - "DEEX." - ]; + return ["OPEN.", "RUDEX.", "GDEX.", "XBTSX.", "CITADEL.", "DEEX."]; } /** From 38ec5552635d500f8150835f6a41edded555d16e Mon Sep 17 00:00:00 2001 From: technolog Date: Mon, 20 Apr 2020 19:35:54 +0300 Subject: [PATCH 37/48] spellcheck:off --- app/assets/index.hbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/assets/index.hbs b/app/assets/index.hbs index cf9156a95e..0a771e9dda 100644 --- a/app/assets/index.hbs +++ b/app/assets/index.hbs @@ -51,7 +51,7 @@ {{/if}} - +

Loading...

From fe31f07fb0e2156ca4b36dcba73184d8a21f273e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:27:28 +0200 Subject: [PATCH 38/48] Update gateways.js --- app/lib/common/gateways.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index ecbb40e6c0..09448113d9 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -91,14 +91,14 @@ export const availableGateways = { id: "OPEN", name: "OpenLedger", baseAPI: openledgerAPIs, - isEnabled: _isEnabled("OPEN"), + isEnabled: false, selected: false, options: { enabled: false, selected: false }, - landing: "http://dex.openledger.io", - wallet: "https://openledger.io/" + landing: "https://dex.openledger.io/news/ol-dex-is-closing-all-activities/", + wallet: "Shutdown" }, RUDEX: { id: "RUDEX", From b11e94791372253f13b1fee8150bd73c6d6de94e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:30:33 +0200 Subject: [PATCH 39/48] remove unused assets --- app/branding.js | 68 ++----------------------------------------------- 1 file changed, 2 insertions(+), 66 deletions(-) diff --git a/app/branding.js b/app/branding.js index 39ecbe0d63..a851a746f3 100644 --- a/app/branding.js +++ b/app/branding.js @@ -159,32 +159,7 @@ export function getMyMarketsQuotes() { "GDEX.USDT" ], openledgerTokens: [ - "OBITS", - "OPEN.BTC", - "OPEN.DASH", - "OPEN.DGD", - "OPEN.DOGE", - "OPEN.EOS", - "OPEN.EOSDAC", - "OPEN.ETH", - "OPEN.EURT", - "OPEN.GRC", - "OPEN.INCNT", - "OPEN.KRM", - "OPEN.LISK", - "OPEN.LTC", - "OPEN.MAID", - "OPEN.MKR", - "OPEN.NEO", - "OPEN.OMG", - "OPEN.SBD", - "OPEN.STEEM", - "OPEN.TUSD", - "OPEN.USDT", - "OPEN.WAVES", - "OPEN.XMR", - "OPEN.ZEC", - "OPEN.ZRX" + "OBITS" ], rudexTokens: [ "PPY", @@ -220,17 +195,6 @@ export function getMyMarketsQuotes() { "XBTSX.EXR" ], otherTokens: [ - "BTWTY", - "TWENTIX", - - "CVCOIN", - "HERO", - "OCT", - "HERTZ", - "ICOO", - "SMOKE", - "STEALTH", - "YOYOW" ] }; @@ -252,17 +216,12 @@ export function getFeaturedMarkets(quotes = []) { } return [ ["USD", "BTS"], - ["USD", "OPEN.BTC"], - ["USD", "OPEN.USDT"], - ["USD", "OPEN.ETH"], - ["USD", "OPEN.DASH"], ["USD", "GOLD"], ["USD", "HERO"], ["USD", "GDEX.BTC"], ["USD", "GDEX.ETH"], ["USD", "GDEX.EOS"], ["USD", "GDEX.BTO"], - ["USD", "OPEN.EOSDAC"], ["USD", "RUDEX.GOLOS"], ["USD", "RUDEX.STEEM"], ["USD", "RUDEX.EOS"], @@ -272,11 +231,7 @@ export function getFeaturedMarkets(quotes = []) { ["USD", "RUDEX.WLS"], ["USD", "RUDEX.SMOKE"], ["CNY", "BTS"], - ["CNY", "OPEN.BTC"], ["CNY", "USD"], - ["CNY", "OPEN.ETH"], - ["CNY", "YOYOW"], - ["CNY", "OCT"], ["CNY", "GDEX.BTC"], ["CNY", "GDEX.ETH"], ["CNY", "GDEX.EOS"], @@ -294,33 +249,18 @@ export function getFeaturedMarkets(quotes = []) { ["CNY", "RUDEX.USDT"], ["CNY", "RUDEX.WLS"], ["CNY", "RUDEX.SMOKE"], - ["OPEN.BTC", "BTS"], - ["OPEN.BTC", "OPEN.ETH"], - ["OPEN.BTC", "OPEN.DASH"], - ["OPEN.BTC", "OPEN.DGD"], - ["OPEN.BTC", "OPEN.STEEM"], - ["BTS", "OPEN.ETH"], - ["BTS", "OPEN.EOS"], ["BTS", "PPY"], - ["BTS", "OPEN.STEEM"], ["BTS", "OBITS"], ["BTS", "RUBLE"], ["BTS", "HERO"], ["BTS", "OCT"], ["BTS", "SILVER"], ["BTS", "GOLD"], - ["BTS", "BTWTY"], - ["BTS", "SMOKE"], ["BTS", "GDEX.BTC"], ["BTS", "GDEX.ETH"], ["BTS", "GDEX.EOS"], ["BTS", "GDEX.BTO"], ["BTS", "GDEX.USDT"], - ["BTS", "OPEN.EOSDAC"], - ["USD", "OPEN.STEEM"], - ["USD", "OPEN.MAID"], - ["OPEN.USDT", "OPEN.BTC"], - ["OPEN.BTC", "OPEN.MAID"], ["RUDEX.USDT", "RUDEX.BTC"], ["RUDEX.USDT", "RUDEX.ETH"], ["RUDEX.USDT", "RUDEX.EOS"], @@ -332,9 +272,6 @@ export function getFeaturedMarkets(quotes = []) { ["RUDEX.BTC", "RUDEX.GOLOS"], ["RUDEX.BTC", "RUDEX.WLS"], ["RUDEX.BTC", "PPY"], - ["BTS", "OPEN.MAID"], - ["BTS", "OPEN.HEAT"], - ["BTS", "OPEN.INCENT"], ["RUBLE", "RUDEX.BTC"], ["RUBLE", "RUDEX.ETH"], ["RUBLE", "RUDEX.USDT"], @@ -348,8 +285,7 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.WLS"], ["BTS", "RUDEX.SMOKE"], ["BTS", "XBTSX.STH"], - ["BTS", "XBTSX.WAVES"], - ["BTS", "HERTZ"] + ["BTS", "XBTSX.WAVES"] ].filter(a => { if (!quotes.length) return true; return quotes.indexOf(a[0]) !== -1; From 3ed7209e8692bdff495f2094ac485578cbc14689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:33:26 +0200 Subject: [PATCH 40/48] Update branding.js --- app/branding.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/app/branding.js b/app/branding.js index a851a746f3..79265a3d5f 100644 --- a/app/branding.js +++ b/app/branding.js @@ -217,7 +217,6 @@ export function getFeaturedMarkets(quotes = []) { return [ ["USD", "BTS"], ["USD", "GOLD"], - ["USD", "HERO"], ["USD", "GDEX.BTC"], ["USD", "GDEX.ETH"], ["USD", "GDEX.EOS"], @@ -252,8 +251,6 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "PPY"], ["BTS", "OBITS"], ["BTS", "RUBLE"], - ["BTS", "HERO"], - ["BTS", "OCT"], ["BTS", "SILVER"], ["BTS", "GOLD"], ["BTS", "GDEX.BTC"], From 0f8ca5479e37fb556effa03ff0641784a45445ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:34:24 +0200 Subject: [PATCH 41/48] remove deex --- app/api/apiConfig.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index 17f67030b5..bc155ad982 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -83,11 +83,6 @@ export const xbtsxAPIs = { COINS_LIST: "/coin" }; -export const deexAPIs = { - BASE: "https://deex.exchange/gateway", - COINS_LIST: "/compatibility/get_coins" -}; - export const nodeRegions = [ // region of the node follows roughly https://en.wikipedia.org/wiki/Subregion#/media/File:United_Nations_geographical_subregions.png "Northern Europe", From bb998ff55d18d1a3ee40ec4d7f1e03185a58aa38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:34:58 +0200 Subject: [PATCH 42/48] Update branding.js --- app/branding.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/branding.js b/app/branding.js index 79265a3d5f..25262c4476 100644 --- a/app/branding.js +++ b/app/branding.js @@ -298,7 +298,7 @@ export function getAssetNamespaces() { if (_isTestnet()) { return []; } - return ["OPEN.", "RUDEX.", "GDEX.", "XBTSX.", "CITADEL.", "DEEX."]; + return ["OPEN.", "RUDEX.", "GDEX.", "XBTSX.", "CITADEL."]; } /** @@ -322,7 +322,6 @@ export function allowedGateway(gateway) { "RUDEX", "GDEX", "XBTSX", - "DEEX", "CITADEL" ]; if (!gateway) { From 6648f35c44f00777345176a85d7a9e3cb14a8fb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Mon, 27 Apr 2020 08:35:57 +0200 Subject: [PATCH 43/48] Update gateways.js --- app/lib/common/gateways.js | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index 09448113d9..bea4a56840 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -10,8 +10,7 @@ import { cryptoBridgeAPIs, gdex2APIs, xbtsxAPIs, - citadelAPIs, - deexAPIs + citadelAPIs } from "api/apiConfig"; import {allowedGateway} from "branding"; import {isGatewayTemporarilyDisabled} from "../chain/onChainConfig"; @@ -190,25 +189,6 @@ export const availableGateways = { }, landing: "https://citadel.li/", wallet: "https://citadel.li/wallet/" - }, - DEEX: { - id: "DEEX", - name: "DEEX", - baseAPI: deexAPIs, - isSimple: true, - simpleAssetGateway: false, - fixedMemo: { - prepend_default: "dex:", - append: "" - }, - isEnabled: _isEnabled("DEEX"), - addressValidatorMethod: "POST", - options: { - enabled: false, - selected: false - }, - landing: "https://deex.one/", - wallet: "https://deex.exchange/" } }; From aff4bb5fbdc25a925e1f89800fa12795fba550e4 Mon Sep 17 00:00:00 2001 From: Agorise <31280836+Agorise@users.noreply.github.com> Date: Mon, 27 Apr 2020 17:48:49 -0500 Subject: [PATCH 44/48] added 2 more scam accounts that submit bs Proposals --- app/lib/common/scamAccounts.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/lib/common/scamAccounts.js b/app/lib/common/scamAccounts.js index 9c6ad069f5..9e19895683 100644 --- a/app/lib/common/scamAccounts.js +++ b/app/lib/common/scamAccounts.js @@ -1230,5 +1230,9 @@ export const scamAccountsOther = [ "committee-security-update", "1.2.1592605", "committee-accounr", - "1.2.500266" + "1.2.500266", + "committee-delegate", + "1.2.1621188", + "binance-witness", + "1.2.1700190" ]; From c475b48fb8e072f5c2541621cc50fb2b7dde99d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Schie=C3=9Fl?= Date: Fri, 1 May 2020 00:32:01 +0200 Subject: [PATCH 45/48] restore some assets, remove gdex delisting --- app/branding.js | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/app/branding.js b/app/branding.js index 25262c4476..b41076dcb5 100644 --- a/app/branding.js +++ b/app/branding.js @@ -141,13 +141,8 @@ export function getMyMarketsQuotes() { "GDEX.BTO", "GDEX.EOS", "GDEX.ETH", - "GDEX.BTM", - "GDEX.NEO", - "GDEX.GAS", - "GDEX.QTUM", "GDEX.BKBT", "GDEX.GXC", - "GDEX.HPB", "GDEX.SEER", "GDEX.FOTA", "GDEX.JRC", @@ -195,6 +190,11 @@ export function getMyMarketsQuotes() { "XBTSX.EXR" ], otherTokens: [ + "CVCOIN", + "HERO", + "OCT", + "HERTZ", + "YOYOW" ] }; @@ -217,6 +217,7 @@ export function getFeaturedMarkets(quotes = []) { return [ ["USD", "BTS"], ["USD", "GOLD"], + ["USD", "HERO"], ["USD", "GDEX.BTC"], ["USD", "GDEX.ETH"], ["USD", "GDEX.EOS"], @@ -231,11 +232,12 @@ export function getFeaturedMarkets(quotes = []) { ["USD", "RUDEX.SMOKE"], ["CNY", "BTS"], ["CNY", "USD"], + ["CNY", "YOYOW"], + ["CNY", "OCT"], ["CNY", "GDEX.BTC"], ["CNY", "GDEX.ETH"], ["CNY", "GDEX.EOS"], ["CNY", "GDEX.BTO"], - ["CNY", "GDEX.BTM"], ["CNY", "GDEX.SEER"], ["CNY", "GDEX.BKBT"], ["CNY", "GDEX.USDT"], @@ -249,8 +251,9 @@ export function getFeaturedMarkets(quotes = []) { ["CNY", "RUDEX.WLS"], ["CNY", "RUDEX.SMOKE"], ["BTS", "PPY"], - ["BTS", "OBITS"], ["BTS", "RUBLE"], + ["BTS", "HERO"], + ["BTS", "OCT"], ["BTS", "SILVER"], ["BTS", "GOLD"], ["BTS", "GDEX.BTC"], @@ -282,7 +285,8 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.WLS"], ["BTS", "RUDEX.SMOKE"], ["BTS", "XBTSX.STH"], - ["BTS", "XBTSX.WAVES"] + ["BTS", "XBTSX.WAVES"], + ["BTS", "HERTZ"] ].filter(a => { if (!quotes.length) return true; return quotes.indexOf(a[0]) !== -1; From b1b7b5969fb388986d856b00724ddb77a301ee5f Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Fri, 1 May 2020 12:11:07 +0300 Subject: [PATCH 46/48] =?UTF-8?q?-=20add=20RUDEX.PZM,=20icon=20and=20marke?= =?UTF-8?q?ts=20=E2=80=A6=20-=20add=20custom=20field=20for=20public=20key?= =?UTF-8?q?=20PZM=20(for=20withdrawals)=20-=20change=20endpoint=20RuDEX=20?= =?UTF-8?q?gateApi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/apiConfig.js | 2 +- app/assets/asset-symbols/rudex.pzm.png | Bin 0 -> 2208 bytes app/assets/asset-symbols/symbols.js | 1 + app/assets/locales/locale-en.json | 1 + app/assets/locales/locale-ru.json | 1 + app/branding.js | 23 +++--- .../DepositWithdraw/rudex/RuDexGateway.jsx | 3 + .../rudex/RuDexGatewayDepositRequest.jsx | 4 + .../rudex/RuDexWithdrawModal.jsx | 76 ++++++++++++++++-- app/components/Modal/WithdrawModalNew.jsx | 51 +++++++++++- app/lib/common/RuDexMethods.js | 2 +- app/lib/common/gatewayMethods.js | 4 +- 12 files changed, 142 insertions(+), 26 deletions(-) create mode 100644 app/assets/asset-symbols/rudex.pzm.png diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js index bc155ad982..44aec93e14 100644 --- a/app/api/apiConfig.js +++ b/app/api/apiConfig.js @@ -22,7 +22,7 @@ export const openledgerAPIs = { }; export const rudexAPIs = { - BASE: "https://gateway.rudex.org/api/v3_0", + BASE: "https://gateway.rudex.org/api/rudex", COINS_LIST: "/coins", NEW_DEPOSIT_ADDRESS: "/simple-api/initiate-trade" }; diff --git a/app/assets/asset-symbols/rudex.pzm.png b/app/assets/asset-symbols/rudex.pzm.png new file mode 100644 index 0000000000000000000000000000000000000000..1275b9ccb72b4deed9db705b03eb586b1392271e GIT binary patch literal 2208 zcma)8`#%$k8{WurJ#+gqLyft&vD{O+HMhBxp)8S!owWFdqHuYUBP!>;>>nZ+Fe20 zQIkarVtw<@G(59RFZEwlh4VeNptF84ejI0HAN6lM^xgQxh!b;`j>^qFokFWtrNJq4 zT^mm7s_p0ZcLcYx$-OKfE7MB%;jwDg0g2*tkl z#cexKjA7g2UZE@Dr4s!m&Mrl?|6yMq?mSlSnVO>)l8kwSt;T91-lJw>-$bqsYglaw zE=-q1uowHaA?*3j4gk$zdq8K`sGvuwP1)4sktYQ<VZIIOM3Tu5<(Ad(>st@r{BbmeY+tfBspDILl19U96RLck~Ys6`Fr` zx`I-(cu0Vp*-*RHnYfdAC4h~}8h$Gu$m-tQoXIi8Z-~T23)*}XH7UTy;7g_7>rXAn zI3y4RC7%{dWc$FsWO^UHzI$rzBGuZdHNn+|+Ys+jg&M?VRi|#)&SxCDkxi^b!Lr_@ zD&_)I`B@_TR%BtRK^D}XDsH+QT#dcT^a7hN zccA?PRs7T5R!j^p?_YSbIm_*d@FK(-e_OIicps}JqbVi7jzO5;0Uvk?GJQRhFF^mL{{guoGH$7u0a}H!wkesKs`->K`>M`X&d7KaIL3g^w&}v8Sar8J zs@^1Nv}pA$pqkbF8(|VQBL!r%JoIrSkCh(ga7pp@epTO{rp3)frU(w^9@cu{+F@T7 z>Q|8{)e@4h#&G)ZTjN*(neKPOEX$^Lve|O{R`Ur-Yk1#rlNH}jFpemK8<7Hn^r?I! zn6l1f?1T;bwbz-ibu=un%w=((;=$rci`$>u<|UYTh1Hi4x@Xk-cJQz?nnA#s>(N(M zeCP5eJ!xNkW7F0q$5;L5%vRT|upz**lbv-dANvh5U*8Dy6R0ejtp&6g|LB?O`YTW2CEAXE6r-fDvW>qa9p95L7~6%e1; z`H$$Rz*_%o!_@#a@DnL7XkpyFYRU{vWBV7k^qxs;+Xbtn9An|&Yiv9^uhhRUr@@-J z|JSj;yiaS7A}_yyRl4b%!M5$z#d|{t`tEPoE;h9>M)rBrOn46P!2)W*OZ{XU=E{^= zXkgJ2K~Ji{RwZ)d1-r{)F-D0h8P-QVyqn^51Y8xu&n{g&e*OJ7!^wR&S_TIJ+ccmN zE9_3%Tpz^$oHC5c5Sz!IkIL1leZ|(*7tmS3z_x9?CC1B-(0HlBztaB>UnDZ@T|~~n z!LiqGwVxFuYGSa=;KHrsUZmVW$Ju30nR3{i2Z10WiUX7!EXDckdQ>aL$cm!UO+$y! z*73?ZT!1+b;4#{8FB3t^McG!a_qr+dct9SG%DUnJu6SE7*XQ0!J?9~R=8U59#2S=9 zrn#oCLV%wsKz9uW07nwXlg38HGsUQKAWMA)3`f$#le|X7v&E@}XQRnOB7KsgXbjv}33d?z!$AM$0@ir|xlv1))QzB;+SXu>RY&OjBWZbyhLy&1 v$abNv$@})C=~k;Oocoqh^{)=I%BB%ZG*RT#fU2?Zp#Zozc%a$#f%pFpYnAfz literal 0 HcmV?d00001 diff --git a/app/assets/asset-symbols/symbols.js b/app/assets/asset-symbols/symbols.js index 33c70c7227..41b7c04d80 100644 --- a/app/assets/asset-symbols/symbols.js +++ b/app/assets/asset-symbols/symbols.js @@ -98,3 +98,4 @@ require("file-loader?name=asset-symbols/[name].png!./rudex.sbd.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.smoke.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.steem.png"); require("file-loader?name=asset-symbols/[name].png!./rudex.wls.png"); +require("file-loader?name=asset-symbols/[name].png!./rudex.pzm.png"); diff --git a/app/assets/locales/locale-en.json b/app/assets/locales/locale-en.json index a96666e006..989e70466c 100644 --- a/app/assets/locales/locale-en.json +++ b/app/assets/locales/locale-en.json @@ -1675,6 +1675,7 @@ "no_assets": "No withdrawable assets available", "no_estimate": "No estimate available for this object", "no_gateways": "Sorry, but there are no gateways available to handle this withdrawal", + "public_key": "Public key", "quantity": "Quantity", "submit": "Withdraw", "withdraw": "Withdraw" diff --git a/app/assets/locales/locale-ru.json b/app/assets/locales/locale-ru.json index 4ff92d9c60..40f8ef3a1c 100644 --- a/app/assets/locales/locale-ru.json +++ b/app/assets/locales/locale-ru.json @@ -1675,6 +1675,7 @@ "no_assets": "Нет доступных активов для вывода", "no_estimate": "Для этого объекта нет доступных оценок", "no_gateways": "Извините, для обработки этой операции вывода нет доступных шлюзов", + "public_key": "Public key", "quantity": "Количество", "submit": "Вывести", "withdraw": "Вывод" diff --git a/app/branding.js b/app/branding.js index b41076dcb5..7410634e84 100644 --- a/app/branding.js +++ b/app/branding.js @@ -153,9 +153,7 @@ export function getMyMarketsQuotes() { "GDEX.NULS", "GDEX.USDT" ], - openledgerTokens: [ - "OBITS" - ], + openledgerTokens: ["OBITS"], rudexTokens: [ "PPY", "RUDEX.BTC", @@ -169,7 +167,8 @@ export function getMyMarketsQuotes() { "RUDEX.KRM", "RUDEX.WLS", "RUDEX.SMOKE", - "RUDEX.GRC" + "RUDEX.GRC", + "RUDEX.PZM" ], xbtsxTokens: [ "XBTSX.STH", @@ -189,13 +188,7 @@ export function getMyMarketsQuotes() { "XBTSX.ETH", "XBTSX.EXR" ], - otherTokens: [ - "CVCOIN", - "HERO", - "OCT", - "HERTZ", - "YOYOW" - ] + otherTokens: ["CVCOIN", "HERO", "OCT", "HERTZ", "YOYOW"] }; let allTokens = []; @@ -232,7 +225,7 @@ export function getFeaturedMarkets(quotes = []) { ["USD", "RUDEX.SMOKE"], ["CNY", "BTS"], ["CNY", "USD"], - ["CNY", "YOYOW"], + ["CNY", "YOYOW"], ["CNY", "OCT"], ["CNY", "GDEX.BTC"], ["CNY", "GDEX.ETH"], @@ -252,7 +245,7 @@ export function getFeaturedMarkets(quotes = []) { ["CNY", "RUDEX.SMOKE"], ["BTS", "PPY"], ["BTS", "RUBLE"], - ["BTS", "HERO"], + ["BTS", "HERO"], ["BTS", "OCT"], ["BTS", "SILVER"], ["BTS", "GOLD"], @@ -264,6 +257,7 @@ export function getFeaturedMarkets(quotes = []) { ["RUDEX.USDT", "RUDEX.BTC"], ["RUDEX.USDT", "RUDEX.ETH"], ["RUDEX.USDT", "RUDEX.EOS"], + ["RUDEX.USDT", "RUDEX.PZM"], ["RUDEX.USDT", "PPY"], ["RUDEX.USDT", "RUBLE"], ["RUDEX.BTC", "RUDEX.ETH"], @@ -276,6 +270,8 @@ export function getFeaturedMarkets(quotes = []) { ["RUBLE", "RUDEX.ETH"], ["RUBLE", "RUDEX.USDT"], ["RUBLE", "RUDEX.GOLOS"], + ["RUDEX.BTC", "RUDEX.PZM"], + ["RUB", "RUDEX.GOLOS"], ["BTS", "RUDEX.GOLOS"], ["BTS", "RUDEX.STEEM"], ["BTS", "RUDEX.EOS"], @@ -284,6 +280,7 @@ export function getFeaturedMarkets(quotes = []) { ["BTS", "RUDEX.USDT"], ["BTS", "RUDEX.WLS"], ["BTS", "RUDEX.SMOKE"], + ["BTS", "RUDEX.PZM"], ["BTS", "XBTSX.STH"], ["BTS", "XBTSX.WAVES"], ["BTS", "HERTZ"] diff --git a/app/components/DepositWithdraw/rudex/RuDexGateway.jsx b/app/components/DepositWithdraw/rudex/RuDexGateway.jsx index c41b6665d3..1bfb953743 100644 --- a/app/components/DepositWithdraw/rudex/RuDexGateway.jsx +++ b/app/components/DepositWithdraw/rudex/RuDexGateway.jsx @@ -195,6 +195,9 @@ class RuDexGateway extends React.Component { receive_asset={coin.symbol} receive_coin_type={coin.symbol.toLowerCase()} supports_output_memos={coin.supportsMemos} + supportsPublicKey={ + coin.supportsPublicKey || false + } memoType={coin.memoType} min_amount={coin.minAmount} gateFee={coin.gateFee} diff --git a/app/components/DepositWithdraw/rudex/RuDexGatewayDepositRequest.jsx b/app/components/DepositWithdraw/rudex/RuDexGatewayDepositRequest.jsx index 7855b53a2f..36e6213c33 100644 --- a/app/components/DepositWithdraw/rudex/RuDexGatewayDepositRequest.jsx +++ b/app/components/DepositWithdraw/rudex/RuDexGatewayDepositRequest.jsx @@ -33,6 +33,7 @@ class RuDexGatewayDepositRequest extends React.Component { deprecated_message: PropTypes.string, action: PropTypes.string, supports_output_memos: PropTypes.bool.isRequired, + supportsPublicKey: PropTypes.bool.isRequired, memoType: PropTypes.string, min_amount: PropTypes.number, gateFee: PropTypes.number, @@ -572,6 +573,9 @@ class RuDexGatewayDepositRequest extends React.Component { output_supports_memos={ this.props.supports_output_memos } + output_supportsPublicKey={ + this.props.supportsPublicKey + } memo_prefix={withdraw_memo_prefix} modal_id={withdraw_modal_id} min_amount={this.props.min_amount} diff --git a/app/components/DepositWithdraw/rudex/RuDexWithdrawModal.jsx b/app/components/DepositWithdraw/rudex/RuDexWithdrawModal.jsx index 5e116a052b..f0245c690f 100644 --- a/app/components/DepositWithdraw/rudex/RuDexWithdrawModal.jsx +++ b/app/components/DepositWithdraw/rudex/RuDexWithdrawModal.jsx @@ -28,6 +28,7 @@ class RuDexWithdrawModal extends React.Component { url: PropTypes.string, output_wallet_type: PropTypes.string, output_supports_memos: PropTypes.bool.isRequired, + output_supportsPublicKey: PropTypes.bool.isRequired, amount_to_withdraw: PropTypes.string, balance: ChainTypes.ChainObject, min_amount: PropTypes.number, @@ -50,6 +51,10 @@ class RuDexWithdrawModal extends React.Component { withdraw_address_selected: WithdrawAddresses.getLast( props.output_wallet_type ), + withdraw_publicKey: "", + withdraw_publicKey_not_empty: this.props.output_supportsPublicKey + ? false + : true, memo: "", withdraw_address_first: true, empty_withdraw_value: false, @@ -245,16 +250,37 @@ class RuDexWithdrawModal extends React.Component { this._validateAddress(new_withdraw_address); } + onWithdrawPublicKeyChanged(e) { + let new_withdraw_publicKey = e.target.value.trim(); + this.setState({ + withdraw_publicKey: new_withdraw_publicKey, + withdraw_publicKey_not_empty: + new_withdraw_publicKey != "" ? true : false + }); + } + _validateAddress(new_withdraw_address, props = this.props) { validateAddress({ url: props.url, walletType: props.output_wallet_type, newAddress: new_withdraw_address - }).then(isValid => { + }).then(json => { + if (typeof json === "undefined") { + json = {isValid: false}; + } if (this.state.withdraw_address === new_withdraw_address) { this.setState({ withdraw_address_check_in_progress: false, - withdraw_address_is_valid: isValid + withdraw_address_is_valid: json.isValid, + withdraw_publicKey: json.hasOwnProperty("publicKey") + ? json.publicKey + : "", + withdraw_publicKey_not_empty: this.props + .output_supportsPublicKey + ? json.hasOwnProperty("publicKey") + ? true + : false + : true }); } }); @@ -283,12 +309,12 @@ class RuDexWithdrawModal extends React.Component { withdraw_amount < this.props.min_amount / utils.get_asset_precision(this.props.asset_precision); - console.log( + /* console.log( "X", withdraw_amount, this.props.min_amount / - utils.get_asset_precision(this.props.asset_precision) - ); + utils.get_asset_precision(this.props.asset_precision) + );*/ this.setState({minAmountError: lessThanMinimum}); return lessThanMinimum; } @@ -353,6 +379,9 @@ class RuDexWithdrawModal extends React.Component { this.props.output_coin_type + ":" + this.state.withdraw_address + + (this.props.output_supportsPublicKey + ? ":" + this.state.withdraw_publicKey + : "") + (this.state.memo ? ":" + new Buffer(this.state.memo, "utf-8") : ""), @@ -415,6 +444,9 @@ class RuDexWithdrawModal extends React.Component { this.props.output_coin_type + ":" + this.state.withdraw_address + + (this.props.output_supportsPublicKey + ? ":" + this.state.withdraw_publicKey + : "") + (this.state.memo ? ":" + new Buffer(this.state.memo, "utf-8") : ""), @@ -483,6 +515,7 @@ class RuDexWithdrawModal extends React.Component { _getAvailableAssets(state = this.state) { const {from_account, feeStatus} = state; + function hasFeePoolBalance(id) { if (feeStatus[id] === undefined) return true; return feeStatus[id] && feeStatus[id].hasPoolBalance; @@ -552,7 +585,7 @@ class RuDexWithdrawModal extends React.Component { } render() { - let {withdraw_address_selected, memo} = this.state; + let {withdraw_address_selected, withdraw_publicKey, memo} = this.state; let storedAddress = WithdrawAddresses.get( this.props.output_wallet_type ); @@ -842,6 +875,34 @@ class RuDexWithdrawModal extends React.Component { {invalid_address_message} + {/* for PublicKey input (ex.PRIZM) */} + {this.props.output_supportsPublicKey ? ( +
+ +
+
+ +
+
+
+ ) : null} + {/* Memo input */} {withdraw_memo} @@ -851,7 +912,8 @@ class RuDexWithdrawModal extends React.Component { disabled={ this.state.error || this.state.balanceError || - this.state.minAmountError + this.state.minAmountError || + !this.state.withdraw_publicKey_not_empty } type="primary" onClick={this.onSubmit.bind(this)} diff --git a/app/components/Modal/WithdrawModalNew.jsx b/app/components/Modal/WithdrawModalNew.jsx index beade2962b..2ed027d528 100644 --- a/app/components/Modal/WithdrawModalNew.jsx +++ b/app/components/Modal/WithdrawModalNew.jsx @@ -62,6 +62,8 @@ class WithdrawModalNew extends React.Component { quantity: 0, address: "", memo: "", + withdraw_publicKey: "", + withdraw_publicKey_not_empty: false, userEstimate: null, addressError: false, gatewayStatus: availableGateways, @@ -581,8 +583,20 @@ class WithdrawModalNew extends React.Component { : null, method: gatewayStatus[selectedGateway].addressValidatorMethod || null - }).then(isValid => { - this.setState({addressError: isValid ? false : true}); + }).then(json => { + if (typeof json === "undefined") { + json = {isValid: false}; + } + + this.setState({addressError: json.isValid ? false : true}); + this.setState({ + withdraw_publicKey: json.hasOwnProperty("publicKey") + ? json.publicKey + : "", + withdraw_publicKey_not_empty: json.hasOwnProperty("publicKey") + ? true + : false + }); }); } @@ -600,6 +614,15 @@ class WithdrawModalNew extends React.Component { this.setState({memo: e.target.value}); } + onWithdrawPublicKeyChanged(e) { + let new_withdraw_publicKey = e.target.value.trim(); + this.setState({ + withdraw_publicKey: new_withdraw_publicKey, + withdraw_publicKey_not_empty: + new_withdraw_publicKey != "" ? true : false + }); + } + onClickAvailableBalance(available) { this.setState({quantity: available}); } @@ -714,6 +737,9 @@ class WithdrawModalNew extends React.Component { assetName + ":" + address + + (this.state.withdraw_publicKey_not_empty + ? ":" + this.state.withdraw_publicKey + : "") + (memo ? ":" + new Buffer(memo, "utf-8") : ""); to = intermediateAccount.get("id"); } @@ -1176,6 +1202,27 @@ class WithdrawModalNew extends React.Component { ) : null} + {/*PUBLIC key - custom field (PRIZM) */} + {backingAsset && + backingAsset.supportsPublicKey !== undefined ? ( +
+ + { + + } +
+ ) : null} + {/*MEMO*/} {isBTS || (backingAsset && backingAsset.supportsMemos) ? ( diff --git a/app/lib/common/RuDexMethods.js b/app/lib/common/RuDexMethods.js index 70a2b13192..0007f981a5 100644 --- a/app/lib/common/RuDexMethods.js +++ b/app/lib/common/RuDexMethods.js @@ -81,7 +81,7 @@ export function validateAddress({ }), body: JSON.stringify({address: newAddress}) }) - .then(reply => reply.json().then(json => json.isValid)) + .then(reply => reply.json().then(json => json)) .catch(err => { console.log("validate error:", err); }); diff --git a/app/lib/common/gatewayMethods.js b/app/lib/common/gatewayMethods.js index 091740f3a1..0a704bb0f3 100644 --- a/app/lib/common/gatewayMethods.js +++ b/app/lib/common/gatewayMethods.js @@ -472,7 +472,7 @@ export function validateAddress({ "Content-Type": "application/json" }) }) - .then(reply => reply.json().then(json => json.isValid)) + .then(reply => reply.json().then(json => json)) .catch(err => { console.log("validate error:", err); }); @@ -485,7 +485,7 @@ export function validateAddress({ }), body: JSON.stringify({address: newAddress}) }) - .then(reply => reply.json().then(json => json.isValid)) + .then(reply => reply.json().then(json => json)) .catch(err => { console.log("validate error:", err); }); From 307b8480742ba2922c154d3272464fcf39ff60b0 Mon Sep 17 00:00:00 2001 From: serdrdoor Date: Fri, 1 May 2020 12:43:52 +0300 Subject: [PATCH 47/48] fix bug in claim asset fees (feePoolOperations) --- app/components/Account/FeePoolOperation.jsx | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/app/components/Account/FeePoolOperation.jsx b/app/components/Account/FeePoolOperation.jsx index a7ba9774c4..943333529a 100644 --- a/app/components/Account/FeePoolOperation.jsx +++ b/app/components/Account/FeePoolOperation.jsx @@ -260,7 +260,20 @@ class FeePoolOperation extends React.Component { this.state.claimFeesAmountAsset.getAmount() <= unclaimedBalance; let unclaimedBalanceText = ( - + { + this.state.claimFeesAmountAsset.setAmount({ + sats: dynamicObject.get("accumulated_fees") + }); + this.setState({ + claimFeesAmount: this.state.claimFeesAmountAsset.getAmount( + { + real: true + } + ) + }); + }} + > Date: Sun, 10 May 2020 09:10:36 +0200 Subject: [PATCH 48/48] - add getSteemNewsTag - add BRIDGE again to display the warning icon, permanently disabled in gateways.js - remove bitshares.fdn as news feed in BitShares UI - fix dependencies Signed-off-by: Stefan Schiessl --- app/branding.js | 9 +- .../Gateways/GatewaySelectorModal.jsx | 14 +- app/components/News.jsx | 9 +- app/lib/common/gateways.js | 7 +- package-lock.json | 3463 +++++++++-------- package.json | 9 +- 6 files changed, 1912 insertions(+), 1599 deletions(-) diff --git a/app/branding.js b/app/branding.js index 7410634e84..59b9c68132 100644 --- a/app/branding.js +++ b/app/branding.js @@ -319,11 +319,12 @@ export function getAssetHideNamespaces() { export function allowedGateway(gateway) { const allowedGateways = [ "TRADE", - "OPEN", + "OPEN", // keep to display the warning icon, permanently disabled in gateways.js "RUDEX", "GDEX", "XBTSX", - "CITADEL" + "CITADEL", + "BRIDGE" // keep to display the warning icon, permanently disabled in gateways.js ]; if (!gateway) { // answers the question: are any allowed? @@ -355,3 +356,7 @@ export function getConfigurationAsset() { "This asset is used for decentralized configuration of the BitShares UI placed under bitshares.org." }; } + +export function getSteemNewsTag() { + return null; +} diff --git a/app/components/Gateways/GatewaySelectorModal.jsx b/app/components/Gateways/GatewaySelectorModal.jsx index 8795f06b04..089ba0ce0d 100644 --- a/app/components/Gateways/GatewaySelectorModal.jsx +++ b/app/components/Gateways/GatewaySelectorModal.jsx @@ -214,9 +214,10 @@ class GatewaySelectorModal extends React.Component { name: item.name, prefix: item.id, landing: !!item.landing ? item.landing : undefined, - wallet: !!item.wallet - ? item.wallet + this._getReferrerLink() - : undefined, + wallet: + !!item.wallet && item.wallet.startsWith("http") + ? item.wallet + this._getReferrerLink() + : item.wallet, isEnabled: item.isEnabled }; }); @@ -226,9 +227,10 @@ class GatewaySelectorModal extends React.Component { type: "bridge", name: item.name, landing: !!item.landing ? item.landing : undefined, - wallet: !!item.wallet - ? item.wallet + this._getReferrerLink() - : undefined, + wallet: + !!item.wallet && item.wallet.startsWith("http") + ? item.wallet + this._getReferrerLink() + : item.wallet, isEnabled: item.isEnabled }; }); diff --git a/app/components/News.jsx b/app/components/News.jsx index d52fef6772..c61b0234e9 100644 --- a/app/components/News.jsx +++ b/app/components/News.jsx @@ -4,8 +4,9 @@ import {api} from "steem-js-api"; import Translate from "react-translate-component"; import LoadingIndicator from "./LoadingIndicator"; import utils from "common/utils"; +import {getSteemNewsTag} from "../branding"; -const query = {tag: "bitshares.fdn", limit: 20}; +const query = {tag: getSteemNewsTag(), limit: 20}; const alignRight = {textAlign: "right"}; const alignLeft = {textAlign: "left"}; @@ -152,6 +153,12 @@ class News extends React.Component { componentDidMount() { this.updateDimensions(); window.addEventListener("resize", this.updateDimensions); + if (!query.tag) { + setTimeout(() => { + this.setState({isLoading: false, isWrong: false}); + }, 100); + return; + } api.getDiscussionsByBlog(query) .then(discussions => { this.orderDiscussions(discussions); diff --git a/app/lib/common/gateways.js b/app/lib/common/gateways.js index bea4a56840..effbe4c6a8 100644 --- a/app/lib/common/gateways.js +++ b/app/lib/common/gateways.js @@ -90,13 +90,14 @@ export const availableGateways = { id: "OPEN", name: "OpenLedger", baseAPI: openledgerAPIs, - isEnabled: false, + isEnabled: () => false, selected: false, options: { enabled: false, selected: false }, - landing: "https://dex.openledger.io/news/ol-dex-is-closing-all-activities/", + landing: + "https://dex.openledger.io/news/ol-dex-is-closing-all-activities/", wallet: "Shutdown" }, RUDEX: { @@ -137,7 +138,7 @@ export const availableGateways = { id: "BRIDGE", name: "CryptoBridge", baseAPI: cryptoBridgeAPIs, - isEnabled: _isEnabled("BRIDGE"), + isEnabled: () => false, selected: false, singleWallet: true, // Has no coresponging coinType == backingCoinType specific wallet addressValidatorAsset: true, // Address validator requires output_asset parameter diff --git a/package-lock.json b/package-lock.json index 31f40c59b9..718ede3949 100644 --- a/package-lock.json +++ b/package-lock.json @@ -246,9 +246,9 @@ "dev": true }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "ms": { @@ -359,6 +359,12 @@ "@babel/types": "7.0.0-beta.44" } }, + "@babel/helper-validator-identifier": { + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==", + "dev": true + }, "@babel/helpers": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", @@ -716,9 +722,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -1437,17 +1443,6 @@ } } }, - "@jest/fake-timers": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.7.1.tgz", - "integrity": "sha512-4vSQJDKfR2jScOe12L9282uiwuwQv9Lk7mgrCSZHA9evB9efB/qx8i0KJxsAKtp8fgJYBJdYY7ZU6u3F4/pyjA==", - "dev": true, - "requires": { - "@jest/types": "^24.7.0", - "jest-message-util": "^24.7.1", - "jest-mock": "^24.7.0" - } - }, "@jest/reporters": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz", @@ -1801,17 +1796,6 @@ } } }, - "@jest/test-result": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.7.1.tgz", - "integrity": "sha512-3U7wITxstdEc2HMfBX7Yx3JZgiNBubwDqQMh+BXmZXHa3G13YWF3p6cK+5g0hGkN3iufg/vGPl3hLxQXD74Npg==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/types": "^24.7.0", - "@types/istanbul-lib-coverage": "^2.0.0" - } - }, "@jest/test-sequencer": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz", @@ -2077,28 +2061,113 @@ } }, "@jest/transform": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.7.1.tgz", - "integrity": "sha512-EsOUqP9ULuJ66IkZQhI5LufCHlTbi7hrcllRMUEV/tOgqBVQi93+9qEvkX0n8mYpVXQ8VjwmICeRgg58mrtIEw==", + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz", + "integrity": "sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/types": "^24.7.0", + "@jest/types": "^24.9.0", "babel-plugin-istanbul": "^5.1.0", "chalk": "^2.0.1", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.1.15", - "jest-haste-map": "^24.7.1", - "jest-regex-util": "^24.3.0", - "jest-util": "^24.7.1", + "jest-haste-map": "^24.9.0", + "jest-regex-util": "^24.9.0", + "jest-util": "^24.9.0", "micromatch": "^3.1.10", + "pirates": "^4.0.1", "realpath-native": "^1.1.0", "slash": "^2.0.0", "source-map": "^0.6.1", "write-file-atomic": "2.4.1" }, "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", + "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", + "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.9.0", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "dev": true, + "requires": { + "@jest/source-map": "^24.9.0", + "chalk": "^2.0.1", + "slash": "^2.0.0" + } + }, + "@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.1.15", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/istanbul-lib-coverage": "^2.0.0" + } + }, + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^13.0.0" + } + }, + "@types/yargs": { + "version": "13.0.8", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.8.tgz", + "integrity": "sha512-XAvHLwG7UQ+8M4caKIH0ZozIOYay5fQkAgyIXegXT9jPtdIGdhga+sUEdAr1CiG46aB+c64xQEYyEzlwWVTNzA==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -2108,6 +2177,12 @@ "color-convert": "^1.9.0" } }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -2119,10 +2194,129 @@ "supports-color": "^5.3.0" } }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "anymatch": "^2.0.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.2.7", + "graceful-fs": "^4.1.15", + "invariant": "^2.2.4", + "jest-serializer": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.9.0", + "micromatch": "^3.1.10", + "sane": "^4.0.3", + "walker": "^1.0.7" + } + }, + "jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^2.0.1", + "micromatch": "^3.1.10", + "slash": "^2.0.0", + "stack-utils": "^1.0.1" + } + }, + "jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0" + } + }, + "jest-regex-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz", + "integrity": "sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==", + "dev": true + }, + "jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==", + "dev": true + }, + "jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/source-map": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "callsites": "^3.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.15", + "is-ci": "^2.0.0", + "mkdirp": "^0.5.1", + "slash": "^2.0.0", + "source-map": "^0.6.0" + } + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dev": true, + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, "slash": { @@ -2388,262 +2582,178 @@ "dev": true }, "@webassemblyjs/ast": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz", - "integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.5.13", - "@webassemblyjs/helper-wasm-bytecode": "1.5.13", - "@webassemblyjs/wast-parser": "1.5.13", - "debug": "^3.1.0", - "mamacro": "^0.0.3" - }, - "dependencies": { - "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" - } - } + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz", - "integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", "dev": true }, "@webassemblyjs/helper-api-error": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz", - "integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz", - "integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "dev": true, "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz", - "integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.5.13" + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/helper-fsm": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz", - "integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", "dev": true }, "@webassemblyjs/helper-module-context": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz", - "integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "dev": true, "requires": { - "debug": "^3.1.0", - "mamacro": "^0.0.3" - }, - "dependencies": { - "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" - } - } + "@webassemblyjs/ast": "1.9.0" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz", - "integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz", - "integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-buffer": "1.5.13", - "@webassemblyjs/helper-wasm-bytecode": "1.5.13", - "@webassemblyjs/wasm-gen": "1.5.13", - "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" } }, "@webassemblyjs/ieee754": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz", - "integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", "dev": true, "requires": { - "ieee754": "^1.1.11" + "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz", - "integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", "dev": true, "requires": { - "long": "4.0.0" - }, - "dependencies": { - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - } + "@xtuc/long": "4.2.2" } }, "@webassemblyjs/utf8": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz", - "integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz", - "integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-buffer": "1.5.13", - "@webassemblyjs/helper-wasm-bytecode": "1.5.13", - "@webassemblyjs/helper-wasm-section": "1.5.13", - "@webassemblyjs/wasm-gen": "1.5.13", - "@webassemblyjs/wasm-opt": "1.5.13", - "@webassemblyjs/wasm-parser": "1.5.13", - "@webassemblyjs/wast-printer": "1.5.13", - "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/wasm-gen": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz", - "integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-wasm-bytecode": "1.5.13", - "@webassemblyjs/ieee754": "1.5.13", - "@webassemblyjs/leb128": "1.5.13", - "@webassemblyjs/utf8": "1.5.13" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wasm-opt": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz", - "integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-buffer": "1.5.13", - "@webassemblyjs/wasm-gen": "1.5.13", - "@webassemblyjs/wasm-parser": "1.5.13", - "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" } }, "@webassemblyjs/wasm-parser": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz", - "integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-api-error": "1.5.13", - "@webassemblyjs/helper-wasm-bytecode": "1.5.13", - "@webassemblyjs/ieee754": "1.5.13", - "@webassemblyjs/leb128": "1.5.13", - "@webassemblyjs/utf8": "1.5.13" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wast-parser": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz", - "integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/floating-point-hex-parser": "1.5.13", - "@webassemblyjs/helper-api-error": "1.5.13", - "@webassemblyjs/helper-code-frame": "1.5.13", - "@webassemblyjs/helper-fsm": "1.5.13", - "long": "^3.2.0", - "mamacro": "^0.0.3" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" } }, "@webassemblyjs/wast-printer": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz", - "integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/wast-parser": "1.5.13", - "long": "^3.2.0" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" } }, "@webpack-contrib/schema-utils": { @@ -2730,6 +2840,18 @@ } } }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, "abab": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", @@ -2753,20 +2875,11 @@ } }, "acorn": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", - "integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, - "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==", - "dev": true, - "requires": { - "acorn": "^5.0.0" - } - }, "acorn-globals": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", @@ -2778,9 +2891,9 @@ }, "dependencies": { "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", - "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -3330,9 +3443,9 @@ "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==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, "micromatch": { @@ -3705,17 +3818,10 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, - "async": { - "version": "1.0.0", - "resolved": "http://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", - "dev": true, - "optional": true - }, "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, "async-exit-hook": { @@ -5129,9 +5235,9 @@ "integrity": "sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==" }, "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true }, "bitshares-report": { @@ -6101,105 +6207,29 @@ "dev": true }, "chokidar": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", - "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", "dev": true, "requires": { "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.2.2", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", "glob-parent": "^3.1.0", - "inherits": "^2.0.1", + "inherits": "^2.0.3", "is-binary-path": "^1.0.0", "is-glob": "^4.0.0", - "lodash.debounce": "^4.0.8", - "normalize-path": "^2.1.1", + "normalize-path": "^3.0.0", "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.5" + "readdirp": "^2.2.1", + "upath": "^1.1.1" }, "dependencies": { - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "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.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-number": { + "normalize-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true } } @@ -6210,9 +6240,9 @@ "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=" }, "chrome-trace-event": { - "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==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -6404,9 +6434,9 @@ } }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true } } @@ -7108,13 +7138,6 @@ "array-find-index": "^1.0.1" } }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", - "dev": true, - "optional": true - }, "cyclist": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", @@ -7267,9 +7290,9 @@ "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==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true } } @@ -7775,9 +7798,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "path-exists": { @@ -7815,9 +7838,9 @@ } }, "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -7934,14 +7957,26 @@ } }, "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", + "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", "dev": true, "requires": { "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", + "memory-fs": "^0.5.0", "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + } } }, "enquire.js": { @@ -8756,15 +8791,36 @@ } }, "extract-zip": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", - "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "yauzl": "2.4.1" + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "dependencies": { + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } } }, "extsprintf": { @@ -8772,13 +8828,6 @@ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", - "dev": true, - "optional": true - }, "fast-deep-equal": { "version": "1.1.0", "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", @@ -8850,14 +8899,11 @@ } } }, - "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", - "dev": true, - "requires": { - "pend": "~1.2.0" - } + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true }, "figures": { "version": "2.0.0", @@ -8950,26 +8996,15 @@ } }, "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", "dev": true, "requires": { "detect-file": "^1.0.0", - "is-glob": "^3.1.0", + "is-glob": "^4.0.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } } }, "flat-cache": { @@ -9755,9 +9790,9 @@ } }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-stdin": { @@ -9823,34 +9858,72 @@ "path-is-absolute": "^1.0.0" } }, - "global": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "min-document": "^2.19.0", - "process": "~0.5.1" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "global": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", + "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "dev": true, + "requires": { + "min-document": "^2.19.0", + "process": "~0.5.1" + } + }, + "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" } }, "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" + "global-prefix": "^3.0.0" + }, + "dependencies": { + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } } }, "global-prefix": { @@ -9886,13 +9959,13 @@ } }, "globule": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", - "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.1.tgz", + "integrity": "sha512-OVyWOHgw29yosRHCHo7NncwR1hW5ew0W/UrvtwvjefVJeQ26q4/8r8FmPsSF1hJ93IgWkyv16pCTz6WblMzm/g==", "dev": true, "requires": { "glob": "~7.1.1", - "lodash": "~4.17.10", + "lodash": "~4.17.12", "minimatch": "~3.0.2" } }, @@ -9951,28 +10024,31 @@ "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=" }, "handlebars": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", - "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", - "dev": true, + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, "neo-async": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==" }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -10135,17 +10211,6 @@ "minimalistic-assert": "^1.0.1" } }, - "hasha": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=", - "dev": true, - "optional": true, - "requires": { - "is-stream": "^1.0.1", - "pinkie-promise": "^2.0.0" - } - }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", @@ -10246,6 +10311,12 @@ "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", "dev": true }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, "html-loader": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-0.5.5.tgz", @@ -10562,9 +10633,9 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "in-publish": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", - "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", + "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", "dev": true }, "indent-string": { @@ -10592,6 +10663,12 @@ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -10747,9 +10824,9 @@ } }, "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=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", "dev": true }, "ipaddr.js": { @@ -11408,12 +11485,12 @@ } }, "istanbul-reports": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", - "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", "dev": true, "requires": { - "handlebars": "^4.1.2" + "html-escaper": "^2.0.0" } }, "jdenticon": { @@ -11852,9 +11929,9 @@ } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -12912,34 +12989,6 @@ "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==", "dev": true }, - "jest-haste-map": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.7.1.tgz", - "integrity": "sha512-g0tWkzjpHD2qa03mTKhlydbmmYiA2KdcJe762SbfFo/7NIMgBWAA0XqQlApPwkWOF7Cxoi/gUqL0i6DIoLpMBw==", - "dev": true, - "requires": { - "@jest/types": "^24.7.0", - "anymatch": "^2.0.0", - "fb-watchman": "^2.0.0", - "fsevents": "^1.2.7", - "graceful-fs": "^4.1.15", - "invariant": "^2.2.4", - "jest-serializer": "^24.4.0", - "jest-util": "^24.7.1", - "jest-worker": "^24.6.0", - "micromatch": "^3.1.10", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "dependencies": { - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - } - } - }, "jest-jasmine2": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz", @@ -13345,88 +13394,6 @@ } } }, - "jest-message-util": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.7.1.tgz", - "integrity": "sha512-dk0gqVtyqezCHbcbk60CdIf+8UHgD+lmRHifeH3JRcnAqh4nEyPytSc9/L1+cQyxC+ceaeP696N4ATe7L+omcg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^24.7.1", - "@jest/types": "^24.7.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^2.0.1", - "micromatch": "^3.1.10", - "slash": "^2.0.0", - "stack-utils": "^1.0.1" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "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": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "supports-color": { - "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" - } - } - } - }, - "jest-mock": { - "version": "24.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.7.0.tgz", - "integrity": "sha512-6taW4B4WUcEiT2V9BbOmwyGuwuAFT2G8yghF7nyNW1/2gq5+6aTqSPcS9lS6ArvEkX55vbPAS/Jarx5LSm4Fng==", - "dev": true, - "requires": { - "@jest/types": "^24.7.0" - } - }, "jest-pnp-resolver": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", @@ -14344,9 +14311,9 @@ } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -14355,12 +14322,6 @@ } } }, - "jest-serializer": { - "version": "24.4.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.4.0.tgz", - "integrity": "sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q==", - "dev": true - }, "jest-snapshot": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz", @@ -14549,96 +14510,6 @@ } } }, - "jest-util": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.7.1.tgz", - "integrity": "sha512-/KilOue2n2rZ5AnEBYoxOXkeTu6vi7cjgQ8MXEkih0oeAXT6JkS3fr7/j8+engCjciOU1Nq5loMSKe0A1oeX0A==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/fake-timers": "^24.7.1", - "@jest/source-map": "^24.3.0", - "@jest/test-result": "^24.7.1", - "@jest/types": "^24.7.0", - "callsites": "^3.0.0", - "chalk": "^2.0.1", - "graceful-fs": "^4.1.15", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1", - "slash": "^2.0.0", - "source-map": "^0.6.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==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "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" - } - } - } - }, "jest-validate": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", @@ -14946,9 +14817,9 @@ } }, "js-base64": { - "version": "2.4.8", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.8.tgz", - "integrity": "sha512-hm2nYpDrwoO/OzBhdcqs/XGT6XjSuSSCVEpia+Kl2J6x4CYt5hISlVL/AYU1khoDXv0AQVgxtdJySb9gjAn56Q==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", + "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", "dev": true }, "js-sha256": { @@ -15029,22 +14900,19 @@ "dev": true }, "jshint": { - "version": "2.9.6", - "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.6.tgz", - "integrity": "sha512-KO9SIAKTlJQOM4lE64GQUtGBRpTOuvbrRrSZw3AhUxMNG266nX9hK2cKA4SBhXOj0irJGyNyGSLT62HGOVDEOA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.11.0.tgz", + "integrity": "sha512-ooaD/hrBPhu35xXW4gn+o3SOuzht73gdBuffgJzrZBJZPGgGiiTvJEgTyxFvBO2nz0+X1G6etF8SzUODTlLY6Q==", "dev": true, "requires": { "cli": "~1.0.0", "console-browserify": "1.1.x", "exit": "0.1.x", "htmlparser2": "3.8.x", - "lodash": "~4.17.10", + "lodash": "~4.17.11", "minimatch": "~3.0.2", - "phantom": "~4.0.1", - "phantomjs-prebuilt": "~2.1.7", "shelljs": "0.3.x", - "strip-json-comments": "1.0.x", - "unicode-5.2.0": "^0.7.5" + "strip-json-comments": "1.0.x" }, "dependencies": { "strip-json-comments": { @@ -15148,13 +15016,6 @@ "integrity": "sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE=", "dev": true }, - "kew": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=", - "dev": true, - "optional": true - }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -15204,12 +15065,12 @@ } }, "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "requires": { - "invert-kv": "^1.0.0" + "invert-kv": "^2.0.0" } }, "left-pad": { @@ -15260,9 +15121,9 @@ } }, "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true }, "loader-utils": { @@ -15536,12 +15397,6 @@ "tmpl": "1.0.x" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, "map-age-cleaner": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", @@ -15654,6 +15509,25 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", "dev": true }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + } + } + }, "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", @@ -15683,9 +15557,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -15733,9 +15607,9 @@ }, "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": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true } } @@ -15839,7 +15713,8 @@ "minimist": { "version": "0.0.8", "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true }, "mississippi": { "version": "2.0.0", @@ -15903,11 +15778,18 @@ "integrity": "sha512-tilCZOvIhRETXJuTmxxpz8mgplF7gmFhcH05JuR/YL+JLO98gLRQ1Mk4XpYQxxbPMKupSOv+Bidw7EKv8wds1w==" }, "mkdirp": { - "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" + }, + "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + } } }, "mocha": { @@ -15944,6 +15826,15 @@ "ms": "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" + } + }, "supports-color": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", @@ -16003,6 +15894,12 @@ "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, + "nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "dev": true + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -16035,9 +15932,9 @@ "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==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true } } @@ -16205,9 +16102,9 @@ } }, "node-sass": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", - "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz", + "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", "dev": true, "requires": { "async-foreach": "^0.1.3", @@ -16217,25 +16114,25 @@ "get-stdin": "^4.0.1", "glob": "^7.0.3", "in-publish": "^2.0.0", - "lodash": "^4.17.11", + "lodash": "^4.17.15", "meow": "^3.7.0", "mkdirp": "^0.5.1", "nan": "^2.13.2", "node-gyp": "^3.8.0", "npmlog": "^4.0.0", "request": "^2.88.0", - "sass-graph": "^2.2.4", + "sass-graph": "2.2.5", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" }, "dependencies": { "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -16252,9 +16149,9 @@ } }, "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=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, "har-validator": { @@ -16279,22 +16176,22 @@ "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", "dev": true }, - "nan": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", - "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", - "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 }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "dev": true, "requires": { "aws-sign2": "~0.7.0", @@ -16304,7 +16201,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -16314,19 +16211,19 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" } }, "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==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "dev": true, "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" + "psl": "^1.1.28", + "punycode": "^2.1.1" } } } @@ -16453,9 +16350,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -16671,24 +16568,6 @@ "mimic-fn": "^1.0.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, "optionator": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", @@ -16714,6 +16593,66 @@ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.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" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "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" + } + } + } + }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -16968,64 +16907,6 @@ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, - "phantom": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/phantom/-/phantom-4.0.12.tgz", - "integrity": "sha512-Tz82XhtPmwCk1FFPmecy7yRGZG2btpzY2KI9fcoPT7zT9det0CcMyfBFPp1S8DqzsnQnm8ZYEfdy528mwVtksA==", - "dev": true, - "optional": true, - "requires": { - "phantomjs-prebuilt": "^2.1.16", - "split": "^1.0.1", - "winston": "^2.4.0" - } - }, - "phantomjs-prebuilt": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz", - "integrity": "sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=", - "dev": true, - "optional": true, - "requires": { - "es6-promise": "^4.0.3", - "extract-zip": "^1.6.5", - "fs-extra": "^1.0.0", - "hasha": "^2.2.0", - "kew": "^0.7.0", - "progress": "^1.1.8", - "request": "^2.81.0", - "request-progress": "^2.0.1", - "which": "^1.2.10" - }, - "dependencies": { - "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, - "optional": true - }, - "fs-extra": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", - "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", - "dev": true, - "optional": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true, - "optional": true - } - } - }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -17568,9 +17449,9 @@ "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "public-encrypt": { @@ -17781,9 +17662,9 @@ } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" @@ -17922,9 +17803,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -19240,9 +19121,9 @@ } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -19330,15 +19211,14 @@ } }, "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "realpath-native": { @@ -19609,25 +19489,6 @@ "uuid": "^3.1.0" } }, - "request-progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=", - "dev": true, - "optional": true, - "requires": { - "throttleit": "^1.0.0" - }, - "dependencies": { - "throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=", - "dev": true, - "optional": true - } - } - }, "request-promise-core": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", @@ -19728,6 +19589,19 @@ "requires": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" + }, + "dependencies": { + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + } } }, "resolve-from": { @@ -19914,9 +19788,9 @@ } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "pump": { @@ -19941,86 +19815,154 @@ } }, "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", "dev": true, "requires": { "glob": "^7.0.0", "lodash": "^4.0.0", "scss-tokenizer": "^0.2.3", - "yargs": "^7.0.0" + "yargs": "^13.3.2" }, "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "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": { + "color-convert": "^1.9.0" + } + }, "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "lcid": "^1.0.0" + "locate-path": "^3.0.0" } }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "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 }, - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "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" + "p-locate": "^3.0.0", + "path-exists": "^3.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=", + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { - "camelcase": "^3.0.0" + "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==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + } + } }, "sass-loader": { "version": "7.1.0", @@ -20197,12 +20139,6 @@ "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=", - "dev": true - }, "set-value": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", @@ -20535,16 +20471,6 @@ "integrity": "sha1-mHbb0qFp0xFUAtSObqYynIgWpQ0=", "dev": true }, - "split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", - "dev": true, - "optional": true, - "requires": { - "through": "2" - } - }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -20589,13 +20515,6 @@ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", "dev": true }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true, - "optional": true - }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", @@ -21187,18 +21106,122 @@ "execa": "^0.7.0" } }, - "test-exclude": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.1.0.tgz", - "integrity": "sha512-gwf0S2fFsANC55fSeSqpb8BYk6w3FDvwZxfNjeF6FRgvFa43r+7wRiA/Q0IxoRU37wB/LE8IQ4221BsNucTaCA==", + "terser": { + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.13.tgz", + "integrity": "sha512-wMvqukYgVpQlymbnNbabVZbtM6PN63AzqexpwJL8tbh/mRT9LE5o+ruVduAGL7D6Fpjl+Q+06U5I9Ul82odAhw==", "dev": true, "requires": { - "arrify": "^1.0.1", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^1.0.1" + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } + } + }, + "terser-webpack-plugin": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", + "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", + "dev": true, + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^2.1.2", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" }, "dependencies": { + "ajv": { + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", + "dev": true + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, "find-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", @@ -21208,18 +21231,32 @@ "locate-path": "^3.0.0" } }, - "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=", + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.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" } }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "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==", + "dev": true + }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -21230,10 +21267,47 @@ "path-exists": "^3.0.0" } }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "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" + } + }, "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -21249,56 +21323,231 @@ } }, "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "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==", "dev": true, "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "find-up": "^3.0.0" } }, - "read-pkg": { + "pump": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" + "glob": "^7.1.3" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - } - } - }, - "tether": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/tether/-/tether-1.4.4.tgz", - "integrity": "sha512-bagKeRRo3vEynHnO3GB7/jB3Q4YIf0mN7gXM/nR0wZvNHkPrwmZemg1w0C32JZP0prHZUwxGwoX5CdA7tuIDEw==" - }, - "text-table": { + "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==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "serialize-javascript": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", + "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, + "test-exclude": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.1.0.tgz", + "integrity": "sha512-gwf0S2fFsANC55fSeSqpb8BYk6w3FDvwZxfNjeF6FRgvFa43r+7wRiA/Q0IxoRU37wB/LE8IQ4221BsNucTaCA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^1.0.1" + }, + "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==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "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=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^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==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "tether": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/tether/-/tether-1.4.4.tgz", + "integrity": "sha512-bagKeRRo3vEynHnO3GB7/jB3Q4YIf0mN7gXM/nR0wZvNHkPrwmZemg1w0C32JZP0prHZUwxGwoX5CdA7tuIDEw==" + }, + "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", @@ -21521,9 +21770,9 @@ } }, "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", + "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==", "dev": true }, "tty-browserify": { @@ -21578,7 +21827,6 @@ "version": "3.4.6", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.6.tgz", "integrity": "sha512-O1D7L6WcOzS1qW2ehopEm4cWm5yA6bQBozlks8jO8ODxYCy4zv+bR/la4Lwp01tpkYGNonnpXvUpYtrvSu8Yzg==", - "dev": true, "requires": { "commander": "~2.16.0", "source-map": "~0.6.1" @@ -21587,112 +21835,365 @@ "commander": { "version": "2.16.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz", - "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==", - "dev": true + "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==" }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "uglifyjs-webpack-plugin": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz", - "integrity": "sha512-1VicfKhCYHLS8m1DCApqBhoulnASsEoJ/BvpUpP4zoNAPpKzdH+ghk0olGJMmwX2/jprK2j3hAHdUbczBSy2FA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-2.2.0.tgz", + "integrity": "sha512-mHSkufBmBuJ+KHQhv5H0MXijtsoA1lynJt1lXOaotja8/I0pR4L9oGaPIZw+bQBOFittXZg9OC1sXSGO9D9ZYg==", "dev": true, "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.5", - "serialize-javascript": "^1.4.0", + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.7.0", "source-map": "^0.6.1", - "uglify-es": "^3.3.4", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" + "uglify-js": "^3.6.0", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" }, "dependencies": { + "ajv": { + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "fast-deep-equal": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" } - } - } - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" - }, - "unicode-5.2.0": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/unicode-5.2.0/-/unicode-5.2.0-0.7.5.tgz", - "integrity": "sha512-KVGLW1Bri30x00yv4HNM8kBxoqFXr0Sbo55735nvrlsx4PYBZol3UtoWgO492fSwmsetzPEZzy73rbU8OGXJcA==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "unique-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", - "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", - "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=", - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "universalify": { + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "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" + } + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "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==", + "dev": true + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "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" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "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==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "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" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "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==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "serialize-javascript": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", + "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "uglify-js": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.2.tgz", + "integrity": "sha512-zGVwKslUAD/EeqOrD1nQaBmXIHl1Vw371we8cvS8I6mYK9rmgX5tv8AAeJdfsQ3Kk5mGax2SVV/AizxdNGhl7Q==", + "dev": true, + "requires": { + "commander": "~2.20.3" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "unique-filename": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", + "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "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=", + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", @@ -21769,9 +22270,9 @@ "dev": true }, "upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "dev": true }, "update-notifier": { @@ -21950,9 +22451,9 @@ "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" }, "v8-compile-cache": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz", - "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", + "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", "dev": true }, "validate-npm-package-license": { @@ -22022,12 +22523,12 @@ } }, "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", + "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", "dev": true, "requires": { - "chokidar": "^2.0.2", + "chokidar": "^2.1.8", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0" } @@ -22039,91 +22540,66 @@ "dev": true }, "webpack": { - "version": "4.16.5", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.16.5.tgz", - "integrity": "sha512-i5cHYHonzSc1zBuwB5MSzW4v9cScZFbprkHK8ZgzPDCRkQXGGpYzPmJhbus5bOrZ0tXTcQp+xyImRSvKb0b+Kw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.5.13", - "@webassemblyjs/helper-module-context": "1.5.13", - "@webassemblyjs/wasm-edit": "1.5.13", - "@webassemblyjs/wasm-opt": "1.5.13", - "@webassemblyjs/wasm-parser": "1.5.13", - "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", + "version": "4.43.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", + "integrity": "sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.0", + "eslint-scope": "^4.0.3", "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.0.0", - "uglifyjs-webpack-plugin": "^1.2.4", - "watchpack": "^1.5.0", - "webpack-sources": "^1.0.1" + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.6.1", + "webpack-sources": "^1.4.1" }, "dependencies": { + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + }, "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.1" + "uri-js": "^4.2.2" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", "dev": true }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "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.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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", @@ -22133,271 +22609,82 @@ "pako": "~1.0.5" } }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, "eslint-scope": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", - "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.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=", - "dev": true, - "requires": { - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "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=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "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=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.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==", - "dev": true - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "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.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } + "events": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", + "dev": true }, "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=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", "dev": true }, - "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==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "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==", - "dev": true, - "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==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "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=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, "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==", "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==", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { - "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" + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" } }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, "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==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", "dev": true, "requires": { "assert": "^1.1.1", @@ -22407,10 +22694,10 @@ "constants-browserify": "^1.0.0", "crypto-browserify": "^3.11.0", "domain-browser": "^1.1.1", - "events": "^1.0.0", + "events": "^3.0.0", "https-browserify": "^1.0.0", "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", + "path-browserify": "0.0.1", "process": "^0.11.10", "punycode": "^1.2.4", "querystring-es3": "^0.2.0", @@ -22421,8 +22708,8 @@ "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", "url": "^0.11.0", - "util": "^0.10.3", - "vm-browserify": "0.0.4" + "util": "^0.11.0", + "vm-browserify": "^1.0.1" } }, "os-browserify": { @@ -22432,9 +22719,15 @@ "dev": true }, "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==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", "dev": true }, "process": { @@ -22443,40 +22736,88 @@ "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", "dev": true }, + "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==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, "timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", "dev": true, "requires": { "setimmediate": "^1.0.4" } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } } } }, "webpack-cli": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.2.3.tgz", - "integrity": "sha512-Ik3SjV6uJtWIAN5jp5ZuBMWEAaP5E4V78XJ2nI+paFPh8v4HPSwo/myN0r29Xc/6ZKnd2IdrAlpSgNOu2CDQ6Q==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "enhanced-resolve": "^4.1.0", - "findup-sync": "^2.0.0", - "global-modules": "^1.0.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.4" + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.11.tgz", + "integrity": "sha512-dXlfuml7xvAFwYUPsrtQAA9e4DOe58gnzSxhgrO/ZM/gyXTBowrsYeubyN4mqGhYdpXMFNyQ6emjJS9M7OBd4g==", + "dev": true, + "requires": { + "chalk": "2.4.2", + "cross-spawn": "6.0.5", + "enhanced-resolve": "4.1.0", + "findup-sync": "3.0.0", + "global-modules": "2.0.0", + "import-local": "2.0.0", + "interpret": "1.2.0", + "loader-utils": "1.2.3", + "supports-color": "6.1.0", + "v8-compile-cache": "2.0.3", + "yargs": "13.2.4" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "ansi-styles": { @@ -22488,10 +22829,10 @@ "color-convert": "^1.9.0" } }, - "camelcase": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.2.0.tgz", - "integrity": "sha512-IXFsBS2pC+X0j0N/GE7Dm7j3bsEBp+oTpb7F50dwEVX7rf3IgwO9XatnegTsDtniKCUtEJH4fSU6Asw7uoVLfQ==", + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, "chalk": { @@ -22503,6 +22844,28 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "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" + } + } + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, "cross-spawn": { @@ -22518,19 +22881,15 @@ "which": "^1.2.9" } }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "dev": true, "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.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" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, "find-up": { @@ -22542,19 +22901,10 @@ "locate-path": "^3.0.0" } }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "interpret": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", + "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", "dev": true }, "is-fullwidth-code-point": { @@ -22563,13 +22913,24 @@ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { - "invert-kv": "^2.0.0" + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" } }, "locate-path": { @@ -22582,44 +22943,16 @@ "path-exists": "^3.0.0" } }, - "mem": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.2.0.tgz", - "integrity": "sha512-5fJxa68urlY0Ir8ijatKa3eRz5lwXnRCTvo9+TbTGAuTFJOwpGcY0X05moBd0nW45965Njt4CDI2GFQoG8DvqA==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "mimic-fn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.0.0.tgz", - "integrity": "sha512-jbex9Yd/3lmICXwYT6gA/j2mNQGU48wCh/VzRd+/Y/PjYQtlg1gLMdZqvu9s/xH7qKvngxRObl56XZR609IMbA==", - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-is-promise": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz", - "integrity": "sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg==", + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -22635,77 +22968,74 @@ } }, "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "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" - } + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, "requires": { "has-flag": "^3.0.0" } }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", + "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", + "cliui": "^5.0.0", "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^2.0.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "y18n": "^4.0.0", + "yargs-parser": "^13.1.0" } } } @@ -22913,39 +23243,15 @@ } } }, - "winston": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.3.tgz", - "integrity": "sha512-GYKuysPz2pxYAVJD2NPsDLP5Z79SDEzPm9/j4tCjkF/n89iBNGBMJcR+dMUqxgPNgoSs6fVygPi+Vl2oxIpBuw==", - "dev": true, - "optional": true, - "requires": { - "async": "~1.0.0", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "stack-trace": "0.0.x" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true, - "optional": true - } - } - }, "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" }, "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==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", "dev": true, "requires": { "errno": "~0.1.7" @@ -23251,9 +23557,9 @@ } }, "yargs-parser": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", - "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -23268,15 +23574,6 @@ } } }, - "yauzl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", - "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", - "dev": true, - "requires": { - "fd-slicer": "~1.0.1" - } - }, "zip-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.0.1.tgz", diff --git a/package.json b/package.json index fe19e50a65..a659da8050 100644 --- a/package.json +++ b/package.json @@ -155,6 +155,7 @@ "file-saver": "^1.3.8", "foundation-apps": "git+https://github.com/zurb/foundation-apps.git", "fractional": "^1.0.0", + "handlebars": "^4.7.6", "hirestime": "^3.2.1", "ifvisible": "^1.1.0", "immutable": "3.8.2", @@ -256,7 +257,7 @@ "mini-css-extract-plugin": "^0.4.0", "mocha": "^5.1.1", "node-libs-browser": "^1.0.0", - "node-sass": "^4.12.0", + "node-sass": "^4.14.1", "null-loader": "^0.1.1", "postcss-loader": "^3.0.0", "prettier": "^1.10.2", @@ -271,10 +272,10 @@ "svg-loader": "0.0.2", "svgo": "^1.2.0", "svgo-loader": "^2.1.0", - "uglifyjs-webpack-plugin": "^1.2.7", + "uglifyjs-webpack-plugin": "^2.2.0", "url-loader": "^1.0.1", - "webpack": "^4.16.5", - "webpack-cli": "^3.2.3", + "webpack": "^4.43.0", + "webpack-cli": "^3.3.11", "webpack-dev-middleware": "^3.1.3", "webpack-hot-middleware": "^2.22.1", "worker-loader": "^1.1.1"