@omg-dev/app 0.2.20 → 0.2.23

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.
@@ -1,4 +1,4 @@
1
- import { R as c, L as f, A as d } from "./streamdown-response-gONFDL8V.js";
1
+ import { R as c, L as f, A as d } from "./streamdown-response-k_s41jX5.js";
2
2
  import { useContext as p, useState as L, useEffect as N } from "react";
3
3
  import { jsx as x } from "react/jsx-runtime";
4
4
  var A = ({ code: s, language: e, raw: a, className: o, startLine: m, lineNumbers: u, ...g }) => {
@@ -1,4 +1,4 @@
1
- import { w as T, s as U, h as X, c as Y, v as G, S as J, o as k, l as Q, f as M, m as y } from "./streamdown-response-gONFDL8V.js";
1
+ import { w as T, s as U, h as X, c as Y, v as G, S as J, o as k, l as Q, f as M, m as y } from "./streamdown-response-k_s41jX5.js";
2
2
  import v from "./katex-jHfnQmlp.js";
3
3
  function Z(t, e) {
4
4
  return B(t, {}) || { type: "root", children: [] };
package/dist-lib/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "@tanstack/react-router";
4
- import { ac as m, ad as o, ae as s } from "./embedded-fYVkvd7A.js";
4
+ import { ac as m, ad as o, ae as s } from "./embedded-pRKgmVAd.js";
5
5
  export {
6
6
  m as OmgAppSurface,
7
7
  o as OmgSettingsSurface,
@@ -0,0 +1,4 @@
1
+ import { p } from "./streamdown-response-k_s41jX5.js";
2
+ export {
3
+ p as Mermaid
4
+ };
@@ -0,0 +1,347 @@
1
+ import { jsx as t, jsxs as s, Fragment as R } from "react/jsx-runtime";
2
+ import { r as X, P as J, a as le, f as oe, g as ie, h as ce, X as K, A as P, R as Y, i as de, S as ue, j as Z, T as me, k as he, l as pe, C as fe, L as ge } from "./embedded-pRKgmVAd.js";
3
+ import { cn as x } from "cnfast";
4
+ import { useState as a, useRef as E, useEffect as C, useCallback as xe } from "react";
5
+ function be(r) {
6
+ if (!r) return "";
7
+ const i = r.split("/").filter(Boolean);
8
+ return i[i.length - 1] ?? "";
9
+ }
10
+ function Ne(r, i) {
11
+ const u = (i ?? "").trim();
12
+ if (!u) return "";
13
+ const b = (h) => h.replace(/\s+/g, " ").trim().toLowerCase(), d = b(u), m = b(r);
14
+ return !m || d === m || d.startsWith(m) || m.startsWith(d) ? "" : u;
15
+ }
16
+ function ke({
17
+ initial: r,
18
+ scopedProject: i,
19
+ onRestore: u,
20
+ onPick: b,
21
+ onClose: d
22
+ }) {
23
+ const h = i && i !== "__all" ? i : "all", D = X(), [l, F] = a(
24
+ () => D.some((e) => e.status !== "sent") ? "stash" : "sessions"
25
+ ), [N, ee] = a(D), [p, z] = a(""), [v, te] = a(""), [f, M] = a("all"), [n, _] = a(h), [c, $] = a(
26
+ h === "all" && r ? r : []
27
+ ), [w, I] = a(h === "all" && r ? r.length : 0), [y, G] = a({ agents: [], projects: [] }), [O, U] = a(!1), [V, W] = a(!1), q = E(null), B = E(c), g = E(0);
28
+ C(() => {
29
+ B.current = c;
30
+ }, [c]), C(() => {
31
+ const e = () => ee(X());
32
+ return window.addEventListener(J, e), window.addEventListener("storage", e), () => {
33
+ window.removeEventListener(J, e), window.removeEventListener("storage", e);
34
+ };
35
+ }, []), C(() => {
36
+ const e = window.setTimeout(() => te(p.trim()), 220);
37
+ return () => window.clearTimeout(e);
38
+ }, [p]);
39
+ const A = xe(
40
+ (e) => {
41
+ const o = e ? ++g.current : g.current, S = e ? 0 : B.current.length;
42
+ e ? U(!0) : W(!0);
43
+ const k = new URLSearchParams({ limit: String(25), offset: String(S) });
44
+ v && k.set("search", v), f !== "all" && k.set("agent", f), n !== "all" && k.set("project", n), le(`/api/sessions/resumable?${k.toString()}`).then((j) => {
45
+ if (o !== g.current) return;
46
+ const T = Array.isArray(j.sessions) ? j.sessions : [];
47
+ $((re) => e ? T : [...re, ...T]), I(j.total ?? T.length), G(j.facets ?? { agents: [], projects: [] });
48
+ }).catch(() => {
49
+ o !== g.current || !e || ($([]), I(0), G({ agents: [], projects: [] }));
50
+ }).finally(() => {
51
+ o === g.current && (e ? U(!1) : W(!1));
52
+ });
53
+ },
54
+ [f, v, n]
55
+ );
56
+ C(() => {
57
+ l === "sessions" && A(!0);
58
+ }, [A, l]);
59
+ const L = p.trim().toLowerCase(), H = N.filter(
60
+ (e) => L ? `${e.text} ${e.sessionTitle ?? ""} ${e.project ?? ""}`.toLowerCase().includes(L) : !0
61
+ ), se = O && !c.length, Q = f !== "all" || n !== "all" || !!v, ae = c.length < w, ne = (e) => e === "draft" ? "Draft" : e === "sending" ? "Sending" : e === "failed" ? "Failed" : "Sent";
62
+ return /* @__PURE__ */ t(
63
+ oe,
64
+ {
65
+ open: !0,
66
+ repositionInputs: !1,
67
+ onOpenChange: (e) => {
68
+ e || d();
69
+ },
70
+ children: /* @__PURE__ */ t(ie, { className: "mx-auto w-full max-w-2xl sm:max-w-2xl", children: /* @__PURE__ */ s("div", { className: "flex min-h-0 flex-col overflow-hidden max-h-[72dvh] group-data-[paged=true]/drawer-content:max-h-none group-data-[paged=true]/drawer-content:flex-1", children: [
71
+ /* @__PURE__ */ s("header", { className: "shrink-0 border-b border-border/70 pb-2", children: [
72
+ /* @__PURE__ */ s("div", { className: "flex h-9 items-center gap-2", children: [
73
+ /* @__PURE__ */ t(ce, { className: "text-[15px] font-semibold", children: "Resume" }),
74
+ /* @__PURE__ */ t("span", { className: "text-xs text-muted-foreground", children: "Stash & sessions" }),
75
+ /* @__PURE__ */ t(
76
+ "button",
77
+ {
78
+ type: "button",
79
+ onClick: d,
80
+ "aria-label": "Close",
81
+ className: "ml-auto flex size-8 items-center justify-center rounded-full bg-muted text-muted-foreground transition hover:text-foreground active:scale-95",
82
+ children: /* @__PURE__ */ t(K, { className: "size-4" })
83
+ }
84
+ )
85
+ ] }),
86
+ /* @__PURE__ */ s("div", { className: "mt-2 flex items-center gap-2", children: [
87
+ /* @__PURE__ */ s("div", { className: "inline-flex h-8 shrink-0 items-center rounded-full bg-muted p-0.5 text-xs font-medium", children: [
88
+ /* @__PURE__ */ s(
89
+ "button",
90
+ {
91
+ type: "button",
92
+ onClick: () => F("stash"),
93
+ className: x(
94
+ "flex h-7 items-center gap-1.5 rounded-full px-3 transition",
95
+ l === "stash" ? "bg-background text-foreground shadow-sm" : "text-muted-foreground"
96
+ ),
97
+ children: [
98
+ /* @__PURE__ */ t(P, { className: "size-3.5" }),
99
+ "Stash",
100
+ N.length ? /* @__PURE__ */ t("span", { className: "tabular-nums opacity-60", children: N.length }) : null
101
+ ]
102
+ }
103
+ ),
104
+ /* @__PURE__ */ s(
105
+ "button",
106
+ {
107
+ type: "button",
108
+ onClick: () => F("sessions"),
109
+ className: x(
110
+ "flex h-7 items-center gap-1.5 rounded-full px-3 transition",
111
+ l === "sessions" ? "bg-background text-foreground shadow-sm" : "text-muted-foreground"
112
+ ),
113
+ children: [
114
+ /* @__PURE__ */ t(Y, { className: "size-3.5" }),
115
+ "Sessions",
116
+ w ? /* @__PURE__ */ t("span", { className: "tabular-nums opacity-60", children: w }) : null
117
+ ]
118
+ }
119
+ )
120
+ ] }),
121
+ l === "stash" && N.length ? /* @__PURE__ */ t(
122
+ "button",
123
+ {
124
+ type: "button",
125
+ onClick: () => de(),
126
+ className: "ml-auto h-8 rounded-full px-2.5 text-xs font-medium text-muted-foreground transition hover:bg-muted hover:text-destructive",
127
+ children: "Clear"
128
+ }
129
+ ) : null
130
+ ] }),
131
+ /* @__PURE__ */ s("div", { className: "mt-2 flex items-center gap-1.5", children: [
132
+ /* @__PURE__ */ s("div", { className: "relative min-w-0 flex-1", children: [
133
+ /* @__PURE__ */ t(ue, { className: "pointer-events-none absolute left-3 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground/70" }),
134
+ /* @__PURE__ */ t(
135
+ "input",
136
+ {
137
+ ref: q,
138
+ value: p,
139
+ onChange: (e) => z(e.target.value),
140
+ placeholder: l === "stash" ? "Search prompts" : "Search sessions",
141
+ "aria-label": l === "stash" ? "Search stashed prompts" : "Search resumable sessions",
142
+ autoComplete: "off",
143
+ className: "h-8 w-full rounded-full border border-border bg-muted/40 pl-8 pr-8 text-xs outline-none transition focus:border-ring focus:bg-background"
144
+ }
145
+ ),
146
+ p ? /* @__PURE__ */ t(
147
+ "button",
148
+ {
149
+ type: "button",
150
+ onClick: () => {
151
+ var e;
152
+ z(""), (e = q.current) == null || e.focus();
153
+ },
154
+ "aria-label": "Clear search",
155
+ className: "absolute right-1.5 top-1/2 flex size-6 -translate-y-1/2 items-center justify-center rounded-full text-muted-foreground",
156
+ children: /* @__PURE__ */ t(K, { className: "size-3.5" })
157
+ }
158
+ ) : null
159
+ ] }),
160
+ l === "sessions" ? /* @__PURE__ */ s(R, { children: [
161
+ /* @__PURE__ */ s(
162
+ "select",
163
+ {
164
+ value: f,
165
+ onChange: (e) => M(e.target.value),
166
+ "aria-label": "Filter by agent",
167
+ className: "h-8 max-w-28 rounded-full border border-border bg-background px-2 text-xs outline-none",
168
+ children: [
169
+ /* @__PURE__ */ t("option", { value: "all", children: "All agents" }),
170
+ y.agents.map((e) => /* @__PURE__ */ s("option", { value: e.agent, children: [
171
+ e.agent,
172
+ " · ",
173
+ e.count
174
+ ] }, e.agent))
175
+ ]
176
+ }
177
+ ),
178
+ y.projects.length || n !== "all" ? /* @__PURE__ */ s(
179
+ "select",
180
+ {
181
+ value: n,
182
+ onChange: (e) => _(e.target.value),
183
+ "aria-label": "Filter by project",
184
+ className: "h-8 max-w-32 rounded-full border border-border bg-background px-2 text-xs outline-none",
185
+ children: [
186
+ /* @__PURE__ */ t("option", { value: "all", children: "All projects" }),
187
+ n !== "all" && !y.projects.some((e) => e.project === n) ? /* @__PURE__ */ t("option", { value: n, children: n }) : null,
188
+ y.projects.map((e) => /* @__PURE__ */ s("option", { value: e.project, children: [
189
+ e.project,
190
+ " · ",
191
+ e.count
192
+ ] }, e.project))
193
+ ]
194
+ }
195
+ ) : null
196
+ ] }) : null
197
+ ] })
198
+ ] }),
199
+ /* @__PURE__ */ t("div", { className: "min-h-0 max-h-[min(28rem,55dvh)] overflow-y-auto overscroll-contain pt-1", children: l === "stash" ? H.length ? /* @__PURE__ */ t("div", { className: "space-y-0.5", children: H.map((e) => /* @__PURE__ */ s(
200
+ "div",
201
+ {
202
+ className: "group flex items-center gap-1 rounded-xl transition hover:bg-muted",
203
+ children: [
204
+ /* @__PURE__ */ s(
205
+ "button",
206
+ {
207
+ type: "button",
208
+ onClick: () => {
209
+ u(e), d();
210
+ },
211
+ className: "flex min-w-0 flex-1 items-center gap-2.5 px-2 py-2 text-left active:scale-[0.99]",
212
+ children: [
213
+ /* @__PURE__ */ t(
214
+ "span",
215
+ {
216
+ className: x(
217
+ "flex size-7 shrink-0 items-center justify-center rounded-lg",
218
+ e.status === "draft" || e.status === "failed" ? "bg-primary/12 text-primary" : "bg-muted text-muted-foreground"
219
+ ),
220
+ children: /* @__PURE__ */ t(P, { className: "size-3.5" })
221
+ }
222
+ ),
223
+ /* @__PURE__ */ s("span", { className: "min-w-0 flex-1", children: [
224
+ /* @__PURE__ */ t("span", { className: "line-clamp-2 text-sm leading-snug", children: e.text }),
225
+ /* @__PURE__ */ s("span", { className: "mt-0.5 flex items-center gap-1.5 text-[11px] text-muted-foreground", children: [
226
+ /* @__PURE__ */ t(
227
+ "span",
228
+ {
229
+ className: x(
230
+ "font-medium",
231
+ e.status === "failed" && "text-destructive",
232
+ e.status === "draft" && "text-primary"
233
+ ),
234
+ children: ne(e.status)
235
+ }
236
+ ),
237
+ /* @__PURE__ */ t("span", { children: "·" }),
238
+ /* @__PURE__ */ t("span", { className: "truncate", children: e.source === "new-session" ? e.project || "New session" : e.sessionTitle || "Session" }),
239
+ /* @__PURE__ */ t("span", { children: "·" }),
240
+ /* @__PURE__ */ t("span", { className: "shrink-0 tabular-nums", children: Z(e.updatedAt) })
241
+ ] })
242
+ ] })
243
+ ]
244
+ }
245
+ ),
246
+ /* @__PURE__ */ t(
247
+ "button",
248
+ {
249
+ type: "button",
250
+ onClick: () => he(e.id),
251
+ "aria-label": "Remove from Stash",
252
+ className: "mr-1 flex size-7 shrink-0 items-center justify-center rounded-full text-muted-foreground opacity-60 transition hover:bg-background hover:text-destructive group-hover:opacity-100",
253
+ children: /* @__PURE__ */ t(me, { className: "size-3.5" })
254
+ }
255
+ )
256
+ ]
257
+ },
258
+ e.id
259
+ )) }) : /* @__PURE__ */ s("div", { className: "flex h-full min-h-48 flex-col items-center justify-center gap-2 px-4 text-center text-sm text-muted-foreground", children: [
260
+ /* @__PURE__ */ t(P, { className: "size-5" }),
261
+ /* @__PURE__ */ t("span", { children: L ? "No stashed prompts match" : "Typed and dictated prompts will appear here" })
262
+ ] }) : se ? /* @__PURE__ */ t("div", { className: "animate-pulse space-y-1.5", "aria-hidden": !0, children: Array.from({ length: 6 }).map((e, o) => /* @__PURE__ */ s(
263
+ "div",
264
+ {
265
+ className: "flex items-center gap-3 rounded-xl border border-transparent bg-card px-3 py-2.5",
266
+ children: [
267
+ /* @__PURE__ */ t("div", { className: "size-8 shrink-0 rounded-md bg-muted" }),
268
+ /* @__PURE__ */ s("div", { className: "min-w-0 flex-1 space-y-1.5", children: [
269
+ /* @__PURE__ */ t("div", { className: "h-3 w-1/2 rounded bg-muted" }),
270
+ /* @__PURE__ */ t("div", { className: "h-2.5 w-3/4 rounded bg-muted/60" }),
271
+ /* @__PURE__ */ t("div", { className: "h-2.5 w-1/4 rounded-full bg-muted/60" })
272
+ ] })
273
+ ]
274
+ },
275
+ o
276
+ )) }) : c.length === 0 ? /* @__PURE__ */ s("div", { className: "flex h-full min-h-48 flex-col items-center justify-center gap-2 px-4 text-center text-sm text-muted-foreground", children: [
277
+ /* @__PURE__ */ t(Y, { className: "size-5" }),
278
+ /* @__PURE__ */ t("span", { children: Q ? "No sessions match" : "No recent sessions to resume" }),
279
+ Q ? /* @__PURE__ */ t(
280
+ "button",
281
+ {
282
+ type: "button",
283
+ onClick: () => {
284
+ z(""), M("all"), _("all");
285
+ },
286
+ className: "rounded-full border border-border px-3 py-1 text-xs font-medium text-foreground",
287
+ children: "Clear filters"
288
+ }
289
+ ) : null
290
+ ] }) : /* @__PURE__ */ s(R, { children: [
291
+ /* @__PURE__ */ t("div", { className: x("space-y-1.5 transition-opacity", O && "opacity-60"), children: c.map((e) => {
292
+ const o = be(e.cwd), S = Ne(e.title, e.lastUserText);
293
+ return /* @__PURE__ */ s(
294
+ "button",
295
+ {
296
+ type: "button",
297
+ onClick: () => b(e),
298
+ title: e.cwd || e.title,
299
+ className: "lfg-gborder flex w-full items-center gap-3 rounded-xl border border-transparent bg-card px-3 py-2.5 text-left transition hover:border-border hover:bg-muted/60 active:scale-[0.99]",
300
+ children: [
301
+ /* @__PURE__ */ t(
302
+ pe,
303
+ {
304
+ session: e,
305
+ className: "size-8 rounded-md",
306
+ size: "md",
307
+ wrapperClassName: "shrink-0"
308
+ }
309
+ ),
310
+ /* @__PURE__ */ s("span", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
311
+ /* @__PURE__ */ s("span", { className: "flex items-baseline gap-1.5", children: [
312
+ /* @__PURE__ */ t("span", { className: "min-w-0 flex-1 truncate text-sm font-medium leading-tight", children: e.title }),
313
+ /* @__PURE__ */ t("span", { className: "shrink-0 text-[10px] leading-tight tabular-nums text-muted-foreground/70", children: Z(e.lastActivityAt) })
314
+ ] }),
315
+ S ? /* @__PURE__ */ t("span", { className: "truncate text-xs leading-tight text-muted-foreground", children: S }) : null,
316
+ /* @__PURE__ */ s("span", { className: "flex min-w-0 items-center gap-1", children: [
317
+ /* @__PURE__ */ t("span", { className: "max-w-[50%] truncate rounded-full bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground", children: e.project }),
318
+ o && o !== e.project ? /* @__PURE__ */ t("span", { className: "max-w-[50%] truncate rounded-full bg-muted/60 px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground/80", children: o }) : null
319
+ ] })
320
+ ] }),
321
+ /* @__PURE__ */ t(fe, { className: "size-3.5 shrink-0 text-muted-foreground/60" })
322
+ ]
323
+ },
324
+ e.sessionId
325
+ );
326
+ }) }),
327
+ ae ? /* @__PURE__ */ t(
328
+ "button",
329
+ {
330
+ type: "button",
331
+ onClick: () => A(!1),
332
+ disabled: V,
333
+ className: "mt-1 flex w-full items-center justify-center gap-2 rounded-xl px-3 py-2.5 text-xs font-medium text-muted-foreground transition hover:bg-muted disabled:opacity-60",
334
+ children: V ? /* @__PURE__ */ s(R, { children: [
335
+ /* @__PURE__ */ t(ge, { className: "size-3.5 animate-spin" }),
336
+ " Loading…"
337
+ ] }) : `Load ${Math.min(25, w - c.length)} more`
338
+ }
339
+ ) : null
340
+ ] }) })
341
+ ] }) })
342
+ }
343
+ );
344
+ }
345
+ export {
346
+ ke as default
347
+ };
@@ -1,5 +1,5 @@
1
1
  import { jsx as s, jsxs as n, Fragment as $ } from "react/jsx-runtime";
2
- import { a as C, D as T, b as M, c as D, d as S, G as F, e as L, t as R, L as j } from "./embedded-fYVkvd7A.js";
2
+ import { a as C, D as T, b as M, c as D, d as S, G as F, e as L, t as R, L as j } from "./embedded-pRKgmVAd.js";
3
3
  import "@base-ui/react/collapsible";
4
4
  import { cn as z } from "cnfast";
5
5
  import { useState as p, useCallback as P, useEffect as U } from "react";
@@ -1,7 +1,7 @@
1
1
  import { jsxs as l, jsx as r, Fragment as me } from "react/jsx-runtime";
2
2
  import { useState as f, useEffect as w, useRef as fe, useContext as $e, useMemo as Te } from "react";
3
- import { y as ve, N as he, O as ze, Q as S, U as ge, V as Se, W as Pe, Y as je, B as Fe, L as pe, u as J, x as Ye, R as Ge, T as Be, Z as Ke, j as be, f as Ue, _ as He, a as L, $ as k, a0 as R, k as _, a1 as W, a2 as Ve, a3 as qe, a4 as Qe, a5 as Xe, P as Je, a6 as We } from "./embedded-fYVkvd7A.js";
4
- import { cn as P } from "cnfast";
3
+ import { y as ve, N as he, O as ze, Q as S, U as ge, V as Se, W as je, Y as Pe, B as Fe, L as pe, j as J, C as Ye, R as Ge, T as Be, Z as Ke, u as be, o as Ue, _ as He, a as L, $ as k, a0 as R, v as _, a1 as W, a2 as Ve, a3 as qe, a4 as Qe, a5 as Xe, m as Je, a6 as We } from "./embedded-pRKgmVAd.js";
4
+ import { cn as j } from "cnfast";
5
5
  /**
6
6
  * @license lucide-react v0.577.0 - ISC
7
7
  *
@@ -53,7 +53,7 @@ function Ne(s, i) {
53
53
  })
54
54
  )), i;
55
55
  }
56
- function j(s) {
56
+ function P(s) {
57
57
  return `shipped:${s.id}:${s.rev}`;
58
58
  }
59
59
  function Z(s, i) {
@@ -158,7 +158,7 @@ function mt({
158
158
  w(() => {
159
159
  $(!1);
160
160
  }, [y.length]);
161
- const [N, E] = f(() => (b == null ? void 0 : b.items) ?? null), [C, H] = f(() => (b == null ? void 0 : b.total) ?? 0), [V, ne] = f(!1), [ae, ie] = f(null), [le, oe] = f(null), de = "&kind=html", D = fe(Math.max(S, (b == null ? void 0 : b.items.length) ?? 0)), q = fe(Math.max(ge, (x == null ? void 0 : x.items.length) ?? 0)), ce = $e(Se), Ae = Pe();
161
+ const [N, E] = f(() => (b == null ? void 0 : b.items) ?? null), [C, H] = f(() => (b == null ? void 0 : b.total) ?? 0), [V, ne] = f(!1), [ae, ie] = f(null), [le, oe] = f(null), de = "&kind=html", D = fe(Math.max(S, (b == null ? void 0 : b.items.length) ?? 0)), q = fe(Math.max(ge, (x == null ? void 0 : x.items.length) ?? 0)), ce = $e(Se), Ae = je();
162
162
  w(() => {
163
163
  h === "feed" && I(M(m));
164
164
  }, [m, h]), w(() => {
@@ -277,7 +277,7 @@ function mt({
277
277
  };
278
278
  w(() => {
279
279
  if (!(h !== "feed" || !v))
280
- return je((e) => {
280
+ return Pe((e) => {
281
281
  if (!e.ok) {
282
282
  F((t) => (t === null && se(e.error), t));
283
283
  return;
@@ -307,7 +307,7 @@ function mt({
307
307
  }
308
308
  }, ue = (u == null ? void 0 : u.filter(
309
309
  (e) => Z(A, {
310
- id: j(e),
310
+ id: P(e),
311
311
  ts: e.ts
312
312
  })
313
313
  ).length) ?? 0, Le = Te(() => {
@@ -320,10 +320,10 @@ function mt({
320
320
  return t;
321
321
  }, [u]), Re = (e) => {
322
322
  Z(A, {
323
- id: j(e),
323
+ id: P(e),
324
324
  ts: e.ts
325
325
  }) && I(
326
- nt(m, j(e))
326
+ nt(m, P(e))
327
327
  );
328
328
  }, _e = async () => {
329
329
  if (!B) {
@@ -420,7 +420,7 @@ function mt({
420
420
  disabled: ae === e.id,
421
421
  "aria-label": `Refresh ${e.title || e.caption || e.name}`,
422
422
  className: "flex size-7 items-center justify-center rounded-full text-muted-foreground opacity-100 transition-[color,background-color,transform,opacity] duration-150 hover:bg-foreground/[0.06] hover:text-foreground active:scale-[0.94] disabled:opacity-50 sm:opacity-0 sm:group-hover:opacity-100 sm:focus:opacity-100",
423
- children: /* @__PURE__ */ r(Ge, { className: P("size-3.5", ae === e.id && "animate-spin") })
423
+ children: /* @__PURE__ */ r(Ge, { className: j("size-3.5", ae === e.id && "animate-spin") })
424
424
  }
