@cm-sigoo-temp/ui
v0.2.31
Published
``` npm i @cm-sigoo-temp/ui yarn add @cm-sigoo-temp/ui ```
Keywords
Readme
Documentación
Instalación
npm i @cm-sigoo-temp/ui
yarn add @cm-sigoo-temp/uiSistema de Iconos con Material Symbols
Los iconos como string deben usar los nombres de Material Symbols:
// Ejemplos válidos:
icono: 'home'; // Icono simple
icono: 'home_outlined'; // Variante outlined
icono: 'settings_suggest'; // Icono compuesto
icono: 'cancel_presentation'; // Equivalente a CancelPresentationIconLos iconos como elemento deben usar los nombres de Material icons:
// Ejemplos válidos:
import AcUnitIcon from '@mui/icons-material/AcUnit';
import AcUnitOutlinedIcon from '@mui/icons-material/AcUnitOutlined';
icono: AcUnitIcon; // Icono simple
icono: AcUnitOutlinedIcon; // Variante outlinedEstructura de Menús con Permisos
import { TMenuDrawer } from '@cm-sigoo-temp/ui';
import { DashboardIcon } from '@mui/icons-material';
import HomeOutlinedIcon from '@mui/icons-material/HomeOutlined';
export const menus: TMenuDrawer[] = [
{
id: 'principal',
nombre: 'Principal',
icono: HomeOutlinedIcon,
to: '/',
},
{
id: 'dashboard',
nombre: 'Dashboard',
icono: DashboardIcon,
to: '/dashboard',
},
{
id: 'admin',
nombre: 'Administración',
subMenus: [
{
id: 'users',
nombre: 'Usuarios',
icono: 'group',
to: '/admin/users',
},
],
},
];Sistema de Permisos y Autorización
El componente se integra con el servicio de autorización en:
https://autorizacionv2-dev.coordinadora.com/
Flujo de autorización:
- Autenticación: Vía Keycloak
- Obtención de permisos: Consulta al endpoint de autorización
- Filtrado de menús: Los menús se muestran según permisos
Implementación
import { AuthLayout } from '@cm-sigoo-temp/ui';
import { Link } from 'react-router';
import { menus } from './constantes';
function App() {
return (
<AuthLayout.Keycloak
idApp="ejemplo-plantilla-front"
nombreApp="Ejemplo Plantilla Front"
menus={menus}
LinkComponent={Link}
>
{/* Contenido */}
</AuthLayout.Keycloak>
);
}
export default App;