defmodule Storybook.Components.Table do use PhoenixStorybook.Story, :component def function, do: &Doggo.table/1 def variations do [ %Variation{ id: :basic, attributes: %{ id: "pets", rows: [ %{id: 1, name: "George", age: 8}, %{id: 2, name: "Mary", age: 5} ] }, slots: [ """ <:col :let={p} label="name"><%= p.name %> <:col :let={p} label="age"><%= p.age %> """ ] }, %Variation{ id: :actions, attributes: %{ id: "pets", rows: [ %{id: 1, name: "George", age: 8}, %{id: 2, name: "Mary", age: 5} ] }, slots: [ """ <:col :let={p} label="name"><%= p.name %> <:col :let={p} label="age"><%= p.age %> <:action :let={p}> <.link>Edit """ ] }, %Variation{ id: :caption, attributes: %{ id: "pets", caption: "List of pets filtered by species", rows: [ %{id: 1, name: "George", age: 8}, %{id: 2, name: "Mary", age: 5} ] }, slots: [ """ <:col :let={p} label="name"><%= p.name %> <:col :let={p} label="age"><%= p.age %> """ ] }, %Variation{ id: :foot, attributes: %{ id: "pets", rows: [ %{id: 1, name: "George", age: 8}, %{id: 2, name: "Mary", age: 5} ] }, slots: [ """ <:col :let={p} label="name"><%= p.name %> <:col :let={p} label="age"><%= p.age %> <:foot> Avg age 7.5 """ ] } ] end end