Module: Plutonium::UI::ComponentClasses::Button

Defined in:
lib/plutonium/ui/component_classes.rb

Overview

Button component classes

Constant Summary collapse

BASE =
"pu-btn"
SIZE_DEFAULT =
"pu-btn-md"
SIZE_SM =
"pu-btn-sm"
SIZE_XS =
"pu-btn-xs"
VARIANTS =
{
  primary: "pu-btn-primary",
  secondary: "pu-btn-secondary",
  danger: "pu-btn-danger",
  success: "pu-btn-success",
  warning: "pu-btn-warning",
  info: "pu-btn-info",
  accent: "pu-btn-accent",
  ghost: "pu-btn-ghost"
}.freeze
SOFT_VARIANTS =
{
  primary: "pu-btn-soft-primary",
  secondary: "pu-btn-soft-secondary",
  danger: "pu-btn-soft-danger",
  success: "pu-btn-soft-success",
  warning: "pu-btn-soft-warning",
  info: "pu-btn-soft-info",
  accent: "pu-btn-soft-accent"
}.freeze

Class Method Summary collapse

Class Method Details

.classes(variant: :primary, size: :default, soft: false) ⇒ Object



36
37
38
39
40
41
42
43
44
# File 'lib/plutonium/ui/component_classes.rb', line 36

def self.classes(variant: :primary, size: :default, soft: false)
  variant_class = soft ? SOFT_VARIANTS[variant] : VARIANTS[variant]
  size_class = case size
  when :sm then SIZE_SM
  when :xs then SIZE_XS
  else SIZE_DEFAULT
  end
  "#{BASE} #{size_class} #{variant_class}"
end