Module: UI::PaginationBehavior

Included in:
Pagination, PaginationComponent
Defined in:
app/behaviors/ui/pagination_behavior.rb

Overview

UI::PaginationBehavior

Instance Method Summary collapse

Instance Method Details

#pagination_base_classes ⇒ Object

Base CSS classes for pagination container



21
22
23
# File 'app/behaviors/ui/pagination_behavior.rb', line 21

def pagination_base_classes
  "mx-auto flex w-full justify-center"
end

#pagination_classes ⇒ Object

Merge base classes with custom classes using TailwindMerge



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

def pagination_classes
  TailwindMerge::Merger.new.merge([pagination_base_classes, @classes].compact.join(" "))
end

#pagination_html_attributes ⇒ Object

Build complete HTML attributes hash for pagination container



31
32
33
34
35
36
37
38
39
# File 'app/behaviors/ui/pagination_behavior.rb', line 31

def pagination_html_attributes
  base_attrs = @attributes&.except(:data) || {}
  base_attrs.merge(
    role: "navigation",
    "aria-label": "pagination",
    "data-slot": "pagination",
    class: pagination_classes
  )
end