@vuer-ai/vuer-uikit 0.0.5 → 0.0.11

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 (61) hide show
  1. package/README.md +2 -0
  2. package/dist/{chunk-6TYLO2AU.js → chunk-2YCL2ET2.js} +3 -3
  3. package/dist/{chunk-735HE3BG.js → chunk-5SR53QBZ.js} +2 -2
  4. package/dist/{chunk-VMPVNLEN.js → chunk-66DYOZI3.js} +1 -1
  5. package/dist/{chunk-4IU7VY4X.js → chunk-6N5422RT.js} +2 -2
  6. package/dist/{chunk-RX22QM5B.mjs → chunk-7X6N54LX.mjs} +1 -1
  7. package/dist/chunk-CCGUGCCV.js +21 -0
  8. package/dist/{chunk-U276W75T.mjs → chunk-DZ4J7I7I.mjs} +2 -2
  9. package/dist/{chunk-D4C5V4EN.mjs → chunk-E5KWKBH3.mjs} +8 -1
  10. package/dist/{chunk-4PAHMURP.js → chunk-EFIRD3FN.js} +2 -1
  11. package/dist/{chunk-34L2NURS.mjs → chunk-F776EMXP.mjs} +2 -2
  12. package/dist/{chunk-75QDQ67T.js → chunk-FSMKJAZT.js} +8 -1
  13. package/dist/{chunk-QD7TNSTX.js → chunk-IOI3YFTY.js} +5 -5
  14. package/dist/{chunk-GI5ZA3AG.js → chunk-KQAHAGUG.js} +12 -12
  15. package/dist/chunk-M4TZHOUK.js +41 -0
  16. package/dist/{chunk-XU3E2EDQ.mjs → chunk-O4TK3AKI.mjs} +5 -5
  17. package/dist/chunk-T3WBC5YK.mjs +39 -0
  18. package/dist/{chunk-LWFIF2HF.mjs → chunk-UKFVRXAR.mjs} +3 -3
  19. package/dist/{chunk-SP3DH5MP.mjs → chunk-WO3WHXDP.mjs} +2 -1
  20. package/dist/{chunk-AWWKK6AT.mjs → chunk-XCCC7HVN.mjs} +11 -11
  21. package/dist/chunk-Z6XRPTIQ.mjs +15 -0
  22. package/dist/index.css +1 -1
  23. package/dist/index.d.mts +1 -0
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.js +34 -29
  26. package/dist/index.mjs +10 -9
  27. package/dist/ui/avatar.js +5 -5
  28. package/dist/ui/avatar.mjs +1 -1
  29. package/dist/ui/badge.d.mts +1 -1
  30. package/dist/ui/badge.d.ts +1 -1
  31. package/dist/ui/badge.js +3 -3
  32. package/dist/ui/badge.mjs +1 -1
  33. package/dist/ui/index.d.mts +1 -0
  34. package/dist/ui/index.d.ts +1 -0
  35. package/dist/ui/index.js +34 -29
  36. package/dist/ui/index.mjs +10 -9
  37. package/dist/ui/input-numbers.js +2 -2
  38. package/dist/ui/input-numbers.mjs +1 -1
  39. package/dist/ui/input.d.mts +1 -1
  40. package/dist/ui/input.d.ts +1 -1
  41. package/dist/ui/select.d.mts +1 -1
  42. package/dist/ui/select.d.ts +1 -1
  43. package/dist/ui/sheet.js +9 -9
  44. package/dist/ui/sheet.mjs +1 -1
  45. package/dist/ui/textarea.d.mts +1 -1
  46. package/dist/ui/textarea.d.ts +1 -1
  47. package/dist/ui/theme-context.js +3 -3
  48. package/dist/ui/theme-context.mjs +1 -1
  49. package/dist/ui/timeline.js +3 -3
  50. package/dist/ui/timeline.mjs +2 -2
  51. package/dist/ui/tree-view-v2.js +2 -2
  52. package/dist/ui/tree-view-v2.mjs +1 -1
  53. package/dist/ui/tree-view.js +2 -2
  54. package/dist/ui/tree-view.mjs +1 -1
  55. package/dist/ui/version-badge.d.mts +26 -0
  56. package/dist/ui/version-badge.d.ts +26 -0
  57. package/dist/ui/version-badge.js +13 -0
  58. package/dist/ui/version-badge.mjs +4 -0
  59. package/package.json +7 -8
  60. /package/dist/{chunk-IKIXD35H.mjs → chunk-F56ZKT7B.mjs} +0 -0
  61. /package/dist/{chunk-P3NMVNEO.js → chunk-N7CINZS2.js} +0 -0
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # vuer-uikit
2
2
 
