diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 50f1f745..5a069253 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -19,17 +19,18 @@ module ApplicationHelper end def sidebar_link_to(name, path, options = {}) - base_class_names = "block border border-transparent rounded-xl -ml-2 p-2 text-sm font-medium text-gray-500 flex items-center" - hover_class_names = "hover:bg-white hover:border-[#141414]/[0.07] hover:text-gray-900 hover:shadow-xs" - current_page_class_names = "bg-white border-[#141414]/[0.07] text-gray-900 shadow-xs" + base_class_names = [ "block", "border", "border-transparent", "rounded-xl", "-ml-2", "p-2", "text-sm", "font-medium", "text-gray-500", "flex", "items-center" ] + hover_class_names = [ "hover:bg-white", "hover:border-[#141414]/[0.07]", "hover:text-gray-900", "hover:shadow-xs" ] + current_page_class_names = [ "bg-white", "border-[#141414]/[0.07]", "text-gray-900", "shadow-xs" ] - link_class_names = class_names( - base_class_names, - hover_class_names, - current_page_class_names => current_page?(path) - ) + link_class_names = if current_page?(path) + base_class_names.delete("border-transparent") + base_class_names + hover_class_names + current_page_class_names + else + base_class_names + hover_class_names + end - merged_options = options.reverse_merge(class: link_class_names).except(:icon) + merged_options = options.reverse_merge(class: link_class_names.join(" ")).except(:icon) link_to path, merged_options do lucide_icon(options[:icon], class: "w-5 h-5 mr-2") + name diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index ff8d2db1..2c508c11 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -45,7 +45,7 @@