-module(webls@atom). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([to_string/1, plain_text/1, html/1, xhtml/1, link/1, with_link_rel/2, with_link_content_type/2, with_link_hreflang/2, with_link_title/2, with_link_length/2, category/1, with_category_scheme/2, with_category_label/2, person/1, with_person_email/2, with_person_uri/2, feed/3, entry/3, with_entry_id/2, with_entry_title/2, with_entry_updated/2, with_entry_authors/2, with_entry_content/2, with_entry_link/2, with_entry_summary/2, with_entry_categories/2, with_entry_contributors/2, with_entry_published/2, with_entry_rights/2, with_entry_source/2, with_feed_author/2, with_feed_authors/2, with_feed_link/2, with_feed_category/2, with_feed_categories/2, with_feed_contributor/2, with_feed_contributors/2, with_feed_generator/2, with_feed_icon/2, with_feed_logo/2, with_feed_rights/2, with_feed_subtitle/2, with_feed_entry/2, with_feed_entries/2]). -export_type([atom_feed/0, person/0, generator/0, link/0, category/0, atom_entry/0, text/0, source/0]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. -type atom_feed() :: {atom_feed, binary(), text(), birl:time(), list(person()), gleam@option:option(link()), list(category()), list(person()), gleam@option:option(generator()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(text()), gleam@option:option(binary()), list(atom_entry())}. -type person() :: {person, binary(), gleam@option:option(binary()), gleam@option:option(binary())}. -type generator() :: {generator, gleam@option:option(binary()), gleam@option:option(binary())}. -type link() :: {link, binary(), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(integer())}. -type category() :: {category, binary(), gleam@option:option(binary()), gleam@option:option(binary())}. -type atom_entry() :: {atom_entry, binary(), text(), birl:time(), list(person()), gleam@option:option(text()), gleam@option:option(link()), gleam@option:option(text()), list(category()), list(person()), gleam@option:option(birl:time()), gleam@option:option(text()), gleam@option:option(source())}. -type text() :: {plain_text, binary()} | {html, binary()} | {x_html, binary()}. -type source() :: {source, binary(), binary(), birl:time()}. -file("src/webls/atom.gleam", 112). -spec person_to_string(person()) -> binary(). person_to_string(Person) -> <<<<<<<<<<<<"\n"/utf8, ""/utf8>>/binary, (erlang:element(2, Person))/binary>>/binary, "\n"/utf8>>/binary, (case erlang:element(3, Person) of {some, Email} -> <<<<""/utf8, Email/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(4, Person) of {some, Uri} -> <<<<""/utf8, Uri/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, "\n"/utf8>>. -file("src/webls/atom.gleam", 128). -spec link_to_string(link()) -> binary(). link_to_string(Link) -> <<<<<<<<<<<<<<<<">/binary, "\""/utf8>>/binary, (case erlang:element(3, Link) of {some, Rel} -> <<<<" rel=\""/utf8, Rel/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(4, Link) of {some, Content_type} -> <<<<" type=\""/utf8, Content_type/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(5, Link) of {some, Hreflang} -> <<<<" hreflang=\""/utf8, Hreflang/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(6, Link) of {some, Title} -> <<<<" title=\""/utf8, Title/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(7, Link) of {some, Length} -> <<<<" length=\""/utf8, (gleam@int:to_string(Length))/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, "/>\n"/utf8>>. -file("src/webls/atom.gleam", 155). -spec category_to_string(category()) -> binary(). category_to_string(Category) -> <<<<<<<<<<">/binary, "\""/utf8>>/binary, (case erlang:element(3, Category) of {some, Scheme} -> <<<<" scheme=\""/utf8, Scheme/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(4, Category) of {some, Label} -> <<<<" label=\""/utf8, Label/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, "/>\n"/utf8>>. -file("src/webls/atom.gleam", 170). -spec generator_to_string(generator()) -> binary(). generator_to_string(Generator) -> <<<<<<" <<<<" uri=\""/utf8, Uri/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(3, Generator) of {some, Version} -> <<<<" version=\""/utf8, Version/binary>>/binary, "\""/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, ">webls\n"/utf8>>. -file("src/webls/atom.gleam", 183). -spec source_to_string(source()) -> binary(). source_to_string(Source) -> <<<<<<<<<<<<<<<<<<<<"\n"/utf8, ""/utf8>>/binary, (erlang:element(2, Source))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (erlang:element(3, Source))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (birl:to_iso8601(erlang:element(4, Source)))/binary>>/binary, "\n"/utf8>>/binary, "\n"/utf8>>. -file("src/webls/atom.gleam", 197). -spec text_to_string(text()) -> binary(). text_to_string(Text) -> case Text of {plain_text, Value} -> Value; {html, Value@1} -> <<<<""/utf8, Value@1/binary>>/binary, ""/utf8>>; {x_html, Value@2} -> <<<<""/utf8, Value@2/binary>>/binary, ""/utf8>> end. -file("src/webls/atom.gleam", 64). -spec atom_entry_to_string(atom_entry()) -> binary(). atom_entry_to_string(Entry) -> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"\n"/utf8, ""/utf8>>/binary, (erlang:element( 2, Entry ))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (text_to_string( erlang:element( 3, Entry ) ))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (birl:to_iso8601( erlang:element(4, Entry) ))/binary>>/binary, "\n"/utf8>>/binary, (begin _pipe = gleam@list:map( erlang:element(5, Entry), fun person_to_string/1 ), _pipe@1 = gleam@list:reduce( _pipe, fun(Acc, Author) -> <> end ), gleam@result:unwrap( _pipe@1, <<""/utf8>> ) end)/binary>>/binary, (case erlang:element(6, Entry) of {some, Content} -> <<<<""/utf8, (text_to_string(Content))/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(7, Entry) of {some, Link} -> link_to_string(Link); none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(8, Entry) of {some, Summary} -> <<<<""/utf8, (text_to_string(Summary))/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (begin _pipe@2 = gleam@list:map( erlang:element(9, Entry), fun category_to_string/1 ), _pipe@3 = gleam@list:reduce( _pipe@2, fun(Acc@1, Category) -> <> end ), gleam@result:unwrap(_pipe@3, <<""/utf8>>) end)/binary>>/binary, (begin _pipe@4 = gleam@list:map( erlang:element(10, Entry), fun person_to_string/1 ), _pipe@5 = gleam@list:reduce( _pipe@4, fun(Acc@2, Contributor) -> <> end ), gleam@result:unwrap(_pipe@5, <<""/utf8>>) end)/binary>>/binary, (case erlang:element(11, Entry) of {some, Published} -> <<<<""/utf8, (birl:to_iso8601(Published))/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(12, Entry) of {some, Rights} -> <<<<""/utf8, (text_to_string(Rights))/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(13, Entry) of {some, Source} -> source_to_string(Source); none -> <<""/utf8>> end)/binary>>/binary, "\n"/utf8>>. -file("src/webls/atom.gleam", 16). -spec atom_feed_to_string(atom_feed()) -> binary(). atom_feed_to_string(Feed) -> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"\n"/utf8, (erlang:element( 2, Feed ))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (text_to_string( erlang:element( 3, Feed ) ))/binary>>/binary, "\n"/utf8>>/binary, ""/utf8>>/binary, (birl:to_iso8601( erlang:element(4, Feed) ))/binary>>/binary, "\n"/utf8>>/binary, (begin _pipe = gleam@list:map( erlang:element(5, Feed), fun person_to_string/1 ), _pipe@1 = gleam@list:reduce( _pipe, fun(Acc, Author) -> <> end ), gleam@result:unwrap( _pipe@1, <<""/utf8>> ) end)/binary>>/binary, (case erlang:element(6, Feed) of {some, Link} -> link_to_string(Link); none -> <<""/utf8>> end)/binary>>/binary, (begin _pipe@2 = gleam@list:map( erlang:element(7, Feed), fun category_to_string/1 ), _pipe@3 = gleam@list:reduce( _pipe@2, fun(Acc@1, Category) -> <> end ), gleam@result:unwrap( _pipe@3, <<""/utf8>> ) end)/binary>>/binary, (begin _pipe@4 = gleam@list:map( erlang:element(8, Feed), fun person_to_string/1 ), _pipe@5 = gleam@list:reduce( _pipe@4, fun(Acc@2, Contributor) -> <> end ), gleam@result:unwrap(_pipe@5, <<""/utf8>>) end)/binary>>/binary, (case erlang:element(9, Feed) of {some, Generator} -> generator_to_string(Generator); none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(10, Feed) of {some, Icon} -> <<<<""/utf8, Icon/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(11, Feed) of {some, Logo} -> <<<<""/utf8, Logo/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(12, Feed) of {some, Rights} -> <<<<""/utf8, (text_to_string(Rights))/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (case erlang:element(13, Feed) of {some, Subtitle} -> <<<<""/utf8, Subtitle/binary>>/binary, "\n"/utf8>>; none -> <<""/utf8>> end)/binary>>/binary, (begin _pipe@6 = gleam@list:map( erlang:element(14, Feed), fun atom_entry_to_string/1 ), _pipe@7 = gleam@list:reduce( _pipe@6, fun(Acc@3, Entry) -> <> end ), gleam@result:unwrap(_pipe@7, <<""/utf8>>) end)/binary>>. -file("src/webls/atom.gleam", 10). ?DOC(" Converts an Atom feed to a string of a valid Atom 1.0 feed\n"). -spec to_string(atom_feed()) -> binary(). to_string(Feed) -> <<<<"\n"/utf8, (atom_feed_to_string(Feed))/binary>>/binary, ""/utf8>>. -file("src/webls/atom.gleam", 207). -spec plain_text(binary()) -> text(). plain_text(Input) -> {plain_text, Input}. -file("src/webls/atom.gleam", 211). -spec html(binary()) -> text(). html(Input) -> {html, Input}. -file("src/webls/atom.gleam", 215). -spec xhtml(binary()) -> text(). xhtml(Input) -> {x_html, Input}. -file("src/webls/atom.gleam", 219). -spec link(binary()) -> link(). link(Href) -> {link, Href, none, none, none, none, none}. -file("src/webls/atom.gleam", 230). -spec with_link_rel(link(), binary()) -> link(). with_link_rel(Link, Rel) -> _record = Link, {link, erlang:element(2, _record), {some, Rel}, erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record)}. -file("src/webls/atom.gleam", 234). -spec with_link_content_type(link(), binary()) -> link(). with_link_content_type(Link, Content_type) -> _record = Link, {link, erlang:element(2, _record), erlang:element(3, _record), {some, Content_type}, erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record)}. -file("src/webls/atom.gleam", 238). -spec with_link_hreflang(link(), binary()) -> link(). with_link_hreflang(Link, Hreflang) -> _record = Link, {link, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), {some, Hreflang}, erlang:element(6, _record), erlang:element(7, _record)}. -file("src/webls/atom.gleam", 242). -spec with_link_title(link(), binary()) -> link(). with_link_title(Link, Title) -> _record = Link, {link, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), {some, Title}, erlang:element(7, _record)}. -file("src/webls/atom.gleam", 246). -spec with_link_length(link(), integer()) -> link(). with_link_length(Link, Length) -> _record = Link, {link, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), {some, Length}}. -file("src/webls/atom.gleam", 250). -spec category(binary()) -> category(). category(Term) -> {category, Term, none, none}. -file("src/webls/atom.gleam", 254). -spec with_category_scheme(category(), binary()) -> category(). with_category_scheme(Category, Scheme) -> _record = Category, {category, erlang:element(2, _record), {some, Scheme}, erlang:element(4, _record)}. -file("src/webls/atom.gleam", 258). -spec with_category_label(category(), binary()) -> category(). with_category_label(Category, Label) -> _record = Category, {category, erlang:element(2, _record), erlang:element(3, _record), {some, Label}}. -file("src/webls/atom.gleam", 262). -spec person(binary()) -> person(). person(Name) -> {person, Name, none, none}. -file("src/webls/atom.gleam", 266). -spec with_person_email(person(), binary()) -> person(). with_person_email(Person, Email) -> _record = Person, {person, erlang:element(2, _record), {some, Email}, erlang:element(4, _record)}. -file("src/webls/atom.gleam", 270). -spec with_person_uri(person(), binary()) -> person(). with_person_uri(Person, Uri) -> _record = Person, {person, erlang:element(2, _record), erlang:element(3, _record), {some, Uri}}. -file("src/webls/atom.gleam", 274). -spec feed(binary(), text(), birl:time()) -> atom_feed(). feed(Id, Title, Updated) -> {atom_feed, Id, Title, Updated, [], none, [], [], none, none, none, none, none, []}. -file("src/webls/atom.gleam", 292). -spec entry(binary(), text(), birl:time()) -> atom_entry(). entry(Id, Title, Updated) -> {atom_entry, Id, Title, Updated, [], none, none, none, [], [], none, none, none}. -file("src/webls/atom.gleam", 309). -spec with_entry_id(atom_entry(), binary()) -> atom_entry(). with_entry_id(Entry, Id) -> _record = Entry, {atom_entry, Id, erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 313). -spec with_entry_title(atom_entry(), text()) -> atom_entry(). with_entry_title(Entry, Title) -> _record = Entry, {atom_entry, erlang:element(2, _record), Title, erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 317). -spec with_entry_updated(atom_entry(), birl:time()) -> atom_entry(). with_entry_updated(Entry, Updated) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), Updated, erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 321). -spec with_entry_authors(atom_entry(), list(person())) -> atom_entry(). with_entry_authors(Entry, Authors) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), gleam@list:flatten([erlang:element(5, Entry), Authors]), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 325). -spec with_entry_content(atom_entry(), text()) -> atom_entry(). with_entry_content(Entry, Content) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), {some, Content}, erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 329). -spec with_entry_link(atom_entry(), link()) -> atom_entry(). with_entry_link(Entry, Link) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), {some, Link}, erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 333). -spec with_entry_summary(atom_entry(), text()) -> atom_entry(). with_entry_summary(Entry, Summary) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), {some, Summary}, erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 337). -spec with_entry_categories(atom_entry(), list(category())) -> atom_entry(). with_entry_categories(Entry, Categories) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), gleam@list:flatten([erlang:element(9, Entry), Categories]), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 344). -spec with_entry_contributors(atom_entry(), list(person())) -> atom_entry(). with_entry_contributors(Entry, Contributors) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), gleam@list:flatten([erlang:element(10, Entry), Contributors]), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 354). -spec with_entry_published(atom_entry(), birl:time()) -> atom_entry(). with_entry_published(Entry, Published) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), {some, Published}, erlang:element(12, _record), erlang:element(13, _record)}. -file("src/webls/atom.gleam", 358). -spec with_entry_rights(atom_entry(), text()) -> atom_entry(). with_entry_rights(Entry, Rights) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), {some, Rights}, erlang:element(13, _record)}. -file("src/webls/atom.gleam", 362). -spec with_entry_source(atom_entry(), source()) -> atom_entry(). with_entry_source(Entry, Source) -> _record = Entry, {atom_entry, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), {some, Source}}. -file("src/webls/atom.gleam", 366). -spec with_feed_author(atom_feed(), person()) -> atom_feed(). with_feed_author(Feed, Author) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), [Author | erlang:element(5, Feed)], erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 370). -spec with_feed_authors(atom_feed(), list(person())) -> atom_feed(). with_feed_authors(Feed, Authors) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), gleam@list:flatten([erlang:element(5, Feed), Authors]), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 374). -spec with_feed_link(atom_feed(), link()) -> atom_feed(). with_feed_link(Feed, Link) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), {some, Link}, erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 378). -spec with_feed_category(atom_feed(), category()) -> atom_feed(). with_feed_category(Feed, Category) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), [Category | erlang:element(7, Feed)], erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 382). -spec with_feed_categories(atom_feed(), list(category())) -> atom_feed(). with_feed_categories(Feed, Categories) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), gleam@list:flatten([erlang:element(7, Feed), Categories]), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 389). -spec with_feed_contributor(atom_feed(), person()) -> atom_feed(). with_feed_contributor(Feed, Contributor) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), [Contributor | erlang:element(8, Feed)], erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 393). -spec with_feed_contributors(atom_feed(), list(person())) -> atom_feed(). with_feed_contributors(Feed, Contributors) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), gleam@list:flatten([erlang:element(8, Feed), Contributors]), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 403). -spec with_feed_generator(atom_feed(), generator()) -> atom_feed(). with_feed_generator(Feed, Generator) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), {some, Generator}, erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 407). -spec with_feed_icon(atom_feed(), binary()) -> atom_feed(). with_feed_icon(Feed, Icon) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), {some, Icon}, erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 411). -spec with_feed_logo(atom_feed(), binary()) -> atom_feed(). with_feed_logo(Feed, Logo) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), {some, Logo}, erlang:element(12, _record), erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 415). -spec with_feed_rights(atom_feed(), text()) -> atom_feed(). with_feed_rights(Feed, Rights) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), {some, Rights}, erlang:element(13, _record), erlang:element(14, _record)}. -file("src/webls/atom.gleam", 419). -spec with_feed_subtitle(atom_feed(), binary()) -> atom_feed(). with_feed_subtitle(Feed, Subtitle) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), {some, Subtitle}, erlang:element(14, _record)}. -file("src/webls/atom.gleam", 423). -spec with_feed_entry(atom_feed(), atom_entry()) -> atom_feed(). with_feed_entry(Feed, Entry) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), [Entry | erlang:element(14, Feed)]}. -file("src/webls/atom.gleam", 427). -spec with_feed_entries(atom_feed(), list(atom_entry())) -> atom_feed(). with_feed_entries(Feed, Entries) -> _record = Feed, {atom_feed, erlang:element(2, _record), erlang:element(3, _record), erlang:element(4, _record), erlang:element(5, _record), erlang:element(6, _record), erlang:element(7, _record), erlang:element(8, _record), erlang:element(9, _record), erlang:element(10, _record), erlang:element(11, _record), erlang:element(12, _record), erlang:element(13, _record), gleam@list:flatten([erlang:element(14, Feed), Entries])}.