Packages

Generates type-safe Phoenix.Component modules from DaisyUI documentation. Parses DaisyUI docs, detects variants, and creates production-ready components.

Current section

Files

Jump to
oopsie_daisy lib oopsie_daisy_components table.ex
Raw

lib/oopsie_daisy_components/table.ex

defmodule OopsieDaisy.Components.Table do
@moduledoc """
Table component with DaisyUI styling.
Generated from: tmp/daisyui/packages/docs/src/routes/(routes)/components/table/+page.md
## Examples
<.table>Content</.table>
"""
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: :xs, values: [:md, :xs])
@doc """
Renders a Table component.
"""
slot(:inner_block, required: true)
def table(assigns) do
~H"""
<div class={["table", size_class(@size), @class]} {@rest}>
<%= render_slot(@inner_block) %>
</div>
"""
end
# Helper functions for class composition
defp size_class(nil), do: nil
defp size_class(:xs), do: "table-xs"
end