@moontra/moonui 6.24.0 → 6.26.0
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/cdn/moonui.css +2 -2
- package/dist/cdn/moonui.esm.js +12 -12
- package/dist/cdn/moonui.global.js +12 -12
- package/dist/index.d.mts +24 -6
- package/dist/index.d.ts +24 -6
- package/dist/index.js +436 -93
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +437 -95
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/issue-544-kontrast.test.tsx +153 -145
- package/src/__tests__/issue-645-overlay-tab-focus.test.tsx +262 -0
- package/src/__tests__/issue-646-dark-scope-override.test.tsx +297 -0
- package/src/__tests__/issue-661-a11y.test.tsx +113 -0
- package/src/__tests__/issue-661-token-kontrast.test.tsx +82 -0
- package/src/components/ui/__tests__/accent-foreground-contrast.test.ts +197 -0
- package/src/components/ui/__tests__/accordion.test.tsx +6 -4
- package/src/components/ui/__tests__/alert.test.tsx +4 -1
- package/src/components/ui/__tests__/button.test.tsx +6 -1
- package/src/components/ui/__tests__/dark-token-contrast.test.ts +18 -18
- package/src/components/ui/__tests__/heading-level-policy.test.tsx +4 -4
- package/src/components/ui/__tests__/issue-643-card-token-parite.test.tsx +113 -0
- package/src/components/ui/__tests__/issue-649-button-aschild.test.tsx +199 -0
- package/src/components/ui/__tests__/issue-664-separator-dekoratif-rol.test.tsx +41 -0
- package/src/components/ui/__tests__/preset-color-shadowing.test.ts +10 -10
- package/src/components/ui/__tests__/primary-subtle-token.test.ts +7 -7
- package/src/components/ui/__tests__/progress-secondary-contrast.test.ts +38 -38
- package/src/components/ui/__tests__/progress-warning-error-contrast.test.ts +64 -64
- package/src/components/ui/__tests__/quality-group-de.test.tsx +2 -2
- package/src/components/ui/__tests__/responsive-color-invariance.test.ts +20 -20
- package/src/components/ui/__tests__/select.test.tsx +6 -1
- package/src/components/ui/__tests__/semantic-token-usage.test.ts +23 -23
- package/src/components/ui/__tests__/size-scale-convention.test.ts +10 -10
- package/src/components/ui/__tests__/slider-accent-contrast.test.ts +142 -136
- package/src/components/ui/__tests__/slider-secondary-contrast.test.ts +60 -60
- package/src/components/ui/__tests__/slider-warning-error-contrast.test.ts +100 -100
- package/src/components/ui/__tests__/switch-variant-contrast.test.tsx +103 -103
- package/src/components/ui/__tests__/tooltip.test.tsx +122 -0
- package/src/components/ui/accordion.tsx +16 -3
- package/src/components/ui/alert.tsx +1 -1
- package/src/components/ui/badge.tsx +12 -1
- package/src/components/ui/button.tsx +95 -24
- package/src/components/ui/card.tsx +59 -5
- package/src/components/ui/dropdown-menu.tsx +99 -5
- package/src/components/ui/file-upload.tsx +4 -0
- package/src/components/ui/index.ts +4 -1
- package/src/components/ui/popover-pro.tsx +41 -0
- package/src/components/ui/popover.tsx +162 -7
- package/src/components/ui/rating.tsx +24 -2
- package/src/components/ui/select.tsx +4 -4
- package/src/components/ui/simple-editor.tsx +3 -18
- package/src/components/ui/tabs.tsx +16 -1
- package/src/components/ui/textarea.tsx +6 -1
- package/src/components/ui/toast.tsx +17 -2
- package/src/components/ui/tooltip.tsx +154 -2
- package/src/styles/tokens.css +34 -2
package/dist/index.mjs
CHANGED
|
@@ -10,7 +10,7 @@ import { twMerge } from 'tailwind-merge';
|
|
|
10
10
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
11
11
|
import { cva } from 'class-variance-authority';
|
|
12
12
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
13
|
-
import { Slot } from '@radix-ui/react-slot';
|
|
13
|
+
import { Slottable, Slot } from '@radix-ui/react-slot';
|
|
14
14
|
import { motion, AnimatePresence, useMotionValue, useTransform, animate } from 'framer-motion';
|
|
15
15
|
import { isValid, format, isSameMonth, isToday, subMonths, addMonths, isSameDay, startOfMonth, endOfMonth, eachDayOfInterval, getDay, startOfWeek, endOfWeek } from 'date-fns';
|
|
16
16
|
export { format } from 'date-fns';
|
|
@@ -57,7 +57,7 @@ var AccordionItem = React12.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
57
57
|
AccordionPrimitive.Item,
|
|
58
58
|
{
|
|
59
59
|
ref,
|
|
60
|
-
className: cn("moonui-theme", "border-b border-
|
|
60
|
+
className: cn("moonui-theme", "border-b border-border", className),
|
|
61
61
|
...props
|
|
62
62
|
}
|
|
63
63
|
));
|
|
@@ -67,7 +67,9 @@ var AccordionTrigger = React12.forwardRef(({ className, children, ...props }, re
|
|
|
67
67
|
{
|
|
68
68
|
ref,
|
|
69
69
|
className: cn(
|
|
70
|
-
|
|
70
|
+
// #661-17: `dark:text-gray-100` KALDIRILDI — tetikleyici artık iki temada
|
|
71
|
+
// da `--foreground`u miras alır (koyu temada 213 31% 91% ≈ gray-100).
|
|
72
|
+
"flex flex-1 items-center justify-between py-4 font-medium transition-all",
|
|
71
73
|
"hover:underline hover:text-primary",
|
|
72
74
|
"[&[data-state=open]>svg]:rotate-180",
|
|
73
75
|
className
|
|
@@ -85,7 +87,13 @@ var AccordionContent = React12.forwardRef(({ className, children, ...props }, re
|
|
|
85
87
|
{
|
|
86
88
|
ref,
|
|
87
89
|
className: cn(
|
|
88
|
-
|
|
90
|
+
// #661-17: ham `text-gray-700 dark:text-gray-300` → `text-foreground/80`.
|
|
91
|
+
// Ölçüldü (iki tema, kart zemini): açık 10.30 → 11.48, koyu 12.19 → 9.44.
|
|
92
|
+
// İkisi de AA'nın (4.5) çok üstünde, yani eşik geçilmiyor — `#545 ihlal
|
|
93
|
+
// takası` sınıfı bir gerileme YOK. `text-muted-foreground` bilerek
|
|
94
|
+
// SEÇİLMEDİ: açık temada 4.76'ya inip gövde metnini görünür biçimde
|
|
95
|
+
// soldururdu (§9 estetik değişiklik olurdu).
|
|
96
|
+
"overflow-hidden text-sm text-foreground/80 transition-all",
|
|
89
97
|
"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
|
|
90
98
|
className
|
|
91
99
|
),
|
|
@@ -102,7 +110,7 @@ var alertVariants = cva(
|
|
|
102
110
|
default: "bg-background text-foreground border-border",
|
|
103
111
|
primary: "bg-primary/10 text-primary border-primary/30",
|
|
104
112
|
success: "bg-success/10 text-success border-success/30",
|
|
105
|
-
warning: "bg-warning/10 text-warning border-warning/30",
|
|
113
|
+
warning: "bg-warning/10 text-warning-subtle-foreground border-warning/30",
|
|
106
114
|
error: "bg-destructive/10 text-destructive border-destructive/30",
|
|
107
115
|
// `--info` token'ı (tokens.css) blue-500 ile birebir aynı değeri
|
|
108
116
|
// taşır → görsel değişiklik yok, ancak varyant artık temaya ve
|
|
@@ -390,11 +398,22 @@ var badgeVariants = cva(
|
|
|
390
398
|
// aynı varyant pro pakette token'lıydı → free ve pro `primary` için
|
|
391
399
|
// farklı renk üretiyordu. Artık token'a bağlı (tema/karanlık moda duyarlı).
|
|
392
400
|
// `primary` VARSAYILAN varyant olduğu için görünür bir renk değişimidir.
|
|
401
|
+
// #646: `dark:bg-primary/90` KALDIRILDI. `primary` VARSAYILAN varyant olduğu
|
|
402
|
+
// için varyant verilmeyen HER `<Badge>` bu sınıfı alıyordu; `tailwind-merge`
|
|
403
|
+
// `dark:` önekli arka planı tüketicinin ÖNEKSİZ `bg-*` sınıfıyla aynı grupta
|
|
404
|
+
// görmediğinden ikisi birden hayatta kalıyor ve koyu temada `dark:` özgüllükle
|
|
405
|
+
// kazanıyordu. Sonuç: `<Badge className="bg-green-500/20 text-green-300">`
|
|
406
|
+
// koyu temada near-white zemin + açık yeşil metin = 1.10:1 (ölçüldü,
|
|
407
|
+
// magnetic-button "Pending"; swipe-actions'ta 6 rozet 1.10–1.48 aralığında).
|
|
408
|
+
// ÖNEKSİZ `bg-primary` bırakıldı: tüketici sınıfıyla AYNI grupta çakışır ve
|
|
409
|
+
// doğru şekilde ezilir. Rozetin kendi görünümü BOZULMAZ — koyu temada
|
|
410
|
+
// `bg-primary` + `text-primary-foreground` 16.16 → 19.80'e çıkar
|
|
411
|
+
// (yarı saydamlık kalktığı için); açık temada değişiklik yok.
|
|
393
412
|
primary: [
|
|
394
413
|
"border-transparent bg-primary text-primary-foreground",
|
|
395
414
|
"hover:bg-primary/90",
|
|
396
415
|
"focus-visible:ring-primary/30 dark:focus-visible:ring-primary/40",
|
|
397
|
-
"dark:
|
|
416
|
+
"dark:shadow-inner dark:shadow-primary/10"
|
|
398
417
|
],
|
|
399
418
|
secondary: [
|
|
400
419
|
"border-transparent bg-secondary text-secondary-foreground",
|
|
@@ -816,10 +835,15 @@ var buttonVariants = cva(
|
|
|
816
835
|
"transition-all duration-200"
|
|
817
836
|
],
|
|
818
837
|
success: [
|
|
838
|
+
// Koyu temada `--success` (#16a34a) foreground'uyla 3.15 veriyordu (AA 4.5
|
|
839
|
+
// ister) — `--destructive`in #544'teki birebir aynı kusuru. Açık tema
|
|
840
|
+
// dokunulmadı (#442 kuralı: geçen yüzeyde regresyon riski açma).
|
|
841
|
+
// Dolgu opak `success` skalasına bağlandı: -600 hâlâ 3.15, ölçümle geçen
|
|
842
|
+
// en açık kademe -700 (4.79).
|
|
819
843
|
"bg-success text-success-foreground",
|
|
820
|
-
"dark:bg-success dark:text-success-foreground",
|
|
821
|
-
"hover:bg-success/90 dark:hover:bg-success
|
|
822
|
-
"active:bg-success/80 dark:active:bg-success
|
|
844
|
+
"dark:bg-success-700 dark:text-success-foreground",
|
|
845
|
+
"hover:bg-success/90 dark:hover:bg-success-800",
|
|
846
|
+
"active:bg-success/80 dark:active:bg-success-900",
|
|
823
847
|
"shadow-sm hover:shadow-md",
|
|
824
848
|
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
825
849
|
"transition-all duration-200"
|
|
@@ -841,11 +865,16 @@ var buttonVariants = cva(
|
|
|
841
865
|
"transition-all duration-300"
|
|
842
866
|
],
|
|
843
867
|
glow: [
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
"
|
|
848
|
-
|
|
868
|
+
// blue-500 (#3b82f6) beyaz metinle 3.68 veriyordu (AA 4.5 ister).
|
|
869
|
+
// Ölçümle geçen en açık kademe blue-600 (#2563eb → 5.17); parıltı
|
|
870
|
+
// gölgesi `--glow-blue-rgb` üzerinden AYNI kaldı, yalnız dolgu koyulaştı.
|
|
871
|
+
"bg-blue-600 text-white",
|
|
872
|
+
// #664 S3: rgba(59,130,246,…) → --glow-blue-rgb (tokens.css). Değer AYNI
|
|
873
|
+
// (Tailwind blue-500), yalnız merkezi token'a taşındı — görsel değişiklik yok.
|
|
874
|
+
"shadow-[0_0_30px_rgba(var(--glow-blue-rgb),0.5)]",
|
|
875
|
+
"hover:shadow-[0_0_40px_rgba(var(--glow-blue-rgb),0.7)]",
|
|
876
|
+
"active:shadow-[0_0_20px_rgba(var(--glow-blue-rgb),0.4)]",
|
|
877
|
+
"hover:bg-blue-700",
|
|
849
878
|
"focus-visible:ring-blue-500/50",
|
|
850
879
|
"transition-all duration-300"
|
|
851
880
|
],
|
|
@@ -854,7 +883,12 @@ var buttonVariants = cva(
|
|
|
854
883
|
"hover:bg-primary/20",
|
|
855
884
|
"active:bg-primary/30",
|
|
856
885
|
"focus-visible:ring-primary/50",
|
|
857
|
-
|
|
886
|
+
// Koyu temada `bg-primary/20` + `text-primary-foreground` 1.76 veriyordu:
|
|
887
|
+
// dark `--primary` neredeyse beyaz olduğu için /20 açık-gri bir zemin
|
|
888
|
+
// üretiyor, `--primary-foreground` ise koyu — ikisi birbirini yiyordu.
|
|
889
|
+
// #354'ün sidebar'da kanıtlanmış çözümü: subtle token ÇİFTİ (zemin+metin
|
|
890
|
+
// birlikte tanımlı, koyu temada koyu zemin + açık metin).
|
|
891
|
+
"dark:bg-primary-subtle dark:text-primary-subtle-foreground",
|
|
858
892
|
"dark:hover:bg-primary/30 dark:active:bg-primary/40",
|
|
859
893
|
"transition-colors duration-200"
|
|
860
894
|
],
|
|
@@ -873,8 +907,9 @@ var buttonVariants = cva(
|
|
|
873
907
|
"bg-transparent text-green-400",
|
|
874
908
|
"border-2 border-green-400",
|
|
875
909
|
"hover:bg-green-400 hover:text-gray-900",
|
|
876
|
-
|
|
877
|
-
"
|
|
910
|
+
// #664 S3: rgba(74,222,128,…) → --glow-green-rgb (tokens.css), piksel-özdeş.
|
|
911
|
+
"hover:shadow-[0_0_30px_rgba(var(--glow-green-rgb),0.6)]",
|
|
912
|
+
"active:shadow-[0_0_15px_rgba(var(--glow-green-rgb),0.4)]",
|
|
878
913
|
"focus-visible:ring-green-400/50",
|
|
879
914
|
"transition-all duration-300"
|
|
880
915
|
]
|
|
@@ -921,22 +956,40 @@ var Button = React12.forwardRef(
|
|
|
921
956
|
rightIcon,
|
|
922
957
|
children,
|
|
923
958
|
disabled,
|
|
959
|
+
onClick,
|
|
924
960
|
...props
|
|
925
961
|
}, ref) => {
|
|
926
|
-
const
|
|
962
|
+
const renderAsSlot = asChild && React12.isValidElement(children);
|
|
963
|
+
const Comp = renderAsSlot ? Slot : "button";
|
|
964
|
+
const isDisabled = disabled || loading;
|
|
965
|
+
const disabledProps = renderAsSlot ? {
|
|
966
|
+
"aria-disabled": isDisabled || void 0,
|
|
967
|
+
"data-disabled": isDisabled ? "" : void 0
|
|
968
|
+
} : { disabled: isDisabled };
|
|
969
|
+
const handleClick = renderAsSlot && isDisabled ? (event) => {
|
|
970
|
+
event.preventDefault();
|
|
971
|
+
event.stopPropagation();
|
|
972
|
+
} : onClick;
|
|
927
973
|
return /* @__PURE__ */ jsxs(
|
|
928
974
|
Comp,
|
|
929
975
|
{
|
|
930
|
-
className: cn(
|
|
976
|
+
className: cn(
|
|
977
|
+
"moonui-theme",
|
|
978
|
+
buttonVariants({ variant, size, rounded, fullWidth, className }),
|
|
979
|
+
// `:disabled` eşleşmediği için görsel/etkileşimsel devre dışılık Slot
|
|
980
|
+
// dalında açık sınıflarla verilir.
|
|
981
|
+
renderAsSlot && isDisabled && "opacity-50 cursor-not-allowed pointer-events-none"
|
|
982
|
+
),
|
|
931
983
|
ref,
|
|
932
|
-
|
|
984
|
+
...disabledProps,
|
|
933
985
|
"aria-busy": loading || void 0,
|
|
934
986
|
"data-loading": loading ? "" : void 0,
|
|
935
987
|
...props,
|
|
988
|
+
onClick: handleClick,
|
|
936
989
|
children: [
|
|
937
990
|
loading && /* @__PURE__ */ jsx(Loader2, { className: "w-4 h-4 animate-spin", "aria-hidden": "true" }),
|
|
938
991
|
!loading && leftIcon,
|
|
939
|
-
children,
|
|
992
|
+
renderAsSlot ? /* @__PURE__ */ jsx(Slottable, { children }) : children,
|
|
940
993
|
!loading && rightIcon
|
|
941
994
|
]
|
|
942
995
|
}
|
|
@@ -1087,16 +1140,16 @@ var skeletonAnimation = {
|
|
|
1087
1140
|
}
|
|
1088
1141
|
};
|
|
1089
1142
|
var cardVariants = cva(
|
|
1090
|
-
"rounded-lg border bg-card text-card-foreground shadow-sm dark:shadow-
|
|
1143
|
+
"rounded-lg border border-border bg-card text-card-foreground shadow-sm dark:shadow-black/20 transition-all duration-200",
|
|
1091
1144
|
{
|
|
1092
1145
|
variants: {
|
|
1093
1146
|
variant: {
|
|
1094
1147
|
default: "",
|
|
1095
|
-
outline: "border border-border shadow-none bg-transparent dark:
|
|
1096
|
-
filled: "border-none bg-secondary dark:bg-
|
|
1097
|
-
elevated: "border-none shadow-md dark:shadow-lg dark:shadow-
|
|
1148
|
+
outline: "border border-border shadow-none bg-transparent dark:bg-transparent",
|
|
1149
|
+
filled: "border-none bg-secondary dark:bg-muted dark:shadow-inner dark:shadow-black/10",
|
|
1150
|
+
elevated: "border-none shadow-md dark:shadow-lg dark:shadow-black/30 dark:bg-card",
|
|
1098
1151
|
gradient: "border-none bg-gradient-to-br from-primary/5 to-primary/10 dark:from-primary/10 dark:to-primary/20",
|
|
1099
|
-
glass: "border border-white/20 bg-white/10 backdrop-blur-md dark:border-
|
|
1152
|
+
glass: "border border-white/20 bg-white/10 backdrop-blur-md dark:border-white/10 dark:bg-black/10"
|
|
1100
1153
|
},
|
|
1101
1154
|
size: {
|
|
1102
1155
|
md: "",
|
|
@@ -2298,7 +2351,76 @@ var popoverContentVariants = cva(
|
|
|
2298
2351
|
}
|
|
2299
2352
|
}
|
|
2300
2353
|
);
|
|
2301
|
-
var
|
|
2354
|
+
var PopoverModalContext = React12.createContext(false);
|
|
2355
|
+
var POPOVER_TAB_STOP_SELECTOR = "a[href],button,input,select,textarea,[tabindex],audio[controls],video[controls],[contenteditable]";
|
|
2356
|
+
function isPopoverElementHidden(node) {
|
|
2357
|
+
const view = node.ownerDocument.defaultView;
|
|
2358
|
+
if (!view)
|
|
2359
|
+
return false;
|
|
2360
|
+
if (view.getComputedStyle(node).visibility === "hidden")
|
|
2361
|
+
return true;
|
|
2362
|
+
let current = node;
|
|
2363
|
+
while (current) {
|
|
2364
|
+
if (view.getComputedStyle(current).display === "none")
|
|
2365
|
+
return true;
|
|
2366
|
+
current = current.parentElement;
|
|
2367
|
+
}
|
|
2368
|
+
return false;
|
|
2369
|
+
}
|
|
2370
|
+
function isPopoverTabStop(node) {
|
|
2371
|
+
if (node.hasAttribute("data-radix-focus-guard"))
|
|
2372
|
+
return false;
|
|
2373
|
+
if (node.tabIndex < 0)
|
|
2374
|
+
return false;
|
|
2375
|
+
if (node.disabled)
|
|
2376
|
+
return false;
|
|
2377
|
+
if (node.hidden)
|
|
2378
|
+
return false;
|
|
2379
|
+
if (node.getAttribute("aria-hidden") === "true")
|
|
2380
|
+
return false;
|
|
2381
|
+
if (node.closest("[inert]"))
|
|
2382
|
+
return false;
|
|
2383
|
+
return !isPopoverElementHidden(node);
|
|
2384
|
+
}
|
|
2385
|
+
function getPopoverTabStopsWithin(container) {
|
|
2386
|
+
return Array.from(
|
|
2387
|
+
container.querySelectorAll(POPOVER_TAB_STOP_SELECTOR)
|
|
2388
|
+
).filter(isPopoverTabStop);
|
|
2389
|
+
}
|
|
2390
|
+
function getPopoverTrigger(content) {
|
|
2391
|
+
if (!content.id)
|
|
2392
|
+
return null;
|
|
2393
|
+
const id = typeof CSS !== "undefined" && typeof CSS.escape === "function" ? CSS.escape(content.id) : content.id;
|
|
2394
|
+
return content.ownerDocument.querySelector(
|
|
2395
|
+
`[aria-controls="${id}"]`
|
|
2396
|
+
);
|
|
2397
|
+
}
|
|
2398
|
+
function getPopoverTabStopOutside(reference, content, direction) {
|
|
2399
|
+
const candidates = Array.from(
|
|
2400
|
+
content.ownerDocument.querySelectorAll(
|
|
2401
|
+
POPOVER_TAB_STOP_SELECTOR
|
|
2402
|
+
)
|
|
2403
|
+
).filter((node) => !content.contains(node) && isPopoverTabStop(node));
|
|
2404
|
+
if (direction === "next") {
|
|
2405
|
+
return candidates.find(
|
|
2406
|
+
(node) => Boolean(
|
|
2407
|
+
reference.compareDocumentPosition(node) & Node.DOCUMENT_POSITION_FOLLOWING
|
|
2408
|
+
)
|
|
2409
|
+
) ?? null;
|
|
2410
|
+
}
|
|
2411
|
+
let previous = null;
|
|
2412
|
+
for (const node of candidates) {
|
|
2413
|
+
const relation = reference.compareDocumentPosition(node);
|
|
2414
|
+
if (node === reference || relation & Node.DOCUMENT_POSITION_PRECEDING) {
|
|
2415
|
+
previous = node;
|
|
2416
|
+
} else {
|
|
2417
|
+
break;
|
|
2418
|
+
}
|
|
2419
|
+
}
|
|
2420
|
+
return previous;
|
|
2421
|
+
}
|
|
2422
|
+
var Popover = ({ modal = false, children, ...props }) => /* @__PURE__ */ jsx(PopoverModalContext.Provider, { value: modal, children: /* @__PURE__ */ jsx(PopoverPrimitive.Root, { ...props, modal, children }) });
|
|
2423
|
+
Popover.displayName = "Popover";
|
|
2302
2424
|
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
2303
2425
|
var PopoverAnchor = PopoverPrimitive.Anchor;
|
|
2304
2426
|
var PopoverContent = React12.forwardRef(({
|
|
@@ -2313,42 +2435,79 @@ var PopoverContent = React12.forwardRef(({
|
|
|
2313
2435
|
closeOnInteractOutside = true,
|
|
2314
2436
|
overlayBackdrop = false,
|
|
2315
2437
|
sideOffset = 4,
|
|
2438
|
+
onKeyDown,
|
|
2316
2439
|
...props
|
|
2317
|
-
}, ref) =>
|
|
2318
|
-
|
|
2319
|
-
|
|
2320
|
-
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
|
|
2336
|
-
|
|
2337
|
-
|
|
2338
|
-
|
|
2339
|
-
|
|
2340
|
-
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
|
|
2344
|
-
|
|
2345
|
-
|
|
2346
|
-
|
|
2347
|
-
|
|
2348
|
-
|
|
2440
|
+
}, ref) => {
|
|
2441
|
+
const isModal = React12.useContext(PopoverModalContext);
|
|
2442
|
+
const handleKeyDown = (event) => {
|
|
2443
|
+
onKeyDown?.(event);
|
|
2444
|
+
if (event.defaultPrevented)
|
|
2445
|
+
return;
|
|
2446
|
+
if (isModal)
|
|
2447
|
+
return;
|
|
2448
|
+
if (event.key !== "Tab")
|
|
2449
|
+
return;
|
|
2450
|
+
if (event.altKey || event.ctrlKey || event.metaKey)
|
|
2451
|
+
return;
|
|
2452
|
+
const content = event.currentTarget;
|
|
2453
|
+
const active = content.ownerDocument.activeElement;
|
|
2454
|
+
if (!active || active !== content && !content.contains(active))
|
|
2455
|
+
return;
|
|
2456
|
+
const tabStops = getPopoverTabStopsWithin(content);
|
|
2457
|
+
const forward = !event.shiftKey;
|
|
2458
|
+
const atEdge = tabStops.length === 0 ? active === content : active === (forward ? tabStops[tabStops.length - 1] : tabStops[0]);
|
|
2459
|
+
if (!atEdge)
|
|
2460
|
+
return;
|
|
2461
|
+
const reference = getPopoverTrigger(content) ?? content;
|
|
2462
|
+
const target = getPopoverTabStopOutside(
|
|
2463
|
+
reference,
|
|
2464
|
+
content,
|
|
2465
|
+
forward ? "next" : "previous"
|
|
2466
|
+
);
|
|
2467
|
+
event.preventDefault();
|
|
2468
|
+
if (target) {
|
|
2469
|
+
target.focus();
|
|
2470
|
+
} else {
|
|
2471
|
+
active.blur();
|
|
2349
2472
|
}
|
|
2350
|
-
|
|
2351
|
-
|
|
2473
|
+
};
|
|
2474
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2475
|
+
overlayBackdrop && /* @__PURE__ */ jsx(
|
|
2476
|
+
"div",
|
|
2477
|
+
{
|
|
2478
|
+
className: "fixed inset-0 z-40 bg-black/50"
|
|
2479
|
+
}
|
|
2480
|
+
),
|
|
2481
|
+
/* @__PURE__ */ jsx(
|
|
2482
|
+
PopoverPrimitive.Content,
|
|
2483
|
+
{
|
|
2484
|
+
ref,
|
|
2485
|
+
side,
|
|
2486
|
+
sideOffset,
|
|
2487
|
+
collisionPadding: 8,
|
|
2488
|
+
onInteractOutside: (e) => {
|
|
2489
|
+
if (!closeOnInteractOutside) {
|
|
2490
|
+
e.preventDefault();
|
|
2491
|
+
}
|
|
2492
|
+
},
|
|
2493
|
+
onKeyDown: handleKeyDown,
|
|
2494
|
+
className: cn(
|
|
2495
|
+
popoverContentVariants({
|
|
2496
|
+
variant,
|
|
2497
|
+
size,
|
|
2498
|
+
side,
|
|
2499
|
+
position,
|
|
2500
|
+
radius,
|
|
2501
|
+
shadow
|
|
2502
|
+
}),
|
|
2503
|
+
backdrop && "backdrop-blur-md bg-opacity-80",
|
|
2504
|
+
className
|
|
2505
|
+
),
|
|
2506
|
+
...props
|
|
2507
|
+
}
|
|
2508
|
+
)
|
|
2509
|
+
] });
|
|
2510
|
+
});
|
|
2352
2511
|
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
2353
2512
|
var PopoverClose = PopoverPrimitive.Close;
|
|
2354
2513
|
var PopoverSeparator = ({ className, ...props }) => /* @__PURE__ */ jsx(
|
|
@@ -2440,7 +2599,22 @@ var tabsTriggerVariants = cva(
|
|
|
2440
2599
|
variant: {
|
|
2441
2600
|
default: "rounded-md data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm dark:data-[state=active]:bg-gray-900 dark:data-[state=active]:text-gray-100 dark:data-[state=active]:shadow-gray-950/10",
|
|
2442
2601
|
underline: "rounded-none border-b-2 border-transparent pb-2 data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:text-foreground dark:data-[state=active]:border-primary/80 dark:data-[state=active]:text-gray-100",
|
|
2443
|
-
|
|
2602
|
+
// #646: `dark:data-[state=active]:text-white` KALDIRILDI. `--primary` koyu
|
|
2603
|
+
// temada BİLİNÇLİ near-white'tır (tokens.css:500, #368 kararı — DEĞİŞMEZ),
|
|
2604
|
+
// dolayısıyla aktif pill'e açıkça beyaz metin yazmak beyaz-üstüne-beyaz
|
|
2605
|
+
// demekti: ölçülen 1.28:1 (gerçek tarayıcı, /docs/components/tabs, koyu tema).
|
|
2606
|
+
// Sınıf kalkınca öneksiz `data-[state=active]:text-primary-foreground`
|
|
2607
|
+
// (koyu temada near-black) devreye girer → 15.91:1. Açık temada hiçbir
|
|
2608
|
+
// değişiklik yok (`dark:` sınıfı orada zaten uygulanmıyordu; ölçülen 4.70:1).
|
|
2609
|
+
//
|
|
2610
|
+
// ⚠️ `dark:data-[state=active]:bg-primary/90` BİLEREK KORUNDU: onu da
|
|
2611
|
+
// kaldırmak #545'in "ihlal takası" tuzağına düşürüyor. Aynı varyanttaki
|
|
2612
|
+
// `dark:bg-gray-800` (inaktif zemin) ile `data-[state=active]:bg-primary`
|
|
2613
|
+
// ÖZGÜLLÜKÇE EŞİT (0,2,0); kaynak sırası nedeniyle `dark:bg-gray-800`
|
|
2614
|
+
// kazanıyor ve aktif pill koyu temada inaktif görünüyordu — near-black metin
|
|
2615
|
+
// gray-800 üstünde 1.41:1 ile YENİ bir ihlal (ölçüldü). Koyu temada aktif
|
|
2616
|
+
// durumun zemini bu yüzden `dark:` özgüllüğünde kalmak ZORUNDA.
|
|
2617
|
+
pills: "rounded-lg bg-gray-100 hover:bg-gray-200/80 border border-gray-300 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground data-[state=active]:border-primary dark:bg-gray-800 dark:hover:bg-gray-700 dark:border-gray-700 dark:data-[state=active]:bg-primary/90 dark:data-[state=active]:border-primary",
|
|
2444
2618
|
cards: "rounded-md bg-muted/50 hover:bg-muted data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-md dark:bg-gray-800/50 dark:hover:bg-gray-700/50 dark:data-[state=active]:bg-gray-900 dark:data-[state=active]:text-gray-100 dark:data-[state=active]:shadow-gray-950/20",
|
|
2445
2619
|
minimal: "rounded-sm bg-transparent hover:bg-muted/30 data-[state=active]:bg-transparent data-[state=active]:text-foreground data-[state=active]:underline data-[state=active]:underline-offset-4 dark:hover:bg-gray-800/30 dark:data-[state=active]:text-gray-200"
|
|
2446
2620
|
},
|
|
@@ -4823,7 +4997,61 @@ function DraggableList({
|
|
|
4823
4997
|
keyExtractor(item)
|
|
4824
4998
|
)) });
|
|
4825
4999
|
}
|
|
4826
|
-
var
|
|
5000
|
+
var DropdownMenuCloseContext = React12.createContext(null);
|
|
5001
|
+
var DropdownMenu = ({
|
|
5002
|
+
open,
|
|
5003
|
+
defaultOpen,
|
|
5004
|
+
onOpenChange,
|
|
5005
|
+
children,
|
|
5006
|
+
...props
|
|
5007
|
+
}) => {
|
|
5008
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React12.useState(
|
|
5009
|
+
defaultOpen ?? false
|
|
5010
|
+
);
|
|
5011
|
+
const isControlled = open !== void 0;
|
|
5012
|
+
const currentOpen = isControlled ? open : uncontrolledOpen;
|
|
5013
|
+
const handleOpenChange = React12.useCallback(
|
|
5014
|
+
(nextOpen) => {
|
|
5015
|
+
if (!isControlled)
|
|
5016
|
+
setUncontrolledOpen(nextOpen);
|
|
5017
|
+
onOpenChange?.(nextOpen);
|
|
5018
|
+
},
|
|
5019
|
+
[isControlled, onOpenChange]
|
|
5020
|
+
);
|
|
5021
|
+
const close = React12.useCallback(() => handleOpenChange(false), [
|
|
5022
|
+
handleOpenChange
|
|
5023
|
+
]);
|
|
5024
|
+
return /* @__PURE__ */ jsx(DropdownMenuCloseContext.Provider, { value: close, children: /* @__PURE__ */ jsx(
|
|
5025
|
+
DropdownMenuPrimitive.Root,
|
|
5026
|
+
{
|
|
5027
|
+
...props,
|
|
5028
|
+
open: currentOpen,
|
|
5029
|
+
onOpenChange: handleOpenChange,
|
|
5030
|
+
children
|
|
5031
|
+
}
|
|
5032
|
+
) });
|
|
5033
|
+
};
|
|
5034
|
+
DropdownMenu.displayName = "DropdownMenu";
|
|
5035
|
+
function useDropdownMenuTabDismiss(onKeyDown) {
|
|
5036
|
+
const close = React12.useContext(DropdownMenuCloseContext);
|
|
5037
|
+
return (event) => {
|
|
5038
|
+
onKeyDown?.(event);
|
|
5039
|
+
if (event.defaultPrevented)
|
|
5040
|
+
return;
|
|
5041
|
+
if (event.key !== "Tab")
|
|
5042
|
+
return;
|
|
5043
|
+
if (event.altKey || event.ctrlKey || event.metaKey)
|
|
5044
|
+
return;
|
|
5045
|
+
if (!close)
|
|
5046
|
+
return;
|
|
5047
|
+
const target = event.target;
|
|
5048
|
+
if (target?.closest("[data-radix-menu-content]") !== event.currentTarget) {
|
|
5049
|
+
return;
|
|
5050
|
+
}
|
|
5051
|
+
event.preventDefault();
|
|
5052
|
+
close();
|
|
5053
|
+
};
|
|
5054
|
+
}
|
|
4827
5055
|
var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
|
|
4828
5056
|
var DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
4829
5057
|
var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
@@ -4846,30 +5074,38 @@ var DropdownMenuSubTrigger = React12.forwardRef(({ className, inset, children, .
|
|
|
4846
5074
|
}
|
|
4847
5075
|
));
|
|
4848
5076
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
4849
|
-
var DropdownMenuSubContent = React12.forwardRef(({ className, ...props }, ref) =>
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
4855
|
-
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
4859
|
-
)
|
|
5077
|
+
var DropdownMenuSubContent = React12.forwardRef(({ className, onKeyDown, ...props }, ref) => {
|
|
5078
|
+
const handleKeyDown = useDropdownMenuTabDismiss(onKeyDown);
|
|
5079
|
+
return /* @__PURE__ */ jsx(
|
|
5080
|
+
DropdownMenuPrimitive.SubContent,
|
|
5081
|
+
{
|
|
5082
|
+
ref,
|
|
5083
|
+
onKeyDown: handleKeyDown,
|
|
5084
|
+
className: cn(
|
|
5085
|
+
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
5086
|
+
className
|
|
5087
|
+
),
|
|
5088
|
+
...props
|
|
5089
|
+
}
|
|
5090
|
+
);
|
|
5091
|
+
});
|
|
4860
5092
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
4861
|
-
var DropdownMenuContent = React12.forwardRef(({ className, sideOffset = 4, ...props }, ref) =>
|
|
4862
|
-
|
|
4863
|
-
{
|
|
4864
|
-
|
|
4865
|
-
|
|
4866
|
-
|
|
4867
|
-
|
|
4868
|
-
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
)
|
|
5093
|
+
var DropdownMenuContent = React12.forwardRef(({ className, sideOffset = 4, onKeyDown, ...props }, ref) => {
|
|
5094
|
+
const handleKeyDown = useDropdownMenuTabDismiss(onKeyDown);
|
|
5095
|
+
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
5096
|
+
DropdownMenuPrimitive.Content,
|
|
5097
|
+
{
|
|
5098
|
+
ref,
|
|
5099
|
+
sideOffset,
|
|
5100
|
+
onKeyDown: handleKeyDown,
|
|
5101
|
+
className: cn(
|
|
5102
|
+
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
5103
|
+
className
|
|
5104
|
+
),
|
|
5105
|
+
...props
|
|
5106
|
+
}
|
|
5107
|
+
) });
|
|
5108
|
+
});
|
|
4873
5109
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
4874
5110
|
var DropdownMenuItem = React12.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4875
5111
|
DropdownMenuPrimitive.Item,
|
|
@@ -5353,6 +5589,10 @@ var FileUpload = React12__default.forwardRef(
|
|
|
5353
5589
|
{
|
|
5354
5590
|
className: cn(
|
|
5355
5591
|
"relative border-2 border-dashed rounded-lg p-8 text-center transition-colors",
|
|
5592
|
+
// #661-2: dosya girdisi `opacity-0` ile tum alani kapliyor; klavyeyle
|
|
5593
|
+
// Tab'landiginda HICBIR gorsel iz yoktu (WCAG 2.4.7). Odak halkasi
|
|
5594
|
+
// sarmalayiciya `focus-within` ile bagli — kutunun kendisi odaklanamaz.
|
|
5595
|
+
"focus-within:outline-none focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",
|
|
5356
5596
|
isDragOver && "border-primary bg-primary/5",
|
|
5357
5597
|
disabled && "opacity-50 cursor-not-allowed",
|
|
5358
5598
|
!disabled && "hover:border-primary/50 cursor-pointer"
|
|
@@ -6268,7 +6508,7 @@ var selectTriggerVariants = cva(
|
|
|
6268
6508
|
);
|
|
6269
6509
|
var SelectTrigger = React12.forwardRef(({ className, children, variant, size, error, success, loading, leftIcon, rightIcon, ...props }, ref) => {
|
|
6270
6510
|
const icerikId = React12.useId();
|
|
6271
|
-
const
|
|
6511
|
+
const isNamed = props["aria-label"] != null || props["aria-labelledby"] != null;
|
|
6272
6512
|
return /* @__PURE__ */ jsxs(
|
|
6273
6513
|
SelectPrimitive.Trigger,
|
|
6274
6514
|
{
|
|
@@ -6287,7 +6527,7 @@ var SelectTrigger = React12.forwardRef(({ className, children, variant, size, er
|
|
|
6287
6527
|
"data-error": error ? true : void 0,
|
|
6288
6528
|
"data-success": success ? true : void 0,
|
|
6289
6529
|
"data-loading": loading ? true : void 0,
|
|
6290
|
-
"aria-labelledby":
|
|
6530
|
+
"aria-labelledby": isNamed ? props["aria-labelledby"] : icerikId,
|
|
6291
6531
|
children: [
|
|
6292
6532
|
/* @__PURE__ */ jsxs("div", { id: icerikId, className: "flex items-center flex-1 gap-2", children: [
|
|
6293
6533
|
leftIcon && /* @__PURE__ */ jsx("span", { className: "flex items-center justify-center text-muted-foreground", children: leftIcon }),
|
|
@@ -6395,8 +6635,8 @@ var SelectItem = React12.forwardRef(({ className, children, variant = "default",
|
|
|
6395
6635
|
variant === "default" && "focus:bg-accent focus:text-accent-foreground dark:focus:bg-gray-700 dark:focus:text-gray-100",
|
|
6396
6636
|
variant === "subtle" && "focus:bg-gray-100 dark:focus:bg-gray-800 focus:text-foreground dark:focus:text-gray-200",
|
|
6397
6637
|
variant === "destructive" && "text-error dark:text-red-400 focus:bg-error/10 dark:focus:bg-red-900/20 focus:text-error dark:focus:text-red-300",
|
|
6398
|
-
variant === "success" && "text-success
|
|
6399
|
-
variant === "warning" && "text-warning dark:text-
|
|
6638
|
+
variant === "success" && "text-success focus:bg-success/10 focus:text-success",
|
|
6639
|
+
variant === "warning" && "text-warning-700 dark:text-warning-500 focus:bg-warning/10 focus:text-warning-700 dark:focus:text-warning-500",
|
|
6400
6640
|
className
|
|
6401
6641
|
),
|
|
6402
6642
|
...props,
|
|
@@ -7169,8 +7409,100 @@ var tooltipVariants = cva(
|
|
|
7169
7409
|
}
|
|
7170
7410
|
}
|
|
7171
7411
|
);
|
|
7172
|
-
var
|
|
7173
|
-
|
|
7412
|
+
var TooltipFocusHoldContext = React12.createContext(null);
|
|
7413
|
+
function isKeyboardFocus(element) {
|
|
7414
|
+
if (!element)
|
|
7415
|
+
return false;
|
|
7416
|
+
try {
|
|
7417
|
+
return element.matches(":focus-visible");
|
|
7418
|
+
} catch {
|
|
7419
|
+
return true;
|
|
7420
|
+
}
|
|
7421
|
+
}
|
|
7422
|
+
var Tooltip = ({
|
|
7423
|
+
open,
|
|
7424
|
+
defaultOpen,
|
|
7425
|
+
onOpenChange,
|
|
7426
|
+
children,
|
|
7427
|
+
...props
|
|
7428
|
+
}) => {
|
|
7429
|
+
const isControlled = open !== void 0;
|
|
7430
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React12.useState(defaultOpen ?? false);
|
|
7431
|
+
const resolvedOpen = isControlled ? open : uncontrolledOpen;
|
|
7432
|
+
const isFocusHeldRef = React12.useRef(false);
|
|
7433
|
+
const hold = React12.useCallback(() => {
|
|
7434
|
+
isFocusHeldRef.current = true;
|
|
7435
|
+
}, []);
|
|
7436
|
+
const release = React12.useCallback(() => {
|
|
7437
|
+
isFocusHeldRef.current = false;
|
|
7438
|
+
}, []);
|
|
7439
|
+
const setOpen = React12.useCallback(
|
|
7440
|
+
(next) => {
|
|
7441
|
+
if (!isControlled)
|
|
7442
|
+
setUncontrolledOpen(next);
|
|
7443
|
+
onOpenChange?.(next);
|
|
7444
|
+
},
|
|
7445
|
+
[isControlled, onOpenChange]
|
|
7446
|
+
);
|
|
7447
|
+
const handleOpenChange = React12.useCallback(
|
|
7448
|
+
(next) => {
|
|
7449
|
+
if (!next && isFocusHeldRef.current)
|
|
7450
|
+
return;
|
|
7451
|
+
setOpen(next);
|
|
7452
|
+
},
|
|
7453
|
+
[setOpen]
|
|
7454
|
+
);
|
|
7455
|
+
React12.useEffect(() => {
|
|
7456
|
+
if (!resolvedOpen)
|
|
7457
|
+
return;
|
|
7458
|
+
const handleEscape = (event) => {
|
|
7459
|
+
if (event.key !== "Escape")
|
|
7460
|
+
return;
|
|
7461
|
+
isFocusHeldRef.current = false;
|
|
7462
|
+
setOpen(false);
|
|
7463
|
+
};
|
|
7464
|
+
document.addEventListener("keydown", handleEscape, true);
|
|
7465
|
+
return () => document.removeEventListener("keydown", handleEscape, true);
|
|
7466
|
+
}, [resolvedOpen, setOpen]);
|
|
7467
|
+
const focusHold = React12.useMemo(
|
|
7468
|
+
() => ({ hold, release }),
|
|
7469
|
+
[hold, release]
|
|
7470
|
+
);
|
|
7471
|
+
return /* @__PURE__ */ jsx(TooltipFocusHoldContext.Provider, { value: focusHold, children: /* @__PURE__ */ jsx(
|
|
7472
|
+
TooltipPrimitive.Root,
|
|
7473
|
+
{
|
|
7474
|
+
...props,
|
|
7475
|
+
open: resolvedOpen,
|
|
7476
|
+
onOpenChange: handleOpenChange,
|
|
7477
|
+
children
|
|
7478
|
+
}
|
|
7479
|
+
) });
|
|
7480
|
+
};
|
|
7481
|
+
Tooltip.displayName = "Tooltip";
|
|
7482
|
+
var TooltipTrigger = React12.forwardRef(({ onFocus, onBlur, onPointerDown, ...props }, ref) => {
|
|
7483
|
+
const focusHold = React12.useContext(TooltipFocusHoldContext);
|
|
7484
|
+
return /* @__PURE__ */ jsx(
|
|
7485
|
+
TooltipPrimitive.Trigger,
|
|
7486
|
+
{
|
|
7487
|
+
ref,
|
|
7488
|
+
...props,
|
|
7489
|
+
onFocus: (event) => {
|
|
7490
|
+
if (isKeyboardFocus(event.currentTarget))
|
|
7491
|
+
focusHold?.hold();
|
|
7492
|
+
onFocus?.(event);
|
|
7493
|
+
},
|
|
7494
|
+
onBlur: (event) => {
|
|
7495
|
+
focusHold?.release();
|
|
7496
|
+
onBlur?.(event);
|
|
7497
|
+
},
|
|
7498
|
+
onPointerDown: (event) => {
|
|
7499
|
+
focusHold?.release();
|
|
7500
|
+
onPointerDown?.(event);
|
|
7501
|
+
}
|
|
7502
|
+
}
|
|
7503
|
+
);
|
|
7504
|
+
});
|
|
7505
|
+
TooltipTrigger.displayName = TooltipPrimitive.Trigger.displayName;
|
|
7174
7506
|
var TooltipArrow = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7175
7507
|
TooltipPrimitive.Arrow,
|
|
7176
7508
|
{
|
|
@@ -8549,7 +8881,7 @@ var Textarea = React12.forwardRef(
|
|
|
8549
8881
|
children: errorMessage || successMessage
|
|
8550
8882
|
}
|
|
8551
8883
|
),
|
|
8552
|
-
showCharCount && /* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground
|
|
8884
|
+
showCharCount && /* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground ml-auto", children: [
|
|
8553
8885
|
currentLength,
|
|
8554
8886
|
maxLength !== void 0 && ` / ${maxLength}`
|
|
8555
8887
|
] })
|
|
@@ -8896,6 +9228,12 @@ var Rating = React12.forwardRef(
|
|
|
8896
9228
|
},
|
|
8897
9229
|
[readOnly, max, currentValue, step, commit]
|
|
8898
9230
|
);
|
|
9231
|
+
const reactId = React12.useId();
|
|
9232
|
+
const optionId = React12.useCallback(
|
|
9233
|
+
(optionValue) => `${reactId}-option-${String(optionValue).replace(".", "-")}`,
|
|
9234
|
+
[reactId]
|
|
9235
|
+
);
|
|
9236
|
+
const activeValue = currentValue >= step && currentValue <= max ? currentValue : step;
|
|
8899
9237
|
const renderIcon = (filled) => {
|
|
8900
9238
|
if (React12.isValidElement(icon)) {
|
|
8901
9239
|
const element = icon;
|
|
@@ -8925,6 +9263,7 @@ var Rating = React12.forwardRef(
|
|
|
8925
9263
|
"aria-label": ariaLabel,
|
|
8926
9264
|
"aria-orientation": "horizontal",
|
|
8927
9265
|
"aria-readonly": readOnly || void 0,
|
|
9266
|
+
"aria-activedescendant": readOnly ? void 0 : optionId(activeValue),
|
|
8928
9267
|
tabIndex: readOnly ? void 0 : 0,
|
|
8929
9268
|
onKeyDown: handleKeyDown,
|
|
8930
9269
|
onMouseLeave: () => setHoverValue(null),
|
|
@@ -8947,7 +9286,7 @@ var Rating = React12.forwardRef(
|
|
|
8947
9286
|
"span",
|
|
8948
9287
|
{
|
|
8949
9288
|
"aria-hidden": "true",
|
|
8950
|
-
className: "pointer-events-none absolute left-0 top-0 h-full overflow-hidden text-
|
|
9289
|
+
className: "pointer-events-none absolute left-0 top-0 h-full overflow-hidden text-[rgb(var(--rating-star-rgb))]",
|
|
8951
9290
|
style: { width: `${fraction * 100}%` },
|
|
8952
9291
|
children: renderIcon(true)
|
|
8953
9292
|
}
|
|
@@ -8958,6 +9297,7 @@ var Rating = React12.forwardRef(
|
|
|
8958
9297
|
{
|
|
8959
9298
|
type: "button",
|
|
8960
9299
|
role: "radio",
|
|
9300
|
+
id: optionId(halfValue),
|
|
8961
9301
|
"aria-checked": currentValue === halfValue,
|
|
8962
9302
|
"aria-label": `${halfValue} stars`,
|
|
8963
9303
|
tabIndex: -1,
|
|
@@ -8971,6 +9311,7 @@ var Rating = React12.forwardRef(
|
|
|
8971
9311
|
{
|
|
8972
9312
|
type: "button",
|
|
8973
9313
|
role: "radio",
|
|
9314
|
+
id: optionId(starValue),
|
|
8974
9315
|
"aria-checked": currentValue === starValue,
|
|
8975
9316
|
"aria-label": `${starValue} stars`,
|
|
8976
9317
|
tabIndex: -1,
|
|
@@ -8985,6 +9326,7 @@ var Rating = React12.forwardRef(
|
|
|
8985
9326
|
{
|
|
8986
9327
|
type: "button",
|
|
8987
9328
|
role: "radio",
|
|
9329
|
+
id: optionId(starValue),
|
|
8988
9330
|
"aria-checked": currentValue === starValue,
|
|
8989
9331
|
"aria-label": `${starValue} ${starValue === 1 ? "star" : "stars"}`,
|
|
8990
9332
|
tabIndex: -1,
|
|
@@ -9182,6 +9524,6 @@ var ToggleGroupItem = React12.forwardRef(({ className, children, variant, size,
|
|
|
9182
9524
|
});
|
|
9183
9525
|
ToggleGroupItem.displayName = "ToggleGroupItem";
|
|
9184
9526
|
|
|
9185
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarGroup, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, Card, CardCVCInput, CardContent, CardDescription, CardExpiryInput, CardFooter, CardHeader, CardNumberInput, CardTitle, CardZipInput, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, CheckboxGroup, CheckboxLabel, CheckboxWithLabel, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, DatePicker, DateRangePicker, DateTimePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogForm, DialogHeader, DialogTitle, DialogTrigger, DraggableList, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUpload, FreeBadge, GestureDrawer, GitHubStarButton, GitHubStars, GradientPicker, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Kbd, Label, LockedComponent, MonthPicker, MoonLogo, MoonLogoAnimated, MoonLogoIcon, Accordion as MoonUIAccordion, AccordionContent as MoonUIAccordionContent, AccordionItem as MoonUIAccordionItem, AccordionTrigger as MoonUIAccordionTrigger, Alert as MoonUIAlert, AlertDescription as MoonUIAlertDescription, AlertTitle as MoonUIAlertTitle, AspectRatio as MoonUIAspectRatio, Avatar as MoonUIAvatar, AvatarFallback as MoonUIAvatarFallback, AvatarGroup as MoonUIAvatarGroup, AvatarImage as MoonUIAvatarImage, Badge as MoonUIBadge, Breadcrumb as MoonUIBreadcrumb, BreadcrumbEllipsis as MoonUIBreadcrumbEllipsis, BreadcrumbItem as MoonUIBreadcrumbItem, BreadcrumbLink as MoonUIBreadcrumbLink, BreadcrumbList as MoonUIBreadcrumbList, BreadcrumbPage as MoonUIBreadcrumbPage, BreadcrumbSeparator as MoonUIBreadcrumbSeparator, Button as MoonUIButton, ButtonGroup as MoonUIButtonGroup, Calendar as MoonUICalendar, Card as MoonUICard, CardCVCInput as MoonUICardCVCInput, CardContent as MoonUICardContent, CardDescription as MoonUICardDescription, CardExpiryInput as MoonUICardExpiryInput, CardFooter as MoonUICardFooter, CardHeader as MoonUICardHeader, CardNumberInput as MoonUICardNumberInput, CardTitle as MoonUICardTitle, CardZipInput as MoonUICardZipInput, Carousel as MoonUICarousel, CarouselContent as MoonUICarouselContent, CarouselItem as MoonUICarouselItem, CarouselNext as MoonUICarouselNext, CarouselPrevious as MoonUICarouselPrevious, Checkbox as MoonUICheckbox, CheckboxGroup as MoonUICheckboxGroup, CheckboxLabel as MoonUICheckboxLabel, CheckboxWithLabel as MoonUICheckboxWithLabel, Collapsible as MoonUICollapsible, CollapsibleContent as MoonUICollapsibleContent, CollapsibleTrigger as MoonUICollapsibleTrigger, ColorPicker as MoonUIColorPicker, Command as MoonUICommand, CommandDialog as MoonUICommandDialog, CommandEmpty as MoonUICommandEmpty, CommandGroup as MoonUICommandGroup, CommandInput as MoonUICommandInput, CommandItem as MoonUICommandItem, CommandList as MoonUICommandList, CommandSeparator as MoonUICommandSeparator, CommandShortcut as MoonUICommandShortcut, DataTableBasic as MoonUIDataTableBasic, DatePicker as MoonUIDatePicker, DateRangePicker as MoonUIDateRangePicker, DateTimePicker as MoonUIDateTimePicker, Dialog as MoonUIDialog, DialogClose as MoonUIDialogClose, DialogContent as MoonUIDialogContent, DialogDescription as MoonUIDialogDescription, DialogFooter as MoonUIDialogFooter, DialogForm as MoonUIDialogForm, DialogHeader as MoonUIDialogHeader, DialogTitle as MoonUIDialogTitle, DialogTrigger as MoonUIDialogTrigger, DraggableList as MoonUIDraggableList, DropdownMenu as MoonUIDropdownMenu, DropdownMenuCheckboxItem as MoonUIDropdownMenuCheckboxItem, DropdownMenuContent as MoonUIDropdownMenuContent, DropdownMenuGroup as MoonUIDropdownMenuGroup, DropdownMenuItem as MoonUIDropdownMenuItem, DropdownMenuLabel as MoonUIDropdownMenuLabel, DropdownMenuPortal as MoonUIDropdownMenuPortal, DropdownMenuRadioGroup as MoonUIDropdownMenuRadioGroup, DropdownMenuRadioItem as MoonUIDropdownMenuRadioItem, DropdownMenuSeparator as MoonUIDropdownMenuSeparator, DropdownMenuShortcut as MoonUIDropdownMenuShortcut, DropdownMenuSub as MoonUIDropdownMenuSub, DropdownMenuSubContent as MoonUIDropdownMenuSubContent, DropdownMenuSubTrigger as MoonUIDropdownMenuSubTrigger, DropdownMenuTrigger as MoonUIDropdownMenuTrigger, FileUpload as MoonUIFileUpload, FreeBadge as MoonUIFreeBadge, GestureDrawer as MoonUIGestureDrawer, GitHubStars as MoonUIGitHubStars, GradientPicker as MoonUIGradientPicker, Input as MoonUIInput, InputOTP as MoonUIInputOTP, InputOTPGroup as MoonUIInputOTPGroup, InputOTPSeparator as MoonUIInputOTPSeparator, InputOTPSlot as MoonUIInputOTPSlot, Kbd as MoonUIKbd, Label as MoonUILabel, LockedComponent as MoonUILockedComponent, MonthPicker as MoonUIMonthPicker, MoonLogo as MoonUIMoonLogo, Pagination as MoonUIPagination, PaginationContent as MoonUIPaginationContent, PaginationEllipsis as MoonUIPaginationEllipsis, PaginationItem as MoonUIPaginationItem, PaginationLink as MoonUIPaginationLink, PaginationNext as MoonUIPaginationNext, PaginationPrevious as MoonUIPaginationPrevious, PhoneInput as MoonUIPhoneInput, Popover as MoonUIPopover, PopoverAnchor as MoonUIPopoverAnchor, PopoverClose as MoonUIPopoverClose, PopoverContent as MoonUIPopoverContent, PopoverFooter as MoonUIPopoverFooter, PopoverHeader as MoonUIPopoverHeader, PopoverSeparator as MoonUIPopoverSeparator, PopoverTrigger as MoonUIPopoverTrigger, ProBadge as MoonUIProBadge, ProComponentWrapper as MoonUIProComponentWrapper, Progress as MoonUIProgress, RadioGroup2 as MoonUIRadioGroup, RadioGroupItem as MoonUIRadioGroupItem, RadioItemWithLabel as MoonUIRadioItemWithLabel, RadioLabel as MoonUIRadioLabel, Rating as MoonUIRating, RichTextEditor as MoonUIRichTextEditor, ScrollArea as MoonUIScrollArea, ScrollBar as MoonUIScrollBar, ScrollReveal as MoonUIScrollReveal, ScrollRevealContainer as MoonUIScrollRevealContainer, ScrollRevealItem as MoonUIScrollRevealItem, Select as MoonUISelect, SelectContent as MoonUISelectContent, SelectGroup as MoonUISelectGroup, SelectItem as MoonUISelectItem, SelectLabel as MoonUISelectLabel, SelectScrollDownButton as MoonUISelectScrollDownButton, SelectScrollUpButton as MoonUISelectScrollUpButton, SelectSeparator as MoonUISelectSeparator, SelectTrigger as MoonUISelectTrigger, SelectValue as MoonUISelectValue, Separator3 as MoonUISeparator, SimpleColorPicker as MoonUISimpleColorPicker, SimpleEditor as MoonUISimpleEditor, SimpleTooltip as MoonUISimpleTooltip, Skeleton as MoonUISkeleton, SkeletonAvatar as MoonUISkeletonAvatar, SkeletonCard as MoonUISkeletonCard, SkeletonText as MoonUISkeletonText, Slider as MoonUISlider, Spinner as MoonUISpinner, SwipeableCard as MoonUISwipeableCard, Switch as MoonUISwitch, Table as MoonUITable, TableBody as MoonUITableBody, TableCaption as MoonUITableCaption, TableCell as MoonUITableCell, TableFooter as MoonUITableFooter, TableHead as MoonUITableHead, TableHeader as MoonUITableHeader, TableRow as MoonUITableRow, Tabs as MoonUITabs, TabsContent as MoonUITabsContent, TabsList as MoonUITabsList, TabsTrigger as MoonUITabsTrigger, TagsInput as MoonUITagsInput, Textarea as MoonUITextarea, Toast as MoonUIToast, ToastAction as MoonUIToastAction, ToastClose as MoonUIToastClose, ToastDescription as MoonUIToastDescription, ToastProvider as MoonUIToastProvider, ToastTitle as MoonUIToastTitle, ToastViewport as MoonUIToastViewport, Toaster as MoonUIToaster, Toggle as MoonUIToggle, ToggleGroup as MoonUIToggleGroup, ToggleGroupItem as MoonUIToggleGroupItem, Tooltip as MoonUITooltip, TooltipArrow as MoonUITooltipArrow, TooltipContent as MoonUITooltipContent, TooltipProvider as MoonUITooltipProvider, TooltipTrigger as MoonUITooltipTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PhoneInput, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverFooter, PopoverHeader, PopoverSeparator, PopoverTrigger, ProBadge, ProComponentWrapper, Progress, RadioGroup2 as RadioGroup, RadioGroupItem, RadioItemWithLabel, RadioLabel, Rating, RichTextEditor, ScrollArea, ScrollBar, ScrollReveal, ScrollRevealContainer, ScrollRevealItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, SimpleColorPicker, SimpleEditor, SimpleTooltip, Skeleton, SkeletonAvatar, SkeletonCard, SkeletonText, Slider, Spinner, SwipeableCard, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipTrigger, aspectRatioVariants, badgeVariants, breadcrumbVariants, buttonGroupVariants, buttonVariants, cardVariants, carouselContentVariants, carouselItemVariants, cn, collapsibleContentVariants, collapsibleTriggerVariants, inputOTPSlotVariants, kbdVariants, badgeVariants as moonUIBadgeVariants, buttonGroupVariants as moonUIButtonGroupVariants, buttonVariants as moonUIButtonVariants, carouselContentVariants as moonUICarouselContentVariants, carouselItemVariants as moonUICarouselItemVariants, createSortableHeader as moonUICreateSortableHeader, inputOTPSlotVariants as moonUIInputOTPSlotVariants, kbdVariants as moonUIKbdVariants, popoverContentVariants as moonUIPopoverContentVariants, ratingVariants as moonUIRatingVariants, skeletonVariants as moonUISkeletonVariants, spinnerVariants as moonUISpinnerVariants, toggleVariants as moonUIToggleVariants, tooltipVariants as moonUITooltipVariants, popoverContentVariants, progressVariants, ratingVariants, separatorVariants, skeletonVariants, spinnerVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toast, toggleVariants, tooltipVariants, useCarousel, useToast };
|
|
9527
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarGroup, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, Card, CardCVCInput, CardContent, CardDescription, CardExpiryInput, CardFooter, CardHeader, CardNumberInput, CardTitle, CardZipInput, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, CheckboxGroup, CheckboxLabel, CheckboxWithLabel, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, DatePicker, DateRangePicker, DateTimePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogForm, DialogHeader, DialogTitle, DialogTrigger, DraggableList, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUpload, FreeBadge, GestureDrawer, GitHubStarButton, GitHubStars, GradientPicker, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Kbd, Label, LockedComponent, MonthPicker, MoonLogo, MoonLogoAnimated, MoonLogoIcon, Accordion as MoonUIAccordion, AccordionContent as MoonUIAccordionContent, AccordionItem as MoonUIAccordionItem, AccordionTrigger as MoonUIAccordionTrigger, Alert as MoonUIAlert, AlertDescription as MoonUIAlertDescription, AlertTitle as MoonUIAlertTitle, AspectRatio as MoonUIAspectRatio, Avatar as MoonUIAvatar, AvatarFallback as MoonUIAvatarFallback, AvatarGroup as MoonUIAvatarGroup, AvatarImage as MoonUIAvatarImage, Badge as MoonUIBadge, Breadcrumb as MoonUIBreadcrumb, BreadcrumbEllipsis as MoonUIBreadcrumbEllipsis, BreadcrumbItem as MoonUIBreadcrumbItem, BreadcrumbLink as MoonUIBreadcrumbLink, BreadcrumbList as MoonUIBreadcrumbList, BreadcrumbPage as MoonUIBreadcrumbPage, BreadcrumbSeparator as MoonUIBreadcrumbSeparator, Button as MoonUIButton, ButtonGroup as MoonUIButtonGroup, Calendar as MoonUICalendar, Card as MoonUICard, CardCVCInput as MoonUICardCVCInput, CardContent as MoonUICardContent, CardDescription as MoonUICardDescription, CardExpiryInput as MoonUICardExpiryInput, CardFooter as MoonUICardFooter, CardHeader as MoonUICardHeader, CardNumberInput as MoonUICardNumberInput, CardTitle as MoonUICardTitle, CardZipInput as MoonUICardZipInput, Carousel as MoonUICarousel, CarouselContent as MoonUICarouselContent, CarouselItem as MoonUICarouselItem, CarouselNext as MoonUICarouselNext, CarouselPrevious as MoonUICarouselPrevious, Checkbox as MoonUICheckbox, CheckboxGroup as MoonUICheckboxGroup, CheckboxLabel as MoonUICheckboxLabel, CheckboxWithLabel as MoonUICheckboxWithLabel, Collapsible as MoonUICollapsible, CollapsibleContent as MoonUICollapsibleContent, CollapsibleTrigger as MoonUICollapsibleTrigger, ColorPicker as MoonUIColorPicker, Command as MoonUICommand, CommandDialog as MoonUICommandDialog, CommandEmpty as MoonUICommandEmpty, CommandGroup as MoonUICommandGroup, CommandInput as MoonUICommandInput, CommandItem as MoonUICommandItem, CommandList as MoonUICommandList, CommandSeparator as MoonUICommandSeparator, CommandShortcut as MoonUICommandShortcut, DataTableBasic as MoonUIDataTableBasic, DatePicker as MoonUIDatePicker, DateRangePicker as MoonUIDateRangePicker, DateTimePicker as MoonUIDateTimePicker, Dialog as MoonUIDialog, DialogClose as MoonUIDialogClose, DialogContent as MoonUIDialogContent, DialogDescription as MoonUIDialogDescription, DialogFooter as MoonUIDialogFooter, DialogForm as MoonUIDialogForm, DialogHeader as MoonUIDialogHeader, DialogTitle as MoonUIDialogTitle, DialogTrigger as MoonUIDialogTrigger, DraggableList as MoonUIDraggableList, DropdownMenu as MoonUIDropdownMenu, DropdownMenuCheckboxItem as MoonUIDropdownMenuCheckboxItem, DropdownMenuContent as MoonUIDropdownMenuContent, DropdownMenuGroup as MoonUIDropdownMenuGroup, DropdownMenuItem as MoonUIDropdownMenuItem, DropdownMenuLabel as MoonUIDropdownMenuLabel, DropdownMenuPortal as MoonUIDropdownMenuPortal, DropdownMenuRadioGroup as MoonUIDropdownMenuRadioGroup, DropdownMenuRadioItem as MoonUIDropdownMenuRadioItem, DropdownMenuSeparator as MoonUIDropdownMenuSeparator, DropdownMenuShortcut as MoonUIDropdownMenuShortcut, DropdownMenuSub as MoonUIDropdownMenuSub, DropdownMenuSubContent as MoonUIDropdownMenuSubContent, DropdownMenuSubTrigger as MoonUIDropdownMenuSubTrigger, DropdownMenuTrigger as MoonUIDropdownMenuTrigger, FileUpload as MoonUIFileUpload, FreeBadge as MoonUIFreeBadge, GestureDrawer as MoonUIGestureDrawer, GitHubStars as MoonUIGitHubStars, GradientPicker as MoonUIGradientPicker, Input as MoonUIInput, InputOTP as MoonUIInputOTP, InputOTPGroup as MoonUIInputOTPGroup, InputOTPSeparator as MoonUIInputOTPSeparator, InputOTPSlot as MoonUIInputOTPSlot, Kbd as MoonUIKbd, Label as MoonUILabel, LockedComponent as MoonUILockedComponent, MonthPicker as MoonUIMonthPicker, MoonLogo as MoonUIMoonLogo, Pagination as MoonUIPagination, PaginationContent as MoonUIPaginationContent, PaginationEllipsis as MoonUIPaginationEllipsis, PaginationItem as MoonUIPaginationItem, PaginationLink as MoonUIPaginationLink, PaginationNext as MoonUIPaginationNext, PaginationPrevious as MoonUIPaginationPrevious, PhoneInput as MoonUIPhoneInput, Popover as MoonUIPopover, PopoverAnchor as MoonUIPopoverAnchor, PopoverClose as MoonUIPopoverClose, PopoverContent as MoonUIPopoverContent, PopoverFooter as MoonUIPopoverFooter, PopoverHeader as MoonUIPopoverHeader, PopoverSeparator as MoonUIPopoverSeparator, PopoverTrigger as MoonUIPopoverTrigger, ProBadge as MoonUIProBadge, ProComponentWrapper as MoonUIProComponentWrapper, Progress as MoonUIProgress, RadioGroup2 as MoonUIRadioGroup, RadioGroupItem as MoonUIRadioGroupItem, RadioItemWithLabel as MoonUIRadioItemWithLabel, RadioLabel as MoonUIRadioLabel, Rating as MoonUIRating, RichTextEditor as MoonUIRichTextEditor, ScrollArea as MoonUIScrollArea, ScrollBar as MoonUIScrollBar, ScrollReveal as MoonUIScrollReveal, ScrollRevealContainer as MoonUIScrollRevealContainer, ScrollRevealItem as MoonUIScrollRevealItem, Select as MoonUISelect, SelectContent as MoonUISelectContent, SelectGroup as MoonUISelectGroup, SelectItem as MoonUISelectItem, SelectLabel as MoonUISelectLabel, SelectScrollDownButton as MoonUISelectScrollDownButton, SelectScrollUpButton as MoonUISelectScrollUpButton, SelectSeparator as MoonUISelectSeparator, SelectTrigger as MoonUISelectTrigger, SelectValue as MoonUISelectValue, Separator3 as MoonUISeparator, SimpleColorPicker as MoonUISimpleColorPicker, SimpleEditor as MoonUISimpleEditor, SimpleTooltip as MoonUISimpleTooltip, Skeleton as MoonUISkeleton, SkeletonAvatar as MoonUISkeletonAvatar, SkeletonCard as MoonUISkeletonCard, SkeletonText as MoonUISkeletonText, Slider as MoonUISlider, Spinner as MoonUISpinner, SwipeableCard as MoonUISwipeableCard, Switch as MoonUISwitch, Table as MoonUITable, TableBody as MoonUITableBody, TableCaption as MoonUITableCaption, TableCell as MoonUITableCell, TableFooter as MoonUITableFooter, TableHead as MoonUITableHead, TableHeader as MoonUITableHeader, TableRow as MoonUITableRow, Tabs as MoonUITabs, TabsContent as MoonUITabsContent, TabsList as MoonUITabsList, TabsTrigger as MoonUITabsTrigger, TagsInput as MoonUITagsInput, Textarea as MoonUITextarea, Toast as MoonUIToast, ToastAction as MoonUIToastAction, ToastClose as MoonUIToastClose, ToastDescription as MoonUIToastDescription, ToastProvider as MoonUIToastProvider, ToastTitle as MoonUIToastTitle, ToastViewport as MoonUIToastViewport, Toaster as MoonUIToaster, Toggle as MoonUIToggle, ToggleGroup as MoonUIToggleGroup, ToggleGroupItem as MoonUIToggleGroupItem, Tooltip as MoonUITooltip, TooltipArrow as MoonUITooltipArrow, TooltipContent as MoonUITooltipContent, TooltipProvider as MoonUITooltipProvider, TooltipTrigger as MoonUITooltipTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PhoneInput, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverFooter, PopoverHeader, PopoverSeparator, PopoverTrigger, ProBadge, ProComponentWrapper, Progress, RadioGroup2 as RadioGroup, RadioGroupItem, RadioItemWithLabel, RadioLabel, Rating, RichTextEditor, ScrollArea, ScrollBar, ScrollReveal, ScrollRevealContainer, ScrollRevealItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, SimpleColorPicker, SimpleEditor, SimpleTooltip, Skeleton, SkeletonAvatar, SkeletonCard, SkeletonText, Slider, Spinner, SwipeableCard, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipTrigger, aspectRatioVariants, badgeVariants, breadcrumbVariants, buttonGroupVariants, buttonVariants, cardVariants, carouselContentVariants, carouselItemVariants, cn, collapsibleContentVariants, collapsibleTriggerVariants, inputOTPSlotVariants, kbdVariants, badgeVariants as moonUIBadgeVariants, buttonGroupVariants as moonUIButtonGroupVariants, buttonVariants as moonUIButtonVariants, carouselContentVariants as moonUICarouselContentVariants, carouselItemVariants as moonUICarouselItemVariants, createSortableHeader as moonUICreateSortableHeader, inputOTPSlotVariants as moonUIInputOTPSlotVariants, kbdVariants as moonUIKbdVariants, popoverContentVariants as moonUIPopoverContentVariants, ratingVariants as moonUIRatingVariants, separatorVariants as moonUISeparatorVariants, skeletonVariants as moonUISkeletonVariants, spinnerVariants as moonUISpinnerVariants, toggleVariants as moonUIToggleVariants, tooltipVariants as moonUITooltipVariants, popoverContentVariants, progressVariants, ratingVariants, separatorVariants, skeletonVariants, spinnerVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toast, toggleVariants, tooltipVariants, useCarousel, useToast };
|
|
9186
9528
|
//# sourceMappingURL=out.js.map
|
|
9187
9529
|
//# sourceMappingURL=index.mjs.map
|