# HG changeset patch # User Aurélien Campéas # Date 1684334388 -7200 # Wed May 17 16:39:48 2023 +0200 # Node ID 217ec06a00a7c34e884b385b432d8701daf7fa5f # Parent 3143925b79d1338d58abb36782ae45bf31da8e9d launcher: add support for boolean inputs diff --git a/elm/src/Decoder.elm b/elm/src/Decoder.elm --- a/elm/src/Decoder.elm +++ b/elm/src/Decoder.elm @@ -183,6 +183,7 @@ "file" -> File "string" -> Str "number" -> Num + "boolean" -> Bool "datetime" -> Datetime "moment" -> Moment _ -> Str diff --git a/elm/src/Info.elm b/elm/src/Info.elm --- a/elm/src/Info.elm +++ b/elm/src/Info.elm @@ -184,6 +184,9 @@ Num -> H.text (input.name ++ " [number]" ++ (viewrequired input)) + Bool -> + H.text (input.name ++ " [bool]" ++ (viewrequired input)) + Str -> H.text <| String.join "" [ @@ -320,4 +323,3 @@ , update = update , subscriptions = subscriptions } - diff --git a/elm/src/Type.elm b/elm/src/Type.elm --- a/elm/src/Type.elm +++ b/elm/src/Type.elm @@ -59,6 +59,7 @@ type SpecType = Num + | Bool | Str | File | Datetime diff --git a/elm/src/View.elm b/elm/src/View.elm --- a/elm/src/View.elm +++ b/elm/src/View.elm @@ -284,7 +284,7 @@ case model.tasksfilter.status of Nothing -> True Just fstatus -> fstatus == taskstatus - + filtertask task = (filterdomain task) && (filterservice task) && @@ -744,6 +744,41 @@ , HA.name input.name ] [] ] + Bool -> + let + radios = + [ H.label + [ HA.for (input.name ++ "true") + , HA.style "margin" ".5em" + ] + [ H.text "true" ] + , H.input + [ HA.type_ "radio" + , HA.id (input.name ++ "true") + , HA.checked input.required + , HA.name input.name + , HA.value "true" + ] [] + , H.label + [ HA.for (input.name ++ "false") + , HA.style "margin" ".5em" + ] + [ H.text "false" ] + , H.input + [ HA.type_ "radio" + , HA.id (input.name ++ "false") + , HA.name input.name + , HA.value "false" + ] [] + ] + in + H.div [ HA.class "form-group" ] + [ H.fieldset + [] + [ H.span [ ] + ([ H.text (input.name ++ ": ") ] ++ radios) ] + ] + Str -> case input.choices of Nothing ->