@vuer-ai/vuer-uikit 0.0.53 → 0.0.55

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.
Files changed (71) hide show
  1. package/dist/chunk-6M5BGKUO.mjs +200 -0
  2. package/dist/{chunk-LF2XWR4S.js → chunk-7Z2DUNCM.js} +0 -2
  3. package/dist/{chunk-56JBJR5O.mjs → chunk-BUDNM66N.mjs} +0 -4
  4. package/dist/chunk-BX7MGCJP.mjs +241 -0
  5. package/dist/{chunk-YP4XKYIP.mjs → chunk-DZXMZBAQ.mjs} +1 -1
  6. package/dist/{chunk-CZBGKVGH.js → chunk-FOMVNZ3W.js} +0 -2
  7. package/dist/{chunk-FSFUZ7Y6.js → chunk-GDW2K5OF.js} +85 -21
  8. package/dist/{chunk-N5V4HWT4.js → chunk-GIXFQKLS.js} +2 -2
  9. package/dist/{chunk-HKWVLJ7G.js → chunk-GJW5EH5E.js} +25 -9
  10. package/dist/{chunk-VYYH27HC.mjs → chunk-GVO43E7E.mjs} +1 -1
  11. package/dist/{chunk-WSQ2D6H6.mjs → chunk-IJIZFHQU.mjs} +0 -1
  12. package/dist/chunk-JQ332WTL.js +267 -0
  13. package/dist/{chunk-EW34OO4H.js → chunk-RIKTZHE7.js} +0 -4
  14. package/dist/{chunk-TZLILQLV.mjs → chunk-RWPYQFVD.mjs} +0 -2
  15. package/dist/{chunk-GL6WU4QP.mjs → chunk-UX4ECKZ3.mjs} +0 -2
  16. package/dist/{chunk-57AHWBIP.js → chunk-VYBGHEHX.js} +1 -1
  17. package/dist/{chunk-5ZAPRYIX.mjs → chunk-ZDZM3RJ3.mjs} +25 -9
  18. package/dist/{chunk-PVQWUU6F.js → chunk-ZWHGRBDM.js} +0 -1
  19. package/dist/highlight-cursor/enhanced-components.js +7 -7
  20. package/dist/highlight-cursor/enhanced-components.mjs +2 -2
  21. package/dist/highlight-cursor/index.js +7 -7
  22. package/dist/highlight-cursor/index.mjs +2 -2
  23. package/dist/index.d.mts +3 -2
  24. package/dist/index.d.ts +3 -2
  25. package/dist/index.js +118 -93
  26. package/dist/index.mjs +13 -12
  27. package/dist/ui/card.js +8 -8
  28. package/dist/ui/card.mjs +1 -1
  29. package/dist/ui/dropdown.js +16 -16
  30. package/dist/ui/dropdown.mjs +1 -1
  31. package/dist/ui/form/index.js +5 -5
  32. package/dist/ui/form/index.mjs +1 -1
  33. package/dist/ui/index.d.mts +3 -2
  34. package/dist/ui/index.d.ts +3 -2
  35. package/dist/ui/index.js +112 -87
  36. package/dist/ui/index.mjs +12 -11
  37. package/dist/ui/modal.js +11 -11
  38. package/dist/ui/modal.mjs +1 -1
  39. package/dist/ui/select.js +32 -32
  40. package/dist/ui/select.mjs +1 -1
  41. package/dist/ui/theme/ThemeToggles.d.mts +8 -3
  42. package/dist/ui/theme/ThemeToggles.d.ts +8 -3
  43. package/dist/ui/theme/ThemeToggles.js +3 -3
  44. package/dist/ui/theme/ThemeToggles.mjs +1 -1
  45. package/dist/ui/theme/index.d.mts +3 -0
  46. package/dist/ui/theme/index.d.ts +3 -0
  47. package/dist/ui/theme/index.js +3 -3
  48. package/dist/ui/theme/index.mjs +1 -1
  49. package/dist/ui/toggle-buttons.d.mts +32 -0
  50. package/dist/ui/toggle-buttons.d.ts +32 -0
  51. package/dist/ui/toggle-buttons.js +33 -0
  52. package/dist/ui/toggle-buttons.mjs +8 -0
  53. package/dist/ui/toggle-group.d.mts +16 -8
  54. package/dist/ui/toggle-group.d.ts +16 -8
  55. package/dist/ui/toggle-group.js +7 -4
  56. package/dist/ui/toggle-group.mjs +1 -2
  57. package/dist/ui/version-badge.js +2 -2
  58. package/dist/ui/version-badge.mjs +1 -1
  59. package/package.json +1 -1
  60. package/src/ui/button.tsx +6 -4
  61. package/src/ui/card.tsx +0 -1
  62. package/src/ui/dropdown.tsx +0 -4
  63. package/src/ui/index.ts +1 -0
  64. package/src/ui/modal.tsx +0 -2
  65. package/src/ui/select.tsx +0 -2
  66. package/src/ui/theme/ThemeToggles.tsx +37 -20
  67. package/src/ui/toggle-buttons.tsx +288 -0
  68. package/src/ui/toggle-group.tsx +101 -28
  69. package/dist/chunk-G6CSH3FC.mjs +0 -137
  70. /package/dist/{chunk-ZFWQLAQA.mjs → chunk-BF5C2QUL.mjs} +0 -0
  71. /package/dist/{chunk-GLGYNU3Q.js → chunk-C6R5HMUP.js} +0 -0
