@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.
- package/dist-lib/{ChangelogPage-BohAg8Um.js → ChangelogPage-CeCtrXuD.js} +84 -1
- package/dist-lib/{SessionFilesPanel-DktXrSTs.js → SessionFilesPanel-Ck0KNzua.js} +1 -1
- package/dist-lib/{TermView-rm8onW7t.js → TermView-D2F19OhV.js} +1 -1
- package/dist-lib/{chat-engine-Cx-Cq2vI.js → chat-engine-Bo21-04D.js} +1 -1
- package/dist-lib/coding-agents-page-Bfy-IdbL.js +329 -0
- package/dist-lib/{embedded-fYVkvd7A.js → embedded-pRKgmVAd.js} +11564 -11524
- package/dist-lib/{highlighted-body-OFNGDK62-BoAuuZR4.js → highlighted-body-OFNGDK62-XrUZDzoE.js} +1 -1
- package/dist-lib/{index-BnJITiuM.js → index-CdRi0Fvj.js} +1 -1
- package/dist-lib/index.js +1 -1
- package/dist-lib/mermaid-GHXKKRXX-CPr0wWN7.js +4 -0
- package/dist-lib/resume-session-sheet-9na3HKD2.js +347 -0
- package/dist-lib/{session-token-usage-C_WDz8xn.js → session-token-usage-Buv6ihdg.js} +1 -1
- package/dist-lib/{shipped-page-B7XoI1In.js → shipped-page-DRgFmUbI.js} +13 -13
- package/dist-lib/{streamdown-response-gONFDL8V.js → streamdown-response-k_s41jX5.js} +4 -4
- package/dist-lib/styles.css +1 -1
- package/package.json +2 -2
- package/dist-lib/coding-agents-page-DGsPxBfZ.js +0 -288
- package/dist-lib/mermaid-GHXKKRXX-Du3eD6Dj.js +0 -4
- package/dist-lib/resume-session-sheet-Drb_ZIBL.js +0 -317
package/dist-lib/{highlighted-body-OFNGDK62-BoAuuZR4.js → highlighted-body-OFNGDK62-XrUZDzoE.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as c, L as f, A as d } from "./streamdown-response-
|
|
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-
|
|
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-
|
|
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,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-
|
|
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
|
|
4
|
-
import { cn as
|
|
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
|
|
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 =
|
|
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
|
|
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:
|
|
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:
|
|
323
|
+
id: P(e),
|
|
324
324
|
ts: e.ts
|
|
325
325
|
}) && I(
|
|
326
|
-
nt(m,
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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,
|
|
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-
|
|
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-
|
|
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-
|
|
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 };
|