{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}

-- | Module    : Html.Attributes
-- Copyright   : (c) Joshua Obritsch, 2021
-- License     : MIT
-- Maintainer  : joshua@obritsch.com
-- Stability   : Experimental
--
-- The "Html.Attributes" module provides a set of functions for generating HTML attributes.
module Html.Attributes
    ( -- * Attributes
      -- ** abbr
      abbr
      -- ** accept
    , accept
      -- ** acceptCharset
    , acceptCharset
      -- ** accesskey
    , accesskey
      -- ** action
    , action
      -- ** allow
    , allow
      -- ** allowfullscreen
    , allowfullscreen
      -- ** alt
    , alt
      -- ** as
    , as
      -- ** async
    , async
      -- ** autocapitalize
    , autocapitalize
      -- ** autocomplete
    , autocomplete
      -- ** autofocus
    , autofocus
      -- ** autoplay
    , autoplay
      -- ** blocking
    , blocking
      -- ** charset
    , charset
      -- ** checked
    , checked
      -- ** cite
    , cite
      -- ** class
    , class_
      -- ** color
    , color
      -- ** cols
    , cols
      -- ** colspan
    , colspan
      -- ** content
    , content
      -- ** contenteditable
    , contenteditable
      -- ** controls
    , controls
      -- ** coords
    , coords
      -- ** crossorigin
    , crossorigin
      -- ** data
    , data_
      -- ** datetime
    , datetime
      -- ** decoding
    , decoding
      -- ** default
    , default_
      -- ** defer
    , defer
      -- ** dir
    , dir
      -- ** disabled
    , disabled
      -- ** download
    , download
      -- ** draggable
    , draggable
      -- ** enctype
    , enctype
      -- ** enterkeyhint
    , enterkeyhint
      -- ** for
    , for
      -- ** form
    , form
      -- ** formaction
    , formaction
      -- ** formenctype
    , formenctype
      -- ** formmethod
    , formmethod
      -- ** formnovalidate
    , formnovalidate
      -- ** formtarget
    , formtarget
      -- ** headers
    , headers
      -- ** height
    , height
      -- ** hidden
    , hidden
      -- ** high
    , high
      -- ** href
    , href
      -- ** hreflang
    , hreflang
      -- ** httpEquiv
    , httpEquiv
      -- ** id
    , id
      -- ** imagesizes
    , imagesizes
      -- ** imagesrcset
    , imagesrcset
      -- ** inert
    , inert
      -- ** inputmode
    , inputmode
      -- ** integrity
    , integrity
      -- ** is
    , is
      -- ** ismap
    , ismap
      -- ** itemid
    , itemid
      -- ** itemprop
    , itemprop
      -- ** itemref
    , itemref
      -- ** itemscope
    , itemscope
      -- ** itemtype
    , itemtype
      -- ** kind
    , kind
      -- ** label
    , label
      -- ** lang
    , lang
      -- ** list
    , list
      -- ** loading
    , loading
      -- ** loop
    , loop
      -- ** low
    , low
      -- ** max
    , max
      -- ** maxlength
    , maxlength
      -- ** media
    , media
      -- ** method
    , method
      -- ** min
    , min
      -- ** minlength
    , minlength
      -- ** multiple
    , multiple
      -- ** muted
    , muted
      -- ** name
    , name
      -- ** nomodule
    , nomodule
      -- ** nonce
    , nonce
      -- ** novalidate
    , novalidate
      -- ** open
    , open
      -- ** optimum
    , optimum
      -- ** pattern
    , pattern
      -- ** ping
    , ping
      -- ** placeholder
    , placeholder
      -- ** playsinline
    , playsinline
      -- ** poster
    , poster
      -- ** preload
    , preload
      -- ** readonly
    , readonly
      -- ** referrerpolicy
    , referrerpolicy
      -- ** rel
    , rel
      -- ** required
    , required
      -- ** reversed
    , reversed
      -- ** rows
    , rows
      -- ** rowspan
    , rowspan
      -- ** sandbox
    , sandbox
      -- ** scope
    , scope
      -- ** selected
    , selected
      -- ** shape
    , shape
      -- ** size
    , size
      -- ** sizes
    , sizes
      -- ** slot
    , slot
      -- ** span
    , span
      -- ** spellcheck
    , spellcheck
      -- ** src
    , src
      -- ** srcdoc
    , srcdoc
      -- ** srclang
    , srclang
      -- ** srcset
    , srcset
      -- ** start
    , start
      -- ** step
    , step
      -- ** style
    , style
      -- ** tabindex
    , tabindex
      -- ** target
    , target
      -- ** title
    , title
      -- ** translate
    , translate
      -- ** type
    , type_
      -- ** usemap
    , usemap
      -- ** value
    , value
      -- ** width
    , width
      -- ** wrap
    , wrap
    ) where


