mirror of
https://github.com/status-im/status-desktop.git
synced 2025-01-14 00:27:40 +00:00
fix(@desktop/wallet): Wrong Password error should not be handled in the SendModal
fixes #8527
This commit is contained in:
parent
c3dbe66e02
commit
0c7442d696
@ -20,6 +20,8 @@ logScope:
|
||||
|
||||
include ../../../../../app_service/common/json_utils
|
||||
|
||||
const cancelledRequest* = "cancelled"
|
||||
|
||||
# Shouldn't be public ever, user only within this module.
|
||||
type TmpSendEnsTransactionDetails = object
|
||||
ensUsername: string
|
||||
@ -359,6 +361,10 @@ method setPrefferedEnsUsername*(self: Module, ensUsername: string) =
|
||||
self.controller.setPreferredName(ensUsername)
|
||||
|
||||
method onUserAuthenticated*(self: Module, password: string) =
|
||||
if password.len == 0:
|
||||
let response = %* {"success": false, "result": cancelledRequest}
|
||||
self.view.emitTransactionWasSentSignal($response)
|
||||
else:
|
||||
if self.tmpSendEnsTransactionDetails.isRegistration:
|
||||
self.registerEns(password)
|
||||
elif self.tmpSendEnsTransactionDetails.isRelease:
|
||||
|
@ -11,6 +11,8 @@ import ../../../../app_service/service/wallet_account/service as wallet_account_
|
||||
|
||||
export io_interface
|
||||
|
||||
const cancelledRequest* = "cancelled"
|
||||
|
||||
# Shouldn't be public ever, user only within this module.
|
||||
type TmpBuyStickersTransactionDetails = object
|
||||
packId: string
|
||||
@ -101,6 +103,10 @@ method authenticateAndBuy*(self: Module, packId: string, address: string, gas: s
|
||||
##################################
|
||||
|
||||
method onUserAuthenticated*(self: Module, password: string) =
|
||||
if password.len == 0:
|
||||
let response = %* {"success": false, "error": cancelledRequest}
|
||||
self.view.transactionWasSent($response)
|
||||
else:
|
||||
let responseTuple = self.controller.buy(
|
||||
self.tmpBuyStickersTransactionDetails.packId,
|
||||
self.tmpBuyStickersTransactionDetails.address,
|
||||
|
@ -1,4 +1,4 @@
|
||||
import NimQml, stint
|
||||
import NimQml, stint, json
|
||||
|
||||
import ./io_interface, ./view, ./controller
|
||||
import ../io_interface as delegate_interface
|
||||
@ -10,6 +10,8 @@ import ../../../../../app_service/service/network/service as network_service
|
||||
|
||||
export io_interface
|
||||
|
||||
const cancelledRequest* = "cancelled"
|
||||
|
||||
# Shouldn't be public ever, user only within this module.
|
||||
type TmpSendTransactionDetails = object
|
||||
fromAddr: string
|
||||
@ -135,6 +137,10 @@ method authenticateAndTransfer*(self: Module, from_addr: string, to_addr: string
|
||||
##################################
|
||||
|
||||
method onUserAuthenticated*(self: Module, password: string) =
|
||||
if password.len == 0:
|
||||
let response = %* {"uuid": self.tmpSendTransactionDetails.uuid, "success": false, "error": cancelledRequest}
|
||||
self.view.transactionWasSent($response)
|
||||
else:
|
||||
self.controller.transfer(self.tmpSendTransactionDetails.fromAddr, self.tmpSendTransactionDetails.toAddr,
|
||||
self.tmpSendTransactionDetails.tokenSymbol, self.tmpSendTransactionDetails.value, self.tmpSendTransactionDetails.uuid,
|
||||
self.tmpSendTransactionDetails.priority, self.tmpSendTransactionDetails.selectedRoutes, password)
|
||||
|
@ -150,8 +150,7 @@ Item {
|
||||
try {
|
||||
let response = JSON.parse(txResult)
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.result)) {
|
||||
releaseEnsModal.setSendTxError()
|
||||
if (response.result.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
releaseEnsModal.sendingError.text = response.result
|
||||
|
@ -101,8 +101,7 @@ Item {
|
||||
try {
|
||||
let response = JSON.parse(txResult)
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.result)) {
|
||||
releaseEnsModal.setSendTxError()
|
||||
if (response.result.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
releaseEnsModal.sendingError.text = response.result
|
||||
|
@ -90,8 +90,7 @@ Item {
|
||||
try {
|
||||
let response = JSON.parse(txResult)
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.result)) {
|
||||
buyEnsModal.setSendTxError()
|
||||
if (response.result.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
buyEnsModal.sendingError.text = response.result
|
||||
|
@ -69,7 +69,6 @@ StatusDialog {
|
||||
}
|
||||
|
||||
property var recalculateRoutesAndFees: Backpressure.debounce(popup, 600, function() {
|
||||
d.sendTxError = false
|
||||
if(!!popup.selectedAccount && !!assetSelector.selectedAsset) {
|
||||
popup.isLoading = true
|
||||
let amount = parseFloat(amountToSendInput.text) * Math.pow(10, assetSelector.selectedAsset.decimals)
|
||||
@ -79,11 +78,6 @@ StatusDialog {
|
||||
}
|
||||
})
|
||||
|
||||
function setSendTxError() {
|
||||
d.sendTxError = true
|
||||
d.sendTxErrorString = qsTr("Wrong password")
|
||||
}
|
||||
|
||||
QtObject {
|
||||
id: d
|
||||
readonly property double maxFiatBalance: assetSelector.selectedAsset ? assetSelector.selectedAsset.totalBalance: 0
|
||||
@ -102,8 +96,7 @@ StatusDialog {
|
||||
property string resolvedENSAddress
|
||||
readonly property string uuid: Utils.uuid()
|
||||
property bool isPendingTx: false
|
||||
property bool sendTxError: false
|
||||
property string sendTxErrorString
|
||||
property var preferredChainIds: []
|
||||
|
||||
property Timer waitTimer: Timer {
|
||||
interval: 1000
|
||||
@ -195,13 +188,14 @@ StatusDialog {
|
||||
|
||||
Rectangle {
|
||||
Layout.preferredWidth: parent.width
|
||||
Layout.preferredHeight: assetAndAmmountSelector.height + Style.current.padding
|
||||
Layout.preferredHeight: assetAndAmmountSelector.height + Style.current.halfPadding
|
||||
color: Theme.palette.baseColor3
|
||||
z: 100
|
||||
|
||||
layer.enabled: scrollView.contentY > 0
|
||||
layer.effect: DropShadow {
|
||||
verticalOffset: 2
|
||||
radius: 16
|
||||
verticalOffset: 0
|
||||
radius: 8
|
||||
samples: 17
|
||||
color: Theme.palette.dropShadow
|
||||
}
|
||||
@ -226,11 +220,11 @@ StatusDialog {
|
||||
StatusListItemTag {
|
||||
height: 22
|
||||
width: childrenRect.width
|
||||
title: d.sendTxError ? d.sendTxErrorString : d.maxFiatBalance > 0 ? qsTr("Max: %1").arg(LocaleUtils.numberToLocaleString(d.maxFiatBalance)) : qsTr("No balances active")
|
||||
title: d.maxFiatBalance > 0 ? qsTr("Max: %1").arg(LocaleUtils.numberToLocaleString(d.maxFiatBalance)) : qsTr("No balances active")
|
||||
closeButtonVisible: false
|
||||
titleText.font.pixelSize: 12
|
||||
color: d.errorMode || d.sendTxError ? Theme.palette.dangerColor2 : Theme.palette.primaryColor3
|
||||
titleText.color: d.errorMode || d.sendTxError ? Theme.palette.dangerColor1 : Theme.palette.primaryColor1
|
||||
color: d.errorMode ? Theme.palette.dangerColor2 : Theme.palette.primaryColor3
|
||||
titleText.color: d.errorMode ? Theme.palette.dangerColor1 : Theme.palette.primaryColor1
|
||||
}
|
||||
}
|
||||
Item {
|
||||
@ -532,9 +526,7 @@ StatusDialog {
|
||||
if (response.uuid !== d.uuid) return
|
||||
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.error)) {
|
||||
d.sendTxError = true
|
||||
d.sendTxErrorString = qsTr("Wrong password")
|
||||
if (response.error.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
sendingError.text = response.error
|
||||
|
@ -193,8 +193,7 @@ Item {
|
||||
try {
|
||||
let response = JSON.parse(txResult)
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.result)) {
|
||||
buyStickersModal.setSendTxError()
|
||||
if (response.result.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
buyStickersModal.sendingError.text = response.result
|
||||
|
@ -106,8 +106,7 @@ ModalPopup {
|
||||
try {
|
||||
let response = JSON.parse(txResult)
|
||||
if (!response.success) {
|
||||
if (Utils.isInvalidPasswordMessage(response.result)) {
|
||||
buyStickersPackModal.setSendTxError()
|
||||
if (response.result.includes(Constants.walletSection.cancelledMessage)) {
|
||||
return
|
||||
}
|
||||
buyStickersPackModal.sendingError.text = response.result
|
||||
|
@ -121,10 +121,10 @@ Item {
|
||||
spacing: 12
|
||||
StatusBaseText {
|
||||
Layout.alignment: Qt.AlignRight
|
||||
Layout.maximumWidth: 70
|
||||
Layout.maximumWidth: 100
|
||||
font.pixelSize: 10
|
||||
color: Theme.palette.baseColor1
|
||||
text: selectedAccount.address
|
||||
text: StatusQUtils.Utils.elideText(selectedAccount.address, 6, 4).toUpperCase()
|
||||
elide: Text.ElideMiddle
|
||||
}
|
||||
Repeater {
|
||||
|
@ -715,4 +715,8 @@ QtObject {
|
||||
StickersBuy,
|
||||
Bridge
|
||||
}
|
||||
|
||||
readonly property QtObject walletSection: QtObject {
|
||||
readonly property string cancelledMessage: "cancelled"
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user