Module: UI::CarouselItemBehavior

Defined in:
app/behaviors/ui/carousel_item_behavior.rb

Overview

Shared behavior for Carousel Item component

Instance Method Summary collapse

Instance Method Details

Base CSS classes for carousel item (slide)



8
9
10
# File 'app/behaviors/ui/carousel_item_behavior.rb', line 8

def carousel_item_base_classes
  "min-w-0 shrink-0 grow-0 basis-full pl-4"
end

Merge base classes with custom classes



13
14
15
# File 'app/behaviors/ui/carousel_item_behavior.rb', line 13

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

Build complete HTML attributes hash



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

def carousel_item_html_attributes
  base_attrs = @attributes || {}
  base_attrs.merge(
    class: carousel_item_classes,
    role: "group",
    "aria-roledescription": "slide"
  )
end