@pactor-app/ui 1.11.0 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-VM4FESQB.js → chunk-AUSWAD26.js} +79 -79
- package/dist/{chunk-HW6M3BEF.js → chunk-CFUWF54N.js} +42 -8
- package/dist/{chunk-PECP7DJB.js → chunk-GQE62HDV.js} +24 -3
- package/dist/{chunk-NVORKHWX.js → chunk-NQQAPB7Q.js} +6 -4
- package/dist/{chunk-TAJXMOEX.js → chunk-V2J6FHWX.js} +2 -2
- package/dist/components/index.cjs +509 -450
- package/dist/components/index.d.cts +22 -6
- package/dist/components/index.d.ts +22 -6
- package/dist/components/index.js +4 -4
- package/dist/index.cjs +512 -453
- package/dist/index.js +5 -5
- package/dist/layout/index.cjs +23 -2
- package/dist/layout/index.js +3 -3
- package/dist/ui/index.cjs +5 -3
- package/dist/ui/index.js +2 -2
- package/package.json +5 -5
- package/styles.css +6 -0
|
@@ -82,8 +82,68 @@ function AccordionContent({
|
|
|
82
82
|
);
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
+
// src/ui/tooltip.tsx
|
|
86
|
+
import { Tooltip as TooltipPrimitive } from "@base-ui/react/tooltip";
|
|
87
|
+
import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
88
|
+
function TooltipProvider({
|
|
89
|
+
delay = 0,
|
|
90
|
+
...props
|
|
91
|
+
}) {
|
|
92
|
+
return /* @__PURE__ */ jsx2(
|
|
93
|
+
TooltipPrimitive.Provider,
|
|
94
|
+
{
|
|
95
|
+
"data-slot": "tooltip-provider",
|
|
96
|
+
delay,
|
|
97
|
+
...props
|
|
98
|
+
}
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
function Tooltip({
|
|
102
|
+
...props
|
|
103
|
+
}) {
|
|
104
|
+
return /* @__PURE__ */ jsx2(TooltipProvider, { children: /* @__PURE__ */ jsx2(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
|
|
105
|
+
}
|
|
106
|
+
function TooltipTrigger({
|
|
107
|
+
...props
|
|
108
|
+
}) {
|
|
109
|
+
return /* @__PURE__ */ jsx2(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
110
|
+
}
|
|
111
|
+
function TooltipContent({
|
|
112
|
+
className,
|
|
113
|
+
side = "top",
|
|
114
|
+
sideOffset = 4,
|
|
115
|
+
align = "center",
|
|
116
|
+
children,
|
|
117
|
+
...props
|
|
118
|
+
}) {
|
|
119
|
+
return /* @__PURE__ */ jsx2(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx2(
|
|
120
|
+
TooltipPrimitive.Positioner,
|
|
121
|
+
{
|
|
122
|
+
align,
|
|
123
|
+
side,
|
|
124
|
+
sideOffset,
|
|
125
|
+
className: "isolate z-50",
|
|
126
|
+
children: /* @__PURE__ */ jsxs2(
|
|
127
|
+
TooltipPrimitive.Popup,
|
|
128
|
+
{
|
|
129
|
+
"data-slot": "tooltip-content",
|
|
130
|
+
className: cn(
|
|
131
|
+
"z-50 w-fit origin-(--transform-origin) rounded-md bg-primary px-3 py-1.5 text-xs text-balance text-primary-foreground duration-200 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
132
|
+
className
|
|
133
|
+
),
|
|
134
|
+
...props,
|
|
135
|
+
children: [
|
|
136
|
+
children,
|
|
137
|
+
/* @__PURE__ */ jsx2(TooltipPrimitive.Arrow, { className: "z-50 size-2.5 rotate-45 rounded-[2px] bg-primary fill-primary data-[side=top]:-bottom-1 data-[side=bottom]:-top-1 data-[side=left]:-right-1 data-[side=right]:-left-1" })
|
|
138
|
+
]
|
|
139
|
+
}
|
|
140
|
+
)
|
|
141
|
+
}
|
|
142
|
+
) });
|
|
143
|
+
}
|
|
144
|
+
|
|
85
145
|
// src/ui/card.tsx
|
|
86
|
-
import { jsx as
|
|
146
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
87
147
|
var cardRoundedClasses = {
|
|
88
148
|
none: "rounded-none",
|
|
89
149
|
sm: "rounded-sm",
|
|
@@ -98,7 +158,7 @@ function Card({
|
|
|
98
158
|
rounded = "lg",
|
|
99
159
|
...props
|
|
100
160
|
}) {
|
|
101
|
-
return /* @__PURE__ */
|
|
161
|
+
return /* @__PURE__ */ jsx3(
|
|
102
162
|
"div",
|
|
103
163
|
{
|
|
104
164
|
"data-slot": "card",
|
|
@@ -112,7 +172,7 @@ function Card({
|
|
|
112
172
|
);
|
|
113
173
|
}
|
|
114
174
|
function CardHeader({ className, ...props }) {
|
|
115
|
-
return /* @__PURE__ */
|
|
175
|
+
return /* @__PURE__ */ jsx3(
|
|
116
176
|
"div",
|
|
117
177
|
{
|
|
118
178
|
"data-slot": "card-header",
|
|
@@ -125,7 +185,7 @@ function CardHeader({ className, ...props }) {
|
|
|
125
185
|
);
|
|
126
186
|
}
|
|
127
187
|
function CardTitle({ className, ...props }) {
|
|
128
|
-
return /* @__PURE__ */
|
|
188
|
+
return /* @__PURE__ */ jsx3(
|
|
129
189
|
"div",
|
|
130
190
|
{
|
|
131
191
|
"data-slot": "card-title",
|
|
@@ -135,7 +195,7 @@ function CardTitle({ className, ...props }) {
|
|
|
135
195
|
);
|
|
136
196
|
}
|
|
137
197
|
function CardDescription({ className, ...props }) {
|
|
138
|
-
return /* @__PURE__ */
|
|
198
|
+
return /* @__PURE__ */ jsx3(
|
|
139
199
|
"div",
|
|
140
200
|
{
|
|
141
201
|
"data-slot": "card-description",
|
|
@@ -145,7 +205,7 @@ function CardDescription({ className, ...props }) {
|
|
|
145
205
|
);
|
|
146
206
|
}
|
|
147
207
|
function CardAction({ className, ...props }) {
|
|
148
|
-
return /* @__PURE__ */
|
|
208
|
+
return /* @__PURE__ */ jsx3(
|
|
149
209
|
"div",
|
|
150
210
|
{
|
|
151
211
|
"data-slot": "card-action",
|
|
@@ -158,7 +218,7 @@ function CardAction({ className, ...props }) {
|
|
|
158
218
|
);
|
|
159
219
|
}
|
|
160
220
|
function CardContent({ className, ...props }) {
|
|
161
|
-
return /* @__PURE__ */
|
|
221
|
+
return /* @__PURE__ */ jsx3(
|
|
162
222
|
"div",
|
|
163
223
|
{
|
|
164
224
|
"data-slot": "card-content",
|
|
@@ -168,7 +228,7 @@ function CardContent({ className, ...props }) {
|
|
|
168
228
|
);
|
|
169
229
|
}
|
|
170
230
|
function CardFooter({ className, ...props }) {
|
|
171
|
-
return /* @__PURE__ */
|
|
231
|
+
return /* @__PURE__ */ jsx3(
|
|
172
232
|
"div",
|
|
173
233
|
{
|
|
174
234
|
"data-slot": "card-footer",
|
|
@@ -180,16 +240,16 @@ function CardFooter({ className, ...props }) {
|
|
|
180
240
|
|
|
181
241
|
// src/ui/popover.tsx
|
|
182
242
|
import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
|
|
183
|
-
import { jsx as
|
|
243
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
184
244
|
function Popover({
|
|
185
245
|
...props
|
|
186
246
|
}) {
|
|
187
|
-
return /* @__PURE__ */
|
|
247
|
+
return /* @__PURE__ */ jsx4(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
|
|
188
248
|
}
|
|
189
249
|
function PopoverTrigger({
|
|
190
250
|
...props
|
|
191
251
|
}) {
|
|
192
|
-
return /* @__PURE__ */
|
|
252
|
+
return /* @__PURE__ */ jsx4(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
193
253
|
}
|
|
194
254
|
function PopoverContent({
|
|
195
255
|
className,
|
|
@@ -199,7 +259,7 @@ function PopoverContent({
|
|
|
199
259
|
anchor,
|
|
200
260
|
...props
|
|
201
261
|
}) {
|
|
202
|
-
return /* @__PURE__ */
|
|
262
|
+
return /* @__PURE__ */ jsx4(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx4(
|
|
203
263
|
PopoverPrimitive.Positioner,
|
|
204
264
|
{
|
|
205
265
|
align,
|
|
@@ -207,7 +267,7 @@ function PopoverContent({
|
|
|
207
267
|
sideOffset,
|
|
208
268
|
anchor,
|
|
209
269
|
className: "isolate z-50",
|
|
210
|
-
children: /* @__PURE__ */
|
|
270
|
+
children: /* @__PURE__ */ jsx4(
|
|
211
271
|
PopoverPrimitive.Popup,
|
|
212
272
|
{
|
|
213
273
|
"data-slot": "popover-content",
|
|
@@ -223,9 +283,9 @@ function PopoverContent({
|
|
|
223
283
|
}
|
|
224
284
|
|
|
225
285
|
// src/ui/input.tsx
|
|
226
|
-
import { jsx as
|
|
286
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
227
287
|
function Input({ className, type, ...props }) {
|
|
228
|
-
return /* @__PURE__ */
|
|
288
|
+
return /* @__PURE__ */ jsx5(
|
|
229
289
|
"input",
|
|
230
290
|
{
|
|
231
291
|
type,
|
|
@@ -239,66 +299,6 @@ function Input({ className, type, ...props }) {
|
|
|
239
299
|
);
|
|
240
300
|
}
|
|
241
301
|
|
|
242
|
-
// src/ui/tooltip.tsx
|
|
243
|
-
import { Tooltip as TooltipPrimitive } from "@base-ui/react/tooltip";
|
|
244
|
-
import { jsx as jsx5, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
245
|
-
function TooltipProvider({
|
|
246
|
-
delay = 0,
|
|
247
|
-
...props
|
|
248
|
-
}) {
|
|
249
|
-
return /* @__PURE__ */ jsx5(
|
|
250
|
-
TooltipPrimitive.Provider,
|
|
251
|
-
{
|
|
252
|
-
"data-slot": "tooltip-provider",
|
|
253
|
-
delay,
|
|
254
|
-
...props
|
|
255
|
-
}
|
|
256
|
-
);
|
|
257
|
-
}
|
|
258
|
-
function Tooltip({
|
|
259
|
-
...props
|
|
260
|
-
}) {
|
|
261
|
-
return /* @__PURE__ */ jsx5(TooltipProvider, { children: /* @__PURE__ */ jsx5(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
|
|
262
|
-
}
|
|
263
|
-
function TooltipTrigger({
|
|
264
|
-
...props
|
|
265
|
-
}) {
|
|
266
|
-
return /* @__PURE__ */ jsx5(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
267
|
-
}
|
|
268
|
-
function TooltipContent({
|
|
269
|
-
className,
|
|
270
|
-
side = "top",
|
|
271
|
-
sideOffset = 4,
|
|
272
|
-
align = "center",
|
|
273
|
-
children,
|
|
274
|
-
...props
|
|
275
|
-
}) {
|
|
276
|
-
return /* @__PURE__ */ jsx5(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx5(
|
|
277
|
-
TooltipPrimitive.Positioner,
|
|
278
|
-
{
|
|
279
|
-
align,
|
|
280
|
-
side,
|
|
281
|
-
sideOffset,
|
|
282
|
-
className: "isolate z-50",
|
|
283
|
-
children: /* @__PURE__ */ jsxs2(
|
|
284
|
-
TooltipPrimitive.Popup,
|
|
285
|
-
{
|
|
286
|
-
"data-slot": "tooltip-content",
|
|
287
|
-
className: cn(
|
|
288
|
-
"z-50 w-fit origin-(--transform-origin) rounded-md bg-primary px-3 py-1.5 text-xs text-balance text-primary-foreground duration-200 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
289
|
-
className
|
|
290
|
-
),
|
|
291
|
-
...props,
|
|
292
|
-
children: [
|
|
293
|
-
children,
|
|
294
|
-
/* @__PURE__ */ jsx5(TooltipPrimitive.Arrow, { className: "z-50 size-2.5 rotate-45 rounded-[2px] bg-primary fill-primary data-[side=top]:-bottom-1 data-[side=bottom]:-top-1 data-[side=left]:-right-1 data-[side=right]:-left-1" })
|
|
295
|
-
]
|
|
296
|
-
}
|
|
297
|
-
)
|
|
298
|
-
}
|
|
299
|
-
) });
|
|
300
|
-
}
|
|
301
|
-
|
|
302
302
|
// src/ui/separator.tsx
|
|
303
303
|
import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
|
|
304
304
|
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
@@ -1156,6 +1156,10 @@ export {
|
|
|
1156
1156
|
AccordionItem,
|
|
1157
1157
|
AccordionTrigger,
|
|
1158
1158
|
AccordionContent,
|
|
1159
|
+
TooltipProvider,
|
|
1160
|
+
Tooltip,
|
|
1161
|
+
TooltipTrigger,
|
|
1162
|
+
TooltipContent,
|
|
1159
1163
|
Card,
|
|
1160
1164
|
CardHeader,
|
|
1161
1165
|
CardTitle,
|
|
@@ -1167,10 +1171,6 @@ export {
|
|
|
1167
1171
|
PopoverTrigger,
|
|
1168
1172
|
PopoverContent,
|
|
1169
1173
|
Input,
|
|
1170
|
-
TooltipProvider,
|
|
1171
|
-
Tooltip,
|
|
1172
|
-
TooltipTrigger,
|
|
1173
|
-
TooltipContent,
|
|
1174
1174
|
useIsMobile,
|
|
1175
1175
|
Separator,
|
|
1176
1176
|
Sheet,
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
Icon,
|
|
3
3
|
Menu,
|
|
4
4
|
Sidebar
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-GQE62HDV.js";
|
|
6
6
|
import {
|
|
7
7
|
Alert,
|
|
8
8
|
AlertDescription,
|
|
@@ -141,7 +141,7 @@ import {
|
|
|
141
141
|
chartColor,
|
|
142
142
|
navigationMenuTriggerStyle,
|
|
143
143
|
toast
|
|
144
|
-
} from "./chunk-
|
|
144
|
+
} from "./chunk-NQQAPB7Q.js";
|
|
145
145
|
import {
|
|
146
146
|
Dialog,
|
|
147
147
|
DialogContent,
|
|
@@ -176,7 +176,7 @@ import {
|
|
|
176
176
|
Tooltip,
|
|
177
177
|
TooltipContent,
|
|
178
178
|
TooltipTrigger
|
|
179
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-AUSWAD26.js";
|
|
180
180
|
import {
|
|
181
181
|
Button,
|
|
182
182
|
cn
|
|
@@ -379,6 +379,7 @@ var sizeMap = {
|
|
|
379
379
|
function Button2({
|
|
380
380
|
text,
|
|
381
381
|
icon,
|
|
382
|
+
tooltip,
|
|
382
383
|
variant = "default",
|
|
383
384
|
danger,
|
|
384
385
|
size = "middle",
|
|
@@ -391,7 +392,7 @@ function Button2({
|
|
|
391
392
|
children
|
|
392
393
|
}) {
|
|
393
394
|
const textual = variant === "link" || variant === "text";
|
|
394
|
-
|
|
395
|
+
const button = /* @__PURE__ */ jsxs6(
|
|
395
396
|
Button,
|
|
396
397
|
{
|
|
397
398
|
type: submit ? "submit" : "button",
|
|
@@ -412,6 +413,13 @@ function Button2({
|
|
|
412
413
|
]
|
|
413
414
|
}
|
|
414
415
|
);
|
|
416
|
+
if (tooltip) {
|
|
417
|
+
return /* @__PURE__ */ jsxs6(Tooltip, { children: [
|
|
418
|
+
/* @__PURE__ */ jsx9(TooltipTrigger, { render: button }),
|
|
419
|
+
/* @__PURE__ */ jsx9(TooltipContent, { children: tooltip })
|
|
420
|
+
] });
|
|
421
|
+
}
|
|
422
|
+
return button;
|
|
415
423
|
}
|
|
416
424
|
|
|
417
425
|
// src/components/components/ButtonGroup/index.tsx
|
|
@@ -2721,7 +2729,8 @@ function Select2({
|
|
|
2721
2729
|
"span",
|
|
2722
2730
|
{
|
|
2723
2731
|
className: cn(
|
|
2724
|
-
|
|
2732
|
+
// Form / Field(Form 上下文)内控件占满整行宽度;独立渲染保持内容自然宽度
|
|
2733
|
+
inFormRoot ? "flex w-full items-center gap-1" : "inline-flex items-center gap-1",
|
|
2725
2734
|
!inFormRoot && className,
|
|
2726
2735
|
controlClassName
|
|
2727
2736
|
),
|
|
@@ -2736,7 +2745,7 @@ function Select2({
|
|
|
2736
2745
|
disabled,
|
|
2737
2746
|
name: inForm ? name : void 0,
|
|
2738
2747
|
children: [
|
|
2739
|
-
/* @__PURE__ */ jsx53(SelectTrigger, { id: controlId, children: /* @__PURE__ */ jsx53(SelectValue, { placeholder }) }),
|
|
2748
|
+
/* @__PURE__ */ jsx53(SelectTrigger, { id: controlId, className: inFormRoot ? "w-full" : void 0, children: /* @__PURE__ */ jsx53(SelectValue, { placeholder }) }),
|
|
2740
2749
|
/* @__PURE__ */ jsx53(SelectContent, { children: options.map((option) => /* @__PURE__ */ jsx53(
|
|
2741
2750
|
SelectItem,
|
|
2742
2751
|
{
|
|
@@ -3168,7 +3177,16 @@ function Table2({
|
|
|
3168
3177
|
// src/components/components/Tabs/index.tsx
|
|
3169
3178
|
import { useRenderer as useRenderer16 } from "@pactor-app/runtime";
|
|
3170
3179
|
import { jsx as jsx64, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
3171
|
-
function Tabs2({
|
|
3180
|
+
function Tabs2({
|
|
3181
|
+
items = [],
|
|
3182
|
+
activeKey,
|
|
3183
|
+
variant,
|
|
3184
|
+
onChange,
|
|
3185
|
+
contentClassName,
|
|
3186
|
+
contentStyle,
|
|
3187
|
+
className,
|
|
3188
|
+
style
|
|
3189
|
+
}) {
|
|
3172
3190
|
const { renderChildren } = useRenderer16();
|
|
3173
3191
|
return /* @__PURE__ */ jsxs44(
|
|
3174
3192
|
Tabs,
|
|
@@ -3180,7 +3198,16 @@ function Tabs2({ items = [], activeKey, variant, onChange, className, style }) {
|
|
|
3180
3198
|
style,
|
|
3181
3199
|
children: [
|
|
3182
3200
|
/* @__PURE__ */ jsx64(TabsList, { variant, children: items.map((item) => /* @__PURE__ */ jsx64(TabsTrigger, { value: item.key, children: item.label }, item.key)) }),
|
|
3183
|
-
items.map((item) => /* @__PURE__ */ jsx64(
|
|
3201
|
+
items.map((item) => /* @__PURE__ */ jsx64(
|
|
3202
|
+
TabsContent,
|
|
3203
|
+
{
|
|
3204
|
+
value: item.key,
|
|
3205
|
+
className: cn(contentClassName, item.className),
|
|
3206
|
+
style: { ...contentStyle, ...item.style },
|
|
3207
|
+
children: renderChildren(item.children)
|
|
3208
|
+
},
|
|
3209
|
+
item.key
|
|
3210
|
+
))
|
|
3184
3211
|
]
|
|
3185
3212
|
}
|
|
3186
3213
|
);
|
|
@@ -3195,9 +3222,15 @@ var typeClassMap = {
|
|
|
3195
3222
|
warning: "text-warning",
|
|
3196
3223
|
danger: "text-destructive"
|
|
3197
3224
|
};
|
|
3225
|
+
var sizeClassMap = {
|
|
3226
|
+
small: "text-xs",
|
|
3227
|
+
middle: "",
|
|
3228
|
+
large: "text-lg"
|
|
3229
|
+
};
|
|
3198
3230
|
function Text({
|
|
3199
3231
|
text,
|
|
3200
3232
|
type = "default",
|
|
3233
|
+
size = "middle",
|
|
3201
3234
|
strong,
|
|
3202
3235
|
delete: del,
|
|
3203
3236
|
underline,
|
|
@@ -3213,6 +3246,7 @@ function Text({
|
|
|
3213
3246
|
"data-type": type,
|
|
3214
3247
|
className: cn(
|
|
3215
3248
|
typeClassMap[type],
|
|
3249
|
+
sizeClassMap[size],
|
|
3216
3250
|
strong && "font-semibold",
|
|
3217
3251
|
del && "line-through",
|
|
3218
3252
|
underline && "underline",
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
TooltipTrigger,
|
|
17
17
|
useIsMobile,
|
|
18
18
|
useSidebar
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-AUSWAD26.js";
|
|
20
20
|
import {
|
|
21
21
|
cn
|
|
22
22
|
} from "./chunk-WKJUCGV4.js";
|
|
@@ -219,7 +219,28 @@ var ICONS = {
|
|
|
219
219
|
"rotate-ccw": RotateCcw,
|
|
220
220
|
quote: Quote,
|
|
221
221
|
chat: MessageSquare,
|
|
222
|
-
brain: Brain
|
|
222
|
+
brain: Brain,
|
|
223
|
+
// lucide 规范名别名(kebab-case 原名直通;上方短别名保留兼容)——
|
|
224
|
+
// 白名单文档承诺 kebab-case 键,缺别名时规范名(如 trash-2)会落入未知占位
|
|
225
|
+
"trash-2": Trash2,
|
|
226
|
+
"share-2": Share2,
|
|
227
|
+
"building-2": Building2,
|
|
228
|
+
house: House,
|
|
229
|
+
"triangle-alert": TriangleAlert,
|
|
230
|
+
"circle-alert": CircleAlert,
|
|
231
|
+
"circle-check": CircleCheck,
|
|
232
|
+
"circle-x": CircleX,
|
|
233
|
+
"circle-question-mark": CircleQuestionMark,
|
|
234
|
+
"square-pen": SquarePen,
|
|
235
|
+
"refresh-ccw": RefreshCcw,
|
|
236
|
+
"chart-column": ChartColumn,
|
|
237
|
+
"layout-grid": LayoutGrid,
|
|
238
|
+
funnel: Funnel,
|
|
239
|
+
"loader-circle": LoaderCircle,
|
|
240
|
+
ellipsis: Ellipsis,
|
|
241
|
+
"ellipsis-vertical": EllipsisVertical,
|
|
242
|
+
"message-circle": MessageCircle,
|
|
243
|
+
"lock-open": LockOpen
|
|
223
244
|
};
|
|
224
245
|
function normalizeIconName(name) {
|
|
225
246
|
return name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/[_\s]+/g, "-").toLowerCase();
|
|
@@ -249,7 +270,7 @@ function Icon({
|
|
|
249
270
|
size: px,
|
|
250
271
|
color,
|
|
251
272
|
strokeWidth,
|
|
252
|
-
className: cn("shrink-0
|
|
273
|
+
className: cn("shrink-0", className),
|
|
253
274
|
style,
|
|
254
275
|
"aria-hidden": "true"
|
|
255
276
|
}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
Popover,
|
|
3
3
|
PopoverContent,
|
|
4
4
|
PopoverTrigger
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-AUSWAD26.js";
|
|
6
6
|
import {
|
|
7
7
|
Button,
|
|
8
8
|
buttonVariants,
|
|
@@ -2476,7 +2476,8 @@ var tabsListVariants = cva4(
|
|
|
2476
2476
|
variants: {
|
|
2477
2477
|
variant: {
|
|
2478
2478
|
default: "h-9 rounded-lg bg-muted p-[3px]",
|
|
2479
|
-
line
|
|
2479
|
+
// line:页签栏通栏(下划线轨道占满容器宽),触发器自然宽度靠左排列
|
|
2480
|
+
line: "h-auto w-full justify-start gap-1 rounded-none border-b border-border bg-transparent p-0"
|
|
2480
2481
|
}
|
|
2481
2482
|
},
|
|
2482
2483
|
defaultVariants: {
|
|
@@ -2512,8 +2513,9 @@ function TabsTrigger({
|
|
|
2512
2513
|
// default 变体:激活态胶囊(边框 + 卡片底 + 阴影)
|
|
2513
2514
|
"group-data-[variant=default]/tabs-list:data-active:border-border group-data-[variant=default]/tabs-list:data-active:bg-card group-data-[variant=default]/tabs-list:data-active:shadow-sm",
|
|
2514
2515
|
// line 变体:下划线指示——弱化未激活文字,激活态底部 2px 主色线
|
|
2515
|
-
//(叠在 List
|
|
2516
|
-
|
|
2516
|
+
//(叠在 List 的底边轨道上),无底色/圆角/阴影;通栏 List 下取消
|
|
2517
|
+
// flex-1 拉伸,触发器保持自然宽度
|
|
2518
|
+
"group-data-[variant=line]/tabs-list:-mb-px group-data-[variant=line]/tabs-list:h-9 group-data-[variant=line]/tabs-list:flex-none group-data-[variant=line]/tabs-list:rounded-none group-data-[variant=line]/tabs-list:border-x-0 group-data-[variant=line]/tabs-list:border-t-0 group-data-[variant=line]/tabs-list:border-b-2 group-data-[variant=line]/tabs-list:py-1.5 group-data-[variant=line]/tabs-list:text-muted-foreground group-data-[variant=line]/tabs-list:data-active:border-b-primary group-data-[variant=line]/tabs-list:data-active:text-foreground",
|
|
2517
2519
|
className
|
|
2518
2520
|
),
|
|
2519
2521
|
...props
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
Icon,
|
|
3
3
|
Menu,
|
|
4
4
|
Sidebar
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-GQE62HDV.js";
|
|
6
6
|
import {
|
|
7
7
|
Accordion,
|
|
8
8
|
AccordionContent,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
Popover,
|
|
16
16
|
PopoverContent,
|
|
17
17
|
PopoverTrigger
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-AUSWAD26.js";
|
|
19
19
|
import {
|
|
20
20
|
cn
|
|
21
21
|
} from "./chunk-WKJUCGV4.js";
|