edit field utilities
type Msg
= Set (Form.Prop Model attr String) String
init =
{ name = "field" |> Field.init signature attribute ""
}
update msg model =
case msg of
Set prop value -> model |> Form.set prop value
name_ = Form.prop .name (\v m -> { m | name = v })
view model =
let
form =
{ name = model.name |> Form.init name_
}
in
H.input
[ form.name.field |> Field.value |> A.value
, form.name.prop |> Set |> E.onInput
] []gteq Model and lteq Model
getter and setter
construct Model
form = field |> Form.init name_construct Prop
name_ = Form.prop .name (\v m -> { m | name = v })set value if value is present
form |> Form.setIf name_ (Just "value")
-- set "value"
form |> Form.setIf name_ Nothing
-- do nothingtoggle set
form |> Form.toggle roles_ "admin"set attribute
form |> Form.setAttribute name_ attr
field and prop