Compare commits
7 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
1f37de8f12 | ||
|
fb6b5d54fa | ||
|
f367544498 | ||
|
c3b1875672 | ||
|
6f59c7c583 | ||
|
b66f5d1e1f | ||
|
d596df746d |
BIN
img/dash.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
img/dash_transparent.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
img/firo.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
img/firo_transparent.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
img/nmc.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
img/nmc_transparent.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
img/qortbtc.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
img/qortdash.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
img/qortfiro.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
img/qortnmc.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
@ -22,6 +22,9 @@ const sendLtc = api.sendLtc
|
||||
const sendDoge = api.sendDoge
|
||||
const sendDgb = api.sendDgb
|
||||
const sendRvn = api.sendRvn
|
||||
const sendNmc = api.sendNmc
|
||||
const sendDash = api.sendDash
|
||||
const sendFiro = api.sendFiro
|
||||
|
||||
export const routes = {
|
||||
hello: async (req) => {
|
||||
@ -361,4 +364,43 @@ export const routes = {
|
||||
}
|
||||
return response
|
||||
},
|
||||
|
||||
sendNmc: async (req) => {
|
||||
let response
|
||||
try {
|
||||
const res = await sendNmc(req.data)
|
||||
response = res
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
console.error(e.message)
|
||||
response = e.message
|
||||
}
|
||||
return response
|
||||
},
|
||||
|
||||
sendDash: async (req) => {
|
||||
let response
|
||||
try {
|
||||
const res = await sendDash(req.data)
|
||||
response = res
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
console.error(e.message)
|
||||
response = e.message
|
||||
}
|
||||
return response
|
||||
},
|
||||
|
||||
sendFiro: async (req) => {
|
||||
let response
|
||||
try {
|
||||
const res = await sendFiro(req.data)
|
||||
response = res
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
console.error(e.message)
|
||||
response = e.message
|
||||
}
|
||||
return response
|
||||
},
|
||||
}
|
||||
|
@ -168,6 +168,51 @@ export default class PhraseWallet {
|
||||
}
|
||||
}).createWallet(new Uint8Array(rvnSeed), false, 'RVN');
|
||||
|
||||
// Create Namecoin HD Wallet
|
||||
const nmcSeed = [...addrSeed];
|
||||
const nmcWallet = new AltcoinHDWallet({
|
||||
mainnet: {
|
||||
private: 0x0488ADE4,
|
||||
public: 0x0488B21E,
|
||||
prefix: 0x34
|
||||
},
|
||||
testnet: {
|
||||
private: 0x04358394,
|
||||
public: 0x043587CF,
|
||||
prefix: 0x6F
|
||||
}
|
||||
}).createWallet(new Uint8Array(nmcSeed), false, 'NMC');
|
||||
|
||||
// Create Dash HD Wallet
|
||||
const dashSeed = [...addrSeed];
|
||||
const dashWallet = new AltcoinHDWallet({
|
||||
mainnet: {
|
||||
private: 0x0488ADE4,
|
||||
public: 0x0488B21E,
|
||||
prefix: 0x4C
|
||||
},
|
||||
testnet: {
|
||||
private: 0x04358394,
|
||||
public: 0x043587CF,
|
||||
prefix: 0x8C
|
||||
}
|
||||
}).createWallet(new Uint8Array(dashSeed), false, 'DASH');
|
||||
|
||||
// Create Firo HD Wallet
|
||||
const firoSeed = [...addrSeed];
|
||||
const firoWallet = new AltcoinHDWallet({
|
||||
mainnet: {
|
||||
private: 0x0488ADE4,
|
||||
public: 0x0488B21E,
|
||||
prefix: 0x52
|
||||
},
|
||||
testnet: {
|
||||
private: 0x04358394,
|
||||
public: 0x043587CF,
|
||||
prefix: 0x41
|
||||
}
|
||||
}).createWallet(new Uint8Array(firoSeed), false, 'FIRO');
|
||||
|
||||
this._addresses[nonce] = {
|
||||
address,
|
||||
btcWallet,
|
||||
@ -175,6 +220,9 @@ export default class PhraseWallet {
|
||||
dogeWallet,
|
||||
dgbWallet,
|
||||
rvnWallet,
|
||||
nmcWallet,
|
||||
dashWallet,
|
||||
firoWallet,
|
||||
qoraAddress,
|
||||
keyPair: {
|
||||
publicKey: addrKeyPair.publicKey,
|
||||
|
@ -4,6 +4,6 @@ export { transactionTypes as transactions } from './transactions/transactions.js
|
||||
|
||||
export { processTransaction, createTransaction, computeChatNonce, signChatTransaction, signArbitraryTransaction } from './createTransaction.js'
|
||||
|
||||
export { tradeBotCreateRequest, tradeBotRespondRequest, signTradeBotTxn, deleteTradeOffer, sendBtc, sendLtc, sendDoge, sendDgb, sendRvn } from './tradeRequest.js'
|
||||
export { tradeBotCreateRequest, tradeBotRespondRequest, signTradeBotTxn, deleteTradeOffer, sendBtc, sendLtc, sendDoge, sendDgb, sendRvn, sendNmc, sendDash, sendFiro } from './tradeRequest.js'
|
||||
|
||||
export { cancelAllOffers } from './transactions/trade-portal/tradeoffer/cancelAllOffers.js'
|
||||
|
@ -130,3 +130,44 @@ export const sendRvn = (requestObject) => {
|
||||
})
|
||||
}
|
||||
|
||||
// Send NMC
|
||||
export const sendNmc = (requestObject) => {
|
||||
const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node];
|
||||
|
||||
return request(`/crosschain/nmc/send?apiKey=${myNode.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Accept': 'application/json',
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(requestObject)
|
||||
})
|
||||
}
|
||||
|
||||
// Send DASH
|
||||
export const sendDash = (requestObject) => {
|
||||
const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node];
|
||||
|
||||
return request(`/crosschain/dash/send?apiKey=${myNode.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Accept': 'application/json',
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(requestObject)
|
||||
})
|
||||
}
|
||||
|
||||
// Send FIRO
|
||||
export const sendFiro = (requestObject) => {
|
||||
const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node];
|
||||
|
||||
return request(`/crosschain/firo/send?apiKey=${myNode.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Accept': 'application/json',
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(requestObject)
|
||||
})
|
||||
}
|
||||
|
@ -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');
|
||||
}
|
||||
@ -354,6 +358,18 @@ class TradePortal extends LitElement {
|
||||
background-image: url('/img/qortrvn.png');
|
||||
}
|
||||
|
||||
.nmc.coinName:before {
|
||||
background-image: url('/img/qortnmc.png');
|
||||
}
|
||||
|
||||
.dash.coinName:before {
|
||||
background-image: url('/img/qortdash.png');
|
||||
}
|
||||
|
||||
.firo.coinName:before {
|
||||
background-image: url('/img/qortfiro.png');
|
||||
}
|
||||
|
||||
.coinName {
|
||||
display: inline-block;
|
||||
height: 26px;
|
||||
@ -423,6 +439,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",
|
||||
@ -467,7 +499,8 @@ class TradePortal extends LitElement {
|
||||
myOfferingOrders: [],
|
||||
openTradeOrders: null,
|
||||
tradeOffersSocketCounter: 1,
|
||||
coinAmount: this.amountString
|
||||
coinAmount: this.amountString,
|
||||
tradeFee: "~0.0005"
|
||||
}
|
||||
|
||||
let ravencoin = {
|
||||
@ -482,21 +515,79 @@ class TradePortal extends LitElement {
|
||||
myOfferingOrders: [],
|
||||
openTradeOrders: null,
|
||||
tradeOffersSocketCounter: 1,
|
||||
coinAmount: this.amountString
|
||||
coinAmount: this.amountString,
|
||||
tradeFee: "~0.015"
|
||||
}
|
||||
|
||||
let namecoin = {
|
||||
name: "NAMECOIN",
|
||||
balance: "0",
|
||||
coinCode: "NMC",
|
||||
openOrders: [],
|
||||
openFilteredOrders: [],
|
||||
historicTrades: [],
|
||||
myOrders: [],
|
||||
myHistoricTrades: [],
|
||||
myOfferingOrders: [],
|
||||
openTradeOrders: null,
|
||||
tradeOffersSocketCounter: 1,
|
||||
coinAmount: this.amountString,
|
||||
tradeFee: "~0.005"
|
||||
}
|
||||
|
||||
let dash = {
|
||||
name: "DASH",
|
||||
balance: "0",
|
||||
coinCode: "DASH",
|
||||
openOrders: [],
|
||||
openFilteredOrders: [],
|
||||
historicTrades: [],
|
||||
myOrders: [],
|
||||
myHistoricTrades: [],
|
||||
myOfferingOrders: [],
|
||||
openTradeOrders: null,
|
||||
tradeOffersSocketCounter: 1,
|
||||
coinAmount: this.amountString,
|
||||
tradeFee: "~0.000015"
|
||||
}
|
||||
|
||||
let firo = {
|
||||
name: "FIRO",
|
||||
balance: "0",
|
||||
coinCode: "FIRO",
|
||||
openOrders: [],
|
||||
openFilteredOrders: [],
|
||||
historicTrades: [],
|
||||
myOrders: [],
|
||||
myHistoricTrades: [],
|
||||
myOfferingOrders: [],
|
||||
openTradeOrders: null,
|
||||
tradeOffersSocketCounter: 1,
|
||||
coinAmount: this.amountString,
|
||||
tradeFee: "~0.000015"
|
||||
}
|
||||
|
||||
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)
|
||||
this.listedCoins.set("RAVENCOIN", ravencoin)
|
||||
this.listedCoins.set("NAMECOIN", namecoin)
|
||||
this.listedCoins.set("DASH", dash)
|
||||
this.listedCoins.set("FIRO", firo)
|
||||
|
||||
workers.set("QORTAL", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
workers.set("BITCOIN", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
workers.set("LITECOIN", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
@ -517,6 +608,21 @@ class TradePortal extends LitElement {
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
workers.set("NAMECOIN", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
workers.set("DASH", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
workers.set("FIRO", {
|
||||
tradesConnectedWorker: null,
|
||||
handleStuckTradesConnectedWorker: null
|
||||
})
|
||||
|
||||
this.selectedCoin = "LITECOIN"
|
||||
this.selectedAddress = {}
|
||||
this.config = {}
|
||||
@ -900,9 +1006,13 @@ class TradePortal extends LitElement {
|
||||
<h2 style="margin: 0 0 15px 0; line-height: 50px; display: inline;">Qortal ${translate("tradepage.tchange1")} - </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>
|
||||
<mwc-list-item value="NAMECOIN"><span class="coinName nmc" style="color: var(--black);">QORT / NMC</span></mwc-list-item>
|
||||
<mwc-list-item value="DASH"><span class="coinName dash" style="color: var(--black);">QORT / DASH</span></mwc-list-item>
|
||||
<mwc-list-item value="FIRO"><span class="coinName firo" style="color: var(--black);">QORT / FIRO</span></mwc-list-item>
|
||||
</mwc-select>
|
||||
</div>
|
||||
<div id="trade-portal">
|
||||
@ -1057,6 +1167,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
|
||||
@ -1072,6 +1186,18 @@ class TradePortal extends LitElement {
|
||||
case 'RAVENCOIN':
|
||||
_url = `/crosschain/rvn/walletbalance?apiKey=${this.getApiKey()}`
|
||||
_body = window.parent.reduxStore.getState().app.selectedAddress.rvnWallet.derivedMasterPublicKey
|
||||
break
|
||||
case 'NAMECOIN':
|
||||
_url = `/crosschain/nmc/walletbalance?apiKey=${this.getApiKey()}`
|
||||
_body = window.parent.reduxStore.getState().app.selectedAddress.nmcWallet.derivedMasterPublicKey
|
||||
break
|
||||
case 'DASH':
|
||||
_url = `/crosschain/dash/walletbalance?apiKey=${this.getApiKey()}`
|
||||
_body = window.parent.reduxStore.getState().app.selectedAddress.dashWallet.derivedMasterPublicKey
|
||||
break
|
||||
case 'FIRO':
|
||||
_url = `/crosschain/firo/walletbalance?apiKey=${this.getApiKey()}`
|
||||
_body = window.parent.reduxStore.getState().app.selectedAddress.firoWallet.derivedMasterPublicKey
|
||||
break
|
||||
default:
|
||||
break
|
||||
@ -1310,23 +1436,19 @@ class TradePortal extends LitElement {
|
||||
processTradeBotStates(tradeStates) {
|
||||
|
||||
/**
|
||||
* 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
|
||||
*
|
||||
* @param {[{}]} states
|
||||
*/
|
||||
* BitcoinACCTv1 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 BitcoinACCTv1 = (states) => {
|
||||
// Reverse the states
|
||||
@ -1337,24 +1459,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') {
|
||||
@ -1536,6 +1650,135 @@ class TradePortal extends LitElement {
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* NamecoinACCTv1 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 NamecoinACCTv1 = (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)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* DashACCTv1 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 DashACCTv1 = (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)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* FiroACCTv1 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 FiroACCTv1 = (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) {
|
||||
case 'BITCOIN':
|
||||
BitcoinACCTv1(tradeStates)
|
||||
@ -1552,6 +1795,15 @@ class TradePortal extends LitElement {
|
||||
case 'RAVENCOIN':
|
||||
RavencoinACCTv1(tradeStates)
|
||||
break
|
||||
case 'NAMECOIN':
|
||||
NamecoinACCTv1(tradeStates)
|
||||
break
|
||||
case 'DASH':
|
||||
DashACCTv1(tradeStates)
|
||||
break
|
||||
case 'FIRO':
|
||||
FiroACCTv1(tradeStates)
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
@ -1835,6 +2087,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
|
||||
@ -1846,6 +2101,15 @@ class TradePortal extends LitElement {
|
||||
break
|
||||
case 'RAVENCOIN':
|
||||
_receivingAddress = this.selectedAddress.rvnWallet.address
|
||||
break
|
||||
case 'NAMECOIN':
|
||||
_receivingAddress = this.selectedAddress.nmcWallet.address
|
||||
break
|
||||
case 'DASH':
|
||||
_receivingAddress = this.selectedAddress.dashWallet.address
|
||||
break
|
||||
case 'FIRO':
|
||||
_receivingAddress = this.selectedAddress.firoWallet.address
|
||||
break
|
||||
default:
|
||||
break
|
||||
@ -1901,6 +2165,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
|
||||
@ -1912,6 +2179,15 @@ class TradePortal extends LitElement {
|
||||
break
|
||||
case 'RAVENCOIN':
|
||||
_foreignKey = this.selectedAddress.rvnWallet.derivedMasterPrivateKey
|
||||
break
|
||||
case 'NAMECOIN':
|
||||
_foreignKey = this.selectedAddress.nmcWallet.derivedMasterPrivateKey
|
||||
break
|
||||
case 'DASH':
|
||||
_foreignKey = this.selectedAddress.dashWallet.derivedMasterPrivateKey
|
||||
break
|
||||
case 'FIRO':
|
||||
_foreignKey = this.selectedAddress.firoWallet.derivedMasterPrivateKey
|
||||
break
|
||||
default:
|
||||
break
|
||||
|