1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-08-07 22:45:20 +02:00

Add breadcrumbs support across application (#1897)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions

* Add breadcrumbs support across application

Fixes #1896

* Potential fix for tests

* Simplify breadcrumbs implementation

Remove complex breadcrumbs logic from controllers and concern, replacing with a simpler default approach that sets a basic breadcrumb based on the current controller name

* Refactor page header and breadcrumbs rendering

Remove complex breadcrumbs helper method and update layout to use more flexible content_for approach for page headers and breadcrumbs

* Add fallback breadcrumbs rendering to settings layout
This commit is contained in:
Josh Pigford 2025-02-25 10:14:07 -06:00 committed by GitHub
parent 763e222cdd
commit a4874815a6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 75 additions and 21 deletions

View file

@ -0,0 +1,21 @@
<%# locals: (breadcrumbs:) %>
<nav class="flex items-center gap-2 mb-6">
<button data-action="sidebar#toggle" class="w-9 h-9 inline-flex rounded-lg items-center justify-center hover:bg-gray-100 cursor-pointer">
<%= icon("panel-left", color: "gray") %>
</button>
<% breadcrumbs.each_with_index do |(name, path), index| %>
<% if index > 0 %>
<%= icon("chevron-right", color: "gray", size: "sm") %>
<% end %>
<% if path.present? && index < breadcrumbs.size - 1 %>
<%= link_to name, path, class: "text-sm text-gray-500 font-medium" %>
<% elsif index == breadcrumbs.size - 1 %>
<span class="text-gray-900 font-medium text-sm"><%= name %></span>
<% else %>
<span class="text-sm text-gray-500 font-medium"><%= name %></span>
<% end %>
<% end %>
</nav>

View file

@ -0,0 +1,11 @@
<%# This partial renders the page header with title and optional subtitle %>
<header class="space-y-6">
<% if local_assigns[:title].present? %>
<div class="space-y-1">
<h1 class="text-3xl font-medium text-gray-900"><%= title %></h1>
<% if local_assigns[:subtitle].present? %>
<p class="text-gray-500"><%= subtitle %></p>
<% end %>
</div>
<% end %>
</header>