import Data.Bool (Bool(..))
import Data.Text.Lazy.Builder (Builder)
import Html (Attribute(..))


-- ATTRIBUTES


-- | Generates an HTML @abbr@ attribute with the given value.
abbr :: Builder -> Attribute
abbr :: Builder -> Attribute
abbr = Builder -> Builder -> Attribute
TextAttribute Builder
" abbr=\""
{-# INLINE abbr #-}


-- | Generates an HTML @accept@ attribute with the given value.
accept :: Builder -> Attribute
accept :: Builder -> Attribute
accept = Builder -> Builder -> Attribute
TextAttribute Builder
" accept=\""
{-# INLINE accept #-}


-- | Generates an HTML @accept-charset@ attribute with the given value.
acceptCharset :: Builder -> Attribute
acceptCharset :: Builder -> Attribute
acceptCharset = Builder -> Builder -> Attribute
TextAttribute Builder
" accept-charset=\""
{-# INLINE acceptCharset #-}


-- | Generates an HTML @accesskey@ attribute with the given value.
accesskey :: Builder -> Attribute
accesskey :: Builder -> Attribute
accesskey = Builder -> Builder -> Attribute
TextAttribute Builder
" accesskey=\""
{-# INLINE accesskey #-}


-- | Generates an HTML @action@ attribute with the given value.
action :: Builder -> Attribute
action :: Builder -> Attribute
action = Builder -> Builder -> Attribute
TextAttribute Builder
" action=\""
{-# INLINE action #-}


-- | Generates an HTML @allow@ attribute with the given value.
allow :: Builder -> Attribute
allow :: Builder -> Attribute
allow = Builder -> Builder -> Attribute
TextAttribute Builder
" allow=\""
{-# INLINE allow #-}


-- | Generates an HTML @allowfullscreen@ attribute with the given value.
allowfullscreen :: Bool -> Attribute
allowfullscreen :: Bool -> Attribute
allowfullscreen = Builder -> Bool -> Attribute
BoolAttribute Builder
" allowfullscreen"
{-# INLINE allowfullscreen #-}


-- | Generates an HTML @alt@ attribute with the given value.
alt :: Builder -> Attribute
alt :: Builder -> Attribute
alt = Builder -> Builder -> Attribute
TextAttribute Builder
" alt=\""
{-# INLINE alt #-}


-- | Generates an HTML @as@ attribute with the given value.
as :: Builder -> Attribute
as :: Builder -> Attribute
as = Builder -> Builder -> Attribute
TextAttribute Builder
" as=\""
{-# INLINE as #-}


-- | Generates an HTML @async@ attribute with the given value.
async :: Bool -> Attribute
async :: Bool -> Attribute
async = Builder -> Bool -> Attribute
BoolAttribute Builder
" async"
{-# INLINE async #-}


-- | Generates an HTML @autocapitalize@ attribute with the given value.
autocapitalize :: Builder -> Attribute
autocapitalize :: Builder -> Attribute
autocapitalize = Builder -> Builder -> Attribute
TextAttribute Builder
" autocapitalize=\""
{-# INLINE autocapitalize #-}


-- | Generates an HTML @autocomplete@ attribute with the given value.
autocomplete :: Builder -> Attribute
autocomplete :: Builder -> Attribute
autocomplete = Builder -> Builder -> Attribute
TextAttribute Builder
" autocomplete=\""
{-# INLINE autocomplete #-}


-- | Generates an HTML @autofocus@ attribute with the given value.
autofocus :: Bool -> Attribute
autofocus :: Bool -> Attribute
autofocus = Builder -> Bool -> Attribute
BoolAttribute Builder
" autofocus"
{-# INLINE autofocus #-}


-- | Generates an HTML @autoplay@ attribute with the given value.
autoplay :: Bool -> Attribute
autoplay :: Bool -> Attribute
autoplay = Builder -> Bool -> Attribute
BoolAttribute Builder
" autoplay"
{-# INLINE autoplay #-}


-- | Generates an HTML @blocking@ attribute with the given value.
blocking :: Builder -> Attribute
blocking :: Builder -> Attribute
blocking = Builder -> Builder -> Attribute
TextAttribute Builder
" blocking=\""
{-# INLINE blocking #-}


-- | Generates an HTML @charset@ attribute with the given value.
charset :: Builder -> Attribute
charset :: Builder -> Attribute
charset = Builder -> Builder -> Attribute
TextAttribute Builder
" charset=\""
{-# INLINE charset #-}


-- | Generates an HTML @checked@ attribute with the given value.
checked :: Bool -> Attribute
checked :: Bool -> Attribute
checked = Builder -> Bool -> Attribute
BoolAttribute Builder
" checked"
{-# INLINE checked #-}


-- | Generates an HTML @cite@ attribute with the given value.
cite :: Builder -> Attribute
cite :: Builder -> Attribute
cite = Builder -> Builder -> Attribute
TextAttribute Builder
" cite=\""
{-# INLINE cite #-}


-- | Generates an HTML @class@ attribute with the given value.
class_ :: Builder -> Attribute
class_ :: Builder -> Attribute
class_ = Builder -> Builder -> Attribute
TextAttribute Builder
" class=\""
{-# INLINE class_ #-}


-- | Generates an HTML @color@ attribute with the given value.
color :: Builder -> Attribute
color :: Builder -> Attribute
color = Builder -> Builder -> Attribute
TextAttribute Builder
" color=\""
{-# INLINE color #-}


-- | Generates an HTML @cols@ attribute with the given value.
cols :: Builder -> Attribute
cols :: Builder -> Attribute
cols = Builder -> Builder -> Attribute
TextAttribute Builder
" cols=\""
{-# INLINE cols #-}


-- | Generates an HTML @colspan@ attribute with the given value.
colspan :: Builder -> Attribute
colspan :: Builder -> Attribute
colspan = Builder -> Builder -> Attribute
TextAttribute Builder
" colspan=\""
{-# INLINE colspan #-}


-- | Generates an HTML @content@ attribute with the given value.
content :: Builder -> Attribute
content :: Builder -> Attribute
content = Builder -> Builder -> Attribute
TextAttribute Builder
" content=\""
{-# INLINE content #-}


-- | Generates an HTML @contenteditable@ attribute with the given value.
contenteditable :: Builder -> Attribute
contenteditable :: Builder -> Attribute
contenteditable = Builder -> Builder -> Attribute
TextAttribute Builder
" contenteditable=\""
{-# INLINE contenteditable #-}


-- | Generates an HTML @controls@ attribute with the given value.
controls :: Bool -> Attribute
controls :: Bool -> Attribute
controls = Builder -> Bool -> Attribute
BoolAttribute Builder
" controls"
{-# INLINE controls #-}


-- | Generates an HTML @coords@ attribute with the given value.
coords :: Builder -> Attribute
coords :: Builder -> Attribute
coords = Builder -> Builder -> Attribute
TextAttribute Builder
" coords=\""
{-# INLINE coords #-}


-- | Generates an HTML @crossorigin@ attribute with the given value.
crossorigin :: Builder -> Attribute
crossorigin :: Builder -> Attribute
crossorigin = Builder -> Builder -> Attribute
TextAttribute Builder
" crossorigin=\""
{-# INLINE crossorigin #-}


-- | Generates an HTML @data@ attribute with the given value.
data_ :: Builder -> Attribute
data_ :: Builder -> Attribute
data_ = Builder -> Builder -> Attribute
TextAttribute Builder
" data=\""
{-# INLINE data_ #-}


-- | Generates an HTML @datetime@ attribute with the given value.
datetime :: Builder -> Attribute
datetime :: Builder -> Attribute
datetime = Builder -> Builder -> Attribute
TextAttribute Builder
" datetime=\""
{-# INLINE datetime #-}


-- | Generates an HTML @decoding@ attribute with the given value.
decoding :: Builder -> Attribute
decoding :: Builder -> Attribute
decoding = Builder -> Builder -> Attribute
TextAttribute Builder
" decoding=\""
{-# INLINE decoding #-}


-- | Generates an HTML @default@ attribute with the given value.
default_ :: Bool -> Attribute
default_ :: Bool -> Attribute
default_ = Builder -> Bool -> Attribute
BoolAttribute Builder
" default"
{-# INLINE default_ #-}


-- | Generates an HTML @defer@ attribute with the given value.
defer :: Bool -> Attribute
defer :: Bool -> Attribute
defer = Builder -> Bool -> Attribute
BoolAttribute Builder
" defer"
{-# INLINE defer #-}


-- | Generates an HTML @dir@ attribute with the given value.
dir :: Builder -> Attribute
dir :: Builder -> Attribute
dir = Builder -> Builder -> Attribute
TextAttribute Builder
" dir=\""
{-# INLINE dir #-}


-- | Generates an HTML @disabled@ attribute with the given value.
disabled :: Bool -> Attribute
disabled :: Bool -> Attribute
disabled = Builder -> Bool -> Attribute
BoolAttribute Builder
" disabled"
{-# INLINE disabled #-}


-- | Generates an HTML @download@ attribute with the given value.
download :: Builder -> Attribute
download :: Builder -> Attribute
download = Builder -> Builder -> Attribute
TextAttribute Builder
" download=\""
{-# INLINE download #-}


-- | Generates an HTML @draggable@ attribute with the given value.
draggable :: Builder -> Attribute
draggable :: Builder -> Attribute
draggable = Builder -> Builder -> Attribute
TextAttribute Builder
" draggable=\""
{-# INLINE draggable #-}


-- | Generates an HTML @enctype@ attribute with the given value.
enctype :: Builder -> Attribute
enctype :: Builder -> Attribute
enctype = Builder -> Builder -> Attribute
TextAttribute Builder
" enctype=\""
{-# INLINE enctype #-}


-- | Generates an HTML @enterkeyhint@ attribute with the given value.
enterkeyhint :: Builder -> Attribute
enterkeyhint :: Builder -> Attribute
enterkeyhint = Builder -> Builder -> Attribute
TextAttribute Builder
" enterkeyhint=\""
{-# INLINE enterkeyhint #-}


-- | Generates an HTML @for@ attribute with the given value.
for :: Builder -> Attribute
for :: Builder -> Attribute
for = Builder -> Builder -> Attribute
TextAttribute Builder
" for=\""
{-# INLINE for #-}


-- | Generates an HTML @form@ attribute with the given value.
form :: Builder -> Attribute
form :: Builder -> Attribute
form = Builder -> Builder -> Attribute
TextAttribute Builder
" form=\""
{-# INLINE form #-}


-- | Generates an HTML @formaction@ attribute with the given value.
formaction :: Builder -> Attribute
formaction :: Builder -> Attribute
formaction = Builder -> Builder -> Attribute
TextAttribute Builder
" formaction=\""
{-# INLINE formaction #-}


-- | Generates an HTML @formenctype@ attribute with the given value.
formenctype :: Builder -> Attribute
formenctype :: Builder -> Attribute
formenctype = Builder -> Builder -> Attribute
TextAttribute Builder
" formenctype=\""
{-# INLINE formenctype #-}


-- | Generates an HTML @formmethod@ attribute with the given value.
formmethod :: Builder -> Attribute
formmethod :: Builder -> Attribute
formmethod = Builder -> Builder -> Attribute
TextAttribute Builder
" formmethod=\""
{-# INLINE formmethod #-}


-- | Generates an HTML @formnovalidate@ attribute with the given value.
formnovalidate :: Bool -> Attribute
formnovalidate :: Bool -> Attribute
formnovalidate = Builder -> Bool -> Attribute
BoolAttribute Builder
" formnovalidate"
{-# INLINE formnovalidate #-}


-- | Generates an HTML @formtarget@ attribute with the given value.
formtarget :: Builder -> Attribute
formtarget :: Builder -> Attribute
formtarget = Builder -> Builder -> Attribute
TextAttribute Builder
" formtarget=\""
{-# INLINE formtarget #-}


-- | Generates an HTML @headers@ attribute with the given value.
headers :: Builder -> Attribute
headers :: Builder -> Attribute
headers = Builder -> Builder -> Attribute
TextAttribute Builder
" headers=\""
{-# INLINE headers #-}


-- | Generates an HTML @height@ attribute with the given value.
height :: Builder -> Attribute
height :: Builder -> Attribute
height = Builder -> Builder -> Attribute
TextAttribute Builder
" height=\""
{-# INLINE height #-}


-- | Generates an HTML @hidden@ attribute with the given value.
hidden :: Bool -> Attribute
hidden :: Bool -> Attribute
hidden = Builder -> Bool -> Attribute
BoolAttribute Builder
" hidden"
{-# INLINE hidden #-}


-- | Generates an HTML @high@ attribute with the given value.
high :: Builder -> Attribute
high :: Builder -> Attribute
high = Builder -> Builder -> Attribute
TextAttribute Builder
" high=\""
{-# INLINE high #-}


-- | Generates an HTML @href@ attribute with the given value.
href :: Builder -> Attribute
href :: Builder -> Attribute
href = Builder -> Builder -> Attribute
TextAttribute Builder
" href=\""
{-# INLINE href #-}


-- | Generates an HTML @hreflang@ attribute with the given value.
hreflang :: Builder -> Attribute
hreflang :: Builder -> Attribute
hreflang = Builder -> Builder -> Attribute
TextAttribute Builder
" hreflang=\""
{-# INLINE hreflang #-}


-- | Generates an HTML @http-equiv@ attribute with the given value.
httpEquiv :: Builder -> Attribute
httpEquiv :: Builder -> Attribute
httpEquiv = Builder -> Builder -> Attribute
TextAttribute Builder
" http-equiv=\""
{-# INLINE httpEquiv #-}


-- | Generates an HTML @id@ attribute with the given value.
id :: Builder -> Attribute
id :: Builder -> Attribute
id = Builder -> Builder -> Attribute
TextAttribute Builder
" id=\""
{-# INLINE id #-}


-- | Generates an HTML @imagesizes@ attribute with the given value.
imagesizes :: Builder -> Attribute
imagesizes :: Builder -> Attribute
imagesizes = Builder -> Builder -> Attribute
TextAttribute Builder
" imagesizes=\""
{-# INLINE imagesizes #-}


-- | Generates an HTML @imagesrcset@ attribute with the given value.
imagesrcset :: Builder -> Attribute
imagesrcset :: Builder -> Attribute
imagesrcset = Builder -> Builder -> Attribute
TextAttribute Builder
" imagesrcset=\""
{-# INLINE imagesrcset #-}


-- | Generates an HTML @inert@ attribute with the given value.
inert :: Bool -> Attribute
inert :: Bool -> Attribute
inert = Builder -> Bool -> Attribute
BoolAttribute Builder
" inert"
{-# INLINE inert #-}


-- | Generates an HTML @inputmode@ attribute with the given value.
inputmode :: Builder -> Attribute
inputmode :: Builder -> Attribute
inputmode = Builder -> Builder -> Attribute
TextAttribute Builder
" inputmode=\""
{-# INLINE inputmode #-}


-- | Generates an HTML @integrity@ attribute with the given value.
integrity :: Builder -> Attribute
integrity :: Builder -> Attribute
integrity = Builder -> Builder -> Attribute
TextAttribute Builder
" integrity=\""
{-# INLINE integrity #-}


-- | Generates an HTML @is@ attribute with the given value.
is :: Builder -> Attribute
is :: Builder -> Attribute
is = Builder -> Builder -> Attribute
TextAttribute Builder
" is=\""
{-# INLINE is #-}


-- | Generates an HTML @ismap@ attribute with the given value.
ismap :: Bool -> Attribute
ismap :: Bool -> Attribute
ismap = Builder -> Bool -> Attribute
BoolAttribute Builder
" ismap"
{-# INLINE ismap #-}


-- | Generates an HTML @itemid@ attribute with the given value.
itemid :: Builder -> Attribute
itemid :: Builder -> Attribute
itemid = Builder -> Builder -> Attribute
TextAttribute Builder
" itemid=\""
{-# INLINE itemid #-}


-- | Generates an HTML @itemprop@ attribute with the given value.
itemprop :: Builder -> Attribute
itemprop :: Builder -> Attribute
itemprop = Builder -> Builder -> Attribute
TextAttribute Builder
" itemprop=\""
{-# INLINE itemprop #-}


-- | Generates an HTML @itemref@ attribute with the given value.
itemref :: Builder -> Attribute
itemref :: Builder -> Attribute
itemref = Builder -> Builder -> Attribute
TextAttribute Builder
" itemref=\""
{-# INLINE itemref #-}


-- | Generates an HTML @itemscope@ attribute with the given value.
itemscope :: Bool -> Attribute
itemscope :: Bool -> Attribute
itemscope = Builder -> Bool -> Attribute
BoolAttribute Builder
" itemscope"
{-# INLINE itemscope #-}


-- | Generates an HTML @itemtype@ attribute with the given value.
itemtype :: Builder -> Attribute
itemtype :: Builder -> Attribute
itemtype = Builder -> Builder -> Attribute
TextAttribute Builder
" itemtype=\""
{-# INLINE itemtype #-}


-- | Generates an HTML @kind@ attribute with the given value.
kind :: Builder -> Attribute
kind :: Builder -> Attribute
kind = Builder -> Builder -> Attribute
TextAttribute Builder
" kind=\""
{-# INLINE kind #-}


-- | Generates an HTML @label@ attribute with the given value.
label :: Builder -> Attribute
label :: Builder -> Attribute
label = Builder -> Builder -> Attribute
TextAttribute Builder
" label=\""
{-# INLINE label #-}


-- | Generates an HTML @lang@ attribute with the given value.
lang :: Builder -> Attribute
lang :: Builder -> Attribute
lang = Builder -> Builder -> Attribute
TextAttribute Builder
" lang=\""
{-# INLINE lang #-}


-- | Generates an HTML @list@ attribute with the given value.
list :: Builder -> Attribute
list :: Builder -> Attribute
list = Builder -> Builder -> Attribute
TextAttribute Builder
" list=\""
{-# INLINE list #-}


-- | Generates an HTML @loading@ attribute with the given value.
loading :: Builder -> Attribute
loading :: Builder -> Attribute
loading = Builder -> Builder -> Attribute
TextAttribute Builder
" loading=\""
{-# INLINE loading #-}


-- | Generates an HTML @loop@ attribute with the given value.
loop :: Bool -> Attribute
loop :: Bool -> Attribute
loop = Builder -> Bool -> Attribute
BoolAttribute Builder
" loop"
{-# INLINE loop #-}


-- | Generates an HTML @low@ attribute with the given value.
low :: Builder -> Attribute
low :: Builder -> Attribute
low = Builder -> Builder -> Attribute
TextAttribute Builder
" low=\""
{-# INLINE low #-}


-- | Generates an HTML @max@ attribute with the given value.
max :: Builder -> Attribute
max :: Builder -> Attribute
max = Builder -> Builder -> Attribute
TextAttribute Builder
" max=\""
{-# INLINE max #-}


-- | Generates an HTML @maxlength@ attribute with the given value.
maxlength :: Builder -> Attribute
maxlength :: Builder -> Attribute
maxlength = Builder -> Builder -> Attribute
TextAttribute Builder
" maxlength=\""
{-# INLINE maxlength #-}


-- | Generates an HTML @media@ attribute with the given value.
media :: Builder -> Attribute
media :: Builder -> Attribute
media = Builder -> Builder -> Attribute
TextAttribute Builder
" media=\""
{-# INLINE media #-}


-- | Generates an HTML @method@ attribute with the given value.
method :: Builder -> Attribute
method :: Builder -> Attribute
method = Builder -> Builder -> Attribute
TextAttribute Builder
" method=\""
{-# INLINE method #-}


-- | Generates an HTML @min@ attribute with the given value.
min :: Builder -> Attribute
min :: Builder -> Attribute
min = Builder -> Builder -> Attribute
TextAttribute Builder
" min=\""
{-# INLINE min #-}


-- | Generates an HTML @minlength@ attribute with the given value.
minlength :: Builder -> Attribute
minlength :: Builder -> Attribute
minlength = Builder -> Builder -> Attribute
TextAttribute Builder
" minlength=\""
{-# INLINE minlength #-}


-- | Generates an HTML @multiple@ attribute with the given value.
multiple :: Bool -> Attribute
multiple :: Bool -> Attribute
multiple = Builder -> Bool -> Attribute
BoolAttribute Builder
" multiple"
{-# INLINE multiple #-}


-- | Generates an HTML @muted@ attribute with the given value.
muted :: Bool -> Attribute
muted :: Bool -> Attribute
muted = Builder -> Bool -> Attribute
BoolAttribute Builder
" muted"
{-# INLINE muted #-}


-- | Generates an HTML @name@ attribute with the given value.
name :: Builder -> Attribute
name :: Builder -> Attribute
name = Builder -> Builder -> Attribute
TextAttribute Builder
" name=\""
{-# INLINE name #-}


-- | Generates an HTML @nomodule@ attribute with the given value.
nomodule :: Bool -> Attribute
nomodule :: Bool -> Attribute
nomodule = Builder -> Bool -> Attribute
BoolAttribute Builder
" nomodule"
{-# INLINE nomodule #-}


-- | Generates an HTML @nonce@ attribute with the given value.
nonce :: Builder -> Attribute
nonce :: Builder -> Attribute
nonce = Builder -> Builder -> Attribute
TextAttribute Builder
" nonce=\""
{-# INLINE nonce #-}


-- | Generates an HTML @novalidate@ attribute with the given value.
novalidate :: Bool -> Attribute
novalidate :: Bool -> Attribute
novalidate = Builder -> Bool -> Attribute
BoolAttribute Builder
" novalidate"
{-# INLINE novalidate #-}


-- | Generates an HTML @open@ attribute with the given value.
open :: Bool -> Attribute
open :: Bool -> Attribute
open = Builder -> Bool -> Attribute
BoolAttribute Builder
" open"
{-# INLINE open #-}


-- | Generates an HTML @optimum@ attribute with the given value.
optimum :: Builder -> Attribute
optimum :: Builder -> Attribute
optimum = Builder -> Builder -> Attribute
TextAttribute Builder
" optimum=\""
{-# INLINE optimum #-}


-- | Generates an HTML @pattern@ attribute with the given value.
pattern :: Builder -> Attribute
pattern :: Builder -> Attribute
pattern = Builder -> Builder -> Attribute
TextAttribute Builder
" pattern=\""
{-# INLINE pattern #-}


-- | Generates an HTML @ping@ attribute with the given value.
ping :: Builder -> Attribute
ping :: Builder -> Attribute
ping = Builder -> Builder -> Attribute
TextAttribute Builder
" ping=\""
{-# INLINE ping #-}


-- | Generates an HTML @placeholder@ attribute with the given value.
placeholder :: Builder -> Attribute
placeholder :: Builder -> Attribute
placeholder = Builder -> Builder -> Attribute
TextAttribute Builder
" placeholder=\""
{-# INLINE placeholder #-}


-- | Generates an HTML @playsinline@ attribute with the given value.
playsinline :: Bool -> Attribute
playsinline :: Bool -> Attribute
playsinline = Builder -> Bool -> Attribute
BoolAttribute Builder
" playsinline"
{-# INLINE playsinline #-}


-- | Generates an HTML @poster@ attribute with the given value.
poster :: Builder -> Attribute
poster :: Builder -> Attribute
poster = Builder -> Builder -> Attribute
TextAttribute Builder
" poster=\""
{-# INLINE poster #-}


-- | Generates an HTML @preload@ attribute with the given value.
preload :: Builder -> Attribute
preload :: Builder -> Attribute
preload = Builder -> Builder -> Attribute
TextAttribute Builder
" preload=\""
{-# INLINE preload #-}


-- | Generates an HTML @readonly@ attribute with the given value.
readonly :: Bool -> Attribute
readonly :: Bool -> Attribute
readonly = Builder -> Bool -> Attribute
BoolAttribute Builder
" readonly"
{-# INLINE readonly #-}


-- | Generates an HTML @referrerpolicy@ attribute with the given value.
referrerpolicy :: Builder -> Attribute
referrerpolicy :: Builder -> Attribute
referrerpolicy = Builder -> Builder -> Attribute
TextAttribute Builder
" referrerpolicy=\""
{-# INLINE referrerpolicy #-}


-- | Generates an HTML @rel@ attribute with the given value.
rel :: Builder -> Attribute
rel :: Builder -> Attribute
rel = Builder -> Builder -> Attribute
TextAttribute Builder
" rel=\""
{-# INLINE rel #-}


-- | Generates an HTML @required@ attribute with the given value.
required :: Bool -> Attribute
required :: Bool -> Attribute
required = Builder -> Bool -> Attribute
BoolAttribute Builder
" required"
{-# INLINE required #-}


-- | Generates an HTML @reversed@ attribute with the given value.
reversed :: Bool -> Attribute
reversed :: Bool -> Attribute
reversed = Builder -> Bool -> Attribute
BoolAttribute Builder
" reversed"
{-# INLINE reversed #-}


-- | Generates an HTML @rows@ attribute with the given value.
rows :: Builder -> Attribute
rows :: Builder -> Attribute
rows = Builder -> Builder -> Attribute
TextAttribute Builder
" rows=\""
{-# INLINE rows #-}


-- | Generates an HTML @rowspan@ attribute with the given value.
rowspan :: Builder -> Attribute
rowspan :: Builder -> Attribute
rowspan = Builder -> Builder -> Attribute
TextAttribute Builder
" rowspan=\""
{-# INLINE rowspan #-}


-- | Generates an HTML @sandbox@ attribute with the given value.
sandbox :: Builder -> Attribute
sandbox :: Builder -> Attribute
sandbox = Builder -> Builder -> Attribute
TextAttribute Builder
" sandbox=\""
{-# INLINE sandbox #-}


-- | Generates an HTML @scope@ attribute with the given value.
scope :: Builder -> Attribute
scope :: Builder -> Attribute
scope = Builder -> Builder -> Attribute
TextAttribute Builder
" scope=\""
{-# INLINE scope #-}


-- | Generates an HTML @selected@ attribute with the given value.
selected :: Bool -> Attribute
selected :: Bool -> Attribute
selected = Builder -> Bool -> Attribute
BoolAttribute Builder
" selected"
{-# INLINE selected #-}


-- | Generates an HTML @shape@ attribute with the given value.
shape :: Builder -> Attribute
shape :: Builder -> Attribute
shape = Builder -> Builder -> Attribute
TextAttribute Builder
" shape=\""
{-# INLINE shape #-}


-- | Generates an HTML @size@ attribute with the given value.
size :: Builder -> Attribute
size :: Builder -> Attribute
size = Builder -> Builder -> Attribute
TextAttribute Builder
" size=\""
{-# INLINE size #-}


-- | Generates an HTML @sizes@ attribute with the given value.
sizes :: Builder -> Attribute
sizes :: Builder -> Attribute
sizes = Builder -> Builder -> Attribute
TextAttribute Builder
" sizes=\""
{-# INLINE sizes #-}


-- | Generates an HTML @slot@ attribute with the given value.
slot :: Builder -> Attribute
slot :: Builder -> Attribute
slot = Builder -> Builder -> Attribute
TextAttribute Builder
" slot=\""
{-# INLINE slot #-}


-- | Generates an HTML @span@ attribute with the given value.
span :: Builder -> Attribute
span :: Builder -> Attribute
span = Builder -> Builder -> Attribute
TextAttribute Builder
" span=\""
{-# INLINE span #-}


-- | Generates an HTML @spellcheck@ attribute with the given value.
spellcheck :: Builder -> Attribute
spellcheck :: Builder -> Attribute
spellcheck = Builder -> Builder -> Attribute
TextAttribute Builder
" spellcheck=\""
{-# INLINE spellcheck #-}


-- | Generates an HTML @src@ attribute with the given value.
src :: Builder -> Attribute
src :: Builder -> Attribute
src = Builder -> Builder -> Attribute
TextAttribute Builder
" src=\""
{-# INLINE src #-}


-- | Generates an HTML @srcdoc@ attribute with the given value.
srcdoc :: Builder -> Attribute
srcdoc :: Builder -> Attribute
srcdoc = Builder -> Builder -> Attribute
TextAttribute Builder
" srcdoc=\""
{-# INLINE srcdoc #-}


-- | Generates an HTML @srclang@ attribute with the given value.
srclang :: Builder -> Attribute
srclang :: Builder -> Attribute
srclang = Builder -> Builder -> Attribute
TextAttribute Builder
" srclang=\""
{-# INLINE srclang #-}


-- | Generates an HTML @srcset@ attribute with the given value.
srcset :: Builder -> Attribute
srcset :: Builder -> Attribute
srcset = Builder -> Builder -> Attribute
TextAttribute Builder
" srcset=\""
{-# INLINE srcset #-}


-- | Generates an HTML @start@ attribute with the given value.
start :: Builder -> Attribute
start :: Builder -> Attribute
start = Builder -> Builder -> Attribute
TextAttribute Builder
" start=\""
{-# INLINE start #-}


-- | Generates an HTML @step@ attribute with the given value.
step :: Builder -> Attribute
step :: Builder -> Attribute
step = Builder -> Builder -> Attribute
TextAttribute Builder
" step=\""
{-# INLINE step #-}


-- | Generates an HTML @style@ attribute with the given value.
style :: Builder -> Attribute
style :: Builder -> Attribute
style = Builder -> Builder -> Attribute
TextAttribute Builder
" style=\""
{-# INLINE style #-}


-- | Generates an HTML @tabindex@ attribute with the given value.
tabindex :: Builder -> Attribute
tabindex :: Builder -> Attribute
tabindex = Builder -> Builder -> Attribute
TextAttribute Builder
" tabindex=\""
{-# INLINE tabindex #-}


-- | Generates an HTML @target@ attribute with the given value.
target :: Builder -> Attribute
target :: Builder -> Attribute
target = Builder -> Builder -> Attribute
TextAttribute Builder
" target=\""
{-# INLINE target #-}


-- | Generates an HTML @title@ attribute with the given value.
title :: Builder -> Attribute
title :: Builder -> Attribute
title = Builder -> Builder -> Attribute
TextAttribute Builder
" title=\""
{-# INLINE title #-}


-- | Generates an HTML @translate@ attribute with the given value.
translate :: Builder -> Attribute
translate :: Builder -> Attribute
translate = Builder -> Builder -> Attribute
TextAttribute Builder
" translate=\""
{-# INLINE translate #-}


-- | Generates an HTML @type@ attribute with the given value.
type_ :: Builder -> Attribute
type_ :: Builder -> Attribute
type_ = Builder -> Builder -> Attribute
TextAttribute Builder
" type=\""
{-# INLINE type_ #-}


-- | Generates an HTML @usemap@ attribute with the given value.
usemap :: Builder -> Attribute
usemap :: Builder -> Attribute
usemap = Builder -> Builder -> Attribute
TextAttribute Builder
" usemap=\""
{-# INLINE usemap #-}


-- | Generates an HTML @value@ attribute with the given value.
value :: Builder -> Attribute
value :: Builder -> Attribute
value = Builder -> Builder -> Attribute
TextAttribute Builder
" value=\""
{-# INLINE value #-}


-- | Generates an HTML @width@ attribute with the given value.
width :: Builder -> Attribute
width :: Builder -> Attribute
width = Builder -> Builder -> Attribute
TextAttribute Builder
" width=\""
{-# INLINE width #-}


-- | Generates an HTML @wrap@ attribute with the given value.
wrap :: Builder -> Attribute
wrap :: Builder -> Attribute
wrap = Builder -> Builder -> Attribute
TextAttribute Builder
" wrap=\""
{-# INLINE wrap #-}