Browse Source

Add BTC to Trade Portal

pull/41/head
QuickMythril 2 years ago committed by GitHub
parent
commit
f0aa40994e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 53
      qortal-ui-plugins/plugins/core/trade-portal/trade-portal.src.js

53
qortal-ui-plugins/plugins/core/trade-portal/trade-portal.src.js

@ -338,6 +338,10 @@ class TradePortal extends LitElement {
top: 10px;
}
.btc.coinName:before {
background-image: url('/img/qortbtc.png');
}
.ltc.coinName:before {
background-image: url('/img/qortltc.png');
}
@ -423,6 +427,22 @@ class TradePortal extends LitElement {
tradeFee: "0.002"
}
let bitcoin = {
name: "BITCOIN",
balance: "0",
coinCode: "BTC",
openOrders: [],
openFilteredOrders: [],
historicTrades: [],
myOrders: [],
myHistoricTrades: [],
myOfferingOrders: [],
openTradeOrders: null,
tradeOffersSocketCounter: 1,
coinAmount: this.amountString,
tradeFee: "~0.0005"
}
let litecoin = {
name: "LITECOIN",
balance: "0",
@ -489,6 +509,7 @@ class TradePortal extends LitElement {
this.listedCoins = new Map()
this.listedCoins.set("QORTAL", qortal)
this.listedCoins.set("BITCOIN", bitcoin)
this.listedCoins.set("LITECOIN", litecoin)
this.listedCoins.set("DOGECOIN", dogecoin)
this.listedCoins.set("DIGIBYTE", digibyte)
@ -499,6 +520,11 @@ class TradePortal extends LitElement {
handleStuckTradesConnectedWorker: null
})
workers.set("BITCOIN", {
tradesConnectedWorker: null,
handleStuckTradesConnectedWorker: null
})
workers.set("LITECOIN", {
tradesConnectedWorker: null,
handleStuckTradesConnectedWorker: null
@ -902,6 +928,7 @@ class TradePortal extends LitElement {
<h2 style="margin: 0 0 15px 0; line-height: 50px; display: inline;">Qortal ${translate("tradepage.tchange1")} - &nbsp;</h2>
<mwc-select outlined id="coinSelectionMenu" label="${translate("tradepage.tchange2")}">
<mwc-list-item value="LITECOIN" selected><span class="coinName ltc" style="color: var(--black);">QORT / LTC</span></mwc-list-item>
<mwc-list-item value="BITCOIN"><span class="coinName btc" style="color: var(--black);">QORT / BTC</span></mwc-list-item>
<mwc-list-item value="DOGECOIN"><span class="coinName doge" style="color: var(--black);">QORT / DOGE</span></mwc-list-item>
<mwc-list-item value="DIGIBYTE"><span class="coinName dgb" style="color: var(--black);">QORT / DGB</span></mwc-list-item>
<mwc-list-item value="RAVENCOIN"><span class="coinName rvn" style="color: var(--black);">QORT / RVN</span></mwc-list-item>
@ -1059,6 +1086,10 @@ class TradePortal extends LitElement {
let _body = null
switch (this.selectedCoin) {
case 'BITCOIN':
_url = `/crosschain/btc/walletbalance?apiKey=${this.getApiKey()}`
_body = window.parent.reduxStore.getState().app.selectedAddress.btcWallet.derivedMasterPublicKey
break
case 'LITECOIN':
_url = `/crosschain/ltc/walletbalance?apiKey=${this.getApiKey()}`
_body = window.parent.reduxStore.getState().app.selectedAddress.ltcWallet.derivedMasterPublicKey
@ -1315,15 +1346,11 @@ class TradePortal extends LitElement {
* BitcoinACCTv1 TRADEBOT STATES
* - BOB_WAITING_FOR_AT_CONFIRM
* - BOB_WAITING_FOR_MESSAGE
* - BOB_WAITING_FOR_P2SH_B
* - BOB_WAITING_FOR_AT_REDEEM
* - BOB_DONE
* - BOB_REFUNDED
* - ALICE_WAITING_FOR_P2SH_A
* - ALICE_WAITING_FOR_AT_LOCK
* - ALICE_WATCH_P2SH_B
* - ALICE_DONE
* - ALICE_REFUNDING_B
* - ALICE_REFUNDING_A
* - ALICE_REFUNDED
*
@ -1339,24 +1366,16 @@ class TradePortal extends LitElement {
this.changeTradeBotState(state, 'PENDING')
} else if (state.tradeState == 'BOB_WAITING_FOR_MESSAGE') {
this.changeTradeBotState(state, 'LISTED')
} else if (state.tradeState == 'BOB_WAITING_FOR_P2SH_B') {
this.changeTradeBotState(state, 'TRADING')
} else if (state.tradeState == 'BOB_WAITING_FOR_AT_REDEEM') {
this.changeTradeBotState(state, 'REDEEMING')
this.changeTradeBotState(state, 'TRADING')
} else if (state.tradeState == 'BOB_DONE') {
this.handleCompletedState(state)
} else if (state.tradeState == 'BOB_REFUNDED') {
this.handleCompletedState(state)
} else if (state.tradeState == 'ALICE_WAITING_FOR_P2SH_A') {
this.changeTradeBotState(state, 'PENDING')
} else if (state.tradeState == 'ALICE_WAITING_FOR_AT_LOCK') {
this.changeTradeBotState(state, 'TRADING')
} else if (state.tradeState == 'ALICE_WATCH_P2SH_B') {
this.changeTradeBotState(state, 'TRADING')
this.changeTradeBotState(state, 'BUYING')
} else if (state.tradeState == 'ALICE_DONE') {
this.handleCompletedState(state)
} else if (state.tradeState == 'ALICE_REFUNDING_B') {
this.changeTradeBotState(state, 'REFUNDING')
} else if (state.tradeState == 'ALICE_REFUNDING_A') {
this.changeTradeBotState(state, 'REFUNDING')
} else if (state.tradeState == 'ALICE_REFUNDED') {
@ -1837,6 +1856,9 @@ class TradePortal extends LitElement {
const makeRequest = async () => {
let _receivingAddress = null
switch (this.selectedCoin) {
case 'BITCOIN':
_receivingAddress = this.selectedAddress.btcWallet.address
break
case 'LITECOIN':
_receivingAddress = this.selectedAddress.ltcWallet.address
break
@ -1903,6 +1925,9 @@ class TradePortal extends LitElement {
let _foreignKey = ""
switch (this.selectedCoin) {
case 'BITCOIN':
_foreignKey = this.selectedAddress.btcWallet.derivedMasterPrivateKey
break
case 'LITECOIN':
_foreignKey = this.selectedAddress.ltcWallet.derivedMasterPrivateKey
break

Loading…
Cancel
Save