Module: UI::MenubarSeparatorBehavior

Included in:
MenubarSeparator, MenubarSeparatorComponent
Defined in:
app/behaviors/ui/menubar_separator_behavior.rb

Overview

MenubarSeparatorBehavior

Shared behavior for MenubarSeparator component across ERB, ViewComponent, and Phlex implementations.

Instance Method Summary collapse

Instance Method Details

Returns combined CSS classes for the separator



17
18
19
20
21
22
23
# File 'app/behaviors/ui/menubar_separator_behavior.rb', line 17

def menubar_separator_classes
  classes_value = respond_to?(:classes, true) ? classes : @classes
  TailwindMerge::Merger.new.merge([
    "bg-border -mx-1 my-1 h-px",
    classes_value
  ].compact.join(" "))
end

Returns data attributes for the separator



26
27
28
29
# File 'app/behaviors/ui/menubar_separator_behavior.rb', line 26

def menubar_separator_data_attributes
  attributes_value = respond_to?(:attributes, true) ? attributes : @attributes
  attributes_value&.fetch(:data, {}) || {}
end

Returns HTML attributes for the separator



8
9
10
11
12
13
14
# File 'app/behaviors/ui/menubar_separator_behavior.rb', line 8

def menubar_separator_html_attributes
  {
    class: menubar_separator_classes,
    data: menubar_separator_data_attributes,
    role: "separator"
  }
end