mirror of
https://github.com/status-im/status-desktop.git
synced 2025-01-10 06:16:32 +00:00
6cfcd92c00
This workflow doesn't save the keystore files which are required in order to create new wallet accounts. It is not yet clear how to proceed with saving the keystore files without an accountId. See `setupAccountKeycard` which is missing `storeAccount*` calls vs working workflow done in `setupAccount` Closes: #7867
234 lines
7.5 KiB
QML
234 lines
7.5 KiB
QML
import QtQuick 2.13
|
|
import QtQuick.Layouts 1.12
|
|
import QtQuick.Controls 2.13
|
|
import QtQuick.Controls.Universal 2.12
|
|
|
|
import StatusQ.Controls 0.1
|
|
import StatusQ.Core 0.1
|
|
import StatusQ.Core.Theme 0.1
|
|
|
|
import shared 1.0
|
|
import shared.panels 1.0
|
|
import "../popups"
|
|
import "../controls"
|
|
import "../stores"
|
|
|
|
import utils 1.0
|
|
|
|
Item {
|
|
id: root
|
|
|
|
property StartupStore startupStore
|
|
|
|
Item {
|
|
id: container
|
|
width: 425
|
|
height: 513
|
|
anchors.centerIn: parent
|
|
|
|
Item {
|
|
id: keysImgWrapperItem
|
|
width: 257
|
|
height: 257
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
Image {
|
|
id: keysImg
|
|
width: 257
|
|
height: 257
|
|
anchors.bottom: parent.bottom
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
source: Style.png("onboarding/keys")
|
|
mipmap: true
|
|
}
|
|
}
|
|
|
|
StyledText {
|
|
id: txtTitle
|
|
text: qsTr("intro-wizard-title1") // FIXME: translations
|
|
font.bold: true
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
anchors.top: keysImgWrapperItem.bottom
|
|
anchors.topMargin: Style.current.padding
|
|
font.letterSpacing: -0.2
|
|
font.pixelSize: 22
|
|
}
|
|
|
|
StyledText {
|
|
id: txtDesc
|
|
height: 44
|
|
anchors.right: parent.right
|
|
anchors.left: parent.left
|
|
anchors.top: txtTitle.bottom
|
|
anchors.topMargin: Style.current.padding
|
|
color: Style.current.secondaryText
|
|
text: qsTr("a-set-of-keys-controls-your-account.-your-keys-live-on-your-device,-so-only-you-can-use-them.") // FIXME: translations
|
|
horizontalAlignment: Text.AlignHCenter
|
|
wrapMode: Text.WordWrap
|
|
font.pixelSize: 15
|
|
}
|
|
|
|
ColumnLayout {
|
|
anchors.top: txtDesc.bottom
|
|
anchors.topMargin: 32
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
spacing: Style.current.bigPadding
|
|
StatusButton {
|
|
id: button
|
|
objectName: "keysMainViewPrimaryActionButton"
|
|
enabled: (opacity > 0.1)
|
|
Layout.alignment: Qt.AlignHCenter
|
|
onClicked: {
|
|
root.startupStore.doPrimaryAction()
|
|
}
|
|
}
|
|
|
|
StatusBaseText {
|
|
id: keycardLink
|
|
Layout.alignment: Qt.AlignHCenter
|
|
color: Theme.palette.primaryColor1
|
|
font.pixelSize: 15
|
|
MouseArea {
|
|
anchors.fill: parent
|
|
cursorShape: Qt.PointingHandCursor
|
|
hoverEnabled: true
|
|
onEntered: {
|
|
parent.font.underline = true
|
|
}
|
|
onExited: {
|
|
parent.font.underline = false
|
|
}
|
|
onClicked: {
|
|
root.startupStore.doSecondaryAction()
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusBaseText {
|
|
id: seedLink
|
|
Layout.alignment: Qt.AlignHCenter
|
|
color: Theme.palette.primaryColor1
|
|
font.pixelSize: 15
|
|
MouseArea {
|
|
anchors.fill: parent
|
|
cursorShape: Qt.PointingHandCursor
|
|
hoverEnabled: true
|
|
onEntered: {
|
|
parent.font.underline = true
|
|
}
|
|
onExited: {
|
|
parent.font.underline = false
|
|
}
|
|
onClicked: {
|
|
root.startupStore.doTertiaryAction()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
states: [
|
|
State {
|
|
name: Constants.startupState.welcomeOldStatusUser
|
|
when: root.startupStore.currentStartupState.stateType === Constants.startupState.welcomeOldStatusUser
|
|
PropertyChanges {
|
|
target: keysImg
|
|
width: 160
|
|
height: 160
|
|
}
|
|
PropertyChanges {
|
|
target: txtTitle
|
|
text: qsTr("Connect your keys")
|
|
}
|
|
PropertyChanges {
|
|
target: txtDesc
|
|
text: qsTr("Use your existing Status keys to login to this device.")
|
|
}
|
|
PropertyChanges {
|
|
target: button
|
|
// text: qsTr("Scan sync code")
|
|
//TODO remove when sync code is implemented
|
|
opacity: 0.0
|
|
}
|
|
// TODO: Functionality is not completed. Missing saving of keystore files which blocks wallet account creation. @see #7867
|
|
// PropertyChanges {
|
|
// target: keycardLink
|
|
// text: qsTr("Login with Keycard")
|
|
// }
|
|
PropertyChanges {
|
|
target: seedLink
|
|
text: qsTr("Enter a seed phrase")
|
|
}
|
|
},
|
|
State {
|
|
name: Constants.startupState.welcomeNewStatusUser
|
|
when: root.startupStore.currentStartupState.stateType === Constants.startupState.welcomeNewStatusUser
|
|
PropertyChanges {
|
|
target: keysImg
|
|
width: 160
|
|
height: 160
|
|
}
|
|
PropertyChanges {
|
|
target: txtTitle
|
|
text: qsTr("Get your keys")
|
|
}
|
|
PropertyChanges {
|
|
target: txtDesc
|
|
text: qsTr("A set of keys controls your account. Your keys live on your\ndevice, so only you can use them.")
|
|
}
|
|
PropertyChanges {
|
|
target: button
|
|
text: qsTr("Generate new keys")
|
|
//TODO remove when sync code is implemented
|
|
opacity: 1.0
|
|
}
|
|
PropertyChanges {
|
|
target: keycardLink
|
|
text: qsTr("Generate keys for a new Keycard")
|
|
}
|
|
PropertyChanges {
|
|
target: seedLink
|
|
text: qsTr("Import a seed phrase")
|
|
}
|
|
},
|
|
State {
|
|
name: Constants.startupState.userProfileImportSeedPhrase
|
|
when: root.startupStore.currentStartupState.stateType === Constants.startupState.userProfileImportSeedPhrase
|
|
PropertyChanges {
|
|
target: keysImg
|
|
width: 257
|
|
height: 257
|
|
}
|
|
PropertyChanges {
|
|
target: txtTitle
|
|
text: qsTr("Import a seed phrase")
|
|
}
|
|
PropertyChanges {
|
|
target: keysImg
|
|
width: 257
|
|
height: 257
|
|
source: Style.png("onboarding/seed-phrase")
|
|
}
|
|
PropertyChanges {
|
|
target: txtDesc
|
|
text: qsTr("Seed phrases are used to back up and restore your keys. Only use this option if you already have a seed phrase.")
|
|
|
|
}
|
|
PropertyChanges {
|
|
target: button
|
|
text: qsTr("Import a seed phrase")
|
|
//TODO remove when sync code is implemented
|
|
opacity: 1.0
|
|
}
|
|
PropertyChanges {
|
|
target: keycardLink
|
|
text: qsTr("Import a seed phrase into a new Keycard")
|
|
}
|
|
PropertyChanges {
|
|
target: seedLink
|
|
text: ""
|
|
visible: false
|
|
}
|
|
}
|
|
]
|
|
}
|