defmodule Moon.Design.Tag do @moduledoc false use Moon.StatelessComponent alias Moon.Design.Tag.Utils prop(size, :string, default: "xs", values: ~w(2xs xs)) prop(class, :css_class) prop(is_uppercase, :boolean, default: true) slot(default) slot(left_icon) slot(right_icon) prop(testid, :string) prop(id, :string) def render(assigns) do ~F"""
<#slot {@left_icon} /> <#slot /> <#slot {@right_icon} />
""" end end