425
425
  ) : null,
426
426
  /* @__PURE__ */ r(
@@ -468,7 +468,7 @@ function mt({
468
468
  $(!1), ke();
469
469
  },
470
470
  onBlur: () => $(!1),
471
- className: P(
471
+ className: j(
472
472
  "-my-1 rounded-full px-2 py-1 text-[11px] font-medium transition-colors disabled:opacity-50",
473
473
  U ? "bg-destructive/10 text-destructive" : "text-muted-foreground hover:text-foreground"
474
474
  ),
@@ -483,7 +483,7 @@ function mt({
483
483
  /* @__PURE__ */ r("h2", { className: "px-1 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground", children: e.label }),
484
484
  /* @__PURE__ */ r("div", { className: "overflow-hidden rounded-2xl border border-border bg-card/40 shadow-sm", children: e.items.map((t) => {
485
485
  const d = !!t.sessionId && o.has(t.sessionId), a = Z(A, {
486
- id: j(t),
486
+ id: P(t),
487
487
  ts: t.ts
488
488
  }), n = t.mediaItems.length > 0;
489
489
  return /* @__PURE__ */ l("article", { className: "relative border-b border-border/50 last:border-b-0", children: [
@@ -494,7 +494,7 @@ function mt({
494
494
  onClick: () => {
495
495
  Re(t), t.sessionId && (c ? c(t) : d && s(t.sessionId));
496
496
  },
497
- className: P(
497
+ className: j(
498
498
  "flex w-full items-start gap-2.5 py-2.5 pl-2.5 text-left transition-colors hover:bg-foreground/[0.02]",
499
499
  n ? "pr-[4.75rem]" : "pr-3.5"
500
500
  ),
@@ -502,7 +502,7 @@ function mt({
502
502
  /* @__PURE__ */ r(
503
503
  "span",
504
504
  {
505
- className: P(
505
+ className: j(
506
506
  "mt-3 size-1.5 shrink-0 rounded-full",
507
507
  a && "bg-primary"
508
508
  ),
@@ -7,7 +7,7 @@ import { createPortal as Ju } from "react-dom";
7
7
  import { f as Ur, p as Ka, e as Za, g as Ja, h as Jn, s as Mt, z as eo, i as to, j as no, k as Bd, l as es, w as Fd, b as Hd, c as Ud, m as zd, d as $d } from "./engine-compile-BeZvvx0I.js";
8
8
  import { g as ro } from "./_commonjsHelpers-C6fGbg64.js";
9
9
  import { cn as io } from "cnfast";
10
- import { a7 as jd, l as qd, a8 as Yd } from "./embedded-fYVkvd7A.js";
10
+ import { a7 as jd, x as qd, a8 as Yd } from "./embedded-pRKgmVAd.js";
11
11
  const Vd = {
12
12
  classId: "classID",
13
13
  dataType: "datatype",
@@ -18973,7 +18973,7 @@ var Cc = Jt(!1), xk = () => Pe(Cc), Ua = (...e) => rc($l(e)), Ak = (e, t) => {
18973
18973
  for (; t > 0 && e[t - 1] === `
18974
18974
  `; ) t--;
18975
18975
  return e.slice(0, t);
18976
- }, Lk = Zu(() => import("./highlighted-body-OFNGDK62-BoAuuZR4.js").then((e) => ({ default: e.HighlightedCodeBlockBody }))), Rk = ({ code: e, language: t, className: n, children: r, isIncomplete: i = !1, startLine: a, lineNumbers: s, ...u }) => {
18976
+ }, Lk = Zu(() => import("./highlighted-body-OFNGDK62-XrUZDzoE.js").then((e) => ({ default: e.HighlightedCodeBlockBody }))), Rk = ({ code: e, language: t, className: n, children: r, isIncomplete: i = !1, startLine: a, lineNumbers: s, ...u }) => {
18977
18977
  let o = ee(), l = Ee(() => wk(e), [e]), d = Ee(() => ({ bg: "transparent", fg: "inherit", tokens: l.split(`
18978
18978
  `).map((f) => [{ content: f, color: "inherit", bgColor: "transparent", htmlStyle: {}, offset: 0 }]) }), [l]);
18979
18979
  return y(Ic.Provider, { value: { code: e }, children: J(Nk, { isIncomplete: i, language: t, children: [y(Sk, { language: t }), r ? y("div", { className: o("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"), children: y("div", { className: o("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"), "data-streamdown": "code-block-actions", children: r }) }) : null, y(wi, { fallback: y(Ik, { className: n, language: t, lineNumbers: s, result: d, startLine: a, ...u }), children: y(Lk, { className: n, code: l, language: t, lineNumbers: s, raw: d, startLine: a, ...u }) })] }) });
@@ -19315,7 +19315,7 @@ var Cc = Jt(!1), xk = () => Pe(Cc), Ua = (...e) => rc($l(e)), Ak = (e, t) => {
19315
19315
  }, Jk = ({ children: e, className: t, showControls: n, showCopy: r = !0, showDownload: i = !0, showFullscreen: a = !0, ...s }) => {
19316
19316
  let u = ee(), o = n && r, l = n && i, d = n && a, f = o || l || d;
19317
19317
  return J("div", { className: u("my-4 flex flex-col gap-2 rounded-lg border border-border bg-sidebar p-2"), "data-streamdown": "table-wrapper", children: [f ? J("div", { className: u("flex items-center justify-end gap-1"), children: [o ? y(Oc, {}) : null, l ? y(Dc, {}) : null, d ? y(Zk, { showCopy: o, showDownload: l, children: e }) : null] }) : null, y("div", { className: u("border-collapse overflow-x-auto overflow-y-auto rounded-md border border-border bg-background"), children: y("table", { className: u("w-full divide-y divide-border", t), "data-streamdown": "table", ...s, children: e }) })] });
19318
- }, ex = /startLine=(\d+)/, tx = /\bnoLineNumbers\b/, nx = Zu(() => import("./mermaid-GHXKKRXX-Du3eD6Dj.js").then((e) => ({ default: e.Mermaid }))), rx = /language-([^\s]+)/;
19318
+ }, ex = /startLine=(\d+)/, tx = /\bnoLineNumbers\b/, nx = Zu(() => import("./mermaid-GHXKKRXX-CPr0wWN7.js").then((e) => ({ default: e.Mermaid }))), rx = /language-([^\s]+)/;
19319
19319
  function Jr(e, t) {
19320
19320
  if (!(e != null && e.position || t != null && t.position)) return !0;
19321
19321
  if (!(e != null && e.position && t != null && t.position)) return !1;
@@ -20828,7 +20828,7 @@ function w6(e) {
20828
20828
  }
20829
20829
  function L6() {
20830
20830
  return Tr || (Tr = Promise.all([
20831
- import("./index-BnJITiuM.js"),
20831
+ import("./index-CdRi0Fvj.js"),
20832
20832
  import("./index-JkCQXUYs.js").then((e) => e.bp)
20833
20833
  ]).then(([e, t]) => {
20834
20834
  Hn = { math: e.math, mermaid: t.mermaid };