-module(ag_html). -compile(no_auto_import). -export([render/1, render_document/1, text/1, open_node/2, node/3, html/2, base/2, head/2, style/2, title/2, address/2, article/2, footer/2, header/2, h1/2, h2/2, h3/2, h4/2, h5/2, h6/2, hgroup/2, nav/2, section/2, dd/2, 'div'/2, dl/2, dt/2, figcaption/2, figure/2, hr/1, li/2, main/2, ol/2, p/2, pre/2, ul/2, abbr/2, b/2, bdi/2, bdo/2, br/1, cite/2, code/2, data/2, dfn/2, em/2, i/2, kbd/2, mark/2, q/2, rp/2, rt/2, rtc/2, ruby/2, s/2, samp/2, small/2, span/2, strong/2, sub/2, sup/2, time/2, u/2, var/2, wbr/1, area/2, audio/2, map/2, track/2, video/2, embed/2, object/2, param/2, source/2, canvas/2, noscript/2, script/2, del/2, ins/2, caption/2, col/2, colgroup/2, table/2, tbody/2, td/2, tfoot/2, th/2, thead/2, tr/2, button/2, datalist/2, fieldset/2, form/2, input/1, keygen/2, label/2, legend/2, meter/2, optgroup/2, option/2, output/2, progress/2, select/2, details/2, dialog/2, menu/2, menuitem/2, summary/2, content/2, element/2, shadow/2, template/2, acronym/2, applet/2, basefont/2, big/2, blink/2, center/2, dir/2, frame/2, frameset/2, isindex/2, listing/2, noembed/2, plaintext/2, spacer/2, strike/2, tt/2, xmp/2, a/2, textarea/2, svg/2, path/2, polygon/2, img/2, link/1, meta/1]). -export_type([html/0]). -opaque html() :: {content_node, binary(), list(html()), list(ag_html@attributes:attribute())} | {open_node, binary(), list(ag_html@attributes:attribute())} | {text_node, binary()}. -spec render_open(binary(), list(ag_html@attributes:attribute())) -> gleam@string_builder:string_builder(). render_open(Tag, Attributes) -> _pipe = [<<"<"/utf8>>, Tag], _pipe@1 = gleam@string_builder:from_strings(_pipe), _pipe@2 = gleam@string_builder:append_builder( _pipe@1, ag_html@attributes:render_list(Attributes) ), gleam@string_builder:append(_pipe@2, <<">"/utf8>>). -spec render_content( binary(), list(html()), list(ag_html@attributes:attribute()) ) -> gleam@string_builder:string_builder(). render_content(Tag, Children, Attributes) -> _pipe = [<<"<"/utf8>>, Tag], _pipe@1 = gleam@string_builder:from_strings(_pipe), _pipe@2 = gleam@string_builder:append_builder( _pipe@1, ag_html@attributes:render_list(Attributes) ), _pipe@3 = gleam@string_builder:append(_pipe@2, <<">"/utf8>>), _pipe@4 = gleam@string_builder:append_builder( _pipe@3, render_list(Children) ), _pipe@5 = gleam@string_builder:append(_pipe@4, <<">), _pipe@6 = gleam@string_builder:append(_pipe@5, Tag), gleam@string_builder:append(_pipe@6, <<">"/utf8>>). -spec render_list(list(html())) -> gleam@string_builder:string_builder(). render_list(Content) -> _pipe = Content, _pipe@1 = gleam@list:map(_pipe, fun do_render/1), gleam@string_builder:concat(_pipe@1). -spec render(html()) -> binary(). render(Content) -> _pipe = Content, _pipe@1 = do_render(_pipe), gleam@string_builder:to_string(_pipe@1). -spec render_document(html()) -> binary(). render_document(Content) -> _pipe = Content, _pipe@1 = do_render(_pipe), _pipe@2 = gleam@string_builder:prepend(_pipe@1, <<""/utf8>>), gleam@string_builder:to_string(_pipe@2). -spec do_render(html()) -> gleam@string_builder:string_builder(). do_render(Content) -> case Content of {text_node, Text} -> escape(Text); {open_node, Tag, Attributes} -> render_open(Tag, Attributes); {content_node, Tag@1, Children, Attributes@1} -> render_content(Tag@1, Children, Attributes@1) end. -spec escape(binary()) -> gleam@string_builder:string_builder(). escape(Text) -> ag_html@string_utils:map(Text, fun(G) -> case G of <<"<"/utf8>> -> <<"<"/utf8>>; <<">"/utf8>> -> <<">"/utf8>>; <<"&"/utf8>> -> <<"&"/utf8>>; _@1 -> G end end). -spec text(binary()) -> html(). text(Text) -> {text_node, Text}. -spec open_node(binary(), list(ag_html@attributes:attribute())) -> html(). open_node(Name, Attributes) -> {open_node, Name, Attributes}. -spec node(binary(), list(html()), list(ag_html@attributes:attribute())) -> html(). node(Name, Children, Attributes) -> {content_node, Name, Children, Attributes}. -spec html(list(html()), list(ag_html@attributes:attribute())) -> html(). html(Children, Attributes) -> node(<<"html"/utf8>>, Children, Attributes). -spec base(list(html()), list(ag_html@attributes:attribute())) -> html(). base(Children, Attributes) -> node(<<"base"/utf8>>, Children, Attributes). -spec head(list(html()), list(ag_html@attributes:attribute())) -> html(). head(Children, Attributes) -> node(<<"head"/utf8>>, Children, Attributes). -spec style(list(html()), list(ag_html@attributes:attribute())) -> html(). style(Children, Attributes) -> node(<<"style"/utf8>>, Children, Attributes). -spec title(list(html()), list(ag_html@attributes:attribute())) -> html(). title(Children, Attributes) -> node(<<"title"/utf8>>, Children, Attributes). -spec address(list(html()), list(ag_html@attributes:attribute())) -> html(). address(Children, Attributes) -> node(<<"address"/utf8>>, Children, Attributes). -spec article(list(html()), list(ag_html@attributes:attribute())) -> html(). article(Children, Attributes) -> node(<<"article"/utf8>>, Children, Attributes). -spec footer(list(html()), list(ag_html@attributes:attribute())) -> html(). footer(Children, Attributes) -> node(<<"footer"/utf8>>, Children, Attributes). -spec header(list(html()), list(ag_html@attributes:attribute())) -> html(). header(Children, Attributes) -> node(<<"header"/utf8>>, Children, Attributes). -spec h1(list(html()), list(ag_html@attributes:attribute())) -> html(). h1(Children, Attributes) -> node(<<"h1"/utf8>>, Children, Attributes). -spec h2(list(html()), list(ag_html@attributes:attribute())) -> html(). h2(Children, Attributes) -> node(<<"h2"/utf8>>, Children, Attributes). -spec h3(list(html()), list(ag_html@attributes:attribute())) -> html(). h3(Children, Attributes) -> node(<<"h3"/utf8>>, Children, Attributes). -spec h4(list(html()), list(ag_html@attributes:attribute())) -> html(). h4(Children, Attributes) -> node(<<"h4"/utf8>>, Children, Attributes). -spec h5(list(html()), list(ag_html@attributes:attribute())) -> html(). h5(Children, Attributes) -> node(<<"h5"/utf8>>, Children, Attributes). -spec h6(list(html()), list(ag_html@attributes:attribute())) -> html(). h6(Children, Attributes) -> node(<<"h6"/utf8>>, Children, Attributes). -spec hgroup(list(html()), list(ag_html@attributes:attribute())) -> html(). hgroup(Children, Attributes) -> node(<<"hgroup"/utf8>>, Children, Attributes). -spec nav(list(html()), list(ag_html@attributes:attribute())) -> html(). nav(Children, Attributes) -> node(<<"nav"/utf8>>, Children, Attributes). -spec section(list(html()), list(ag_html@attributes:attribute())) -> html(). section(Children, Attributes) -> node(<<"section"/utf8>>, Children, Attributes). -spec dd(list(html()), list(ag_html@attributes:attribute())) -> html(). dd(Children, Attributes) -> node(<<"dd"/utf8>>, Children, Attributes). -spec 'div'(list(html()), list(ag_html@attributes:attribute())) -> html(). 'div'(Children, Attributes) -> node(<<"div"/utf8>>, Children, Attributes). -spec dl(list(html()), list(ag_html@attributes:attribute())) -> html(). dl(Children, Attributes) -> node(<<"dl"/utf8>>, Children, Attributes). -spec dt(list(html()), list(ag_html@attributes:attribute())) -> html(). dt(Children, Attributes) -> node(<<"dt"/utf8>>, Children, Attributes). -spec figcaption(list(html()), list(ag_html@attributes:attribute())) -> html(). figcaption(Children, Attributes) -> node(<<"figcaption"/utf8>>, Children, Attributes). -spec figure(list(html()), list(ag_html@attributes:attribute())) -> html(). figure(Children, Attributes) -> node(<<"figure"/utf8>>, Children, Attributes). -spec hr(list(ag_html@attributes:attribute())) -> html(). hr(Attributes) -> open_node(<<"hr"/utf8>>, Attributes). -spec li(list(html()), list(ag_html@attributes:attribute())) -> html(). li(Children, Attributes) -> node(<<"li"/utf8>>, Children, Attributes). -spec main(list(html()), list(ag_html@attributes:attribute())) -> html(). main(Children, Attributes) -> node(<<"main"/utf8>>, Children, Attributes). -spec ol(list(html()), list(ag_html@attributes:attribute())) -> html(). ol(Children, Attributes) -> node(<<"ol"/utf8>>, Children, Attributes). -spec p(list(html()), list(ag_html@attributes:attribute())) -> html(). p(Children, Attributes) -> node(<<"p"/utf8>>, Children, Attributes). -spec pre(list(html()), list(ag_html@attributes:attribute())) -> html(). pre(Children, Attributes) -> node(<<"pre"/utf8>>, Children, Attributes). -spec ul(list(html()), list(ag_html@attributes:attribute())) -> html(). ul(Children, Attributes) -> node(<<"ul"/utf8>>, Children, Attributes). -spec abbr(list(html()), list(ag_html@attributes:attribute())) -> html(). abbr(Children, Attributes) -> node(<<"abbr"/utf8>>, Children, Attributes). -spec b(list(html()), list(ag_html@attributes:attribute())) -> html(). b(Children, Attributes) -> node(<<"b"/utf8>>, Children, Attributes). -spec bdi(list(html()), list(ag_html@attributes:attribute())) -> html(). bdi(Children, Attributes) -> node(<<"bdi"/utf8>>, Children, Attributes). -spec bdo(list(html()), list(ag_html@attributes:attribute())) -> html(). bdo(Children, Attributes) -> node(<<"bdo"/utf8>>, Children, Attributes). -spec br(list(ag_html@attributes:attribute())) -> html(). br(Attributes) -> open_node(<<"br"/utf8>>, Attributes). -spec cite(list(html()), list(ag_html@attributes:attribute())) -> html(). cite(Children, Attributes) -> node(<<"cite"/utf8>>, Children, Attributes). -spec code(list(html()), list(ag_html@attributes:attribute())) -> html(). code(Children, Attributes) -> node(<<"code"/utf8>>, Children, Attributes). -spec data(list(html()), list(ag_html@attributes:attribute())) -> html(). data(Children, Attributes) -> node(<<"data"/utf8>>, Children, Attributes). -spec dfn(list(html()), list(ag_html@attributes:attribute())) -> html(). dfn(Children, Attributes) -> node(<<"dfn"/utf8>>, Children, Attributes). -spec em(list(html()), list(ag_html@attributes:attribute())) -> html(). em(Children, Attributes) -> node(<<"em"/utf8>>, Children, Attributes). -spec i(list(html()), list(ag_html@attributes:attribute())) -> html(). i(Children, Attributes) -> node(<<"i"/utf8>>, Children, Attributes). -spec kbd(list(html()), list(ag_html@attributes:attribute())) -> html(). kbd(Children, Attributes) -> node(<<"kbd"/utf8>>, Children, Attributes). -spec mark(list(html()), list(ag_html@attributes:attribute())) -> html(). mark(Children, Attributes) -> node(<<"mark"/utf8>>, Children, Attributes). -spec q(list(html()), list(ag_html@attributes:attribute())) -> html(). q(Children, Attributes) -> node(<<"q"/utf8>>, Children, Attributes). -spec rp(list(html()), list(ag_html@attributes:attribute())) -> html(). rp(Children, Attributes) -> node(<<"rp"/utf8>>, Children, Attributes). -spec rt(list(html()), list(ag_html@attributes:attribute())) -> html(). rt(Children, Attributes) -> node(<<"rt"/utf8>>, Children, Attributes). -spec rtc(list(html()), list(ag_html@attributes:attribute())) -> html(). rtc(Children, Attributes) -> node(<<"rtc"/utf8>>, Children, Attributes). -spec ruby(list(html()), list(ag_html@attributes:attribute())) -> html(). ruby(Children, Attributes) -> node(<<"ruby"/utf8>>, Children, Attributes). -spec s(list(html()), list(ag_html@attributes:attribute())) -> html(). s(Children, Attributes) -> node(<<"s"/utf8>>, Children, Attributes). -spec samp(list(html()), list(ag_html@attributes:attribute())) -> html(). samp(Children, Attributes) -> node(<<"samp"/utf8>>, Children, Attributes). -spec small(list(html()), list(ag_html@attributes:attribute())) -> html(). small(Children, Attributes) -> node(<<"small"/utf8>>, Children, Attributes). -spec span(list(html()), list(ag_html@attributes:attribute())) -> html(). span(Children, Attributes) -> node(<<"span"/utf8>>, Children, Attributes). -spec strong(list(html()), list(ag_html@attributes:attribute())) -> html(). strong(Children, Attributes) -> node(<<"strong"/utf8>>, Children, Attributes). -spec sub(list(html()), list(ag_html@attributes:attribute())) -> html(). sub(Children, Attributes) -> node(<<"sub"/utf8>>, Children, Attributes). -spec sup(list(html()), list(ag_html@attributes:attribute())) -> html(). sup(Children, Attributes) -> node(<<"sup"/utf8>>, Children, Attributes). -spec time(list(html()), list(ag_html@attributes:attribute())) -> html(). time(Children, Attributes) -> node(<<"time"/utf8>>, Children, Attributes). -spec u(list(html()), list(ag_html@attributes:attribute())) -> html(). u(Children, Attributes) -> node(<<"u"/utf8>>, Children, Attributes). -spec var(list(html()), list(ag_html@attributes:attribute())) -> html(). var(Children, Attributes) -> node(<<"var"/utf8>>, Children, Attributes). -spec wbr(list(ag_html@attributes:attribute())) -> html(). wbr(Attributes) -> open_node(<<"wbr"/utf8>>, Attributes). -spec area(list(html()), list(ag_html@attributes:attribute())) -> html(). area(Children, Attributes) -> node(<<"area"/utf8>>, Children, Attributes). -spec audio(list(html()), list(ag_html@attributes:attribute())) -> html(). audio(Children, Attributes) -> node(<<"audio"/utf8>>, Children, Attributes). -spec map(list(html()), list(ag_html@attributes:attribute())) -> html(). map(Children, Attributes) -> node(<<"map"/utf8>>, Children, Attributes). -spec track(list(html()), list(ag_html@attributes:attribute())) -> html(). track(Children, Attributes) -> node(<<"track"/utf8>>, Children, Attributes). -spec video(list(html()), list(ag_html@attributes:attribute())) -> html(). video(Children, Attributes) -> node(<<"video"/utf8>>, Children, Attributes). -spec embed(list(html()), list(ag_html@attributes:attribute())) -> html(). embed(Children, Attributes) -> node(<<"embed"/utf8>>, Children, Attributes). -spec object(list(html()), list(ag_html@attributes:attribute())) -> html(). object(Children, Attributes) -> node(<<"object"/utf8>>, Children, Attributes). -spec param(list(html()), list(ag_html@attributes:attribute())) -> html(). param(Children, Attributes) -> node(<<"param"/utf8>>, Children, Attributes). -spec source(list(html()), list(ag_html@attributes:attribute())) -> html(). source(Children, Attributes) -> node(<<"source"/utf8>>, Children, Attributes). -spec canvas(list(html()), list(ag_html@attributes:attribute())) -> html(). canvas(Children, Attributes) -> node(<<"canvas"/utf8>>, Children, Attributes). -spec noscript(list(html()), list(ag_html@attributes:attribute())) -> html(). noscript(Children, Attributes) -> node(<<"noscript"/utf8>>, Children, Attributes). -spec script(list(html()), list(ag_html@attributes:attribute())) -> html(). script(Children, Attributes) -> node(<<"script"/utf8>>, Children, Attributes). -spec del(list(html()), list(ag_html@attributes:attribute())) -> html(). del(Children, Attributes) -> node(<<"del"/utf8>>, Children, Attributes). -spec ins(list(html()), list(ag_html@attributes:attribute())) -> html(). ins(Children, Attributes) -> node(<<"ins"/utf8>>, Children, Attributes). -spec caption(list(html()), list(ag_html@attributes:attribute())) -> html(). caption(Children, Attributes) -> node(<<"caption"/utf8>>, Children, Attributes). -spec col(list(html()), list(ag_html@attributes:attribute())) -> html(). col(Children, Attributes) -> node(<<"col"/utf8>>, Children, Attributes). -spec colgroup(list(html()), list(ag_html@attributes:attribute())) -> html(). colgroup(Children, Attributes) -> node(<<"colgroup"/utf8>>, Children, Attributes). -spec table(list(html()), list(ag_html@attributes:attribute())) -> html(). table(Children, Attributes) -> node(<<"table"/utf8>>, Children, Attributes). -spec tbody(list(html()), list(ag_html@attributes:attribute())) -> html(). tbody(Children, Attributes) -> node(<<"tbody"/utf8>>, Children, Attributes). -spec td(list(html()), list(ag_html@attributes:attribute())) -> html(). td(Children, Attributes) -> node(<<"td"/utf8>>, Children, Attributes). -spec tfoot(list(html()), list(ag_html@attributes:attribute())) -> html(). tfoot(Children, Attributes) -> node(<<"tfoot"/utf8>>, Children, Attributes). -spec th(list(html()), list(ag_html@attributes:attribute())) -> html(). th(Children, Attributes) -> node(<<"th"/utf8>>, Children, Attributes). -spec thead(list(html()), list(ag_html@attributes:attribute())) -> html(). thead(Children, Attributes) -> node(<<"thead"/utf8>>, Children, Attributes). -spec tr(list(html()), list(ag_html@attributes:attribute())) -> html(). tr(Children, Attributes) -> node(<<"tr"/utf8>>, Children, Attributes). -spec button(list(html()), list(ag_html@attributes:attribute())) -> html(). button(Children, Attributes) -> node(<<"button"/utf8>>, Children, Attributes). -spec datalist(list(html()), list(ag_html@attributes:attribute())) -> html(). datalist(Children, Attributes) -> node(<<"datalist"/utf8>>, Children, Attributes). -spec fieldset(list(html()), list(ag_html@attributes:attribute())) -> html(). fieldset(Children, Attributes) -> node(<<"fieldset"/utf8>>, Children, Attributes). -spec form(list(html()), list(ag_html@attributes:attribute())) -> html(). form(Children, Attributes) -> node(<<"form"/utf8>>, Children, Attributes). -spec input(list(ag_html@attributes:attribute())) -> html(). input(Attributes) -> open_node(<<"input"/utf8>>, Attributes). -spec keygen(list(html()), list(ag_html@attributes:attribute())) -> html(). keygen(Children, Attributes) -> node(<<"keygen"/utf8>>, Children, Attributes). -spec label(list(html()), list(ag_html@attributes:attribute())) -> html(). label(Children, Attributes) -> node(<<"label"/utf8>>, Children, Attributes). -spec legend(list(html()), list(ag_html@attributes:attribute())) -> html(). legend(Children, Attributes) -> node(<<"legend"/utf8>>, Children, Attributes). -spec meter(list(html()), list(ag_html@attributes:attribute())) -> html(). meter(Children, Attributes) -> node(<<"meter"/utf8>>, Children, Attributes). -spec optgroup(list(html()), list(ag_html@attributes:attribute())) -> html(). optgroup(Children, Attributes) -> node(<<"optgroup"/utf8>>, Children, Attributes). -spec option(list(html()), list(ag_html@attributes:attribute())) -> html(). option(Children, Attributes) -> node(<<"option"/utf8>>, Children, Attributes). -spec output(list(html()), list(ag_html@attributes:attribute())) -> html(). output(Children, Attributes) -> node(<<"output"/utf8>>, Children, Attributes). -spec progress(list(html()), list(ag_html@attributes:attribute())) -> html(). progress(Children, Attributes) -> node(<<"progress"/utf8>>, Children, Attributes). -spec select(list(html()), list(ag_html@attributes:attribute())) -> html(). select(Children, Attributes) -> node(<<"select"/utf8>>, Children, Attributes). -spec details(list(html()), list(ag_html@attributes:attribute())) -> html(). details(Children, Attributes) -> node(<<"details"/utf8>>, Children, Attributes). -spec dialog(list(html()), list(ag_html@attributes:attribute())) -> html(). dialog(Children, Attributes) -> node(<<"dialog"/utf8>>, Children, Attributes). -spec menu(list(html()), list(ag_html@attributes:attribute())) -> html(). menu(Children, Attributes) -> node(<<"menu"/utf8>>, Children, Attributes). -spec menuitem(list(html()), list(ag_html@attributes:attribute())) -> html(). menuitem(Children, Attributes) -> node(<<"menuitem"/utf8>>, Children, Attributes). -spec summary(list(html()), list(ag_html@attributes:attribute())) -> html(). summary(Children, Attributes) -> node(<<"summary"/utf8>>, Children, Attributes). -spec content(list(html()), list(ag_html@attributes:attribute())) -> html(). content(Children, Attributes) -> node(<<"content"/utf8>>, Children, Attributes). -spec element(list(html()), list(ag_html@attributes:attribute())) -> html(). element(Children, Attributes) -> node(<<"element"/utf8>>, Children, Attributes). -spec shadow(list(html()), list(ag_html@attributes:attribute())) -> html(). shadow(Children, Attributes) -> node(<<"shadow"/utf8>>, Children, Attributes). -spec template(list(html()), list(ag_html@attributes:attribute())) -> html(). template(Children, Attributes) -> node(<<"template"/utf8>>, Children, Attributes). -spec acronym(list(html()), list(ag_html@attributes:attribute())) -> html(). acronym(Children, Attributes) -> node(<<"acronym"/utf8>>, Children, Attributes). -spec applet(list(html()), list(ag_html@attributes:attribute())) -> html(). applet(Children, Attributes) -> node(<<"applet"/utf8>>, Children, Attributes). -spec basefont(list(html()), list(ag_html@attributes:attribute())) -> html(). basefont(Children, Attributes) -> node(<<"basefont"/utf8>>, Children, Attributes). -spec big(list(html()), list(ag_html@attributes:attribute())) -> html(). big(Children, Attributes) -> node(<<"big"/utf8>>, Children, Attributes). -spec blink(list(html()), list(ag_html@attributes:attribute())) -> html(). blink(Children, Attributes) -> node(<<"blink"/utf8>>, Children, Attributes). -spec center(list(html()), list(ag_html@attributes:attribute())) -> html(). center(Children, Attributes) -> node(<<"center"/utf8>>, Children, Attributes). -spec dir(list(html()), list(ag_html@attributes:attribute())) -> html(). dir(Children, Attributes) -> node(<<"dir"/utf8>>, Children, Attributes). -spec frame(list(html()), list(ag_html@attributes:attribute())) -> html(). frame(Children, Attributes) -> node(<<"frame"/utf8>>, Children, Attributes). -spec frameset(list(html()), list(ag_html@attributes:attribute())) -> html(). frameset(Children, Attributes) -> node(<<"frameset"/utf8>>, Children, Attributes). -spec isindex(list(html()), list(ag_html@attributes:attribute())) -> html(). isindex(Children, Attributes) -> node(<<"isindex"/utf8>>, Children, Attributes). -spec listing(list(html()), list(ag_html@attributes:attribute())) -> html(). listing(Children, Attributes) -> node(<<"listing"/utf8>>, Children, Attributes). -spec noembed(list(html()), list(ag_html@attributes:attribute())) -> html(). noembed(Children, Attributes) -> node(<<"noembed"/utf8>>, Children, Attributes). -spec plaintext(list(html()), list(ag_html@attributes:attribute())) -> html(). plaintext(Children, Attributes) -> node(<<"plaintext"/utf8>>, Children, Attributes). -spec spacer(list(html()), list(ag_html@attributes:attribute())) -> html(). spacer(Children, Attributes) -> node(<<"spacer"/utf8>>, Children, Attributes). -spec strike(list(html()), list(ag_html@attributes:attribute())) -> html(). strike(Children, Attributes) -> node(<<"strike"/utf8>>, Children, Attributes). -spec tt(list(html()), list(ag_html@attributes:attribute())) -> html(). tt(Children, Attributes) -> node(<<"tt"/utf8>>, Children, Attributes). -spec xmp(list(html()), list(ag_html@attributes:attribute())) -> html(). xmp(Children, Attributes) -> node(<<"xmp"/utf8>>, Children, Attributes). -spec a(list(html()), list(ag_html@attributes:attribute())) -> html(). a(Children, Attributes) -> node(<<"a"/utf8>>, Children, Attributes). -spec textarea(list(html()), list(ag_html@attributes:attribute())) -> html(). textarea(Children, Attributes) -> node(<<"textarea"/utf8>>, Children, Attributes). -spec svg(list(html()), list(ag_html@attributes:attribute())) -> html(). svg(Children, Attributes) -> node(<<"svg"/utf8>>, Children, Attributes). -spec path(list(html()), list(ag_html@attributes:attribute())) -> html(). path(Children, Attributes) -> node(<<"path"/utf8>>, Children, Attributes). -spec polygon(list(html()), list(ag_html@attributes:attribute())) -> html(). polygon(Children, Attributes) -> node(<<"polygon"/utf8>>, Children, Attributes). -spec img(list(html()), list(ag_html@attributes:attribute())) -> html(). img(Children, Attributes) -> node(<<"img"/utf8>>, Children, Attributes). -spec link(list(ag_html@attributes:attribute())) -> html(). link(Attributes) -> open_node(<<"link"/utf8>>, Attributes). -spec meta(list(ag_html@attributes:attribute())) -> html(). meta(Attributes) -> open_node(<<"meta"/utf8>>, Attributes).