status-desktop/ui/app/AppLayouts/Wallet/panels/WalletTxProgressBlock.qml
Lukáš Tinkl 8791d028e6 feat: Integrate the new manage assets/collectibles panels into Settings
- display a customized floating bubble to save/apply the settings
- display a toast message on Apply with an action to jump to Wallet main
page
- add home/end/pgup/pgdown keyboard shortcuts to StatusScrollView to be
able to navigate more easily in long list views
- some smaller fixes and cleanups in wallet and settings related views

Fixes https://github.com/status-im/status-desktop/issues/12762
2023-11-22 18:29:31 +01:00

117 lines
3.3 KiB
QML

import QtQuick 2.13
import QtQuick.Layouts 1.13
import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1
import utils 1.0
import shared.panels 1.0
import "../controls"
ColumnLayout {
id: root
property bool error: false
property bool pending: false
property int outNetworkLayer: 0
property int inNetworkLayer: 0
property double outNetworkTimestamp: 0
property double inNetworkTimestamp: 0
property string outChainName
property string inChainName
property int outNetworkConfirmations: 0
property int inNetworkConfirmations: 0
spacing: 32
StatusTxProgressBar {
id: progressBarOut
Layout.topMargin: 8
Layout.fillWidth: true
error: root.error
networkLayer: root.outNetworkLayer
confirmations: root.outNetworkConfirmations
timestamp: root.outNetworkTimestamp
chainName: root.outChainName
}
TextColumn {
visible: progressBarOut.isValid && progressBarOut.error
text: qsTr("Failed on %1").arg(progressBarOut.chainName)
timestamp: progressBarOut.timestamp
}
StatusTxProgressBar {
id: progressBarIn
Layout.topMargin: 8
Layout.fillWidth: true
error: root.error
networkLayer: root.inNetworkLayer
confirmations: root.inNetworkConfirmations
timestamp: root.inNetworkTimestamp
chainName: root.inChainName
}
TextColumn {
visible: progressBarOut.isValid && progressBarOut.confirmed
text: qsTr("Confirmed on %1").arg(progressBarOut.chainName)
timestamp: progressBarOut.confirmationTimeStamp
}
TextColumn {
visible: progressBarIn.isValid && progressBarIn.confirmed
text: qsTr("Confirmed on %1").arg(progressBarIn.chainName)
timestamp: progressBarIn.confirmationTimeStamp
}
TextColumn {
visible: progressBarOut.isValid && progressBarOut.finalized
text: qsTr("Finalised on %1").arg(progressBarOut.chainName)
timestamp: progressBarOut.finalisationTimeStamp
}
TextColumn {
visible: progressBarIn.isValid && progressBarIn.finalized
text: qsTr("Finalised on %1").arg(progressBarIn.chainName)
timestamp: progressBarIn.finalisationTimeStamp
}
TextColumn {
visible: progressBarIn.isValid && progressBarIn.error
text: qsTr("Failed on %1").arg(progressBarIn.chainName)
timestamp: progressBarIn.timestamp
}
component TextColumn: Column {
id: textColumn
property string text
property int timestamp
spacing: 4
StatusBaseText {
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
font.pixelSize: 13
color: Theme.palette.baseColor1
lineHeight: 18
lineHeightMode: Text.FixedHeight
text: textColumn.text
}
StatusBaseText {
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
font.pixelSize: 13
color: Theme.palette.directColor1
lineHeight: 18
lineHeightMode: Text.FixedHeight
text: textColumn.timestamp > 0 ? LocaleUtils.formatDateTime(textColumn.timestamp * 1000, Locale.LongFormat) : ""
}
}
}