Module: UI::PaginationEllipsisBehavior

Included in:
PaginationEllipsis, PaginationEllipsisComponent
Defined in:
app/behaviors/ui/pagination_ellipsis_behavior.rb

Overview

Shared behavior for Pagination Ellipsis component Handles ellipsis indicator for skipped pages

Instance Method Summary collapse

Instance Method Details

#ellipsis_base_classes ⇒ Object

Base CSS classes for ellipsis



7
8
9
# File 'app/behaviors/ui/pagination_ellipsis_behavior.rb', line 7

def ellipsis_base_classes
  "flex size-9 items-center justify-center"
end

#ellipsis_classes ⇒ Object

Merge base classes with custom classes using TailwindMerge



12
13
14
# File 'app/behaviors/ui/pagination_ellipsis_behavior.rb', line 12

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

#ellipsis_html_attributes ⇒ Object

Build complete HTML attributes hash for ellipsis



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

def ellipsis_html_attributes
  base_attrs = @attributes || {}
  base_attrs.merge(
    "aria-hidden": "true",
    "data-slot": "pagination-ellipsis",
    class: ellipsis_classes
  )
end