@anoki/fse-ui
Version:
FSE UI components library
143 lines (142 loc) • 6.13 kB
JavaScript
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