fix: [sidebar] 즐겨찾기 섹션에 메뉴 뱃지 표시 동기화

This commit is contained in:
김보곤
2026-03-06 15:21:51 +09:00
parent efd8d96156
commit 147274ca14

View File

@@ -37,6 +37,22 @@ class="w-3 h-3 transition-transform sidebar-text rotate-180"
$activeClass = $isActive
? 'bg-primary text-white hover:bg-primary'
: 'text-gray-700 hover:bg-gray-100';
// 뱃지 확인 (menu-item.blade.php와 동일 로직)
$badgeCount = 0;
$badgeColor = '#ef4444';
if (isset($menuBadges)) {
$badge = null;
if ($routeName && isset($menuBadges['byRoute'][$routeName])) {
$badge = $menuBadges['byRoute'][$routeName];
} elseif ($menu->url && isset($menuBadges['byUrl'][$menu->url])) {
$badge = $menuBadges['byUrl'][$menu->url];
}
if ($badge) {
$badgeCount = is_array($badge) ? ($badge['count'] ?? 0) : $badge;
$badgeColor = is_array($badge) ? ($badge['color'] ?? '#ef4444') : '#ef4444';
}
}
@endphp
<li>
<a href="{{ $url }}"
@@ -48,6 +64,12 @@ class="group flex items-center gap-2 px-3 py-1.5 rounded-lg text-sm {{ $activeCl
<x-sidebar.menu-icon :icon="$menu->icon" />
@endif
<span class="sidebar-text flex-1">{{ $menu->name }}</span>
@if($badgeCount > 0)
<span class="sidebar-text inline-flex items-center justify-center min-w-[1.25rem] h-5 px-1.5 text-xs font-bold text-white rounded-full"
style="background-color: {{ $badgeColor }};">
{{ $badgeCount > 99 ? '99+' : $badgeCount }}
</span>
@endif
<button type="button"
onclick="event.preventDefault(); event.stopPropagation(); toggleMenuFavorite({{ $menu->id }}, this)"
class="sidebar-text shrink-0 p-0.5 rounded transition-colors text-yellow-400 hover:text-yellow-500"