Class: UiComponents::DaisyUi::BaseComponent
- Inherits:
-
ViewComponent::Base
- Object
- ViewComponent::Base
- UiComponents::DaisyUi::BaseComponent
- Defined in:
- app/components/ui_components/daisy_ui/base_component.rb
Direct Known Subclasses
Action::ButtonComponent, Action::Dropdown::AnchorComponent, Action::Dropdown::Card::ItemComponent, Action::Dropdown::CardComponent, Action::Dropdown::Menu::ItemComponent, Action::Dropdown::MenuComponent, Action::DropdownComponent, Action::Modal::AnchorComponent, Action::Modal::Dialog::Box::Action::ItemComponent, Action::Modal::Dialog::Box::ActionComponent, Action::Modal::Dialog::Box::BodyComponent, Action::Modal::Dialog::Box::CloseComponent, Action::Modal::Dialog::Box::TitleComponent, Action::Modal::Dialog::BoxComponent, Action::Modal::DialogComponent, Action::ModalComponent, Action::Swap::OffComponent, Action::Swap::OnComponent, Action::SwapComponent, DataDisplay::Accordion::Item::AnchorComponent, DataDisplay::Accordion::Item::BodyComponent, DataDisplay::Accordion::ItemComponent, DataDisplay::AccordionComponent, DataDisplay::Avatar::Item::BoxComponent, DataDisplay::Avatar::ItemComponent, DataDisplay::AvatarComponent, DataDisplay::BadgeComponent, DataDisplay::Card::Body::ActionComponent, DataDisplay::Card::Body::ContextComponent, DataDisplay::Card::Body::TitleComponent, DataDisplay::Card::BodyComponent, DataDisplay::Card::FigureComponent, DataDisplay::CardComponent, DataDisplay::Carousel::IndicatorComponent, DataDisplay::Carousel::Item::PasserComponent, DataDisplay::Carousel::ItemComponent, DataDisplay::CarouselComponent, DataDisplay::Chat::BubbleComponent, DataDisplay::Chat::FooterComponent, DataDisplay::Chat::HeaderComponent, DataDisplay::ChatComponent, DataDisplay::Countdown::ItemComponent, DataDisplay::CountdownComponent, DataDisplay::Diff::Item1Component, DataDisplay::Diff::Item2Component, DataDisplay::Diff::ResizerComponent, DataDisplay::DiffComponent, DataDisplay::KbdComponent, DataDisplay::List::ItemComponent, DataDisplay::ListComponent, DataDisplay::Stat::Item::ActionComponent, DataDisplay::Stat::Item::DescriptionComponent, DataDisplay::Stat::Item::FigureComponent, DataDisplay::Stat::Item::TitleComponent, DataDisplay::Stat::Item::ValueComponent, DataDisplay::Stat::ItemComponent, DataDisplay::StatComponent, DataDisplay::StatusComponent, DataDisplay::Table::Item::BodyComponent, DataDisplay::Table::Item::FootComponent, DataDisplay::Table::Item::HeadComponent, DataDisplay::Table::Item::Row::DataComponent, DataDisplay::Table::Item::Row::HeaderComponent, DataDisplay::Table::Item::RowComponent, DataDisplay::Table::ItemComponent, DataDisplay::TableComponent, DataDisplay::Timeline::Item::ItemEndComponent, DataDisplay::Timeline::Item::ItemMiddleComponent, DataDisplay::Timeline::Item::ItemStartComponent, DataDisplay::Timeline::Item::LineComponent, DataDisplay::Timeline::ItemComponent, DataDisplay::TimelineComponent
Constant Summary collapse
- SIZES =
%w[xs sm lg xl].freeze
- KINDS =
%w[soft outline dash active disabled ghost link].freeze
- COLORS =
%w[neutral primary secondary accent info success warning error].freeze
- ALIGNS =
%w[start center end].freeze
- AXES =
%w[top right bottom left].freeze
- CSS_CLASSES_DEFAULT =
%w[].freeze
- CSS_CLASSES_VARIANTS =
%w[].freeze
- CSS_CLASSES =
(CSS_CLASSES_DEFAULT + CSS_CLASSES_VARIANTS).freeze
Instance Attribute Summary collapse
-
#slot_order ⇒ Object
Returns the value of attribute slot_order.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(css_class: nil, css_style: nil, options: {}) ⇒ BaseComponent
constructor
A new instance of BaseComponent.
Constructor Details
#initialize(css_class: nil, css_style: nil, options: {}) ⇒ BaseComponent
Returns a new instance of BaseComponent.
20 21 22 23 24 25 26 27 28 29 30 |
# File 'app/components/ui_components/daisy_ui/base_component.rb', line 20 def initialize( css_class: nil, css_style: nil, options: {} ) @css_class = css_class.to_s @css_style = css_style.to_s = @slot_order = [] end |
Instance Attribute Details
#slot_order ⇒ Object
Returns the value of attribute slot_order.
18 19 20 |
# File 'app/components/ui_components/daisy_ui/base_component.rb', line 18 def slot_order @slot_order end |
Class Method Details
.tracks_slot_order(slots) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'app/components/ui_components/daisy_ui/base_component.rb', line 32 def self.tracks_slot_order(slots) slots.each do |slot| singularized = slot.to_s.singularize alias_method "original_with_#{singularized}", "with_#{singularized}" define_method "with_#{singularized}" do |*args, **kwargs, &block| @slot_order << slot unless @slot_order.include?(slot) send("original_with_#{singularized}", *args, **kwargs, &block) end end end |