Class: OkonomiUiKit::Components::Breadcrumbs

Inherits:
OkonomiUiKit::Component show all
Defined in:
app/helpers/okonomi_ui_kit/components/breadcrumbs.rb

Defined Under Namespace

Classes: BreadcrumbBuilder

Instance Attribute Summary

Attributes inherited from OkonomiUiKit::Component

#view

Instance Method Summary collapse

Methods inherited from OkonomiUiKit::Component

#combined_styles, config_class?, config_class_name, config_classes, config_namespace, config_styles_registry, #config_styles_registry, deep_merge, #internal_styles_registry, internal_styles_registry, #name, parent_styles_registry, register_styles, resolve_config_classes, #style, #styles, #template_path, #theme_name, #tw_merge, #variant_style

Constructor Details

#initialize(template) ⇒ Breadcrumbs

Returns a new instance of Breadcrumbs.



31
32
33
34
35
# File 'app/helpers/okonomi_ui_kit/components/breadcrumbs.rb', line 31

def initialize(template)
  super
  @items = []
  @builder = BreadcrumbBuilder.new(self)
end

Instance Method Details

#add_item(text, path = nil, current: false, icon: nil) ⇒ Object



48
49
50
51
52
53
54
55
# File 'app/helpers/okonomi_ui_kit/components/breadcrumbs.rb', line 48

def add_item(text, path = nil, current: false, icon: nil)
  @items << {
    text: text,
    path: path,
    current: current,
    icon: icon
  }
end

#render(options = {}, &block) ⇒ Object



37
38
39
40
41
42
43
44
45
46
# File 'app/helpers/okonomi_ui_kit/components/breadcrumbs.rb', line 37

def render(options = {}, &block)
  return "" if block.nil?

  block.call(@builder)
  view.render("okonomi/components/breadcrumbs/breadcrumbs",
    component: self,
    items: @items,
    options: options
  )
end