asterui 0.12.2 → 0.12.4
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/Kbd.d.ts +2 -1
- package/dist/components/Modal.d.ts +7 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js +196 -201
- package/dist/index.js.map +1 -1
- package/dist/index100.js +11 -44
- package/dist/index100.js.map +1 -1
- package/dist/index101.js +12 -10
- package/dist/index101.js.map +1 -1
- package/dist/index102.js +7 -14
- package/dist/index102.js.map +1 -1
- package/dist/index103.js +12 -7
- package/dist/index103.js.map +1 -1
- package/dist/index104.js +29 -11
- package/dist/index104.js.map +1 -1
- package/dist/index105.js +16 -29
- package/dist/index105.js.map +1 -1
- package/dist/index13.js +95 -35
- package/dist/index13.js.map +1 -1
- package/dist/index14.js +153 -90
- package/dist/index14.js.map +1 -1
- package/dist/index15.js +146 -154
- package/dist/index15.js.map +1 -1
- package/dist/index16.js +5 -150
- package/dist/index16.js.map +1 -1
- package/dist/index17.js +71 -5
- package/dist/index17.js.map +1 -1
- package/dist/index18.js +17 -71
- package/dist/index18.js.map +1 -1
- package/dist/index19.js +96 -15
- package/dist/index19.js.map +1 -1
- package/dist/index20.js +105 -89
- package/dist/index20.js.map +1 -1
- package/dist/index21.js +177 -107
- package/dist/index21.js.map +1 -1
- package/dist/index22.js +107 -181
- package/dist/index22.js.map +1 -1
- package/dist/index23.js +19 -110
- package/dist/index23.js.map +1 -1
- package/dist/index24.js +41 -17
- package/dist/index24.js.map +1 -1
- package/dist/index25.js +32 -43
- package/dist/index25.js.map +1 -1
- package/dist/index26.js +41 -32
- package/dist/index26.js.map +1 -1
- package/dist/index27.js +12 -41
- package/dist/index27.js.map +1 -1
- package/dist/index28.js +33 -12
- package/dist/index28.js.map +1 -1
- package/dist/index29.js +63 -33
- package/dist/index29.js.map +1 -1
- package/dist/index30.js +77 -60
- package/dist/index30.js.map +1 -1
- package/dist/index31.js +18 -80
- package/dist/index31.js.map +1 -1
- package/dist/index32.js +217 -15
- package/dist/index32.js.map +1 -1
- package/dist/index33.js +1078 -216
- package/dist/index33.js.map +1 -1
- package/dist/index34.js +17 -1081
- package/dist/index34.js.map +1 -1
- package/dist/index35.js +121 -17
- package/dist/index35.js.map +1 -1
- package/dist/index36.js +37 -119
- package/dist/index36.js.map +1 -1
- package/dist/index37.js +182 -31
- package/dist/index37.js.map +1 -1
- package/dist/index38.js +97 -191
- package/dist/index38.js.map +1 -1
- package/dist/index39.js +158 -93
- package/dist/index39.js.map +1 -1
- package/dist/index40.js +139 -155
- package/dist/index40.js.map +1 -1
- package/dist/index41.js +15 -146
- package/dist/index41.js.map +1 -1
- package/dist/index42.js +17 -15
- package/dist/index42.js.map +1 -1
- package/dist/index43.js +21 -18
- package/dist/index43.js.map +1 -1
- package/dist/index44.js +116 -18
- package/dist/index44.js.map +1 -1
- package/dist/index45.js +10 -116
- package/dist/index45.js.map +1 -1
- package/dist/index46.js +35 -13
- package/dist/index46.js.map +1 -1
- package/dist/index47.js +34 -35
- package/dist/index47.js.map +1 -1
- package/dist/index48.js +116 -10
- package/dist/index48.js.map +1 -1
- package/dist/index49.js +174 -114
- package/dist/index49.js.map +1 -1
- package/dist/index50.js +136 -165
- package/dist/index50.js.map +1 -1
- package/dist/index51.js +11 -146
- package/dist/index51.js.map +1 -1
- package/dist/index52.js +20 -10
- package/dist/index52.js.map +1 -1
- package/dist/index53.js +14 -22
- package/dist/index53.js.map +1 -1
- package/dist/index54.js +7 -14
- package/dist/index54.js.map +1 -1
- package/dist/index55.js +268 -6
- package/dist/index55.js.map +1 -1
- package/dist/index56.js +17 -266
- package/dist/index56.js.map +1 -1
- package/dist/index57.js +122 -17
- package/dist/index57.js.map +1 -1
- package/dist/index58.js +108 -120
- package/dist/index58.js.map +1 -1
- package/dist/index59.js +167 -107
- package/dist/index59.js.map +1 -1
- package/dist/index60.js +29 -167
- package/dist/index60.js.map +1 -1
- package/dist/index61.js +120 -30
- package/dist/index61.js.map +1 -1
- package/dist/index62.js +80 -116
- package/dist/index62.js.map +1 -1
- package/dist/index63.js +19 -85
- package/dist/index63.js.map +1 -1
- package/dist/index64.js +73 -19
- package/dist/index64.js.map +1 -1
- package/dist/index65.js +54 -71
- package/dist/index65.js.map +1 -1
- package/dist/index66.js +44 -56
- package/dist/index66.js.map +1 -1
- package/dist/index67.js +49 -42
- package/dist/index67.js.map +1 -1
- package/dist/index68.js +62 -52
- package/dist/index68.js.map +1 -1
- package/dist/index69.js +101 -56
- package/dist/index69.js.map +1 -1
- package/dist/index70.js +41 -107
- package/dist/index70.js.map +1 -1
- package/dist/index71.js +68 -41
- package/dist/index71.js.map +1 -1
- package/dist/index72.js +19 -66
- package/dist/index72.js.map +1 -1
- package/dist/index73.js +43 -18
- package/dist/index73.js.map +1 -1
- package/dist/index74.js +132 -44
- package/dist/index74.js.map +1 -1
- package/dist/index75.js +50 -132
- package/dist/index75.js.map +1 -1
- package/dist/index76.js +21 -51
- package/dist/index76.js.map +1 -1
- package/dist/index77.js +31 -22
- package/dist/index77.js.map +1 -1
- package/dist/index78.js +22 -31
- package/dist/index78.js.map +1 -1
- package/dist/index79.js +327 -20
- package/dist/index79.js.map +1 -1
- package/dist/index80.js +50 -323
- package/dist/index80.js.map +1 -1
- package/dist/index81.js +40 -56
- package/dist/index81.js.map +1 -1
- package/dist/index82.js +23 -40
- package/dist/index82.js.map +1 -1
- package/dist/index83.js +93 -21
- package/dist/index83.js.map +1 -1
- package/dist/index84.js +123 -88
- package/dist/index84.js.map +1 -1
- package/dist/index85.js +154 -123
- package/dist/index85.js.map +1 -1
- package/dist/index86.js +63 -159
- package/dist/index86.js.map +1 -1
- package/dist/index87.js +35 -65
- package/dist/index87.js.map +1 -1
- package/dist/index88.js +234 -35
- package/dist/index88.js.map +1 -1
- package/dist/index89.js +31 -231
- package/dist/index89.js.map +1 -1
- package/dist/index90.js +210 -34
- package/dist/index90.js.map +1 -1
- package/dist/index91.js +198 -195
- package/dist/index91.js.map +1 -1
- package/dist/index92.js +241 -159
- package/dist/index92.js.map +1 -1
- package/dist/index93.js +166 -283
- package/dist/index93.js.map +1 -1
- package/dist/index94.js +253 -173
- package/dist/index94.js.map +1 -1
- package/dist/index95.js +14 -258
- package/dist/index95.js.map +1 -1
- package/dist/index96.js +31 -12
- package/dist/index96.js.map +1 -1
- package/dist/index97.js +5 -32
- package/dist/index97.js.map +1 -1
- package/dist/index98.js +13 -5
- package/dist/index98.js.map +1 -1
- package/dist/index99.js +43 -11
- package/dist/index99.js.map +1 -1
- package/package.json +11 -5
- package/dist/components/Calendar.d.ts +0 -23
- package/dist/index.css +0 -1
- package/dist/index106.js +0 -21
- package/dist/index106.js.map +0 -1
- package/dist/index107.js +0 -177
- package/dist/index107.js.map +0 -1
- package/dist/index109.js +0 -10796
- package/dist/index109.js.map +0 -1
- package/dist/index110.js +0 -8
- package/dist/index110.js.map +0 -1
- package/dist/index111.js +0 -45
- package/dist/index111.js.map +0 -1
- package/dist/index112.js +0 -5
- package/dist/index112.js.map +0 -1
- package/dist/index113.js +0 -10
- package/dist/index113.js.map +0 -1
- package/dist/index114.js +0 -155
- package/dist/index114.js.map +0 -1
- package/dist/index115.js +0 -33
- package/dist/index115.js.map +0 -1
- package/dist/index116.js +0 -33
- package/dist/index116.js.map +0 -1
- package/dist/index117.js +0 -5
- package/dist/index117.js.map +0 -1
- package/dist/index118.js +0 -75
- package/dist/index118.js.map +0 -1
- package/dist/index119.js +0 -42
- package/dist/index119.js.map +0 -1
- package/dist/index120.js +0 -29
- package/dist/index120.js.map +0 -1
- package/dist/index121.js +0 -24
- package/dist/index121.js.map +0 -1
- package/dist/index122.js +0 -27
- package/dist/index122.js.map +0 -1
- package/dist/index123.js +0 -23
- package/dist/index123.js.map +0 -1
- package/dist/index124.js +0 -103
- package/dist/index124.js.map +0 -1
- package/dist/index125.js +0 -363
- package/dist/index125.js.map +0 -1
- package/dist/index126.js +0 -28
- package/dist/index126.js.map +0 -1
- package/dist/index127.js +0 -76
- package/dist/index127.js.map +0 -1
- package/dist/index128.js +0 -19
- package/dist/index128.js.map +0 -1
- package/dist/index129.js +0 -69
- package/dist/index129.js.map +0 -1
- package/dist/index130.js +0 -147
- package/dist/index130.js.map +0 -1
- package/dist/index131.js +0 -5
- package/dist/index131.js.map +0 -1
- package/dist/index132.js +0 -59
- package/dist/index132.js.map +0 -1
- package/dist/index133.js +0 -5
- package/dist/index133.js.map +0 -1
- package/dist/index134.js +0 -5
- package/dist/index134.js.map +0 -1
- package/dist/index135.js +0 -5
- package/dist/index135.js.map +0 -1
- package/dist/index136.js +0 -5
- package/dist/index136.js.map +0 -1
- package/dist/index137.js +0 -5
- package/dist/index137.js.map +0 -1
- package/dist/index138.js +0 -5
- package/dist/index138.js.map +0 -1
- package/dist/index139.js +0 -5
- package/dist/index139.js.map +0 -1
- package/dist/index140.js +0 -5
- package/dist/index140.js.map +0 -1
- package/dist/index141.js +0 -35
- package/dist/index141.js.map +0 -1
- package/dist/index142.js +0 -5
- package/dist/index142.js.map +0 -1
- package/dist/index143.js +0 -11
- package/dist/index143.js.map +0 -1
- package/dist/index144.js +0 -5
- package/dist/index144.js.map +0 -1
- package/dist/index145.js +0 -5
- package/dist/index145.js.map +0 -1
- package/dist/index146.js +0 -24
- package/dist/index146.js.map +0 -1
- package/dist/index147.js +0 -5
- package/dist/index147.js.map +0 -1
- package/dist/index148.js +0 -27
- package/dist/index148.js.map +0 -1
- package/dist/index149.js +0 -74
- package/dist/index149.js.map +0 -1
- package/dist/index150.js +0 -24
- package/dist/index150.js.map +0 -1
- package/dist/index151.js +0 -37
- package/dist/index151.js.map +0 -1
- package/dist/index152.js +0 -73
- package/dist/index152.js.map +0 -1
- package/dist/index153.js +0 -5
- package/dist/index153.js.map +0 -1
- package/dist/index154.js +0 -25
- package/dist/index154.js.map +0 -1
- package/dist/index155.js +0 -5
- package/dist/index155.js.map +0 -1
- package/dist/index156.js +0 -5
- package/dist/index156.js.map +0 -1
- package/dist/index157.js +0 -5
- package/dist/index157.js.map +0 -1
- package/dist/index158.js +0 -5
- package/dist/index158.js.map +0 -1
- package/dist/index159.js +0 -7
- package/dist/index159.js.map +0 -1
package/dist/index22.js
CHANGED
|
@@ -1,187 +1,113 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
"January",
|
|
6
|
-
"February",
|
|
7
|
-
"March",
|
|
8
|
-
"April",
|
|
9
|
-
"May",
|
|
10
|
-
"June",
|
|
11
|
-
"July",
|
|
12
|
-
"August",
|
|
13
|
-
"September",
|
|
14
|
-
"October",
|
|
15
|
-
"November",
|
|
16
|
-
"December"
|
|
17
|
-
];
|
|
18
|
-
function L(t, l = "MM/DD/YYYY") {
|
|
19
|
-
if (!t) return "";
|
|
20
|
-
const u = t.getFullYear(), f = String(t.getMonth() + 1).padStart(2, "0"), g = String(t.getDate()).padStart(2, "0");
|
|
21
|
-
return l.replace("YYYY", String(u)).replace("MM", f).replace("DD", g);
|
|
1
|
+
import { jsxs as h, jsx as s, Fragment as L } from "react/jsx-runtime";
|
|
2
|
+
import m from "react";
|
|
3
|
+
function _(d) {
|
|
4
|
+
return null;
|
|
22
5
|
}
|
|
23
|
-
function
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
D.push(null);
|
|
66
|
-
for (let e = 1; e <= k; e++)
|
|
67
|
-
D.push(e);
|
|
68
|
-
const M = (e) => !e || !o ? !1 : o.getDate() === e && o.getMonth() === r && o.getFullYear() === a, R = (e) => {
|
|
69
|
-
if (!e) return !1;
|
|
70
|
-
const s = /* @__PURE__ */ new Date();
|
|
71
|
-
return s.getDate() === e && s.getMonth() === r && s.getFullYear() === a;
|
|
72
|
-
};
|
|
73
|
-
return /* @__PURE__ */ m("div", { ref: w, className: `relative ${x}`, "data-state": c ? "open" : "closed", ...Y, children: [
|
|
74
|
-
/* @__PURE__ */ n(
|
|
75
|
-
T,
|
|
76
|
-
{
|
|
77
|
-
value: L(o, f),
|
|
78
|
-
placeholder: g,
|
|
79
|
-
disabled: v,
|
|
80
|
-
size: N,
|
|
81
|
-
readOnly: !0,
|
|
82
|
-
onClick: () => !v && d(!c),
|
|
83
|
-
className: "cursor-pointer"
|
|
84
|
-
}
|
|
85
|
-
),
|
|
86
|
-
c && /* @__PURE__ */ m("div", { className: "absolute top-full left-0 mt-2 bg-base-100 border border-base-300 rounded-lg shadow-lg p-4 z-50 w-80", children: [
|
|
87
|
-
/* @__PURE__ */ m("div", { className: "flex items-center justify-between mb-4", children: [
|
|
88
|
-
/* @__PURE__ */ n(
|
|
89
|
-
"button",
|
|
90
|
-
{
|
|
91
|
-
type: "button",
|
|
92
|
-
onClick: F,
|
|
93
|
-
className: "btn btn-ghost btn-sm btn-square",
|
|
94
|
-
children: /* @__PURE__ */ n(
|
|
95
|
-
"svg",
|
|
96
|
-
{
|
|
97
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
98
|
-
className: "h-5 w-5",
|
|
99
|
-
viewBox: "0 0 20 20",
|
|
100
|
-
fill: "currentColor",
|
|
101
|
-
children: /* @__PURE__ */ n(
|
|
102
|
-
"path",
|
|
103
|
-
{
|
|
104
|
-
fillRule: "evenodd",
|
|
105
|
-
d: "M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z",
|
|
106
|
-
clipRule: "evenodd"
|
|
107
|
-
}
|
|
108
|
-
)
|
|
109
|
-
}
|
|
110
|
-
)
|
|
111
|
-
}
|
|
112
|
-
),
|
|
113
|
-
/* @__PURE__ */ m("div", { className: "text-base font-semibold", children: [
|
|
114
|
-
I[r],
|
|
115
|
-
" ",
|
|
116
|
-
a
|
|
117
|
-
] }),
|
|
118
|
-
/* @__PURE__ */ n(
|
|
119
|
-
"button",
|
|
120
|
-
{
|
|
121
|
-
type: "button",
|
|
122
|
-
onClick: O,
|
|
123
|
-
className: "btn btn-ghost btn-sm btn-square",
|
|
124
|
-
children: /* @__PURE__ */ n(
|
|
125
|
-
"svg",
|
|
6
|
+
function B({
|
|
7
|
+
title: d,
|
|
8
|
+
bordered: a = !1,
|
|
9
|
+
column: l = 3,
|
|
10
|
+
size: v = "default",
|
|
11
|
+
layout: w = "horizontal",
|
|
12
|
+
colon: x = !0,
|
|
13
|
+
labelStyle: N,
|
|
14
|
+
contentStyle: $,
|
|
15
|
+
className: j = "",
|
|
16
|
+
style: F,
|
|
17
|
+
children: M,
|
|
18
|
+
...D
|
|
19
|
+
}) {
|
|
20
|
+
const R = {
|
|
21
|
+
small: "text-sm",
|
|
22
|
+
default: "text-base",
|
|
23
|
+
large: "text-lg"
|
|
24
|
+
}, y = m.Children.toArray(M).filter(
|
|
25
|
+
(p) => m.isValidElement(p)
|
|
26
|
+
), e = typeof l == "number" ? l : l.md || l.sm || l.xs || 3, z = () => {
|
|
27
|
+
if (w === "vertical")
|
|
28
|
+
return y.map((r, t) => {
|
|
29
|
+
const o = r.props.span || 1, b = Math.min(o, e), f = r.props.labelStyle || N;
|
|
30
|
+
return /* @__PURE__ */ h(m.Fragment, { children: [
|
|
31
|
+
/* @__PURE__ */ h(
|
|
32
|
+
"th",
|
|
33
|
+
{
|
|
34
|
+
className: `${a ? "border border-base-content/10" : ""} bg-base-200/50 font-semibold text-left px-4 py-2`,
|
|
35
|
+
style: f,
|
|
36
|
+
colSpan: b,
|
|
37
|
+
children: [
|
|
38
|
+
r.props.label,
|
|
39
|
+
x && r.props.label && ":"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
),
|
|
43
|
+
t % e === e - 1 && /* @__PURE__ */ s(L, { children: Array.from({ length: e - ((t + 1) % e || e) }).map((n, i) => /* @__PURE__ */ s("th", { className: `${a ? "border border-base-content/10" : ""}` }, `empty-${i}`)) }),
|
|
44
|
+
(t + 1) % e === 0 && /* @__PURE__ */ s("tr", { children: y.slice(t - e + 1, t + 1).map((n, i) => {
|
|
45
|
+
const g = n.props.span || 1, u = Math.min(g, e), C = n.props.contentStyle || $;
|
|
46
|
+
return /* @__PURE__ */ s(
|
|
47
|
+
"td",
|
|
126
48
|
{
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
{
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
"
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
49
|
+
className: `${a ? "border border-base-content/10" : ""} px-4 py-2`,
|
|
50
|
+
style: C,
|
|
51
|
+
colSpan: u,
|
|
52
|
+
children: n.props.children
|
|
53
|
+
},
|
|
54
|
+
i
|
|
55
|
+
);
|
|
56
|
+
}) }, `content-row-${t}`)
|
|
57
|
+
] }, t);
|
|
58
|
+
});
|
|
59
|
+
const p = [];
|
|
60
|
+
let c = [], S = 0;
|
|
61
|
+
return y.forEach((r) => {
|
|
62
|
+
const t = r.props.span || 1, o = Math.min(t, e);
|
|
63
|
+
S + o > e ? (p.push(c), c = [r], S = o) : (c.push(r), S += o);
|
|
64
|
+
}), c.length > 0 && p.push(c), p.map((r, t) => {
|
|
65
|
+
let o = 0;
|
|
66
|
+
const b = r.map((n, i) => {
|
|
67
|
+
const g = n.props.span || 1, u = Math.min(g, e), C = n.props.labelStyle || N, E = n.props.contentStyle || $;
|
|
68
|
+
return o += u, /* @__PURE__ */ h(m.Fragment, { children: [
|
|
69
|
+
/* @__PURE__ */ h(
|
|
70
|
+
"th",
|
|
71
|
+
{
|
|
72
|
+
className: `${a ? "border border-base-content/10" : ""} bg-base-200/50 font-semibold text-left px-4 py-2 whitespace-nowrap`,
|
|
73
|
+
style: C,
|
|
74
|
+
children: [
|
|
75
|
+
n.props.label,
|
|
76
|
+
x && n.props.label && ":"
|
|
77
|
+
]
|
|
78
|
+
}
|
|
79
|
+
),
|
|
80
|
+
/* @__PURE__ */ s(
|
|
81
|
+
"td",
|
|
82
|
+
{
|
|
83
|
+
className: `${a ? "border border-base-content/10" : ""} px-4 py-2`,
|
|
84
|
+
style: E,
|
|
85
|
+
colSpan: u * 2 - 1,
|
|
86
|
+
children: n.props.children
|
|
87
|
+
}
|
|
88
|
+
)
|
|
89
|
+
] }, i);
|
|
90
|
+
}), f = e - o;
|
|
91
|
+
return f > 0 && b.push(
|
|
92
|
+
/* @__PURE__ */ s(m.Fragment, { children: /* @__PURE__ */ s("th", { className: `${a ? "border border-base-content/10" : ""}`, colSpan: f * 2 }) }, "empty")
|
|
93
|
+
), /* @__PURE__ */ s("tr", { children: b }, t);
|
|
94
|
+
});
|
|
95
|
+
}, A = [
|
|
96
|
+
"w-full",
|
|
97
|
+
a && "border-collapse",
|
|
98
|
+
R[v],
|
|
99
|
+
j
|
|
100
|
+
].filter(Boolean).join(" ");
|
|
101
|
+
return /* @__PURE__ */ h("div", { style: F, ...D, children: [
|
|
102
|
+
d && /* @__PURE__ */ s("div", { className: "text-lg font-semibold mb-4", children: d }),
|
|
103
|
+
/* @__PURE__ */ s("table", { className: A, children: /* @__PURE__ */ s("tbody", { children: z() }) })
|
|
182
104
|
] });
|
|
183
|
-
}
|
|
105
|
+
}
|
|
106
|
+
const k = Object.assign(B, {
|
|
107
|
+
Item: _
|
|
108
|
+
});
|
|
184
109
|
export {
|
|
185
|
-
|
|
110
|
+
k as Descriptions,
|
|
111
|
+
k as default
|
|
186
112
|
};
|
|
187
113
|
//# sourceMappingURL=index22.js.map
|
package/dist/index22.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index22.js","sources":["../src/components/DatePicker.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect } from 'react'\nimport { Input } from './Input'\n\nexport interface DatePickerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'defaultValue'> {\n value?: Date | null\n defaultValue?: Date | null\n onChange?: (date: Date | null) => void\n format?: string\n placeholder?: string\n disabled?: boolean\n size?: 'xs' | 'sm' | 'md' | 'lg'\n}\n\nconst DAYS = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\nconst MONTHS = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n]\n\nfunction formatDate(date: Date | null, format: string = 'MM/DD/YYYY'): string {\n if (!date) return ''\n\n const year = date.getFullYear()\n const month = String(date.getMonth() + 1).padStart(2, '0')\n const day = String(date.getDate()).padStart(2, '0')\n\n return format\n .replace('YYYY', String(year))\n .replace('MM', month)\n .replace('DD', day)\n}\n\nfunction getDaysInMonth(year: number, month: number): number {\n return new Date(year, month + 1, 0).getDate()\n}\n\nfunction getFirstDayOfMonth(year: number, month: number): number {\n return new Date(year, month, 1).getDay()\n}\n\nexport const DatePicker: React.FC<DatePickerProps> = ({\n value,\n defaultValue,\n onChange,\n format,\n placeholder = 'Select date',\n disabled = false,\n className = '',\n size = 'md',\n ...rest\n}) => {\n const [selectedDate, setSelectedDate] = useState<Date | null>(\n value || defaultValue || null\n )\n const [isOpen, setIsOpen] = useState(false)\n const [viewMonth, setViewMonth] = useState(\n selectedDate ? selectedDate.getMonth() : new Date().getMonth()\n )\n const [viewYear, setViewYear] = useState(\n selectedDate ? selectedDate.getFullYear() : new Date().getFullYear()\n )\n\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (value !== undefined) {\n setSelectedDate(value)\n }\n }, [value])\n\n useEffect(() => {\n function handleClickOutside(event: MouseEvent) {\n if (containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setIsOpen(false)\n }\n }\n\n if (isOpen) {\n document.addEventListener('mousedown', handleClickOutside)\n return () => document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [isOpen])\n\n const handleDateSelect = (day: number) => {\n const newDate = new Date(viewYear, viewMonth, day)\n setSelectedDate(newDate)\n onChange?.(newDate)\n setIsOpen(false)\n }\n\n const handlePrevMonth = () => {\n if (viewMonth === 0) {\n setViewMonth(11)\n setViewYear(viewYear - 1)\n } else {\n setViewMonth(viewMonth - 1)\n }\n }\n\n const handleNextMonth = () => {\n if (viewMonth === 11) {\n setViewMonth(0)\n setViewYear(viewYear + 1)\n } else {\n setViewMonth(viewMonth + 1)\n }\n }\n\n const daysInMonth = getDaysInMonth(viewYear, viewMonth)\n const firstDayOfMonth = getFirstDayOfMonth(viewYear, viewMonth)\n\n const calendarDays: (number | null)[] = []\n for (let i = 0; i < firstDayOfMonth; i++) {\n calendarDays.push(null)\n }\n for (let i = 1; i <= daysInMonth; i++) {\n calendarDays.push(i)\n }\n\n const isSelectedDay = (day: number | null): boolean => {\n if (!day || !selectedDate) return false\n return (\n selectedDate.getDate() === day &&\n selectedDate.getMonth() === viewMonth &&\n selectedDate.getFullYear() === viewYear\n )\n }\n\n const isToday = (day: number | null): boolean => {\n if (!day) return false\n const today = new Date()\n return (\n today.getDate() === day &&\n today.getMonth() === viewMonth &&\n today.getFullYear() === viewYear\n )\n }\n\n return (\n <div ref={containerRef} className={`relative ${className}`} data-state={isOpen ? 'open' : 'closed'} {...rest}>\n <Input\n value={formatDate(selectedDate, format)}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n readOnly\n onClick={() => !disabled && setIsOpen(!isOpen)}\n className=\"cursor-pointer\"\n />\n\n {isOpen && (\n <div className=\"absolute top-full left-0 mt-2 bg-base-100 border border-base-300 rounded-lg shadow-lg p-4 z-50 w-80\">\n {/* Header */}\n <div className=\"flex items-center justify-between mb-4\">\n <button\n type=\"button\"\n onClick={handlePrevMonth}\n className=\"btn btn-ghost btn-sm btn-square\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"h-5 w-5\"\n viewBox=\"0 0 20 20\"\n fill=\"currentColor\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </button>\n\n <div className=\"text-base font-semibold\">\n {MONTHS[viewMonth]} {viewYear}\n </div>\n\n <button\n type=\"button\"\n onClick={handleNextMonth}\n className=\"btn btn-ghost btn-sm btn-square\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"h-5 w-5\"\n viewBox=\"0 0 20 20\"\n fill=\"currentColor\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </button>\n </div>\n\n {/* Days of week */}\n <div className=\"grid grid-cols-7 gap-1 mb-2\">\n {DAYS.map((day) => (\n <div\n key={day}\n className=\"text-center text-xs font-semibold text-base-content/60 py-2\"\n >\n {day}\n </div>\n ))}\n </div>\n\n {/* Calendar grid */}\n <div className=\"grid grid-cols-7 gap-1\">\n {calendarDays.map((day, index) => (\n <button\n key={index}\n type=\"button\"\n disabled={!day}\n onClick={() => day && handleDateSelect(day)}\n className={`\n aspect-square flex items-center justify-center text-sm rounded-lg\n ${!day ? 'invisible' : 'hover:bg-base-200'}\n ${isSelectedDay(day) ? 'bg-primary text-primary-content hover:bg-primary/90' : ''}\n ${isToday(day) && !isSelectedDay(day) ? 'border border-primary' : ''}\n ${day ? 'cursor-pointer' : ''}\n `}\n >\n {day}\n </button>\n ))}\n </div>\n\n {/* Today button */}\n <div className=\"mt-4 flex justify-end\">\n <button\n type=\"button\"\n onClick={() => {\n const today = new Date()\n setSelectedDate(today)\n setViewMonth(today.getMonth())\n setViewYear(today.getFullYear())\n onChange?.(today)\n setIsOpen(false)\n }}\n className=\"btn btn-ghost btn-sm\"\n >\n Today\n </button>\n </div>\n </div>\n )}\n </div>\n )\n}\n"],"names":["DAYS","MONTHS","formatDate","date","format","year","month","day","getDaysInMonth","getFirstDayOfMonth","DatePicker","value","defaultValue","onChange","placeholder","disabled","className","size","rest","selectedDate","setSelectedDate","useState","isOpen","setIsOpen","viewMonth","setViewMonth","viewYear","setViewYear","containerRef","useRef","useEffect","handleClickOutside","event","handleDateSelect","newDate","handlePrevMonth","handleNextMonth","daysInMonth","firstDayOfMonth","calendarDays","i","isSelectedDay","isToday","today","jsxs","jsx","Input","index"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index22.js","sources":["../src/components/Descriptions.tsx"],"sourcesContent":["import React from 'react'\n\nexport type DescriptionsSize = 'small' | 'default' | 'large'\nexport type DescriptionsLayout = 'horizontal' | 'vertical'\n\nexport interface DescriptionsItemProps {\n label?: React.ReactNode\n span?: number\n children?: React.ReactNode\n labelStyle?: React.CSSProperties\n contentStyle?: React.CSSProperties\n}\n\nexport interface DescriptionsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'> {\n title?: React.ReactNode\n bordered?: boolean\n column?: number | {\n xs?: number\n sm?: number\n md?: number\n lg?: number\n xl?: number\n '2xl'?: number\n }\n size?: DescriptionsSize\n layout?: DescriptionsLayout\n colon?: boolean\n labelStyle?: React.CSSProperties\n contentStyle?: React.CSSProperties\n children?: React.ReactNode\n}\n\nfunction DescriptionsItem(_props: DescriptionsItemProps) {\n return null\n}\n\nfunction DescriptionsRoot({\n title,\n bordered = false,\n column = 3,\n size = 'default',\n layout = 'horizontal',\n colon = true,\n labelStyle,\n contentStyle,\n className = '',\n style,\n children,\n ...rest\n}: DescriptionsProps) {\n const sizeClasses: Record<DescriptionsSize, string> = {\n small: 'text-sm',\n default: 'text-base',\n large: 'text-lg',\n }\n\n const items = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<DescriptionsItemProps> =>\n React.isValidElement(child)\n )\n\n const getColumnCount = () => {\n if (typeof column === 'number') {\n return column\n }\n // For responsive columns, default to md value or 3\n return column.md || column.sm || column.xs || 3\n }\n\n const columnCount = getColumnCount()\n\n const renderItems = () => {\n if (layout === 'vertical') {\n return items.map((item, index) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n const itemLabelStyle = item.props.labelStyle || labelStyle\n\n return (\n <React.Fragment key={index}>\n <th\n className={`${bordered ? 'border border-base-content/10' : ''} bg-base-200/50 font-semibold text-left px-4 py-2`}\n style={itemLabelStyle}\n colSpan={effectiveSpan}\n >\n {item.props.label}\n {colon && item.props.label && ':'}\n </th>\n {index % columnCount === columnCount - 1 && (\n <>\n {Array.from({ length: columnCount - ((index + 1) % columnCount || columnCount) }).map((_, i) => (\n <th key={`empty-${i}`} className={`${bordered ? 'border border-base-content/10' : ''}`} />\n ))}\n </>\n )}\n {(index + 1) % columnCount === 0 && (\n <tr key={`content-row-${index}`}>\n {items.slice(index - columnCount + 1, index + 1).map((contentItem, ci) => {\n const contentSpan = contentItem.props.span || 1\n const effectiveContentSpan = Math.min(contentSpan, columnCount)\n const itemContentStyle2 = contentItem.props.contentStyle || contentStyle\n\n return (\n <td\n key={ci}\n className={`${bordered ? 'border border-base-content/10' : ''} px-4 py-2`}\n style={itemContentStyle2}\n colSpan={effectiveContentSpan}\n >\n {contentItem.props.children}\n </td>\n )\n })}\n </tr>\n )}\n </React.Fragment>\n )\n })\n }\n\n // Horizontal layout\n const rows: React.ReactElement<DescriptionsItemProps>[][] = []\n let currentRow: React.ReactElement<DescriptionsItemProps>[] = []\n let currentSpan = 0\n\n items.forEach((item) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n\n if (currentSpan + effectiveSpan > columnCount) {\n rows.push(currentRow)\n currentRow = [item]\n currentSpan = effectiveSpan\n } else {\n currentRow.push(item)\n currentSpan += effectiveSpan\n }\n })\n\n if (currentRow.length > 0) {\n rows.push(currentRow)\n }\n\n return rows.map((row, rowIndex) => {\n let usedSpan = 0\n const cells = row.map((item, cellIndex) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n const itemLabelStyle = item.props.labelStyle || labelStyle\n const itemContentStyle = item.props.contentStyle || contentStyle\n usedSpan += effectiveSpan\n\n return (\n <React.Fragment key={cellIndex}>\n <th\n className={`${bordered ? 'border border-base-content/10' : ''} bg-base-200/50 font-semibold text-left px-4 py-2 whitespace-nowrap`}\n style={itemLabelStyle}\n >\n {item.props.label}\n {colon && item.props.label && ':'}\n </th>\n <td\n className={`${bordered ? 'border border-base-content/10' : ''} px-4 py-2`}\n style={itemContentStyle}\n colSpan={effectiveSpan * 2 - 1}\n >\n {item.props.children}\n </td>\n </React.Fragment>\n )\n })\n\n // Fill remaining columns\n const remainingSpan = columnCount - usedSpan\n if (remainingSpan > 0) {\n cells.push(\n <React.Fragment key=\"empty\">\n <th className={`${bordered ? 'border border-base-content/10' : ''}`} colSpan={remainingSpan * 2} />\n </React.Fragment>\n )\n }\n\n return <tr key={rowIndex}>{cells}</tr>\n })\n }\n\n const containerClasses = [\n 'w-full',\n bordered && 'border-collapse',\n sizeClasses[size],\n className,\n ].filter(Boolean).join(' ')\n\n return (\n <div style={style} {...rest}>\n {title && (\n <div className=\"text-lg font-semibold mb-4\">\n {title}\n </div>\n )}\n <table className={containerClasses}>\n <tbody>\n {renderItems()}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport const Descriptions = Object.assign(DescriptionsRoot, {\n Item: DescriptionsItem,\n})\n\nexport default Descriptions\n"],"names":["DescriptionsItem","_props","DescriptionsRoot","title","bordered","column","size","layout","colon","labelStyle","contentStyle","className","style","children","rest","sizeClasses","items","React","child","columnCount","renderItems","item","index","span","effectiveSpan","itemLabelStyle","jsxs","_","jsx","contentItem","ci","contentSpan","effectiveContentSpan","itemContentStyle2","rows","currentRow","currentSpan","row","rowIndex","usedSpan","cells","cellIndex","itemContentStyle","remainingSpan","containerClasses","Descriptions"],"mappings":"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"}
|
package/dist/index23.js
CHANGED
|
@@ -1,113 +1,22 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}) {
|
|
20
|
-
const R = {
|
|
21
|
-
small: "text-sm",
|
|
22
|
-
default: "text-base",
|
|
23
|
-
large: "text-lg"
|
|
24
|
-
}, y = m.Children.toArray(M).filter(
|
|
25
|
-
(p) => m.isValidElement(p)
|
|
26
|
-
), e = typeof l == "number" ? l : l.md || l.sm || l.xs || 3, z = () => {
|
|
27
|
-
if (w === "vertical")
|
|
28
|
-
return y.map((r, t) => {
|
|
29
|
-
const o = r.props.span || 1, b = Math.min(o, e), f = r.props.labelStyle || N;
|
|
30
|
-
return /* @__PURE__ */ h(m.Fragment, { children: [
|
|
31
|
-
/* @__PURE__ */ h(
|
|
32
|
-
"th",
|
|
33
|
-
{
|
|
34
|
-
className: `${a ? "border border-base-content/10" : ""} bg-base-200/50 font-semibold text-left px-4 py-2`,
|
|
35
|
-
style: f,
|
|
36
|
-
colSpan: b,
|
|
37
|
-
children: [
|
|
38
|
-
r.props.label,
|
|
39
|
-
x && r.props.label && ":"
|
|
40
|
-
]
|
|
41
|
-
}
|
|
42
|
-
),
|
|
43
|
-
t % e === e - 1 && /* @__PURE__ */ s(L, { children: Array.from({ length: e - ((t + 1) % e || e) }).map((n, i) => /* @__PURE__ */ s("th", { className: `${a ? "border border-base-content/10" : ""}` }, `empty-${i}`)) }),
|
|
44
|
-
(t + 1) % e === 0 && /* @__PURE__ */ s("tr", { children: y.slice(t - e + 1, t + 1).map((n, i) => {
|
|
45
|
-
const g = n.props.span || 1, u = Math.min(g, e), C = n.props.contentStyle || $;
|
|
46
|
-
return /* @__PURE__ */ s(
|
|
47
|
-
"td",
|
|
48
|
-
{
|
|
49
|
-
className: `${a ? "border border-base-content/10" : ""} px-4 py-2`,
|
|
50
|
-
style: C,
|
|
51
|
-
colSpan: u,
|
|
52
|
-
children: n.props.children
|
|
53
|
-
},
|
|
54
|
-
i
|
|
55
|
-
);
|
|
56
|
-
}) }, `content-row-${t}`)
|
|
57
|
-
] }, t);
|
|
58
|
-
});
|
|
59
|
-
const p = [];
|
|
60
|
-
let c = [], S = 0;
|
|
61
|
-
return y.forEach((r) => {
|
|
62
|
-
const t = r.props.span || 1, o = Math.min(t, e);
|
|
63
|
-
S + o > e ? (p.push(c), c = [r], S = o) : (c.push(r), S += o);
|
|
64
|
-
}), c.length > 0 && p.push(c), p.map((r, t) => {
|
|
65
|
-
let o = 0;
|
|
66
|
-
const b = r.map((n, i) => {
|
|
67
|
-
const g = n.props.span || 1, u = Math.min(g, e), C = n.props.labelStyle || N, E = n.props.contentStyle || $;
|
|
68
|
-
return o += u, /* @__PURE__ */ h(m.Fragment, { children: [
|
|
69
|
-
/* @__PURE__ */ h(
|
|
70
|
-
"th",
|
|
71
|
-
{
|
|
72
|
-
className: `${a ? "border border-base-content/10" : ""} bg-base-200/50 font-semibold text-left px-4 py-2 whitespace-nowrap`,
|
|
73
|
-
style: C,
|
|
74
|
-
children: [
|
|
75
|
-
n.props.label,
|
|
76
|
-
x && n.props.label && ":"
|
|
77
|
-
]
|
|
78
|
-
}
|
|
79
|
-
),
|
|
80
|
-
/* @__PURE__ */ s(
|
|
81
|
-
"td",
|
|
82
|
-
{
|
|
83
|
-
className: `${a ? "border border-base-content/10" : ""} px-4 py-2`,
|
|
84
|
-
style: E,
|
|
85
|
-
colSpan: u * 2 - 1,
|
|
86
|
-
children: n.props.children
|
|
87
|
-
}
|
|
88
|
-
)
|
|
89
|
-
] }, i);
|
|
90
|
-
}), f = e - o;
|
|
91
|
-
return f > 0 && b.push(
|
|
92
|
-
/* @__PURE__ */ s(m.Fragment, { children: /* @__PURE__ */ s("th", { className: `${a ? "border border-base-content/10" : ""}`, colSpan: f * 2 }) }, "empty")
|
|
93
|
-
), /* @__PURE__ */ s("tr", { children: b }, t);
|
|
94
|
-
});
|
|
95
|
-
}, A = [
|
|
96
|
-
"w-full",
|
|
97
|
-
a && "border-collapse",
|
|
98
|
-
R[v],
|
|
99
|
-
j
|
|
100
|
-
].filter(Boolean).join(" ");
|
|
101
|
-
return /* @__PURE__ */ h("div", { style: F, ...D, children: [
|
|
102
|
-
d && /* @__PURE__ */ s("div", { className: "text-lg font-semibold mb-4", children: d }),
|
|
103
|
-
/* @__PURE__ */ s("table", { className: A, children: /* @__PURE__ */ s("tbody", { children: z() }) })
|
|
104
|
-
] });
|
|
105
|
-
}
|
|
106
|
-
const k = Object.assign(B, {
|
|
107
|
-
Item: _
|
|
108
|
-
});
|
|
1
|
+
import { jsxs as f, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
const m = ({
|
|
3
|
+
left: i,
|
|
4
|
+
right: r,
|
|
5
|
+
aspect: s = "aspect-16/9",
|
|
6
|
+
className: d = ""
|
|
7
|
+
}) => /* @__PURE__ */ f(
|
|
8
|
+
"figure",
|
|
9
|
+
{
|
|
10
|
+
className: `diff ${s} ${d}`.trim(),
|
|
11
|
+
tabIndex: 0,
|
|
12
|
+
children: [
|
|
13
|
+
/* @__PURE__ */ e("div", { className: "diff-item-1", role: "img", tabIndex: 0, children: i }),
|
|
14
|
+
/* @__PURE__ */ e("div", { className: "diff-item-2", role: "img", children: r }),
|
|
15
|
+
/* @__PURE__ */ e("div", { className: "diff-resizer" })
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
);
|
|
109
19
|
export {
|
|
110
|
-
|
|
111
|
-
k as default
|
|
20
|
+
m as Diff
|
|
112
21
|
};
|
|
113
22
|
//# sourceMappingURL=index23.js.map
|
package/dist/index23.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index23.js","sources":["../src/components/Descriptions.tsx"],"sourcesContent":["import React from 'react'\n\nexport type DescriptionsSize = 'small' | 'default' | 'large'\nexport type DescriptionsLayout = 'horizontal' | 'vertical'\n\nexport interface DescriptionsItemProps {\n label?: React.ReactNode\n span?: number\n children?: React.ReactNode\n labelStyle?: React.CSSProperties\n contentStyle?: React.CSSProperties\n}\n\nexport interface DescriptionsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'> {\n title?: React.ReactNode\n bordered?: boolean\n column?: number | {\n xs?: number\n sm?: number\n md?: number\n lg?: number\n xl?: number\n '2xl'?: number\n }\n size?: DescriptionsSize\n layout?: DescriptionsLayout\n colon?: boolean\n labelStyle?: React.CSSProperties\n contentStyle?: React.CSSProperties\n children?: React.ReactNode\n}\n\nfunction DescriptionsItem(_props: DescriptionsItemProps) {\n return null\n}\n\nfunction DescriptionsRoot({\n title,\n bordered = false,\n column = 3,\n size = 'default',\n layout = 'horizontal',\n colon = true,\n labelStyle,\n contentStyle,\n className = '',\n style,\n children,\n ...rest\n}: DescriptionsProps) {\n const sizeClasses: Record<DescriptionsSize, string> = {\n small: 'text-sm',\n default: 'text-base',\n large: 'text-lg',\n }\n\n const items = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<DescriptionsItemProps> =>\n React.isValidElement(child)\n )\n\n const getColumnCount = () => {\n if (typeof column === 'number') {\n return column\n }\n // For responsive columns, default to md value or 3\n return column.md || column.sm || column.xs || 3\n }\n\n const columnCount = getColumnCount()\n\n const renderItems = () => {\n if (layout === 'vertical') {\n return items.map((item, index) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n const itemLabelStyle = item.props.labelStyle || labelStyle\n\n return (\n <React.Fragment key={index}>\n <th\n className={`${bordered ? 'border border-base-content/10' : ''} bg-base-200/50 font-semibold text-left px-4 py-2`}\n style={itemLabelStyle}\n colSpan={effectiveSpan}\n >\n {item.props.label}\n {colon && item.props.label && ':'}\n </th>\n {index % columnCount === columnCount - 1 && (\n <>\n {Array.from({ length: columnCount - ((index + 1) % columnCount || columnCount) }).map((_, i) => (\n <th key={`empty-${i}`} className={`${bordered ? 'border border-base-content/10' : ''}`} />\n ))}\n </>\n )}\n {(index + 1) % columnCount === 0 && (\n <tr key={`content-row-${index}`}>\n {items.slice(index - columnCount + 1, index + 1).map((contentItem, ci) => {\n const contentSpan = contentItem.props.span || 1\n const effectiveContentSpan = Math.min(contentSpan, columnCount)\n const itemContentStyle2 = contentItem.props.contentStyle || contentStyle\n\n return (\n <td\n key={ci}\n className={`${bordered ? 'border border-base-content/10' : ''} px-4 py-2`}\n style={itemContentStyle2}\n colSpan={effectiveContentSpan}\n >\n {contentItem.props.children}\n </td>\n )\n })}\n </tr>\n )}\n </React.Fragment>\n )\n })\n }\n\n // Horizontal layout\n const rows: React.ReactElement<DescriptionsItemProps>[][] = []\n let currentRow: React.ReactElement<DescriptionsItemProps>[] = []\n let currentSpan = 0\n\n items.forEach((item) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n\n if (currentSpan + effectiveSpan > columnCount) {\n rows.push(currentRow)\n currentRow = [item]\n currentSpan = effectiveSpan\n } else {\n currentRow.push(item)\n currentSpan += effectiveSpan\n }\n })\n\n if (currentRow.length > 0) {\n rows.push(currentRow)\n }\n\n return rows.map((row, rowIndex) => {\n let usedSpan = 0\n const cells = row.map((item, cellIndex) => {\n const span = item.props.span || 1\n const effectiveSpan = Math.min(span, columnCount)\n const itemLabelStyle = item.props.labelStyle || labelStyle\n const itemContentStyle = item.props.contentStyle || contentStyle\n usedSpan += effectiveSpan\n\n return (\n <React.Fragment key={cellIndex}>\n <th\n className={`${bordered ? 'border border-base-content/10' : ''} bg-base-200/50 font-semibold text-left px-4 py-2 whitespace-nowrap`}\n style={itemLabelStyle}\n >\n {item.props.label}\n {colon && item.props.label && ':'}\n </th>\n <td\n className={`${bordered ? 'border border-base-content/10' : ''} px-4 py-2`}\n style={itemContentStyle}\n colSpan={effectiveSpan * 2 - 1}\n >\n {item.props.children}\n </td>\n </React.Fragment>\n )\n })\n\n // Fill remaining columns\n const remainingSpan = columnCount - usedSpan\n if (remainingSpan > 0) {\n cells.push(\n <React.Fragment key=\"empty\">\n <th className={`${bordered ? 'border border-base-content/10' : ''}`} colSpan={remainingSpan * 2} />\n </React.Fragment>\n )\n }\n\n return <tr key={rowIndex}>{cells}</tr>\n })\n }\n\n const containerClasses = [\n 'w-full',\n bordered && 'border-collapse',\n sizeClasses[size],\n className,\n ].filter(Boolean).join(' ')\n\n return (\n <div style={style} {...rest}>\n {title && (\n <div className=\"text-lg font-semibold mb-4\">\n {title}\n </div>\n )}\n <table className={containerClasses}>\n <tbody>\n {renderItems()}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport const Descriptions = Object.assign(DescriptionsRoot, {\n Item: DescriptionsItem,\n})\n\nexport default Descriptions\n"],"names":["DescriptionsItem","_props","DescriptionsRoot","title","bordered","column","size","layout","colon","labelStyle","contentStyle","className","style","children","rest","sizeClasses","items","React","child","columnCount","renderItems","item","index","span","effectiveSpan","itemLabelStyle","jsxs","_","jsx","contentItem","ci","contentSpan","effectiveContentSpan","itemContentStyle2","rows","currentRow","currentSpan","row","rowIndex","usedSpan","cells","cellIndex","itemContentStyle","remainingSpan","containerClasses","Descriptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index23.js","sources":["../src/components/Diff.tsx"],"sourcesContent":["import React from 'react'\n\nexport interface DiffProps {\n /** Left side content (revealed when dragging) */\n left: React.ReactNode\n /** Right side content (hidden when dragging) */\n right: React.ReactNode\n /** Aspect ratio class (e.g., \"aspect-16/9\", \"aspect-4/3\", \"aspect-square\") */\n aspect?: string\n /** Additional CSS classes */\n className?: string\n}\n\nexport const Diff: React.FC<DiffProps> = ({\n left,\n right,\n aspect = 'aspect-16/9',\n className = '',\n}) => {\n return (\n <figure\n className={`diff ${aspect} ${className}`.trim()}\n tabIndex={0}\n >\n <div className=\"diff-item-1\" role=\"img\" tabIndex={0}>\n {left}\n </div>\n <div className=\"diff-item-2\" role=\"img\">\n {right}\n </div>\n <div className=\"diff-resizer\" />\n </figure>\n )\n}\n"],"names":["Diff","left","right","aspect","className","jsxs","jsx"],"mappings":";AAaO,MAAMA,IAA4B,CAAC;AAAA,EACxC,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,WAAAC,IAAY;AACd,MAEI,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW,QAAQF,CAAM,IAAIC,CAAS,GAAG,KAAA;AAAA,IACzC,UAAU;AAAA,IAEV,UAAA;AAAA,MAAA,gBAAAE,EAAC,SAAI,WAAU,eAAc,MAAK,OAAM,UAAU,GAC/C,UAAAL,EAAA,CACH;AAAA,wBACC,OAAA,EAAI,WAAU,eAAc,MAAK,OAC/B,UAAAC,GACH;AAAA,MACA,gBAAAI,EAAC,OAAA,EAAI,WAAU,eAAA,CAAe;AAAA,IAAA;AAAA,EAAA;AAAA;"}
|
package/dist/index24.js
CHANGED
|
@@ -1,22 +1,46 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}) => /* @__PURE__ */ f(
|
|
8
|
-
"figure",
|
|
9
|
-
{
|
|
10
|
-
className: `diff ${s} ${d}`.trim(),
|
|
11
|
-
tabIndex: 0,
|
|
12
|
-
children: [
|
|
13
|
-
/* @__PURE__ */ e("div", { className: "diff-item-1", role: "img", tabIndex: 0, children: i }),
|
|
14
|
-
/* @__PURE__ */ e("div", { className: "diff-item-2", role: "img", children: r }),
|
|
15
|
-
/* @__PURE__ */ e("div", { className: "diff-resizer" })
|
|
16
|
-
]
|
|
1
|
+
import { jsx as a, jsxs as f } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as m } from "react";
|
|
3
|
+
const b = m(
|
|
4
|
+
({ active: o, children: c, className: l = "", ...e }, d) => {
|
|
5
|
+
const n = [o && "dock-active", l].filter(Boolean).join(" ");
|
|
6
|
+
return /* @__PURE__ */ a("button", { ref: d, className: n || void 0, ...e, children: c });
|
|
17
7
|
}
|
|
18
8
|
);
|
|
9
|
+
b.displayName = "Dock.Item";
|
|
10
|
+
const v = m(
|
|
11
|
+
({ items: o, size: c, activeIndex: l, onChange: e, children: d, className: n = "", ...i }, r) => {
|
|
12
|
+
const k = ["dock", c && {
|
|
13
|
+
xs: "dock-xs",
|
|
14
|
+
sm: "dock-sm",
|
|
15
|
+
md: "dock-md",
|
|
16
|
+
lg: "dock-lg",
|
|
17
|
+
xl: "dock-xl"
|
|
18
|
+
}[c], n].filter(Boolean).join(" ");
|
|
19
|
+
return o ? /* @__PURE__ */ a("div", { ref: r, className: k, ...i, children: o.map((s, t) => {
|
|
20
|
+
const N = l !== void 0 ? l === t : s.active;
|
|
21
|
+
return /* @__PURE__ */ f(
|
|
22
|
+
"button",
|
|
23
|
+
{
|
|
24
|
+
className: N ? "dock-active" : void 0,
|
|
25
|
+
disabled: s.disabled,
|
|
26
|
+
onClick: () => {
|
|
27
|
+
s.onClick?.(), e?.(t);
|
|
28
|
+
},
|
|
29
|
+
children: [
|
|
30
|
+
s.icon,
|
|
31
|
+
s.label && /* @__PURE__ */ a("span", { className: "dock-label", children: s.label })
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
t
|
|
35
|
+
);
|
|
36
|
+
}) }) : /* @__PURE__ */ a("div", { ref: r, className: k, ...i, children: d });
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
v.displayName = "Dock";
|
|
40
|
+
const D = Object.assign(v, {
|
|
41
|
+
Item: b
|
|
42
|
+
});
|
|
19
43
|
export {
|
|
20
|
-
|
|
44
|
+
D as Dock
|
|
21
45
|
};
|
|
22
46
|
//# sourceMappingURL=index24.js.map
|
package/dist/index24.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index24.js","sources":["../src/components/
|
|
1
|
+
{"version":3,"file":"index24.js","sources":["../src/components/Dock.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\n\nexport interface DockItemConfig {\n /** Icon element */\n icon: React.ReactNode\n /** Label text */\n label?: string\n /** Whether this item is active */\n active?: boolean\n /** Whether this item is disabled */\n disabled?: boolean\n /** Click handler for this item */\n onClick?: () => void\n}\n\nexport interface DockProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n /** Dock items configuration */\n items?: DockItemConfig[]\n /** Size variant */\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n /** Controlled active index */\n activeIndex?: number\n /** Callback when an item is clicked */\n onChange?: (index: number) => void\n /** Children (alternative to items prop) */\n children?: React.ReactNode\n /** Additional CSS classes */\n className?: string\n}\n\nexport interface DockItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /** Whether this item is active */\n active?: boolean\n /** Children (icon and optional label) */\n children: React.ReactNode\n /** Additional CSS classes */\n className?: string\n}\n\nconst DockItem = forwardRef<HTMLButtonElement, DockItemProps>(\n ({ active, children, className = '', ...props }, ref) => {\n const classes = [active && 'dock-active', className].filter(Boolean).join(' ')\n\n return (\n <button ref={ref} className={classes || undefined} {...props}>\n {children}\n </button>\n )\n }\n)\n\nDockItem.displayName = 'Dock.Item'\n\nconst DockRoot = forwardRef<HTMLDivElement, DockProps>(\n ({ items, size, activeIndex, onChange, children, className = '', ...props }, ref) => {\n const sizeClasses = {\n xs: 'dock-xs',\n sm: 'dock-sm',\n md: 'dock-md',\n lg: 'dock-lg',\n xl: 'dock-xl',\n }\n\n const classes = ['dock', size && sizeClasses[size], className].filter(Boolean).join(' ')\n\n // If items array is provided, render from config\n if (items) {\n return (\n <div ref={ref} className={classes} {...props}>\n {items.map((item, index) => {\n const isActive = activeIndex !== undefined ? activeIndex === index : item.active\n\n return (\n <button\n key={index}\n className={isActive ? 'dock-active' : undefined}\n disabled={item.disabled}\n onClick={() => {\n item.onClick?.()\n onChange?.(index)\n }}\n >\n {item.icon}\n {item.label && <span className=\"dock-label\">{item.label}</span>}\n </button>\n )\n })}\n </div>\n )\n }\n\n // Otherwise render children\n return (\n <div ref={ref} className={classes} {...props}>\n {children}\n </div>\n )\n }\n)\n\nDockRoot.displayName = 'Dock'\n\nexport const Dock = Object.assign(DockRoot, {\n Item: DockItem,\n})\n"],"names":["DockItem","forwardRef","active","children","className","props","ref","classes","jsx","DockRoot","items","size","activeIndex","onChange","item","index","isActive","jsxs","Dock"],"mappings":";;AAuCA,MAAMA,IAAWC;AAAA,EACf,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,WAAAC,IAAY,IAAI,GAAGC,EAAA,GAASC,MAAQ;AACvD,UAAMC,IAAU,CAACL,KAAU,eAAeE,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE7E,WACE,gBAAAI,EAAC,YAAO,KAAAF,GAAU,WAAWC,KAAW,QAAY,GAAGF,GACpD,UAAAF,GACH;AAAA,EAEJ;AACF;AAEAH,EAAS,cAAc;AAEvB,MAAMS,IAAWR;AAAA,EACf,CAAC,EAAE,OAAAS,GAAO,MAAAC,GAAM,aAAAC,GAAa,UAAAC,GAAU,UAAAV,GAAU,WAAAC,IAAY,IAAI,GAAGC,EAAA,GAASC,MAAQ;AASnF,UAAMC,IAAU,CAAC,QAAQI,KARL;AAAA,MAClB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IAAA,EAGuCA,CAAI,GAAGP,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAGvF,WAAIM,IAEA,gBAAAF,EAAC,OAAA,EAAI,KAAAF,GAAU,WAAWC,GAAU,GAAGF,GACpC,UAAAK,EAAM,IAAI,CAACI,GAAMC,MAAU;AAC1B,YAAMC,IAAWJ,MAAgB,SAAYA,MAAgBG,IAAQD,EAAK;AAE1E,aACE,gBAAAG;AAAA,QAAC;AAAA,QAAA;AAAA,UAEC,WAAWD,IAAW,gBAAgB;AAAA,UACtC,UAAUF,EAAK;AAAA,UACf,SAAS,MAAM;AACb,YAAAA,EAAK,UAAA,GACLD,IAAWE,CAAK;AAAA,UAClB;AAAA,UAEC,UAAA;AAAA,YAAAD,EAAK;AAAA,YACLA,EAAK,SAAS,gBAAAN,EAAC,UAAK,WAAU,cAAc,YAAK,MAAA,CAAM;AAAA,UAAA;AAAA,QAAA;AAAA,QATnDO;AAAA,MAAA;AAAA,IAYX,CAAC,EAAA,CACH,sBAMD,OAAA,EAAI,KAAAT,GAAU,WAAWC,GAAU,GAAGF,GACpC,UAAAF,GACH;AAAA,EAEJ;AACF;AAEAM,EAAS,cAAc;AAEhB,MAAMS,IAAO,OAAO,OAAOT,GAAU;AAAA,EAC1C,MAAMT;AACR,CAAC;"}
|