2023-11-29 15:48:33 +00:00
|
|
|
import QtQuick 2.15
|
|
|
|
import QtQuick.Layouts 1.15
|
|
|
|
import QtQuick.Controls 2.15
|
|
|
|
|
2024-01-17 20:19:58 +00:00
|
|
|
import StatusQ 0.1
|
2023-11-29 15:48:33 +00:00
|
|
|
import StatusQ.Core 0.1
|
2024-01-17 20:19:58 +00:00
|
|
|
import StatusQ.Core.Utils 0.1 as SQUtils
|
2023-11-29 15:48:33 +00:00
|
|
|
|
|
|
|
import mainui 1.0
|
|
|
|
import utils 1.0
|
|
|
|
|
|
|
|
import AppLayouts.Wallet.views 1.0
|
2024-01-29 15:37:17 +00:00
|
|
|
import AppLayouts.Wallet.stores 1.0
|
2023-11-29 15:48:33 +00:00
|
|
|
|
|
|
|
import shared.views 1.0
|
|
|
|
|
|
|
|
import Storybook 1.0
|
|
|
|
import Models 1.0
|
|
|
|
|
|
|
|
SplitView {
|
|
|
|
id: root
|
|
|
|
|
|
|
|
Logs { id: logs }
|
|
|
|
|
|
|
|
orientation: Qt.Horizontal
|
|
|
|
|
|
|
|
ManageCollectiblesModel {
|
|
|
|
id: collectiblesModel
|
2023-12-18 10:12:57 +00:00
|
|
|
includeRegularCollectibles: ctrlIncludeRegularCollectibles.checked
|
|
|
|
includeCommunityCollectibles: ctrlIncludeCommunityCollectibles.checked
|
2023-11-29 15:48:33 +00:00
|
|
|
}
|
|
|
|
|
2024-01-29 18:02:59 +00:00
|
|
|
RolesRenamingModel {
|
|
|
|
id: renamedModel
|
|
|
|
sourceModel: collectiblesModel
|
|
|
|
|
|
|
|
mapping: [
|
|
|
|
RoleRename {
|
|
|
|
from: "uid"
|
|
|
|
to: "symbol"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
|
2023-11-29 15:48:33 +00:00
|
|
|
Popups {
|
|
|
|
popupParent: root
|
|
|
|
rootStore: QtObject {}
|
|
|
|
communityTokensStore: QtObject {}
|
2024-01-29 15:37:17 +00:00
|
|
|
walletCollectiblesStore: CollectiblesStore {
|
|
|
|
manageCollectiblesController: collectiblesView.controller
|
|
|
|
}
|
2023-11-29 15:48:33 +00:00
|
|
|
}
|
|
|
|
|
2024-01-17 20:19:58 +00:00
|
|
|
QtObject {
|
|
|
|
id: d
|
|
|
|
readonly property string networksChainsCurrentlySelected: {
|
|
|
|
let supportNwChains = ":"
|
|
|
|
for (let i =0; i< networksRepeater.count; i++) {
|
|
|
|
if (networksRepeater.itemAt(i).checked && networksRepeater.itemAt(i).visible)
|
|
|
|
supportNwChains += networksRepeater.itemAt(i).chainID + ":"
|
|
|
|
}
|
|
|
|
return supportNwChains
|
|
|
|
}
|
|
|
|
|
|
|
|
readonly property string addressesSelected: {
|
|
|
|
let supportedAddresses = ""
|
|
|
|
for (let i =0; i< accountsRepeater.count; i++) {
|
|
|
|
if (accountsRepeater.itemAt(i).checked && accountsRepeater.itemAt(i).visible)
|
|
|
|
supportedAddresses += accountsRepeater.itemAt(i).address + ":"
|
|
|
|
}
|
|
|
|
return supportedAddresses
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-11-29 15:48:33 +00:00
|
|
|
CollectiblesView {
|
2024-01-29 15:37:17 +00:00
|
|
|
id: collectiblesView
|
2024-01-24 12:06:44 +00:00
|
|
|
|
|
|
|
SplitView.fillWidth: true
|
2023-11-29 15:48:33 +00:00
|
|
|
SplitView.fillHeight: true
|
2024-01-24 12:06:44 +00:00
|
|
|
|
2024-01-29 18:02:59 +00:00
|
|
|
collectiblesModel: renamedModel
|
2024-01-17 20:19:58 +00:00
|
|
|
networkFilters: d.networksChainsCurrentlySelected
|
|
|
|
addressFilters: d.addressesSelected
|
2023-12-06 10:54:36 +00:00
|
|
|
filterVisible: ctrlFilterVisible.checked
|
2023-11-29 15:48:33 +00:00
|
|
|
onCollectibleClicked: logs.logEvent("onCollectibleClicked", ["chainId", "contractAddress", "tokenId", "uid"], arguments)
|
|
|
|
onSendRequested: logs.logEvent("onSendRequested", ["symbol"], arguments)
|
|
|
|
onReceiveRequested: logs.logEvent("onReceiveRequested", ["symbol"], arguments)
|
|
|
|
onSwitchToCommunityRequested: logs.logEvent("onSwitchToCommunityRequested", ["communityId"], arguments)
|
|
|
|
onManageTokensRequested: logs.logEvent("onManageTokensRequested")
|
|
|
|
}
|
|
|
|
|
2024-01-24 12:06:44 +00:00
|
|
|
LogsAndControlsPanel {
|
|
|
|
id: logsAndControlsPanel
|
|
|
|
|
2024-01-17 20:19:58 +00:00
|
|
|
SplitView.minimumWidth: 300
|
|
|
|
SplitView.preferredWidth: 300
|
2023-11-29 15:48:33 +00:00
|
|
|
|
2024-01-24 12:06:44 +00:00
|
|
|
logsView.logText: logs.logText
|
|
|
|
|
2023-11-29 15:48:33 +00:00
|
|
|
ColumnLayout {
|
2024-01-17 20:19:58 +00:00
|
|
|
spacing: 12
|
|
|
|
anchors.fill: parent
|
|
|
|
|
2023-12-06 10:54:36 +00:00
|
|
|
Switch {
|
|
|
|
id: ctrlFilterVisible
|
|
|
|
text: "Filter visible"
|
|
|
|
checked: true
|
|
|
|
}
|
2023-11-29 15:48:33 +00:00
|
|
|
Switch {
|
2023-12-18 10:12:57 +00:00
|
|
|
id: ctrlIncludeRegularCollectibles
|
|
|
|
text: "Regular collectibles"
|
|
|
|
checked: true
|
|
|
|
}
|
|
|
|
Switch {
|
|
|
|
id: ctrlIncludeCommunityCollectibles
|
|
|
|
text: "Community collectibles"
|
|
|
|
checked: true
|
2023-11-29 15:48:33 +00:00
|
|
|
}
|
2024-01-17 20:19:58 +00:00
|
|
|
|
|
|
|
CheckBox {
|
|
|
|
id: loadingCheckbox
|
|
|
|
checked: false
|
|
|
|
text: "loading"
|
|
|
|
}
|
|
|
|
|
|
|
|
ColumnLayout {
|
|
|
|
Layout.fillWidth: true
|
|
|
|
Text {
|
|
|
|
text: "select supported network(s)"
|
|
|
|
}
|
|
|
|
Repeater {
|
|
|
|
id: networksRepeater
|
|
|
|
model: NetworksModel.allNetworks
|
|
|
|
delegate: CheckBox {
|
|
|
|
property int chainID: chainId
|
|
|
|
width: parent.width
|
|
|
|
text: chainName
|
|
|
|
visible: isTest
|
|
|
|
checked: true
|
|
|
|
onToggled: {
|
|
|
|
isEnabled = checked
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
ColumnLayout {
|
|
|
|
Layout.fillWidth: true
|
|
|
|
Text {
|
|
|
|
text: "select account(s)"
|
|
|
|
}
|
|
|
|
Repeater {
|
|
|
|
id: accountsRepeater
|
|
|
|
model: WalletAccountsModel {}
|
|
|
|
delegate: CheckBox {
|
|
|
|
property string address: model.address
|
|
|
|
checked: true
|
|
|
|
visible: index<2
|
|
|
|
width: parent.width
|
|
|
|
text: name
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-01-24 12:06:44 +00:00
|
|
|
Item {
|
|
|
|
Layout.fillHeight: true
|
|
|
|
}
|
|
|
|
}
|
2024-01-17 20:19:58 +00:00
|
|
|
}
|
2023-11-29 15:48:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// category: Views
|
|
|
|
// https://www.figma.com/file/idUoxN7OIW2Jpp3PMJ1Rl8/%E2%9A%99%EF%B8%8F-Settings-%7C-Desktop?type=design&node-id=19558-95270&mode=design&t=ShZOuMRfiIIl2aR8-0
|
|
|
|
// https://www.figma.com/file/idUoxN7OIW2Jpp3PMJ1Rl8/%E2%9A%99%EF%B8%8F-Settings-%7C-Desktop?type=design&node-id=19558-96427&mode=design&t=ShZOuMRfiIIl2aR8-0
|
2023-12-06 10:54:36 +00:00
|
|
|
// https://www.figma.com/file/FkFClTCYKf83RJWoifWgoX/Wallet-v2?node-id=19087%3A293357&mode=dev
|