@actioneer/ads 0.5.6 → 0.5.8

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 (149) hide show
  1. package/bin/ads-init.mjs +6 -0
  2. package/components/accordion.js +50 -48
  3. package/components/agent-icon.d.ts +12 -0
  4. package/components/agent-icon.js +135 -121
  5. package/components/ai-elements/chain-of-thought-icon.d.ts +10 -12
  6. package/components/ai-elements/chain-of-thought-icon.js +341 -201
  7. package/components/ai-elements/chain-of-thought.d.ts +2 -2
  8. package/components/ai-elements/chain-of-thought.js +108 -108
  9. package/components/ai-elements/chart.js +16 -14
  10. package/components/ai-elements/inline-citation.js +41 -41
  11. package/components/ai-elements/message.js +4 -4
  12. package/components/ai-elements/queue.js +7 -7
  13. package/components/ai-elements/research-activity.js +114 -114
  14. package/components/ai-elements/shimmer.d.ts +2 -2
  15. package/components/ai-elements/speech-input.js +28 -28
  16. package/components/ai-elements/task-progress.js +26 -16
  17. package/components/ai-elements/task.js +17 -17
  18. package/components/ai-elements/tool.js +6 -6
  19. package/components/ai-elements/transcript.js +6 -5
  20. package/components/ai-elements/voice.js +1 -1
  21. package/components/alert.js +10 -10
  22. package/components/answer-sources.d.ts +42 -0
  23. package/components/answer-sources.js +111 -0
  24. package/components/answer.js +115 -114
  25. package/components/assistant-ui/action-bar.js +94 -48
  26. package/components/assistant-ui/attachment.js +131 -103
  27. package/components/assistant-ui/badge.d.ts +1 -1
  28. package/components/assistant-ui/badge.js +17 -17
  29. package/components/assistant-ui/chain-of-thought.d.ts +1 -1
  30. package/components/assistant-ui/composer-add-context.js +9 -9
  31. package/components/assistant-ui/composer-deep-research.js +5 -5
  32. package/components/assistant-ui/composer-harness.js +12 -9
  33. package/components/assistant-ui/composer-trigger-popover.js +45 -34
  34. package/components/assistant-ui/composer.js +59 -59
  35. package/components/assistant-ui/error.js +14 -14
  36. package/components/assistant-ui/file.d.ts +1 -1
  37. package/components/assistant-ui/image.d.ts +1 -1
  38. package/components/assistant-ui/image.js +113 -103
  39. package/components/assistant-ui/markdown-text.js +18 -18
  40. package/components/assistant-ui/message.js +46 -45
  41. package/components/assistant-ui/quote.js +1 -1
  42. package/components/assistant-ui/reasoning.d.ts +1 -1
  43. package/components/assistant-ui/reasoning.js +66 -77
  44. package/components/assistant-ui/suggestions.js +4 -4
  45. package/components/assistant-ui/thread-context.d.ts +2 -0
  46. package/components/assistant-ui/thread.js +41 -40
  47. package/components/assistant-ui/tool-fallback.js +60 -63
  48. package/components/assistant-ui/tool-group.d.ts +1 -1
  49. package/components/assistant-ui/tool-group.js +36 -42
  50. package/components/audio-waveform.js +25 -24
  51. package/components/autocomplete.d.ts +1 -0
  52. package/components/autocomplete.js +45 -43
  53. package/components/avatar.js +30 -30
  54. package/components/badge.d.ts +1 -1
  55. package/components/breadcrumbs.js +2 -2
  56. package/components/button.d.ts +2 -2
  57. package/components/button.js +22 -20
  58. package/components/card.js +8 -8
  59. package/components/carousel.js +105 -104
  60. package/components/chart.js +9 -7
  61. package/components/checkbox.js +74 -38
  62. package/components/chip.d.ts +1 -1
  63. package/components/code-block.js +3 -3
  64. package/components/collapsible.js +67 -23
  65. package/components/connector-card.js +6 -6
  66. package/components/drawer.d.ts +15 -10
  67. package/components/drawer.js +78 -77
  68. package/components/dropdown.d.ts +3 -1
  69. package/components/dropdown.js +88 -79
  70. package/components/empty-state.d.ts +4 -4
  71. package/components/empty-state.js +7 -7
  72. package/components/field.d.ts +4 -0
  73. package/components/field.js +45 -34
  74. package/components/file-dropzone.js +12 -12
  75. package/components/index.d.ts +4 -0
  76. package/components/index.js +584 -553
  77. package/components/infinite-canvas.js +1 -1
  78. package/components/input-field.js +51 -46
  79. package/components/input.js +20 -20
  80. package/components/link.js +9 -9
  81. package/components/modal.js +105 -73
  82. package/components/navbar.d.ts +1 -1
  83. package/components/navbar.js +1 -1
  84. package/components/number-field.js +38 -29
  85. package/components/page-header.js +12 -12
  86. package/components/pagination.js +19 -19
  87. package/components/panel.js +2 -2
  88. package/components/pixel-blast-svg.js +3 -3
  89. package/components/pixel-icon.d.ts +3 -1
  90. package/components/pixel-icon.js +294 -215
  91. package/components/popover.d.ts +1 -1
  92. package/components/popover.js +66 -64
  93. package/components/progress-circle.js +36 -32
  94. package/components/progress.js +28 -24
  95. package/components/radio.js +59 -49
  96. package/components/resizable-panel.js +1 -1
  97. package/components/reveal.d.ts +2 -2
  98. package/components/ripple.d.ts +3 -3
  99. package/components/scroll-area.js +17 -16
  100. package/components/segmented.d.ts +4 -1
  101. package/components/segmented.js +26 -25
  102. package/components/select.d.ts +2 -0
  103. package/components/select.js +61 -57
  104. package/components/setting-row.js +45 -42
  105. package/components/sidebar.d.ts +2 -2
  106. package/components/sidebar.js +131 -127
  107. package/components/skeleton.js +5 -5
  108. package/components/spinner.d.ts +13 -4
  109. package/components/spinner.js +42 -42
  110. package/components/stepper.js +21 -21
  111. package/components/switch.js +52 -32
  112. package/components/table.d.ts +24 -7
  113. package/components/table.js +457 -220
  114. package/components/tabs.js +149 -137
  115. package/components/textarea.js +1 -2
  116. package/components/toast.js +66 -66
  117. package/components/tooltip.js +2 -2
  118. package/components/tree.js +62 -51
  119. package/components/typography.d.ts +2 -1
  120. package/components/typography.js +33 -32
  121. package/components/ui/button.d.ts +2 -2
  122. package/components/ui/button.js +19 -19
  123. package/components/ui/collapsible.d.ts +1 -5
  124. package/components/ui/dialog.d.ts +3 -3
  125. package/components/ui/dialog.js +95 -58
  126. package/components/ui/tooltip.d.ts +2 -2
  127. package/components/ui/tooltip.js +67 -33
  128. package/components/viz-charts.js +95 -95
  129. package/demo/components/add-to-artifact.js +341 -0
  130. package/demo/lib/artifact-library.js +134 -0
  131. package/fonts/aribau-grotesk-medium.woff2 +0 -0
  132. package/fonts/aribau-grotesk-regular.woff2 +0 -0
  133. package/fonts.css +11 -11
  134. package/hooks/agents-ui/use-agent-audio-visualizer-aura.js +17 -16
  135. package/hooks/agents-ui/use-agent-audio-visualizer-wave.js +21 -20
  136. package/lib/icons.d.ts +12 -0
  137. package/lib/icons.js +107 -104
  138. package/lib/motion.d.ts +42 -39
  139. package/lib/motion.js +112 -52
  140. package/lib/spinner-mark.d.ts +9 -0
  141. package/lib/spinner-mark.js +98 -0
  142. package/llms.txt +69 -26
  143. package/manifest.json +344 -42
  144. package/package.json +1 -1
  145. package/styles.css +175 -161
  146. package/theme.css +104 -128
  147. package/components/ui/collapsible.js +0 -35
  148. package/fonts/aribau-grotesk-500.otf +0 -0
  149. package/fonts/aribau-grotesk-600.woff2 +0 -0
