@sikka/hawa 0.25.2-next → 0.26.1-next
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/chunk-3N6JJKMN.mjs +263 -0
- package/dist/commonTypes-cyhMPvmz.d.mts +4 -0
- package/dist/commonTypes-cyhMPvmz.d.ts +4 -0
- package/dist/index.css +3 -0
- package/dist/signature/index.d.mts +26 -0
- package/dist/signature/index.d.ts +26 -0
- package/dist/signature/index.js +252 -0
- package/dist/signature/index.mjs +210 -0
- package/dist/sortButton/index.mjs +8 -261
- package/dist/splitButton/index.d.mts +4 -3
- package/dist/splitButton/index.d.ts +4 -3
- package/dist/splitButton/index.mjs +9 -260
- package/dist/switch/index.d.mts +1 -1
- package/dist/switch/index.d.ts +1 -1
- package/dist/tabs/index.d.mts +1 -1
- package/dist/tabs/index.d.ts +1 -1
- package/dist/textarea/index.d.mts +1 -1
- package/dist/textarea/index.d.ts +1 -1
- package/dist/tooltip/index.d.mts +4 -3
- package/dist/tooltip/index.d.ts +4 -3
- package/dist/tooltip/index.mjs +9 -4
- package/package.json +3 -1
- package/dist/commonTypes-2k6FnHw5.d.mts +0 -4
- package/dist/commonTypes-2k6FnHw5.d.ts +0 -4
- package/dist/commonTypes-f_LVO3Sm.d.mts +0 -5
- package/dist/commonTypes-f_LVO3Sm.d.ts +0 -5
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cn
|
|
3
|
+
} from "../chunk-TE3BKEXL.mjs";
|
|
4
|
+
|
|
5
|
+
// components/elements/signature/Signature.tsx
|
|
6
|
+
import React3, { useRef, useEffect } from "react";
|
|
7
|
+
import SignaturePad from "signature_pad";
|
|
8
|
+
import trimCanvas from "trim-canvas";
|
|
9
|
+
|
|
10
|
+
// components/elements/label/Label.tsx
|
|
11
|
+
import * as React2 from "react";
|
|
12
|
+
|
|
13
|
+
// components/elements/tooltip/Tooltip.tsx
|
|
14
|
+
import React from "react";
|
|
15
|
+
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
16
|
+
var TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
17
|
+
TooltipPrimitive.Content,
|
|
18
|
+
{
|
|
19
|
+
ref,
|
|
20
|
+
sideOffset,
|
|
21
|
+
className: cn(
|
|
22
|
+
"hawa-z-50 hawa-overflow-hidden hawa-rounded-md hawa-border hawa-bg-popover hawa-px-3 hawa-py-1.5 hawa-text-sm hawa-text-popover-foreground hawa-shadow-md hawa-animate-in hawa-fade-in-0 hawa-zoom-in-95 data-[state=closed]:hawa-animate-out data-[state=closed]:hawa-fade-out-0 data-[state=closed]:hawa-zoom-out-95 data-[side=bottom]:hawa-slide-in-from-top-2 data-[side=left]:hawa-slide-in-from-right-2 data-[side=right]:hawa-slide-in-from-left-2 data-[side=top]:hawa-slide-in-from-bottom-2",
|
|
23
|
+
className
|
|
24
|
+
),
|
|
25
|
+
...props
|
|
26
|
+
}
|
|
27
|
+
));
|
|
28
|
+
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
29
|
+
var TooltipArrow = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(TooltipPrimitive.Arrow, { ref, className: cn(className), ...props }));
|
|
30
|
+
TooltipArrow.displayName = TooltipPrimitive.Arrow.displayName;
|
|
31
|
+
var Tooltip = ({
|
|
32
|
+
side,
|
|
33
|
+
open,
|
|
34
|
+
content,
|
|
35
|
+
children,
|
|
36
|
+
defaultOpen,
|
|
37
|
+
onOpenChange,
|
|
38
|
+
triggerProps,
|
|
39
|
+
contentProps,
|
|
40
|
+
providerProps,
|
|
41
|
+
delayDuration = 300,
|
|
42
|
+
...props
|
|
43
|
+
}) => {
|
|
44
|
+
return /* @__PURE__ */ React.createElement(
|
|
45
|
+
TooltipPrimitive.TooltipProvider,
|
|
46
|
+
{
|
|
47
|
+
delayDuration,
|
|
48
|
+
...providerProps
|
|
49
|
+
},
|
|
50
|
+
/* @__PURE__ */ React.createElement(
|
|
51
|
+
TooltipPrimitive.Root,
|
|
52
|
+
{
|
|
53
|
+
open,
|
|
54
|
+
defaultOpen,
|
|
55
|
+
onOpenChange,
|
|
56
|
+
...props
|
|
57
|
+
},
|
|
58
|
+
/* @__PURE__ */ React.createElement(TooltipPrimitive.Trigger, { ...triggerProps }, children),
|
|
59
|
+
/* @__PURE__ */ React.createElement(TooltipContent, { side, align: "center", ...contentProps }, content)
|
|
60
|
+
)
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
// components/elements/label/Label.tsx
|
|
65
|
+
var Label = React2.forwardRef(({ className, hint, hintSide, required, children, ...props }, ref) => /* @__PURE__ */ React2.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-1 hawa-transition-all" }, /* @__PURE__ */ React2.createElement(
|
|
66
|
+
"label",
|
|
67
|
+
{
|
|
68
|
+
ref,
|
|
69
|
+
className: cn(
|
|
70
|
+
"hawa-text-sm hawa-font-medium hawa-leading-none peer-disabled:hawa-cursor-not-allowed peer-disabled:hawa-opacity-70",
|
|
71
|
+
className
|
|
72
|
+
),
|
|
73
|
+
...props
|
|
74
|
+
},
|
|
75
|
+
children,
|
|
76
|
+
required && /* @__PURE__ */ React2.createElement("span", { className: "hawa-mx-0.5 hawa-text-red-500" }, "*")
|
|
77
|
+
), hint && /* @__PURE__ */ React2.createElement(
|
|
78
|
+
Tooltip,
|
|
79
|
+
{
|
|
80
|
+
content: hint,
|
|
81
|
+
side: hintSide,
|
|
82
|
+
triggerProps: {
|
|
83
|
+
tabIndex: -1,
|
|
84
|
+
onClick: (event) => event.preventDefault()
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
/* @__PURE__ */ React2.createElement("div", null, /* @__PURE__ */ React2.createElement(
|
|
88
|
+
"svg",
|
|
89
|
+
{
|
|
90
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
91
|
+
className: "hawa-h-[14px] hawa-w-[14px] hawa-cursor-help",
|
|
92
|
+
viewBox: "0 0 24 24",
|
|
93
|
+
fill: "none",
|
|
94
|
+
stroke: "currentColor",
|
|
95
|
+
strokeWidth: "2",
|
|
96
|
+
strokeLinecap: "round",
|
|
97
|
+
strokeLinejoin: "round"
|
|
98
|
+
},
|
|
99
|
+
/* @__PURE__ */ React2.createElement("circle", { cx: "12", cy: "12", r: "10" }),
|
|
100
|
+
/* @__PURE__ */ React2.createElement("path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" }),
|
|
101
|
+
/* @__PURE__ */ React2.createElement("path", { d: "M12 17h.01" })
|
|
102
|
+
))
|
|
103
|
+
)));
|
|
104
|
+
Label.displayName = "Label";
|
|
105
|
+
|
|
106
|
+
// components/elements/signature/Signature.tsx
|
|
107
|
+
var Signature = ({
|
|
108
|
+
canvasProps,
|
|
109
|
+
clearOnResize = false,
|
|
110
|
+
onGetImage,
|
|
111
|
+
texts,
|
|
112
|
+
label,
|
|
113
|
+
labelProps,
|
|
114
|
+
...sigPadProps
|
|
115
|
+
}) => {
|
|
116
|
+
const canvasRef = useRef(null);
|
|
117
|
+
const sigPadRef = useRef(null);
|
|
118
|
+
const checkClearOnResize = () => {
|
|
119
|
+
if (!clearOnResize) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
resizeCanvas();
|
|
123
|
+
};
|
|
124
|
+
const resizeCanvas = () => {
|
|
125
|
+
var _a;
|
|
126
|
+
const canvas = canvasRef.current;
|
|
127
|
+
if (canvas && canvas.parentElement) {
|
|
128
|
+
const ratio = Math.max(window.devicePixelRatio || 1, 1);
|
|
129
|
+
if (typeof (canvasProps == null ? void 0 : canvasProps.width) === "undefined") {
|
|
130
|
+
canvas.width = canvas.parentElement.offsetWidth * ratio;
|
|
131
|
+
} else {
|
|
132
|
+
canvas.width = Number(canvasProps.width) * ratio;
|
|
133
|
+
}
|
|
134
|
+
if (typeof (canvasProps == null ? void 0 : canvasProps.height) === "undefined") {
|
|
135
|
+
canvas.height = canvas.parentElement.offsetHeight * ratio;
|
|
136
|
+
} else {
|
|
137
|
+
canvas.height = Number(canvasProps.height) * ratio;
|
|
138
|
+
}
|
|
139
|
+
(_a = canvas.getContext("2d")) == null ? void 0 : _a.scale(ratio, ratio);
|
|
140
|
+
clear();
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
const getTrimmedCanvas = () => {
|
|
144
|
+
var _a;
|
|
145
|
+
const canvas = canvasRef.current;
|
|
146
|
+
if (!canvas) {
|
|
147
|
+
throw new Error("Canvas reference is null");
|
|
148
|
+
}
|
|
149
|
+
const copy = document.createElement("canvas");
|
|
150
|
+
copy.width = canvas.width;
|
|
151
|
+
copy.height = canvas.height;
|
|
152
|
+
(_a = copy.getContext("2d")) == null ? void 0 : _a.drawImage(canvas, 0, 0);
|
|
153
|
+
return trimCanvas(copy);
|
|
154
|
+
};
|
|
155
|
+
const getSignatureImage = () => {
|
|
156
|
+
const trimmedCanvas = getTrimmedCanvas();
|
|
157
|
+
return trimmedCanvas.toDataURL();
|
|
158
|
+
};
|
|
159
|
+
useEffect(() => {
|
|
160
|
+
if (onGetImage) {
|
|
161
|
+
onGetImage(getSignatureImage);
|
|
162
|
+
}
|
|
163
|
+
}, [onGetImage]);
|
|
164
|
+
useEffect(() => {
|
|
165
|
+
const canvas = canvasRef.current;
|
|
166
|
+
if (canvas) {
|
|
167
|
+
sigPadRef.current = new SignaturePad(canvas, sigPadProps);
|
|
168
|
+
resizeCanvas();
|
|
169
|
+
window.addEventListener("resize", checkClearOnResize);
|
|
170
|
+
}
|
|
171
|
+
return () => {
|
|
172
|
+
window.removeEventListener("resize", checkClearOnResize);
|
|
173
|
+
};
|
|
174
|
+
}, [sigPadProps]);
|
|
175
|
+
const clear = () => {
|
|
176
|
+
var _a;
|
|
177
|
+
return (_a = sigPadRef.current) == null ? void 0 : _a.clear();
|
|
178
|
+
};
|
|
179
|
+
const isEmpty = () => {
|
|
180
|
+
var _a;
|
|
181
|
+
return !!((_a = sigPadRef.current) == null ? void 0 : _a.isEmpty());
|
|
182
|
+
};
|
|
183
|
+
const fromDataURL = (dataURL, options) => {
|
|
184
|
+
var _a;
|
|
185
|
+
return (_a = sigPadRef.current) == null ? void 0 : _a.fromDataURL(dataURL, options);
|
|
186
|
+
};
|
|
187
|
+
const toDataURL = (type, encoderOptions) => {
|
|
188
|
+
var _a;
|
|
189
|
+
return (_a = sigPadRef.current) == null ? void 0 : _a.toDataURL(type, encoderOptions);
|
|
190
|
+
};
|
|
191
|
+
const fromData = (pointGroups) => {
|
|
192
|
+
var _a;
|
|
193
|
+
return (_a = sigPadRef.current) == null ? void 0 : _a.fromData(pointGroups);
|
|
194
|
+
};
|
|
195
|
+
const toData = () => {
|
|
196
|
+
var _a;
|
|
197
|
+
return (_a = sigPadRef.current) == null ? void 0 : _a.toData();
|
|
198
|
+
};
|
|
199
|
+
return /* @__PURE__ */ React3.createElement("div", { className: "hawa-w-full" }, label && /* @__PURE__ */ React3.createElement(Label, { ...labelProps, className: "hawa-mb-2" }, label || "Signature"), /* @__PURE__ */ React3.createElement(
|
|
200
|
+
"canvas",
|
|
201
|
+
{
|
|
202
|
+
ref: canvasRef,
|
|
203
|
+
...canvasProps,
|
|
204
|
+
className: cn("hawa-rounded", canvasProps == null ? void 0 : canvasProps.className)
|
|
205
|
+
}
|
|
206
|
+
), /* @__PURE__ */ React3.createElement("div", { className: "clickable-link hawa-w-fit", onClick: () => clear() }, (texts == null ? void 0 : texts.clear) || "Clear"));
|
|
207
|
+
};
|
|
208
|
+
export {
|
|
209
|
+
Signature
|
|
210
|
+
};
|
|
@@ -1,265 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
|
+
Button,
|
|
2
3
|
cn
|
|
3
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-3N6JJKMN.mjs";
|
|
4
5
|
|
|
5
6
|
// components/elements/sortButton/SortButton.tsx
|
|
6
|
-
import React3 from "react";
|
|
7
|
-
|
|
8
|
-
// components/elements/button/Button.tsx
|
|
9
|
-
import * as React2 from "react";
|
|
10
|
-
import { cva } from "class-variance-authority";
|
|
11
|
-
|
|
12
|
-
// components/elements/loading/Loading.tsx
|
|
13
7
|
import React from "react";
|
|
14
|
-
var Loading = ({
|
|
15
|
-
design = "spinner",
|
|
16
|
-
size = "sm",
|
|
17
|
-
themeMode = "light",
|
|
18
|
-
color,
|
|
19
|
-
...props
|
|
20
|
-
}) => {
|
|
21
|
-
let sizeStyles = {
|
|
22
|
-
button: "hawa-h-4 hawa-w-4",
|
|
23
|
-
xs: "hawa-h-1 hawa-w-1",
|
|
24
|
-
sm: "hawa-h-6 hawa-w-6",
|
|
25
|
-
normal: "hawa-h-8 hawa-w-8",
|
|
26
|
-
lg: "hawa-h-14 hawa-w-14",
|
|
27
|
-
xl: "hawa-h-24 hawa-w-24"
|
|
28
|
-
};
|
|
29
|
-
let animationStyles = {
|
|
30
|
-
pulse: "hawa-animate-in hawa-fade-in hawa-duration-1000",
|
|
31
|
-
bounce: "hawa-animate-bounce"
|
|
32
|
-
};
|
|
33
|
-
switch (design.split("-")[0]) {
|
|
34
|
-
case "dots":
|
|
35
|
-
return /* @__PURE__ */ React.createElement(
|
|
36
|
-
"div",
|
|
37
|
-
{
|
|
38
|
-
className: cn("hawa-flex hawa-flex-row hawa-gap-2", props.className)
|
|
39
|
-
},
|
|
40
|
-
/* @__PURE__ */ React.createElement(
|
|
41
|
-
"div",
|
|
42
|
-
{
|
|
43
|
-
className: cn(
|
|
44
|
-
"hawa-animate-bounce hawa-rounded-full hawa-delay-100 hawa-repeat-infinite",
|
|
45
|
-
size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
|
|
46
|
-
animationStyles[design.split("-")[1]],
|
|
47
|
-
color ? color : "hawa-bg-primary"
|
|
48
|
-
)
|
|
49
|
-
}
|
|
50
|
-
),
|
|
51
|
-
/* @__PURE__ */ React.createElement(
|
|
52
|
-
"div",
|
|
53
|
-
{
|
|
54
|
-
className: cn(
|
|
55
|
-
"hawa-animate-bounce hawa-rounded-full hawa-delay-200 hawa-repeat-infinite",
|
|
56
|
-
size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
|
|
57
|
-
animationStyles[design.split("-")[1]],
|
|
58
|
-
color ? color : "hawa-bg-primary"
|
|
59
|
-
)
|
|
60
|
-
}
|
|
61
|
-
),
|
|
62
|
-
/* @__PURE__ */ React.createElement(
|
|
63
|
-
"div",
|
|
64
|
-
{
|
|
65
|
-
className: cn(
|
|
66
|
-
"hawa-animate-bounce hawa-rounded-full hawa-delay-300 hawa-repeat-infinite",
|
|
67
|
-
size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
|
|
68
|
-
animationStyles[design.split("-")[1]],
|
|
69
|
-
color ? color : "hawa-bg-primary"
|
|
70
|
-
)
|
|
71
|
-
}
|
|
72
|
-
)
|
|
73
|
-
);
|
|
74
|
-
case "square":
|
|
75
|
-
return /* @__PURE__ */ React.createElement(
|
|
76
|
-
"svg",
|
|
77
|
-
{
|
|
78
|
-
className: cn("squircle-container", sizeStyles[size]),
|
|
79
|
-
viewBox: "0 0 35 35",
|
|
80
|
-
height: "35",
|
|
81
|
-
width: "35"
|
|
82
|
-
},
|
|
83
|
-
/* @__PURE__ */ React.createElement(
|
|
84
|
-
"rect",
|
|
85
|
-
{
|
|
86
|
-
className: "squircle-track",
|
|
87
|
-
x: "2.5",
|
|
88
|
-
y: "2.5",
|
|
89
|
-
fill: "none",
|
|
90
|
-
strokeWidth: "5px",
|
|
91
|
-
width: "32.5",
|
|
92
|
-
height: "32.5"
|
|
93
|
-
}
|
|
94
|
-
),
|
|
95
|
-
/* @__PURE__ */ React.createElement(
|
|
96
|
-
"rect",
|
|
97
|
-
{
|
|
98
|
-
className: "square-car",
|
|
99
|
-
x: "2.5",
|
|
100
|
-
y: "2.5",
|
|
101
|
-
fill: "none",
|
|
102
|
-
strokeWidth: "5px",
|
|
103
|
-
width: "32.5",
|
|
104
|
-
height: "32.5",
|
|
105
|
-
pathLength: "100"
|
|
106
|
-
}
|
|
107
|
-
)
|
|
108
|
-
);
|
|
109
|
-
case "squircle":
|
|
110
|
-
return /* @__PURE__ */ React.createElement(
|
|
111
|
-
"svg",
|
|
112
|
-
{
|
|
113
|
-
className: cn("squircle-container", sizeStyles[size]),
|
|
114
|
-
x: "0px",
|
|
115
|
-
y: "0px",
|
|
116
|
-
viewBox: "0 0 37 37",
|
|
117
|
-
height: "37",
|
|
118
|
-
width: "37",
|
|
119
|
-
preserveAspectRatio: "xMidYMid meet"
|
|
120
|
-
},
|
|
121
|
-
/* @__PURE__ */ React.createElement(
|
|
122
|
-
"path",
|
|
123
|
-
{
|
|
124
|
-
className: "squircle-track",
|
|
125
|
-
fill: "none",
|
|
126
|
-
strokeWidth: "5",
|
|
127
|
-
pathLength: "100",
|
|
128
|
-
d: "M0.37 18.5 C0.37 5.772 5.772 0.37 18.5 0.37 S36.63 5.772 36.63 18.5 S31.228 36.63 18.5 36.63 S0.37 31.228 0.37 18.5"
|
|
129
|
-
}
|
|
130
|
-
),
|
|
131
|
-
/* @__PURE__ */ React.createElement(
|
|
132
|
-
"path",
|
|
133
|
-
{
|
|
134
|
-
className: "squircle-car",
|
|
135
|
-
fill: "none",
|
|
136
|
-
strokeWidth: "5",
|
|
137
|
-
pathLength: "100",
|
|
138
|
-
d: "M0.37 18.5 C0.37 5.772 5.772 0.37 18.5 0.37 S36.63 5.772 36.63 18.5 S31.228 36.63 18.5 36.63 S0.37 31.228 0.37 18.5"
|
|
139
|
-
}
|
|
140
|
-
)
|
|
141
|
-
);
|
|
142
|
-
case "progress":
|
|
143
|
-
return /* @__PURE__ */ React.createElement("div", { className: "progress-loading" });
|
|
144
|
-
case "orbit":
|
|
145
|
-
return /* @__PURE__ */ React.createElement("div", { className: "orbit-container" });
|
|
146
|
-
default:
|
|
147
|
-
return /* @__PURE__ */ React.createElement(
|
|
148
|
-
"svg",
|
|
149
|
-
{
|
|
150
|
-
className: cn("circle-container", sizeStyles[size]),
|
|
151
|
-
viewBox: "0 0 40 40",
|
|
152
|
-
height: "40",
|
|
153
|
-
width: "40"
|
|
154
|
-
},
|
|
155
|
-
/* @__PURE__ */ React.createElement(
|
|
156
|
-
"circle",
|
|
157
|
-
{
|
|
158
|
-
className: cn("circle-track", {
|
|
159
|
-
"hawa-stroke-primary-foreground": themeMode === "dark",
|
|
160
|
-
"hawa-stroke-primary": themeMode === "light"
|
|
161
|
-
}),
|
|
162
|
-
cx: "20",
|
|
163
|
-
cy: "20",
|
|
164
|
-
r: "17.5",
|
|
165
|
-
pathLength: "100",
|
|
166
|
-
strokeWidth: "5px",
|
|
167
|
-
fill: "none"
|
|
168
|
-
}
|
|
169
|
-
),
|
|
170
|
-
/* @__PURE__ */ React.createElement(
|
|
171
|
-
"circle",
|
|
172
|
-
{
|
|
173
|
-
className: cn("circle-car", {
|
|
174
|
-
"hawa-stroke-primary-foreground": themeMode === "dark",
|
|
175
|
-
"hawa-stroke-primary": themeMode === "light"
|
|
176
|
-
}),
|
|
177
|
-
cx: "20",
|
|
178
|
-
cy: "20",
|
|
179
|
-
r: "17.5",
|
|
180
|
-
pathLength: "100",
|
|
181
|
-
strokeWidth: "5px",
|
|
182
|
-
fill: "none"
|
|
183
|
-
}
|
|
184
|
-
)
|
|
185
|
-
);
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
// components/elements/button/Button.tsx
|
|
190
|
-
var buttonVariants = cva(
|
|
191
|
-
"hawa-inline-flex hawa-items-center hawa-select-none hawa-rounded-md hawa-text-sm hawa-font-medium hawa-ring-offset-background hawa-transition-colors focus-visible:hawa-outline-none focus-visible:hawa-ring-2 focus-visible:hawa-ring-ring focus-visible:hawa-ring-offset-2 disabled:hawa-pointer-events-none disabled:hawa-opacity-50",
|
|
192
|
-
{
|
|
193
|
-
variants: {
|
|
194
|
-
variant: {
|
|
195
|
-
default: "hawa-bg-primary hawa-text-primary-foreground hover:hawa-bg-primary/90",
|
|
196
|
-
light: "hawa-bg-primary/20 hawa-text-primary hover:hawa-bg-primary/40",
|
|
197
|
-
destructive: "hawa-bg-destructive hawa-text-destructive-foreground hover:hawa-bg-destructive/90",
|
|
198
|
-
outline: "hawa-border hawa-border-input hawa-bg-transparent hover:hawa-bg-accent hover:hawa-text-accent-foreground",
|
|
199
|
-
secondary: "hawa-bg-secondary hawa-text-secondary-foreground hover:hawa-bg-secondary/80",
|
|
200
|
-
ghost: "hover:hawa-bg-accent hover:hawa-text-accent-foreground",
|
|
201
|
-
link: "hawa-text-primary hawa-underline-offset-4 hover:hawa-underline",
|
|
202
|
-
combobox: "hawa-bg-background hawa-border",
|
|
203
|
-
neoBrutalism: "neo-brutalism"
|
|
204
|
-
// "hawa-cursor-pointer hawa-transition-all hawa-uppercase hawa-font-mono dark:hawa-bg-black hawa-font-bold hawa-py-2 hawa-px-4 hawa-rounded hawa-border-2 hawa-border-primary hawa-shadow-color-primary hawa-transition-[hawa-transform_50ms, hawa-box-shadow_50ms] active:hawa-translate-x-0.5 active:hawa-translate-y-0.5 active:hawa-shadow-color-primary-active shadow-color-primary active:shadow-color-primary-active",
|
|
205
|
-
},
|
|
206
|
-
size: {
|
|
207
|
-
default: "hawa-h-10 hawa-px-4 hawa-py-2",
|
|
208
|
-
heightless: "hawa-px-4 hawa-py-4",
|
|
209
|
-
xs: "hawa-h-fit hawa-min-h-[25px] hawa-py-1 hawa-text-[10px] hawa-px-2 ",
|
|
210
|
-
sm: "hawa-h-9 hawa-text-[11px] hawa-rounded-md hawa-px-3",
|
|
211
|
-
lg: "hawa-h-11 hawa-rounded-md hawa-px-8",
|
|
212
|
-
xl: "hawa-h-14 hawa-rounded-md hawa-px-10",
|
|
213
|
-
icon: "hawa-h-10 hawa-w-10",
|
|
214
|
-
smallIcon: "hawa-h-7 hawa-w-7"
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
defaultVariants: {
|
|
218
|
-
variant: "default",
|
|
219
|
-
size: "default"
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
);
|
|
223
|
-
var Button = React2.forwardRef(
|
|
224
|
-
({
|
|
225
|
-
className,
|
|
226
|
-
variant,
|
|
227
|
-
size,
|
|
228
|
-
asChild = false,
|
|
229
|
-
centered = true,
|
|
230
|
-
isLoading,
|
|
231
|
-
children,
|
|
232
|
-
...props
|
|
233
|
-
}, ref) => {
|
|
234
|
-
const Comp = "button";
|
|
235
|
-
const loadingColor = variant === "outline" || variant === "ghost" || variant === "neoBrutalism" ? "hawa-bg-primary" : "hawa-bg-primary-foreground";
|
|
236
|
-
return /* @__PURE__ */ React2.createElement(
|
|
237
|
-
Comp,
|
|
238
|
-
{
|
|
239
|
-
className: cn(
|
|
240
|
-
buttonVariants({ variant, size, className }),
|
|
241
|
-
centered && "hawa-justify-center"
|
|
242
|
-
),
|
|
243
|
-
ref,
|
|
244
|
-
...props
|
|
245
|
-
},
|
|
246
|
-
isLoading ? /* @__PURE__ */ React2.createElement(
|
|
247
|
-
Loading,
|
|
248
|
-
{
|
|
249
|
-
design: size === "icon" || size === "smallIcon" ? "spinner" : "dots-pulse",
|
|
250
|
-
themeMode: variant === "outline" ? "light" : "dark",
|
|
251
|
-
color: loadingColor,
|
|
252
|
-
size: size === "sm" || size === "xs" ? "xs" : "button"
|
|
253
|
-
}
|
|
254
|
-
) : children
|
|
255
|
-
);
|
|
256
|
-
}
|
|
257
|
-
);
|
|
258
|
-
Button.displayName = "Button";
|
|
259
|
-
|
|
260
|
-
// components/elements/sortButton/SortButton.tsx
|
|
261
8
|
var SortButton = (props) => {
|
|
262
|
-
return /* @__PURE__ */
|
|
9
|
+
return /* @__PURE__ */ React.createElement(
|
|
263
10
|
Button,
|
|
264
11
|
{
|
|
265
12
|
variant: "ghost",
|
|
@@ -271,7 +18,7 @@ var SortButton = (props) => {
|
|
|
271
18
|
onClick: props.onSort
|
|
272
19
|
},
|
|
273
20
|
props.label,
|
|
274
|
-
/* @__PURE__ */
|
|
21
|
+
/* @__PURE__ */ React.createElement(
|
|
275
22
|
"svg",
|
|
276
23
|
{
|
|
277
24
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -283,10 +30,10 @@ var SortButton = (props) => {
|
|
|
283
30
|
strokeLinejoin: "round",
|
|
284
31
|
className: props.condensed ? "hawa-h-3 hawa-w-3" : "hawa-icon"
|
|
285
32
|
},
|
|
286
|
-
/* @__PURE__ */
|
|
287
|
-
/* @__PURE__ */
|
|
288
|
-
/* @__PURE__ */
|
|
289
|
-
/* @__PURE__ */
|
|
33
|
+
/* @__PURE__ */ React.createElement("path", { d: "m21 16-4 4-4-4" }),
|
|
34
|
+
/* @__PURE__ */ React.createElement("path", { d: "M17 20V4" }),
|
|
35
|
+
/* @__PURE__ */ React.createElement("path", { d: "m3 8 4-4 4 4" }),
|
|
36
|
+
/* @__PURE__ */ React.createElement("path", { d: "M7 4v16" })
|
|
290
37
|
)
|
|
291
38
|
);
|
|
292
39
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { D as DirectionType } from '../commonTypes-2k6FnHw5.mjs';
|
|
3
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
3
|
import { VariantProps } from 'class-variance-authority';
|
|
5
4
|
|
|
5
|
+
type DirectionType = "rtl" | "ltr";
|
|
6
|
+
|
|
6
7
|
type SubItem = {
|
|
7
8
|
label?: string;
|
|
8
9
|
value?: any;
|
|
@@ -33,8 +34,8 @@ type MenuItemType = {
|
|
|
33
34
|
};
|
|
34
35
|
|
|
35
36
|
declare const buttonVariants: (props?: ({
|
|
36
|
-
variant?: "
|
|
37
|
-
size?: "
|
|
37
|
+
variant?: "light" | "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | "combobox" | "neoBrutalism" | null | undefined;
|
|
38
|
+
size?: "xs" | "sm" | "lg" | "xl" | "default" | "heightless" | "icon" | "smallIcon" | null | undefined;
|
|
38
39
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
39
40
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
40
41
|
asChild?: boolean;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { D as DirectionType } from '../commonTypes-2k6FnHw5.js';
|
|
3
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
3
|
import { VariantProps } from 'class-variance-authority';
|
|
5
4
|
|
|
5
|
+
type DirectionType = "rtl" | "ltr";
|
|
6
|
+
|
|
6
7
|
type SubItem = {
|
|
7
8
|
label?: string;
|
|
8
9
|
value?: any;
|
|
@@ -33,8 +34,8 @@ type MenuItemType = {
|
|
|
33
34
|
};
|
|
34
35
|
|
|
35
36
|
declare const buttonVariants: (props?: ({
|
|
36
|
-
variant?: "
|
|
37
|
-
size?: "
|
|
37
|
+
variant?: "light" | "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | "combobox" | "neoBrutalism" | null | undefined;
|
|
38
|
+
size?: "xs" | "sm" | "lg" | "xl" | "default" | "heightless" | "icon" | "smallIcon" | null | undefined;
|
|
38
39
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
39
40
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
40
41
|
asChild?: boolean;
|