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.



108
109
110
111
# File 'lib/ruby_native/helper.rb', line 108

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

Instance Method Details

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



113
114
115
116
117
118
119
120
# File 'lib/ruby_native/helper.rb', line 113

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



122
123
124
# File 'lib/ruby_native/helper.rb', line 122

def to_html
  @context.safe_join(@items)
end