Class: PhlexKit::TabsList

Inherits:
BaseComponent show all
Defined in:
app/components/phlex_kit/tabs/tabs_list.rb

Constant Summary collapse

VARIANTS =
{ default: nil, line: "line" }.freeze

Instance Method Summary collapse

Methods inherited from BaseComponent

#on

Constructor Details

#initialize(variant: :default, **attrs) ⇒ TabsList

Returns a new instance of TabsList.



5
6
7
8
# File 'app/components/phlex_kit/tabs/tabs_list.rb', line 5

def initialize(variant: :default, **attrs)
  @variant = variant.to_sym
  @attrs = attrs
end

Instance Method Details

#view_templateObject



10
11
12
13
# File 'app/components/phlex_kit/tabs/tabs_list.rb', line 10

def view_template(&)
  classes = [ "pk-tabs-list", fetch_option(VARIANTS, @variant, :variant) ].compact.join(" ")
  div(**mix({ class: classes, role: "tablist", data: { phlex_kit__tabs_target: "list", action: "keydown->phlex-kit--tabs#keydown" } }, @attrs), &)
end