Browse Source

Don't treat nullish values as default values, to allow clearing fields even when a default value is set

gh-pages
Andrew Kingston 5 years ago
parent
commit
9f2451e829
  1. 16
      packages/standard-components/src/forms/InnerForm.svelte

16
packages/standard-components/src/forms/InnerForm.svelte

@ -92,21 +92,19 @@
return
}
const newValue = value == null ? defaultValue : value
const newError = validate ? validate(newValue) : null
// Update field state
const error = validate ? validate(value) : null
fieldState.update(state => {
state.value = newValue
state.error = newError
state.value = value
state.error = error
return state
})
// Update form state
formState.update(state => {
state.values = { ...state.values, [field]: newValue }
if (newError) {
state.errors = { ...state.errors, [field]: newError }
state.values = { ...state.values, [field]: value }
if (error) {
state.errors = { ...state.errors, [field]: error }
} else {
delete state.errors[field]
}
@ -114,7 +112,7 @@
return state
})
return !newError
return !error
}
const clearValue = () => {

Loading…
Cancel
Save