Class: Vident::ViewComponent::RootComponent

Inherits:
ViewComponent::Base
  • Object
show all
Includes:
RootComponent
Defined in:
lib/vident/view_component/root_component.rb

Constant Summary collapse

SELF_CLOSING_TAGS =
Set[:area, :base, :br, :col, :embed, :hr, :img, :input, :link, :meta, :param, :source, :track, :wbr].freeze

Instance Method Summary collapse

Instance Method Details

#callObject



26
27
28
29
30
31
32
33
34
35
# File 'lib/vident/view_component/root_component.rb', line 26

def call
  # Generate outer tag options and render
  tag_type = 
  options = 
  if SELF_CLOSING_TAGS.include?(tag_type)
    view_context.tag(tag_type, options)
  else
    view_context.(tag_type, content, options)
  end
end

#target_tag(tag_name, targets, **options, &block) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/vident/view_component/root_component.rb', line 18

def target_tag(tag_name, targets, **options, &block)
  parsed = parse_targets(Array.wrap(targets))
  options[:data] ||= {}
  options[:data].merge!(build_target_data_attributes(parsed))
  content = view_context.capture(&block) if block
  view_context.(tag_name, content, options)
end