mirror of
https://github.com/status-im/status-desktop.git
synced 2025-01-24 05:21:58 +00:00
feat(StatusInput): introduce ValidationMode
This allows users to configure how validation is run. There are two modes: 1. `ValidationMode.OnlyWhenDirty` 2. `ValidationMode.Always` By default, validation happens when the inputs value changes, or on initial `Component.onCompleted` event. The first mode allows for not performing validation when the input field is blank and validation. isn't necessary (yet).
This commit is contained in:
parent
de776e4567
commit
af8d2036f3
@ -30,10 +30,18 @@ Item {
|
||||
property int charLimit: 0
|
||||
property string errorMessage: ""
|
||||
property list<StatusValidator> validators
|
||||
property int validationMode: StatusInput.ValidationMode.OnlyWhenDirty
|
||||
enum ValidationMode {
|
||||
OnlyWhenDirty, // validates input only after it has become dirty
|
||||
Always // validates input even before it has become dirty
|
||||
}
|
||||
|
||||
property var errors: ({})
|
||||
|
||||
function validate() {
|
||||
if (!statusBaseInput.dirty && validationMode === StatusInput.ValidationMode.OnlyWhenDirty) {
|
||||
return
|
||||
}
|
||||
statusBaseInput.valid = true
|
||||
if (validators.length) {
|
||||
for (let idx in validators) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user