@@ -0,0 +1,200 @@
1
+ import { createClientOnlyComponent } from './chunk-4F2GSF2T.mjs';
2
+ import { cn } from './chunk-WM2VP7MI.mjs';
3
+ import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
4
+ import { cva } from 'class-variance-authority';
5
+ import { createContext, useContext } from 'react';
6
+ import { jsx } from 'react/jsx-runtime';
7
+
8
+ var toggleGroupVariants = cva(
9
+ [
10
+ // Base button styling
11
+ "inline-flex",
12
+ "cursor-pointer",
13
+ "items-center",
14
+ "justify-center",
15
+ "shrink-0",
16
+ "whitespace-nowrap",
17
+ "font-normal",
18
+ "transition-all",
19
+ "[&_svg]:shrink-0",
20
+ "[&_svg]:pointer-events-none",
21
+ "outline-none",
22
+ "focus-visible:border-ring",
23
+ "focus-visible:ring-ring/50",
24
+ "focus-visible:ring-[3px]",
25
+ "focus-visible:bg-accent",
26
+ "aria-invalid:ring-destructive/20",
27
+ "aria-invalid:border-destructive",
28
+ // Toggle group specific styling
29
+ "min-w-0",
30
+ "flex-1",
31
+ "rounded-none",
32
+ "first:rounded-l-uk-sm",
33
+ "first:rounded-r-none",
34
+ "last:rounded-r-uk-sm",
35
+ "last:rounded-l-none",
36
+ "[&:not(:first-child):not(:last-child)]:rounded-none",
37
+ "focus:z-10",
38
+ "focus-visible:z-10",
39
+ // Disabled state
40
+ "disabled:pointer-events-none",
41
+ "disabled:text-text-secondary/30"
42
+ ],
43
+ {
44
+ variants: {
45
+ variant: {
46
+ primary: [
47
+ "text-text-secondary",
48
+ "bg-bg-tertiary",
49
+ "hover:bg-secondary",
50
+ "data-[state=on]:text-text-withbg",
51
+ "data-[state=on]:bg-brand-primary",
52
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--secondary),inset_-0.5px_0_0_var(--secondary)]",
53
+ "data-[state=on]:first:shadow-[inset_-0.5px_0_0_var(--secondary)]",
54
+ "data-[state=on]:last:shadow-[inset_0.5px_0_0_var(--secondary)]"
55
+ ],
56
+ secondary: [
57
+ "text-text-secondary",
58
+ "bg-bg-secondary",
59
+ "hover:bg-tertiary",
60
+ "border-solid border border-transparent -mr-[1px]",
61
+ "data-[state=on]:text-secondary-foreground",
62
+ "data-[state=on]:bg-bg-primary",
63
+ "data-[state=on]:border-line-primary",
64
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--muted),inset_-0.5px_0_0_var(--muted)]"
65
+ ],
66
+ ghost: [
67
+ "bg-bg-primary",
68
+ "hover:bg-tertiary",
69
+ "text-text-secondary",
70
+ "data-[state=on]:text-text-withbg",
71
+ "data-[state=on]:bg-text-primary",
72
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--muted),inset_-0.5px_0_0_var(--muted)]",
73
+ "data-[state=on]:first:shadow-[inset_-0.5px_0_0_var(--muted)]",
74
+ "data-[state=on]:last:shadow-[inset_0.5px_0_0_var(--muted)]"
75
+ ]
76
+ },
77
+ size: {
78
+ sm: ["text-uk-sm", "h-6", "gap-xxs", "px-md", "[&_svg:not([class*='size-'])]:size-3"],
79
+ base: ["text-uk-md", "h-8", "gap-xs", "px-lg", "[&_svg:not([class*='size-'])]:size-4"],
80
+ lg: ["text-uk-lg", "h-9", "gap-xs", "px-xl", "[&_svg:not([class*='size-'])]:size-5"]
81
+ }
82
+ },
83
+ defaultVariants: {
84
+ variant: "primary",
85
+ size: "base"
86
+ }
87
+ }
88
+ );
89
+ var ToggleGroupContext = createContext({
90
+ size: "base",
91
+ variant: "primary"
92
+ });
93
+ function ToggleGroupRoot({
94
+ className,
95
+ variant,
96
+ size,
97
+ children,
98
+ ...props
99
+ }) {
100
+ return /* @__PURE__ */ jsx(
101
+ ToggleGroupPrimitive.Root,
102
+ {
103
+ "data-slot": "toggle-group",
104
+ "data-variant": variant,
105
+ "data-size": size,
106
+ className: cn(
107
+ "group/toggle-group",
108
+ "flex",
109
+ "w-fit",
110
+ "items-center",
111
+ "rounded-uk-md",
112
+ className
113
+ ),
114
+ ...props,
115
+ children: /* @__PURE__ */ jsx(ToggleGroupContext.Provider, { value: { variant, size }, children })
116
+ }
117
+ );
118
+ }
119
+ function ToggleGroupFallback({
120
+ className,
121
+ variant,
122
+ size,
123
+ children,
124
+ ...props
125
+ }) {
126
+ return /* @__PURE__ */ jsx(
127
+ "div",
128
+ {
129
+ "data-slot": "toggle-group",
130
+ "data-variant": variant,
131
+ "data-size": size,
132
+ className: cn(
133
+ "group/toggle-group",
134
+ "flex",
135
+ "w-fit",
136
+ "items-center",
137
+ "rounded-uk-md",
138
+ className
139
+ ),
140
+ ...props,
141
+ children: /* @__PURE__ */ jsx(ToggleGroupContext.Provider, { value: { variant, size }, children })
142
+ }
143
+ );
144
+ }
145
+ var ToggleGroup = createClientOnlyComponent(ToggleGroupRoot, ToggleGroupFallback);
146
+ function ToggleGroupItemRoot({
147
+ className,
148
+ children,
149
+ variant,
150
+ size,
151
+ ...props
152
+ }) {
153
+ const context = useContext(ToggleGroupContext);
154
+ return /* @__PURE__ */ jsx(
155
+ ToggleGroupPrimitive.Item,
156
+ {
157
+ "data-slot": "toggle-group-item",
158
+ "data-variant": context.variant || variant,
159
+ "data-size": context.size || size,
160
+ className: cn(
161
+ toggleGroupVariants({
162
+ variant: context.variant || variant,
163
+ size: context.size || size
164
+ }),
165
+ className
166
+ ),
167
+ ...props,
168
+ children
169
+ }
170
+ );
171
+ }
172
+ function ToggleGroupItemFallback({
173
+ className,
174
+ children,
175
+ variant,
176
+ size,
177
+ ...props
178
+ }) {
179
+ const context = useContext(ToggleGroupContext);
180
+ return /* @__PURE__ */ jsx(
181
+ "button",
182
+ {
183
+ "data-slot": "toggle-group-item",
184
+ "data-variant": context.variant || variant,
185
+ "data-size": context.size || size,
186
+ className: cn(
187
+ toggleGroupVariants({
188
+ variant: context.variant || variant,
189
+ size: context.size || size
190
+ }),
191
+ className
192
+ ),
193
+ ...props,
194
+ children
195
+ }
196
+ );
197
+ }
198
+ var ToggleGroupItem = createClientOnlyComponent(ToggleGroupItemRoot, ToggleGroupItemFallback);
199
+
200
+ export { ToggleGroup, ToggleGroupItem, toggleGroupVariants };
@@ -93,8 +93,6 @@ var modalContentVariants = classVarianceAuthority.cva([
93
93
  "bg-bg-primary",
94
94
  "rounded-uk-xl",
95
95
  "shadow-[0_4px_16px_0_var(--color-shadow-secondary)]",
96
- "min-w-[280px]",
97
- "max-w-[360px]",
98
96
  "duration-200",
99
97
  "transition-all",
100
98
  "fixed",
@@ -82,7 +82,6 @@ function DropdownMenuContentRoot({
82
82
  "relative",
83
83
  "z-50",
84
84
  "max-h-(--radix-dropdown-menu-content-available-height)",
85
- "min-w-[8rem]",
86
85
  "origin-(--radix-dropdown-menu-content-transform-origin)",
87
86
  "overflow-x-hidden",
88
87
  "overflow-y-auto",
@@ -107,7 +106,6 @@ function DropdownMenuContentFallback({ className, ...props }) {
107
106
  "p-md",
108
107
  "relative",
109
108
  "z-50",
110
- "min-w-[8rem]",
111
109
  "overflow-x-hidden",
112
110
  "overflow-y-auto",
113
111
  "rounded-uk-md",
@@ -623,7 +621,6 @@ function DropdownMenuSubContentRoot({
623
621
  "relative",
624
622
  "z-50",
625
623
  "max-h-(--radix-dropdown-menu-content-available-height)",
626
- "min-w-[8rem]",
627
624
  "origin-(--radix-dropdown-menu-content-transform-origin)",
628
625
  "overflow-x-hidden",
629
626
  "overflow-y-auto",
@@ -646,7 +643,6 @@ function DropdownMenuSubContentFallback({ className, ...props }) {
646
643
  "p-md",
647
644
  "relative",
648
645
  "z-50",
649
- "min-w-[8rem]",
650
646
  "overflow-x-hidden",
651
647
  "overflow-y-auto",
652
648
  "rounded-uk-md",
@@ -0,0 +1,241 @@
1
+ import { cn } from './chunk-WM2VP7MI.mjs';
2
+ import { Slot } from '@radix-ui/react-slot';
3
+ import { cva } from 'class-variance-authority';
4
+ import * as React from 'react';
5
+ import { jsx, jsxs } from 'react/jsx-runtime';
6
+
7
+ var toggleButtonsVariants = cva(
8
+ ["rounded-uk-md", "relative", "inline-flex", "items-center"],
9
+ {
10
+ variants: {
11
+ variant: {
12
+ primary: "bg-bg-secondary",
13
+ secondary: "bg-bg-secondary",
14
+ ghost: "bg-transparent"
15
+ },
16
+ padding: {
17
+ true: "p-xs",
18
+ false: "p-0"
19
+ }
20
+ },
21
+ defaultVariants: {
22
+ variant: "primary",
23
+ padding: true
24
+ }
25
+ }
26
+ );
27
+ var toggleButtonHighlightVariants = cva(
28
+ ["pointer-events-none", "absolute", "transition-all", "duration-200", "ease-out"],
29
+ {
30
+ variants: {
31
+ variant: {
32
+ primary: ["bg-brand-primary", "shadow-sm", "rounded-uk-sm"],
33
+ secondary: ["bg-bg-primary", "shadow-sm", "rounded-uk-sm"],
34
+ ghost: ["bg-bg-primary", "shadow-sm", "rounded-uk-md"]
35
+ }
36
+ },
37
+ defaultVariants: {
38
+ variant: "primary"
39
+ }
40
+ }
41
+ );
42
+ var toggleButtonVariants = cva(
43
+ [
44
+ "focus-visible:ring-ring",
45
+ "relative",
46
+ "z-10",
47
+ "inline-flex",
48
+ "items-center",
49
+ "justify-center",
50
+ "font-normal",
51
+ "whitespace-nowrap",
52
+ "transition-colors",
53
+ "focus-visible:ring-2",
54
+ "focus-visible:outline-none",
55
+ "disabled:pointer-events-none",
56
+ "disabled:opacity-50",
57
+ "cursor-pointer"
58
+ ],
59
+ {
60
+ variants: {
61
+ variant: {
62
+ primary: [
63
+ "text-text-primary",
64
+ "hover:text-text-primary",
65
+ "active:text-brand-primary",
66
+ "data-[selected=true]:text-text-withbg"
67
+ ],
68
+ secondary: [
69
+ "text-text-tertiary",
70
+ "hover:text-text-secondary",
71
+ "active:text-brand-primary",
72
+ "data-[selected=true]:text-text-primary"
73
+ ],
74
+ ghost: [
75
+ "text-text-tertiary",
76
+ "hover:text-text-secondary",
77
+ "active:text-brand-primary",
78
+ "data-[selected=true]:text-text-primary"
79
+ ]
80
+ },
81
+ size: {
82
+ sm: "text-uk-sm gap-xxs",
83
+ base: "text-uk-md gap-xs",
84
+ lg: "text-uk-lg gap-xs"
85
+ },
86
+ icon: {
87
+ false: "",
88
+ true: "shrink-0 [&_svg]:shrink-0 [&_svg]:pointer-events-none"
89
+ },
90
+ corner: {
91
+ sm: "rounded-uk-sm",
92
+ md: "rounded-uk-md"
93
+ }
94
+ },
95
+ compoundVariants: [
96
+ // Icon button sizes
97
+ { size: "sm", icon: false, class: "h-6 px-md" },
98
+ { size: "base", icon: false, class: "h-7 px-lg" },
99
+ { size: "lg", icon: false, class: "h-8 px-xl" },
100
+ { size: "sm", icon: true, class: "size-6 p-xs" },
101
+ { size: "base", icon: true, class: "size-8 p-sm" },
102
+ { size: "lg", icon: true, class: "size-9 p-md" }
103
+ ],
104
+ defaultVariants: {
105
+ variant: "primary",
106
+ size: "base",
107
+ icon: false,
108
+ corner: "sm"
109
+ }
110
+ }
111
+ );
112
+ var ToggleButtonsContext = React.createContext(null);
113
+ var ToggleButtons = React.forwardRef(
114
+ ({
115
+ value,
116
+ onValueChange,
117
+ children,
118
+ className,
119
+ size = "base",
120
+ padding = true,
121
+ variant = "primary",
122
+ ...props
123
+ }, ref) => {
124
+ const containerRef = React.useRef(null);
125
+ const [items, setItems] = React.useState(/* @__PURE__ */ new Map());
126
+ const [highlightStyle, setHighlightStyle] = React.useState({
127
+ opacity: 0
128
+ });
129
+ const registerItem = React.useCallback((itemValue, element) => {
130
+ setItems((prev) => new Map(prev).set(itemValue, element));
131
+ }, []);
132
+ const unregisterItem = React.useCallback((itemValue) => {
133
+ setItems((prev) => {
134
+ const newMap = new Map(prev);
135
+ newMap.delete(itemValue);
136
+ return newMap;
137
+ });
138
+ }, []);
139
+ React.useEffect(() => {
140
+ const selectedElement = items.get(value);
141
+ const container = containerRef.current;
142
+ if (selectedElement && container) {
143
+ const rafId = requestAnimationFrame(() => {
144
+ const containerRect = container.getBoundingClientRect();
145
+ const selectedRect = selectedElement.getBoundingClientRect();
146
+ const paddingOffset = padding ? 4 : 0;
147
+ const left = selectedRect.left - containerRect.left - paddingOffset;
148
+ const top = selectedRect.top - containerRect.top - paddingOffset;
149
+ setHighlightStyle({
150
+ width: selectedRect.width,
151
+ height: selectedRect.height,
152
+ transform: `translate(${left}px, ${top}px)`,
153
+ opacity: 1
154
+ });
155
+ });
156
+ return () => cancelAnimationFrame(rafId);
157
+ } else {
158
+ setHighlightStyle((prev) => ({ ...prev, opacity: 0 }));
159
+ }
160
+ }, [value, items, padding]);
161
+ return /* @__PURE__ */ jsx(
162
+ ToggleButtonsContext.Provider,
163
+ {
164
+ value: { value, onValueChange, size, variant, registerItem, unregisterItem },
165
+ children: /* @__PURE__ */ jsxs(
166
+ "div",
167
+ {
168
+ ref: (node) => {
169
+ containerRef.current = node;
170
+ if (typeof ref === "function") ref(node);
171
+ else if (ref) ref.current = node;
172
+ },
173
+ className: cn(toggleButtonsVariants({ variant, padding }), className),
174
+ ...props,
175
+ children: [
176
+ /* @__PURE__ */ jsx("div", { className: cn(toggleButtonHighlightVariants({ variant })), style: highlightStyle }),
177
+ children
178
+ ]
179
+ }
180
+ )
181
+ }
182
+ );
183
+ }
184
+ );
185
+ ToggleButtons.displayName = "ToggleButtons";
186
+ var ToggleButton = React.forwardRef(
187
+ ({ value, children, className, asChild = false, icon = false, size, variant, corner, ...props }, ref) => {
188
+ const context = React.useContext(ToggleButtonsContext);
189
+ const itemRef = React.useRef(null);
190
+ if (!context) {
191
+ throw new Error("ToggleButton must be used within ToggleButtons");
192
+ }
193
+ const {
194
+ value: selectedValue,
195
+ onValueChange,
196
+ size: contextSize,
197
+ variant: contextVariant,
198
+ registerItem,
199
+ unregisterItem
200
+ } = context;
201
+ const isSelected = selectedValue === value;
202
+ const finalSize = size ?? contextSize;
203
+ const finalVariant = variant ?? contextVariant;
204
+ const finalCorner = corner ?? (finalVariant === "ghost" ? "md" : "sm");
205
+ const Comp = asChild ? Slot : "button";
206
+ React.useEffect(() => {
207
+ const element = itemRef.current;
208
+ if (element) {
209
+ registerItem(value, element);
210
+ return () => unregisterItem(value);
211
+ }
212
+ }, [value, registerItem, unregisterItem]);
213
+ return /* @__PURE__ */ jsx(
214
+ Comp,
215
+ {
216
+ ref: (node) => {
217
+ itemRef.current = node;
218
+ if (typeof ref === "function") ref(node);
219
+ else if (ref) ref.current = node;
220
+ },
221
+ ...props,
222
+ "data-selected": isSelected,
223
+ className: cn(
224
+ toggleButtonVariants({
225
+ variant: finalVariant,
226
+ size: finalSize,
227
+ icon,
228
+ corner: finalCorner
229
+ }),
230
+ className
231
+ ),
232
+ onClick: () => onValueChange(value),
233
+ type: asChild ? void 0 : "button",
234
+ children
235
+ }
236
+ );
237
+ }
238
+ );
239
+ ToggleButton.displayName = "ToggleButton";
240
+
241
+ export { ToggleButton, ToggleButtons, toggleButtonHighlightVariants, toggleButtonVariants, toggleButtonsVariants };
@@ -1,7 +1,7 @@
1
1
  import { Badge } from './chunk-IZCHLZ4H.mjs';
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
 
4
- var PACKAGE_VERSION = "0.0.53" ;
4
+ var PACKAGE_VERSION = "0.0.55" ;
5
5
  var PACKAGE_NAME = "@vuer-ai/vuer-uikit" ;
6
6
  function VersionBadge({
7
7
  className,
@@ -174,7 +174,6 @@ function SelectContentRoot({
174
174
  "relative",
175
175
  "z-50",
176
176
  "max-h-(--radix-select-content-available-height)",
177
- "min-w-[8rem]",
178
177
  "origin-(--radix-select-content-transform-origin)",
179
178
  "overflow-x-hidden",
180
179
  "overflow-y-auto",
@@ -215,7 +214,6 @@ function SelectContentFallback({ className, children, ...props }) {
215
214
  "bg-bg-primary",
216
215
  "relative",
217
216
  "z-50",
218
- "min-w-[8rem]",
219
217
  "overflow-x-hidden",
220
218
  "overflow-y-auto",
221
219
  "rounded-uk-md",
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkEAN5SZYQ_js = require('./chunk-EAN5SZYQ.js');
4
3
  var chunkQG7ZF6TO_js = require('./chunk-QG7ZF6TO.js');
5
4
  var chunk7KYAICHB_js = require('./chunk-7KYAICHB.js');
6
5
  var ToggleGroupPrimitive = require('@radix-ui/react-toggle-group');
6
+ var classVarianceAuthority = require('class-variance-authority');
7
7
  var react = require('react');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
 
@@ -27,6 +27,87 @@ function _interopNamespace(e) {
27
27
 
28
28
  var ToggleGroupPrimitive__namespace = /*#__PURE__*/_interopNamespace(ToggleGroupPrimitive);
29
29
 
30
+ var toggleGroupVariants = classVarianceAuthority.cva(
31
+ [
32
+ // Base button styling
33
+ "inline-flex",
34
+ "cursor-pointer",
35
+ "items-center",
36
+ "justify-center",
37
+ "shrink-0",
38
+ "whitespace-nowrap",
39
+ "font-normal",
40
+ "transition-all",
41
+ "[&_svg]:shrink-0",
42
+ "[&_svg]:pointer-events-none",
43
+ "outline-none",
44
+ "focus-visible:border-ring",
45
+ "focus-visible:ring-ring/50",
46
+ "focus-visible:ring-[3px]",
47
+ "focus-visible:bg-accent",
48
+ "aria-invalid:ring-destructive/20",
49
+ "aria-invalid:border-destructive",
50
+ // Toggle group specific styling
51
+ "min-w-0",
52
+ "flex-1",
53
+ "rounded-none",
54
+ "first:rounded-l-uk-sm",
55
+ "first:rounded-r-none",
56
+ "last:rounded-r-uk-sm",
57
+ "last:rounded-l-none",
58
+ "[&:not(:first-child):not(:last-child)]:rounded-none",
59
+ "focus:z-10",
60
+ "focus-visible:z-10",
61
+ // Disabled state
62
+ "disabled:pointer-events-none",
63
+ "disabled:text-text-secondary/30"
64
+ ],
65
+ {
66
+ variants: {
67
+ variant: {
68
+ primary: [
69
+ "text-text-secondary",
70
+ "bg-bg-tertiary",
71
+ "hover:bg-secondary",
72
+ "data-[state=on]:text-text-withbg",
73
+ "data-[state=on]:bg-brand-primary",
74
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--secondary),inset_-0.5px_0_0_var(--secondary)]",
75
+ "data-[state=on]:first:shadow-[inset_-0.5px_0_0_var(--secondary)]",
76
+ "data-[state=on]:last:shadow-[inset_0.5px_0_0_var(--secondary)]"
77
+ ],
78
+ secondary: [
79
+ "text-text-secondary",
80
+ "bg-bg-secondary",
81
+ "hover:bg-tertiary",
82
+ "border-solid border border-transparent -mr-[1px]",
83
+ "data-[state=on]:text-secondary-foreground",
84
+ "data-[state=on]:bg-bg-primary",
85
+ "data-[state=on]:border-line-primary",
86
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--muted),inset_-0.5px_0_0_var(--muted)]"
87
+ ],
88
+ ghost: [
89
+ "bg-bg-primary",
90
+ "hover:bg-tertiary",
91
+ "text-text-secondary",
92
+ "data-[state=on]:text-text-withbg",
93
+ "data-[state=on]:bg-text-primary",
94
+ "data-[state=on]:shadow-[inset_0.5px_0_0_var(--muted),inset_-0.5px_0_0_var(--muted)]",
95
+ "data-[state=on]:first:shadow-[inset_-0.5px_0_0_var(--muted)]",
96
+ "data-[state=on]:last:shadow-[inset_0.5px_0_0_var(--muted)]"
97
+ ]
98
+ },
99
+ size: {
100
+ sm: ["text-uk-sm", "h-6", "gap-xxs", "px-md", "[&_svg:not([class*='size-'])]:size-3"],
101
+ base: ["text-uk-md", "h-8", "gap-xs", "px-lg", "[&_svg:not([class*='size-'])]:size-4"],
102
+ lg: ["text-uk-lg", "h-9", "gap-xs", "px-xl", "[&_svg:not([class*='size-'])]:size-5"]
103
+ }
104
+ },
105
+ defaultVariants: {
106
+ variant: "primary",
107
+ size: "base"
108
+ }
109
+ }
110
+ );
30
111
  var ToggleGroupContext = react.createContext({
31
112
  size: "base",
32
113
  variant: "primary"
@@ -99,20 +180,10 @@ function ToggleGroupItemRoot({
99
180
  "data-variant": context.variant || variant,
100
181
  "data-size": context.size || size,
101
182
  className: chunk7KYAICHB_js.cn(
102
- chunkEAN5SZYQ_js.toggleVariants({
183
+ toggleGroupVariants({
103
184
  variant: context.variant || variant,
104
185
  size: context.size || size
105
186
  }),
106
- "min-w-0",
107
- "flex-1",
108
- "shrink-0",
109
- "rounded-none",
110
- "first:rounded-l-md",
111
- "last:rounded-r-md",
112
- "focus:z-10",
113
- "focus-visible:z-10",
114
- "data-[variant=outline]:border-l-0",
115
- "data-[variant=outline]:first:border-l",
116
187
  className
117
188
  ),
118
189
  ...props,
@@ -135,18 +206,10 @@ function ToggleGroupItemFallback({
135
206
  "data-variant": context.variant || variant,
136
207
  "data-size": context.size || size,
137
208
  className: chunk7KYAICHB_js.cn(
138
- chunkEAN5SZYQ_js.toggleVariants({
209
+ toggleGroupVariants({
139
210
  variant: context.variant || variant,
140
211
  size: context.size || size
141
212
  }),
142
- "min-w-0",
143
- "flex-1",
144
- "shrink-0",
145
- "rounded-none",
146
- "first:rounded-l-md",
147
- "last:rounded-r-md",
148
- "focus:z-10",
149
- "focus-visible:z-10",
150
213
  className
151
214
  ),
152
215
  ...props,
@@ -158,3 +221,4 @@ var ToggleGroupItem = chunkQG7ZF6TO_js.createClientOnlyComponent(ToggleGroupItem
158
221
 
159
222
  exports.ToggleGroup = ToggleGroup;
160
223
  exports.ToggleGroupItem = ToggleGroupItem;
224
+ exports.toggleGroupVariants = toggleGroupVariants;
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunkW3AIC7FW_js = require('./chunk-W3AIC7FW.js');
4
4
  var chunkKCA5PXNO_js = require('./chunk-KCA5PXNO.js');
5
- var chunkCZBGKVGH_js = require('./chunk-CZBGKVGH.js');
5
+ var chunkFOMVNZ3W_js = require('./chunk-FOMVNZ3W.js');
6
6
  var chunk3YODEBOY_js = require('./chunk-3YODEBOY.js');
7
7
  var chunkX6APNY5D_js = require('./chunk-X6APNY5D.js');
8
8
  var chunkUFHMEEGL_js = require('./chunk-UFHMEEGL.js');
@@ -11,7 +11,7 @@ var chunkUFHMEEGL_js = require('./chunk-UFHMEEGL.js');
11
11
  var CursorButton = chunkUFHMEEGL_js.withCursor(chunkX6APNY5D_js.Button);
12
12
  var CursorTabs = chunkUFHMEEGL_js.withCursor(chunkW3AIC7FW_js.Tabs);
13
13
  var CursorInputRoot = chunkUFHMEEGL_js.withCursor(chunk3YODEBOY_js.InputRoot);
14
- var CursorSelectTrigger = chunkUFHMEEGL_js.withCursor(chunkCZBGKVGH_js.SelectTrigger);
14
+ var CursorSelectTrigger = chunkUFHMEEGL_js.withCursor(chunkFOMVNZ3W_js.SelectTrigger);
15
15
  var CursorTextarea = chunkUFHMEEGL_js.withCursor(chunkKCA5PXNO_js.Textarea);
16
16
 
17
17
  exports.CursorButton = CursorButton;