@vuer-ai/vuer-uikit 0.0.98 → 0.0.100

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 (78) hide show
  1. package/dist/SyncScroll/SyncScroll.cjs +9 -9
  2. package/dist/SyncScroll/SyncScroll.mjs +2 -2
  3. package/dist/SyncScroll/index.cjs +9 -9
  4. package/dist/SyncScroll/index.mjs +2 -2
  5. package/dist/chunk-AIYM5PFP.cjs +66 -0
  6. package/dist/chunk-OWEYAVGT.mjs +62 -0
  7. package/dist/{chunk-7GWDO25E.cjs → chunk-XBTBTLID.cjs} +2 -2
  8. package/dist/{chunk-TTYSYGVE.mjs → chunk-XGXWOY3U.mjs} +2 -2
  9. package/dist/dial/DialPanel.cjs +23 -22
  10. package/dist/dial/DialPanel.mjs +22 -21
  11. package/dist/dial/index.cjs +39 -38
  12. package/dist/dial/index.mjs +22 -21
  13. package/dist/dial/wrapped-inputs/ControlledInputs.cjs +26 -25
  14. package/dist/dial/wrapped-inputs/ControlledInputs.mjs +22 -21
  15. package/dist/dial/wrapped-inputs/DialInputs.cjs +33 -32
  16. package/dist/dial/wrapped-inputs/DialInputs.mjs +22 -21
  17. package/dist/dial/wrapped-inputs/DialVectorInput.cjs +23 -22
  18. package/dist/dial/wrapped-inputs/DialVectorInput.mjs +22 -21
  19. package/dist/dial/wrapped-inputs/index.cjs +38 -37
  20. package/dist/dial/wrapped-inputs/index.mjs +22 -21
  21. package/dist/highlight-cursor/cursor-provider.cjs +3 -3
  22. package/dist/highlight-cursor/cursor-provider.mjs +2 -2
  23. package/dist/highlight-cursor/enhanced-components.cjs +1 -1
  24. package/dist/highlight-cursor/enhanced-components.mjs +1 -1
  25. package/dist/highlight-cursor/index.cjs +3 -3
  26. package/dist/highlight-cursor/index.mjs +2 -2
  27. package/dist/index.cjs +151 -138
  28. package/dist/index.css +7 -1
  29. package/dist/index.d.cts +1 -0
  30. package/dist/index.d.ts +1 -0
  31. package/dist/index.mjs +22 -21
  32. package/dist/ui/DialBadge.cjs +28 -0
  33. package/dist/ui/DialBadge.d.cts +33 -0
  34. package/dist/ui/DialBadge.d.ts +33 -0
  35. package/dist/ui/DialBadge.mjs +11 -0
  36. package/dist/ui/UIKitBadge.cjs +5 -5
  37. package/dist/ui/UIKitBadge.mjs +1 -1
  38. package/dist/ui/badge.d.cts +1 -1
  39. package/dist/ui/badge.d.ts +1 -1
  40. package/dist/ui/index.cjs +77 -64
  41. package/dist/ui/index.d.cts +1 -0
  42. package/dist/ui/index.d.ts +1 -0
  43. package/dist/ui/index.mjs +18 -17
  44. package/dist/ui/inputs/index.cjs +15 -15
  45. package/dist/ui/inputs/index.mjs +3 -3
  46. package/dist/ui/inputs/input.d.cts +1 -1
  47. package/dist/ui/inputs/input.d.ts +1 -1
  48. package/dist/ui/inputs/number-inputs/index.cjs +10 -10
  49. package/dist/ui/inputs/number-inputs/index.mjs +2 -2
  50. package/dist/ui/select.d.cts +1 -1
  51. package/dist/ui/select.d.ts +1 -1
  52. package/dist/ui/textarea.d.cts +1 -1
  53. package/dist/ui/textarea.d.ts +1 -1
  54. package/dist/ui/tree-view-legacy.cjs +8 -8
  55. package/dist/ui/tree-view-legacy.mjs +4 -4
  56. package/dist/ui/waterfall/index.cjs +6 -6
  57. package/dist/ui/waterfall/index.mjs +5 -5
  58. package/package.json +2 -7
  59. package/src/ui/DialBadge.tsx +97 -0
  60. package/src/ui/index.ts +1 -0
  61. package/cli/dial-cli.js +0 -833
  62. package/dist/chunk-4KWGGESI.cjs +0 -494
  63. package/dist/chunk-A5LCX2UQ.cjs +0 -208
  64. package/dist/chunk-BEJIZ56L.mjs +0 -300
  65. package/dist/chunk-C7VGRU3O.mjs +0 -283
  66. package/dist/chunk-O66RESRR.cjs +0 -285
  67. package/dist/chunk-VA3PEYFM.mjs +0 -489
  68. package/dist/chunk-VBBJSIY7.cjs +0 -308
  69. package/dist/chunk-WWGF6TBZ.mjs +0 -206
  70. package/dist/chunk-ZGN4UEJR.cjs +0 -679
  71. package/dist/chunk-ZQLRMOUW.mjs +0 -661
  72. package/src/cli/dial-cli.ts +0 -1133
  73. package/dist/{chunk-XMUP5MIM.mjs → chunk-G3EIVAVR.mjs} +0 -0
  74. package/dist/{chunk-7IS37C3P.cjs → chunk-K4I4YU6N.cjs} +1 -1
  75. package/dist/{chunk-OX2U5RAG.cjs → chunk-KFPS5CCR.cjs} +0 -0
  76. package/dist/{chunk-2OZK5DY5.mjs → chunk-KXKEZ3MH.mjs} +1 -1
  77. package/dist/{chunk-LJMNHTTG.cjs → chunk-OEI7NCF6.cjs} +4 -4
  78. package/dist/{chunk-W4JCKCW7.mjs → chunk-QHPFLC2O.mjs} +4 -4
