[{"name":"Html.Element","comment":" Some [Html](https://package.elm-lang.org/packages/elm/html/latest/Html#Html) nodes\nare [text nodes](https://developer.mozilla.org/en-US/docs/Web/API/Text) and others are\n[element nodes](https://developer.mozilla.org/en-US/docs/Web/API/Element).\n\nThe type [Element](Element) represents only **element nodes**.\nUnlike `Html`, all `Element` values have a list of attributes and a list of children.\n\nThis module has functions to create and modify `Element` nodes.\n\nMost functions in this module are wrappers around the homonymous functions\nin [Html](https://package.elm-lang.org/packages/elm/html/latest/Html).\n\n**Note:** The code examples will assume the following imports:\n\n    import Html.Element as Element exposing (Element)\n    import Html.Element.Attribute as Attribute\n    import Html.Element.Event as Event\n\n\n# Element\n\n@docs Element, element\n\n\n## Convert to HTML\n\n@docs toHtml\n\n\n## Add children\n\n@docs text, children, child, htmlChildren, htmlChild\n\n\n## Map\n\n@docs map\n\n\n# Tags\n\n\n## Stylesheet\n\n@docs style\n\n\n## Headers\n\n@docs h1, h2, h3, h4, h5, h6\n\n\n## Grouping Content\n\n@docs div, p, hr, pre, blockquote\n\n\n## Text\n\n@docs span, a, code, em, strong, i, b, u, sub, sup, br\n\n\n## Lists\n\n@docs ol, ul, li, dl, dt, dd\n\n\n## Embedded Content\n\n@docs img, iframe, canvas, math\n\n\n## Inputs\n\n@docs form, input, textarea, button, select, option\n\n\n## Sections\n\n@docs section, nav, article, aside, header, footer, address, main_\n\n\n## Figures\n\n@docs figure, figcaption\n\n\n## Tables\n\n@docs table, caption, colgroup, col, tbody, thead, tfoot, tr, td, th\n\n\n## Less Common Elements\n\n\n### Less Common Inputs\n\n@docs fieldset, legend, label, datalist, optgroup, output, progress, meter\n\n\n### Audio and Video\n\n@docs audio, video, source, track\n\n\n### Embedded Objects\n\n@docs embed, object, param\n\n\n### Text Edits\n\n@docs ins, del\n\n\n### Semantic Text\n\n@docs small, cite, dfn, abbr, time, var, samp, kbd, s, q\n\n\n### Less Common Text Tags\n\n@docs mark, ruby, rt, rp, bdi, bdo, wbr\n\n\n## Interactive Elements\n\n@docs details, summary, menuitem, menu\n\n","unions":[],"aliases":[{"name":"Element","comment":" An [HTML element node](https://developer.mozilla.org/en-US/docs/Web/HTML/Element).\n\nIt has a tag name, a list of attributes and a list of children.\n\n`Element` nodes can be converted to [Html](https://package.elm-lang.org/packages/elm/html/latest/Html#Html)\nnodes using [toHtml](#toHtml).\n\n","args":["msg"],"type":"Html.Shared.Element msg"}],"values":[{"name":"a","comment":" Represents a hyperlink, linking to another resource.\n","type":"Html.Element.Element msg"},{"name":"abbr","comment":" Represents an abbreviation or an acronym; the expansion of the\nabbreviation can be represented in the title attribute.\n","type":"Html.Element.Element msg"},{"name":"address","comment":" Defines a section containing contact information.\n","type":"Html.Element.Element msg"},{"name":"article","comment":" Defines self-contained content that could exist independently of the rest\nof the content.\n","type":"Html.Element.Element msg"},{"name":"aside","comment":" Defines some content loosely related to the page content. If it is removed,\nthe remaining content still makes sense.\n","type":"Html.Element.Element msg"},{"name":"audio","comment":" Represents a sound or audio stream.\n","type":"Html.Element.Element msg"},{"name":"b","comment":" Represents a text which to which attention is drawn for utilitarian\npurposes. It doesn't convey extra importance and doesn't imply an alternate\nvoice.\n","type":"Html.Element.Element msg"},{"name":"bdi","comment":" Represents text that must be isolated from its surrounding for\nbidirectional text formatting. It allows embedding a span of text with a\ndifferent, or unknown, directionality.\n","type":"Html.Element.Element msg"},{"name":"bdo","comment":" Represents the directionality of its children, in order to explicitly\noverride the Unicode bidirectional algorithm.\n","type":"Html.Element.Element msg"},{"name":"blockquote","comment":" Represents a content that is quoted from another source.\n","type":"Html.Element.Element msg"},{"name":"br","comment":" Represents a line break.\n","type":"Html.Element.Element msg"},{"name":"button","comment":" Represents a button.\n","type":"Html.Element.Element msg"},{"name":"canvas","comment":" Represents a bitmap area for graphics rendering.\n","type":"Html.Element.Element msg"},{"name":"caption","comment":" Represents the title of a table.\n","type":"Html.Element.Element msg"},{"name":"child","comment":" Like [children](#children) but appends only one child element.\n\nThe example above can be written like:\n\n    Element.div\n        |> Element.child Element.input\n        |> Element.child\n            (Element.button |> Element.text \"Ok\")\n\n","type":"Html.Element.Element msg -> Html.Element.Element msg -> Html.Element.Element msg"},{"name":"children","comment":" Appends a list of elements to an element.\n\n    Element.div\n        |> Element.children\n            [ Element.input\n            , Element.button\n                |> Element.text \"Ok\"\n            ]\n\n    -- <div><input /><button>Ok</button></div>\n\nYou can keep calling this function to add more children.\n\n","type":"List.List (Html.Element.Element msg) -> Html.Element.Element msg -> Html.Element.Element msg"},{"name":"cite","comment":" Represents the title of a work.\n","type":"Html.Element.Element msg"},{"name":"code","comment":" Represents computer code.\n","type":"Html.Element.Element msg"},{"name":"col","comment":" Represents a column of a table.\n","type":"Html.Element.Element msg"},{"name":"colgroup","comment":" Represents a set of one or more columns of a table.\n","type":"Html.Element.Element msg"},{"name":"datalist","comment":" Represents a set of predefined options for other controls.\n","type":"Html.Element.Element msg"},{"name":"dd","comment":" Represents the definition of the terms immediately listed before it.\n","type":"Html.Element.Element msg"},{"name":"del","comment":" Defines a removal from the document.\n","type":"Html.Element.Element msg"},{"name":"details","comment":" Represents a widget from which the user can obtain additional information\nor controls.\n","type":"Html.Element.Element msg"},{"name":"dfn","comment":" Represents a term whose definition is contained in its nearest ancestor\ncontent.\n","type":"Html.Element.Element msg"},{"name":"div","comment":" Represents a generic container with no special meaning.\n","type":"Html.Element.Element msg"},{"name":"dl","comment":" Defines a definition list, that is, a list of terms and their associated\ndefinitions.\n","type":"Html.Element.Element msg"},{"name":"dt","comment":" Represents a term defined by the next `dd`.\n","type":"Html.Element.Element msg"},{"name":"element","comment":" Creates an empty `Element` from an HTML tag name.\n\n\n    button : Element msg\n    button =\n        element \"button\"\n\n    -- <button></button>\n\n","type":"String.String -> Html.Element.Element msg"},{"name":"em","comment":" Represents emphasized text, like a stress accent.\n","type":"Html.Element.Element msg"},{"name":"embed","comment":" Represents a integration point for an external, often non-HTML,\napplication or interactive content.\n","type":"Html.Element.Element msg"},{"name":"fieldset","comment":" Represents a set of controls.\n","type":"Html.Element.Element msg"},{"name":"figcaption","comment":" Represents the legend of a figure.\n","type":"Html.Element.Element msg"},{"name":"figure","comment":" Represents a figure illustrated as part of the document.\n","type":"Html.Element.Element msg"},{"name":"footer","comment":" Defines the footer for a page or section. It often contains a copyright\nnotice, some links to legal information, or addresses to give feedback.\n","type":"Html.Element.Element msg"},{"name":"form","comment":" Represents a form, consisting of controls, that can be submitted to a\nserver for processing.\n","type":"Html.Element.Element msg"},{"name":"h1","comment":" ","type":"Html.Element.Element msg"},{"name":"h2","comment":" ","type":"Html.Element.Element msg"},{"name":"h3","comment":" ","type":"Html.Element.Element msg"},{"name":"h4","comment":" ","type":"Html.Element.Element msg"},{"name":"h5","comment":" ","type":"Html.Element.Element msg"},{"name":"h6","comment":" ","type":"Html.Element.Element msg"},{"name":"header","comment":" Defines the header of a page or section. It often contains a logo, the\ntitle of the web site, and a navigational table of content.\n","type":"Html.Element.Element msg"},{"name":"hr","comment":" Represents a thematic break between paragraphs of a section or article or\nany longer content.\n","type":"Html.Element.Element msg"},{"name":"htmlChild","comment":" Appends an `Html` child to an element.\n","type":"Html.Html msg -> Html.Element.Element msg -> Html.Element.Element msg"},{"name":"htmlChildren","comment":" Appends `Html` children to an element.\n","type":"List.List (Html.Html msg) -> Html.Element.Element msg -> Html.Element.Element msg"},{"name":"i","comment":" Represents some text in an alternate voice or mood, or at least of\ndifferent quality, such as a taxonomic designation, a technical term, an\nidiomatic phrase, a thought, or a ship name.\n","type":"Html.Element.Element msg"},{"name":"iframe","comment":" Embedded an HTML document.\n","type":"Html.Element.Element msg"},{"name":"img","comment":" Represents an image.\n","type":"Html.Element.Element msg"},{"name":"input","comment":" Represents a typed data field allowing the user to edit the data.\n","type":"Html.Element.Element msg"},{"name":"ins","comment":" Defines an addition to the document.\n","type":"Html.Element.Element msg"},{"name":"kbd","comment":" Represents user input, often from the keyboard, but not necessarily; it\nmay represent other input, like transcribed voice commands.\n","type":"Html.Element.Element msg"},{"name":"label","comment":" Represents the caption of a form control.\n","type":"Html.Element.Element msg"},{"name":"legend","comment":" Represents the caption for a `fieldset`.\n","type":"Html.Element.Element msg"},{"name":"li","comment":" Defines a item of an enumeration list.\n","type":"Html.Element.Element msg"},{"name":"main_","comment":" Defines the main or important content in the document. There is only one\n`main` element in the document.\n","type":"Html.Element.Element msg"},{"name":"map","comment":" Transform the messages produced by some `Element`. In the following example,\nwe have `viewButton` that produces `()` messages, and we transform those values\ninto `Msg` values in `view`.\n\n    type Msg\n        = Left\n        | Right\n\n    view : model -> Element Msg\n    view model =\n        Element.div\n            |> Element.children\n                [ Element.map (\\_ -> Left) (viewButton \"Left\")\n                , Element.map (\\_ -> Right) (viewButton \"Right\")\n                ]\n\n    viewButton : String -> Element ()\n    viewButton name =\n        Element.button\n            |> Event.onClick ()\n            |> Element.text name\n\n","type":"(a -> msg) -> Html.Element.Element a -> Html.Element.Element msg"},{"name":"mark","comment":" Represents text highlighted for reference purposes, that is for its\nrelevance in another context.\n","type":"Html.Element.Element msg"},{"name":"math","comment":" Defines a mathematical formula.\n","type":"Html.Element.Element msg"},{"name":"menu","comment":" Represents a list of commands.\n","type":"Html.Element.Element msg"},{"name":"menuitem","comment":" Represents a command that the user can invoke.\n","type":"Html.Element.Element msg"},{"name":"meter","comment":" Represents a scalar measurement (or a fractional value), within a known\nrange.\n","type":"Html.Element.Element msg"},{"name":"nav","comment":" Defines a section that contains only navigation links.\n","type":"Html.Element.Element msg"},{"name":"object","comment":" Represents an external resource, which is treated as an image, an HTML\nsub-document, or an external resource to be processed by a plug-in.\n","type":"Html.Element.Element msg"},{"name":"ol","comment":" Defines an ordered list of items.\n","type":"Html.Element.Element msg"},{"name":"optgroup","comment":" Represents a set of options, logically grouped.\n","type":"Html.Element.Element msg"},{"name":"option","comment":" Represents an option in a `select` element or a suggestion of a `datalist`\nelement.\n","type":"Html.Element.Element msg"},{"name":"output","comment":" Represents the result of a calculation.\n","type":"Html.Element.Element msg"},{"name":"p","comment":" Defines a portion that should be displayed as a paragraph.\n","type":"Html.Element.Element msg"},{"name":"param","comment":" Defines parameters for use by plug-ins invoked by `object` elements.\n","type":"Html.Element.Element msg"},{"name":"pre","comment":" Indicates that its content is preformatted and that this format must be\npreserved.\n","type":"Html.Element.Element msg"},{"name":"progress","comment":" Represents the completion progress of a task.\n","type":"Html.Element.Element msg"},{"name":"q","comment":" Represents an inline quotation.\n","type":"Html.Element.Element msg"},{"name":"rp","comment":" Represents parenthesis around a ruby annotation, used to display the\nannotation in an alternate way by browsers not supporting the standard display\nfor annotations.\n","type":"Html.Element.Element msg"},{"name":"rt","comment":" Represents the text of a ruby annotation.\n","type":"Html.Element.Element msg"},{"name":"ruby","comment":" Represents content to be marked with ruby annotations, short runs of text\npresented alongside the text. This is often used in conjunction with East Asian\nlanguage where the annotations act as a guide for pronunciation, like the\nJapanese furigana.\n","type":"Html.Element.Element msg"},{"name":"s","comment":" Represents content that is no longer accurate or relevant.\n","type":"Html.Element.Element msg"},{"name":"samp","comment":" Represents the output of a program or a computer.\n","type":"Html.Element.Element msg"},{"name":"section","comment":" Defines a section in a document.\n","type":"Html.Element.Element msg"},{"name":"select","comment":" Represents a control allowing selection among a set of options.\n","type":"Html.Element.Element msg"},{"name":"small","comment":" Represents a side comment, that is, text like a disclaimer or a\ncopyright, which is not essential to the comprehension of the document.\n","type":"Html.Element.Element msg"},{"name":"source","comment":" Allows authors to specify alternative media resources for media elements\nlike `video` or `audio`.\n","type":"Html.Element.Element msg"},{"name":"span","comment":" Represents text with no specific meaning. This has to be used when no other\ntext-semantic element conveys an adequate meaning, which, in this case, is\noften brought by global attributes like `class`, `lang`, or `dir`.\n","type":"Html.Element.Element msg"},{"name":"strong","comment":" Represents especially important text.\n","type":"Html.Element.Element msg"},{"name":"style","comment":" Define CSS styles for the document.\n","type":"Html.Element.Element msg"},{"name":"sub","comment":" Represent a subscript.\n","type":"Html.Element.Element msg"},{"name":"summary","comment":" Represents a summary, caption, or legend for a given `details`.\n","type":"Html.Element.Element msg"},{"name":"sup","comment":" Represent a superscript.\n","type":"Html.Element.Element msg"},{"name":"table","comment":" Represents data with more than one dimension.\n","type":"Html.Element.Element msg"},{"name":"tbody","comment":" Represents the block of rows that describes the concrete data of a table.\n","type":"Html.Element.Element msg"},{"name":"td","comment":" Represents a data cell in a table.\n","type":"Html.Element.Element msg"},{"name":"text","comment":" Appends a text node to an element.\n\n    Element.div\n        |> Element.text \"Hello\"\n        |> Element.text \" world\"\n\n    -- <div>Hello world</div>\n\n","type":"String.String -> Html.Element.Element msg -> Html.Element.Element msg"},{"name":"textarea","comment":" Represents a multiline text edit control.\n","type":"Html.Element.Element msg"},{"name":"tfoot","comment":" Represents the block of rows that describes the column summaries of a table.\n","type":"Html.Element.Element msg"},{"name":"th","comment":" Represents a header cell in a table.\n","type":"Html.Element.Element msg"},{"name":"thead","comment":" Represents the block of rows that describes the column labels of a table.\n","type":"Html.Element.Element msg"},{"name":"time","comment":" Represents a date and time value; the machine-readable equivalent can be\nrepresented in the datetime attribute.\n","type":"Html.Element.Element msg"},{"name":"toHtml","comment":" Converts an [Element](#Element) into an `Html`.\n","type":"Html.Element.Element msg -> Html.Html msg"},{"name":"tr","comment":" Represents a row of cells in a table.\n","type":"Html.Element.Element msg"},{"name":"track","comment":" Allows authors to specify timed text track for media elements like `video`\nor `audio`.\n","type":"Html.Element.Element msg"},{"name":"u","comment":" Represents a non-textual annotation for which the conventional\npresentation is underlining, such labeling the text as being misspelt or\nlabeling a proper name in Chinese text.\n","type":"Html.Element.Element msg"},{"name":"ul","comment":" Defines an unordered list of items.\n","type":"Html.Element.Element msg"},{"name":"var","comment":" Represents a variable. Specific cases where it should be used include an\nactual mathematical expression or programming context, an identifier\nrepresenting a constant, a symbol identifying a physical quantity, a function\nparameter, or a mere placeholder in prose.\n","type":"Html.Element.Element msg"},{"name":"video","comment":" Represents a video, the associated audio and captions, and controls.\n","type":"Html.Element.Element msg"},{"name":"wbr","comment":" Represents a line break opportunity, that is a suggested point for\nwrapping text in order to improve readability of text split on several lines.\n","type":"Html.Element.Element msg"}],"binops":[]},{"name":"Html.Element.Attribute","comment":" This module exposes functions to add attributes to an `Element`.\n\n**Note:** The code examples will assume the following imports:\n\n    import Html.Element as Element exposing (Element)\n    import Html.Element.Attribute as Attribute\n    import Html.Element.Event as Event\n\n\n# Helpers\n\n@docs htmlAttribute, htmlAttributes, batch, none\n\nThe rest of the functions in this module are wrappers around the homonymous functions\nin [Html.Attributes](https://package.elm-lang.org/packages/elm/html/latest/Html-Attributes).\n\n\n# Primitives\n\n@docs style, property, attribute\n\n\n# Super Common Attributes\n\n@docs class, classList, id, title, hidden\n\n\n# Inputs\n\n@docs type_, value, checked, placeholder, selected\n\n\n## Input Helpers\n\n@docs accept, acceptCharset, action, autocomplete, autofocus\n@docs disabled, enctype, list, maxlength, minlength, method, multiple\n@docs name, novalidate, pattern, readonly, required, size, for, form\n\n\n## Input Ranges\n\n@docs max, min, step\n\n\n## Input Text Areas\n\n@docs cols, rows, wrap\n\n\n# Links and Areas\n\n@docs href, target, download, downloadAs, hreflang, media, ping, rel\n\n\n## Maps\n\n@docs ismap, usemap, shape, coords\n\n\n# Embedded Content\n\n@docs src, height, width, alt\n\n\n## Audio and Video\n\n@docs autoplay, controls, loop, preload, poster, default, kind, srclang\n\n\n## iframes\n\n@docs sandbox, srcdoc\n\n\n# Ordered Lists\n\n@docs reversed, start\n\n\n# Tables\n\n@docs align, colspan, rowspan, headers, scope\n\n\n# Less Common Global Attributes\n\nAttributes that can be attached to any HTML tag but are less commonly used.\n\n@docs accesskey, contenteditable, contextmenu, dir, draggable, dropzone\n@docs itemprop, lang, spellcheck, tabindex\n\n\n# Miscellaneous\n\n@docs cite, datetime, pubdate, manifest\n\n","unions":[],"aliases":[],"values":[{"name":"accept","comment":" List of types the server accepts, typically a file type.\nFor `form` and `input`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"acceptCharset","comment":" List of supported charsets in a `form`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"accesskey","comment":" Defines a keyboard shortcut to activate or add focus to the element.\n","type":"Char.Char -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"action","comment":" The URI of a program that processes the information submitted via a `form`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"align","comment":" Specifies the horizontal alignment of a `caption`, `col`, `colgroup`,\n`hr`, `iframe`, `img`, `table`, `tbody`, `td`, `tfoot`, `th`, `thead`, or\n`tr`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"alt","comment":" Alternative text in case an image can't be displayed. Works with `img`,\n`area`, and `input`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"attribute","comment":" Create _attributes_, like saying `domNode.setAttribute('class', 'greeting')`\nin JavaScript.\n\n    class : String -> Element msg -> Element msg\n    class name =\n        attribute \"class\" name\n\nRead more about the difference between properties and attributes [here].\n\n[here]: https://github.com/elm/html/blob/master/properties-vs-attributes.md\n\n","type":"String.String -> String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"autocomplete","comment":" Indicates whether a `form` or an `input` can have their values automatically\ncompleted by the browser.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"autofocus","comment":" The element should be automatically focused after the page loaded.\nFor `button`, `input`, `select`, and `textarea`.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"autoplay","comment":" The `audio` or `video` should play as soon as possible.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"batch","comment":" Flattens a list of functions into a single function.\n\n    textStyles =\n        Attribute.batch\n            [ Attribute.style \"font-family\" \"Monaco, sans-serif\"\n            , Attribute.style \"font-size\" \"1rem\"\n            , Attribute.style \"line-height\" \"1.4rem\"\n            ]\n\n    paragraph =\n        Element.p\n            |> textStyles\n\nNote that adding child nodes is also done with functions of type `Element msg -> Element msg`,\nso there is no way _(yet?)_ to prevent someone from doing:\n\n    textStyles =\n        Attribute.batch\n            [ Element.text \"Hello\"\n            , Debug.log \"attribute\"\n            ]\n\n","type":"List.List (Html.Shared.Element msg -> Html.Shared.Element msg) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"checked","comment":" Indicates whether an `input` of type checkbox is checked.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"cite","comment":" Contains a URI which points to the source of the quote or change in a\n`blockquote`, `del`, `ins`, or `q`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"class","comment":" Often used with CSS to style elements with common properties.\n\n**Note:** You can have as many `class` and `classList` attributes as you want.\nThey all get applied, so if you say `[ class \"notice\", class \"notice-seen\" ]`\nyou will get both classes!\n\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"classList","comment":" This function makes it easier to build a space-separated class attribute.\nEach class can easily be added and removed depending on the boolean value it\nis paired with. For example, maybe we want a way to view notices:\n\n    viewNotice : Notice -> Html msg\n    viewNotice notice =\n        Element.div\n            |> Element.classList\n                [ ( \"notice\", True )\n                , ( \"notice-important\", notice.isImportant )\n                , ( \"notice-seen\", notice.isSeen )\n                ]\n            |> Element.text notice.content\n\n**Note:** You can have as many `class` and `classList` attributes as you want.\nThey all get applied, so if you say `[ class \"notice\", class \"notice-seen\" ]`\nyou will get both classes!\n\n","type":"List.List ( String.String, Basics.Bool ) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"cols","comment":" Defines the number of columns in a `textarea`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"colspan","comment":" The colspan attribute defines the number of columns a cell should span.\nFor `td` and `th`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"contenteditable","comment":" Indicates whether the element's content is editable.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"contextmenu","comment":" Defines the ID of a `menu` element which will serve as the element's\ncontext menu.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"controls","comment":" Indicates whether the browser should show playback controls for the `audio`\nor `video`.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"coords","comment":" A set of values specifying the coordinates of the hot-spot region in an\n`area`. Needs to be paired with a `shape` attribute to be meaningful.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"datetime","comment":" Indicates the date and time associated with the element.\nFor `del`, `ins`, `time`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"default","comment":" Indicates that the `track` should be enabled unless the user's preferences\nindicate something different.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"dir","comment":" Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl\n(Right-To-Left).\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"disabled","comment":" Indicates whether the user can interact with a `button`, `fieldset`,\n`input`, `optgroup`, `option`, `select` or `textarea`.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"download","comment":" Indicates that clicking an `a` and `area` will download the resource\ndirectly. The `String` argument determins the name of the downloaded file.\nSay the file you are serving is named `hats.json`.\n\n    download \"\" -- hats.json\n\n    download \"my-hats.json\" -- my-hats.json\n\n    download \"snakes.json\" -- snakes.json\n\nThe empty `String` says to just name it whatever it was called on the server.\n\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"downloadAs","comment":" Indicates that clicking an `a` and `area` will download the resource\ndirectly, and that the downloaded resource with have the given filename.\nSo `downloadAs \"hats.json\"` means the person gets a file named `hats.json`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"draggable","comment":" Defines whether the element can be dragged.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"dropzone","comment":" Indicates that the element accept the dropping of content on it.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"enctype","comment":" How `form` data should be encoded when submitted with the POST method.\nOptions include: application/x-www-form-urlencoded, multipart/form-data, and\ntext/plain.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"for","comment":" The element ID described by this `label` or the element IDs that are used\nfor an `output`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"form","comment":" Indicates the element ID of the `form` that owns this particular `button`,\n`fieldset`, `input`, `label`, `meter`, `object`, `output`, `progress`,\n`select`, or `textarea`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"headers","comment":" A space separated list of element IDs indicating which `th` elements are\nheaders for this cell. For `td` and `th`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"height","comment":" Declare the height of a `canvas`, `embed`, `iframe`, `img`, `input`,\n`object`, or `video`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"hidden","comment":" Indicates the relevance of an element.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"href","comment":" The URL of a linked resource, such as `a`, `area`, `base`, or `link`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"hreflang","comment":" Two-letter language code of the linked resource of an `a`, `area`, or `link`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"htmlAttribute","comment":" Adds an `Html.Attribute` to an [Element](Html.Element#Element).\n\nThis is the base function used to implement all other functions in this module.\n\n","type":"Html.Attribute msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"htmlAttributes","comment":" ","type":"List.List (Html.Attribute msg) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"id","comment":" Often used with CSS to style a specific element. The value of this\nattribute must be unique.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"ismap","comment":" When an `img` is a descendant of an `a` tag, the `ismap` attribute\nindicates that the click location should be added to the parent `a`'s href as\na query string.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"itemprop","comment":" ","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"kind","comment":" Specifies the kind of text `track`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"lang","comment":" Defines the language used in the element.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"list","comment":" Associates an `input` with a `datalist` tag. The datalist gives some\npre-defined options to suggest to the user as they interact with an input.\nThe value of the list attribute must match the id of a `datalist` node.\nFor `input`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"loop","comment":" Indicates whether the `audio` or `video` should start playing from the\nstart when it's finished.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"manifest","comment":" Specifies the URL of the cache manifest for an `html` tag.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"max","comment":" Indicates the maximum value allowed. When using an input of type number or\ndate, the max value must be a number or date. For `input`, `meter`, and `progress`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"maxlength","comment":" Defines the maximum number of characters allowed in an `input` or\n`textarea`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"media","comment":" Specifies a hint of the target media of a `a`, `area`, `link`, `source`,\nor `style`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"method","comment":" Defines which HTTP method to use when submitting a `form`. Can be GET\n(default) or POST.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"min","comment":" Indicates the minimum value allowed. When using an input of type number or\ndate, the min value must be a number or date. For `input` and `meter`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"minlength","comment":" Defines the minimum number of characters allowed in an `input` or\n`textarea`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"multiple","comment":" Indicates whether multiple values can be entered in an `input` of type\nemail or file. Can also indicate that you can `select` many options.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"name","comment":" Name of the element. For example used by the server to identify the fields\nin form submits. For `button`, `form`, `fieldset`, `iframe`, `input`,\n`object`, `output`, `select`, `textarea`, `map`, `meta`, and `param`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"none","comment":" An empty attribute.\n\nIt adds the attribute `Html.Attributes.class \"\"`.\n\n> _You can also use the [identity]() function as a empty attribute, but this implementation\n> might work better with the virtual DOM diffing algorithm (unverified)._\n\n","type":"Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"novalidate","comment":" This attribute indicates that a `form` shouldn't be validated when\nsubmitted.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"pattern","comment":" Defines a regular expression which an `input`'s value will be validated\nagainst.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"ping","comment":" Specify a URL to send a short POST request to when the user clicks on an\n`a` or `area`. Useful for monitoring and tracking.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"placeholder","comment":" Provides a hint to the user of what can be entered into an `input` or\n`textarea`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"poster","comment":" A URL indicating a poster frame to show until the user plays or seeks the\n`video`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"preload","comment":" Control how much of an `audio` or `video` resource should be preloaded.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"property","comment":" Create _properties_, like saying `domNode.className = 'greeting'` in\nJavaScript.\n\n    import Json.Encode as Encode\n\n    class : String -> Element msg -> Element msg\n    class name =\n        property \"className\" (Encode.string name)\n\nRead more about the difference between properties and attributes [here].\n\n[here]: https://github.com/elm/html/blob/master/properties-vs-attributes.md\n\n","type":"String.String -> Json.Encode.Value -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"pubdate","comment":" Indicates whether this date and time is the date of the nearest `article`\nancestor element. For `time`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"readonly","comment":" Indicates whether an `input` or `textarea` can be edited.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"rel","comment":" Specifies the relationship of the target object to the link object.\nFor `a`, `area`, `link`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"required","comment":" Indicates whether this element is required to fill out or not.\nFor `input`, `select`, and `textarea`.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"reversed","comment":" Indicates whether an ordered list `ol` should be displayed in a descending\norder instead of a ascending.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"rows","comment":" Defines the number of rows in a `textarea`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"rowspan","comment":" Defines the number of rows a table cell should span over.\nFor `td` and `th`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"sandbox","comment":" A space separated list of security restrictions you'd like to lift for an\n`iframe`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"scope","comment":" Specifies the scope of a header cell `th`. Possible values are: col, row,\ncolgroup, rowgroup.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"selected","comment":" Defines which `option` will be selected on page load.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"shape","comment":" Declare the shape of the clickable area in an `a` or `area`. Valid values\ninclude: default, rect, circle, poly. This attribute can be paired with\n`coords` to create more particular shapes.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"size","comment":" For `input` specifies the width of an input in characters.\n\nFor `select` specifies the number of visible options in a drop-down list.\n\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"spellcheck","comment":" Indicates whether spell checking is allowed for the element.\n","type":"Basics.Bool -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"src","comment":" The URL of the embeddable content. For `audio`, `embed`, `iframe`, `img`,\n`input`, `script`, `source`, `track`, and `video`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"srcdoc","comment":" An HTML document that will be displayed as the body of an `iframe`. It will\noverride the content of the `src` attribute if it has been specified.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"srclang","comment":" A two letter language code indicating the language of the `track` text data.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"start","comment":" Defines the first number of an ordered list if you want it to be something\nbesides 1.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"step","comment":" Add a step size to an `input`. Use `step \"any\"` to allow any floating-point\nnumber to be used in the input.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"style","comment":" Specify a style.\n\n    greeting : Element msg\n    greeting =\n        Element.div\n            |> Element.style \"background-color\" \"red\"\n            |> Element.style \"height\" \"90px\"\n            |> Element.style \"width\" \"100%\"\n            |> Element.text \"Hello!\"\n\n","type":"String.String -> String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"tabindex","comment":" Overrides the browser's default tab order and follows the one specified\ninstead.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"target","comment":" Specify where the results of clicking an `a`, `area`, `base`, or `form`\nshould appear. Possible special values include:\n\n  - \\_blank &mdash; a new window or tab\n  - \\_self &mdash; the same frame (this is default)\n  - \\_parent &mdash; the parent frame\n  - \\_top &mdash; the full body of the window\n\nYou can also give the name of any `frame` you have created.\n\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"title","comment":" Text to be displayed in a tooltip when hovering over the element.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"type_","comment":" Defines the type of a `button`, `checkbox`, `input`, `embed`, `menu`,\n`object`, `script`, `source`, or `style`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"usemap","comment":" Specify the hash name reference of a `map` that should be used for an `img`\nor `object`. A hash name reference is a hash symbol followed by the element's name or id.\nE.g. `\"#planet-map\"`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"value","comment":" Defines a default value which will be displayed in a `button`, `option`,\n`input`, `li`, `meter`, `progress`, or `param`.\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"width","comment":" Declare the width of a `canvas`, `embed`, `iframe`, `img`, `input`,\n`object`, or `video`.\n","type":"Basics.Int -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"wrap","comment":" Indicates whether the text should be wrapped in a `textarea`. Possible\nvalues are \"hard\" and \"soft\".\n","type":"String.String -> Html.Shared.Element msg -> Html.Shared.Element msg"}],"binops":[]},{"name":"Html.Element.Event","comment":" This module has wrappers around the functions in\n[Html.Events](https://package.elm-lang.org/packages/elm/html/latest/Html-Events).\n\n\n# Mouse\n\n@docs onClick, onDoubleClick\n@docs onMouseDown, onMouseUp\n@docs onMouseEnter, onMouseLeave\n@docs onMouseOver, onMouseOut\n\n\n# Forms\n\n@docs onInput, onCheck, onSubmit\n\n\n# Focus\n\n@docs onBlur, onFocus\n\n\n# Custom\n\n@docs on, stopPropagationOn, preventDefaultOn, custom\n\n","unions":[],"aliases":[],"values":[{"name":"custom","comment":" Create an event listener that may [`stopPropagation`][stop] or\n[`preventDefault`][prevent].\n\n[stop]: https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation\n[prevent]: https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault\n[handler]: https://package.elm-lang.org/packages/elm/virtual-dom/latest/VirtualDom#Handler\n\n**Note:** Check out the lower-level event API in `elm/virtual-dom` for more\ninformation on exactly how events work, especially the [`Handler`][handler]\ndocs.\n\n","type":"String.String -> Json.Decode.Decoder { message : msg, stopPropagation : Basics.Bool, preventDefault : Basics.Bool } -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"on","comment":" Create a custom event listener. Normally this will not be necessary, but\nyou have the power! Here is how `onClick` can be defined for example:\n\n    import Json.Decode as Decode\n\n    onClick : msg -> Element msg -> Element msg\n    onClick message =\n        Events.on \"click\" (Decode.succeed message)\n\nThe first argument is the event name in the same format as with JavaScript's\n[`addEventListener`][aEL] function.\n\nThe second argument is a JSON decoder. Read more about these [here][decoder].\nWhen an event occurs, the decoder tries to turn the event object into an Elm\nvalue. If successful, the value is routed to your `update` function. In the\ncase of `onClick` we always just succeed with the given `message`.\n\nIf this is confusing, work through the [Elm Architecture Tutorial][tutorial].\nIt really helps!\n\n[aEL]: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener\n[decoder]: /packages/elm/json/latest/Json-Decode\n[tutorial]: https://github.com/evancz/elm-architecture-tutorial/\n\n**Note:** This creates a [passive] event listener, enabling optimizations for\ntouch, scroll, and wheel events in some browsers.\n\n[passive]: https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n\n","type":"String.String -> Json.Decode.Decoder msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onBlur","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onCheck","comment":" Detect [change](https://developer.mozilla.org/en-US/docs/Web/Events/change)\nevents on checkboxes. It will grab the boolean value from `event.target.checked`\non any input event.\n\nCheck out [`targetChecked`](#targetChecked) for more details on how this works.\n\n","type":"(Basics.Bool -> msg) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onClick","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onDoubleClick","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onFocus","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onInput","comment":" Detect [input](https://developer.mozilla.org/en-US/docs/Web/Events/input)\nevents for things like text fields or text areas.\n\nFor more details on how `onInput` works, check out [`targetValue`](#targetValue).\n\n**Note 1:** It grabs the **string** value at `event.target.value`, so it will\nnot work if you need some other information. For example, if you want to track\ninputs on a range slider, make a custom handler with [`on`](#on).\n\n**Note 2:** It uses `stopPropagationOn` internally to always stop propagation\nof the event. This is important for complicated reasons explained [here][1] and\n[here][2].\n\n[1]: /packages/elm/virtual-dom/latest/VirtualDom#Handler\n[2]: https://github.com/elm/virtual-dom/issues/125\n\n","type":"(String.String -> msg) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseDown","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseEnter","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseLeave","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseOut","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseOver","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onMouseUp","comment":" ","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"onSubmit","comment":" Detect a [submit](https://developer.mozilla.org/en-US/docs/Web/Events/submit)\nevent with [`preventDefault`](https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\nin order to prevent the form from changing the page’s location. If you need\ndifferent behavior, create a custom event handler.\n","type":"msg -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"preventDefaultOn","comment":" Create an event listener that may [`preventDefault`][prevent]. Your decoder\nmust produce a message and a `Bool` that decides if `preventDefault` should\nbe called.\n\nFor example, the `onSubmit` function in this library _always_ prevents the\ndefault behavior:\n\n[prevent]: https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault\n\n    onSubmit : msg -> Element msg -> Element msg\n    onSubmit msg =\n        Events.preventDefaultOn \"submit\"\n            (Json.map alwaysPreventDefault (Json.succeed msg))\n\n    alwaysPreventDefault : msg -> ( msg, Bool )\n    alwaysPreventDefault msg =\n        Html.Events.alwaysPreventDefault msg\n            |> Shared.addAttribute\n                ( msg, True )\n\n","type":"String.String -> Json.Decode.Decoder ( msg, Basics.Bool ) -> Html.Shared.Element msg -> Html.Shared.Element msg"},{"name":"stopPropagationOn","comment":" Create an event listener that may [`stopPropagation`][stop]. Your decoder\nmust produce a message and a `Bool` that decides if `stopPropagation` should\nbe called.\n\n[stop]: https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation\n\n**Note:** This creates a [passive] event listener, enabling optimizations for\ntouch, scroll, and wheel events in some browsers.\n\n[passive]: https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n\n","type":"String.String -> Json.Decode.Decoder ( msg, Basics.Bool ) -> Html.Shared.Element msg -> Html.Shared.Element msg"}],"binops":[]}]