Class: Primrose::Components::Navbar

Inherits:
Rose
  • Object
show all
Defined in:
lib/primrose/components/navbar.rb

Instance Attribute Summary

Attributes inherited from Rose

#children, #event_handlers, #state

Instance Method Summary collapse

Methods inherited from Rose

#add_child, #after_mount, #after_render, #after_unmount, #before_mount, #before_render, #before_unmount, #get_binding, #handle_error, #lifecycle, #on, #render_children, #setup, #trigger

Constructor Details

#initialize(*args, links:, active_link: nil, sticky: false, brand: nil) ⇒ Navbar

Returns a new instance of Navbar.



6
7
8
9
10
11
12
13
14
# File 'lib/primrose/components/navbar.rb', line 6

def initialize(*args, links:, active_link: nil, sticky: false, brand: nil)
  # puts "Non-keyword args: #{args.inspect}"
  # puts "Initializing Navbar with #{links.inspect}, #{active_link}, #{sticky}, #{brand}"
  @links = links
  @active_link = active_link
  @sticky = sticky
  @brand = brand
  super()
end

Instance Method Details

#renderObject



16
17
18
# File 'lib/primrose/components/navbar.rb', line 16

def render
  Prim.render('templates/components/navbar.prim.erb', self)
end


20
21
22
# File 'lib/primrose/components/navbar.rb', line 20

def set_active_link(new_active_link)
  @state.alter({ active_link: new_active_link })
end