mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-02-11 17:55:51 +00:00
add DGB to Trade Portal
This commit is contained in:
parent
62e5eed5a1
commit
a3483634e1
@ -346,6 +346,10 @@ class TradePortal extends LitElement {
|
|||||||
background-image: url('/img/qortdoge.png');
|
background-image: url('/img/qortdoge.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dgb.coinName:before {
|
||||||
|
background-image: url('/img/qortdgb.png');
|
||||||
|
}
|
||||||
|
|
||||||
.coinName {
|
.coinName {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 26px;
|
height: 26px;
|
||||||
@ -444,10 +448,26 @@ class TradePortal extends LitElement {
|
|||||||
coinAmount: this.amountString
|
coinAmount: this.amountString
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let digibyte = {
|
||||||
|
name: "DIGIBYTE",
|
||||||
|
balance: "0",
|
||||||
|
coinCode: "DGB",
|
||||||
|
openOrders: [],
|
||||||
|
openFilteredOrders: [],
|
||||||
|
historicTrades: [],
|
||||||
|
myOrders: [],
|
||||||
|
myHistoricTrades: [],
|
||||||
|
myOfferingOrders: [],
|
||||||
|
openTradeOrders: null,
|
||||||
|
tradeOffersSocketCounter: 1,
|
||||||
|
coinAmount: this.amountString
|
||||||
|
}
|
||||||
|
|
||||||
this.listedCoins = new Map()
|
this.listedCoins = new Map()
|
||||||
this.listedCoins.set("QORTAL", qortal)
|
this.listedCoins.set("QORTAL", qortal)
|
||||||
this.listedCoins.set("LITECOIN", litecoin)
|
this.listedCoins.set("LITECOIN", litecoin)
|
||||||
this.listedCoins.set("DOGECOIN", dogecoin)
|
this.listedCoins.set("DOGECOIN", dogecoin)
|
||||||
|
this.listedCoins.set("DIGIBYTE", digibyte)
|
||||||
|
|
||||||
workers.set("QORTAL", {
|
workers.set("QORTAL", {
|
||||||
tradesConnectedWorker: null,
|
tradesConnectedWorker: null,
|
||||||
@ -464,6 +484,11 @@ class TradePortal extends LitElement {
|
|||||||
handleStuckTradesConnectedWorker: null
|
handleStuckTradesConnectedWorker: null
|
||||||
})
|
})
|
||||||
|
|
||||||
|
workers.set("DIGIBYTE", {
|
||||||
|
tradesConnectedWorker: null,
|
||||||
|
handleStuckTradesConnectedWorker: null
|
||||||
|
})
|
||||||
|
|
||||||
this.selectedCoin = "LITECOIN"
|
this.selectedCoin = "LITECOIN"
|
||||||
this.selectedAddress = {}
|
this.selectedAddress = {}
|
||||||
this.config = {}
|
this.config = {}
|
||||||
@ -846,6 +871,7 @@ class TradePortal extends LitElement {
|
|||||||
<mwc-select outlined id="coinSelectionMenu" label="${translate("tradepage.tchange2")}">
|
<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="LITECOIN" selected><span class="coinName ltc" style="color: var(--black);">QORT / LTC</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="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-select>
|
</mwc-select>
|
||||||
</div>
|
</div>
|
||||||
<div id="trade-portal">
|
<div id="trade-portal">
|
||||||
@ -1008,6 +1034,10 @@ class TradePortal extends LitElement {
|
|||||||
_url = `/crosschain/doge/walletbalance?apiKey=${this.getApiKey()}`
|
_url = `/crosschain/doge/walletbalance?apiKey=${this.getApiKey()}`
|
||||||
_body = window.parent.reduxStore.getState().app.selectedAddress.dogeWallet.derivedMasterPublicKey
|
_body = window.parent.reduxStore.getState().app.selectedAddress.dogeWallet.derivedMasterPublicKey
|
||||||
break
|
break
|
||||||
|
case 'DIGIBYTE':
|
||||||
|
_url = `/crosschain/dgb/walletbalance?apiKey=${this.getApiKey()}`
|
||||||
|
_body = window.parent.reduxStore.getState().app.selectedAddress.dgbWallet.derivedMasterPublicKey
|
||||||
|
break
|
||||||
default:
|
default:
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -1020,7 +1050,7 @@ class TradePortal extends LitElement {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (isNaN(Number(res))) {
|
if (isNaN(Number(res))) {
|
||||||
let snack1string = get("tradepage.tchange30")
|
let snack1string = get("tradepage.tchange30")
|
||||||
parentEpml.request('showSnackBar', `${snack1tring}`)
|
parentEpml.request('showSnackBar', `${snack1string}`)
|
||||||
} else {
|
} else {
|
||||||
this.listedCoins.get(this.selectedCoin).balance = (Number(res) / 1e8).toFixed(8)
|
this.listedCoins.get(this.selectedCoin).balance = (Number(res) / 1e8).toFixed(8)
|
||||||
}
|
}
|
||||||
@ -1385,6 +1415,49 @@ class TradePortal extends LitElement {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DigibyteACCTv1 TRADEBOT STATES
|
||||||
|
* - BOB_WAITING_FOR_AT_CONFIRM
|
||||||
|
* - BOB_WAITING_FOR_MESSAGE
|
||||||
|
* - BOB_WAITING_FOR_AT_REDEEM
|
||||||
|
* - BOB_DONE
|
||||||
|
* - BOB_REFUNDED
|
||||||
|
* - ALICE_WAITING_FOR_AT_LOCK
|
||||||
|
* - ALICE_DONE
|
||||||
|
* - ALICE_REFUNDING_A
|
||||||
|
* - ALICE_REFUNDED
|
||||||
|
*
|
||||||
|
* @param {[{}]} states
|
||||||
|
*/
|
||||||
|
|
||||||
|
const DigibyteACCTv1 = (states) => {
|
||||||
|
// Reverse the states
|
||||||
|
states.reverse()
|
||||||
|
states.forEach((state) => {
|
||||||
|
if (state.creatorAddress === this.selectedAddress.address) {
|
||||||
|
if (state.tradeState == 'BOB_WAITING_FOR_AT_CONFIRM') {
|
||||||
|
this.changeTradeBotState(state, 'PENDING')
|
||||||
|
} else if (state.tradeState == 'BOB_WAITING_FOR_MESSAGE') {
|
||||||
|
this.changeTradeBotState(state, 'LISTED')
|
||||||
|
} else if (state.tradeState == 'BOB_WAITING_FOR_AT_REDEEM') {
|
||||||
|
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_AT_LOCK') {
|
||||||
|
this.changeTradeBotState(state, 'BUYING')
|
||||||
|
} else if (state.tradeState == 'ALICE_DONE') {
|
||||||
|
this.handleCompletedState(state)
|
||||||
|
} else if (state.tradeState == 'ALICE_REFUNDING_A') {
|
||||||
|
this.changeTradeBotState(state, 'REFUNDING')
|
||||||
|
} else if (state.tradeState == 'ALICE_REFUNDED') {
|
||||||
|
this.handleCompletedState(state)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
switch (this.selectedCoin) {
|
switch (this.selectedCoin) {
|
||||||
case 'BITCOIN':
|
case 'BITCOIN':
|
||||||
BitcoinACCTv1(tradeStates)
|
BitcoinACCTv1(tradeStates)
|
||||||
@ -1395,6 +1468,9 @@ class TradePortal extends LitElement {
|
|||||||
case 'DOGECOIN':
|
case 'DOGECOIN':
|
||||||
DogecoinACCTv1(tradeStates)
|
DogecoinACCTv1(tradeStates)
|
||||||
break
|
break
|
||||||
|
case 'DIGIBYTE':
|
||||||
|
DigibyteACCTv1(tradeStates)
|
||||||
|
break
|
||||||
default:
|
default:
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -1640,19 +1716,19 @@ class TradePortal extends LitElement {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const restartPresenceWebSocket = () => {
|
const restartPresenceWebSocket = () => {
|
||||||
setTimeout(() => initPresenceWebSocket(true), 3000)
|
setTimeout(() => initPresenceWebSocket(true), 5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
const restartTradePresenceWebSocket = () => {
|
const restartTradePresenceWebSocket = () => {
|
||||||
setTimeout(() => initTradePresenceWebSocket(true), 3000)
|
setTimeout(() => initTradePresenceWebSocket(true), 5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
const restartTradeOffersWebSocket = () => {
|
const restartTradeOffersWebSocket = () => {
|
||||||
setTimeout(() => initTradeOffersWebSocket(true), 3000)
|
setTimeout(() => initTradeOffersWebSocket(true), 5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
const restartTradeBotWebSocket = () => {
|
const restartTradeBotWebSocket = () => {
|
||||||
setTimeout(() => initTradeBotWebSocket(true), 3000)
|
setTimeout(() => initTradeBotWebSocket(true), 5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Start TradeOffersWebSocket
|
// Start TradeOffersWebSocket
|
||||||
@ -1684,6 +1760,9 @@ class TradePortal extends LitElement {
|
|||||||
case 'DOGECOIN':
|
case 'DOGECOIN':
|
||||||
_receivingAddress = this.selectedAddress.dogeWallet.address
|
_receivingAddress = this.selectedAddress.dogeWallet.address
|
||||||
break
|
break
|
||||||
|
case 'DIGIBYTE':
|
||||||
|
_receivingAddress = this.selectedAddress.dgbWallet.address
|
||||||
|
break
|
||||||
default:
|
default:
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -1710,12 +1789,12 @@ class TradePortal extends LitElement {
|
|||||||
this.isSellLoading = false
|
this.isSellLoading = false
|
||||||
this.sellBtnDisable = false
|
this.sellBtnDisable = false
|
||||||
let snack2string = get("tradepage.tchange20")
|
let snack2string = get("tradepage.tchange20")
|
||||||
parentEpml.request('showSnackBar', `${snack2tring}`)
|
parentEpml.request('showSnackBar', `${snack2string}`)
|
||||||
} else {
|
} else {
|
||||||
this.isSellLoading = false
|
this.isSellLoading = false
|
||||||
this.sellBtnDisable = false
|
this.sellBtnDisable = false
|
||||||
let snack3string = get("tradepage.tchange21")
|
let snack3string = get("tradepage.tchange21")
|
||||||
parentEpml.request('showSnackBar', `${snack3tring}: ${response.message}`)
|
parentEpml.request('showSnackBar', `${snack3string}: ${response.message}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1723,7 +1802,7 @@ class TradePortal extends LitElement {
|
|||||||
this.isSellLoading = false
|
this.isSellLoading = false
|
||||||
this.sellBtnDisable = false
|
this.sellBtnDisable = false
|
||||||
let snack4string = get("tradepage.tchange22")
|
let snack4string = get("tradepage.tchange22")
|
||||||
parentEpml.request('showSnackBar', `${snack4tring}`)
|
parentEpml.request('showSnackBar', `${snack4string}`)
|
||||||
return false
|
return false
|
||||||
} else {
|
} else {
|
||||||
const res = await makeRequest()
|
const res = await makeRequest()
|
||||||
@ -1744,6 +1823,9 @@ class TradePortal extends LitElement {
|
|||||||
case 'DOGECOIN':
|
case 'DOGECOIN':
|
||||||
_foreignKey = this.selectedAddress.dogeWallet.derivedMasterPrivateKey
|
_foreignKey = this.selectedAddress.dogeWallet.derivedMasterPrivateKey
|
||||||
break
|
break
|
||||||
|
case 'DIGIBYTE':
|
||||||
|
_foreignKey = this.selectedAddress.dgbWallet.derivedMasterPrivateKey
|
||||||
|
break
|
||||||
default:
|
default:
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -1766,17 +1848,17 @@ class TradePortal extends LitElement {
|
|||||||
this.shadowRoot.getElementById('buyTotalInput').value = this.initialAmount
|
this.shadowRoot.getElementById('buyTotalInput').value = this.initialAmount
|
||||||
this.shadowRoot.getElementById('qortalAtAddress').value = ''
|
this.shadowRoot.getElementById('qortalAtAddress').value = ''
|
||||||
let snack5string = get("tradepage.tchange23")
|
let snack5string = get("tradepage.tchange23")
|
||||||
parentEpml.request('showSnackBar', `${snack5tring}`)
|
parentEpml.request('showSnackBar', `${snack5string}`)
|
||||||
} else if (response === false) {
|
} else if (response === false) {
|
||||||
this.isBuyLoading = false
|
this.isBuyLoading = false
|
||||||
this.buyBtnDisable = false
|
this.buyBtnDisable = false
|
||||||
let snack6string = get("tradepage.tchange24")
|
let snack6string = get("tradepage.tchange24")
|
||||||
parentEpml.request('showSnackBar', `${snack6tring}`)
|
parentEpml.request('showSnackBar', `${snack6string}`)
|
||||||
} else {
|
} else {
|
||||||
this.isBuyLoading = false
|
this.isBuyLoading = false
|
||||||
this.buyBtnDisable = false
|
this.buyBtnDisable = false
|
||||||
let snack7string = get("tradepage.tchange25")
|
let snack7string = get("tradepage.tchange25")
|
||||||
parentEpml.request('showSnackBar', `${snack7tring}: ${response.message}`)
|
parentEpml.request('showSnackBar', `${snack7string}: ${response.message}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1803,12 +1885,12 @@ class TradePortal extends LitElement {
|
|||||||
button.remove()
|
button.remove()
|
||||||
this.cancelBtnDisable = false
|
this.cancelBtnDisable = false
|
||||||
let snack8string = get("tradepage.tchange26")
|
let snack8string = get("tradepage.tchange26")
|
||||||
parentEpml.request('showSnackBar', `${snack8tring}`)
|
parentEpml.request('showSnackBar', `${snack8string}`)
|
||||||
} else if (response === false) {
|
} else if (response === false) {
|
||||||
button.innerHTML = 'CANCEL'
|
button.innerHTML = 'CANCEL'
|
||||||
this.cancelBtnDisable = false
|
this.cancelBtnDisable = false
|
||||||
let snack9string = get("tradepage.tchange27")
|
let snack9string = get("tradepage.tchange27")
|
||||||
parentEpml.request('showSnackBar', `${snack9tring}`)
|
parentEpml.request('showSnackBar', `${snack9string}`)
|
||||||
} else {
|
} else {
|
||||||
button.innerHTML = 'CANCEL'
|
button.innerHTML = 'CANCEL'
|
||||||
this.cancelBtnDisable = false
|
this.cancelBtnDisable = false
|
||||||
|
Loading…
x
Reference in New Issue
Block a user