defmodule Moon.Design.Avatar.Status do @moduledoc false use Moon.StatelessComponent, slot: "status" @doc "Position for status indicator. Vertical options: bottom | top. Horizontal options: left | right. Default is bottom-right" prop(position, :map) @doc "Will be got from Avatar in most cases" prop(size, :string, from_context: :size) @doc "Tailwind classes for customization" prop(class, :css_class) @doc "Data-testid attribute for DOM element" prop(testid, :string) @doc "Id of the component" prop(id, :string) def render(assigns) do default_position = %{vertical: "bottom", horizontal: "right"} position = Map.merge(default_position, assigns.position || %{}) ~F"""
""" end end