56 lines
2.4 KiB
ERB
56 lines
2.4 KiB
ERB
<%#
|
|
# Navigation
|
|
|
|
This partial is used to display the navigation in Administrate.
|
|
By default, the navigation contains navigation links
|
|
for all resources in the admin dashboard,
|
|
as defined by the routes in the `admin/` namespace
|
|
%>
|
|
|
|
<%= vite_client_tag %>
|
|
<%= vite_javascript_tag 'superadmin_pages' %>
|
|
|
|
<%
|
|
sidebar_icons = {
|
|
accounts: 'icon-building-2',
|
|
users: 'icon-users',
|
|
platform_apps: 'icon-toy-brick',
|
|
agent_bots: 'icon-bot',
|
|
}
|
|
%>
|
|
|
|
<div class="border-n-weak border-r w-[200px] flex-shrink-0 justify-between h-full flex flex-col bg-n-background" role="navigation">
|
|
<div>
|
|
<div class="flex items-center px-4 border-n-weak border-b h-16 mt-px">
|
|
<%= link_to image_tag('/brand-assets/logo_thumbnail.svg', alt: 'Chatwoot Admin Dashboard', class: 'h-8'), super_admin_root_url %>
|
|
<div class="flex flex-col ml-2.5">
|
|
<div class="text-sm font-medium text-n-slate-12">Chatwoot <%= Chatwoot.config[:version] %></div>
|
|
<div class="text-xs text-n-slate-11">Super Admin Console</div>
|
|
</div>
|
|
</div>
|
|
|
|
<ul class="py-4 px-3 space-y-0.5">
|
|
<%= render partial: "nav_item", locals: { icon: 'icon-layout-dashboard', url: super_admin_root_url, label: 'Dashboard' } %>
|
|
<% Administrate::Namespace.new(namespace).resources.each do |resource| %>
|
|
<% next if ["account_users", "access_tokens", "installation_configs", "dashboard", "devise/sessions", "app_configs", "instance_statuses", "settings"].include? resource.resource %>
|
|
<%= render partial: "nav_item", locals: {
|
|
icon: sidebar_icons[resource.resource.to_sym],
|
|
url: resource_index_route(resource),
|
|
label: display_resource_name(resource),
|
|
}
|
|
%>
|
|
|
|
<% end %>
|
|
<%= render 'settings_menu', open: settings_open? %>
|
|
</ul>
|
|
</div>
|
|
<div class="border-t border-n-weak">
|
|
<ul class="py-4 px-3 space-y-0.5">
|
|
<%= render partial: "nav_item", locals: { icon: 'icon-layers', url: sidekiq_web_url, label: 'Sidekiq Dashboard' } %>
|
|
<%= render partial: "nav_item", locals: { icon: 'icon-heart-pulse', url: super_admin_instance_status_url, label: 'Instance Health' } %>
|
|
<%= render partial: "nav_item", locals: { icon: 'icon-layout-dashboard', url: '/', label: 'Agent Dashboard' } %>
|
|
<%= render partial: "nav_item", locals: { icon: 'icon-log-out', url: super_admin_logout_url, label: 'Logout' } %>
|
|
</ul>
|
|
</div>
|
|
</div>
|