@php use App\Helpers\MenuHelper; $menuGroups = MenuHelper::getMenuGroups(); $currentPath = '/' . trim(request()->path(), '/'); $currentPath = $currentPath === '//' ? '/' : $currentPath; $initialOpenSubmenus = []; foreach ($menuGroups as $groupIndex => $menuGroup) { foreach (($menuGroup['items'] ?? []) as $itemIndex => $item) { if (!isset($item['subItems']) || !is_array($item['subItems'])) { continue; } foreach ($item['subItems'] as $subItem) { $subPath = '/' . ltrim($subItem['path'] ?? '', '/'); $subPath = rtrim($subPath, '/') ?: '/'; if ( $currentPath === $subPath || ($subPath !== '/' && str_starts_with(trim($currentPath, '/'), trim($subPath, '/'))) ) { $initialOpenSubmenus["{$groupIndex}-{$itemIndex}"] = true; break; } } } } @endphp