@tutti-os/ui-system 0.0.38 → 0.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-NIKJOCMI.js → chunk-KFFYDDIV.js} +276 -209
- package/dist/chunk-KFFYDDIV.js.map +1 -0
- package/dist/components/index.d.ts +10 -2
- package/dist/components/index.js +9 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +9 -1
- package/dist/metadata/components.json +52 -0
- package/dist/metadata/index.js +52 -0
- package/dist/metadata/index.js.map +1 -1
- package/dist/styles/base.css +6 -0
- package/dist/styles/theme.css +177 -0
- package/package.json +6 -1
- package/ui-system.md +6 -0
- package/dist/chunk-NIKJOCMI.js.map +0 -1
|
@@ -588,10 +588,105 @@ function ConfirmationDialog({
|
|
|
588
588
|
) });
|
|
589
589
|
}
|
|
590
590
|
|
|
591
|
-
// src/components/
|
|
591
|
+
// src/components/context-menu/context-menu.tsx
|
|
592
|
+
import { ContextMenu as ContextMenuPrimitive } from "radix-ui";
|
|
593
|
+
|
|
594
|
+
// src/components/menu-surface/menu-surface.tsx
|
|
592
595
|
import * as React4 from "react";
|
|
596
|
+
import { Slot as Slot4 } from "radix-ui";
|
|
597
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
598
|
+
var menuSurfaceClassName = "t-dropdown flex flex-col gap-0.5 rounded-[8px] border border-[var(--border-1)] bg-[var(--background-fronted)] p-1 text-[13px] text-[var(--text-primary)] shadow-panel outline-none";
|
|
599
|
+
var menuItemClassName = "relative flex cursor-pointer items-center gap-1.5 rounded-sm px-2 py-1 text-[13px] text-[var(--text-primary)] outline-hidden transition-colors duration-200 select-none hover:bg-[var(--transparency-hover)] hover:text-[var(--text-primary)] focus:bg-[var(--transparency-hover)] focus:text-[var(--text-primary)] data-[highlighted]:bg-[var(--transparency-hover)] data-[highlighted]:text-[var(--text-primary)] data-disabled:pointer-events-none data-disabled:text-[var(--text-disabled)] [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:min-w-0 *:[span]:last:flex-1 *:[span]:last:items-center *:[span]:last:gap-2";
|
|
600
|
+
var menuItemWithIndicatorClassName = `${menuItemClassName} pr-8`;
|
|
601
|
+
var menuItemIndicatorClassName = "pointer-events-none absolute right-2 flex size-4 items-center justify-center text-[var(--tutti-purple)]";
|
|
602
|
+
var MenuSurface = React4.forwardRef(
|
|
603
|
+
({
|
|
604
|
+
asChild = false,
|
|
605
|
+
className,
|
|
606
|
+
"data-state": dataState,
|
|
607
|
+
state = "open",
|
|
608
|
+
...props
|
|
609
|
+
}, ref) => {
|
|
610
|
+
const Comp = asChild ? Slot4.Root : "div";
|
|
611
|
+
return /* @__PURE__ */ jsx8(
|
|
612
|
+
Comp,
|
|
613
|
+
{
|
|
614
|
+
...props,
|
|
615
|
+
ref,
|
|
616
|
+
className: cn(menuSurfaceClassName, className),
|
|
617
|
+
"data-state": dataState ?? state
|
|
618
|
+
}
|
|
619
|
+
);
|
|
620
|
+
}
|
|
621
|
+
);
|
|
622
|
+
MenuSurface.displayName = "MenuSurface";
|
|
623
|
+
|
|
624
|
+
// src/components/context-menu/context-menu.tsx
|
|
625
|
+
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
626
|
+
function ContextMenu({
|
|
627
|
+
...props
|
|
628
|
+
}) {
|
|
629
|
+
return /* @__PURE__ */ jsx9(ContextMenuPrimitive.Root, { "data-slot": "context-menu", ...props });
|
|
630
|
+
}
|
|
631
|
+
function ContextMenuTrigger({
|
|
632
|
+
...props
|
|
633
|
+
}) {
|
|
634
|
+
return /* @__PURE__ */ jsx9(ContextMenuPrimitive.Trigger, { "data-slot": "context-menu-trigger", ...props });
|
|
635
|
+
}
|
|
636
|
+
function ContextMenuContent({
|
|
637
|
+
className,
|
|
638
|
+
children,
|
|
639
|
+
style,
|
|
640
|
+
...props
|
|
641
|
+
}) {
|
|
642
|
+
return /* @__PURE__ */ jsx9(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx9(
|
|
643
|
+
ContextMenuPrimitive.Content,
|
|
644
|
+
{
|
|
645
|
+
asChild: true,
|
|
646
|
+
"data-slot": "context-menu-content",
|
|
647
|
+
...props,
|
|
648
|
+
children: /* @__PURE__ */ jsx9(
|
|
649
|
+
MenuSurface,
|
|
650
|
+
{
|
|
651
|
+
"data-slot": "context-menu-content",
|
|
652
|
+
className: cn(
|
|
653
|
+
"z-50 min-w-32 overflow-x-hidden overflow-y-auto",
|
|
654
|
+
className
|
|
655
|
+
),
|
|
656
|
+
style: { zIndex: "var(--z-popover)", ...style },
|
|
657
|
+
children
|
|
658
|
+
}
|
|
659
|
+
)
|
|
660
|
+
}
|
|
661
|
+
) });
|
|
662
|
+
}
|
|
663
|
+
function ContextMenuItem({
|
|
664
|
+
className,
|
|
665
|
+
inset,
|
|
666
|
+
variant = "default",
|
|
667
|
+
...props
|
|
668
|
+
}) {
|
|
669
|
+
return /* @__PURE__ */ jsx9(
|
|
670
|
+
ContextMenuPrimitive.Item,
|
|
671
|
+
{
|
|
672
|
+
"data-inset": inset,
|
|
673
|
+
"data-slot": "context-menu-item",
|
|
674
|
+
"data-variant": variant,
|
|
675
|
+
className: cn(
|
|
676
|
+
"group/context-menu-item",
|
|
677
|
+
menuItemClassName,
|
|
678
|
+
"data-inset:pl-7",
|
|
679
|
+
className
|
|
680
|
+
),
|
|
681
|
+
...props
|
|
682
|
+
}
|
|
683
|
+
);
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
// src/components/date-picker/date-picker.tsx
|
|
687
|
+
import * as React5 from "react";
|
|
593
688
|
import { createPortal } from "react-dom";
|
|
594
|
-
import { Fragment as Fragment2, jsx as
|
|
689
|
+
import { Fragment as Fragment2, jsx as jsx10, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
595
690
|
var defaultLabels = {
|
|
596
691
|
placeholder: "Year / Month / Day",
|
|
597
692
|
previousMonth: "Previous month",
|
|
@@ -679,7 +774,7 @@ function subscribeScrollableAncestors(trigger, onScrollLike) {
|
|
|
679
774
|
}
|
|
680
775
|
return () => cleanups.forEach((dispose) => dispose());
|
|
681
776
|
}
|
|
682
|
-
var DatePicker =
|
|
777
|
+
var DatePicker = React5.forwardRef(
|
|
683
778
|
({
|
|
684
779
|
className,
|
|
685
780
|
value,
|
|
@@ -696,20 +791,20 @@ var DatePicker = React4.forwardRef(
|
|
|
696
791
|
...labels,
|
|
697
792
|
weekdayLabels: labels?.weekdayLabels ?? defaultLabels.weekdayLabels
|
|
698
793
|
};
|
|
699
|
-
const triggerRef =
|
|
700
|
-
const popoverRef =
|
|
701
|
-
const selectedDate =
|
|
702
|
-
const [isOpen, setIsOpen] =
|
|
703
|
-
const [visibleMonth, setVisibleMonth] =
|
|
794
|
+
const triggerRef = React5.useRef(null);
|
|
795
|
+
const popoverRef = React5.useRef(null);
|
|
796
|
+
const selectedDate = React5.useMemo(() => parseDateValue(value), [value]);
|
|
797
|
+
const [isOpen, setIsOpen] = React5.useState(false);
|
|
798
|
+
const [visibleMonth, setVisibleMonth] = React5.useState(
|
|
704
799
|
() => selectedDate ?? /* @__PURE__ */ new Date()
|
|
705
800
|
);
|
|
706
|
-
const [popoverPosition, setPopoverPosition] =
|
|
707
|
-
|
|
801
|
+
const [popoverPosition, setPopoverPosition] = React5.useState(null);
|
|
802
|
+
React5.useEffect(() => {
|
|
708
803
|
if (selectedDate) {
|
|
709
804
|
setVisibleMonth(selectedDate);
|
|
710
805
|
}
|
|
711
806
|
}, [selectedDate]);
|
|
712
|
-
const openPopover =
|
|
807
|
+
const openPopover = React5.useCallback(() => {
|
|
713
808
|
const trigger = triggerRef.current;
|
|
714
809
|
if (!trigger) {
|
|
715
810
|
return;
|
|
@@ -719,7 +814,7 @@ var DatePicker = React4.forwardRef(
|
|
|
719
814
|
);
|
|
720
815
|
setIsOpen(true);
|
|
721
816
|
}, []);
|
|
722
|
-
|
|
817
|
+
React5.useLayoutEffect(() => {
|
|
723
818
|
if (!isOpen) {
|
|
724
819
|
return;
|
|
725
820
|
}
|
|
@@ -736,7 +831,7 @@ var DatePicker = React4.forwardRef(
|
|
|
736
831
|
const rafId = window.requestAnimationFrame(sync);
|
|
737
832
|
return () => window.cancelAnimationFrame(rafId);
|
|
738
833
|
}, [isOpen]);
|
|
739
|
-
|
|
834
|
+
React5.useEffect(() => {
|
|
740
835
|
if (!isOpen) {
|
|
741
836
|
return void 0;
|
|
742
837
|
}
|
|
@@ -783,8 +878,8 @@ var DatePicker = React4.forwardRef(
|
|
|
783
878
|
unsubAncestors();
|
|
784
879
|
};
|
|
785
880
|
}, [isOpen]);
|
|
786
|
-
const today =
|
|
787
|
-
const monthGrid =
|
|
881
|
+
const today = React5.useMemo(() => /* @__PURE__ */ new Date(), []);
|
|
882
|
+
const monthGrid = React5.useMemo(
|
|
788
883
|
() => buildMonthGrid(visibleMonth),
|
|
789
884
|
[visibleMonth]
|
|
790
885
|
);
|
|
@@ -795,7 +890,7 @@ var DatePicker = React4.forwardRef(
|
|
|
795
890
|
triggerRef.current?.focus();
|
|
796
891
|
};
|
|
797
892
|
return /* @__PURE__ */ jsxs3(Fragment2, { children: [
|
|
798
|
-
/* @__PURE__ */
|
|
893
|
+
/* @__PURE__ */ jsx10(
|
|
799
894
|
"button",
|
|
800
895
|
{
|
|
801
896
|
ref: (node) => {
|
|
@@ -826,7 +921,7 @@ var DatePicker = React4.forwardRef(
|
|
|
826
921
|
}
|
|
827
922
|
},
|
|
828
923
|
...props,
|
|
829
|
-
children: /* @__PURE__ */
|
|
924
|
+
children: /* @__PURE__ */ jsx10("span", { className: "min-w-0 truncate", children: displayValue })
|
|
830
925
|
}
|
|
831
926
|
),
|
|
832
927
|
isOpen && popoverPosition ? createPortal(
|
|
@@ -844,9 +939,9 @@ var DatePicker = React4.forwardRef(
|
|
|
844
939
|
},
|
|
845
940
|
children: [
|
|
846
941
|
/* @__PURE__ */ jsxs3("div", { className: "mb-3 flex items-center justify-between gap-2", children: [
|
|
847
|
-
/* @__PURE__ */
|
|
942
|
+
/* @__PURE__ */ jsx10("div", { className: "text-[13px] font-semibold text-foreground", children: formatMonthLabel(visibleMonth) }),
|
|
848
943
|
/* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-1", children: [
|
|
849
|
-
/* @__PURE__ */
|
|
944
|
+
/* @__PURE__ */ jsx10(
|
|
850
945
|
"button",
|
|
851
946
|
{
|
|
852
947
|
"aria-label": resolvedLabels.previousMonth,
|
|
@@ -859,10 +954,10 @@ var DatePicker = React4.forwardRef(
|
|
|
859
954
|
1
|
|
860
955
|
)
|
|
861
956
|
),
|
|
862
|
-
children: /* @__PURE__ */
|
|
957
|
+
children: /* @__PURE__ */ jsx10(ArrowLeftIcon, { size: 16 })
|
|
863
958
|
}
|
|
864
959
|
),
|
|
865
|
-
/* @__PURE__ */
|
|
960
|
+
/* @__PURE__ */ jsx10(
|
|
866
961
|
"button",
|
|
867
962
|
{
|
|
868
963
|
"aria-label": resolvedLabels.nextMonth,
|
|
@@ -875,13 +970,13 @@ var DatePicker = React4.forwardRef(
|
|
|
875
970
|
1
|
|
876
971
|
)
|
|
877
972
|
),
|
|
878
|
-
children: /* @__PURE__ */
|
|
973
|
+
children: /* @__PURE__ */ jsx10(ArrowRightIcon, { size: 16 })
|
|
879
974
|
}
|
|
880
975
|
)
|
|
881
976
|
] })
|
|
882
977
|
] }),
|
|
883
|
-
/* @__PURE__ */
|
|
884
|
-
/* @__PURE__ */
|
|
978
|
+
/* @__PURE__ */ jsx10("div", { className: "grid grid-cols-7 gap-1 text-center text-[11px] font-semibold text-muted-foreground", children: resolvedLabels.weekdayLabels.map((day) => /* @__PURE__ */ jsx10("div", { className: "py-1", children: day }, day)) }),
|
|
979
|
+
/* @__PURE__ */ jsx10(
|
|
885
980
|
"div",
|
|
886
981
|
{
|
|
887
982
|
className: "mt-1 grid grid-cols-7 justify-items-center gap-1",
|
|
@@ -890,7 +985,7 @@ var DatePicker = React4.forwardRef(
|
|
|
890
985
|
const isSelected = isSameDate(date, selectedDate);
|
|
891
986
|
const isToday = isSameDate(date, today);
|
|
892
987
|
const inCurrentMonth = date.getMonth() === visibleMonth.getMonth();
|
|
893
|
-
return /* @__PURE__ */
|
|
988
|
+
return /* @__PURE__ */ jsx10(
|
|
894
989
|
"button",
|
|
895
990
|
{
|
|
896
991
|
"aria-pressed": isSelected,
|
|
@@ -911,7 +1006,7 @@ var DatePicker = React4.forwardRef(
|
|
|
911
1006
|
}
|
|
912
1007
|
),
|
|
913
1008
|
/* @__PURE__ */ jsxs3("div", { className: "mt-3 flex items-center justify-between gap-2 border-t border-border/70 pt-3", children: [
|
|
914
|
-
/* @__PURE__ */
|
|
1009
|
+
/* @__PURE__ */ jsx10(
|
|
915
1010
|
"button",
|
|
916
1011
|
{
|
|
917
1012
|
className: "inline-flex min-h-8 items-center justify-center rounded-sm px-3 text-[13px] font-medium text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",
|
|
@@ -924,7 +1019,7 @@ var DatePicker = React4.forwardRef(
|
|
|
924
1019
|
children: resolvedLabels.clear
|
|
925
1020
|
}
|
|
926
1021
|
),
|
|
927
|
-
/* @__PURE__ */
|
|
1022
|
+
/* @__PURE__ */ jsx10(
|
|
928
1023
|
"button",
|
|
929
1024
|
{
|
|
930
1025
|
className: "inline-flex min-h-8 items-center justify-center rounded-sm bg-primary px-3 text-[13px] font-medium text-primary-foreground transition-opacity hover:opacity-90",
|
|
@@ -946,33 +1041,33 @@ DatePicker.displayName = "DatePicker";
|
|
|
946
1041
|
|
|
947
1042
|
// src/components/drawer/drawer.tsx
|
|
948
1043
|
import { Drawer as DrawerPrimitive } from "vaul";
|
|
949
|
-
import { jsx as
|
|
1044
|
+
import { jsx as jsx11, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
950
1045
|
function Drawer({
|
|
951
1046
|
...props
|
|
952
1047
|
}) {
|
|
953
|
-
return /* @__PURE__ */
|
|
1048
|
+
return /* @__PURE__ */ jsx11(DrawerPrimitive.Root, { "data-slot": "drawer", ...props });
|
|
954
1049
|
}
|
|
955
1050
|
function DrawerTrigger({
|
|
956
1051
|
...props
|
|
957
1052
|
}) {
|
|
958
|
-
return /* @__PURE__ */
|
|
1053
|
+
return /* @__PURE__ */ jsx11(DrawerPrimitive.Trigger, { "data-slot": "drawer-trigger", ...props });
|
|
959
1054
|
}
|
|
960
1055
|
function DrawerPortal({
|
|
961
1056
|
...props
|
|
962
1057
|
}) {
|
|
963
|
-
return /* @__PURE__ */
|
|
1058
|
+
return /* @__PURE__ */ jsx11(DrawerPrimitive.Portal, { "data-slot": "drawer-portal", ...props });
|
|
964
1059
|
}
|
|
965
1060
|
function DrawerClose({
|
|
966
1061
|
...props
|
|
967
1062
|
}) {
|
|
968
|
-
return /* @__PURE__ */
|
|
1063
|
+
return /* @__PURE__ */ jsx11(DrawerPrimitive.Close, { "data-slot": "drawer-close", ...props });
|
|
969
1064
|
}
|
|
970
1065
|
function DrawerOverlay({
|
|
971
1066
|
className,
|
|
972
1067
|
style,
|
|
973
1068
|
...props
|
|
974
1069
|
}) {
|
|
975
|
-
return /* @__PURE__ */
|
|
1070
|
+
return /* @__PURE__ */ jsx11(
|
|
976
1071
|
DrawerPrimitive.Overlay,
|
|
977
1072
|
{
|
|
978
1073
|
"data-slot": "drawer-overlay",
|
|
@@ -994,7 +1089,7 @@ function DrawerContent({
|
|
|
994
1089
|
...props
|
|
995
1090
|
}) {
|
|
996
1091
|
return /* @__PURE__ */ jsxs4(DrawerPortal, { "data-slot": "drawer-portal", container: portalContainer, children: [
|
|
997
|
-
showOverlay ? /* @__PURE__ */
|
|
1092
|
+
showOverlay ? /* @__PURE__ */ jsx11(DrawerOverlay, {}) : null,
|
|
998
1093
|
/* @__PURE__ */ jsxs4(
|
|
999
1094
|
DrawerPrimitive.Content,
|
|
1000
1095
|
{
|
|
@@ -1010,7 +1105,7 @@ function DrawerContent({
|
|
|
1010
1105
|
style: { zIndex: "var(--z-dialog)", ...style },
|
|
1011
1106
|
...props,
|
|
1012
1107
|
children: [
|
|
1013
|
-
/* @__PURE__ */
|
|
1108
|
+
/* @__PURE__ */ jsx11("div", { className: "mx-auto mt-4 hidden h-1 w-[100px] shrink-0 rounded-full bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
|
|
1014
1109
|
children
|
|
1015
1110
|
]
|
|
1016
1111
|
}
|
|
@@ -1018,7 +1113,7 @@ function DrawerContent({
|
|
|
1018
1113
|
] });
|
|
1019
1114
|
}
|
|
1020
1115
|
function DrawerHeader({ className, ...props }) {
|
|
1021
|
-
return /* @__PURE__ */
|
|
1116
|
+
return /* @__PURE__ */ jsx11(
|
|
1022
1117
|
"div",
|
|
1023
1118
|
{
|
|
1024
1119
|
"data-slot": "drawer-header",
|
|
@@ -1031,7 +1126,7 @@ function DrawerHeader({ className, ...props }) {
|
|
|
1031
1126
|
);
|
|
1032
1127
|
}
|
|
1033
1128
|
function DrawerFooter({ className, ...props }) {
|
|
1034
|
-
return /* @__PURE__ */
|
|
1129
|
+
return /* @__PURE__ */ jsx11(
|
|
1035
1130
|
"div",
|
|
1036
1131
|
{
|
|
1037
1132
|
"data-slot": "drawer-footer",
|
|
@@ -1044,7 +1139,7 @@ function DrawerTitle({
|
|
|
1044
1139
|
className,
|
|
1045
1140
|
...props
|
|
1046
1141
|
}) {
|
|
1047
|
-
return /* @__PURE__ */
|
|
1142
|
+
return /* @__PURE__ */ jsx11(
|
|
1048
1143
|
DrawerPrimitive.Title,
|
|
1049
1144
|
{
|
|
1050
1145
|
"data-slot": "drawer-title",
|
|
@@ -1060,7 +1155,7 @@ function DrawerDescription({
|
|
|
1060
1155
|
className,
|
|
1061
1156
|
...props
|
|
1062
1157
|
}) {
|
|
1063
|
-
return /* @__PURE__ */
|
|
1158
|
+
return /* @__PURE__ */ jsx11(
|
|
1064
1159
|
DrawerPrimitive.Description,
|
|
1065
1160
|
{
|
|
1066
1161
|
"data-slot": "drawer-description",
|
|
@@ -1072,53 +1167,21 @@ function DrawerDescription({
|
|
|
1072
1167
|
|
|
1073
1168
|
// src/components/dropdown-menu/dropdown-menu.tsx
|
|
1074
1169
|
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
1075
|
-
|
|
1076
|
-
// src/components/menu-surface/menu-surface.tsx
|
|
1077
|
-
import * as React5 from "react";
|
|
1078
|
-
import { Slot as Slot4 } from "radix-ui";
|
|
1079
|
-
import { jsx as jsx10 } from "react/jsx-runtime";
|
|
1080
|
-
var menuSurfaceClassName = "t-dropdown flex flex-col gap-0.5 rounded-[8px] border border-[var(--border-1)] bg-[var(--background-fronted)] p-1 text-[13px] text-[var(--text-primary)] shadow-panel outline-none";
|
|
1081
|
-
var menuItemClassName = "relative flex cursor-pointer items-center gap-1.5 rounded-sm px-2 py-1 text-[13px] text-[var(--text-primary)] outline-hidden transition-colors duration-200 select-none hover:bg-[var(--transparency-hover)] hover:text-[var(--text-primary)] focus:bg-[var(--transparency-hover)] focus:text-[var(--text-primary)] data-[highlighted]:bg-[var(--transparency-hover)] data-[highlighted]:text-[var(--text-primary)] data-disabled:pointer-events-none data-disabled:text-[var(--text-disabled)] [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:min-w-0 *:[span]:last:flex-1 *:[span]:last:items-center *:[span]:last:gap-2";
|
|
1082
|
-
var menuItemWithIndicatorClassName = `${menuItemClassName} pr-8`;
|
|
1083
|
-
var menuItemIndicatorClassName = "pointer-events-none absolute right-2 flex size-4 items-center justify-center text-[var(--tutti-purple)]";
|
|
1084
|
-
var MenuSurface = React5.forwardRef(
|
|
1085
|
-
({
|
|
1086
|
-
asChild = false,
|
|
1087
|
-
className,
|
|
1088
|
-
"data-state": dataState,
|
|
1089
|
-
state = "open",
|
|
1090
|
-
...props
|
|
1091
|
-
}, ref) => {
|
|
1092
|
-
const Comp = asChild ? Slot4.Root : "div";
|
|
1093
|
-
return /* @__PURE__ */ jsx10(
|
|
1094
|
-
Comp,
|
|
1095
|
-
{
|
|
1096
|
-
...props,
|
|
1097
|
-
ref,
|
|
1098
|
-
className: cn(menuSurfaceClassName, className),
|
|
1099
|
-
"data-state": dataState ?? state
|
|
1100
|
-
}
|
|
1101
|
-
);
|
|
1102
|
-
}
|
|
1103
|
-
);
|
|
1104
|
-
MenuSurface.displayName = "MenuSurface";
|
|
1105
|
-
|
|
1106
|
-
// src/components/dropdown-menu/dropdown-menu.tsx
|
|
1107
|
-
import { jsx as jsx11, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
1170
|
+
import { jsx as jsx12, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
1108
1171
|
function DropdownMenu({
|
|
1109
1172
|
...props
|
|
1110
1173
|
}) {
|
|
1111
|
-
return /* @__PURE__ */
|
|
1174
|
+
return /* @__PURE__ */ jsx12(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
|
|
1112
1175
|
}
|
|
1113
1176
|
function DropdownMenuPortal({
|
|
1114
1177
|
...props
|
|
1115
1178
|
}) {
|
|
1116
|
-
return /* @__PURE__ */
|
|
1179
|
+
return /* @__PURE__ */ jsx12(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props });
|
|
1117
1180
|
}
|
|
1118
1181
|
function DropdownMenuTrigger({
|
|
1119
1182
|
...props
|
|
1120
1183
|
}) {
|
|
1121
|
-
return /* @__PURE__ */
|
|
1184
|
+
return /* @__PURE__ */ jsx12(
|
|
1122
1185
|
DropdownMenuPrimitive.Trigger,
|
|
1123
1186
|
{
|
|
1124
1187
|
"data-slot": "dropdown-menu-trigger",
|
|
@@ -1134,7 +1197,7 @@ function DropdownMenuContent({
|
|
|
1134
1197
|
style,
|
|
1135
1198
|
...props
|
|
1136
1199
|
}) {
|
|
1137
|
-
return /* @__PURE__ */
|
|
1200
|
+
return /* @__PURE__ */ jsx12(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx12(
|
|
1138
1201
|
DropdownMenuPrimitive.Content,
|
|
1139
1202
|
{
|
|
1140
1203
|
asChild: true,
|
|
@@ -1142,7 +1205,7 @@ function DropdownMenuContent({
|
|
|
1142
1205
|
align,
|
|
1143
1206
|
sideOffset,
|
|
1144
1207
|
...props,
|
|
1145
|
-
children: /* @__PURE__ */
|
|
1208
|
+
children: /* @__PURE__ */ jsx12(
|
|
1146
1209
|
MenuSurface,
|
|
1147
1210
|
{
|
|
1148
1211
|
"data-slot": "dropdown-menu-content",
|
|
@@ -1161,7 +1224,7 @@ function DropdownMenuGroup({
|
|
|
1161
1224
|
className,
|
|
1162
1225
|
...props
|
|
1163
1226
|
}) {
|
|
1164
|
-
return /* @__PURE__ */
|
|
1227
|
+
return /* @__PURE__ */ jsx12(
|
|
1165
1228
|
DropdownMenuPrimitive.Group,
|
|
1166
1229
|
{
|
|
1167
1230
|
"data-slot": "dropdown-menu-group",
|
|
@@ -1176,7 +1239,7 @@ function DropdownMenuItem({
|
|
|
1176
1239
|
variant = "default",
|
|
1177
1240
|
...props
|
|
1178
1241
|
}) {
|
|
1179
|
-
return /* @__PURE__ */
|
|
1242
|
+
return /* @__PURE__ */ jsx12(
|
|
1180
1243
|
DropdownMenuPrimitive.Item,
|
|
1181
1244
|
{
|
|
1182
1245
|
"data-inset": inset,
|
|
@@ -1212,12 +1275,12 @@ function DropdownMenuCheckboxItem({
|
|
|
1212
1275
|
),
|
|
1213
1276
|
...props,
|
|
1214
1277
|
children: [
|
|
1215
|
-
/* @__PURE__ */
|
|
1278
|
+
/* @__PURE__ */ jsx12(
|
|
1216
1279
|
"span",
|
|
1217
1280
|
{
|
|
1218
1281
|
className: menuItemIndicatorClassName,
|
|
1219
1282
|
"data-slot": "dropdown-menu-checkbox-item-indicator",
|
|
1220
|
-
children: /* @__PURE__ */
|
|
1283
|
+
children: /* @__PURE__ */ jsx12(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx12(CheckIcon, { className: "text-[var(--tutti-purple)]" }) })
|
|
1221
1284
|
}
|
|
1222
1285
|
),
|
|
1223
1286
|
children
|
|
@@ -1229,7 +1292,7 @@ function DropdownMenuRadioGroup({
|
|
|
1229
1292
|
className,
|
|
1230
1293
|
...props
|
|
1231
1294
|
}) {
|
|
1232
|
-
return /* @__PURE__ */
|
|
1295
|
+
return /* @__PURE__ */ jsx12(
|
|
1233
1296
|
DropdownMenuPrimitive.RadioGroup,
|
|
1234
1297
|
{
|
|
1235
1298
|
"data-slot": "dropdown-menu-radio-group",
|
|
@@ -1256,12 +1319,12 @@ function DropdownMenuRadioItem({
|
|
|
1256
1319
|
),
|
|
1257
1320
|
...props,
|
|
1258
1321
|
children: [
|
|
1259
|
-
/* @__PURE__ */
|
|
1322
|
+
/* @__PURE__ */ jsx12(
|
|
1260
1323
|
"span",
|
|
1261
1324
|
{
|
|
1262
1325
|
className: menuItemIndicatorClassName,
|
|
1263
1326
|
"data-slot": "dropdown-menu-radio-item-indicator",
|
|
1264
|
-
children: /* @__PURE__ */
|
|
1327
|
+
children: /* @__PURE__ */ jsx12(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx12(CheckIcon, { className: "text-[var(--tutti-purple)]" }) })
|
|
1265
1328
|
}
|
|
1266
1329
|
),
|
|
1267
1330
|
children
|
|
@@ -1274,7 +1337,7 @@ function DropdownMenuLabel({
|
|
|
1274
1337
|
inset,
|
|
1275
1338
|
...props
|
|
1276
1339
|
}) {
|
|
1277
|
-
return /* @__PURE__ */
|
|
1340
|
+
return /* @__PURE__ */ jsx12(
|
|
1278
1341
|
DropdownMenuPrimitive.Label,
|
|
1279
1342
|
{
|
|
1280
1343
|
"data-inset": inset,
|
|
@@ -1291,7 +1354,7 @@ function DropdownMenuSeparator({
|
|
|
1291
1354
|
className,
|
|
1292
1355
|
...props
|
|
1293
1356
|
}) {
|
|
1294
|
-
return /* @__PURE__ */
|
|
1357
|
+
return /* @__PURE__ */ jsx12(
|
|
1295
1358
|
DropdownMenuPrimitive.Separator,
|
|
1296
1359
|
{
|
|
1297
1360
|
"data-slot": "dropdown-menu-separator",
|
|
@@ -1304,7 +1367,7 @@ function DropdownMenuShortcut({
|
|
|
1304
1367
|
className,
|
|
1305
1368
|
...props
|
|
1306
1369
|
}) {
|
|
1307
|
-
return /* @__PURE__ */
|
|
1370
|
+
return /* @__PURE__ */ jsx12(
|
|
1308
1371
|
"span",
|
|
1309
1372
|
{
|
|
1310
1373
|
"data-slot": "dropdown-menu-shortcut",
|
|
@@ -1319,7 +1382,7 @@ function DropdownMenuShortcut({
|
|
|
1319
1382
|
function DropdownMenuSub({
|
|
1320
1383
|
...props
|
|
1321
1384
|
}) {
|
|
1322
|
-
return /* @__PURE__ */
|
|
1385
|
+
return /* @__PURE__ */ jsx12(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
|
|
1323
1386
|
}
|
|
1324
1387
|
function DropdownMenuSubTrigger({
|
|
1325
1388
|
className,
|
|
@@ -1340,7 +1403,7 @@ function DropdownMenuSubTrigger({
|
|
|
1340
1403
|
...props,
|
|
1341
1404
|
children: [
|
|
1342
1405
|
children,
|
|
1343
|
-
/* @__PURE__ */
|
|
1406
|
+
/* @__PURE__ */ jsx12(ArrowRightIcon, { className: "ml-auto text-[var(--text-tertiary)]" })
|
|
1344
1407
|
]
|
|
1345
1408
|
}
|
|
1346
1409
|
);
|
|
@@ -1351,13 +1414,13 @@ function DropdownMenuSubContent({
|
|
|
1351
1414
|
style,
|
|
1352
1415
|
...props
|
|
1353
1416
|
}) {
|
|
1354
|
-
return /* @__PURE__ */
|
|
1417
|
+
return /* @__PURE__ */ jsx12(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx12(
|
|
1355
1418
|
DropdownMenuPrimitive.SubContent,
|
|
1356
1419
|
{
|
|
1357
1420
|
asChild: true,
|
|
1358
1421
|
"data-slot": "dropdown-menu-sub-content",
|
|
1359
1422
|
...props,
|
|
1360
|
-
children: /* @__PURE__ */
|
|
1423
|
+
children: /* @__PURE__ */ jsx12(
|
|
1361
1424
|
MenuSurface,
|
|
1362
1425
|
{
|
|
1363
1426
|
"data-slot": "dropdown-menu-sub-content",
|
|
@@ -1374,7 +1437,7 @@ function DropdownMenuSubContent({
|
|
|
1374
1437
|
}
|
|
1375
1438
|
|
|
1376
1439
|
// src/components/input/input.tsx
|
|
1377
|
-
import { jsx as
|
|
1440
|
+
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
1378
1441
|
var inputVariantClassNames = {
|
|
1379
1442
|
default: "h-8 rounded-md px-3 py-0 text-[13px] leading-[1.3]",
|
|
1380
1443
|
lg: "h-12 rounded-[8px] px-4 py-3 text-[15px] leading-[1.3]",
|
|
@@ -1390,7 +1453,7 @@ function Input({
|
|
|
1390
1453
|
...props
|
|
1391
1454
|
}) {
|
|
1392
1455
|
const resolvedVariant = variant ?? (size === "sm" ? "sm" : "default");
|
|
1393
|
-
return /* @__PURE__ */
|
|
1456
|
+
return /* @__PURE__ */ jsx13(
|
|
1394
1457
|
"input",
|
|
1395
1458
|
{
|
|
1396
1459
|
type,
|
|
@@ -1413,12 +1476,12 @@ import * as React6 from "react";
|
|
|
1413
1476
|
|
|
1414
1477
|
// src/components/tooltip/tooltip.tsx
|
|
1415
1478
|
import { Tooltip as TooltipPrimitive } from "radix-ui";
|
|
1416
|
-
import { jsx as
|
|
1479
|
+
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
1417
1480
|
function TooltipProvider({
|
|
1418
1481
|
delayDuration = 0,
|
|
1419
1482
|
...props
|
|
1420
1483
|
}) {
|
|
1421
|
-
return /* @__PURE__ */
|
|
1484
|
+
return /* @__PURE__ */ jsx14(
|
|
1422
1485
|
TooltipPrimitive.Provider,
|
|
1423
1486
|
{
|
|
1424
1487
|
"data-slot": "tooltip-provider",
|
|
@@ -1430,17 +1493,17 @@ function TooltipProvider({
|
|
|
1430
1493
|
function Tooltip({
|
|
1431
1494
|
...props
|
|
1432
1495
|
}) {
|
|
1433
|
-
return /* @__PURE__ */
|
|
1496
|
+
return /* @__PURE__ */ jsx14(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props });
|
|
1434
1497
|
}
|
|
1435
1498
|
function TooltipTrigger({
|
|
1436
1499
|
...props
|
|
1437
1500
|
}) {
|
|
1438
|
-
return /* @__PURE__ */
|
|
1501
|
+
return /* @__PURE__ */ jsx14(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
1439
1502
|
}
|
|
1440
1503
|
function TooltipPortal({
|
|
1441
1504
|
...props
|
|
1442
1505
|
}) {
|
|
1443
|
-
return /* @__PURE__ */
|
|
1506
|
+
return /* @__PURE__ */ jsx14(TooltipPrimitive.Portal, { "data-slot": "tooltip-portal", ...props });
|
|
1444
1507
|
}
|
|
1445
1508
|
function TooltipContent({
|
|
1446
1509
|
className,
|
|
@@ -1449,7 +1512,7 @@ function TooltipContent({
|
|
|
1449
1512
|
style,
|
|
1450
1513
|
...props
|
|
1451
1514
|
}) {
|
|
1452
|
-
return /* @__PURE__ */
|
|
1515
|
+
return /* @__PURE__ */ jsx14(TooltipPortal, { children: /* @__PURE__ */ jsx14(
|
|
1453
1516
|
TooltipPrimitive.Content,
|
|
1454
1517
|
{
|
|
1455
1518
|
"data-slot": "tooltip-content",
|
|
@@ -1466,7 +1529,7 @@ function TooltipContent({
|
|
|
1466
1529
|
}
|
|
1467
1530
|
|
|
1468
1531
|
// src/components/mention-pill/truncating-pill-label.tsx
|
|
1469
|
-
import { jsx as
|
|
1532
|
+
import { jsx as jsx15, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1470
1533
|
function useTextOverflow(watch) {
|
|
1471
1534
|
const ref = React6.useRef(null);
|
|
1472
1535
|
const [overflowing, setOverflowing] = React6.useState(false);
|
|
@@ -1491,7 +1554,7 @@ function TruncatingPillLabel({
|
|
|
1491
1554
|
children
|
|
1492
1555
|
}) {
|
|
1493
1556
|
const { ref: labelRef, overflowing } = useTextOverflow(tooltip);
|
|
1494
|
-
const label = /* @__PURE__ */
|
|
1557
|
+
const label = /* @__PURE__ */ jsx15(
|
|
1495
1558
|
"span",
|
|
1496
1559
|
{
|
|
1497
1560
|
ref: labelRef,
|
|
@@ -1505,14 +1568,14 @@ function TruncatingPillLabel({
|
|
|
1505
1568
|
if (!tooltip) {
|
|
1506
1569
|
return label;
|
|
1507
1570
|
}
|
|
1508
|
-
return /* @__PURE__ */
|
|
1509
|
-
/* @__PURE__ */
|
|
1510
|
-
overflowing ? /* @__PURE__ */
|
|
1571
|
+
return /* @__PURE__ */ jsx15(TooltipProvider, { delayDuration: 200, children: /* @__PURE__ */ jsxs6(Tooltip, { children: [
|
|
1572
|
+
/* @__PURE__ */ jsx15(TooltipTrigger, { asChild: true, children: label }),
|
|
1573
|
+
overflowing ? /* @__PURE__ */ jsx15(TooltipContent, { className: "max-w-[min(420px,calc(100vw-32px))] whitespace-normal text-left [overflow-wrap:anywhere]", children: tooltip }) : null
|
|
1511
1574
|
] }) });
|
|
1512
1575
|
}
|
|
1513
1576
|
|
|
1514
1577
|
// src/components/mention-pill/mention-pill.tsx
|
|
1515
|
-
import { jsx as
|
|
1578
|
+
import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
1516
1579
|
var mentionPillTokenByKind = {
|
|
1517
1580
|
app: "var(--rich-text-folder)",
|
|
1518
1581
|
issue: "var(--rich-text-mention-issue)",
|
|
@@ -1573,7 +1636,7 @@ function MentionPill({
|
|
|
1573
1636
|
iconShellClassName
|
|
1574
1637
|
),
|
|
1575
1638
|
children: [
|
|
1576
|
-
normalizedIconUrl ? /* @__PURE__ */
|
|
1639
|
+
normalizedIconUrl ? /* @__PURE__ */ jsx16(
|
|
1577
1640
|
"img",
|
|
1578
1641
|
{
|
|
1579
1642
|
src: normalizedIconUrl,
|
|
@@ -1586,7 +1649,7 @@ function MentionPill({
|
|
|
1586
1649
|
loading: "lazy",
|
|
1587
1650
|
draggable: false
|
|
1588
1651
|
}
|
|
1589
|
-
) : /* @__PURE__ */
|
|
1652
|
+
) : /* @__PURE__ */ jsx16(
|
|
1590
1653
|
Icon,
|
|
1591
1654
|
{
|
|
1592
1655
|
className: cn(
|
|
@@ -1596,7 +1659,7 @@ function MentionPill({
|
|
|
1596
1659
|
)
|
|
1597
1660
|
}
|
|
1598
1661
|
),
|
|
1599
|
-
removable ? /* @__PURE__ */
|
|
1662
|
+
removable ? /* @__PURE__ */ jsx16(
|
|
1600
1663
|
"button",
|
|
1601
1664
|
{
|
|
1602
1665
|
"aria-label": removeButtonProps?.["aria-label"],
|
|
@@ -1606,14 +1669,14 @@ function MentionPill({
|
|
|
1606
1669
|
"absolute top-1/2 left-1/2 inline-flex size-5 -translate-x-1/2 -translate-y-1/2 items-center justify-center rounded-sm text-[var(--text-secondary)] opacity-0 transition-opacity group-hover:opacity-100 hover:bg-transparency-block hover:text-[var(--text-primary)] focus-visible:opacity-100",
|
|
1607
1670
|
removeButtonProps?.className
|
|
1608
1671
|
),
|
|
1609
|
-
children: /* @__PURE__ */
|
|
1672
|
+
children: /* @__PURE__ */ jsx16(CloseIcon, { className: "size-3.5" })
|
|
1610
1673
|
}
|
|
1611
1674
|
) : null
|
|
1612
1675
|
]
|
|
1613
1676
|
}
|
|
1614
1677
|
),
|
|
1615
1678
|
/* @__PURE__ */ jsxs7(TruncatingPillLabel, { tooltip: tooltipText, children: [
|
|
1616
|
-
/* @__PURE__ */
|
|
1679
|
+
/* @__PURE__ */ jsx16("span", { children: label }),
|
|
1617
1680
|
summary ? /* @__PURE__ */ jsxs7("span", { className: "text-current", children: [
|
|
1618
1681
|
" ",
|
|
1619
1682
|
summary
|
|
@@ -1626,26 +1689,26 @@ function MentionPill({
|
|
|
1626
1689
|
|
|
1627
1690
|
// src/components/popover/popover.tsx
|
|
1628
1691
|
import { Popover as PopoverPrimitive } from "radix-ui";
|
|
1629
|
-
import { jsx as
|
|
1692
|
+
import { jsx as jsx17 } from "react/jsx-runtime";
|
|
1630
1693
|
function Popover({
|
|
1631
1694
|
...props
|
|
1632
1695
|
}) {
|
|
1633
|
-
return /* @__PURE__ */
|
|
1696
|
+
return /* @__PURE__ */ jsx17(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
|
|
1634
1697
|
}
|
|
1635
1698
|
function PopoverTrigger({
|
|
1636
1699
|
...props
|
|
1637
1700
|
}) {
|
|
1638
|
-
return /* @__PURE__ */
|
|
1701
|
+
return /* @__PURE__ */ jsx17(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
1639
1702
|
}
|
|
1640
1703
|
function PopoverPortal({
|
|
1641
1704
|
...props
|
|
1642
1705
|
}) {
|
|
1643
|
-
return /* @__PURE__ */
|
|
1706
|
+
return /* @__PURE__ */ jsx17(PopoverPrimitive.Portal, { "data-slot": "popover-portal", ...props });
|
|
1644
1707
|
}
|
|
1645
1708
|
function PopoverClose({
|
|
1646
1709
|
...props
|
|
1647
1710
|
}) {
|
|
1648
|
-
return /* @__PURE__ */
|
|
1711
|
+
return /* @__PURE__ */ jsx17(PopoverPrimitive.Close, { "data-slot": "popover-close", ...props });
|
|
1649
1712
|
}
|
|
1650
1713
|
function PopoverContent({
|
|
1651
1714
|
className,
|
|
@@ -1653,7 +1716,7 @@ function PopoverContent({
|
|
|
1653
1716
|
sideOffset = 4,
|
|
1654
1717
|
...props
|
|
1655
1718
|
}) {
|
|
1656
|
-
return /* @__PURE__ */
|
|
1719
|
+
return /* @__PURE__ */ jsx17(PopoverPortal, { children: /* @__PURE__ */ jsx17(
|
|
1657
1720
|
PopoverPrimitive.Content,
|
|
1658
1721
|
{
|
|
1659
1722
|
"data-slot": "popover-content",
|
|
@@ -1671,18 +1734,18 @@ function PopoverContent({
|
|
|
1671
1734
|
function PopoverAnchor({
|
|
1672
1735
|
...props
|
|
1673
1736
|
}) {
|
|
1674
|
-
return /* @__PURE__ */
|
|
1737
|
+
return /* @__PURE__ */ jsx17(PopoverPrimitive.Anchor, { "data-slot": "popover-anchor", ...props });
|
|
1675
1738
|
}
|
|
1676
1739
|
|
|
1677
1740
|
// src/components/resizable/resizable.tsx
|
|
1678
1741
|
import * as ResizablePrimitive from "react-resizable-panels";
|
|
1679
|
-
import { jsx as
|
|
1742
|
+
import { jsx as jsx18 } from "react/jsx-runtime";
|
|
1680
1743
|
function ResizablePanelGroup({
|
|
1681
1744
|
className,
|
|
1682
1745
|
orientation = "horizontal",
|
|
1683
1746
|
...props
|
|
1684
1747
|
}) {
|
|
1685
|
-
return /* @__PURE__ */
|
|
1748
|
+
return /* @__PURE__ */ jsx18(
|
|
1686
1749
|
ResizablePrimitive.Group,
|
|
1687
1750
|
{
|
|
1688
1751
|
"data-orientation": orientation,
|
|
@@ -1697,14 +1760,14 @@ function ResizablePanelGroup({
|
|
|
1697
1760
|
);
|
|
1698
1761
|
}
|
|
1699
1762
|
function ResizablePanel(props) {
|
|
1700
|
-
return /* @__PURE__ */
|
|
1763
|
+
return /* @__PURE__ */ jsx18(ResizablePrimitive.Panel, { "data-slot": "resizable-panel", ...props });
|
|
1701
1764
|
}
|
|
1702
1765
|
function ResizableHandle({
|
|
1703
1766
|
className,
|
|
1704
1767
|
withHandle,
|
|
1705
1768
|
...props
|
|
1706
1769
|
}) {
|
|
1707
|
-
return /* @__PURE__ */
|
|
1770
|
+
return /* @__PURE__ */ jsx18(
|
|
1708
1771
|
ResizablePrimitive.Separator,
|
|
1709
1772
|
{
|
|
1710
1773
|
"data-slot": "resizable-handle",
|
|
@@ -1713,14 +1776,14 @@ function ResizableHandle({
|
|
|
1713
1776
|
className
|
|
1714
1777
|
),
|
|
1715
1778
|
...props,
|
|
1716
|
-
children: withHandle ? /* @__PURE__ */
|
|
1779
|
+
children: withHandle ? /* @__PURE__ */ jsx18("div", { className: "z-10 flex items-center justify-center rounded-full bg-border/85 opacity-0 transition-[background-color,opacity] group-hover:bg-border group-hover:opacity-100 group-focus-visible:bg-border group-focus-visible:opacity-100 group-aria-[orientation=horizontal]:h-[3px] group-aria-[orientation=horizontal]:w-10 group-aria-[orientation=vertical]:h-10 group-aria-[orientation=vertical]:w-[3px]" }) : null
|
|
1717
1780
|
}
|
|
1718
1781
|
);
|
|
1719
1782
|
}
|
|
1720
1783
|
|
|
1721
1784
|
// src/components/scroll-area/scroll-area.tsx
|
|
1722
1785
|
import * as React7 from "react";
|
|
1723
|
-
import { jsx as
|
|
1786
|
+
import { jsx as jsx19, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
1724
1787
|
var MIN_THUMB_SIZE_PX = 24;
|
|
1725
1788
|
function ScrollArea({
|
|
1726
1789
|
className,
|
|
@@ -1755,9 +1818,9 @@ function ScrollArea({
|
|
|
1755
1818
|
...props
|
|
1756
1819
|
};
|
|
1757
1820
|
if (scrollbarMode === "native") {
|
|
1758
|
-
return /* @__PURE__ */
|
|
1821
|
+
return /* @__PURE__ */ jsx19(NativeScrollArea, { ...implementationProps, children });
|
|
1759
1822
|
}
|
|
1760
|
-
return /* @__PURE__ */
|
|
1823
|
+
return /* @__PURE__ */ jsx19(CustomScrollArea, { ...implementationProps, children });
|
|
1761
1824
|
}
|
|
1762
1825
|
function NativeScrollArea({
|
|
1763
1826
|
className,
|
|
@@ -1776,7 +1839,7 @@ function NativeScrollArea({
|
|
|
1776
1839
|
...props
|
|
1777
1840
|
}) {
|
|
1778
1841
|
const alwaysVisible = type === "always" || type === "scroll" || hasAlwaysVisibleScrollbarSelector(className);
|
|
1779
|
-
return /* @__PURE__ */
|
|
1842
|
+
return /* @__PURE__ */ jsx19(
|
|
1780
1843
|
ScrollAreaFrame,
|
|
1781
1844
|
{
|
|
1782
1845
|
...props,
|
|
@@ -1855,7 +1918,7 @@ function CustomScrollArea({
|
|
|
1855
1918
|
viewportTestId,
|
|
1856
1919
|
children: [
|
|
1857
1920
|
children,
|
|
1858
|
-
/* @__PURE__ */
|
|
1921
|
+
/* @__PURE__ */ jsx19(
|
|
1859
1922
|
ScrollAreaScrollbar,
|
|
1860
1923
|
{
|
|
1861
1924
|
active: active || alwaysVisible,
|
|
@@ -1880,7 +1943,7 @@ function ScrollAreaFrame({
|
|
|
1880
1943
|
viewportTestId,
|
|
1881
1944
|
...props
|
|
1882
1945
|
}) {
|
|
1883
|
-
return /* @__PURE__ */
|
|
1946
|
+
return /* @__PURE__ */ jsx19(
|
|
1884
1947
|
"div",
|
|
1885
1948
|
{
|
|
1886
1949
|
"data-slot": "scroll-area",
|
|
@@ -1890,7 +1953,7 @@ function ScrollAreaFrame({
|
|
|
1890
1953
|
className
|
|
1891
1954
|
),
|
|
1892
1955
|
...props,
|
|
1893
|
-
children: /* @__PURE__ */
|
|
1956
|
+
children: /* @__PURE__ */ jsx19(
|
|
1894
1957
|
"div",
|
|
1895
1958
|
{
|
|
1896
1959
|
...viewportProps,
|
|
@@ -1901,7 +1964,7 @@ function ScrollAreaFrame({
|
|
|
1901
1964
|
"size-full overflow-auto rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",
|
|
1902
1965
|
viewportClassName
|
|
1903
1966
|
),
|
|
1904
|
-
children: /* @__PURE__ */
|
|
1967
|
+
children: /* @__PURE__ */ jsx19(
|
|
1905
1968
|
"div",
|
|
1906
1969
|
{
|
|
1907
1970
|
ref: contentRef,
|
|
@@ -2116,7 +2179,7 @@ function ScrollAreaScrollbar({
|
|
|
2116
2179
|
React7.useEffect(() => {
|
|
2117
2180
|
scheduleSync();
|
|
2118
2181
|
});
|
|
2119
|
-
return /* @__PURE__ */
|
|
2182
|
+
return /* @__PURE__ */ jsx19(
|
|
2120
2183
|
"div",
|
|
2121
2184
|
{
|
|
2122
2185
|
ref: trackRef,
|
|
@@ -2134,7 +2197,7 @@ function ScrollAreaScrollbar({
|
|
|
2134
2197
|
onPointerEnter: () => setTrackActive(true),
|
|
2135
2198
|
onPointerLeave: () => setTrackActive(false),
|
|
2136
2199
|
onPointerDown: handleTrackPointerDown,
|
|
2137
|
-
children: /* @__PURE__ */
|
|
2200
|
+
children: /* @__PURE__ */ jsx19(
|
|
2138
2201
|
"div",
|
|
2139
2202
|
{
|
|
2140
2203
|
ref: thumbRef,
|
|
@@ -2153,7 +2216,7 @@ function ScrollBar({
|
|
|
2153
2216
|
orientation = "vertical",
|
|
2154
2217
|
...props
|
|
2155
2218
|
}) {
|
|
2156
|
-
return /* @__PURE__ */
|
|
2219
|
+
return /* @__PURE__ */ jsx19(
|
|
2157
2220
|
"div",
|
|
2158
2221
|
{
|
|
2159
2222
|
"data-slot": "scroll-area-scrollbar",
|
|
@@ -2161,7 +2224,7 @@ function ScrollBar({
|
|
|
2161
2224
|
className: cn(scrollbarClassName(orientation), className),
|
|
2162
2225
|
style: scrollbarStyle({ active: false, orientation, scrollable: true }),
|
|
2163
2226
|
...props,
|
|
2164
|
-
children: /* @__PURE__ */
|
|
2227
|
+
children: /* @__PURE__ */ jsx19(
|
|
2165
2228
|
"div",
|
|
2166
2229
|
{
|
|
2167
2230
|
"data-slot": "scroll-area-thumb",
|
|
@@ -2282,17 +2345,17 @@ function clamp(value, min, max) {
|
|
|
2282
2345
|
|
|
2283
2346
|
// src/components/select/select.tsx
|
|
2284
2347
|
import { Select as SelectPrimitive } from "radix-ui";
|
|
2285
|
-
import { jsx as
|
|
2348
|
+
import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
2286
2349
|
function Select({
|
|
2287
2350
|
...props
|
|
2288
2351
|
}) {
|
|
2289
|
-
return /* @__PURE__ */
|
|
2352
|
+
return /* @__PURE__ */ jsx20(SelectPrimitive.Root, { "data-slot": "select", ...props });
|
|
2290
2353
|
}
|
|
2291
2354
|
function SelectGroup({
|
|
2292
2355
|
className,
|
|
2293
2356
|
...props
|
|
2294
2357
|
}) {
|
|
2295
|
-
return /* @__PURE__ */
|
|
2358
|
+
return /* @__PURE__ */ jsx20(
|
|
2296
2359
|
SelectPrimitive.Group,
|
|
2297
2360
|
{
|
|
2298
2361
|
"data-slot": "select-group",
|
|
@@ -2304,7 +2367,7 @@ function SelectGroup({
|
|
|
2304
2367
|
function SelectValue({
|
|
2305
2368
|
...props
|
|
2306
2369
|
}) {
|
|
2307
|
-
return /* @__PURE__ */
|
|
2370
|
+
return /* @__PURE__ */ jsx20(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
|
|
2308
2371
|
}
|
|
2309
2372
|
function SelectTrigger({
|
|
2310
2373
|
className,
|
|
@@ -2327,7 +2390,7 @@ function SelectTrigger({
|
|
|
2327
2390
|
...props,
|
|
2328
2391
|
children: [
|
|
2329
2392
|
children,
|
|
2330
|
-
/* @__PURE__ */
|
|
2393
|
+
/* @__PURE__ */ jsx20(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx20(
|
|
2331
2394
|
ChevronDownIcon,
|
|
2332
2395
|
{
|
|
2333
2396
|
className: cn("pointer-events-none size-4", "text-current")
|
|
@@ -2345,7 +2408,7 @@ function SelectContent({
|
|
|
2345
2408
|
style,
|
|
2346
2409
|
...props
|
|
2347
2410
|
}) {
|
|
2348
|
-
return /* @__PURE__ */
|
|
2411
|
+
return /* @__PURE__ */ jsx20(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsx20(
|
|
2349
2412
|
SelectPrimitive.Content,
|
|
2350
2413
|
{
|
|
2351
2414
|
asChild: true,
|
|
@@ -2365,8 +2428,8 @@ function SelectContent({
|
|
|
2365
2428
|
),
|
|
2366
2429
|
style: { zIndex: "var(--z-popover)", ...style },
|
|
2367
2430
|
children: [
|
|
2368
|
-
/* @__PURE__ */
|
|
2369
|
-
/* @__PURE__ */
|
|
2431
|
+
/* @__PURE__ */ jsx20(SelectScrollUpButton, {}),
|
|
2432
|
+
/* @__PURE__ */ jsx20(
|
|
2370
2433
|
SelectPrimitive.Viewport,
|
|
2371
2434
|
{
|
|
2372
2435
|
"data-position": position,
|
|
@@ -2376,7 +2439,7 @@ function SelectContent({
|
|
|
2376
2439
|
children
|
|
2377
2440
|
}
|
|
2378
2441
|
),
|
|
2379
|
-
/* @__PURE__ */
|
|
2442
|
+
/* @__PURE__ */ jsx20(SelectScrollDownButton, {})
|
|
2380
2443
|
]
|
|
2381
2444
|
}
|
|
2382
2445
|
)
|
|
@@ -2387,7 +2450,7 @@ function SelectLabel({
|
|
|
2387
2450
|
className,
|
|
2388
2451
|
...props
|
|
2389
2452
|
}) {
|
|
2390
|
-
return /* @__PURE__ */
|
|
2453
|
+
return /* @__PURE__ */ jsx20(
|
|
2391
2454
|
SelectPrimitive.Label,
|
|
2392
2455
|
{
|
|
2393
2456
|
"data-slot": "select-label",
|
|
@@ -2403,7 +2466,7 @@ function SelectSplitLayout({
|
|
|
2403
2466
|
className,
|
|
2404
2467
|
...props
|
|
2405
2468
|
}) {
|
|
2406
|
-
return /* @__PURE__ */
|
|
2469
|
+
return /* @__PURE__ */ jsx20(
|
|
2407
2470
|
"div",
|
|
2408
2471
|
{
|
|
2409
2472
|
"data-slot": "select-split-layout",
|
|
@@ -2419,7 +2482,7 @@ function SelectSplitColumn({
|
|
|
2419
2482
|
className,
|
|
2420
2483
|
...props
|
|
2421
2484
|
}) {
|
|
2422
|
-
return /* @__PURE__ */
|
|
2485
|
+
return /* @__PURE__ */ jsx20(
|
|
2423
2486
|
"div",
|
|
2424
2487
|
{
|
|
2425
2488
|
"data-slot": "select-split-column",
|
|
@@ -2432,7 +2495,7 @@ function SelectSplitColumnLabel({
|
|
|
2432
2495
|
className,
|
|
2433
2496
|
...props
|
|
2434
2497
|
}) {
|
|
2435
|
-
return /* @__PURE__ */
|
|
2498
|
+
return /* @__PURE__ */ jsx20(
|
|
2436
2499
|
"div",
|
|
2437
2500
|
{
|
|
2438
2501
|
"data-slot": "select-split-column-label",
|
|
@@ -2448,7 +2511,7 @@ function SelectSplitColumnItems({
|
|
|
2448
2511
|
className,
|
|
2449
2512
|
...props
|
|
2450
2513
|
}) {
|
|
2451
|
-
return /* @__PURE__ */
|
|
2514
|
+
return /* @__PURE__ */ jsx20(
|
|
2452
2515
|
"div",
|
|
2453
2516
|
{
|
|
2454
2517
|
"data-slot": "select-split-column-items",
|
|
@@ -2464,7 +2527,7 @@ function SelectSplitDivider({
|
|
|
2464
2527
|
className,
|
|
2465
2528
|
...props
|
|
2466
2529
|
}) {
|
|
2467
|
-
return /* @__PURE__ */
|
|
2530
|
+
return /* @__PURE__ */ jsx20(
|
|
2468
2531
|
"div",
|
|
2469
2532
|
{
|
|
2470
2533
|
"aria-hidden": "true",
|
|
@@ -2490,14 +2553,14 @@ function SelectItem({
|
|
|
2490
2553
|
className: cn("w-full", menuItemWithIndicatorClassName, className),
|
|
2491
2554
|
...props,
|
|
2492
2555
|
children: [
|
|
2493
|
-
/* @__PURE__ */
|
|
2556
|
+
/* @__PURE__ */ jsx20("span", { className: menuItemIndicatorClassName, children: forceSelectedIndicator ? /* @__PURE__ */ jsx20(
|
|
2494
2557
|
CheckIcon,
|
|
2495
2558
|
{
|
|
2496
2559
|
className: "pointer-events-none text-[var(--tutti-purple)]",
|
|
2497
2560
|
"data-slot": "select-item-forced-indicator"
|
|
2498
2561
|
}
|
|
2499
|
-
) : /* @__PURE__ */
|
|
2500
|
-
/* @__PURE__ */
|
|
2562
|
+
) : /* @__PURE__ */ jsx20(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx20(CheckIcon, { className: "pointer-events-none text-[var(--tutti-purple)]" }) }) }),
|
|
2563
|
+
/* @__PURE__ */ jsx20(SelectPrimitive.ItemText, { children })
|
|
2501
2564
|
]
|
|
2502
2565
|
}
|
|
2503
2566
|
);
|
|
@@ -2506,7 +2569,7 @@ function SelectSeparator({
|
|
|
2506
2569
|
className,
|
|
2507
2570
|
...props
|
|
2508
2571
|
}) {
|
|
2509
|
-
return /* @__PURE__ */
|
|
2572
|
+
return /* @__PURE__ */ jsx20(
|
|
2510
2573
|
SelectPrimitive.Separator,
|
|
2511
2574
|
{
|
|
2512
2575
|
"data-slot": "select-separator",
|
|
@@ -2522,7 +2585,7 @@ function SelectScrollUpButton({
|
|
|
2522
2585
|
className,
|
|
2523
2586
|
...props
|
|
2524
2587
|
}) {
|
|
2525
|
-
return /* @__PURE__ */
|
|
2588
|
+
return /* @__PURE__ */ jsx20(
|
|
2526
2589
|
SelectPrimitive.ScrollUpButton,
|
|
2527
2590
|
{
|
|
2528
2591
|
"data-slot": "select-scroll-up-button",
|
|
@@ -2531,7 +2594,7 @@ function SelectScrollUpButton({
|
|
|
2531
2594
|
className
|
|
2532
2595
|
),
|
|
2533
2596
|
...props,
|
|
2534
|
-
children: /* @__PURE__ */
|
|
2597
|
+
children: /* @__PURE__ */ jsx20(ChevronUpIcon, {})
|
|
2535
2598
|
}
|
|
2536
2599
|
);
|
|
2537
2600
|
}
|
|
@@ -2539,7 +2602,7 @@ function SelectScrollDownButton({
|
|
|
2539
2602
|
className,
|
|
2540
2603
|
...props
|
|
2541
2604
|
}) {
|
|
2542
|
-
return /* @__PURE__ */
|
|
2605
|
+
return /* @__PURE__ */ jsx20(
|
|
2543
2606
|
SelectPrimitive.ScrollDownButton,
|
|
2544
2607
|
{
|
|
2545
2608
|
"data-slot": "select-scroll-down-button",
|
|
@@ -2548,21 +2611,21 @@ function SelectScrollDownButton({
|
|
|
2548
2611
|
className
|
|
2549
2612
|
),
|
|
2550
2613
|
...props,
|
|
2551
|
-
children: /* @__PURE__ */
|
|
2614
|
+
children: /* @__PURE__ */ jsx20(ChevronDownIcon, {})
|
|
2552
2615
|
}
|
|
2553
2616
|
);
|
|
2554
2617
|
}
|
|
2555
2618
|
|
|
2556
2619
|
// src/components/separator/separator.tsx
|
|
2557
2620
|
import { Separator as SeparatorPrimitive } from "radix-ui";
|
|
2558
|
-
import { jsx as
|
|
2621
|
+
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
2559
2622
|
function Separator2({
|
|
2560
2623
|
className,
|
|
2561
2624
|
orientation = "horizontal",
|
|
2562
2625
|
decorative = true,
|
|
2563
2626
|
...props
|
|
2564
2627
|
}) {
|
|
2565
|
-
return /* @__PURE__ */
|
|
2628
|
+
return /* @__PURE__ */ jsx21(
|
|
2566
2629
|
SeparatorPrimitive.Root,
|
|
2567
2630
|
{
|
|
2568
2631
|
"data-slot": "separator",
|
|
@@ -2578,7 +2641,7 @@ function Separator2({
|
|
|
2578
2641
|
}
|
|
2579
2642
|
|
|
2580
2643
|
// src/components/section-tabs/section-tabs.tsx
|
|
2581
|
-
import { jsx as
|
|
2644
|
+
import { jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
2582
2645
|
function SectionTabs({
|
|
2583
2646
|
tabs,
|
|
2584
2647
|
value,
|
|
@@ -2587,7 +2650,7 @@ function SectionTabs({
|
|
|
2587
2650
|
className,
|
|
2588
2651
|
testId
|
|
2589
2652
|
}) {
|
|
2590
|
-
return /* @__PURE__ */
|
|
2653
|
+
return /* @__PURE__ */ jsx22(
|
|
2591
2654
|
"div",
|
|
2592
2655
|
{
|
|
2593
2656
|
"aria-label": ariaLabel,
|
|
@@ -2612,8 +2675,8 @@ function SectionTabs({
|
|
|
2612
2675
|
type: "button",
|
|
2613
2676
|
onClick: () => onValueChange(tab.value),
|
|
2614
2677
|
children: [
|
|
2615
|
-
/* @__PURE__ */
|
|
2616
|
-
tab.count !== void 0 ? /* @__PURE__ */
|
|
2678
|
+
/* @__PURE__ */ jsx22("span", { className: "min-w-0 truncate", children: tab.label }),
|
|
2679
|
+
tab.count !== void 0 ? /* @__PURE__ */ jsx22("span", { className: "text-[15px] font-semibold leading-5 text-[inherit]", children: tab.count }) : null
|
|
2617
2680
|
]
|
|
2618
2681
|
},
|
|
2619
2682
|
tab.value
|
|
@@ -2624,9 +2687,9 @@ function SectionTabs({
|
|
|
2624
2687
|
}
|
|
2625
2688
|
|
|
2626
2689
|
// src/components/shortcut-badge/shortcut-badge.tsx
|
|
2627
|
-
import { jsx as
|
|
2690
|
+
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
2628
2691
|
function ShortcutBadge({ className, ...props }) {
|
|
2629
|
-
return /* @__PURE__ */
|
|
2692
|
+
return /* @__PURE__ */ jsx23(
|
|
2630
2693
|
"kbd",
|
|
2631
2694
|
{
|
|
2632
2695
|
"data-slot": "shortcut-badge",
|
|
@@ -2644,9 +2707,9 @@ import {
|
|
|
2644
2707
|
Toaster as SonnerToaster,
|
|
2645
2708
|
toast
|
|
2646
2709
|
} from "sonner";
|
|
2647
|
-
import { jsx as
|
|
2710
|
+
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
2648
2711
|
function Toaster({ toastOptions, style, ...props }) {
|
|
2649
|
-
return /* @__PURE__ */
|
|
2712
|
+
return /* @__PURE__ */ jsx24(
|
|
2650
2713
|
SonnerToaster,
|
|
2651
2714
|
{
|
|
2652
2715
|
closeButton: true,
|
|
@@ -2655,11 +2718,11 @@ function Toaster({ toastOptions, style, ...props }) {
|
|
|
2655
2718
|
position: "top-right",
|
|
2656
2719
|
visibleToasts: 4,
|
|
2657
2720
|
icons: {
|
|
2658
|
-
error: /* @__PURE__ */
|
|
2659
|
-
info: /* @__PURE__ */
|
|
2660
|
-
loading: /* @__PURE__ */
|
|
2661
|
-
success: /* @__PURE__ */
|
|
2662
|
-
warning: /* @__PURE__ */
|
|
2721
|
+
error: /* @__PURE__ */ jsx24(FailedFilledIcon, { className: "size-4" }),
|
|
2722
|
+
info: /* @__PURE__ */ jsx24(WarningLinedIcon, { className: "size-4" }),
|
|
2723
|
+
loading: /* @__PURE__ */ jsx24(LoadingIcon, { className: "size-4 animate-spin" }),
|
|
2724
|
+
success: /* @__PURE__ */ jsx24(SuccessFilledIcon, { className: "size-4" }),
|
|
2725
|
+
warning: /* @__PURE__ */ jsx24(WarningFilledIcon, { className: "size-4" })
|
|
2663
2726
|
},
|
|
2664
2727
|
style: {
|
|
2665
2728
|
"--normal-bg": "var(--background-fronted)",
|
|
@@ -2688,7 +2751,7 @@ function Toaster({ toastOptions, style, ...props }) {
|
|
|
2688
2751
|
}
|
|
2689
2752
|
|
|
2690
2753
|
// src/components/spinner/spinner.tsx
|
|
2691
|
-
import { jsx as
|
|
2754
|
+
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
2692
2755
|
function Spinner({
|
|
2693
2756
|
className,
|
|
2694
2757
|
size = 16,
|
|
@@ -2697,7 +2760,7 @@ function Spinner({
|
|
|
2697
2760
|
testId,
|
|
2698
2761
|
trackColor
|
|
2699
2762
|
}) {
|
|
2700
|
-
return /* @__PURE__ */
|
|
2763
|
+
return /* @__PURE__ */ jsx25(
|
|
2701
2764
|
LoadingIcon,
|
|
2702
2765
|
{
|
|
2703
2766
|
"data-slot": "spinner",
|
|
@@ -2717,7 +2780,7 @@ function Spinner({
|
|
|
2717
2780
|
|
|
2718
2781
|
// src/components/status-dot/status-dot.tsx
|
|
2719
2782
|
import { cva as cva4 } from "class-variance-authority";
|
|
2720
|
-
import { jsx as
|
|
2783
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
2721
2784
|
var statusDotVariants = cva4("inline-flex shrink-0 rounded-full", {
|
|
2722
2785
|
variants: {
|
|
2723
2786
|
tone: {
|
|
@@ -2751,7 +2814,7 @@ function StatusDot({
|
|
|
2751
2814
|
title,
|
|
2752
2815
|
className
|
|
2753
2816
|
}) {
|
|
2754
|
-
return /* @__PURE__ */
|
|
2817
|
+
return /* @__PURE__ */ jsx26(
|
|
2755
2818
|
"span",
|
|
2756
2819
|
{
|
|
2757
2820
|
"aria-hidden": ariaLabel ? void 0 : true,
|
|
@@ -2769,13 +2832,13 @@ function StatusDot({
|
|
|
2769
2832
|
|
|
2770
2833
|
// src/components/switch/switch.tsx
|
|
2771
2834
|
import { Switch as SwitchPrimitive } from "radix-ui";
|
|
2772
|
-
import { jsx as
|
|
2835
|
+
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
2773
2836
|
function Switch({
|
|
2774
2837
|
className,
|
|
2775
2838
|
size = "default",
|
|
2776
2839
|
...props
|
|
2777
2840
|
}) {
|
|
2778
|
-
return /* @__PURE__ */
|
|
2841
|
+
return /* @__PURE__ */ jsx27(
|
|
2779
2842
|
SwitchPrimitive.Root,
|
|
2780
2843
|
{
|
|
2781
2844
|
"data-slot": "switch",
|
|
@@ -2785,7 +2848,7 @@ function Switch({
|
|
|
2785
2848
|
className
|
|
2786
2849
|
),
|
|
2787
2850
|
...props,
|
|
2788
|
-
children: /* @__PURE__ */
|
|
2851
|
+
children: /* @__PURE__ */ jsx27(
|
|
2789
2852
|
SwitchPrimitive.Thumb,
|
|
2790
2853
|
{
|
|
2791
2854
|
"data-slot": "switch-thumb",
|
|
@@ -2797,9 +2860,9 @@ function Switch({
|
|
|
2797
2860
|
}
|
|
2798
2861
|
|
|
2799
2862
|
// src/components/textarea/textarea.tsx
|
|
2800
|
-
import { jsx as
|
|
2863
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
2801
2864
|
function Textarea({ className, ...props }) {
|
|
2802
|
-
return /* @__PURE__ */
|
|
2865
|
+
return /* @__PURE__ */ jsx28(
|
|
2803
2866
|
"textarea",
|
|
2804
2867
|
{
|
|
2805
2868
|
"data-slot": "textarea",
|
|
@@ -2816,13 +2879,13 @@ function Textarea({ className, ...props }) {
|
|
|
2816
2879
|
import * as React8 from "react";
|
|
2817
2880
|
import { Toast as ToastPrimitive } from "radix-ui";
|
|
2818
2881
|
import { cva as cva5 } from "class-variance-authority";
|
|
2819
|
-
import { jsx as
|
|
2882
|
+
import { jsx as jsx29, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
2820
2883
|
var toastDefaultDurationMs = 3e3;
|
|
2821
2884
|
function ToastProvider({
|
|
2822
2885
|
duration = toastDefaultDurationMs,
|
|
2823
2886
|
...props
|
|
2824
2887
|
}) {
|
|
2825
|
-
return /* @__PURE__ */
|
|
2888
|
+
return /* @__PURE__ */ jsx29(ToastPrimitive.Provider, { duration, ...props });
|
|
2826
2889
|
}
|
|
2827
2890
|
var ToastVisualContext = React8.createContext(null);
|
|
2828
2891
|
var toastStatusIconByVariant = {
|
|
@@ -2880,7 +2943,7 @@ function ToastRoot({
|
|
|
2880
2943
|
...props
|
|
2881
2944
|
}) {
|
|
2882
2945
|
const isDestructive = variant === "destructive";
|
|
2883
|
-
return /* @__PURE__ */
|
|
2946
|
+
return /* @__PURE__ */ jsx29(
|
|
2884
2947
|
ToastPrimitive.Root,
|
|
2885
2948
|
{
|
|
2886
2949
|
"aria-busy": busy,
|
|
@@ -2897,7 +2960,7 @@ function ToastRoot({
|
|
|
2897
2960
|
...style
|
|
2898
2961
|
},
|
|
2899
2962
|
...props,
|
|
2900
|
-
children: /* @__PURE__ */
|
|
2963
|
+
children: /* @__PURE__ */ jsx29(ToastVisualContext.Provider, { value: { busy, variant }, children: /* @__PURE__ */ jsx29("span", { className: "flex min-w-0 max-w-full flex-col items-center justify-center whitespace-normal break-words text-center", children }) })
|
|
2901
2964
|
}
|
|
2902
2965
|
);
|
|
2903
2966
|
}
|
|
@@ -2918,7 +2981,7 @@ function ToastTitle({
|
|
|
2918
2981
|
),
|
|
2919
2982
|
...props,
|
|
2920
2983
|
children: [
|
|
2921
|
-
toastVisual?.busy ? /* @__PURE__ */
|
|
2984
|
+
toastVisual?.busy ? /* @__PURE__ */ jsx29(
|
|
2922
2985
|
Spinner,
|
|
2923
2986
|
{
|
|
2924
2987
|
className: "shrink-0 text-current",
|
|
@@ -2926,8 +2989,8 @@ function ToastTitle({
|
|
|
2926
2989
|
strokeWidth: 2,
|
|
2927
2990
|
trackColor: "color-mix(in srgb, currentColor 28%, transparent)"
|
|
2928
2991
|
}
|
|
2929
|
-
) : StatusIcon ? /* @__PURE__ */
|
|
2930
|
-
/* @__PURE__ */
|
|
2992
|
+
) : StatusIcon ? /* @__PURE__ */ jsx29(StatusIcon, { className: "size-4 shrink-0 text-current" }) : null,
|
|
2993
|
+
/* @__PURE__ */ jsx29("span", { className: "min-w-0 break-words", children: formatToastText(children) })
|
|
2931
2994
|
]
|
|
2932
2995
|
}
|
|
2933
2996
|
);
|
|
@@ -2936,7 +2999,7 @@ function ToastDescription({
|
|
|
2936
2999
|
className,
|
|
2937
3000
|
...props
|
|
2938
3001
|
}) {
|
|
2939
|
-
return /* @__PURE__ */
|
|
3002
|
+
return /* @__PURE__ */ jsx29(
|
|
2940
3003
|
ToastPrimitive.Description,
|
|
2941
3004
|
{
|
|
2942
3005
|
"data-slot": "toast-description",
|
|
@@ -2952,7 +3015,7 @@ function ToastClose({
|
|
|
2952
3015
|
className,
|
|
2953
3016
|
...props
|
|
2954
3017
|
}) {
|
|
2955
|
-
return /* @__PURE__ */
|
|
3018
|
+
return /* @__PURE__ */ jsx29(
|
|
2956
3019
|
ToastPrimitive.Close,
|
|
2957
3020
|
{
|
|
2958
3021
|
"data-slot": "toast-close",
|
|
@@ -2961,7 +3024,7 @@ function ToastClose({
|
|
|
2961
3024
|
className
|
|
2962
3025
|
),
|
|
2963
3026
|
...props,
|
|
2964
|
-
children: /* @__PURE__ */
|
|
3027
|
+
children: /* @__PURE__ */ jsx29(CloseIcon, { className: "size-4" })
|
|
2965
3028
|
}
|
|
2966
3029
|
);
|
|
2967
3030
|
}
|
|
@@ -2970,7 +3033,7 @@ function ToastViewport({
|
|
|
2970
3033
|
style,
|
|
2971
3034
|
...props
|
|
2972
3035
|
}) {
|
|
2973
|
-
return /* @__PURE__ */
|
|
3036
|
+
return /* @__PURE__ */ jsx29(
|
|
2974
3037
|
ToastPrimitive.Viewport,
|
|
2975
3038
|
{
|
|
2976
3039
|
"data-slot": "toast-viewport",
|
|
@@ -2986,7 +3049,7 @@ function ToastViewport({
|
|
|
2986
3049
|
|
|
2987
3050
|
// src/components/underline-tabs/underline-tabs.tsx
|
|
2988
3051
|
import { useEffect as useEffect5, useLayoutEffect as useLayoutEffect2, useRef as useRef4, useState as useState5 } from "react";
|
|
2989
|
-
import { jsx as
|
|
3052
|
+
import { jsx as jsx30, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
2990
3053
|
function UnderlineTabs({
|
|
2991
3054
|
tabs,
|
|
2992
3055
|
value,
|
|
@@ -3081,7 +3144,7 @@ function UnderlineTabs({
|
|
|
3081
3144
|
"data-testid": testId,
|
|
3082
3145
|
role: "tablist",
|
|
3083
3146
|
children: [
|
|
3084
|
-
/* @__PURE__ */
|
|
3147
|
+
/* @__PURE__ */ jsx30(
|
|
3085
3148
|
"div",
|
|
3086
3149
|
{
|
|
3087
3150
|
ref: viewportRef,
|
|
@@ -3126,14 +3189,14 @@ function UnderlineTabs({
|
|
|
3126
3189
|
onClick: () => onValueChange(tab.value),
|
|
3127
3190
|
onMouseDown: preventMouseDownDefault ? (event) => event.preventDefault() : void 0,
|
|
3128
3191
|
children: [
|
|
3129
|
-
/* @__PURE__ */
|
|
3130
|
-
tab.count !== void 0 ? /* @__PURE__ */
|
|
3192
|
+
/* @__PURE__ */ jsx30("span", { children: tab.label }),
|
|
3193
|
+
tab.count !== void 0 ? /* @__PURE__ */ jsx30("span", { className: "text-[11px] font-medium leading-6 text-[inherit]", children: tab.count }) : null
|
|
3131
3194
|
]
|
|
3132
3195
|
},
|
|
3133
3196
|
tab.value
|
|
3134
3197
|
);
|
|
3135
3198
|
}),
|
|
3136
|
-
/* @__PURE__ */
|
|
3199
|
+
/* @__PURE__ */ jsx30(
|
|
3137
3200
|
"div",
|
|
3138
3201
|
{
|
|
3139
3202
|
"aria-hidden": true,
|
|
@@ -3150,7 +3213,7 @@ function UnderlineTabs({
|
|
|
3150
3213
|
)
|
|
3151
3214
|
}
|
|
3152
3215
|
),
|
|
3153
|
-
/* @__PURE__ */
|
|
3216
|
+
/* @__PURE__ */ jsx30(
|
|
3154
3217
|
"button",
|
|
3155
3218
|
{
|
|
3156
3219
|
"aria-label": scrollLeftLabel,
|
|
@@ -3161,10 +3224,10 @@ function UnderlineTabs({
|
|
|
3161
3224
|
disabled: !overflow.canScrollLeft,
|
|
3162
3225
|
type: "button",
|
|
3163
3226
|
onClick: () => scrollTabs("left"),
|
|
3164
|
-
children: /* @__PURE__ */
|
|
3227
|
+
children: /* @__PURE__ */ jsx30(ArrowLeftIcon, { size: 16 })
|
|
3165
3228
|
}
|
|
3166
3229
|
),
|
|
3167
|
-
/* @__PURE__ */
|
|
3230
|
+
/* @__PURE__ */ jsx30(
|
|
3168
3231
|
"button",
|
|
3169
3232
|
{
|
|
3170
3233
|
"aria-label": scrollRightLabel,
|
|
@@ -3175,7 +3238,7 @@ function UnderlineTabs({
|
|
|
3175
3238
|
disabled: !overflow.canScrollRight,
|
|
3176
3239
|
type: "button",
|
|
3177
3240
|
onClick: () => scrollTabs("right"),
|
|
3178
|
-
children: /* @__PURE__ */
|
|
3241
|
+
children: /* @__PURE__ */ jsx30(ArrowRightIcon, { size: 16 })
|
|
3179
3242
|
}
|
|
3180
3243
|
)
|
|
3181
3244
|
]
|
|
@@ -3186,7 +3249,7 @@ function UnderlineTabs({
|
|
|
3186
3249
|
// src/components/viewport-menu-surface/viewport-menu-surface.tsx
|
|
3187
3250
|
import * as React9 from "react";
|
|
3188
3251
|
import { createPortal as createPortal2 } from "react-dom";
|
|
3189
|
-
import { jsx as
|
|
3252
|
+
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
3190
3253
|
var VIEWPORT_MENU_PADDING = 12;
|
|
3191
3254
|
var MENU_BOUNDARY_PADDING = 8;
|
|
3192
3255
|
function clampMenuCoordinate(origin, size, viewportExtent, padding) {
|
|
@@ -3456,7 +3519,7 @@ var ViewportMenuSurface = React9.forwardRef(function ViewportMenuSurface2({
|
|
|
3456
3519
|
}
|
|
3457
3520
|
const portalTarget = resolvedPlacement.portalTarget ?? document.body;
|
|
3458
3521
|
return createPortal2(
|
|
3459
|
-
/* @__PURE__ */
|
|
3522
|
+
/* @__PURE__ */ jsx31(
|
|
3460
3523
|
MenuSurface,
|
|
3461
3524
|
{
|
|
3462
3525
|
...rest,
|
|
@@ -3514,6 +3577,15 @@ export {
|
|
|
3514
3577
|
DialogTitle,
|
|
3515
3578
|
DialogDescription,
|
|
3516
3579
|
ConfirmationDialog,
|
|
3580
|
+
menuSurfaceClassName,
|
|
3581
|
+
menuItemClassName,
|
|
3582
|
+
menuItemWithIndicatorClassName,
|
|
3583
|
+
menuItemIndicatorClassName,
|
|
3584
|
+
MenuSurface,
|
|
3585
|
+
ContextMenu,
|
|
3586
|
+
ContextMenuTrigger,
|
|
3587
|
+
ContextMenuContent,
|
|
3588
|
+
ContextMenuItem,
|
|
3517
3589
|
DatePicker,
|
|
3518
3590
|
Drawer,
|
|
3519
3591
|
DrawerTrigger,
|
|
@@ -3525,11 +3597,6 @@ export {
|
|
|
3525
3597
|
DrawerFooter,
|
|
3526
3598
|
DrawerTitle,
|
|
3527
3599
|
DrawerDescription,
|
|
3528
|
-
menuSurfaceClassName,
|
|
3529
|
-
menuItemClassName,
|
|
3530
|
-
menuItemWithIndicatorClassName,
|
|
3531
|
-
menuItemIndicatorClassName,
|
|
3532
|
-
MenuSurface,
|
|
3533
3600
|
DropdownMenu,
|
|
3534
3601
|
DropdownMenuPortal,
|
|
3535
3602
|
DropdownMenuTrigger,
|
|
@@ -3600,4 +3667,4 @@ export {
|
|
|
3600
3667
|
UnderlineTabs,
|
|
3601
3668
|
ViewportMenuSurface
|
|
3602
3669
|
};
|
|
3603
|
-
//# sourceMappingURL=chunk-
|
|
3670
|
+
//# sourceMappingURL=chunk-KFFYDDIV.js.map
|