9
10
11
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/tramway/admin/navbar.rb', line 9
def navbar_items_for(project, role:)
project = project.underscore.to_sym unless project.is_a? Symbol
@navbar_structure[project]&.map do |item|
if item.is_a?(Class) || item.is_a?(String)
should_be_in_navbar_as item, project, role
elsif item.is_a? Hash
sub_items = item.values.first.map do |sub_item|
should_be_in_navbar_as sub_item, project, role
end.compact
{ item.keys.first => sub_items } if sub_items.any?
end
end&.compact || []
end
|