status-desktop/storybook/pages/SeedPhraseInputViewPage.qml
Alex Jbanca 8a69f3bc63
fix(SeedPhrase): Fixing seed phrase validation (#13496)
* fix(SeedPhrase): Fixing seed phrase validation

1. Validate each word after the editing is finished
2. Fixing the seed phrase suggestions where the suggestions box was hidden behind other ui elements
3. Propagate editingFinished signal in StatusBaseInput, StatusInput, StatusSeedPhraseInput
4. Fixing undefined `mnemonicIndex` errors

* fix: Refactoring of SeedPhraseInputView

Remove duplicated code and use EnterSeedPhrase component

+ Added storybook page

* fix(Onboarding): Fixing seed phrase validation on windows

The seed phrase validation fails on windows due to the dictionary line endings

* chore(squish): Update e2e tests to the new enter seed phrase panel construction

* fix: Load english dictionary from local file using StringUtils
2024-02-14 15:50:14 +02:00

73 lines
1.9 KiB
QML

import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15
import AppLayouts.Onboarding.views 1.0
import AppLayouts.Onboarding.stores 1.0
import utils 1.0
import Storybook 1.0
SplitView {
Logs { id: logs }
SeedPhraseInputView {
SplitView.fillWidth: true
SplitView.fillHeight: true
startupStore: StartupStore {
id: startupStore
function validMnemonic(mnemonic) {
return true
}
property QtObject startupModuleInst: QtObject {
property int keycardData: keycardDataCheckbox.checked ? 0 : Constants.predefinedKeycardData.wrongSeedPhrase
property string flowType: flowTypeComboBox.currentText
}
property QtObject currentStartupState: QtObject {
property string flowType: flowTypeComboBox.currentText
}
function doPrimaryAction() {
logs.logEvent("Primary action clicked")
}
}
}
LogsAndControlsPanel {
id: logsAndControlsPanel
SplitView.minimumHeight: 100
SplitView.preferredHeight: 200
SplitView.preferredWidth: 300
logsView.logText: logs.logText
ColumnLayout {
spacing: 10
width: parent.width
CheckBox {
id: keycardDataCheckbox
text: "Has keycard data"
checked: startupStore.startupModuleInst.keycardData != Constants.predefinedKeycardData.wrongSeedPhrase
}
Label {
text: "Current startup flow type"
}
ComboBox {
id: flowTypeComboBox
Layout.fillWidth: true
model: Object.values(Constants.startupFlow).filter(flow => flow != "" && typeof flow === "string")
}
}
}
}
// category: Panels