@@ -2,11 +2,11 @@
2
2
  import { jsx as t } from "react/jsx-runtime";
3
3
  import * as d from "react";
4
4
  import { cn as o } from "../lib/cn.js";
5
- const c = d.forwardRef(
5
+ const l = d.forwardRef(
6
6
  ({ className: r, isHoverable: e, isPressable: a, children: s, ...n }, i) => {
7
- const l = o(
7
+ const c = o(
8
8
  "bg-card text-card-foreground rounded-xl",
9
- (a || e) && "shadow-elevation transition-[box-shadow,transform] duration-(--duration-fast) ease-out motion-reduce:transition-none",
9
+ (a || e) && "shadow-elevation transition-[box-shadow,transform] duration-150 ease-out motion-reduce:transition-none",
10
10
  e && "hover:-translate-y-0.5",
11
11
  r
12
12
  );
@@ -16,7 +16,7 @@ const c = d.forwardRef(
16
16
  ref: i,
17
17
  type: "button",
18
18
  className: o(
19
- l,
19
+ c,
20
20
  "w-full text-left cursor-pointer",
21
21
  "outline-none focus-visible:ring-3 focus-visible:ring-ring",
22
22
  "active:translate-y-px"
@@ -24,10 +24,10 @@ const c = d.forwardRef(
24
24
  ...n,
25
25
  children: s
26
26
  }
27
- ) : /* @__PURE__ */ t("div", { ref: i, className: l, ...n, children: s });
27
+ ) : /* @__PURE__ */ t("div", { ref: i, className: c, ...n, children: s });
28
28
  }
29
29
  );
30
- c.displayName = "Card";
30
+ l.displayName = "Card";
31
31
  const f = d.forwardRef(({ className: r, ...e }, a) => /* @__PURE__ */ t(
32
32
  "div",
33
33
  {
@@ -41,7 +41,7 @@ const m = d.forwardRef(({ className: r, ...e }, a) => /* @__PURE__ */ t(
41
41
  "h3",
42
42
  {
43
43
  ref: a,
44
- className: o("text-base font-semibold leading-none", r),
44
+ className: o("text-base font-medium leading-none", r),
45
45
  ...e
46
46
  }
47
47
  ));
@@ -73,7 +73,7 @@ const x = d.forwardRef(
73
73
  );
74
74
  x.displayName = "CardFooter";
75
75
  export {
76
- c as Card,
76
+ l as Card,
77
77
  u as CardBody,
78
78
  p as CardDescription,
79
79
  x as CardFooter,
@@ -1,34 +1,36 @@
1
1
  "use client";
2
- import { jsx as C, jsxs as V } from "react/jsx-runtime";
2
+ import { jsx as b, jsxs as V } from "react/jsx-runtime";
3
3
  import * as t from "react";
4
4
  import { cva as W } from "class-variance-authority";
5
+ import { MotionConfig as H, motion as X } from "motion/react";
5
6
  import { Button as D } from "./button.js";
6
- import { ChevronLeft as H, ChevronRight as X } from "../lib/icons.js";
7
- import { cn as S } from "../lib/cn.js";
7
+ import { ChevronLeft as B, ChevronRight as G } from "../lib/icons.js";
8
+ import { cn as w } from "../lib/cn.js";
9
+ import { springCarousel as O } from "../lib/motion.js";
8
10
  const q = t.createContext(null);
9
11
  function T(l) {
10
- const i = t.useContext(q);
11
- if (!i)
12
+ const s = t.useContext(q);
13
+ if (!s)
12
14
  throw new Error(`<${l}> must be used within <Carousel>`);
13
- return i;
15
+ return s;
14
16
  }
15
17
  const F = t.createContext(null);
16
- function L(l, i, d) {
17
- return i <= 0 ? 0 : d ? (l % i + i) % i : Math.min(Math.max(l, 0), i - 1);
18
+ function L(l, s, d) {
19
+ return s <= 0 ? 0 : d ? (l % s + s) % s : Math.min(Math.max(l, 0), s - 1);
18
20
  }
19
21
  function _(l) {
20
22
  return l.detail === 0;
21
23
  }
22
- const B = W(
24
+ const Y = W(
23
25
  "relative w-full rounded-sm outline-none focus-visible:ring-3 focus-visible:ring-ring"
24
- ), G = t.forwardRef(
26
+ ), J = t.forwardRef(
25
27
  ({
26
28
  className: l,
27
- index: i,
29
+ index: s,
28
30
  defaultIndex: d = 0,
29
31
  onIndexChange: f,
30
32
  loop: o = !0,
31
- children: b,
33
+ children: h,
32
34
  role: p,
33
35
  tabIndex: m,
34
36
  onKeyDown: r,
@@ -36,55 +38,55 @@ const B = W(
36
38
  "aria-roledescription": I,
37
39
  ...N
38
40
  }, u) => {
39
- const a = i !== void 0, [n, y] = t.useState(d), [h, v] = t.useState(0), [P, R] = t.useState(!0), E = t.useId(), g = L(a ? i : n, h, !1), e = t.useCallback((s) => {
40
- v(s), y(
41
- (M) => L(M, s, !1)
41
+ const a = s !== void 0, [n, y] = t.useState(d), [C, S] = t.useState(0), [P, v] = t.useState(!0), E = t.useId(), g = L(a ? s : n, C, !1), e = t.useCallback((i) => {
42
+ S(i), y(
43
+ (M) => L(M, i, !1)
42
44
  );
43
45
  }, []), c = t.useCallback(
44
- (s, M = "animated") => {
45
- const $ = L(s, h, o);
46
- R(M === "animated"), a || y($), $ !== g && (f == null || f($));
46
+ (i, M = "animated") => {
47
+ const $ = L(i, C, o);
48
+ v(M === "animated"), a || y($), $ !== g && (f == null || f($));
47
49
  },
48
- [h, g, a, o, f]
50
+ [C, g, a, o, f]
49
51
  ), A = t.useCallback(
50
- (s) => c(g - 1, s),
52
+ (i) => c(g - 1, i),
51
53
  [c, g]
52
- ), w = t.useCallback(
53
- (s) => c(g + 1, s),
54
+ ), R = t.useCallback(
55
+ (i) => c(g + 1, i),
54
56
  [c, g]
55
57
  );
56
58
  t.useEffect(() => {
57
59
  if (P) return;
58
- const s = requestAnimationFrame(() => R(!0));
59
- return () => cancelAnimationFrame(s);
60
+ const i = requestAnimationFrame(() => v(!0));
61
+ return () => cancelAnimationFrame(i);
60
62
  }, [g, P]);
61
63
  const k = t.useMemo(
62
64
  () => ({
63
65
  index: g,
64
- count: h,
66
+ count: C,
65
67
  loop: o,
66
68
  contentId: E,
67
69
  isAnimated: P,
68
70
  setCount: e,
69
71
  goTo: c,
70
72
  goPrevious: A,
71
- goNext: w
73
+ goNext: R
72
74
  }),
73
75
  [
74
76
  g,
75
- h,
77
+ C,
76
78
  o,
77
79
  E,
78
80
  P,
79
81
  e,
80
82
  c,
81
83
  A,
82
- w
84
+ R
83
85
  ]
84
- ), z = (s) => {
85
- r == null || r(s), !(s.defaultPrevented || s.target !== s.currentTarget) && (s.key === "ArrowLeft" ? (s.preventDefault(), A("instant")) : s.key === "ArrowRight" ? (s.preventDefault(), w("instant")) : s.key === "Home" ? (s.preventDefault(), c(0, "instant")) : s.key === "End" && (s.preventDefault(), c(h - 1, "instant")));
86
+ ), z = (i) => {
87
+ r == null || r(i), !(i.defaultPrevented || i.target !== i.currentTarget) && (i.key === "ArrowLeft" ? (i.preventDefault(), A("instant")) : i.key === "ArrowRight" ? (i.preventDefault(), R("instant")) : i.key === "Home" ? (i.preventDefault(), c(0, "instant")) : i.key === "End" && (i.preventDefault(), c(C - 1, "instant")));
86
88
  };
87
- return /* @__PURE__ */ C(q.Provider, { value: k, children: /* @__PURE__ */ V(
89
+ return /* @__PURE__ */ b(q.Provider, { value: k, children: /* @__PURE__ */ V(
88
90
  "div",
89
91
  {
90
92
  ref: u,
@@ -92,26 +94,26 @@ const B = W(
92
94
  "aria-roledescription": I ?? "carousel",
93
95
  "aria-label": x ?? "Carousel",
94
96
  tabIndex: m ?? 0,
95
- className: S(B(), l),
97
+ className: w(Y(), l),
96
98
  onKeyDown: z,
97
99
  ...N,
98
100
  children: [
99
- b,
100
- /* @__PURE__ */ C("span", { className: "sr-only", "aria-live": "polite", "aria-atomic": "true", children: h > 0 ? `Slide ${g + 1} of ${h}` : "" })
101
+ h,
102
+ /* @__PURE__ */ b("span", { className: "sr-only", "aria-live": "polite", "aria-atomic": "true", children: C > 0 ? `Slide ${g + 1} of ${C}` : "" })
101
103
  ]
102
104
  }
103
105
  ) });
104
106
  }
105
107
  );
106
- G.displayName = "Carousel";
107
- const O = 40, Y = 10, J = 0.11, Q = t.forwardRef(
108
+ J.displayName = "Carousel";
109
+ const Q = 40, Z = 10, K = 0.11, U = t.forwardRef(
108
110
  ({
109
111
  className: l,
110
- children: i,
112
+ children: s,
111
113
  onPointerDown: d,
112
114
  onPointerUp: f,
113
115
  onPointerCancel: o,
114
- onClickCapture: b,
116
+ onClickCapture: h,
115
117
  ...p
116
118
  }, m) => {
117
119
  const {
@@ -122,53 +124,52 @@ const O = 40, Y = 10, J = 0.11, Q = t.forwardRef(
122
124
  setCount: u,
123
125
  goPrevious: a,
124
126
  goNext: n
125
- } = T("CarouselContent"), y = t.Children.toArray(i), h = t.useRef(null), v = t.useRef(!1);
127
+ } = T("CarouselContent"), y = t.Children.toArray(s), C = t.useRef(null), S = t.useRef(!1);
126
128
  t.useEffect(() => {
127
129
  u(y.length);
128
130
  }, [y.length, u]);
129
131
  const P = (e) => {
130
- d == null || d(e), !(e.defaultPrevented || !e.isPrimary || e.pointerType === "mouse" || x <= 1) && (h.current = {
132
+ d == null || d(e), !(e.defaultPrevented || !e.isPrimary || e.pointerType === "mouse" || x <= 1) && (C.current = {
131
133
  pointerId: e.pointerId,
132
134
  x: e.clientX,
133
135
  time: e.timeStamp
134
136
  }, e.currentTarget.setPointerCapture(e.pointerId));
135
- }, R = (e) => {
137
+ }, v = (e) => {
136
138
  e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId);
137
139
  }, E = (e) => {
138
140
  f == null || f(e);
139
- const c = h.current;
140
- if (h.current = null, R(e), !c || c.pointerId !== e.pointerId) return;
141
- const A = e.clientX - c.x, w = Math.max(1, e.timeStamp - c.time), k = Math.abs(A) / w;
142
- (Math.abs(A) >= O || Math.abs(A) >= Y && k > J) && (v.current = !0, A < 0 ? n() : a());
141
+ const c = C.current;
142
+ if (C.current = null, v(e), !c || c.pointerId !== e.pointerId) return;
143
+ const A = e.clientX - c.x, R = Math.max(1, e.timeStamp - c.time), k = Math.abs(A) / R;
144
+ (Math.abs(A) >= Q || Math.abs(A) >= Z && k > K) && (S.current = !0, A < 0 ? n() : a());
143
145
  }, j = (e) => {
144
- o == null || o(e), h.current = null, R(e);
146
+ o == null || o(e), C.current = null, v(e);
145
147
  }, g = (e) => {
146
- if (v.current) {
147
- v.current = !1, e.preventDefault(), e.stopPropagation();
148
+ if (S.current) {
149
+ S.current = !1, e.preventDefault(), e.stopPropagation();
148
150
  return;
149
151
  }
150
- b == null || b(e);
152
+ h == null || h(e);
151
153
  };
152
- return /* @__PURE__ */ C(
154
+ return /* @__PURE__ */ b(
153
155
  "div",
154
156
  {
155
157
  ref: m,
156
158
  id: I,
157
- className: S("overflow-hidden touch-pan-y", l),
159
+ className: w("overflow-hidden touch-pan-y", l),
158
160
  onPointerDown: P,
159
161
  onPointerUp: E,
160
162
  onPointerCancel: j,
161
163
  onClickCapture: g,
162
164
  ...p,
163
- children: /* @__PURE__ */ C(
164
- "div",
165
+ children: /* @__PURE__ */ b(H, { reducedMotion: "user", children: /* @__PURE__ */ b(
166
+ X.div,
165
167
  {
166
- className: S(
167
- "flex",
168
- N ? "transition-transform duration-(--duration-normal) ease-in-out motion-reduce:transition-none" : "transition-none"
169
- ),
170
- style: { transform: `translate3d(-${r * 100}%, 0, 0)` },
171
- children: y.map((e, c) => /* @__PURE__ */ C(
168
+ className: "flex",
169
+ initial: !1,
170
+ animate: { x: `${-r * 100}%` },
171
+ transition: N ? O : { duration: 0 },
172
+ children: y.map((e, c) => /* @__PURE__ */ b(
172
173
  F.Provider,
173
174
  {
174
175
  value: {
@@ -181,48 +182,48 @@ const O = 40, Y = 10, J = 0.11, Q = t.forwardRef(
181
182
  t.isValidElement(e) ? e.key ?? c : c
182
183
  ))
183
184
  }
184
- )
185
+ ) })
185
186
  }
186
187
  );
187
188
  }
188
189
  );
189
- Q.displayName = "CarouselContent";
190
- const Z = t.forwardRef(
190
+ U.displayName = "CarouselContent";
191
+ const ee = t.forwardRef(
191
192
  ({
192
193
  className: l,
193
- role: i,
194
+ role: s,
194
195
  inert: d,
195
196
  "aria-label": f,
196
197
  "aria-hidden": o,
197
- "aria-roledescription": b,
198
+ "aria-roledescription": h,
198
199
  ...p
199
200
  }, m) => {
200
201
  const r = t.useContext(F);
201
- return /* @__PURE__ */ C(
202
+ return /* @__PURE__ */ b(
202
203
  "div",
203
204
  {
204
205
  ref: m,
205
- role: i ?? "group",
206
- "aria-roledescription": b ?? "slide",
206
+ role: s ?? "group",
207
+ "aria-roledescription": h ?? "slide",
207
208
  "aria-label": f ?? (r ? `${r.index + 1} of ${r.count}` : void 0),
208
209
  "aria-hidden": o ?? (r ? !r.isActive : void 0),
209
210
  inert: d ?? (r ? !r.isActive : void 0),
210
211
  "data-active": (r == null ? void 0 : r.isActive) || void 0,
211
- className: S("w-full shrink-0", l),
212
+ className: w("w-full shrink-0", l),
212
213
  ...p
213
214
  }
214
215
  );
215
216
  }
216
217
  );
217
- Z.displayName = "CarouselItem";
218
- const K = t.forwardRef(
218
+ ee.displayName = "CarouselItem";
219
+ const te = t.forwardRef(
219
220
  ({
220
221
  className: l,
221
- getLabel: i = (p) => `Go to slide ${p + 1}`,
222
+ getLabel: s = (p) => `Go to slide ${p + 1}`,
222
223
  onKeyDown: d,
223
224
  "aria-label": f,
224
225
  ...o
225
- }, b) => {
226
+ }, h) => {
226
227
  const { index: p, count: m, contentId: r, goTo: x } = T("CarouselIndicators"), I = t.useRef([]);
227
228
  if (m <= 1) return null;
228
229
  const N = (u) => {
@@ -231,25 +232,25 @@ const K = t.forwardRef(
231
232
  let a = null;
232
233
  u.key === "ArrowRight" ? a = (p + 1) % m : u.key === "ArrowLeft" ? a = (p - 1 + m) % m : u.key === "Home" ? a = 0 : u.key === "End" && (a = m - 1), a !== null && (u.preventDefault(), u.stopPropagation(), x(a, "instant"), (n = I.current[a]) == null || n.focus());
233
234
  };
234
- return /* @__PURE__ */ C(
235
+ return /* @__PURE__ */ b(
235
236
  "div",
236
237
  {
237
- ref: b,
238
+ ref: h,
238
239
  role: "group",
239
240
  "aria-label": f ?? "Choose a slide",
240
- className: S("flex items-center justify-center gap-1", l),
241
+ className: w("flex items-center justify-center gap-1", l),
241
242
  onKeyDown: N,
242
243
  ...o,
243
244
  children: Array.from({ length: m }, (u, a) => {
244
245
  const n = a === p;
245
- return /* @__PURE__ */ C(
246
+ return /* @__PURE__ */ b(
246
247
  "button",
247
248
  {
248
249
  ref: (y) => {
249
250
  I.current[a] = y;
250
251
  },
251
252
  type: "button",
252
- "aria-label": i(a),
253
+ "aria-label": s(a),
253
254
  "aria-current": n ? "true" : void 0,
254
255
  "aria-controls": r,
255
256
  tabIndex: n ? 0 : -1,
@@ -259,12 +260,12 @@ const K = t.forwardRef(
259
260
  a,
260
261
  _(y) ? "instant" : "animated"
261
262
  ),
262
- children: /* @__PURE__ */ C(
263
+ children: /* @__PURE__ */ b(
263
264
  "span",
264
265
  {
265
266
  "aria-hidden": !0,
266
- className: S(
267
- "size-2.5 rounded-dot transition-colors duration-(--duration-fast) ease-out motion-reduce:transition-none",
267
+ className: w(
268
+ "size-2.5 rounded-dot transition-colors duration-150 ease-out motion-reduce:transition-none",
268
269
  n ? "bg-brand" : "bg-fill group-hover:bg-muted"
269
270
  )
270
271
  }
@@ -277,75 +278,75 @@ const K = t.forwardRef(
277
278
  );
278
279
  }
279
280
  );
280
- K.displayName = "CarouselIndicators";
281
- const U = t.forwardRef(
281
+ te.displayName = "CarouselIndicators";
282
+ const re = t.forwardRef(
282
283
  ({
283
284
  children: l,
284
- variant: i = "secondary",
285
+ variant: s = "secondary",
285
286
  size: d = "icon-sm",
286
287
  disabled: f,
287
288
  onClick: o,
288
- "aria-label": b,
289
+ "aria-label": h,
289
290
  ...p
290
291
  }, m) => {
291
292
  const { index: r, count: x, loop: I, contentId: N, goPrevious: u } = T("CarouselPrevious"), a = f || x <= 1 || !I && r === 0;
292
- return /* @__PURE__ */ C(
293
+ return /* @__PURE__ */ b(
293
294
  D,
294
295
  {
295
296
  ref: m,
296
297
  type: "button",
297
- variant: i,
298
+ variant: s,
298
299
  size: d,
299
300
  disabled: a,
300
- "aria-label": b ?? "Previous slide",
301
+ "aria-label": h ?? "Previous slide",
301
302
  "aria-controls": N,
302
303
  onClick: (n) => {
303
304
  o == null || o(n), n.defaultPrevented || u(_(n) ? "instant" : "animated");
304
305
  },
305
306
  ...p,
306
- children: l ?? /* @__PURE__ */ C(H, {})
307
+ children: l ?? /* @__PURE__ */ b(B, {})
307
308
  }
308
309
  );
309
310
  }
310
311
  );
311
- U.displayName = "CarouselPrevious";
312
- const ee = t.forwardRef(
312
+ re.displayName = "CarouselPrevious";
313
+ const ae = t.forwardRef(
313
314
  ({
314
315
  children: l,
315
- variant: i = "secondary",
316
+ variant: s = "secondary",
316
317
  size: d = "icon-sm",
317
318
  disabled: f,
318
319
  onClick: o,
319
- "aria-label": b,
320
+ "aria-label": h,
320
321
  ...p
321
322
  }, m) => {
322
323
  const { index: r, count: x, loop: I, contentId: N, goNext: u } = T("CarouselNext"), a = f || x <= 1 || !I && r === x - 1;
323
- return /* @__PURE__ */ C(
324
+ return /* @__PURE__ */ b(
324
325
  D,
325
326
  {
326
327
  ref: m,
327
328
  type: "button",
328
- variant: i,
329
+ variant: s,
329
330
  size: d,
330
331
  disabled: a,
331
- "aria-label": b ?? "Next slide",
332
+ "aria-label": h ?? "Next slide",
332
333
  "aria-controls": N,
333
334
  onClick: (n) => {
334
335
  o == null || o(n), n.defaultPrevented || u(_(n) ? "instant" : "animated");
335
336
  },
336
337
  ...p,
337
- children: l ?? /* @__PURE__ */ C(X, {})
338
+ children: l ?? /* @__PURE__ */ b(G, {})
338
339
  }
339
340
  );
340
341
  }
341
342
  );
342
- ee.displayName = "CarouselNext";
343
+ ae.displayName = "CarouselNext";
343
344
  export {
344
- G as Carousel,
345
- Q as CarouselContent,
346
- K as CarouselIndicators,
347
- Z as CarouselItem,
348
- ee as CarouselNext,
349
- U as CarouselPrevious,
350
- B as carouselVariants
345
+ J as Carousel,
346
+ U as CarouselContent,
347
+ te as CarouselIndicators,
348
+ ee as CarouselItem,
349
+ ae as CarouselNext,
350
+ re as CarouselPrevious,
351
+ Y as carouselVariants
351
352
  };
@@ -131,7 +131,7 @@ function Pe({
131
131
  }) {
132
132
  const a = t ?? {}, s = /* @__PURE__ */ N("span", { className: $(ue, D[l].pill), children: [
133
133
  r,
134
- n != null && /* @__PURE__ */ e("span", { className: "ml-1 tabular-nums opacity-70", children: n })
134
+ n != null && /* @__PURE__ */ e("span", { className: "ml-1 tabular-nums", children: n })
135
135
  ] });
136
136
  return o === "y" ? /* @__PURE__ */ e("foreignObject", { x: a.x ?? 0, y: (a.y ?? 0) - 12, width: a.width ?? 0, height: 24, className: "overflow-visible", children: /* @__PURE__ */ e("div", { className: "flex h-full items-center justify-end pr-1", children: s }) }) : /* @__PURE__ */ e("foreignObject", { x: (a.x ?? 0) - 90, y: (a.y ?? 0) - 12, width: 180, height: 24, className: "overflow-visible", children: /* @__PURE__ */ e("div", { className: "flex h-full items-center justify-center", children: s }) });
137
137
  }
@@ -156,7 +156,7 @@ function _e({
156
156
  tabIndex: 0,
157
157
  role: "img",
158
158
  "aria-label": `Annotation ${n}: ${l.label}`,
159
- className: "cursor-default outline-none [transform-box:fill-box] origin-center transition-transform ease-out [transition-duration:var(--duration-fast)] hover:scale-110 focus-visible:scale-110",
159
+ className: "cursor-default outline-none [transform-box:fill-box] origin-center transition-transform ease-out [transition-duration:150ms] hover:scale-110 focus-visible:scale-110 motion-reduce:transition-none motion-reduce:hover:scale-100 motion-reduce:focus-visible:scale-100",
160
160
  onMouseEnter: c,
161
161
  onMouseLeave: f,
162
162
  onFocus: () => {
@@ -176,7 +176,7 @@ function _e({
176
176
  y: r,
177
177
  dy: "0.35em",
178
178
  textAnchor: "middle",
179
- className: "pointer-events-none fill-brand-foreground text-xs font-semibold select-none",
179
+ className: "pointer-events-none fill-brand-foreground text-xs font-medium select-none",
180
180
  children: n
181
181
  }
182
182
  )
@@ -207,7 +207,7 @@ function Ge({ hovered: t, frameWidth: r, format: n }) {
207
207
  "span",
208
208
  {
209
209
  "aria-hidden": !0,
210
- className: "flex size-4.5 shrink-0 items-center justify-center rounded-full text-xs font-semibold text-brand-foreground",
210
+ className: "flex size-4.5 shrink-0 items-center justify-center rounded-full text-xs font-medium text-brand-foreground",
211
211
  style: { background: D[t.ann.color ?? "primary"].ref },
212
212
  children: t.n
213
213
  }
@@ -834,6 +834,8 @@ const Ze = k.forwardRef(
834
834
  children: t.map((p, i) => /* @__PURE__ */ e(
835
835
  oe,
836
836
  {
837
+ role: "presentation",
838
+ "aria-hidden": "true",
837
839
  fill: b(String(p[r]), i),
838
840
  fillOpacity: w(String(p[r]))
839
841
  },
@@ -843,7 +845,7 @@ const Ze = k.forwardRef(
843
845
  )
844
846
  ] }) }),
845
847
  l && /* @__PURE__ */ N("div", { className: "pointer-events-none absolute inset-0 flex flex-col items-center justify-center", children: [
846
- /* @__PURE__ */ e("div", { className: "text-xl font-semibold text-foreground tabular-nums", children: v(m) }),
848
+ /* @__PURE__ */ e("div", { className: "text-xl font-medium text-foreground tabular-nums", children: v(m) }),
847
849
  o && /* @__PURE__ */ e("div", { className: "mt-0.5 text-xs font-normal tracking-wide uppercase text-tertiary", children: o })
848
850
  ] })
849
851
  ] })
@@ -1003,7 +1005,7 @@ const qe = k.forwardRef(
1003
1005
  }
1004
1006
  ) }),
1005
1007
  /* @__PURE__ */ N("div", { className: "pointer-events-none absolute inset-0 flex flex-col items-center justify-center", children: [
1006
- /* @__PURE__ */ e("div", { className: "text-xl font-semibold text-foreground tabular-nums", children: x(Math.round(m)) }),
1008
+ /* @__PURE__ */ e("div", { className: "text-xl font-medium text-foreground tabular-nums", children: x(Math.round(m)) }),
1007
1009
  o && /* @__PURE__ */ e("div", { className: "mt-0.5 text-xs font-normal tracking-wide uppercase text-tertiary", children: o })
1008
1010
  ] })
1009
1011
  ] }),
@@ -1053,7 +1055,7 @@ function Je({
1053
1055
  "p",
1054
1056
  {
1055
1057
  className: $(
1056
- "truncate text-xs font-semibold",
1058
+ "truncate text-xs font-medium",
1057
1059
  d ? "text-background" : "text-foreground"
1058
1060
  ),
1059
1061
  children: s