@vuer-ai/vuer-uikit 0.0.2 → 0.0.3

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 (212) hide show
  1. package/README.md +80 -0
  2. package/dist/chunk-263CMARJ.mjs +155 -0
  3. package/dist/chunk-277NQUJD.js +99 -0
  4. package/dist/chunk-3FR3WKI4.mjs +24 -0
  5. package/dist/chunk-3HXPIWL3.js +51 -0
  6. package/dist/chunk-3Q75Z2CT.mjs +76 -0
  7. package/dist/chunk-5BIQ3IN7.js +93 -0
  8. package/dist/chunk-5JP4AZ4C.js +302 -0
  9. package/dist/chunk-5U4NWZMT.mjs +78 -0
  10. package/dist/chunk-75QDQ67T.js +56 -0
  11. package/dist/chunk-7IYL2AR4.js +375 -0
  12. package/dist/chunk-ATDHGFVI.mjs +82 -0
  13. package/dist/chunk-CFXL2XYO.mjs +339 -0
  14. package/dist/chunk-CLTLT5XW.js +27 -0
  15. package/dist/chunk-CN6ISLZA.js +102 -0
  16. package/dist/chunk-CP7QYV4N.mjs +110 -0
  17. package/dist/chunk-CZSRIDXN.mjs +165 -0
  18. package/dist/chunk-D4C5V4EN.mjs +53 -0
  19. package/dist/chunk-DQGTWUID.js +186 -0
  20. package/dist/chunk-DWIK2CUV.mjs +45 -0
  21. package/dist/chunk-FXIL4NQZ.js +58 -0
  22. package/dist/chunk-FYEZTS4S.mjs +90 -0
  23. package/dist/chunk-GA2JCN3F.mjs +111 -0
  24. package/dist/chunk-HW6SLBO3.mjs +9 -0
  25. package/dist/chunk-I6VKLSAJ.js +163 -0
  26. package/dist/chunk-J4RFFBDJ.mjs +94 -0
  27. package/dist/chunk-JIXJTLEO.js +93 -0
  28. package/dist/chunk-JOBQTBEM.mjs +49 -0
  29. package/dist/chunk-JZ7V43ZL.js +136 -0
  30. package/dist/chunk-KAPV3EZO.mjs +271 -0
  31. package/dist/chunk-KJ42IGH6.js +2 -0
  32. package/dist/chunk-KO7BQ6RR.js +83 -0
  33. package/dist/chunk-KVDEBKWR.mjs +106 -0
  34. package/dist/chunk-KVFK3YC7.js +187 -0
  35. package/dist/chunk-KYKEJFJT.js +110 -0
  36. package/dist/chunk-LBFO3QAA.js +202 -0
  37. package/dist/chunk-MASRZTZC.mjs +34 -0
  38. package/dist/chunk-NA7TVYOP.js +21 -0
  39. package/dist/chunk-OE56M4MX.js +93 -0
  40. package/dist/chunk-PKGNHHWG.mjs +60 -0
  41. package/dist/chunk-Q3APPCB2.mjs +91 -0
  42. package/dist/chunk-QNTUEKYQ.mjs +19 -0
  43. package/dist/chunk-QS7WS6DD.mjs +1 -0
  44. package/dist/chunk-RPXWKB6F.js +103 -0
  45. package/dist/chunk-SDN2OTHS.js +78 -0
  46. package/dist/chunk-SKWTWHB7.mjs +53 -0
  47. package/dist/chunk-ST4P6AN6.js +2 -0
  48. package/dist/chunk-SUU4Z6E5.mjs +200 -0
  49. package/dist/chunk-SZU2TX5H.js +24 -0
  50. package/dist/chunk-TOZYLDAL.mjs +72 -0
  51. package/dist/chunk-UFR656UY.mjs +87 -0
  52. package/dist/chunk-UWO6RBCE.js +11 -0
  53. package/dist/chunk-VGCVIHBR.mjs +1 -0
  54. package/dist/chunk-WI2J7NIV.mjs +161 -0
  55. package/dist/chunk-WK3M4X72.js +2 -0
  56. package/dist/chunk-WOG6UIG5.mjs +71 -0
  57. package/dist/chunk-XACRGXGF.js +75 -0
  58. package/dist/chunk-YQORMF34.js +110 -0
  59. package/dist/chunk-Z37VNICQ.js +67 -0
  60. package/dist/chunk-ZCYBA6YN.mjs +1 -0
  61. package/dist/chunk-ZJXBC33M.js +112 -0
  62. package/dist/chunk-ZKYQYCKN.mjs +15 -0
  63. package/dist/chunk-ZYBSCTBR.js +109 -0
  64. package/dist/highlight-cursor/cursor-context.d.mts +7 -0
  65. package/dist/highlight-cursor/cursor-context.d.ts +7 -0
  66. package/dist/highlight-cursor/cursor-context.js +14 -0
  67. package/dist/highlight-cursor/cursor-context.mjs +1 -0
  68. package/dist/highlight-cursor/cursor-provider.d.mts +7 -0
  69. package/dist/highlight-cursor/cursor-provider.d.ts +7 -0
  70. package/dist/highlight-cursor/cursor-provider.js +12 -0
  71. package/dist/highlight-cursor/cursor-provider.mjs +3 -0
  72. package/dist/highlight-cursor/enhanced-components.d.mts +20 -0
  73. package/dist/highlight-cursor/enhanced-components.d.ts +20 -0
  74. package/dist/highlight-cursor/enhanced-components.js +36 -0
  75. package/dist/highlight-cursor/enhanced-components.mjs +11 -0
  76. package/dist/highlight-cursor/index.d.mts +16 -0
  77. package/dist/highlight-cursor/index.d.ts +16 -0
  78. package/dist/highlight-cursor/index.js +50 -0
  79. package/dist/highlight-cursor/index.mjs +13 -0
  80. package/dist/highlight-cursor/tabs-cursor-context.d.mts +14 -0
  81. package/dist/highlight-cursor/tabs-cursor-context.d.ts +14 -0
  82. package/dist/highlight-cursor/tabs-cursor-context.js +14 -0
  83. package/dist/highlight-cursor/tabs-cursor-context.mjs +1 -0
  84. package/dist/highlight-cursor/types.d.mts +39 -0
  85. package/dist/highlight-cursor/types.d.ts +39 -0
  86. package/dist/highlight-cursor/types.js +2 -0
  87. package/dist/highlight-cursor/types.mjs +1 -0
  88. package/dist/highlight-cursor/with-cursor.d.mts +7 -0
  89. package/dist/highlight-cursor/with-cursor.d.ts +7 -0
  90. package/dist/highlight-cursor/with-cursor.js +11 -0
  91. package/dist/highlight-cursor/with-cursor.mjs +2 -0
  92. package/dist/index.css +294 -0
  93. package/dist/index.d.mts +48 -0
  94. package/dist/index.d.ts +48 -0
  95. package/dist/index.js +382 -6744
  96. package/dist/index.mjs +31 -0
  97. package/dist/styles/theme.css +185 -0
  98. package/dist/styles/theme.d.mts +2 -0
  99. package/dist/styles/theme.d.ts +2 -0
  100. package/dist/styles/toast.css +44 -0
  101. package/dist/styles/toast.d.mts +2 -0
  102. package/dist/styles/toast.d.ts +2 -0
  103. package/dist/styles/variables.css +184 -0
  104. package/dist/styles/variables.d.mts +2 -0
  105. package/dist/styles/variables.d.ts +2 -0
  106. package/dist/ui/avatar.d.mts +16 -0
  107. package/dist/ui/avatar.d.ts +16 -0
  108. package/dist/ui/avatar.js +23 -0
  109. package/dist/ui/avatar.mjs +2 -0
  110. package/dist/ui/badge.d.mts +14 -0
  111. package/dist/ui/badge.d.ts +14 -0
  112. package/dist/ui/badge.js +16 -0
  113. package/dist/ui/badge.mjs +3 -0
  114. package/dist/ui/button.d.mts +16 -0
  115. package/dist/ui/button.d.ts +16 -0
  116. package/dist/ui/button.js +12 -0
  117. package/dist/ui/button.mjs +3 -0
  118. package/dist/ui/card.d.mts +12 -0
  119. package/dist/ui/card.d.ts +12 -0
  120. package/dist/ui/card.js +36 -0
  121. package/dist/ui/card.mjs +3 -0
  122. package/dist/ui/checkbox.d.mts +11 -0
  123. package/dist/ui/checkbox.d.ts +11 -0
  124. package/dist/ui/checkbox.js +12 -0
  125. package/dist/ui/checkbox.mjs +3 -0
  126. package/dist/ui/collapsible.d.mts +9 -0
  127. package/dist/ui/collapsible.d.ts +9 -0
  128. package/dist/ui/collapsible.js +20 -0
  129. package/dist/ui/collapsible.mjs +3 -0
  130. package/dist/ui/dropdown.d.mts +28 -0
  131. package/dist/ui/dropdown.d.ts +28 -0
  132. package/dist/ui/dropdown.js +68 -0
  133. package/dist/ui/dropdown.mjs +3 -0
  134. package/dist/ui/index.d.mts +41 -0
  135. package/dist/ui/index.d.ts +41 -0
  136. package/dist/ui/index.js +355 -0
  137. package/dist/ui/index.mjs +26 -0
  138. package/dist/ui/input-numbers.d.mts +15 -0
  139. package/dist/ui/input-numbers.d.ts +15 -0
  140. package/dist/ui/input-numbers.js +13 -0
  141. package/dist/ui/input-numbers.mjs +4 -0
  142. package/dist/ui/input.d.mts +22 -0
  143. package/dist/ui/input.d.ts +22 -0
  144. package/dist/ui/input.js +16 -0
  145. package/dist/ui/input.mjs +3 -0
  146. package/dist/ui/modal.d.mts +28 -0
  147. package/dist/ui/modal.d.ts +28 -0
  148. package/dist/ui/modal.js +48 -0
  149. package/dist/ui/modal.mjs +3 -0
  150. package/dist/ui/popover.d.mts +10 -0
  151. package/dist/ui/popover.d.ts +10 -0
  152. package/dist/ui/popover.js +23 -0
  153. package/dist/ui/popover.mjs +2 -0
  154. package/dist/ui/radio-group.d.mts +8 -0
  155. package/dist/ui/radio-group.d.ts +8 -0
  156. package/dist/ui/radio-group.js +16 -0
  157. package/dist/ui/radio-group.mjs +3 -0
  158. package/dist/ui/select.d.mts +28 -0
  159. package/dist/{types/ui → ui}/select.d.ts +18 -14
  160. package/dist/ui/select.js +48 -0
  161. package/dist/ui/select.mjs +3 -0
  162. package/dist/ui/slider.d.mts +10 -0
  163. package/dist/ui/slider.d.ts +10 -0
  164. package/dist/ui/slider.js +12 -0
  165. package/dist/ui/slider.mjs +3 -0
  166. package/dist/ui/switch.d.mts +7 -0
  167. package/dist/ui/switch.d.ts +7 -0
  168. package/dist/ui/switch.js +12 -0
  169. package/dist/ui/switch.mjs +3 -0
  170. package/dist/ui/tabs.d.mts +16 -0
  171. package/dist/ui/tabs.d.ts +16 -0
  172. package/dist/ui/tabs.js +25 -0
  173. package/dist/ui/tabs.mjs +4 -0
  174. package/dist/ui/textarea.d.mts +16 -0
  175. package/dist/ui/textarea.d.ts +16 -0
  176. package/dist/ui/textarea.js +12 -0
  177. package/dist/ui/textarea.mjs +3 -0
  178. package/dist/ui/theme-context.d.mts +17 -0
  179. package/dist/{types/ui → ui}/theme-context.d.ts +5 -3
  180. package/dist/ui/theme-context.js +14 -0
  181. package/dist/ui/theme-context.mjs +1 -0
  182. package/dist/ui/toast.d.mts +7 -0
  183. package/dist/ui/toast.d.ts +7 -0
  184. package/dist/ui/toast.js +14 -0
  185. package/dist/ui/toast.mjs +1 -0
  186. package/dist/ui/toggle-group.d.mts +12 -0
  187. package/dist/ui/toggle-group.d.ts +12 -0
  188. package/dist/ui/toggle-group.js +17 -0
  189. package/dist/ui/toggle-group.mjs +4 -0
  190. package/dist/ui/toggle.d.mts +13 -0
  191. package/dist/ui/toggle.d.ts +13 -0
  192. package/dist/ui/toggle.js +16 -0
  193. package/dist/ui/toggle.mjs +3 -0
  194. package/dist/ui/tooltip.d.mts +10 -0
  195. package/dist/ui/tooltip.d.ts +10 -0
  196. package/dist/ui/tooltip.js +23 -0
  197. package/dist/ui/tooltip.mjs +2 -0
  198. package/dist/utils/cn.d.mts +5 -0
  199. package/dist/utils/cn.d.ts +5 -0
  200. package/dist/utils/cn.js +10 -0
  201. package/dist/utils/cn.mjs +1 -0
  202. package/dist/utils/index.d.mts +2 -0
  203. package/dist/utils/index.d.ts +2 -0
  204. package/dist/utils/index.js +11 -0
  205. package/dist/utils/index.mjs +2 -0
  206. package/package.json +48 -27
  207. package/dist/index.umd.js +0 -74
  208. package/dist/types/index.d.ts +0 -4
  209. package/dist/types/lib/utils.d.ts +0 -2
  210. package/dist/types/ui/button.d.ts +0 -13
  211. package/dist/types/ui/input.d.ts +0 -19
  212. package/dist/vuer-uikit.css +0 -1
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var chunkUWO6RBCE_js = require('./chunk-UWO6RBCE.js');
4
+ var AvatarPrimitive = require('@radix-ui/react-avatar');
5
+ var React = require('react');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
+
10
+ function _interopNamespace(e) {
11
+ if (e && e.__esModule) return e;
12
+ var n = Object.create(null);
13
+ if (e) {
14
+ Object.keys(e).forEach(function (k) {
15
+ if (k !== 'default') {
16
+ var d = Object.getOwnPropertyDescriptor(e, k);
17
+ Object.defineProperty(n, k, d.get ? d : {
18
+ enumerable: true,
19
+ get: function () { return e[k]; }
20
+ });
21
+ }
22
+ });
23
+ }
24
+ n.default = e;
25
+ return Object.freeze(n);
26
+ }
27
+
28
+ var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
29
+ var React__default = /*#__PURE__*/_interopDefault(React);
30
+
31
+ function Avatar({ className, ...props }) {
32
+ return /* @__PURE__ */ jsxRuntime.jsx(
33
+ AvatarPrimitive__namespace.Root,
34
+ {
35
+ "data-slot": "avatar",
36
+ className: chunkUWO6RBCE_js.cn("relative flex size-[24px] shrink-0 overflow-hidden rounded-full", className),
37
+ ...props
38
+ }
39
+ );
40
+ }
41
+ function AvatarImage({ className, ...props }) {
42
+ return /* @__PURE__ */ jsxRuntime.jsx(
43
+ AvatarPrimitive__namespace.Image,
44
+ {
45
+ "data-slot": "avatar-image",
46
+ className: chunkUWO6RBCE_js.cn("aspect-square size-full", className),
47
+ ...props
48
+ }
49
+ );
50
+ }
51
+ function AvatarFallback({ className, ...props }) {
52
+ return /* @__PURE__ */ jsxRuntime.jsx(
53
+ AvatarPrimitive__namespace.Fallback,
54
+ {
55
+ "data-slot": "avatar-fallback",
56
+ className: chunkUWO6RBCE_js.cn(
57
+ "bg-bg-tertiary flex size-full items-center justify-center rounded-full",
58
+ className
59
+ ),
60
+ ...props
61
+ }
62
+ );
63
+ }
64
+ function AvatarGroup({ children, className, spacing = "normal", max }) {
65
+ const spacingClasses = {
66
+ tight: "-space-x-1.5",
67
+ normal: "-space-x-1",
68
+ loose: "-space-x-0.45"
69
+ };
70
+ const childrenArray = React__default.default.Children.toArray(children);
71
+ const displayChildren = max ? childrenArray.slice(0, max) : childrenArray;
72
+ const remainingCount = max && childrenArray.length > max ? childrenArray.length - max : 0;
73
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkUWO6RBCE_js.cn("flex", spacingClasses[spacing], className), children: [
74
+ displayChildren.map((child, index) => {
75
+ var _a;
76
+ const zIndex = 30 - index;
77
+ if (React__default.default.isValidElement(child)) {
78
+ return React__default.default.cloneElement(
79
+ child,
80
+ {
81
+ key: index,
82
+ className: chunkUWO6RBCE_js.cn(
83
+ `ring-background relative ring-2 z-[${zIndex}] hover:scale-120 transition-all duration-200 ease-in-out hover:z-[100]`,
84
+ (_a = child.props) == null ? void 0 : _a.className
85
+ )
86
+ }
87
+ );
88
+ }
89
+ return child;
90
+ }),
91
+ remainingCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(
92
+ Avatar,
93
+ {
94
+ className: chunkUWO6RBCE_js.cn(
95
+ "ring-background hover:scale-120 relative cursor-default ring-2 transition-all duration-200 ease-in-out hover:z-[100]",
96
+ `z-[${30 - displayChildren.length}]`
97
+ ),
98
+ children: /* @__PURE__ */ jsxRuntime.jsxs(AvatarFallback, { children: [
99
+ "+",
100
+ remainingCount
101
+ ] })
102
+ }
103
+ )
104
+ ] });
105
+ }
106
+
107
+ exports.Avatar = Avatar;
108
+ exports.AvatarFallback = AvatarFallback;
109
+ exports.AvatarGroup = AvatarGroup;
110
+ exports.AvatarImage = AvatarImage;
@@ -0,0 +1,202 @@
1
+ 'use strict';
2
+
3
+ var chunkUWO6RBCE_js = require('./chunk-UWO6RBCE.js');
4
+ var chunkCLTLT5XW_js = require('./chunk-CLTLT5XW.js');
5
+ var react = require('react');
6
+ var reactDom = require('react-dom');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ var CursorProvider = ({
10
+ children,
11
+ maxOffsetX = 5,
12
+ maxOffsetY = 20,
13
+ cursorSize = 20,
14
+ transitionDuration = 100,
15
+ cursorClassName,
16
+ className,
17
+ as: Component = "div",
18
+ ...props
19
+ }) => {
20
+ const [isMouseInside, setIsMouseInside] = react.useState(false);
21
+ const [mousePosition, setMousePosition] = react.useState({ x: 0, y: 0 });
22
+ const [hoveredElementId, setHoveredElementId] = react.useState(null);
23
+ const [elementDimensions, setElementDimensions] = react.useState({
24
+ width: 0,
25
+ height: 0,
26
+ x: 0,
27
+ y: 0,
28
+ right: 0,
29
+ bottom: 0
30
+ });
31
+ const hoveredElementRef = react.useRef(null);
32
+ react.useEffect(() => {
33
+ const handleMouseMove = (e) => {
34
+ setMousePosition({ x: e.clientX, y: e.clientY });
35
+ };
36
+ document.addEventListener("mousemove", handleMouseMove);
37
+ return () => document.removeEventListener("mousemove", handleMouseMove);
38
+ }, []);
39
+ const handleMouseEnter = react.useCallback(() => {
40
+ setIsMouseInside(true);
41
+ }, []);
42
+ const handleMouseLeave = react.useCallback(() => {
43
+ setIsMouseInside(false);
44
+ setHoveredElementId(null);
45
+ hoveredElementRef.current = null;
46
+ }, []);
47
+ const checkMouseInElement = react.useCallback(() => {
48
+ if (!hoveredElementRef.current || !hoveredElementId) {
49
+ return;
50
+ }
51
+ const rect = hoveredElementRef.current.getBoundingClientRect();
52
+ setElementDimensions({
53
+ width: rect.width,
54
+ height: rect.height,
55
+ x: rect.left,
56
+ y: rect.top,
57
+ right: rect.right,
58
+ bottom: rect.bottom
59
+ });
60
+ const isInside = mousePosition.x >= rect.left && mousePosition.x <= rect.right && mousePosition.y >= rect.top && mousePosition.y <= rect.bottom;
61
+ if (!isInside) {
62
+ setHoveredElementId(null);
63
+ hoveredElementRef.current = null;
64
+ }
65
+ }, [mousePosition, hoveredElementId]);
66
+ react.useEffect(() => {
67
+ const handleScroll = () => {
68
+ checkMouseInElement();
69
+ };
70
+ document.addEventListener("scroll", handleScroll, { passive: true, capture: true });
71
+ return () => {
72
+ document.removeEventListener("scroll", handleScroll, { capture: true });
73
+ };
74
+ }, [checkMouseInElement]);
75
+ const registerHoveredElement = react.useCallback(
76
+ (id, dimensions, element) => {
77
+ setHoveredElementId(id);
78
+ setElementDimensions({
79
+ width: dimensions.width,
80
+ height: dimensions.height,
81
+ x: dimensions.left,
82
+ y: dimensions.top,
83
+ right: dimensions.right,
84
+ bottom: dimensions.bottom
85
+ });
86
+ if (element) {
87
+ hoveredElementRef.current = element;
88
+ }
89
+ },
90
+ []
91
+ );
92
+ const unregisterHoveredElement = react.useCallback(() => {
93
+ setHoveredElementId(null);
94
+ hoveredElementRef.current = null;
95
+ }, []);
96
+ const updateElementDimensions = react.useCallback(
97
+ (dimensions) => {
98
+ if (hoveredElementId) {
99
+ setElementDimensions({
100
+ width: dimensions.width,
101
+ height: dimensions.height,
102
+ x: dimensions.left,
103
+ y: dimensions.top,
104
+ right: dimensions.right,
105
+ bottom: dimensions.bottom
106
+ });
107
+ }
108
+ },
109
+ [hoveredElementId]
110
+ );
111
+ const getCursorPosition = () => {
112
+ if (!hoveredElementId) {
113
+ return {
114
+ x: mousePosition.x - cursorSize / 2,
115
+ y: mousePosition.y - cursorSize / 2
116
+ };
117
+ }
118
+ const elementCenterX = elementDimensions.x + elementDimensions.width / 2;
119
+ const elementCenterY = elementDimensions.y + elementDimensions.height / 2;
120
+ const offsetX = (mousePosition.x - elementCenterX) * 0.1;
121
+ const offsetY = (mousePosition.y - elementCenterY) * 0.1;
122
+ const boundedOffsetX = Math.max(-maxOffsetX, Math.min(maxOffsetX, offsetX));
123
+ const boundedOffsetY = Math.max(-maxOffsetY, Math.min(maxOffsetY, offsetY));
124
+ return {
125
+ x: elementDimensions.x + boundedOffsetX,
126
+ y: elementDimensions.y + boundedOffsetY
127
+ };
128
+ };
129
+ const contextValue = react.useMemo(
130
+ () => ({
131
+ // State values that change during component lifecycle
132
+ mousePosition,
133
+ hoveredElementId,
134
+ elementDimensions,
135
+ // Callbacks that should be stable references
136
+ registerHoveredElement,
137
+ unregisterHoveredElement,
138
+ updateElementDimensions
139
+ }),
140
+ [
141
+ mousePosition,
142
+ hoveredElementId,
143
+ elementDimensions,
144
+ registerHoveredElement,
145
+ unregisterHoveredElement,
146
+ updateElementDimensions
147
+ ]
148
+ );
149
+ const cursorPosition = getCursorPosition();
150
+ const cursorStyleObject = react.useMemo(
151
+ () => ({
152
+ left: cursorPosition.x,
153
+ top: cursorPosition.y,
154
+ width: hoveredElementId ? elementDimensions.width > 0 ? elementDimensions.width : cursorSize : cursorSize,
155
+ height: hoveredElementId ? elementDimensions.height > 0 ? elementDimensions.height : cursorSize : cursorSize,
156
+ willChange: "transform, width, height"
157
+ }),
158
+ [
159
+ cursorPosition.x,
160
+ cursorPosition.y,
161
+ hoveredElementId,
162
+ elementDimensions.width,
163
+ elementDimensions.height,
164
+ cursorSize
165
+ ]
166
+ );
167
+ let styleClass;
168
+ if (hoveredElementId) {
169
+ styleClass = `opacity-[0.05] rounded-md transition-[width,height,left,top] duration-${transitionDuration} ease-out`;
170
+ } else {
171
+ styleClass = `opacity-90 rounded-xl z-10 transition-[width,height,left,top] duration-${transitionDuration} ease-out transition-opacity duration-${transitionDuration}`;
172
+ }
173
+ const cursorElement = isMouseInside && /* @__PURE__ */ jsxRuntime.jsx(
174
+ "div",
175
+ {
176
+ className: `pointer-events-none fixed ${styleClass} ${hoveredElementId ? "" : cursorClassName || ""}`,
177
+ style: {
178
+ ...cursorStyleObject,
179
+ backgroundColor: "var(--shadow-secondary)"
180
+ }
181
+ }
182
+ );
183
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
184
+ typeof document !== "undefined" && document.body && cursorElement && reactDom.createPortal(cursorElement, document.body),
185
+ /* @__PURE__ */ jsxRuntime.jsx(chunkCLTLT5XW_js.CursorContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(
186
+ Component,
187
+ {
188
+ ...props,
189
+ className: chunkUWO6RBCE_js.cn(className),
190
+ style: {
191
+ cursor: isMouseInside && !hoveredElementId ? "none" : "auto",
192
+ ...props.style
193
+ },
194
+ onMouseEnter: handleMouseEnter,
195
+ onMouseLeave: handleMouseLeave,
196
+ children
197
+ }
198
+ ) })
199
+ ] });
200
+ };
201
+
202
+ exports.CursorProvider = CursorProvider;
@@ -0,0 +1,34 @@
1
+ import { cn } from './chunk-HW6SLBO3.mjs';
2
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ function Collapsible({ ...props }) {
6
+ return /* @__PURE__ */ jsx(CollapsiblePrimitive.Root, { "data-slot": "collapsible", ...props });
7
+ }
8
+ function CollapsibleTrigger2({
9
+ ...props
10
+ }) {
11
+ return /* @__PURE__ */ jsx(CollapsiblePrimitive.CollapsibleTrigger, { "data-slot": "collapsible-trigger", ...props });
12
+ }
13
+ function CollapsibleContent2({
14
+ className,
15
+ ...props
16
+ }) {
17
+ return /* @__PURE__ */ jsx(
18
+ CollapsiblePrimitive.CollapsibleContent,
19
+ {
20
+ "data-slot": "collapsible-content",
21
+ className: cn(
22
+ [
23
+ "overflow-hidden",
24
+ "data-[state=open]:animate-collapsible-down",
25
+ "data-[state=closed]:animate-collapsible-up"
26
+ ],
27
+ className
28
+ ),
29
+ ...props
30
+ }
31
+ );
32
+ }
33
+
34
+ export { Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger };
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var chunk5JP4AZ4C_js = require('./chunk-5JP4AZ4C.js');
4
+ var chunkJZ7V43ZL_js = require('./chunk-JZ7V43ZL.js');
5
+ var chunk3HXPIWL3_js = require('./chunk-3HXPIWL3.js');
6
+ var chunk5BIQ3IN7_js = require('./chunk-5BIQ3IN7.js');
7
+ var chunkZYBSCTBR_js = require('./chunk-ZYBSCTBR.js');
8
+ var chunkZJXBC33M_js = require('./chunk-ZJXBC33M.js');
9
+
10
+ // src/highlight-cursor/enhanced-components.tsx
11
+ var CursorButton = chunkZJXBC33M_js.withCursor(chunk5BIQ3IN7_js.Button);
12
+ var CursorTabs = chunkZJXBC33M_js.withCursor(chunkJZ7V43ZL_js.Tabs);
13
+ var CursorInputRoot = chunkZJXBC33M_js.withCursor(chunkZYBSCTBR_js.InputRoot);
14
+ var CursorSelectTrigger = chunkZJXBC33M_js.withCursor(chunk5JP4AZ4C_js.SelectTrigger);
15
+ var CursorTextarea = chunkZJXBC33M_js.withCursor(chunk3HXPIWL3_js.Textarea);
16
+
17
+ exports.CursorButton = CursorButton;
18
+ exports.CursorInputRoot = CursorInputRoot;
19
+ exports.CursorSelectTrigger = CursorSelectTrigger;
20
+ exports.CursorTabs = CursorTabs;
21
+ exports.CursorTextarea = CursorTextarea;
@@ -0,0 +1,93 @@
1
+ 'use strict';
2
+
3
+ var chunkUWO6RBCE_js = require('./chunk-UWO6RBCE.js');
4
+ var CheckboxPrimitive = require('@radix-ui/react-checkbox');
5
+ var lucideReact = require('lucide-react');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n.default = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
27
+
28
+ function Checkbox({ className, checkall, ...props }) {
29
+ return /* @__PURE__ */ jsxRuntime.jsx(
30
+ CheckboxPrimitive__namespace.Root,
31
+ {
32
+ "data-slot": "checkbox",
33
+ className: chunkUWO6RBCE_js.cn(
34
+ "group",
35
+ "relative",
36
+ "w-[16px]",
37
+ "h-[16px]",
38
+ "rounded-[3px]",
39
+ "border-[1.5px]",
40
+ "border-solid",
41
+ "border-bg-tertiary",
42
+ "data-[state=checked]:bg-brand-primary",
43
+ "data-[state=checked]:border-none",
44
+ "disabled:cursor-not-allowed",
45
+ "disabled:bg-bg-secondary",
46
+ "disabled:data-[state=checked]:bg-bg-secondary",
47
+ "disabled:data-[state=checked]:border-[1.5px]",
48
+ "disabled:data-[state=checked]:border-solid",
49
+ "disabled:data-[state=checked]:border-bg-tertiary",
50
+ checkall && [
51
+ "data-[state=checked]:bg-bg-transparent",
52
+ "data-[state=checked]:border-[1.5px]",
53
+ "data-[state=checked]:border-solid",
54
+ "data-[state=checked]:border-bg-tertiary"
55
+ ],
56
+ className
57
+ ),
58
+ ...props,
59
+ children: checkall ? /* @__PURE__ */ jsxRuntime.jsx(
60
+ CheckboxPrimitive__namespace.Indicator,
61
+ {
62
+ "data-slot": "checkbox-indicator",
63
+ className: chunkUWO6RBCE_js.cn(
64
+ "absolute",
65
+ "inset-0",
66
+ "m-auto",
67
+ "w-3/5",
68
+ "h-3/5",
69
+ "bg-brand-primary",
70
+ "group-disabled:bg-bg-tertiary"
71
+ )
72
+ }
73
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
74
+ CheckboxPrimitive__namespace.Indicator,
75
+ {
76
+ "data-slot": "checkbox-indicator",
77
+ className: chunkUWO6RBCE_js.cn(
78
+ "flex",
79
+ "items-center",
80
+ "justify-center",
81
+ "text-current",
82
+ "transition-none",
83
+ "text-icon-withbg",
84
+ "group-disabled:text-bg-tertiary"
85
+ ),
86
+ children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckIcon, { className: "size-3.5" })
87
+ }
88
+ )
89
+ }
90
+ );
91
+ }
92
+
93
+ exports.Checkbox = Checkbox;
@@ -0,0 +1,60 @@
1
+ import { cn } from './chunk-HW6SLBO3.mjs';
2
+ import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ function RadioGroup({ className, ...props }) {
6
+ return /* @__PURE__ */ jsx(
7
+ RadioGroupPrimitive.Root,
8
+ {
9
+ "data-slot": "radio-group",
10
+ className: cn("grid gap-2", className),
11
+ ...props
12
+ }
13
+ );
14
+ }
15
+ function RadioGroupItem({ className, ...props }) {
16
+ return /* @__PURE__ */ jsx(
17
+ RadioGroupPrimitive.Item,
18
+ {
19
+ "data-slot": "radio-group-item",
20
+ className: cn(
21
+ "group",
22
+ "w-[16px]",
23
+ "h-[16px]",
24
+ "rounded-full",
25
+ "border-[1.5px]",
26
+ "border-solid",
27
+ "border-bg-tertiary",
28
+ "data-[state=checked]:border-brand-primary",
29
+ "disabled:cursor-not-allowed",
30
+ "disabled:bg-bg-secondary",
31
+ "disabled:data-[state=checked]:border-bg-tertiary",
32
+ className
33
+ ),
34
+ ...props,
35
+ children: /* @__PURE__ */ jsx(
36
+ RadioGroupPrimitive.Indicator,
37
+ {
38
+ "data-slot": "radio-group-indicator",
39
+ className: "relative flex items-center justify-center",
40
+ children: /* @__PURE__ */ jsx(
41
+ "div",
42
+ {
43
+ className: cn(
44
+ "absolute",
45
+ "inset-0",
46
+ "m-auto",
47
+ "size-[8px]",
48
+ "rounded-full",
49
+ "bg-brand-primary",
50
+ "group-disabled:bg-bg-tertiary"
51
+ )
52
+ }
53
+ )
54
+ }
55
+ )
56
+ }
57
+ );
58
+ }
59
+
60
+ export { RadioGroup, RadioGroupItem };
@@ -0,0 +1,91 @@
1
+ import { cn } from './chunk-HW6SLBO3.mjs';
2
+ import { Slot } from '@radix-ui/react-slot';
3
+ import { cva } from 'class-variance-authority';
4
+ import { forwardRef } from 'react';
5
+ import { jsx } from 'react/jsx-runtime';
6
+
7
+ var buttonVariants = cva(
8
+ [
9
+ "inline-flex",
10
+ "items-center",
11
+ "justify-center",
12
+ "shrink-0",
13
+ "whitespace-nowrap",
14
+ "rounded-uk-sm",
15
+ "font-medium",
16
+ "transition-all",
17
+ "[&_svg]:shrink-0 ",
18
+ "[&_svg]:pointer-events-none",
19
+ "outline-none",
20
+ "disabled:pointer-events-none",
21
+ "disabled:bg-bg-tertiary",
22
+ "disabled:text-text-tertiary",
23
+ "focus-visible:border-ring",
24
+ "focus-visible:ring-ring/50",
25
+ "focus-visible:ring-[3px]",
26
+ "focus-visible:bg-brand-tertiary",
27
+ "aria-invalid:ring-destructive/20",
28
+ "aria-invalid:border-destructive"
29
+ ],
30
+ {
31
+ variants: {
32
+ variant: {
33
+ primary: [
34
+ "bg-brand-primary",
35
+ "text-text-withbg",
36
+ "hover:bg-brand-secondary",
37
+ "active:bg-brand-tertiary"
38
+ ],
39
+ secondary: [
40
+ "bg-bg-secondary",
41
+ "text-text-highlight",
42
+ "hover:bg-bg-quaternary",
43
+ "active:bg-bg-tertiary"
44
+ ],
45
+ destructive: [
46
+ "bg-danger-primary",
47
+ "text-text-withbg",
48
+ "hover:bg-danger-secondary",
49
+ "active:bg-danger-tertiary"
50
+ ],
51
+ ghost: [
52
+ "text-text-primary",
53
+ "hover:bg-bg-tertiary",
54
+ "hover:text-text-secondary",
55
+ "active:bg-bg-secondary"
56
+ ],
57
+ link: ["text-text-primary", "underline-offset-4", "hover:underline"]
58
+ },
59
+ size: {
60
+ sm: ["text-xs", "h-5.5", "gap-xxs", "px-md", "[&_svg:not([class*='size-'])]:size-3"],
61
+ base: ["text-xs", "h-7 ", "gap-xs", " px-lg", "[&_svg:not([class*='size-'])]:size-3.5"],
62
+ lg: ["text-sm", "h-8", " gap-xs", "px-xl", "[&_svg:not([class*='size-'])]:size-4"]
63
+ },
64
+ icon: { false: null, true: null }
65
+ },
66
+ compoundVariants: [
67
+ { size: "sm", icon: true, class: ["px-xs", "py-xs", " size-5.5"] },
68
+ { size: "base", icon: true, class: ["px-sm", "py-sm", "size-7"] },
69
+ { size: "lg", icon: true, class: ["px-md", "py-md", " size-8"] }
70
+ ],
71
+ defaultVariants: {
72
+ variant: "primary",
73
+ size: "base",
74
+ icon: false
75
+ }
76
+ }
77
+ );
78
+ var Button = forwardRef(function Button2({ className, variant, size, icon, asChild = false, ...props }, ref) {
79
+ const Comp = asChild ? Slot : "button";
80
+ return /* @__PURE__ */ jsx(
81
+ Comp,
82
+ {
83
+ ref,
84
+ "data-slot": "button",
85
+ className: cn(buttonVariants({ variant, size, icon, className })),
86
+ ...props
87
+ }
88
+ );
89
+ });
90
+
91
+ export { Button };
@@ -0,0 +1,19 @@
1
+ import { Toaster as Toaster$1 } from 'sonner';
2
+ export { toast } from 'sonner';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ // src/ui/toast.tsx
6
+ var Toaster = ({ ...props }) => {
7
+ return /* @__PURE__ */ jsx(
8
+ Toaster$1,
9
+ {
10
+ toastOptions: {
11
+ className: "vk-toast",
12
+ descriptionClassName: "vk-toast-description"
13
+ },
14
+ ...props
15
+ }
16
+ );
17
+ };
18
+
19
+ export { Toaster };
@@ -0,0 +1 @@
1
+