require strings to be non-empty

This commit is contained in:
Alexander Foremny
2024-06-07 15:53:01 +02:00
parent 378e007141
commit 79dd6af899

View File

@@ -10,18 +10,26 @@ import Miso.String (fromMisoString, toMisoString)
input :: String -> Form T.Text T.Text input :: String -> Form T.Text T.Text
input label = input label =
Form let parse :: T.Text -> Either String T.Text
{ view = \i -> parse i =
[ div_ [] $ let i' = T.strip i
[ label_ [] $ in if T.null i' then Left "required" else Right i'
[ text (toMisoString label), in Form
input_ { view = \i ->
[ type_ "text", [ div_ [] $
value_ (toMisoString i), [ label_ [] $
onInput fromMisoString [ text (toMisoString label),
div_ [] $
[ input_
[ type_ "text",
value_ (toMisoString i),
onInput fromMisoString
],
div_ [] $
[either (text . toMisoString) (\_ -> text "") (parse i)]
]
] ]
] ]
] ],
], fill = parse
fill = \i -> Right i }
}