56 lines
2.5 KiB
QML
56 lines
2.5 KiB
QML
import QtQuick 2.15
|
|
|
|
import StatusQ 0.1
|
|
import StatusQ.Core.Utils 0.1
|
|
|
|
QtObject {
|
|
id: root
|
|
|
|
/* TODO: all of these should come from their respective stores once the stores are reworked and
|
|
streamlined. This store should contain only swap specific properties/methods if any */
|
|
readonly property var accounts: walletSectionAccounts.accounts
|
|
readonly property var flatNetworks: networksModule.flatNetworks
|
|
readonly property bool areTestNetworksEnabled: networksModule.areTestNetworksEnabled
|
|
|
|
/* TODO: Send module should be reworked into a lighter, generic, "stateless" module.
|
|
Remove these and use the new TransactorStore in SwapModalAdaptor when that happens. */
|
|
readonly property var walletSectionSendInst: walletSectionSend
|
|
|
|
signal suggestedRoutesReady(var txRoutes, string errCode, string errDescription)
|
|
signal transactionSent(var uuid, var chainId, var approvalTx, var txHash, var error)
|
|
signal transactionSendingComplete(var txHash, var success)
|
|
|
|
readonly property Connections walletSectionSendConnections: Connections {
|
|
target: root.walletSectionSendInst
|
|
function onSuggestedRoutesReady(txRoutes, errCode, errDescription) {
|
|
root.suggestedRoutesReady(txRoutes, errCode, errDescription)
|
|
}
|
|
function onTransactionSent(uuid, chainId, approvalTx, txHash, error) {
|
|
root.transactionSent(uuid, chainId, approvalTx, txHash, error)
|
|
}
|
|
function onTransactionSendingComplete(txHash, success) {
|
|
root.transactionSendingComplete(txHash, success)
|
|
}
|
|
}
|
|
|
|
function fetchSuggestedRoutes(uuid, accountFrom, accountTo, amountIn, amountOut, tokenFrom, tokenTo,
|
|
disabledFromChainIDs, disabledToChainIDs, sendType, lockedInAmounts) {
|
|
const valueIn = AmountsArithmetic.fromNumber(amountIn)
|
|
const valueOut = AmountsArithmetic.fromNumber(amountOut)
|
|
root.walletSectionSendInst.fetchSuggestedRoutesWithParameters(uuid, accountFrom, accountTo, valueIn.toFixed(), valueOut.toFixed(),
|
|
tokenFrom, tokenTo, disabledFromChainIDs, disabledToChainIDs, sendType, lockedInAmounts)
|
|
}
|
|
|
|
function stopUpdatesForSuggestedRoute() {
|
|
root.walletSectionSendInst.stopUpdatesForSuggestedRoute()
|
|
}
|
|
|
|
function authenticateAndTransfer(uuid, slippagePercentage) {
|
|
root.walletSectionSendInst.authenticateAndTransfer(uuid, slippagePercentage)
|
|
}
|
|
|
|
function getWei2Eth(wei, decimals) {
|
|
return globalUtils.wei2Eth(wei, decimals)
|
|
}
|
|
}
|