@anoki/fse-ui 1.0.412 → 1.0.414
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs179.js +1 -1
- package/dist/index.cjs183.js +1 -1
- package/dist/index.cjs190.js +1 -1
- package/dist/index.cjs201.js +1 -1
- package/dist/index.cjs228.js +1 -1
- package/dist/index.cjs272.js +1 -1
- package/dist/index.cjs272.js.map +1 -1
- package/dist/index.cjs275.js +1 -1
- package/dist/index.cjs275.js.map +1 -1
- package/dist/index.cjs276.js +1 -1
- package/dist/index.cjs276.js.map +1 -1
- package/dist/index.cjs277.js +1 -1
- package/dist/index.cjs277.js.map +1 -1
- package/dist/index.cjs278.js +1 -1
- package/dist/index.cjs278.js.map +1 -1
- package/dist/index.cjs279.js +1 -1
- package/dist/index.cjs279.js.map +1 -1
- package/dist/index.cjs280.js +1 -1
- package/dist/index.cjs280.js.map +1 -1
- package/dist/index.cjs281.js +1 -1
- package/dist/index.cjs281.js.map +1 -1
- package/dist/index.cjs282.js +1 -1
- package/dist/index.cjs282.js.map +1 -1
- package/dist/index.cjs283.js +2 -0
- package/dist/index.cjs283.js.map +1 -0
- package/dist/index.cjs284.js +2 -0
- package/dist/index.cjs284.js.map +1 -0
- package/dist/index.cjs288.js +1 -1
- package/dist/index.cjs288.js.map +1 -1
- package/dist/index.cjs289.js +1 -1
- package/dist/index.cjs289.js.map +1 -1
- package/dist/index.cjs290.js +1 -1
- package/dist/index.cjs290.js.map +1 -1
- package/dist/index.cjs291.js +1 -1
- package/dist/index.cjs291.js.map +1 -1
- package/dist/index.cjs292.js +2 -0
- package/dist/index.cjs292.js.map +1 -0
- package/dist/index.cjs293.js +2 -0
- package/dist/index.cjs293.js.map +1 -0
- package/dist/index.cjs294.js +2 -0
- package/dist/index.cjs294.js.map +1 -0
- package/dist/index.cjs309.js +1 -1
- package/dist/index.cjs311.js +1 -1
- package/dist/index.cjs312.js +1 -1
- package/dist/index.cjs316.js +1 -1
- package/dist/index.cjs322.js +1 -1
- package/dist/index.cjs324.js +1 -1
- package/dist/index.cjs326.js +1 -38
- package/dist/index.cjs326.js.map +1 -1
- package/dist/index.cjs327.js +38 -1
- package/dist/index.cjs327.js.map +1 -1
- package/dist/index.cjs328.js +1 -1
- package/dist/index.cjs328.js.map +1 -1
- package/dist/index.cjs329.js +1 -1
- package/dist/index.cjs329.js.map +1 -1
- package/dist/index.cjs330.js +1 -1
- package/dist/index.cjs330.js.map +1 -1
- package/dist/index.cjs55.js +1 -1
- package/dist/index.cjs55.js.map +1 -1
- package/dist/index.cjs56.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.es179.js +7 -7
- package/dist/index.es183.js +1 -1
- package/dist/index.es190.js +8 -8
- package/dist/index.es201.js +14 -14
- package/dist/index.es228.js +7 -7
- package/dist/index.es272.js +15 -7
- package/dist/index.es272.js.map +1 -1
- package/dist/index.es275.js +6 -29
- package/dist/index.es275.js.map +1 -1
- package/dist/index.es276.js +26 -32
- package/dist/index.es276.js.map +1 -1
- package/dist/index.es277.js +63 -617
- package/dist/index.es277.js.map +1 -1
- package/dist/index.es278.js +29 -10
- package/dist/index.es278.js.map +1 -1
- package/dist/index.es279.js +32 -5
- package/dist/index.es279.js.map +1 -1
- package/dist/index.es280.js +621 -24
- package/dist/index.es280.js.map +1 -1
- package/dist/index.es281.js +10 -68
- package/dist/index.es281.js.map +1 -1
- package/dist/index.es282.js +6 -15
- package/dist/index.es282.js.map +1 -1
- package/dist/index.es283.js +28 -0
- package/dist/index.es283.js.map +1 -0
- package/dist/index.es284.js +72 -0
- package/dist/index.es284.js.map +1 -0
- package/dist/index.es288.js +122 -12
- package/dist/index.es288.js.map +1 -1
- package/dist/index.es289.js +134 -8
- package/dist/index.es289.js.map +1 -1
- package/dist/index.es290.js +14 -50
- package/dist/index.es290.js.map +1 -1
- package/dist/index.es291.js +13 -40
- package/dist/index.es291.js.map +1 -1
- package/dist/index.es292.js +12 -0
- package/dist/index.es292.js.map +1 -0
- package/dist/index.es293.js +53 -0
- package/dist/index.es293.js.map +1 -0
- package/dist/index.es294.js +45 -0
- package/dist/index.es294.js.map +1 -0
- package/dist/index.es309.js +3 -3
- package/dist/index.es311.js +4 -4
- package/dist/index.es312.js +6 -6
- package/dist/index.es316.js +1 -1
- package/dist/index.es322.js +1 -1
- package/dist/index.es324.js +4 -4
- package/dist/index.es326.js +65 -69
- package/dist/index.es326.js.map +1 -1
- package/dist/index.es327.js +68 -8
- package/dist/index.es327.js.map +1 -1
- package/dist/index.es328.js +9 -14
- package/dist/index.es328.js.map +1 -1
- package/dist/index.es329.js +14 -62
- package/dist/index.es329.js.map +1 -1
- package/dist/index.es330.js +61 -64
- package/dist/index.es330.js.map +1 -1
- package/dist/index.es55.js +25 -24
- package/dist/index.es55.js.map +1 -1
- package/dist/index.es56.js.map +1 -1
- package/dist/sections/Login/Login.css +1 -1
- package/dist/styles/index.css +1 -1
- package/package.json +1 -1
- package/dist/index.cjs273.js +0 -2
- package/dist/index.cjs273.js.map +0 -1
- package/dist/index.cjs274.js +0 -2
- package/dist/index.cjs274.js.map +0 -1
- package/dist/index.cjs285.js +0 -2
- package/dist/index.cjs285.js.map +0 -1
- package/dist/index.cjs286.js +0 -2
- package/dist/index.cjs286.js.map +0 -1
- package/dist/index.cjs287.js +0 -2
- package/dist/index.cjs287.js.map +0 -1
- package/dist/index.es273.js +0 -30
- package/dist/index.es273.js.map +0 -1
- package/dist/index.es274.js +0 -71
- package/dist/index.es274.js.map +0 -1
- package/dist/index.es285.js +0 -128
- package/dist/index.es285.js.map +0 -1
- package/dist/index.es286.js +0 -138
- package/dist/index.es286.js.map +0 -1
- package/dist/index.es287.js +0 -17
- package/dist/index.es287.js.map +0 -1
package/dist/index.es330.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es330.js","sources":["../node_modules/
|
1
|
+
{"version":3,"file":"index.es330.js","sources":["../node_modules/react-remove-scroll/dist/es2015/handleScroll.js"],"sourcesContent":["var alwaysContainsScroll = function (node) {\n // textarea will always _contain_ scroll inside self. It only can be hidden\n return node.tagName === 'TEXTAREA';\n};\nvar elementCanBeScrolled = function (node, overflow) {\n if (!(node instanceof Element)) {\n return false;\n }\n var styles = window.getComputedStyle(node);\n return (\n // not-not-scrollable\n styles[overflow] !== 'hidden' &&\n // contains scroll inside self\n !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible'));\n};\nvar elementCouldBeVScrolled = function (node) { return elementCanBeScrolled(node, 'overflowY'); };\nvar elementCouldBeHScrolled = function (node) { return elementCanBeScrolled(node, 'overflowX'); };\nexport var locationCouldBeScrolled = function (axis, node) {\n var ownerDocument = node.ownerDocument;\n var current = node;\n do {\n // Skip over shadow root\n if (typeof ShadowRoot !== 'undefined' && current instanceof ShadowRoot) {\n current = current.host;\n }\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), scrollHeight = _a[1], clientHeight = _a[2];\n if (scrollHeight > clientHeight) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== ownerDocument.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [\n scrollTop,\n scrollHeight,\n clientHeight,\n ];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [\n scrollLeft,\n scrollWidth,\n clientWidth,\n ];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nvar getDirectionFactor = function (axis, direction) {\n /**\n * If the element's direction is rtl (right-to-left), then scrollLeft is 0 when the scrollbar is at its rightmost position,\n * and then increasingly negative as you scroll towards the end of the content.\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft\n */\n return axis === 'h' && direction === 'rtl' ? -1 : 1;\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var directionFactor = getDirectionFactor(axis, window.getComputedStyle(endTarget).direction);\n var delta = directionFactor * sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - directionFactor * position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n if (target instanceof ShadowRoot) {\n target = target.host;\n }\n else {\n target = target.parentNode;\n }\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n // handle epsilon around 0 (non standard zoom levels)\n if (isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScroll) < 1) || (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScrollTop) < 1) || (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n"],"names":["alwaysContainsScroll","node","elementCanBeScrolled","overflow","styles","elementCouldBeVScrolled","elementCouldBeHScrolled","locationCouldBeScrolled","axis","ownerDocument","current","isScrollable","elementCouldBeScrolled","_a","getScrollVariables","scrollHeight","clientHeight","getVScrollVariables","scrollTop","getHScrollVariables","scrollLeft","scrollWidth","clientWidth","getDirectionFactor","direction","handleScroll","endTarget","event","sourceDelta","noOverscroll","directionFactor","delta","target","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","position","scroll_1","capacity","elementScroll"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/index.es55.js
CHANGED
@@ -1,42 +1,43 @@
|
|
1
1
|
import { j as r } from "./index.es154.js";
|
2
|
-
import { Avatar as
|
3
|
-
import { Divider as
|
4
|
-
import { Button as
|
2
|
+
import { Avatar as t } from "./index.es56.js";
|
3
|
+
import { Divider as C } from "./index.es173.js";
|
4
|
+
import { Button as p } from "./index.es25.js";
|
5
5
|
import './components/ui/CardDoctor/CardDoctor.css';/* empty css */
|
6
|
-
import { Row as
|
7
|
-
import { Col as
|
8
|
-
const
|
6
|
+
import { Row as k } from "./index.es9.js";
|
7
|
+
import { Col as D } from "./index.es10.js";
|
8
|
+
const B = ({
|
9
9
|
titleTag: h = "h3",
|
10
10
|
doctorName: a,
|
11
11
|
specialties: d,
|
12
|
-
contactInfo:
|
12
|
+
contactInfo: m,
|
13
13
|
schedule: s,
|
14
14
|
avatar: i,
|
15
|
+
avatarSize: n = "3",
|
15
16
|
button: e
|
16
17
|
}) => {
|
17
|
-
const
|
18
|
+
const x = () => m && (m == null ? void 0 : m.length) > 0, c = () => {
|
18
19
|
var l;
|
19
20
|
return s && ((l = s == null ? void 0 : s.days) == null ? void 0 : l.length) > 0;
|
20
|
-
},
|
21
|
+
}, w = () => (e == null ? void 0 : e.label) && (e == null ? void 0 : e.onClick), g = () => x() || c();
|
21
22
|
return /* @__PURE__ */ r.jsxs("article", { className: "bg-white shadow br-x4 ui-card-doctor", children: [
|
22
|
-
/* @__PURE__ */ r.jsxs(
|
23
|
+
/* @__PURE__ */ r.jsxs(k, { as: "header", gap: "x16", children: [
|
23
24
|
i && /* @__PURE__ */ r.jsx(
|
24
|
-
|
25
|
+
t,
|
25
26
|
{
|
26
27
|
textColor: (i == null ? void 0 : i.textColor) ?? "slate-20",
|
27
28
|
bg: (i == null ? void 0 : i.bg) ?? "lightblue-a01",
|
28
29
|
initials: (i == null ? void 0 : i.initials) ?? "",
|
29
30
|
className: "ui-card-doctor-avatar",
|
30
|
-
size:
|
31
|
+
size: n
|
31
32
|
}
|
32
33
|
),
|
33
34
|
/* @__PURE__ */ r.jsxs("div", { children: [
|
34
|
-
/* @__PURE__ */ r.jsx(h, { className: "fs-5 fw-semibold text-slate-20", children: a }),
|
35
|
+
/* @__PURE__ */ r.jsx(h, { className: "fs-5 md-fs-custom-2 fw-semibold text-slate-20", children: a }),
|
35
36
|
d && (d == null ? void 0 : d.length) > 0 && /* @__PURE__ */ r.jsx("p", { className: "fs-6 text-slate-20 fw-regular", children: d == null ? void 0 : d.join(" | ") })
|
36
37
|
] })
|
37
38
|
] }),
|
38
39
|
/* @__PURE__ */ r.jsxs("div", { className: "ui-card-doctor-content", children: [
|
39
|
-
|
40
|
+
x() && /* @__PURE__ */ r.jsx("dl", { className: "ui-card-doctor-contact-info", children: m == null ? void 0 : m.map((l) => /* @__PURE__ */ r.jsxs(
|
40
41
|
"div",
|
41
42
|
{
|
42
43
|
role: "group",
|
@@ -48,10 +49,10 @@ const A = ({
|
|
48
49
|
},
|
49
50
|
l.label
|
50
51
|
)) }),
|
51
|
-
|
52
|
+
g() && /* @__PURE__ */ r.jsx(C, { bg: "border-divider", className: "ui-card-doctor-divider" }),
|
52
53
|
c() && /* @__PURE__ */ r.jsxs("div", { children: [
|
53
54
|
/* @__PURE__ */ r.jsx("h3", { className: "text-align-left fw-bold text-slate-28 mb-x8 fw-5", children: s == null ? void 0 : s.label }),
|
54
|
-
/* @__PURE__ */ r.jsx("div", { role: "table", className: "ui-card-doctor-table", children: s == null ? void 0 : s.days.map((l,
|
55
|
+
/* @__PURE__ */ r.jsx("div", { role: "table", className: "ui-card-doctor-table", children: s == null ? void 0 : s.days.map((l, N) => {
|
55
56
|
var j;
|
56
57
|
return /* @__PURE__ */ r.jsxs("div", { role: "row", className: "ui-card-doctor-row", children: [
|
57
58
|
/* @__PURE__ */ r.jsx(
|
@@ -63,29 +64,29 @@ const A = ({
|
|
63
64
|
}
|
64
65
|
),
|
65
66
|
/* @__PURE__ */ r.jsxs(
|
66
|
-
|
67
|
+
D,
|
67
68
|
{
|
68
69
|
role: "cell",
|
69
70
|
className: "fs-6 fw-regular text-slate-28",
|
70
71
|
children: [
|
71
72
|
((j = l == null ? void 0 : l.slots) == null ? void 0 : j.length) === 0 && /* @__PURE__ */ r.jsx("div", { children: /* @__PURE__ */ r.jsx("span", { "aria-hidden": "true", children: "-" }) }),
|
72
|
-
l.slots.map((
|
73
|
-
/* @__PURE__ */ r.jsx("time", { dateTime:
|
73
|
+
l.slots.map((o, f) => /* @__PURE__ */ r.jsxs("div", { children: [
|
74
|
+
/* @__PURE__ */ r.jsx("time", { dateTime: o.from, children: o.from }),
|
74
75
|
/* @__PURE__ */ r.jsx("span", { "aria-hidden": "true", children: " - " }),
|
75
|
-
/* @__PURE__ */ r.jsx("time", { dateTime:
|
76
|
-
] }, `slot-${
|
76
|
+
/* @__PURE__ */ r.jsx("time", { dateTime: o.to, children: o.to })
|
77
|
+
] }, `slot-${f}`))
|
77
78
|
]
|
78
79
|
},
|
79
|
-
`cell-${
|
80
|
+
`cell-${N}`
|
80
81
|
)
|
81
82
|
] }, l.label);
|
82
83
|
}) })
|
83
84
|
] })
|
84
85
|
] }),
|
85
|
-
|
86
|
+
w() && /* @__PURE__ */ r.jsx("footer", { children: /* @__PURE__ */ r.jsx(p, { className: "ui-card-doctor-btn", onClick: e == null ? void 0 : e.onClick, children: e == null ? void 0 : e.label }) })
|
86
87
|
] });
|
87
88
|
};
|
88
89
|
export {
|
89
|
-
|
90
|
+
B as CardDoctor
|
90
91
|
};
|
91
92
|
//# sourceMappingURL=index.es55.js.map
|
package/dist/index.es55.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es55.js","sources":["../src/components/ui/CardDoctor/index.tsx"],"sourcesContent":["import { DayHours } from \"@anoki/fse-common\";\r\nimport { Avatar } from \"../Avatar\";\r\nimport { ColorKeys } from \"@/theme/colors\";\r\nimport { Divider } from \"../Divider\";\r\nimport { Button } from \"../Button\";\r\nimport \"./CardDoctor.scss\";\r\nimport { Col, Row } from \"@/components\";\r\n\r\ntype HeadingLevel = \"h2\" | \"h3\" | \"h4\";\r\ntype Info = {\r\n label: string;\r\n value: string;\r\n};\r\n\r\ntype ScheduleDay = {\r\n label: string;\r\n slots: DayHours[];\r\n};\r\n\r\ntype CardDoctorProps = {\r\n titleTag?: HeadingLevel;\r\n doctorName: string;\r\n specialties?: string[];\r\n contactInfo?: Info[];\r\n schedule?: {\r\n label: string;\r\n days: ScheduleDay[];\r\n };\r\n avatar?: {\r\n initials: string;\r\n bg?: ColorKeys;\r\n textColor?: ColorKeys;\r\n };\r\n button?: {\r\n label: string;\r\n onClick: () => void;\r\n };\r\n};\r\n\r\nexport const CardDoctor = ({\r\n titleTag: TitleTag = \"h3\",\r\n doctorName,\r\n specialties,\r\n contactInfo,\r\n schedule,\r\n avatar,\r\n button,\r\n}: CardDoctorProps) => {\r\n const showContactInfo = () => {\r\n return contactInfo && contactInfo?.length > 0;\r\n };\r\n\r\n const showSchedule = () => {\r\n return schedule && schedule?.days?.length > 0;\r\n };\r\n\r\n const showFooter = () => {\r\n return button?.label && button?.onClick;\r\n };\r\n\r\n const showDivider = () => {\r\n return showContactInfo() || showSchedule();\r\n };\r\n\r\n return (\r\n <article className=\"bg-white shadow br-x4 ui-card-doctor\">\r\n <Row as={\"header\"} gap={\"x16\"}>\r\n {avatar && (\r\n <Avatar\r\n textColor={avatar?.textColor ?? \"slate-20\"}\r\n bg={avatar?.bg ?? \"lightblue-a01\"}\r\n initials={avatar?.initials ?? \"\"}\r\n className=\"ui-card-doctor-avatar\"\r\n size
|
1
|
+
{"version":3,"file":"index.es55.js","sources":["../src/components/ui/CardDoctor/index.tsx"],"sourcesContent":["import { DayHours } from \"@anoki/fse-common\";\r\nimport { Avatar, AvatarSize } from \"../Avatar\";\r\nimport { ColorKeys } from \"@/theme/colors\";\r\nimport { Divider } from \"../Divider\";\r\nimport { Button } from \"../Button\";\r\nimport \"./CardDoctor.scss\";\r\nimport { Col, Row } from \"@/components\";\r\n\r\ntype HeadingLevel = \"h2\" | \"h3\" | \"h4\";\r\ntype Info = {\r\n label: string;\r\n value: string;\r\n};\r\n\r\ntype ScheduleDay = {\r\n label: string;\r\n slots: DayHours[];\r\n};\r\n\r\ntype CardDoctorProps = {\r\n titleTag?: HeadingLevel;\r\n doctorName: string;\r\n specialties?: string[];\r\n contactInfo?: Info[];\r\n schedule?: {\r\n label: string;\r\n days: ScheduleDay[];\r\n };\r\n avatar?: {\r\n initials: string;\r\n bg?: ColorKeys;\r\n textColor?: ColorKeys;\r\n };\r\n avatarSize?: AvatarSize;\r\n button?: {\r\n label: string;\r\n onClick: () => void;\r\n };\r\n};\r\n\r\nexport const CardDoctor = ({\r\n titleTag: TitleTag = \"h3\",\r\n doctorName,\r\n specialties,\r\n contactInfo,\r\n schedule,\r\n avatar,\r\n avatarSize = \"3\",\r\n button,\r\n}: CardDoctorProps) => {\r\n const showContactInfo = () => {\r\n return contactInfo && contactInfo?.length > 0;\r\n };\r\n\r\n const showSchedule = () => {\r\n return schedule && schedule?.days?.length > 0;\r\n };\r\n\r\n const showFooter = () => {\r\n return button?.label && button?.onClick;\r\n };\r\n\r\n const showDivider = () => {\r\n return showContactInfo() || showSchedule();\r\n };\r\n\r\n return (\r\n <article className=\"bg-white shadow br-x4 ui-card-doctor\">\r\n <Row as={\"header\"} gap={\"x16\"}>\r\n {avatar && (\r\n <Avatar\r\n textColor={avatar?.textColor ?? \"slate-20\"}\r\n bg={avatar?.bg ?? \"lightblue-a01\"}\r\n initials={avatar?.initials ?? \"\"}\r\n className=\"ui-card-doctor-avatar\"\r\n size={avatarSize}\r\n />\r\n )}\r\n\r\n <div>\r\n <TitleTag className=\"fs-5 md-fs-custom-2 fw-semibold text-slate-20\">\r\n {doctorName}\r\n </TitleTag>\r\n {specialties && specialties?.length > 0 && (\r\n <p className=\"fs-6 text-slate-20 fw-regular\">\r\n {specialties?.join(\" | \")}\r\n </p>\r\n )}\r\n </div>\r\n </Row>\r\n <div className=\"ui-card-doctor-content\">\r\n {showContactInfo() && (\r\n <dl className=\"ui-card-doctor-contact-info\">\r\n {contactInfo?.map((info) => (\r\n <div\r\n key={info.label}\r\n role=\"group\"\r\n className=\"ui-card-doctor-contact-detail\"\r\n >\r\n <dt className=\"fs-6 fw-bold text-slate-28\">{info.label}</dt>\r\n <dd className=\"fs-6 fw-regular text-slate-28\">{info.value}</dd>\r\n </div>\r\n ))}\r\n </dl>\r\n )}\r\n {showDivider() && (\r\n <Divider bg=\"border-divider\" className=\"ui-card-doctor-divider\" />\r\n )}\r\n\r\n {showSchedule() && (\r\n <div>\r\n <h3 className=\"text-align-left fw-bold text-slate-28 mb-x8 fw-5\">\r\n {schedule?.label}\r\n </h3>\r\n\r\n <div role=\"table\" className=\"ui-card-doctor-table\">\r\n {schedule?.days.map((day, dayIndex) => (\r\n <div key={day.label} role=\"row\" className=\"ui-card-doctor-row\">\r\n <div\r\n className=\"fs-6 fw-regular text-slate-28\"\r\n role=\"rowheader\"\r\n >\r\n {day.label}\r\n </div>\r\n <Col\r\n role=\"cell\"\r\n key={`cell-${dayIndex}`}\r\n className=\"fs-6 fw-regular text-slate-28\"\r\n >\r\n {day?.slots?.length === 0 && (\r\n <div>\r\n <span aria-hidden=\"true\">-</span>\r\n </div>\r\n )}\r\n {day.slots.map((slot, slotIndex) => (\r\n <div key={`slot-${slotIndex}`}>\r\n <time dateTime={slot.from}>{slot.from}</time>\r\n <span aria-hidden=\"true\"> - </span>\r\n <time dateTime={slot.to}>{slot.to}</time>\r\n </div>\r\n ))}\r\n </Col>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n {showFooter() && (\r\n <footer>\r\n <Button className=\"ui-card-doctor-btn\" onClick={button?.onClick}>\r\n {button?.label}\r\n </Button>\r\n </footer>\r\n )}\r\n </article>\r\n );\r\n};\r\n"],"names":["CardDoctor","TitleTag","doctorName","specialties","contactInfo","schedule","avatar","avatarSize","button","showContactInfo","showSchedule","_a","showFooter","showDivider","jsxs","Row","jsx","Avatar","info","Divider","day","dayIndex","Col","slot","slotIndex","Button"],"mappings":"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"}
|
package/dist/index.es56.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es56.js","sources":["../src/components/ui/Avatar/index.tsx"],"sourcesContent":["import { ColorKeys, createColorClasses } from \"@/theme/colors\";\r\nimport clsx from \"clsx\";\r\n\r\
|
1
|
+
{"version":3,"file":"index.es56.js","sources":["../src/components/ui/Avatar/index.tsx"],"sourcesContent":["import { ColorKeys, createColorClasses } from \"@/theme/colors\";\r\nimport clsx from \"clsx\";\r\n\r\nexport type AvatarSize = \"1\" | \"2\" | \"3\";\r\n\r\ntype AvatarProps = {\r\n initials: string;\r\n bg?: ColorKeys;\r\n textColor?: ColorKeys;\r\n size?: AvatarSize;\r\n className?: string;\r\n};\r\n\r\nexport const Avatar = ({\r\n initials,\r\n bg,\r\n textColor,\r\n size = \"2\",\r\n className,\r\n}: AvatarProps) => {\r\n const colorClasses = createColorClasses({\r\n bg,\r\n text: textColor,\r\n });\r\n\r\n const AVATAR_SIZES = {\r\n \"1\": \"w-x64 h-x64 fs-5\",\r\n \"2\": \"w-x48 h-x48 fs-6\",\r\n \"3\": \"w-x32 h-x32 fs-7\",\r\n };\r\n\r\n const baseClasses = clsx(\r\n \"rounded-full base-row justify-content-center align-items-center p-x4\",\r\n AVATAR_SIZES[size],\r\n colorClasses,\r\n className,\r\n );\r\n\r\n return (\r\n <div className={baseClasses} aria-hidden=\"true\">\r\n <span className=\"fw-semibold\">{initials}</span>\r\n </div>\r\n );\r\n};\r\n"],"names":["Avatar","initials","bg","textColor","size","className","colorClasses","createColorClasses","baseClasses","clsx","jsx"],"mappings":";;;AAaO,MAAMA,IAAS,CAAC;AAAA,EACrB,UAAAC;AAAA,EACA,IAAAC;AAAA,EACA,WAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,WAAAC;AACF,MAAmB;AACjB,QAAMC,IAAeC,EAAmB;AAAA,IACtC,IAAAL;AAAA,IACA,MAAMC;AAAA,EAAA,CACP,GAQKK,IAAcC;AAAA,IAClB;AAAA,IAPmB;AAAA,MACnB,GAAK;AAAA,MACL,GAAK;AAAA,MACL,GAAK;AAAA,IACP,EAIeL,CAAI;AAAA,IACjBE;AAAA,IACAD;AAAA,EACF;AAGE,SAAAK,gBAAAA,EAAAA,IAAC,OAAI,EAAA,WAAWF,GAAa,eAAY,QACvC,UAAAE,gBAAAA,EAAAA,IAAC,QAAK,EAAA,WAAU,eAAe,UAAAT,EAAS,CAAA,GAC1C;AAEJ;"}
|