@l3mpire/ui 2.21.0 → 2.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/USAGE.md +1 -1
- package/dist/index.js +257 -219
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +257 -219
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -850,7 +850,7 @@ var containerStyle = [
|
|
|
850
850
|
"bg-dropdown-bg",
|
|
851
851
|
"border border-dropdown-border",
|
|
852
852
|
"rounded-md",
|
|
853
|
-
"p-
|
|
853
|
+
"p-xs",
|
|
854
854
|
"shadow-lg"
|
|
855
855
|
];
|
|
856
856
|
var DropdownMenu = React4.forwardRef(
|
|
@@ -4088,7 +4088,7 @@ var StatusCell = ({
|
|
|
4088
4088
|
label,
|
|
4089
4089
|
variant = "light",
|
|
4090
4090
|
type = "primary",
|
|
4091
|
-
size = "
|
|
4091
|
+
size = "md",
|
|
4092
4092
|
className
|
|
4093
4093
|
}) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: cn("flex items-center", className), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Badge, { variant, type, size, children: label }) });
|
|
4094
4094
|
StatusCell.displayName = "StatusCell";
|
|
@@ -5103,6 +5103,7 @@ SidePanelContent.displayName = "SidePanelContent";
|
|
|
5103
5103
|
|
|
5104
5104
|
// src/components/ui/filter/filter-chip-segment.tsx
|
|
5105
5105
|
var React36 = __toESM(require("react"));
|
|
5106
|
+
var TooltipPrimitive3 = __toESM(require("@radix-ui/react-tooltip"));
|
|
5106
5107
|
var import_class_variance_authority19 = require("class-variance-authority");
|
|
5107
5108
|
var import_icons23 = require("@l3mpire/icons");
|
|
5108
5109
|
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
@@ -5128,6 +5129,43 @@ var filterChipSegmentVariants = (0, import_class_variance_authority19.cva)(
|
|
|
5128
5129
|
}
|
|
5129
5130
|
}
|
|
5130
5131
|
);
|
|
5132
|
+
function TruncatedLabel({
|
|
5133
|
+
label,
|
|
5134
|
+
truncate,
|
|
5135
|
+
className
|
|
5136
|
+
}) {
|
|
5137
|
+
const textRef = React36.useRef(null);
|
|
5138
|
+
const [isTruncated, setIsTruncated] = React36.useState(false);
|
|
5139
|
+
React36.useEffect(() => {
|
|
5140
|
+
const el = textRef.current;
|
|
5141
|
+
if (el && truncate) {
|
|
5142
|
+
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
5143
|
+
}
|
|
5144
|
+
}, [label, truncate]);
|
|
5145
|
+
const span = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
5146
|
+
"span",
|
|
5147
|
+
{
|
|
5148
|
+
ref: textRef,
|
|
5149
|
+
className: cn(className, truncate && "max-w-[160px] truncate"),
|
|
5150
|
+
children: label
|
|
5151
|
+
}
|
|
5152
|
+
);
|
|
5153
|
+
if (!isTruncated) return span;
|
|
5154
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(TooltipPrimitive3.Provider, { delayDuration: 300, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(TooltipPrimitive3.Root, { children: [
|
|
5155
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(TooltipPrimitive3.Trigger, { asChild: true, children: span }),
|
|
5156
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(TooltipPrimitive3.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
|
|
5157
|
+
TooltipPrimitive3.Content,
|
|
5158
|
+
{
|
|
5159
|
+
sideOffset: 4,
|
|
5160
|
+
className: "z-50 px-base py-sm rounded-md shadow-lg bg-tooltip-default-bg text-tooltip-default-text text-sm font-regular leading-sm max-w-[320px] data-[state=delayed-open]:animate-[tooltip-in_150ms_ease-out] data-[state=closed]:animate-[tooltip-out_100ms_ease-in]",
|
|
5161
|
+
children: [
|
|
5162
|
+
label,
|
|
5163
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(TooltipPrimitive3.Arrow, { className: "fill-tooltip-default-bg" })
|
|
5164
|
+
]
|
|
5165
|
+
}
|
|
5166
|
+
) })
|
|
5167
|
+
] }) });
|
|
5168
|
+
}
|
|
5131
5169
|
var FilterChipSegment = React36.forwardRef(
|
|
5132
5170
|
({
|
|
5133
5171
|
className,
|
|
@@ -5189,13 +5227,14 @@ var FilterChipSegment = React36.forwardRef(
|
|
|
5189
5227
|
}
|
|
5190
5228
|
),
|
|
5191
5229
|
label && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
5192
|
-
|
|
5230
|
+
TruncatedLabel,
|
|
5193
5231
|
{
|
|
5232
|
+
label,
|
|
5233
|
+
truncate: segmentType === "value",
|
|
5194
5234
|
className: cn(
|
|
5195
5235
|
"text-sm font-medium leading-sm whitespace-nowrap",
|
|
5196
5236
|
segmentType === "placeholder" ? "text-filter-chip-segment-placeholder" : "text-filter-chip-segment-text"
|
|
5197
|
-
)
|
|
5198
|
-
children: label
|
|
5237
|
+
)
|
|
5199
5238
|
}
|
|
5200
5239
|
),
|
|
5201
5240
|
badgeCount != null && badgeCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "flex items-center gap-2xs p-2xs rounded-xs bg-filter-chip-badge-bg", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "text-[10px] font-medium leading-2xs text-filter-chip-badge-text", children: badgeCount }) }),
|
|
@@ -5583,10 +5622,10 @@ var SortButton = ({
|
|
|
5583
5622
|
className: cn(
|
|
5584
5623
|
"flex items-center gap-xs",
|
|
5585
5624
|
"min-h-[32px] max-h-[32px]",
|
|
5586
|
-
"bg-gradient-to-t from-
|
|
5587
|
-
"border border-
|
|
5625
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default to-btn-outlined-neutral-bg-gradient-to-default",
|
|
5626
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm",
|
|
5588
5627
|
"cursor-pointer transition-colors",
|
|
5589
|
-
"hover:from-
|
|
5628
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover",
|
|
5590
5629
|
iconOnly ? "size-8 justify-center p-0" : "px-md py-sm min-w-[80px]",
|
|
5591
5630
|
className
|
|
5592
5631
|
),
|
|
@@ -5596,15 +5635,15 @@ var SortButton = ({
|
|
|
5596
5635
|
{
|
|
5597
5636
|
icon: direction === "asc" ? import_icons25.faArrowUpSmallBigOutline : import_icons25.faArrowDownBigSmallOutline,
|
|
5598
5637
|
size: "sm",
|
|
5599
|
-
className: "shrink-0 text-
|
|
5638
|
+
className: "shrink-0 text-foreground"
|
|
5600
5639
|
}
|
|
5601
5640
|
),
|
|
5602
5641
|
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap", children: [
|
|
5603
|
-
/* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "text-
|
|
5642
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "text-muted-foreground", children: [
|
|
5604
5643
|
"Sort by",
|
|
5605
5644
|
" "
|
|
5606
5645
|
] }),
|
|
5607
|
-
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "text-
|
|
5646
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "text-foreground", children: activeLabel })
|
|
5608
5647
|
] })
|
|
5609
5648
|
]
|
|
5610
5649
|
}
|
|
@@ -5616,7 +5655,7 @@ var SortButton = ({
|
|
|
5616
5655
|
align: "start",
|
|
5617
5656
|
className: cn(
|
|
5618
5657
|
"z-50 flex flex-col gap-xs overflow-clip p-xs",
|
|
5619
|
-
"bg-
|
|
5658
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
5620
5659
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
5621
5660
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
5622
5661
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -5633,8 +5672,8 @@ var SortButton = ({
|
|
|
5633
5672
|
},
|
|
5634
5673
|
className: cn(
|
|
5635
5674
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors",
|
|
5636
|
-
"hover:bg-
|
|
5637
|
-
field.id === activeField ? "bg-
|
|
5675
|
+
"hover:bg-dropdown-item-hover",
|
|
5676
|
+
field.id === activeField ? "bg-dropdown-item-hover" : ""
|
|
5638
5677
|
),
|
|
5639
5678
|
children: [
|
|
5640
5679
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
@@ -5644,7 +5683,7 @@ var SortButton = ({
|
|
|
5644
5683
|
size: "sm",
|
|
5645
5684
|
className: cn(
|
|
5646
5685
|
"shrink-0",
|
|
5647
|
-
field.id === activeField ? "text-
|
|
5686
|
+
field.id === activeField ? "text-foreground" : "text-dropdown-item-icon"
|
|
5648
5687
|
)
|
|
5649
5688
|
}
|
|
5650
5689
|
),
|
|
@@ -5653,7 +5692,7 @@ var SortButton = ({
|
|
|
5653
5692
|
{
|
|
5654
5693
|
className: cn(
|
|
5655
5694
|
"flex-1 text-sm font-regular leading-sm text-left truncate",
|
|
5656
|
-
field.id === activeField ? "text-
|
|
5695
|
+
field.id === activeField ? "text-foreground" : "text-dropdown-item-icon"
|
|
5657
5696
|
),
|
|
5658
5697
|
children: field.label
|
|
5659
5698
|
}
|
|
@@ -5662,7 +5701,7 @@ var SortButton = ({
|
|
|
5662
5701
|
},
|
|
5663
5702
|
field.id
|
|
5664
5703
|
)) }),
|
|
5665
|
-
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "h-px bg-
|
|
5704
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "h-px bg-border" }),
|
|
5666
5705
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex flex-col", children: [
|
|
5667
5706
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
5668
5707
|
"button",
|
|
@@ -5674,8 +5713,8 @@ var SortButton = ({
|
|
|
5674
5713
|
},
|
|
5675
5714
|
className: cn(
|
|
5676
5715
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors",
|
|
5677
|
-
"hover:bg-
|
|
5678
|
-
direction === "asc" ? "bg-
|
|
5716
|
+
"hover:bg-dropdown-item-hover",
|
|
5717
|
+
direction === "asc" ? "bg-dropdown-item-hover" : ""
|
|
5679
5718
|
),
|
|
5680
5719
|
children: [
|
|
5681
5720
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
@@ -5685,7 +5724,7 @@ var SortButton = ({
|
|
|
5685
5724
|
size: "sm",
|
|
5686
5725
|
className: cn(
|
|
5687
5726
|
"shrink-0",
|
|
5688
|
-
direction === "asc" ? "text-
|
|
5727
|
+
direction === "asc" ? "text-foreground" : "text-dropdown-item-icon"
|
|
5689
5728
|
)
|
|
5690
5729
|
}
|
|
5691
5730
|
),
|
|
@@ -5694,7 +5733,7 @@ var SortButton = ({
|
|
|
5694
5733
|
{
|
|
5695
5734
|
className: cn(
|
|
5696
5735
|
"flex-1 text-sm font-regular leading-sm text-left",
|
|
5697
|
-
direction === "asc" ? "text-
|
|
5736
|
+
direction === "asc" ? "text-foreground" : "text-dropdown-item-icon"
|
|
5698
5737
|
),
|
|
5699
5738
|
children: "Ascending"
|
|
5700
5739
|
}
|
|
@@ -5712,8 +5751,8 @@ var SortButton = ({
|
|
|
5712
5751
|
},
|
|
5713
5752
|
className: cn(
|
|
5714
5753
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors",
|
|
5715
|
-
"hover:bg-
|
|
5716
|
-
direction === "desc" ? "bg-
|
|
5754
|
+
"hover:bg-dropdown-item-hover",
|
|
5755
|
+
direction === "desc" ? "bg-dropdown-item-hover" : ""
|
|
5717
5756
|
),
|
|
5718
5757
|
children: [
|
|
5719
5758
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
@@ -5723,7 +5762,7 @@ var SortButton = ({
|
|
|
5723
5762
|
size: "sm",
|
|
5724
5763
|
className: cn(
|
|
5725
5764
|
"shrink-0",
|
|
5726
|
-
direction === "desc" ? "text-
|
|
5765
|
+
direction === "desc" ? "text-foreground" : "text-dropdown-item-icon"
|
|
5727
5766
|
)
|
|
5728
5767
|
}
|
|
5729
5768
|
),
|
|
@@ -5732,7 +5771,7 @@ var SortButton = ({
|
|
|
5732
5771
|
{
|
|
5733
5772
|
className: cn(
|
|
5734
5773
|
"flex-1 text-sm font-regular leading-sm text-left",
|
|
5735
|
-
direction === "desc" ? "text-
|
|
5774
|
+
direction === "desc" ? "text-foreground" : "text-dropdown-item-icon"
|
|
5736
5775
|
),
|
|
5737
5776
|
children: "Descending"
|
|
5738
5777
|
}
|
|
@@ -5760,10 +5799,10 @@ var FilterBarButton = React40.forwardRef(({ className, count, iconOnly = false,
|
|
|
5760
5799
|
className: cn(
|
|
5761
5800
|
"shrink-0 flex items-center gap-sm overflow-hidden",
|
|
5762
5801
|
"min-h-[32px] max-h-[32px]",
|
|
5763
|
-
"bg-gradient-to-t from-
|
|
5764
|
-
"border border-
|
|
5802
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default to-btn-outlined-neutral-bg-gradient-to-default",
|
|
5803
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm",
|
|
5765
5804
|
"cursor-pointer transition-colors",
|
|
5766
|
-
"hover:from-
|
|
5805
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover",
|
|
5767
5806
|
iconOnly ? count ? "px-sm justify-center" : "size-8 justify-center p-0" : "px-base py-sm min-w-[80px]",
|
|
5768
5807
|
className
|
|
5769
5808
|
),
|
|
@@ -5774,10 +5813,10 @@ var FilterBarButton = React40.forwardRef(({ className, count, iconOnly = false,
|
|
|
5774
5813
|
{
|
|
5775
5814
|
icon: import_icons26.faFilterOutline,
|
|
5776
5815
|
size: "sm",
|
|
5777
|
-
className: "shrink-0 text-
|
|
5816
|
+
className: "shrink-0 text-foreground"
|
|
5778
5817
|
}
|
|
5779
5818
|
),
|
|
5780
|
-
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-
|
|
5819
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-foreground", children: children ?? "Filters" }),
|
|
5781
5820
|
count != null && count > 0 && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "flex items-center p-2xs rounded-xs bg-filter-chip-badge-bg", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-[10px] font-medium leading-2xs text-filter-chip-badge-text", children: count }) })
|
|
5782
5821
|
]
|
|
5783
5822
|
}
|
|
@@ -5793,10 +5832,10 @@ var SaveViewButton = React41.forwardRef(
|
|
|
5793
5832
|
const sharedStyle = [
|
|
5794
5833
|
"relative flex items-center justify-center",
|
|
5795
5834
|
"min-h-[32px] max-h-[32px]",
|
|
5796
|
-
"bg-gradient-to-t from-
|
|
5797
|
-
"border border-
|
|
5835
|
+
"bg-gradient-to-t from-btn-solid-brand-bg-default from-[10%] to-btn-solid-brand-bg-gradient-to-default",
|
|
5836
|
+
"border border-btn-solid-brand-border-default",
|
|
5798
5837
|
"shadow-sm cursor-pointer transition-colors",
|
|
5799
|
-
"hover:from-
|
|
5838
|
+
"hover:from-btn-solid-brand-bg-hover hover:to-btn-solid-brand-bg-gradient-to-hover"
|
|
5800
5839
|
];
|
|
5801
5840
|
return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
|
|
5802
5841
|
"div",
|
|
@@ -5816,8 +5855,8 @@ var SaveViewButton = React41.forwardRef(
|
|
|
5816
5855
|
"rounded-l-md -mr-px"
|
|
5817
5856
|
),
|
|
5818
5857
|
children: [
|
|
5819
|
-
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-
|
|
5820
|
-
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "absolute inset-0 rounded-l-[11px] border border-
|
|
5858
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-btn-solid-brand-text-default", children: label }),
|
|
5859
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "absolute inset-0 rounded-l-[11px] border border-btn-solid-brand-inner-border-default shadow-sm pointer-events-none" })
|
|
5821
5860
|
]
|
|
5822
5861
|
}
|
|
5823
5862
|
),
|
|
@@ -5837,10 +5876,10 @@ var SaveViewButton = React41.forwardRef(
|
|
|
5837
5876
|
{
|
|
5838
5877
|
icon: import_icons27.faChevronDownOutline,
|
|
5839
5878
|
size: "sm",
|
|
5840
|
-
className: "text-
|
|
5879
|
+
className: "text-btn-solid-brand-text-default"
|
|
5841
5880
|
}
|
|
5842
5881
|
),
|
|
5843
|
-
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "absolute inset-0 rounded-r-[11px] border border-
|
|
5882
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "absolute inset-0 rounded-r-[11px] border border-btn-solid-brand-inner-border-default shadow-sm pointer-events-none" })
|
|
5844
5883
|
]
|
|
5845
5884
|
}
|
|
5846
5885
|
)
|
|
@@ -5872,7 +5911,7 @@ var OperatorSelector = ({
|
|
|
5872
5911
|
align: "start",
|
|
5873
5912
|
className: cn(
|
|
5874
5913
|
"z-50 flex flex-col p-xs overflow-clip",
|
|
5875
|
-
"bg-
|
|
5914
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
5876
5915
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
5877
5916
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
5878
5917
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -5885,8 +5924,8 @@ var OperatorSelector = ({
|
|
|
5885
5924
|
onClick: () => onSelect(op),
|
|
5886
5925
|
className: cn(
|
|
5887
5926
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
5888
|
-
"hover:bg-
|
|
5889
|
-
op === activeOperator && "bg-
|
|
5927
|
+
"hover:bg-dropdown-item-hover",
|
|
5928
|
+
op === activeOperator && "bg-dropdown-item-hover"
|
|
5890
5929
|
),
|
|
5891
5930
|
children: [
|
|
5892
5931
|
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
@@ -5894,12 +5933,12 @@ var OperatorSelector = ({
|
|
|
5894
5933
|
{
|
|
5895
5934
|
className: cn(
|
|
5896
5935
|
"text-sm font-regular leading-sm",
|
|
5897
|
-
op === activeOperator ? "text-
|
|
5936
|
+
op === activeOperator ? "text-foreground font-medium" : "text-dropdown-item-text"
|
|
5898
5937
|
),
|
|
5899
5938
|
children: op
|
|
5900
5939
|
}
|
|
5901
5940
|
),
|
|
5902
|
-
isNoValueOperator(op) && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "ml-auto text-xs text-
|
|
5941
|
+
isNoValueOperator(op) && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "ml-auto text-xs text-muted-foreground", children: "instant" })
|
|
5903
5942
|
]
|
|
5904
5943
|
},
|
|
5905
5944
|
op
|
|
@@ -5922,15 +5961,15 @@ var OperatorList = ({
|
|
|
5922
5961
|
onClick: () => onSelect(op),
|
|
5923
5962
|
className: cn(
|
|
5924
5963
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
5925
|
-
"hover:bg-
|
|
5926
|
-
op === activeOperator && "bg-
|
|
5964
|
+
"hover:bg-dropdown-item-hover",
|
|
5965
|
+
op === activeOperator && "bg-dropdown-item-hover"
|
|
5927
5966
|
),
|
|
5928
5967
|
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
5929
5968
|
"span",
|
|
5930
5969
|
{
|
|
5931
5970
|
className: cn(
|
|
5932
5971
|
"text-sm font-regular leading-sm",
|
|
5933
|
-
op === activeOperator ? "text-
|
|
5972
|
+
op === activeOperator ? "text-foreground font-medium" : "text-dropdown-item-text"
|
|
5934
5973
|
),
|
|
5935
5974
|
children: op
|
|
5936
5975
|
}
|
|
@@ -5943,17 +5982,16 @@ OperatorList.displayName = "OperatorList";
|
|
|
5943
5982
|
|
|
5944
5983
|
// src/components/ui/filter/value-inputs/shared.ts
|
|
5945
5984
|
var inputClasses = [
|
|
5946
|
-
"w-full px-base py-sm rounded-base border border-
|
|
5947
|
-
"bg-
|
|
5948
|
-
"placeholder:text-
|
|
5949
|
-
"focus:outline-none focus:ring-2 focus:ring-
|
|
5985
|
+
"w-full px-base py-sm rounded-base border border-input",
|
|
5986
|
+
"bg-background text-sm font-regular leading-sm text-foreground",
|
|
5987
|
+
"placeholder:text-muted-foreground",
|
|
5988
|
+
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-0"
|
|
5950
5989
|
].join(" ");
|
|
5951
5990
|
var halfInputClasses = [
|
|
5952
|
-
"flex-1 px-base py-sm rounded-base border border-
|
|
5953
|
-
"bg-
|
|
5954
|
-
"focus:outline-none focus:ring-2 focus:ring-
|
|
5991
|
+
"flex-1 px-base py-sm rounded-base border border-input",
|
|
5992
|
+
"bg-background text-sm font-regular leading-sm text-foreground",
|
|
5993
|
+
"focus:outline-none focus:ring-2 focus:ring-ring"
|
|
5955
5994
|
].join(" ");
|
|
5956
|
-
var applyBtnClasses = "self-end px-md py-sm text-sm font-medium leading-sm text-[var(--color-primary-foreground)] bg-[var(--color-primary)] rounded-base cursor-pointer hover:opacity-90 transition-opacity";
|
|
5957
5995
|
|
|
5958
5996
|
// src/components/ui/filter/value-inputs/text-value-input.tsx
|
|
5959
5997
|
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
@@ -5966,7 +6004,7 @@ var TextValueInput = ({
|
|
|
5966
6004
|
const handleKeyDown = (e) => {
|
|
5967
6005
|
if (e.key === "Enter") onSubmit?.();
|
|
5968
6006
|
};
|
|
5969
|
-
return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: cn("flex flex-col gap-base p-
|
|
6007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: cn("flex flex-col gap-base p-xs", className), children: [
|
|
5970
6008
|
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
5971
6009
|
"input",
|
|
5972
6010
|
{
|
|
@@ -5979,7 +6017,7 @@ var TextValueInput = ({
|
|
|
5979
6017
|
className: inputClasses
|
|
5980
6018
|
}
|
|
5981
6019
|
),
|
|
5982
|
-
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
6020
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", className: "self-end", onClick: onSubmit, children: "Apply" })
|
|
5983
6021
|
] });
|
|
5984
6022
|
};
|
|
5985
6023
|
TextValueInput.displayName = "TextValueInput";
|
|
@@ -5995,7 +6033,7 @@ var NumberValueInput = ({
|
|
|
5995
6033
|
const handleKeyDown = (e) => {
|
|
5996
6034
|
if (e.key === "Enter") onSubmit?.();
|
|
5997
6035
|
};
|
|
5998
|
-
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: cn("flex flex-col gap-base p-
|
|
6036
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: cn("flex flex-col gap-base p-xs", className), children: [
|
|
5999
6037
|
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6000
6038
|
"input",
|
|
6001
6039
|
{
|
|
@@ -6008,7 +6046,7 @@ var NumberValueInput = ({
|
|
|
6008
6046
|
className: inputClasses
|
|
6009
6047
|
}
|
|
6010
6048
|
),
|
|
6011
|
-
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6049
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", className: "self-end", onClick: onSubmit, children: "Apply" })
|
|
6012
6050
|
] });
|
|
6013
6051
|
};
|
|
6014
6052
|
NumberValueInput.displayName = "NumberValueInput";
|
|
@@ -6019,7 +6057,7 @@ var NumberRangeValueInput = ({
|
|
|
6019
6057
|
className
|
|
6020
6058
|
}) => {
|
|
6021
6059
|
const rangeVal = value ?? [0, 0];
|
|
6022
|
-
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: cn("flex flex-col gap-base p-
|
|
6060
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: cn("flex flex-col gap-base p-xs", className), children: [
|
|
6023
6061
|
/* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex items-center gap-base", children: [
|
|
6024
6062
|
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6025
6063
|
"input",
|
|
@@ -6032,7 +6070,7 @@ var NumberRangeValueInput = ({
|
|
|
6032
6070
|
className: halfInputClasses
|
|
6033
6071
|
}
|
|
6034
6072
|
),
|
|
6035
|
-
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-sm text-
|
|
6073
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-sm text-muted-foreground", children: "and" }),
|
|
6036
6074
|
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6037
6075
|
"input",
|
|
6038
6076
|
{
|
|
@@ -6044,7 +6082,7 @@ var NumberRangeValueInput = ({
|
|
|
6044
6082
|
}
|
|
6045
6083
|
)
|
|
6046
6084
|
] }),
|
|
6047
|
-
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
6085
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", className: "self-end", onClick: onSubmit, children: "Apply" })
|
|
6048
6086
|
] });
|
|
6049
6087
|
};
|
|
6050
6088
|
NumberRangeValueInput.displayName = "NumberRangeValueInput";
|
|
@@ -6600,7 +6638,7 @@ var DateCalendarValueInput = ({
|
|
|
6600
6638
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(DatePickerCalendar, {}),
|
|
6601
6639
|
isRange && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(DatePickerFooter, { children: [
|
|
6602
6640
|
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", {}),
|
|
6603
|
-
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
6641
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", onClick: onSubmit, children: "Apply" })
|
|
6604
6642
|
] })
|
|
6605
6643
|
]
|
|
6606
6644
|
}
|
|
@@ -6612,8 +6650,8 @@ var PresetTagsValueInput = ({
|
|
|
6612
6650
|
onChange,
|
|
6613
6651
|
onSubmit,
|
|
6614
6652
|
className
|
|
6615
|
-
}) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: cn("flex flex-col gap-base p-
|
|
6616
|
-
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
6653
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: cn("flex flex-col gap-base p-xs max-w-[280px]", className), children: RELATIVE_DATE_PRESETS.map((group) => /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex flex-col gap-xs", children: [
|
|
6654
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground uppercase px-xs", children: group.group }),
|
|
6617
6655
|
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex flex-wrap gap-xs", children: group.options.map((preset) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
6618
6656
|
"button",
|
|
6619
6657
|
{
|
|
@@ -6624,7 +6662,7 @@ var PresetTagsValueInput = ({
|
|
|
6624
6662
|
},
|
|
6625
6663
|
className: cn(
|
|
6626
6664
|
"px-base py-2xs rounded-base border cursor-pointer transition-colors text-sm font-regular leading-sm",
|
|
6627
|
-
value === preset ? "border-
|
|
6665
|
+
value === preset ? "border-ring bg-primary text-primary-foreground" : "border-input bg-background text-foreground hover:bg-accent"
|
|
6628
6666
|
),
|
|
6629
6667
|
children: preset
|
|
6630
6668
|
},
|
|
@@ -6647,8 +6685,8 @@ var DynamicOptionRow = ({
|
|
|
6647
6685
|
onClick,
|
|
6648
6686
|
className: cn(
|
|
6649
6687
|
"flex items-start gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
6650
|
-
"hover:bg-
|
|
6651
|
-
selected && "bg-
|
|
6688
|
+
"hover:bg-dropdown-item-hover",
|
|
6689
|
+
selected && "bg-dropdown-item-hover"
|
|
6652
6690
|
),
|
|
6653
6691
|
children: [
|
|
6654
6692
|
multi && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
@@ -6656,7 +6694,7 @@ var DynamicOptionRow = ({
|
|
|
6656
6694
|
{
|
|
6657
6695
|
className: cn(
|
|
6658
6696
|
"mt-[2px] flex items-center justify-center size-4 rounded-xs border transition-colors shrink-0",
|
|
6659
|
-
selected ? "bg-
|
|
6697
|
+
selected ? "bg-primary border-primary" : "border-input bg-background"
|
|
6660
6698
|
),
|
|
6661
6699
|
children: selected && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
6662
6700
|
"path",
|
|
@@ -6671,8 +6709,8 @@ var DynamicOptionRow = ({
|
|
|
6671
6709
|
}
|
|
6672
6710
|
),
|
|
6673
6711
|
/* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("span", { className: "flex-1 flex flex-col gap-2xs min-w-0", children: [
|
|
6674
|
-
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
6675
|
-
option.description && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-xs font-regular leading-xs text-
|
|
6712
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-foreground truncate", children: option.label }),
|
|
6713
|
+
option.description && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-xs font-regular leading-xs text-muted-foreground", children: option.description })
|
|
6676
6714
|
] })
|
|
6677
6715
|
]
|
|
6678
6716
|
}
|
|
@@ -6693,7 +6731,7 @@ var SingleSelectValueInput = ({
|
|
|
6693
6731
|
"div",
|
|
6694
6732
|
{
|
|
6695
6733
|
className: cn(
|
|
6696
|
-
"flex flex-col gap-xs p-
|
|
6734
|
+
"flex flex-col gap-xs p-xs max-h-[280px] overflow-y-auto",
|
|
6697
6735
|
className
|
|
6698
6736
|
),
|
|
6699
6737
|
children: [
|
|
@@ -6714,10 +6752,10 @@ var SingleSelectValueInput = ({
|
|
|
6714
6752
|
onClick: () => pick(opt),
|
|
6715
6753
|
className: cn(
|
|
6716
6754
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
6717
|
-
"hover:bg-
|
|
6718
|
-
value === opt && "bg-
|
|
6755
|
+
"hover:bg-dropdown-item-hover",
|
|
6756
|
+
value === opt && "bg-dropdown-item-hover"
|
|
6719
6757
|
),
|
|
6720
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
6758
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-foreground", children: opt })
|
|
6721
6759
|
},
|
|
6722
6760
|
opt
|
|
6723
6761
|
))
|
|
@@ -6739,7 +6777,7 @@ var MultiSelectValueInput = ({
|
|
|
6739
6777
|
const next = selected.includes(v) ? selected.filter((s) => s !== v) : [...selected, v];
|
|
6740
6778
|
onChange(next);
|
|
6741
6779
|
};
|
|
6742
|
-
return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: cn("flex flex-col gap-xs p-
|
|
6780
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: cn("flex flex-col gap-xs p-xs", className), children: [
|
|
6743
6781
|
/* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex flex-col max-h-[240px] overflow-y-auto", children: [
|
|
6744
6782
|
dynamicOptions?.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
6745
6783
|
DynamicOptionRow,
|
|
@@ -6760,7 +6798,7 @@ var MultiSelectValueInput = ({
|
|
|
6760
6798
|
onClick: () => toggle(opt),
|
|
6761
6799
|
className: cn(
|
|
6762
6800
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
6763
|
-
"hover:bg-
|
|
6801
|
+
"hover:bg-dropdown-item-hover"
|
|
6764
6802
|
),
|
|
6765
6803
|
children: [
|
|
6766
6804
|
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
@@ -6768,7 +6806,7 @@ var MultiSelectValueInput = ({
|
|
|
6768
6806
|
{
|
|
6769
6807
|
className: cn(
|
|
6770
6808
|
"flex items-center justify-center size-4 rounded-xs border transition-colors",
|
|
6771
|
-
isSelected ? "bg-
|
|
6809
|
+
isSelected ? "bg-primary border-primary" : "border-input bg-background"
|
|
6772
6810
|
),
|
|
6773
6811
|
children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
6774
6812
|
"path",
|
|
@@ -6782,14 +6820,14 @@ var MultiSelectValueInput = ({
|
|
|
6782
6820
|
) })
|
|
6783
6821
|
}
|
|
6784
6822
|
),
|
|
6785
|
-
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
6823
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-regular leading-sm text-foreground", children: opt })
|
|
6786
6824
|
]
|
|
6787
6825
|
},
|
|
6788
6826
|
opt
|
|
6789
6827
|
);
|
|
6790
6828
|
})
|
|
6791
6829
|
] }),
|
|
6792
|
-
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
6830
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", className: "self-end", onClick: onSubmit, children: "Apply" })
|
|
6793
6831
|
] });
|
|
6794
6832
|
};
|
|
6795
6833
|
MultiSelectValueInput.displayName = "MultiSelectValueInput";
|
|
@@ -6805,7 +6843,7 @@ var RelationValueInput = ({
|
|
|
6805
6843
|
const handleKeyDown = (e) => {
|
|
6806
6844
|
if (e.key === "Enter") onSubmit?.();
|
|
6807
6845
|
};
|
|
6808
|
-
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: cn("flex flex-col gap-base p-
|
|
6846
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: cn("flex flex-col gap-base p-xs", className), children: [
|
|
6809
6847
|
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
6810
6848
|
"input",
|
|
6811
6849
|
{
|
|
@@ -6818,7 +6856,7 @@ var RelationValueInput = ({
|
|
|
6818
6856
|
className: inputClasses
|
|
6819
6857
|
}
|
|
6820
6858
|
),
|
|
6821
|
-
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
6859
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Button, { appearance: "solid", intent: "brand", size: "sm", className: "self-end", onClick: onSubmit, children: "Apply" })
|
|
6822
6860
|
] });
|
|
6823
6861
|
};
|
|
6824
6862
|
RelationValueInput.displayName = "RelationValueInput";
|
|
@@ -6895,25 +6933,25 @@ var PopoverPrimitive6 = __toESM(require("@radix-ui/react-popover"));
|
|
|
6895
6933
|
var import_icons29 = require("@l3mpire/icons");
|
|
6896
6934
|
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
6897
6935
|
var AdvancedFilterFooter = ({ onClick, count }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_jsx_runtime50.Fragment, { children: [
|
|
6898
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-px bg-
|
|
6936
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-px bg-dropdown-border mx-xs" }),
|
|
6899
6937
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
|
|
6900
6938
|
"button",
|
|
6901
6939
|
{
|
|
6902
6940
|
type: "button",
|
|
6903
6941
|
onPointerDown: (e) => e.preventDefault(),
|
|
6904
6942
|
onClick,
|
|
6905
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
6943
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
6906
6944
|
children: [
|
|
6907
6945
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
6908
6946
|
import_icons29.Icon,
|
|
6909
6947
|
{
|
|
6910
6948
|
icon: import_icons29.faFilterOutline,
|
|
6911
6949
|
size: "sm",
|
|
6912
|
-
className: "shrink-0 text-
|
|
6950
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
6913
6951
|
}
|
|
6914
6952
|
),
|
|
6915
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-
|
|
6916
|
-
count > 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("span", { className: "text-xs font-regular leading-xs text-
|
|
6953
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-dropdown-item-text text-left truncate", children: "Advanced filter" }),
|
|
6954
|
+
count > 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("span", { className: "text-xs font-regular leading-xs text-muted-foreground", children: [
|
|
6917
6955
|
count,
|
|
6918
6956
|
" ",
|
|
6919
6957
|
count === 1 ? "rule" : "rules"
|
|
@@ -6995,7 +7033,7 @@ var PropertySelector = ({
|
|
|
6995
7033
|
onCloseAutoFocus: (e) => e.preventDefault(),
|
|
6996
7034
|
className: cn(
|
|
6997
7035
|
"z-50 flex flex-col gap-xs overflow-clip p-xs",
|
|
6998
|
-
"bg-
|
|
7036
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
6999
7037
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7000
7038
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
7001
7039
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -7005,13 +7043,13 @@ var PropertySelector = ({
|
|
|
7005
7043
|
activeGroup === null ? (
|
|
7006
7044
|
/* ── Level 1: Search + Categories ───────────────────────── */
|
|
7007
7045
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-col gap-xs", children: [
|
|
7008
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-base px-md py-base border border-
|
|
7046
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-base px-md py-base border border-input rounded-md", children: [
|
|
7009
7047
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7010
7048
|
import_icons29.Icon,
|
|
7011
7049
|
{
|
|
7012
7050
|
icon: import_icons29.faMagnifyingGlassOutline,
|
|
7013
7051
|
size: "sm",
|
|
7014
|
-
className: "shrink-0 text-
|
|
7052
|
+
className: "shrink-0 text-muted-foreground"
|
|
7015
7053
|
}
|
|
7016
7054
|
),
|
|
7017
7055
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
@@ -7022,7 +7060,7 @@ var PropertySelector = ({
|
|
|
7022
7060
|
onChange: (e) => setSearch(e.target.value),
|
|
7023
7061
|
placeholder: "Search...",
|
|
7024
7062
|
autoFocus: true,
|
|
7025
|
-
className: "flex-1 text-sm font-regular leading-sm text-
|
|
7063
|
+
className: "flex-1 text-sm font-regular leading-sm text-foreground bg-transparent outline-none placeholder:text-muted-foreground"
|
|
7026
7064
|
}
|
|
7027
7065
|
)
|
|
7028
7066
|
] }),
|
|
@@ -7036,18 +7074,18 @@ var PropertySelector = ({
|
|
|
7036
7074
|
onSelect(prop);
|
|
7037
7075
|
onOpenChange?.(false);
|
|
7038
7076
|
},
|
|
7039
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7077
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7040
7078
|
children: [
|
|
7041
7079
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7042
7080
|
import_icons29.Icon,
|
|
7043
7081
|
{
|
|
7044
7082
|
icon: prop.icon,
|
|
7045
7083
|
size: "sm",
|
|
7046
|
-
className: "shrink-0 text-
|
|
7084
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7047
7085
|
}
|
|
7048
7086
|
),
|
|
7049
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-
|
|
7050
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "text-xs font-regular leading-xs text-
|
|
7087
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-dropdown-item-text text-left truncate", children: prop.label }),
|
|
7088
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "text-xs font-regular leading-xs text-muted-foreground", children: prop.groupLabel })
|
|
7051
7089
|
]
|
|
7052
7090
|
},
|
|
7053
7091
|
prop.id
|
|
@@ -7063,31 +7101,31 @@ var PropertySelector = ({
|
|
|
7063
7101
|
setActiveGroup(g.group);
|
|
7064
7102
|
setSearch("");
|
|
7065
7103
|
},
|
|
7066
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7104
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7067
7105
|
children: [
|
|
7068
7106
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7069
7107
|
import_icons29.Icon,
|
|
7070
7108
|
{
|
|
7071
7109
|
icon: g.groupIcon,
|
|
7072
7110
|
size: "sm",
|
|
7073
|
-
className: "shrink-0 text-
|
|
7111
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7074
7112
|
}
|
|
7075
7113
|
),
|
|
7076
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-
|
|
7077
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
7114
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-dropdown-item-text text-left truncate", children: g.groupLabel }),
|
|
7115
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground", children: g.count }),
|
|
7078
7116
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7079
7117
|
import_icons29.Icon,
|
|
7080
7118
|
{
|
|
7081
7119
|
icon: import_icons29.faChevronRightOutline,
|
|
7082
7120
|
size: "xs",
|
|
7083
|
-
className: "shrink-0 text-
|
|
7121
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7084
7122
|
}
|
|
7085
7123
|
)
|
|
7086
7124
|
]
|
|
7087
7125
|
},
|
|
7088
7126
|
g.group
|
|
7089
7127
|
)),
|
|
7090
|
-
filteredGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "p-base text-sm text-
|
|
7128
|
+
filteredGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "p-base text-sm text-muted-foreground", children: "No results" })
|
|
7091
7129
|
] })
|
|
7092
7130
|
)
|
|
7093
7131
|
] })
|
|
@@ -7102,27 +7140,27 @@ var PropertySelector = ({
|
|
|
7102
7140
|
setActiveGroup(null);
|
|
7103
7141
|
setSearch("");
|
|
7104
7142
|
},
|
|
7105
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7143
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7106
7144
|
children: [
|
|
7107
7145
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7108
7146
|
import_icons29.Icon,
|
|
7109
7147
|
{
|
|
7110
7148
|
icon: import_icons29.faChevronLeftOutline,
|
|
7111
7149
|
size: "sm",
|
|
7112
|
-
className: "shrink-0 text-
|
|
7150
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7113
7151
|
}
|
|
7114
7152
|
),
|
|
7115
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-xs font-medium leading-xs text-
|
|
7153
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-xs font-medium leading-xs text-muted-foreground text-left truncate", children: activeGroupInfo?.groupLabel })
|
|
7116
7154
|
]
|
|
7117
7155
|
}
|
|
7118
7156
|
),
|
|
7119
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-base px-md py-base border border-
|
|
7157
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-base px-md py-base border border-input rounded-md", children: [
|
|
7120
7158
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7121
7159
|
import_icons29.Icon,
|
|
7122
7160
|
{
|
|
7123
7161
|
icon: import_icons29.faMagnifyingGlassOutline,
|
|
7124
7162
|
size: "sm",
|
|
7125
|
-
className: "shrink-0 text-
|
|
7163
|
+
className: "shrink-0 text-muted-foreground"
|
|
7126
7164
|
}
|
|
7127
7165
|
),
|
|
7128
7166
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
@@ -7133,7 +7171,7 @@ var PropertySelector = ({
|
|
|
7133
7171
|
onChange: (e) => setSearch(e.target.value),
|
|
7134
7172
|
placeholder: "Search...",
|
|
7135
7173
|
autoFocus: true,
|
|
7136
|
-
className: "flex-1 text-sm font-regular leading-sm text-
|
|
7174
|
+
className: "flex-1 text-sm font-regular leading-sm text-foreground bg-transparent outline-none placeholder:text-muted-foreground"
|
|
7137
7175
|
}
|
|
7138
7176
|
)
|
|
7139
7177
|
] }),
|
|
@@ -7146,22 +7184,22 @@ var PropertySelector = ({
|
|
|
7146
7184
|
onSelect(prop);
|
|
7147
7185
|
onOpenChange?.(false);
|
|
7148
7186
|
},
|
|
7149
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7187
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7150
7188
|
children: [
|
|
7151
7189
|
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
7152
7190
|
import_icons29.Icon,
|
|
7153
7191
|
{
|
|
7154
7192
|
icon: prop.icon,
|
|
7155
7193
|
size: "sm",
|
|
7156
|
-
className: "shrink-0 text-
|
|
7194
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7157
7195
|
}
|
|
7158
7196
|
),
|
|
7159
|
-
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-
|
|
7197
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "flex-1 text-sm font-regular leading-sm text-dropdown-item-text text-left truncate", children: prop.label })
|
|
7160
7198
|
]
|
|
7161
7199
|
},
|
|
7162
7200
|
prop.id
|
|
7163
7201
|
)),
|
|
7164
|
-
filteredProperties.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "p-base text-sm text-
|
|
7202
|
+
filteredProperties.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "p-base text-sm text-muted-foreground", children: "No results" })
|
|
7165
7203
|
] })
|
|
7166
7204
|
] })
|
|
7167
7205
|
),
|
|
@@ -7199,7 +7237,7 @@ var KebabMenu = ({
|
|
|
7199
7237
|
align: "end",
|
|
7200
7238
|
className: cn(
|
|
7201
7239
|
"z-50 flex flex-col p-xs overflow-clip",
|
|
7202
|
-
"bg-
|
|
7240
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7203
7241
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7204
7242
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
7205
7243
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -7214,21 +7252,21 @@ var KebabMenu = ({
|
|
|
7214
7252
|
onConvertToAdvanced();
|
|
7215
7253
|
onOpenChange?.(false);
|
|
7216
7254
|
},
|
|
7217
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7255
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7218
7256
|
children: [
|
|
7219
7257
|
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
7220
7258
|
import_icons30.Icon,
|
|
7221
7259
|
{
|
|
7222
7260
|
icon: import_icons30.faArrowRightOutline,
|
|
7223
7261
|
size: "sm",
|
|
7224
|
-
className: "shrink-0 text-
|
|
7262
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7225
7263
|
}
|
|
7226
7264
|
),
|
|
7227
|
-
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
7265
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "text-sm font-regular leading-sm text-dropdown-item-text", children: hasAdvancedFilters ? "Add to advanced filters" : "Convert to advanced" })
|
|
7228
7266
|
]
|
|
7229
7267
|
}
|
|
7230
7268
|
),
|
|
7231
|
-
onConvertToAdvanced && onDelete && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-px mx-base my-xs bg-
|
|
7269
|
+
onConvertToAdvanced && onDelete && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-px mx-base my-xs bg-border" }),
|
|
7232
7270
|
onDelete && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
|
|
7233
7271
|
"button",
|
|
7234
7272
|
{
|
|
@@ -7237,17 +7275,17 @@ var KebabMenu = ({
|
|
|
7237
7275
|
onDelete();
|
|
7238
7276
|
onOpenChange?.(false);
|
|
7239
7277
|
},
|
|
7240
|
-
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-
|
|
7278
|
+
className: "flex items-center gap-base p-base rounded-base cursor-pointer transition-colors hover:bg-dropdown-item-hover",
|
|
7241
7279
|
children: [
|
|
7242
7280
|
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
7243
7281
|
import_icons30.Icon,
|
|
7244
7282
|
{
|
|
7245
7283
|
icon: import_icons30.faTrashOutline,
|
|
7246
7284
|
size: "sm",
|
|
7247
|
-
className: "shrink-0 text-
|
|
7285
|
+
className: "shrink-0 text-destructive"
|
|
7248
7286
|
}
|
|
7249
7287
|
),
|
|
7250
|
-
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
7288
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "text-sm font-regular leading-sm text-destructive", children: "Delete filter" })
|
|
7251
7289
|
]
|
|
7252
7290
|
}
|
|
7253
7291
|
)
|
|
@@ -7315,29 +7353,29 @@ var FilterEditor = ({
|
|
|
7315
7353
|
align: "start",
|
|
7316
7354
|
className: cn(
|
|
7317
7355
|
"z-50 flex flex-col overflow-clip",
|
|
7318
|
-
"bg-
|
|
7356
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7319
7357
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7320
7358
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
7321
7359
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
7322
7360
|
"min-w-[240px]"
|
|
7323
7361
|
),
|
|
7324
7362
|
children: [
|
|
7325
|
-
/* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "flex items-center gap-base px-base pt-base pb-xs border-b border-
|
|
7363
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "flex items-center gap-base px-base pt-base pb-xs border-b border-border", children: [
|
|
7326
7364
|
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
7327
7365
|
import_icons31.Icon,
|
|
7328
7366
|
{
|
|
7329
7367
|
icon: propertyDef.icon,
|
|
7330
7368
|
size: "sm",
|
|
7331
|
-
className: "shrink-0 text-
|
|
7369
|
+
className: "shrink-0 text-dropdown-item-icon"
|
|
7332
7370
|
}
|
|
7333
7371
|
),
|
|
7334
|
-
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "text-sm font-medium leading-sm text-
|
|
7372
|
+
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "text-sm font-medium leading-sm text-foreground", children: propertyDef.label }),
|
|
7335
7373
|
localOperator && view === "value" && /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
|
|
7336
7374
|
"button",
|
|
7337
7375
|
{
|
|
7338
7376
|
type: "button",
|
|
7339
7377
|
onClick: () => setView("operator"),
|
|
7340
|
-
className: "ml-auto text-xs font-regular text-
|
|
7378
|
+
className: "ml-auto text-xs font-regular text-muted-foreground hover:text-foreground cursor-pointer transition-colors",
|
|
7341
7379
|
children: [
|
|
7342
7380
|
localOperator,
|
|
7343
7381
|
" \u25BE"
|
|
@@ -7391,7 +7429,7 @@ var SegmentPopover = ({
|
|
|
7391
7429
|
align,
|
|
7392
7430
|
className: cn(
|
|
7393
7431
|
"z-50 flex flex-col overflow-clip",
|
|
7394
|
-
"bg-
|
|
7432
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7395
7433
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7396
7434
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
7397
7435
|
"data-[side=bottom]:slide-in-from-top-2"
|
|
@@ -7598,10 +7636,10 @@ var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
|
7598
7636
|
var btnBase = [
|
|
7599
7637
|
"flex items-center justify-center",
|
|
7600
7638
|
"min-h-[32px] max-h-[32px]",
|
|
7601
|
-
"bg-gradient-to-t from-
|
|
7602
|
-
"border border-
|
|
7639
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default from-[10%] to-btn-outlined-neutral-bg-gradient-to-default",
|
|
7640
|
+
"border border-btn-outlined-neutral-border-default shadow-sm",
|
|
7603
7641
|
"cursor-pointer transition-colors",
|
|
7604
|
-
"hover:from-
|
|
7642
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover"
|
|
7605
7643
|
];
|
|
7606
7644
|
var AdvancedChip = React47.forwardRef(
|
|
7607
7645
|
({ className, count, onClear, onClick, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: cn("inline-flex items-center", className), children: [
|
|
@@ -7623,10 +7661,10 @@ var AdvancedChip = React47.forwardRef(
|
|
|
7623
7661
|
{
|
|
7624
7662
|
icon: import_icons32.faFilterOutline,
|
|
7625
7663
|
size: "sm",
|
|
7626
|
-
className: "shrink-0 text-
|
|
7664
|
+
className: "shrink-0 text-foreground"
|
|
7627
7665
|
}
|
|
7628
7666
|
),
|
|
7629
|
-
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-
|
|
7667
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-foreground", children: "Advanced filters" }),
|
|
7630
7668
|
count > 0 && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "flex items-center p-2xs rounded-xs bg-filter-chip-badge-bg", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "text-[10px] font-medium leading-2xs text-filter-chip-badge-text", children: count }) })
|
|
7631
7669
|
]
|
|
7632
7670
|
}
|
|
@@ -7645,7 +7683,7 @@ var AdvancedChip = React47.forwardRef(
|
|
|
7645
7683
|
"rounded-r-md -ml-px"
|
|
7646
7684
|
),
|
|
7647
7685
|
"aria-label": "Clear all advanced filters",
|
|
7648
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_icons32.Icon, { icon: import_icons32.faXmarkOutline, size: "sm", className: "text-
|
|
7686
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_icons32.Icon, { icon: import_icons32.faXmarkOutline, size: "sm", className: "text-foreground" })
|
|
7649
7687
|
}
|
|
7650
7688
|
)
|
|
7651
7689
|
] })
|
|
@@ -7660,7 +7698,7 @@ var import_icons36 = require("@l3mpire/icons");
|
|
|
7660
7698
|
// src/components/ui/filter/advanced-row.tsx
|
|
7661
7699
|
var React49 = __toESM(require("react"));
|
|
7662
7700
|
var PopoverPrimitive11 = __toESM(require("@radix-ui/react-popover"));
|
|
7663
|
-
var
|
|
7701
|
+
var TooltipPrimitive4 = __toESM(require("@radix-ui/react-tooltip"));
|
|
7664
7702
|
var import_icons34 = require("@l3mpire/icons");
|
|
7665
7703
|
|
|
7666
7704
|
// src/components/ui/filter/filter-node-actions.tsx
|
|
@@ -7698,14 +7736,14 @@ var FilterNodeActions = ({
|
|
|
7698
7736
|
"button",
|
|
7699
7737
|
{
|
|
7700
7738
|
type: "button",
|
|
7701
|
-
className: "shrink-0 flex items-center justify-center p-sm rounded-md cursor-pointer transition-colors hover:bg-
|
|
7739
|
+
className: "shrink-0 flex items-center justify-center p-sm rounded-md cursor-pointer transition-colors hover:bg-accent",
|
|
7702
7740
|
"aria-label": "More actions",
|
|
7703
7741
|
children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
7704
7742
|
import_icons33.Icon,
|
|
7705
7743
|
{
|
|
7706
7744
|
icon: import_icons33.faEllipsisOutline,
|
|
7707
7745
|
size: "sm",
|
|
7708
|
-
className: "text-
|
|
7746
|
+
className: "text-foreground"
|
|
7709
7747
|
}
|
|
7710
7748
|
)
|
|
7711
7749
|
}
|
|
@@ -7717,7 +7755,7 @@ var FilterNodeActions = ({
|
|
|
7717
7755
|
align: "end",
|
|
7718
7756
|
className: cn(
|
|
7719
7757
|
"z-50 flex flex-col p-xs overflow-clip",
|
|
7720
|
-
"bg-
|
|
7758
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7721
7759
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7722
7760
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
7723
7761
|
"min-w-[180px]"
|
|
@@ -7732,8 +7770,8 @@ var FilterNodeActions = ({
|
|
|
7732
7770
|
},
|
|
7733
7771
|
className: cn(
|
|
7734
7772
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
7735
|
-
"hover:bg-
|
|
7736
|
-
item.destructive && "text-
|
|
7773
|
+
"hover:bg-dropdown-item-hover",
|
|
7774
|
+
item.destructive && "text-destructive"
|
|
7737
7775
|
),
|
|
7738
7776
|
children: [
|
|
7739
7777
|
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
@@ -7743,7 +7781,7 @@ var FilterNodeActions = ({
|
|
|
7743
7781
|
size: "sm",
|
|
7744
7782
|
className: cn(
|
|
7745
7783
|
"shrink-0",
|
|
7746
|
-
item.destructive ? "text-
|
|
7784
|
+
item.destructive ? "text-destructive" : "text-dropdown-item-icon"
|
|
7747
7785
|
)
|
|
7748
7786
|
}
|
|
7749
7787
|
),
|
|
@@ -7752,7 +7790,7 @@ var FilterNodeActions = ({
|
|
|
7752
7790
|
{
|
|
7753
7791
|
className: cn(
|
|
7754
7792
|
"text-sm font-regular leading-sm",
|
|
7755
|
-
item.destructive ? "text-
|
|
7793
|
+
item.destructive ? "text-destructive" : "text-dropdown-item-text"
|
|
7756
7794
|
),
|
|
7757
7795
|
children: item.label
|
|
7758
7796
|
}
|
|
@@ -7772,10 +7810,10 @@ var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
|
7772
7810
|
var selectBtnStyle = [
|
|
7773
7811
|
"flex items-center gap-base",
|
|
7774
7812
|
"px-base py-sm",
|
|
7775
|
-
"bg-gradient-to-t from-
|
|
7776
|
-
"border border-
|
|
7813
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default to-btn-outlined-neutral-bg-gradient-to-default",
|
|
7814
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm",
|
|
7777
7815
|
"cursor-pointer transition-colors",
|
|
7778
|
-
"hover:from-
|
|
7816
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover"
|
|
7779
7817
|
];
|
|
7780
7818
|
var AdvancedRow = ({
|
|
7781
7819
|
connector,
|
|
@@ -7808,25 +7846,25 @@ var AdvancedRow = ({
|
|
|
7808
7846
|
const badgeCount = getBadgeCount(condition.value);
|
|
7809
7847
|
const hasValue = displayValue != null;
|
|
7810
7848
|
return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex items-center gap-base w-full min-w-0", children: [
|
|
7811
|
-
connector === "Where" ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
7812
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
7813
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
7814
|
-
|
|
7849
|
+
connector === "Where" ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground", children: "Where" }) }) : /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Provider, { delayDuration: 200, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(TooltipPrimitive4.Root, { children: [
|
|
7850
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground cursor-default", children: connector }) }),
|
|
7851
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
|
|
7852
|
+
TooltipPrimitive4.Content,
|
|
7815
7853
|
{
|
|
7816
7854
|
sideOffset: 4,
|
|
7817
7855
|
className: "z-50 px-base py-sm rounded-md shadow-lg bg-tooltip-default-bg text-tooltip-default-text text-sm font-regular leading-sm data-[state=delayed-open]:animate-[tooltip-in_150ms_ease-out] data-[state=closed]:animate-[tooltip-out_100ms_ease-in]",
|
|
7818
7856
|
children: [
|
|
7819
7857
|
'"Or" operator coming soon',
|
|
7820
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
7858
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Arrow, { className: "fill-tooltip-default-bg" })
|
|
7821
7859
|
]
|
|
7822
7860
|
}
|
|
7823
7861
|
) })
|
|
7824
7862
|
] }) }) }),
|
|
7825
7863
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(PopoverPrimitive11.Root, { open: propertyOpen, onOpenChange: setPropertyOpen, children: [
|
|
7826
7864
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PopoverPrimitive11.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("button", { type: "button", className: cn(selectBtnStyle, "min-w-0"), children: [
|
|
7827
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: propertyDef.icon, size: "sm", className: "shrink-0 text-
|
|
7828
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
7829
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: import_icons34.faChevronDownOutline, size: "xs", className: "shrink-0 text-
|
|
7865
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: propertyDef.icon, size: "sm", className: "shrink-0 text-muted-foreground" }),
|
|
7866
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-foreground whitespace-nowrap truncate", children: propertyDef.label }),
|
|
7867
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: import_icons34.faChevronDownOutline, size: "xs", className: "shrink-0 text-foreground" })
|
|
7830
7868
|
] }) }),
|
|
7831
7869
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PopoverPrimitive11.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
7832
7870
|
PopoverPrimitive11.Content,
|
|
@@ -7835,7 +7873,7 @@ var AdvancedRow = ({
|
|
|
7835
7873
|
align: "start",
|
|
7836
7874
|
className: cn(
|
|
7837
7875
|
"z-50 flex flex-col p-xs overflow-clip max-h-[300px] overflow-y-auto",
|
|
7838
|
-
"bg-
|
|
7876
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7839
7877
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7840
7878
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0",
|
|
7841
7879
|
"min-w-[200px]"
|
|
@@ -7850,12 +7888,12 @@ var AdvancedRow = ({
|
|
|
7850
7888
|
},
|
|
7851
7889
|
className: cn(
|
|
7852
7890
|
"flex items-center gap-base p-base rounded-base cursor-pointer transition-colors text-left",
|
|
7853
|
-
"hover:bg-
|
|
7854
|
-
p.id === condition.propertyId && "bg-
|
|
7891
|
+
"hover:bg-dropdown-item-hover",
|
|
7892
|
+
p.id === condition.propertyId && "bg-dropdown-item-hover"
|
|
7855
7893
|
),
|
|
7856
7894
|
children: [
|
|
7857
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: p.icon, size: "sm", className: "shrink-0 text-
|
|
7858
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
7895
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: p.icon, size: "sm", className: "shrink-0 text-dropdown-item-icon" }),
|
|
7896
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-dropdown-item-text truncate", children: p.label })
|
|
7859
7897
|
]
|
|
7860
7898
|
},
|
|
7861
7899
|
p.id
|
|
@@ -7865,8 +7903,8 @@ var AdvancedRow = ({
|
|
|
7865
7903
|
] }),
|
|
7866
7904
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(PopoverPrimitive11.Root, { open: operatorOpen, onOpenChange: setOperatorOpen, children: [
|
|
7867
7905
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PopoverPrimitive11.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("button", { type: "button", className: cn(selectBtnStyle, "min-w-0"), children: [
|
|
7868
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
7869
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: import_icons34.faChevronDownOutline, size: "xs", className: "shrink-0 text-
|
|
7906
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-sm font-regular leading-sm text-foreground whitespace-nowrap truncate text-left", children: condition.operator ?? "Select" }),
|
|
7907
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_icons34.Icon, { icon: import_icons34.faChevronDownOutline, size: "xs", className: "shrink-0 text-foreground" })
|
|
7870
7908
|
] }) }),
|
|
7871
7909
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PopoverPrimitive11.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
7872
7910
|
PopoverPrimitive11.Content,
|
|
@@ -7875,7 +7913,7 @@ var AdvancedRow = ({
|
|
|
7875
7913
|
align: "start",
|
|
7876
7914
|
className: cn(
|
|
7877
7915
|
"z-50 flex flex-col p-xs overflow-clip",
|
|
7878
|
-
"bg-
|
|
7916
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7879
7917
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7880
7918
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0",
|
|
7881
7919
|
"min-w-[160px]"
|
|
@@ -7906,10 +7944,10 @@ var AdvancedRow = ({
|
|
|
7906
7944
|
placeholder: "Enter value...",
|
|
7907
7945
|
className: cn(
|
|
7908
7946
|
"flex-1 min-w-[80px] px-base py-sm",
|
|
7909
|
-
"bg-
|
|
7910
|
-
"text-sm font-regular leading-sm text-
|
|
7911
|
-
"placeholder:text-
|
|
7912
|
-
"focus:outline-none focus:ring-2 focus:ring-
|
|
7947
|
+
"bg-background border border-input rounded-base",
|
|
7948
|
+
"text-sm font-regular leading-sm text-foreground",
|
|
7949
|
+
"placeholder:text-muted-foreground",
|
|
7950
|
+
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-0"
|
|
7913
7951
|
)
|
|
7914
7952
|
}
|
|
7915
7953
|
);
|
|
@@ -7932,7 +7970,7 @@ var AdvancedRow = ({
|
|
|
7932
7970
|
{
|
|
7933
7971
|
className: cn(
|
|
7934
7972
|
"text-sm font-regular leading-sm whitespace-nowrap truncate text-left",
|
|
7935
|
-
hasValue ? "text-
|
|
7973
|
+
hasValue ? "text-foreground" : "text-muted-foreground"
|
|
7936
7974
|
),
|
|
7937
7975
|
title: hasValue ? displayValue : void 0,
|
|
7938
7976
|
children: hasValue ? displayValue : "Select a value"
|
|
@@ -7943,7 +7981,7 @@ var AdvancedRow = ({
|
|
|
7943
7981
|
{
|
|
7944
7982
|
icon: import_icons34.faChevronDownOutline,
|
|
7945
7983
|
size: "xs",
|
|
7946
|
-
className: "shrink-0 text-
|
|
7984
|
+
className: "shrink-0 text-foreground"
|
|
7947
7985
|
}
|
|
7948
7986
|
)
|
|
7949
7987
|
]
|
|
@@ -7956,7 +7994,7 @@ var AdvancedRow = ({
|
|
|
7956
7994
|
align: "start",
|
|
7957
7995
|
className: cn(
|
|
7958
7996
|
"z-50 flex flex-col overflow-clip",
|
|
7959
|
-
"bg-
|
|
7997
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
7960
7998
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
7961
7999
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
7962
8000
|
),
|
|
@@ -8046,19 +8084,19 @@ function ValueTagRow({ tags }) {
|
|
|
8046
8084
|
),
|
|
8047
8085
|
/* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { ref: containerRef, className: "flex flex-1 items-center gap-xs overflow-hidden", children: [
|
|
8048
8086
|
tags.slice(0, visibleCount).map((t) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: tagChip, children: t }, t)),
|
|
8049
|
-
overflowCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8050
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8087
|
+
overflowCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Provider, { delayDuration: 200, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(TooltipPrimitive4.Root, { children: [
|
|
8088
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("span", { className: cn(tagChip, "cursor-default bg-filter-chip-badge-bg text-filter-chip-badge-text"), children: [
|
|
8051
8089
|
"+",
|
|
8052
8090
|
overflowCount
|
|
8053
8091
|
] }) }),
|
|
8054
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8055
|
-
|
|
8092
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
|
|
8093
|
+
TooltipPrimitive4.Content,
|
|
8056
8094
|
{
|
|
8057
8095
|
sideOffset: 4,
|
|
8058
8096
|
className: "z-50 px-base py-sm rounded-md shadow-lg bg-tooltip-default-bg text-tooltip-default-text text-xs font-regular leading-xs flex flex-col gap-xs data-[state=delayed-open]:animate-[tooltip-in_150ms_ease-out] data-[state=closed]:animate-[tooltip-out_100ms_ease-in]",
|
|
8059
8097
|
children: [
|
|
8060
8098
|
overflowTags.map((t) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { children: t }, t)),
|
|
8061
|
-
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8099
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive4.Arrow, { className: "fill-tooltip-default-bg" })
|
|
8062
8100
|
]
|
|
8063
8101
|
}
|
|
8064
8102
|
) })
|
|
@@ -8069,7 +8107,7 @@ function ValueTagRow({ tags }) {
|
|
|
8069
8107
|
|
|
8070
8108
|
// src/components/ui/filter/advanced-group.tsx
|
|
8071
8109
|
var React50 = __toESM(require("react"));
|
|
8072
|
-
var
|
|
8110
|
+
var TooltipPrimitive5 = __toESM(require("@radix-ui/react-tooltip"));
|
|
8073
8111
|
var import_icons35 = require("@l3mpire/icons");
|
|
8074
8112
|
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
8075
8113
|
var AdvancedGroup = ({
|
|
@@ -8084,21 +8122,21 @@ var AdvancedGroup = ({
|
|
|
8084
8122
|
}) => {
|
|
8085
8123
|
const [addOpen, setAddOpen] = React50.useState(false);
|
|
8086
8124
|
return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex items-start gap-base w-full min-w-0", children: [
|
|
8087
|
-
connector === "Where" ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end pt-base", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
8088
|
-
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
8089
|
-
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
8090
|
-
|
|
8125
|
+
connector === "Where" ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end pt-base", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground", children: "Where" }) }) : /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end pt-base", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(TooltipPrimitive5.Provider, { delayDuration: 200, children: /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(TooltipPrimitive5.Root, { children: [
|
|
8126
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(TooltipPrimitive5.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground cursor-default", children: connector }) }),
|
|
8127
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(TooltipPrimitive5.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
|
|
8128
|
+
TooltipPrimitive5.Content,
|
|
8091
8129
|
{
|
|
8092
8130
|
sideOffset: 4,
|
|
8093
8131
|
className: "z-50 px-base py-sm rounded-md shadow-lg bg-tooltip-default-bg text-tooltip-default-text text-sm font-regular leading-sm data-[state=delayed-open]:animate-[tooltip-in_150ms_ease-out] data-[state=closed]:animate-[tooltip-out_100ms_ease-in]",
|
|
8094
8132
|
children: [
|
|
8095
8133
|
'"Or" operator coming soon',
|
|
8096
|
-
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
8134
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(TooltipPrimitive5.Arrow, { className: "fill-tooltip-default-bg" })
|
|
8097
8135
|
]
|
|
8098
8136
|
}
|
|
8099
8137
|
) })
|
|
8100
8138
|
] }) }) }),
|
|
8101
|
-
/* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex-1 min-w-0 flex flex-col gap-base p-base border border-
|
|
8139
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex-1 min-w-0 flex flex-col gap-base p-base border border-border rounded-md bg-secondary", children: [
|
|
8102
8140
|
children,
|
|
8103
8141
|
onAddFilter && properties && /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
8104
8142
|
PropertySelector,
|
|
@@ -8114,7 +8152,7 @@ var AdvancedGroup = ({
|
|
|
8114
8152
|
"button",
|
|
8115
8153
|
{
|
|
8116
8154
|
type: "button",
|
|
8117
|
-
className: "flex items-center gap-sm px-base py-sm text-sm font-medium leading-sm text-
|
|
8155
|
+
className: "flex items-center gap-sm px-base py-sm text-sm font-medium leading-sm text-muted-foreground cursor-pointer transition-colors rounded-md hover:bg-accent hover:text-foreground w-fit",
|
|
8118
8156
|
children: [
|
|
8119
8157
|
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_icons35.Icon, { icon: import_icons35.faPlusOutline, size: "sm" }),
|
|
8120
8158
|
"Add filter"
|
|
@@ -8146,7 +8184,7 @@ var ghostBtn = [
|
|
|
8146
8184
|
"flex items-center gap-sm px-base py-sm",
|
|
8147
8185
|
"min-h-[32px]",
|
|
8148
8186
|
"cursor-pointer transition-colors text-sm font-medium leading-sm",
|
|
8149
|
-
"rounded-md hover:bg-
|
|
8187
|
+
"rounded-md hover:bg-accent"
|
|
8150
8188
|
];
|
|
8151
8189
|
var AdvancedPopover = ({
|
|
8152
8190
|
filters,
|
|
@@ -8307,7 +8345,7 @@ var AdvancedPopover = ({
|
|
|
8307
8345
|
onOpenAutoFocus: (e) => e.preventDefault(),
|
|
8308
8346
|
className: cn(
|
|
8309
8347
|
"z-50 flex flex-col",
|
|
8310
|
-
"bg-
|
|
8348
|
+
"bg-background rounded-md shadow-lg",
|
|
8311
8349
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
8312
8350
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
8313
8351
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -8323,7 +8361,7 @@ var AdvancedPopover = ({
|
|
|
8323
8361
|
onOpenChange: setDraftPickerOpen
|
|
8324
8362
|
}
|
|
8325
8363
|
) }),
|
|
8326
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex items-center justify-between p-base border-t border-
|
|
8364
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex items-center justify-between p-base border-t border-border", children: [
|
|
8327
8365
|
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex items-center gap-sm", children: [
|
|
8328
8366
|
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
8329
8367
|
PropertySelector,
|
|
@@ -8332,8 +8370,8 @@ var AdvancedPopover = ({
|
|
|
8332
8370
|
onSelect: handleAddFilter,
|
|
8333
8371
|
open: addSelectorOpen,
|
|
8334
8372
|
onOpenChange: setAddSelectorOpen,
|
|
8335
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("button", { type: "button", className: cn(ghostBtn, "text-
|
|
8336
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faPlusOutline, size: "sm", className: "text-
|
|
8373
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("button", { type: "button", className: cn(ghostBtn, "text-foreground"), children: [
|
|
8374
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faPlusOutline, size: "sm", className: "text-foreground" }),
|
|
8337
8375
|
"Add filter"
|
|
8338
8376
|
] })
|
|
8339
8377
|
}
|
|
@@ -8343,9 +8381,9 @@ var AdvancedPopover = ({
|
|
|
8343
8381
|
{
|
|
8344
8382
|
type: "button",
|
|
8345
8383
|
onClick: handleAddGroup,
|
|
8346
|
-
className: cn(ghostBtn, "text-
|
|
8384
|
+
className: cn(ghostBtn, "text-foreground"),
|
|
8347
8385
|
children: [
|
|
8348
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faPlusOutline, size: "sm", className: "text-
|
|
8386
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faPlusOutline, size: "sm", className: "text-foreground" }),
|
|
8349
8387
|
"Add filters group"
|
|
8350
8388
|
]
|
|
8351
8389
|
}
|
|
@@ -8356,9 +8394,9 @@ var AdvancedPopover = ({
|
|
|
8356
8394
|
{
|
|
8357
8395
|
type: "button",
|
|
8358
8396
|
onClick: handleClearAll,
|
|
8359
|
-
className: cn(ghostBtn, "text-
|
|
8397
|
+
className: cn(ghostBtn, "text-destructive"),
|
|
8360
8398
|
children: [
|
|
8361
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faXmarkOutline, size: "sm", className: "text-
|
|
8399
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_icons36.Icon, { icon: import_icons36.faXmarkOutline, size: "sm", className: "text-destructive" }),
|
|
8362
8400
|
"Clear filters"
|
|
8363
8401
|
]
|
|
8364
8402
|
}
|
|
@@ -8384,7 +8422,7 @@ var DraftRow = ({
|
|
|
8384
8422
|
onOpenChange?.(v);
|
|
8385
8423
|
};
|
|
8386
8424
|
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex items-center gap-base w-full min-w-0", children: [
|
|
8387
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
8425
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground", children: "Where" }) }),
|
|
8388
8426
|
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
8389
8427
|
PropertySelector,
|
|
8390
8428
|
{
|
|
@@ -8401,19 +8439,19 @@ var DraftRow = ({
|
|
|
8401
8439
|
type: "button",
|
|
8402
8440
|
className: cn(
|
|
8403
8441
|
"flex items-center gap-base px-base py-sm min-w-0",
|
|
8404
|
-
"bg-gradient-to-t from-
|
|
8405
|
-
"border border-
|
|
8442
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default to-btn-outlined-neutral-bg-gradient-to-default",
|
|
8443
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm",
|
|
8406
8444
|
"cursor-pointer transition-colors",
|
|
8407
|
-
"hover:from-
|
|
8445
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover"
|
|
8408
8446
|
),
|
|
8409
8447
|
children: [
|
|
8410
|
-
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
8448
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-sm font-regular leading-sm text-muted-foreground whitespace-nowrap", children: "Select property" }),
|
|
8411
8449
|
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
8412
8450
|
import_icons36.Icon,
|
|
8413
8451
|
{
|
|
8414
8452
|
icon: import_icons36.faChevronDownOutline,
|
|
8415
8453
|
size: "xs",
|
|
8416
|
-
className: "shrink-0 text-
|
|
8454
|
+
className: "shrink-0 text-foreground"
|
|
8417
8455
|
}
|
|
8418
8456
|
)
|
|
8419
8457
|
]
|
|
@@ -8427,14 +8465,14 @@ var DraftRow = ({
|
|
|
8427
8465
|
// src/components/ui/filter/summary-chip.tsx
|
|
8428
8466
|
var React52 = __toESM(require("react"));
|
|
8429
8467
|
var PopoverPrimitive13 = __toESM(require("@radix-ui/react-popover"));
|
|
8430
|
-
var
|
|
8468
|
+
var TooltipPrimitive6 = __toESM(require("@radix-ui/react-tooltip"));
|
|
8431
8469
|
var import_icons37 = require("@l3mpire/icons");
|
|
8432
8470
|
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
8433
8471
|
var ghostBtn2 = [
|
|
8434
8472
|
"flex items-center gap-sm px-base py-sm",
|
|
8435
8473
|
"min-h-[32px]",
|
|
8436
8474
|
"cursor-pointer transition-colors text-sm font-medium leading-sm",
|
|
8437
|
-
"rounded-md hover:bg-
|
|
8475
|
+
"rounded-md hover:bg-accent"
|
|
8438
8476
|
];
|
|
8439
8477
|
var SummaryChip = ({
|
|
8440
8478
|
count,
|
|
@@ -8595,30 +8633,30 @@ var SummaryChip = ({
|
|
|
8595
8633
|
className: cn(
|
|
8596
8634
|
"inline-flex items-center gap-sm px-base py-sm",
|
|
8597
8635
|
"min-h-[32px] max-h-[32px]",
|
|
8598
|
-
"bg-gradient-to-t from-
|
|
8599
|
-
"border border-
|
|
8636
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default from-[10%] to-btn-outlined-neutral-bg-gradient-to-default",
|
|
8637
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm",
|
|
8600
8638
|
"cursor-pointer transition-colors",
|
|
8601
|
-
"hover:from-
|
|
8639
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover",
|
|
8602
8640
|
className
|
|
8603
8641
|
),
|
|
8604
8642
|
children: [
|
|
8605
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faFilterOutline, size: "sm", className: "shrink-0 text-
|
|
8606
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-
|
|
8643
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faFilterOutline, size: "sm", className: "shrink-0 text-foreground" }),
|
|
8644
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-medium leading-sm whitespace-nowrap text-foreground", children: "Filters" }),
|
|
8607
8645
|
count > 0 && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "flex items-center p-2xs rounded-xs bg-filter-chip-badge-bg", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-[10px] font-medium leading-2xs text-filter-chip-badge-text", children: count }) })
|
|
8608
8646
|
]
|
|
8609
8647
|
}
|
|
8610
8648
|
);
|
|
8611
8649
|
const hasTooltip = tooltipContent && !open;
|
|
8612
|
-
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
8613
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
8614
|
-
hasTooltip && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
8615
|
-
|
|
8650
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipPrimitive6.Provider, { delayDuration: 300, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipPrimitive6.Root, { open: hasTooltip ? void 0 : false, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(PopoverPrimitive13.Root, { open, onOpenChange: setOpen, children: [
|
|
8651
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipPrimitive6.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(PopoverPrimitive13.Trigger, { asChild: true, children: trigger }) }),
|
|
8652
|
+
hasTooltip && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipPrimitive6.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
|
|
8653
|
+
TooltipPrimitive6.Content,
|
|
8616
8654
|
{
|
|
8617
8655
|
sideOffset: 4,
|
|
8618
8656
|
className: "z-50 px-base py-sm rounded-md shadow-lg bg-tooltip-default-bg text-tooltip-default-text text-sm font-regular leading-sm max-w-[320px] data-[state=delayed-open]:animate-[tooltip-in_150ms_ease-out] data-[state=closed]:animate-[tooltip-out_100ms_ease-in]",
|
|
8619
8657
|
children: [
|
|
8620
8658
|
tooltipContent,
|
|
8621
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
8659
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipPrimitive6.Arrow, { className: "fill-tooltip-default-bg" })
|
|
8622
8660
|
]
|
|
8623
8661
|
}
|
|
8624
8662
|
) }),
|
|
@@ -8632,7 +8670,7 @@ var SummaryChip = ({
|
|
|
8632
8670
|
onOpenAutoFocus: (e) => e.preventDefault(),
|
|
8633
8671
|
className: cn(
|
|
8634
8672
|
"z-50 flex flex-col overflow-clip",
|
|
8635
|
-
"bg-
|
|
8673
|
+
"bg-dropdown-bg border border-dropdown-border rounded-md shadow-lg",
|
|
8636
8674
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
8637
8675
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
8638
8676
|
"data-[side=bottom]:slide-in-from-top-2",
|
|
@@ -8648,7 +8686,7 @@ var SummaryChip = ({
|
|
|
8648
8686
|
onOpenChange: setDraftPickerOpen
|
|
8649
8687
|
}
|
|
8650
8688
|
) }),
|
|
8651
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center justify-between p-base border-t border-
|
|
8689
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center justify-between p-base border-t border-border", children: [
|
|
8652
8690
|
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center gap-sm", children: [
|
|
8653
8691
|
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
8654
8692
|
PropertySelector,
|
|
@@ -8657,14 +8695,14 @@ var SummaryChip = ({
|
|
|
8657
8695
|
onSelect: handleAddFilter,
|
|
8658
8696
|
open: addSelectorOpen,
|
|
8659
8697
|
onOpenChange: setAddSelectorOpen,
|
|
8660
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("button", { type: "button", className: cn(ghostBtn2, "text-
|
|
8661
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faPlusOutline, size: "sm", className: "text-
|
|
8698
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("button", { type: "button", className: cn(ghostBtn2, "text-foreground"), children: [
|
|
8699
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faPlusOutline, size: "sm", className: "text-foreground" }),
|
|
8662
8700
|
"Add filter"
|
|
8663
8701
|
] })
|
|
8664
8702
|
}
|
|
8665
8703
|
),
|
|
8666
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("button", { type: "button", onClick: handleAddGroup, className: cn(ghostBtn2, "text-
|
|
8667
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faPlusOutline, size: "sm", className: "text-
|
|
8704
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("button", { type: "button", onClick: handleAddGroup, className: cn(ghostBtn2, "text-foreground"), children: [
|
|
8705
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faPlusOutline, size: "sm", className: "text-foreground" }),
|
|
8668
8706
|
"Add filters group"
|
|
8669
8707
|
] })
|
|
8670
8708
|
] }),
|
|
@@ -8676,9 +8714,9 @@ var SummaryChip = ({
|
|
|
8676
8714
|
onClearAll();
|
|
8677
8715
|
setOpen(false);
|
|
8678
8716
|
},
|
|
8679
|
-
className: cn(ghostBtn2, "text-
|
|
8717
|
+
className: cn(ghostBtn2, "text-destructive"),
|
|
8680
8718
|
children: [
|
|
8681
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faXmarkOutline, size: "sm", className: "text-
|
|
8719
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faXmarkOutline, size: "sm", className: "text-destructive" }),
|
|
8682
8720
|
"Clear filters"
|
|
8683
8721
|
]
|
|
8684
8722
|
}
|
|
@@ -8699,7 +8737,7 @@ var DraftRow2 = ({ properties, onSelect, open: openProp, onOpenChange }) => {
|
|
|
8699
8737
|
onOpenChange?.(v);
|
|
8700
8738
|
};
|
|
8701
8739
|
return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center gap-base w-full min-w-0", children: [
|
|
8702
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-xs font-medium leading-xs text-
|
|
8740
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "shrink-0 w-[64px] flex items-center justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-xs font-medium leading-xs text-muted-foreground", children: "Where" }) }),
|
|
8703
8741
|
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(PropertySelector, { properties, onSelect: (p) => {
|
|
8704
8742
|
onSelect(p);
|
|
8705
8743
|
setOpen(false);
|
|
@@ -8709,13 +8747,13 @@ var DraftRow2 = ({ properties, onSelect, open: openProp, onOpenChange }) => {
|
|
|
8709
8747
|
type: "button",
|
|
8710
8748
|
className: cn(
|
|
8711
8749
|
"flex items-center gap-base px-base py-sm min-w-0",
|
|
8712
|
-
"bg-gradient-to-t from-
|
|
8713
|
-
"border border-
|
|
8714
|
-
"hover:from-
|
|
8750
|
+
"bg-gradient-to-t from-btn-outlined-neutral-bg-default to-btn-outlined-neutral-bg-gradient-to-default",
|
|
8751
|
+
"border border-btn-outlined-neutral-border-default rounded-md shadow-sm cursor-pointer transition-colors",
|
|
8752
|
+
"hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover"
|
|
8715
8753
|
),
|
|
8716
8754
|
children: [
|
|
8717
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-regular leading-sm text-
|
|
8718
|
-
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faChevronDownOutline, size: "xs", className: "shrink-0 text-
|
|
8755
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-regular leading-sm text-muted-foreground whitespace-nowrap", children: "Select property" }),
|
|
8756
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_icons37.Icon, { icon: import_icons37.faChevronDownOutline, size: "xs", className: "shrink-0 text-foreground" })
|
|
8719
8757
|
]
|
|
8720
8758
|
}
|
|
8721
8759
|
) })
|
|
@@ -8942,8 +8980,8 @@ var FilterSystem = ({
|
|
|
8942
8980
|
"button",
|
|
8943
8981
|
{
|
|
8944
8982
|
type: "button",
|
|
8945
|
-
className: "shrink-0 inline-flex items-center justify-center size-8 rounded-md border border-
|
|
8946
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_icons38.Icon, { icon: import_icons38.faPlusOutline, size: "sm", className: "text-
|
|
8983
|
+
className: "shrink-0 inline-flex items-center justify-center size-8 rounded-md border border-btn-outlined-neutral-border-default bg-gradient-to-t from-btn-outlined-neutral-bg-default from-[10%] to-btn-outlined-neutral-bg-gradient-to-default shadow-sm cursor-pointer transition-colors hover:from-btn-outlined-neutral-bg-hover hover:to-btn-outlined-neutral-bg-gradient-to-hover",
|
|
8984
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_icons38.Icon, { icon: import_icons38.faPlusOutline, size: "sm", className: "text-foreground" })
|
|
8947
8985
|
}
|
|
8948
8986
|
) : /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(FilterBarButton, {})
|
|
8949
8987
|
}
|