[{"name":"AvardaUi.Button","comment":" This module provides a styled button component with optional left/right icon. It uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withIsDisabled`](#withIsDisabled) or [`withLeftChild`](#withLeftChild).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating an Button\n\n@docs new, view\n\n\n# Button\n\n@docs Button\n\n\n# MsgType\n\n@docs MsgTypeSet, MsgTypeUnset\n\n#Variant\n\n@docs Variant\n\n\n# Configuration\n\n@docs withVariant, withLeftChild, withRightChild, withIsDisabled\n@docs withSizeLarge, withSizeMedium, withSizeSmall\n@docs withCapitalizedLabel, withBorderRadius, withBaseStyles, withHoverStyles, withActiveStyles, withAttributes\n\n\n## Button action configuration\n\nBy default, `submit` is used as the button action. You can change this behaviour by using either `withLink` or `withOnClick`.\n\n@docs withLink, withOnClick, withSubmit\n\n","unions":[{"name":"Button","comment":" Button type which can be used for type annotations when defining helpers in your code.\n","args":["msgTypeState","msg"],"cases":[]},{"name":"MsgTypeSet","comment":" MsgType which can be used for type annotations when defining helpers in your code.\n","args":[],"cases":[]},{"name":"MsgTypeUnset","comment":" MsgType which can be used for type annotations when defining helpers in your code.\n","args":[],"cases":[]},{"name":"Variant","comment":" Style variants of the button.\nThis is used with [`withVariant`](#withVariant)\n","args":[],"cases":[["Primary",[]],["Secondary",[]],["Tertiary",[]]]}],"aliases":[],"values":[{"name":"new","comment":" Create a new Button component.\n\n    AvardaUi.Button.new\n        { label = \"Click me\" }\n\n","type":"{ label : String.String } -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeUnset msg"},{"name":"view","comment":" Render the Button as HTML.\n\nAlways call this after you've built up the button with `new` and chained settings.\n\n    AvardaUi.Button.new {...}\n        |> AvardaUi.Button.withIsRequired True\n        |> AvardaUi.Select.view\n\n","type":"AvardaUi.Button.Button msgTypeState msg -> Html.Styled.Html msg"},{"name":"withActiveStyles","comment":" Overwrite active styles.\n","type":"List.List Css.Style -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withAttributes","comment":" Add additional attributes.\n","type":"List.List (Html.Styled.Attribute msg) -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withBaseStyles","comment":" Add additional base styles.\n","type":"List.List Css.Style -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withBorderRadius","comment":" Explicitly set border-radius.\n**This will override border-radius set in [`withBaseStyles`](#withBaseStyles).**\n","type":"Basics.Float -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withCapitalizedLabel","comment":" Capitalize the label.\n","type":"Basics.Bool -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withHoverStyles","comment":" Overwrite hover styles.\n","type":"List.List Css.Style -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withIsDisabled","comment":" Disable the button.\nVisually dims and prevents user actions.\n","type":"Basics.Bool -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withLeftChild","comment":" Add a left-side child element, preferably an icon.\n","type":"Html.Styled.Html msg -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withLink","comment":" Transfer the `<button>` into `<a>` tag that looks like a button.\nYou have to specify a `url` that will be passed into `href` attribute and additional `attributes` list, e.g. `target` or `rel`.\n\n    AvardaUi.Button.new { label = \"Link\" }\n        |> AvardaUi.Button.withLink\n            { url = \"https://google.com\"\n            , attributes =\n                [ Attributes.target \"_blank\"\n                , Attributes.rel \"noopener noreferrer\"\n                ]\n            }\n        |> AvardaUi.Button.view\n\n","type":"{ url : String.String, attributes : List.List (Html.Styled.Attribute msg) } -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeUnset msg -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeSet msg"},{"name":"withOnClick","comment":" `<button>` with onClick handler.\n","type":"msg -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeUnset msg -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeSet msg"},{"name":"withRightChild","comment":" Add a right-side child element, preferably an icon.\n","type":"Html.Styled.Html msg -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withSizeLarge","comment":" Change button sizing to `large` (default).\n","type":"AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withSizeMedium","comment":" Change button sizing to `medium`.\n","type":"AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withSizeSmall","comment":" Change button sizing to `small`.\n","type":"AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"},{"name":"withSubmit","comment":" `<button>` with `type = \"submit\"`.\nThis the default button type.\n","type":"AvardaUi.Button.Button AvardaUi.Button.MsgTypeUnset msg -> AvardaUi.Button.Button AvardaUi.Button.MsgTypeSet msg"},{"name":"withVariant","comment":" Change button variant ([`Variant`](#Variant)). `Primary` is set by default.\n","type":"AvardaUi.Button.Variant -> AvardaUi.Button.Button msgTypeState msg -> AvardaUi.Button.Button msgTypeState msg"}],"binops":[]},{"name":"AvardaUi.Input","comment":" This component provides a styled input with support for floating labels, hints, error messages,\nand optional left/right children. It uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withPlaceholder`](#withPlaceholder) or [`withIsRequired`](#withIsRequired).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating an Input\n\n@docs new, view\n\n\n# Configuration\n\n@docs withPlaceholder, withIsRequired, withIsDisabled, withInputType, withMaxLength, withBorderRadius, withAutocomplete, withAttributes, withOnKeyDown, withMaybeError, withHint, withLeftChild, withRightChild, withFloatingLabelBackgroundColor\n\n","unions":[],"aliases":[],"values":[{"name":"new","comment":" Create a new input with required fields: `id`, `value`, `msg`, and `label`.\n\nThis gives you a base input that you can configure further with `withX` functions.\n\n    AvardaUi.Input.new \"username\"\n        { value = model.username\n        , msg = InsertedUsername\n        , label = \"Username\"\n        }\n\n","type":"String.String -> { value : String.String, msg : String.String -> msg, label : String.String } -> AvardaUi.Input.Input msg"},{"name":"view","comment":" Render the configured input as HTML.\n\nAlways call this after you've built up the input with `new` and chained settings.\n\n    AvardaUi.Input.new \"username\" {...}\n        |> AvardaUi.Input.withPlaceholder \"Enter username\"\n        |> AvardaUi.Input.withIsRequired True\n        |> AvardaUi.Input.view\n\n","type":"AvardaUi.Input.Input msg -> Html.Styled.Html msg"},{"name":"withAttributes","comment":" Attach additional HTML attributes to the underlying `<input>` element.\nFor example `name` or `data-*` attributes.\n","type":"List.List (Html.Styled.Attribute msg) -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withAutocomplete","comment":" Enable autocomplete with a given string like `\"username\"`. It is set to `\"off\"` by default.\n","type":"String.String -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withBorderRadius","comment":" Adjust the border radius of the input box.\n","type":"Basics.Float -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withFloatingLabelBackgroundColor","comment":" Sets the background color of the floating label.\nThis is useful when the color of the background behind the input is something else then `#FFFFFF`.\n","type":"Css.Color -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withHint","comment":" Add a hint text below the input.\n","type":"String.String -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withInputType","comment":" Change the input type (e.g. `\"text\"`, `\"password\"`, `\"email\"`).\n","type":"String.String -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withIsDisabled","comment":" Disable the input.\nVisually dims and prevents typing.\n","type":"Basics.Bool -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withIsRequired","comment":" Mark the input as required.\nThis adds a `*` to the label and sets `required=true`.\n","type":"Basics.Bool -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withLeftChild","comment":" Add a left-side child element, e.g. an icon.\n","type":"Html.Styled.Html msg -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withMaxLength","comment":" Limit the maximum number of characters.\n","type":"Basics.Int -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withMaybeError","comment":" Show an error message and mark the input invalid.\n**Replaces any active hint text.**\n","type":"Maybe.Maybe String.String -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withOnKeyDown","comment":" Listen for key presses and map them to messages.\nIt uses the `KeyboardKey` type from `AvardaUi.Util.KeyPress` module.\n\n    AvardaUi.Input.new \"username\" {...}\n        |> AvardaUi.Input.withOnKeyDown [ ( KeyPressUtil.Enter, HandleSubmit ) ]\n\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withPlaceholder","comment":" Add a placeholder to the input.\n","type":"String.String -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"},{"name":"withRightChild","comment":" Add a right-side child element, e.g. a clear button.\n","type":"Html.Styled.Html msg -> AvardaUi.Input.Input msg -> AvardaUi.Input.Input msg"}],"binops":[]},{"name":"AvardaUi.PhoneSelectInput","comment":" This module provides a component that combines a `Select` for country dialing codes\nwith an `Input` for entering a phone number.\nIt uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withPlaceholder`](#withPlaceholder) or [`withIsRequired`](#withIsRequired).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating a PhoneSelectInput\n\n@docs Model, init, Msg, update, new, view\n\n\n# Update with extra options\n\nYou can pass extra options / callbacks to this component using `updateWith`\n\n@docs UpdateOption\n\n@docs updateWith, onSelect, onInput, onInputTabKeyDown, scrollOptionIntoView\n\n\n# Configuration\n\n@docs withBorderRadius, withHint, withInputMaxLength, withInputPlaceholder, withIsDisabled, withIsRequired, withMaybeError, withMenuMaxHeight, withInputFloatingLabelBackgroundColor\n\n\n# Setting values\n\n@docs setCountries, setSelectedCountry, setPhoneInputValue\n\n\n# Getting values\n\n@docs getSelectedCountryCode, getPhoneInputValue\n\n","unions":[{"name":"Model","comment":" Model type for the Select component. Use this in your own model.\n\n    type alias DashboardModel =\n        { phoneSelectInputModel : AvardaUi.PhoneSelectInput.Model }\n\n","args":[],"cases":[]},{"name":"Msg","comment":" Msg type for the PhoneSelectInput component. Use this for the wrap msg in your own Msg type.\n\n    type DashboardMsg\n        = HandlePhoneSelectInput AvardaUi.PhoneSelectInput.Msg\n        | NoUpdate\n\n","args":[],"cases":[]},{"name":"UpdateOption","comment":" UpdateOption type\n","args":["msg"],"cases":[]}],"aliases":[],"values":[{"name":"getPhoneInputValue","comment":" Get the current value of the phone input.\n","type":"AvardaUi.PhoneSelectInput.Model -> String.String"},{"name":"getSelectedCountryCode","comment":" Get the currently selected `CountryCode`.\nIf none is selected, returns _Nothing_.\n","type":"AvardaUi.PhoneSelectInput.Model -> Maybe.Maybe AvardaUi.Util.CountryCode.CountryCode"},{"name":"init","comment":" Initialize the PhoneSelectInput model.\n\n    init : DashboardModel\n    init =\n        { phoneSelectInputModel = AvardaUi.PhoneSelectInput.init \"phone\" }\n\n","type":"String.String -> AvardaUi.PhoneSelectInput.Model"},{"name":"new","comment":" Create a new PhoneSelectInput component.\n\n    AvardaUi.PhoneSelectInput.new\n        { inputLabel = \"Phone\"\n        , selectAriaLabel = \"Country code\"\n        , phoneSelectInputModel = model.phoneSelectInputModel\n        }\n\n","type":"{ inputLabel : String.String, selectAriaLabel : String.String, phoneSelectInputModel : AvardaUi.PhoneSelectInput.Model } -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"onInput","comment":" Used for triggering a message when the phone input is typed into.\n","type":"(String.String -> msg) -> AvardaUi.PhoneSelectInput.UpdateOption msg"},{"name":"onInputTabKeyDown","comment":" Used for triggering a message when `Tab` is pressed in the input.\n","type":"msg -> AvardaUi.PhoneSelectInput.UpdateOption msg"},{"name":"onSelect","comment":" Used for triggering a message when an `CountryCode` is selected.\n","type":"(AvardaUi.Util.CountryCode.CountryCode -> msg) -> AvardaUi.PhoneSelectInput.UpdateOption msg"},{"name":"scrollOptionIntoView","comment":" Used to fix issue with scrolling option into view when used in ShadowDOM.\n_elm/browser cannot find the element ID when this component is used by an app which uses ShadowDOM_\n\n    type alias ScrollOptionIntoViewCmd msg =\n        String -> Cmd msg\n\n","type":"AvardaUi.PhoneSelectInput.ScrollOptionIntoViewCmd msg -> AvardaUi.PhoneSelectInput.UpdateOption msg"},{"name":"setCountries","comment":" Set the available `CountryCode`s for country select. These country codes have to come from **AvardaUi.Util.CountryCode**.\n","type":"List.List AvardaUi.Util.CountryCode.CountryCode -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"setPhoneInputValue","comment":" Set the phone input value.\n","type":"String.String -> AvardaUi.PhoneSelectInput.Model -> AvardaUi.PhoneSelectInput.Model"},{"name":"setSelectedCountry","comment":" Set the selected `CountryCode`. It has to come from **AvardaUi.Util.CountryCode**.\n","type":"AvardaUi.Util.CountryCode.CountryCode -> AvardaUi.PhoneSelectInput.Model -> AvardaUi.PhoneSelectInput.Model"},{"name":"update","comment":" Update function for the PhoneSelectInput component. Call this in your update function to handle Select's internal messages\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandlePhoneSelectInput phoneSelectInputMsg ->\n                let\n                    ( updatedPhoneSelectInputModel, phoneSelectInputCmd ) =\n                        AvardaUi.PhoneSelectInput.update\n                            HandlePhoneSelectInput\n                            phoneSelectInputMsg\n                            model.phoneSelectInputModel\n                in\n                ( { model | phoneSelectInputModel = updatedPhoneSelectInputModel }, phoneSelectInputCmd )\n\n","type":"(AvardaUi.PhoneSelectInput.Msg -> msg) -> AvardaUi.PhoneSelectInput.Msg -> AvardaUi.PhoneSelectInput.Model -> ( AvardaUi.PhoneSelectInput.Model, Platform.Cmd.Cmd msg )"},{"name":"updateWith","comment":"\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandlePhoneSelectInput phoneSelectInputMsg ->\n                let\n                    ( updatedPhoneSelectInputModel, phoneSelectInputCmd ) =\n                        AvardaUi.PhoneSelectInput.updateWith\n                            [ AvardaUi.PhoneSelectInput.onSelect OnSelect\n                            , AvardaUi.PhoneSelectInput.onInput OnInput\n                            ]\n                            HandlePhoneSelectInput\n                            phoneSelectInputMsg\n                            model.phoneSelectInputModel\n                in\n                ( { model | phoneSelectInputModel = updatedPhoneSelectInputModel }, selectCmd )\n\n","type":"List.List (AvardaUi.PhoneSelectInput.UpdateOption msg) -> (AvardaUi.PhoneSelectInput.Msg -> msg) -> AvardaUi.PhoneSelectInput.Msg -> AvardaUi.PhoneSelectInput.Model -> ( AvardaUi.PhoneSelectInput.Model, Platform.Cmd.Cmd msg )"},{"name":"view","comment":" Render the PhoneSelectInput as HTML .\n\nAlways call this after you've built up the input with `new` and chained settings.\n\n    AvardaUi.PhoneSelectInput.new \"phone\" {...}\n        |> AvardaUi.PhoneSelectInput.withIsRequired True\n        |> AvardaUi.PhoneSelectInput.view\n\n","type":"(AvardaUi.PhoneSelectInput.Msg -> msg) -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> Html.Styled.Html msg"},{"name":"withBorderRadius","comment":" Adjust the border radius of the PhoneSelectInput.\n","type":"Basics.Float -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withHint","comment":" Add a hint text below the PhoneSelectInput.\n","type":"String.String -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withInputFloatingLabelBackgroundColor","comment":" Sets the background color of the floating input label.\nThis is useful when the color of the background behind the input is something else then `#FFFFFF`.\n","type":"Css.Color -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withInputMaxLength","comment":" Limit the maximum number of characters.\n","type":"Basics.Int -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withInputPlaceholder","comment":" Add a placeholder to the input.\n","type":"String.String -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withIsDisabled","comment":" Disable the PhoneSelectInput\n","type":"Basics.Bool -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withIsRequired","comment":" Mark the PhoneSelectInput as required.\n","type":"Basics.Bool -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withMaybeError","comment":" Show an error message and mark the PhoneSelectInput as invalid.\n**Replaces any active hint text.**\n","type":"Maybe.Maybe String.String -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"},{"name":"withMenuMaxHeight","comment":" Set a maximum height for the dropdown menu.\n","type":"Basics.Int -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg -> AvardaUi.PhoneSelectInput.PhoneSelectInput msg"}],"binops":[]},{"name":"AvardaUi.Select","comment":" This module provides a customizable accessible select dropdown. It uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withPlaceholder`](#withPlaceholder) or [`withIsRequired`](#withIsRequired).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating a Select\n\n@docs Model, init, Msg, update, new, view\n\n\n# Update with extra options\n\nYou can pass extra options / callbacks to this component using `updateWith`\n\n@docs updateWith, onSelect, scrollOptionIntoView\n\n\n# Setting options\n\n@docs setSelectedOption, setOptions\n\n\n# Getting selected option\n\n@docs getSelectedOption\n\n\n# Getting component state\n\n@docs getIsOpen\n\n\n# Configuration\n\n@docs withMaybeError, withIsRequired, withIsDisabled, withBorderRadius, withTopPx, withMenuMaxHeight\n@docs withCustomOptionViewFn, withCustomSelectedOptionViewFn\n@docs withAdditionalWrapperStyles, withAdditionalMenuStyles, withContainerPosition, withAriaLabel, withFloatingLabelBackgroundColor\n\n","unions":[],"aliases":[{"name":"Model","comment":" Model type for the Select component. Use this in your own model.\n\n    type alias DashboardModel =\n        { languageSelectModel : AvardaUi.Select.Model Language }\n\n","args":["a"],"type":"AvardaUi.SelectInternal.Model.Model a"},{"name":"Msg","comment":" Msg type for the Select component. Use this for the wrap msg in your own Msg type.\n\n    type DashboardMsg\n        = HandleLanguageSelect (AvardaUi.Select.Msg Language)\n        | NoUpdate\n\n","args":["a"],"type":"AvardaUi.SelectInternal.Msg.Msg a"}],"values":[{"name":"getIsOpen","comment":" Get information if Select is open or not.\n","type":"AvardaUi.Select.Model a -> Basics.Bool"},{"name":"getSelectedOption","comment":" Get the currently selected option.\nIf none is selected, returns _Nothing_.\n","type":"AvardaUi.Select.Model a -> Maybe.Maybe a"},{"name":"init","comment":" Initialize the Select model.\n\n    init : DashboardModel\n    init =\n        { languageSelectModel = AvardaUi.Select.init \"language\" }\n\n","type":"String.String -> AvardaUi.Select.Model a"},{"name":"new","comment":" Create a new Select component.\n\n    AvardaUi.Select.new\n        { label = \"Choose a language\"\n        , selectModel = dashboardModel.languageSelectModel\n        , optionToString = .name\n        }\n\n","type":"{ label : String.String, selectModel : AvardaUi.Select.Model a, optionToString : a -> String.String } -> AvardaUi.Select.Select a msg"},{"name":"onSelect","comment":" Use for triggering a message when an option is selected.\n","type":"(a -> msg) -> AvardaUi.SelectInternal.Update.UpdateOption a msg"},{"name":"scrollOptionIntoView","comment":" Use to fix issue with scrolling option into view when used in ShadowDOM.\n_elm/browser cannot find the element ID when this component is used by an app which uses ShadowDOM_\n\n    type alias ScrollOptionIntoViewCmd msg =\n        String -> Cmd msg\n\n","type":"AvardaUi.SelectInternal.Update.ScrollOptionIntoViewCmd msg -> AvardaUi.SelectInternal.Update.UpdateOption a msg"},{"name":"setOptions","comment":" Provide a list of options to the Select.\n**Note that this needs to be used as a builder, when you are creating a Select, not on init**\n","type":"List.List a -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"setSelectedOption","comment":" Set the selected option.\n","type":"a -> AvardaUi.Select.Model a -> AvardaUi.Select.Model a"},{"name":"update","comment":" Update function for the Select component. Call this in your update function to handle Select's internal messages\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandleLanguageSelect selectMsg ->\n                let\n                    ( updatedSelectModel, selectCmd ) =\n                        AvardaUi.Select.update\n                            HandleLanguageSelect\n                            selectMsg\n                            model.languageSelectModel\n                in\n                ( { model | languageSelectModel = updatedSelectModel }, selectCmd )\n\n","type":"(AvardaUi.Select.Msg a -> msg) -> AvardaUi.Select.Msg a -> AvardaUi.Select.Model a -> ( AvardaUi.Select.Model a, Platform.Cmd.Cmd msg )"},{"name":"updateWith","comment":"\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandleLanguageSelect selectMsg ->\n                let\n                    ( updatedSelectModel, selectCmd ) =\n                        AvardaUi.Select.updateWith [ AvardaUi.Select.onSelect SaveLanguageToStorage ]\n                            HandleLanguageSelect\n                            selectMsg\n                            model.languageSelectModel\n                in\n                ( { model | languageSelectModel = updatedSelectModel }, selectCmd )\n\n","type":"List.List (AvardaUi.SelectInternal.Update.UpdateOption a msg) -> (AvardaUi.Select.Msg a -> msg) -> AvardaUi.Select.Msg a -> AvardaUi.Select.Model a -> ( AvardaUi.Select.Model a, Platform.Cmd.Cmd msg )"},{"name":"view","comment":" Render the Select as HTML.\n\nAlways call this after you've built up the select with `new` and chained settings.\n\n    AvardaUi.Select.new {...}\n        |> AvardaUi.Select.withIsRequired True\n        |> AvardaUi.Select.view\n\n","type":"(AvardaUi.Select.Msg a -> msg) -> AvardaUi.Select.Select a msg -> Html.Styled.Html msg"},{"name":"withAdditionalMenuStyles","comment":" Add additional menu container styles.\n","type":"List.List Css.Style -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withAdditionalWrapperStyles","comment":" Add additional styles.\n","type":"List.List Css.Style -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withAriaLabel","comment":" Set a custom ARIA label (instead of label element).\n","type":"String.String -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withBorderRadius","comment":" Change the border radius of the Select.\n","type":"Basics.Float -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withContainerPosition","comment":" Set the CSS position of the Select container.\n","type":"Css.Position {} -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withCustomOptionViewFn","comment":" Provide a custom view function for rendering options.\n","type":"(a -> Html.Styled.Html msg) -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withCustomSelectedOptionViewFn","comment":" Provide a custom view function for the selected option.\n","type":"(a -> Html.Styled.Html msg) -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withFloatingLabelBackgroundColor","comment":" Sets the background color of the floating label.\nThis is useful when the color of the background behind the select is something else then `#FFFFFF`.\n","type":"Css.Color -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withIsDisabled","comment":" Disable the select.\nVisually dims and prevents user actions.\n","type":"Basics.Bool -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withIsRequired","comment":" Mark the Select as required.\n","type":"AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withMaybeError","comment":" Show an error message and mark the Select as invalid.\n","type":"Maybe.Maybe String.String -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withMenuMaxHeight","comment":" Set a maximum height for the dropdown menu.\n","type":"Basics.Int -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"},{"name":"withTopPx","comment":" Adjust the gap between the Select and the dropdown menu.\n","type":"Basics.Float -> AvardaUi.Select.Select a msg -> AvardaUi.Select.Select a msg"}],"binops":[]},{"name":"AvardaUi.SelectNative","comment":" A native styled HTML `<select>` without custom dropdown menu. It uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withPlaceholder`](#withPlaceholder) or [`withIsRequired`](#withIsRequired).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating a SelectNative\n\n@docs new, view\n\n\n# Configuration\n\n@docs withAriaLabel, withBorderRadius, withCustomOptionSorting, withIsDisabled, withIsRequired, withMaybeError, withOptionToLabel, withFloatingLabelBackgroundColor\n\n\n# Setting Options\n\n@docs setBasicOptions, setOptionGroups\n\n","unions":[],"aliases":[],"values":[{"name":"new","comment":" Create a new `SelectNative`.\n\n    SelectNative.new \"country\"\n        { label = \"Country\"\n        , optionToStringValue = .code\n        , stringValueToOption = countryToString\n        , onChange = SelectedCountry\n        , placeholder = \"Choose country\"\n        , selectedOption = Nothing\n        }\n\n","type":"String.String -> { label : String.String, optionToStringValue : a -> String.String, stringValueToOption : String.String -> a, onChange : a -> msg, placeholder : String.String, selectedOption : Maybe.Maybe a } -> AvardaUi.SelectNative.Select a msg"},{"name":"setBasicOptions","comment":" Set a flat list of options.\n","type":"List.List a -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"setOptionGroups","comment":" Set a grouped list of options. Each inner list will render as an `<optgroup>`.\n","type":"List.List (List.List a) -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"view","comment":" Render the SelectNative as HTML.\n\nAlways call this after you've built up the input with `new` and chained settings.\n\n    AvardaUi.SelectNative.new {...}\n        |> AvardaUi.SelectNative.withIsRequired True\n        |> AvardaUi.SelectNative.view\n\n","type":"AvardaUi.SelectNative.Select a msg -> Html.Styled.Html msg"},{"name":"withAriaLabel","comment":" Set a custom ARIA label.\n","type":"String.String -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withBorderRadius","comment":" Adjust the border radius.\n","type":"Basics.Float -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withCustomOptionSorting","comment":" Provide a custom sort function for the option list(s).\n","type":"(List.List a -> List.List a) -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withFloatingLabelBackgroundColor","comment":" Sets the background color of the floating label.\nThis is useful when the color of the background behind the select is something else then `#FFFFFF`.\n","type":"Css.Color -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withIsDisabled","comment":" Disable the input.\nVisually dims and prevents user actions.\n","type":"Basics.Bool -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withIsRequired","comment":" Mark the select as required.\n","type":"Basics.Bool -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withMaybeError","comment":" Show an error message and mark the select as invalid.\n","type":"Maybe.Maybe String.String -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"},{"name":"withOptionToLabel","comment":" Provide a custom label function for options.\n","type":"(a -> String.String) -> AvardaUi.SelectNative.Select a msg -> AvardaUi.SelectNative.Select a msg"}],"binops":[]},{"name":"AvardaUi.SuggestionInput","comment":" This module provides a component that allows you to get autocomplete suggestions. These can be either hardcoded or you can use remote suggestions obtained from API call.\nIt uses the [builder pattern](https://sporto.github.io/elm-patterns/basic/builder-pattern.html):\n\n1.  Start with [`new`](#new) to create a base input.\n2.  Chain configuration functions like [`withPlaceholder`](#withPlaceholder) or [`withIsRequired`](#withIsRequired).\n3.  Finish with [`view`](#view) to render it.\n\n\n# Creating a SuggestionInput\n\n@docs Model, init, setSuggestions, reinit, Msg, update, new, view\n\n\n# Setting suggestion list\n\nTo use it with the hardcoded list of suggestions, just [`setSuggestions`](#setSuggestions) after [`init`](#init).\n\n    SuggestionInput.init \"address\"\n        |> SuggestionInput.setSuggestions suggestionList\n\nIf you wish to use it with remote suggestions, add a [`remoteSuggestions`](#remoteSuggestions) update option in your [`updateWith`](#updateWith) function.\n\n    SuggestionInput.updateWith\n        [ SuggestionInput.remoteSuggestions { requestCmd = fetchSuggestions, requestMinInputLength = 3 } ]\n\n\n# Setting input value\n\n@docs setInputValue\n\n\n# Getting selected suggestion\n\n@docs getSelectedSuggestion\n\n\n# Update with extra options\n\nYou can pass extra options / callbacks to this component using `updateWith`\n\n@docs updateWith, onSelect, onInput, remoteSuggestions, scrollSuggestionIntoView\n\n\n# Configuration\n\n@docs withBorderRadius, withHint, withPlaceholder, withIsDisabled, withIsRequired, withMaybeError, withMenuMaxHeight, withAriaLabel, withAutocomplete, withCustomSuggestionViewFn, withLeftChild, withRightChild, withSelectedSuggestionAdditionalStyles, withTopPx, withFloatingLabelBackgroundColor\n\n","unions":[],"aliases":[{"name":"Model","comment":" Model type for the SuggestionInput component. Use this in your own model.\n\n    type alias ContactInfoModel =\n        { addressSuggestionInputModel : AvardaUi.SuggestionInput.Model Address }\n\n","args":["a"],"type":"AvardaUi.SuggestionInputInternal.Model.Model a"},{"name":"Msg","comment":" Msg type for the SuggestionInput component. Use this for the wrap msg in your own Msg type.\n\n    type ContactInfoMsg\n        = HandleAddressSuggestionInput (AvardaUi.SuggestionInput.Msg Address)\n        | NoUpdate\n\n","args":["a"],"type":"AvardaUi.SuggestionInputInternal.Msg.Msg a"}],"values":[{"name":"getSelectedSuggestion","comment":" Get the currently selected suggestion.\nIf none is selected, returns `Nothing`.\n_Note that if you select a suggestion and then write anything to the input, the suggestion is no longer selected in the model_\n","type":"AvardaUi.SuggestionInput.Model a -> Maybe.Maybe a"},{"name":"init","comment":" Initialize the SuggestionInput model.\n\n    init : ContactInfoModel\n    init =\n        { addressSuggestionInputModel = AvardaUi.SuggestionInput.init \"address\" }\n\n","type":"String.String -> AvardaUi.SuggestionInput.Model a"},{"name":"new","comment":" Create a new SuggestionInput component.\n\n    AvardaUi.SuggestionInput.new\n        { label = \"Address\"\n        , suggestionInputModel = addressSuggestionInputModel\n        , suggestionToInputValue = .addressLine1\n        }\n\n","type":"{ label : String.String, suggestionInputModel : AvardaUi.SuggestionInput.Model a, suggestionToInputValue : a -> String.String } -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"onInput","comment":" Used for triggering a message when the input is typed into.\n","type":"(String.String -> msg) -> AvardaUi.SuggestionInputInternal.Update.UpdateOption a msg"},{"name":"onSelect","comment":" Used for triggering a message when suggestion is selected.\n","type":"(a -> msg) -> AvardaUi.SuggestionInputInternal.Update.UpdateOption a msg"},{"name":"reinit","comment":" In some cases it's nice to have the option to re-init the component with no need to pass `id` again.\n","type":"AvardaUi.SuggestionInput.Model a -> AvardaUi.SuggestionInput.Model a"},{"name":"remoteSuggestions","comment":" Used in [`updateWith`](#updateWith) in order to use suggestions obtain from an API call instead of hardcoded ones set with [`setSuggestions`](#setSuggestions).\n\nThe `RemoteSuggestionsPayload` looks like this:\n\n    type alias RemoteSuggestionsPayload a msg =\n        { requestCmd : String -> (RemoteData.WebData (List a) -> msg) -> Cmd msg\n        , requestMinInputLength : Int\n        }\n\nwhere `String` is the request's query.\n\n**Example of the `requestCmd`**:\n\n    getAddressSuggestions : String -> (RemoteData.WebData (List Address) -> msg) -> Cmd msg\n    getAddressSuggestions query msg =\n        { method = \"GET\"\n        , headers = []\n        , url = \"https://api.example.com/suggestions?query=\" ++ query\n        , body = Http.emptyBody\n        , expect = Http.expectJson (RemoteData.fromResult >> msg) addressSuggestionDecoder\n        , timeout = Nothing\n        , tracker = Nothing\n        }\n            |> Http.request\n\n","type":"AvardaUi.SuggestionInputInternal.Update.RemoteSuggestionsPayload a msg -> AvardaUi.SuggestionInputInternal.Update.UpdateOption a msg"},{"name":"scrollSuggestionIntoView","comment":" Used to fix issue with scrolling option into view when used in ShadowDOM.\n_elm/browser cannot find the element ID when this component is used by an app which uses ShadowDOM_\n\n    type alias ScrollOptionIntoViewCmd msg =\n        String -> Cmd msg\n\n","type":"AvardaUi.SuggestionInputInternal.Update.ScrollSuggestionIntoViewCmd msg -> AvardaUi.SuggestionInputInternal.Update.UpdateOption a msg"},{"name":"setInputValue","comment":" Set the input value.\n","type":"String.String -> AvardaUi.SuggestionInput.Model a -> AvardaUi.SuggestionInput.Model a"},{"name":"setSuggestions","comment":" Used after [`init`](#init) to use hardcoded list of suggestions.\n","type":"List.List a -> AvardaUi.SuggestionInput.Model a -> AvardaUi.SuggestionInput.Model a"},{"name":"update","comment":"\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandleAddressSuggestionsInput suggestionInputMsg ->\n                let\n                    ( HandleAddressSuggestionInput, suggestionInputCmd ) =\n                        SuggestionInput.update\n                            HandleAddressSuggestionsInput\n                            suggestionInputMsg\n                            model.addressSuggestionInputModel\n                in\n                ( { model | addressSuggestionInputModel = HandleAddressSuggestionInput }, suggestionInputCmd )\n\n","type":"(AvardaUi.SuggestionInput.Msg a -> msg) -> AvardaUi.SuggestionInput.Msg a -> AvardaUi.SuggestionInput.Model a -> ( AvardaUi.SuggestionInput.Model a, Platform.Cmd.Cmd msg )"},{"name":"updateWith","comment":"\n\n    update : Model -> Msg -> ( Model, Cmd Msg )\n    update model msg =\n        case msg of\n            HandleAddressSuggestionsInput suggestionInputMsg ->\n                let\n                    ( HandleAddressSuggestionInput, suggestionInputCmd ) =\n                        SuggestionInput.updateWith\n                            [ SuggestionInput.onInput InsertedAddress\n                            , SuggestionInput.onSelect ClickedAddressSuggestion\n                            ]\n                            HandleAddressSuggestionsInput\n                            suggestionInputMsg\n                            model.addressSuggestionInputModel\n                in\n                ( { model | addressSuggestionInputModel = HandleAddressSuggestionInput }, suggestionInputCmd )\n\n","type":"List.List (AvardaUi.SuggestionInputInternal.Update.UpdateOption a msg) -> (AvardaUi.SuggestionInput.Msg a -> msg) -> AvardaUi.SuggestionInput.Msg a -> AvardaUi.SuggestionInput.Model a -> ( AvardaUi.SuggestionInput.Model a, Platform.Cmd.Cmd msg )"},{"name":"view","comment":" Render the Select as HTML.\n\nAlways call this after you've built up the input with `new` and chained settings.\n\n    AvardaUi.SuggestionInput.new \"address\"\n        |> AvardaUi.SuggestionInput.withIsRequired True\n        |> AvardaUi.SuggestionInput.view\n\n","type":"(AvardaUi.SuggestionInput.Msg a -> msg) -> AvardaUi.SuggestionInput.SuggestionInput a msg -> Html.Styled.Html msg"},{"name":"withAriaLabel","comment":" Set a custom ARIA label.\n","type":"String.String -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withAutocomplete","comment":" Enable autocomplete with a given string like `\"address1\"`. It is set to `\"off\"` by default.\n","type":"String.String -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withBorderRadius","comment":" Adjust the border radius of the input box.\n","type":"Basics.Float -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withCustomSuggestionViewFn","comment":" Provide a custom view function for rendering suggestions.\n","type":"(a -> Html.Styled.Html msg) -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withFloatingLabelBackgroundColor","comment":" Sets the background color of the floating label.\nThis is useful when the color of the background behind the input is something else then `#FFFFFF`.\n","type":"Css.Color -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withHint","comment":" Add a hint text below the input.\n","type":"String.String -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withIsDisabled","comment":" Disable the input.\nVisually dims and prevents user actions.\n","type":"Basics.Bool -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withIsRequired","comment":" Mark the input as required.\nThis adds a `*` to the label and sets `required=true`.\n","type":"Basics.Bool -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withLeftChild","comment":" Add a left-side child element.\n","type":"Html.Styled.Html msg -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withMaybeError","comment":" Show an error message and mark the input invalid.\n**Replaces any active hint text.**\n","type":"Maybe.Maybe String.String -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withMenuMaxHeight","comment":" Set a maximum height for the dropdown menu.\n","type":"Basics.Int -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withPlaceholder","comment":" Add a placeholder to the input.\n","type":"String.String -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withRightChild","comment":" Add a right-side child element.\n","type":"Html.Styled.Html msg -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withSelectedSuggestionAdditionalStyles","comment":" Provide additional styles for the selected suggestion.\n","type":"List.List Css.Style -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"},{"name":"withTopPx","comment":" Adjust the gap between the Select and the dropdown menu.\n","type":"Basics.Float -> AvardaUi.SuggestionInput.SuggestionInput a msg -> AvardaUi.SuggestionInput.SuggestionInput a msg"}],"binops":[]},{"name":"AvardaUi.Theme.Colors","comment":" This module provides all the available colors.\n\n\n# Base colors\n\n@docs white, black, transparent\n\n\n# Design colors\n\n@docs grayscale1, grayscale2, grayscale3, grayscale4, grayscale5, grayscale6, grayscale7, grayscale8, grayscale9, grayscale10, grayscale11, grayscale12\n@docs emerald1, emerald2, emerald3, emerald4, emerald5, emerald6, emerald7, emerald8, emerald9, emerald10, emerald11, emerald12\n@docs mint1, mint2, mint3, mint4, mint5, mint6, mint7, mint8, mint9, mint10, mint11, mint12\n@docs green1, green2, green3, green4, green5, green6, green7, green8, green9, green10, green11, green12\n@docs yellow1, yellow2, yellow3, yellow4, yellow5, yellow6, yellow7, yellow8, yellow9, yellow10, yellow11, yellow12\n@docs red1, red2, red3, red4, red5, red6, red7, red8, red9, red10, red11, red12\n@docs blue1, blue2, blue3, blue4, blue5, blue6, blue7, blue8, blue9, blue10, blue11, blue12\n\n","unions":[],"aliases":[],"values":[{"name":"black","comment":" `#000000`\n","type":"Css.Color"},{"name":"blue1","comment":" `#FDFDFE`\n","type":"Css.Color"},{"name":"blue10","comment":" `#3D56BC`\n","type":"Css.Color"},{"name":"blue11","comment":" `#415BC2`\n","type":"Css.Color"},{"name":"blue12","comment":" `#202D5B`\n","type":"Css.Color"},{"name":"blue2","comment":" `#F7F9FF`\n","type":"Css.Color"},{"name":"blue3","comment":" `#EDF2FD`\n","type":"Css.Color"},{"name":"blue4","comment":" `#E1E9FF`\n","type":"Css.Color"},{"name":"blue5","comment":" `#D2DFFF`\n","type":"Css.Color"},{"name":"blue6","comment":" `#C0D1FF`\n","type":"Css.Color"},{"name":"blue7","comment":" `#AABEF6`\n","type":"Css.Color"},{"name":"blue8","comment":" `#8CA4EC`\n","type":"Css.Color"},{"name":"blue9","comment":" `#8CA4EC`\n","type":"Css.Color"},{"name":"emerald1","comment":" `#F9FEFD`\n","type":"Css.Color"},{"name":"emerald10","comment":" `#004B4B`\n","type":"Css.Color"},{"name":"emerald11","comment":" `#307171`\n","type":"Css.Color"},{"name":"emerald12","comment":" `#123434`\n","type":"Css.Color"},{"name":"emerald2","comment":" `#F3FBFA`\n","type":"Css.Color"},{"name":"emerald3","comment":" `#E2F6F5`\n","type":"Css.Color"},{"name":"emerald4","comment":" `#D1F0EF`\n","type":"Css.Color"},{"name":"emerald5","comment":" `#C1E2E2`\n","type":"Css.Color"},{"name":"emerald6","comment":" `#BBDBDA`\n","type":"Css.Color"},{"name":"emerald7","comment":" `#B4D3D2`\n","type":"Css.Color"},{"name":"emerald8","comment":" `#7FA5A5`\n","type":"Css.Color"},{"name":"emerald9","comment":" `#195D5D`\n","type":"Css.Color"},{"name":"grayscale1","comment":" `#FCFCFC`\n","type":"Css.Color"},{"name":"grayscale10","comment":" `#838383`\n","type":"Css.Color"},{"name":"grayscale11","comment":" `#646464`\n","type":"Css.Color"},{"name":"grayscale12","comment":" `#202020`\n","type":"Css.Color"},{"name":"grayscale2","comment":" `#F9F9F9`\n","type":"Css.Color"},{"name":"grayscale3","comment":" `#F0F0F0`\n","type":"Css.Color"},{"name":"grayscale4","comment":" `#E8E8E8`\n","type":"Css.Color"},{"name":"grayscale5","comment":" `#E0E0E0`\n","type":"Css.Color"},{"name":"grayscale6","comment":" `#D9D9D9`\n","type":"Css.Color"},{"name":"grayscale7","comment":" `#CECECE`\n","type":"Css.Color"},{"name":"grayscale8","comment":" `#BBBBBB`\n","type":"Css.Color"},{"name":"grayscale9","comment":" `#8D8D8D`\n","type":"Css.Color"},{"name":"green1","comment":" `#FBFEFB`\n","type":"Css.Color"},{"name":"green10","comment":" `#3E9B4F`\n","type":"Css.Color"},{"name":"green11","comment":" `#2A7E3B`\n","type":"Css.Color"},{"name":"green12","comment":" `#203C25`\n","type":"Css.Color"},{"name":"green2","comment":" `#F5FBF6`\n","type":"Css.Color"},{"name":"green3","comment":" `#E9F6E9`\n","type":"Css.Color"},{"name":"green4","comment":" `#DAF1DB`\n","type":"Css.Color"},{"name":"green5","comment":" `#C9E8CA`\n","type":"Css.Color"},{"name":"green6","comment":" `#B2DDB5`\n","type":"Css.Color"},{"name":"green7","comment":" `#94CE9A`\n","type":"Css.Color"},{"name":"green8","comment":" `#65BA74`\n","type":"Css.Color"},{"name":"green9","comment":" `#46A758`\n","type":"Css.Color"},{"name":"mint1","comment":" `#FBFDFB`\n","type":"Css.Color"},{"name":"mint10","comment":" `#84E98F`\n","type":"Css.Color"},{"name":"mint11","comment":" `#407C47`\n","type":"Css.Color"},{"name":"mint12","comment":" `#29422B`\n","type":"Css.Color"},{"name":"mint2","comment":" `#F5FBF5`\n","type":"Css.Color"},{"name":"mint3","comment":" `#E3F9E4`\n","type":"Css.Color"},{"name":"mint4","comment":" `#D1F4D2`\n","type":"Css.Color"},{"name":"mint5","comment":" `#BEEBC1`\n","type":"Css.Color"},{"name":"mint6","comment":" `#ABDFAE`\n","type":"Css.Color"},{"name":"mint7","comment":" `#93CE97`\n","type":"Css.Color"},{"name":"mint8","comment":" `#70BA77`\n","type":"Css.Color"},{"name":"mint9","comment":" `#94F29D`\n","type":"Css.Color"},{"name":"red1","comment":" `#FFFCFC`\n","type":"Css.Color"},{"name":"red10","comment":" `#C52C2D`\n","type":"Css.Color"},{"name":"red11","comment":" `#C12928`\n","type":"Css.Color"},{"name":"red12","comment":" `#611F1C`\n","type":"Css.Color"},{"name":"red2","comment":" `#FFF8F7`\n","type":"Css.Color"},{"name":"red3","comment":" `#FEECE9`\n","type":"Css.Color"},{"name":"red4","comment":" `#FFDCD7`\n","type":"Css.Color"},{"name":"red5","comment":" `#FFCEC8`\n","type":"Css.Color"},{"name":"red6","comment":" `#FCBEB7`\n","type":"Css.Color"},{"name":"red7","comment":" `#F3AAA2`\n","type":"Css.Color"},{"name":"red8","comment":" `#E99087`\n","type":"Css.Color"},{"name":"red9","comment":" `#D43E3B`\n","type":"Css.Color"},{"name":"transparent","comment":" `#00000000`\n","type":"Css.Color"},{"name":"white","comment":" `#FFFFFF`\n","type":"Css.Color"},{"name":"yellow1","comment":" `#FEFDFB`\n","type":"Css.Color"},{"name":"yellow10","comment":" `#FCC23F`\n","type":"Css.Color"},{"name":"yellow11","comment":" `#906700`\n","type":"Css.Color"},{"name":"yellow12","comment":" `#463A21`\n","type":"Css.Color"},{"name":"yellow2","comment":" `#FFFAEB`\n","type":"Css.Color"},{"name":"yellow3","comment":" `#FFF2C3`\n","type":"Css.Color"},{"name":"yellow4","comment":" `#FFE8A3`\n","type":"Css.Color"},{"name":"yellow5","comment":" `#FFDD82`\n","type":"Css.Color"},{"name":"yellow6","comment":" `#FCD17D`\n","type":"Css.Color"},{"name":"yellow7","comment":" `#EAC171`\n","type":"Css.Color"},{"name":"yellow8","comment":" `#D8A949`\n","type":"Css.Color"},{"name":"yellow9","comment":" `#FFCA37`\n","type":"Css.Color"}],"binops":[]},{"name":"AvardaUi.Util.Builder","comment":" Helpers for building components with the Elm builder pattern.\n\nThese functions make it easier to conditionally apply configuration when constructing UI components.\n\n@docs withMaybeBuilder, withConditionalBuilder\n\n","unions":[],"aliases":[],"values":[{"name":"withConditionalBuilder","comment":" Apply a builder function only if a condition is `True`.\nIf the condition is `False`, the builder is skipped.\n\n    Input.new \"username\" {...}\n        |> BuilderUtil.withConditionalBuilder (Input.withLeftChild iconView) shouldShowLeftIcon\n        |> Input.view\n\n","type":"(builder -> builder) -> Basics.Bool -> builder -> builder"},{"name":"withMaybeBuilder","comment":" Apply a builder function if there is a `Just value`.\nIf the value is `Nothing`, the builder is skipped.\n\n    Input.new \"username\" {...}\n        |> BuilderUtil.withMaybeBuilder Input.withPlaceholder (Just \"Enter username\")\n        |> Input.view\n\n","type":"(prop -> builder -> builder) -> Maybe.Maybe prop -> builder -> builder"}],"binops":[]},{"name":"AvardaUi.Util.CountryCode","comment":" Utility module for handling ISO-style country codes used in the AvardaUi.PhoneSelectInput.\n\nThis module defines a `CountryCode` type representing supported countries and provides\nhelpers to convert between the `CountryCode` type and its two-letter string code.\n\n\n# Types\n\n@docs CountryCode\n\n\n# Parsers\n\n@docs fromString, toString, toMaybeString\n\n","unions":[{"name":"CountryCode","comment":" Supported country codes.\n","args":[],"cases":[["SE",[]],["FI",[]],["NO",[]],["DK",[]],["PL",[]],["EE",[]],["LV",[]],["SK",[]],["CZ",[]],["AT",[]],["DE",[]],["XI",[]],["GL",[]],["FO",[]],["Unknown",[]]]}],"aliases":[],"values":[{"name":"fromString","comment":" Parses a two-letter country code string into a `CountryCode` value.\nReturns `Unknown` if the string does not match any supported code.\n","type":"String.String -> AvardaUi.Util.CountryCode.CountryCode"},{"name":"toMaybeString","comment":" Converts a `CountryCode` value into its corresponding two-letter string code wrapped in `Maybe`.\nReturns `Nothing` for `Unknown`.\n","type":"AvardaUi.Util.CountryCode.CountryCode -> Maybe.Maybe String.String"},{"name":"toString","comment":" Converts a `CountryCode` value into its corresponding two-letter string code.\nReturns an empty string for `Unknown`.\n","type":"AvardaUi.Util.CountryCode.CountryCode -> String.String"}],"binops":[]},{"name":"AvardaUi.Util.KeyPress","comment":" Utility functions for handling keyboard events in Elm.\n\nThis module provides a way to bind messages to specific keys.\nIt exposes helpers for `keydown`, `keyup`, and `keypress` events, with or without `preventDefault`.\n\n\n# KeyboardKey type\n\n@docs KeyboardKey\n\n\n# Event Handlers\n\n@docs onKeyDown, onKeyDownPreventDefault, onKeyUp, onKeyUpPreventDefault, onKeyPress, onKeyPressPreventDefault\n\n\n## Example\n\n    import AvardaUi.Util.KeyPress as KeyPressUtil\n\n    view : Html Msg\n    view =\n        Html.input\n            [ KeyPressUtil.onKeyDown [ ( KeyPress.Enter, HandleSubmit ) ]\n            ]\n            []\n\n","unions":[{"name":"KeyboardKey","comment":" Supported keyboard keys so far.\n","args":[],"cases":[["Enter",[]],["Esc",[]],["ArrowUp",[]],["ArrowDown",[]],["Tab",[]],["Space",[]]]}],"aliases":[],"values":[{"name":"onKeyDown","comment":" Attach a `keydown` listener.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"},{"name":"onKeyDownPreventDefault","comment":" Attach a `keydown` listener and prevent the default browser action.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"},{"name":"onKeyPress","comment":" Attach a `keypress` listener.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"},{"name":"onKeyPressPreventDefault","comment":" Attach a `keypress` listener and prevent the default browser action.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"},{"name":"onKeyUp","comment":" Attach a `keyup` listener.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"},{"name":"onKeyUpPreventDefault","comment":" Attach a `keyup` listener and prevent the default browser action.\n","type":"List.List ( AvardaUi.Util.KeyPress.KeyboardKey, msg ) -> Html.Styled.Attribute msg"}],"binops":[]}]