2 lines
36 KiB
JavaScript
2 lines
36 KiB
JavaScript
|
|
import{u as D,r as p,j as e,an as j,R as L,C as A,q as x,i as M,I as S,as as w}from"./0-vendor-react-DWOJpYrt.js";import{B as u}from"./page-ajustes-DgawOEJM.js";import{B as h,C as f,A as E,a as N}from"./page-comunicacion-DmHQUHoW.js";import"./1-vendor-utils-Delnuc0l.js";import"./2-vendor-markdown-BQlHAcA7.js";const U=({protocol:i,onReset:l})=>{D();const[r,t]=p.useState(-1),[c,m]=p.useState(new Set),[d,a]=p.useState(!1),v=()=>{t(0)},b=s=>{const n=new Set(c);n.has(s)?n.delete(s):n.add(s),m(n)},P=()=>{r<i.steps.length-1&&t(r+1)},T=()=>{r>0?t(r-1):r===0&&t(-1)},I=()=>{t(-1),m(new Set),l&&l()},o=r>=0?i.steps[r]:null,g=o?c.has(o.id):!1,R=o?!o.critical||g:!1,O=s=>{switch(s){case"rcp":return"default";case"desa":return"default";case"ovace":return"default";case"sca":return"default";case"ictus":return"default";default:return"default"}},q=s=>{switch(s){case"rcp":return"RCP";case"desa":return"DESA";case"ovace":return"OVACE";case"sca":return"SCA";case"ictus":return"Ictus";default:return s}},z=s=>{switch(s){case"adulto":return"Adulto";case"pediatrico":return"Pediatría";case"lactante":return"Lactante";case"todos":return"Todos";default:return s}};return e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(j,{className:"w-5 h-5 text-primary"}),e.jsx("h3",{className:"font-bold text-foreground text-lg",children:i.title}),e.jsx(h,{variant:O(i.category),children:q(i.category)}),e.jsx(h,{variant:"default",children:z(i.ageGroup)})]}),e.jsx("p",{className:"text-muted-foreground text-sm",children:i.description})]}),e.jsx(u,{variant:"ghost",size:"sm",onClick:I,className:"shrink-0",title:"Reiniciar protocolo",children:e.jsx(L,{className:"w-4 h-4"})})]}),r===-1&&e.jsxs(f,{className:"p-4 space-y-4",children:[e.jsxs("div",{children:[e.jsxs("h4",{className:"font-semibold text-foreground mb-3 flex items-center gap-2",children:[e.jsx(A,{className:"w-5 h-5 text-primary"}),"Evaluación Inicial"]}),e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:"Realice estas preguntas al testigo antes de comenzar:"}),e.jsx("ul",{className:"space-y-2",children:i.initialAssessment.map((s,n)=>e.jsxs("li",{className:"flex items-start gap-2 text-foreground",children:[e.jsxs("span",{className:"text-primary font-bold mt-1",children:[n+1,"."]}),e.jsx("span",{children:s})]},n))})]}),e.jsxs(u,{onClick:v,className:"w-full",size:"lg",children:["Comenzar Guía Paso a Paso",e.jsx(x,{className:"w-4 h-4 ml-2"})]})]}),o&&e.jsxs(f,{className:"p-4 space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs("span",{className:"text-2xl font-bold text-primary",children:[r+1," / ",i.steps.length]}),o.critical&&e.jsx(h,{variant:"destructive",className:"text-xs",children:"Crítico"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[d&&o.notes&&e.jsx(u,{variant:"ghost",size:"sm",onClick:()=>a(!1),children:"Ocultar notas"}),!d&&o.notes&&e.jsx(u,{variant:"ghost",size:"sm",onClick:()=>a(!0),children:"Ver notas"})]})]}),e.jsxs("div",{className:"bg-primary/10 p-4 rounded-lg border border-primary/20",children:[e.jsx("p",{className:"text-foreground font-medium text-base leading-relaxed",children:e.jsx("strong",{children:"Lea al testigo:"})}),e.jsxs("p",{className:"text-foreground text-base leading-relaxed mt-2",children:['"',o.instruction,'"']})]}),o.verification&&e.jsxs("div",{className:"space-y-2",children:[e.jsx("p",{className:"text-sm font-medium text-foreground",children:"Verificación (pregunte al testigo):"}),e.jsxs("button",{onClick:()=>b(o.id),className:`w-full flex items-center gap-3 p-3 rounded-lg border-2 transition-colors text-left ${g?"bg-success/10 border-success":o.critical?"bg-destructive/10 border-destructive":"bg-muted border-border hover:bg-accent"}`,children:[e.jsx("div",{className:`w-6 h-6 rounded border-2 flex items-center justify-center shrink-0 ${g?"bg-success border-suc
|