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.



67
68
69
70
# File 'lib/ruby_native/helper.rb', line 67

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

Instance Method Details

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



72
73
74
75
76
77
78
79
# File 'lib/ruby_native/helper.rb', line 72

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



81
82
83
# File 'lib/ruby_native/helper.rb', line 81

def to_html
  @context.safe_join(@items)
end