Method: Lookbook::BaseComponent#render_component_tag

Defined in:
app/components/lookbook/base_component.rb

#render_component_tag(tag = :div, **attrs, &block) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'app/components/lookbook/base_component.rb', line 11

def render_component_tag(tag = :div, **attrs, &block)
  merged_classes = class_names(attrs[:class], @html_attrs[:class])
  merged_attrs = @html_attrs.except(:class).deep_merge(attrs.except(:class))

  lookbook_tag tag, name: component_name,
    **merged_attrs,
    "x-data": prepare_alpine_data(merged_attrs[:"x-data"]),
    class: merged_classes, &block
end