UNPKG

@anoki/fse-ui

Version:

FSE UI components library

143 lines (142 loc) • 6.13 kB
import { j as l } from "./index.es244.js"; import { Avatar as C } from "./index.es64.js"; import './components/ui/CardDoctorInfo/CardDoctorInfo.css';/* empty css */ import { clsx as u } from "./index.es246.js"; import { Divider as g } from "./index.es137.js"; import b, { useState as O } from "react"; import { DoctorSchedule as $ } from "./index.es340.js"; import { CategoryHeader as N } from "./index.es59.js"; import { Row as y } from "./index.es9.js"; import { Col as D } from "./index.es10.js"; const H = ({ titleTag: p = "h1", doctorName: o, specialties: m, contactInfo: x, avatar: d, className: w, officesInfo: e = [], officesInfoV2: t = [], officeLabel: i = "Ambulatorio" }) => { const [a, c] = O([]), n = () => x && (x == null ? void 0 : x.length) > 0, j = (r) => { a.includes(r) ? c(a.filter((s) => s !== r)) : c([...a, r]); }; return /* @__PURE__ */ l.jsxs( "article", { className: u("bg-white shadow br-x4 ui-card-doctor-info", w), children: [ /* @__PURE__ */ l.jsxs(y, { as: "header", gap: "x16", children: [ d && /* @__PURE__ */ l.jsx( C, { textColor: (d == null ? void 0 : d.textColor) ?? "slate-20", bg: (d == null ? void 0 : d.bg) ?? "lightblue-a01", initials: (d == null ? void 0 : d.initials) ?? "", className: "ui-card-doctor-avatar", size: "3" } ), /* @__PURE__ */ l.jsxs("div", { children: [ /* @__PURE__ */ l.jsx(p, { className: "fs-5 fw-semibold text-slate-20", children: o }), m && (m == null ? void 0 : m.length) > 0 && /* @__PURE__ */ l.jsx("p", { className: "fs-6 text-slate-20 fw-regular", children: m == null ? void 0 : m.join(" | ") }) ] }) ] }), /* @__PURE__ */ l.jsxs("div", { className: "ui-card-doctor-content-info", children: [ n() && /* @__PURE__ */ l.jsx("dl", { className: "ui-card-doctor-contact-info", children: x == null ? void 0 : x.map((r) => /* @__PURE__ */ l.jsxs( "div", { role: "group", className: "ui-card-doctor-contact-detail-info", children: [ /* @__PURE__ */ l.jsx("dt", { className: "fs-6 fw-bold text-slate-28", children: r.label }), /* @__PURE__ */ l.jsx("dd", { className: "fs-6 fw-regular text-slate-28", children: r.value }) ] }, r.label )) }), (e == null ? void 0 : e.length) > 0 && /* @__PURE__ */ l.jsx( g, { bg: "border-divider", className: "ui-card-doctor-divider-info mt-x24" } ), (t == null ? void 0 : t.length) > 0 && /* @__PURE__ */ l.jsx( g, { bg: "border-divider", className: "ui-card-doctor-divider-info mt-x24" } ), /* @__PURE__ */ l.jsxs(D, { children: [ (e == null ? void 0 : e.length) > 0 && (e == null ? void 0 : e.map((r, s) => /* @__PURE__ */ l.jsxs(b.Fragment, { children: [ /* @__PURE__ */ l.jsx( N, { title: `${i} ${s + 1}`, isOpen: a.includes(s), onToggle: () => j(s), hasBorder: !a.includes(s), className: "pt-x24", titleClassName: "fw-semibold fs-6 text-primary pb-x16" } ), a.includes(s) && /* @__PURE__ */ l.jsx("div", { className: u("ui-has-border-bottom", "pb-x24"), children: r.length > 0 && /* @__PURE__ */ l.jsx("dl", { className: "ui-card-doctor-contact-info", children: r == null ? void 0 : r.map((h) => /* @__PURE__ */ l.jsxs( "div", { role: "group", className: "ui-card-doctor-contact-detail-info", children: [ /* @__PURE__ */ l.jsx("dt", { className: "fs-6 fw-bold text-slate-28", children: h.label }), /* @__PURE__ */ l.jsx("dd", { className: "fs-6 fw-regular text-slate-28", children: h.value }) ] }, h.label )) }) }) ] }, s))), (t == null ? void 0 : t.length) > 0 && (t == null ? void 0 : t.map((r, s) => /* @__PURE__ */ l.jsxs(b.Fragment, { children: [ /* @__PURE__ */ l.jsx( N, { title: `${i} ${s + 1}`, isOpen: a.includes(s), onToggle: () => j(s), hasBorder: !a.includes(s), className: "pt-x24", titleClassName: "fw-semibold fs-6 text-primary pb-x16" } ), a.includes(s) && /* @__PURE__ */ l.jsxs("div", { className: u("ui-has-border-bottom", "pb-x24"), children: [ r.info.length > 0 && /* @__PURE__ */ l.jsx("dl", { className: "ui-card-doctor-contact-info", children: r == null ? void 0 : r.info.map((h) => /* @__PURE__ */ l.jsxs( "div", { role: "group", className: "ui-card-doctor-contact-detail-info", children: [ /* @__PURE__ */ l.jsx("dt", { className: "fs-6 fw-bold text-slate-28", children: h.label }), /* @__PURE__ */ l.jsx("dd", { className: "fs-6 fw-regular text-slate-28", children: h.value }) ] }, h.label )) }), r.schedule && /* @__PURE__ */ l.jsx("dl", { className: "mt-x16", children: /* @__PURE__ */ l.jsx( $, { ...r.schedule, labelClassName: "fs-6 fw-bold text-slate-28" } ) }) ] }) ] }, s))) ] }) ] }) ] } ); }; export { H as CardDoctorInfo }; //# sourceMappingURL=index.es49.js.map