defmodule Moon.Components.Toast do @moduledoc false use Moon.StatelessComponent alias Moon.Assets.Icons.IconBannerInfo alias Moon.Assets.Icons.IconError alias Moon.Assets.Icons.IconErrorCircle alias Moon.Assets.Icons.IconSnackbarSuccess alias Moon.Assets.Icons.IconWarning alias Moon.Components.Link prop(id, :string, required: true) prop(testid, :string) prop(message, :string, required: true) prop(variant, :string, values: ~w(error warning info success)) prop(closeable, :boolean, default: true) prop(link_text, :string) prop(link_href, :string) prop(on_close, :event) prop(background_color_class, :css_class, default: "bg-goku") defmodule Message do @moduledoc false defstruct id: nil, testid: nil, message: nil, variant: nil, closeable: true, link_text: nil, link_href: nil end def render(assigns) do ~F"""

{@message}

{@link_text}
""" end end