diff --git a/src/app/modules/main/networks/item.nim b/src/app/modules/main/networks/item.nim index 36ea3ea5b7..ae75a6e82c 100644 --- a/src/app/modules/main/networks/item.nim +++ b/src/app/modules/main/networks/item.nim @@ -12,7 +12,10 @@ type nativeCurrencySymbol: string isTest: bool isEnabled: bool - + iconUrl: string + chainColor: string + shortName: string + proc initItem*( chainId: int, nativeCurrencyDecimals: int, @@ -24,6 +27,9 @@ proc initItem*( nativeCurrencySymbol: string, isTest: bool, isEnabled: bool, + iconUrl: string, + chainColor: string, + shortName: string, ): Item = result.chainId = chainId result.nativeCurrencyDecimals = nativeCurrencyDecimals @@ -35,6 +41,9 @@ proc initItem*( result.nativeCurrencySymbol = nativeCurrencySymbol result.isTest = isTest result.isEnabled = isEnabled + result.iconUrl = iconUrl + result.chainColor = chainColor + result.shortName = shortName proc `$`*(self: Item): string = result = fmt"""NetworkItem( @@ -46,8 +55,11 @@ proc `$`*(self: Item): string = blockExplorerURL:{self.blockExplorerURL}, nativeCurrencyName:{self.nativeCurrencyName}, nativeCurrencySymbol:{self.nativeCurrencySymbol}, - isTest:{self.isTest} - isEnabled:{self.isEnabled} + isTest:{self.isTest}, + isEnabled:{self.isEnabled}, + iconUrl:{self.iconUrl}, + shortName: {self.shortName}, + chainColor: {self.chainColor}, ]""" proc getChainId*(self: Item): int = @@ -78,4 +90,13 @@ proc getIsTest*(self: Item): bool = return self.isTest proc getIsEnabled*(self: Item): bool = - return self.isEnabled \ No newline at end of file + return self.isEnabled + +proc getIconURL*(self: Item): string = + return self.iconUrl + +proc getShortName*(self: Item): string = + return self.shortName + +proc getChainColor*(self: Item): string = + return self.chainColor diff --git a/src/app/modules/main/networks/model.nim b/src/app/modules/main/networks/model.nim index 42cb7ccb1d..58f5b1b736 100644 --- a/src/app/modules/main/networks/model.nim +++ b/src/app/modules/main/networks/model.nim @@ -14,6 +14,9 @@ type NativeCurrencySymbol IsTest IsEnabled + IconUrl + ChainColor + ShortName QtObject: type @@ -59,6 +62,9 @@ QtObject: ModelRole.NativeCurrencySymbol.int:"nativeCurrencySymbol", ModelRole.IsTest.int:"isTest", ModelRole.IsEnabled.int:"isEnabled", + ModelRole.IconUrl.int:"iconUrl", + ModelRole.ShortName.int: "shortName", + ModelRole.ChainColor.int: "chainColor", }.toTable method data(self: Model, index: QModelIndex, role: int): QVariant = @@ -92,6 +98,12 @@ QtObject: result = newQVariant(item.getIsTest()) of ModelRole.IsEnabled: result = newQVariant(item.getIsEnabled()) + of ModelRole.IconUrl: + result = newQVariant(item.getIconURL()) + of ModelRole.ShortName: + result = newQVariant(item.getShortName()) + of ModelRole.ChainColor: + result = newQVariant(item.getChainColor()) proc setItems*(self: Model, items: seq[Item]) = self.beginResetModel() diff --git a/src/app/modules/main/networks/view.nim b/src/app/modules/main/networks/view.nim index cd28c03441..e59cdfd192 100644 --- a/src/app/modules/main/networks/view.nim +++ b/src/app/modules/main/networks/view.nim @@ -80,6 +80,9 @@ QtObject: n.nativeCurrencySymbol, n.isTest, n.enabled, + n.iconUrl, + n.chainColor, + n.shortName, )) self.layer1.setItems(items.filter(i => i.getLayer() == 1)) self.layer2.setItems(items.filter(i => i.getLayer() == 2)) @@ -97,4 +100,4 @@ QtObject: proc toggleTestNetworksEnabled*(self: View) {.slot.} = self.delegate.toggleTestNetworksEnabled() self.areTestNetworksEnabled = not self.areTestNetworksEnabled - self.areTestNetworksEnabledChanged() \ No newline at end of file + self.areTestNetworksEnabledChanged() diff --git a/src/app_service/common/network_constants.nim b/src/app_service/common/network_constants.nim index dd7cf00aaf..c6684ff2df 100644 --- a/src/app_service/common/network_constants.nim +++ b/src/app_service/common/network_constants.nim @@ -115,7 +115,9 @@ let NETWORKS* = %* [ "chainName": "Mainnet", "rpcUrl": "https://mainnet.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://etherscan.io/", - "iconUrl": "", + "iconUrl": "network/Network=Ethereum", + "chainColor": "#627EEA", + "shortName": "eth", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -128,7 +130,9 @@ let NETWORKS* = %* [ "chainName": "Ropsten", "rpcUrl": "https://ropsten.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://ropsten.etherscan.io/", - "iconUrl": "", + "iconUrl": "network/Network=Tetnet", + "chainColor": "#939BA1", + "shortName": "ropEth", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -141,7 +145,9 @@ let NETWORKS* = %* [ "chainName": "Rinkeby", "rpcUrl": "https://rinkeby.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://rinkeby.etherscan.io/", - "iconUrl": "", + "iconUrl": "network/Network=Tetnet", + "chainColor": "#939BA1", + "shortName": "rinEth", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -154,7 +160,9 @@ let NETWORKS* = %* [ "chainName": "Goerli", "rpcUrl": "http://goerli.blockscout.com/", "blockExplorerUrl": "https://goerli.etherscan.io/", - "iconUrl": "", + "iconUrl": "network/Network=Tetnet", + "chainColor": "#939BA1", + "shortName": "goeEth", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -167,7 +175,9 @@ let NETWORKS* = %* [ "chainName": "Optimism", "rpcUrl": "https://optimism-mainnet.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://optimistic.etherscan.io", - "iconUrl": "", + "iconUrl": "network/Network=Optimism", + "chainColor": "#E90101", + "shortName": "opt", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -180,7 +190,9 @@ let NETWORKS* = %* [ "chainName": "Optimism Kovan", "rpcUrl": "https://optimism-kovan.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://kovan-optimistic.etherscan.io", - "iconUrl": "", + "iconUrl": "network/Network=Tetnet", + "chainColor": "#939BA1", + "shortName": "kovOpt", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -193,7 +205,9 @@ let NETWORKS* = %* [ "chainName": "Arbitrum", "rpcUrl": "https://arbitrum-mainnet.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": "https://arbiscan.io/", - "iconUrl": "", + "iconUrl": "network/Network=Arbitrum", + "chainColor": "#51D0F0", + "shortName": "arb", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, @@ -206,7 +220,9 @@ let NETWORKS* = %* [ "chainName": "Arbitrum Rinkeby", "rpcUrl": "https://arbitrum-rinkeby.infura.io/v3/" & INFURA_TOKEN_RESOLVED, "blockExplorerUrl": " https://testnet.arbiscan.io", - "iconUrl": "", + "iconUrl": "network/Network=Tetnet", + "chainColor": "#939BA1", + "shortName": "rinArb", "nativeCurrencyName": "Ether", "nativeCurrencySymbol": "ETH", "nativeCurrencyDecimals": 18, diff --git a/src/app_service/service/network/dto.nim b/src/app_service/service/network/dto.nim index 50482658c8..6d376cfff0 100644 --- a/src/app_service/service/network/dto.nim +++ b/src/app_service/service/network/dto.nim @@ -15,9 +15,25 @@ type NetworkDto* = ref object nativeCurrencySymbol* {.serializedFieldName("nativeCurrencySymbol").}: string isTest* {.serializedFieldName("isTest").}: bool enabled* {.serializedFieldName("enabled").}: bool + chainColor* {.serializedFieldName("chainColor").}: string + shortName* {.serializedFieldName("shortName").}: string proc `$`*(self: NetworkDto): string = - return fmt"Network(chainId:{self.chainId}, name:{self.chainName}, rpcURL:{self.rpcURL}, isTest:{self.isTest}, enabled:{self.enabled})" + return fmt"""Network( + chainId:{self.chainId}, + nativeCurrencyDecimals:{self.nativeCurrencyDecimals}, + layer:{self.layer}, + chainName:{self.chainName}, + name:{self.chainName}, + rpcURL:{self.rpcURL}, + blockExplorerURL:{self.blockExplorerURL}, + iconURL:{self.iconURL}, + nativeCurrencyName:{self.nativeCurrencyName}, + nativeCurrencySymbol:{self.nativeCurrencySymbol}, + isTest:{self.isTest}, enabled:{self.enabled}, + chainColor:{self.chainColor}, + shortName:{self.shortName} + )""" proc hash*(self: NetworkDto): Hash = return self.chainId.hash diff --git a/src/app_service/service/network/service.nim b/src/app_service/service/network/service.nim index 7db615817f..caa80d0c3f 100644 --- a/src/app_service/service/network/service.nim +++ b/src/app_service/service/network/service.nim @@ -69,6 +69,8 @@ proc upsertNetwork*(self: Service, network: NetworkDto) = nativeCurrencySymbol: network.nativeCurrencySymbol, isTest: network.isTest, enabled: network.enabled, + chainColor: network.chainColor, + shortName: network.shortName, )) self.dirty.store(true) @@ -122,4 +124,4 @@ proc getNetworkForCollectibles*(self: Service): NetworkDto = if self.settingsService.areTestNetworksEnabled(): return self.getNetwork(Rinkeby) - return self.getNetwork(Mainnet) \ No newline at end of file + return self.getNetwork(Mainnet) diff --git a/src/backend/backend.nim b/src/backend/backend.nim index fbf8793dd4..f08f56ee75 100644 --- a/src/backend/backend.nim +++ b/src/backend/backend.nim @@ -38,7 +38,8 @@ type nativeCurrencySymbol* {.serializedFieldName("nativeCurrencySymbol").}: string isTest* {.serializedFieldName("isTest").}: bool enabled* {.serializedFieldName("enabled").}: bool - + chainColor* {.serializedFieldName("chainColor").}: string + shortName* {.serializedFieldName("shortName").}: string rpc(clientVersion, "web3"): discard diff --git a/ui/app/AppLayouts/Profile/controls/WalletNetworkDelegate.qml b/ui/app/AppLayouts/Profile/controls/WalletNetworkDelegate.qml index 9bbaeed533..715a912bfd 100644 --- a/ui/app/AppLayouts/Profile/controls/WalletNetworkDelegate.qml +++ b/ui/app/AppLayouts/Profile/controls/WalletNetworkDelegate.qml @@ -7,7 +7,7 @@ import StatusQ.Core.Theme 0.1 StatusListItem { property var network title: network.chainName - image.source: Style.png("networks/" + network.chainName.toLowerCase()) + image.source: Style.png(network.iconUrl) width: parent.width leftPadding: Style.current.padding rightPadding: Style.current.padding diff --git a/ui/app/AppLayouts/Wallet/popups/NetworkSelectPopup.qml b/ui/app/AppLayouts/Wallet/popups/NetworkSelectPopup.qml index 7539768963..ec2cbd80f1 100644 --- a/ui/app/AppLayouts/Wallet/popups/NetworkSelectPopup.qml +++ b/ui/app/AppLayouts/Wallet/popups/NetworkSelectPopup.qml @@ -59,6 +59,13 @@ Popup { delegate: chainItem } + StatusBaseText { + font.pixelSize: Style.current.primaryTextFontSize + color: Theme.palette.baseColor1 + text: qsTr("Layer 2") + visible: chainRepeater2.count > 0 + } + Repeater { id: chainRepeater2 model: popup.layer2Networks @@ -77,29 +84,24 @@ Popup { Component { id: chainItem - Item { - width: content.width - height: 40 - StatusBaseText { - anchors.left: parent.left - anchors.leftMargin: Style.current.bigPadding - anchors.verticalCenter: parent.verticalCenter - font.pixelSize: Style.current.primaryTextFontSize - text: model.chainName - color: Theme.palette.directColor1 + StatusListItem { + implicitWidth: scrollView.width + title: model.chainName + image.source: Style.png(model.iconUrl) + onClicked: { + checkBox.checked = !checkBox.checked } - - StatusCheckBox { - anchors.right: parent.right - anchors.rightMargin: Style.current.bigPadding - anchors.verticalCenter: parent.verticalCenter - checked: model.isEnabled - onCheckedChanged: { - if (model.isEnabled !== checked) { - popup.toggleNetwork(model.chainId) + components: [ + StatusCheckBox { + id: checkBox + checked: model.isEnabled + onCheckedChanged: { + if (model.isEnabled !== checked) { + popup.toggleNetwork(model.chainId) + } } } - } + ] } } } diff --git a/ui/app/AppLayouts/Wallet/popups/ReceiveModal.qml b/ui/app/AppLayouts/Wallet/popups/ReceiveModal.qml index efca277ee0..f9e767fd12 100644 --- a/ui/app/AppLayouts/Wallet/popups/ReceiveModal.qml +++ b/ui/app/AppLayouts/Wallet/popups/ReceiveModal.qml @@ -1,12 +1,15 @@ import QtQuick 2.13 import QtQuick.Controls 2.13 import QtGraphicalEffects 1.13 +import QtQuick.Layouts 1.13 import StatusQ.Core 0.1 import StatusQ.Core.Theme 0.1 import StatusQ.Controls 0.1 import StatusQ.Popups 0.1 import StatusQ.Components 0.1 +import StatusQ.Controls 0.1 +import StatusQ.Core.Utils 0.1 import utils 1.0 @@ -17,94 +20,199 @@ import "../stores" StatusModal { id: popup - property alias selectedAccount: accountSelector.selectedAccount + property var selectedAccount + property string networkPrefix: "" + property string completeAddressWithNetworkPrefix + + onSelectedAccountChanged: { + if (selectedAccount.address) { + txtWalletAddress.text = selectedAccount.address + } + } + + onCompleteAddressWithNetworkPrefixChanged: { + qrCodeImage.source = RootStore.getQrCode(completeAddressWithNetworkPrefix) + } //% "Receive" header.title: qsTrId("receive") contentHeight: layout.implicitHeight width: 556 + showHeader: false + showAdvancedHeader: true + + hasFloatingButtons: true + advancedHeaderComponent: StatusFloatingButtonsSelector { + id: floatingHeader + model: RootStore.accounts + delegate: Rectangle { + width: button.width + height: button.height + radius: 8 + visible: floatingHeader.visibleIndices.includes(index) + StatusButton { + id: button + topPadding: 8 + bottomPadding: 0 + implicitHeight: 32 + defaultLeftPadding: 4 + text: name + icon.emoji: !!emoji ? emoji: "" + icon.emojiSize: Emoji.size.middle + icon.name: !emoji ? "filled-account": "" + normalColor: "transparent" + highlighted: index === floatingHeader.currentIndex + onClicked: { + popup.selectedAccount = model + floatingHeader.currentIndex = index + } + Component.onCompleted: { + // On startup make the preseected wallet in the floating menu + if(name === popup.selectedAccount.name) + floatingHeader.currentIndex = index + } + } + } + popupMenuDelegate: StatusListItem { + implicitWidth: 272 + title: name + subTitle: currencyBalance + icon.emoji: !!emoji ? emoji: "" + icon.color: model.color + icon.name: !emoji ? "filled-account": "" + icon.letterSize: 14 + icon.isLetterIdenticon: !!model.emoji + icon.background.color: Theme.palette.indirectColor1 + onClicked: { + popup.selectedAccount = model + floatingHeader.itemSelected(index) + } + visible: !floatingHeader.visibleIndices.includes(index) + } + } + contentItem: Column { id: layout width: popup.width - topPadding: Style.current.smallPadding + topPadding: Style.current.xlPadding spacing: Style.current.bigPadding - Rectangle { - id: qrCodeBox + StatusSwitchTabBar { + id: tabBar anchors.horizontalCenter: parent.horizontalCenter - height: 339 - width: 339 - layer.enabled: true - layer.effect: OpacityMask { - maskSource: Item { - width: qrCodeBox.width - height: qrCodeBox.height - Rectangle { - anchors.top: parent.top - anchors.left: parent.left - width: qrCodeBox.width - height: qrCodeBox.height - radius: Style.current.bigPadding - border.width: 1 - border.color: Style.current.border - } - Rectangle { - anchors.top: parent.top - anchors.right: parent.right - width: Style.current.bigPadding - height: Style.current.bigPadding - } - Rectangle { - anchors.bottom: parent.bottom - anchors.left: parent.left - width: Style.current.bigPadding - height: Style.current.bigPadding - } - } + StatusSwitchTabButton { + text: qsTr("Legacy") } - - Image { - id: qrCodeImage - anchors.centerIn: parent - height: parent.height - width: parent.width - asynchronous: true - fillMode: Image.PreserveAspectFit - mipmap: true - smooth: false - } - - Rectangle { - anchors.centerIn: qrCodeImage - width: 78 - height: 78 - color: "white" - StatusIcon { - anchors.centerIn: parent - anchors.margins: 2 - width: 78 - height: 78 - source: Style.svg("status-logo-icon") - } + StatusSwitchTabButton { + text: qsTr("Multichain") + enabled: localAccountSensitiveSettings.isMultiNetworkEnabled } } - StatusAccountSelector { - id: accountSelector - anchors.horizontalCenter: parent.horizontalCenter - width: 240 - label: "" - showAccountDetails: false - accounts: RootStore.accounts - currency: RootStore.currentCurrency - dropdownWidth: parent.width - (Style.current.padding * 2) - dropdownAlignment: StatusSelect.MenuAlignment.Center - onSelectedAccountChanged: { - if (selectedAccount.address) { - qrCodeImage.source = RootStore.getQrCode(selectedAccount.address) - txtWalletAddress.text = selectedAccount.address + Item { + width: parent.width + height: qrCodeBox.height + id: centralLayout + + Grid { + id: multiChainList + property bool need2Columns: RootStore.enabledNetworks.count >= 9 + + anchors.centerIn: parent + anchors.horizontalCenterOffset: need2Columns ? 0 : qrCodeBox.width/2 + Style.current.xlPadding + Style.current.halfPadding + height: qrCodeBox.height + + columnSpacing: need2Columns ? qrCodeBox.width + Style.current.bigPadding : 0 + flow: Grid.TopToBottom + columns: need2Columns ? 2 : 1 + spacing: 5 + Repeater { + model: RootStore.enabledNetworks + delegate: StatusListItemTag { + image.source: Style.png(iconUrl) + title: shortName + titleText.color: chainColor + closeButtonVisible: false + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + onClicked: selectPopup.open() + } + } + } + StatusListItemTag { + closeButtonVisible: false + icon.name: "edit_pencil" + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + onClicked: { + selectPopup.open() + } + } + } + } + + Rectangle { + id: qrCodeBox + height: 339 + width: 339 + anchors.centerIn: parent + anchors.horizontalCenter: parent.horizontalCenter + layer.enabled: true + layer.effect: OpacityMask { + maskSource: Item { + width: qrCodeBox.width + height: qrCodeBox.height + Rectangle { + anchors.top: parent.top + anchors.left: parent.left + width: qrCodeBox.width + height: qrCodeBox.height + radius: Style.current.bigPadding + border.width: 1 + border.color: Style.current.border + } + Rectangle { + anchors.top: parent.top + anchors.right: parent.right + width: Style.current.bigPadding + height: Style.current.bigPadding + } + Rectangle { + anchors.bottom: parent.bottom + anchors.left: parent.left + width: Style.current.bigPadding + height: Style.current.bigPadding + } + } + } + + Image { + id: qrCodeImage + anchors.centerIn: parent + height: parent.height + width: parent.width + asynchronous: true + fillMode: Image.PreserveAspectFit + mipmap: true + smooth: false + } + + Rectangle { + anchors.centerIn: qrCodeImage + width: 78 + height: 78 + color: "white" + StatusIcon { + anchors.centerIn: parent + anchors.margins: 2 + width: 78 + height: 78 + source: Style.svg("status-logo-icon") + } } } } @@ -124,6 +232,23 @@ StatusModal { color: Theme.palette.baseColor1 text: qsTr("Your Address") } + RowLayout { + id: networksLabel + spacing: -1 + Repeater { + model: RootStore.enabledNetworks + delegate: StatusBaseText { + font.pixelSize: 15 + color: chainColor + text: shortName + ":" + Component.onCompleted: { + if(index === 0) + popup.networkPrefix = "" + popup.networkPrefix +=text + } + } + } + } StatusAddress { id: txtWalletAddress color: Theme.palette.directColor1 @@ -137,6 +262,7 @@ StatusModal { anchors.rightMargin: Style.current.bigPadding spacing: 5 CopyToClipBoardButton { + id: copyToClipBoard store: RootStore textToCopy: txtWalletAddress.text } @@ -148,6 +274,71 @@ StatusModal { } } } + + NetworkSelectPopup { + id: selectPopup + x: multiChainList.x + Style.current.xlPadding + Style.current.halfPadding + y: centralLayout.y + layer1Networks: RootStore.layer1Networks + layer2Networks: RootStore.layer2Networks + testNetworks: RootStore.testNetworks + closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside + + onToggleNetwork: { + RootStore.toggleNetwork(chainId) + } + } + + states: [ + State { + name: "legacy" + when: tabBar.currentIndex === 0 + PropertyChanges { + target: multiChainList + visible: false + } + PropertyChanges { + target: contactsLabel + visible: true + } + PropertyChanges { + target: networksLabel + visible: false + } + PropertyChanges { + target: copyToClipBoard + textToCopy: txtWalletAddress.text + } + PropertyChanges { + target: popup + completeAddressWithNetworkPrefix: popup.selectedAccount.address + } + }, + State { + name: "multichain" + when: tabBar.currentIndex === 1 + PropertyChanges { + target: multiChainList + visible: true + } + PropertyChanges { + target: contactsLabel + visible: false + } + PropertyChanges { + target: networksLabel + visible: true + } + PropertyChanges { + target: copyToClipBoard + textToCopy: popup.networkPrefix + txtWalletAddress.text + } + PropertyChanges { + target: popup + completeAddressWithNetworkPrefix: popup.networkPrefix + popup.selectedAccount.address + } + } + ] } } diff --git a/ui/imports/assets/png/network/Network=Arbitrum.png b/ui/imports/assets/png/network/Network=Arbitrum.png new file mode 100644 index 0000000000..78ea0cfb52 Binary files /dev/null and b/ui/imports/assets/png/network/Network=Arbitrum.png differ diff --git a/ui/imports/assets/png/network/Network=Aztec.png b/ui/imports/assets/png/network/Network=Aztec.png new file mode 100644 index 0000000000..0ecdbdbadc Binary files /dev/null and b/ui/imports/assets/png/network/Network=Aztec.png differ diff --git a/ui/imports/assets/png/network/Network=Ethereum.png b/ui/imports/assets/png/network/Network=Ethereum.png new file mode 100644 index 0000000000..7a09c4916b Binary files /dev/null and b/ui/imports/assets/png/network/Network=Ethereum.png differ diff --git a/ui/imports/assets/png/network/Network=Hermez.png b/ui/imports/assets/png/network/Network=Hermez.png new file mode 100644 index 0000000000..c21b6fd6e4 Binary files /dev/null and b/ui/imports/assets/png/network/Network=Hermez.png differ diff --git a/ui/imports/assets/png/network/Network=Loopring.png b/ui/imports/assets/png/network/Network=Loopring.png new file mode 100644 index 0000000000..8e72ac667b Binary files /dev/null and b/ui/imports/assets/png/network/Network=Loopring.png differ diff --git a/ui/imports/assets/png/network/Network=Optimism.png b/ui/imports/assets/png/network/Network=Optimism.png new file mode 100644 index 0000000000..babb066bcf Binary files /dev/null and b/ui/imports/assets/png/network/Network=Optimism.png differ diff --git a/ui/imports/assets/png/network/Network=Polygon.png b/ui/imports/assets/png/network/Network=Polygon.png new file mode 100644 index 0000000000..3988fd8f9c Binary files /dev/null and b/ui/imports/assets/png/network/Network=Polygon.png differ diff --git a/ui/imports/assets/png/network/Network=Tetnet.png b/ui/imports/assets/png/network/Network=Tetnet.png new file mode 100644 index 0000000000..ed01da2c07 Binary files /dev/null and b/ui/imports/assets/png/network/Network=Tetnet.png differ diff --git a/ui/imports/assets/png/network/Network=Unknown.png b/ui/imports/assets/png/network/Network=Unknown.png new file mode 100644 index 0000000000..d99ce9554c Binary files /dev/null and b/ui/imports/assets/png/network/Network=Unknown.png differ diff --git a/ui/imports/assets/png/network/Network=xDAI.png b/ui/imports/assets/png/network/Network=xDAI.png new file mode 100644 index 0000000000..b99ae48050 Binary files /dev/null and b/ui/imports/assets/png/network/Network=xDAI.png differ diff --git a/ui/imports/assets/png/network/Network=zkSync.png b/ui/imports/assets/png/network/Network=zkSync.png new file mode 100644 index 0000000000..f69ac5e803 Binary files /dev/null and b/ui/imports/assets/png/network/Network=zkSync.png differ diff --git a/ui/imports/assets/png/networks/arbitrum rinkeby.png b/ui/imports/assets/png/networks/arbitrum rinkeby.png deleted file mode 100644 index 72f6473caf..0000000000 Binary files a/ui/imports/assets/png/networks/arbitrum rinkeby.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/arbitrum.png b/ui/imports/assets/png/networks/arbitrum.png deleted file mode 100644 index 72f6473caf..0000000000 Binary files a/ui/imports/assets/png/networks/arbitrum.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/goerli.png b/ui/imports/assets/png/networks/goerli.png deleted file mode 100644 index 8a9cf015c5..0000000000 Binary files a/ui/imports/assets/png/networks/goerli.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/mainnet.png b/ui/imports/assets/png/networks/mainnet.png deleted file mode 100644 index 8a9cf015c5..0000000000 Binary files a/ui/imports/assets/png/networks/mainnet.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/optimism kovan.png b/ui/imports/assets/png/networks/optimism kovan.png deleted file mode 100644 index f4fe1d19a2..0000000000 Binary files a/ui/imports/assets/png/networks/optimism kovan.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/rinkeby.png b/ui/imports/assets/png/networks/rinkeby.png deleted file mode 100644 index 8a9cf015c5..0000000000 Binary files a/ui/imports/assets/png/networks/rinkeby.png and /dev/null differ diff --git a/ui/imports/assets/png/networks/ropsten.png b/ui/imports/assets/png/networks/ropsten.png deleted file mode 100644 index 8a9cf015c5..0000000000 Binary files a/ui/imports/assets/png/networks/ropsten.png and /dev/null differ diff --git a/vendor/status-go b/vendor/status-go index efa14805bd..fea37ff5b4 160000 --- a/vendor/status-go +++ b/vendor/status-go @@ -1 +1 @@ -Subproject commit efa14805bd3a87f7e87f2655dd651dc4d9c18e6d +Subproject commit fea37ff5b46ff84153591d327f4672b7d3c45915