Packages

Generate HTML (or XML) from simple gleam functions

Current section

Files

Jump to
html_components src xml.erl
Raw

src/xml.erl

-module(xml).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([sitemap/1]).
-export_type([sitemap/0]).
-type sitemap() :: {sitemap_url, binary(), binary()}.
-spec sitemap(list(sitemap())) -> elements:element().
sitemap(Items) ->
elements:element(
<<"urlset"/utf8>>,
[elements:attr(
<<"xmlns"/utf8>>,
<<"http://www.sitemaps.org/schemas/sitemap/0.9"/utf8>>
)],
gleam@list:map(
Items,
fun(Item) ->
elements:element(
<<"url"/utf8>>,
[],
[elements:element(
<<"loc"/utf8>>,
[],
[elements:text(erlang:element(2, Item))]
),
elements:element(
<<"lastmod"/utf8>>,
[],
[elements:text(erlang:element(3, Item))]
)]
)
end
)
).