defmodule Storybook.Components.Fab do use PhoenixStorybook.Story, :component def function, do: &Doggo.fab/1 def slot do [ """ """ ] end def variations do [ %Variation{ id: :default, attributes: %{label: "Add item"}, slots: slot() }, %Variation{ id: :disabled, attributes: %{label: "Add item", disabled: true}, slots: slot() }, %VariationGroup{ id: :variants, variations: for variant <- [ :primary, :secondary, :info, :success, :warning, :danger ] do %Variation{ id: variant, attributes: %{label: "Add item", variant: variant}, slots: slot() } end }, %VariationGroup{ id: :sizes, variations: for size <- [:small, :normal, :medium, :large] do %Variation{ id: size, attributes: %{label: "Add item", size: size}, slots: slot() } end }, %VariationGroup{ id: :shapes, variations: [ %Variation{ id: :no_shape, attributes: %{label: "Add item", shape: nil}, slots: slot() }, %Variation{ id: :circle_button, attributes: %{label: "Add item", shape: :circle}, slots: slot() }, %Variation{ id: :pill_button, attributes: %{label: "Add item", shape: :pill}, slots: slot() } ] } ] end end