Fix: Responsive mejorado en Mapa de Camas para celulares
This commit is contained in:
+13
-12
@@ -188,12 +188,12 @@ export function MapaCamas({
|
|||||||
<Badge variant="outline" className="bg-red-50 text-red-700">
|
<Badge variant="outline" className="bg-red-50 text-red-700">
|
||||||
{camas.filter(c => c.estado === 'Ocupada').length} Ocupadas
|
{camas.filter(c => c.estado === 'Ocupada').length} Ocupadas
|
||||||
</Badge>
|
</Badge>
|
||||||
<div className="ml-4 flex items-center gap-2">
|
<div className="ml-4 flex items-center gap-2 flex-wrap sm:flex-nowrap">
|
||||||
<Button onClick={() => {
|
<Button onClick={() => {
|
||||||
setEditingAreaId(null);
|
setEditingAreaId(null);
|
||||||
setAreaNombre('');
|
setAreaNombre('');
|
||||||
setAreaDialogOpen(true);
|
setAreaDialogOpen(true);
|
||||||
}}>
|
}} className="text-xs px-2 py-1 sm:text-sm sm:px-4 sm:py-2">
|
||||||
Administrar Áreas
|
Administrar Áreas
|
||||||
</Button>
|
</Button>
|
||||||
<Button onClick={() => {
|
<Button onClick={() => {
|
||||||
@@ -202,8 +202,9 @@ export function MapaCamas({
|
|||||||
setBedTipo('General');
|
setBedTipo('General');
|
||||||
setBedAreaId(areas?.[0]?.id);
|
setBedAreaId(areas?.[0]?.id);
|
||||||
setBedDialogOpen(true);
|
setBedDialogOpen(true);
|
||||||
}}>
|
}} className="text-xs px-2 py-1 sm:text-sm sm:px-4 sm:py-2">
|
||||||
<Plus className="h-4 w-4 mr-1" />Agregar Cama
|
<Plus className="h-3 w-3 sm:h-4 sm:w-4 sm:mr-1" />
|
||||||
|
<span className="hidden sm:inline">Agregar Cama</span>
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -270,21 +271,21 @@ export function MapaCamas({
|
|||||||
<Dialog key={cama.id}>
|
<Dialog key={cama.id}>
|
||||||
<DialogTrigger asChild>
|
<DialogTrigger asChild>
|
||||||
<Card
|
<Card
|
||||||
className={`cursor-pointer hover:shadow-md transition-shadow border-2 ${getEstadoColor(cama)}`}
|
className={`cursor-pointer hover:shadow-md transition-shadow border-2 w-full ${getEstadoColor(cama)}`}
|
||||||
onClick={() => setCamaSeleccionada(cama)}
|
onClick={() => setCamaSeleccionada(cama)}
|
||||||
>
|
>
|
||||||
<CardContent className="p-4">
|
<CardContent className="p-2 sm:p-4">
|
||||||
<div className="flex items-center justify-between mb-2">
|
<div className="flex items-center justify-between mb-1 sm:mb-2">
|
||||||
<Bed className="h-6 w-6" />
|
<Bed className="h-4 w-4 sm:h-6 sm:w-6" />
|
||||||
{getEstadoIcono(cama)}
|
{getEstadoIcono(cama)}
|
||||||
</div>
|
</div>
|
||||||
<p className="font-bold text-lg">{cama.numero}</p>
|
<p className="font-bold text-sm sm:text-lg">{cama.numero}</p>
|
||||||
<p className="text-xs opacity-75">{cama.areaId ? areaById[cama.areaId] ?? 'Área desconocida' : 'Sin área'}</p>
|
<p className="text-xs opacity-75 truncate">{cama.areaId ? areaById[cama.areaId] ?? 'Área desconocida' : 'Sin área'}</p>
|
||||||
<Badge variant="outline" className="mt-2 text-xs bg-white/50">
|
<Badge variant="outline" className="mt-1 sm:mt-2 text-xs bg-white/50">
|
||||||
{cama.tipo}
|
{cama.tipo}
|
||||||
</Badge>
|
</Badge>
|
||||||
{cama.estado === 'Ocupada' && paciente && (
|
{cama.estado === 'Ocupada' && paciente && (
|
||||||
<div className="mt-2 pt-2 border-t border-current/20">
|
<div className="mt-1 sm:mt-2 pt-1 sm:pt-2 border-t border-current/20">
|
||||||
<p className="text-xs font-medium truncate">
|
<p className="text-xs font-medium truncate">
|
||||||
{paciente.apellido}, {paciente.nombre}
|
{paciente.apellido}, {paciente.nombre}
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
Reference in New Issue
Block a user