improve default behavior of number and currency input

This commit is contained in:
Ruben Fiszel
2025-03-19 15:13:46 +01:00
parent 93c2172279
commit f7edbd106f
2 changed files with 35 additions and 12 deletions
@@ -32,14 +32,6 @@
configuration
)
let value: number | undefined = resolvedConfig.defaultValue
$componentControl[id] = {
setValue(nvalue: number | undefined) {
value = nvalue
}
}
onDestroy(() => {
listInputs?.remove(id)
})
@@ -48,9 +40,23 @@
result: undefined as number | undefined
})
let initValue = outputs?.result.peak()
let value: number | undefined =
!iterContext && initValue != undefined ? initValue : resolvedConfig.defaultValue
$componentControl[id] = {
setValue(nvalue: number | undefined) {
value = nvalue
outputs?.result.set(value)
}
}
let initialHandleDefault = true
$: handleDefault(resolvedConfig.defaultValue)
$: {
$: value && onChangeValue()
function onChangeValue() {
outputs?.result.set(value)
if (iterContext && listInputs) {
listInputs.set(id, value)
@@ -58,6 +64,12 @@
}
function handleDefault(defaultValue: number | undefined) {
if (initialHandleDefault) {
initialHandleDefault = false
if (value != undefined) {
return
}
}
value = defaultValue
}
@@ -41,11 +41,14 @@
configuration
)
let value: number | undefined = resolvedConfig.defaultValue
let initValue = outputs?.result.peak()
let value: number | undefined =
!iterContext && initValue != undefined ? initValue : resolvedConfig.defaultValue
$componentControl[id] = {
setValue(nvalue: number) {
value = nvalue
outputs?.result.set(value ?? null)
}
}
@@ -56,15 +59,23 @@
}
}
let initialHandleDefault = true
$: handleDefault(resolvedConfig.defaultValue)
function handleDefault(dflt: number | undefined) {
if (initialHandleDefault) {
initialHandleDefault = false
if (value != undefined) {
return
}
}
value = dflt
handleInput()
}
$: value != undefined && handleInput()
$: handleDefault(resolvedConfig.defaultValue)
let css = initCss($app.css?.currencycomponent, customCss)
</script>