asterui 0.12.49 → 0.12.51
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/components/Alert.js +18 -18
- package/dist/components/Alert.js.map +1 -1
- package/dist/components/Autocomplete.js +115 -114
- package/dist/components/Autocomplete.js.map +1 -1
- package/dist/components/Avatar.js +33 -32
- package/dist/components/Avatar.js.map +1 -1
- package/dist/components/Badge.js +99 -99
- package/dist/components/Badge.js.map +1 -1
- package/dist/components/Breadcrumb.js +12 -11
- package/dist/components/Breadcrumb.js.map +1 -1
- package/dist/components/Browser.js +10 -10
- package/dist/components/Browser.js.map +1 -1
- package/dist/components/Button.js +80 -79
- package/dist/components/Button.js.map +1 -1
- package/dist/components/Card.d.ts +2 -0
- package/dist/components/Card.js +111 -110
- package/dist/components/Card.js.map +1 -1
- package/dist/components/Carousel.js +59 -59
- package/dist/components/Carousel.js.map +1 -1
- package/dist/components/Cascader.js +175 -174
- package/dist/components/Cascader.js.map +1 -1
- package/dist/components/Chat.js +27 -27
- package/dist/components/Chat.js.map +1 -1
- package/dist/components/Checkbox.js +98 -97
- package/dist/components/Checkbox.js.map +1 -1
- package/dist/components/Code.js +11 -11
- package/dist/components/Code.js.map +1 -1
- package/dist/components/Collapse.js +46 -46
- package/dist/components/Collapse.js.map +1 -1
- package/dist/components/ColorPicker.d.ts +1 -1
- package/dist/components/ColorPicker.js +93 -91
- package/dist/components/ColorPicker.js.map +1 -1
- package/dist/components/Command.js +120 -120
- package/dist/components/Command.js.map +1 -1
- package/dist/components/ConfigProvider.d.ts +1 -1
- package/dist/components/ConfigProvider.js +9 -9
- package/dist/components/ConfigProvider.js.map +1 -1
- package/dist/components/ContextMenu.js +33 -33
- package/dist/components/ContextMenu.js.map +1 -1
- package/dist/components/CopyButton.js +74 -73
- package/dist/components/CopyButton.js.map +1 -1
- package/dist/components/Countdown.js +60 -59
- package/dist/components/Countdown.js.map +1 -1
- package/dist/components/DatePicker.d.ts +1 -1
- package/dist/components/DatePicker.js +54 -53
- package/dist/components/DatePicker.js.map +1 -1
- package/dist/components/Diff.js +10 -10
- package/dist/components/Diff.js.map +1 -1
- package/dist/components/Divider.js +21 -20
- package/dist/components/Divider.js.map +1 -1
- package/dist/components/Dock.js +28 -27
- package/dist/components/Dock.js.map +1 -1
- package/dist/components/Drawer.js +43 -43
- package/dist/components/Drawer.js.map +1 -1
- package/dist/components/Dropdown.js +127 -127
- package/dist/components/Dropdown.js.map +1 -1
- package/dist/components/Empty.js +16 -15
- package/dist/components/Empty.js.map +1 -1
- package/dist/components/Fieldset.js +11 -10
- package/dist/components/Fieldset.js.map +1 -1
- package/dist/components/FileInput.js +30 -29
- package/dist/components/FileInput.js.map +1 -1
- package/dist/components/Filter.d.ts +1 -1
- package/dist/components/Filter.js +32 -30
- package/dist/components/Filter.js.map +1 -1
- package/dist/components/FloatButton.js +83 -83
- package/dist/components/FloatButton.js.map +1 -1
- package/dist/components/Footer.js +14 -13
- package/dist/components/Footer.js.map +1 -1
- package/dist/components/Form.js +133 -132
- package/dist/components/Form.js.map +1 -1
- package/dist/components/Hero.js +12 -11
- package/dist/components/Hero.js.map +1 -1
- package/dist/components/HoverGallery.js +7 -7
- package/dist/components/HoverGallery.js.map +1 -1
- package/dist/components/Image.js +40 -40
- package/dist/components/Image.js.map +1 -1
- package/dist/components/Input.js +171 -169
- package/dist/components/Input.js.map +1 -1
- package/dist/components/InputNumber.js +84 -83
- package/dist/components/InputNumber.js.map +1 -1
- package/dist/components/Join.js +11 -10
- package/dist/components/Join.js.map +1 -1
- package/dist/components/Kbd.js +15 -15
- package/dist/components/Kbd.js.map +1 -1
- package/dist/components/List.d.ts +1 -1
- package/dist/components/List.js +75 -72
- package/dist/components/List.js.map +1 -1
- package/dist/components/Loading.d.ts +1 -1
- package/dist/components/Loading.js +31 -29
- package/dist/components/Loading.js.map +1 -1
- package/dist/components/Mask.js +31 -31
- package/dist/components/Mask.js.map +1 -1
- package/dist/components/Mention.js +61 -61
- package/dist/components/Mention.js.map +1 -1
- package/dist/components/Menu.js +84 -84
- package/dist/components/Menu.js.map +1 -1
- package/dist/components/Message.js +30 -29
- package/dist/components/Message.js.map +1 -1
- package/dist/components/Modal.js +117 -116
- package/dist/components/Modal.js.map +1 -1
- package/dist/components/MonthCalendar.d.ts +31 -0
- package/dist/components/MonthCalendar.js +205 -0
- package/dist/components/MonthCalendar.js.map +1 -0
- package/dist/components/Navbar.js +25 -25
- package/dist/components/Navbar.js.map +1 -1
- package/dist/components/Notification.js +56 -55
- package/dist/components/Notification.js.map +1 -1
- package/dist/components/OTPInput.js +69 -68
- package/dist/components/OTPInput.js.map +1 -1
- package/dist/components/Pagination.d.ts +1 -1
- package/dist/components/Pagination.js +60 -58
- package/dist/components/Pagination.js.map +1 -1
- package/dist/components/Phone.js +10 -10
- package/dist/components/Phone.js.map +1 -1
- package/dist/components/Popconfirm.js +60 -60
- package/dist/components/Popconfirm.js.map +1 -1
- package/dist/components/Progress.js +17 -17
- package/dist/components/Progress.js.map +1 -1
- package/dist/components/QRCode.js +23 -23
- package/dist/components/QRCode.js.map +1 -1
- package/dist/components/RadialProgress.js +17 -17
- package/dist/components/RadialProgress.js.map +1 -1
- package/dist/components/Radio.js +41 -40
- package/dist/components/Radio.js.map +1 -1
- package/dist/components/Range.d.ts +1 -1
- package/dist/components/Range.js +39 -37
- package/dist/components/Range.js.map +1 -1
- package/dist/components/Rating.js +79 -78
- package/dist/components/Rating.js.map +1 -1
- package/dist/components/ResponsiveDrawer.js +27 -27
- package/dist/components/ResponsiveDrawer.js.map +1 -1
- package/dist/components/RichTextEditor.d.ts +32 -0
- package/dist/components/RichTextEditor.js +335 -0
- package/dist/components/RichTextEditor.js.map +1 -0
- package/dist/components/Segmented.d.ts +1 -1
- package/dist/components/Segmented.js +48 -46
- package/dist/components/Segmented.js.map +1 -1
- package/dist/components/Select.js +55 -54
- package/dist/components/Select.js.map +1 -1
- package/dist/components/Skeleton.js +9 -9
- package/dist/components/Skeleton.js.map +1 -1
- package/dist/components/Splitter.js +1 -3
- package/dist/components/Splitter.js.map +1 -1
- package/dist/components/Stat.js +17 -16
- package/dist/components/Stat.js.map +1 -1
- package/dist/components/Status.js +29 -29
- package/dist/components/Status.js.map +1 -1
- package/dist/components/Steps.js +61 -61
- package/dist/components/Steps.js.map +1 -1
- package/dist/components/Table.js +256 -256
- package/dist/components/Table.js.map +1 -1
- package/dist/components/Tabs.js +65 -65
- package/dist/components/Tabs.js.map +1 -1
- package/dist/components/Tag.js +147 -147
- package/dist/components/Tag.js.map +1 -1
- package/dist/components/TextRotate.js +6 -6
- package/dist/components/TextRotate.js.map +1 -1
- package/dist/components/Textarea.js +35 -34
- package/dist/components/Textarea.js.map +1 -1
- package/dist/components/ThemeController.d.ts +1 -1
- package/dist/components/ThemeController.js +71 -68
- package/dist/components/ThemeController.js.map +1 -1
- package/dist/components/TimePicker.d.ts +1 -1
- package/dist/components/TimePicker.js +133 -129
- package/dist/components/TimePicker.js.map +1 -1
- package/dist/components/Timeline.js +79 -79
- package/dist/components/Timeline.js.map +1 -1
- package/dist/components/Toggle.js +33 -32
- package/dist/components/Toggle.js.map +1 -1
- package/dist/components/Tooltip.js +25 -25
- package/dist/components/Tooltip.js.map +1 -1
- package/dist/components/Tour.js +126 -126
- package/dist/components/Tour.js.map +1 -1
- package/dist/components/Transfer.js +93 -92
- package/dist/components/Transfer.js.map +1 -1
- package/dist/components/Tree.js +200 -200
- package/dist/components/Tree.js.map +1 -1
- package/dist/components/TreeSelect.js +255 -254
- package/dist/components/TreeSelect.js.map +1 -1
- package/dist/components/Typography.js +71 -70
- package/dist/components/Typography.js.map +1 -1
- package/dist/components/Upload.js +81 -81
- package/dist/components/Upload.js.map +1 -1
- package/dist/components/WeekCalendar.d.ts +35 -0
- package/dist/components/WeekCalendar.js +204 -0
- package/dist/components/WeekCalendar.js.map +1 -0
- package/dist/components/Window.js +7 -7
- package/dist/components/Window.js.map +1 -1
- package/dist/editor.d.ts +1 -0
- package/dist/editor.js +5 -0
- package/dist/editor.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +211 -207
- package/dist/index.js.map +1 -1
- package/package.json +30 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
2
|
-
import
|
|
3
|
-
import { Loading as
|
|
4
|
-
const k = {
|
|
1
|
+
import { jsx as e, jsxs as b } from "react/jsx-runtime";
|
|
2
|
+
import z, { forwardRef as _, useMemo as L } from "react";
|
|
3
|
+
import { Loading as M } from "./Loading.js";
|
|
4
|
+
const V = "timeline", $ = "timeline-vertical", k = "timeline-horizontal", F = "timeline-compact", H = "timeline-snap-icon", P = "timeline-start", W = "timeline-end", q = "timeline-middle", S = "timeline-box", D = {
|
|
5
5
|
primary: "text-primary",
|
|
6
6
|
secondary: "text-secondary",
|
|
7
7
|
accent: "text-accent",
|
|
@@ -10,7 +10,7 @@ const k = {
|
|
|
10
10
|
warning: "text-warning",
|
|
11
11
|
error: "text-error",
|
|
12
12
|
neutral: "text-neutral"
|
|
13
|
-
},
|
|
13
|
+
}, G = {
|
|
14
14
|
primary: "bg-primary",
|
|
15
15
|
secondary: "bg-secondary",
|
|
16
16
|
accent: "bg-accent",
|
|
@@ -19,120 +19,120 @@ const k = {
|
|
|
19
19
|
warning: "bg-warning",
|
|
20
20
|
error: "bg-error",
|
|
21
21
|
neutral: "bg-neutral"
|
|
22
|
-
},
|
|
22
|
+
}, B = _(
|
|
23
23
|
({
|
|
24
|
-
start:
|
|
25
|
-
end:
|
|
26
|
-
icon:
|
|
27
|
-
startBox:
|
|
28
|
-
endBox:
|
|
24
|
+
start: s,
|
|
25
|
+
end: n,
|
|
26
|
+
icon: C,
|
|
27
|
+
startBox: p = !1,
|
|
28
|
+
endBox: j = !1,
|
|
29
29
|
color: r,
|
|
30
|
-
loading:
|
|
30
|
+
loading: w = !1,
|
|
31
31
|
className: d = "",
|
|
32
32
|
"data-testid": I,
|
|
33
33
|
_index: c = 0,
|
|
34
|
-
_total:
|
|
35
|
-
_compact:
|
|
34
|
+
_total: x = 1,
|
|
35
|
+
_compact: T = !1,
|
|
36
36
|
_vertical: E = !1,
|
|
37
37
|
_mode: m = "alternate",
|
|
38
38
|
_baseTestId: y,
|
|
39
39
|
...h
|
|
40
40
|
}, v) => {
|
|
41
|
-
const f = I ?? (y ? `${y}-item-${c}` : void 0),
|
|
42
|
-
return
|
|
43
|
-
!o && /* @__PURE__ */ e("hr", { className:
|
|
41
|
+
const f = I ?? (y ? `${y}-item-${c}` : void 0), a = [P, p && S].filter(Boolean).join(" "), l = [W, j && S].filter(Boolean).join(" "), u = [q, r && D[r]].filter(Boolean).join(" "), i = r ? G[r] : void 0, o = c === 0, R = c === x - 1, O = c % 2 === 0, N = m === "start" || m === "alternate" && !O, g = m === "end" || m === "alternate" && O, t = w ? /* @__PURE__ */ e(M, { size: "xs" }) : C;
|
|
42
|
+
return T ? /* @__PURE__ */ b("li", { ref: v, className: d, "data-testid": f, ...h, children: [
|
|
43
|
+
!o && /* @__PURE__ */ e("hr", { className: i }),
|
|
44
44
|
t && /* @__PURE__ */ e("div", { className: u, children: t }),
|
|
45
|
-
|
|
46
|
-
!R && /* @__PURE__ */ e("hr", { className:
|
|
47
|
-
] }) : E ? /* @__PURE__ */
|
|
48
|
-
!o && /* @__PURE__ */ e("hr", { className:
|
|
49
|
-
N &&
|
|
50
|
-
g && !N &&
|
|
45
|
+
n && /* @__PURE__ */ e("div", { className: l, children: n }),
|
|
46
|
+
!R && /* @__PURE__ */ e("hr", { className: i })
|
|
47
|
+
] }) : E ? /* @__PURE__ */ b("li", { ref: v, className: d, "data-testid": f, ...h, children: [
|
|
48
|
+
!o && /* @__PURE__ */ e("hr", { className: i }),
|
|
49
|
+
N && s && /* @__PURE__ */ e("div", { className: a, children: s }),
|
|
50
|
+
g && !N && n && /* @__PURE__ */ e("div", { className: a, children: n }),
|
|
51
51
|
t && /* @__PURE__ */ e("div", { className: u, children: t }),
|
|
52
|
-
g &&
|
|
53
|
-
(N || !N && !g) &&
|
|
54
|
-
!N && g &&
|
|
55
|
-
!R && /* @__PURE__ */ e("hr", { className:
|
|
56
|
-
] }) : g ? /* @__PURE__ */
|
|
57
|
-
|
|
52
|
+
g && s && !N && /* @__PURE__ */ e("div", { className: l, children: s }),
|
|
53
|
+
(N || !N && !g) && n && /* @__PURE__ */ e("div", { className: l, children: n }),
|
|
54
|
+
!N && g && s && /* @__PURE__ */ e("div", { className: l, children: s }),
|
|
55
|
+
!R && /* @__PURE__ */ e("hr", { className: i })
|
|
56
|
+
] }) : g ? /* @__PURE__ */ b("li", { ref: v, className: d, "data-testid": f, ...h, children: [
|
|
57
|
+
s && /* @__PURE__ */ e("div", { className: a, children: s }),
|
|
58
58
|
t && /* @__PURE__ */ e("div", { className: u, children: t }),
|
|
59
|
-
|
|
60
|
-
!R && /* @__PURE__ */ e("hr", { className:
|
|
61
|
-
] }) : /* @__PURE__ */
|
|
62
|
-
!o && /* @__PURE__ */ e("hr", { className:
|
|
59
|
+
n && /* @__PURE__ */ e("div", { className: l, children: n }),
|
|
60
|
+
!R && /* @__PURE__ */ e("hr", { className: i })
|
|
61
|
+
] }) : /* @__PURE__ */ b("li", { ref: v, className: d, "data-testid": f, ...h, children: [
|
|
62
|
+
!o && /* @__PURE__ */ e("hr", { className: i }),
|
|
63
63
|
t && /* @__PURE__ */ e("div", { className: u, children: t }),
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
s && /* @__PURE__ */ e("div", { className: a, children: s }),
|
|
65
|
+
n && /* @__PURE__ */ e("div", { className: l, children: n })
|
|
66
66
|
] });
|
|
67
67
|
}
|
|
68
68
|
);
|
|
69
|
-
|
|
70
|
-
const A =
|
|
69
|
+
B.displayName = "Timeline.Item";
|
|
70
|
+
const A = _(
|
|
71
71
|
({
|
|
72
|
-
children:
|
|
73
|
-
items:
|
|
74
|
-
className:
|
|
75
|
-
vertical:
|
|
76
|
-
horizontal:
|
|
72
|
+
children: s,
|
|
73
|
+
items: n,
|
|
74
|
+
className: C = "",
|
|
75
|
+
vertical: p = !1,
|
|
76
|
+
horizontal: j = !1,
|
|
77
77
|
compact: r = !1,
|
|
78
|
-
snapIcon:
|
|
78
|
+
snapIcon: w = !1,
|
|
79
79
|
mode: d = "alternate",
|
|
80
80
|
reverse: I = !1,
|
|
81
81
|
pending: c,
|
|
82
|
-
pendingIcon:
|
|
83
|
-
"data-testid":
|
|
82
|
+
pendingIcon: x,
|
|
83
|
+
"data-testid": T = "timeline",
|
|
84
84
|
"aria-label": E,
|
|
85
85
|
...m
|
|
86
86
|
}, y) => {
|
|
87
87
|
const h = [
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
r &&
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
].filter(Boolean).join(" "), f = L(() =>
|
|
95
|
-
|
|
88
|
+
V,
|
|
89
|
+
p && $,
|
|
90
|
+
j && k,
|
|
91
|
+
r && F,
|
|
92
|
+
w && H,
|
|
93
|
+
C
|
|
94
|
+
].filter(Boolean).join(" "), f = L(() => n ? n.map((i, o) => /* @__PURE__ */ e(
|
|
95
|
+
B,
|
|
96
96
|
{
|
|
97
|
-
start:
|
|
98
|
-
end:
|
|
99
|
-
icon:
|
|
100
|
-
startBox:
|
|
101
|
-
endBox:
|
|
102
|
-
color:
|
|
103
|
-
loading:
|
|
104
|
-
className:
|
|
97
|
+
start: i.start,
|
|
98
|
+
end: i.end,
|
|
99
|
+
icon: i.icon,
|
|
100
|
+
startBox: i.startBox,
|
|
101
|
+
endBox: i.endBox,
|
|
102
|
+
color: i.color,
|
|
103
|
+
loading: i.loading,
|
|
104
|
+
className: i.className
|
|
105
105
|
},
|
|
106
|
-
|
|
107
|
-
)) : null, [
|
|
108
|
-
let
|
|
109
|
-
if (I && (
|
|
110
|
-
const
|
|
111
|
-
|
|
106
|
+
i.key ?? o
|
|
107
|
+
)) : null, [n]) ?? s;
|
|
108
|
+
let a = z.Children.toArray(f);
|
|
109
|
+
if (I && (a = [...a].reverse()), c) {
|
|
110
|
+
const i = /* @__PURE__ */ e(
|
|
111
|
+
B,
|
|
112
112
|
{
|
|
113
113
|
end: c,
|
|
114
114
|
endBox: !0,
|
|
115
|
-
icon:
|
|
116
|
-
loading: !
|
|
115
|
+
icon: x,
|
|
116
|
+
loading: !x
|
|
117
117
|
},
|
|
118
118
|
"__pending__"
|
|
119
119
|
);
|
|
120
|
-
|
|
120
|
+
a.push(i);
|
|
121
121
|
}
|
|
122
|
-
const
|
|
122
|
+
const l = a.length, u = a.map((i, o) => z.isValidElement(i) ? z.cloneElement(i, {
|
|
123
123
|
_index: o,
|
|
124
|
-
_total:
|
|
124
|
+
_total: l,
|
|
125
125
|
_compact: r,
|
|
126
|
-
_vertical:
|
|
126
|
+
_vertical: p,
|
|
127
127
|
_mode: d,
|
|
128
|
-
_baseTestId:
|
|
129
|
-
}) :
|
|
128
|
+
_baseTestId: T
|
|
129
|
+
}) : i);
|
|
130
130
|
return /* @__PURE__ */ e(
|
|
131
131
|
"ul",
|
|
132
132
|
{
|
|
133
133
|
ref: y,
|
|
134
134
|
className: h,
|
|
135
|
-
"data-testid":
|
|
135
|
+
"data-testid": T,
|
|
136
136
|
"aria-label": E,
|
|
137
137
|
role: "list",
|
|
138
138
|
...m,
|
|
@@ -142,10 +142,10 @@ const A = z(
|
|
|
142
142
|
}
|
|
143
143
|
);
|
|
144
144
|
A.displayName = "Timeline";
|
|
145
|
-
const
|
|
146
|
-
Item:
|
|
145
|
+
const U = Object.assign(A, {
|
|
146
|
+
Item: B
|
|
147
147
|
});
|
|
148
148
|
export {
|
|
149
|
-
|
|
149
|
+
U as Timeline
|
|
150
150
|
};
|
|
151
151
|
//# sourceMappingURL=Timeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.js","sources":["../../src/components/Timeline.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react'\nimport { Loading } from './Loading'\n\nexport type TimelineMode = 'start' | 'alternate' | 'end'\nexport type TimelineColor = 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error' | 'neutral'\n\nexport interface TimelineItemConfig {\n /** Unique key for the item */\n key?: React.Key\n /** Content at start position (left/top) */\n start?: React.ReactNode\n /** Content at end position (right/bottom) */\n end?: React.ReactNode\n /** Central icon or marker */\n icon?: React.ReactNode\n /** Wrap start content in timeline-box */\n startBox?: boolean\n /** Wrap end content in timeline-box */\n endBox?: boolean\n /** Color of the timeline dot/connector */\n color?: TimelineColor\n /** Show loading spinner instead of icon */\n loading?: boolean\n /** Additional CSS classes for this item */\n className?: string\n}\n\nexport interface TimelineProps extends Omit<React.HTMLAttributes<HTMLUListElement>, 'children'> {\n /** Timeline items (compound pattern) */\n children?: React.ReactNode\n /** Timeline items (declarative API) */\n items?: TimelineItemConfig[]\n /** Vertical layout orientation */\n vertical?: boolean\n /** Horizontal layout (default) */\n horizontal?: boolean\n /** All items on one side */\n compact?: boolean\n /** Snap icon to start instead of center */\n snapIcon?: boolean\n /** Item distribution layout */\n mode?: TimelineMode\n /** Reverse item order */\n reverse?: boolean\n /** Show pending/loading indicator at end */\n pending?: React.ReactNode\n /** Custom icon for pending item */\n pendingIcon?: React.ReactNode\n /** Test ID for the component */\n 'data-testid'?: string\n /** Accessible label for the timeline */\n 'aria-label'?: string\n}\n\n// Public props for Timeline.Item (excludes internal props)\nexport interface TimelineItemProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'color'> {\n /** Content at start position (left/top) */\n start?: React.ReactNode\n /** Content at end position (right/bottom) */\n end?: React.ReactNode\n /** Central icon or marker */\n icon?: React.ReactNode\n /** Wrap start content in timeline-box */\n startBox?: boolean\n /** Wrap end content in timeline-box */\n endBox?: boolean\n /** Color of the timeline dot/connector */\n color?: TimelineColor\n /** Show loading spinner instead of icon */\n loading?: boolean\n /** Test ID for this item */\n 'data-testid'?: string\n}\n\n// Internal props injected by Timeline container\ninterface TimelineItemInternalProps extends TimelineItemProps {\n _index?: number\n _total?: number\n _compact?: boolean\n _vertical?: boolean\n _mode?: TimelineMode\n _baseTestId?: string\n}\n\nconst colorClasses: Record<TimelineColor, string> = {\n primary: 'text-primary',\n secondary: 'text-secondary',\n accent: 'text-accent',\n info: 'text-info',\n success: 'text-success',\n warning: 'text-warning',\n error: 'text-error',\n neutral: 'text-neutral',\n}\n\nconst hrColorClasses: Record<TimelineColor, string> = {\n primary: 'bg-primary',\n secondary: 'bg-secondary',\n accent: 'bg-accent',\n info: 'bg-info',\n success: 'bg-success',\n warning: 'bg-warning',\n error: 'bg-error',\n neutral: 'bg-neutral',\n}\n\nconst TimelineItem = forwardRef<HTMLLIElement, TimelineItemInternalProps>(\n (\n {\n start,\n end,\n icon,\n startBox = false,\n endBox = false,\n color,\n loading = false,\n className = '',\n 'data-testid': testId,\n _index = 0,\n _total = 1,\n _compact = false,\n _vertical = false,\n _mode = 'alternate',\n _baseTestId,\n ...rest\n },\n ref\n ) => {\n const itemTestId = testId ?? (_baseTestId ? `${_baseTestId}-item-${_index}` : undefined)\n\n const startClasses = ['timeline-start', startBox && 'timeline-box'].filter(Boolean).join(' ')\n const endClasses = ['timeline-end', endBox && 'timeline-box'].filter(Boolean).join(' ')\n const middleClasses = ['timeline-middle', color && colorClasses[color]].filter(Boolean).join(' ')\n const hrClasses = color ? hrColorClasses[color] : undefined\n\n const isFirst = _index === 0\n const isLast = _index === _total - 1\n\n // Determine content placement based on mode\n const isEven = _index % 2 === 0\n const showOnStart = _mode === 'start' || (_mode === 'alternate' && !isEven)\n const showOnEnd = _mode === 'end' || (_mode === 'alternate' && isEven)\n\n // Render the icon or loading spinner\n const iconContent = loading ? (\n <Loading size=\"xs\" />\n ) : (\n icon\n )\n\n // Render connectors and content based on layout\n if (_compact) {\n // Compact layout: connector, icon, end content, connector\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {end && <div className={endClasses}>{end}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else if (_vertical) {\n // Vertical layout with mode support\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {showOnStart && start && <div className={startClasses}>{start}</div>}\n {showOnEnd && !showOnStart && end && <div className={startClasses}>{end}</div>}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {showOnEnd && start && !showOnStart && <div className={endClasses}>{start}</div>}\n {(showOnStart || (!showOnStart && !showOnEnd)) && end && <div className={endClasses}>{end}</div>}\n {!showOnStart && showOnEnd && start && <div className={endClasses}>{start}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else {\n // Horizontal alternating layout\n if (showOnEnd) {\n // Content on end side\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {start && <div className={startClasses}>{start}</div>}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {end && <div className={endClasses}>{end}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else {\n // Content on start side\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {start && <div className={startClasses}>{start}</div>}\n {end && <div className={endClasses}>{end}</div>}\n </li>\n )\n }\n }\n }\n)\n\nTimelineItem.displayName = 'Timeline.Item'\n\nconst TimelineRoot = forwardRef<HTMLUListElement, TimelineProps>(\n (\n {\n children,\n items,\n className = '',\n vertical = false,\n horizontal = false,\n compact = false,\n snapIcon = false,\n mode = 'alternate',\n reverse = false,\n pending,\n pendingIcon,\n 'data-testid': testId = 'timeline',\n 'aria-label': ariaLabel,\n ...rest\n },\n ref\n ) => {\n const classes = [\n 'timeline',\n vertical && 'timeline-vertical',\n horizontal && 'timeline-horizontal',\n compact && 'timeline-compact',\n snapIcon && 'timeline-snap-icon',\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Build items from declarative API if provided\n const declarativeItems = useMemo(() => {\n if (!items) return null\n return items.map((item, index) => (\n <TimelineItem\n key={item.key ?? index}\n start={item.start}\n end={item.end}\n icon={item.icon}\n startBox={item.startBox}\n endBox={item.endBox}\n color={item.color}\n loading={item.loading}\n className={item.className}\n />\n ))\n }, [items])\n\n // Get children to render (either declarative or compound)\n const childrenToRender = declarativeItems ?? children\n\n // Convert to array and optionally reverse\n let childArray = React.Children.toArray(childrenToRender)\n if (reverse) {\n childArray = [...childArray].reverse()\n }\n\n // Add pending item if provided\n if (pending) {\n const pendingItem = (\n <TimelineItem\n key=\"__pending__\"\n end={pending}\n endBox\n icon={pendingIcon}\n loading={!pendingIcon}\n />\n )\n childArray.push(pendingItem)\n }\n\n const total = childArray.length\n\n // Inject internal props into each Timeline.Item\n const childrenWithProps = childArray.map((child, index) => {\n if (React.isValidElement<TimelineItemInternalProps>(child)) {\n return React.cloneElement(child, {\n _index: index,\n _total: total,\n _compact: compact,\n _vertical: vertical,\n _mode: mode,\n _baseTestId: testId,\n })\n }\n return child\n })\n\n return (\n <ul\n ref={ref}\n className={classes}\n data-testid={testId}\n aria-label={ariaLabel}\n role=\"list\"\n {...rest}\n >\n {childrenWithProps}\n </ul>\n )\n }\n)\n\nTimelineRoot.displayName = 'Timeline'\n\nexport const Timeline = Object.assign(TimelineRoot, {\n Item: TimelineItem,\n})\n"],"names":["colorClasses","hrColorClasses","TimelineItem","forwardRef","start","end","icon","startBox","endBox","color","loading","className","testId","_index","_total","_compact","_vertical","_mode","_baseTestId","rest","ref","itemTestId","startClasses","endClasses","middleClasses","hrClasses","isFirst","isLast","isEven","showOnStart","showOnEnd","iconContent","jsx","Loading","TimelineRoot","children","items","vertical","horizontal","compact","snapIcon","mode","reverse","pending","pendingIcon","ariaLabel","classes","childrenToRender","useMemo","item","index","childArray","React","pendingItem","total","childrenWithProps","child","Timeline"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Timeline.js","sources":["../../src/components/Timeline.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react'\nimport { Loading } from './Loading'\n\n// DaisyUI classes\nconst dTimeline = 'timeline'\nconst dTimelineVertical = 'timeline-vertical'\nconst dTimelineHorizontal = 'timeline-horizontal'\nconst dTimelineCompact = 'timeline-compact'\nconst dTimelineSnapIcon = 'timeline-snap-icon'\nconst dTimelineStart = 'timeline-start'\nconst dTimelineEnd = 'timeline-end'\nconst dTimelineMiddle = 'timeline-middle'\nconst dTimelineBox = 'timeline-box'\n\nexport type TimelineMode = 'start' | 'alternate' | 'end'\nexport type TimelineColor = 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error' | 'neutral'\n\nexport interface TimelineItemConfig {\n /** Unique key for the item */\n key?: React.Key\n /** Content at start position (left/top) */\n start?: React.ReactNode\n /** Content at end position (right/bottom) */\n end?: React.ReactNode\n /** Central icon or marker */\n icon?: React.ReactNode\n /** Wrap start content in timeline-box */\n startBox?: boolean\n /** Wrap end content in timeline-box */\n endBox?: boolean\n /** Color of the timeline dot/connector */\n color?: TimelineColor\n /** Show loading spinner instead of icon */\n loading?: boolean\n /** Additional CSS classes for this item */\n className?: string\n}\n\nexport interface TimelineProps extends Omit<React.HTMLAttributes<HTMLUListElement>, 'children'> {\n /** Timeline items (compound pattern) */\n children?: React.ReactNode\n /** Timeline items (declarative API) */\n items?: TimelineItemConfig[]\n /** Vertical layout orientation */\n vertical?: boolean\n /** Horizontal layout (default) */\n horizontal?: boolean\n /** All items on one side */\n compact?: boolean\n /** Snap icon to start instead of center */\n snapIcon?: boolean\n /** Item distribution layout */\n mode?: TimelineMode\n /** Reverse item order */\n reverse?: boolean\n /** Show pending/loading indicator at end */\n pending?: React.ReactNode\n /** Custom icon for pending item */\n pendingIcon?: React.ReactNode\n /** Test ID for the component */\n 'data-testid'?: string\n /** Accessible label for the timeline */\n 'aria-label'?: string\n}\n\n// Public props for Timeline.Item (excludes internal props)\nexport interface TimelineItemProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'color'> {\n /** Content at start position (left/top) */\n start?: React.ReactNode\n /** Content at end position (right/bottom) */\n end?: React.ReactNode\n /** Central icon or marker */\n icon?: React.ReactNode\n /** Wrap start content in timeline-box */\n startBox?: boolean\n /** Wrap end content in timeline-box */\n endBox?: boolean\n /** Color of the timeline dot/connector */\n color?: TimelineColor\n /** Show loading spinner instead of icon */\n loading?: boolean\n /** Test ID for this item */\n 'data-testid'?: string\n}\n\n// Internal props injected by Timeline container\ninterface TimelineItemInternalProps extends TimelineItemProps {\n _index?: number\n _total?: number\n _compact?: boolean\n _vertical?: boolean\n _mode?: TimelineMode\n _baseTestId?: string\n}\n\nconst colorClasses: Record<TimelineColor, string> = {\n primary: 'text-primary',\n secondary: 'text-secondary',\n accent: 'text-accent',\n info: 'text-info',\n success: 'text-success',\n warning: 'text-warning',\n error: 'text-error',\n neutral: 'text-neutral',\n}\n\nconst hrColorClasses: Record<TimelineColor, string> = {\n primary: 'bg-primary',\n secondary: 'bg-secondary',\n accent: 'bg-accent',\n info: 'bg-info',\n success: 'bg-success',\n warning: 'bg-warning',\n error: 'bg-error',\n neutral: 'bg-neutral',\n}\n\nconst TimelineItem = forwardRef<HTMLLIElement, TimelineItemInternalProps>(\n (\n {\n start,\n end,\n icon,\n startBox = false,\n endBox = false,\n color,\n loading = false,\n className = '',\n 'data-testid': testId,\n _index = 0,\n _total = 1,\n _compact = false,\n _vertical = false,\n _mode = 'alternate',\n _baseTestId,\n ...rest\n },\n ref\n ) => {\n const itemTestId = testId ?? (_baseTestId ? `${_baseTestId}-item-${_index}` : undefined)\n\n const startClasses = [dTimelineStart, startBox && dTimelineBox].filter(Boolean).join(' ')\n const endClasses = [dTimelineEnd, endBox && dTimelineBox].filter(Boolean).join(' ')\n const middleClasses = [dTimelineMiddle, color && colorClasses[color]].filter(Boolean).join(' ')\n const hrClasses = color ? hrColorClasses[color] : undefined\n\n const isFirst = _index === 0\n const isLast = _index === _total - 1\n\n // Determine content placement based on mode\n const isEven = _index % 2 === 0\n const showOnStart = _mode === 'start' || (_mode === 'alternate' && !isEven)\n const showOnEnd = _mode === 'end' || (_mode === 'alternate' && isEven)\n\n // Render the icon or loading spinner\n const iconContent = loading ? (\n <Loading size=\"xs\" />\n ) : (\n icon\n )\n\n // Render connectors and content based on layout\n if (_compact) {\n // Compact layout: connector, icon, end content, connector\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {end && <div className={endClasses}>{end}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else if (_vertical) {\n // Vertical layout with mode support\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {showOnStart && start && <div className={startClasses}>{start}</div>}\n {showOnEnd && !showOnStart && end && <div className={startClasses}>{end}</div>}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {showOnEnd && start && !showOnStart && <div className={endClasses}>{start}</div>}\n {(showOnStart || (!showOnStart && !showOnEnd)) && end && <div className={endClasses}>{end}</div>}\n {!showOnStart && showOnEnd && start && <div className={endClasses}>{start}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else {\n // Horizontal alternating layout\n if (showOnEnd) {\n // Content on end side\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {start && <div className={startClasses}>{start}</div>}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {end && <div className={endClasses}>{end}</div>}\n {!isLast && <hr className={hrClasses} />}\n </li>\n )\n } else {\n // Content on start side\n return (\n <li ref={ref} className={className} data-testid={itemTestId} {...rest}>\n {!isFirst && <hr className={hrClasses} />}\n {iconContent && <div className={middleClasses}>{iconContent}</div>}\n {start && <div className={startClasses}>{start}</div>}\n {end && <div className={endClasses}>{end}</div>}\n </li>\n )\n }\n }\n }\n)\n\nTimelineItem.displayName = 'Timeline.Item'\n\nconst TimelineRoot = forwardRef<HTMLUListElement, TimelineProps>(\n (\n {\n children,\n items,\n className = '',\n vertical = false,\n horizontal = false,\n compact = false,\n snapIcon = false,\n mode = 'alternate',\n reverse = false,\n pending,\n pendingIcon,\n 'data-testid': testId = 'timeline',\n 'aria-label': ariaLabel,\n ...rest\n },\n ref\n ) => {\n const classes = [\n dTimeline,\n vertical && dTimelineVertical,\n horizontal && dTimelineHorizontal,\n compact && dTimelineCompact,\n snapIcon && dTimelineSnapIcon,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Build items from declarative API if provided\n const declarativeItems = useMemo(() => {\n if (!items) return null\n return items.map((item, index) => (\n <TimelineItem\n key={item.key ?? index}\n start={item.start}\n end={item.end}\n icon={item.icon}\n startBox={item.startBox}\n endBox={item.endBox}\n color={item.color}\n loading={item.loading}\n className={item.className}\n />\n ))\n }, [items])\n\n // Get children to render (either declarative or compound)\n const childrenToRender = declarativeItems ?? children\n\n // Convert to array and optionally reverse\n let childArray = React.Children.toArray(childrenToRender)\n if (reverse) {\n childArray = [...childArray].reverse()\n }\n\n // Add pending item if provided\n if (pending) {\n const pendingItem = (\n <TimelineItem\n key=\"__pending__\"\n end={pending}\n endBox\n icon={pendingIcon}\n loading={!pendingIcon}\n />\n )\n childArray.push(pendingItem)\n }\n\n const total = childArray.length\n\n // Inject internal props into each Timeline.Item\n const childrenWithProps = childArray.map((child, index) => {\n if (React.isValidElement<TimelineItemInternalProps>(child)) {\n return React.cloneElement(child, {\n _index: index,\n _total: total,\n _compact: compact,\n _vertical: vertical,\n _mode: mode,\n _baseTestId: testId,\n })\n }\n return child\n })\n\n return (\n <ul\n ref={ref}\n className={classes}\n data-testid={testId}\n aria-label={ariaLabel}\n role=\"list\"\n {...rest}\n >\n {childrenWithProps}\n </ul>\n )\n }\n)\n\nTimelineRoot.displayName = 'Timeline'\n\nexport const Timeline = Object.assign(TimelineRoot, {\n Item: TimelineItem,\n})\n"],"names":["dTimeline","dTimelineVertical","dTimelineHorizontal","dTimelineCompact","dTimelineSnapIcon","dTimelineStart","dTimelineEnd","dTimelineMiddle","dTimelineBox","colorClasses","hrColorClasses","TimelineItem","forwardRef","start","end","icon","startBox","endBox","color","loading","className","testId","_index","_total","_compact","_vertical","_mode","_baseTestId","rest","ref","itemTestId","startClasses","endClasses","middleClasses","hrClasses","isFirst","isLast","isEven","showOnStart","showOnEnd","iconContent","jsx","Loading","TimelineRoot","children","items","vertical","horizontal","compact","snapIcon","mode","reverse","pending","pendingIcon","ariaLabel","classes","childrenToRender","useMemo","item","index","childArray","React","pendingItem","total","childrenWithProps","child","Timeline"],"mappings":";;;AAIA,MAAMA,IAAY,YACZC,IAAoB,qBACpBC,IAAsB,uBACtBC,IAAmB,oBACnBC,IAAoB,sBACpBC,IAAiB,kBACjBC,IAAe,gBACfC,IAAkB,mBAClBC,IAAe,gBAmFfC,IAA8C;AAAA,EAClD,SAAS;AAAA,EACT,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AACX,GAEMC,IAAgD;AAAA,EACpD,SAAS;AAAA,EACT,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AACX,GAEMC,IAAeC;AAAA,EACnB,CACE;AAAA,IACE,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,MAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,QAAAC,IAAS;AAAA,IACT,OAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,WAAAC,IAAY;AAAA,IACZ,eAAeC;AAAA,IACf,QAAAC,IAAS;AAAA,IACT,QAAAC,IAAS;AAAA,IACT,UAAAC,IAAW;AAAA,IACX,WAAAC,IAAY;AAAA,IACZ,OAAAC,IAAQ;AAAA,IACR,aAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,UAAMC,IAAaT,MAAWM,IAAc,GAAGA,CAAW,SAASL,CAAM,KAAK,SAExES,IAAe,CAAC1B,GAAgBW,KAAYR,CAAY,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GAClFwB,IAAa,CAAC1B,GAAcW,KAAUT,CAAY,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GAC5EyB,IAAgB,CAAC1B,GAAiBW,KAAST,EAAaS,CAAK,CAAC,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GACxFgB,IAAYhB,IAAQR,EAAeQ,CAAK,IAAI,QAE5CiB,IAAUb,MAAW,GACrBc,IAASd,MAAWC,IAAS,GAG7Bc,IAASf,IAAS,MAAM,GACxBgB,IAAcZ,MAAU,WAAYA,MAAU,eAAe,CAACW,GAC9DE,IAAYb,MAAU,SAAUA,MAAU,eAAeW,GAGzDG,IAAcrB,IAClB,gBAAAsB,EAACC,GAAA,EAAQ,MAAK,MAAK,IAEnB3B;AAIF,WAAIS,sBAGC,MAAA,EAAG,KAAAK,GAAU,WAAAT,GAAsB,eAAaU,GAAa,GAAGF,GAC9D,UAAA;AAAA,MAAA,CAACO,KAAW,gBAAAM,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,MACtCM,KAAe,gBAAAC,EAAC,OAAA,EAAI,WAAWR,GAAgB,UAAAO,GAAY;AAAA,MAC3D1B,KAAO,gBAAA2B,EAAC,OAAA,EAAI,WAAWT,GAAa,UAAAlB,GAAI;AAAA,MACxC,CAACsB,KAAU,gBAAAK,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,IAAA,GACxC,IAEOT,sBAGN,MAAA,EAAG,KAAAI,GAAU,WAAAT,GAAsB,eAAaU,GAAa,GAAGF,GAC9D,UAAA;AAAA,MAAA,CAACO,KAAW,gBAAAM,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,MACtCI,KAAezB,KAAS,gBAAA4B,EAAC,OAAA,EAAI,WAAWV,GAAe,UAAAlB,GAAM;AAAA,MAC7D0B,KAAa,CAACD,KAAexB,uBAAQ,OAAA,EAAI,WAAWiB,GAAe,UAAAjB,GAAI;AAAA,MACvE0B,KAAe,gBAAAC,EAAC,OAAA,EAAI,WAAWR,GAAgB,UAAAO,GAAY;AAAA,MAC3DD,KAAa1B,KAAS,CAACyB,uBAAgB,OAAA,EAAI,WAAWN,GAAa,UAAAnB,GAAM;AAAA,OACxEyB,KAAgB,CAACA,KAAe,CAACC,MAAezB,KAAO,gBAAA2B,EAAC,OAAA,EAAI,WAAWT,GAAa,UAAAlB,EAAA,CAAI;AAAA,MACzF,CAACwB,KAAeC,KAAa1B,uBAAU,OAAA,EAAI,WAAWmB,GAAa,UAAAnB,GAAM;AAAA,MACzE,CAACuB,KAAU,gBAAAK,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,IAAA,GACxC,IAIEK,sBAGC,MAAA,EAAG,KAAAV,GAAU,WAAAT,GAAsB,eAAaU,GAAa,GAAGF,GAC9D,UAAA;AAAA,MAAAf,KAAS,gBAAA4B,EAAC,OAAA,EAAI,WAAWV,GAAe,UAAAlB,GAAM;AAAA,MAC9C2B,KAAe,gBAAAC,EAAC,OAAA,EAAI,WAAWR,GAAgB,UAAAO,GAAY;AAAA,MAC3D1B,KAAO,gBAAA2B,EAAC,OAAA,EAAI,WAAWT,GAAa,UAAAlB,GAAI;AAAA,MACxC,CAACsB,KAAU,gBAAAK,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,IAAA,GACxC,sBAKC,MAAA,EAAG,KAAAL,GAAU,WAAAT,GAAsB,eAAaU,GAAa,GAAGF,GAC9D,UAAA;AAAA,MAAA,CAACO,KAAW,gBAAAM,EAAC,MAAA,EAAG,WAAWP,EAAA,CAAW;AAAA,MACtCM,KAAe,gBAAAC,EAAC,OAAA,EAAI,WAAWR,GAAgB,UAAAO,GAAY;AAAA,MAC3D3B,KAAS,gBAAA4B,EAAC,OAAA,EAAI,WAAWV,GAAe,UAAAlB,GAAM;AAAA,MAC9CC,KAAO,gBAAA2B,EAAC,OAAA,EAAI,WAAWT,GAAa,UAAAlB,EAAA,CAAI;AAAA,IAAA,GAC3C;AAAA,EAIR;AACF;AAEAH,EAAa,cAAc;AAE3B,MAAMgC,IAAe/B;AAAA,EACnB,CACE;AAAA,IACE,UAAAgC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAzB,IAAY;AAAA,IACZ,UAAA0B,IAAW;AAAA,IACX,YAAAC,IAAa;AAAA,IACb,SAAAC,IAAU;AAAA,IACV,UAAAC,IAAW;AAAA,IACX,MAAAC,IAAO;AAAA,IACP,SAAAC,IAAU;AAAA,IACV,SAAAC;AAAA,IACA,aAAAC;AAAA,IACA,eAAehC,IAAS;AAAA,IACxB,cAAciC;AAAA,IACd,GAAG1B;AAAA,EAAA,GAELC,MACG;AACH,UAAM0B,IAAU;AAAA,MACdvD;AAAA,MACA8C,KAAY7C;AAAA,MACZ8C,KAAc7C;AAAA,MACd8C,KAAW7C;AAAA,MACX8C,KAAY7C;AAAA,MACZgB;AAAA,IAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG,GAqBLoC,IAlBmBC,EAAQ,MAC1BZ,IACEA,EAAM,IAAI,CAACa,GAAMC,MACtB,gBAAAlB;AAAA,MAAC9B;AAAA,MAAA;AAAA,QAEC,OAAO+C,EAAK;AAAA,QACZ,KAAKA,EAAK;AAAA,QACV,MAAMA,EAAK;AAAA,QACX,UAAUA,EAAK;AAAA,QACf,QAAQA,EAAK;AAAA,QACb,OAAOA,EAAK;AAAA,QACZ,SAASA,EAAK;AAAA,QACd,WAAWA,EAAK;AAAA,MAAA;AAAA,MARXA,EAAK,OAAOC;AAAA,IAAA,CAUpB,IAbkB,MAclB,CAACd,CAAK,CAAC,KAGmCD;AAG7C,QAAIgB,IAAaC,EAAM,SAAS,QAAQL,CAAgB;AAMxD,QALIL,MACFS,IAAa,CAAC,GAAGA,CAAU,EAAE,QAAA,IAI3BR,GAAS;AACX,YAAMU,IACJ,gBAAArB;AAAA,QAAC9B;AAAA,QAAA;AAAA,UAEC,KAAKyC;AAAA,UACL,QAAM;AAAA,UACN,MAAMC;AAAA,UACN,SAAS,CAACA;AAAA,QAAA;AAAA,QAJN;AAAA,MAAA;AAOR,MAAAO,EAAW,KAAKE,CAAW;AAAA,IAC7B;AAEA,UAAMC,IAAQH,EAAW,QAGnBI,IAAoBJ,EAAW,IAAI,CAACK,GAAON,MAC3CE,EAAM,eAA0CI,CAAK,IAChDJ,EAAM,aAAaI,GAAO;AAAA,MAC/B,QAAQN;AAAA,MACR,QAAQI;AAAA,MACR,UAAUf;AAAA,MACV,WAAWF;AAAA,MACX,OAAOI;AAAA,MACP,aAAa7B;AAAA,IAAA,CACd,IAEI4C,CACR;AAED,WACE,gBAAAxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAZ;AAAA,QACA,WAAW0B;AAAA,QACX,eAAalC;AAAA,QACb,cAAYiC;AAAA,QACZ,MAAK;AAAA,QACJ,GAAG1B;AAAA,QAEH,UAAAoC;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AACF;AAEArB,EAAa,cAAc;AAEpB,MAAMuB,IAAW,OAAO,OAAOvB,GAAc;AAAA,EAClD,MAAMhC;AACR,CAAC;"}
|
|
@@ -1,38 +1,39 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as m } from "react";
|
|
3
|
+
import { useConfig as T } from "./ConfigProvider.js";
|
|
4
|
+
const f = "toggle", u = "toggle-xs", p = "toggle-sm", y = "toggle-md", x = "toggle-lg", S = "toggle-xl", h = "toggle-primary", k = "toggle-secondary", C = "toggle-accent", w = "toggle-neutral", z = "toggle-success", N = "toggle-warning", j = "toggle-info", X = "toggle-error", b = m(
|
|
4
5
|
({
|
|
5
|
-
size:
|
|
6
|
-
color:
|
|
7
|
-
className:
|
|
8
|
-
...
|
|
9
|
-
},
|
|
10
|
-
const
|
|
11
|
-
xs:
|
|
12
|
-
sm:
|
|
13
|
-
md:
|
|
14
|
-
lg:
|
|
15
|
-
xl:
|
|
16
|
-
},
|
|
17
|
-
primary:
|
|
18
|
-
secondary:
|
|
19
|
-
accent:
|
|
20
|
-
neutral:
|
|
21
|
-
success:
|
|
22
|
-
warning:
|
|
23
|
-
info:
|
|
24
|
-
error:
|
|
25
|
-
},
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
].filter(Boolean).join(" "),
|
|
31
|
-
return /* @__PURE__ */
|
|
6
|
+
size: t,
|
|
7
|
+
color: o,
|
|
8
|
+
className: s = "",
|
|
9
|
+
...e
|
|
10
|
+
}, c) => {
|
|
11
|
+
const { componentSize: l } = T(), g = t ?? l ?? "md", n = {
|
|
12
|
+
xs: u,
|
|
13
|
+
sm: p,
|
|
14
|
+
md: y,
|
|
15
|
+
lg: x,
|
|
16
|
+
xl: S
|
|
17
|
+
}, r = {
|
|
18
|
+
primary: h,
|
|
19
|
+
secondary: k,
|
|
20
|
+
accent: C,
|
|
21
|
+
neutral: w,
|
|
22
|
+
success: z,
|
|
23
|
+
warning: N,
|
|
24
|
+
info: j,
|
|
25
|
+
error: X
|
|
26
|
+
}, a = [
|
|
27
|
+
f,
|
|
28
|
+
g && n[g],
|
|
29
|
+
o && r[o],
|
|
30
|
+
s
|
|
31
|
+
].filter(Boolean).join(" "), d = e.checked ? "checked" : "unchecked";
|
|
32
|
+
return /* @__PURE__ */ i("input", { ref: c, type: "checkbox", className: a, "data-state": d, ...e });
|
|
32
33
|
}
|
|
33
34
|
);
|
|
34
|
-
|
|
35
|
+
b.displayName = "Toggle";
|
|
35
36
|
export {
|
|
36
|
-
|
|
37
|
+
b as Toggle
|
|
37
38
|
};
|
|
38
39
|
//# sourceMappingURL=Toggle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.js","sources":["../../src/components/Toggle.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nexport interface ToggleProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'success' | 'warning' | 'info' | 'error'\n className?: string\n}\n\nexport const Toggle = forwardRef<HTMLInputElement, ToggleProps>(\n (\n {\n size,\n color,\n className = '',\n ...props\n },\n ref\n ) => {\n const sizeClasses = {\n xs:
|
|
1
|
+
{"version":3,"file":"Toggle.js","sources":["../../src/components/Toggle.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\nimport { useConfig } from './ConfigProvider'\n\n// DaisyUI classes\nconst dToggle = 'toggle'\nconst dToggleXs = 'toggle-xs'\nconst dToggleSm = 'toggle-sm'\nconst dToggleMd = 'toggle-md'\nconst dToggleLg = 'toggle-lg'\nconst dToggleXl = 'toggle-xl'\nconst dTogglePrimary = 'toggle-primary'\nconst dToggleSecondary = 'toggle-secondary'\nconst dToggleAccent = 'toggle-accent'\nconst dToggleNeutral = 'toggle-neutral'\nconst dToggleSuccess = 'toggle-success'\nconst dToggleWarning = 'toggle-warning'\nconst dToggleInfo = 'toggle-info'\nconst dToggleError = 'toggle-error'\n\nexport interface ToggleProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n color?: 'primary' | 'secondary' | 'accent' | 'neutral' | 'success' | 'warning' | 'info' | 'error'\n className?: string\n}\n\nexport const Toggle = forwardRef<HTMLInputElement, ToggleProps>(\n (\n {\n size,\n color,\n className = '',\n ...props\n },\n ref\n ) => {\n const { componentSize } = useConfig()\n const effectiveSize = size ?? componentSize ?? 'md'\n\n const sizeClasses = {\n xs: dToggleXs,\n sm: dToggleSm,\n md: dToggleMd,\n lg: dToggleLg,\n xl: dToggleXl,\n }\n\n const colorClasses = {\n primary: dTogglePrimary,\n secondary: dToggleSecondary,\n accent: dToggleAccent,\n neutral: dToggleNeutral,\n success: dToggleSuccess,\n warning: dToggleWarning,\n info: dToggleInfo,\n error: dToggleError,\n }\n\n const toggleClasses = [\n dToggle,\n effectiveSize && sizeClasses[effectiveSize],\n color && colorClasses[color],\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n const dataState = props.checked ? 'checked' : 'unchecked'\n return <input ref={ref} type=\"checkbox\" className={toggleClasses} data-state={dataState} {...props} />\n }\n)\n\nToggle.displayName = 'Toggle'\n"],"names":["dToggle","dToggleXs","dToggleSm","dToggleMd","dToggleLg","dToggleXl","dTogglePrimary","dToggleSecondary","dToggleAccent","dToggleNeutral","dToggleSuccess","dToggleWarning","dToggleInfo","dToggleError","Toggle","forwardRef","size","color","className","props","ref","componentSize","useConfig","effectiveSize","sizeClasses","colorClasses","toggleClasses","dataState","jsx"],"mappings":";;;AAIA,MAAMA,IAAU,UACVC,IAAY,aACZC,IAAY,aACZC,IAAY,aACZC,IAAY,aACZC,IAAY,aACZC,IAAiB,kBACjBC,IAAmB,oBACnBC,IAAgB,iBAChBC,IAAiB,kBACjBC,IAAiB,kBACjBC,IAAiB,kBACjBC,IAAc,eACdC,IAAe,gBAQRC,IAASC;AAAA,EACpB,CACE;AAAA,IACE,MAAAC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAC,IAAY;AAAA,IACZ,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,UAAM,EAAE,eAAAC,EAAA,IAAkBC,EAAA,GACpBC,IAAgBP,KAAQK,KAAiB,MAEzCG,IAAc;AAAA,MAClB,IAAIvB;AAAA,MACJ,IAAIC;AAAA,MACJ,IAAIC;AAAA,MACJ,IAAIC;AAAA,MACJ,IAAIC;AAAA,IAAA,GAGAoB,IAAe;AAAA,MACnB,SAASnB;AAAA,MACT,WAAWC;AAAA,MACX,QAAQC;AAAA,MACR,SAASC;AAAA,MACT,SAASC;AAAA,MACT,SAASC;AAAA,MACT,MAAMC;AAAA,MACN,OAAOC;AAAA,IAAA,GAGHa,IAAgB;AAAA,MACpB1B;AAAA,MACAuB,KAAiBC,EAAYD,CAAa;AAAA,MAC1CN,KAASQ,EAAaR,CAAK;AAAA,MAC3BC;AAAA,IAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG,GAELS,IAAYR,EAAM,UAAU,YAAY;AAC9C,WAAO,gBAAAS,EAAC,SAAA,EAAM,KAAAR,GAAU,MAAK,YAAW,WAAWM,GAAe,cAAYC,GAAY,GAAGR,EAAA,CAAO;AAAA,EACtG;AACF;AAEAL,EAAO,cAAc;"}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
const f = ({
|
|
1
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
+
const d = "tooltip", T = "tooltip-top", f = "tooltip-bottom", m = "tooltip-left", u = "tooltip-right", g = "tooltip-neutral", y = "tooltip-primary", h = "tooltip-secondary", b = "tooltip-accent", j = "tooltip-info", v = "tooltip-success", w = "tooltip-warning", x = "tooltip-error", B = "tooltip-open", N = ({
|
|
3
3
|
children: i,
|
|
4
4
|
tip: s,
|
|
5
5
|
className: l = "",
|
|
6
|
-
position:
|
|
6
|
+
position: n = "top",
|
|
7
7
|
color: o,
|
|
8
8
|
open: t = !1,
|
|
9
|
-
...
|
|
9
|
+
...p
|
|
10
10
|
}) => {
|
|
11
|
-
const
|
|
12
|
-
top:
|
|
13
|
-
bottom:
|
|
14
|
-
left:
|
|
15
|
-
right:
|
|
16
|
-
},
|
|
17
|
-
neutral:
|
|
18
|
-
primary:
|
|
19
|
-
secondary:
|
|
20
|
-
accent:
|
|
21
|
-
info:
|
|
22
|
-
success:
|
|
23
|
-
warning:
|
|
24
|
-
error:
|
|
25
|
-
}[o] : void 0,
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
t &&
|
|
11
|
+
const c = {
|
|
12
|
+
top: T,
|
|
13
|
+
bottom: f,
|
|
14
|
+
left: m,
|
|
15
|
+
right: u
|
|
16
|
+
}, r = o ? {
|
|
17
|
+
neutral: g,
|
|
18
|
+
primary: y,
|
|
19
|
+
secondary: h,
|
|
20
|
+
accent: b,
|
|
21
|
+
info: j,
|
|
22
|
+
success: v,
|
|
23
|
+
warning: w,
|
|
24
|
+
error: x
|
|
25
|
+
}[o] : void 0, e = [
|
|
26
|
+
d,
|
|
27
|
+
c[n],
|
|
28
|
+
r,
|
|
29
|
+
t && B,
|
|
30
30
|
l
|
|
31
31
|
].filter(Boolean).join(" ");
|
|
32
|
-
return /* @__PURE__ */
|
|
32
|
+
return /* @__PURE__ */ a("div", { className: e, "data-tip": s, "data-state": t ? "open" : "closed", ...p, children: i });
|
|
33
33
|
};
|
|
34
34
|
export {
|
|
35
|
-
|
|
35
|
+
N as Tooltip
|
|
36
36
|
};
|
|
37
37
|
//# sourceMappingURL=Tooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","sources":["../../src/components/Tooltip.tsx"],"sourcesContent":["import React from 'react'\n\nexport interface TooltipProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n tip: string\n position?: 'top' | 'bottom' | 'left' | 'right'\n color?: 'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error'\n open?: boolean\n}\n\nexport const Tooltip: React.FC<TooltipProps> = ({\n children,\n tip,\n className = '',\n position = 'top',\n color,\n open = false,\n ...rest\n}) => {\n const positionClasses = {\n top:
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sources":["../../src/components/Tooltip.tsx"],"sourcesContent":["import React from 'react'\n\n// DaisyUI classes\nconst dTooltip = 'tooltip'\nconst dTooltipTop = 'tooltip-top'\nconst dTooltipBottom = 'tooltip-bottom'\nconst dTooltipLeft = 'tooltip-left'\nconst dTooltipRight = 'tooltip-right'\nconst dTooltipNeutral = 'tooltip-neutral'\nconst dTooltipPrimary = 'tooltip-primary'\nconst dTooltipSecondary = 'tooltip-secondary'\nconst dTooltipAccent = 'tooltip-accent'\nconst dTooltipInfo = 'tooltip-info'\nconst dTooltipSuccess = 'tooltip-success'\nconst dTooltipWarning = 'tooltip-warning'\nconst dTooltipError = 'tooltip-error'\nconst dTooltipOpen = 'tooltip-open'\n\nexport interface TooltipProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n tip: string\n position?: 'top' | 'bottom' | 'left' | 'right'\n color?: 'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error'\n open?: boolean\n}\n\nexport const Tooltip: React.FC<TooltipProps> = ({\n children,\n tip,\n className = '',\n position = 'top',\n color,\n open = false,\n ...rest\n}) => {\n const positionClasses = {\n top: dTooltipTop,\n bottom: dTooltipBottom,\n left: dTooltipLeft,\n right: dTooltipRight,\n }\n\n const colorClasses = color\n ? {\n neutral: dTooltipNeutral,\n primary: dTooltipPrimary,\n secondary: dTooltipSecondary,\n accent: dTooltipAccent,\n info: dTooltipInfo,\n success: dTooltipSuccess,\n warning: dTooltipWarning,\n error: dTooltipError,\n }[color]\n : undefined\n\n const classes = [\n dTooltip,\n positionClasses[position],\n colorClasses,\n open && dTooltipOpen,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={classes} data-tip={tip} data-state={open ? 'open' : 'closed'} {...rest}>\n {children}\n </div>\n )\n}\n"],"names":["dTooltip","dTooltipTop","dTooltipBottom","dTooltipLeft","dTooltipRight","dTooltipNeutral","dTooltipPrimary","dTooltipSecondary","dTooltipAccent","dTooltipInfo","dTooltipSuccess","dTooltipWarning","dTooltipError","dTooltipOpen","Tooltip","children","tip","className","position","color","open","rest","positionClasses","colorClasses","classes","jsx"],"mappings":";AAGA,MAAMA,IAAW,WACXC,IAAc,eACdC,IAAiB,kBACjBC,IAAe,gBACfC,IAAgB,iBAChBC,IAAkB,mBAClBC,IAAkB,mBAClBC,IAAoB,qBACpBC,IAAiB,kBACjBC,IAAe,gBACfC,IAAkB,mBAClBC,IAAkB,mBAClBC,IAAgB,iBAChBC,IAAe,gBAURC,IAAkC,CAAC;AAAA,EAC9C,UAAAC;AAAA,EACA,KAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,UAAAC,IAAW;AAAA,EACX,OAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAkB;AAAA,IACtB,KAAKrB;AAAA,IACL,QAAQC;AAAA,IACR,MAAMC;AAAA,IACN,OAAOC;AAAA,EAAA,GAGHmB,IAAeJ,IACjB;AAAA,IACE,SAASd;AAAA,IACT,SAASC;AAAA,IACT,WAAWC;AAAA,IACX,QAAQC;AAAA,IACR,MAAMC;AAAA,IACN,SAASC;AAAA,IACT,SAASC;AAAA,IACT,OAAOC;AAAA,EAAA,EACPO,CAAK,IACP,QAEEK,IAAU;AAAA,IACdxB;AAAA,IACAsB,EAAgBJ,CAAQ;AAAA,IACxBK;AAAA,IACAH,KAAQP;AAAA,IACRI;AAAA,EAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,SACE,gBAAAQ,EAAC,OAAA,EAAI,WAAWD,GAAS,YAAUR,GAAK,cAAYI,IAAO,SAAS,UAAW,GAAGC,GAC/E,UAAAN,EAAA,CACH;AAEJ;"}
|