@mlw-packages/react-components 1.6.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +75 -17
- package/dist/index.d.mts +49 -23
- package/dist/index.d.ts +49 -23
- package/dist/index.js +535 -213
- package/dist/index.mjs +523 -200
- package/package.json +3 -2
package/dist/index.mjs
CHANGED
|
@@ -1586,7 +1586,7 @@ var CommandItemBase = React9.forwardRef(({ className, testid: dataTestId = "comm
|
|
|
1586
1586
|
{
|
|
1587
1587
|
ref,
|
|
1588
1588
|
className: cn(
|
|
1589
|
-
"relative flex cursor-pointer gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-all data-[disabled=true]:pointer-events-none data-[selected=true]:bg-
|
|
1589
|
+
"relative flex cursor-pointer gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-all data-[disabled=true]:pointer-events-none data-[selected=true]:bg-muted data-[selected=true]:text-primary data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:scale-[1.02] active:scale-[0.98]",
|
|
1590
1590
|
className
|
|
1591
1591
|
),
|
|
1592
1592
|
"data-testid": dataTestId,
|
|
@@ -2194,15 +2194,17 @@ var PopoverContentBase = React13.forwardRef(({ className, align = "center", side
|
|
|
2194
2194
|
PopoverContentBase.displayName = PopoverPrimitive.Content.displayName;
|
|
2195
2195
|
|
|
2196
2196
|
// src/components/selects/ComboboxBase.tsx
|
|
2197
|
-
import { CaretDownIcon, CheckIcon as CheckIcon4 } from "@phosphor-icons/react";
|
|
2198
|
-
import { useState as useState2 } from "react";
|
|
2199
2197
|
import { motion as motion4 } from "framer-motion";
|
|
2198
|
+
import { useState as useState2 } from "react";
|
|
2199
|
+
import { CaretDownIcon, CheckIcon as CheckIcon4 } from "@phosphor-icons/react";
|
|
2200
2200
|
import { jsx as jsx19, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
2201
2201
|
function ComboboxBase({
|
|
2202
2202
|
items,
|
|
2203
2203
|
renderSelected,
|
|
2204
2204
|
handleSelection,
|
|
2205
2205
|
checkIsSelected,
|
|
2206
|
+
keepOpen = false,
|
|
2207
|
+
closeAll,
|
|
2206
2208
|
searchPlaceholder,
|
|
2207
2209
|
errorMessage,
|
|
2208
2210
|
testIds = {}
|
|
@@ -2233,12 +2235,14 @@ function ComboboxBase({
|
|
|
2233
2235
|
"data-testid": testIds.trigger ?? "combobox-trigger",
|
|
2234
2236
|
children: [
|
|
2235
2237
|
renderSelected,
|
|
2238
|
+
closeAll,
|
|
2236
2239
|
/* @__PURE__ */ jsx19(
|
|
2237
2240
|
motion4.div,
|
|
2238
2241
|
{
|
|
2239
2242
|
animate: { rotate: open ? 180 : 0 },
|
|
2240
2243
|
transition: { duration: 0.3 },
|
|
2241
|
-
|
|
2244
|
+
className: "flex",
|
|
2245
|
+
children: /* @__PURE__ */ jsx19(CaretDownIcon, { className: " flex-shrink-0" })
|
|
2242
2246
|
}
|
|
2243
2247
|
)
|
|
2244
2248
|
]
|
|
@@ -2254,7 +2258,7 @@ function ComboboxBase({
|
|
|
2254
2258
|
children: /* @__PURE__ */ jsxs11(
|
|
2255
2259
|
CommandBase,
|
|
2256
2260
|
{
|
|
2257
|
-
className: "dark:text-white",
|
|
2261
|
+
className: "dark:text-white hover:bg-rsecondary",
|
|
2258
2262
|
"data-testid": testIds.command ?? "combobox-command",
|
|
2259
2263
|
children: [
|
|
2260
2264
|
/* @__PURE__ */ jsx19(
|
|
@@ -2276,7 +2280,7 @@ function ComboboxBase({
|
|
|
2276
2280
|
value: item.value,
|
|
2277
2281
|
onSelect: (value) => {
|
|
2278
2282
|
handleSelection(value);
|
|
2279
|
-
setOpen(false);
|
|
2283
|
+
if (!keepOpen) setOpen(false);
|
|
2280
2284
|
},
|
|
2281
2285
|
"data-testid": testIds.option ?? "combobox-option",
|
|
2282
2286
|
children: [
|
|
@@ -2291,6 +2295,7 @@ function ComboboxBase({
|
|
|
2291
2295
|
stiffness: 500,
|
|
2292
2296
|
damping: 30
|
|
2293
2297
|
},
|
|
2298
|
+
className: "ml-auto ",
|
|
2294
2299
|
children: /* @__PURE__ */ jsx19(
|
|
2295
2300
|
CheckIcon4,
|
|
2296
2301
|
{
|
|
@@ -2383,7 +2388,8 @@ function MultiCombobox({
|
|
|
2383
2388
|
searchPlaceholder,
|
|
2384
2389
|
label,
|
|
2385
2390
|
labelClassname,
|
|
2386
|
-
testIds = {}
|
|
2391
|
+
testIds = {},
|
|
2392
|
+
keepOpen = true
|
|
2387
2393
|
}) {
|
|
2388
2394
|
const selectedItems = items.filter((item) => selected.includes(item.value));
|
|
2389
2395
|
const checkIsSelected = useCallback3(
|
|
@@ -2401,6 +2407,20 @@ function MultiCombobox({
|
|
|
2401
2407
|
},
|
|
2402
2408
|
[selected, onChange]
|
|
2403
2409
|
);
|
|
2410
|
+
const closeAll = selectedItems.length > 0 ? /* @__PURE__ */ jsx21("div", { className: " flex items-center", children: /* @__PURE__ */ jsx21(
|
|
2411
|
+
ButtonBase,
|
|
2412
|
+
{
|
|
2413
|
+
variant: "ghost",
|
|
2414
|
+
"data-testid": testIds.clearAll ?? "combobox-clear-all",
|
|
2415
|
+
size: "icon",
|
|
2416
|
+
onClick: (e) => {
|
|
2417
|
+
e.stopPropagation();
|
|
2418
|
+
onChange([]);
|
|
2419
|
+
},
|
|
2420
|
+
className: "text-xs hover:bg-red-50 hover:text-red-500 transition-colors rounded-md mr-2",
|
|
2421
|
+
children: /* @__PURE__ */ jsx21(XIcon2, {})
|
|
2422
|
+
}
|
|
2423
|
+
) }) : null;
|
|
2404
2424
|
const renderSelected = useMemo2(() => {
|
|
2405
2425
|
if (selectedItems.length === 0) {
|
|
2406
2426
|
return /* @__PURE__ */ jsx21(
|
|
@@ -2476,6 +2496,8 @@ function MultiCombobox({
|
|
|
2476
2496
|
renderSelected,
|
|
2477
2497
|
handleSelection,
|
|
2478
2498
|
checkIsSelected,
|
|
2499
|
+
keepOpen,
|
|
2500
|
+
closeAll,
|
|
2479
2501
|
searchPlaceholder
|
|
2480
2502
|
}
|
|
2481
2503
|
)
|
|
@@ -2932,7 +2954,7 @@ import { jsx as jsx28, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
|
2932
2954
|
var ProgressBase = React17.forwardRef(
|
|
2933
2955
|
({
|
|
2934
2956
|
className,
|
|
2935
|
-
value,
|
|
2957
|
+
value: rawValue,
|
|
2936
2958
|
label,
|
|
2937
2959
|
leftIcon,
|
|
2938
2960
|
rightIcon,
|
|
@@ -2940,8 +2962,14 @@ var ProgressBase = React17.forwardRef(
|
|
|
2940
2962
|
segments = 5,
|
|
2941
2963
|
steps = [],
|
|
2942
2964
|
currentStep = 0,
|
|
2965
|
+
showValue = false,
|
|
2966
|
+
valuePosition = "right",
|
|
2967
|
+
autocolor,
|
|
2968
|
+
plusIndicator,
|
|
2943
2969
|
...props
|
|
2944
2970
|
}, ref) => {
|
|
2971
|
+
const value = Number(rawValue || 0);
|
|
2972
|
+
const indicatorWidth = Math.min(value, 100);
|
|
2945
2973
|
switch (variant) {
|
|
2946
2974
|
case "segments":
|
|
2947
2975
|
return /* @__PURE__ */ jsx28(
|
|
@@ -2975,26 +3003,89 @@ var ProgressBase = React17.forwardRef(
|
|
|
2975
3003
|
return /* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-1 w-full min-w-[150px]", children: [
|
|
2976
3004
|
label && /* @__PURE__ */ jsx28(LabelBase_default, { className: "py-2", children: label }),
|
|
2977
3005
|
/* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-2", children: [
|
|
3006
|
+
showValue && valuePosition === "left" && /* @__PURE__ */ jsxs18("div", { className: "w-12 text-sm text-right font-extrabold", children: [
|
|
3007
|
+
Math.round(value || 0),
|
|
3008
|
+
"%"
|
|
3009
|
+
] }),
|
|
2978
3010
|
leftIcon && /* @__PURE__ */ jsx28("div", { className: "flex items-center justify-center", children: leftIcon }),
|
|
2979
|
-
/* @__PURE__ */
|
|
3011
|
+
/* @__PURE__ */ jsxs18(
|
|
2980
3012
|
ProgressPrimitive.Root,
|
|
2981
3013
|
{
|
|
2982
3014
|
ref,
|
|
2983
3015
|
className: cn(
|
|
2984
|
-
"relative h-3 w-full overflow-
|
|
3016
|
+
" relative h-3 w-full overflow-visible rounded-full bg-muted/80 shadow-inner transition-all ",
|
|
2985
3017
|
className
|
|
2986
3018
|
),
|
|
2987
3019
|
value,
|
|
2988
3020
|
...props,
|
|
2989
|
-
children:
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
3021
|
+
children: [
|
|
3022
|
+
/* @__PURE__ */ jsx28(
|
|
3023
|
+
ProgressPrimitive.Indicator,
|
|
3024
|
+
{
|
|
3025
|
+
className: cn(
|
|
3026
|
+
"h-full w-full flex-1 transition-all duration-500 ease-in-out rounded-lg ",
|
|
3027
|
+
autocolor && autocolor.length >= 2 ? "bg-transparent" : "bg-primary"
|
|
3028
|
+
),
|
|
3029
|
+
style: { transform: `translateX(-${100 - indicatorWidth}%)` }
|
|
3030
|
+
}
|
|
3031
|
+
),
|
|
3032
|
+
autocolor && Array.isArray(autocolor) && autocolor.length >= 2 && (() => {
|
|
3033
|
+
const [t1Raw, t2Raw] = autocolor;
|
|
3034
|
+
const [t1, t2] = [Number(t1Raw), Number(t2Raw)].sort(
|
|
3035
|
+
(a, b) => a - b
|
|
3036
|
+
);
|
|
3037
|
+
const v = Number(value || 0);
|
|
3038
|
+
let colorClass = "bg-red-500";
|
|
3039
|
+
if (v <= t1) {
|
|
3040
|
+
colorClass = "bg-red-500";
|
|
3041
|
+
} else if (v <= t2) {
|
|
3042
|
+
colorClass = "bg-yellow-500";
|
|
3043
|
+
} else {
|
|
3044
|
+
colorClass = "bg-emerald-500";
|
|
3045
|
+
}
|
|
3046
|
+
return /* @__PURE__ */ jsx28(
|
|
3047
|
+
"div",
|
|
3048
|
+
{
|
|
3049
|
+
"aria-hidden": true,
|
|
3050
|
+
className: cn(
|
|
3051
|
+
"absolute top-0 left-0 h-full transition-all duration-500 ease-in-out rounded-lg",
|
|
3052
|
+
colorClass
|
|
3053
|
+
),
|
|
3054
|
+
style: { width: `${indicatorWidth}%` }
|
|
3055
|
+
}
|
|
3056
|
+
);
|
|
3057
|
+
})(),
|
|
3058
|
+
plusIndicator && value > 100 && /* @__PURE__ */ jsx28(
|
|
3059
|
+
"div",
|
|
3060
|
+
{
|
|
3061
|
+
"aria-hidden": "true",
|
|
3062
|
+
className: "absolute top-0 bottom-0 w-0.5 bg-black/70 transition-all duration-500 ease-in-out pointer-events-none",
|
|
3063
|
+
style: {
|
|
3064
|
+
left: `${100 / value * 100}%`
|
|
3065
|
+
},
|
|
3066
|
+
children: value > 115 && /* @__PURE__ */ jsx28("div", { className: "absolute left-full ml-2 top-1/2 -translate-y-1/2 text-xs whitespace-nowrap font-extrabold", children: `+${Math.round(
|
|
3067
|
+
value - 100
|
|
3068
|
+
)}%` })
|
|
3069
|
+
}
|
|
3070
|
+
),
|
|
3071
|
+
showValue && valuePosition === "inside" && /* @__PURE__ */ jsxs18(
|
|
3072
|
+
"span",
|
|
3073
|
+
{
|
|
3074
|
+
className: "absolute inset-0 flex items-center justify-center text-sm select-none pointer-events-none text-secondary font-extrabold",
|
|
3075
|
+
"aria-hidden": true,
|
|
3076
|
+
children: [
|
|
3077
|
+
Math.round(value || 0),
|
|
3078
|
+
"%"
|
|
3079
|
+
]
|
|
3080
|
+
}
|
|
3081
|
+
)
|
|
3082
|
+
]
|
|
2996
3083
|
}
|
|
2997
3084
|
),
|
|
3085
|
+
showValue && valuePosition === "right" && /* @__PURE__ */ jsxs18("div", { className: "w-12 text-sm font-extrabold text-left", children: [
|
|
3086
|
+
Math.round(value || 0),
|
|
3087
|
+
"%"
|
|
3088
|
+
] }),
|
|
2998
3089
|
rightIcon && /* @__PURE__ */ jsx28("div", { className: "flex items-center justify-center", children: rightIcon })
|
|
2999
3090
|
] })
|
|
3000
3091
|
] });
|
|
@@ -4774,7 +4865,7 @@ function CalendarBase2({
|
|
|
4774
4865
|
"div",
|
|
4775
4866
|
{
|
|
4776
4867
|
className: cn(
|
|
4777
|
-
"rounded-md border bg-background p-
|
|
4868
|
+
"rounded-md border bg-background p-2 overflow-hidden flex flex-col",
|
|
4778
4869
|
className
|
|
4779
4870
|
),
|
|
4780
4871
|
children: /* @__PURE__ */ jsx44("div", { className: "relative flex-1 flex flex-col min-h-0", children: /* @__PURE__ */ jsx44(AnimatePresence5, { initial: false, mode: "wait", custom: direction, children: /* @__PURE__ */ jsx44(
|
|
@@ -4817,11 +4908,11 @@ function CalendarBase2({
|
|
|
4817
4908
|
),
|
|
4818
4909
|
day: cn(
|
|
4819
4910
|
buttonVariantsBase({ variant: "ghost" }),
|
|
4820
|
-
"w-full h-full p-0
|
|
4821
|
-
"aria-selected:opacity-100 hover:bg-muted
|
|
4822
|
-
"
|
|
4911
|
+
"w-full h-full p-0",
|
|
4912
|
+
"aria-selected:opacity-100 hover:bg-muted flex items-center justify-center",
|
|
4913
|
+
" transition-all duration-200 ease-out hover:scale-105 active:scale-95"
|
|
4823
4914
|
),
|
|
4824
|
-
day_selected: "bg-primary text-primary-foreground hover:bg-primary/90 focus:bg-primary/90 font-semibold",
|
|
4915
|
+
day_selected: "bg-primary text-primary-foreground hover:bg-primary/90 focus:bg-primary/90 font-semibold hover:text-white",
|
|
4825
4916
|
day_today: "bg-muted text-foreground font-bold ring-2 ring-primary/30 ring-inset",
|
|
4826
4917
|
day_outside: "day-outside text-muted-foreground/40 opacity-40 aria-selected:bg-muted/50 aria-selected:text-foreground",
|
|
4827
4918
|
day_disabled: "text-muted-foreground/30 opacity-40 cursor-not-allowed",
|
|
@@ -5351,7 +5442,7 @@ function DateTimePicker({
|
|
|
5351
5442
|
variant: "outline",
|
|
5352
5443
|
className: cn(
|
|
5353
5444
|
"w-full justify-start text-left min-w-0 overflow-hidden",
|
|
5354
|
-
"text-
|
|
5445
|
+
"text-foreground/70",
|
|
5355
5446
|
"text-sm sm:text-base",
|
|
5356
5447
|
!date && "text-muted-foreground/"
|
|
5357
5448
|
),
|
|
@@ -5381,7 +5472,7 @@ function DateTimePicker({
|
|
|
5381
5472
|
initialFocus: true,
|
|
5382
5473
|
fromDate,
|
|
5383
5474
|
toDate,
|
|
5384
|
-
className: "w-full"
|
|
5475
|
+
className: cn("w-full", hideHour && hideMinute && "border-0")
|
|
5385
5476
|
}
|
|
5386
5477
|
),
|
|
5387
5478
|
!(hideHour && hideMinute) && /* @__PURE__ */ jsx47("div", { className: "flex justify-center w-full px-2", children: /* @__PURE__ */ jsxs30(
|
|
@@ -5407,7 +5498,7 @@ function DateTimePicker({
|
|
|
5407
5498
|
),
|
|
5408
5499
|
children: [
|
|
5409
5500
|
/* @__PURE__ */ jsx47(ClockIcon, { className: "text-primary flex-shrink-0 w-4 h-4 sm:w-5 sm:h-5" }),
|
|
5410
|
-
/* @__PURE__ */ jsx47("span", { className: "text-
|
|
5501
|
+
/* @__PURE__ */ jsx47("span", { className: "text-black truncate", children: internalDate ? format(internalDate, getTimeFormat() || "HH:mm", {
|
|
5411
5502
|
locale: ptBR
|
|
5412
5503
|
}) : "00:00" })
|
|
5413
5504
|
]
|
|
@@ -9068,6 +9159,7 @@ var useChartHighlights = () => {
|
|
|
9068
9159
|
};
|
|
9069
9160
|
|
|
9070
9161
|
// src/components/ui/SmallButtons.tsx
|
|
9162
|
+
import * as React38 from "react";
|
|
9071
9163
|
import {
|
|
9072
9164
|
PencilSimpleIcon,
|
|
9073
9165
|
FloppyDiskIcon,
|
|
@@ -9090,189 +9182,273 @@ import {
|
|
|
9090
9182
|
EyeIcon,
|
|
9091
9183
|
EyeSlashIcon,
|
|
9092
9184
|
LockIcon,
|
|
9093
|
-
LockOpenIcon
|
|
9185
|
+
LockOpenIcon,
|
|
9186
|
+
ArrowsLeftRightIcon
|
|
9094
9187
|
} from "@phosphor-icons/react";
|
|
9095
9188
|
import { jsx as jsx61 } from "react/jsx-runtime";
|
|
9096
|
-
var EditButton = (
|
|
9097
|
-
|
|
9098
|
-
onClick,
|
|
9099
|
-
testid = "button-edit",
|
|
9100
|
-
className,
|
|
9101
|
-
iconSize = 18,
|
|
9102
|
-
iconColor,
|
|
9103
|
-
variant = "default",
|
|
9104
|
-
size = "icon",
|
|
9105
|
-
...props
|
|
9106
|
-
}) => /* @__PURE__ */ jsx61(
|
|
9107
|
-
ButtonBase,
|
|
9108
|
-
{
|
|
9109
|
-
variant,
|
|
9110
|
-
size,
|
|
9111
|
-
onClick,
|
|
9189
|
+
var EditButton = React38.forwardRef(
|
|
9190
|
+
({
|
|
9112
9191
|
disabled,
|
|
9113
|
-
testid,
|
|
9114
|
-
className: cn(
|
|
9115
|
-
"transition-all duration-200 ease-in-out group",
|
|
9116
|
-
"hover:scale-105 hover:bg-primary",
|
|
9117
|
-
"active:scale-95",
|
|
9118
|
-
"disabled:hover:scale-100",
|
|
9119
|
-
className
|
|
9120
|
-
),
|
|
9121
|
-
...props,
|
|
9122
|
-
children: /* @__PURE__ */ jsx61(
|
|
9123
|
-
PencilSimpleIcon,
|
|
9124
|
-
{
|
|
9125
|
-
size: iconSize,
|
|
9126
|
-
color: iconColor,
|
|
9127
|
-
className: "transition-transform duration-200 group-hover:-rotate-12"
|
|
9128
|
-
}
|
|
9129
|
-
)
|
|
9130
|
-
}
|
|
9131
|
-
);
|
|
9132
|
-
var SaveButton = ({
|
|
9133
|
-
disabled,
|
|
9134
|
-
onClick,
|
|
9135
|
-
testid = "button-save",
|
|
9136
|
-
className,
|
|
9137
|
-
iconSize = 18,
|
|
9138
|
-
iconColor,
|
|
9139
|
-
variant = "default",
|
|
9140
|
-
size = "icon",
|
|
9141
|
-
...props
|
|
9142
|
-
}) => /* @__PURE__ */ jsx61(
|
|
9143
|
-
ButtonBase,
|
|
9144
|
-
{
|
|
9145
|
-
variant,
|
|
9146
|
-
size,
|
|
9147
9192
|
onClick,
|
|
9148
|
-
|
|
9149
|
-
|
|
9150
|
-
|
|
9151
|
-
|
|
9152
|
-
|
|
9153
|
-
|
|
9154
|
-
|
|
9155
|
-
|
|
9156
|
-
|
|
9157
|
-
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
|
|
9162
|
-
|
|
9163
|
-
|
|
9164
|
-
|
|
9165
|
-
|
|
9166
|
-
|
|
9193
|
+
testid = "button-edit",
|
|
9194
|
+
className,
|
|
9195
|
+
iconSize = 18,
|
|
9196
|
+
iconColor,
|
|
9197
|
+
variant = "default",
|
|
9198
|
+
size = "icon",
|
|
9199
|
+
...props
|
|
9200
|
+
}, ref) => /* @__PURE__ */ jsx61(
|
|
9201
|
+
ButtonBase,
|
|
9202
|
+
{
|
|
9203
|
+
ref,
|
|
9204
|
+
variant,
|
|
9205
|
+
size,
|
|
9206
|
+
onClick,
|
|
9207
|
+
disabled,
|
|
9208
|
+
testid,
|
|
9209
|
+
className: cn(
|
|
9210
|
+
"transition-all duration-200 ease-in-out group",
|
|
9211
|
+
"hover:scale-105",
|
|
9212
|
+
"active:scale-95",
|
|
9213
|
+
"disabled:hover:scale-100",
|
|
9214
|
+
className
|
|
9215
|
+
),
|
|
9216
|
+
...props,
|
|
9217
|
+
children: /* @__PURE__ */ jsx61(
|
|
9218
|
+
PencilSimpleIcon,
|
|
9219
|
+
{
|
|
9220
|
+
size: iconSize,
|
|
9221
|
+
color: iconColor,
|
|
9222
|
+
className: "transition-transform duration-200 group-hover:-rotate-12"
|
|
9223
|
+
}
|
|
9224
|
+
)
|
|
9225
|
+
}
|
|
9226
|
+
)
|
|
9167
9227
|
);
|
|
9168
|
-
|
|
9169
|
-
|
|
9170
|
-
|
|
9171
|
-
testid = "button-add",
|
|
9172
|
-
className,
|
|
9173
|
-
iconSize = 18,
|
|
9174
|
-
iconColor,
|
|
9175
|
-
variant = "default",
|
|
9176
|
-
size = "icon",
|
|
9177
|
-
...props
|
|
9178
|
-
}) => /* @__PURE__ */ jsx61(
|
|
9179
|
-
ButtonBase,
|
|
9180
|
-
{
|
|
9181
|
-
variant,
|
|
9182
|
-
size,
|
|
9183
|
-
onClick,
|
|
9228
|
+
EditButton.displayName = "EditButton";
|
|
9229
|
+
var ChangeButton = React38.forwardRef(
|
|
9230
|
+
({
|
|
9184
9231
|
disabled,
|
|
9185
|
-
|
|
9186
|
-
|
|
9187
|
-
|
|
9188
|
-
|
|
9189
|
-
|
|
9190
|
-
|
|
9191
|
-
|
|
9192
|
-
|
|
9193
|
-
|
|
9194
|
-
|
|
9195
|
-
|
|
9196
|
-
|
|
9197
|
-
|
|
9198
|
-
|
|
9199
|
-
|
|
9200
|
-
|
|
9201
|
-
|
|
9202
|
-
|
|
9232
|
+
onClick,
|
|
9233
|
+
testid = "button-edit",
|
|
9234
|
+
className,
|
|
9235
|
+
iconSize = 18,
|
|
9236
|
+
iconColor,
|
|
9237
|
+
variant = "default",
|
|
9238
|
+
size = "icon",
|
|
9239
|
+
...props
|
|
9240
|
+
}, ref) => /* @__PURE__ */ jsx61(
|
|
9241
|
+
ButtonBase,
|
|
9242
|
+
{
|
|
9243
|
+
ref,
|
|
9244
|
+
variant,
|
|
9245
|
+
size,
|
|
9246
|
+
onClick,
|
|
9247
|
+
disabled,
|
|
9248
|
+
testid,
|
|
9249
|
+
className: cn(
|
|
9250
|
+
"transition-all duration-200 ease-in-out group",
|
|
9251
|
+
"hover:scale-105",
|
|
9252
|
+
"active:scale-95",
|
|
9253
|
+
"disabled:hover:scale-100",
|
|
9254
|
+
className
|
|
9255
|
+
),
|
|
9256
|
+
...props,
|
|
9257
|
+
children: /* @__PURE__ */ jsx61(
|
|
9258
|
+
ArrowsLeftRightIcon,
|
|
9259
|
+
{
|
|
9260
|
+
size: iconSize,
|
|
9261
|
+
color: iconColor,
|
|
9262
|
+
className: "transition-transform duration-200 group-hover:-rotate-180"
|
|
9263
|
+
}
|
|
9264
|
+
)
|
|
9265
|
+
}
|
|
9266
|
+
)
|
|
9203
9267
|
);
|
|
9204
|
-
|
|
9205
|
-
|
|
9206
|
-
|
|
9207
|
-
|
|
9208
|
-
className,
|
|
9209
|
-
iconSize = 18,
|
|
9210
|
-
iconColor,
|
|
9211
|
-
variant = "ghost",
|
|
9212
|
-
size = "icon",
|
|
9213
|
-
...props
|
|
9214
|
-
}) => /* @__PURE__ */ jsx61(
|
|
9215
|
-
ButtonBase,
|
|
9216
|
-
{
|
|
9217
|
-
variant,
|
|
9218
|
-
size,
|
|
9268
|
+
ChangeButton.displayName = "ChangeButton";
|
|
9269
|
+
var SaveButton = React38.forwardRef(
|
|
9270
|
+
({
|
|
9271
|
+
disabled,
|
|
9219
9272
|
onClick,
|
|
9273
|
+
testid = "button-save",
|
|
9274
|
+
className,
|
|
9275
|
+
iconSize = 18,
|
|
9276
|
+
iconColor,
|
|
9277
|
+
variant = "default",
|
|
9278
|
+
size = "icon",
|
|
9279
|
+
...props
|
|
9280
|
+
}, ref) => /* @__PURE__ */ jsx61(
|
|
9281
|
+
ButtonBase,
|
|
9282
|
+
{
|
|
9283
|
+
ref,
|
|
9284
|
+
variant,
|
|
9285
|
+
size,
|
|
9286
|
+
onClick,
|
|
9287
|
+
disabled,
|
|
9288
|
+
testid,
|
|
9289
|
+
className: cn(
|
|
9290
|
+
"transition-all duration-200 ease-in-out group",
|
|
9291
|
+
"hover:scale-105",
|
|
9292
|
+
"active:scale-95",
|
|
9293
|
+
"disabled:hover:scale-100",
|
|
9294
|
+
className
|
|
9295
|
+
),
|
|
9296
|
+
...props,
|
|
9297
|
+
children: /* @__PURE__ */ jsx61(
|
|
9298
|
+
FloppyDiskIcon,
|
|
9299
|
+
{
|
|
9300
|
+
size: iconSize,
|
|
9301
|
+
color: iconColor,
|
|
9302
|
+
className: "transition-transform duration-200 group-hover:scale-110"
|
|
9303
|
+
}
|
|
9304
|
+
)
|
|
9305
|
+
}
|
|
9306
|
+
)
|
|
9307
|
+
);
|
|
9308
|
+
SaveButton.displayName = "SaveButton";
|
|
9309
|
+
var AddButton = React38.forwardRef(
|
|
9310
|
+
({
|
|
9220
9311
|
disabled,
|
|
9221
|
-
|
|
9222
|
-
|
|
9223
|
-
|
|
9224
|
-
|
|
9225
|
-
|
|
9226
|
-
|
|
9227
|
-
|
|
9228
|
-
|
|
9229
|
-
|
|
9230
|
-
|
|
9231
|
-
|
|
9232
|
-
|
|
9233
|
-
|
|
9234
|
-
|
|
9235
|
-
|
|
9236
|
-
|
|
9237
|
-
|
|
9238
|
-
|
|
9312
|
+
onClick,
|
|
9313
|
+
testid = "button-add",
|
|
9314
|
+
className,
|
|
9315
|
+
iconSize = 18,
|
|
9316
|
+
iconColor,
|
|
9317
|
+
variant = "default",
|
|
9318
|
+
size = "icon",
|
|
9319
|
+
...props
|
|
9320
|
+
}, ref) => /* @__PURE__ */ jsx61(
|
|
9321
|
+
ButtonBase,
|
|
9322
|
+
{
|
|
9323
|
+
ref,
|
|
9324
|
+
variant,
|
|
9325
|
+
size,
|
|
9326
|
+
onClick,
|
|
9327
|
+
disabled,
|
|
9328
|
+
testid,
|
|
9329
|
+
className: cn(
|
|
9330
|
+
"transition-all duration-200 ease-in-out",
|
|
9331
|
+
"hover:scale-105",
|
|
9332
|
+
"active:scale-95",
|
|
9333
|
+
"disabled:hover:scale-100",
|
|
9334
|
+
className
|
|
9335
|
+
),
|
|
9336
|
+
...props,
|
|
9337
|
+
children: /* @__PURE__ */ jsx61(
|
|
9338
|
+
PlusIcon2,
|
|
9339
|
+
{
|
|
9340
|
+
size: iconSize,
|
|
9341
|
+
color: iconColor,
|
|
9342
|
+
className: "transition-transform duration-300"
|
|
9343
|
+
}
|
|
9344
|
+
)
|
|
9345
|
+
}
|
|
9346
|
+
)
|
|
9239
9347
|
);
|
|
9240
|
-
|
|
9241
|
-
|
|
9242
|
-
|
|
9243
|
-
|
|
9244
|
-
className,
|
|
9245
|
-
iconSize = 18,
|
|
9246
|
-
iconColor,
|
|
9247
|
-
variant = "destructive",
|
|
9248
|
-
size = "icon",
|
|
9249
|
-
...props
|
|
9250
|
-
}) => /* @__PURE__ */ jsx61(
|
|
9251
|
-
ButtonBase,
|
|
9252
|
-
{
|
|
9253
|
-
variant,
|
|
9254
|
-
size,
|
|
9348
|
+
AddButton.displayName = "AddButton";
|
|
9349
|
+
var CloseButton = React38.forwardRef(
|
|
9350
|
+
({
|
|
9351
|
+
disabled,
|
|
9255
9352
|
onClick,
|
|
9353
|
+
testid = "button-close",
|
|
9354
|
+
className,
|
|
9355
|
+
iconSize = 18,
|
|
9356
|
+
iconColor,
|
|
9357
|
+
variant = "ghost",
|
|
9358
|
+
size = "icon",
|
|
9359
|
+
...props
|
|
9360
|
+
}, ref) => /* @__PURE__ */ jsx61(
|
|
9361
|
+
ButtonBase,
|
|
9362
|
+
{
|
|
9363
|
+
ref,
|
|
9364
|
+
variant,
|
|
9365
|
+
size,
|
|
9366
|
+
onClick,
|
|
9367
|
+
disabled,
|
|
9368
|
+
testid,
|
|
9369
|
+
className: cn(
|
|
9370
|
+
"transition-all duration-200 ease-in-out",
|
|
9371
|
+
"hover:scale-110 hover:rotate-90 hover:bg-destructive/10",
|
|
9372
|
+
"active:scale-95 active:rotate-0",
|
|
9373
|
+
"disabled:hover:scale-100 disabled:hover:rotate-0",
|
|
9374
|
+
className
|
|
9375
|
+
),
|
|
9376
|
+
...props,
|
|
9377
|
+
children: /* @__PURE__ */ jsx61(
|
|
9378
|
+
XIcon7,
|
|
9379
|
+
{
|
|
9380
|
+
size: iconSize,
|
|
9381
|
+
color: iconColor,
|
|
9382
|
+
className: "transition-transform duration-300"
|
|
9383
|
+
}
|
|
9384
|
+
)
|
|
9385
|
+
}
|
|
9386
|
+
)
|
|
9387
|
+
);
|
|
9388
|
+
CloseButton.displayName = "CloseButton";
|
|
9389
|
+
var DeleteButton = React38.forwardRef(
|
|
9390
|
+
({
|
|
9256
9391
|
disabled,
|
|
9257
|
-
|
|
9258
|
-
|
|
9259
|
-
|
|
9260
|
-
|
|
9261
|
-
|
|
9262
|
-
|
|
9263
|
-
|
|
9264
|
-
|
|
9265
|
-
|
|
9266
|
-
|
|
9267
|
-
|
|
9392
|
+
onClick,
|
|
9393
|
+
testid = "button-delete",
|
|
9394
|
+
className,
|
|
9395
|
+
iconSize = 18,
|
|
9396
|
+
iconColor,
|
|
9397
|
+
variant = "destructive",
|
|
9398
|
+
size = "icon",
|
|
9399
|
+
destructiveTitle,
|
|
9400
|
+
destructiveDescription,
|
|
9401
|
+
destructiveOnConfirm,
|
|
9402
|
+
destructiveOnCancel,
|
|
9403
|
+
destructiveTriggerContent,
|
|
9404
|
+
...props
|
|
9405
|
+
}, ref) => {
|
|
9406
|
+
const effectiveDestructiveTitle = destructiveTitle ?? props.title;
|
|
9407
|
+
const trigger = /* @__PURE__ */ jsx61(
|
|
9408
|
+
ButtonBase,
|
|
9268
9409
|
{
|
|
9269
|
-
|
|
9270
|
-
|
|
9271
|
-
|
|
9410
|
+
ref,
|
|
9411
|
+
variant,
|
|
9412
|
+
size,
|
|
9413
|
+
onClick,
|
|
9414
|
+
disabled,
|
|
9415
|
+
testid,
|
|
9416
|
+
className: cn(
|
|
9417
|
+
"transition-all duration-200 ease-in-out group",
|
|
9418
|
+
"hover:scale-105",
|
|
9419
|
+
"active:scale-95",
|
|
9420
|
+
"disabled:hover:scale-100",
|
|
9421
|
+
className
|
|
9422
|
+
),
|
|
9423
|
+
...props,
|
|
9424
|
+
children: /* @__PURE__ */ jsx61(
|
|
9425
|
+
TrashIcon3,
|
|
9426
|
+
{
|
|
9427
|
+
size: iconSize,
|
|
9428
|
+
color: iconColor,
|
|
9429
|
+
className: "transition-transform duration-200 group-hover:scale-110"
|
|
9430
|
+
}
|
|
9431
|
+
)
|
|
9272
9432
|
}
|
|
9273
|
-
)
|
|
9433
|
+
);
|
|
9434
|
+
if (effectiveDestructiveTitle) {
|
|
9435
|
+
return /* @__PURE__ */ jsx61(
|
|
9436
|
+
DestructiveDialog,
|
|
9437
|
+
{
|
|
9438
|
+
title: effectiveDestructiveTitle,
|
|
9439
|
+
description: destructiveDescription ?? "Essa a\xE7\xE3o \xE9 irrevers\xEDvel.",
|
|
9440
|
+
onConfirm: destructiveOnConfirm ?? (() => {
|
|
9441
|
+
}),
|
|
9442
|
+
onCancel: destructiveOnCancel,
|
|
9443
|
+
triggerContent: destructiveTriggerContent,
|
|
9444
|
+
children: trigger
|
|
9445
|
+
}
|
|
9446
|
+
);
|
|
9447
|
+
}
|
|
9448
|
+
return trigger;
|
|
9274
9449
|
}
|
|
9275
9450
|
);
|
|
9451
|
+
DeleteButton.displayName = "DeleteButton";
|
|
9276
9452
|
var DownloadButton = ({
|
|
9277
9453
|
disabled,
|
|
9278
9454
|
onClick,
|
|
@@ -9778,7 +9954,7 @@ import { CircleNotchIcon } from "@phosphor-icons/react";
|
|
|
9778
9954
|
import { jsx as jsx62 } from "react/jsx-runtime";
|
|
9779
9955
|
|
|
9780
9956
|
// src/components/ui/FileUploader.tsx
|
|
9781
|
-
import * as
|
|
9957
|
+
import * as React39 from "react";
|
|
9782
9958
|
import { motion as motion15, AnimatePresence as AnimatePresence11 } from "framer-motion";
|
|
9783
9959
|
import {
|
|
9784
9960
|
CloudArrowUpIcon,
|
|
@@ -9860,7 +10036,7 @@ var createImagePreview = (file) => {
|
|
|
9860
10036
|
reader.readAsDataURL(file);
|
|
9861
10037
|
});
|
|
9862
10038
|
};
|
|
9863
|
-
var FileUploader =
|
|
10039
|
+
var FileUploader = React39.forwardRef(
|
|
9864
10040
|
({
|
|
9865
10041
|
className,
|
|
9866
10042
|
accept,
|
|
@@ -9876,15 +10052,15 @@ var FileUploader = React38.forwardRef(
|
|
|
9876
10052
|
animate = true,
|
|
9877
10053
|
...props
|
|
9878
10054
|
}, ref) => {
|
|
9879
|
-
const [isDragging, setIsDragging] =
|
|
9880
|
-
const [files, setFiles] =
|
|
9881
|
-
const inputRef =
|
|
9882
|
-
const dragCounterRef =
|
|
10055
|
+
const [isDragging, setIsDragging] = React39.useState(false);
|
|
10056
|
+
const [files, setFiles] = React39.useState(value);
|
|
10057
|
+
const inputRef = React39.useRef(null);
|
|
10058
|
+
const dragCounterRef = React39.useRef(0);
|
|
9883
10059
|
const multiple = maxFiles > 1;
|
|
9884
|
-
|
|
10060
|
+
React39.useEffect(() => {
|
|
9885
10061
|
setFiles(value);
|
|
9886
10062
|
}, [value]);
|
|
9887
|
-
|
|
10063
|
+
React39.useEffect(() => {
|
|
9888
10064
|
return () => {
|
|
9889
10065
|
files.forEach((file) => {
|
|
9890
10066
|
if (file.preview) {
|
|
@@ -10234,6 +10410,142 @@ var FileUploader = React38.forwardRef(
|
|
|
10234
10410
|
);
|
|
10235
10411
|
FileUploader.displayName = "FileUploader";
|
|
10236
10412
|
|
|
10413
|
+
// src/components/ui/ModalBase.tsx
|
|
10414
|
+
import * as React40 from "react";
|
|
10415
|
+
import * as DialogPrimitive2 from "@radix-ui/react-dialog";
|
|
10416
|
+
import { XIcon as XIcon9 } from "@phosphor-icons/react";
|
|
10417
|
+
import { jsx as jsx64, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
10418
|
+
var ModalBase = DialogPrimitive2.Root;
|
|
10419
|
+
var ModalTriggerBase = DialogPrimitive2.Trigger;
|
|
10420
|
+
var ModalPortalBase = DialogPrimitive2.Portal;
|
|
10421
|
+
var ModalCloseBase = DialogPrimitive2.Close;
|
|
10422
|
+
var ModalOverlayBase = React40.forwardRef(({ className, testid: dataTestId = "modal-overlay", ...props }, ref) => /* @__PURE__ */ jsx64(
|
|
10423
|
+
DialogPrimitive2.Overlay,
|
|
10424
|
+
{
|
|
10425
|
+
ref,
|
|
10426
|
+
className: cn(
|
|
10427
|
+
"fixed inset-0 z-50 bg-black/60 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
10428
|
+
className
|
|
10429
|
+
),
|
|
10430
|
+
"data-testid": dataTestId,
|
|
10431
|
+
...props
|
|
10432
|
+
}
|
|
10433
|
+
));
|
|
10434
|
+
ModalOverlayBase.displayName = DialogPrimitive2.Overlay.displayName;
|
|
10435
|
+
var ModalContentBase = React40.forwardRef(
|
|
10436
|
+
({
|
|
10437
|
+
className,
|
|
10438
|
+
children,
|
|
10439
|
+
testid: dataTestId = "modal-content",
|
|
10440
|
+
size = "md",
|
|
10441
|
+
centered = true,
|
|
10442
|
+
backdropBlur = true,
|
|
10443
|
+
...props
|
|
10444
|
+
}, ref) => {
|
|
10445
|
+
const sizeClass = size === "sm" ? "max-w-md" : size === "lg" ? "max-w-4xl" : size === "full" ? "w-full max-w-[calc(100%-2rem)]" : "max-w-2xl";
|
|
10446
|
+
const positionClass = centered ? "left-[50%] top-[50%] translate-x-[-50%] translate-y-[-50%]" : "left-[50%] top-20 translate-x-[-50%] translate-y-0 sm:translate-y-0";
|
|
10447
|
+
return /* @__PURE__ */ jsxs45(ModalPortalBase, { children: [
|
|
10448
|
+
/* @__PURE__ */ jsx64(
|
|
10449
|
+
ModalOverlayBase,
|
|
10450
|
+
{
|
|
10451
|
+
className: cn("bg-black/40", backdropBlur ? "backdrop-blur-sm" : "")
|
|
10452
|
+
}
|
|
10453
|
+
),
|
|
10454
|
+
/* @__PURE__ */ jsx64(
|
|
10455
|
+
"style",
|
|
10456
|
+
{
|
|
10457
|
+
dangerouslySetInnerHTML: {
|
|
10458
|
+
__html: `
|
|
10459
|
+
@keyframes modal-fade-in { from { opacity: 0 } to { opacity: 1 } }
|
|
10460
|
+
@keyframes modal-fade-out { from { opacity: 1 } to { opacity: 0 } }
|
|
10461
|
+
@keyframes modal-scale-in { from { opacity: 0; transform: translate(-50%, -48%) scale(.98) } to { opacity:1; transform: translate(-50%, -50%) scale(1) } }
|
|
10462
|
+
@keyframes modal-scale-out { from { opacity:1; transform: translate(-50%, -50%) scale(1) } to { opacity: 0; transform: translate(-50%, -48%) scale(.98) } }
|
|
10463
|
+
@keyframes overlay-fade-in { from { opacity: 0 } to { opacity: 1 } }
|
|
10464
|
+
@keyframes overlay-fade-out { from { opacity: 1 } to { opacity: 0 } }
|
|
10465
|
+
.data-[state=open]\\:animate-modal-in { animation: modal-fade-in 220ms cubic-bezier(.16,.84,.24,1) both, modal-scale-in 220ms cubic-bezier(.16,.84,.24,1) both }
|
|
10466
|
+
.data-[state=closed]\\:animate-modal-out { animation: modal-scale-out 160ms cubic-bezier(.16,.84,.24,1) both, modal-fade-out 160ms cubic-bezier(.16,.84,.24,1) both }
|
|
10467
|
+
.data-[state=open]\\:animate-overlay-in { animation: overlay-fade-in 220ms cubic-bezier(.16,.84,.24,1) both }
|
|
10468
|
+
.data-[state=closed]\\:animate-overlay-out { animation: overlay-fade-out 160ms cubic-bezier(.16,.84,.24,1) both }
|
|
10469
|
+
`
|
|
10470
|
+
}
|
|
10471
|
+
}
|
|
10472
|
+
),
|
|
10473
|
+
/* @__PURE__ */ jsxs45(
|
|
10474
|
+
DialogPrimitive2.Content,
|
|
10475
|
+
{
|
|
10476
|
+
ref,
|
|
10477
|
+
className: cn(
|
|
10478
|
+
"fixed z-50 grid w-full gap-4 border bg-background p-6 shadow-lg sm:rounded-lg max-h-[90dvh] overflow-auto",
|
|
10479
|
+
"data-[state=open]:animate-modal-in data-[state=closed]:animate-modal-out",
|
|
10480
|
+
positionClass,
|
|
10481
|
+
sizeClass,
|
|
10482
|
+
className
|
|
10483
|
+
),
|
|
10484
|
+
"data-testid": dataTestId,
|
|
10485
|
+
...props,
|
|
10486
|
+
children: [
|
|
10487
|
+
children,
|
|
10488
|
+
/* @__PURE__ */ jsxs45(DialogPrimitive2.Close, { className: "absolute right-3 top-3 sm:right-4 sm:top-4 rounded-md bg-muted/10 p-1.5 opacity-80 hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none z-10 hover:bg-muted/20 transition-colors", children: [
|
|
10489
|
+
/* @__PURE__ */ jsx64(XIcon9, { className: "h-5 w-5 sm:h-4 sm:w-4 text-foreground" }),
|
|
10490
|
+
/* @__PURE__ */ jsx64("span", { className: "sr-only", children: "Close" })
|
|
10491
|
+
] })
|
|
10492
|
+
]
|
|
10493
|
+
}
|
|
10494
|
+
)
|
|
10495
|
+
] });
|
|
10496
|
+
}
|
|
10497
|
+
);
|
|
10498
|
+
ModalContentBase.displayName = DialogPrimitive2.Content.displayName;
|
|
10499
|
+
var ModalHeaderBase = React40.forwardRef(({ className, testid: dataTestId = "modal-header", ...props }, ref) => /* @__PURE__ */ jsx64(
|
|
10500
|
+
"div",
|
|
10501
|
+
{
|
|
10502
|
+
ref,
|
|
10503
|
+
className: cn(
|
|
10504
|
+
"flex flex-col space-y-1.5 text-center sm:text-left",
|
|
10505
|
+
className
|
|
10506
|
+
),
|
|
10507
|
+
"data-testid": dataTestId,
|
|
10508
|
+
...props
|
|
10509
|
+
}
|
|
10510
|
+
));
|
|
10511
|
+
ModalHeaderBase.displayName = "ModalHeader";
|
|
10512
|
+
var ModalFooterBase = React40.forwardRef(({ className, testid: dataTestId = "modal-footer", ...props }, ref) => /* @__PURE__ */ jsx64(
|
|
10513
|
+
"div",
|
|
10514
|
+
{
|
|
10515
|
+
ref,
|
|
10516
|
+
className: cn(
|
|
10517
|
+
"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
|
|
10518
|
+
className
|
|
10519
|
+
),
|
|
10520
|
+
"data-testid": dataTestId,
|
|
10521
|
+
...props
|
|
10522
|
+
}
|
|
10523
|
+
));
|
|
10524
|
+
ModalFooterBase.displayName = "ModalFooter";
|
|
10525
|
+
var ModalTitleBase = React40.forwardRef(({ className, testid: dataTestId = "modal-title", ...props }, ref) => /* @__PURE__ */ jsx64(
|
|
10526
|
+
DialogPrimitive2.Title,
|
|
10527
|
+
{
|
|
10528
|
+
ref,
|
|
10529
|
+
className: cn(
|
|
10530
|
+
"text-lg font-semibold leading-none tracking-tight",
|
|
10531
|
+
className
|
|
10532
|
+
),
|
|
10533
|
+
"data-testid": dataTestId,
|
|
10534
|
+
...props
|
|
10535
|
+
}
|
|
10536
|
+
));
|
|
10537
|
+
ModalTitleBase.displayName = DialogPrimitive2.Title.displayName;
|
|
10538
|
+
var ModalDescriptionBase = React40.forwardRef(({ className, testid: dataTestId = "modal-description", ...props }, ref) => /* @__PURE__ */ jsx64(
|
|
10539
|
+
DialogPrimitive2.Description,
|
|
10540
|
+
{
|
|
10541
|
+
ref,
|
|
10542
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
10543
|
+
"data-testid": dataTestId,
|
|
10544
|
+
...props
|
|
10545
|
+
}
|
|
10546
|
+
));
|
|
10547
|
+
ModalDescriptionBase.displayName = DialogPrimitive2.Description.displayName;
|
|
10548
|
+
|
|
10237
10549
|
// src/hooks/use-drag.tsx
|
|
10238
10550
|
import { useState as useState18, useCallback as useCallback11, useRef as useRef7, useEffect as useEffect16 } from "react";
|
|
10239
10551
|
var useDrag = (options = {}) => {
|
|
@@ -10350,6 +10662,7 @@ export {
|
|
|
10350
10662
|
CarouselItemBase,
|
|
10351
10663
|
CarouselNextBase,
|
|
10352
10664
|
CarouselPrevious,
|
|
10665
|
+
ChangeButton,
|
|
10353
10666
|
Chart_default as Chart,
|
|
10354
10667
|
CheckButton,
|
|
10355
10668
|
CheckboxBase,
|
|
@@ -10443,6 +10756,16 @@ export {
|
|
|
10443
10756
|
LineChart_default as LineChart,
|
|
10444
10757
|
LoadingBase,
|
|
10445
10758
|
LockButton,
|
|
10759
|
+
ModalBase,
|
|
10760
|
+
ModalCloseBase,
|
|
10761
|
+
ModalContentBase,
|
|
10762
|
+
ModalDescriptionBase,
|
|
10763
|
+
ModalFooterBase,
|
|
10764
|
+
ModalHeaderBase,
|
|
10765
|
+
ModalOverlayBase,
|
|
10766
|
+
ModalPortalBase,
|
|
10767
|
+
ModalTitleBase,
|
|
10768
|
+
ModalTriggerBase,
|
|
10446
10769
|
ModeToggleBase,
|
|
10447
10770
|
MoreButton,
|
|
10448
10771
|
MultiCombobox,
|