Class: Shadcn::CollapsibleComponent

Inherits:
BaseComponent
  • Object
show all
Defined in:
app/components/shadcn/collapsible_component.rb

Overview

Collapsible component for expandable content Matches shadcn/ui Collapsible component Uses Stimulus for interactivity

Examples:

Basic collapsible

<%= render Shadcn::CollapsibleComponent.new do |collapsible| %>
  <% collapsible.with_trigger do %>
    <%= render Shadcn::ButtonComponent.new(variant: :ghost, size: :sm) do %>
      Toggle
    <% end %>
  <% end %>
  <% collapsible.with_content do %>
    Hidden content here
  <% end %>
<% end %>

Instance Attribute Summary

Attributes inherited from BaseComponent

#class_name, #data, #html_options

Instance Method Summary collapse

Methods inherited from BaseComponent

#content

Methods included from Rails::Helpers::ClassNameHelper

#cn

Constructor Details

#initialize(open: false, disabled: false, **options) ⇒ CollapsibleComponent

Returns a new instance of CollapsibleComponent.

Parameters:

  • open (Boolean) (defaults to: false)

    Whether collapsible starts open

  • disabled (Boolean) (defaults to: false)

    Whether collapsible is disabled



28
29
30
31
32
# File 'app/components/shadcn/collapsible_component.rb', line 28

def initialize(open: false, disabled: false, **options)
  super(**options)
  @open = open
  @disabled = disabled
end