640f0ea889
- Dashboard-01 block de shadcn-vue instalado (sidebar con tabs) - vue-i18n para traducciones ES/EN (detecta idioma del navegador) - NavProjects ahora usa initiative_name de KAPPA API - Dashboard stats conectados a API (HUs, sesiones, planeaciones) - Work items table con datos reales de KAPPA - Login: toggle password con icono de ojo - Toggle theme restaurado en SiteHeader - i18n con locale/en.json y locale/es.json -Nuevos componentes: NavMain, NavDocuments, NavSecondary en dashboard/ - NavUser原来的 - NavUser原来的
41 lines
806 B
Vue
41 lines
806 B
Vue
<script setup lang="ts">
|
|
import type { Component } from "vue"
|
|
|
|
import {
|
|
SidebarGroup,
|
|
SidebarGroupContent,
|
|
SidebarMenu,
|
|
SidebarMenuButton,
|
|
SidebarMenuItem,
|
|
} from "@/components/ui/sidebar"
|
|
|
|
interface NavItem {
|
|
title: string
|
|
url: string
|
|
icon?: Component
|
|
}
|
|
|
|
defineProps<{
|
|
items: NavItem[]
|
|
}>()
|
|
</script>
|
|
|
|
<template>
|
|
<SidebarGroup>
|
|
<SidebarGroupContent>
|
|
<SidebarMenu>
|
|
<SidebarMenuItem
|
|
v-for="item in items"
|
|
:key="item.title"
|
|
>
|
|
<SidebarMenuButton as-child>
|
|
<a :href="item.url">
|
|
<component :is="item.icon" v-if="item.icon" />
|
|
{{ item.title }}
|
|
</a>
|
|
</SidebarMenuButton>
|
|
</SidebarMenuItem>
|
|
</SidebarMenu>
|
|
</SidebarGroupContent>
|
|
</SidebarGroup>
|
|
</template> |