@@ -1,308 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkG4FJGNY5_cjs = require('./chunk-G4FJGNY5.cjs');
4
- var chunkOHIB3TEN_cjs = require('./chunk-OHIB3TEN.cjs');
5
- var reactSlot = require('@radix-ui/react-slot');
6
- var react = require('react');
7
- var jsxRuntime = require('react/jsx-runtime');
8
-
9
- var SyncScroll = ({ children, className, asChild = false, ...props }) => {
10
- const Comp = asChild ? reactSlot.Slot : "div";
11
- return /* @__PURE__ */ jsxRuntime.jsx(Comp, { ref: chunkG4FJGNY5_cjs.useSyncScroll(), className: chunkOHIB3TEN_cjs.cn("overflow-y-auto", className), ...props, children });
12
- };
13
- var SyncScrollSlave = ({
14
- children,
15
- className,
16
- asChild = false,
17
- ...props
18
- }) => {
19
- const Comp = asChild ? reactSlot.Slot : "div";
20
- return /* @__PURE__ */ jsxRuntime.jsx(Comp, { ref: chunkG4FJGNY5_cjs.useScrollSlave(), className: chunkOHIB3TEN_cjs.cn("overflow-y-auto", className), ...props, children });
21
- };
22
- var SyncDrag = ({
23
- ref: extRef,
24
- children,
25
- className,
26
- asChild = false,
27
- ...props
28
- }) => {
29
- const ref = chunkG4FJGNY5_cjs.useSyncDrag({ ref: extRef, axis: "both" });
30
- const [isDragging, setIsDragging] = react.useState(false);
31
- const dragStartX = react.useRef(0);
32
- const dragStartY = react.useRef(0);
33
- const scrollStartLeft = react.useRef(0);
34
- const scrollStartTop = react.useRef(0);
35
- react.useEffect(() => {
36
- const element = ref.current;
37
- if (!element) return;
38
- const handleMouseDown = (e) => {
39
- setIsDragging(true);
40
- dragStartX.current = e.clientX;
41
- dragStartY.current = e.clientY;
42
- scrollStartLeft.current = element.scrollLeft;
43
- scrollStartTop.current = element.scrollTop;
44
- e.preventDefault();
45
- };
46
- const handleMouseMove = (e) => {
47
- if (!isDragging || !element) return;
48
- const deltaX = e.clientX - dragStartX.current;
49
- const deltaY = e.clientY - dragStartY.current;
50
- element.scrollLeft = scrollStartLeft.current - deltaX * 2;
51
- element.scrollTop = scrollStartTop.current - deltaY * 2;
52
- };
53
- const handleMouseUp = () => {
54
- setIsDragging(false);
55
- };
56
- element.addEventListener("mousedown", handleMouseDown);
57
- if (isDragging) {
58
- document.addEventListener("mousemove", handleMouseMove);
59
- document.addEventListener("mouseup", handleMouseUp);
60
- document.addEventListener("mouseleave", handleMouseUp);
61
- }
62
- return () => {
63
- element.removeEventListener("mousedown", handleMouseDown);
64
- document.removeEventListener("mousemove", handleMouseMove);
65
- document.removeEventListener("mouseup", handleMouseUp);
66
- document.removeEventListener("mouseleave", handleMouseUp);
67
- };
68
- }, [isDragging, ref]);
69
- const Comp = asChild ? reactSlot.Slot : "div";
70
- return /* @__PURE__ */ jsxRuntime.jsx(
71
- Comp,
72
- {
73
- ref,
74
- className: chunkOHIB3TEN_cjs.cn("cursor-grab overflow-auto", isDragging && "cursor-grabbing", className),
75
- style: { userSelect: isDragging ? "none" : "auto", ...props.style },
76
- ...props,
77
- children
78
- }
79
- );
80
- };
81
- var SyncDragX = ({ children, className, asChild = false, ...props }) => {
82
- const ref = chunkG4FJGNY5_cjs.useSyncDrag({ axis: "horizontal" });
83
- const [isDragging, setIsDragging] = react.useState(false);
84
- const dragStartX = react.useRef(0);
85
- const scrollStartLeft = react.useRef(0);
86
- react.useEffect(() => {
87
- const element = ref.current;
88
- if (!element) return;
89
- const handleMouseDown = (e) => {
90
- setIsDragging(true);
91
- dragStartX.current = e.clientX;
92
- scrollStartLeft.current = element.scrollLeft;
93
- e.preventDefault();
94
- };
95
- const handleMouseMove = (e) => {
96
- if (!isDragging || !element) return;
97
- const deltaX = e.clientX - dragStartX.current;
98
- element.scrollLeft = scrollStartLeft.current - deltaX * 2;
99
- };
100
- const handleMouseUp = () => {
101
- setIsDragging(false);
102
- };
103
- element.addEventListener("mousedown", handleMouseDown);
104
- if (isDragging) {
105
- document.addEventListener("mousemove", handleMouseMove);
106
- document.addEventListener("mouseup", handleMouseUp);
107
- document.addEventListener("mouseleave", handleMouseUp);
108
- }
109
- return () => {
110
- element.removeEventListener("mousedown", handleMouseDown);
111
- document.removeEventListener("mousemove", handleMouseMove);
112
- document.removeEventListener("mouseup", handleMouseUp);
113
- document.removeEventListener("mouseleave", handleMouseUp);
114
- };
115
- }, [isDragging, ref]);
116
- const Comp = asChild ? reactSlot.Slot : "div";
117
- return /* @__PURE__ */ jsxRuntime.jsx(
118
- Comp,
119
- {
120
- ref,
121
- className: chunkOHIB3TEN_cjs.cn("cursor-grab overflow-x-auto", isDragging ? "cursor-grabbing" : "", className),
122
- style: { userSelect: isDragging ? "none" : "auto", ...props.style },
123
- ...props,
124
- children
125
- }
126
- );
127
- };
128
- var SyncDragSlave = ({
129
- ref: extRef,
130
- children,
131
- className,
132
- asChild = false,
133
- ...props
134
- }) => {
135
- const ref = chunkG4FJGNY5_cjs.useScrollSlave({ ref: extRef, axis: "both" });
136
- const [isDragging, setIsDragging] = react.useState(false);
137
- const dragStartX = react.useRef(0);
138
- const dragStartY = react.useRef(0);
139
- const scrollStartLeft = react.useRef(0);
140
- const scrollStartTop = react.useRef(0);
141
- react.useEffect(() => {
142
- const element = ref.current;
143
- if (!element) return;
144
- const handleMouseDown = (e) => {
145
- setIsDragging(true);
146
- dragStartX.current = e.clientX;
147
- dragStartY.current = e.clientY;
148
- scrollStartLeft.current = element.scrollLeft;
149
- scrollStartTop.current = element.scrollTop;
150
- e.preventDefault();
151
- };
152
- const handleMouseMove = (e) => {
153
- if (!isDragging || !element) return;
154
- const deltaX = e.clientX - dragStartX.current;
155
- const deltaY = e.clientY - dragStartY.current;
156
- element.scrollLeft = scrollStartLeft.current - deltaX * 2;
157
- element.scrollTop = scrollStartTop.current - deltaY * 2;
158
- };
159
- const handleMouseUp = () => {
160
- setIsDragging(false);
161
- };
162
- element.addEventListener("mousedown", handleMouseDown);
163
- if (isDragging) {
164
- document.addEventListener("mousemove", handleMouseMove);
165
- document.addEventListener("mouseup", handleMouseUp);
166
- document.addEventListener("mouseleave", handleMouseUp);
167
- }
168
- return () => {
169
- element.removeEventListener("mousedown", handleMouseDown);
170
- document.removeEventListener("mousemove", handleMouseMove);
171
- document.removeEventListener("mouseup", handleMouseUp);
172
- document.removeEventListener("mouseleave", handleMouseUp);
173
- };
174
- }, [isDragging, ref]);
175
- const Comp = asChild ? reactSlot.Slot : "div";
176
- return /* @__PURE__ */ jsxRuntime.jsx(
177
- Comp,
178
- {
179
- ref,
180
- className: chunkOHIB3TEN_cjs.cn("cursor-grab overflow-auto", isDragging && "cursor-grabbing", className),
181
- style: { userSelect: isDragging ? "none" : "auto", ...props.style },
182
- ...props,
183
- children
184
- }
185
- );
186
- };
187
- var SyncDragSlaveX = ({
188
- ref: extRef,
189
- children,
190
- className,
191
- asChild = false,
192
- ...props
193
- }) => {
194
- const ref = chunkG4FJGNY5_cjs.useScrollSlave({ ref: extRef, axis: "horizontal" });
195
- const [isDragging, setIsDragging] = react.useState(false);
196
- const dragStartX = react.useRef(0);
197
- const scrollStartLeft = react.useRef(0);
198
- react.useEffect(() => {
199
- const element = ref.current;
200
- if (!element) return;
201
- const handleMouseDown = (e) => {
202
- setIsDragging(true);
203
- dragStartX.current = e.clientX;
204
- scrollStartLeft.current = element.scrollLeft;
205
- e.preventDefault();
206
- };
207
- const handleMouseMove = (e) => {
208
- if (!isDragging || !element) return;
209
- const deltaX = e.clientX - dragStartX.current;
210
- element.scrollLeft = scrollStartLeft.current - deltaX * 2;
211
- };
212
- const handleMouseUp = () => {
213
- setIsDragging(false);
214
- };
215
- element.addEventListener("mousedown", handleMouseDown);
216
- if (isDragging) {
217
- document.addEventListener("mousemove", handleMouseMove);
218
- document.addEventListener("mouseup", handleMouseUp);
219
- document.addEventListener("mouseleave", handleMouseUp);
220
- }
221
- return () => {
222
- element.removeEventListener("mousedown", handleMouseDown);
223
- document.removeEventListener("mousemove", handleMouseMove);
224
- document.removeEventListener("mouseup", handleMouseUp);
225
- document.removeEventListener("mouseleave", handleMouseUp);
226
- };
227
- }, [isDragging, ref]);
228
- const Comp = asChild ? reactSlot.Slot : "div";
229
- return /* @__PURE__ */ jsxRuntime.jsx(
230
- Comp,
231
- {
232
- ref,
233
- className: chunkOHIB3TEN_cjs.cn(
234
- "cursor-grab overflow-x-auto overflow-y-hidden",
235
- isDragging && "cursor-grabbing",
236
- className
237
- ),
238
- style: { userSelect: isDragging ? "none" : "auto", ...props.style },
239
- ...props,
240
- children
241
- }
242
- );
243
- };
244
- var SyncDragY = ({
245
- ref: extRef,
246
- children,
247
- className,
248
- asChild = false,
249
- ...props
250
- }) => {
251
- const ref = chunkG4FJGNY5_cjs.useSyncDrag({ ref: extRef, axis: "vertical" });
252
- const [isDragging, setIsDragging] = react.useState(false);
253
- const dragStartY = react.useRef(0);
254
- const scrollStartTop = react.useRef(0);
255
- react.useEffect(() => {
256
- const element = ref.current;
257
- if (!element) return;
258
- const handleMouseDown = (e) => {
259
- setIsDragging(true);
260
- dragStartY.current = e.clientY;
261
- scrollStartTop.current = element.scrollTop;
262
- e.preventDefault();
263
- };
264
- const handleMouseMove = (e) => {
265
- if (!isDragging || !element) return;
266
- const deltaY = e.clientY - dragStartY.current;
267
- element.scrollTop = scrollStartTop.current - deltaY * 2;
268
- };
269
- const handleMouseUp = () => {
270
- setIsDragging(false);
271
- };
272
- element.addEventListener("mousedown", handleMouseDown);
273
- if (isDragging) {
274
- document.addEventListener("mousemove", handleMouseMove);
275
- document.addEventListener("mouseup", handleMouseUp);
276
- document.addEventListener("mouseleave", handleMouseUp);
277
- }
278
- return () => {
279
- element.removeEventListener("mousedown", handleMouseDown);
280
- document.removeEventListener("mousemove", handleMouseMove);
281
- document.removeEventListener("mouseup", handleMouseUp);
282
- document.removeEventListener("mouseleave", handleMouseUp);
283
- };
284
- }, [isDragging, ref]);
285
- const Comp = asChild ? reactSlot.Slot : "div";
286
- return /* @__PURE__ */ jsxRuntime.jsx(
287
- Comp,
288
- {
289
- ref,
290
- className: chunkOHIB3TEN_cjs.cn(
291
- "cursor-grab overflow-x-hidden overflow-y-auto",
292
- isDragging && "cursor-grabbing",
293
- className
294
- ),
295
- style: { userSelect: isDragging ? "none" : "auto", ...props.style },
296
- ...props,
297
- children
298
- }
299
- );
300
- };
301
-
302
- exports.SyncDrag = SyncDrag;
303
- exports.SyncDragSlave = SyncDragSlave;
304
- exports.SyncDragSlaveX = SyncDragSlaveX;
305
- exports.SyncDragX = SyncDragX;
306
- exports.SyncDragY = SyncDragY;
307
- exports.SyncScroll = SyncScroll;
308
- exports.SyncScrollSlave = SyncScrollSlave;
@@ -1,206 +0,0 @@
1
- import { cn } from './chunk-HMN4IKTG.mjs';
2
- import { CursorContext } from './chunk-3FR3WKI4.mjs';
3
- import { useState, useRef, useEffect, useCallback, useMemo } from 'react';
4
- import { createPortal } from 'react-dom';
5
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
-
7
- var CursorProvider = ({
8
- children,
9
- maxOffsetX = 5,
10
- maxOffsetY = 20,
11
- cursorSize = 20,
12
- transitionDuration = 100,
13
- cursorClassName,
14
- className,
15
- as: Component = "div",
16
- ...props
17
- }) => {
18
- const [isClient, setIsClient] = useState(false);
19
- const [isMouseInside, setIsMouseInside] = useState(false);
20
- const [mousePosition, setMousePosition] = useState({ x: 0, y: 0 });
21
- const [hoveredElementId, setHoveredElementId] = useState(null);
22
- const [elementDimensions, setElementDimensions] = useState({
23
- width: 0,
24
- height: 0,
25
- x: 0,
26
- y: 0,
27
- right: 0,
28
- bottom: 0
29
- });
30
- const hoveredElementRef = useRef(null);
31
- useEffect(() => {
32
- setIsClient(true);
33
- }, []);
34
- useEffect(() => {
35
- if (!isClient) return;
36
- const handleMouseMove = (e) => {
37
- setMousePosition({ x: e.clientX, y: e.clientY });
38
- };
39
- document.addEventListener("mousemove", handleMouseMove);
40
- return () => document.removeEventListener("mousemove", handleMouseMove);
41
- }, [isClient]);
42
- const handleMouseEnter = useCallback(() => {
43
- setIsMouseInside(true);
44
- }, []);
45
- const handleMouseLeave = useCallback(() => {
46
- setIsMouseInside(false);
47
- setHoveredElementId(null);
48
- hoveredElementRef.current = null;
49
- }, []);
50
- const checkMouseInElement = useCallback(() => {
51
- if (!hoveredElementRef.current || !hoveredElementId) {
52
- return;
53
- }
54
- const rect = hoveredElementRef.current.getBoundingClientRect();
55
- setElementDimensions({
56
- width: rect.width,
57
- height: rect.height,
58
- x: rect.left,
59
- y: rect.top,
60
- right: rect.right,
61
- bottom: rect.bottom
62
- });
63
- const isInside = mousePosition.x >= rect.left && mousePosition.x <= rect.right && mousePosition.y >= rect.top && mousePosition.y <= rect.bottom;
64
- if (!isInside) {
65
- setHoveredElementId(null);
66
- hoveredElementRef.current = null;
67
- }
68
- }, [mousePosition, hoveredElementId]);
69
- useEffect(() => {
70
- if (!isClient) return;
71
- const handleScroll = () => {
72
- checkMouseInElement();
73
- };
74
- document.addEventListener("scroll", handleScroll, { passive: true, capture: true });
75
- return () => {
76
- document.removeEventListener("scroll", handleScroll, { capture: true });
77
- };
78
- }, [checkMouseInElement, isClient]);
79
- const registerHoveredElement = useCallback(
80
- (id, dimensions, element) => {
81
- setHoveredElementId(id);
82
- setElementDimensions({
83
- width: dimensions.width,
84
- height: dimensions.height,
85
- x: dimensions.left,
86
- y: dimensions.top,
87
- right: dimensions.right,
88
- bottom: dimensions.bottom
89
- });
90
- if (element) {
91
- hoveredElementRef.current = element;
92
- }
93
- },
94
- []
95
- );
96
- const unregisterHoveredElement = useCallback(() => {
97
- setHoveredElementId(null);
98
- hoveredElementRef.current = null;
99
- }, []);
100
- const updateElementDimensions = useCallback(
101
- (dimensions) => {
102
- if (hoveredElementId) {
103
- setElementDimensions({
104
- width: dimensions.width,
105
- height: dimensions.height,
106
- x: dimensions.left,
107
- y: dimensions.top,
108
- right: dimensions.right,
109
- bottom: dimensions.bottom
110
- });
111
- }
112
- },
113
- [hoveredElementId]
114
- );
115
- const getCursorPosition = () => {
116
- if (!hoveredElementId) {
117
- return {
118
- x: mousePosition.x - cursorSize / 2,
119
- y: mousePosition.y - cursorSize / 2
120
- };
121
- }
122
- const elementCenterX = elementDimensions.x + elementDimensions.width / 2;
123
- const elementCenterY = elementDimensions.y + elementDimensions.height / 2;
124
- const offsetX = (mousePosition.x - elementCenterX) * 0.1;
125
- const offsetY = (mousePosition.y - elementCenterY) * 0.1;
126
- const boundedOffsetX = Math.max(-maxOffsetX, Math.min(maxOffsetX, offsetX));
127
- const boundedOffsetY = Math.max(-maxOffsetY, Math.min(maxOffsetY, offsetY));
128
- return {
129
- x: elementDimensions.x + boundedOffsetX,
130
- y: elementDimensions.y + boundedOffsetY
131
- };
132
- };
133
- const contextValue = useMemo(
134
- () => ({
135
- // State values that change during component lifecycle
136
- mousePosition,
137
- hoveredElementId,
138
- elementDimensions,
139
- // Callbacks that should be stable references
140
- registerHoveredElement,
141
- unregisterHoveredElement,
142
- updateElementDimensions
143
- }),
144
- [
145
- mousePosition,
146
- hoveredElementId,
147
- elementDimensions,
148
- registerHoveredElement,
149
- unregisterHoveredElement,
150
- updateElementDimensions
151
- ]
152
- );
153
- const cursorPosition = getCursorPosition();
154
- const cursorStyleObject = useMemo(
155
- () => ({
156
- left: cursorPosition.x,
157
- top: cursorPosition.y,
158
- width: hoveredElementId ? elementDimensions.width > 0 ? elementDimensions.width : cursorSize : cursorSize,
159
- height: hoveredElementId ? elementDimensions.height > 0 ? elementDimensions.height : cursorSize : cursorSize,
160
- willChange: "transform, width, height"
161
- }),
162
- [
163
- cursorPosition.x,
164
- cursorPosition.y,
165
- hoveredElementId,
166
- elementDimensions.width,
167
- elementDimensions.height,
168
- cursorSize
169
- ]
170
- );
171
- let styleClass;
172
- if (hoveredElementId) {
173
- styleClass = `opacity-[0.05] rounded-uk-md transition-[width,height,left,top] duration-${transitionDuration} ease-out`;
174
- } else {
175
- styleClass = `opacity-90 rounded-full z-10 transition-[width,height,left,top] duration-${transitionDuration} ease-out transition-opacity duration-${transitionDuration}`;
176
- }
177
- const cursorElement = isClient && isMouseInside && /* @__PURE__ */ jsx(
178
- "div",
179
- {
180
- className: `pointer-events-none fixed ${styleClass} ${hoveredElementId ? "" : cursorClassName || ""}`,
181
- style: {
182
- ...cursorStyleObject,
183
- backgroundColor: "var(--shadow-tertiary)"
184
- }
185
- }
186
- );
187
- return /* @__PURE__ */ jsxs(Fragment, { children: [
188
- isClient && typeof document !== "undefined" && document.body && cursorElement && createPortal(cursorElement, document.body),
189
- /* @__PURE__ */ jsx(CursorContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(
190
- Component,
191
- {
192
- ...props,
193
- className: cn(className),
194
- style: {
195
- cursor: isMouseInside && !hoveredElementId ? "none" : "auto",
196
- ...props.style
197
- },
198
- onMouseEnter: handleMouseEnter,
199
- onMouseLeave: handleMouseLeave,
200
- children
201
- }
202
- ) })
203
- ] });
204
- };
205
-
206
- export { CursorProvider };