defmodule OopsieDaisy.Components.Card do @moduledoc """ Card component with DaisyUI styling. Generated from: tmp/daisyui/packages/docs/src/routes/(routes)/components/card/+page.md ## Examples <.card>Content """ use Phoenix.Component # Component attr(:rest, :global, include: ~w(disabled form name value type)) @doc "Additional CSS classes" attr(:class, :string, default: "") @doc "Button size" attr(:size, :atom, default: :md, values: [:md, :xs, :sm, :lg, :xl]) @doc "Style variant" attr(:style, :atom, default: nil, values: [nil, :dash]) @doc """ Renders a Card component. """ slot(:inner_block, required: true) def card(assigns) do ~H"""
<%= render_slot(@inner_block) %>
""" end # Helper functions for class composition defp size_class(nil), do: nil defp size_class(:xs), do: "card-xs" defp size_class(:sm), do: "card-sm" defp size_class(:md), do: "card-md" defp size_class(:lg), do: "card-lg" defp size_class(:xl), do: "card-xl" defp style_class(nil), do: nil defp style_class(:dash), do: "card-dash" end