@actioneer/ads 1.0.6 → 1.0.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.
- package/DESIGN.md +80 -86
- package/README.md +6 -0
- package/components/ai-elements/chart.js +20 -20
- package/components/ai-elements/inline-citation.js +50 -50
- package/components/ai-elements/message.js +1 -1
- package/components/ai-elements/tool.js +5 -5
- package/components/alert.d.ts +5 -4
- package/components/alert.js +91 -79
- package/components/answer.js +1 -1
- package/components/assistant-ui/action-bar.js +1 -1
- package/components/assistant-ui/attachment.js +68 -49
- package/components/assistant-ui/composer-add-context.js +1 -1
- package/components/assistant-ui/composer-trigger-popover.js +1 -1
- package/components/assistant-ui/composer.js +13 -13
- package/components/assistant-ui/message-timing.js +6 -6
- package/components/assistant-ui/selection-toolbar.js +5 -5
- package/components/assistant-ui/sources.js +15 -15
- package/components/assistant-ui/tooltip-icon-button.js +18 -14
- package/components/audio-waveform.d.ts +21 -8
- package/components/audio-waveform.js +371 -94
- package/components/autocomplete.js +9 -9
- package/components/breadcrumbs.js +32 -38
- package/components/button.js +83 -73
- package/components/card.js +1 -1
- package/components/chart.js +732 -673
- package/components/chip.js +37 -35
- package/components/command-palette.js +12 -12
- package/components/connector-card.d.ts +1 -2
- package/components/connector-card.js +17 -17
- package/components/date-range-picker.js +1 -2
- package/components/drawer.js +9 -10
- package/components/dropdown.js +1 -1
- package/components/empty-state.d.ts +2 -0
- package/components/empty-state.js +17 -15
- package/components/field.js +9 -10
- package/components/file-dropzone.d.ts +6 -3
- package/components/file-dropzone.js +72 -60
- package/components/infinite-canvas.js +9 -9
- package/components/modal.js +1 -1
- package/components/page-body.js +8 -8
- package/components/popover.js +11 -11
- package/components/progress-circle.d.ts +1 -1
- package/components/progress-circle.js +57 -48
- package/components/radio.d.ts +1 -1
- package/components/radio.js +53 -53
- package/components/segmented.d.ts +1 -0
- package/components/segmented.js +34 -36
- package/components/select.js +2 -2
- package/components/selection-action-bar.js +32 -31
- package/components/setting-row.js +10 -10
- package/components/sidebar.js +74 -73
- package/components/slider.js +5 -5
- package/components/stepper.d.ts +1 -1
- package/components/stepper.js +1 -1
- package/components/switch.js +10 -10
- package/components/table.d.ts +17 -5
- package/components/table.js +559 -405
- package/components/tabs.js +41 -35
- package/components/timeline.js +3 -3
- package/components/toast.js +53 -56
- package/components/ui/button.js +4 -4
- package/components/ui/dialog.js +1 -1
- package/components/viz-charts.js +263 -221
- package/examples/README.md +30 -0
- package/examples/agents-screen.tsx +477 -0
- package/examples/settings-screen.tsx +90 -0
- package/examples/workspace-header.tsx +71 -0
- package/lib/icons.d.ts +8 -0
- package/lib/icons.js +171 -118
- package/llms.txt +16 -16
- package/manifest.json +178 -54
- package/package.json +1 -1
- package/styles.css +60 -72
- package/theme.css +55 -63
package/components/tabs.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as
|
|
2
|
+
import { jsx as m, jsxs as E } from "react/jsx-runtime";
|
|
3
3
|
import * as r from "react";
|
|
4
|
-
import { MotionConfig as
|
|
4
|
+
import { MotionConfig as j, motion as $ } from "motion/react";
|
|
5
5
|
import { cva as L } from "class-variance-authority";
|
|
6
6
|
import { cn as b } from "../lib/cn.js";
|
|
7
|
-
import { springControl as
|
|
7
|
+
import { springControl as M } from "../lib/motion.js";
|
|
8
8
|
const N = (o, e, t) => `${o}-${e}-${encodeURIComponent(t).replaceAll("%", "_")}`, P = r.createContext(null);
|
|
9
9
|
function z(o) {
|
|
10
10
|
const e = r.useContext(P);
|
|
@@ -12,32 +12,32 @@ function z(o) {
|
|
|
12
12
|
throw new Error(`<${o}> must be used within <Tabs>`);
|
|
13
13
|
return e;
|
|
14
14
|
}
|
|
15
|
-
const
|
|
15
|
+
const U = r.forwardRef(
|
|
16
16
|
({
|
|
17
17
|
className: o,
|
|
18
18
|
value: e,
|
|
19
19
|
defaultValue: t,
|
|
20
20
|
onValueChange: a,
|
|
21
|
-
variant:
|
|
21
|
+
variant: w,
|
|
22
22
|
orientation: c = "horizontal",
|
|
23
|
-
size:
|
|
23
|
+
size: p,
|
|
24
24
|
children: R,
|
|
25
25
|
...A
|
|
26
26
|
}, k) => {
|
|
27
|
-
const x = e !== void 0, [
|
|
27
|
+
const x = e !== void 0, [y, v] = r.useState(t), T = r.useId().replaceAll(":", ""), d = r.useId(), g = r.useRef([]), h = r.useRef(/* @__PURE__ */ new Set()), f = x ? e : y, I = r.useCallback(
|
|
28
28
|
(l) => {
|
|
29
29
|
x || v(l), a == null || a(l);
|
|
30
30
|
},
|
|
31
31
|
[x, a]
|
|
32
32
|
), i = r.useCallback((l) => {
|
|
33
|
-
|
|
33
|
+
g.current.includes(l) || g.current.push(l);
|
|
34
34
|
}, []), s = r.useMemo(
|
|
35
35
|
() => ({
|
|
36
36
|
value: f,
|
|
37
37
|
setValue: I,
|
|
38
38
|
baseId: T,
|
|
39
39
|
registerTab: i,
|
|
40
|
-
tabs:
|
|
40
|
+
tabs: g,
|
|
41
41
|
disabled: h,
|
|
42
42
|
thumbId: d,
|
|
43
43
|
orientation: c
|
|
@@ -51,7 +51,7 @@ const _ = r.forwardRef(
|
|
|
51
51
|
c
|
|
52
52
|
]
|
|
53
53
|
);
|
|
54
|
-
return /* @__PURE__ */
|
|
54
|
+
return /* @__PURE__ */ m(P.Provider, { value: s, children: /* @__PURE__ */ m(
|
|
55
55
|
"div",
|
|
56
56
|
{
|
|
57
57
|
ref: k,
|
|
@@ -63,16 +63,22 @@ const _ = r.forwardRef(
|
|
|
63
63
|
o
|
|
64
64
|
),
|
|
65
65
|
...A,
|
|
66
|
-
children: /* @__PURE__ */
|
|
66
|
+
children: /* @__PURE__ */ m(j, { reducedMotion: "user", children: R })
|
|
67
67
|
}
|
|
68
68
|
) });
|
|
69
69
|
}
|
|
70
70
|
);
|
|
71
|
-
|
|
71
|
+
U.displayName = "Tabs";
|
|
72
72
|
const C = L("inline-flex text-l", {
|
|
73
73
|
variants: {
|
|
74
74
|
orientation: {
|
|
75
|
-
horizontal:
|
|
75
|
+
horizontal: b(
|
|
76
|
+
"w-full self-start flex-row items-center gap-4 overflow-x-auto",
|
|
77
|
+
// Full-width 1px baseline: WG3 at the leading edge fading to
|
|
78
|
+
// transparent. Triggers overlap it (-mb-px) so the thumb slides on it.
|
|
79
|
+
"pb-px bg-[image:linear-gradient(to_right,var(--border-tertiary),transparent)]",
|
|
80
|
+
"bg-[length:100%_1px] bg-bottom bg-no-repeat"
|
|
81
|
+
),
|
|
76
82
|
vertical: "flex-col items-stretch gap-0 border-r border-table-stroke"
|
|
77
83
|
}
|
|
78
84
|
},
|
|
@@ -82,7 +88,7 @@ const C = L("inline-flex text-l", {
|
|
|
82
88
|
}), B = r.forwardRef(
|
|
83
89
|
({ className: o, ...e }, t) => {
|
|
84
90
|
const { orientation: a } = z("TabList");
|
|
85
|
-
return /* @__PURE__ */
|
|
91
|
+
return /* @__PURE__ */ m(
|
|
86
92
|
"div",
|
|
87
93
|
{
|
|
88
94
|
ref: t,
|
|
@@ -121,15 +127,15 @@ const H = L(
|
|
|
121
127
|
}
|
|
122
128
|
}
|
|
123
129
|
), O = r.forwardRef(
|
|
124
|
-
({ className: o, value: e, isDisabled: t, count: a, children:
|
|
130
|
+
({ className: o, value: e, isDisabled: t, count: a, children: w, onClick: c, onKeyDown: p, ...R }, A) => {
|
|
125
131
|
const {
|
|
126
132
|
value: k,
|
|
127
133
|
setValue: x,
|
|
128
|
-
baseId:
|
|
134
|
+
baseId: y,
|
|
129
135
|
registerTab: v,
|
|
130
136
|
tabs: T,
|
|
131
137
|
disabled: d,
|
|
132
|
-
thumbId:
|
|
138
|
+
thumbId: g,
|
|
133
139
|
orientation: h
|
|
134
140
|
} = z("Tab"), f = k === e;
|
|
135
141
|
r.useEffect(() => {
|
|
@@ -138,17 +144,17 @@ const H = L(
|
|
|
138
144
|
t ? d.current.add(e) : d.current.delete(e);
|
|
139
145
|
}, [d, t, e]);
|
|
140
146
|
const I = (i) => {
|
|
141
|
-
if (
|
|
147
|
+
if (p == null || p(i), i.defaultPrevented) return;
|
|
142
148
|
const s = T.current, l = s.indexOf(e);
|
|
143
149
|
if (l === -1) return;
|
|
144
|
-
const V = h === "vertical" ? ["ArrowDown"] : ["ArrowRight", "ArrowDown"],
|
|
150
|
+
const V = h === "vertical" ? ["ArrowDown"] : ["ArrowRight", "ArrowDown"], _ = h === "vertical" ? ["ArrowUp"] : ["ArrowLeft", "ArrowUp"];
|
|
145
151
|
let n = null;
|
|
146
152
|
if (V.includes(i.key)) {
|
|
147
153
|
n = l;
|
|
148
154
|
do
|
|
149
155
|
n = (n + 1) % s.length;
|
|
150
156
|
while (d.current.has(s[n]) && n !== l);
|
|
151
|
-
} else if (
|
|
157
|
+
} else if (_.includes(i.key)) {
|
|
152
158
|
n = l;
|
|
153
159
|
do
|
|
154
160
|
n = (n - 1 + s.length) % s.length;
|
|
@@ -166,7 +172,7 @@ const H = L(
|
|
|
166
172
|
i.preventDefault();
|
|
167
173
|
const u = s[n];
|
|
168
174
|
x(u);
|
|
169
|
-
const S = document.getElementById(N(
|
|
175
|
+
const S = document.getElementById(N(y, "tab", u));
|
|
170
176
|
S == null || S.focus();
|
|
171
177
|
}
|
|
172
178
|
};
|
|
@@ -176,7 +182,7 @@ const H = L(
|
|
|
176
182
|
ref: A,
|
|
177
183
|
type: "button",
|
|
178
184
|
role: "tab",
|
|
179
|
-
id: N(
|
|
185
|
+
id: N(y, "tab", e),
|
|
180
186
|
"aria-selected": f,
|
|
181
187
|
"aria-disabled": t || void 0,
|
|
182
188
|
disabled: t,
|
|
@@ -193,12 +199,12 @@ const H = L(
|
|
|
193
199
|
onKeyDown: I,
|
|
194
200
|
...R,
|
|
195
201
|
children: [
|
|
196
|
-
f && /* @__PURE__ */
|
|
197
|
-
|
|
202
|
+
f && /* @__PURE__ */ m(
|
|
203
|
+
$.span,
|
|
198
204
|
{
|
|
199
|
-
layoutId:
|
|
205
|
+
layoutId: g,
|
|
200
206
|
"aria-hidden": !0,
|
|
201
|
-
transition:
|
|
207
|
+
transition: M,
|
|
202
208
|
className: b(
|
|
203
209
|
"absolute bg-action-primary",
|
|
204
210
|
h === "horizontal" ? "left-0 right-0 bottom-0 h-0.5" : "top-0 bottom-0 right-0 w-0.5"
|
|
@@ -206,7 +212,7 @@ const H = L(
|
|
|
206
212
|
}
|
|
207
213
|
),
|
|
208
214
|
/* @__PURE__ */ E("span", { className: "relative inline-flex items-center gap-1", children: [
|
|
209
|
-
|
|
215
|
+
w,
|
|
210
216
|
a != null && /* @__PURE__ */ E(
|
|
211
217
|
"span",
|
|
212
218
|
{
|
|
@@ -230,7 +236,7 @@ O.displayName = "Tab";
|
|
|
230
236
|
const q = r.forwardRef(
|
|
231
237
|
({ className: o, ...e }, t) => {
|
|
232
238
|
const { orientation: a } = z("TabSeparator");
|
|
233
|
-
return /* @__PURE__ */
|
|
239
|
+
return /* @__PURE__ */ m(
|
|
234
240
|
"span",
|
|
235
241
|
{
|
|
236
242
|
ref: t,
|
|
@@ -248,15 +254,15 @@ const q = r.forwardRef(
|
|
|
248
254
|
);
|
|
249
255
|
q.displayName = "TabSeparator";
|
|
250
256
|
const F = r.forwardRef(
|
|
251
|
-
({ className: o, value: e, children: t, ...a },
|
|
252
|
-
const { value: c, baseId:
|
|
253
|
-
return c !== e ? null : /* @__PURE__ */
|
|
257
|
+
({ className: o, value: e, children: t, ...a }, w) => {
|
|
258
|
+
const { value: c, baseId: p } = z("TabPanel");
|
|
259
|
+
return c !== e ? null : /* @__PURE__ */ m(
|
|
254
260
|
"div",
|
|
255
261
|
{
|
|
256
|
-
ref:
|
|
262
|
+
ref: w,
|
|
257
263
|
role: "tabpanel",
|
|
258
|
-
id: N(
|
|
259
|
-
"aria-labelledby": N(
|
|
264
|
+
id: N(p, "panel", e),
|
|
265
|
+
"aria-labelledby": N(p, "tab", e),
|
|
260
266
|
tabIndex: 0,
|
|
261
267
|
className: b(
|
|
262
268
|
"flex-1 outline-none focus-visible:ring-3 focus-visible:ring-ring rounded-sm",
|
|
@@ -274,5 +280,5 @@ export {
|
|
|
274
280
|
B as TabList,
|
|
275
281
|
F as TabPanel,
|
|
276
282
|
q as TabSeparator,
|
|
277
|
-
|
|
283
|
+
U as Tabs
|
|
278
284
|
};
|
package/components/timeline.js
CHANGED
|
@@ -10,7 +10,7 @@ const p = l.forwardRef(
|
|
|
10
10
|
{
|
|
11
11
|
ref: r,
|
|
12
12
|
className: e(
|
|
13
|
-
"relative pb-
|
|
13
|
+
"relative pb-6 pl-6 last:pb-0 last:[&_.ads-timeline-line]:hidden",
|
|
14
14
|
a
|
|
15
15
|
),
|
|
16
16
|
...m,
|
|
@@ -20,7 +20,7 @@ const p = l.forwardRef(
|
|
|
20
20
|
{
|
|
21
21
|
"aria-hidden": !0,
|
|
22
22
|
className: e(
|
|
23
|
-
"ads-timeline-line absolute bottom-0 left-1.5 top-5 w-px bg-border",
|
|
23
|
+
"ads-timeline-line absolute -bottom-0.5 left-1.5 top-4.5 w-px bg-border",
|
|
24
24
|
s
|
|
25
25
|
)
|
|
26
26
|
}
|
|
@@ -30,7 +30,7 @@ const p = l.forwardRef(
|
|
|
30
30
|
{
|
|
31
31
|
"aria-hidden": !0,
|
|
32
32
|
className: e(
|
|
33
|
-
"absolute left-0.5 top-
|
|
33
|
+
"absolute left-0.5 top-1.5 size-2 rounded-dot bg-muted-foreground",
|
|
34
34
|
i
|
|
35
35
|
)
|
|
36
36
|
}
|
package/components/toast.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs as T, jsx as c } from "react/jsx-runtime";
|
|
3
|
-
import * as
|
|
3
|
+
import * as o from "react";
|
|
4
4
|
import { createPortal as B } from "react-dom";
|
|
5
5
|
import { MotionConfig as V, AnimatePresence as q, motion as G } from "motion/react";
|
|
6
6
|
import { WarningCircle as J, Warning as K, Info as E, CheckCircle as Q, Close as U } from "../lib/icons.js";
|
|
@@ -9,15 +9,15 @@ import { springOverlay as z } from "../lib/motion.js";
|
|
|
9
9
|
import { Ripple as X } from "./ripple.js";
|
|
10
10
|
import { Button as Y } from "./button.js";
|
|
11
11
|
import { Spinner as Z } from "./spinner.js";
|
|
12
|
-
const R =
|
|
12
|
+
const R = o.createContext(null);
|
|
13
13
|
function fe() {
|
|
14
|
-
const v =
|
|
14
|
+
const v = o.useContext(R);
|
|
15
15
|
if (!v)
|
|
16
16
|
throw new Error("useToast must be used within a <ToastProvider>.");
|
|
17
17
|
const { push: l, close: g, clear: d } = v;
|
|
18
|
-
return { toast:
|
|
18
|
+
return { toast: o.useMemo(() => {
|
|
19
19
|
const u = ((s, a) => {
|
|
20
|
-
if (s !== null && typeof s == "object" && !
|
|
20
|
+
if (s !== null && typeof s == "object" && !o.isValidElement(s)) {
|
|
21
21
|
const { title: i, ...h } = s;
|
|
22
22
|
return l(i, { ...h, ...a });
|
|
23
23
|
}
|
|
@@ -59,53 +59,53 @@ function he({
|
|
|
59
59
|
maxVisible: g = 3
|
|
60
60
|
}) {
|
|
61
61
|
var M;
|
|
62
|
-
const [d, w] =
|
|
63
|
-
w((
|
|
62
|
+
const [d, w] = o.useState([]), [u, f] = o.useState(/* @__PURE__ */ new Set()), s = o.useRef(/* @__PURE__ */ new Map()), a = o.useRef(/* @__PURE__ */ new Map()), i = o.useCallback((e) => {
|
|
63
|
+
w((r) => r.filter((m) => m.id !== e));
|
|
64
64
|
const t = s.current.get(e);
|
|
65
|
-
t != null && t.handle && clearTimeout(t.handle), s.current.delete(e), f((
|
|
66
|
-
if (!
|
|
67
|
-
const m = new Set(
|
|
65
|
+
t != null && t.handle && clearTimeout(t.handle), s.current.delete(e), f((r) => {
|
|
66
|
+
if (!r.has(e)) return r;
|
|
67
|
+
const m = new Set(r);
|
|
68
68
|
return m.delete(e), m;
|
|
69
69
|
});
|
|
70
70
|
const n = a.current.get(e);
|
|
71
71
|
a.current.delete(e), n == null || n();
|
|
72
|
-
}, []), h =
|
|
72
|
+
}, []), h = o.useCallback(() => {
|
|
73
73
|
f(/* @__PURE__ */ new Set()), w((e) => (e.forEach((t) => {
|
|
74
|
-
var
|
|
74
|
+
var r;
|
|
75
75
|
const n = s.current.get(t.id);
|
|
76
|
-
n != null && n.handle && clearTimeout(n.handle), s.current.delete(t.id), (
|
|
76
|
+
n != null && n.handle && clearTimeout(n.handle), s.current.delete(t.id), (r = a.current.get(t.id)) == null || r(), a.current.delete(t.id);
|
|
77
77
|
}), []));
|
|
78
|
-
}, []),
|
|
78
|
+
}, []), P = o.useCallback(
|
|
79
79
|
(e, t = {}) => {
|
|
80
|
-
const n = Math.random().toString(36).slice(2),
|
|
80
|
+
const n = Math.random().toString(36).slice(2), r = t.timeout ?? t.duration ?? (t.isLoading ? 0 : 5e3), m = {
|
|
81
81
|
variant: "default",
|
|
82
82
|
...t,
|
|
83
83
|
id: n,
|
|
84
84
|
title: e,
|
|
85
|
-
dismissAfter:
|
|
85
|
+
dismissAfter: r
|
|
86
86
|
};
|
|
87
|
-
return w((b) => [...b, m]), a.current.set(n, t.onClose),
|
|
88
|
-
handle: setTimeout(() => i(n),
|
|
89
|
-
remaining:
|
|
87
|
+
return w((b) => [...b, m]), a.current.set(n, t.onClose), r > 0 && s.current.set(n, {
|
|
88
|
+
handle: setTimeout(() => i(n), r),
|
|
89
|
+
remaining: r,
|
|
90
90
|
startedAt: Date.now()
|
|
91
91
|
}), n;
|
|
92
92
|
},
|
|
93
93
|
[i]
|
|
94
|
-
), I =
|
|
94
|
+
), I = o.useCallback((e) => {
|
|
95
95
|
const t = s.current.get(e);
|
|
96
96
|
t != null && t.handle && (clearTimeout(t.handle), t.remaining = Math.max(0, t.remaining - (Date.now() - t.startedAt)), t.handle = null, f((n) => {
|
|
97
97
|
if (n.has(e)) return n;
|
|
98
|
-
const
|
|
99
|
-
return
|
|
98
|
+
const r = new Set(n);
|
|
99
|
+
return r.add(e), r;
|
|
100
100
|
}));
|
|
101
|
-
}, []), L =
|
|
101
|
+
}, []), L = o.useCallback(
|
|
102
102
|
(e) => {
|
|
103
103
|
const t = s.current.get(e);
|
|
104
104
|
if (!(!t || t.handle)) {
|
|
105
105
|
if (f((n) => {
|
|
106
106
|
if (!n.has(e)) return n;
|
|
107
|
-
const
|
|
108
|
-
return
|
|
107
|
+
const r = new Set(n);
|
|
108
|
+
return r.delete(e), r;
|
|
109
109
|
}), t.remaining <= 0) {
|
|
110
110
|
i(e);
|
|
111
111
|
return;
|
|
@@ -115,7 +115,7 @@ function he({
|
|
|
115
115
|
},
|
|
116
116
|
[i]
|
|
117
117
|
);
|
|
118
|
-
|
|
118
|
+
o.useEffect(() => {
|
|
119
119
|
const e = s.current;
|
|
120
120
|
return () => {
|
|
121
121
|
e.forEach((t) => {
|
|
@@ -123,16 +123,16 @@ function he({
|
|
|
123
123
|
}), e.clear();
|
|
124
124
|
};
|
|
125
125
|
}, []);
|
|
126
|
-
const j =
|
|
127
|
-
|
|
128
|
-
const [y,
|
|
129
|
-
|
|
130
|
-
const e =
|
|
126
|
+
const j = o.useMemo(() => ({ push: P, close: i, clear: h }), [P, i, h]), [H, $] = o.useState(!1);
|
|
127
|
+
o.useEffect(() => $(!0), []);
|
|
128
|
+
const [y, S] = o.useState(null), k = o.useRef(null), D = (M = d[d.length - 1]) == null ? void 0 : M.id;
|
|
129
|
+
o.useLayoutEffect(() => {
|
|
130
|
+
const e = k.current;
|
|
131
131
|
if (!e) {
|
|
132
|
-
|
|
132
|
+
S(null);
|
|
133
133
|
return;
|
|
134
134
|
}
|
|
135
|
-
const t = () =>
|
|
135
|
+
const t = () => S(e.offsetHeight);
|
|
136
136
|
t();
|
|
137
137
|
const n = new ResizeObserver(t);
|
|
138
138
|
return n.observe(e), () => n.disconnect();
|
|
@@ -152,11 +152,11 @@ function he({
|
|
|
152
152
|
role: "region",
|
|
153
153
|
"aria-label": "Notifications",
|
|
154
154
|
children: /* @__PURE__ */ c(V, { reducedMotion: "user", children: /* @__PURE__ */ c(q, { children: d.map((e, t) => {
|
|
155
|
-
const n = d.length - 1 - t,
|
|
155
|
+
const n = d.length - 1 - t, r = n === 0, m = n >= g, b = ee[e.variant ?? "default"], F = b.icon;
|
|
156
156
|
return /* @__PURE__ */ T(
|
|
157
157
|
G.div,
|
|
158
158
|
{
|
|
159
|
-
ref:
|
|
159
|
+
ref: r ? k : void 0,
|
|
160
160
|
layout: !1,
|
|
161
161
|
role: "status",
|
|
162
162
|
"aria-live": "polite",
|
|
@@ -179,39 +179,36 @@ function he({
|
|
|
179
179
|
className: p(
|
|
180
180
|
"group/toast absolute inset-x-0 flex items-start gap-1.5",
|
|
181
181
|
x ? "top-0" : "bottom-0",
|
|
182
|
-
"rounded-2xl
|
|
183
|
-
|
|
182
|
+
"rounded-2xl bg-elevated px-4 py-3 shadow-float",
|
|
183
|
+
r ? "pointer-events-auto" : "pointer-events-none overflow-hidden"
|
|
184
184
|
),
|
|
185
185
|
style: {
|
|
186
186
|
zIndex: 100 - n,
|
|
187
187
|
// Behind layers freeze at the front card's height so
|
|
188
188
|
// only their top edge shows as a clean sliver.
|
|
189
|
-
height: !
|
|
189
|
+
height: !r && y != null ? y : void 0
|
|
190
190
|
},
|
|
191
191
|
children: [
|
|
192
192
|
/* @__PURE__ */ c(X, { origin: x ? "top" : "bottom" }),
|
|
193
|
-
e.dismissAfter > 0 && // The
|
|
194
|
-
//
|
|
195
|
-
//
|
|
196
|
-
/* @__PURE__ */
|
|
193
|
+
e.dismissAfter > 0 && // The toast has no border (the float shadow's hairline
|
|
194
|
+
// edges it), and the countdown has no grey track: only
|
|
195
|
+
// the thin tone-coloured bar, clipped by the radius.
|
|
196
|
+
/* @__PURE__ */ c(
|
|
197
197
|
"span",
|
|
198
198
|
{
|
|
199
199
|
"aria-hidden": !0,
|
|
200
200
|
className: "pointer-events-none absolute inset-0 overflow-hidden rounded-2xl",
|
|
201
|
-
children:
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
"
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
animation: `ads-toast-progress ${e.dismissAfter}ms linear forwards`,
|
|
210
|
-
animationPlayState: u.has(e.id) ? "paused" : "running"
|
|
211
|
-
}
|
|
201
|
+
children: /* @__PURE__ */ c(
|
|
202
|
+
"span",
|
|
203
|
+
{
|
|
204
|
+
"data-toast-progress": !0,
|
|
205
|
+
className: p("absolute inset-x-0 bottom-0 block h-0.5 origin-left", b.progress),
|
|
206
|
+
style: {
|
|
207
|
+
animation: `ads-toast-progress ${e.dismissAfter}ms linear forwards`,
|
|
208
|
+
animationPlayState: u.has(e.id) ? "paused" : "running"
|
|
212
209
|
}
|
|
213
|
-
|
|
214
|
-
|
|
210
|
+
}
|
|
211
|
+
)
|
|
215
212
|
}
|
|
216
213
|
),
|
|
217
214
|
/* @__PURE__ */ c(
|
|
@@ -249,7 +246,7 @@ function he({
|
|
|
249
246
|
"aria-label": "Dismiss",
|
|
250
247
|
className: p(
|
|
251
248
|
"absolute -right-1 -top-1 inline-flex size-5 items-center justify-center",
|
|
252
|
-
"rounded-full border border-border bg-elevated text-muted-foreground
|
|
249
|
+
"rounded-full border border-border bg-elevated text-muted-foreground",
|
|
253
250
|
"opacity-0 transition-opacity duration-150 ease-out",
|
|
254
251
|
"group-hover/toast:opacity-100 focus-visible:opacity-100",
|
|
255
252
|
"hover:bg-muted hover:text-foreground",
|
package/components/ui/button.js
CHANGED
|
@@ -10,10 +10,10 @@ const u = a(
|
|
|
10
10
|
variant: {
|
|
11
11
|
default: "bg-action-primary text-action-primary-foreground hover:bg-action-primary-hover",
|
|
12
12
|
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:ring-destructive/20",
|
|
13
|
-
outline: "border bg-background
|
|
13
|
+
outline: "border bg-background hover:border-action-primary hover:bg-action-primary-soft hover:text-action-primary-text",
|
|
14
14
|
secondary: "bg-action-primary-soft text-action-primary-text hover:bg-action-primary-soft/80",
|
|
15
15
|
ghost: "hover:bg-action-primary-soft hover:text-action-primary-text",
|
|
16
|
-
link: "text-action-primary-text
|
|
16
|
+
link: "text-action-primary-text"
|
|
17
17
|
},
|
|
18
18
|
size: {
|
|
19
19
|
default: "h-9 px-4 py-2 has-[>svg]:px-3",
|
|
@@ -32,7 +32,7 @@ const u = a(
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
);
|
|
35
|
-
function
|
|
35
|
+
function l({
|
|
36
36
|
className: r,
|
|
37
37
|
variant: t = "default",
|
|
38
38
|
size: e = "default",
|
|
@@ -52,6 +52,6 @@ function g({
|
|
|
52
52
|
);
|
|
53
53
|
}
|
|
54
54
|
export {
|
|
55
|
-
|
|
55
|
+
l as Button,
|
|
56
56
|
u as buttonVariants
|
|
57
57
|
};
|
package/components/ui/dialog.js
CHANGED
|
@@ -84,7 +84,7 @@ function V({
|
|
|
84
84
|
animate: "visible",
|
|
85
85
|
exit: "hidden",
|
|
86
86
|
className: u(
|
|
87
|
-
"pointer-events-auto relative flex max-h-[calc(100dvh-2rem)] w-full max-w-[38.75rem] flex-col overflow-hidden rounded-xl bg-elevated text-foreground shadow-
|
|
87
|
+
"pointer-events-auto relative flex max-h-[calc(100dvh-2rem)] w-full max-w-[38.75rem] flex-col overflow-hidden rounded-xl bg-elevated text-foreground shadow-overlay outline-none max-sm:max-h-[calc(100dvh-1rem)] max-sm:rounded-lg",
|
|
88
88
|
t
|
|
89
89
|
),
|
|
90
90
|
children: [
|