diff --git a/app/api/apiConfig.js b/app/api/apiConfig.js
index 78763eca36..142b48e317 100644
--- a/app/api/apiConfig.js
+++ b/app/api/apiConfig.js
@@ -83,6 +83,12 @@ export const xbtsxAPIs = {
COINS_LIST: "/coin"
};
+export const beosAPIs = {
+ BASE: "https://gateway.beos.world/api/v2",
+ COINS_LIST: "/coins",
+ TRADING_PAIRS: "/trading-pairs"
+};
+
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/assets/locales/locale-en.json b/app/assets/locales/locale-en.json
index 8d508aa604..c221a2aef6 100644
--- a/app/assets/locales/locale-en.json
+++ b/app/assets/locales/locale-en.json
@@ -1115,6 +1115,25 @@
"status": "Status",
"support_block": "For DEPOSIT AND WITHDRAWAL issues using \"OpenLedger TRANSFER SERVICE\", please contact Openledger at:",
"support_gdex": "For support, please contact GDEX",
+ "bitshares_beos": {
+ "account_label": "Bitshares EOS account",
+ "account_validation_label": "Please wait, validating address...",
+ "amount_to_send_label": "Amount to send to BEOS account",
+ "account_validation_error": "Illegal BEOS account name: account must have less then 13 symbols (a-z lower case only, 1-5 and . not at the end are allowed)",
+ "create_account_checkbox": "Create BitShares EOS account",
+ "beos_conversion": "Convert to %(name)s",
+ "send_button_label": "Send",
+ "transfer_button_label": "Transfer BTS to BitShares EOS account",
+ "modal_title": "Transfer BTS to BitShares EOS account",
+ "maintenance_modal_label": "Gateway to BitShares EOS is down for maintenance",
+ "maintenance_error": "Gateway to BitShares EOS is down for maintenance",
+ "maintenance_button_label": "Ok",
+ "memo_label": "Memo (optional)",
+ "no_account_error": "BEOS account doesn't exist, create it by paying an additional %(btsAmount)s BTS. This new account will be controlled by the same keys as your BitShares account.",
+ "account_creation_pending": "This account is currently in the stage of creation.",
+ "no_account_error_without_creation": "BEOS account doesn't exist, to create it please select BTS as an asset.",
+ "multi_sig_error": "Current BTS account is multi-sig, so it cannot create a BEOS account."
+ },
"symbol": "Symbol",
"time": "Time",
"title": "Deposit & Withdraw",
diff --git a/app/components/Account/AccountDepositWithdraw.jsx b/app/components/Account/AccountDepositWithdraw.jsx
index f0cd186b69..b34ecc1de2 100644
--- a/app/components/Account/AccountDepositWithdraw.jsx
+++ b/app/components/Account/AccountDepositWithdraw.jsx
@@ -16,6 +16,7 @@ import AccountStore from "stores/AccountStore";
import SettingsStore from "stores/SettingsStore";
import SettingsActions from "actions/SettingsActions";
import {openledgerAPIs} from "api/apiConfig";
+import BitsharesBeos from "../DepositWithdraw/BitsharesBeos";
import BitKapital from "../DepositWithdraw/BitKapital";
import RuDexGateway from "../DepositWithdraw/rudex/RuDexGateway";
import GatewayStore from "stores/GatewayStore";
@@ -495,6 +496,17 @@ class AccountDepositWithdraw extends React.Component {
)
});
+ serList.push({
+ name: "BitShares EOS",
+ template: (
+
+ )
+ });
+
serList.push({
name: "BitKapital",
template: (
@@ -582,6 +594,7 @@ class AccountDepositWithdraw extends React.Component {
"RUDEX",
"SPARKDEX",
"TRADE",
+ "BEOS",
"BITKAPITAL",
"XBTSX",
"CITADEL"
diff --git a/app/components/Account/Proposals.jsx b/app/components/Account/Proposals.jsx
index 92ad853556..3d068211d6 100644
--- a/app/components/Account/Proposals.jsx
+++ b/app/components/Account/Proposals.jsx
@@ -46,10 +46,10 @@ class Proposals extends Component {
componentDidMount() {
/*
- * Account objects don't get updated by underlying proposal changes, but
- * the ChainStore does, so in order to update this component when a proposal
- * changes, we need to update it whenever the ChainStore itself updates
- */
+ * Account objects don't get updated by underlying proposal changes, but
+ * the ChainStore does, so in order to update this component when a proposal
+ * changes, we need to update it whenever the ChainStore itself updates
+ */
ChainStore.subscribe(this.forceUpdate);
}
diff --git a/app/components/DepositWithdraw/BitsharesBeos.jsx b/app/components/DepositWithdraw/BitsharesBeos.jsx
new file mode 100644
index 0000000000..6d545d9d79
--- /dev/null
+++ b/app/components/DepositWithdraw/BitsharesBeos.jsx
@@ -0,0 +1,337 @@
+import React from "react";
+import BitsharesBeosModal from "./BitsharesBeosModal";
+import counterpart from "counterpart";
+import ChainTypes from "components/Utility/ChainTypes";
+import Translate from "react-translate-component";
+import BindToChainState from "components/Utility/BindToChainState";
+import QueryString from "query-string";
+import {Modal} from "bitshares-ui-style-guide";
+import {beosAPIs} from "api/apiConfig";
+
+class BitsharesBeosModalContainer extends React.Component {
+ static propTypes = {
+ asset: ChainTypes.ChainAsset.isRequired,
+ assets: ChainTypes.ChainAssetsList
+ };
+
+ constructor(props) {
+ super(props);
+
+ this.state = {
+ isModalVisible: false
+ };
+
+ this.showModal = this.showModal.bind(this);
+ this.hideModal = this.hideModal.bind(this);
+ }
+
+ showModal() {
+ this.setState({
+ isModalVisible: true
+ });
+ }
+
+ hideModal() {
+ this.setState({
+ isModalVisible: false
+ });
+ }
+
+ getTransferBtsId() {
+ return "transfer_bts";
+ }
+
+ onTransferBts() {
+ this.showModal();
+ }
+
+ getParams() {
+ const {params} = this.props;
+ return {
+ beosFee: "500",
+ beosApiUrl: beosAPIs.BASE,
+ beosIssuer: "beos.gateway",
+ ...QueryString.parse(params.search)
+ };
+ }
+
+ getBalances = () => {
+ const {assets, account} = this.props;
+ return assets.filter(a => !!a).map(a => {
+ return account.get("balances").toJS()[a.get("id")];
+ });
+ };
+
+ getBalanceById = id => {
+ return this.getBalances()[id] || null;
+ };
+
+ render() {
+ let transferBtsId = this.getTransferBtsId();
+ const {beosFee, beosIssuer, beosApiUrl} = this.getParams();
+
+ return (
+
+
+ To qualify for the initial BEOS token distribution, a member
+ must join BEOS LCA (BLCA is Utah Limited Cooperative
+ Association, operating on a non-profit basis for the benefit
+ of its members), create an account on the BEOS network (the
+ “BEOS Account”) and fund that BEOS account with any amount
+ of BTS via the BEOS network gateway.
+
+
+ Any member may create one or more BEOS accounts for a
+ one-time fee of {beosFee} BTS each. The BEOS network gateway
+ will read the public keys of the Bitshares account from
+ which the account creation fee is paid and automatically
+ assign the same keys to the Member’s newly created BEOS
+ account, so that the member can use the same private keys to
+ control both accounts. Thereafter the member may change
+ their keys at any time on either account.
+
+
+ When a member deposits BTS via the BEOS network gateway, the
+ member’s BEOS account is credited with an equivalent amount
+ of a BTS IOU token. BLCA will retain 2/7 of the
+ 3,674,470,000 authorized BEOS tokens in order to promote
+ Association purposes. The remainder will be distributed to
+ Members.
+
+
+ BEOS tokens will be distributed to account holders on an
+ hourly basis over a period of 89 days and 64GB of RAM will
+ be distributed over an 80-week. Both periods begin on April
+ 9, 2019.
+
+
+ During the applicable distribution periods, BEOS and RAM
+ tokens will be apportioned between member account holders
+ based upon their proportionate holdings of BTS IOU tokens.
+ For example, if there are only 2 BEOS accounts at the end of
+ an hourly reward period, one holding 90 tokens and the other
+ holding 10 tokens, the 90 holder will receive 90% of the
+ BEOS awarded for that reward period and the 10 holder will
+ receive the remaining 10%.
+
+
+ BEOS tokens are backed by BLCA Quint holdings, such that 1
+ million BEOS tokens equals 1 Quint. For more information,
+ see{" "}
+
+ www.quintric.com
+
+ .
+
+
+ IMPORTANT NOTE : Until a withdrawal is made, the “actual
+ BTS” deposited to the BEOS network gateway will be held in
+ an account called “beos.gateway” on the Bitshares network.
+ This account is managed by the Board, and by making deposits
+ to this account, a Member explicitly grants the Board the
+ right to vote the BTS so deposited in ways that support the
+ health and growth of the BEOS network.
+
+
+ Members have the option of withdrawing their BTS IOU tokens
+ via the BEOS network gateway at any time (*) back to their
+ own control.
+
+
+ * The BLCA directors will do their best to keep the gateway
+ operational at all times, but a malfunction either on the
+ gateway or the new BEOS chain itself could result in BTS
+ funds being locked up temporarily until the problem is
+ resolved. If you lose the keys to your BEOS account, the
+ directors cannot refund BTS locked up as BTS IOU tokens in
+ your BEOS account, because the directors cannot reclaim the
+ IOU tokens and have no way to determine if the account is
+ permanently lost.
+
+
+ Please read the full BLCA member agreement located at{" "}
+
+ http://www.beos.world/membership_agreement.html
+ {" "}
+ before proceeding.
+
+
+ By clicking on the button below and purchasing a BEOS
+ account, you are agreeing to the terms of the BEOS LCA
+ membership agreement.
+
+
+
+
+
+ After you create your account, you can access it via the
+ BEOS wallets here:{" "}
+
+ https://get.beos.world/wallets/
+
+ .
+
+
+ !!a)
+ .map(a => a.get("symbol"))}
+ assetMemoCoinTypes={this.props.assetMemoCoinTypes}
+ balance={this.getBalanceById(
+ this.props.asset.get("id")
+ )}
+ balances={this.getBalances()}
+ creator={"eosio"}
+ issuer={beosIssuer}
+ beosApiUrl={beosApiUrl}
+ beosFee={beosFee}
+ beosCoins={this.props.beosCoins}
+ owner_key={
+ "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV"
+ }
+ ram={"0.0006 SYS"}
+ account_contract={"beos.token"}
+ action={"lock"}
+ from={"beos.token"}
+ />
+
+
+ );
+ }
+}
+
+BitsharesBeosModalContainer = BindToChainState(BitsharesBeosModalContainer);
+
+class BitsharesBeos extends React.Component {
+ static propTypes = {
+ asset: ChainTypes.ChainAsset.isRequired,
+ assets: ChainTypes.ChainAssetsList
+ };
+
+ constructor(props) {
+ super(props);
+
+ this.state = {
+ assetMemoCoinTypes: {},
+ beosAssets: [],
+ beosCoins: []
+ };
+ }
+
+ componentWillMount() {
+ let assetMemoCoinTypes = {};
+ let beosAssets = [];
+ let beosCoins = [];
+
+ let coinTypesPromisecheck = fetch(beosAPIs.BASE + beosAPIs.COINS_LIST, {
+ method: "get",
+ headers: new Headers({Accept: "application/json"})
+ }).then(response => response.json());
+ let tradingPairsPromisecheck = fetch(
+ beosAPIs.BASE + beosAPIs.TRADING_PAIRS,
+ {
+ method: "get",
+ headers: new Headers({Accept: "application/json"})
+ }
+ ).then(response => response.json());
+ Promise.all([coinTypesPromisecheck, tradingPairsPromisecheck]).then(
+ json_responses => {
+ let [coinTypes, tradingPairs] = json_responses;
+
+ coinTypes.forEach(element => {
+ if (element.walletType === "beos") {
+ let memoCoinType = null;
+ memoCoinType = element.coinType;
+ assetMemoCoinTypes[element.walletSymbol] = memoCoinType;
+ } else if (element.walletType === "bitshares2") {
+ let coinType = null;
+ let memoCoinType = null;
+
+ coinType = element.coinType;
+
+ tradingPairs.find(element => {
+ if (element.inputCoinType === coinType) {
+ memoCoinType = element.outputCoinType;
+ }
+ });
+
+ if (element.walletSymbol !== "BEOS") {
+ assetMemoCoinTypes[
+ element.walletSymbol
+ ] = memoCoinType;
+ }
+
+ beosAssets.push(element.walletSymbol);
+
+ if (element.walletSymbol === "BEOS") {
+ tradingPairs.forEach(tradingPair => {
+ if (
+ tradingPair.inputCoinType ===
+ element.coinType
+ ) {
+ coinTypes.find(coinTypeObject => {
+ if (
+ coinTypeObject.coinType ===
+ tradingPair.outputCoinType
+ ) {
+ beosCoins.push(coinTypeObject);
+ }
+ });
+ }
+ });
+ }
+ }
+ });
+ this.setState({
+ assetMemoCoinTypes,
+ beosAssets,
+ beosCoins
+ });
+ }
+ );
+ }
+
+ render() {
+ let beosAssets = this.state.beosAssets;
+ let assetMemoCoinTypes = this.state.assetMemoCoinTypes;
+ let beosCoins = this.state.beosCoins;
+
+ return (
+
+
+
+ );
+ }
+}
+
+export default BindToChainState(BitsharesBeos);
diff --git a/app/components/DepositWithdraw/BitsharesBeosModal.jsx b/app/components/DepositWithdraw/BitsharesBeosModal.jsx
new file mode 100644
index 0000000000..ddc726a84e
--- /dev/null
+++ b/app/components/DepositWithdraw/BitsharesBeosModal.jsx
@@ -0,0 +1,1096 @@
+import React from "react";
+import AmountSelector from "components/Utility/AmountSelector";
+import Translate from "react-translate-component";
+import counterpart from "counterpart";
+import ChainTypes from "components/Utility/ChainTypes";
+import BalanceComponent from "components/Utility/BalanceComponent";
+import BindToChainState from "components/Utility/BindToChainState";
+import PropTypes from "prop-types";
+import {checkFeeStatusAsync, checkBalance} from "common/trxHelper";
+import {Asset} from "common/MarketClasses";
+import AccountActions from "actions/AccountActions";
+import utils from "common/utils";
+import {Button, Modal} from "bitshares-ui-style-guide";
+import ls from "common/localStorage";
+import {ChainStore} from "bitsharesjs";
+import WalletDb from "stores/WalletDb";
+import axios from "axios";
+
+const STORAGE_KEY = "__beos__";
+let lsBeos = new ls(STORAGE_KEY);
+
+class BitsharesBeosModal extends React.Component {
+ static propTypes = {
+ account: ChainTypes.ChainAccount.isRequired,
+ asset: ChainTypes.ChainAsset.isRequired,
+ assets: ChainTypes.ChainAssetsList,
+ creator: PropTypes.string.isRequired,
+ issuer: ChainTypes.ChainAccount.isRequired,
+ owner_key: PropTypes.string.isRequired,
+ ram: PropTypes.string.isRequired,
+ account_contract: PropTypes.string.isRequired,
+ action: PropTypes.string.isRequired,
+ from: PropTypes.string.isRequired,
+ balance: ChainTypes.ChainObject,
+ balances: ChainTypes.ChainObjectsList,
+ beosApiUrl: PropTypes.string.isRequired,
+ beosFee: PropTypes.string.isRequired
+ };
+
+ constructor(props) {
+ super(props);
+
+ this.state = {
+ account: "",
+ btsAmount: "500",
+ is_account_validation: false,
+ is_account_creation_checkbox: false,
+ isConfirmationModalVisible: false,
+ account_validation_error: false,
+ amount_to_send: "",
+ creator: this.props.creator,
+ owner_key: this.props.owner_key,
+ ram: this.props.ram,
+ is_account_creation: false,
+ account_contract: this.props.account_contract,
+ from_account: props.account,
+ action: this.props.action,
+ fee_amount_creation: 0,
+ fee_asset_id: "1.3.0",
+ from: this.props.from,
+ empty_amount_to_send_error: false,
+ balance_error: false,
+ maintenance_error: false,
+ memo: "",
+ no_account_error: false,
+ selectedAssetId: "1.3.0",
+ no_account_error_without_creation: false,
+ multiSigError: false,
+ currentBeosCheckbox: ""
+ };
+
+ this.showConfirmationModal = this.showConfirmationModal.bind(this);
+ this.hideConfirmationModal = this.hideConfirmationModal.bind(this);
+ }
+
+ componentWillMount() {
+ if (this.props.beosCoins && this.props.beosCoins.length) {
+ this.setState({
+ currentBeosCheckbox:
+ this.props.beosCoins[0]["walletSymbol"] || "BEOS"
+ });
+ }
+ this._updateFee();
+ this._updateMultiSigError();
+ }
+
+ componentWillUnmount() {
+ this.unMounted = true;
+ }
+
+ componentWillReceiveProps(np) {
+ if (
+ np.account !== this.state.from_account &&
+ np.account !== this.props.account
+ ) {
+ this._updateMultiSigError();
+ this.setState(
+ {
+ from_account: np.account,
+ fee_asset_id: this.getAssetById(
+ this.state.selectedAssetId
+ ).get("id"),
+ fee_amount: new Asset({amount: 0})
+ },
+ () => {
+ this._updateFee();
+ }
+ );
+ }
+ }
+
+ _updateMultiSigError() {
+ let accountData = ChainStore.getAccount(this.props.account).toJS();
+ if (accountData && accountData.active && accountData.owner) {
+ if (
+ accountData.active.account_auths.length === 0 &&
+ accountData.active.address_auths.length === 0 &&
+ accountData.active.key_auths.length === 1 &&
+ accountData.owner.account_auths.length === 0 &&
+ accountData.owner.address_auths.length === 0 &&
+ accountData.owner.key_auths.length === 1
+ ) {
+ this.setState({
+ multiSigError: false
+ });
+ } else {
+ this.setState({
+ multiSigError: true
+ });
+ }
+ }
+ }
+
+ showConfirmationModal() {
+ this.setState({
+ isConfirmationModalVisible: true
+ });
+ }
+
+ hideConfirmationModal() {
+ this.setState({
+ isConfirmationModalVisible: false
+ });
+ }
+
+ _updateFee(state = this.state) {
+ let {from_account} = state;
+
+ const asset = this.getAssetById(this.state.selectedAssetId);
+ let pxasset = this.getProxyAsset(asset.get("symbol"));
+ if (asset.get("symbol") === "BEOS") {
+ pxasset = this.getProxyAsset(this.state.currentBeosCheckbox);
+ }
+ let memo;
+
+ if (asset.get("symbol") === "BTS" && this.state.is_account_creation) {
+ memo = this.createMemoForAsset(pxasset, true);
+ } else {
+ memo = this.createMemoForAsset(pxasset);
+ }
+
+ if (!from_account) return null;
+ if (asset.get("id") !== "1.3.0") return null;
+ checkFeeStatusAsync({
+ accountID: from_account.get("id"),
+ feeID: asset.get("id"),
+ options: ["price_per_kbyte"],
+ data: {
+ type: "memo",
+ content: memo
+ }
+ }).then(({fee}) => {
+ if (this.unMounted) return;
+
+ this.setState(
+ {
+ fee_amount: fee
+ },
+ this._checkBalance
+ );
+ });
+ }
+
+ getBalanceForAsset(assetId) {
+ return this.props.balances.filter(
+ b => b.get("asset_type") === assetId
+ )[0];
+ }
+
+ getAssetById(assetId) {
+ return this.props.assets.filter(a => a.get("id") === assetId)[0];
+ }
+
+ _checkBalance() {
+ const {selectedAssetId} = this.state;
+ const {amount_to_send, fee_amount, fee_amount_creation} = this.state;
+ const asset = this.getAssetById(selectedAssetId);
+ const balance = this.getBalanceForAsset(selectedAssetId);
+ let fee_amount_amount = 0;
+ if (fee_amount) {
+ fee_amount_amount = fee_amount.amount;
+ }
+ let feeAmount = new Asset({
+ amount: fee_amount_creation + fee_amount_amount,
+ asset_id: asset.get("id"),
+ precision: asset.get("precision")
+ });
+ if (!balance || !feeAmount) return;
+ let hasBalance = null;
+ if (asset.get("id") === "1.3.0") {
+ hasBalance = checkBalance(
+ amount_to_send,
+ asset,
+ feeAmount,
+ balance
+ );
+ } else {
+ if (
+ parseInt(
+ this.state.amount_to_send *
+ utils.get_asset_precision(asset.get("precision")),
+ 10
+ ) <= balance.get("balance")
+ ) {
+ hasBalance = true;
+ } else {
+ hasBalance = false;
+ }
+ }
+ if (hasBalance === null) return;
+ this.setState({balance_error: !hasBalance});
+ return hasBalance;
+ }
+
+ onAccountValidation(url, account) {
+ const asset = this.getAssetById(this.state.selectedAssetId);
+ if (typeof this._source != typeof undefined) {
+ this._source.cancel();
+ }
+ this._source = axios.CancelToken.source();
+ this.setState({
+ is_account_creation_checkbox: false
+ });
+ if (account === "") {
+ this.setState({
+ is_account_validation: false
+ });
+ } else {
+ this.setState({
+ is_account_validation: true
+ });
+ }
+ let validation_url =
+ url + "/wallets/beos/address-validator?address=" + account;
+ return axios(validation_url, {
+ method: "get",
+ headers: new Headers({Accept: "application/json"}),
+ cancelToken: this._source.token
+ })
+ .then(result => {
+ if (result && result.data) {
+ result = result.data;
+ } else {
+ return;
+ }
+ if (result && result.error) {
+ this.setState({
+ is_account_validation: false,
+ maintenance_error: true,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ no_account_error: false
+ });
+ return;
+ }
+ if (
+ result.isValid &&
+ this.getPendingAccounts().includes(account)
+ ) {
+ this.removePendingAccount(account);
+ this.setState({
+ account_creation_transfer_success_info: false
+ });
+ }
+
+ let re = /^[a-z1-5.]+$/;
+ setTimeout(() => {
+ this.setState({
+ account_validation_error: false,
+ is_account_validation: false,
+ maintenance_error: false,
+ no_account_error: false
+ });
+ if (
+ account.length < 13 &&
+ re.test(account) &&
+ account.substr(account.length - 1) !== "."
+ ) {
+ if (account.length === 12) {
+ this.setState({
+ btsAmount: this.props.beosFee
+ });
+ } else if (account.length < 12) {
+ this.setState({
+ btsAmount: this.props.beosFee
+ });
+ }
+ if (
+ !result.isValid &&
+ !this.state.is_account_creation
+ ) {
+ if (asset.get("symbol") === "BTS") {
+ this.setState({
+ no_account_error: true
+ });
+ } else {
+ this.setState({
+ no_account_error_without_creation: true,
+ is_account_creation_checkbox: false,
+ is_account_creation: false
+ });
+ }
+ } else {
+ this.setState(
+ {
+ fee_amount_creation: 0,
+ is_account_creation: false,
+ no_account_error: false,
+ no_account_error_without_creation: false
+ },
+ this._checkBalance
+ );
+ }
+ this.setState({
+ is_account_creation_checkbox:
+ !result.isValid &&
+ asset.get("symbol") === "BTS",
+ is_account_validation: false
+ });
+ } else {
+ this.setState({
+ is_account_creation_checkbox: false,
+ is_account_validation: false,
+ account_validation_error: true,
+ no_account_error: false
+ });
+ }
+
+ if (
+ !result.isValid &&
+ this.getPendingAccounts().includes(account)
+ ) {
+ this.setState({
+ no_account_error: false,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ account_creation_transfer_success_info: true
+ });
+ }
+ }, 200);
+ })
+ .catch(error => {
+ if (axios.isCancel(error)) {
+ this.setState({
+ is_account_validation: true,
+ maintenance_error: false,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ no_account_error: false
+ });
+ } else {
+ if (account === "") {
+ this.setState({
+ maintenance_error: false
+ });
+ } else {
+ this.setState({
+ maintenance_error: true
+ });
+ }
+ this.setState({
+ is_account_validation: false,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ no_account_error: false
+ });
+ }
+ });
+ }
+
+ onMaintenance() {
+ this.showConfirmationModal();
+ }
+
+ onAccountBalance() {
+ const {selectedAssetId, fee_amount, fee_amount_creation} = this.state;
+ const asset = this.getAssetById(selectedAssetId);
+ const balance = this.getBalanceForAsset(selectedAssetId);
+ if (balance) {
+ let total = new Asset({
+ amount: balance.get("balance"),
+ asset_id: asset.get("id"),
+ precision: asset.get("precision")
+ });
+
+ let fee_amount_amount = 0;
+
+ if (fee_amount && Number.isInteger(fee_amount.amount)) {
+ fee_amount_amount = fee_amount.amount;
+ }
+
+ let totalFeeAmount = new Asset({
+ amount: fee_amount_creation + fee_amount_amount,
+ asset_id: asset.get("id"),
+ precision: asset.get("precision")
+ });
+
+ if (asset.get("id") === "1.3.0") {
+ total.minus(totalFeeAmount);
+ if (total.getAmount({real: true})) {
+ const i = total
+ .getAmount({real: true})
+ .toString()
+ .indexOf(".");
+ if (i > -1) {
+ const newAmount = total
+ .getAmount({real: true})
+ .toString()
+ .substr(0, i + 5);
+ if (!newAmount.endsWith(".")) {
+ this.setState(
+ {
+ amount_to_send: newAmount,
+ empty_amount_to_send_error: false
+ },
+ this._checkBalance
+ );
+ return;
+ }
+ }
+ }
+ this.setState(
+ {
+ amount_to_send: total.getAmount({real: true}),
+ empty_amount_to_send_error: false
+ },
+ this._checkBalance
+ );
+ } else {
+ this.setState({
+ amount_to_send: total.getAmount({real: true}),
+ balance_error: false,
+ empty_amount_to_send_error: false
+ });
+ }
+ }
+ }
+
+ onAccountChanged(e) {
+ if (e.target.value !== "") {
+ if (this.state.maintenance_error === false) {
+ this.setState({
+ is_account_validation: false,
+ maintenance_error: false,
+ no_account_error: false
+ });
+ }
+ this.onAccountValidation(this.props.beosApiUrl, e.target.value); // need to be set
+ }
+ this.setState({account_validation_error: false});
+ this.setState({account: e.target.value}, this._updateFee);
+ }
+
+ onAmountToSendChange({amount, asset}) {
+ if (asset.get("id") !== this.state.selectedAssetId) {
+ this.setState(
+ {
+ is_account_creation_checkbox: false,
+ is_account_creation: false,
+ no_account_error: false,
+ no_account_error_without_creation: false,
+ account_validation_error: false,
+ selectedAssetId: asset.get("id")
+ },
+ () => {
+ this.onAccountValidation(
+ this.props.beosApiUrl,
+ this.state.account
+ );
+ }
+ );
+ }
+
+ if (asset.get("symbol") !== "BTS") {
+ this.setState({
+ is_account_creation: false,
+ is_account_creation_checkbox: false,
+ no_account_error: false
+ });
+ }
+
+ if (amount) {
+ const i = amount.toString().indexOf(".");
+ if (i > -1) {
+ const newAmount = amount.toString().substr(0, i + 5);
+ if (!newAmount.endsWith(".")) {
+ this.setState(
+ {
+ amount_to_send: newAmount,
+ empty_amount_to_send_error:
+ amount !== undefined && !parseFloat(newAmount)
+ },
+ this._checkBalance
+ );
+ return;
+ }
+ }
+ }
+
+ this.setState(
+ {
+ amount_to_send: amount,
+ empty_amount_to_send_error:
+ amount !== undefined && !parseFloat(amount)
+ },
+ this._checkBalance
+ );
+ }
+
+ onCreateAccountCheckbox() {
+ if (this.state.is_account_creation) {
+ let re = /^[a-z1-5.]+$/;
+ if (
+ this.state.account.length < 13 &&
+ re.test(this.state.account) &&
+ !this.state.no_account_error &&
+ !this.state.maintenance_error &&
+ this.state.account.substr(this.state.account.length - 1) !== "."
+ ) {
+ this.setState({no_account_error: true});
+ }
+ } else {
+ let re = /^[a-z1-5.]+$/;
+ if (
+ this.state.account.length < 13 &&
+ re.test(this.state.account) &&
+ this.state.no_account_error &&
+ this.state.account.substr(this.state.account.length - 1) !== "."
+ ) {
+ this.setState({no_account_error: false});
+ }
+ }
+ if (this.state.is_account_creation) {
+ this.setState(
+ {
+ fee_amount_creation: 0,
+ is_account_creation: !this.state.is_account_creation
+ },
+ this._checkBalance
+ );
+ } else {
+ const fee = parseFloat(this.props.beosFee) * 100000;
+ if (this.state.account.length === 12) {
+ this.setState(
+ {
+ fee_amount_creation: fee,
+ is_account_creation: !this.state.is_account_creation
+ },
+ this._checkBalance
+ );
+ } else if (this.state.account.length < 12) {
+ this.setState(
+ {
+ fee_amount_creation: fee,
+ is_account_creation: !this.state.is_account_creation
+ },
+ this._checkBalance
+ );
+ }
+ }
+ }
+
+ onBeosCheckboxes(walletSymbol) {
+ this.setState({currentBeosCheckbox: walletSymbol});
+ }
+
+ onMemoChanged(e) {
+ this.setState(
+ {memo: e.target.value.replace(/:/g, "")},
+ this._updateFee
+ );
+ }
+
+ getPendingAccounts = () => {
+ const accounts = lsBeos.get("pendingAccounts");
+ return accounts.length ? lsBeos.get("pendingAccounts") : [];
+ };
+
+ setPendingAccount = account => {
+ const newAccounts = [...this.getPendingAccounts(), account];
+ lsBeos.set("pendingAccounts", newAccounts);
+ };
+
+ removePendingAccount = account => {
+ const newAccounts = this.getPendingAccounts().filter(
+ a => a !== account
+ );
+ lsBeos.set("pendingAccounts", newAccounts);
+ };
+
+ validationInterval = accountName => {
+ const validation_url = `${
+ this.props.beosApiUrl
+ }/wallets/beos/address-validator?address=${accountName}`;
+ const interval = setInterval(async () => {
+ try {
+ const response = await fetch(validation_url, {
+ method: "get",
+ headers: new Headers({Accept: "application/json"})
+ });
+ const {isValid} = await response.json();
+
+ if (isValid) {
+ this.removePendingAccount(account);
+ clearInterval(interval);
+ }
+ } catch (e) {
+ throw e;
+ }
+ }, 5000);
+
+ setTimeout(() => {
+ this.removePendingAccount(accountName);
+ this.setState({account_creation_transfer_success_info: false});
+ clearInterval(interval);
+ }, 35000);
+ };
+
+ createMemoForAsset(pxasset, isAccountCreation = false) {
+ if (!pxasset) {
+ throw new Error("No asset found for memo");
+ }
+
+ const memo = [];
+ const {memo: userMemo} = this.state;
+
+ memo.push(
+ pxasset,
+ this.state.account,
+ userMemo.trim() ? userMemo : "",
+ isAccountCreation ? "create" : ""
+ );
+
+ return memo.join(":");
+ }
+
+ getProxyAsset(assetSymbol) {
+ return this.props.assetMemoCoinTypes[assetSymbol];
+ }
+
+ getAvailableAssets = () => {
+ return this.props.assets
+ .filter(a => !!this.getBalanceForAsset(a.get("id")))
+ .map(a => a.get("id"));
+ };
+
+ async onSubmit() {
+ let validation_url =
+ "https://gateway.beos.world/api/v2/wallets/beos/address-validator?address=blocktrades";
+ let validation_promise = fetch(validation_url, {
+ method: "get",
+ headers: new Headers({Accept: "application/json"})
+ }).then(response => response.json());
+ await validation_promise
+ .then(result => {
+ if (result && result.error) {
+ this.setState({
+ is_account_validation: false,
+ maintenance_error: true,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ no_account_error: false
+ });
+ return;
+ }
+
+ const asset = this.getAssetById(this.state.selectedAssetId);
+
+ let newAmountToSend = parseInt(
+ this.state.amount_to_send *
+ utils.get_asset_precision(asset.get("precision")),
+ 10
+ );
+
+ let pxasset = this.getProxyAsset(asset.get("symbol"));
+ if (asset.get("symbol") === "BEOS") {
+ pxasset = this.getProxyAsset(
+ this.state.currentBeosCheckbox
+ );
+ }
+ let memo;
+
+ if (
+ asset.get("symbol") === "BTS" &&
+ this.state.is_account_creation
+ ) {
+ memo = this.createMemoForAsset(pxasset, true);
+ newAmountToSend =
+ newAmountToSend + this.state.fee_amount_creation;
+ } else {
+ memo = this.createMemoForAsset(pxasset);
+ }
+
+ try {
+ AccountActions.transfer(
+ this.props.account.get("id"),
+ this.props.issuer.get("id"),
+ newAmountToSend,
+ asset.get("id"),
+ memo,
+ null,
+ "1.3.0"
+ );
+
+ if (this.state.is_account_creation) {
+ if (!WalletDb.isLocked()) {
+ this.setPendingAccount(this.state.account);
+ this.setState({
+ is_account_creation_checkbox: false,
+ account_creation_transfer_success_info: true,
+ is_account_creation: false
+ });
+ this.validationInterval(this.state.account);
+ }
+ }
+ } catch (e) {
+ this.onMaintenance();
+ throw e;
+ }
+ })
+ .catch(() => {
+ this.setState({
+ is_account_validation: false,
+ maintenance_error: true,
+ is_account_creation_checkbox: false,
+ account_validation_error: false,
+ no_account_error: false
+ });
+ });
+ }
+
+ render() {
+ let account_creation_checkbox = null;
+ let beos_checkboxes = null;
+ let balance = null;
+ let account_balances = this.props.account.get("balances").toJS();
+ let asset_types = Object.keys(account_balances);
+ let maintenanceDialog = null;
+
+ if (asset_types.length > 0) {
+ let current_asset_id = this.state.selectedAssetId;
+ if (current_asset_id && this.getBalanceForAsset(current_asset_id)) {
+ let current = this.getBalanceForAsset(current_asset_id).get(
+ "id"
+ );
+ balance = (
+
+
+ :
+
+ {current ? (
+
+ ) : (
+ 0
+ )}
+
+
+ );
+ } else balance = "No funds";
+ } else {
+ balance = "No funds";
+ }
+
+ if (
+ this.getAssetById(this.state.selectedAssetId).get("symbol") ===
+ "BTS" &&
+ this.state.is_account_creation_checkbox &&
+ this.state.account !== "" &&
+ !this.state.maintenance_error &&
+ !this.state.multiSigError
+ ) {
+ account_creation_checkbox = (
+
+ );
+ } else if (
+ this.getAssetById(this.state.selectedAssetId).get("symbol") ===
+ "BEOS"
+ ) {
+ beos_checkboxes = (
+
+ );
+ }
+
+ maintenanceDialog = (
+
+
+
+
+
+
+ {counterpart.translate(
+ "gateway.bitshares_beos.maintenance_button_label"
+ )}
+
+
+ );
+
+ const disableSubmit =
+ !this.state.amount_to_send ||
+ this.state.balance_error ||
+ this.state.account === "" ||
+ this.state.account_validation_error ||
+ this.state.no_account_error ||
+ this.state.is_account_validation ||
+ this.state.no_account_error_without_creation ||
+ this.getPendingAccounts().includes(this.state.account) ||
+ (this.state.multiSigError &&
+ (this.state.no_account_error ||
+ this.state.no_account_error_without_creation)) ||
+ this.state.maintenance_error;
+
+ return (
+
+ );
+ }
+
+ renderInfo = () => {
+ if (this.getPendingAccounts().includes(this.state.account)) {
+ return (
+
+
+
+ );
+ }
+
+ return null;
+ };
+}
+
+export default BindToChainState(BitsharesBeosModal);
diff --git a/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx b/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx
index 7624b0a872..1b1edd7c24 100644
--- a/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx
+++ b/app/components/DepositWithdraw/blocktrades/BlockTradesBridgeDepositRequest.jsx
@@ -49,8 +49,8 @@ class ButtonConversion extends React.Component {
let feeID = balances.has("1.3.0")
? "1.3.0"
: balance
- ? balance.get("asset_type")
- : "1.3.0";
+ ? balance.get("asset_type")
+ : "1.3.0";
return feeID;
}
diff --git a/app/components/Login/DecryptBackup.jsx b/app/components/Login/DecryptBackup.jsx
index ee5ac0f2d8..256f9bab9e 100644
--- a/app/components/Login/DecryptBackup.jsx
+++ b/app/components/Login/DecryptBackup.jsx
@@ -151,8 +151,8 @@ class DecryptBackup extends Component {
this.state.passwordError
? "input-warning"
: this.state.backupPassword
- ? "input-success"
- : ""
+ ? "input-success"
+ : ""
} input create-account-input`}
type={
!this.state.passwordVisible
diff --git a/app/components/Utility/AssetInput.jsx b/app/components/Utility/AssetInput.jsx
index d9a495fbf4..a09e6e30de 100644
--- a/app/components/Utility/AssetInput.jsx
+++ b/app/components/Utility/AssetInput.jsx
@@ -90,12 +90,12 @@ class ControlledAssetInput extends PureComponent {
return typeof validateStatus === "string"
? validateStatus
: resolved
- ? Map.isMap(asset)
- ? "success"
- : value
- ? "error"
- : undefined
- : "validating";
+ ? Map.isMap(asset)
+ ? "success"
+ : value
+ ? "error"
+ : undefined
+ : "validating";
};
handleAction = () => {
diff --git a/app/lib/common/scamAccounts.js b/app/lib/common/scamAccounts.js
index f1e956e588..ccc9c49682 100644
--- a/app/lib/common/scamAccounts.js
+++ b/app/lib/common/scamAccounts.js
@@ -109,6 +109,10 @@ export const scamAccountsOther = [
"1.2.599849",
"bepal",
"1.2.605394",
+ "beos-cold",
+ "1.2.1599237",
+ "beos-gateway",
+ "1.2.1597557",
"bft-dpos",
"1.2.1026134",
"bgogo",
diff --git a/package-lock.json b/package-lock.json
index 5123c3bca3..06cbdce200 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -231,6 +231,12 @@
"minimist": "^1.2.0"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
@@ -302,22 +308,23 @@
}
},
"@babel/helper-module-imports": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz",
- "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==",
+ "version": "7.0.0-beta.56",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.56.tgz",
+ "integrity": "sha512-iVWFscU+yIu6DIo5IWkMgVXd74/d3z/ZomwF/QJNGFwFP/lNA282rpjsky56fSxS7oT7wAlXoYoHVCOOaL7tbg==",
"dev": true,
"requires": {
- "@babel/types": "^7.0.0"
+ "@babel/types": "7.0.0-beta.56",
+ "lodash": "^4.17.10"
},
"dependencies": {
"@babel/types": {
- "version": "7.3.4",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.4.tgz",
- "integrity": "sha512-WEkp8MsLftM7O/ty580wAmZzN1nDmCACc5+jFzUt+GUFNNIi3LdRlueYz0YIlmJhlZx1QYDMZL5vdWCL0fNjFQ==",
+ "version": "7.0.0-beta.56",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.56.tgz",
+ "integrity": "sha512-fRIBeHtKxAD3D1E7hYSpG4MnLt0AfzHHs5gfVclOB0NlfLu3qiWU/IqdbK2ixTK61424iEkV1P/VAzndx6ungA==",
"dev": true,
"requires": {
"esutils": "^2.0.2",
- "lodash": "^4.17.11",
+ "lodash": "^4.17.10",
"to-fast-properties": "^2.0.0"
}
},
@@ -503,6 +510,12 @@
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"ms": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
@@ -1087,6 +1100,12 @@
"to-fast-properties": "^2.0.0"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
@@ -1115,6 +1134,12 @@
"to-fast-properties": "^2.0.0"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
@@ -1144,6 +1169,12 @@
"to-fast-properties": "^2.0.0"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
@@ -1657,7 +1688,7 @@
},
"acorn-jsx": {
"version": "3.0.1",
- "resolved": "http://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
"integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
"dev": true,
"requires": {
@@ -1666,7 +1697,7 @@
"dependencies": {
"acorn": {
"version": "3.3.0",
- "resolved": "http://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
"integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
"dev": true
}
@@ -1881,6 +1912,11 @@
"component-classes": "^1.2.5"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg=="
+ },
"moment": {
"version": "2.24.0",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz",
@@ -2330,6 +2366,66 @@
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
"integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
},
+ "archiver": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.0.0.tgz",
+ "integrity": "sha512-5QeR6Xc5hSA9X1rbQfcuQ6VZuUXOaEdB65Dhmk9duuRJHYif/ZyJfuyJqsQrj34PFjU5emv5/MmfgA8un06onw==",
+ "dev": true,
+ "requires": {
+ "archiver-utils": "^2.0.0",
+ "async": "^2.0.0",
+ "buffer-crc32": "^0.2.1",
+ "glob": "^7.0.0",
+ "readable-stream": "^2.0.0",
+ "tar-stream": "^1.5.0",
+ "zip-stream": "^2.0.1"
+ },
+ "dependencies": {
+ "async": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz",
+ "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.11"
+ }
+ },
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ }
+ }
+ },
+ "archiver-utils": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.0.0.tgz",
+ "integrity": "sha512-JRBgcVvDX4Mwu2RBF8bBaHcQCSxab7afsxAPYDQ5W+19quIPP5CfKE7Ql+UHs9wYvwsaNR8oDuhtf5iqrKmzww==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.0.0",
+ "graceful-fs": "^4.1.0",
+ "lazystream": "^1.0.0",
+ "lodash.assign": "^4.2.0",
+ "lodash.defaults": "^4.2.0",
+ "lodash.difference": "^4.5.0",
+ "lodash.flatten": "^4.4.0",
+ "lodash.isplainobject": "^4.0.6",
+ "lodash.toarray": "^4.4.0",
+ "lodash.union": "^4.6.0",
+ "normalize-path": "^3.0.0",
+ "readable-stream": "^2.0.0"
+ },
+ "dependencies": {
+ "normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true
+ }
+ }
+ },
"are-we-there-yet": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
@@ -2493,7 +2589,7 @@
},
"async": {
"version": "1.0.0",
- "resolved": "http://registry.npmjs.org/async/-/async-1.0.0.tgz",
+ "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz",
"integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=",
"dev": true,
"optional": true
@@ -2589,6 +2685,15 @@
"resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz",
"integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ=="
},
+ "axios": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.0.tgz",
+ "integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=",
+ "requires": {
+ "follow-redirects": "^1.3.0",
+ "is-buffer": "^1.1.5"
+ }
+ },
"babel-code-frame": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
@@ -2845,13 +2950,16 @@
}
},
"babel-jest": {
- "version": "24.1.0",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.1.0.tgz",
- "integrity": "sha512-MLcagnVrO9ybQGLEfZUqnOzv36iQzU7Bj4elm39vCukumLVSfoX+tRy3/jW7lUKc7XdpRmB/jech6L/UCsSZjw==",
+ "version": "24.5.0",
+ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.5.0.tgz",
+ "integrity": "sha512-0fKCXyRwxFTJL0UXDJiT2xYxO9Lu2vBd9n+cC+eDjESzcVG3s2DRGAxbzJX21fceB1WYoBjAh8pQ83dKcl003g==",
"dev": true,
"requires": {
+ "@jest/transform": "^24.5.0",
+ "@jest/types": "^24.5.0",
+ "@types/babel__core": "^7.1.0",
"babel-plugin-istanbul": "^5.1.0",
- "babel-preset-jest": "^24.1.0",
+ "babel-preset-jest": "^24.3.0",
"chalk": "^2.4.2",
"slash": "^2.0.0"
},
@@ -2979,9 +3087,9 @@
}
},
"babel-plugin-jest-hoist": {
- "version": "24.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.2.0.tgz",
- "integrity": "sha512-U63Kx0ZbB6TFjcmRRZvkQfkBlh8beJ1q8CsO+cl4uAlr7bLZM0isvQP369fUEZeJJr/1yqRplzHj14TAmQ1r0Q==",
+ "version": "24.3.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.3.0.tgz",
+ "integrity": "sha512-nWh4N1mVH55Tzhx2isvUN5ebM5CDUvIpXPZYMRazQughie/EqGnbR+czzoQlhUmJG9pPJmYDRhvocotb2THl1w==",
"dev": true,
"requires": {
"@types/babel__traverse": "^7.0.6"
@@ -3021,79 +3129,79 @@
},
"babel-plugin-syntax-async-functions": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
"integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=",
"dev": true
},
"babel-plugin-syntax-async-generators": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
"integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=",
"dev": true
},
"babel-plugin-syntax-class-constructor-call": {
"version": "6.18.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz",
"integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=",
"dev": true
},
"babel-plugin-syntax-class-properties": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
"integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=",
"dev": true
},
"babel-plugin-syntax-decorators": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
"integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=",
"dev": true
},
"babel-plugin-syntax-do-expressions": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz",
"integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=",
"dev": true
},
"babel-plugin-syntax-dynamic-import": {
"version": "6.18.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
"integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=",
"dev": true
},
"babel-plugin-syntax-exponentiation-operator": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
"integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=",
"dev": true
},
"babel-plugin-syntax-export-extensions": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz",
"integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=",
"dev": true
},
"babel-plugin-syntax-flow": {
"version": "6.18.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
"integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=",
"dev": true
},
"babel-plugin-syntax-function-bind": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz",
"integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=",
"dev": true
},
"babel-plugin-syntax-jsx": {
"version": "6.18.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz",
"integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=",
"dev": true
},
"babel-plugin-syntax-object-rest-spread": {
"version": "6.13.0",
- "resolved": "http://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
"integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=",
"dev": true
},
@@ -3632,13 +3740,13 @@
}
},
"babel-preset-jest": {
- "version": "24.1.0",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.1.0.tgz",
- "integrity": "sha512-FfNLDxFWsNX9lUmtwY7NheGlANnagvxq8LZdl5PKnVG3umP+S/g0XbVBfwtA4Ai3Ri/IMkWabBz3Tyk9wdspcw==",
+ "version": "24.3.0",
+ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.3.0.tgz",
+ "integrity": "sha512-VGTV2QYBa/Kn3WCOKdfS31j9qomaXSgJqi65B6o05/1GsJyj9LVhSljM9ro4S+IBGj/ENhNBuH9bpqzztKAQSw==",
"dev": true,
"requires": {
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
- "babel-plugin-jest-hoist": "^24.1.0"
+ "babel-plugin-jest-hoist": "^24.3.0"
}
},
"babel-preset-react": {
@@ -3987,6 +4095,16 @@
"ws": "^4.1.0"
}
},
+ "bl": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
+ "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.3.5",
+ "safe-buffer": "^5.1.1"
+ }
+ },
"block-stream": {
"version": "0.0.9",
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
@@ -4225,7 +4343,7 @@
},
"browserify-aes": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"requires": {
@@ -4262,7 +4380,7 @@
},
"browserify-rsa": {
"version": "4.0.1",
- "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
"dev": true,
"requires": {
@@ -4323,7 +4441,7 @@
},
"buffer": {
"version": "4.9.1",
- "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
"integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
"dev": true,
"requires": {
@@ -4356,6 +4474,12 @@
"integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
"dev": true
},
+ "buffer-crc32": {
+ "version": "0.2.13",
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
+ "dev": true
+ },
"buffer-fill": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
@@ -4618,7 +4742,7 @@
},
"camelcase-keys": {
"version": "2.1.0",
- "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"dev": true,
"requires": {
@@ -4769,7 +4893,7 @@
},
"chalk": {
"version": "1.1.3",
- "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
@@ -5196,6 +5320,18 @@
"resolved": "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz",
"integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ="
},
+ "compress-commons": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
+ "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
+ "dev": true,
+ "requires": {
+ "buffer-crc32": "^0.2.1",
+ "crc32-stream": "^2.0.0",
+ "normalize-path": "^2.0.0",
+ "readable-stream": "^2.0.0"
+ }
+ },
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
@@ -5348,7 +5484,7 @@
},
"core-js": {
"version": "1.2.7",
- "resolved": "http://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
"integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
},
"core-util-is": {
@@ -5392,6 +5528,37 @@
"sprintf-js": "^1.0.3"
}
},
+ "crc": {
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz",
+ "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==",
+ "dev": true,
+ "requires": {
+ "buffer": "^5.1.0"
+ },
+ "dependencies": {
+ "buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz",
+ "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.0.2",
+ "ieee754": "^1.1.4"
+ }
+ }
+ }
+ },
+ "crc32-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
+ "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
+ "dev": true,
+ "requires": {
+ "crc": "^3.4.4",
+ "readable-stream": "^2.0.0"
+ }
+ },
"create-ecdh": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
@@ -5413,7 +5580,7 @@
},
"create-hash": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"requires": {
"cipher-base": "^1.0.1",
@@ -5425,7 +5592,7 @@
},
"create-hmac": {
"version": "1.1.7",
- "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"requires": {
"cipher-base": "^1.0.3",
@@ -6084,7 +6251,7 @@
},
"diffie-hellman": {
"version": "5.0.3",
- "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"requires": {
@@ -6216,7 +6383,7 @@
"dependencies": {
"domelementtype": {
"version": "1.1.3",
- "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
"integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=",
"dev": true
},
@@ -6242,7 +6409,7 @@
},
"domelementtype": {
"version": "1.3.0",
- "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
"integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=",
"dev": true
},
@@ -6321,7 +6488,7 @@
},
"immutable": {
"version": "3.7.6",
- "resolved": "http://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz",
+ "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz",
"integrity": "sha1-E7TTyxK++hVIKib+Gy665kAHHks="
}
}
@@ -6471,7 +6638,7 @@
"dependencies": {
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
},
@@ -6511,7 +6678,7 @@
},
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
@@ -6714,7 +6881,7 @@
},
"es6-promise": {
"version": "3.3.1",
- "resolved": "http://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
+ "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
"integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=",
"dev": true
},
@@ -6908,7 +7075,7 @@
},
"eslint-plugin-react": {
"version": "5.2.2",
- "resolved": "http://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-5.2.2.tgz",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-5.2.2.tgz",
"integrity": "sha1-fbBo4fVIf2hx5N7vNqOBwwPqwWE=",
"dev": true,
"requires": {
@@ -6952,7 +7119,7 @@
},
"espree": {
"version": "3.5.4",
- "resolved": "http://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
"integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
"dev": true,
"requires": {
@@ -7016,7 +7183,7 @@
},
"events": {
"version": "1.1.1",
- "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz",
+ "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz",
"integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=",
"dev": true
},
@@ -7336,7 +7503,7 @@
},
"fast-deep-equal": {
"version": "1.1.0",
- "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
"integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ="
},
"fast-json-stable-stringify": {
@@ -7390,7 +7557,7 @@
},
"fbjs": {
"version": "0.1.0-alpha.7",
- "resolved": "http://registry.npmjs.org/fbjs/-/fbjs-0.1.0-alpha.7.tgz",
+ "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.1.0-alpha.7.tgz",
"integrity": "sha1-rUMIuPIy+zxzYDNJ6nJdHpw5Mjw=",
"requires": {
"core-js": "^1.0.0",
@@ -7400,7 +7567,7 @@
"dependencies": {
"whatwg-fetch": {
"version": "0.9.0",
- "resolved": "http://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-0.9.0.tgz",
+ "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-0.9.0.tgz",
"integrity": "sha1-DjaExsuZlbQ+/J3wPkw2XZX9nMA="
}
}
@@ -7445,7 +7612,7 @@
},
"file-saver": {
"version": "1.3.8",
- "resolved": "http://registry.npmjs.org/file-saver/-/file-saver-1.3.8.tgz",
+ "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-1.3.8.tgz",
"integrity": "sha512-spKHSBQIxxS81N/O21WmuXA2F6wppUCsutpzenOeZzOCCJ5gEfcbqJP983IrpLXzYmXnMUa6J03SubcNPdKrlg=="
},
"fileset": {
@@ -7483,7 +7650,7 @@
},
"finalhandler": {
"version": "1.1.1",
- "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
"integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
"dev": true,
"requires": {
@@ -7568,6 +7735,29 @@
"immutable": "^3.7.4"
}
},
+ "follow-redirects": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz",
+ "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==",
+ "requires": {
+ "debug": "^3.2.6"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
+ }
+ }
+ },
"for-in": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
@@ -7633,6 +7823,12 @@
"readable-stream": "^2.0.0"
}
},
+ "fs-constants": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
+ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
+ "dev": true
+ },
"fs-extra": {
"version": "0.30.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz",
@@ -7723,8 +7919,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -7754,7 +7949,7 @@
"dev": true,
"optional": true,
"requires": {
- "balanced-match": "^1.0.0",
+ "balanced-match": "1.0.0",
"concat-map": "0.0.1"
}
},
@@ -7767,8 +7962,7 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"concat-map": {
"version": "0.0.1",
@@ -7779,8 +7973,7 @@
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"core-util-is": {
"version": "1.0.2",
@@ -7881,7 +8074,7 @@
"dev": true,
"optional": true,
"requires": {
- "minimatch": "^3.0.4"
+ "minimatch": "3.0.4"
}
},
"inflight": {
@@ -7897,8 +8090,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"ini": {
"version": "1.3.5",
@@ -7910,9 +8102,8 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
- "number-is-nan": "^1.0.0"
+ "number-is-nan": "1.0.1"
}
},
"isarray": {
@@ -7927,7 +8118,7 @@
"dev": true,
"optional": true,
"requires": {
- "brace-expansion": "^1.1.7"
+ "brace-expansion": "1.1.11"
}
},
"minimist": {
@@ -7940,7 +8131,6 @@
"version": "2.3.5",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -7959,7 +8149,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -8012,15 +8201,13 @@
"dev": true,
"optional": true,
"requires": {
- "abbrev": "1",
- "osenv": "^0.1.4"
+ "abbrev": "1.1.1",
+ "osenv": "0.1.5"
}
},
"npm-bundled": {
"version": "1.0.6",
- "bundled": true,
- "dev": true,
- "optional": true
+ "bundled": true
},
"npm-packlist": {
"version": "1.4.1",
@@ -8028,8 +8215,17 @@
"dev": true,
"optional": true,
"requires": {
- "ignore-walk": "^3.0.1",
- "npm-bundled": "^1.0.1"
+ "ignore-walk": "3.0.1",
+ "npm-bundled": "1.0.5"
+ },
+ "dependencies": {
+ "npm-bundled": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.5.tgz",
+ "integrity": "sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g==",
+ "dev": true,
+ "optional": true
+ }
}
},
"npmlog": {
@@ -8060,7 +8256,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"wrappy": "1"
}
@@ -8083,8 +8278,8 @@
"dev": true,
"optional": true,
"requires": {
- "os-homedir": "^1.0.0",
- "os-tmpdir": "^1.0.0"
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
}
},
"path-is-absolute": {
@@ -8146,8 +8341,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -8183,7 +8377,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -8203,7 +8396,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -8247,14 +8439,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
@@ -8319,7 +8509,7 @@
},
"get-stream": {
"version": "3.0.0",
- "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
},
"get-value": {
@@ -8456,7 +8646,7 @@
},
"got": {
"version": "6.7.1",
- "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz",
+ "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
"integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
"dev": true,
"requires": {
@@ -8904,7 +9094,7 @@
},
"http-errors": {
"version": "1.6.3",
- "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
"integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
"dev": true,
"requires": {
@@ -8924,6 +9114,12 @@
"sshpk": "^1.7.0"
}
},
+ "https": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",
+ "integrity": "sha1-PDfHrhqO65ZpBKKtHpdaGUt+06Q=",
+ "dev": true
+ },
"https-browserify": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz",
@@ -9122,7 +9318,7 @@
},
"indexeddbshim": {
"version": "2.2.1",
- "resolved": "http://registry.npmjs.org/indexeddbshim/-/indexeddbshim-2.2.1.tgz",
+ "resolved": "https://registry.npmjs.org/indexeddbshim/-/indexeddbshim-2.2.1.tgz",
"integrity": "sha1-yxFwknMpnyKt8vHOy3Q+whNKY1Y="
},
"indexes-of": {
@@ -9327,12 +9523,11 @@
"is-buffer": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
- "dev": true
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
},
"is-builtin-module": {
"version": "1.0.0",
- "resolved": "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
+ "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
"requires": {
"builtin-modules": "^1.0.0"
@@ -9467,7 +9662,7 @@
},
"is-obj": {
"version": "1.0.1",
- "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
"integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
"dev": true
},
@@ -9848,6 +10043,12 @@
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"make-dir": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
@@ -10981,6 +11182,12 @@
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"ms": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
@@ -11636,6 +11843,12 @@
"supports-color": "^5.3.0"
}
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
@@ -12008,12 +12221,12 @@
},
"json5": {
"version": "0.5.1",
- "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
"integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE="
},
"jsonfile": {
"version": "2.4.0",
- "resolved": "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
"integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
"dev": true,
"requires": {
@@ -12100,6 +12313,15 @@
"integrity": "sha512-u93kb2fPbIrfzBuLjZE+w+fJbUUMhNDXxNmMfaqNgpfQf1CO5ZSe2LfsnBqVAk7i/2NF48OSoRj+Xe2VT+lE8Q==",
"dev": true
},
+ "lazystream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
+ "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.5"
+ }
+ },
"lcid": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
@@ -12116,7 +12338,7 @@
},
"less-plugin-precompile-import": {
"version": "git+https://github.com/gibbsfromncis/less-plugin-precompile-import.git#166550452515c03c0d497cae97bf58ba15ca1f84",
- "from": "git+https://github.com/gibbsfromncis/less-plugin-precompile-import.git#166550452515c03c0d497cae97bf58ba15ca1f84",
+ "from": "less-plugin-precompile-import@git+https://github.com/gibbsfromncis/less-plugin-precompile-import.git#166550452515c03c0d497cae97bf58ba15ca1f84",
"dev": true
},
"leven": {
@@ -12136,7 +12358,7 @@
},
"load-json-file": {
"version": "1.1.0",
- "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"dev": true,
"requires": {
@@ -12181,9 +12403,9 @@
}
},
"lodash": {
- "version": "4.17.11",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
- "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg=="
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
},
"lodash-es": {
"version": "4.17.10",
@@ -12201,11 +12423,35 @@
"integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
"dev": true
},
+ "lodash.assign": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
+ "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=",
+ "dev": true
+ },
"lodash.debounce": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
"integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168="
},
+ "lodash.defaults": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
+ "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=",
+ "dev": true
+ },
+ "lodash.difference": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz",
+ "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=",
+ "dev": true
+ },
+ "lodash.flatten": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
+ "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=",
+ "dev": true
+ },
"lodash.get": {
"version": "4.4.2",
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
@@ -12221,6 +12467,12 @@
"resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
"integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U="
},
+ "lodash.isplainobject": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+ "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=",
+ "dev": true
+ },
"lodash.keys": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
@@ -12273,6 +12525,18 @@
"resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz",
"integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ="
},
+ "lodash.toarray": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz",
+ "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=",
+ "dev": true
+ },
+ "lodash.union": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz",
+ "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=",
+ "dev": true
+ },
"log-symbols": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
@@ -12481,6 +12745,12 @@
"integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==",
"dev": true
},
+ "md5-file": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-4.0.0.tgz",
+ "integrity": "sha512-UC0qFwyAjn4YdPpKaDNw6gNxRf7Mcx7jC1UGCY4boCzgvU2Aoc1mOGzTtrjjLKhM5ivsnhoKpQVxKPp+1j1qwg==",
+ "dev": true
+ },
"md5-o-matic": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz",
@@ -12503,7 +12773,7 @@
},
"media-typer": {
"version": "0.3.0",
- "resolved": "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
"dev": true
},
@@ -12527,7 +12797,7 @@
},
"meow": {
"version": "3.7.0",
- "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"dev": true,
"requires": {
@@ -12545,7 +12815,7 @@
"dependencies": {
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
@@ -12688,7 +12958,7 @@
},
"minimist": {
"version": "0.0.8",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
},
"mississippi": {
@@ -12749,7 +13019,7 @@
},
"mkdirp": {
"version": "0.5.1",
- "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"requires": {
"minimist": "0.0.8"
@@ -13118,6 +13388,12 @@
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true
},
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
"nan": {
"version": "2.13.2",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz",
@@ -13182,7 +13458,7 @@
"dependencies": {
"readable-stream": {
"version": "1.0.34",
- "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
"integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"dev": true,
"requires": {
@@ -13286,7 +13562,7 @@
"dependencies": {
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
@@ -13311,7 +13587,7 @@
},
"numeral": {
"version": "2.0.4",
- "resolved": "http://registry.npmjs.org/numeral/-/numeral-2.0.4.tgz",
+ "resolved": "https://registry.npmjs.org/numeral/-/numeral-2.0.4.tgz",
"integrity": "sha1-VFoMcJ4JCpz3m+vsgCuT9gBh8Dg="
},
"nwmatcher": {
@@ -13640,7 +13916,7 @@
},
"parse-asn1": {
"version": "5.1.1",
- "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
"integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
"dev": true,
"requires": {
@@ -14272,7 +14548,7 @@
},
"readable-stream": {
"version": "1.1.14",
- "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"dev": true,
"requires": {
@@ -14382,9 +14658,9 @@
}
},
"pubsub-js": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/pubsub-js/-/pubsub-js-1.6.0.tgz",
- "integrity": "sha1-Iy02SFznkFpUYp7FeD2fb0xjgCY="
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/pubsub-js/-/pubsub-js-1.7.0.tgz",
+ "integrity": "sha512-Pb68P9qFZxnvDipHMuj9oT1FoIgBcXJ9C9eWdHCLZAnulaUoJ3+Y87RhGMYilWpun6DMWVmvK70T4RP4drZMSA=="
},
"pump": {
"version": "2.0.1",
@@ -14709,7 +14985,7 @@
"dependencies": {
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
@@ -15360,7 +15636,7 @@
},
"react-datepicker2": {
"version": "git+https://github.com/bitshares/react-datepicker2.git#9d4c2c28a23c970badcf765c35c5493d5a49afde",
- "from": "git+https://github.com/bitshares/react-datepicker2.git#9d4c2c28a23c970badcf765c35c5493d5a49afde",
+ "from": "react-datepicker2@git+https://github.com/bitshares/react-datepicker2.git#9d4c2c28a23c970badcf765c35c5493d5a49afde",
"requires": {
"classnames": "^2.2.5",
"moment": "^2.22.2",
@@ -16009,7 +16285,7 @@
},
"regjsgen": {
"version": "0.2.0",
- "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
"integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
"dev": true
},
@@ -16185,6 +16461,14 @@
"dev": true,
"requires": {
"lodash": "^4.17.11"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ }
}
},
"request-promise-native": {
@@ -16388,7 +16672,7 @@
},
"safe-regex": {
"version": "1.1.0",
- "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
"integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
"dev": true,
"requires": {
@@ -16770,7 +17054,7 @@
},
"sha.js": {
"version": "2.4.11",
- "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"requires": {
"inherits": "^2.0.1",
@@ -16838,7 +17122,7 @@
},
"simple-html-tokenizer": {
"version": "0.1.1",
- "resolved": "http://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz",
+ "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz",
"integrity": "sha1-BcLuxXn//+FFoDCsJs/qYbmA+r4=",
"dev": true
},
@@ -17316,7 +17600,7 @@
},
"strip-ansi": {
"version": "3.0.1",
- "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"requires": {
"ansi-regex": "^2.0.0"
@@ -17667,6 +17951,21 @@
"inherits": "2"
}
},
+ "tar-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz",
+ "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==",
+ "dev": true,
+ "requires": {
+ "bl": "^1.0.0",
+ "buffer-alloc": "^1.2.0",
+ "end-of-stream": "^1.0.0",
+ "fs-constants": "^1.0.0",
+ "readable-stream": "^2.3.0",
+ "to-buffer": "^1.1.1",
+ "xtend": "^4.0.0"
+ }
+ },
"tcomb": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/tcomb/-/tcomb-2.5.2.tgz",
@@ -17823,7 +18122,7 @@
},
"through": {
"version": "2.3.8",
- "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
"integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
"dev": true
},
@@ -17890,6 +18189,12 @@
"integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
"dev": true
},
+ "to-buffer": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
+ "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==",
+ "dev": true
+ },
"to-fast-properties": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
@@ -19094,16 +19399,22 @@
}
},
"mem": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-4.1.0.tgz",
- "integrity": "sha512-I5u6Q1x7wxO0kdOpYBB28xueHADYps5uty/zg936CiG8NTe5sJL8EjrCuLneuDW3PlMdZBGDIn8BirEVdovZvg==",
+ "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": "^1.0.0",
+ "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",
@@ -19334,7 +19645,7 @@
},
"whatwg-fetch": {
"version": "2.0.4",
- "resolved": "http://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
+ "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
"integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng=="
},
"whatwg-mimetype": {
@@ -19473,7 +19784,7 @@
},
"wrap-ansi": {
"version": "2.1.0",
- "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"requires": {
"string-width": "^1.0.1",
@@ -19786,6 +20097,17 @@
"fd-slicer": "~1.0.1"
}
},
+ "zip-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.0.1.tgz",
+ "integrity": "sha512-c+eUhhkDpaK87G/py74wvWLtz2kzMPNCCkUApkun50ssE0oQliIQzWpTnwjB+MTKVIf2tGzIgHyqW/Y+W77ecQ==",
+ "dev": true,
+ "requires": {
+ "archiver-utils": "^2.0.0",
+ "compress-commons": "^1.2.0",
+ "readable-stream": "^2.0.0"
+ }
+ },
"zxcvbn-async": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/zxcvbn-async/-/zxcvbn-async-0.0.5.tgz",
diff --git a/package.json b/package.json
index 2f1ce4b273..5aabbc3c15 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",
+ "axios": "^0.18.0",
"bignumber.js": "^4.0.0",
"bitshares-report": "^0.2.0",
"bitshares-ui-style-guide": "git+https://github.com/bitshares/bitshares-ui-style-guide.git#83b82d056ca134b08521e8eca541438b7b4783f6",