defmodule SaladUI.Tooltip do
@moduledoc false
use SaladUI, :component
@doc """
Render a tooltip
## Examples:
<.tooltip>
<.button variant="outline">Hover me
<.tooltip_content class="bg-primary text-white" theme={nil}>
Hi! I'm a tooltip.
"""
attr :class, :string, default: nil
attr :rest, :global
slot :inner_block, required: true
def tooltip(assigns) do
~H"""
{render_slot(@inner_block)}
"""
end
@doc """
Render only for compatible with shad ui
"""
slot :inner_block, required: true
def tooltip_trigger(assigns) do
~H"""
{render_slot(@inner_block)}
"""
end
@doc """
Render
"""
attr :class, :string, default: nil
attr :side, :string, default: "top", values: ~w(bottom left right top)
attr :rest, :global
slot :inner_block, required: true
def tooltip_content(assigns) do
assigns =
assign(assigns, :variant_class, side_variant(assigns.side))
~H"""
{render_slot(@inner_block)}
"""
end
end