[{"name":"Pico","comment":" Picomponents is a UI componentn library using [pico](https://picocss.com)\n\n\n## Setup\n\n@docs includeFromCDN\n\n\n## Layout\n\n@docs main_, Layout, grid\n\n\n## Content\n\n\n### Typography\n\n@docs abbr, bold, italic, emphasis, deleted, inserted, kbd, mark, strikethrough, superscript, subscript, underline\n\n\n### Buttons\n\n@docs primaryButton, secondaryButton, contrastButton, busy, outline\n\n\n### Links\n\n@docs primaryLink, secondaryLink, contrastLink, asButton\n\n### Tables\n\n@docs Row, Cell, table\n\n### Components\n\n@docs accordion, dropdown, nav, Column\n\n\n### Tooltips\n\n@docs tooltip, tooltipRight, tooltipLeft, tooltipBottom\n\n\n### Inputs\n\n@docs switch, invalid\n\n\n# Utilities\n\n@docs role, br, hr, aria, errorView, rtl, ltr\n\n","unions":[{"name":"Layout","comment":" Used to define the layout of the application\n","args":[],"cases":[["Centered",[]],["FullWidth",[]]]}],"aliases":[{"name":"Cell","comment":" A (table) cell can contain multiple Html elements.\n    This is just an alias to make the type signature of\n    functions that can receive it more readable.\n","args":["msg"],"type":"List.List (Html.Html msg)"},{"name":"Column","comment":" A grid column can contain multiple cells that\n    can contain multiple Html elements.\n    This is just an alias to make the type signature of\n    functions that can receive `Columns` more readable.\n","args":["msg"],"type":"List.List (Pico.Cell msg)"},{"name":"Row","comment":" A (table) row can contain multiple cells that \n    can contain multiple Html elements.\n    This is just an alias to make the type signature of\n    functions that can receive it more readable.\n","args":["msg"],"type":"List.List (Pico.Cell msg)"}],"values":[{"name":"abbr","comment":" Abbreviation element\nThe first argument is the abbreviation and the second is the meaning.\n\n    abbr \"tldr\" \"too long didn't  read\"\n\n","type":"String.String -> String.String -> Html.Html msg"},{"name":"accordion","comment":" Renders an [accordion](https://picocss.com/docs/accordion).\n\n    accordion [ asButton ] [ text \"open me\" ] [ text \"the glorious details\" ]\n\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"aria","comment":" A shortcut for `attribute \"aria-\" ++ name` value\n","type":"String.String -> String.String -> Html.Attribute msg"},{"name":"asButton","comment":" Give an element (for example a link) the look of a button\na [asButton][text \"Click me!\"]\n","type":"Html.Attribute msg"},{"name":"bold","comment":" Bold element\n","type":"String.String -> Html.Html msg"},{"name":"br","comment":" A shortcut for `br [] []`\n","type":"Html.Html msg"},{"name":"busy","comment":" Add a [loading indicator](https://picocss.com/docs/loading) to an element\n","type":"Html.Attribute msg"},{"name":"contrastButton","comment":" Renders a [contrast button](https://picocss.com/docs/button)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"contrastLink","comment":" Renders a [contrast link](https://picocss.com/docs/link)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"deleted","comment":" Deleted element\n","type":"String.String -> Html.Html msg"},{"name":"dropdown","comment":" Pico uses the [details element](https://picocss.com/docs/dropdown) as markdown for a dropdown.\nThis function lets you create a dropdown from the \"collapsed\" content and a multiple items to display in the expanded state.\n","type":"Pico.Cell msg -> Pico.Column msg -> Html.Html msg"},{"name":"emphasis","comment":" Emphasis element\n","type":"String.String -> Html.Html msg"},{"name":"errorView","comment":" Displays errors next to an input field.\n","type":"(FancyForms.FormState.Error error -> String.String) -> List.List (FancyForms.FormState.Error error) -> List.List (Html.Html msg) -> List.List (Html.Html msg)"},{"name":"grid","comment":" Creates a [simple responseive grid](https://picocss.com/docs/grid)\nwith the given class name.\n","type":"String.String -> Pico.Row msg -> Html.Html msg"},{"name":"hr","comment":" A shortcut for `hr [] []`\n","type":"Html.Html msg"},{"name":"includeFromCDN","comment":" Include the CSS for the given theme.\n","type":"Pico.Theme.Theme -> Html.Html msg"},{"name":"inserted","comment":" Inserted element\n","type":"String.String -> Html.Html msg"},{"name":"invalid","comment":" A shortcut for `attribute \"aria-invalid\" \"true\"`\n","type":"Html.Attribute msg"},{"name":"italic","comment":" Italic element\n","type":"String.String -> Html.Html msg"},{"name":"kbd","comment":" Keyboard shortcut element\n","type":"String.String -> Html.Html msg"},{"name":"ltr","comment":" A shortcut for dir=\"ltr\" to set the text direction to left-to-right.\n","type":"Html.Attribute msg"},{"name":"main_","comment":" The [main layout container](https://picocss.com/docs/container) of the application\n","type":"Pico.Layout -> Pico.Theme.ColorScheme -> List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"mark","comment":" Mark element\n","type":"String.String -> Html.Html msg"},{"name":"nav","comment":" A helper to construct a `nav` element in a more concise way.\n    In [Pico.css](https://picocss.com/docs/nav) the `nav` element\n    is laid out as a list of columns.\n","type":"List.List (Pico.Column msg) -> Html.Html msg"},{"name":"outline","comment":" Render this button in the \"outline\" style\n","type":"Html.Attribute msg"},{"name":"primaryButton","comment":" Renders a [primary button](https://picocss.com/docs/button)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"primaryLink","comment":" Renders a [primary link](https://picocss.com/docs/link)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"role","comment":" \"role\" attribute\n","type":"String.String -> Html.Attribute msg"},{"name":"rtl","comment":" A shortcut for dir=\"rtl\" to set the text direction to right-to-left.\n","type":"Html.Attribute msg"},{"name":"secondaryButton","comment":" Renders a [secondary button](https://picocss.com/docs/button)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"secondaryLink","comment":" Renders a [secondary link](https://picocss.com/docs/link)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"strikethrough","comment":" Strikethrough element\n","type":"String.String -> Html.Html msg"},{"name":"subscript","comment":" Subscript element\n","type":"String.String -> Html.Html msg"},{"name":"superscript","comment":" Superscript element\n","type":"String.String -> Html.Html msg"},{"name":"switch","comment":" A checkbox rendered as a [switch](https://picocss.com/docs/forms/switch)\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"table","comment":" A helper to construct a table in a more concise way.\n  It takes the attributes for the table, the header row and\n  the list of rows.\n","type":"List.List (Html.Attribute msg) -> Pico.Row msg -> List.List (Pico.Row msg) -> Html.Html msg"},{"name":"tooltip","comment":" Adds a tooltip displaying on top of the element.\n","type":"String.String -> Html.Attribute msg"},{"name":"tooltipBottom","comment":" Adds a tooltip displaying at the bottom of the element.\n","type":"String.String -> List.List (Html.Attribute msg)"},{"name":"tooltipLeft","comment":" Adds a tooltip displaying to the left of the element.\n","type":"String.String -> List.List (Html.Attribute msg)"},{"name":"tooltipRight","comment":" Adds a tooltip displaying to the right of the element.\n","type":"String.String -> List.List (Html.Attribute msg)"},{"name":"underline","comment":" Underline element\n","type":"String.String -> Html.Html msg"}],"binops":[]},{"name":"Pico.Form","comment":" This module provides [FancyForm](https://blog.axelerator.de/fancy-forms/) widgets that allow\nyou to build forms that use the markup of the [pico](https://picocss.com) CSS framework.\n\n\n## Widgets\n\n@docs textInput, dropdown, integerInput, floatInput, dateInput, switch\n\n","unions":[],"aliases":[],"values":[{"name":"dateInput","comment":" A `Date` input with the given label\n","type":"String.String -> FancyForms.Widgets.Date.DateInput customError"},{"name":"dropdown","comment":" A `Select` widget with the given label\n","type":"String.String -> FancyForms.Form.Variants b -> FancyForms.Widgets.Dropdown.SelectWidget b customError"},{"name":"floatInput","comment":" A `Float` input with the given labelText and attributes\n","type":"String.String -> List.List (Html.Attribute FancyForms.Widgets.Float.Msg) -> FancyForms.Widgets.Float.FloatInput customError"},{"name":"integerInput","comment":" An `Integer` input with the given label\n","type":"String.String -> FancyForms.Widgets.Int.IntInput customError"},{"name":"switch","comment":" A `Checkbox` but styled as a [switch](https://picocss.com/docs/forms/switch)\n","type":"String.String -> FancyForms.Widgets.Checkbox.BoolInput customError"},{"name":"textInput","comment":" A `String` input with the given label\n","type":"String.String -> FancyForms.Widgets.Text.TextInput customError"}],"binops":[]},{"name":"Pico.Modal","comment":"\n\n\n# Modal component\n\nUses the [styles from Pico](https://picocss.com/docs/modal) to display a modal.\nThe component comes with pretty animations and the functionality to \"lock\" scrolling\nwhen the modal is open.\n\nThis does however require interaction with the page outside the modal.\nYou need to include the webcomponent that's in `picomponent.js` in the packages repository root.\n\n\n## Setup\n\n**There must be only one instance of the modal component.**\nsince there can never be multiple modals open at the same time.\n\nFor the animation the component needs it's own state.\nSo it is implemented with the Elm architecture.\n\nYou need to:\n\n1.  add a `ModalState` field to your model\n2.  initialize it with `Modal.init`\n3.  add a variant to your `Mgs` type that takes a `Modal.Msg` as an argument\n4.  forward the `Modal.Msg` to `Modal.update` and update your `ModalState` accordingly\n5.  subscribe to `Modal.subscription` (and tell it which of your `Msg` to use to wrap the `Modal.Msg`)\n6.  use `Modal.view` to render your modal\n\n@docs ModalState, init, Msg, update, subscription, view\n\n\n## Control visibility\n\n@docs open, close, toggle\n\n","unions":[{"name":"ModalState","comment":" The state of the modal.\n","args":[],"cases":[]},{"name":"Msg","comment":" The messages that will be sent to control the state of the modal.\n","args":[],"cases":[]}],"aliases":[],"values":[{"name":"close","comment":" Closes the modal. Takes the current state of the modal to avoid\nclosing and already closed modal.\n","type":"Pico.Modal.ModalState -> Pico.Modal.ModalState"},{"name":"init","comment":" The initial, closed state of the modal.\n","type":"Pico.Modal.ModalState"},{"name":"open","comment":" Opens the modal. Takes the current state of the modal to avoid\nopening and already opened modal.\n","type":"Pico.Modal.ModalState -> Pico.Modal.ModalState"},{"name":"subscription","comment":" Listens to the escape key to close the modal.\n","type":"(Pico.Modal.Msg -> msg) -> Pico.Modal.ModalState -> Platform.Sub.Sub msg"},{"name":"toggle","comment":" Toggles the modal.\n","type":"Pico.Modal.ModalState -> Pico.Modal.ModalState"},{"name":"update","comment":" Transitions the modal\n","type":"Pico.Modal.Msg -> Pico.Modal.ModalState -> Pico.Modal.ModalState"},{"name":"view","comment":" Render the modal.\n","type":"Pico.Modal.ModalState -> List.List (Html.Html msg) -> Html.Html msg"}],"binops":[]},{"name":"Pico.Theme","comment":" Provides access to [Themes](https://picocss.com/docs/version-picker)\n    and [Color Schemes](https://picocss.com/docs/color-schemes)\n\n@docs ColorScheme, Theme, themes, themeName\n","unions":[{"name":"ColorScheme","comment":" Pico CSS comes with both Light and Dark color schemes, automatically enabled based on user preferences.\n","args":[],"cases":[["Light",[]],["Dark",[]],["SystemScheme",[]]]},{"name":"Theme","comment":" The available [themes](https://picocss.com/docs/version-picker/)\n","args":[],"cases":[["Amber",[]],["Blue",[]],["Cyan",[]],["Fuchsia",[]],["Green",[]],["Grey",[]],["Indigo",[]],["Jade",[]],["Lime",[]],["Orange",[]],["Pink",[]],["Pumpkin",[]],["Purple",[]],["Red",[]],["Sand",[]],["Slate",[]],["Violet",[]],["Yellow",[]],["Zinc",[]]]}],"aliases":[],"values":[{"name":"themeName","comment":" The name of the theme\n","type":"Pico.Theme.Theme -> String.String"},{"name":"themes","comment":" The available [themes](https://picocss.com/docs/version-picker/)\n","type":"List.List Pico.Theme.Theme"}],"binops":[]}]