diff options
Diffstat (limited to 'frontend/app/Form')
-rw-r--r-- | frontend/app/Form/Input.hs | 5 | ||||
-rw-r--r-- | frontend/app/Form/Internal.hs | 9 |
2 files changed, 7 insertions, 7 deletions
diff --git a/frontend/app/Form/Input.hs b/frontend/app/Form/Input.hs index a9648c4..4b1eac8 100644 --- a/frontend/app/Form/Input.hs +++ b/frontend/app/Form/Input.hs @@ -6,7 +6,7 @@ where import Data.Text qualified as T import Form.Internal import Miso -import Miso.String (toMisoString) +import Miso.String (fromMisoString, toMisoString) string :: String -> Form T.Text T.Text string label = @@ -17,7 +17,8 @@ string label = [ text (toMisoString label), input_ [ type_ "text", - value_ (toMisoString i) + value_ (toMisoString i), + onInput fromMisoString ] ] ] diff --git a/frontend/app/Form/Internal.hs b/frontend/app/Form/Internal.hs index 7782368..8c9935f 100644 --- a/frontend/app/Form/Internal.hs +++ b/frontend/app/Form/Internal.hs @@ -53,8 +53,7 @@ mapValues get set (Form {view, fill}) = } runForm :: Form i o -> i -> View (Either i o) -runForm (Form {view}) i = - div_ [] $ - (fmap Left <$> view i) - <> [ button_ [type_ "submit"] [text "submit"] - ] +runForm form i = + form_ [onSubmit (either (\_ -> Left i) (Right) (form.fill i))] $ + (fmap Left <$> form.view i) + <> [button_ [type_ "submit"] [text "submit"]] |