SquirclesIO/elm-utils/1.0.0

Formerly PerformanceIMMO/elm-utils. Search finds this package by either name.

Perfimmo.Form.FormField.FormMultiSelect

FormMultiSelect

type FormMultiSelect decoration
= FormMultiSelect Model (List (FormFieldInfo decoration))

Multiselect DOM backend element

  • can search a value
  • can select several values
type alias AvailableValues =
List ( String, String )

Values available in the Multiselect

type alias SelectTag =
String

Give a name to the Multiselect

type alias SelectedValues =
List ( String, String )

Values that are selected

AvailableValues
-> SelectTag
-> List (FormFieldInfo decoration)
-> FormMultiSelect decoration

initialize the Multiselect

FormMultiSelect.init [("1", "toto"), ("2", "titi")] "myMultiSelect" [FieldIsMandatory]
SelectedValues
-> FormMultiSelect decoration
-> FormMultiSelect decoration

set several values as selected from availables values in the Multiselect

multiselect = FormMultiSelect.init [("1", "toto"), ("2", "titi")] "myMultiSelect" []
FormMultiSelect.selectValues [("2", "toto")] multiselect
Msg
-> FormMultiSelect decoration
-> ( FormMultiSelect decoration, Cmd Msg, Maybe OutMsg )

update Multiselect with specific event (tagged as Msg). Should be use with Multiselect.view.

multiselect = FormMultiSelect.init [("1", "toto"), ("2", "titi")] "myMultiSelect" []
(newSelect, cmd, out) = FormMultiSelect.update (Multiselect.RemoveItem ("1", "toto")) multiselect
getSelectedValues : FormMultiSelect decoration -> SelectedValues

getSelectedValues

FormFieldInfo decoration
-> FormMultiSelect decoration
-> FormMultiSelect decoration

addInfo

FormFieldInfo decoration
-> FormMultiSelect decoration
-> FormMultiSelect decoration

removeInfo

getInfos : FormMultiSelect decoration -> List (FormFieldInfo decoration)

getInfos

view : FormMultiSelect decoration -> Html Msg

give a Html view of the component

subscriptions : FormMultiSelect decoration -> Sub Msg

Allow the unfocus multiselect DOM Element

getMultiselectModel : FormMultiSelect decoration -> Model

allow to handle Multiselect things that is not handled by FormMultiSelect