3
+ **Documentation & Examples**: [uikit.vuer.ai](https://uikit.vuer.ai)
4
+
3
5
  ## Installation
4
6
 
5
7
  Getting up and running is quick and easy.
@@ -111,7 +111,7 @@ var TreeView = react.forwardRef(
111
111
  "div",
112
112
  {
113
113
  className: chunkXXWQ4RVP_js.cn(
114
- "bg-bg-primary relative min-w-[240px] max-w-[300px] overflow-hidden p-2",
114
+ "bg-bg-primary rounded-uk-md relative max-w-[300px] min-w-[240px] overflow-hidden p-2",
115
115
  className
116
116
  ),
117
117
  "data-tree-container": true,
@@ -119,7 +119,7 @@ var TreeView = react.forwardRef(
119
119
  /* @__PURE__ */ jsxRuntime.jsx(
120
120
  "div",
121
121
  {
122
- className: "bg-bg-tertiary rounded-uk-sm pointer-events-none absolute left-2 right-2 z-10 transition-all duration-150",
122
+ className: "bg-bg-tertiary rounded-uk-sm pointer-events-none absolute right-2 left-2 z-10 transition-all duration-150",
123
123
  style: {
124
124
  display: hoverBackgroundStyle.display,
125
125
  top: hoverBackgroundStyle.top,
@@ -401,7 +401,7 @@ var AccordionContent = react.forwardRef(({ className, children, ...props }, ref)
401
401
  className
402
402
  ),
403
403
  ...props,
404
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pb-0 pt-0", children })
404
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-0 pb-0", children })
405
405
  }
406
406
  ));
407
407
  AccordionContent.displayName = AccordionPrimitive__namespace.Content.displayName;
@@ -36,7 +36,7 @@ function SheetClose({ ...props }) {
36
36
  SheetPrimitive__namespace.Close,
37
37
  {
38
38
  "data-slot": "sheet-close",
39
- className: chunkXXWQ4RVP_js.cn("focus:outline-none focus:ring-0"),
39
+ className: chunkXXWQ4RVP_js.cn("focus:ring-0 focus:outline-none"),
40
40
  ...props
41
41
  }
42
42
  );
@@ -80,7 +80,7 @@ function SheetContent({
80
80
  ...props,
81
81
  children: [
82
82
  children,
83
- /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "text-icon-primary hover:text-icon-highlight absolute right-4 top-4 disabled:pointer-events-none", children: [
83
+ /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "text-icon-primary hover:text-icon-highlight absolute top-4 right-4 disabled:pointer-events-none", children: [
84
84
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.XIcon, { className: "size-4" }),
85
85
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
86
86
  ] })
@@ -107,7 +107,7 @@ var InputNumbers = react.forwardRef(function InputNumbers2({ size, value, onValu
107
107
  {
108
108
  ref,
109
109
  ...bind(),
110
- className: chunkXXWQ4RVP_js.cn("gap-xs flex cursor-crosshair touch-none select-none flex-col"),
110
+ className: chunkXXWQ4RVP_js.cn("gap-xs flex cursor-crosshair touch-none flex-col select-none"),
111
111
  children: value.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
112
112
  chunkSKO72K64_js.InputRoot,
113
113
  {
@@ -80,7 +80,7 @@ function AvatarGroup({ children, className, spacing = "normal", max }) {
80
80
  {
81
81
  key: index,
82
82
  className: chunkXXWQ4RVP_js.cn(
83
- `ring-background relative ring-2 z-[${zIndex}] hover:scale-120 transition-all duration-200 ease-in-out hover:z-[100]`,
83
+ `ring-background relative ring-2 z-[${zIndex}] transition-all duration-200 ease-in-out hover:z-[100] hover:scale-120`,
84
84
  (_a = child.props) == null ? void 0 : _a.className
85
85
  )
86
86
  }
@@ -92,7 +92,7 @@ function AvatarGroup({ children, className, spacing = "normal", max }) {
92
92
  Avatar,
93
93
  {
94
94
  className: chunkXXWQ4RVP_js.cn(
95
- "ring-background hover:scale-120 relative cursor-default ring-2 transition-all duration-200 ease-in-out hover:z-[100]",
95
+ "ring-background relative cursor-default ring-2 transition-all duration-200 ease-in-out hover:z-[100] hover:scale-120",
96
96
  `z-[${30 - displayChildren.length}]`
97
97
  ),
98
98
  children: /* @__PURE__ */ jsxRuntime.jsxs(AvatarFallback, { children: [
@@ -105,7 +105,7 @@ var InputNumbers = forwardRef(function InputNumbers2({ size, value, onValuesChan
105
105
  {
106
106
  ref,
107
107
  ...bind(),
108
- className: cn("gap-xs flex cursor-crosshair touch-none select-none flex-col"),
108
+ className: cn("gap-xs flex cursor-crosshair touch-none flex-col select-none"),
109
109
  children: value.map((item, index) => /* @__PURE__ */ jsx(
110
110
  InputRoot,
111
111
  {
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var chunkMZ4POL3U_js = require('./chunk-MZ4POL3U.js');
4
+ var chunk5MZCQW4U_js = require('./chunk-5MZCQW4U.js');
5
+ var chunk5OUTEHVX_js = require('./chunk-5OUTEHVX.js');
6
+ var chunkSKO72K64_js = require('./chunk-SKO72K64.js');
7
+ var chunkZJXBC33M_js = require('./chunk-ZJXBC33M.js');
8
+ var chunkQA7H2Z3Z_js = require('./chunk-QA7H2Z3Z.js');
9
+
10
+ // src/highlight-cursor/enhanced-components.tsx
11
+ var CursorButton = chunkZJXBC33M_js.withCursor(chunkQA7H2Z3Z_js.Button);
12
+ var CursorTabs = chunkZJXBC33M_js.withCursor(chunk5MZCQW4U_js.Tabs);
13
+ var CursorInputRoot = chunkZJXBC33M_js.withCursor(chunkSKO72K64_js.InputRoot);
14
+ var CursorSelectTrigger = chunkZJXBC33M_js.withCursor(chunkMZ4POL3U_js.SelectTrigger);
15
+ var CursorTextarea = chunkZJXBC33M_js.withCursor(chunk5OUTEHVX_js.Textarea);
16
+
17
+ exports.CursorButton = CursorButton;
18
+ exports.CursorInputRoot = CursorInputRoot;
19
+ exports.CursorSelectTrigger = CursorSelectTrigger;
20
+ exports.CursorTabs = CursorTabs;
21
+ exports.CursorTextarea = CursorTextarea;
@@ -14,7 +14,7 @@ function SheetClose({ ...props }) {
14
14
  SheetPrimitive.Close,
15
15
  {
16
16
  "data-slot": "sheet-close",
17
- className: cn("focus:outline-none focus:ring-0"),
17
+ className: cn("focus:ring-0 focus:outline-none"),
18
18
  ...props
19
19
  }
20
20
  );
@@ -58,7 +58,7 @@ function SheetContent({
58
58
  ...props,
59
59
  children: [
60
60
  children,
61
- /* @__PURE__ */ jsxs(SheetPrimitive.Close, { className: "text-icon-primary hover:text-icon-highlight absolute right-4 top-4 disabled:pointer-events-none", children: [
61
+ /* @__PURE__ */ jsxs(SheetPrimitive.Close, { className: "text-icon-primary hover:text-icon-highlight absolute top-4 right-4 disabled:pointer-events-none", children: [
62
62
  /* @__PURE__ */ jsx(XIcon, { className: "size-4" }),
63
63
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
64
64
  ] })
@@ -14,17 +14,22 @@ function ThemeProvider({
14
14
  ...props
15
15
  }) {
16
16
  const [theme, setTheme] = useState(() => {
17
+ if (typeof window === "undefined") return defaultTheme;
17
18
  return localStorage.getItem(storageKey) || defaultTheme;
18
19
  });
19
20
  useEffect(() => {
21
+ if (typeof window === "undefined") return;
20
22
  const root = window.document.documentElement;
21
23
  root.classList.remove("light", "dark", "liquidlight", "liquiddark", "system");
24
+ root.removeAttribute("data-theme");
22
25
  if (theme === "system") {
23
26
  const systemTheme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
24
27
  root.classList.add(systemTheme);
28
+ root.setAttribute("data-theme", "auto");
25
29
  return;
26
30
  }
27
31
  root.classList.add(theme);
32
+ root.setAttribute("data-theme", theme);
28
33
  }, [theme]);
29
34
  return /* @__PURE__ */ jsx(
30
35
  ThemeProviderContext.Provider,
@@ -34,7 +39,9 @@ function ThemeProvider({
34
39
  () => ({
35
40
  theme,
36
41
  setTheme: (theme2) => {
37
- localStorage.setItem(storageKey, theme2);
42
+ if (typeof window !== "undefined") {
43
+ localStorage.setItem(storageKey, theme2);
44
+ }
38
45
  setTheme(theme2);
39
46
  }
40
47
  }),
@@ -32,7 +32,8 @@ var badgeVariants = classVarianceAuthority.cva(
32
32
  secondary: "bg-bg-secondary",
33
33
  destructive: "bg-danger-primary",
34
34
  success: "bg-accent-success",
35
- warning: "bg-accent-warning"
35
+ warning: "bg-accent-warning",
36
+ accent: "bg-accent-primary text-text-primary"
36
37
  },
37
38
  type: {
38
39
  default: "",
@@ -55,7 +55,7 @@ function AvatarGroup({ children, className, spacing = "normal", max }) {
55
55
  {
56
56
  key: index,
57
57
  className: cn(
58
- `ring-background relative ring-2 z-[${zIndex}] hover:scale-120 transition-all duration-200 ease-in-out hover:z-[100]`,
58
+ `ring-background relative ring-2 z-[${zIndex}] transition-all duration-200 ease-in-out hover:z-[100] hover:scale-120`,
59
59
  (_a = child.props) == null ? void 0 : _a.className
60
60
  )
61
61
  }
@@ -67,7 +67,7 @@ function AvatarGroup({ children, className, spacing = "normal", max }) {
67
67
  Avatar,
68
68
  {
69
69
  className: cn(
70
- "ring-background hover:scale-120 relative cursor-default ring-2 transition-all duration-200 ease-in-out hover:z-[100]",
70
+ "ring-background relative cursor-default ring-2 transition-all duration-200 ease-in-out hover:z-[100] hover:scale-120",
71
71
  `z-[${30 - displayChildren.length}]`
72
72
  ),
73
73
  children: /* @__PURE__ */ jsxs(AvatarFallback, { children: [
@@ -16,17 +16,22 @@ function ThemeProvider({
16
16
  ...props
17
17
  }) {
18
18
  const [theme, setTheme] = react.useState(() => {
19
+ if (typeof window === "undefined") return defaultTheme;
19
20
  return localStorage.getItem(storageKey) || defaultTheme;
20
21
  });
21
22
  react.useEffect(() => {
23
+ if (typeof window === "undefined") return;
22
24
  const root = window.document.documentElement;
23
25
  root.classList.remove("light", "dark", "liquidlight", "liquiddark", "system");
26
+ root.removeAttribute("data-theme");
24
27
  if (theme === "system") {
25
28
  const systemTheme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
26
29
  root.classList.add(systemTheme);
30
+ root.setAttribute("data-theme", "auto");
27
31
  return;
28
32
  }
29
33
  root.classList.add(theme);
34
+ root.setAttribute("data-theme", theme);
30
35
  }, [theme]);
31
36
  return /* @__PURE__ */ jsxRuntime.jsx(
32
37
  ThemeProviderContext.Provider,
@@ -36,7 +41,9 @@ function ThemeProvider({
36
41
  () => ({
37
42
  theme,
38
43
  setTheme: (theme2) => {
39
- localStorage.setItem(storageKey, theme2);
44
+ if (typeof window !== "undefined") {
45
+ localStorage.setItem(storageKey, theme2);
46
+ }
40
47
  setTheme(theme2);
41
48
  }
42
49
  }),
@@ -183,7 +183,7 @@ function TreeView({
183
183
  onMouseEnter: () => onItemHover == null ? void 0 : onItemHover(item.id),
184
184
  onMouseLeave: () => onItemHover == null ? void 0 : onItemHover(null),
185
185
  children: [
186
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute left-[-0.28rem] top-0 z-0 flex h-full items-center", children: [
186
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute top-0 left-[-0.28rem] z-0 flex h-full items-center", children: [
187
187
  item.ancestors.map((ancestor, index) => {
188
188
  var _a;
189
189
  const parentIsLast = (_a = dataWithMeta.find((d) => d.id === ancestor.id)) == null ? void 0 : _a.isLast;
@@ -204,19 +204,19 @@ function TreeView({
204
204
  "div",
205
205
  {
206
206
  className: chunkXXWQ4RVP_js.cn(
207
- "absolute left-0 top-0 h-1/2 w-1/2 border-b border-l",
207
+ "absolute top-0 left-0 h-1/2 w-1/2 border-b border-l",
208
208
  item.isLast ? "rounded-bl-md" : "",
209
209
  "border-line-secondary/20"
210
210
  )
211
211
  }
212
212
  ),
213
- !item.isLast && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-line-secondary/20 absolute left-0 top-1/2 h-1/2 w-1/2 border-l" })
213
+ !item.isLast && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-line-secondary/20 absolute top-1/2 left-0 h-1/2 w-1/2 border-l" })
214
214
  ] })
215
215
  ] }),
216
216
  /* @__PURE__ */ jsxRuntime.jsxs(
217
217
  "div",
218
218
  {
219
- className: "text-uk-md z-10 flex w-full items-center gap-2 whitespace-nowrap px-2",
219
+ className: "text-uk-md z-10 flex w-full items-center gap-2 px-2 whitespace-nowrap",
220
220
  style: { paddingLeft: `${item.indent * 1.25 + 0.5}rem` },
221
221
  children: [
222
222
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex size-4 items-center justify-center", children: [
@@ -224,7 +224,7 @@ function TreeView({
224
224
  "button",
225
225
  {
226
226
  onClick: () => toggleItem(item.id),
227
- className: "absolute inset-0 z-20 opacity-0 transition-opacity group-hover:opacity-100",
227
+ className: "absolute z-20 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
228
228
  children: /* @__PURE__ */ jsxRuntime.jsx(
229
229
  lucideReact.ChevronDown,
230
230
  {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkQD7TNSTX_js = require('./chunk-QD7TNSTX.js');
3
+ var chunkIOI3YFTY_js = require('./chunk-IOI3YFTY.js');
4
4
  var chunkXXWQ4RVP_js = require('./chunk-XXWQ4RVP.js');
5
5
  var lucideReact = require('lucide-react');
6
6
  var React = require('react');
@@ -276,7 +276,7 @@ function Timeline({ data, totalDuration, getIcon }) {
276
276
  }, [viewStart, viewDuration, updateCursor]);
277
277
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-bg-primary text-text-primary border-line-secondary/20 rounded-uk-md mx-auto w-full max-w-7xl overflow-hidden border font-sans shadow-2xl", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(300px,30%)_1fr]", children: [
278
278
  /* @__PURE__ */ jsxRuntime.jsx(
279
- chunkQD7TNSTX_js.TreeView,
279
+ chunkIOI3YFTY_js.TreeView,
280
280
  {
281
281
  data,
282
282
  getIcon,
@@ -366,7 +366,7 @@ function Timeline({ data, totalDuration, getIcon }) {
366
366
  "div",
367
367
  {
368
368
  className: chunkXXWQ4RVP_js.cn(
369
- "absolute left-0 top-1/2 h-2 w-px -translate-y-1/2",
369
+ "absolute top-1/2 left-0 h-2 w-px -translate-y-1/2",
370
370
  colorClasses[item.color]
371
371
  )
372
372
  }
@@ -384,7 +384,7 @@ function Timeline({ data, totalDuration, getIcon }) {
384
384
  "div",
385
385
  {
386
386
  className: chunkXXWQ4RVP_js.cn(
387
- "absolute right-0 top-1/2 h-2 w-px -translate-y-1/2",
387
+ "absolute top-1/2 right-0 h-2 w-px -translate-y-1/2",
388
388
  colorClasses[item.color]
389
389
  )
390
390
  }
@@ -425,7 +425,7 @@ function Timeline({ data, totalDuration, getIcon }) {
425
425
  "span",
426
426
  {
427
427
  className: chunkXXWQ4RVP_js.cn(
428
- "text-uk-sm whitespace-nowrap font-medium",
428
+ "text-uk-sm font-medium whitespace-nowrap",
429
429
  item.color === "gray-light" || item.color === "gray-medium" ? "text-slate-600 dark:text-slate-300" : "text-text-highlight"
430
430
  ),
431
431
  children: formatDuration(item.duration)
@@ -455,9 +455,9 @@ function Timeline({ data, totalDuration, getIcon }) {
455
455
  width: `${item.duration / viewDuration * 100}%`
456
456
  },
457
457
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex h-full w-full items-center justify-center", children: [
458
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-line-secondary absolute left-0 top-1/2 h-2 w-px -translate-y-1/2" }),
458
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-line-secondary absolute top-1/2 left-0 h-2 w-px -translate-y-1/2" }),
459
459
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-line-secondary w-full border-t border-dashed" }),
460
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-line-secondary absolute right-0 top-1/2 h-2 w-px -translate-y-1/2" })
460
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-line-secondary absolute top-1/2 right-0 h-2 w-px -translate-y-1/2" })
461
461
  ] })
462
462
  }
463
463
  ),
@@ -476,7 +476,7 @@ function Timeline({ data, totalDuration, getIcon }) {
476
476
  left: `${timeToPercent(visibleStart)}%`,
477
477
  width: `${visibleWidthPercent}%`
478
478
  },
479
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-text-highlight text-uk-sm flex h-5 items-center whitespace-nowrap rounded-full bg-orange-500/85 px-2 font-medium", children: formatDuration(item.duration) })
479
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-text-highlight text-uk-sm flex h-5 items-center rounded-full bg-orange-500/85 px-2 font-medium whitespace-nowrap", children: formatDuration(item.duration) })
480
480
  }
481
481
  );
482
482
  })(),
@@ -495,7 +495,7 @@ function Timeline({ data, totalDuration, getIcon }) {
495
495
  item.id
496
496
  );
497
497
  }) }),
498
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
498
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute top-0 left-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
499
499
  const barEnd = item.startTime !== void 0 && item.duration !== void 0 ? item.startTime + item.duration : void 0;
500
500
  const isOffscreenLeft = barEnd !== void 0 && barEnd < viewStart || item.time !== void 0 && item.time < viewStart;
501
501
  if (isOffscreenLeft && item.color) {
@@ -516,7 +516,7 @@ function Timeline({ data, totalDuration, getIcon }) {
516
516
  }
517
517
  return null;
518
518
  }) }),
519
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute right-0 top-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
519
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute top-0 right-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
520
520
  const barStart = item.startTime;
521
521
  const viewEnd = viewStart + viewDuration;
522
522
  const isOffscreenRight = barStart !== void 0 && barStart > viewEnd || item.time !== void 0 && item.time > viewEnd;
@@ -542,7 +542,7 @@ function Timeline({ data, totalDuration, getIcon }) {
542
542
  "div",
543
543
  {
544
544
  ref: cursorContainerRef,
545
- className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-full opacity-0 transition-opacity duration-150",
545
+ className: "pointer-events-none absolute top-0 left-0 z-10 h-full w-full opacity-0 transition-opacity duration-150",
546
546
  style: {
547
547
  "--cursor-left": "0%",
548
548
  "--readout-text": '""',
@@ -559,7 +559,7 @@ function Timeline({ data, totalDuration, getIcon }) {
559
559
  /* @__PURE__ */ jsxRuntime.jsxs(
560
560
  "div",
561
561
  {
562
- className: "bg-bg-primary border-line-secondary/20 rounded-uk-sm text-uk-sm absolute top-1 flex items-center justify-center whitespace-nowrap border px-2 py-0.5 shadow-lg",
562
+ className: "bg-bg-primary border-line-secondary/20 rounded-uk-sm text-uk-sm absolute top-1 flex items-center justify-center border px-2 py-0.5 whitespace-nowrap shadow-lg",
563
563
  style: {
564
564
  left: "var(--cursor-left)",
565
565
  transform: "translateX(-50%)",
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var chunkEFIRD3FN_js = require('./chunk-EFIRD3FN.js');
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+
6
+ var PACKAGE_VERSION = "0.0.11";
7
+ var PACKAGE_NAME = "@vuer-ai/vuer-uikit";
8
+ function VersionBadge({
9
+ className,
10
+ showPrefix = true,
11
+ linkable = true,
12
+ version: overrideVersion
13
+ }) {
14
+ const currentVersion = overrideVersion || PACKAGE_VERSION;
15
+ const displayVersion = showPrefix ? `v${currentVersion}` : currentVersion;
16
+ const npmUrl = `https://www.npmjs.com/package/${PACKAGE_NAME}/v/${currentVersion}`;
17
+ const badge = /* @__PURE__ */ jsxRuntime.jsx(
18
+ chunkEFIRD3FN_js.Badge,
19
+ {
20
+ variant: "accent",
21
+ className,
22
+ style: linkable ? { cursor: "pointer" } : void 0,
23
+ children: displayVersion
24
+ }
25
+ );
26
+ if (linkable) {
27
+ return /* @__PURE__ */ jsxRuntime.jsx(
28
+ "a",
29
+ {
30
+ href: npmUrl,
31
+ target: "_blank",
32
+ rel: "noopener noreferrer",
33
+ className: "no-underline hover:no-underline",
34
+ children: badge
35
+ }
36
+ );
37
+ }
38
+ return badge;
39
+ }
40
+
41
+ exports.VersionBadge = VersionBadge;
@@ -181,7 +181,7 @@ function TreeView({
181
181
  onMouseEnter: () => onItemHover == null ? void 0 : onItemHover(item.id),
182
182
  onMouseLeave: () => onItemHover == null ? void 0 : onItemHover(null),
183
183
  children: [
184
- /* @__PURE__ */ jsxs("div", { className: "absolute left-[-0.28rem] top-0 z-0 flex h-full items-center", children: [
184
+ /* @__PURE__ */ jsxs("div", { className: "absolute top-0 left-[-0.28rem] z-0 flex h-full items-center", children: [
185
185
  item.ancestors.map((ancestor, index) => {
186
186
  var _a;
187
187
  const parentIsLast = (_a = dataWithMeta.find((d) => d.id === ancestor.id)) == null ? void 0 : _a.isLast;
@@ -202,19 +202,19 @@ function TreeView({
202
202
  "div",
203
203
  {
204
204
  className: cn(
205
- "absolute left-0 top-0 h-1/2 w-1/2 border-b border-l",
205
+ "absolute top-0 left-0 h-1/2 w-1/2 border-b border-l",
206
206
  item.isLast ? "rounded-bl-md" : "",
207
207
  "border-line-secondary/20"
208
208
  )
209
209
  }
210
210
  ),
211
- !item.isLast && /* @__PURE__ */ jsx("div", { className: "border-line-secondary/20 absolute left-0 top-1/2 h-1/2 w-1/2 border-l" })
211
+ !item.isLast && /* @__PURE__ */ jsx("div", { className: "border-line-secondary/20 absolute top-1/2 left-0 h-1/2 w-1/2 border-l" })
212
212
  ] })
213
213
  ] }),
214
214
  /* @__PURE__ */ jsxs(
215
215
  "div",
216
216
  {
217
- className: "text-uk-md z-10 flex w-full items-center gap-2 whitespace-nowrap px-2",
217
+ className: "text-uk-md z-10 flex w-full items-center gap-2 px-2 whitespace-nowrap",
218
218
  style: { paddingLeft: `${item.indent * 1.25 + 0.5}rem` },
219
219
  children: [
220
220
  /* @__PURE__ */ jsxs("div", { className: "relative flex size-4 items-center justify-center", children: [
@@ -222,7 +222,7 @@ function TreeView({
222
222
  "button",
223
223
  {
224
224
  onClick: () => toggleItem(item.id),
225
- className: "absolute inset-0 z-20 opacity-0 transition-opacity group-hover:opacity-100",
225
+ className: "absolute z-20 flex items-center justify-center opacity-0 transition-opacity group-hover:opacity-100",
226
226
  children: /* @__PURE__ */ jsx(
227
227
  ChevronDown,
228
228
  {
@@ -0,0 +1,39 @@
1
+ import { Badge } from './chunk-WO3WHXDP.mjs';
2
+ import { jsx } from 'react/jsx-runtime';
3
+
4
+ var PACKAGE_VERSION = "0.0.11";
5
+ var PACKAGE_NAME = "@vuer-ai/vuer-uikit";
6
+ function VersionBadge({
7
+ className,
8
+ showPrefix = true,
9
+ linkable = true,
10
+ version: overrideVersion
11
+ }) {
12
+ const currentVersion = overrideVersion || PACKAGE_VERSION;
13
+ const displayVersion = showPrefix ? `v${currentVersion}` : currentVersion;
14
+ const npmUrl = `https://www.npmjs.com/package/${PACKAGE_NAME}/v/${currentVersion}`;
15
+ const badge = /* @__PURE__ */ jsx(
16
+ Badge,
17
+ {
18
+ variant: "accent",
19
+ className,
20
+ style: linkable ? { cursor: "pointer" } : void 0,
21
+ children: displayVersion
22
+ }
23
+ );
24
+ if (linkable) {
25
+ return /* @__PURE__ */ jsx(
26
+ "a",
27
+ {
28
+ href: npmUrl,
29
+ target: "_blank",
30
+ rel: "noopener noreferrer",
31
+ className: "no-underline hover:no-underline",
32
+ children: badge
33
+ }
34
+ );
35
+ }
36
+ return badge;
37
+ }
38
+
39
+ export { VersionBadge };
@@ -89,7 +89,7 @@ var TreeView = forwardRef(
89
89
  "div",
90
90
  {
91
91
  className: cn(
92
- "bg-bg-primary relative min-w-[240px] max-w-[300px] overflow-hidden p-2",
92
+ "bg-bg-primary rounded-uk-md relative max-w-[300px] min-w-[240px] overflow-hidden p-2",
93
93
  className
94
94
  ),
95
95
  "data-tree-container": true,
@@ -97,7 +97,7 @@ var TreeView = forwardRef(
97
97
  /* @__PURE__ */ jsx(
98
98
  "div",
99
99
  {
100
- className: "bg-bg-tertiary rounded-uk-sm pointer-events-none absolute left-2 right-2 z-10 transition-all duration-150",
100
+ className: "bg-bg-tertiary rounded-uk-sm pointer-events-none absolute right-2 left-2 z-10 transition-all duration-150",
101
101
  style: {
102
102
  display: hoverBackgroundStyle.display,
103
103
  top: hoverBackgroundStyle.top,
@@ -379,7 +379,7 @@ var AccordionContent = forwardRef(({ className, children, ...props }, ref) => /*
379
379
  className
380
380
  ),
381
381
  ...props,
382
- children: /* @__PURE__ */ jsx("div", { className: "pb-0 pt-0", children })
382
+ children: /* @__PURE__ */ jsx("div", { className: "pt-0 pb-0", children })
383
383
  }
384
384
  ));
385
385
  AccordionContent.displayName = AccordionPrimitive.Content.displayName;
@@ -30,7 +30,8 @@ var badgeVariants = cva(
30
30
  secondary: "bg-bg-secondary",
31
31
  destructive: "bg-danger-primary",
32
32
  success: "bg-accent-success",
33
- warning: "bg-accent-warning"
33
+ warning: "bg-accent-warning",
34
+ accent: "bg-accent-primary text-text-primary"
34
35
  },
35
36
  type: {
36
37
  default: "",
@@ -1,4 +1,4 @@
1
- import { TreeView } from './chunk-XU3E2EDQ.mjs';
1
+ import { TreeView } from './chunk-O4TK3AKI.mjs';
2
2
  import { cn } from './chunk-KTNZSZ5Y.mjs';
3
3
  import { Magnet, ChevronLeft, ChevronRight } from 'lucide-react';
4
4
  import React, { useState, useRef, useCallback, useMemo, useEffect } from 'react';
@@ -360,7 +360,7 @@ function Timeline({ data, totalDuration, getIcon }) {
360
360
  "div",
361
361
  {
362
362
  className: cn(
363
- "absolute left-0 top-1/2 h-2 w-px -translate-y-1/2",
363
+ "absolute top-1/2 left-0 h-2 w-px -translate-y-1/2",
364
364
  colorClasses[item.color]
365
365
  )
366
366
  }
@@ -378,7 +378,7 @@ function Timeline({ data, totalDuration, getIcon }) {
378
378
  "div",
379
379
  {
380
380
  className: cn(
381
- "absolute right-0 top-1/2 h-2 w-px -translate-y-1/2",
381
+ "absolute top-1/2 right-0 h-2 w-px -translate-y-1/2",
382
382
  colorClasses[item.color]
383
383
  )
384
384
  }
@@ -419,7 +419,7 @@ function Timeline({ data, totalDuration, getIcon }) {
419
419
  "span",
420
420
  {
421
421
  className: cn(
422
- "text-uk-sm whitespace-nowrap font-medium",
422
+ "text-uk-sm font-medium whitespace-nowrap",
423
423
  item.color === "gray-light" || item.color === "gray-medium" ? "text-slate-600 dark:text-slate-300" : "text-text-highlight"
424
424
  ),
425
425
  children: formatDuration(item.duration)
@@ -449,9 +449,9 @@ function Timeline({ data, totalDuration, getIcon }) {
449
449
  width: `${item.duration / viewDuration * 100}%`
450
450
  },
451
451
  children: /* @__PURE__ */ jsxs("div", { className: "relative flex h-full w-full items-center justify-center", children: [
452
- /* @__PURE__ */ jsx("div", { className: "bg-line-secondary absolute left-0 top-1/2 h-2 w-px -translate-y-1/2" }),
452
+ /* @__PURE__ */ jsx("div", { className: "bg-line-secondary absolute top-1/2 left-0 h-2 w-px -translate-y-1/2" }),
453
453
  /* @__PURE__ */ jsx("div", { className: "border-line-secondary w-full border-t border-dashed" }),
454
- /* @__PURE__ */ jsx("div", { className: "bg-line-secondary absolute right-0 top-1/2 h-2 w-px -translate-y-1/2" })
454
+ /* @__PURE__ */ jsx("div", { className: "bg-line-secondary absolute top-1/2 right-0 h-2 w-px -translate-y-1/2" })
455
455
  ] })
456
456
  }
457
457
  ),
@@ -470,7 +470,7 @@ function Timeline({ data, totalDuration, getIcon }) {
470
470
  left: `${timeToPercent(visibleStart)}%`,
471
471
  width: `${visibleWidthPercent}%`
472
472
  },
473
- children: /* @__PURE__ */ jsx("div", { className: "text-text-highlight text-uk-sm flex h-5 items-center whitespace-nowrap rounded-full bg-orange-500/85 px-2 font-medium", children: formatDuration(item.duration) })
473
+ children: /* @__PURE__ */ jsx("div", { className: "text-text-highlight text-uk-sm flex h-5 items-center rounded-full bg-orange-500/85 px-2 font-medium whitespace-nowrap", children: formatDuration(item.duration) })
474
474
  }
475
475
  );
476
476
  })(),
@@ -489,7 +489,7 @@ function Timeline({ data, totalDuration, getIcon }) {
489
489
  item.id
490
490
  );
491
491
  }) }),
492
- /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
492
+ /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute top-0 left-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
493
493
  const barEnd = item.startTime !== void 0 && item.duration !== void 0 ? item.startTime + item.duration : void 0;
494
494
  const isOffscreenLeft = barEnd !== void 0 && barEnd < viewStart || item.time !== void 0 && item.time < viewStart;
495
495
  if (isOffscreenLeft && item.color) {
@@ -510,7 +510,7 @@ function Timeline({ data, totalDuration, getIcon }) {
510
510
  }
511
511
  return null;
512
512
  }) }),
513
- /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute right-0 top-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
513
+ /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute top-0 right-0 z-10 h-full w-2", children: visibleData.map((item, index) => {
514
514
  const barStart = item.startTime;
515
515
  const viewEnd = viewStart + viewDuration;
516
516
  const isOffscreenRight = barStart !== void 0 && barStart > viewEnd || item.time !== void 0 && item.time > viewEnd;
@@ -536,7 +536,7 @@ function Timeline({ data, totalDuration, getIcon }) {
536
536
  "div",
537
537
  {
538
538
  ref: cursorContainerRef,
539
- className: "pointer-events-none absolute left-0 top-0 z-10 h-full w-full opacity-0 transition-opacity duration-150",
539
+ className: "pointer-events-none absolute top-0 left-0 z-10 h-full w-full opacity-0 transition-opacity duration-150",
540
540
  style: {
541
541
  "--cursor-left": "0%",
542
542
  "--readout-text": '""',
@@ -553,7 +553,7 @@ function Timeline({ data, totalDuration, getIcon }) {
553
553
  /* @__PURE__ */ jsxs(
554
554
  "div",
555
555
  {
556
- className: "bg-bg-primary border-line-secondary/20 rounded-uk-sm text-uk-sm absolute top-1 flex items-center justify-center whitespace-nowrap border px-2 py-0.5 shadow-lg",
556
+ className: "bg-bg-primary border-line-secondary/20 rounded-uk-sm text-uk-sm absolute top-1 flex items-center justify-center border px-2 py-0.5 whitespace-nowrap shadow-lg",
557
557
  style: {
558
558
  left: "var(--cursor-left)",
559
559
  transform: "translateX(-50%)",