@fayz-ai/ui 0.6.6 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/chunk-75EFDLST.js +274 -0
- package/dist/chunk-75EFDLST.js.map +1 -0
- package/dist/{chunk-YB5ZJKNG.cjs → chunk-7PTRAWHO.cjs} +263 -225
- package/dist/chunk-7PTRAWHO.cjs.map +1 -0
- package/dist/{chunk-LO5QZO7F.js → chunk-COC5DDFG.js} +125 -20
- package/dist/chunk-COC5DDFG.js.map +1 -0
- package/dist/{chunk-MYZT2OG7.js → chunk-FY7OZNKU.js} +24 -68
- package/dist/chunk-FY7OZNKU.js.map +1 -0
- package/dist/chunk-H6OULCHF.cjs +81 -0
- package/dist/chunk-H6OULCHF.cjs.map +1 -0
- package/dist/{chunk-DJHS2XRW.cjs → chunk-HG5RH3B3.cjs} +161 -54
- package/dist/chunk-HG5RH3B3.cjs.map +1 -0
- package/dist/{chunk-5QFB6AIQ.cjs → chunk-NWPMNPGR.cjs} +40 -40
- package/dist/{chunk-5QFB6AIQ.cjs.map → chunk-NWPMNPGR.cjs.map} +1 -1
- package/dist/{chunk-D6SXPF4F.cjs → chunk-ODY3GZ3Y.cjs} +41 -87
- package/dist/chunk-ODY3GZ3Y.cjs.map +1 -0
- package/dist/{chunk-22J2RTMN.js → chunk-OTUH4K4B.js} +196 -150
- package/dist/chunk-OTUH4K4B.js.map +1 -0
- package/dist/chunk-OW73RZOU.cjs +313 -0
- package/dist/chunk-OW73RZOU.cjs.map +1 -0
- package/dist/{chunk-XLBGB7IW.js → chunk-W5O2X277.js} +4 -4
- package/dist/{chunk-XLBGB7IW.js.map → chunk-W5O2X277.js.map} +1 -1
- package/dist/chunk-YRVE4FOD.js +57 -0
- package/dist/chunk-YRVE4FOD.js.map +1 -0
- package/dist/dashboard/index.cjs +27 -27
- package/dist/dashboard/index.js +3 -3
- package/dist/index.cjs +195 -175
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -7
- package/dist/layout/ContentSplit.d.ts +32 -0
- package/dist/layout/ContentSplit.d.ts.map +1 -0
- package/dist/layout/Sidebar.d.ts.map +1 -1
- package/dist/layout/Topbar.d.ts.map +1 -1
- package/dist/layout/index.cjs +31 -23
- package/dist/layout/index.d.ts +1 -0
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +3 -3
- package/dist/primitives/index.cjs +126 -114
- package/dist/primitives/index.d.ts +2 -0
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js +4 -4
- package/dist/primitives/markdown-editor.d.ts +23 -0
- package/dist/primitives/markdown-editor.d.ts.map +1 -0
- package/dist/primitives/markdown.d.ts +9 -0
- package/dist/primitives/markdown.d.ts.map +1 -0
- package/package.json +9 -3
- package/src/index.ts +9 -0
- package/src/layout/ContentSplit.tsx +153 -0
- package/src/layout/Sidebar.tsx +39 -14
- package/src/layout/Topbar.tsx +2 -1
- package/src/layout/index.ts +6 -0
- package/src/primitives/dropdown.tsx +4 -4
- package/src/primitives/index.ts +2 -0
- package/src/primitives/markdown-editor.tsx +75 -0
- package/src/primitives/markdown.tsx +169 -0
- package/src/primitives/select.tsx +1 -1
- package/dist/chunk-22J2RTMN.js.map +0 -1
- package/dist/chunk-D6SXPF4F.cjs.map +0 -1
- package/dist/chunk-DJHS2XRW.cjs.map +0 -1
- package/dist/chunk-DNYVEOAX.js +0 -11
- package/dist/chunk-DNYVEOAX.js.map +0 -1
- package/dist/chunk-E526FHZ4.js +0 -169
- package/dist/chunk-E526FHZ4.js.map +0 -1
- package/dist/chunk-LO5QZO7F.js.map +0 -1
- package/dist/chunk-MYZT2OG7.js.map +0 -1
- package/dist/chunk-VVVZO2LE.cjs +0 -13
- package/dist/chunk-VVVZO2LE.cjs.map +0 -1
- package/dist/chunk-W4XXXJRW.cjs +0 -196
- package/dist/chunk-W4XXXJRW.cjs.map +0 -1
- package/dist/chunk-YB5ZJKNG.cjs.map +0 -1
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var reactSlot = require('@radix-ui/react-slot');
|
|
6
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
3
|
+
var chunkH6OULCHF_cjs = require('./chunk-H6OULCHF.cjs');
|
|
4
|
+
var React2 = require('react');
|
|
7
5
|
var jsxRuntime = require('react/jsx-runtime');
|
|
8
6
|
var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
|
|
9
7
|
var lucideReact = require('lucide-react');
|
|
@@ -27,56 +25,14 @@ function _interopNamespace(e) {
|
|
|
27
25
|
return Object.freeze(n);
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
var
|
|
28
|
+
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
31
29
|
var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
|
|
32
30
|
|
|
33
|
-
var
|
|
34
|
-
"inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-button text-sm font-semibold ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
35
|
-
{
|
|
36
|
-
variants: {
|
|
37
|
-
variant: {
|
|
38
|
-
// Polaris primary — near-black brand with the stronger primary bevel
|
|
39
|
-
default: "bg-primary text-primary-foreground border border-primary shadow-button-primary hover:bg-primary/90 active:shadow-button-inset",
|
|
40
|
-
destructive: "bg-destructive text-destructive-foreground border border-destructive shadow-button-primary hover:bg-destructive/90 active:shadow-button-inset",
|
|
41
|
-
// Default/secondary surface — white with hairline + bevel
|
|
42
|
-
outline: "border border-border bg-card text-foreground shadow-button hover:bg-muted active:shadow-button-inset",
|
|
43
|
-
secondary: "border border-border bg-card text-foreground shadow-button hover:bg-muted active:shadow-button-inset",
|
|
44
|
-
ghost: "hover:bg-muted hover:text-foreground",
|
|
45
|
-
link: "text-info underline-offset-4 hover:underline"
|
|
46
|
-
},
|
|
47
|
-
size: {
|
|
48
|
-
// Polaris button sizes: md 30px, sm 26px, lg 36px
|
|
49
|
-
default: "h-[30px] px-3 py-1",
|
|
50
|
-
sm: "h-[26px] rounded-button px-2.5 text-xs",
|
|
51
|
-
lg: "h-9 rounded-button px-4 text-sm",
|
|
52
|
-
icon: "h-[30px] w-[30px]"
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
defaultVariants: {
|
|
56
|
-
variant: "default",
|
|
57
|
-
size: "default"
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
);
|
|
61
|
-
var Button = React3__namespace.forwardRef(
|
|
62
|
-
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
63
|
-
const Comp = asChild ? reactSlot.Slot : "button";
|
|
64
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
65
|
-
Comp,
|
|
66
|
-
{
|
|
67
|
-
className: chunkVVVZO2LE_cjs.cn(buttonVariants({ variant, size, className })),
|
|
68
|
-
ref,
|
|
69
|
-
...props
|
|
70
|
-
}
|
|
71
|
-
);
|
|
72
|
-
}
|
|
73
|
-
);
|
|
74
|
-
Button.displayName = "Button";
|
|
75
|
-
var Card = React3__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
31
|
+
var Card = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
76
32
|
"div",
|
|
77
33
|
{
|
|
78
34
|
ref,
|
|
79
|
-
className:
|
|
35
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
80
36
|
"fayz-glass-surface rounded-card border bg-card text-card-foreground shadow-sm",
|
|
81
37
|
className
|
|
82
38
|
),
|
|
@@ -84,20 +40,20 @@ var Card = React3__namespace.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
84
40
|
}
|
|
85
41
|
));
|
|
86
42
|
Card.displayName = "Card";
|
|
87
|
-
var CardHeader =
|
|
43
|
+
var CardHeader = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
88
44
|
"div",
|
|
89
45
|
{
|
|
90
46
|
ref,
|
|
91
|
-
className:
|
|
47
|
+
className: chunkH6OULCHF_cjs.cn("flex flex-col space-y-1 p-4", className),
|
|
92
48
|
...props
|
|
93
49
|
}
|
|
94
50
|
));
|
|
95
51
|
CardHeader.displayName = "CardHeader";
|
|
96
|
-
var CardTitle =
|
|
52
|
+
var CardTitle = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
97
53
|
"h3",
|
|
98
54
|
{
|
|
99
55
|
ref,
|
|
100
|
-
className:
|
|
56
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
101
57
|
"text-sm font-semibold leading-tight tracking-tight",
|
|
102
58
|
className
|
|
103
59
|
),
|
|
@@ -105,22 +61,22 @@ var CardTitle = React3__namespace.forwardRef(({ className, ...props }, ref) => /
|
|
|
105
61
|
}
|
|
106
62
|
));
|
|
107
63
|
CardTitle.displayName = "CardTitle";
|
|
108
|
-
var CardDescription =
|
|
64
|
+
var CardDescription = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
109
65
|
"p",
|
|
110
66
|
{
|
|
111
67
|
ref,
|
|
112
|
-
className:
|
|
68
|
+
className: chunkH6OULCHF_cjs.cn("text-xs text-muted-foreground", className),
|
|
113
69
|
...props
|
|
114
70
|
}
|
|
115
71
|
));
|
|
116
72
|
CardDescription.displayName = "CardDescription";
|
|
117
|
-
var CardContent =
|
|
73
|
+
var CardContent = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: chunkH6OULCHF_cjs.cn("p-4 pt-0", className), ...props }));
|
|
118
74
|
CardContent.displayName = "CardContent";
|
|
119
|
-
var CardFooter =
|
|
75
|
+
var CardFooter = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
120
76
|
"div",
|
|
121
77
|
{
|
|
122
78
|
ref,
|
|
123
|
-
className:
|
|
79
|
+
className: chunkH6OULCHF_cjs.cn("flex items-center p-4 pt-0", className),
|
|
124
80
|
...props
|
|
125
81
|
}
|
|
126
82
|
));
|
|
@@ -131,12 +87,12 @@ var DropdownGroup = DropdownMenuPrimitive__namespace.Group;
|
|
|
131
87
|
var DropdownPortal = DropdownMenuPrimitive__namespace.Portal;
|
|
132
88
|
var DropdownSub = DropdownMenuPrimitive__namespace.Sub;
|
|
133
89
|
var DropdownRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
|
|
134
|
-
var DropdownSubTrigger =
|
|
90
|
+
var DropdownSubTrigger = React2__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
135
91
|
DropdownMenuPrimitive__namespace.SubTrigger,
|
|
136
92
|
{
|
|
137
93
|
ref,
|
|
138
|
-
className:
|
|
139
|
-
"flex cursor-default select-none items-center rounded-
|
|
94
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
95
|
+
"flex cursor-default select-none items-center rounded-button px-2 py-1.5 text-sm outline-none focus:bg-muted data-[state=open]:bg-muted",
|
|
140
96
|
inset && "pl-8",
|
|
141
97
|
className
|
|
142
98
|
),
|
|
@@ -148,11 +104,11 @@ var DropdownSubTrigger = React3__namespace.forwardRef(({ className, inset, child
|
|
|
148
104
|
}
|
|
149
105
|
));
|
|
150
106
|
DropdownSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
|
|
151
|
-
var DropdownSubContent =
|
|
107
|
+
var DropdownSubContent = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
152
108
|
DropdownMenuPrimitive__namespace.SubContent,
|
|
153
109
|
{
|
|
154
110
|
ref,
|
|
155
|
-
className:
|
|
111
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
156
112
|
"fayz-glass-surface z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
157
113
|
className
|
|
158
114
|
),
|
|
@@ -160,12 +116,12 @@ var DropdownSubContent = React3__namespace.forwardRef(({ className, ...props },
|
|
|
160
116
|
}
|
|
161
117
|
));
|
|
162
118
|
DropdownSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
|
|
163
|
-
var DropdownContent =
|
|
119
|
+
var DropdownContent = React2__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
164
120
|
DropdownMenuPrimitive__namespace.Content,
|
|
165
121
|
{
|
|
166
122
|
ref,
|
|
167
123
|
sideOffset,
|
|
168
|
-
className:
|
|
124
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
169
125
|
"fayz-glass-surface z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
170
126
|
className
|
|
171
127
|
),
|
|
@@ -173,12 +129,12 @@ var DropdownContent = React3__namespace.forwardRef(({ className, sideOffset = 4,
|
|
|
173
129
|
}
|
|
174
130
|
) }));
|
|
175
131
|
DropdownContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
|
|
176
|
-
var DropdownItem =
|
|
132
|
+
var DropdownItem = React2__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
177
133
|
DropdownMenuPrimitive__namespace.Item,
|
|
178
134
|
{
|
|
179
135
|
ref,
|
|
180
|
-
className:
|
|
181
|
-
"relative flex cursor-default select-none items-center rounded-
|
|
136
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
137
|
+
"relative flex cursor-default select-none items-center rounded-button px-2 py-1.5 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
182
138
|
inset && "pl-8",
|
|
183
139
|
className
|
|
184
140
|
),
|
|
@@ -186,12 +142,12 @@ var DropdownItem = React3__namespace.forwardRef(({ className, inset, ...props },
|
|
|
186
142
|
}
|
|
187
143
|
));
|
|
188
144
|
DropdownItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
|
|
189
|
-
var DropdownCheckboxItem =
|
|
145
|
+
var DropdownCheckboxItem = React2__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
190
146
|
DropdownMenuPrimitive__namespace.CheckboxItem,
|
|
191
147
|
{
|
|
192
148
|
ref,
|
|
193
|
-
className:
|
|
194
|
-
"relative flex cursor-default select-none items-center rounded-
|
|
149
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
150
|
+
"relative flex cursor-default select-none items-center rounded-button py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
195
151
|
className
|
|
196
152
|
),
|
|
197
153
|
checked,
|
|
@@ -203,12 +159,12 @@ var DropdownCheckboxItem = React3__namespace.forwardRef(({ className, children,
|
|
|
203
159
|
}
|
|
204
160
|
));
|
|
205
161
|
DropdownCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
|
|
206
|
-
var DropdownRadioItem =
|
|
162
|
+
var DropdownRadioItem = React2__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
207
163
|
DropdownMenuPrimitive__namespace.RadioItem,
|
|
208
164
|
{
|
|
209
165
|
ref,
|
|
210
|
-
className:
|
|
211
|
-
"relative flex cursor-default select-none items-center rounded-
|
|
166
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
167
|
+
"relative flex cursor-default select-none items-center rounded-button py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
212
168
|
className
|
|
213
169
|
),
|
|
214
170
|
...props,
|
|
@@ -219,11 +175,11 @@ var DropdownRadioItem = React3__namespace.forwardRef(({ className, children, ...
|
|
|
219
175
|
}
|
|
220
176
|
));
|
|
221
177
|
DropdownRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
|
|
222
|
-
var DropdownLabel =
|
|
178
|
+
var DropdownLabel = React2__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
223
179
|
DropdownMenuPrimitive__namespace.Label,
|
|
224
180
|
{
|
|
225
181
|
ref,
|
|
226
|
-
className:
|
|
182
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
227
183
|
"px-2 py-1.5 text-sm font-semibold",
|
|
228
184
|
inset && "pl-8",
|
|
229
185
|
className
|
|
@@ -232,11 +188,11 @@ var DropdownLabel = React3__namespace.forwardRef(({ className, inset, ...props }
|
|
|
232
188
|
}
|
|
233
189
|
));
|
|
234
190
|
DropdownLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
|
|
235
|
-
var DropdownSeparator =
|
|
191
|
+
var DropdownSeparator = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
236
192
|
DropdownMenuPrimitive__namespace.Separator,
|
|
237
193
|
{
|
|
238
194
|
ref,
|
|
239
|
-
className:
|
|
195
|
+
className: chunkH6OULCHF_cjs.cn("-mx-1 my-1 h-px bg-muted", className),
|
|
240
196
|
...props
|
|
241
197
|
}
|
|
242
198
|
));
|
|
@@ -248,7 +204,7 @@ var DropdownShortcut = ({
|
|
|
248
204
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
249
205
|
"span",
|
|
250
206
|
{
|
|
251
|
-
className:
|
|
207
|
+
className: chunkH6OULCHF_cjs.cn("ml-auto text-xs tracking-widest opacity-60", className),
|
|
252
208
|
...props
|
|
253
209
|
}
|
|
254
210
|
);
|
|
@@ -271,7 +227,7 @@ function DataTable({
|
|
|
271
227
|
const tdCls = compact ? "px-3 py-1.5 align-middle text-xs" : "px-4 py-3 align-middle";
|
|
272
228
|
const tableCls = compact ? "w-full text-xs min-w-max" : "w-full text-sm min-w-max";
|
|
273
229
|
const rowHoverCls = isCard ? "hover:bg-muted/30" : "hover:bg-muted/20";
|
|
274
|
-
const [sorting, setSorting] =
|
|
230
|
+
const [sorting, setSorting] = React2__namespace.useState([]);
|
|
275
231
|
const table = reactTable.useReactTable({
|
|
276
232
|
data,
|
|
277
233
|
columns,
|
|
@@ -311,7 +267,7 @@ function DataTable({
|
|
|
311
267
|
/* @__PURE__ */ jsxRuntime.jsx("tbody", { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
312
268
|
"tr",
|
|
313
269
|
{
|
|
314
|
-
className:
|
|
270
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
315
271
|
`border-b last:border-0 transition-colors ${rowHoverCls}`,
|
|
316
272
|
onRowClick && "cursor-pointer"
|
|
317
273
|
),
|
|
@@ -340,7 +296,7 @@ function SegmentedControl({
|
|
|
340
296
|
{
|
|
341
297
|
role: "tablist",
|
|
342
298
|
"aria-label": rest["aria-label"],
|
|
343
|
-
className:
|
|
299
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
344
300
|
"inline-flex items-center rounded-button border border-border bg-card p-0.5 shadow-button",
|
|
345
301
|
SIZE[size].container,
|
|
346
302
|
className
|
|
@@ -354,7 +310,7 @@ function SegmentedControl({
|
|
|
354
310
|
role: "tab",
|
|
355
311
|
"aria-selected": active,
|
|
356
312
|
onClick: () => onChange(item.value),
|
|
357
|
-
className:
|
|
313
|
+
className: chunkH6OULCHF_cjs.cn(
|
|
358
314
|
"flex h-full items-center rounded-button font-semibold transition-colors",
|
|
359
315
|
SIZE[size].segment,
|
|
360
316
|
active ? "bg-foreground text-background" : "text-muted-foreground hover:bg-muted/60"
|
|
@@ -368,7 +324,6 @@ function SegmentedControl({
|
|
|
368
324
|
);
|
|
369
325
|
}
|
|
370
326
|
|
|
371
|
-
exports.Button = Button;
|
|
372
327
|
exports.Card = Card;
|
|
373
328
|
exports.CardContent = CardContent;
|
|
374
329
|
exports.CardDescription = CardDescription;
|
|
@@ -392,6 +347,5 @@ exports.DropdownSubContent = DropdownSubContent;
|
|
|
392
347
|
exports.DropdownSubTrigger = DropdownSubTrigger;
|
|
393
348
|
exports.DropdownTrigger = DropdownTrigger;
|
|
394
349
|
exports.SegmentedControl = SegmentedControl;
|
|
395
|
-
|
|
396
|
-
//# sourceMappingURL=chunk-
|
|
397
|
-
//# sourceMappingURL=chunk-D6SXPF4F.cjs.map
|
|
350
|
+
//# sourceMappingURL=chunk-ODY3GZ3Y.cjs.map
|
|
351
|
+
//# sourceMappingURL=chunk-ODY3GZ3Y.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/primitives/card.tsx","../src/primitives/dropdown.tsx","../src/primitives/data-table.tsx","../src/primitives/segmented-control.tsx"],"names":["React","jsx","cn","DropdownMenuPrimitive","React2","jsxs","ChevronRight","Check","Circle","React3","useReactTable","getCoreRowModel","getSortedRowModel","_","flexRender","ArrowUp","ArrowDown","ArrowUpDown"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAM,IAAA,GAAaA,6BAGjB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1BC,cAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWC,oBAAA;AAAA,MACT,+EAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,IAAA,CAAK,WAAA,GAAc,MAAA;AAEnB,IAAM,UAAA,GAAmBF,6BAGvB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1BC,cAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWC,oBAAA,CAAG,6BAAA,EAA+B,SAAS,CAAA;AAAA,IACrD,GAAG;AAAA;AACN,CACD;AACD,UAAA,CAAW,WAAA,GAAc,YAAA;AAEzB,IAAM,SAAA,GAAkBF,6BAGtB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1BC,cAAA;AAAA,EAAC,IAAA;AAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWC,oBAAA;AAAA,MACT,oDAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,SAAA,CAAU,WAAA,GAAc,WAAA;AAExB,IAAM,eAAA,GAAwBF,6BAG5B,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1BC,cAAA;AAAA,EAAC,GAAA;AAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWC,oBAAA,CAAG,+BAAA,EAAiC,SAAS,CAAA;AAAA,IACvD,GAAG;AAAA;AACN,CACD;AACD,eAAA,CAAgB,WAAA,GAAc,iBAAA;AAE9B,IAAM,cAAoBF,iBAAA,CAAA,UAAA,CAGxB,CAAC,EAAE,SAAA,EAAW,GAAG,OAAM,EAAG,GAAA,oCACzB,KAAA,EAAA,EAAI,GAAA,EAAU,WAAWE,oBAAA,CAAG,UAAA,EAAY,SAAS,CAAA,EAAI,GAAG,OAAO,CACjE;AACD,WAAA,CAAY,WAAA,GAAc,aAAA;AAE1B,IAAM,UAAA,GAAmBF,6BAGvB,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,qBAC1BC,cAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWC,oBAAA,CAAG,4BAAA,EAA8B,SAAS,CAAA;AAAA,IACpD,GAAG;AAAA;AACN,CACD;AACD,UAAA,CAAW,WAAA,GAAc,YAAA;ACtEzB,IAAM,QAAA,GAAiCC,gCAAA,CAAA;AAEvC,IAAM,eAAA,GAAwCA,gCAAA,CAAA;AAE9C,IAAM,aAAA,GAAsCA,gCAAA,CAAA;AAE5C,IAAM,cAAA,GAAuCA,gCAAA,CAAA;AAE7C,IAAM,WAAA,GAAoCA,gCAAA,CAAA;AAE1C,IAAM,kBAAA,GAA2CA,gCAAA,CAAA;AAEjD,IAAM,kBAAA,GAA2BC,iBAAA,CAAA,UAAA,CAK/B,CAAC,EAAE,SAAA,EAAW,OAAO,QAAA,EAAU,GAAG,KAAA,EAAM,EAAG,GAAA,qBAC3CC,eAAA;AAAA,EAAuBF,gCAAA,CAAA,UAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,wIAAA;AAAA,MACA,KAAA,IAAS,MAAA;AAAA,MACT;AAAA,KACF;AAAA,IACC,GAAG,KAAA;AAAA,IAEH,QAAA,EAAA;AAAA,MAAA,QAAA;AAAA,sBACDD,cAAAA,CAACK,wBAAA,EAAA,EAAa,SAAA,EAAU,iBAAA,EAAkB;AAAA;AAAA;AAC5C,CACD;AACD,kBAAA,CAAmB,cAAoCH,gCAAA,CAAA,UAAA,CAAW,WAAA;AAElE,IAAM,kBAAA,GAA2BC,6BAG/B,CAAC,EAAE,WAAW,GAAG,KAAA,EAAM,EAAG,GAAA,qBAC1BH,cAAAA;AAAA,EAAuBE,gCAAA,CAAA,UAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,0cAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,kBAAA,CAAmB,cAAoCC,gCAAA,CAAA,UAAA,CAAW,WAAA;AAElE,IAAM,eAAA,GAAwBC,iBAAA,CAAA,UAAA,CAG5B,CAAC,EAAE,WAAW,UAAA,GAAa,CAAA,EAAG,GAAG,KAAA,IAAS,GAAA,qBAC1CH,cAAAA,CAAuBE,gCAAA,CAAA,MAAA,EAAtB,EACC,QAAA,kBAAAF,cAAAA;AAAA,EAAuBE,gCAAA,CAAA,OAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,0cAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CAAA,EACF,CACD;AACD,eAAA,CAAgB,cAAoCC,gCAAA,CAAA,OAAA,CAAQ,WAAA;AAE5D,IAAM,YAAA,GAAqBC,iBAAA,CAAA,UAAA,CAKzB,CAAC,EAAE,SAAA,EAAW,OAAO,GAAG,KAAA,EAAM,EAAG,GAAA,qBACjCH,cAAAA;AAAA,EAAuBE,gCAAA,CAAA,IAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,uMAAA;AAAA,MACA,KAAA,IAAS,MAAA;AAAA,MACT;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,YAAA,CAAa,cAAoCC,gCAAA,CAAA,IAAA,CAAK,WAAA;AAEtD,IAAM,oBAAA,GAA6BC,iBAAA,CAAA,UAAA,CAGjC,CAAC,EAAE,SAAA,EAAW,UAAU,OAAA,EAAS,GAAG,KAAA,EAAM,EAAG,GAAA,qBAC7CC,eAAA;AAAA,EAAuBF,gCAAA,CAAA,YAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,4MAAA;AAAA,MACA;AAAA,KACF;AAAA,IACA,OAAA;AAAA,IACC,GAAG,KAAA;AAAA,IAEJ,QAAA,EAAA;AAAA,sBAAAD,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,8DAAA,EACd,0BAAAA,cAAAA,CAAuBE,gCAAA,CAAA,aAAA,EAAtB,EACC,QAAA,kBAAAF,cAAAA,CAACM,iBAAA,EAAA,EAAM,SAAA,EAAU,SAAA,EAAU,GAC7B,CAAA,EACF,CAAA;AAAA,MACC;AAAA;AAAA;AACH,CACD;AACD,oBAAA,CAAqB,cACGJ,gCAAA,CAAA,YAAA,CAAa,WAAA;AAErC,IAAM,iBAAA,GAA0BC,6BAG9B,CAAC,EAAE,WAAW,QAAA,EAAU,GAAG,KAAA,EAAM,EAAG,GAAA,qBACpCC,eAAA;AAAA,EAAuBF,gCAAA,CAAA,SAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,4MAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG,KAAA;AAAA,IAEJ,QAAA,EAAA;AAAA,sBAAAD,cAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,8DAAA,EACd,0BAAAA,cAAAA,CAAuBE,gCAAA,CAAA,aAAA,EAAtB,EACC,QAAA,kBAAAF,cAAAA,CAACO,kBAAA,EAAA,EAAO,SAAA,EAAU,sBAAA,EAAuB,GAC3C,CAAA,EACF,CAAA;AAAA,MACC;AAAA;AAAA;AACH,CACD;AACD,iBAAA,CAAkB,cAAoCL,gCAAA,CAAA,SAAA,CAAU,WAAA;AAEhE,IAAM,aAAA,GAAsBC,iBAAA,CAAA,UAAA,CAK1B,CAAC,EAAE,SAAA,EAAW,OAAO,GAAG,KAAA,EAAM,EAAG,GAAA,qBACjCH,cAAAA;AAAA,EAAuBE,gCAAA,CAAA,KAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA;AAAA,MACT,mCAAA;AAAA,MACA,KAAA,IAAS,MAAA;AAAA,MACT;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,aAAA,CAAc,cAAoCC,gCAAA,CAAA,KAAA,CAAM,WAAA;AAExD,IAAM,iBAAA,GAA0BC,6BAG9B,CAAC,EAAE,WAAW,GAAG,KAAA,EAAM,EAAG,GAAA,qBAC1BH,cAAAA;AAAA,EAAuBE,gCAAA,CAAA,SAAA;AAAA,EAAtB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAWD,oBAAA,CAAG,0BAAA,EAA4B,SAAS,CAAA;AAAA,IAClD,GAAG;AAAA;AACN,CACD;AACD,iBAAA,CAAkB,cAAoCC,gCAAA,CAAA,SAAA,CAAU,WAAA;AAEhE,IAAM,mBAAmB,CAAC;AAAA,EACxB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,KAA6C;AAC3C,EAAA,uBACEF,cAAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWC,oBAAA,CAAG,4CAAA,EAA8C,SAAS,CAAA;AAAA,MACpE,GAAG;AAAA;AAAA,GACN;AAEJ;AACA,gBAAA,CAAiB,WAAA,GAAc,kBAAA;ACvJ/B,SAAS,SAAA,CAAyB;AAAA,EAChC,OAAA;AAAA,EACA,IAAA;AAAA,EACA,OAAA,GAAU,KAAA;AAAA,EACV,YAAA,GAAe,CAAA;AAAA,EACf,YAAA,GAAe,aAAA;AAAA,EACf,UAAA;AAAA,EACA,OAAA,GAAU,MAAA;AAAA,EACV,OAAA,GAAU;AACZ,CAAA,EAAkC;AAChC,EAAA,MAAM,SAAS,OAAA,KAAY,MAAA;AAC3B,EAAA,MAAM,UAAA,GAAa,SAAS,qDAAA,GAAwD,mCAAA;AACpF,EAAA,MAAM,SAAA,GAAY,SAAS,sBAAA,GAAyB,sBAAA;AACpD,EAAA,MAAM,KAAA,GAAQ,UAAU,qEAAA,GAAwE,yDAAA;AAChG,EAAA,MAAM,KAAA,GAAQ,UAAU,kCAAA,GAAqC,wBAAA;AAC7D,EAAA,MAAM,QAAA,GAAW,UAAU,0BAAA,GAA6B,0BAAA;AACxD,EAAA,MAAM,WAAA,GAAc,SAAS,mBAAA,GAAsB,mBAAA;AACnD,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAUO,iBAAA,CAAA,QAAA,CAAuB,EAAE,CAAA;AAE7D,EAAA,MAAM,QAAQC,wBAAA,CAAc;AAAA,IAC1B,IAAA;AAAA,IACA,OAAA;AAAA,IACA,iBAAiBC,0BAAA,EAAgB;AAAA,IACjC,mBAAmBC,4BAAA,EAAkB;AAAA,IACrC,eAAA,EAAiB,UAAA;AAAA,IACjB,KAAA,EAAO,EAAE,OAAA;AAAQ,GAClB,CAAA;AAED,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,uBACEX,eAAC,KAAA,EAAA,EAAI,SAAA,EAAW,YACd,QAAA,kBAAAI,eAAAA,CAAC,OAAA,EAAA,EAAM,SAAA,EAAW,QAAA,EAChB,QAAA,EAAA;AAAA,sBAAAJ,cAAAA,CAAC,OAAA,EAAA,EACC,QAAA,kBAAAA,cAAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAW,SAAA,EACZ,QAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,qBACfA,eAAC,IAAA,EAAA,EAAW,SAAA,EAAW,KAAA,EACrB,QAAA,kBAAAA,cAAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,2CAAA,EAA4C,CAAA,EAAA,EADpD,CAET,CACD,CAAA,EACH,CAAA,EACF,CAAA;AAAA,sBACAA,cAAAA,CAAC,OAAA,EAAA,EACE,gBAAM,IAAA,CAAK,EAAE,QAAQ,YAAA,EAAc,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,qBAC5CA,cAAAA,CAAC,IAAA,EAAA,EAAW,WAAU,wBAAA,EACnB,QAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,CAACY,IAAG,CAAA,qBACfZ,eAAC,IAAA,EAAA,EAAW,SAAA,EAAW,OACrB,QAAA,kBAAAA,cAAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,+CAA8C,CAAA,EAAA,EADtD,CAET,CACD,CAAA,EAAA,EALM,CAMT,CACD,CAAA,EACH;AAAA,KAAA,EACF,CAAA,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACEA,eAAC,KAAA,EAAA,EAAI,SAAA,EAAW,YACd,QAAA,kBAAAI,eAAAA,CAAC,OAAA,EAAA,EAAM,SAAA,EAAW,QAAA,EAChB,QAAA,EAAA;AAAA,oBAAAJ,eAAC,OAAA,EAAA,EACE,QAAA,EAAA,KAAA,CAAM,eAAA,EAAgB,CAAE,IAAI,CAAC,WAAA,qBAC5BA,cAAAA,CAAC,QAAwB,SAAA,EAAW,SAAA,EACjC,sBAAY,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAA,KAAW;AACnC,MAAA,MAAM,MAAA,GAAS,MAAA,CAAO,MAAA,CAAO,WAAA,EAAY;AACzC,MAAA,uBACEA,cAAAA;AAAA,QAAC,IAAA;AAAA,QAAA;AAAA,UAEC,SAAA,EAAW,KAAA;AAAA,UAEV,iBAAO,aAAA,GAAgB,IAAA,GAAO,OAAO,MAAA,CAAO,UAAA,qBAC3CI,eAAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,iEAAA;AAAA,cACV,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,uBAAA,EAAwB;AAAA,cAE9C,QAAA,EAAA;AAAA,gBAAAS,qBAAA,CAAW,OAAO,MAAA,CAAO,SAAA,CAAU,MAAA,EAAQ,MAAA,CAAO,YAAY,CAAA;AAAA,gBAC9D,MAAA,KAAW,wBACVb,cAAAA,CAACc,uBAAQ,SAAA,EAAU,SAAA,EAAU,IAC3B,MAAA,KAAW,MAAA,mBACbd,cAAAA,CAACe,qBAAA,EAAA,EAAU,WAAU,SAAA,EAAU,CAAA,mBAE/Bf,cAAAA,CAACgB,uBAAA,EAAA,EAAY,WAAU,oBAAA,EAAqB;AAAA;AAAA;AAAA,WAEhD,GAEAH,sBAAW,MAAA,CAAO,MAAA,CAAO,UAAU,MAAA,EAAQ,MAAA,CAAO,YAAY;AAAA,SAAA;AAAA,QAlB3D,MAAA,CAAO;AAAA,OAoBd;AAAA,IAEJ,CAAC,CAAA,EAAA,EA3BM,WAAA,CAAY,EA4BrB,CACD,CAAA,EACH,CAAA;AAAA,oBACAb,cAAAA,CAAC,OAAA,EAAA,EACE,QAAA,EAAA,KAAA,CAAM,aAAY,CAAE,IAAA,EAAM,MAAA,GACzB,KAAA,CAAM,aAAY,CAAE,IAAA,CAAK,GAAA,CAAI,CAAC,wBAC5BA,cAAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QAEC,SAAA,EAAWC,oBAAA;AAAA,UACT,4CAA4C,WAAW,CAAA,CAAA;AAAA,UACvD,UAAA,IAAc;AAAA,SAChB;AAAA,QACA,OAAA,EAAS,MAAM,UAAA,GAAa,GAAA,CAAI,QAAQ,CAAA;AAAA,QAEvC,QAAA,EAAA,GAAA,CAAI,iBAAgB,CAAE,GAAA,CAAI,CAAC,IAAA,qBAC1BD,cAAAA,CAAC,IAAA,EAAA,EAAiB,SAAA,EAAW,KAAA,EAC1B,gCAAW,IAAA,CAAK,MAAA,CAAO,UAAU,IAAA,EAAM,IAAA,CAAK,YAAY,CAAA,EAAA,EADlD,IAAA,CAAK,EAEd,CACD;AAAA,OAAA;AAAA,MAXI,GAAA,CAAI;AAAA,KAaZ,CAAA,mBAEDA,cAAAA,CAAC,QACC,QAAA,kBAAAA,cAAAA,CAAC,IAAA,EAAA,EAAG,OAAA,EAAS,QAAQ,MAAA,EAAQ,SAAA,EAAU,wCAAA,EACpC,QAAA,EAAA,YAAA,EACH,GACF,CAAA,EAEJ;AAAA,GAAA,EACF,CAAA,EACF,CAAA;AAEJ;ACjIA,IAAM,IAAA,GAAoE;AAAA,EACxE,EAAA,EAAI,EAAE,SAAA,EAAW,UAAA,EAAY,SAAS,gBAAA,EAAiB;AAAA,EACvD,EAAA,EAAI,EAAE,SAAA,EAAW,UAAA,EAAY,SAAS,cAAA;AACxC,CAAA;AAQO,SAAS,gBAAA,CAA4C;AAAA,EAC1D,OAAA;AAAA,EAAS,KAAA;AAAA,EAAO,QAAA;AAAA,EAAU,IAAA,GAAO,IAAA;AAAA,EAAM,SAAA;AAAA,EAAW,GAAG;AACvD,CAAA,EAA6B;AAC3B,EAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAO,OAAO,CAAA,KAAM,QAAA,GAAW,EAAE,KAAA,EAAO,CAAA,EAAG,KAAA,EAAO,CAAA,KAAM,CAAE,CAAA;AACrF,EAAA,uBACEA,cAAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,SAAA;AAAA,MACL,YAAA,EAAY,KAAK,YAAY,CAAA;AAAA,MAC7B,SAAA,EAAWC,oBAAA;AAAA,QACT,0FAAA;AAAA,QACA,IAAA,CAAK,IAAI,CAAA,CAAE,SAAA;AAAA,QACX;AAAA,OACF;AAAA,MAEC,QAAA,EAAA,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,KAAS;AACnB,QAAA,MAAM,MAAA,GAAS,KAAK,KAAA,KAAU,KAAA;AAC9B,QAAA,uBACED,cAAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YAEC,IAAA,EAAK,QAAA;AAAA,YACL,IAAA,EAAK,KAAA;AAAA,YACL,eAAA,EAAe,MAAA;AAAA,YACf,OAAA,EAAS,MAAM,QAAA,CAAS,IAAA,CAAK,KAAK,CAAA;AAAA,YAClC,SAAA,EAAWC,oBAAA;AAAA,cACT,yEAAA;AAAA,cACA,IAAA,CAAK,IAAI,CAAA,CAAE,OAAA;AAAA,cACX,SAAS,+BAAA,GAAkC;AAAA,aAC7C;AAAA,YAEC,QAAA,EAAA,IAAA,CAAK;AAAA,WAAA;AAAA,UAXD,IAAA,CAAK;AAAA,SAYZ;AAAA,MAEJ,CAAC;AAAA;AAAA,GACH;AAEJ","file":"chunk-ODY3GZ3Y.cjs","sourcesContent":["import * as React from 'react'\n\nimport { cn } from '../utils/cn'\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n 'fayz-glass-surface rounded-card border bg-card text-card-foreground shadow-sm',\n className\n )}\n {...props}\n />\n))\nCard.displayName = 'Card'\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex flex-col space-y-1 p-4', className)}\n {...props}\n />\n))\nCardHeader.displayName = 'CardHeader'\n\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\n 'text-sm font-semibold leading-tight tracking-tight',\n className\n )}\n {...props}\n />\n))\nCardTitle.displayName = 'CardTitle'\n\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn('text-xs text-muted-foreground', className)}\n {...props}\n />\n))\nCardDescription.displayName = 'CardDescription'\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn('p-4 pt-0', className)} {...props} />\n))\nCardContent.displayName = 'CardContent'\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center p-4 pt-0', className)}\n {...props}\n />\n))\nCardFooter.displayName = 'CardFooter'\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }\n","import * as React from 'react'\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'\nimport { Check, ChevronRight, Circle } from 'lucide-react'\n\nimport { cn } from '../utils/cn'\n\nconst Dropdown = DropdownMenuPrimitive.Root\n\nconst DropdownTrigger = DropdownMenuPrimitive.Trigger\n\nconst DropdownGroup = DropdownMenuPrimitive.Group\n\nconst DropdownPortal = DropdownMenuPrimitive.Portal\n\nconst DropdownSub = DropdownMenuPrimitive.Sub\n\nconst DropdownRadioGroup = DropdownMenuPrimitive.RadioGroup\n\nconst DropdownSubTrigger = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n className={cn(\n 'flex cursor-default select-none items-center rounded-button px-2 py-1.5 text-sm outline-none focus:bg-muted data-[state=open]:bg-muted',\n inset && 'pl-8',\n className\n )}\n {...props}\n >\n {children}\n <ChevronRight className=\"ml-auto h-4 w-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n))\nDropdownSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName\n\nconst DropdownSubContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n className={cn(\n 'fayz-glass-surface z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n))\nDropdownSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName\n\nconst DropdownContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n 'fayz-glass-surface z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n))\nDropdownContent.displayName = DropdownMenuPrimitive.Content.displayName\n\nconst DropdownItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-button px-2 py-1.5 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n inset && 'pl-8',\n className\n )}\n {...props}\n />\n))\nDropdownItem.displayName = DropdownMenuPrimitive.Item.displayName\n\nconst DropdownCheckboxItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-button py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n))\nDropdownCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName\n\nconst DropdownRadioItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-button py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-muted data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Circle className=\"h-2 w-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n))\nDropdownRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName\n\nconst DropdownLabel = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n className={cn(\n 'px-2 py-1.5 text-sm font-semibold',\n inset && 'pl-8',\n className\n )}\n {...props}\n />\n))\nDropdownLabel.displayName = DropdownMenuPrimitive.Label.displayName\n\nconst DropdownSeparator = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-muted', className)}\n {...props}\n />\n))\nDropdownSeparator.displayName = DropdownMenuPrimitive.Separator.displayName\n\nconst DropdownShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn('ml-auto text-xs tracking-widest opacity-60', className)}\n {...props}\n />\n )\n}\nDropdownShortcut.displayName = 'DropdownShortcut'\n\nexport {\n Dropdown,\n DropdownTrigger,\n DropdownContent,\n DropdownItem,\n DropdownCheckboxItem,\n DropdownRadioItem,\n DropdownLabel,\n DropdownSeparator,\n DropdownShortcut,\n DropdownGroup,\n DropdownPortal,\n DropdownSub,\n DropdownSubContent,\n DropdownSubTrigger,\n DropdownRadioGroup,\n}\n","import * as React from 'react'\nimport {\n type ColumnDef,\n type SortingState,\n flexRender,\n getCoreRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table'\nimport { ArrowUpDown, ArrowUp, ArrowDown } from 'lucide-react'\n\nimport { cn } from '../utils/cn'\n\ninterface DataTableProps<TData, TValue> {\n columns: ColumnDef<TData, TValue>[]\n data: TData[]\n loading?: boolean\n skeletonRows?: number\n emptyMessage?: string\n onRowClick?: (row: TData) => void\n /** Visual variant: 'card' (white bg, card wrapper — default) or 'flat' (transparent bg) */\n variant?: 'card' | 'flat'\n /** Compact mode: smaller padding and font size */\n compact?: boolean\n}\n\nfunction DataTable<TData, TValue>({\n columns,\n data,\n loading = false,\n skeletonRows = 3,\n emptyMessage = 'No results.',\n onRowClick,\n variant = 'card',\n compact = false,\n}: DataTableProps<TData, TValue>) {\n const isCard = variant === 'card'\n const wrapperCls = isCard ? 'rounded-lg border bg-card shadow-sm overflow-x-auto' : 'rounded-lg border overflow-x-auto'\n const headerCls = isCard ? 'border-b bg-muted/50' : 'border-b bg-muted/30'\n const thCls = compact ? 'px-3 py-1.5 text-left text-[11px] font-medium text-muted-foreground' : 'px-4 py-2.5 text-left font-medium text-muted-foreground'\n const tdCls = compact ? 'px-3 py-1.5 align-middle text-xs' : 'px-4 py-3 align-middle'\n const tableCls = compact ? 'w-full text-xs min-w-max' : 'w-full text-sm min-w-max'\n const rowHoverCls = isCard ? 'hover:bg-muted/30' : 'hover:bg-muted/20'\n const [sorting, setSorting] = React.useState<SortingState>([])\n\n const table = useReactTable({\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onSortingChange: setSorting,\n state: { sorting },\n })\n\n if (loading) {\n return (\n <div className={wrapperCls}>\n <table className={tableCls}>\n <thead>\n <tr className={headerCls}>\n {columns.map((_, i) => (\n <th key={i} className={thCls}>\n <div className=\"h-3.5 w-20 animate-pulse rounded bg-muted\" />\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {Array.from({ length: skeletonRows }).map((_, i) => (\n <tr key={i} className=\"border-b last:border-0\">\n {columns.map((_, j) => (\n <td key={j} className={tdCls}>\n <div className=\"h-3.5 w-full animate-pulse rounded bg-muted\" />\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n }\n\n return (\n <div className={wrapperCls}>\n <table className={tableCls}>\n <thead>\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id} className={headerCls}>\n {headerGroup.headers.map((header) => {\n const sorted = header.column.getIsSorted()\n return (\n <th\n key={header.id}\n className={thCls}\n >\n {header.isPlaceholder ? null : header.column.getCanSort() ? (\n <button\n className=\"flex items-center gap-1 hover:text-foreground transition-colors\"\n onClick={header.column.getToggleSortingHandler()}\n >\n {flexRender(header.column.columnDef.header, header.getContext())}\n {sorted === 'asc' ? (\n <ArrowUp className=\"h-3 w-3\" />\n ) : sorted === 'desc' ? (\n <ArrowDown className=\"h-3 w-3\" />\n ) : (\n <ArrowUpDown className=\"h-3 w-3 opacity-40\" />\n )}\n </button>\n ) : (\n flexRender(header.column.columnDef.header, header.getContext())\n )}\n </th>\n )\n })}\n </tr>\n ))}\n </thead>\n <tbody>\n {table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => (\n <tr\n key={row.id}\n className={cn(\n `border-b last:border-0 transition-colors ${rowHoverCls}`,\n onRowClick && 'cursor-pointer'\n )}\n onClick={() => onRowClick?.(row.original)}\n >\n {row.getVisibleCells().map((cell) => (\n <td key={cell.id} className={tdCls}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </td>\n ))}\n </tr>\n ))\n ) : (\n <tr>\n <td colSpan={columns.length} className=\"h-24 text-center text-muted-foreground\">\n {emptyMessage}\n </td>\n </tr>\n )}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport { DataTable, type DataTableProps }\n","import * as React from 'react'\nimport { cn } from '../utils/cn'\n\nexport interface SegmentedOption<T extends string = string> {\n value: T\n label: React.ReactNode\n}\n\nexport interface SegmentedControlProps<T extends string = string> {\n /** Options as plain values (label = value) or `{ value, label }` objects. */\n options: ReadonlyArray<T | SegmentedOption<T>>\n value: T\n onChange: (value: T) => void\n /** Matches the equivalent Button heights: sm = 26px, md = 30px. */\n size?: 'sm' | 'md'\n className?: string\n 'aria-label'?: string\n}\n\nconst SIZE: Record<'sm' | 'md', { container: string; segment: string }> = {\n sm: { container: 'h-[26px]', segment: 'px-2.5 text-xs' },\n md: { container: 'h-[30px]', segment: 'px-3 text-sm' },\n}\n\n/**\n * Canonical segmented (pill) control — same chrome as Button (rounded-button\n * radius, hairline border + shadow-button bevel on a card surface). Use this for\n * any 7d/30d/90d-style toggle so every surface stays visually consistent instead\n * of hand-rolling a styled toggle group.\n */\nexport function SegmentedControl<T extends string = string>({\n options, value, onChange, size = 'sm', className, ...rest\n}: SegmentedControlProps<T>) {\n const items = options.map((o) => (typeof o === 'string' ? { value: o, label: o } : o)) as SegmentedOption<T>[]\n return (\n <div\n role=\"tablist\"\n aria-label={rest['aria-label']}\n className={cn(\n 'inline-flex items-center rounded-button border border-border bg-card p-0.5 shadow-button',\n SIZE[size].container,\n className,\n )}\n >\n {items.map((item) => {\n const active = item.value === value\n return (\n <button\n key={item.value}\n type=\"button\"\n role=\"tab\"\n aria-selected={active}\n onClick={() => onChange(item.value)}\n className={cn(\n 'flex h-full items-center rounded-button font-semibold transition-colors',\n SIZE[size].segment,\n active ? 'bg-foreground text-background' : 'text-muted-foreground hover:bg-muted/60',\n )}\n >\n {item.label}\n </button>\n )\n })}\n </div>\n )\n}\n"]}
|