aboutsummaryrefslogtreecommitdiff
path: root/lib/src/lustre/element/html.gleam
diff options
context:
space:
mode:
Diffstat (limited to 'lib/src/lustre/element/html.gleam')
-rw-r--r--lib/src/lustre/element/html.gleam317
1 files changed, 3 insertions, 314 deletions
diff --git a/lib/src/lustre/element/html.gleam b/lib/src/lustre/element/html.gleam
index 9eb4f5e..70ec6c6 100644
--- a/lib/src/lustre/element/html.gleam
+++ b/lib/src/lustre/element/html.gleam
@@ -1,19 +1,13 @@
+//// To read the full documentation for this module, please visit
+//// [https://pkg.hayleigh.dev/lustre/api/lustre/element/html](https://pkg.hayleigh.dev/lustre/api/lustre/element/html)
+
// IMPORTS ---------------------------------------------------------------------
import lustre/element.{Element, element, namespaced, text}
import lustre/attribute.{Attribute}
-// The doc comments (and order) for functions in this module are taken from the
-// MDN Element reference:
-//
-// https://developer.mozilla.org/en-US/docs/Web/HTML/Element
-//
-
// HTML ELEMENTS: MAIN ROOT ----------------------------------------------------
-/// Represents the root (top-level element) of an HTML document, so it is also
-/// referred to as the root element. All other elements must be descendants of
-/// this element.
///
pub fn html(
attrs: List(Attribute(msg)),
@@ -24,45 +18,31 @@ pub fn html(
// HTML ELEMENTS: DOCUMENT METADATA --------------------------------------------
-/// Specifies the base URL to use for all relative URLs in a document. There can
-/// be only one such element in a document.
///
pub fn base(attrs: List(Attribute(msg))) -> Element(msg) {
element("base", attrs, [])
}
-/// Contains machine-readable information (metadata) about the document, like its
-/// title, scripts, and style sheets.
///
pub fn head(attrs: List(Attribute(msg))) -> Element(msg) {
element("head", attrs, [])
}
-/// Specifies relationships between the current document and an external resource.
-/// This element is most commonly used to link to CSS but is also used to establish
-/// site icons (both "favicon" style icons and icons for the home screen and apps
-/// on mobile devices) among other things.
///
pub fn link(attrs: List(Attribute(msg))) -> Element(msg) {
element("link", attrs, [])
}
-/// Represents metadata that cannot be represented by other HTML meta-related
-/// elements, like <base>, <link>, <script>, <style> and <title>.
///
pub fn meta(attrs: List(Attribute(msg))) -> Element(msg) {
element("meta", attrs, [])
}
-/// Contains style information for a document or part of a document. It contains
-/// CSS, which is applied to the contents of the document containing this element.
///
pub fn style(attrs: List(Attribute(msg)), css: String) -> Element(msg) {
element("style", attrs, [text(css)])
}
-/// Defines the document's title that is shown in a browser's title bar or a
-/// page's tab. It only contains text; tags within the element are ignored.
///
pub fn title(attrs: List(Attribute(msg)), content: String) -> Element(msg) {
element("title", attrs, [text(content)])
@@ -70,8 +50,6 @@ pub fn title(attrs: List(Attribute(msg)), content: String) -> Element(msg) {
// HTML ELEMENTS: SECTIONING ROOT -----------------------------------------------
-/// Represents the content of an HTML document. There can be only one such element
-/// in a document.
///
pub fn body(
attrs: List(Attribute(msg)),
@@ -82,8 +60,6 @@ pub fn body(
// HTML ELEMENTS: CONTENT SECTIONING -------------------------------------------
-/// Indicates that the enclosed HTML provides contact information for a person or
-/// people, or for an organization.
///
pub fn address(
attrs: List(Attribute(msg)),
@@ -92,11 +68,6 @@ pub fn address(
element("address", attrs, children)
}
-/// Represents a self-contained composition in a document, page, application, or
-/// site, which is intended to be independently distributable or reusable (e.g.,
-/// in syndication). Examples include a forum post, a magazine or newspaper article,
-/// a blog entry, a product card, a user-submitted comment, an interactive widget
-/// or gadget, or any other independent item of content.
///
pub fn article(
attrs: List(Attribute(msg)),
@@ -105,9 +76,6 @@ pub fn article(
element("article", attrs, children)
}
-/// Represents a portion of a document whose content is only indirectly related
-/// to the document's main content. Asides are frequently presented as sidebars
-/// or call-out boxes.
///
pub fn aside(
attrs: List(Attribute(msg)),
@@ -116,9 +84,6 @@ pub fn aside(
element("aside", attrs, children)
}
-/// Represents a footer for its nearest ancestor sectioning content or sectioning
-/// root element. A <footer> typically contains information about the author of
-/// the section, copyright data, or links to related documents.
///
pub fn footer(
attrs: List(Attribute(msg)),
@@ -127,9 +92,6 @@ pub fn footer(
element("footer", attrs, children)
}
-/// Represents introductory content, typically a group of introductory or navigational
-/// aids. It may contain some heading elements but also a logo, a search form, an
-/// author name, and other elements.
///
pub fn header(
attrs: List(Attribute(msg)),
@@ -138,8 +100,6 @@ pub fn header(
element("header", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h1(
attrs: List(Attribute(msg)),
@@ -148,8 +108,6 @@ pub fn h1(
element("h1", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h2(
attrs: List(Attribute(msg)),
@@ -158,8 +116,6 @@ pub fn h2(
element("h2", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h3(
attrs: List(Attribute(msg)),
@@ -168,8 +124,6 @@ pub fn h3(
element("h3", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h4(
attrs: List(Attribute(msg)),
@@ -178,8 +132,6 @@ pub fn h4(
element("h4", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h5(
attrs: List(Attribute(msg)),
@@ -188,8 +140,6 @@ pub fn h5(
element("h5", attrs, children)
}
-/// Represent six levels of section headings. <h1> is the highest section level
-/// and <h6> is the lowest.
///
pub fn h6(
attrs: List(Attribute(msg)),
@@ -198,8 +148,6 @@ pub fn h6(
element("h6", attrs, children)
}
-/// Represents a heading grouped with any secondary content, such as subheadings,
-/// an alternative title, or a tagline.
///
pub fn hgroup(
attrs: List(Attribute(msg)),
@@ -208,9 +156,6 @@ pub fn hgroup(
element("hgroup", attrs, children)
}
-/// Represents the dominant content of the body of a document. The main content
-/// area consists of content that is directly related to or expands upon the
-/// central topic of a document, or the central functionality of an application.
///
pub fn main(
attrs: List(Attribute(msg)),
@@ -219,9 +164,6 @@ pub fn main(
element("main", attrs, children)
}
-/// Represents a section of a page whose purpose is to provide navigation links,
-/// either within the current document or to other documents. Common examples of
-/// navigation sections are menus, tables of contents, and indexes.
///
pub fn nav(
attrs: List(Attribute(msg)),
@@ -230,9 +172,6 @@ pub fn nav(
element("nav", attrs, children)
}
-/// Represents a generic standalone section of a document, which doesn't have a
-/// more specific semantic element to represent it. Sections should always have
-/// a heading, with very few exceptions.
///
pub fn section(
attrs: List(Attribute(msg)),
@@ -241,8 +180,6 @@ pub fn section(
element("section", attrs, children)
}
-/// Represents a part that contains a set of form controls or other content related
-/// to performing a search or filtering operation.
///
pub fn search(
attrs: List(Attribute(msg)),
@@ -253,10 +190,6 @@ pub fn search(
// HTML ELEMENTS: TEXT CONTENT -------------------------------------------------
-/// Indicates that the enclosed text is an extended quotation. Usually, this is
-/// rendered visually by indentation. A URL for the source of the quotation may
-/// be given using the cite attribute, while a text representation of the source
-/// can be given using the <cite> element.
///
pub fn blockquote(
attrs: List(Attribute(msg)),
@@ -265,8 +198,6 @@ pub fn blockquote(
element("blockquote", attrs, children)
}
-/// Provides the description, definition, or value for the preceding term (<dt>)
-/// in a description list (<dl>).
///
pub fn dd(
attrs: List(Attribute(msg)),
@@ -275,10 +206,6 @@ pub fn dd(
element("dd", attrs, children)
}
-/// The generic container for flow content. It has no effect on the content or
-/// layout until styled in some way using CSS (e.g., styling is directly applied
-/// to it, or some kind of layout model like flexbox is applied to its parent
-/// element).
///
pub fn div(
attrs: List(Attribute(msg)),
@@ -287,10 +214,6 @@ pub fn div(
element("div", attrs, children)
}
-/// Represents a description list. The element encloses a list of groups of terms
-/// (specified using the <dt> element) and descriptions (provided by <dd> elements).
-/// Common uses for this element are to implement a glossary or to display metadata
-/// (a list of key-value pairs).
///
pub fn dl(
attrs: List(Attribute(msg)),
@@ -299,10 +222,6 @@ pub fn dl(
element("dl", attrs, children)
}
-/// Specifies a term in a description or definition list, and as such must be
-/// used inside a <dl> element. It is usually followed by a <dd> element;
-/// however, multiple <dt> elements in a row indicate several terms that are
-/// all defined by the immediate next <dd> element.
///
pub fn dt(
attrs: List(Attribute(msg)),
@@ -311,8 +230,6 @@ pub fn dt(
element("dt", attrs, children)
}
-/// Represents a caption or legend describing the rest of the contents of its
-/// parent <figure> element.
///
pub fn figcaption(
attrs: List(Attribute(msg)),
@@ -321,9 +238,6 @@ pub fn figcaption(
element("figcaption", attrs, children)
}
-/// Represents self-contained content, potentially with an optional caption,
-/// which is specified using the <figcaption> element. The figure, its caption,
-/// and its contents are referenced as a single unit.
///
pub fn figure(
attrs: List(Attribute(msg)),
@@ -332,18 +246,11 @@ pub fn figure(
element("figure", attrs, children)
}
-/// Represents a thematic break between paragraph-level elements: for example,
-/// a change of scene in a story, or a shift of topic within a section.
///
pub fn hr(attrs: List(Attribute(msg))) -> Element(msg) {
element("hr", attrs, [])
}
-/// Represents an item in a list. It must be contained in a parent element: an
-/// ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus
-/// and unordered lists, list items are usually displayed using bullet points.
-/// In ordered lists, they are usually displayed with an ascending counter on
-/// the left, such as a number or letter.
///
pub fn li(
attrs: List(Attribute(msg)),
@@ -352,9 +259,6 @@ pub fn li(
element("li", attrs, children)
}
-/// A semantic alternative to <ul>, but treated by browsers (and exposed through
-/// the accessibility tree) as no different than <ul>. It represents an unordered
-/// list of items (which are represented by <li> elements).
///
pub fn menu(
attrs: List(Attribute(msg)),
@@ -363,7 +267,6 @@ pub fn menu(
element("menu", attrs, children)
}
-/// Represents an ordered list of items — typically rendered as a numbered list.
///
pub fn ol(
attrs: List(Attribute(msg)),
@@ -372,10 +275,6 @@ pub fn ol(
element("ol", attrs, children)
}
-/// Represents a paragraph. Paragraphs are usually represented in visual media
-/// as blocks of text separated from adjacent blocks by blank lines and/or
-/// first-line indentation, but HTML paragraphs can be any structural grouping
-/// of related content, such as images or form fields.
///
pub fn p(
attrs: List(Attribute(msg)),
@@ -384,9 +283,6 @@ pub fn p(
element("p", attrs, children)
}
-/// Represents preformatted text which is to be presented exactly as written in
-/// the HTML file. The text is typically rendered using a non-proportional, or
-/// monospaced, font. Whitespace inside this element is displayed as written.
///
pub fn pre(
attrs: List(Attribute(msg)),
@@ -395,7 +291,6 @@ pub fn pre(
element("pre", attrs, children)
}
-/// Represents an unordered list of items, typically rendered as a bulleted list.
///
pub fn ul(
attrs: List(Attribute(msg)),
@@ -406,9 +301,6 @@ pub fn ul(
// HTML ELEMENTS: INLINE TEXT SEMANTICS ----------------------------------------
-/// Together with its href attribute, creates a hyperlink to web pages, files,
-/// email addresses, locations within the current page, or anything else a URL
-/// can address.
///
pub fn a(
attrs: List(Attribute(msg)),
@@ -417,7 +309,6 @@ pub fn a(
element("a", attrs, children)
}
-/// Represents an abbreviation or acronym.
///
pub fn abbr(
attrs: List(Attribute(msg)),
@@ -426,13 +317,6 @@ pub fn abbr(
element("abbr", attrs, children)
}
-/// Used to draw the reader's attention to the element's contents, which are not
-/// otherwise granted special importance. This was formerly known as the Boldface
-/// element, and most browsers still draw the text in boldface. However, you
-/// should not use <b> for styling text or granting importance. If you wish to
-/// create boldface text, you should use the CSS font-weight property. If you
-/// wish to indicate an element is of special importance, you should use the
-/// strong element.
///
pub fn b(
attrs: List(Attribute(msg)),
@@ -441,10 +325,6 @@ pub fn b(
element("b", attrs, children)
}
-/// Tells the browser's bidirectional algorithm to treat the text it contains in
-/// isolation from its surrounding text. It's particularly useful when a website
-/// dynamically inserts some text and doesn't know the directionality of the
-/// text being inserted.
///
pub fn bdi(
attrs: List(Attribute(msg)),
@@ -453,8 +333,6 @@ pub fn bdi(
element("bdi", attrs, children)
}
-/// Overrides the current directionality of text, so that the text within is
-/// rendered in a different direction.
///
pub fn bdo(
attrs: List(Attribute(msg)),
@@ -463,16 +341,11 @@ pub fn bdo(
element("bdo", attrs, children)
}
-/// Produces a line break in text (carriage-return). It is useful for writing a
-/// poem or an address, where the division of lines is significant.
///
pub fn br(attrs: List(Attribute(msg))) -> Element(msg) {
element("br", attrs, [])
}
-/// Used to mark up the title of a cited creative work. The reference may be in
-/// an abbreviated form according to context-appropriate conventions related to
-/// citation metadata.
///
pub fn cite(
attrs: List(Attribute(msg)),
@@ -481,9 +354,6 @@ pub fn cite(
element("cite", attrs, children)
}
-/// Displays its contents styled in a fashion intended to indicate that the text
-/// is a short fragment of computer code. By default, the content text is
-/// displayed using the user agent's default monospace font.
///
pub fn code(
attrs: List(Attribute(msg)),
@@ -492,8 +362,6 @@ pub fn code(
element("code", attrs, children)
}
-/// Links a given piece of content with a machine-readable translation. If the
-/// content is time- or date-related, the<time> element must be used.
///
pub fn data(
attrs: List(Attribute(msg)),
@@ -502,10 +370,6 @@ pub fn data(
element("data", attrs, children)
}
-/// Used to indicate the term being defined within the context of a definition
-/// phrase or sentence. The ancestor <p> element, the <dt>/<dd> pairing, or the
-/// nearest section ancestor of the <dfn> element, is considered to be the
-/// definition of the term.
///
pub fn dfn(
attrs: List(Attribute(msg)),
@@ -514,8 +378,6 @@ pub fn dfn(
element("dfn", attrs, children)
}
-/// Marks text that has stress emphasis. The <em> element can be nested, with
-/// each nesting level indicating a greater degree of emphasis.
///
pub fn em(
attrs: List(Attribute(msg)),
@@ -524,10 +386,6 @@ pub fn em(
element("em", attrs, children)
}
-/// Represents a range of text that is set off from the normal text for some
-/// reason, such as idiomatic text, technical terms, and taxonomical designations,
-/// among others. Historically, these have been presented using italicized type,
-/// which is the original source of the <i> naming of this element.
///
pub fn i(
attrs: List(Attribute(msg)),
@@ -536,10 +394,6 @@ pub fn i(
element("i", attrs, children)
}
-/// Represents a span of inline text denoting textual user input from a keyboard,
-/// voice input, or any other text entry device. By convention, the user agent
-/// defaults to rendering the contents of a <kbd> element using its default
-/// monospace font, although this is not mandated by the HTML standard.
///
pub fn kbd(
attrs: List(Attribute(msg)),
@@ -548,8 +402,6 @@ pub fn kbd(
element("kbd", attrs, children)
}
-/// Represents text which is marked or highlighted for reference or notation
-/// purposes due to the marked passage's relevance in the enclosing context.
///
pub fn mark(
attrs: List(Attribute(msg)),
@@ -558,10 +410,6 @@ pub fn mark(
element("mark", attrs, children)
}
-/// Indicates that the enclosed text is a short inline quotation. Most modern
-/// browsers implement this by surrounding the text in quotation marks. This
-/// element is intended for short quotations that don't require paragraph
-/// breaks; for long quotations use the <blockquote> element.
///
pub fn q(
attrs: List(Attribute(msg)),
@@ -570,10 +418,6 @@ pub fn q(
element("q", attrs, children)
}
-/// Used to provide fall-back parentheses for browsers that do not support the
-/// display of ruby annotations using the <ruby> element. One <rp> element
-/// should enclose each of the opening and closing parentheses that wrap the
-/// <rt> element that contains the annotation's text.
///
pub fn rp(
attrs: List(Attribute(msg)),
@@ -582,10 +426,6 @@ pub fn rp(
element("rp", attrs, children)
}
-/// Specifies the ruby text component of a ruby annotation, which is used to
-/// provide pronunciation, translation, or transliteration information for East
-/// Asian typography. The <rt> element must always be contained within a <ruby>
-/// element.
///
pub fn rt(
attrs: List(Attribute(msg)),
@@ -594,10 +434,6 @@ pub fn rt(
element("rt", attrs, children)
}
-/// Represents small annotations that are rendered above, below, or next to base
-/// text, usually used for showing the pronunciation of East Asian characters.
-/// It can also be used for annotating other kinds of text, but this usage is
-/// less common.
///
pub fn ruby(
attrs: List(Attribute(msg)),
@@ -606,10 +442,6 @@ pub fn ruby(
element("ruby", attrs, children)
}
-/// Renders text with a strikethrough, or a line through it. Use the <s> element
-/// to represent things that are no longer relevant or no longer accurate.
-/// However, <s> is not appropriate when indicating document edits; for that,
-/// use the del and ins elements, as appropriate.
///
pub fn s(
attrs: List(Attribute(msg)),
@@ -618,9 +450,6 @@ pub fn s(
element("s", attrs, children)
}
-/// Used to enclose inline text which represents sample (or quoted) output from
-/// a computer program. Its contents are typically rendered using the browser's
-/// default monospaced font (such as Courier or Lucida Console).
///
pub fn samp(
attrs: List(Attribute(msg)),
@@ -629,9 +458,6 @@ pub fn samp(
element("samp", attrs, children)
}
-/// Represents side-comments and small print, like copyright and legal text,
-/// independent of its styled presentation. By default, it renders text within
-/// it one font size smaller, such as from small to x-small.
///
pub fn small(
attrs: List(Attribute(msg)),
@@ -640,12 +466,6 @@ pub fn small(
element("small", attrs, children)
}
-/// A generic inline container for phrasing content, which does not inherently
-/// represent anything. It can be used to group elements for styling purposes
-/// (using the class or id attributes), or because they share attribute values,
-/// such as lang. It should be used only when no other semantic element is
-/// appropriate. <span> is very much like a div element, but div is a block-level
-/// element whereas a <span> is an inline-level element.
///
pub fn span(
attrs: List(Attribute(msg)),
@@ -654,8 +474,6 @@ pub fn span(
element("span", attrs, children)
}
-/// Indicates that its contents have strong importance, seriousness, or urgency.
-/// Browsers typically render the contents in bold type.
///
pub fn strong(
attrs: List(Attribute(msg)),
@@ -664,9 +482,6 @@ pub fn strong(
element("strong", attrs, children)
}
-/// Specifies inline text which should be displayed as subscript for solely
-/// typographical reasons. Subscripts are typically rendered with a lowered
-/// baseline using smaller text.
///
pub fn sub(
attrs: List(Attribute(msg)),
@@ -675,9 +490,6 @@ pub fn sub(
element("sub", attrs, children)
}
-/// Specifies inline text which is to be displayed as superscript for solely
-/// typographical reasons. Superscripts are usually rendered with a raised
-/// baseline using smaller text.
///
pub fn sup(
attrs: List(Attribute(msg)),
@@ -686,9 +498,6 @@ pub fn sup(
element("sup", attrs, children)
}
-/// Represents a specific period in time. It may include the datetime attribute
-/// to translate dates into machine-readable format, allowing for better search
-/// engine results or custom features such as reminders.
///
pub fn time(
attrs: List(Attribute(msg)),
@@ -697,9 +506,6 @@ pub fn time(
element("time", attrs, children)
}
-/// Represents a span of inline text which should be rendered in a way that
-/// indicates that it has a non-textual annotation. This is rendered by default
-/// as a simple solid underline but may be altered using CSS.
///
pub fn u(
attrs: List(Attribute(msg)),
@@ -708,9 +514,6 @@ pub fn u(
element("u", attrs, children)
}
-/// Represents the name of a variable in a mathematical expression or a
-/// programming context. It's typically presented using an italicized version of
-/// the current typeface, although that behavior is browser-dependent.
///
pub fn var(
attrs: List(Attribute(msg)),
@@ -719,9 +522,6 @@ pub fn var(
element("var", attrs, children)
}
-/// Represents the name of a variable in a mathematical expression or a
-/// programming context. It's typically presented using an italicized version of
-/// the current typeface, although that behavior is browser-dependent.
///
pub fn wbr(attrs: List(Attribute(msg))) -> Element(msg) {
element("wbr", attrs, [])
@@ -729,16 +529,11 @@ pub fn wbr(attrs: List(Attribute(msg))) -> Element(msg) {
// HTML ELEMENTS: IMAGE AND MULTIMEDIA -----------------------------------------
-/// Represents a word break opportunity—a position within text where the browser
-/// may optionally break a line, though its line-breaking rules would not
-/// otherwise create a break at that location.
///
pub fn area(attrs: List(Attribute(msg))) -> Element(msg) {
element("area", attrs, [])
}
-/// Defines an area inside an image map that has predefined clickable areas. An
-/// image map allows geometric areas on an image to be associated with hyperlink.
///
pub fn audio(
attrs: List(Attribute(msg)),
@@ -747,10 +542,6 @@ pub fn audio(
element("audio", attrs, children)
}
-/// Used to embed sound content in documents. It may contain one or more audio
-/// sources, represented using the src attribute or the source element: the
-/// browser will choose the most suitable one. It can also be the destination
-/// for streamed media, using a MediaStream.
///
pub fn img(attrs: List(Attribute(msg))) -> Element(msg) {
element("img", attrs, [])
@@ -765,18 +556,11 @@ pub fn map(
element("map", attrs, children)
}
-/// Used as a child of the media elements, audio and video. It lets you specify
-/// timed text tracks (or time-based data), for example to automatically handle
-/// subtitles. The tracks are formatted in WebVTT format (.vtt files)—Web Video
-/// Text Tracks.
///
pub fn track(attrs: List(Attribute(msg))) -> Element(msg) {
element("track", attrs, [])
}
-/// Embeds a media player which supports video playback into the document. You
-/// can also use <video> for audio content, but the audio element may provide a
-/// more appropriate user experience.
///
pub fn video(
attrs: List(Attribute(msg)),
@@ -787,30 +571,21 @@ pub fn video(
// HTML ELEMENTS: EMBEDDED CONTENT ---------------------------------------------
-/// Embeds external content at the specified point in the document. This content
-///is provided by an external application or other source of interactive content
-/// such as a browser plug-in.
///
pub fn embed(attrs: List(Attribute(msg))) -> Element(msg) {
element("embed", attrs, [])
}
-/// Represents a nested browsing context, embedding another HTML page into the
-/// current one.
///
pub fn iframe(attrs: List(Attribute(msg))) -> Element(msg) {
element("iframe", attrs, [])
}
-/// Represents an external resource, which can be treated as an image, a nested
-/// browsing context, or a resource to be handled by a plugin.
///
pub fn object(attrs: List(Attribute(msg))) -> Element(msg) {
element("object", attrs, [])
}
-/// Contains zero or more <source> elements and one <img> element to offer
-/// alternative versions of an image for different display/device scenarios.
///
pub fn picture(
attrs: List(Attribute(msg)),
@@ -819,19 +594,11 @@ pub fn picture(
element("picture", attrs, children)
}
-/// Enables the embedding of another HTML page into the current one to enable
-/// smoother navigation into new pages.
///
pub fn portal(attrs: List(Attribute(msg))) -> Element(msg) {
element("portal", attrs, [])
}
-/// Specifies multiple media resources for the picture, the audio element, or
-/// the video element. It is a void element, meaning that it has no content and
-/// does not have a closing tag. It is commonly used to offer the same media
-/// content in multiple file formats in order to provide compatibility with a
-/// broad range of browsers given their differing support for image file formats
-/// and media file formats.
///
pub fn source(attrs: List(Attribute(msg))) -> Element(msg) {
element("source", attrs, [])
@@ -839,9 +606,6 @@ pub fn source(attrs: List(Attribute(msg))) -> Element(msg) {
// HTML ELEMENTS: SVG AND MATHML -----------------------------------------------
-/// Container defining a new coordinate system and viewport. It is used as the
-/// outermost element of SVG documents, but it can also be used to embed an SVG
-/// fragment inside an SVG or HTML document.
///
pub fn svg(
attrs: List(Attribute(msg)),
@@ -850,9 +614,6 @@ pub fn svg(
namespaced("http://www.w3.org/2000/svg", "svg", attrs, children)
}
-/// The top-level element in MathML. Every valid MathML instance must be wrapped
-/// in it. In addition, you must not nest a second <math> element in another,
-/// but you can have an arbitrary number of other child elements in it.
///
pub fn math(
attrs: List(Attribute(msg)),
@@ -863,15 +624,11 @@ pub fn math(
// HTML ELEMENTS: SCRIPTING ----------------------------------------------------
-/// Container element to use with either the canvas scripting API or the WebGL
-/// API to draw graphics and animations.
///
pub fn canvas(attrs: List(Attribute(msg))) -> Element(msg) {
element("canvas", attrs, [])
}
-/// Defines a section of HTML to be inserted if a script type on the page is
-/// unsupported or if scripting is currently turned off in the browser.
///
pub fn noscript(
attrs: List(Attribute(msg)),
@@ -880,9 +637,6 @@ pub fn noscript(
element("noscript", attrs, children)
}
-/// Used to embed executable code or data; this is typically used to embed or
-/// refer to JavaScript code. The <script> element can also be used with other
-/// languages, such as WebGL's GLSL shader programming language and JSON.
///
pub fn script(attrs: List(Attribute(msg)), js: String) -> Element(msg) {
element("script", attrs, [text(js)])
@@ -890,10 +644,6 @@ pub fn script(attrs: List(Attribute(msg)), js: String) -> Element(msg) {
// HTML ELEMENTS: DEMARCATING EDITS ---------------------------------------------
-/// Represents a range of text that has been deleted from a document. This can
-/// be used when rendering "track changes" or source code diff information, for
-/// example. The <ins> element can be used for the opposite purpose: to indicate
-/// text that has been added to the document.
///
pub fn del(
attrs: List(Attribute(msg)),
@@ -902,9 +652,6 @@ pub fn del(
element.element("del", attrs, children)
}
-/// Represents a range of text that has been added to a document. You can use the
-/// <del> element to similarly represent a range of text that has been deleted
-/// from the document.
///
pub fn ins(
attrs: List(Attribute(msg)),
@@ -915,7 +662,6 @@ pub fn ins(
// HTML ELEMENTS: TABLE CONTENT ------------------------------------------------
-/// Specifies the caption (or title) of a table.
///
pub fn caption(
attrs: List(Attribute(msg)),
@@ -924,14 +670,11 @@ pub fn caption(
element.element("caption", attrs, children)
}
-/// Defines a column within a table and is used for defining common semantics on
-/// all common cells. It is generally found within a <colgroup> element.
///
pub fn col(attrs: List(Attribute(msg))) -> Element(msg) {
element.element("col", attrs, [])
}
-/// Defines a group of columns within a table.
///
pub fn colgroup(
attrs: List(Attribute(msg)),
@@ -940,8 +683,6 @@ pub fn colgroup(
element.element("colgroup", attrs, children)
}
-/// Represents tabular data — that is, information presented in a two-dimensional
-/// table comprised of rows and columns of cells containing data.
///
pub fn table(
attrs: List(Attribute(msg)),
@@ -950,8 +691,6 @@ pub fn table(
element.element("table", attrs, children)
}
-/// Encapsulates a set of table rows (<tr> elements), indicating that they
-/// comprise the body of the table (<table>).
///
pub fn tbody(
attrs: List(Attribute(msg)),
@@ -960,8 +699,6 @@ pub fn tbody(
element.element("tbody", attrs, children)
}
-/// Defines a cell of a table that contains data. It participates in the table
-/// model.
///
pub fn td(
attrs: List(Attribute(msg)),
@@ -970,7 +707,6 @@ pub fn td(
element.element("td", attrs, children)
}
-/// Defines a set of rows summarizing the columns of the table.
///
pub fn tfoot(
attrs: List(Attribute(msg)),
@@ -979,8 +715,6 @@ pub fn tfoot(
element.element("tfoot", attrs, children)
}
-/// Defines a cell as a header of a group of table cells. The exact nature of
-/// this group is defined by the scope and headers attributes.
///
pub fn th(
attrs: List(Attribute(msg)),
@@ -989,7 +723,6 @@ pub fn th(
element.element("th", attrs, children)
}
-/// Defines a set of rows defining the head of the columns of the table.
///
pub fn thead(
attrs: List(Attribute(msg)),
@@ -998,8 +731,6 @@ pub fn thead(
element.element("thead", attrs, children)
}
-/// Defines a row of cells in a table. The row's cells can then be established
-/// using a mix of <td> (data cell) and <th> (header cell) elements.
///
pub fn tr(
attrs: List(Attribute(msg)),
@@ -1010,9 +741,6 @@ pub fn tr(
// HTML ELEMENTS: FORMS --------------------------------------------------------
-/// An interactive element activated by a user with a mouse, keyboard, finger,
-/// voice command, or other assistive technology. Once activated, it performs an
-/// action, such as submitting a form or opening a dialog.
///
pub fn button(
attrs: List(Attribute(msg)),
@@ -1021,8 +749,6 @@ pub fn button(
element.element("button", attrs, children)
}
-/// Contains a set of <option> elements that represent the permissible or
-/// recommended options available to choose from within other controls.
///
pub fn datalist(
attrs: List(Attribute(msg)),
@@ -1031,7 +757,6 @@ pub fn datalist(
element.element("datalist", attrs, children)
}
-/// Used to group several controls as well as labels (<label>) within a web form.
///
pub fn fieldset(
attrs: List(Attribute(msg)),
@@ -1040,8 +765,6 @@ pub fn fieldset(
element.element("fieldset", attrs, children)
}
-/// Represents a document section containing interactive controls for submitting
-/// information.
///
pub fn form(
attrs: List(Attribute(msg)),
@@ -1050,17 +773,11 @@ pub fn form(
element.element("form", attrs, children)
}
-/// Used to create interactive controls for web-based forms to accept data from
-/// he user; a wide variety of types of input data and control widgets are
-/// available, depending on the device and user agent. The <input> element is
-/// one of the most powerful and complex in all of HTML due to the sheer number
-/// of combinations of input types and attributes.
///
pub fn input(attrs: List(Attribute(msg))) -> Element(msg) {
element.element("input", attrs, [])
}
-/// Represents a caption for an item in a user interface.
///
pub fn label(
attrs: List(Attribute(msg)),
@@ -1069,7 +786,6 @@ pub fn label(
element.element("label", attrs, children)
}
-/// Represents a caption for the content of its parent <fieldset>.
///
pub fn legend(
attrs: List(Attribute(msg)),
@@ -1078,7 +794,6 @@ pub fn legend(
element.element("legend", attrs, children)
}
-/// Represents either a scalar value within a known range or a fractional value.
///
pub fn meter(
attrs: List(Attribute(msg)),
@@ -1087,7 +802,6 @@ pub fn meter(
element.element("meter", attrs, children)
}
-/// Creates a grouping of options within a <select> element.
///
pub fn optgroup(
attrs: List(Attribute(msg)),
@@ -1096,16 +810,11 @@ pub fn optgroup(
element.element("optgroup", attrs, children)
}
-/// Used to define an item contained in a select, an <optgroup>, or a <datalist>
-/// element. As such, <option> can represent menu items in popups and other lists
-/// of items in an HTML document.
///
pub fn option(attrs: List(Attribute(msg))) -> Element(msg) {
element.element("option", attrs, [])
}
-/// Container element into which a site or app can inject the results of a
-/// calculation or the outcome of a user action.
///
pub fn output(
attrs: List(Attribute(msg)),
@@ -1114,8 +823,6 @@ pub fn output(
element.element("output", attrs, children)
}
-/// Displays an indicator showing the completion progress of a task, typically
-/// displayed as a progress bar.
///
pub fn progress(
attrs: List(Attribute(msg)),
@@ -1124,7 +831,6 @@ pub fn progress(
element.element("progress", attrs, children)
}
-/// Represents a control that provides a menu of options.
///
pub fn select(
attrs: List(Attribute(msg)),
@@ -1133,9 +839,6 @@ pub fn select(
element.element("select", attrs, children)
}
-/// Represents a multi-line plain-text editing control, useful when you want to
-/// allow users to enter a sizeable amount of free-form text, for example, a
-/// comment on a review or feedback form.
///
pub fn textarea(attrs: List(Attribute(msg))) -> Element(msg) {
element.element("textarea", attrs, [])
@@ -1143,9 +846,6 @@ pub fn textarea(attrs: List(Attribute(msg))) -> Element(msg) {
// HTML ELEMENTS: INTERACTIVE ELEMENTS -----------------------------------------
-/// Creates a disclosure widget in which information is visible only when the
-/// widget is toggled into an "open" state. A summary or label must be provided
-/// using the <summary> element.
///
pub fn details(
attrs: List(Attribute(msg)),
@@ -1154,8 +854,6 @@ pub fn details(
element.element("details", attrs, children)
}
-/// Represents a dialog box or other interactive component, such as a dismissible
-/// alert, inspector, or subwindow.
///
pub fn dialog(
attrs: List(Attribute(msg)),
@@ -1164,9 +862,6 @@ pub fn dialog(
element.element("dialog", attrs, children)
}
-/// Specifies a summary, caption, or legend for a details element's disclosure box.
-/// Clicking the <summary> element toggles the state of the parent <details> element
-/// open and closed.
///
pub fn summary(
attrs: List(Attribute(msg)),
@@ -1177,17 +872,11 @@ pub fn summary(
// HTML ELEMENTS: WEB COMPONENTS -----------------------------------------------
-/// Part of the Web Components technology suite, this element is a placeholder
-/// inside a web component that you can fill with your own markup, which lets you
-/// create separate DOM trees and present them together.
///
pub fn slot(attrs: List(Attribute(msg))) -> Element(msg) {
element.element("slot", attrs, [])
}
-/// A mechanism for holding HTML that is not to be rendered immediately when a
-/// page is loaded but may be instantiated subsequently during runtime using
-/// JavaScript.
///
pub fn template(
attrs: List(Attribute(msg)),