{#snippet menuItem(item: MenuItem)} {@const Icon = getIconComponent(item.icon)} {@const isActive = isRouteActive(item.link, { exact: item.link === '/', excludePaths: item.excludePaths })} {@const hasSubmenus = item.submenus && item.submenus.length > 0}
  • {#if hasSubmenus}
    {item.label}
      {#if item.submenus} {#each item.submenus as sub (sub.link)} {@const isSubActive = isRouteActive(sub.link, { excludePaths: sub.excludePaths, exact: sub.exact })}
    • onNavigate?.()} > {sub.label}
    • {/each} {/if}
    {:else} onNavigate?.()} > {item.label} {/if}
  • {/snippet}
      {#if permissionsQuery.isLoading}
      {#each Array(5)}
      {/each}
      {:else} {#each menuItems as item (item.link)} {@render menuItem(item)} {/each} {/if}
    • onNavigate?.()} > Abrir Chamado