Class: RubyUIAdmin::UI::Base

Inherits:
Phlex::HTML
  • Object
show all
Defined in:
app/components/ruby_ui_admin/ui/base.rb

Overview

Base for all vendored UI primitives. Mirrors RubyUI::Base: merges default and user attributes and dedupes Tailwind classes.

Constant Summary collapse

TAILWIND_MERGER =
::TailwindMerge::Merger.new.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**user_attrs) ⇒ Base

Returns a new instance of Base.



14
15
16
17
# File 'app/components/ruby_ui_admin/ui/base.rb', line 14

def initialize(**user_attrs)
  @attrs = mix(default_attrs, user_attrs)
  @attrs[:class] = TAILWIND_MERGER.merge(@attrs[:class]) if @attrs[:class]
end

Instance Attribute Details

#attrsObject (readonly)

Returns the value of attribute attrs.



12
13
14
# File 'app/components/ruby_ui_admin/ui/base.rb', line 12

def attrs
  @attrs
end