defmodule Moon.Design.Progress do @moduledoc false use Moon.StatelessComponent @doc "Id of the component" prop(id, :string) @doc "Data-testid attribute value" prop(testid, :string) @doc "Tailwind classes for customization" prop(class, :css_class, from_context: :class) @doc "Background colour" prop(bg_color, :css_class, default: "bg-trunks/[.24]") @doc "Progress bar colour" prop(progress_color, :css_class, default: "bg-piccolo") @doc "Size of Progress" prop(size, :string, values: ["6xs", "5xs", "4xs", "3xs", "2xs"], default: "2xs") @doc "Value of Progress in %" prop(value, :decimal, default: 0) @doc "Pin of Progress component, see Progress.Pin" slot(pin) def render(assigns) do ~F"""