defmodule OopsieDaisy.Components.Link do @moduledoc """ Link component with DaisyUI styling. Generated from: tmp/daisyui/packages/docs/src/routes/(routes)/components/link/+page.md ## Examples <.link>Content """ use Phoenix.Component # Component attr(:rest, :global, include: ~w(disabled form name value type)) @doc "Additional CSS classes" attr(:class, :string, default: "") @doc "Color variant" attr(:variant, :atom, default: nil, values: [nil, :primary, :secondary, :accent, :success, :info, :warning, :error] ) @doc """ Renders a Link component. """ slot(:inner_block, required: true) def link(assigns) do ~H"""
<%= render_slot(@inner_block) %>
""" end # Helper functions for class composition defp variant_class(nil), do: nil defp variant_class(:primary), do: "link-primary" defp variant_class(:secondary), do: "link-secondary" defp variant_class(:accent), do: "link-accent" defp variant_class(:success), do: "link-success" defp variant_class(:info), do: "link-info" defp variant_class(:warning), do: "link-warning" defp variant_class(:error), do: "link-error" end