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
package/dist/components/Badge.js
CHANGED
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
const
|
|
1
|
+
import { jsxs as w, jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as T } from "react";
|
|
3
|
+
const v = "badge", X = "badge-primary", z = "badge-secondary", A = "badge-accent", G = "badge-neutral", O = "badge-info", V = "badge-success", W = "badge-warning", q = "badge-error", C = "badge-xs", F = "badge-sm", H = "badge-md", J = "badge-lg", K = "badge-xl", Q = "badge-outline", U = "badge-dash", Y = "badge-soft", Z = "badge-ghost", _ = "indicator", aa = "indicator-item", ea = "indicator-top", ta = "indicator-middle", na = "indicator-bottom", sa = "indicator-start", oa = "indicator-center", da = "indicator-end", $ = {
|
|
4
4
|
default: "",
|
|
5
|
-
primary:
|
|
6
|
-
secondary:
|
|
7
|
-
accent:
|
|
8
|
-
neutral:
|
|
9
|
-
info:
|
|
10
|
-
success:
|
|
11
|
-
warning:
|
|
12
|
-
error:
|
|
13
|
-
},
|
|
14
|
-
xs:
|
|
15
|
-
sm:
|
|
16
|
-
md:
|
|
17
|
-
lg:
|
|
18
|
-
xl:
|
|
19
|
-
},
|
|
5
|
+
primary: X,
|
|
6
|
+
secondary: z,
|
|
7
|
+
accent: A,
|
|
8
|
+
neutral: G,
|
|
9
|
+
info: O,
|
|
10
|
+
success: V,
|
|
11
|
+
warning: W,
|
|
12
|
+
error: q
|
|
13
|
+
}, S = {
|
|
14
|
+
xs: C,
|
|
15
|
+
sm: F,
|
|
16
|
+
md: H,
|
|
17
|
+
lg: J,
|
|
18
|
+
xl: K
|
|
19
|
+
}, j = {
|
|
20
20
|
solid: "",
|
|
21
|
-
outline:
|
|
22
|
-
dash:
|
|
23
|
-
soft:
|
|
24
|
-
ghost:
|
|
25
|
-
},
|
|
21
|
+
outline: Q,
|
|
22
|
+
dash: U,
|
|
23
|
+
soft: Y,
|
|
24
|
+
ghost: Z
|
|
25
|
+
}, ra = {
|
|
26
26
|
success: "success",
|
|
27
27
|
processing: "info",
|
|
28
28
|
error: "error",
|
|
29
29
|
warning: "warning",
|
|
30
30
|
default: "neutral"
|
|
31
|
-
},
|
|
32
|
-
const [
|
|
33
|
-
switch (
|
|
31
|
+
}, ia = (n) => {
|
|
32
|
+
const [e, o] = n.split("-"), a = [];
|
|
33
|
+
switch (e) {
|
|
34
34
|
case "top":
|
|
35
|
-
|
|
35
|
+
a.push(ea);
|
|
36
36
|
break;
|
|
37
37
|
case "middle":
|
|
38
|
-
|
|
38
|
+
a.push(ta);
|
|
39
39
|
break;
|
|
40
40
|
case "bottom":
|
|
41
|
-
|
|
41
|
+
a.push(na);
|
|
42
42
|
break;
|
|
43
43
|
}
|
|
44
44
|
switch (o) {
|
|
45
45
|
case "start":
|
|
46
|
-
|
|
46
|
+
a.push(sa);
|
|
47
47
|
break;
|
|
48
48
|
case "center":
|
|
49
|
-
|
|
49
|
+
a.push(oa);
|
|
50
50
|
break;
|
|
51
51
|
case "end":
|
|
52
|
-
|
|
52
|
+
a.push(da);
|
|
53
53
|
break;
|
|
54
54
|
}
|
|
55
|
-
return
|
|
56
|
-
}, R =
|
|
55
|
+
return a.join(" ");
|
|
56
|
+
}, R = T(
|
|
57
57
|
({
|
|
58
|
-
children:
|
|
59
|
-
count:
|
|
58
|
+
children: n,
|
|
59
|
+
count: e,
|
|
60
60
|
showZero: o = !1,
|
|
61
|
-
overflowCount:
|
|
62
|
-
position:
|
|
61
|
+
overflowCount: a = 99,
|
|
62
|
+
position: b = "top-end",
|
|
63
63
|
offset: r,
|
|
64
64
|
status: t,
|
|
65
|
-
text:
|
|
66
|
-
type:
|
|
65
|
+
text: i,
|
|
66
|
+
type: g = "error",
|
|
67
67
|
size: p = "md",
|
|
68
68
|
variant: u = "solid",
|
|
69
|
-
color:
|
|
69
|
+
color: d,
|
|
70
70
|
dot: c = !1,
|
|
71
|
-
outline:
|
|
71
|
+
outline: M = !1,
|
|
72
72
|
className: m = "",
|
|
73
|
-
"data-testid":
|
|
73
|
+
"data-testid": s,
|
|
74
74
|
...f
|
|
75
75
|
}, y) => {
|
|
76
|
-
const k =
|
|
77
|
-
if (t && !
|
|
78
|
-
const
|
|
79
|
-
return /* @__PURE__ */
|
|
76
|
+
const k = M ? "outline" : u, N = () => e === void 0 ? null : e > a ? `${a}+` : e, D = e !== void 0 && (e > 0 || o) || c, B = d ? { backgroundColor: d } : void 0;
|
|
77
|
+
if (t && !n) {
|
|
78
|
+
const h = ra[t];
|
|
79
|
+
return /* @__PURE__ */ w(
|
|
80
80
|
"span",
|
|
81
81
|
{
|
|
82
82
|
ref: y,
|
|
83
83
|
role: "status",
|
|
84
|
-
"aria-label":
|
|
84
|
+
"aria-label": i || t,
|
|
85
85
|
className: `inline-flex items-center gap-2 ${m}`,
|
|
86
|
-
"data-testid":
|
|
86
|
+
"data-testid": s,
|
|
87
87
|
"data-status": t,
|
|
88
88
|
...f,
|
|
89
89
|
children: [
|
|
@@ -91,66 +91,66 @@ const w = {
|
|
|
91
91
|
"span",
|
|
92
92
|
{
|
|
93
93
|
className: [
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
`${v} ${C} w-2 h-2 p-0`,
|
|
95
|
+
$[h],
|
|
96
96
|
t === "processing" && "animate-pulse"
|
|
97
97
|
].filter(Boolean).join(" "),
|
|
98
|
-
"data-testid":
|
|
98
|
+
"data-testid": s ? `${s}-dot` : void 0
|
|
99
99
|
}
|
|
100
100
|
),
|
|
101
|
-
|
|
101
|
+
i && /* @__PURE__ */ l("span", { className: "text-sm", children: i })
|
|
102
102
|
]
|
|
103
103
|
}
|
|
104
104
|
);
|
|
105
105
|
}
|
|
106
|
-
if (
|
|
107
|
-
const
|
|
108
|
-
return /* @__PURE__ */
|
|
106
|
+
if (n) {
|
|
107
|
+
const h = r ? { transform: `translate(${r[0]}px, ${r[1]}px)`, ...B } : B, x = N(), P = c ? "New notification" : x !== null ? `${x} notifications` : void 0;
|
|
108
|
+
return /* @__PURE__ */ w(
|
|
109
109
|
"div",
|
|
110
110
|
{
|
|
111
111
|
ref: y,
|
|
112
|
-
className:
|
|
113
|
-
"data-testid":
|
|
112
|
+
className: `${_} inline-block ${m}`,
|
|
113
|
+
"data-testid": s,
|
|
114
114
|
...f,
|
|
115
115
|
children: [
|
|
116
|
-
|
|
116
|
+
D && /* @__PURE__ */ l(
|
|
117
117
|
"span",
|
|
118
118
|
{
|
|
119
119
|
role: "status",
|
|
120
|
-
"aria-label":
|
|
120
|
+
"aria-label": P,
|
|
121
121
|
className: [
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
!
|
|
125
|
-
c ?
|
|
126
|
-
|
|
122
|
+
`${aa} ${v}`,
|
|
123
|
+
ia(b),
|
|
124
|
+
!d && $[g],
|
|
125
|
+
c ? `${C} p-0 w-2 h-2` : S[p],
|
|
126
|
+
j[k]
|
|
127
127
|
].filter(Boolean).join(" "),
|
|
128
|
-
style:
|
|
129
|
-
"data-testid":
|
|
130
|
-
"data-count":
|
|
128
|
+
style: h,
|
|
129
|
+
"data-testid": s ? `${s}-indicator` : void 0,
|
|
130
|
+
"data-count": e,
|
|
131
131
|
"data-dot": c || void 0,
|
|
132
|
-
children: !c &&
|
|
132
|
+
children: !c && x
|
|
133
133
|
}
|
|
134
134
|
),
|
|
135
|
-
|
|
135
|
+
n
|
|
136
136
|
]
|
|
137
137
|
}
|
|
138
138
|
);
|
|
139
139
|
}
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
!
|
|
143
|
-
|
|
144
|
-
|
|
140
|
+
const E = [
|
|
141
|
+
v,
|
|
142
|
+
!d && $[g],
|
|
143
|
+
S[p],
|
|
144
|
+
j[k],
|
|
145
145
|
m
|
|
146
|
-
].filter(Boolean).join(" "), L =
|
|
146
|
+
].filter(Boolean).join(" "), L = N();
|
|
147
147
|
return /* @__PURE__ */ l(
|
|
148
148
|
"span",
|
|
149
149
|
{
|
|
150
150
|
ref: y,
|
|
151
|
-
className:
|
|
152
|
-
style:
|
|
153
|
-
"data-testid":
|
|
151
|
+
className: E,
|
|
152
|
+
style: B,
|
|
153
|
+
"data-testid": s,
|
|
154
154
|
...f,
|
|
155
155
|
children: L
|
|
156
156
|
}
|
|
@@ -158,23 +158,23 @@ const w = {
|
|
|
158
158
|
}
|
|
159
159
|
);
|
|
160
160
|
R.displayName = "Badge";
|
|
161
|
-
const
|
|
161
|
+
const I = T(
|
|
162
162
|
({
|
|
163
|
-
children:
|
|
164
|
-
text:
|
|
163
|
+
children: n,
|
|
164
|
+
text: e,
|
|
165
165
|
placement: o = "end",
|
|
166
|
-
color:
|
|
167
|
-
type:
|
|
166
|
+
color: a,
|
|
167
|
+
type: b = "primary",
|
|
168
168
|
className: r = "",
|
|
169
169
|
"data-testid": t,
|
|
170
|
-
...
|
|
171
|
-
},
|
|
170
|
+
...i
|
|
171
|
+
}, g) => {
|
|
172
172
|
const u = [
|
|
173
173
|
"absolute",
|
|
174
174
|
o === "start" ? "-left-1 top-2" : "-right-1 top-2",
|
|
175
175
|
"px-2 py-0.5",
|
|
176
176
|
"text-xs font-semibold",
|
|
177
|
-
!
|
|
177
|
+
!a && {
|
|
178
178
|
default: "bg-base-300 text-base-content",
|
|
179
179
|
primary: "bg-primary text-primary-content",
|
|
180
180
|
secondary: "bg-secondary text-secondary-content",
|
|
@@ -184,26 +184,26 @@ const S = j(
|
|
|
184
184
|
success: "bg-success text-success-content",
|
|
185
185
|
warning: "bg-warning text-warning-content",
|
|
186
186
|
error: "bg-error text-error-content"
|
|
187
|
-
}[
|
|
187
|
+
}[b],
|
|
188
188
|
"shadow-sm",
|
|
189
189
|
o === "start" ? "rounded-r" : "rounded-l"
|
|
190
|
-
].filter(Boolean).join(" "),
|
|
191
|
-
return /* @__PURE__ */
|
|
190
|
+
].filter(Boolean).join(" "), d = a ? { backgroundColor: a } : void 0;
|
|
191
|
+
return /* @__PURE__ */ w(
|
|
192
192
|
"div",
|
|
193
193
|
{
|
|
194
|
-
ref:
|
|
194
|
+
ref: g,
|
|
195
195
|
className: `relative inline-block overflow-visible ${r}`,
|
|
196
196
|
"data-testid": t,
|
|
197
|
-
...
|
|
197
|
+
...i,
|
|
198
198
|
children: [
|
|
199
|
-
|
|
199
|
+
n,
|
|
200
200
|
/* @__PURE__ */ l(
|
|
201
201
|
"div",
|
|
202
202
|
{
|
|
203
203
|
className: u,
|
|
204
|
-
style:
|
|
204
|
+
style: d,
|
|
205
205
|
"data-testid": t ? `${t}-ribbon` : void 0,
|
|
206
|
-
children:
|
|
206
|
+
children: e
|
|
207
207
|
}
|
|
208
208
|
)
|
|
209
209
|
]
|
|
@@ -211,10 +211,10 @@ const S = j(
|
|
|
211
211
|
);
|
|
212
212
|
}
|
|
213
213
|
);
|
|
214
|
-
|
|
215
|
-
const
|
|
216
|
-
|
|
214
|
+
I.displayName = "Badge.Ribbon";
|
|
215
|
+
const ca = R;
|
|
216
|
+
ca.Ribbon = I;
|
|
217
217
|
export {
|
|
218
|
-
|
|
218
|
+
ca as Badge
|
|
219
219
|
};
|
|
220
220
|
//# sourceMappingURL=Badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.js","sources":["../../src/components/Badge.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nexport type BadgePosition =\n | 'top-start'\n | 'top-center'\n | 'top-end'\n | 'middle-start'\n | 'middle-center'\n | 'middle-end'\n | 'bottom-start'\n | 'bottom-center'\n | 'bottom-end'\n\nexport type BadgeStatus = 'success' | 'processing' | 'error' | 'default' | 'warning'\n\nexport type BadgeType =\n | 'default'\n | 'primary'\n | 'secondary'\n | 'accent'\n | 'neutral'\n | 'info'\n | 'success'\n | 'warning'\n | 'error'\n\nexport type BadgeVariant = 'solid' | 'outline' | 'dash' | 'soft' | 'ghost'\n\nexport type BadgeSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n\nexport interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {\n // Count mode\n count?: number\n showZero?: boolean\n overflowCount?: number\n\n // Positioning (when wrapping children)\n position?: BadgePosition\n offset?: [number, number]\n\n // Status mode\n status?: BadgeStatus\n text?: string\n\n // Visual\n type?: BadgeType\n size?: BadgeSize\n variant?: BadgeVariant\n color?: string\n dot?: boolean\n /** @deprecated Use variant=\"outline\" instead */\n outline?: boolean\n\n // Testing\n 'data-testid'?: string\n\n // Content\n children?: React.ReactNode\n}\n\nconst typeClasses: Record<BadgeType, string> = {\n default: '',\n primary: 'badge-primary',\n secondary: 'badge-secondary',\n accent: 'badge-accent',\n neutral: 'badge-neutral',\n info: 'badge-info',\n success: 'badge-success',\n warning: 'badge-warning',\n error: 'badge-error',\n}\n\nconst sizeClasses: Record<BadgeSize, string> = {\n xs: 'badge-xs',\n sm: 'badge-sm',\n md: 'badge-md',\n lg: 'badge-lg',\n xl: 'badge-xl',\n}\n\nconst variantClasses: Record<BadgeVariant, string> = {\n solid: '',\n outline: 'badge-outline',\n dash: 'badge-dash',\n soft: 'badge-soft',\n ghost: 'badge-ghost',\n}\n\nconst statusTypeMap: Record<BadgeStatus, BadgeType> = {\n success: 'success',\n processing: 'info',\n error: 'error',\n warning: 'warning',\n default: 'neutral',\n}\n\n// Get position classes for indicator\nconst getPositionClasses = (pos: BadgePosition): string => {\n const [vertical, horizontal] = pos.split('-')\n const classes: string[] = []\n\n switch (vertical) {\n case 'top':\n classes.push('indicator-top')\n break\n case 'middle':\n classes.push('indicator-middle')\n break\n case 'bottom':\n classes.push('indicator-bottom')\n break\n }\n\n switch (horizontal) {\n case 'start':\n classes.push('indicator-start')\n break\n case 'center':\n classes.push('indicator-center')\n break\n case 'end':\n classes.push('indicator-end')\n break\n }\n\n return classes.join(' ')\n}\n\nconst BadgeInner = forwardRef<HTMLSpanElement, BadgeProps>(\n (\n {\n children,\n count,\n showZero = false,\n overflowCount = 99,\n position = 'top-end',\n offset,\n status,\n text,\n type = 'error',\n size = 'md',\n variant = 'solid',\n color,\n dot = false,\n outline = false,\n className = '',\n 'data-testid': testId,\n ...rest\n },\n ref\n ) => {\n // Resolve variant (support deprecated outline prop)\n const resolvedVariant = outline ? 'outline' : variant\n\n // Calculate display count with overflow\n const getDisplayCount = () => {\n if (count === undefined) return null\n if (count > overflowCount) return `${overflowCount}+`\n return count\n }\n\n const shouldShowBadge = (count !== undefined && (count > 0 || showZero)) || dot\n\n // Custom color style\n const colorStyle = color ? { backgroundColor: color } : undefined\n\n // Status badge mode (standalone with status indicator)\n if (status && !children) {\n const statusType = statusTypeMap[status]\n return (\n <span\n ref={ref}\n role=\"status\"\n aria-label={text || status}\n className={`inline-flex items-center gap-2 ${className}`}\n data-testid={testId}\n data-status={status}\n {...rest}\n >\n <span\n className={[\n 'badge badge-xs w-2 h-2 p-0',\n typeClasses[statusType],\n status === 'processing' && 'animate-pulse',\n ]\n .filter(Boolean)\n .join(' ')}\n data-testid={testId ? `${testId}-dot` : undefined}\n />\n {text && <span className=\"text-sm\">{text}</span>}\n </span>\n )\n }\n\n // Notification badge mode (wrapping children)\n if (children) {\n const offsetStyle = offset\n ? { transform: `translate(${offset[0]}px, ${offset[1]}px)`, ...colorStyle }\n : colorStyle\n\n const displayCount = getDisplayCount()\n const ariaLabel =\n dot ? 'New notification' : displayCount !== null ? `${displayCount} notifications` : undefined\n\n return (\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n className={`indicator inline-block ${className}`}\n data-testid={testId}\n {...rest}\n >\n {shouldShowBadge && (\n <span\n role=\"status\"\n aria-label={ariaLabel}\n className={[\n 'indicator-item badge',\n getPositionClasses(position),\n !color && typeClasses[type],\n dot ? 'badge-xs p-0 w-2 h-2' : sizeClasses[size],\n variantClasses[resolvedVariant],\n ]\n .filter(Boolean)\n .join(' ')}\n style={offsetStyle}\n data-testid={testId ? `${testId}-indicator` : undefined}\n data-count={count}\n data-dot={dot || undefined}\n >\n {!dot && displayCount}\n </span>\n )}\n {children}\n </div>\n )\n }\n\n // Standalone badge mode (like a label)\n const badgeClasses = [\n 'badge',\n !color && typeClasses[type],\n sizeClasses[size],\n variantClasses[resolvedVariant],\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n const displayContent = getDisplayCount()\n\n return (\n <span\n ref={ref}\n className={badgeClasses}\n style={colorStyle}\n data-testid={testId}\n {...rest}\n >\n {displayContent}\n </span>\n )\n }\n)\n\nBadgeInner.displayName = 'Badge'\n\n// Badge.Ribbon compound component\nexport interface BadgeRibbonProps extends React.HTMLAttributes<HTMLDivElement> {\n text: string\n placement?: 'start' | 'end'\n color?: string\n type?: BadgeType\n 'data-testid'?: string\n children: React.ReactNode\n}\n\nconst BadgeRibbon = forwardRef<HTMLDivElement, BadgeRibbonProps>(\n (\n {\n children,\n text,\n placement = 'end',\n color,\n type = 'primary',\n className = '',\n 'data-testid': testId,\n ...rest\n },\n ref\n ) => {\n const ribbonTypeClasses: Record<BadgeType, string> = {\n default: 'bg-base-300 text-base-content',\n primary: 'bg-primary text-primary-content',\n secondary: 'bg-secondary text-secondary-content',\n accent: 'bg-accent text-accent-content',\n neutral: 'bg-neutral text-neutral-content',\n info: 'bg-info text-info-content',\n success: 'bg-success text-success-content',\n warning: 'bg-warning text-warning-content',\n error: 'bg-error text-error-content',\n }\n\n const ribbonClasses = [\n 'absolute',\n placement === 'start' ? '-left-1 top-2' : '-right-1 top-2',\n 'px-2 py-0.5',\n 'text-xs font-semibold',\n !color && ribbonTypeClasses[type],\n 'shadow-sm',\n placement === 'start' ? 'rounded-r' : 'rounded-l',\n ]\n .filter(Boolean)\n .join(' ')\n\n const colorStyle = color ? { backgroundColor: color } : undefined\n\n return (\n <div\n ref={ref}\n className={`relative inline-block overflow-visible ${className}`}\n data-testid={testId}\n {...rest}\n >\n {children}\n <div\n className={ribbonClasses}\n style={colorStyle}\n data-testid={testId ? `${testId}-ribbon` : undefined}\n >\n {text}\n </div>\n </div>\n )\n }\n)\n\nBadgeRibbon.displayName = 'Badge.Ribbon'\n\n// Compound component type\ntype BadgeComponent = typeof BadgeInner & {\n Ribbon: typeof BadgeRibbon\n}\n\nexport const Badge = BadgeInner as BadgeComponent\nBadge.Ribbon = BadgeRibbon\n"],"names":["typeClasses","sizeClasses","variantClasses","statusTypeMap","getPositionClasses","pos","vertical","horizontal","classes","BadgeInner","forwardRef","children","count","showZero","overflowCount","position","offset","status","text","type","size","variant","color","dot","outline","className","testId","rest","ref","resolvedVariant","getDisplayCount","shouldShowBadge","colorStyle","statusType","jsxs","jsx","offsetStyle","displayCount","ariaLabel","badgeClasses","displayContent","BadgeRibbon","placement","ribbonClasses","Badge"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Badge.js","sources":["../../src/components/Badge.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\n// DaisyUI classes\nconst dBadge = 'badge'\nconst dBadgePrimary = 'badge-primary'\nconst dBadgeSecondary = 'badge-secondary'\nconst dBadgeAccent = 'badge-accent'\nconst dBadgeNeutral = 'badge-neutral'\nconst dBadgeInfo = 'badge-info'\nconst dBadgeSuccess = 'badge-success'\nconst dBadgeWarning = 'badge-warning'\nconst dBadgeError = 'badge-error'\nconst dBadgeXs = 'badge-xs'\nconst dBadgeSm = 'badge-sm'\nconst dBadgeMd = 'badge-md'\nconst dBadgeLg = 'badge-lg'\nconst dBadgeXl = 'badge-xl'\nconst dBadgeOutline = 'badge-outline'\nconst dBadgeDash = 'badge-dash'\nconst dBadgeSoft = 'badge-soft'\nconst dBadgeGhost = 'badge-ghost'\nconst dIndicator = 'indicator'\nconst dIndicatorItem = 'indicator-item'\nconst dIndicatorTop = 'indicator-top'\nconst dIndicatorMiddle = 'indicator-middle'\nconst dIndicatorBottom = 'indicator-bottom'\nconst dIndicatorStart = 'indicator-start'\nconst dIndicatorCenter = 'indicator-center'\nconst dIndicatorEnd = 'indicator-end'\n\nexport type BadgePosition =\n | 'top-start'\n | 'top-center'\n | 'top-end'\n | 'middle-start'\n | 'middle-center'\n | 'middle-end'\n | 'bottom-start'\n | 'bottom-center'\n | 'bottom-end'\n\nexport type BadgeStatus = 'success' | 'processing' | 'error' | 'default' | 'warning'\n\nexport type BadgeType =\n | 'default'\n | 'primary'\n | 'secondary'\n | 'accent'\n | 'neutral'\n | 'info'\n | 'success'\n | 'warning'\n | 'error'\n\nexport type BadgeVariant = 'solid' | 'outline' | 'dash' | 'soft' | 'ghost'\n\nexport type BadgeSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n\nexport interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {\n // Count mode\n count?: number\n showZero?: boolean\n overflowCount?: number\n\n // Positioning (when wrapping children)\n position?: BadgePosition\n offset?: [number, number]\n\n // Status mode\n status?: BadgeStatus\n text?: string\n\n // Visual\n type?: BadgeType\n size?: BadgeSize\n variant?: BadgeVariant\n color?: string\n dot?: boolean\n /** @deprecated Use variant=\"outline\" instead */\n outline?: boolean\n\n // Testing\n 'data-testid'?: string\n\n // Content\n children?: React.ReactNode\n}\n\nconst typeClasses: Record<BadgeType, string> = {\n default: '',\n primary: dBadgePrimary,\n secondary: dBadgeSecondary,\n accent: dBadgeAccent,\n neutral: dBadgeNeutral,\n info: dBadgeInfo,\n success: dBadgeSuccess,\n warning: dBadgeWarning,\n error: dBadgeError,\n}\n\nconst sizeClasses: Record<BadgeSize, string> = {\n xs: dBadgeXs,\n sm: dBadgeSm,\n md: dBadgeMd,\n lg: dBadgeLg,\n xl: dBadgeXl,\n}\n\nconst variantClasses: Record<BadgeVariant, string> = {\n solid: '',\n outline: dBadgeOutline,\n dash: dBadgeDash,\n soft: dBadgeSoft,\n ghost: dBadgeGhost,\n}\n\nconst statusTypeMap: Record<BadgeStatus, BadgeType> = {\n success: 'success',\n processing: 'info',\n error: 'error',\n warning: 'warning',\n default: 'neutral',\n}\n\n// Get position classes for indicator\nconst getPositionClasses = (pos: BadgePosition): string => {\n const [vertical, horizontal] = pos.split('-')\n const classes: string[] = []\n\n switch (vertical) {\n case 'top':\n classes.push(dIndicatorTop)\n break\n case 'middle':\n classes.push(dIndicatorMiddle)\n break\n case 'bottom':\n classes.push(dIndicatorBottom)\n break\n }\n\n switch (horizontal) {\n case 'start':\n classes.push(dIndicatorStart)\n break\n case 'center':\n classes.push(dIndicatorCenter)\n break\n case 'end':\n classes.push(dIndicatorEnd)\n break\n }\n\n return classes.join(' ')\n}\n\nconst BadgeInner = forwardRef<HTMLSpanElement, BadgeProps>(\n (\n {\n children,\n count,\n showZero = false,\n overflowCount = 99,\n position = 'top-end',\n offset,\n status,\n text,\n type = 'error',\n size = 'md',\n variant = 'solid',\n color,\n dot = false,\n outline = false,\n className = '',\n 'data-testid': testId,\n ...rest\n },\n ref\n ) => {\n // Resolve variant (support deprecated outline prop)\n const resolvedVariant = outline ? 'outline' : variant\n\n // Calculate display count with overflow\n const getDisplayCount = () => {\n if (count === undefined) return null\n if (count > overflowCount) return `${overflowCount}+`\n return count\n }\n\n const shouldShowBadge = (count !== undefined && (count > 0 || showZero)) || dot\n\n // Custom color style\n const colorStyle = color ? { backgroundColor: color } : undefined\n\n // Status badge mode (standalone with status indicator)\n if (status && !children) {\n const statusType = statusTypeMap[status]\n return (\n <span\n ref={ref}\n role=\"status\"\n aria-label={text || status}\n className={`inline-flex items-center gap-2 ${className}`}\n data-testid={testId}\n data-status={status}\n {...rest}\n >\n <span\n className={[\n `${dBadge} ${dBadgeXs} w-2 h-2 p-0`,\n typeClasses[statusType],\n status === 'processing' && 'animate-pulse',\n ]\n .filter(Boolean)\n .join(' ')}\n data-testid={testId ? `${testId}-dot` : undefined}\n />\n {text && <span className=\"text-sm\">{text}</span>}\n </span>\n )\n }\n\n // Notification badge mode (wrapping children)\n if (children) {\n const offsetStyle = offset\n ? { transform: `translate(${offset[0]}px, ${offset[1]}px)`, ...colorStyle }\n : colorStyle\n\n const displayCount = getDisplayCount()\n const ariaLabel =\n dot ? 'New notification' : displayCount !== null ? `${displayCount} notifications` : undefined\n\n return (\n <div\n ref={ref as React.Ref<HTMLDivElement>}\n className={`${dIndicator} inline-block ${className}`}\n data-testid={testId}\n {...rest}\n >\n {shouldShowBadge && (\n <span\n role=\"status\"\n aria-label={ariaLabel}\n className={[\n `${dIndicatorItem} ${dBadge}`,\n getPositionClasses(position),\n !color && typeClasses[type],\n dot ? `${dBadgeXs} p-0 w-2 h-2` : sizeClasses[size],\n variantClasses[resolvedVariant],\n ]\n .filter(Boolean)\n .join(' ')}\n style={offsetStyle}\n data-testid={testId ? `${testId}-indicator` : undefined}\n data-count={count}\n data-dot={dot || undefined}\n >\n {!dot && displayCount}\n </span>\n )}\n {children}\n </div>\n )\n }\n\n // Standalone badge mode (like a label)\n const badgeClasses = [\n dBadge,\n !color && typeClasses[type],\n sizeClasses[size],\n variantClasses[resolvedVariant],\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n const displayContent = getDisplayCount()\n\n return (\n <span\n ref={ref}\n className={badgeClasses}\n style={colorStyle}\n data-testid={testId}\n {...rest}\n >\n {displayContent}\n </span>\n )\n }\n)\n\nBadgeInner.displayName = 'Badge'\n\n// Badge.Ribbon compound component\nexport interface BadgeRibbonProps extends React.HTMLAttributes<HTMLDivElement> {\n text: string\n placement?: 'start' | 'end'\n color?: string\n type?: BadgeType\n 'data-testid'?: string\n children: React.ReactNode\n}\n\nconst BadgeRibbon = forwardRef<HTMLDivElement, BadgeRibbonProps>(\n (\n {\n children,\n text,\n placement = 'end',\n color,\n type = 'primary',\n className = '',\n 'data-testid': testId,\n ...rest\n },\n ref\n ) => {\n const ribbonTypeClasses: Record<BadgeType, string> = {\n default: 'bg-base-300 text-base-content',\n primary: 'bg-primary text-primary-content',\n secondary: 'bg-secondary text-secondary-content',\n accent: 'bg-accent text-accent-content',\n neutral: 'bg-neutral text-neutral-content',\n info: 'bg-info text-info-content',\n success: 'bg-success text-success-content',\n warning: 'bg-warning text-warning-content',\n error: 'bg-error text-error-content',\n }\n\n const ribbonClasses = [\n 'absolute',\n placement === 'start' ? '-left-1 top-2' : '-right-1 top-2',\n 'px-2 py-0.5',\n 'text-xs font-semibold',\n !color && ribbonTypeClasses[type],\n 'shadow-sm',\n placement === 'start' ? 'rounded-r' : 'rounded-l',\n ]\n .filter(Boolean)\n .join(' ')\n\n const colorStyle = color ? { backgroundColor: color } : undefined\n\n return (\n <div\n ref={ref}\n className={`relative inline-block overflow-visible ${className}`}\n data-testid={testId}\n {...rest}\n >\n {children}\n <div\n className={ribbonClasses}\n style={colorStyle}\n data-testid={testId ? `${testId}-ribbon` : undefined}\n >\n {text}\n </div>\n </div>\n )\n }\n)\n\nBadgeRibbon.displayName = 'Badge.Ribbon'\n\n// Compound component type\ntype BadgeComponent = typeof BadgeInner & {\n Ribbon: typeof BadgeRibbon\n}\n\nexport const Badge = BadgeInner as BadgeComponent\nBadge.Ribbon = BadgeRibbon\n"],"names":["dBadge","dBadgePrimary","dBadgeSecondary","dBadgeAccent","dBadgeNeutral","dBadgeInfo","dBadgeSuccess","dBadgeWarning","dBadgeError","dBadgeXs","dBadgeSm","dBadgeMd","dBadgeLg","dBadgeXl","dBadgeOutline","dBadgeDash","dBadgeSoft","dBadgeGhost","dIndicator","dIndicatorItem","dIndicatorTop","dIndicatorMiddle","dIndicatorBottom","dIndicatorStart","dIndicatorCenter","dIndicatorEnd","typeClasses","sizeClasses","variantClasses","statusTypeMap","getPositionClasses","pos","vertical","horizontal","classes","BadgeInner","forwardRef","children","count","showZero","overflowCount","position","offset","status","text","type","size","variant","color","dot","outline","className","testId","rest","ref","resolvedVariant","getDisplayCount","shouldShowBadge","colorStyle","statusType","jsxs","jsx","offsetStyle","displayCount","ariaLabel","badgeClasses","displayContent","BadgeRibbon","placement","ribbonClasses","Badge"],"mappings":";;AAGA,MAAMA,IAAS,SACTC,IAAgB,iBAChBC,IAAkB,mBAClBC,IAAe,gBACfC,IAAgB,iBAChBC,IAAa,cACbC,IAAgB,iBAChBC,IAAgB,iBAChBC,IAAc,eACdC,IAAW,YACXC,IAAW,YACXC,IAAW,YACXC,IAAW,YACXC,IAAW,YACXC,IAAgB,iBAChBC,IAAa,cACbC,IAAa,cACbC,IAAc,eACdC,IAAa,aACbC,KAAiB,kBACjBC,KAAgB,iBAChBC,KAAmB,oBACnBC,KAAmB,oBACnBC,KAAkB,mBAClBC,KAAmB,oBACnBC,KAAgB,iBA4DhBC,IAAyC;AAAA,EAC7C,SAAS;AAAA,EACT,SAASzB;AAAA,EACT,WAAWC;AAAA,EACX,QAAQC;AAAA,EACR,SAASC;AAAA,EACT,MAAMC;AAAA,EACN,SAASC;AAAA,EACT,SAASC;AAAA,EACT,OAAOC;AACT,GAEMmB,IAAyC;AAAA,EAC7C,IAAIlB;AAAA,EACJ,IAAIC;AAAA,EACJ,IAAIC;AAAA,EACJ,IAAIC;AAAA,EACJ,IAAIC;AACN,GAEMe,IAA+C;AAAA,EACnD,OAAO;AAAA,EACP,SAASd;AAAA,EACT,MAAMC;AAAA,EACN,MAAMC;AAAA,EACN,OAAOC;AACT,GAEMY,KAAgD;AAAA,EACpD,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AACX,GAGMC,KAAqB,CAACC,MAA+B;AACzD,QAAM,CAACC,GAAUC,CAAU,IAAIF,EAAI,MAAM,GAAG,GACtCG,IAAoB,CAAA;AAE1B,UAAQF,GAAA;AAAA,IACN,KAAK;AACH,MAAAE,EAAQ,KAAKd,EAAa;AAC1B;AAAA,IACF,KAAK;AACH,MAAAc,EAAQ,KAAKb,EAAgB;AAC7B;AAAA,IACF,KAAK;AACH,MAAAa,EAAQ,KAAKZ,EAAgB;AAC7B;AAAA,EAAA;AAGJ,UAAQW,GAAA;AAAA,IACN,KAAK;AACH,MAAAC,EAAQ,KAAKX,EAAe;AAC5B;AAAA,IACF,KAAK;AACH,MAAAW,EAAQ,KAAKV,EAAgB;AAC7B;AAAA,IACF,KAAK;AACH,MAAAU,EAAQ,KAAKT,EAAa;AAC1B;AAAA,EAAA;AAGJ,SAAOS,EAAQ,KAAK,GAAG;AACzB,GAEMC,IAAaC;AAAA,EACjB,CACE;AAAA,IACE,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,eAAAC,IAAgB;AAAA,IAChB,UAAAC,IAAW;AAAA,IACX,QAAAC;AAAA,IACA,QAAAC;AAAA,IACA,MAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,MAAAC,IAAO;AAAA,IACP,SAAAC,IAAU;AAAA,IACV,OAAAC;AAAA,IACA,KAAAC,IAAM;AAAA,IACN,SAAAC,IAAU;AAAA,IACV,WAAAC,IAAY;AAAA,IACZ,eAAeC;AAAA,IACf,GAAGC;AAAA,EAAA,GAELC,MACG;AAEH,UAAMC,IAAkBL,IAAU,YAAYH,GAGxCS,IAAkB,MAClBlB,MAAU,SAAkB,OAC5BA,IAAQE,IAAsB,GAAGA,CAAa,MAC3CF,GAGHmB,IAAmBnB,MAAU,WAAcA,IAAQ,KAAKC,MAAcU,GAGtES,IAAaV,IAAQ,EAAE,iBAAiBA,MAAU;AAGxD,QAAIL,KAAU,CAACN,GAAU;AACvB,YAAMsB,IAAa9B,GAAcc,CAAM;AACvC,aACE,gBAAAiB;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAAN;AAAA,UACA,MAAK;AAAA,UACL,cAAYV,KAAQD;AAAA,UACpB,WAAW,kCAAkCQ,CAAS;AAAA,UACtD,eAAaC;AAAA,UACb,eAAaT;AAAA,UACZ,GAAGU;AAAA,UAEJ,UAAA;AAAA,YAAA,gBAAAQ;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW;AAAA,kBACT,GAAG7D,CAAM,IAAIS,CAAQ;AAAA,kBACrBiB,EAAYiC,CAAU;AAAA,kBACtBhB,MAAW,gBAAgB;AAAA,gBAAA,EAE1B,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,gBACX,eAAaS,IAAS,GAAGA,CAAM,SAAS;AAAA,cAAA;AAAA,YAAA;AAAA,YAEzCR,KAAQ,gBAAAiB,EAAC,QAAA,EAAK,WAAU,WAAW,UAAAjB,EAAA,CAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAG/C;AAGA,QAAIP,GAAU;AACZ,YAAMyB,IAAcpB,IAChB,EAAE,WAAW,aAAaA,EAAO,CAAC,CAAC,OAAOA,EAAO,CAAC,CAAC,OAAO,GAAGgB,MAC7DA,GAEEK,IAAeP,EAAA,GACfQ,IACJf,IAAM,qBAAqBc,MAAiB,OAAO,GAAGA,CAAY,mBAAmB;AAEvF,aACE,gBAAAH;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAAN;AAAA,UACA,WAAW,GAAGpC,CAAU,iBAAiBiC,CAAS;AAAA,UAClD,eAAaC;AAAA,UACZ,GAAGC;AAAA,UAEH,UAAA;AAAA,YAAAI,KACC,gBAAAI;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,MAAK;AAAA,gBACL,cAAYG;AAAA,gBACZ,WAAW;AAAA,kBACT,GAAG7C,EAAc,IAAInB,CAAM;AAAA,kBAC3B8B,GAAmBW,CAAQ;AAAA,kBAC3B,CAACO,KAAStB,EAAYmB,CAAI;AAAA,kBAC1BI,IAAM,GAAGxC,CAAQ,iBAAiBkB,EAAYmB,CAAI;AAAA,kBAClDlB,EAAe2B,CAAe;AAAA,gBAAA,EAE7B,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,gBACX,OAAOO;AAAA,gBACP,eAAaV,IAAS,GAAGA,CAAM,eAAe;AAAA,gBAC9C,cAAYd;AAAA,gBACZ,YAAUW,KAAO;AAAA,gBAEhB,WAACA,KAAOc;AAAA,cAAA;AAAA,YAAA;AAAA,YAGZ1B;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAGP;AAGA,UAAM4B,IAAe;AAAA,MACnBjE;AAAA,MACA,CAACgD,KAAStB,EAAYmB,CAAI;AAAA,MAC1BlB,EAAYmB,CAAI;AAAA,MAChBlB,EAAe2B,CAAe;AAAA,MAC9BJ;AAAA,IAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG,GAELe,IAAiBV,EAAA;AAEvB,WACE,gBAAAK;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAP;AAAA,QACA,WAAWW;AAAA,QACX,OAAOP;AAAA,QACP,eAAaN;AAAA,QACZ,GAAGC;AAAA,QAEH,UAAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AACF;AAEA/B,EAAW,cAAc;AAYzB,MAAMgC,IAAc/B;AAAA,EAClB,CACE;AAAA,IACE,UAAAC;AAAA,IACA,MAAAO;AAAA,IACA,WAAAwB,IAAY;AAAA,IACZ,OAAApB;AAAA,IACA,MAAAH,IAAO;AAAA,IACP,WAAAM,IAAY;AAAA,IACZ,eAAeC;AAAA,IACf,GAAGC;AAAA,EAAA,GAELC,MACG;AAaH,UAAMe,IAAgB;AAAA,MACpB;AAAA,MACAD,MAAc,UAAU,kBAAkB;AAAA,MAC1C;AAAA,MACA;AAAA,MACA,CAACpB,KAjBkD;AAAA,QACnD,SAAS;AAAA,QACT,SAAS;AAAA,QACT,WAAW;AAAA,QACX,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,MAAM;AAAA,QACN,SAAS;AAAA,QACT,SAAS;AAAA,QACT,OAAO;AAAA,MAAA,EAQqBH,CAAI;AAAA,MAChC;AAAA,MACAuB,MAAc,UAAU,cAAc;AAAA,IAAA,EAErC,OAAO,OAAO,EACd,KAAK,GAAG,GAELV,IAAaV,IAAQ,EAAE,iBAAiBA,MAAU;AAExD,WACE,gBAAAY;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAN;AAAA,QACA,WAAW,0CAA0CH,CAAS;AAAA,QAC9D,eAAaC;AAAA,QACZ,GAAGC;AAAA,QAEH,UAAA;AAAA,UAAAhB;AAAA,UACD,gBAAAwB;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWQ;AAAA,cACX,OAAOX;AAAA,cACP,eAAaN,IAAS,GAAGA,CAAM,YAAY;AAAA,cAE1C,UAAAR;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;AAEAuB,EAAY,cAAc;AAOnB,MAAMG,KAAQnC;AACrBmC,GAAM,SAASH;"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { jsx as n, jsxs as
|
|
1
|
+
import { jsx as n, jsxs as m } from "react/jsx-runtime";
|
|
2
2
|
import u from "react";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
const f = "breadcrumbs";
|
|
4
|
+
function g({ children: c, items: r, separator: t, className: o = "", ...i }) {
|
|
5
|
+
const s = t !== void 0, a = typeof t == "string" ? "px-2" : "px-1", p = () => !r || r.length === 0 ? null : r.map((e, l) => {
|
|
5
6
|
const d = l === r.length - 1;
|
|
6
|
-
return /* @__PURE__ */
|
|
7
|
+
return /* @__PURE__ */ m(u.Fragment, { children: [
|
|
7
8
|
/* @__PURE__ */ n("li", { className: e.className, children: e.href || e.onClick ? /* @__PURE__ */ n("a", { href: e.href, onClick: e.onClick, children: e.title }) : e.title }),
|
|
8
9
|
s && !d && /* @__PURE__ */ n("li", { className: `flex items-center ${a} text-base-content/50`, children: t })
|
|
9
10
|
] }, l);
|
|
10
11
|
}), b = () => {
|
|
11
12
|
if (r && r.length > 0)
|
|
12
|
-
return
|
|
13
|
+
return p();
|
|
13
14
|
if (s && c) {
|
|
14
15
|
const e = u.Children.toArray(c), l = [];
|
|
15
16
|
return e.forEach((d, h) => {
|
|
@@ -19,18 +20,18 @@ function x({ children: c, items: r, separator: t, className: o = "", ...i }) {
|
|
|
19
20
|
}), l;
|
|
20
21
|
}
|
|
21
22
|
return c;
|
|
22
|
-
},
|
|
23
|
-
return /* @__PURE__ */ n("div", { className:
|
|
23
|
+
}, x = s ? `${f} text-sm [&_li::before]:!hidden ${o}` : `${f} text-sm ${o}`;
|
|
24
|
+
return /* @__PURE__ */ n("div", { className: x, ...i, children: /* @__PURE__ */ n("ul", { children: b() }) });
|
|
24
25
|
}
|
|
25
|
-
function
|
|
26
|
-
const a = o ? /* @__PURE__ */
|
|
26
|
+
function $({ children: c, href: r, onClick: t, icon: o, className: i = "", ...s }) {
|
|
27
|
+
const a = o ? /* @__PURE__ */ m("span", { className: "inline-flex items-center gap-2", children: [
|
|
27
28
|
o,
|
|
28
29
|
c
|
|
29
30
|
] }) : c;
|
|
30
31
|
return r || t ? /* @__PURE__ */ n("li", { className: i, ...s, children: /* @__PURE__ */ n("a", { href: r, onClick: t, children: a }) }) : /* @__PURE__ */ n("li", { className: i, ...s, children: a });
|
|
31
32
|
}
|
|
32
|
-
const N = Object.assign(
|
|
33
|
-
Item:
|
|
33
|
+
const N = Object.assign(g, {
|
|
34
|
+
Item: $
|
|
34
35
|
});
|
|
35
36
|
export {
|
|
36
37
|
N as Breadcrumb
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumb.js","sources":["../../src/components/Breadcrumb.tsx"],"sourcesContent":["import React from 'react'\n\nexport interface BreadcrumbItemType {\n /** Item title/label */\n title: React.ReactNode\n /** Link URL */\n href?: string\n /** Click handler */\n onClick?: () => void\n /** Custom class name */\n className?: string\n}\n\nexport interface BreadcrumbProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Breadcrumb.Item children (compound pattern) */\n children?: React.ReactNode\n /** Breadcrumb items data (data-driven pattern) */\n items?: BreadcrumbItemType[]\n /** Custom separator between items */\n separator?: React.ReactNode\n}\n\nexport interface BreadcrumbItemProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'onClick'> {\n children: React.ReactNode\n href?: string\n onClick?: () => void\n /** Icon to display before the label */\n icon?: React.ReactNode\n}\n\nfunction BreadcrumbRoot({ children, items, separator, className = '', ...rest }: BreadcrumbProps) {\n const hasCustomSeparator = separator !== undefined\n // Text separators need more padding than icon separators\n const separatorPadding = typeof separator === 'string' ? 'px-2' : 'px-1'\n\n const renderFromItems = () => {\n if (!items || items.length === 0) return null\n\n return items.map((item, index) => {\n const isLast = index === items.length - 1\n return (\n <React.Fragment key={index}>\n <li className={item.className}>\n {item.href || item.onClick ? (\n <a href={item.href} onClick={item.onClick}>\n {item.title}\n </a>\n ) : (\n item.title\n )}\n </li>\n {hasCustomSeparator && !isLast && (\n <li className={`flex items-center ${separatorPadding} text-base-content/50`}>\n {separator}\n </li>\n )}\n </React.Fragment>\n )\n })\n }\n\n const renderChildren = () => {\n if (items && items.length > 0) {\n return renderFromItems()\n }\n\n if (hasCustomSeparator && children) {\n // Insert custom separator nodes between children\n const childArray = React.Children.toArray(children)\n const result: React.ReactNode[] = []\n childArray.forEach((child, index) => {\n result.push(child)\n if (index < childArray.length - 1) {\n result.push(\n <li key={`sep-${index}`} className={`flex items-center ${separatorPadding} text-base-content/50`}>\n {separator}\n </li>\n )\n }\n })\n return result\n }\n\n return children\n }\n\n // When custom separator is provided, hide default DaisyUI separator\n const cssClass = hasCustomSeparator\n ?
|
|
1
|
+
{"version":3,"file":"Breadcrumb.js","sources":["../../src/components/Breadcrumb.tsx"],"sourcesContent":["import React from 'react'\n\n// DaisyUI classes\nconst dBreadcrumbs = 'breadcrumbs'\n\nexport interface BreadcrumbItemType {\n /** Item title/label */\n title: React.ReactNode\n /** Link URL */\n href?: string\n /** Click handler */\n onClick?: () => void\n /** Custom class name */\n className?: string\n}\n\nexport interface BreadcrumbProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Breadcrumb.Item children (compound pattern) */\n children?: React.ReactNode\n /** Breadcrumb items data (data-driven pattern) */\n items?: BreadcrumbItemType[]\n /** Custom separator between items */\n separator?: React.ReactNode\n}\n\nexport interface BreadcrumbItemProps extends Omit<React.LiHTMLAttributes<HTMLLIElement>, 'onClick'> {\n children: React.ReactNode\n href?: string\n onClick?: () => void\n /** Icon to display before the label */\n icon?: React.ReactNode\n}\n\nfunction BreadcrumbRoot({ children, items, separator, className = '', ...rest }: BreadcrumbProps) {\n const hasCustomSeparator = separator !== undefined\n // Text separators need more padding than icon separators\n const separatorPadding = typeof separator === 'string' ? 'px-2' : 'px-1'\n\n const renderFromItems = () => {\n if (!items || items.length === 0) return null\n\n return items.map((item, index) => {\n const isLast = index === items.length - 1\n return (\n <React.Fragment key={index}>\n <li className={item.className}>\n {item.href || item.onClick ? (\n <a href={item.href} onClick={item.onClick}>\n {item.title}\n </a>\n ) : (\n item.title\n )}\n </li>\n {hasCustomSeparator && !isLast && (\n <li className={`flex items-center ${separatorPadding} text-base-content/50`}>\n {separator}\n </li>\n )}\n </React.Fragment>\n )\n })\n }\n\n const renderChildren = () => {\n if (items && items.length > 0) {\n return renderFromItems()\n }\n\n if (hasCustomSeparator && children) {\n // Insert custom separator nodes between children\n const childArray = React.Children.toArray(children)\n const result: React.ReactNode[] = []\n childArray.forEach((child, index) => {\n result.push(child)\n if (index < childArray.length - 1) {\n result.push(\n <li key={`sep-${index}`} className={`flex items-center ${separatorPadding} text-base-content/50`}>\n {separator}\n </li>\n )\n }\n })\n return result\n }\n\n return children\n }\n\n // When custom separator is provided, hide default DaisyUI separator\n const cssClass = hasCustomSeparator\n ? `${dBreadcrumbs} text-sm [&_li::before]:!hidden ${className}`\n : `${dBreadcrumbs} text-sm ${className}`\n\n return (\n <div className={cssClass} {...rest}>\n <ul>{renderChildren()}</ul>\n </div>\n )\n}\n\nfunction BreadcrumbItem({ children, href, onClick, icon, className = '', ...rest }: BreadcrumbItemProps) {\n const content = icon ? (\n <span className=\"inline-flex items-center gap-2\">\n {icon}\n {children}\n </span>\n ) : children\n\n if (href || onClick) {\n return (\n <li className={className} {...rest}>\n <a href={href} onClick={onClick}>\n {content}\n </a>\n </li>\n )\n }\n\n return <li className={className} {...rest}>{content}</li>\n}\n\nexport const Breadcrumb = Object.assign(BreadcrumbRoot, {\n Item: BreadcrumbItem,\n})\n"],"names":["dBreadcrumbs","BreadcrumbRoot","children","items","separator","className","rest","hasCustomSeparator","separatorPadding","renderFromItems","item","index","isLast","jsxs","React","jsx","renderChildren","childArray","result","child","cssClass","BreadcrumbItem","href","onClick","icon","content","Breadcrumb"],"mappings":";;AAGA,MAAMA,IAAe;AA8BrB,SAASC,EAAe,EAAE,UAAAC,GAAU,OAAAC,GAAO,WAAAC,GAAW,WAAAC,IAAY,IAAI,GAAGC,KAAyB;AAChG,QAAMC,IAAqBH,MAAc,QAEnCI,IAAmB,OAAOJ,KAAc,WAAW,SAAS,QAE5DK,IAAkB,MAClB,CAACN,KAASA,EAAM,WAAW,IAAU,OAElCA,EAAM,IAAI,CAACO,GAAMC,MAAU;AAChC,UAAMC,IAASD,MAAUR,EAAM,SAAS;AACxC,WACE,gBAAAU,EAACC,EAAM,UAAN,EACC,UAAA;AAAA,MAAA,gBAAAC,EAAC,MAAA,EAAG,WAAWL,EAAK,WACjB,YAAK,QAAQA,EAAK,UACjB,gBAAAK,EAAC,KAAA,EAAE,MAAML,EAAK,MAAM,SAASA,EAAK,SAC/B,YAAK,MAAA,CACR,IAEAA,EAAK,MAAA,CAET;AAAA,MACCH,KAAsB,CAACK,KACtB,gBAAAG,EAAC,QAAG,WAAW,qBAAqBP,CAAgB,yBACjD,UAAAJ,EAAA,CACH;AAAA,IAAA,EAAA,GAbiBO,CAerB;AAAA,EAEJ,CAAC,GAGGK,IAAiB,MAAM;AAC3B,QAAIb,KAASA,EAAM,SAAS;AAC1B,aAAOM,EAAA;AAGT,QAAIF,KAAsBL,GAAU;AAElC,YAAMe,IAAaH,EAAM,SAAS,QAAQZ,CAAQ,GAC5CgB,IAA4B,CAAA;AAClC,aAAAD,EAAW,QAAQ,CAACE,GAAOR,MAAU;AACnC,QAAAO,EAAO,KAAKC,CAAK,GACbR,IAAQM,EAAW,SAAS,KAC9BC,EAAO;AAAA,UACL,gBAAAH,EAAC,QAAwB,WAAW,qBAAqBP,CAAgB,yBACtE,UAAAJ,EAAA,GADM,OAAOO,CAAK,EAErB;AAAA,QAAA;AAAA,MAGN,CAAC,GACMO;AAAA,IACT;AAEA,WAAOhB;AAAA,EACT,GAGMkB,IAAWb,IACb,GAAGP,CAAY,mCAAmCK,CAAS,KAC3D,GAAGL,CAAY,YAAYK,CAAS;AAExC,SACE,gBAAAU,EAAC,OAAA,EAAI,WAAWK,GAAW,GAAGd,GAC5B,UAAA,gBAAAS,EAAC,MAAA,EAAI,UAAAC,EAAA,EAAe,CAAE,EAAA,CACxB;AAEJ;AAEA,SAASK,EAAe,EAAE,UAAAnB,GAAU,MAAAoB,GAAM,SAAAC,GAAS,MAAAC,GAAM,WAAAnB,IAAY,IAAI,GAAGC,KAA6B;AACvG,QAAMmB,IAAUD,IACd,gBAAAX,EAAC,QAAA,EAAK,WAAU,kCACb,UAAA;AAAA,IAAAW;AAAA,IACAtB;AAAA,EAAA,EAAA,CACH,IACEA;AAEJ,SAAIoB,KAAQC,IAER,gBAAAR,EAAC,MAAA,EAAG,WAAAV,GAAuB,GAAGC,GAC5B,4BAAC,KAAA,EAAE,MAAAgB,GAAY,SAAAC,GACZ,UAAAE,EAAA,CACH,EAAA,CACF,IAIG,gBAAAV,EAAC,MAAA,EAAG,WAAAV,GAAuB,GAAGC,GAAO,UAAAmB,GAAQ;AACtD;AAEO,MAAMC,IAAa,OAAO,OAAOzB,GAAgB;AAAA,EACtD,MAAMoB;AACR,CAAC;"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { jsxs as d, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
const b = ({
|
|
3
|
-
children:
|
|
4
|
-
url:
|
|
5
|
-
className:
|
|
6
|
-
contentClassName:
|
|
7
|
-
...
|
|
8
|
-
}) => /* @__PURE__ */ d("div", { className:
|
|
9
|
-
/* @__PURE__ */ r("div", { className:
|
|
10
|
-
/* @__PURE__ */ r("div", { className: `border-t border-base-300 ${
|
|
2
|
+
const t = "mockup-browser", b = "mockup-browser-toolbar", m = ({
|
|
3
|
+
children: o,
|
|
4
|
+
url: e = "https://example.com",
|
|
5
|
+
className: s = "",
|
|
6
|
+
contentClassName: c = "",
|
|
7
|
+
...a
|
|
8
|
+
}) => /* @__PURE__ */ d("div", { className: `${t} border border-base-300 ${s}`, ...a, children: [
|
|
9
|
+
/* @__PURE__ */ r("div", { className: b, children: /* @__PURE__ */ r("div", { className: "input", children: e }) }),
|
|
10
|
+
/* @__PURE__ */ r("div", { className: `border-t border-base-300 ${c}`, children: o })
|
|
11
11
|
] });
|
|
12
12
|
export {
|
|
13
|
-
|
|
13
|
+
m as Browser
|
|
14
14
|
};
|
|
15
15
|
//# sourceMappingURL=Browser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Browser.js","sources":["../../src/components/Browser.tsx"],"sourcesContent":["import React from 'react'\n\nexport interface BrowserProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n url?: string\n contentClassName?: string\n}\n\nexport const Browser: React.FC<BrowserProps> = ({\n children,\n url = 'https://example.com',\n className = '',\n contentClassName = '',\n ...rest\n}) => {\n return (\n <div className={
|
|
1
|
+
{"version":3,"file":"Browser.js","sources":["../../src/components/Browser.tsx"],"sourcesContent":["import React from 'react'\n\n// DaisyUI classes\nconst dMockupBrowser = 'mockup-browser'\nconst dMockupBrowserToolbar = 'mockup-browser-toolbar'\n\nexport interface BrowserProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n url?: string\n contentClassName?: string\n}\n\nexport const Browser: React.FC<BrowserProps> = ({\n children,\n url = 'https://example.com',\n className = '',\n contentClassName = '',\n ...rest\n}) => {\n return (\n <div className={`${dMockupBrowser} border border-base-300 ${className}`} {...rest}>\n <div className={dMockupBrowserToolbar}>\n <div className=\"input\">{url}</div>\n </div>\n <div className={`border-t border-base-300 ${contentClassName}`}>\n {children}\n </div>\n </div>\n )\n}\n"],"names":["dMockupBrowser","dMockupBrowserToolbar","Browser","children","url","className","contentClassName","rest","jsxs","jsx"],"mappings":";AAGA,MAAMA,IAAiB,kBACjBC,IAAwB,0BAQjBC,IAAkC,CAAC;AAAA,EAC9C,UAAAC;AAAA,EACA,KAAAC,IAAM;AAAA,EACN,WAAAC,IAAY;AAAA,EACZ,kBAAAC,IAAmB;AAAA,EACnB,GAAGC;AACL,MAEI,gBAAAC,EAAC,SAAI,WAAW,GAAGR,CAAc,2BAA2BK,CAAS,IAAK,GAAGE,GAC3E,UAAA;AAAA,EAAA,gBAAAE,EAAC,OAAA,EAAI,WAAWR,GACd,UAAA,gBAAAQ,EAAC,SAAI,WAAU,SAAS,aAAI,EAAA,CAC9B;AAAA,oBACC,OAAA,EAAI,WAAW,4BAA4BH,CAAgB,IACzD,UAAAH,EAAA,CACH;AAAA,GACF;"}
|