Class: RubyNative::Helper::MenuBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_native/helper.rb

Instance Method Summary collapse

Constructor Details

#initialize(context) ⇒ MenuBuilder

Returns a new instance of MenuBuilder.



104
105
106
107
# File 'lib/ruby_native/helper.rb', line 104

def initialize(context)
  @context = context
  @items = []
end

Instance Method Details

#item(title, url, method: nil, destructive: false, **options) ⇒ Object



109
110
111
112
113
114
115
116
# File 'lib/ruby_native/helper.rb', line 109

def item(title, url, method: nil, destructive: false, **options)
  data = options.delete(:data) || {}
  data[:bridge__menu_target] = "item"
  data[:turbo_method] = method if method
  data[:destructive] = "" if destructive

  @items << @context.link_to(title, url, **options, data: data, hidden: true)
end

#to_htmlObject



118
119
120
# File 'lib/ruby_native/helper.rb', line 118

def to_html
  @context.safe_join(@items)
end