@omg-dev/app 0.6.31 → 0.6.32
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-BKINHgYM.js → ChangelogPage-C5Ym3Dlx.js} +12 -1
- package/dist-lib/{SessionFilesPanel-CO_LNVJ1.js → SessionFilesPanel-DnCnKVai.js} +1 -1
- package/dist-lib/{TermView-CVbAE7KY.js → TermView-BbBFGjMY.js} +2 -2
- package/dist-lib/{chat-engine-DDUmYWEf.js → chat-engine-D0jiOPZW.js} +1 -1
- package/dist-lib/{coding-agents-page-BCVbjgoj.js → coding-agents-page-BvjduLrc.js} +1 -1
- package/dist-lib/{computer-page-BBc5wuTh.js → computer-page-CWaKbT-Y.js} +2 -2
- package/dist-lib/{embedded-B5xtprjK.js → embedded-BQz5y504.js} +497 -495
- package/dist-lib/index.js +1 -1
- package/dist-lib/{keyboard-CyLkVQNC.js → keyboard-B9_I7pEl.js} +1 -1
- package/dist-lib/{resume-session-sheet-D9Lzq6r5.js → resume-session-sheet-CuZTh28H.js} +1 -1
- package/dist-lib/{session-token-usage-Cu4dmIHH.js → session-token-usage-DsXrmvML.js} +1 -1
- package/dist-lib/{shipped-page-lHgSHNsO.js → shipped-page-D75wuNW9.js} +1 -1
- package/dist-lib/{streamdown-response-DnNKvMFX.js → streamdown-response-Dv9YoeCg.js} +1 -1
- package/package.json +2 -2
|
@@ -2371,7 +2371,7 @@ function Ad(e) {
|
|
|
2371
2371
|
return !t || t.toLowerCase() === "unknown" ? null : t;
|
|
2372
2372
|
}
|
|
2373
2373
|
function uw() {
|
|
2374
|
-
return Ad("0.6.
|
|
2374
|
+
return Ad("0.6.32");
|
|
2375
2375
|
}
|
|
2376
2376
|
const pf = uw();
|
|
2377
2377
|
function fw(e) {
|
|
@@ -3398,7 +3398,7 @@ function ir({
|
|
|
3398
3398
|
const b = c.current, N = d.current, S = f.current, I = u.current;
|
|
3399
3399
|
if (!b || !N || !S || !I) return;
|
|
3400
3400
|
const A = a2(), C = o % 10 * 0.7;
|
|
3401
|
-
let R = (Ii[p.current] ?? Ks).slice(), P = R.slice(), z = R.slice(), j = 0, k = 0, O = null,
|
|
3401
|
+
let R = (Ii[p.current] ?? Ks).slice(), P = R.slice(), z = R.slice(), j = 0, k = 0, O = null, W = null;
|
|
3402
3402
|
const X = { ..._i[h.current].pupil };
|
|
3403
3403
|
if (A) {
|
|
3404
3404
|
const E = _i[h.current], B = (Ii[p.current] ?? Ks).map(
|
|
@@ -3408,23 +3408,23 @@ function ir({
|
|
|
3408
3408
|
return;
|
|
3409
3409
|
}
|
|
3410
3410
|
let L;
|
|
3411
|
-
const
|
|
3411
|
+
const q = () => {
|
|
3412
3412
|
L = setTimeout(() => {
|
|
3413
|
-
_i[h.current].closed || (I.classList.remove("bot-blink"), I.getBoundingClientRect(), I.classList.add("bot-blink")),
|
|
3413
|
+
_i[h.current].closed || (I.classList.remove("bot-blink"), I.getBoundingClientRect(), I.classList.add("bot-blink")), q();
|
|
3414
3414
|
}, 2200 + Math.random() * 4200);
|
|
3415
3415
|
};
|
|
3416
|
-
|
|
3416
|
+
q();
|
|
3417
3417
|
const V = i2((E, B) => {
|
|
3418
|
-
const _ = _i[h.current], F = (Ii[p.current] ?? Ks).map((
|
|
3419
|
-
O !== h.current ||
|
|
3418
|
+
const _ = _i[h.current], F = (Ii[p.current] ?? Ks).map((H, Q) => H * (_.radii[Q] / or));
|
|
3419
|
+
O !== h.current || W !== p.current ? (R = z.slice(), P = F, j = B, k = _.dur, O = h.current, W = p.current, S.style.transform = `rotate(${_.tilt}deg)`, I.style.transform = _.closed ? Tf : Yl) : k === 0 && (P = F);
|
|
3420
3420
|
let K;
|
|
3421
3421
|
if (k > 0) {
|
|
3422
|
-
const
|
|
3423
|
-
K = R.map((te, fe) => te + (P[fe] - te) * Q),
|
|
3422
|
+
const H = Math.min(1, (B - j) / k), Q = YN(H);
|
|
3423
|
+
K = R.map((te, fe) => te + (P[fe] - te) * Q), H >= 1 && (k = 0);
|
|
3424
3424
|
} else
|
|
3425
3425
|
K = P.slice();
|
|
3426
3426
|
K = K.map(
|
|
3427
|
-
(
|
|
3427
|
+
(H, Q) => H * (1 + _.wobbleAmp * Math.sin(E * _.wobbleSpeed + C + Q * 0.55))
|
|
3428
3428
|
), z = K, b.setAttribute("d", Gl(K)), X.x = Af(X.x, _.pupil.x, 0.12), X.y = Af(X.y, _.pupil.y, 0.12), N.setAttribute("transform", `translate(${X.x.toFixed(2)},${X.y.toFixed(2)})`);
|
|
3429
3429
|
});
|
|
3430
3430
|
return () => {
|
|
@@ -3995,7 +3995,7 @@ function D2(e) {
|
|
|
3995
3995
|
}
|
|
3996
3996
|
const B2 = (e) => {
|
|
3997
3997
|
var t, n, s, o, i, a, l, c, d;
|
|
3998
|
-
const { invert: f, toast: u, unstyled: h, interacting: p, setHeights: g, visibleToasts: v, heights: y, index: b, toasts: N, expanded: S, removeToast: I, defaultRichColors: A, closeButton: C, style: R, cancelButtonStyle: P, actionButtonStyle: z, className: j = "", descriptionClassName: k = "", duration: O, position:
|
|
3998
|
+
const { invert: f, toast: u, unstyled: h, interacting: p, setHeights: g, visibleToasts: v, heights: y, index: b, toasts: N, expanded: S, removeToast: I, defaultRichColors: A, closeButton: C, style: R, cancelButtonStyle: P, actionButtonStyle: z, className: j = "", descriptionClassName: k = "", duration: O, position: W, gap: X, expandByDefault: L, classNames: q, icons: V, closeButtonAriaLabel: E = "Close toast" } = e, [B, _] = ze.useState(null), [M, F] = ze.useState(null), [K, H] = ze.useState(!1), [Q, te] = ze.useState(!1), [fe, de] = ze.useState(!1), [Ue, Re] = ze.useState(!1), [Ae, we] = ze.useState(!1), [De, be] = ze.useState(0), [We, Ke] = ze.useState(0), Ze = ze.useRef(u.duration || O || If), st = ze.useRef(null), Fe = ze.useRef(null), se = b === 0, ae = b + 1 <= v, Ne = u.type, Te = u.dismissible !== !1, $ = u.className || "", Ve = u.descriptionClassName || "", J = ze.useMemo(() => y.findIndex((xe) => xe.toastId === u.id) || 0, [
|
|
3999
3999
|
y,
|
|
4000
4000
|
u.id
|
|
4001
4001
|
]), oe = ze.useMemo(() => {
|
|
@@ -4007,7 +4007,7 @@ const B2 = (e) => {
|
|
|
4007
4007
|
]), He = ze.useMemo(() => u.duration || O || If, [
|
|
4008
4008
|
u.duration,
|
|
4009
4009
|
O
|
|
4010
|
-
]), qe = ze.useRef(0), Qe = ze.useRef(0), ut = ze.useRef(0), Et = ze.useRef(null), [Y, le] =
|
|
4010
|
+
]), qe = ze.useRef(0), Qe = ze.useRef(0), ut = ze.useRef(0), Et = ze.useRef(null), [Y, le] = W.split("-"), he = ze.useMemo(() => y.reduce((xe, tt, Je) => Je >= J ? xe : xe + tt.height, 0), [
|
|
4011
4011
|
y,
|
|
4012
4012
|
J
|
|
4013
4013
|
]), pe = S2(), Oe = u.invert || f, Ie = Ne === "loading";
|
|
@@ -4019,7 +4019,7 @@ const B2 = (e) => {
|
|
|
4019
4019
|
}, [
|
|
4020
4020
|
He
|
|
4021
4021
|
]), ze.useEffect(() => {
|
|
4022
|
-
|
|
4022
|
+
H(!0);
|
|
4023
4023
|
}, []), ze.useEffect(() => {
|
|
4024
4024
|
const xe = Fe.current;
|
|
4025
4025
|
if (xe) {
|
|
@@ -4104,12 +4104,12 @@ const B2 = (e) => {
|
|
|
4104
4104
|
if (V?.loading) {
|
|
4105
4105
|
var tt;
|
|
4106
4106
|
return /* @__PURE__ */ ze.createElement("div", {
|
|
4107
|
-
className: nr(
|
|
4107
|
+
className: nr(q?.loader, u == null || (tt = u.classNames) == null ? void 0 : tt.loader, "sonner-loader"),
|
|
4108
4108
|
"data-visible": Ne === "loading"
|
|
4109
4109
|
}, V.loading);
|
|
4110
4110
|
}
|
|
4111
4111
|
return /* @__PURE__ */ ze.createElement(b2, {
|
|
4112
|
-
className: nr(
|
|
4112
|
+
className: nr(q?.loader, u == null || (xe = u.classNames) == null ? void 0 : xe.loader),
|
|
4113
4113
|
visible: Ne === "loading"
|
|
4114
4114
|
});
|
|
4115
4115
|
}
|
|
@@ -4118,7 +4118,7 @@ const B2 = (e) => {
|
|
|
4118
4118
|
return /* @__PURE__ */ ze.createElement("li", {
|
|
4119
4119
|
tabIndex: 0,
|
|
4120
4120
|
ref: Fe,
|
|
4121
|
-
className: nr(j, $,
|
|
4121
|
+
className: nr(j, $, q?.toast, u == null || (t = u.classNames) == null ? void 0 : t.toast, q?.default, q?.[Ne], u == null || (n = u.classNames) == null ? void 0 : n[Ne]),
|
|
4122
4122
|
"data-sonner-toast": "",
|
|
4123
4123
|
"data-rich-colors": (ge = u.richColors) != null ? ge : A,
|
|
4124
4124
|
"data-styled": !(u.jsx || u.unstyled || h),
|
|
@@ -4176,7 +4176,7 @@ const B2 = (e) => {
|
|
|
4176
4176
|
if (!Et.current || !Te || ((tt = window.getSelection()) == null ? void 0 : tt.toString().length) > 0) return;
|
|
4177
4177
|
const kt = xe.clientY - Et.current.y, Rt = xe.clientX - Et.current.x;
|
|
4178
4178
|
var $t;
|
|
4179
|
-
const zt = ($t = e.swipeDirections) != null ? $t : D2(
|
|
4179
|
+
const zt = ($t = e.swipeDirections) != null ? $t : D2(W);
|
|
4180
4180
|
!B && (Math.abs(Rt) > 1 || Math.abs(kt) > 1) && _(Math.abs(Rt) > Math.abs(kt) ? "x" : "y");
|
|
4181
4181
|
let Mt = {
|
|
4182
4182
|
x: 0,
|
|
@@ -4208,19 +4208,19 @@ const B2 = (e) => {
|
|
|
4208
4208
|
} : () => {
|
|
4209
4209
|
Be(), u.onDismiss == null || u.onDismiss.call(u, u);
|
|
4210
4210
|
},
|
|
4211
|
-
className: nr(
|
|
4211
|
+
className: nr(q?.closeButton, u == null || (s = u.classNames) == null ? void 0 : s.closeButton)
|
|
4212
4212
|
}, (Xe = V?.close) != null ? Xe : k2) : null, (Ne || u.icon || u.promise) && u.icon !== null && (V?.[Ne] !== null || u.icon) ? /* @__PURE__ */ ze.createElement("div", {
|
|
4213
4213
|
"data-icon": "",
|
|
4214
|
-
className: nr(
|
|
4214
|
+
className: nr(q?.icon, u == null || (o = u.classNames) == null ? void 0 : o.icon)
|
|
4215
4215
|
}, u.promise || u.type === "loading" && !u.icon ? u.icon || Ge() : null, u.type !== "loading" ? ue : null) : null, /* @__PURE__ */ ze.createElement("div", {
|
|
4216
4216
|
"data-content": "",
|
|
4217
|
-
className: nr(
|
|
4217
|
+
className: nr(q?.content, u == null || (i = u.classNames) == null ? void 0 : i.content)
|
|
4218
4218
|
}, /* @__PURE__ */ ze.createElement("div", {
|
|
4219
4219
|
"data-title": "",
|
|
4220
|
-
className: nr(
|
|
4220
|
+
className: nr(q?.title, u == null || (a = u.classNames) == null ? void 0 : a.title)
|
|
4221
4221
|
}, u.jsx ? u.jsx : typeof u.title == "function" ? u.title() : u.title), u.description ? /* @__PURE__ */ ze.createElement("div", {
|
|
4222
4222
|
"data-description": "",
|
|
4223
|
-
className: nr(k, Ve,
|
|
4223
|
+
className: nr(k, Ve, q?.description, u == null || (l = u.classNames) == null ? void 0 : l.description)
|
|
4224
4224
|
}, typeof u.description == "function" ? u.description() : u.description) : null), /* @__PURE__ */ ze.isValidElement(u.cancel) ? u.cancel : u.cancel && Fi(u.cancel) ? /* @__PURE__ */ ze.createElement("button", {
|
|
4225
4225
|
"data-button": !0,
|
|
4226
4226
|
"data-cancel": !0,
|
|
@@ -4228,7 +4228,7 @@ const B2 = (e) => {
|
|
|
4228
4228
|
onClick: (xe) => {
|
|
4229
4229
|
Fi(u.cancel) && Te && (u.cancel.onClick == null || u.cancel.onClick.call(u.cancel, xe), Be());
|
|
4230
4230
|
},
|
|
4231
|
-
className: nr(
|
|
4231
|
+
className: nr(q?.cancelButton, u == null || (c = u.classNames) == null ? void 0 : c.cancelButton)
|
|
4232
4232
|
}, u.cancel.label) : null, /* @__PURE__ */ ze.isValidElement(u.action) ? u.action : u.action && Fi(u.action) ? /* @__PURE__ */ ze.createElement("button", {
|
|
4233
4233
|
"data-button": !0,
|
|
4234
4234
|
"data-action": !0,
|
|
@@ -4236,7 +4236,7 @@ const B2 = (e) => {
|
|
|
4236
4236
|
onClick: (xe) => {
|
|
4237
4237
|
Fi(u.action) && (u.action.onClick == null || u.action.onClick.call(u.action, xe), !xe.defaultPrevented && Be());
|
|
4238
4238
|
},
|
|
4239
|
-
className: nr(
|
|
4239
|
+
className: nr(q?.actionButton, u == null || (d = u.classNames) == null ? void 0 : d.actionButton)
|
|
4240
4240
|
}, u.action.label) : null);
|
|
4241
4241
|
};
|
|
4242
4242
|
function _f() {
|
|
@@ -4283,16 +4283,16 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4283
4283
|
].concat(P.filter((K) => K.position).map((K) => K.position)))), [
|
|
4284
4284
|
P,
|
|
4285
4285
|
i
|
|
4286
|
-
]), [j, k] = ze.useState([]), [O,
|
|
4287
|
-
R((
|
|
4286
|
+
]), [j, k] = ze.useState([]), [O, W] = ze.useState(!1), [X, L] = ze.useState(!1), [q, V] = ze.useState(h !== "system" ? h : typeof window < "u" && window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light"), E = ze.useRef(null), B = a.join("+").replace(/Key/g, "").replace(/Digit/g, ""), _ = ze.useRef(null), M = ze.useRef(!1), F = ze.useCallback((K) => {
|
|
4287
|
+
R((H) => {
|
|
4288
4288
|
var Q;
|
|
4289
|
-
return (Q =
|
|
4289
|
+
return (Q = H.find((te) => te.id === K.id)) != null && Q.delete || Nn.dismiss(K.id), H.filter(({ id: te }) => te !== K.id);
|
|
4290
4290
|
});
|
|
4291
4291
|
}, []);
|
|
4292
4292
|
return ze.useEffect(() => Nn.subscribe((K) => {
|
|
4293
4293
|
if (K.dismiss) {
|
|
4294
4294
|
requestAnimationFrame(() => {
|
|
4295
|
-
R((
|
|
4295
|
+
R((H) => H.map((Q) => Q.id === K.id ? {
|
|
4296
4296
|
...Q,
|
|
4297
4297
|
delete: !0
|
|
4298
4298
|
} : Q));
|
|
@@ -4301,18 +4301,18 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4301
4301
|
}
|
|
4302
4302
|
setTimeout(() => {
|
|
4303
4303
|
kb.flushSync(() => {
|
|
4304
|
-
R((
|
|
4305
|
-
const Q =
|
|
4304
|
+
R((H) => {
|
|
4305
|
+
const Q = H.findIndex((te) => te.id === K.id);
|
|
4306
4306
|
return Q !== -1 ? [
|
|
4307
|
-
...
|
|
4307
|
+
...H.slice(0, Q),
|
|
4308
4308
|
{
|
|
4309
|
-
...
|
|
4309
|
+
...H[Q],
|
|
4310
4310
|
...K
|
|
4311
4311
|
},
|
|
4312
|
-
...
|
|
4312
|
+
...H.slice(Q + 1)
|
|
4313
4313
|
] : [
|
|
4314
4314
|
K,
|
|
4315
|
-
...
|
|
4315
|
+
...H
|
|
4316
4316
|
];
|
|
4317
4317
|
});
|
|
4318
4318
|
});
|
|
@@ -4327,8 +4327,8 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4327
4327
|
if (h === "system" && (window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ? V("dark") : V("light")), typeof window > "u") return;
|
|
4328
4328
|
const K = window.matchMedia("(prefers-color-scheme: dark)");
|
|
4329
4329
|
try {
|
|
4330
|
-
K.addEventListener("change", ({ matches:
|
|
4331
|
-
V(
|
|
4330
|
+
K.addEventListener("change", ({ matches: H }) => {
|
|
4331
|
+
V(H ? "dark" : "light");
|
|
4332
4332
|
});
|
|
4333
4333
|
} catch {
|
|
4334
4334
|
K.addListener(({ matches: Q }) => {
|
|
@@ -4342,17 +4342,17 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4342
4342
|
}, [
|
|
4343
4343
|
h
|
|
4344
4344
|
]), ze.useEffect(() => {
|
|
4345
|
-
C.length <= 1 &&
|
|
4345
|
+
C.length <= 1 && W(!1);
|
|
4346
4346
|
}, [
|
|
4347
4347
|
C
|
|
4348
4348
|
]), ze.useEffect(() => {
|
|
4349
|
-
const K = (
|
|
4349
|
+
const K = (H) => {
|
|
4350
4350
|
var Q;
|
|
4351
|
-
if (a.every((de) =>
|
|
4351
|
+
if (a.every((de) => H[de] || H.code === de)) {
|
|
4352
4352
|
var fe;
|
|
4353
|
-
|
|
4353
|
+
W(!0), (fe = E.current) == null || fe.focus();
|
|
4354
4354
|
}
|
|
4355
|
-
|
|
4355
|
+
H.code === "Escape" && (document.activeElement === E.current || (Q = E.current) != null && Q.contains(document.activeElement)) && W(!1);
|
|
4356
4356
|
};
|
|
4357
4357
|
return document.addEventListener("keydown", K), () => document.removeEventListener("keydown", K);
|
|
4358
4358
|
}, [
|
|
@@ -4375,7 +4375,7 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4375
4375
|
"aria-relevant": "additions text",
|
|
4376
4376
|
"aria-atomic": "false",
|
|
4377
4377
|
suppressHydrationWarning: !0
|
|
4378
|
-
}, z.map((K,
|
|
4378
|
+
}, z.map((K, H) => {
|
|
4379
4379
|
var Q;
|
|
4380
4380
|
const [te, fe] = K.split("-");
|
|
4381
4381
|
return P.length ? /* @__PURE__ */ ze.createElement("ol", {
|
|
@@ -4385,7 +4385,7 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4385
4385
|
ref: E,
|
|
4386
4386
|
className: d,
|
|
4387
4387
|
"data-sonner-toaster": !0,
|
|
4388
|
-
"data-sonner-theme":
|
|
4388
|
+
"data-sonner-theme": q,
|
|
4389
4389
|
"data-y-position": te,
|
|
4390
4390
|
"data-x-position": fe,
|
|
4391
4391
|
style: {
|
|
@@ -4403,17 +4403,17 @@ const j2 = /* @__PURE__ */ ze.forwardRef(function(t, n) {
|
|
|
4403
4403
|
onFocus: (de) => {
|
|
4404
4404
|
de.target instanceof HTMLElement && de.target.dataset.dismissible === "false" || M.current || (M.current = !0, _.current = de.relatedTarget);
|
|
4405
4405
|
},
|
|
4406
|
-
onMouseEnter: () =>
|
|
4407
|
-
onMouseMove: () =>
|
|
4406
|
+
onMouseEnter: () => W(!0),
|
|
4407
|
+
onMouseMove: () => W(!0),
|
|
4408
4408
|
onMouseLeave: () => {
|
|
4409
|
-
X ||
|
|
4409
|
+
X || W(!1);
|
|
4410
4410
|
},
|
|
4411
|
-
onDragEnd: () =>
|
|
4411
|
+
onDragEnd: () => W(!1),
|
|
4412
4412
|
onPointerDown: (de) => {
|
|
4413
4413
|
de.target instanceof HTMLElement && de.target.dataset.dismissible === "false" || L(!0);
|
|
4414
4414
|
},
|
|
4415
4415
|
onPointerUp: () => L(!1)
|
|
4416
|
-
}, P.filter((de) => !de.position &&
|
|
4416
|
+
}, P.filter((de) => !de.position && H === 0 || de.position === K).map((de, Ue) => {
|
|
4417
4417
|
var Re, Ae;
|
|
4418
4418
|
return /* @__PURE__ */ ze.createElement(B2, {
|
|
4419
4419
|
key: de.id,
|
|
@@ -4817,16 +4817,16 @@ function pk({
|
|
|
4817
4817
|
if (!k.shouldFireQuestion(_, M)) return;
|
|
4818
4818
|
const { event: F, props: K } = ck(_, M);
|
|
4819
4819
|
z(F, K);
|
|
4820
|
-
},
|
|
4820
|
+
}, W = (_) => {
|
|
4821
4821
|
if (!k.shouldFireComplete()) return;
|
|
4822
4822
|
const { event: M, props: F } = dk(_);
|
|
4823
4823
|
z(M, F);
|
|
4824
4824
|
}, X = (_) => {
|
|
4825
4825
|
u((M) => ({ ...M, identity: _ })), O("identity", _), window.setTimeout(R, 150);
|
|
4826
4826
|
}, L = (_) => {
|
|
4827
|
-
u((M) => ({ ...M, pain: _ })), O("pain", _),
|
|
4828
|
-
},
|
|
4829
|
-
c === Gs[Gs.length - 1] &&
|
|
4827
|
+
u((M) => ({ ...M, pain: _ })), O("pain", _), W({ ...f, pain: _ }), window.setTimeout(R, 150);
|
|
4828
|
+
}, q = () => {
|
|
4829
|
+
c === Gs[Gs.length - 1] && W(f), R();
|
|
4830
4830
|
}, V = Ff(c), E = V ? Gs : A, B = V ? Gs.indexOf(c) : A.indexOf(c);
|
|
4831
4831
|
return /* @__PURE__ */ r(
|
|
4832
4832
|
"div",
|
|
@@ -4861,7 +4861,7 @@ function pk({
|
|
|
4861
4861
|
onToggle: X
|
|
4862
4862
|
}
|
|
4863
4863
|
),
|
|
4864
|
-
/* @__PURE__ */ r(Rf, { onSkip:
|
|
4864
|
+
/* @__PURE__ */ r(Rf, { onSkip: q })
|
|
4865
4865
|
] }) : c === "survey-pain" ? /* @__PURE__ */ m(je, { children: [
|
|
4866
4866
|
/* @__PURE__ */ r("h1", { className: "text-xl font-semibold", children: "What hurts most right now?" }),
|
|
4867
4867
|
/* @__PURE__ */ r("p", { className: "mb-5 mt-1 text-sm text-muted-foreground", children: "Pick the one that's true today." }),
|
|
@@ -4873,12 +4873,12 @@ function pk({
|
|
|
4873
4873
|
onToggle: L
|
|
4874
4874
|
}
|
|
4875
4875
|
),
|
|
4876
|
-
/* @__PURE__ */ r(Rf, { onSkip:
|
|
4876
|
+
/* @__PURE__ */ r(Rf, { onSkip: q })
|
|
4877
4877
|
] }) : c === "agents" ? /* @__PURE__ */ m(je, { children: [
|
|
4878
4878
|
/* @__PURE__ */ r("h1", { className: "text-xl font-semibold", children: "Connect a coding agent" }),
|
|
4879
4879
|
/* @__PURE__ */ r("p", { className: "mb-5 mt-1 text-sm text-muted-foreground", children: "Sign in once and this Computer can start sessions. It opens the provider’s sign-in page — nothing is stored here." }),
|
|
4880
4880
|
/* @__PURE__ */ r("div", { className: "flex flex-col gap-2", children: e.map((_) => {
|
|
4881
|
-
const M = n === _.kind, F = !_.installed, K = F && !_.canAutoSetup,
|
|
4881
|
+
const M = n === _.kind, F = !_.installed, K = F && !_.canAutoSetup, H = _.provider === "claude" ? "Claude" : _.provider === "codex" ? "ChatGPT" : "xAI";
|
|
4882
4882
|
return /* @__PURE__ */ m(
|
|
4883
4883
|
"div",
|
|
4884
4884
|
{
|
|
@@ -4886,7 +4886,7 @@ function pk({
|
|
|
4886
4886
|
children: [
|
|
4887
4887
|
/* @__PURE__ */ m("span", { className: "min-w-0 flex-1", children: [
|
|
4888
4888
|
/* @__PURE__ */ r("span", { className: "block truncate text-sm font-medium", children: _.label }),
|
|
4889
|
-
/* @__PURE__ */ r("span", { className: "block truncate text-xs text-muted-foreground", children: _.configured ? "Connected" : K ? "CLI not installed on this Computer" : F ? "Install first, then sign in" : `Sign in with ${
|
|
4889
|
+
/* @__PURE__ */ r("span", { className: "block truncate text-xs text-muted-foreground", children: _.configured ? "Connected" : K ? "CLI not installed on this Computer" : F ? "Install first, then sign in" : `Sign in with ${H}` })
|
|
4890
4890
|
] }),
|
|
4891
4891
|
_.configured ? /* @__PURE__ */ r("span", { className: "flex size-8 items-center justify-center rounded-full bg-emerald-500/10 text-emerald-500", "aria-label": "Connected", children: /* @__PURE__ */ r(qt, { className: "size-4" }) }) : /* @__PURE__ */ r(
|
|
4892
4892
|
Ee,
|
|
@@ -5607,7 +5607,7 @@ function _k({
|
|
|
5607
5607
|
if (I.set(S.pointerId, C), I.size >= 2 && c.current) {
|
|
5608
5608
|
const [R, P] = [...I.values()], z = Math.hypot(R.x - P.x, R.y - P.y), j = (R.x + P.x) / 2, k = (R.y + P.y) / 2, O = o.current;
|
|
5609
5609
|
if (O && c.current.dist > 0) {
|
|
5610
|
-
const
|
|
5610
|
+
const W = O.getBoundingClientRect(), X = z / c.current.dist, L = j - c.current.mx, q = k - c.current.my, V = j - W.left, E = k - W.top;
|
|
5611
5611
|
a((B) => {
|
|
5612
5612
|
const _ = Jl(B.scale * X, rr, Oi);
|
|
5613
5613
|
if (_ === rr) return ds;
|
|
@@ -5615,7 +5615,7 @@ function _k({
|
|
|
5615
5615
|
return {
|
|
5616
5616
|
scale: _,
|
|
5617
5617
|
ox: B.ox + V * (1 - M) + L,
|
|
5618
|
-
oy: B.oy + E * (1 - M) +
|
|
5618
|
+
oy: B.oy + E * (1 - M) + q
|
|
5619
5619
|
};
|
|
5620
5620
|
}), d.current = !0;
|
|
5621
5621
|
}
|
|
@@ -6855,7 +6855,7 @@ function IS(e, t, n = {}) {
|
|
|
6855
6855
|
le.sessionId && he && (Y[le.sessionId] = he);
|
|
6856
6856
|
}
|
|
6857
6857
|
return Y;
|
|
6858
|
-
}, [e]), [f, u] = w({}), [h, p] = w({}), [g, v] = w({}), [y, b] = w({}), [N, S] = w({}), [I, A] = w({}), C = U(null), R = U(!1), P = U(/* @__PURE__ */ new Set()), z = U(/* @__PURE__ */ new Set()), j = U(/* @__PURE__ */ new Map()), k = U(/* @__PURE__ */ new Set()), O = U(/* @__PURE__ */ new Set()),
|
|
6858
|
+
}, [e]), [f, u] = w({}), [h, p] = w({}), [g, v] = w({}), [y, b] = w({}), [N, S] = w({}), [I, A] = w({}), C = U(null), R = U(!1), P = U(/* @__PURE__ */ new Set()), z = U(/* @__PURE__ */ new Set()), j = U(/* @__PURE__ */ new Map()), k = U(/* @__PURE__ */ new Set()), O = U(/* @__PURE__ */ new Set()), W = U({}), X = U({}), L = U({}), q = U({}), V = U({}), E = U(f), B = U(N), _ = U({}), M = U(/* @__PURE__ */ new Set()), F = U(/* @__PURE__ */ new Set()), K = U(0), H = U(0), Q = U(!1), te = U(zi), fe = U(null), de = U(!1), Ue = U(0), Re = U(null), Ae = U(null), we = U(() => {
|
|
6859
6859
|
}), [De, be] = w(TS), We = re((Y, le) => {
|
|
6860
6860
|
const he = L.current[Y];
|
|
6861
6861
|
if (he?.size)
|
|
@@ -6874,11 +6874,11 @@ function IS(e, t, n = {}) {
|
|
|
6874
6874
|
const he = Ze.current[Y] ?? 0, pe = Date.now();
|
|
6875
6875
|
le && pe - he < kS || (Ze.current[Y] = le ? pe : 0, Ke({ t: "typing", sid: Y, typing: le }));
|
|
6876
6876
|
}, [Ke]), Fe = re((Y) => {
|
|
6877
|
-
const le =
|
|
6877
|
+
const le = W.current[$n(Y)];
|
|
6878
6878
|
return le ? { ...Y, resumeFromSeq: le } : Y;
|
|
6879
6879
|
}, []), se = re((Y) => Y.length ? Ke({ t: "subscribe", channels: Y.map(Fe), deferToolArgs: !0 }) : !1, [Fe, Ke]), ae = re((Y) => {
|
|
6880
6880
|
if (!Y.length) return !1;
|
|
6881
|
-
for (const le of Y) delete
|
|
6881
|
+
for (const le of Y) delete W.current[$n(le)];
|
|
6882
6882
|
return Ke({ t: "unsubscribe", channels: Y });
|
|
6883
6883
|
}, [Ke]), Ne = re((Y, le, he = !1, pe) => {
|
|
6884
6884
|
M.current.has(Y) || (M.current.add(Y), kn("ws_client_first_msg", {
|
|
@@ -6915,9 +6915,9 @@ function IS(e, t, n = {}) {
|
|
|
6915
6915
|
if ("kind" in Y && Y.kind && "key" in Y && typeof Y.key == "string") {
|
|
6916
6916
|
const he = $n({ kind: Y.kind, key: Y.key });
|
|
6917
6917
|
if (typeof Y.seq == "number" && Number.isFinite(Y.seq)) {
|
|
6918
|
-
const pe =
|
|
6918
|
+
const pe = W.current[he] ?? 0;
|
|
6919
6919
|
if (!(Y.t === "snapshot" || Y.t === "gap" || Y.t === "resumed") && Y.seq <= pe) return;
|
|
6920
|
-
|
|
6920
|
+
W.current[he] = Y.seq;
|
|
6921
6921
|
}
|
|
6922
6922
|
if (Y.t === "error") {
|
|
6923
6923
|
const pe = Y.message || Y.code || "live socket error";
|
|
@@ -7038,7 +7038,7 @@ function IS(e, t, n = {}) {
|
|
|
7038
7038
|
}
|
|
7039
7039
|
if (Y.t === "prompt" && v((he) => ({ ...he, [le]: Y.prompt ?? null })), Y.t === "queue") {
|
|
7040
7040
|
const he = Array.isArray(Y.queue) ? Y.queue : [];
|
|
7041
|
-
|
|
7041
|
+
q.current[le] = he, We(le, { type: "queue", queue: he }), u((pe) => ({
|
|
7042
7042
|
...pe,
|
|
7043
7043
|
[le]: Yp(pe[le] ?? [], he, CS)
|
|
7044
7044
|
}));
|
|
@@ -7077,7 +7077,7 @@ function IS(e, t, n = {}) {
|
|
|
7077
7077
|
return;
|
|
7078
7078
|
}
|
|
7079
7079
|
C.current = ge, K.current = performance.now(), M.current = /* @__PURE__ */ new Set(), F.current = /* @__PURE__ */ new Set(), ge.onopen = () => {
|
|
7080
|
-
te.current = zi, kn("ws_client_open", { reconnects:
|
|
7080
|
+
te.current = zi, kn("ws_client_open", { reconnects: H.current }), H.current = 0, be((tt) => ({ ...tt, status: "live", attempt: 0 })), Y();
|
|
7081
7081
|
const xe = [...j.current.values()];
|
|
7082
7082
|
xe.length && (ge.send(JSON.stringify({ t: "subscribe", channels: xe.map(Fe), deferToolArgs: !0 })), k.current = new Set(xe.map($n)), z.current = new Set(xe.filter((tt) => tt.kind === "transcript").map((tt) => tt.key)));
|
|
7083
7083
|
}, ge.onmessage = (xe) => {
|
|
@@ -7087,7 +7087,7 @@ function IS(e, t, n = {}) {
|
|
|
7087
7087
|
}, ge.onclose = (xe) => {
|
|
7088
7088
|
const tt = Ae.current;
|
|
7089
7089
|
if (tt?.ws === ge && (clearTimeout(tt.timer), Ae.current = null), C.current !== ge || (C.current = null, z.current = /* @__PURE__ */ new Set(), k.current = /* @__PURE__ */ new Set(), Q.current)) return;
|
|
7090
|
-
const Je =
|
|
7090
|
+
const Je = H.current += 1, ht = xe.code, bt = xe.reason || null;
|
|
7091
7091
|
kn("ws_client_reconnect", { attempt: Je, backoffMs: te.current, code: ht, reason: bt });
|
|
7092
7092
|
const kt = typeof navigator < "u" && navigator.onLine === !1;
|
|
7093
7093
|
if (be(($t) => ({
|
|
@@ -7111,7 +7111,7 @@ function IS(e, t, n = {}) {
|
|
|
7111
7111
|
};
|
|
7112
7112
|
}).catch((ue) => {
|
|
7113
7113
|
if (R.current = !1, Q.current) return;
|
|
7114
|
-
const ge =
|
|
7114
|
+
const ge = H.current += 1, Xe = ue instanceof Error ? ue.message : "socket open failed";
|
|
7115
7115
|
kn("ws_client_reconnect", {
|
|
7116
7116
|
attempt: ge,
|
|
7117
7117
|
backoffMs: te.current,
|
|
@@ -7130,7 +7130,7 @@ function IS(e, t, n = {}) {
|
|
|
7130
7130
|
};
|
|
7131
7131
|
we.current = pe;
|
|
7132
7132
|
const Oe = () => {
|
|
7133
|
-
te.current = zi,
|
|
7133
|
+
te.current = zi, H.current = 0;
|
|
7134
7134
|
}, Ie = () => {
|
|
7135
7135
|
if (typeof document > "u" || document.visibilityState !== "visible") return;
|
|
7136
7136
|
const Ge = C.current, ue = mS(
|
|
@@ -7183,8 +7183,8 @@ function IS(e, t, n = {}) {
|
|
|
7183
7183
|
const Y = new Set(a);
|
|
7184
7184
|
O.current = Y;
|
|
7185
7185
|
const le = /* @__PURE__ */ new Set([...Y, ...Object.keys(L.current)]), he = new Set(Object.keys(c));
|
|
7186
|
-
|
|
7187
|
-
Object.entries(
|
|
7186
|
+
q.current = Object.fromEntries(
|
|
7187
|
+
Object.entries(q.current).filter(([ge]) => he.has(ge))
|
|
7188
7188
|
);
|
|
7189
7189
|
const pe = P.current;
|
|
7190
7190
|
P.current = le, V.current = Object.fromEntries(Object.entries(V.current).filter(([ge]) => he.has(ge))), u((ge) => {
|
|
@@ -7316,7 +7316,7 @@ function IS(e, t, n = {}) {
|
|
|
7316
7316
|
};
|
|
7317
7317
|
}, [s, se, ae]), ut = re((Y, le) => {
|
|
7318
7318
|
(L.current[Y] || (L.current[Y] = /* @__PURE__ */ new Set())).add(le);
|
|
7319
|
-
const pe =
|
|
7319
|
+
const pe = q.current[Y];
|
|
7320
7320
|
pe && le({ type: "queue", queue: pe });
|
|
7321
7321
|
const Oe = Li(Y), Ie = $n(Oe);
|
|
7322
7322
|
return P.current.add(Y), j.current.set(Ie, Oe), s && !k.current.has(Ie) && se([Oe]) && (k.current.add(Ie), z.current.add(Y)), () => {
|
|
@@ -10585,13 +10585,13 @@ function fE(e, t, n) {
|
|
|
10585
10585
|
const i = [], a = [], l = [], c = [], d = [], f = [], u = [], h = [], p = [], g = [], v = [], y = [];
|
|
10586
10586
|
for (const C of s.segment(e))
|
|
10587
10587
|
for (const R of G5(C.segment, C.isWordLike ?? !1, C.index, n)) {
|
|
10588
|
-
let
|
|
10588
|
+
let q = function() {
|
|
10589
10589
|
f[L] !== null && (a[L] = [
|
|
10590
10590
|
xm(i, f, u, L)
|
|
10591
|
-
], f[L] = null), a[L].push(R.text), l[L] = l[L] || R.isWordLike, h[L] = h[L] || j, p[L] = p[L] || k, g[L] =
|
|
10591
|
+
], f[L] = null), a[L].push(R.text), l[L] = l[L] || R.isWordLike, h[L] = h[L] || j, p[L] = p[L] || k, g[L] = W, v[L] = X, y[L] = bm(p[L], O);
|
|
10592
10592
|
};
|
|
10593
|
-
const P = R.kind === "text", z = U5(R.text, R.isWordLike, R.kind), j = lr(R.text), k = pm(R.text), O = ii(R.text),
|
|
10594
|
-
t.carryCJKAfterClosingQuote && P && o > 0 && c[L] === "text" && j && h[L] && g[L] || P && o > 0 && c[L] === "text" && O5(R.text) && h[L] || P && o > 0 && c[L] === "text" && v[L] ?
|
|
10593
|
+
const P = R.kind === "text", z = U5(R.text, R.isWordLike, R.kind), j = lr(R.text), k = pm(R.text), O = ii(R.text), W = Kc(R.text), X = W5(R.text), L = o - 1;
|
|
10594
|
+
t.carryCJKAfterClosingQuote && P && o > 0 && c[L] === "text" && j && h[L] && g[L] || P && o > 0 && c[L] === "text" && O5(R.text) && h[L] || P && o > 0 && c[L] === "text" && v[L] ? q() : P && o > 0 && c[L] === "text" && R.isWordLike && k && y[L] ? (q(), l[L] = !0) : z !== null && o > 0 && c[L] === "text" && f[L] === z ? u[L] = (u[L] ?? 1) + 1 : P && !R.isWordLike && o > 0 && c[L] === "text" && !h[L] && (F5(R.text) || R.text === "-" && l[L]) ? q() : (i[o] = R.text, a[o] = [R.text], l[o] = R.isWordLike, c[o] = R.kind, d[o] = R.start, f[o] = z, u[o] = z === null ? 0 : 1, h[o] = j, p[o] = k, g[o] = W, v[o] = X, y[o] = bm(k, O), o++);
|
|
10595
10595
|
}
|
|
10596
10596
|
for (let C = 0; C < o; C++) {
|
|
10597
10597
|
if (f[C] !== null) {
|
|
@@ -10980,22 +10980,22 @@ function LE(e, t, n) {
|
|
|
10980
10980
|
u += k, v = j + 1, y = 0;
|
|
10981
10981
|
}
|
|
10982
10982
|
function P(j, k) {
|
|
10983
|
-
const O = i[j],
|
|
10984
|
-
let X =
|
|
10983
|
+
const O = i[j], W = a[j] ?? null;
|
|
10984
|
+
let X = W === null ? -1 : uo(W, 0, k + 1), L = -1, q = 0, V = k;
|
|
10985
10985
|
for (; V < O.length; ) {
|
|
10986
10986
|
const E = O[V];
|
|
10987
10987
|
if (!h)
|
|
10988
10988
|
C(j, V, E);
|
|
10989
10989
|
else if (u + E > d) {
|
|
10990
|
-
if (
|
|
10991
|
-
I(j, L,
|
|
10990
|
+
if (W !== null && L > k) {
|
|
10991
|
+
I(j, L, q), V = L, X = uo(W, X, V + 1), L = -1, q = 0;
|
|
10992
10992
|
continue;
|
|
10993
10993
|
}
|
|
10994
10994
|
I(), C(j, V, E);
|
|
10995
10995
|
} else
|
|
10996
10996
|
u += E, v = j, y = V + 1;
|
|
10997
10997
|
const B = V + 1;
|
|
10998
|
-
|
|
10998
|
+
W !== null && W[X] === B && (L = B, q = u, X++), V++;
|
|
10999
10999
|
}
|
|
11000
11000
|
h && v === j && y === O.length && (v = j + 1, y = 0);
|
|
11001
11001
|
}
|
|
@@ -11044,56 +11044,56 @@ function jg(e, t, n) {
|
|
|
11044
11044
|
function P() {
|
|
11045
11045
|
return C === "soft-hyphen" && S === b && N === 0 ? A : p;
|
|
11046
11046
|
}
|
|
11047
|
-
function z(
|
|
11048
|
-
h++, n !== void 0 && n(Pg(e, E ?? P(), v, y,
|
|
11047
|
+
function z(q = b, V = N, E) {
|
|
11048
|
+
h++, n !== void 0 && n(Pg(e, E ?? P(), v, y, q, V), v, y, q, V), p = 0, g = !1, R();
|
|
11049
11049
|
}
|
|
11050
|
-
function j(
|
|
11051
|
-
g = !0, v =
|
|
11050
|
+
function j(q, V) {
|
|
11051
|
+
g = !0, v = q, y = 0, b = q + 1, N = 0, p = V;
|
|
11052
11052
|
}
|
|
11053
|
-
function k(
|
|
11054
|
-
g = !0, v =
|
|
11053
|
+
function k(q, V, E) {
|
|
11054
|
+
g = !0, v = q, y = V, b = q, N = V + 1, p = E;
|
|
11055
11055
|
}
|
|
11056
|
-
function O(
|
|
11056
|
+
function O(q, V) {
|
|
11057
11057
|
if (!g) {
|
|
11058
|
-
j(
|
|
11058
|
+
j(q, V);
|
|
11059
11059
|
return;
|
|
11060
11060
|
}
|
|
11061
|
-
p += V, b =
|
|
11061
|
+
p += V, b = q + 1, N = 0;
|
|
11062
11062
|
}
|
|
11063
|
-
function q
|
|
11063
|
+
function W(q, V, E, B, _, M) {
|
|
11064
11064
|
if (!V)
|
|
11065
11065
|
return;
|
|
11066
|
-
const F = Ca(e,
|
|
11067
|
-
S = E + 1, I = p - M + F, A = p - M + K, C =
|
|
11066
|
+
const F = Ca(e, q, E, _), K = Ea(e, q, E, _, B);
|
|
11067
|
+
S = E + 1, I = p - M + F, A = p - M + K, C = q;
|
|
11068
11068
|
}
|
|
11069
|
-
function X(
|
|
11070
|
-
const E = i[
|
|
11069
|
+
function X(q, V) {
|
|
11070
|
+
const E = i[q], B = a[q] ?? null;
|
|
11071
11071
|
let _ = B === null ? -1 : uo(B, 0, V + 1), M = -1, F = 0, K = V;
|
|
11072
11072
|
for (; K < E.length; ) {
|
|
11073
|
-
const
|
|
11073
|
+
const H = E[K];
|
|
11074
11074
|
if (!g)
|
|
11075
|
-
k(
|
|
11075
|
+
k(q, K, H);
|
|
11076
11076
|
else {
|
|
11077
|
-
const te = Dg(e, !0,
|
|
11077
|
+
const te = Dg(e, !0, H), fe = p + te;
|
|
11078
11078
|
if (Bg(e, fe) > u) {
|
|
11079
11079
|
if (B !== null && M > V) {
|
|
11080
|
-
z(
|
|
11080
|
+
z(q, M, F), K = M, _ = uo(B, _, K + 1), M = -1, F = 0;
|
|
11081
11081
|
continue;
|
|
11082
11082
|
}
|
|
11083
|
-
z(), k(
|
|
11083
|
+
z(), k(q, K, H);
|
|
11084
11084
|
} else
|
|
11085
|
-
p = fe, b =
|
|
11085
|
+
p = fe, b = q, N = K + 1;
|
|
11086
11086
|
}
|
|
11087
11087
|
const Q = K + 1;
|
|
11088
11088
|
B !== null && B[_] === Q && (M = Q, F = p, _++), K++;
|
|
11089
11089
|
}
|
|
11090
|
-
g && b ===
|
|
11090
|
+
g && b === q && N === E.length && (b = q + 1, N = 0);
|
|
11091
11091
|
}
|
|
11092
|
-
function L(
|
|
11093
|
-
h++, n?.(0,
|
|
11092
|
+
function L(q) {
|
|
11093
|
+
h++, n?.(0, q.startSegmentIndex, 0, q.consumedEndSegmentIndex, 0), R();
|
|
11094
11094
|
}
|
|
11095
|
-
for (let
|
|
11096
|
-
const V = c[
|
|
11095
|
+
for (let q = 0; q < c.length; q++) {
|
|
11096
|
+
const V = c[q];
|
|
11097
11097
|
if (V.startSegmentIndex === V.endSegmentIndex) {
|
|
11098
11098
|
L(V);
|
|
11099
11099
|
continue;
|
|
@@ -11101,16 +11101,16 @@ function jg(e, t, n) {
|
|
|
11101
11101
|
g = !1, p = 0, v = V.startSegmentIndex, y = 0, b = V.startSegmentIndex, N = 0, R();
|
|
11102
11102
|
let E = V.startSegmentIndex;
|
|
11103
11103
|
for (; E < V.endSegmentIndex && !(!g && (E = Zd(e, E, V.endSegmentIndex), E >= V.endSegmentIndex)); ) {
|
|
11104
|
-
const B = o[E], _ = ol(B), M = zg(e, g, E), F = B === "tab" ? Lg(p + M, e.tabStopAdvance) : s[E], K = M + F,
|
|
11104
|
+
const B = o[E], _ = ol(B), M = zg(e, g, E), F = B === "tab" ? Lg(p + M, e.tabStopAdvance) : s[E], K = M + F, H = $g(e, B, E, M, F);
|
|
11105
11105
|
if (B === "soft-hyphen") {
|
|
11106
11106
|
g && (b = E + 1, N = 0, S = E + 1, I = p + l, A = p + l, C = B), E++;
|
|
11107
11107
|
continue;
|
|
11108
11108
|
}
|
|
11109
11109
|
if (!g) {
|
|
11110
|
-
|
|
11110
|
+
H > u && i[E] !== null ? X(E, 0) : j(E, F), W(B, _, E, F, M, K), E++;
|
|
11111
11111
|
continue;
|
|
11112
11112
|
}
|
|
11113
|
-
if (p +
|
|
11113
|
+
if (p + H > u) {
|
|
11114
11114
|
const te = p + Ca(e, B, E, M), fe = p + Ea(e, B, E, M, F);
|
|
11115
11115
|
if (C === "soft-hyphen" && d.preferEarlySoftHyphenBreak && I <= u) {
|
|
11116
11116
|
z(S, 0, A);
|
|
@@ -11129,14 +11129,14 @@ function jg(e, t, n) {
|
|
|
11129
11129
|
z(de, 0, A), E = de;
|
|
11130
11130
|
continue;
|
|
11131
11131
|
}
|
|
11132
|
-
if (
|
|
11132
|
+
if (H > u && i[E] !== null) {
|
|
11133
11133
|
z(), X(E, 0), E++;
|
|
11134
11134
|
continue;
|
|
11135
11135
|
}
|
|
11136
11136
|
z();
|
|
11137
11137
|
continue;
|
|
11138
11138
|
}
|
|
11139
|
-
O(E, K),
|
|
11139
|
+
O(E, K), W(B, _, E, F, M, K), E++;
|
|
11140
11140
|
}
|
|
11141
11141
|
if (g) {
|
|
11142
11142
|
const B = S === V.consumedEndSegmentIndex ? A : p;
|
|
@@ -11154,43 +11154,43 @@ function zE(e, t, n, s) {
|
|
|
11154
11154
|
function R() {
|
|
11155
11155
|
return C === "soft-hyphen" && S === b && N === 0 ? A : v;
|
|
11156
11156
|
}
|
|
11157
|
-
function P(L = b,
|
|
11158
|
-
return y ? (t.segmentIndex = L, t.graphemeIndex =
|
|
11157
|
+
function P(L = b, q = N, V = R()) {
|
|
11158
|
+
return y ? (t.segmentIndex = L, t.graphemeIndex = q, Pg(e, V, p, g, L, q)) : null;
|
|
11159
11159
|
}
|
|
11160
|
-
function z(L,
|
|
11161
|
-
y = !0, b = L + 1, N = 0, v =
|
|
11160
|
+
function z(L, q) {
|
|
11161
|
+
y = !0, b = L + 1, N = 0, v = q;
|
|
11162
11162
|
}
|
|
11163
|
-
function j(L,
|
|
11164
|
-
y = !0, b = L, N =
|
|
11163
|
+
function j(L, q, V) {
|
|
11164
|
+
y = !0, b = L, N = q + 1, v = V;
|
|
11165
11165
|
}
|
|
11166
|
-
function k(L,
|
|
11166
|
+
function k(L, q) {
|
|
11167
11167
|
if (!y) {
|
|
11168
|
-
z(L,
|
|
11168
|
+
z(L, q);
|
|
11169
11169
|
return;
|
|
11170
11170
|
}
|
|
11171
|
-
v +=
|
|
11171
|
+
v += q, b = L + 1, N = 0;
|
|
11172
11172
|
}
|
|
11173
|
-
function O(L,
|
|
11174
|
-
if (!
|
|
11173
|
+
function O(L, q, V, E, B, _) {
|
|
11174
|
+
if (!q)
|
|
11175
11175
|
return;
|
|
11176
11176
|
const M = Ca(e, L, V, B), F = Ea(e, L, V, B, E);
|
|
11177
11177
|
S = V + 1, I = v - _ + M, A = v - _ + F, C = L;
|
|
11178
11178
|
}
|
|
11179
|
-
function
|
|
11179
|
+
function W(L, q) {
|
|
11180
11180
|
const V = l[L], E = c[L] ?? null;
|
|
11181
|
-
let B = E === null ? -1 : uo(E, 0,
|
|
11182
|
-
for (let F =
|
|
11181
|
+
let B = E === null ? -1 : uo(E, 0, q + 1), _ = -1, M = 0;
|
|
11182
|
+
for (let F = q; F < V.length; F++) {
|
|
11183
11183
|
const K = V[F];
|
|
11184
11184
|
if (!y)
|
|
11185
11185
|
j(L, F, K);
|
|
11186
11186
|
else {
|
|
11187
11187
|
const Q = Dg(e, !0, K), te = v + Q;
|
|
11188
11188
|
if (Bg(e, te) > h)
|
|
11189
|
-
return E !== null && _ >
|
|
11189
|
+
return E !== null && _ > q ? P(L, _, M) : P();
|
|
11190
11190
|
v = te, b = L, N = F + 1;
|
|
11191
11191
|
}
|
|
11192
|
-
const
|
|
11193
|
-
E !== null && E[B] ===
|
|
11192
|
+
const H = F + 1;
|
|
11193
|
+
E !== null && E[B] === H && (_ = H, M = v, B++);
|
|
11194
11194
|
}
|
|
11195
11195
|
return y && b === L && N === V.length && (b = L + 1, N = 0), null;
|
|
11196
11196
|
}
|
|
@@ -11198,33 +11198,33 @@ function zE(e, t, n, s) {
|
|
|
11198
11198
|
return C !== "soft-hyphen" || S < 0 ? null : I <= h ? P(S, 0, A) : null;
|
|
11199
11199
|
}
|
|
11200
11200
|
for (let L = t.segmentIndex; L < o.endSegmentIndex; L++) {
|
|
11201
|
-
const
|
|
11202
|
-
if (
|
|
11203
|
-
y && (b = L + 1, N = 0, S = L + 1, I = v + d, A = v + d, C =
|
|
11201
|
+
const q = a[L], V = ol(q), E = L === t.segmentIndex ? t.graphemeIndex : 0, B = zg(e, y, L), _ = q === "tab" ? Lg(v + B, e.tabStopAdvance) : i[L], M = B + _, F = $g(e, q, L, B, _);
|
|
11202
|
+
if (q === "soft-hyphen" && E === 0) {
|
|
11203
|
+
y && (b = L + 1, N = 0, S = L + 1, I = v + d, A = v + d, C = q);
|
|
11204
11204
|
continue;
|
|
11205
11205
|
}
|
|
11206
11206
|
if (!y) {
|
|
11207
11207
|
if (E > 0) {
|
|
11208
|
-
const
|
|
11209
|
-
if (
|
|
11210
|
-
return
|
|
11208
|
+
const H = W(L, E);
|
|
11209
|
+
if (H !== null)
|
|
11210
|
+
return H;
|
|
11211
11211
|
} else if (F > h && l[L] !== null) {
|
|
11212
|
-
const
|
|
11213
|
-
if (
|
|
11214
|
-
return
|
|
11212
|
+
const H = W(L, 0);
|
|
11213
|
+
if (H !== null)
|
|
11214
|
+
return H;
|
|
11215
11215
|
} else
|
|
11216
11216
|
z(L, _);
|
|
11217
|
-
O(
|
|
11217
|
+
O(q, V, L, _, B, M);
|
|
11218
11218
|
continue;
|
|
11219
11219
|
}
|
|
11220
11220
|
if (v + F > h) {
|
|
11221
|
-
const
|
|
11221
|
+
const H = v + Ca(e, q, L, B), Q = v + Ea(e, q, L, B, _);
|
|
11222
11222
|
if (C === "soft-hyphen" && f.preferEarlySoftHyphenBreak && I <= h)
|
|
11223
11223
|
return P(S, 0, A);
|
|
11224
11224
|
const te = X();
|
|
11225
11225
|
if (te !== null)
|
|
11226
11226
|
return te;
|
|
11227
|
-
if (V &&
|
|
11227
|
+
if (V && H <= h)
|
|
11228
11228
|
return k(L, M), P(L + 1, 0, Q);
|
|
11229
11229
|
if (S >= 0 && I <= h)
|
|
11230
11230
|
return b > S || b === S && N > 0 ? P() : P(S, 0, A);
|
|
@@ -11232,13 +11232,13 @@ function zE(e, t, n, s) {
|
|
|
11232
11232
|
const fe = P();
|
|
11233
11233
|
if (fe !== null)
|
|
11234
11234
|
return fe;
|
|
11235
|
-
const de =
|
|
11235
|
+
const de = W(L, 0);
|
|
11236
11236
|
if (de !== null)
|
|
11237
11237
|
return de;
|
|
11238
11238
|
}
|
|
11239
11239
|
return P();
|
|
11240
11240
|
}
|
|
11241
|
-
k(L, M), O(
|
|
11241
|
+
k(L, M), O(q, V, L, _, B, M);
|
|
11242
11242
|
}
|
|
11243
11243
|
return S === o.consumedEndSegmentIndex && N === 0 ? P(o.consumedEndSegmentIndex, 0, A) : P(o.consumedEndSegmentIndex, 0, v);
|
|
11244
11244
|
}
|
|
@@ -11254,10 +11254,10 @@ function $E(e, t, n) {
|
|
|
11254
11254
|
const k = C[S];
|
|
11255
11255
|
u = !0, f = k, h = y, p = S + 1, R !== null && R[P] === p && (z = p, j = f, P++);
|
|
11256
11256
|
for (let O = S + 1; O < C.length; O++) {
|
|
11257
|
-
const
|
|
11258
|
-
if (f +
|
|
11257
|
+
const W = C[O];
|
|
11258
|
+
if (f + W > d)
|
|
11259
11259
|
return R !== null && z > S ? (t.segmentIndex = y, t.graphemeIndex = z, j) : (t.segmentIndex = h, t.graphemeIndex = p, f);
|
|
11260
|
-
f +=
|
|
11260
|
+
f += W, h = y, p = O + 1, R !== null && R[P] === p && (z = p, j = f, P++);
|
|
11261
11261
|
}
|
|
11262
11262
|
h === y && p === C.length && (h = y + 1, p = 0);
|
|
11263
11263
|
} else
|
|
@@ -11410,23 +11410,23 @@ function qE(e, t, n, s, o) {
|
|
|
11410
11410
|
const h = [], p = [], g = [], v = [];
|
|
11411
11411
|
let y = e.chunks.length <= 1 && !u;
|
|
11412
11412
|
const b = n ? [] : null, N = [], S = [], I = [], A = n ? [] : null, C = Array.from({ length: e.len });
|
|
11413
|
-
function R(k, O,
|
|
11414
|
-
L !== "text" && L !== "space" && L !== "zero-width-break" && (y = !1), h.push(O), p.push(
|
|
11413
|
+
function R(k, O, W, X, L, q, V, E, B) {
|
|
11414
|
+
L !== "text" && L !== "space" && L !== "zero-width-break" && (y = !1), h.push(O), p.push(W), g.push(X), v.push(L), b?.push(q), N.push(V), S.push(E), u && I.push(B), A !== null && A.push(k);
|
|
11415
11415
|
}
|
|
11416
|
-
function P(k, O,
|
|
11417
|
-
const
|
|
11416
|
+
function P(k, O, W, X, L) {
|
|
11417
|
+
const q = jr(k, a), V = u ? Nm(k, O) : 0, E = HE(xs(k, q, l), V, o), B = O === "space" || O === "preserved-space" || O === "zero-width-break" ? 0 : E, _ = B === 0 ? 0 : B + (V > 0 ? o : 0), M = O === "space" || O === "zero-width-break" ? 0 : E;
|
|
11418
11418
|
if (L && X && k.length > 1) {
|
|
11419
11419
|
let F = "sum-graphemes";
|
|
11420
11420
|
o !== 0 ? F = "segment-prefixes" : Sa(k) ? F = "pair-context" : i.preferPrefixWidthsForBreakableRuns && (F = "segment-prefixes");
|
|
11421
|
-
const K = EE(k,
|
|
11422
|
-
R(k, E, _, M, O,
|
|
11421
|
+
const K = EE(k, q, a, l, F), H = K === null || s === "keep-all" ? null : WE(k);
|
|
11422
|
+
R(k, E, _, M, O, W, K, H, V);
|
|
11423
11423
|
return;
|
|
11424
11424
|
}
|
|
11425
|
-
R(k, E, _, M, O,
|
|
11425
|
+
R(k, E, _, M, O, W, null, null, V);
|
|
11426
11426
|
}
|
|
11427
11427
|
for (let k = 0; k < e.len; k++) {
|
|
11428
11428
|
C[k] = h.length;
|
|
11429
|
-
const O = e.texts[k],
|
|
11429
|
+
const O = e.texts[k], W = e.isWordLike[k], X = e.kinds[k], L = e.starts[k];
|
|
11430
11430
|
if (X === "soft-hyphen") {
|
|
11431
11431
|
R(O, 0, c, c, X, L, null, null, 0);
|
|
11432
11432
|
continue;
|
|
@@ -11439,16 +11439,16 @@ function qE(e, t, n, s, o) {
|
|
|
11439
11439
|
R(O, 0, 0, 0, X, L, null, null, u ? Nm(O, X) : 0);
|
|
11440
11440
|
continue;
|
|
11441
11441
|
}
|
|
11442
|
-
const
|
|
11443
|
-
if (X === "text" &&
|
|
11442
|
+
const q = jr(O, a);
|
|
11443
|
+
if (X === "text" && q.containsCJK) {
|
|
11444
11444
|
const V = PE(O, i), E = s === "keep-all" ? jE(O, V, i.breakKeepAllAfterPunctuation) : V;
|
|
11445
11445
|
for (let B = 0; B < E.length; B++) {
|
|
11446
11446
|
const _ = E[B];
|
|
11447
|
-
P(_.text, "text", L + _.start,
|
|
11447
|
+
P(_.text, "text", L + _.start, W, s === "keep-all" || !lr(_.text));
|
|
11448
11448
|
}
|
|
11449
11449
|
continue;
|
|
11450
11450
|
}
|
|
11451
|
-
P(O, X, L,
|
|
11451
|
+
P(O, X, L, W, !0);
|
|
11452
11452
|
}
|
|
11453
11453
|
const z = VE(e.chunks, C, h.length), j = b === null ? null : p5(e.normalized, b);
|
|
11454
11454
|
return A !== null ? {
|
|
@@ -11788,20 +11788,20 @@ function uM(e, t, n, s, o) {
|
|
|
11788
11788
|
const a = e.ownerDocument.createElement("div");
|
|
11789
11789
|
a.className = t, a.style.width = `${s}px`, a.innerHTML = sM, i.appendChild(a), e.appendChild(i);
|
|
11790
11790
|
try {
|
|
11791
|
-
const l = (
|
|
11792
|
-
const X = qg(e, n,
|
|
11791
|
+
const l = (W) => a.querySelector(`[data-probe="${W}"]`), c = (W) => {
|
|
11792
|
+
const X = qg(e, n, W);
|
|
11793
11793
|
if (X) return uc(X);
|
|
11794
|
-
const L = l(
|
|
11794
|
+
const L = l(W);
|
|
11795
11795
|
return L ? uc(L) : null;
|
|
11796
|
-
}, d = c("p"), f = c("h1"), u = c("h2"), h = c("h3"), p = c("ul"), g = c("ol"), v = c("li"), y = c("pre"), b = c("blockquote"), N = c("table"), S = c("th"), I = c("td"), A = c("hr"), C = (
|
|
11796
|
+
}, d = c("p"), f = c("h1"), u = c("h2"), h = c("h3"), p = c("ul"), g = c("ol"), v = c("li"), y = c("pre"), b = c("blockquote"), N = c("table"), S = c("th"), I = c("td"), A = c("hr"), C = (W) => e.querySelector(`${n} p ${W}, ${n} li ${W}`), R = C("strong") ?? l("strong"), P = C("em") ?? l("em"), z = C("a") ?? l("a"), j = C("code"), k = j ?? l("code"), O = l("rich-line");
|
|
11797
11797
|
if (O) {
|
|
11798
|
-
const
|
|
11798
|
+
const W = [e.ownerDocument.createTextNode("probe")];
|
|
11799
11799
|
for (const X of [R, j]) {
|
|
11800
11800
|
if (!X) continue;
|
|
11801
11801
|
const L = X.cloneNode(!1);
|
|
11802
|
-
L.textContent = "probe",
|
|
11802
|
+
L.textContent = "probe", W.push(L);
|
|
11803
11803
|
}
|
|
11804
|
-
|
|
11804
|
+
W.length > 1 && O.replaceChildren(...W);
|
|
11805
11805
|
}
|
|
11806
11806
|
return !d || !f || !u || !h || !p || !g || !v || !y || !b || !N || !S || !I || !A || !R || !P || !k || !z ? null : {
|
|
11807
11807
|
metricsVersion: o,
|
|
@@ -12416,9 +12416,9 @@ class _M {
|
|
|
12416
12416
|
A = k ? k.end + d : s + o;
|
|
12417
12417
|
} else if (y === l) {
|
|
12418
12418
|
let j = 0, k = v[0], O = g[0];
|
|
12419
|
-
for (let
|
|
12420
|
-
const X = v[
|
|
12421
|
-
(X < k || X === k && g[
|
|
12419
|
+
for (let W = 1; W < l; W++) {
|
|
12420
|
+
const X = v[W];
|
|
12421
|
+
(X < k || X === k && g[W] < O) && (j = W, k = X, O = g[W]);
|
|
12422
12422
|
}
|
|
12423
12423
|
I = j, A = k + d, C && this.laneAssignments.set(b, I);
|
|
12424
12424
|
} else
|
|
@@ -13790,32 +13790,32 @@ function SA({
|
|
|
13790
13790
|
const K = M.getContext("2d");
|
|
13791
13791
|
if (K) {
|
|
13792
13792
|
K.clearRect(0, 0, M.width, M.height), K.drawImage(F, 0, 0);
|
|
13793
|
-
for (const
|
|
13793
|
+
for (const H of p) $m(K, H);
|
|
13794
13794
|
b && $m(K, b);
|
|
13795
13795
|
}
|
|
13796
13796
|
}, [l, p, b]);
|
|
13797
13797
|
function k(M) {
|
|
13798
13798
|
const F = i.current;
|
|
13799
13799
|
if (!F) return { x: 0, y: 0 };
|
|
13800
|
-
const K = F.getBoundingClientRect(),
|
|
13801
|
-
return { x: (M.clientX - K.left) *
|
|
13800
|
+
const K = F.getBoundingClientRect(), H = F.width / K.width, Q = F.height / K.height;
|
|
13801
|
+
return { x: (M.clientX - K.left) * H, y: (M.clientY - K.top) * Q };
|
|
13802
13802
|
}
|
|
13803
13803
|
function O(M) {
|
|
13804
13804
|
if (!l) return;
|
|
13805
13805
|
const F = k(M);
|
|
13806
13806
|
if (d === "text") {
|
|
13807
|
-
const
|
|
13807
|
+
const H = i.current?.getBoundingClientRect();
|
|
13808
13808
|
I({
|
|
13809
13809
|
x: F.x,
|
|
13810
13810
|
y: F.y,
|
|
13811
|
-
cssLeft:
|
|
13812
|
-
cssTop:
|
|
13811
|
+
cssLeft: H ? M.clientX - H.left : 0,
|
|
13812
|
+
cssTop: H ? M.clientY - H.top : 0
|
|
13813
13813
|
}), C("");
|
|
13814
13814
|
return;
|
|
13815
13815
|
}
|
|
13816
13816
|
M.currentTarget.setPointerCapture(M.pointerId), y([]), N(d === "pen" ? { type: "path", points: [F], color: u, width: z } : { type: d, x0: F.x, y0: F.y, x1: F.x, y1: F.y, color: u, width: z });
|
|
13817
13817
|
}
|
|
13818
|
-
function
|
|
13818
|
+
function W(M) {
|
|
13819
13819
|
if (!b) return;
|
|
13820
13820
|
const F = k(M);
|
|
13821
13821
|
N((K) => K && (K.type === "path" ? { ...K, points: [...K.points, F] } : K.type === "text" ? K : { ...K, x1: F.x, y1: F.y }));
|
|
@@ -13829,7 +13829,7 @@ function SA({
|
|
|
13829
13829
|
{ type: "text", x: S.x, y: S.y, text: A.trim(), color: u, fontSize: j }
|
|
13830
13830
|
]), y([])), I(null), C("");
|
|
13831
13831
|
}
|
|
13832
|
-
function
|
|
13832
|
+
function q() {
|
|
13833
13833
|
g((M) => {
|
|
13834
13834
|
if (!M.length) return M;
|
|
13835
13835
|
const F = M[M.length - 1];
|
|
@@ -13850,8 +13850,8 @@ function SA({
|
|
|
13850
13850
|
const M = i.current;
|
|
13851
13851
|
!M || !t || (P(!0), M.toBlob((F) => {
|
|
13852
13852
|
if (P(!1), !F) return;
|
|
13853
|
-
const K = t.name.replace(/\.[^./]+$/, "") || "image",
|
|
13854
|
-
s(
|
|
13853
|
+
const K = t.name.replace(/\.[^./]+$/, "") || "image", H = new File([F], `${K}-annotated.png`, { type: "image/png" });
|
|
13854
|
+
s(H);
|
|
13855
13855
|
}, "image/png"));
|
|
13856
13856
|
}
|
|
13857
13857
|
const _ = p.length > 0;
|
|
@@ -13901,7 +13901,7 @@ function SA({
|
|
|
13901
13901
|
M
|
|
13902
13902
|
)) }),
|
|
13903
13903
|
/* @__PURE__ */ m("div", { className: "ml-auto flex items-center gap-1", children: [
|
|
13904
|
-
/* @__PURE__ */ r(Ee, { type: "button", size: "icon-sm", variant: "ghost", title: "Undo", "aria-label": "Undo", onClick:
|
|
13904
|
+
/* @__PURE__ */ r(Ee, { type: "button", size: "icon-sm", variant: "ghost", title: "Undo", "aria-label": "Undo", onClick: q, disabled: !_, children: /* @__PURE__ */ r(hv, { className: "size-4" }) }),
|
|
13905
13905
|
/* @__PURE__ */ r(
|
|
13906
13906
|
Ee,
|
|
13907
13907
|
{
|
|
@@ -13937,7 +13937,7 @@ function SA({
|
|
|
13937
13937
|
ref: i,
|
|
13938
13938
|
className: "max-h-[calc(92dvh-14rem)] max-w-full touch-none rounded-2xl",
|
|
13939
13939
|
onPointerDown: O,
|
|
13940
|
-
onPointerMove:
|
|
13940
|
+
onPointerMove: W,
|
|
13941
13941
|
onPointerUp: X,
|
|
13942
13942
|
onPointerLeave: X,
|
|
13943
13943
|
onPointerCancel: X
|
|
@@ -14223,7 +14223,7 @@ const FA = Mr(function({
|
|
|
14223
14223
|
] }) : null;
|
|
14224
14224
|
}), OA = Jn(
|
|
14225
14225
|
"session-files-panel",
|
|
14226
|
-
() => import("./SessionFilesPanel-
|
|
14226
|
+
() => import("./SessionFilesPanel-DnCnKVai.js")
|
|
14227
14227
|
);
|
|
14228
14228
|
function al({ className: e, ...t }) {
|
|
14229
14229
|
return /* @__PURE__ */ r(
|
|
@@ -14758,7 +14758,7 @@ async function xF() {
|
|
|
14758
14758
|
}
|
|
14759
14759
|
const t4 = Jn(
|
|
14760
14760
|
"StreamdownResponse",
|
|
14761
|
-
() => import("./streamdown-response-
|
|
14761
|
+
() => import("./streamdown-response-Dv9YoeCg.js").then((e) => ({ default: e.StreamdownResponse }))
|
|
14762
14762
|
);
|
|
14763
14763
|
function js({ className: e, from: t, ...n }) {
|
|
14764
14764
|
return /* @__PURE__ */ r(
|
|
@@ -16677,7 +16677,7 @@ function i3({
|
|
|
16677
16677
|
(E) => E.resetsAt != null && E.resetsAt > o && E.resetsAt !== R
|
|
16678
16678
|
).sort((E, B) => (E.resetsAt ?? 0) - (B.resetsAt ?? 0)) : [],
|
|
16679
16679
|
[A, R, o]
|
|
16680
|
-
), j = I?.members ?? [], k = A ? nh(A) : null, O = A != null && R == null && k?.pct != null,
|
|
16680
|
+
), j = I?.members ?? [], k = A ? nh(A) : null, O = A != null && R == null && k?.pct != null, W = d ? "60%" : "55%", X = k0(p, d), L = X.logo, q = X.ring, V = X.logo;
|
|
16681
16681
|
return /* @__PURE__ */ m(
|
|
16682
16682
|
"div",
|
|
16683
16683
|
{
|
|
@@ -16711,7 +16711,7 @@ function i3({
|
|
|
16711
16711
|
"div",
|
|
16712
16712
|
{
|
|
16713
16713
|
className: "pointer-events-none absolute left-1/2 z-0 -translate-x-1/2 -translate-y-1/2",
|
|
16714
|
-
style: { top:
|
|
16714
|
+
style: { top: W },
|
|
16715
16715
|
children: [
|
|
16716
16716
|
/* @__PURE__ */ r(
|
|
16717
16717
|
"div",
|
|
@@ -16740,7 +16740,7 @@ function i3({
|
|
|
16740
16740
|
"div",
|
|
16741
16741
|
{
|
|
16742
16742
|
className: "pointer-events-none absolute left-1/2 z-10 flex -translate-x-1/2 -translate-y-1/2 flex-col items-center gap-1.5 text-center",
|
|
16743
|
-
style: { top:
|
|
16743
|
+
style: { top: W },
|
|
16744
16744
|
children: [
|
|
16745
16745
|
/* @__PURE__ */ m(
|
|
16746
16746
|
"div",
|
|
@@ -16838,7 +16838,7 @@ function i3({
|
|
|
16838
16838
|
"--lfg-arc-y": `${E.y}px`,
|
|
16839
16839
|
"--lfg-arc-scale": 1,
|
|
16840
16840
|
left: `calc(50% + ${E.x}px)`,
|
|
16841
|
-
top: `calc(${
|
|
16841
|
+
top: `calc(${W} + ${E.y}px)`,
|
|
16842
16842
|
transform: "translate(-50%, -50%)",
|
|
16843
16843
|
animationDelay: `${B * 40}ms`
|
|
16844
16844
|
},
|
|
@@ -16861,7 +16861,7 @@ function i3({
|
|
|
16861
16861
|
`skeleton-${B}`
|
|
16862
16862
|
)) : null,
|
|
16863
16863
|
c.map((E, B) => {
|
|
16864
|
-
const _ = E.usage, M = g[B] ?? { x: 0, y: 0 }, F = _ ? nh(_) : null, K = F?.pct ?? (_ ? t3(_) : null),
|
|
16864
|
+
const _ = E.usage, M = g[B] ?? { x: 0, y: 0 }, F = _ ? nh(_) : null, K = F?.pct ?? (_ ? t3(_) : null), H = v === E.id, Q = v != null && !H, te = _ == null, fe = !te && !eh(_);
|
|
16865
16865
|
return /* @__PURE__ */ m(
|
|
16866
16866
|
"button",
|
|
16867
16867
|
{
|
|
@@ -16896,10 +16896,10 @@ function i3({
|
|
|
16896
16896
|
style: {
|
|
16897
16897
|
"--lfg-arc-x": `${M.x}px`,
|
|
16898
16898
|
"--lfg-arc-y": `${M.y}px`,
|
|
16899
|
-
"--lfg-arc-scale":
|
|
16899
|
+
"--lfg-arc-scale": H ? 1.07 : 1,
|
|
16900
16900
|
width: X.width,
|
|
16901
16901
|
left: `calc(50% + ${M.x}px)`,
|
|
16902
|
-
top: `calc(${
|
|
16902
|
+
top: `calc(${W} + ${M.y}px)`,
|
|
16903
16903
|
transform: "translate(-50%, -50%) scale(var(--lfg-arc-scale))",
|
|
16904
16904
|
// Emphasis: the hovered agent stays lit, the rest recede.
|
|
16905
16905
|
opacity: Q ? 0.42 : fe ? 0.62 : 1,
|
|
@@ -16919,7 +16919,7 @@ function i3({
|
|
|
16919
16919
|
// drop-shadow, not box-shadow: several agent marks are
|
|
16920
16920
|
// transparent SVGs, and a box shadow would draw a rectangle
|
|
16921
16921
|
// behind the artwork instead of tracing it.
|
|
16922
|
-
filter:
|
|
16922
|
+
filter: H ? "drop-shadow(0 0 10px rgba(255,180,90,0.5)) drop-shadow(0 6px 14px rgba(0,0,0,0.5))" : "drop-shadow(0 4px 10px rgba(0,0,0,0.4))",
|
|
16923
16923
|
transition: "filter 200ms ease-out"
|
|
16924
16924
|
}
|
|
16925
16925
|
}
|
|
@@ -16947,7 +16947,7 @@ function i3({
|
|
|
16947
16947
|
}
|
|
16948
16948
|
),
|
|
16949
16949
|
/* @__PURE__ */ m("div", { className: "flex items-center justify-center gap-1.5", children: [
|
|
16950
|
-
te ? /* @__PURE__ */ r(rh, { size:
|
|
16950
|
+
te ? /* @__PURE__ */ r(rh, { size: q, delayMs: B * 120 }) : F ? /* @__PURE__ */ r(s3, { windows: [F], size: q }) : null,
|
|
16951
16951
|
/* @__PURE__ */ r(
|
|
16952
16952
|
"span",
|
|
16953
16953
|
{
|
|
@@ -17221,27 +17221,27 @@ function v3({ className: e, isStreaming: t, children: n, ...s }) {
|
|
|
17221
17221
|
function w3({ className: e, children: t, ...n }) {
|
|
17222
17222
|
return /* @__PURE__ */ r(ul, { className: D("mt-2 text-sm", e), ...n, children: /* @__PURE__ */ r(mi, { className: "ai-live-text max-w-full opacity-90", children: t }) });
|
|
17223
17223
|
}
|
|
17224
|
-
const N3 = Jn("OmgChatEngine", () => import("./chat-engine-
|
|
17224
|
+
const N3 = Jn("OmgChatEngine", () => import("./chat-engine-D0jiOPZW.js"));
|
|
17225
17225
|
function k3() {
|
|
17226
|
-
const e = () => void import("./chat-engine-
|
|
17226
|
+
const e = () => void import("./chat-engine-D0jiOPZW.js").catch(() => {
|
|
17227
17227
|
}), t = globalThis.requestIdleCallback;
|
|
17228
17228
|
typeof t == "function" ? t(e, { timeout: 3e3 }) : setTimeout(e, 1500);
|
|
17229
17229
|
}
|
|
17230
17230
|
const E0 = Jn(
|
|
17231
17231
|
"TermView",
|
|
17232
|
-
() => import("./TermView-
|
|
17233
|
-
), oh = Jn("ShippedPage", () => import("./shipped-page-
|
|
17232
|
+
() => import("./TermView-BbBFGjMY.js").then((e) => ({ default: e.TermView }))
|
|
17233
|
+
), oh = Jn("ShippedPage", () => import("./shipped-page-D75wuNW9.js")), S3 = Jn(
|
|
17234
17234
|
"SessionTokenUsageDialog",
|
|
17235
|
-
() => import("./session-token-usage-
|
|
17235
|
+
() => import("./session-token-usage-DsXrmvML.js")
|
|
17236
17236
|
), C3 = Jn(
|
|
17237
17237
|
"CodingAgentsPage",
|
|
17238
|
-
() => import("./coding-agents-page-
|
|
17239
|
-
), E3 = Jn("ComputerPage", () => import("./computer-page-
|
|
17238
|
+
() => import("./coding-agents-page-BvjduLrc.js")
|
|
17239
|
+
), E3 = Jn("ComputerPage", () => import("./computer-page-CWaKbT-Y.js")), ih = Jn(
|
|
17240
17240
|
"ResumeSessionSheet",
|
|
17241
|
-
() => import("./resume-session-sheet-
|
|
17241
|
+
() => import("./resume-session-sheet-CuZTh28H.js")
|
|
17242
17242
|
), M3 = Jn(
|
|
17243
17243
|
"ChangelogPage",
|
|
17244
|
-
() => import("./ChangelogPage-
|
|
17244
|
+
() => import("./ChangelogPage-C5Ym3Dlx.js")
|
|
17245
17245
|
), pi = Qt("configured"), A3 = {
|
|
17246
17246
|
claude: "Claude",
|
|
17247
17247
|
codex: "Codex",
|
|
@@ -18020,8 +18020,8 @@ function yu({
|
|
|
18020
18020
|
preparing: !1
|
|
18021
18021
|
} : { preparing: !1 };
|
|
18022
18022
|
p(E.id, K);
|
|
18023
|
-
const
|
|
18024
|
-
return g(
|
|
18023
|
+
const H = { ...F, ...K };
|
|
18024
|
+
return g(H), H;
|
|
18025
18025
|
});
|
|
18026
18026
|
return S.current.set(E.id, B), B;
|
|
18027
18027
|
},
|
|
@@ -18115,7 +18115,7 @@ function yu({
|
|
|
18115
18115
|
onDrop: (E) => {
|
|
18116
18116
|
E.dataTransfer.files.length && (E.preventDefault(), l(!1), C(E.dataTransfer.files));
|
|
18117
18117
|
}
|
|
18118
|
-
},
|
|
18118
|
+
}, W = (E) => {
|
|
18119
18119
|
const B = E.clipboardData?.files;
|
|
18120
18120
|
return B?.length ? (E.preventDefault(), C(B), !0) : !1;
|
|
18121
18121
|
}, X = re(() => f.current?.click(), []), L = /* @__PURE__ */ r(
|
|
@@ -18130,7 +18130,7 @@ function yu({
|
|
|
18130
18130
|
E.target.files && C(E.target.files), E.currentTarget.value = "";
|
|
18131
18131
|
}
|
|
18132
18132
|
}
|
|
18133
|
-
),
|
|
18133
|
+
), q = /* @__PURE__ */ r(
|
|
18134
18134
|
SA,
|
|
18135
18135
|
{
|
|
18136
18136
|
open: !!c,
|
|
@@ -18179,12 +18179,12 @@ function yu({
|
|
|
18179
18179
|
forgetUpload: P,
|
|
18180
18180
|
forgetAllUploads: z,
|
|
18181
18181
|
dropZoneProps: O,
|
|
18182
|
-
onPasteFiles:
|
|
18182
|
+
onPasteFiles: W,
|
|
18183
18183
|
openFilePicker: X,
|
|
18184
18184
|
// Ready-to-render pieces: drop these into the composer markup.
|
|
18185
18185
|
fileInput: L,
|
|
18186
18186
|
chips: V,
|
|
18187
|
-
annotator:
|
|
18187
|
+
annotator: q
|
|
18188
18188
|
};
|
|
18189
18189
|
}
|
|
18190
18190
|
function Fo(e, t, n) {
|
|
@@ -18379,17 +18379,17 @@ function vT(e) {
|
|
|
18379
18379
|
const u = U(!1), h = U(null), p = U(0), g = U(null), v = U(null), y = U(null), b = re(() => {
|
|
18380
18380
|
y.current !== null && (clearTimeout(y.current), y.current = null);
|
|
18381
18381
|
const L = v.current;
|
|
18382
|
-
v.current = null, L?.getTracks().forEach((
|
|
18382
|
+
v.current = null, L?.getTracks().forEach((q) => q.stop());
|
|
18383
18383
|
}, []), N = re(() => {
|
|
18384
18384
|
v.current?.getAudioTracks().forEach((L) => L.enabled = !1), y.current !== null && clearTimeout(y.current), y.current = setTimeout(b, uh);
|
|
18385
18385
|
}, [b]), S = U(e.onText), I = U(e.onAutoSubmit), A = U(e.onInterim), C = U(e.onCancel), R = U(e.baseText ?? ""), P = U(""), z = e.silenceMs ?? 2500;
|
|
18386
18386
|
S.current = e.onText, I.current = e.onAutoSubmit, A.current = e.onInterim, C.current = e.onCancel, R.current = e.baseText ?? "";
|
|
18387
18387
|
const j = typeof navigator < "u" && !!navigator.mediaDevices?.getUserMedia, k = re(
|
|
18388
|
-
async (L = !1,
|
|
18388
|
+
async (L = !1, q = !1) => {
|
|
18389
18389
|
const V = c.current;
|
|
18390
18390
|
if (l.current !== null && cancelAnimationFrame(l.current), l.current = null, i.current = 0, a.current = 0, o(0), !V) {
|
|
18391
18391
|
if (u.current) {
|
|
18392
|
-
h.current = { auto: L, discard:
|
|
18392
|
+
h.current = { auto: L, discard: q }, g.current?.();
|
|
18393
18393
|
return;
|
|
18394
18394
|
}
|
|
18395
18395
|
n("idle");
|
|
@@ -18408,7 +18408,7 @@ function vT(e) {
|
|
|
18408
18408
|
} catch {
|
|
18409
18409
|
}
|
|
18410
18410
|
};
|
|
18411
|
-
if (
|
|
18411
|
+
if (q) {
|
|
18412
18412
|
B(), E(), C.current?.(P.current);
|
|
18413
18413
|
return;
|
|
18414
18414
|
}
|
|
@@ -18444,9 +18444,9 @@ function vT(e) {
|
|
|
18444
18444
|
return;
|
|
18445
18445
|
}
|
|
18446
18446
|
const K = new Float32Array(F);
|
|
18447
|
-
let
|
|
18447
|
+
let H = 0;
|
|
18448
18448
|
for (const Q of V.chunks)
|
|
18449
|
-
K.set(Q,
|
|
18449
|
+
K.set(Q, H), H += Q.length;
|
|
18450
18450
|
try {
|
|
18451
18451
|
const Q = await Ht("/api/voice/stt", {
|
|
18452
18452
|
method: "POST",
|
|
@@ -18461,7 +18461,7 @@ function vT(e) {
|
|
|
18461
18461
|
},
|
|
18462
18462
|
[b]
|
|
18463
18463
|
), O = re(async (L) => {
|
|
18464
|
-
const
|
|
18464
|
+
const q = L?.autoStop ?? !0;
|
|
18465
18465
|
if (c.current || u.current) return;
|
|
18466
18466
|
if (u.current = !0, h.current = null, P.current = R.current, n("starting"), Xg() === !1) {
|
|
18467
18467
|
u.current = !1, n("idle"), Ta("input");
|
|
@@ -18479,7 +18479,7 @@ function vT(e) {
|
|
|
18479
18479
|
_ = window.setTimeout(() => te(Oo), yT);
|
|
18480
18480
|
}), F = (te) => Promise.race([te, B, M]), K = () => {
|
|
18481
18481
|
clearTimeout(_), g.current === E && (g.current = null);
|
|
18482
|
-
},
|
|
18482
|
+
}, H = (te) => {
|
|
18483
18483
|
K(), u.current = !1;
|
|
18484
18484
|
const fe = h.current;
|
|
18485
18485
|
if (h.current = null, n("idle"), fe?.discard)
|
|
@@ -18512,7 +18512,7 @@ function vT(e) {
|
|
|
18512
18512
|
}
|
|
18513
18513
|
v.current = Re, N();
|
|
18514
18514
|
}).catch(() => {
|
|
18515
|
-
}),
|
|
18515
|
+
}), H(
|
|
18516
18516
|
de === Oo ? "Microphone didn't respond — check for a blocked permission prompt" : void 0
|
|
18517
18517
|
);
|
|
18518
18518
|
return;
|
|
@@ -18520,24 +18520,24 @@ function vT(e) {
|
|
|
18520
18520
|
Q = de, v.current = Q;
|
|
18521
18521
|
}
|
|
18522
18522
|
} catch (te) {
|
|
18523
|
-
|
|
18523
|
+
H(fh(te));
|
|
18524
18524
|
return;
|
|
18525
18525
|
}
|
|
18526
18526
|
if (h.current) {
|
|
18527
|
-
N(),
|
|
18527
|
+
N(), H();
|
|
18528
18528
|
return;
|
|
18529
18529
|
}
|
|
18530
18530
|
try {
|
|
18531
18531
|
if (!f.current) {
|
|
18532
18532
|
const Fe = await F(nA("input"));
|
|
18533
18533
|
if (Fe === qi || Fe === Oo) {
|
|
18534
|
-
N(),
|
|
18534
|
+
N(), H(
|
|
18535
18535
|
Fe === Oo ? "Voice setup check timed out — try again" : void 0
|
|
18536
18536
|
);
|
|
18537
18537
|
return;
|
|
18538
18538
|
}
|
|
18539
18539
|
if (!Fe) {
|
|
18540
|
-
N(),
|
|
18540
|
+
N(), H();
|
|
18541
18541
|
return;
|
|
18542
18542
|
}
|
|
18543
18543
|
}
|
|
@@ -18623,7 +18623,7 @@ function vT(e) {
|
|
|
18623
18623
|
}
|
|
18624
18624
|
I.current && Ne > fT && (be = !0, We = Date.now());
|
|
18625
18625
|
};
|
|
18626
|
-
const Ke =
|
|
18626
|
+
const Ke = q && I.current ? setInterval(() => {
|
|
18627
18627
|
!c.current || !be || Date.now() - We >= z && k(!0);
|
|
18628
18628
|
}, 200) : null;
|
|
18629
18629
|
c.current = {
|
|
@@ -18654,9 +18654,9 @@ function vT(e) {
|
|
|
18654
18654
|
const st = h.current;
|
|
18655
18655
|
st && (h.current = null, k(st.auto, st.discard));
|
|
18656
18656
|
} catch (te) {
|
|
18657
|
-
N(),
|
|
18657
|
+
N(), H(fh(te));
|
|
18658
18658
|
}
|
|
18659
|
-
}, [z, k, N]),
|
|
18659
|
+
}, [z, k, N]), W = re(() => {
|
|
18660
18660
|
t !== "transcribing" && (c.current || u.current ? k(!0) : O());
|
|
18661
18661
|
}, [t, O, k]), X = re(() => {
|
|
18662
18662
|
t !== "transcribing" && k(!1, !0);
|
|
@@ -18666,7 +18666,7 @@ function vT(e) {
|
|
|
18666
18666
|
p.current += 1, g.current?.(), b();
|
|
18667
18667
|
},
|
|
18668
18668
|
[b]
|
|
18669
|
-
), { state: t, toggle:
|
|
18669
|
+
), { state: t, toggle: W, start: O, stop: k, cancel: X, supported: j, level: s };
|
|
18670
18670
|
}
|
|
18671
18671
|
const B0 = 300, wT = 48, kc = 10, Sc = 32;
|
|
18672
18672
|
function NT({
|
|
@@ -18765,7 +18765,7 @@ const yl = ja(function({ onText: t, onAutoSubmit: n, onInterim: s, onCancel: o,
|
|
|
18765
18765
|
}
|
|
18766
18766
|
},
|
|
18767
18767
|
[u, p, k]
|
|
18768
|
-
),
|
|
18768
|
+
), W = re(
|
|
18769
18769
|
(F) => {
|
|
18770
18770
|
if (!C.current || !S.current && u !== "recording" && u !== "starting") return;
|
|
18771
18771
|
const K = I.current;
|
|
@@ -18792,7 +18792,7 @@ const yl = ja(function({ onText: t, onAutoSubmit: n, onInterim: s, onCancel: o,
|
|
|
18792
18792
|
C.current = !1, k(), z(!1);
|
|
18793
18793
|
const F = A.current;
|
|
18794
18794
|
A.current = !1, F ? (S.current = !1, v()) : S.current && (S.current = !1, g(!0));
|
|
18795
|
-
}, [g, v, k]),
|
|
18795
|
+
}, [g, v, k]), q = re(() => {
|
|
18796
18796
|
if (R.current) {
|
|
18797
18797
|
R.current = !1;
|
|
18798
18798
|
return;
|
|
@@ -18818,10 +18818,10 @@ const yl = ja(function({ onText: t, onAutoSubmit: n, onInterim: s, onCancel: o,
|
|
|
18818
18818
|
ref: j,
|
|
18819
18819
|
type: "button",
|
|
18820
18820
|
onPointerDown: O,
|
|
18821
|
-
onPointerMove:
|
|
18821
|
+
onPointerMove: W,
|
|
18822
18822
|
onPointerUp: X,
|
|
18823
18823
|
onPointerCancel: L,
|
|
18824
|
-
onClick:
|
|
18824
|
+
onClick: q,
|
|
18825
18825
|
onContextMenu: (F) => F.preventDefault(),
|
|
18826
18826
|
"aria-label": _,
|
|
18827
18827
|
"aria-busy": B,
|
|
@@ -19076,7 +19076,7 @@ function RT(e, t) {
|
|
|
19076
19076
|
b.current[M]?.some((F) => !F.seed) || (_[M] = !0);
|
|
19077
19077
|
return _;
|
|
19078
19078
|
}), !n.length) return;
|
|
19079
|
-
const O = crypto.randomUUID?.() ?? `live-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,
|
|
19079
|
+
const O = crypto.randomUUID?.() ?? `live-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`, W = performance.now(), X = /* @__PURE__ */ new Set(), L = /* @__PURE__ */ new Set(), q = /* @__PURE__ */ new Set();
|
|
19080
19080
|
kn("live_stream_client_start", { rid: O, ids: n, idsCount: n.length });
|
|
19081
19081
|
const V = new EventSource(
|
|
19082
19082
|
`/api/live/stream?ids=${n.join(",")}&rid=${encodeURIComponent(O)}&${jd}`
|
|
@@ -19084,14 +19084,14 @@ function RT(e, t) {
|
|
|
19084
19084
|
V.onopen = () => {
|
|
19085
19085
|
kn("live_stream_client_open", {
|
|
19086
19086
|
rid: O,
|
|
19087
|
-
elapsedMs: Math.round((performance.now() -
|
|
19087
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19088
19088
|
});
|
|
19089
19089
|
};
|
|
19090
19090
|
const E = window.setTimeout(() => {
|
|
19091
19091
|
kn("live_stream_client_loading_fallback", {
|
|
19092
19092
|
rid: O,
|
|
19093
19093
|
ids: [...j],
|
|
19094
|
-
elapsedMs: Math.round((performance.now() -
|
|
19094
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19095
19095
|
}), p((B) => {
|
|
19096
19096
|
let _ = !1;
|
|
19097
19097
|
const M = { ...B };
|
|
@@ -19110,14 +19110,14 @@ function RT(e, t) {
|
|
|
19110
19110
|
sid: M,
|
|
19111
19111
|
kind: F.kind,
|
|
19112
19112
|
role: F.role,
|
|
19113
|
-
elapsedMs: Math.round((performance.now() -
|
|
19114
|
-
})), p((
|
|
19115
|
-
const
|
|
19116
|
-
if (
|
|
19117
|
-
|
|
19118
|
-
}
|
|
19119
|
-
l((
|
|
19120
|
-
const Q =
|
|
19113
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19114
|
+
})), p((H) => ({ ...H, [M]: !1 })), F.id && F.kind !== "thinking") {
|
|
19115
|
+
const H = y.current[M] || (y.current[M] = /* @__PURE__ */ new Set());
|
|
19116
|
+
if (H.has(F.id)) return;
|
|
19117
|
+
H.add(F.id), H.size > 800 && (y.current[M] = new Set(Array.from(H).slice(-400)));
|
|
19118
|
+
}
|
|
19119
|
+
l((H) => {
|
|
19120
|
+
const Q = H[M] ?? [];
|
|
19121
19121
|
let te = Q;
|
|
19122
19122
|
if (F.kind === "thinking")
|
|
19123
19123
|
te = [...Q.filter((fe) => fe.kind !== "thinking"), F];
|
|
@@ -19126,13 +19126,13 @@ function RT(e, t) {
|
|
|
19126
19126
|
let de = !1;
|
|
19127
19127
|
te = fe ? Q.filter((Ue) => !Ue.pending || de || !Ws(F.text, Ue.text) ? !0 : (de = !0, !1)) : Q.filter((Ue) => !(Ue.kind === "thinking" || F.role === "assistant" && F.kind === "text" && Zo(Ue))), te = aT(te, F);
|
|
19128
19128
|
}
|
|
19129
|
-
return { ...
|
|
19129
|
+
return { ...H, [M]: Hr(te) };
|
|
19130
19130
|
});
|
|
19131
19131
|
const K = S.current;
|
|
19132
19132
|
K[M] && clearTimeout(K[M]), F.kind === "thinking" ? K[M] = setTimeout(() => {
|
|
19133
|
-
delete K[M], l((
|
|
19134
|
-
const Q =
|
|
19135
|
-
return Q?.some((te) => te.kind === "thinking") ? { ...
|
|
19133
|
+
delete K[M], l((H) => {
|
|
19134
|
+
const Q = H[M];
|
|
19135
|
+
return Q?.some((te) => te.kind === "thinking") ? { ...H, [M]: Q.filter((te) => te.kind !== "thinking") } : H;
|
|
19136
19136
|
});
|
|
19137
19137
|
}, 2500) : delete K[M];
|
|
19138
19138
|
}), V.addEventListener("ai_part", (B) => {
|
|
@@ -19143,13 +19143,13 @@ function RT(e, t) {
|
|
|
19143
19143
|
p((Q) => ({ ...Q, [M]: !1 }));
|
|
19144
19144
|
const K = S.current;
|
|
19145
19145
|
K[M] && (clearTimeout(K[M]), delete K[M]);
|
|
19146
|
-
const
|
|
19147
|
-
|
|
19146
|
+
const H = !q.has(M);
|
|
19147
|
+
q.add(M), l((Q) => {
|
|
19148
19148
|
const te = Q[M] ?? [], fe = te.find(
|
|
19149
19149
|
(we) => Zo(we) && we.id === F.id
|
|
19150
19150
|
), de = F.reset ? F.text ?? F.delta ?? "" : `${fe?.text ?? ""}${F.delta ?? ""}`;
|
|
19151
19151
|
if (!de) return Q;
|
|
19152
|
-
const Ue = F.kind ?? "text", Re = fe?.catchUp ?? (
|
|
19152
|
+
const Ue = F.kind ?? "text", Re = fe?.catchUp ?? (H && !!F.reset && de.length > I3), Ae = {
|
|
19153
19153
|
id: F.id,
|
|
19154
19154
|
role: "assistant",
|
|
19155
19155
|
kind: Ue,
|
|
@@ -19170,31 +19170,31 @@ function RT(e, t) {
|
|
|
19170
19170
|
if (!_ || !j.has(_.sid)) return;
|
|
19171
19171
|
const M = _.sid, F = Wo(Array.isArray(_.messages) ? _.messages : []);
|
|
19172
19172
|
if (!X.has(M) && F.length) {
|
|
19173
|
-
const
|
|
19173
|
+
const H = F[0];
|
|
19174
19174
|
X.add(M), kn("live_stream_client_first_msg", {
|
|
19175
19175
|
rid: O,
|
|
19176
19176
|
sid: M,
|
|
19177
|
-
kind:
|
|
19178
|
-
role:
|
|
19177
|
+
kind: H.kind,
|
|
19178
|
+
role: H.role,
|
|
19179
19179
|
batch: !0,
|
|
19180
19180
|
count: F.length,
|
|
19181
|
-
elapsedMs: Math.round((performance.now() -
|
|
19181
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19182
19182
|
});
|
|
19183
19183
|
}
|
|
19184
|
-
p((
|
|
19184
|
+
p((H) => ({ ...H, [M]: !1 }));
|
|
19185
19185
|
const K = y.current[M] || (y.current[M] = /* @__PURE__ */ new Set());
|
|
19186
|
-
for (const
|
|
19187
|
-
|
|
19188
|
-
K.size > 800 && (y.current[M] = new Set(Array.from(K).slice(-400))), v((
|
|
19189
|
-
const Q =
|
|
19190
|
-
return { ...
|
|
19186
|
+
for (const H of F)
|
|
19187
|
+
H.id && H.kind !== "thinking" && K.add(H.id);
|
|
19188
|
+
K.size > 800 && (y.current[M] = new Set(Array.from(K).slice(-400))), v((H) => ({ ...H, [M]: _.nextBefore ?? null })), l((H) => {
|
|
19189
|
+
const Q = H[M] ?? [];
|
|
19190
|
+
return { ...H, [M]: lh(Q, F) };
|
|
19191
19191
|
});
|
|
19192
19192
|
}), V.addEventListener("ready", (B) => {
|
|
19193
19193
|
const _ = Pr(B.data);
|
|
19194
19194
|
!_ || !j.has(_.sid) || (L.has(_.sid) || (L.add(_.sid), kn("live_stream_client_ready", {
|
|
19195
19195
|
rid: O,
|
|
19196
19196
|
sid: _.sid,
|
|
19197
|
-
elapsedMs: Math.round((performance.now() -
|
|
19197
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19198
19198
|
})), p((M) => ({ ...M, [_.sid]: !1 })));
|
|
19199
19199
|
}), V.addEventListener("busy", (B) => {
|
|
19200
19200
|
const _ = Pr(B.data);
|
|
@@ -19202,7 +19202,7 @@ function RT(e, t) {
|
|
|
19202
19202
|
const M = S.current[_.sid];
|
|
19203
19203
|
M && (clearTimeout(M), delete S.current[_.sid]), l((F) => {
|
|
19204
19204
|
const K = F[_.sid];
|
|
19205
|
-
return K?.some((
|
|
19205
|
+
return K?.some((H) => H.kind === "thinking") ? { ...F, [_.sid]: K.filter((H) => H.kind !== "thinking") } : F;
|
|
19206
19206
|
});
|
|
19207
19207
|
}
|
|
19208
19208
|
}), V.addEventListener("prompt", (B) => {
|
|
@@ -19219,7 +19219,7 @@ function RT(e, t) {
|
|
|
19219
19219
|
}), V.onerror = () => {
|
|
19220
19220
|
kn("live_stream_client_error", {
|
|
19221
19221
|
rid: O,
|
|
19222
|
-
elapsedMs: Math.round((performance.now() -
|
|
19222
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3
|
|
19223
19223
|
}), p((B) => {
|
|
19224
19224
|
let _ = !1;
|
|
19225
19225
|
const M = { ...B };
|
|
@@ -19230,7 +19230,7 @@ function RT(e, t) {
|
|
|
19230
19230
|
}, () => {
|
|
19231
19231
|
kn("live_stream_client_close", {
|
|
19232
19232
|
rid: O,
|
|
19233
|
-
elapsedMs: Math.round((performance.now() -
|
|
19233
|
+
elapsedMs: Math.round((performance.now() - W) * 1e3) / 1e3,
|
|
19234
19234
|
firstMsgCount: X.size,
|
|
19235
19235
|
readyCount: L.size
|
|
19236
19236
|
}), V.close(), clearTimeout(E);
|
|
@@ -19248,35 +19248,35 @@ function RT(e, t) {
|
|
|
19248
19248
|
ts: Date.now(),
|
|
19249
19249
|
pending: !0
|
|
19250
19250
|
};
|
|
19251
|
-
l((
|
|
19252
|
-
...
|
|
19251
|
+
l((W) => ({
|
|
19252
|
+
...W,
|
|
19253
19253
|
[j]: Hr([
|
|
19254
|
-
...(
|
|
19254
|
+
...(W[j] ?? []).filter((X) => X.kind !== "thinking"),
|
|
19255
19255
|
O
|
|
19256
19256
|
])
|
|
19257
|
-
})), d((
|
|
19257
|
+
})), d((W) => ({ ...W, [j]: !0 }));
|
|
19258
19258
|
}, []), A = re((j, k) => {
|
|
19259
19259
|
l((O) => {
|
|
19260
|
-
const
|
|
19260
|
+
const W = O[j] ?? [];
|
|
19261
19261
|
let X = !1;
|
|
19262
|
-
const L =
|
|
19263
|
-
return L.length ===
|
|
19262
|
+
const L = W.filter((q) => X || !q.pending || !Ws(q.text, k) ? !0 : (X = !0, !1));
|
|
19263
|
+
return L.length === W.length ? O : { ...O, [j]: L };
|
|
19264
19264
|
});
|
|
19265
19265
|
}, []), C = re(async (j, k, O = {}) => {
|
|
19266
|
-
const
|
|
19267
|
-
for (const
|
|
19268
|
-
|
|
19269
|
-
return L.size > 800 && (y.current[j] = new Set(Array.from(L).slice(-400))), p((
|
|
19270
|
-
const V =
|
|
19271
|
-
return !O.dropOptimistic || !k ? { ...
|
|
19272
|
-
...
|
|
19266
|
+
const W = await ye(Za(j)), X = Wo(Array.isArray(W.messages) ? W.messages : []), L = y.current[j] || (y.current[j] = /* @__PURE__ */ new Set());
|
|
19267
|
+
for (const q of X)
|
|
19268
|
+
q.id && q.kind !== "thinking" && L.add(q.id);
|
|
19269
|
+
return L.size > 800 && (y.current[j] = new Set(Array.from(L).slice(-400))), p((q) => ({ ...q, [j]: !1 })), l((q) => {
|
|
19270
|
+
const V = q[j] ?? [], E = lh(V, X);
|
|
19271
|
+
return !O.dropOptimistic || !k ? { ...q, [j]: E } : {
|
|
19272
|
+
...q,
|
|
19273
19273
|
[j]: E.filter((B) => !B.pending || !Ws(B.text, k))
|
|
19274
19274
|
};
|
|
19275
19275
|
}), X;
|
|
19276
19276
|
}, []), R = re(
|
|
19277
19277
|
(j, k, O) => {
|
|
19278
19278
|
(async () => {
|
|
19279
|
-
const
|
|
19279
|
+
const W = O?.id;
|
|
19280
19280
|
for (let X = 0; X < 45; X++) {
|
|
19281
19281
|
X > 0 && await new Promise((L) => window.setTimeout(L, X < 8 ? 500 : 1200));
|
|
19282
19282
|
try {
|
|
@@ -19286,9 +19286,9 @@ function RT(e, t) {
|
|
|
19286
19286
|
A(j, k);
|
|
19287
19287
|
return;
|
|
19288
19288
|
}
|
|
19289
|
-
const
|
|
19289
|
+
const q = await ye(
|
|
19290
19290
|
`/api/sessions/${encodeURIComponent(j)}/queue`
|
|
19291
|
-
), V = Array.isArray(
|
|
19291
|
+
), V = Array.isArray(q.queue) ? q.queue : [], E = (W ? V.find((B) => B.id === W) : null) ?? V.find((B) => Ws(B.text, k));
|
|
19292
19292
|
if (!E) {
|
|
19293
19293
|
await C(j, k, { dropOptimistic: !0 }).catch(() => null), A(j, k);
|
|
19294
19294
|
return;
|
|
@@ -19308,14 +19308,14 @@ function RT(e, t) {
|
|
|
19308
19308
|
if (!(j in N.current)) return !0;
|
|
19309
19309
|
const k = N.current[j];
|
|
19310
19310
|
if (k == null) return !1;
|
|
19311
|
-
const O = await ye(Ud(j, k)),
|
|
19312
|
-
if (v((L) => ({ ...L, [j]: O.nextBefore ?? null })), !
|
|
19311
|
+
const O = await ye(Ud(j, k)), W = Wo(Array.isArray(O.messages) ? O.messages : []);
|
|
19312
|
+
if (v((L) => ({ ...L, [j]: O.nextBefore ?? null })), !W.length) return (O.nextBefore ?? null) !== null;
|
|
19313
19313
|
const X = y.current[j] || (y.current[j] = /* @__PURE__ */ new Set());
|
|
19314
|
-
for (const L of
|
|
19314
|
+
for (const L of W)
|
|
19315
19315
|
L.id && L.kind !== "thinking" && X.add(L.id);
|
|
19316
19316
|
return l((L) => {
|
|
19317
|
-
const
|
|
19318
|
-
return E.length ? { ...L, [j]: [...E, ...
|
|
19317
|
+
const q = L[j] ?? [], V = new Set(q.map((B) => B.id).filter(Boolean)), E = W.filter((B) => !B.id || !V.has(B.id));
|
|
19318
|
+
return E.length ? { ...L, [j]: [...E, ...q.filter((B) => !B.seed)] } : L;
|
|
19319
19319
|
}), (O.nextBefore ?? null) !== null;
|
|
19320
19320
|
}, []), z = _e(
|
|
19321
19321
|
() => ({ ...o, ...c }),
|
|
@@ -19545,7 +19545,7 @@ function jT() {
|
|
|
19545
19545
|
x.removeEventListener("scroll", $e), window.removeEventListener("resize", $e), et.disconnect(), mt.disconnect(), ie && cancelAnimationFrame(ie), T.style.removeProperty("--lfg-mobile-header-fade-opacity"), Z.style.removeProperty("--lfg-mobile-composer-fade-opacity");
|
|
19546
19546
|
};
|
|
19547
19547
|
}, [z, k]);
|
|
19548
|
-
const [
|
|
19548
|
+
const [W, X] = w(!1), [L, q] = w([]), [V, E] = w(null), [B, _] = w(null), [M, F] = w(null), [K, H] = w(null), [Q, te] = w(null), [fe, de] = w(!1), Ue = U(!1), [Re, Ae] = w(), [we, De] = w(
|
|
19549
19549
|
() => Us()
|
|
19550
19550
|
), [be, We] = w([]), [Ke, Ze] = w([]), [st, Fe] = w(() => /* @__PURE__ */ new Set()), se = re((x) => {
|
|
19551
19551
|
const T = Bw(x);
|
|
@@ -19752,7 +19752,7 @@ function jT() {
|
|
|
19752
19752
|
version: typeof x.version == "string" ? x.version : null,
|
|
19753
19753
|
generation: op(),
|
|
19754
19754
|
bootId: typeof x.bootId == "string" ? x.bootId : null
|
|
19755
|
-
}), Ie(x.onboarding ?? null), !b && x.onboarding && !x.onboarding.completedAt && !x.users?.length && !x.sessions?.length && Ge(!0), Lt(!!x.computer),
|
|
19755
|
+
}), Ie(x.onboarding ?? null), !b && x.onboarding && !x.onboarding.completedAt && !x.users?.length && !x.sessions?.length && Ge(!0), Lt(!!x.computer), q(x.codingAgents ?? []), De(Us(x.models)), Jt(x.settings ?? {
|
|
19756
19756
|
timeZone: x.auto?.tz ?? gs,
|
|
19757
19757
|
maxLiveAgents: 16,
|
|
19758
19758
|
maxBotSchedules: 5,
|
|
@@ -20599,7 +20599,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20599
20599
|
} catch {
|
|
20600
20600
|
return;
|
|
20601
20601
|
}
|
|
20602
|
-
|
|
20602
|
+
q(Z.agents ?? []), De(Us(Z.models)), We(ie.checks ?? []);
|
|
20603
20603
|
}, []), Si = re(async () => {
|
|
20604
20604
|
try {
|
|
20605
20605
|
const x = await ye("/api/connections");
|
|
@@ -20625,7 +20625,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20625
20625
|
}
|
|
20626
20626
|
async function tb(x, T) {
|
|
20627
20627
|
const Z = L;
|
|
20628
|
-
|
|
20628
|
+
q(
|
|
20629
20629
|
(ie) => ie.map(($e) => $e.key === x ? { ...$e, visible: T } : $e)
|
|
20630
20630
|
);
|
|
20631
20631
|
try {
|
|
@@ -20634,13 +20634,13 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20634
20634
|
headers: { "Content-Type": "application/json" },
|
|
20635
20635
|
body: JSON.stringify({ visible: T })
|
|
20636
20636
|
});
|
|
20637
|
-
|
|
20637
|
+
q(ie.agents ?? []), De(Us(ie.models));
|
|
20638
20638
|
} catch (ie) {
|
|
20639
|
-
|
|
20639
|
+
q(Z), ve.error(ie instanceof Error ? ie.message : String(ie));
|
|
20640
20640
|
}
|
|
20641
20641
|
}
|
|
20642
20642
|
function Fl(x) {
|
|
20643
|
-
|
|
20643
|
+
q(
|
|
20644
20644
|
(T) => T.map(
|
|
20645
20645
|
(Z) => Z.key === x ? { ...Z, status: { ...Z.status, setupRunning: !0 } } : Z
|
|
20646
20646
|
)
|
|
@@ -20648,7 +20648,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20648
20648
|
ye(`/api/coding-agents/${x}/setup`, {
|
|
20649
20649
|
method: "POST"
|
|
20650
20650
|
}).then((T) => {
|
|
20651
|
-
|
|
20651
|
+
q(T.agents ?? []), De(Us(T.models)), window.setTimeout(() => void zn(), 3e3);
|
|
20652
20652
|
}),
|
|
20653
20653
|
{
|
|
20654
20654
|
loading: "Starting setup…",
|
|
@@ -20658,7 +20658,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20658
20658
|
);
|
|
20659
20659
|
}
|
|
20660
20660
|
async function Ci(x, T, Z, ie = {}, $e = "the provider") {
|
|
20661
|
-
F(Z ?? null), Z &&
|
|
20661
|
+
F(Z ?? null), Z && H(null), _($e);
|
|
20662
20662
|
try {
|
|
20663
20663
|
const et = await ye(T, {
|
|
20664
20664
|
method: "POST",
|
|
@@ -20667,7 +20667,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20667
20667
|
});
|
|
20668
20668
|
if (et.status === "error") throw new Error(et.error || "Couldn't start login");
|
|
20669
20669
|
if (et.status === "complete") {
|
|
20670
|
-
_(null), ve.success(`${La(et.provider)} connected`), F(null), Z &&
|
|
20670
|
+
_(null), ve.success(`${La(et.provider)} connected`), F(null), Z && H(Z), await Promise.all([
|
|
20671
20671
|
zn({ refreshModels: !0 }),
|
|
20672
20672
|
Si()
|
|
20673
20673
|
]);
|
|
@@ -20790,7 +20790,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20790
20790
|
}
|
|
20791
20791
|
async function Ol() {
|
|
20792
20792
|
const x = M;
|
|
20793
|
-
E(null), F(null), x &&
|
|
20793
|
+
E(null), F(null), x && H(x), yc(), await Promise.all([
|
|
20794
20794
|
zn({ refreshModels: !0 }),
|
|
20795
20795
|
Si()
|
|
20796
20796
|
]);
|
|
@@ -20909,7 +20909,7 @@ ${x.reasoning.map((br) => `- ${br}`).join(`
|
|
|
20909
20909
|
// composer mounted underneath means it rides the keyboard up and down (and
|
|
20910
20910
|
// repads <main> as it goes) behind the sheet — motion you can see through
|
|
20911
20911
|
// the backdrop, for a control you can't reach.
|
|
20912
|
-
!l && ke === "live", db = $l ? "pb-[calc(var(--lfg-inline-composer-height,var(--lfg-composer-clear))+var(--lfg-mobile-surface-dock-height))] [scroll-padding-bottom:calc(var(--lfg-inline-composer-height,var(--lfg-composer-clear))+var(--lfg-mobile-surface-dock-height))]" : z && (ke === "bots" || ke === "auto") ? "pb-[calc(var(--lfg-mobile-surface-dock-height)+var(--lfg-device-safe-bottom))] [scroll-padding-bottom:calc(var(--lfg-mobile-surface-dock-height)+var(--lfg-device-safe-bottom))]" : ke === "live" ?
|
|
20912
|
+
!l && ke === "live", db = $l ? "pb-[calc(var(--lfg-inline-composer-height,var(--lfg-composer-clear))+var(--lfg-mobile-surface-dock-height))] [scroll-padding-bottom:calc(var(--lfg-inline-composer-height,var(--lfg-composer-clear))+var(--lfg-mobile-surface-dock-height))]" : z && (ke === "bots" || ke === "auto") ? "pb-[calc(var(--lfg-mobile-surface-dock-height)+var(--lfg-device-safe-bottom))] [scroll-padding-bottom:calc(var(--lfg-mobile-surface-dock-height)+var(--lfg-device-safe-bottom))]" : ke === "live" ? W ? "pb-[calc(var(--lfg-inline-composer-height,var(--lfg-composer-clear))+0.75rem)] md:pb-3" : "pb-[var(--lfg-above-orb)] md:pb-3" : "pb-3", Dr = Le === "new" ? "new" : Le ? un.find((x) => x.id === Le) ?? null : null, ef = ke === "bots" && j, Mi = (ke === "live" || ef) && !Dr, Dl = Mi && j, ub = Dl || ke === "computer";
|
|
20913
20913
|
return /* @__PURE__ */ r(
|
|
20914
20914
|
pi.Provider,
|
|
20915
20915
|
{
|
|
@@ -22079,13 +22079,13 @@ function GT({
|
|
|
22079
22079
|
G(() => () => {
|
|
22080
22080
|
k && URL.revokeObjectURL(k);
|
|
22081
22081
|
}, [k]);
|
|
22082
|
-
const [O,
|
|
22082
|
+
const [O, W] = w(s);
|
|
22083
22083
|
G(() => {
|
|
22084
|
-
s.length &&
|
|
22084
|
+
s.length && W(($) => $.length ? $ : s);
|
|
22085
22085
|
}, [s]);
|
|
22086
|
-
const [X, L] = w(""), [
|
|
22086
|
+
const [X, L] = w(""), [q, V] = w(!1), [E, B] = w(() => localStorage.getItem("lfg_v2_repo") || ""), [_, M] = w(""), F = E || O[0]?.cwd || "", K = n.filter(($) => $.visible && $.status.configured), H = n.filter(
|
|
22087
22087
|
($) => !$.status.configured && $.status.canAutoSetup
|
|
22088
|
-
), Q = n.some(($) => $.status.setupRunning), te =
|
|
22088
|
+
), Q = n.some(($) => $.status.setupRunning), te = H.length > 0 && H.every(($) => v.has($.key)), fe = H.filter(
|
|
22089
22089
|
($) => v.has($.key)
|
|
22090
22090
|
).length;
|
|
22091
22091
|
G(() => {
|
|
@@ -22155,7 +22155,7 @@ function GT({
|
|
|
22155
22155
|
headers: { "Content-Type": "application/json" },
|
|
22156
22156
|
body: JSON.stringify({ url: X.trim() })
|
|
22157
22157
|
});
|
|
22158
|
-
|
|
22158
|
+
W($.repos ?? []), $.repo?.cwd && B($.repo.cwd), L("");
|
|
22159
22159
|
} catch ($) {
|
|
22160
22160
|
g($ instanceof Error ? $.message : "Clone failed");
|
|
22161
22161
|
} finally {
|
|
@@ -22173,11 +22173,11 @@ function GT({
|
|
|
22173
22173
|
}
|
|
22174
22174
|
function st() {
|
|
22175
22175
|
y(
|
|
22176
|
-
te ? /* @__PURE__ */ new Set() : new Set(
|
|
22176
|
+
te ? /* @__PURE__ */ new Set() : new Set(H.map(($) => $.key))
|
|
22177
22177
|
);
|
|
22178
22178
|
}
|
|
22179
22179
|
async function Fe() {
|
|
22180
|
-
const $ =
|
|
22180
|
+
const $ = H.filter((Ve) => v.has(Ve.key)).map((Ve) => Ve.key);
|
|
22181
22181
|
if ($.length) {
|
|
22182
22182
|
h(!0), g(null), N({ lines: [], running: !0, error: null });
|
|
22183
22183
|
try {
|
|
@@ -22310,7 +22310,7 @@ function GT({
|
|
|
22310
22310
|
/* @__PURE__ */ r("h1", { className: "text-xl font-semibold", children: "Install coding agents" }),
|
|
22311
22311
|
/* @__PURE__ */ r("p", { className: "mb-5 mt-1 text-sm text-muted-foreground", children: "Choose the agents you want, then install them together in one go. You can add more later in Settings." }),
|
|
22312
22312
|
/* @__PURE__ */ m("div", { className: "flex max-h-72 flex-col gap-2 overflow-y-auto", children: [
|
|
22313
|
-
|
|
22313
|
+
H.length > 0 && /* @__PURE__ */ m("label", { className: "flex cursor-pointer items-center gap-3 px-3 py-1 text-xs font-medium text-muted-foreground", children: [
|
|
22314
22314
|
/* @__PURE__ */ r(
|
|
22315
22315
|
"input",
|
|
22316
22316
|
{
|
|
@@ -22373,7 +22373,7 @@ function GT({
|
|
|
22373
22373
|
}
|
|
22374
22374
|
)
|
|
22375
22375
|
] }),
|
|
22376
|
-
|
|
22376
|
+
H.length > 0 && /* @__PURE__ */ m(
|
|
22377
22377
|
"button",
|
|
22378
22378
|
{
|
|
22379
22379
|
type: "button",
|
|
@@ -22477,11 +22477,11 @@ function GT({
|
|
|
22477
22477
|
/* @__PURE__ */ r(
|
|
22478
22478
|
Au,
|
|
22479
22479
|
{
|
|
22480
|
-
open:
|
|
22480
|
+
open: q,
|
|
22481
22481
|
initialPath: F || void 0,
|
|
22482
22482
|
onOpenChange: V,
|
|
22483
22483
|
onSelected: ($) => {
|
|
22484
|
-
|
|
22484
|
+
W((Ve) => [
|
|
22485
22485
|
...Ve.filter((J) => J.cwd !== $.cwd),
|
|
22486
22486
|
$
|
|
22487
22487
|
]), B($.cwd);
|
|
@@ -22490,7 +22490,7 @@ function GT({
|
|
|
22490
22490
|
B((Ve) => Ve === $ ? "" : Ve);
|
|
22491
22491
|
},
|
|
22492
22492
|
onReposChanged: ($) => {
|
|
22493
|
-
|
|
22493
|
+
W((Ve) => Ve.filter((J) => J.cwd !== $)), B((Ve) => Ve === $ ? "" : Ve);
|
|
22494
22494
|
}
|
|
22495
22495
|
}
|
|
22496
22496
|
)
|
|
@@ -22769,10 +22769,10 @@ function rI({
|
|
|
22769
22769
|
autoTriageBusy: j = !1,
|
|
22770
22770
|
onClearFindings: k,
|
|
22771
22771
|
clearFindingsBusy: O = !1,
|
|
22772
|
-
projectOptions:
|
|
22772
|
+
projectOptions: W = [],
|
|
22773
22773
|
onProjectChange: X,
|
|
22774
22774
|
onUserChange: L,
|
|
22775
|
-
onOpenSettings:
|
|
22775
|
+
onOpenSettings: q,
|
|
22776
22776
|
onOpenAsk: V,
|
|
22777
22777
|
onOpenBots: E,
|
|
22778
22778
|
onOpenSessions: B,
|
|
@@ -22780,7 +22780,7 @@ function rI({
|
|
|
22780
22780
|
railSurface: M = "sessions",
|
|
22781
22781
|
bots: F = [],
|
|
22782
22782
|
selectedBotId: K = null,
|
|
22783
|
-
onOpenBot:
|
|
22783
|
+
onOpenBot: H,
|
|
22784
22784
|
onNewBot: Q,
|
|
22785
22785
|
onEditBot: te,
|
|
22786
22786
|
onRefreshBots: fe,
|
|
@@ -22881,10 +22881,10 @@ function rI({
|
|
|
22881
22881
|
clearFindingsBusy: O,
|
|
22882
22882
|
onNew: I,
|
|
22883
22883
|
userFilter: d,
|
|
22884
|
-
projectOptions:
|
|
22884
|
+
projectOptions: W,
|
|
22885
22885
|
onProjectChange: X,
|
|
22886
22886
|
onUserChange: L,
|
|
22887
|
-
onOpenSettings:
|
|
22887
|
+
onOpenSettings: q,
|
|
22888
22888
|
onOpenAsk: V,
|
|
22889
22889
|
onOpenBots: E,
|
|
22890
22890
|
onOpenSessions: B,
|
|
@@ -22892,7 +22892,7 @@ function rI({
|
|
|
22892
22892
|
railSurface: M,
|
|
22893
22893
|
bots: F,
|
|
22894
22894
|
selectedBotId: K,
|
|
22895
|
-
onOpenBot:
|
|
22895
|
+
onOpenBot: H,
|
|
22896
22896
|
onNewBot: Q,
|
|
22897
22897
|
onEditBot: te,
|
|
22898
22898
|
onRefreshBots: fe,
|
|
@@ -23057,10 +23057,10 @@ function sI({
|
|
|
23057
23057
|
onOpenBots: k,
|
|
23058
23058
|
onOpenSessions: O = () => {
|
|
23059
23059
|
},
|
|
23060
|
-
onOpenAuto:
|
|
23060
|
+
onOpenAuto: W,
|
|
23061
23061
|
railSurface: X = "sessions",
|
|
23062
23062
|
bots: L = [],
|
|
23063
|
-
selectedBotId:
|
|
23063
|
+
selectedBotId: q = null,
|
|
23064
23064
|
onOpenBot: V,
|
|
23065
23065
|
onNewBot: E,
|
|
23066
23066
|
onEditBot: B,
|
|
@@ -23068,7 +23068,7 @@ function sI({
|
|
|
23068
23068
|
pagesMenu: M,
|
|
23069
23069
|
repos: F = [],
|
|
23070
23070
|
onReposChanged: K,
|
|
23071
|
-
hosted:
|
|
23071
|
+
hosted: H = !1,
|
|
23072
23072
|
coach: Q = null,
|
|
23073
23073
|
focus: te,
|
|
23074
23074
|
topPinned: fe,
|
|
@@ -23241,11 +23241,11 @@ function sI({
|
|
|
23241
23241
|
},
|
|
23242
23242
|
[zt]
|
|
23243
23243
|
), nn = _e(
|
|
23244
|
-
() =>
|
|
23245
|
-
[L,
|
|
23246
|
-
), _t =
|
|
23247
|
-
(ee) => ee.botId ===
|
|
23248
|
-
)?.sessionId ?? Mt(
|
|
23244
|
+
() => q ? L.find((ee) => ee.id === q) ?? null : null,
|
|
23245
|
+
[L, q]
|
|
23246
|
+
), _t = q ? Re.find(
|
|
23247
|
+
(ee) => ee.botId === q && (ee.conversationId === Ae || ee.sessionId === Ae)
|
|
23248
|
+
)?.sessionId ?? Mt(q) : null;
|
|
23249
23249
|
G(() => {
|
|
23250
23250
|
X !== "chat" || !_t || (Te((ee) => ee === _t ? ee : _t), oe(_t));
|
|
23251
23251
|
}, [X, _t]);
|
|
@@ -23627,7 +23627,7 @@ function sI({
|
|
|
23627
23627
|
}
|
|
23628
23628
|
) : null,
|
|
23629
23629
|
mr.map((ee) => {
|
|
23630
|
-
const Se = ee.bot, Me = ee.sessionId, it = ee.session, Dt = !!(Me && i[Me]), nt =
|
|
23630
|
+
const Se = ee.bot, Me = ee.sessionId, it = ee.session, Dt = !!(Me && i[Me]), nt = q === Se.id && (!Ae || Ae === ee.conversationId || Ae === ee.sessionId), rn = it?.last?.text || it?.lastUserText || ee.lastMessagePreview || Se.lastMessagePreview || "", un = bl(Cp(rn, Dt)), Ln = () => {
|
|
23631
23631
|
V?.(Se.id, ee.conversationId), Me && en(Me, !1);
|
|
23632
23632
|
}, ne = ee.unread && Me ? () => we(Me) : void 0;
|
|
23633
23633
|
return /* @__PURE__ */ r(
|
|
@@ -23693,7 +23693,7 @@ function sI({
|
|
|
23693
23693
|
M
|
|
23694
23694
|
] }) : /* @__PURE__ */ m("div", { className: "flex shrink-0 flex-col gap-2 border-b border-border px-2 py-2", children: [
|
|
23695
23695
|
/* @__PURE__ */ m("div", { className: "flex items-center gap-1.5", children: [
|
|
23696
|
-
/* @__PURE__ */ r(Su, { hosted:
|
|
23696
|
+
/* @__PURE__ */ r(Su, { hosted: H }),
|
|
23697
23697
|
le ? /* @__PURE__ */ r(
|
|
23698
23698
|
"button",
|
|
23699
23699
|
{
|
|
@@ -23707,7 +23707,7 @@ function sI({
|
|
|
23707
23707
|
) : null,
|
|
23708
23708
|
/* @__PURE__ */ m("div", { className: "ml-auto flex items-center gap-1", children: [
|
|
23709
23709
|
j ? /* @__PURE__ */ m(je, { children: [
|
|
23710
|
-
|
|
23710
|
+
H ? null : /* @__PURE__ */ r(u0, {}),
|
|
23711
23711
|
/* @__PURE__ */ r(a0, { active: !1, onOpen: j })
|
|
23712
23712
|
] }) : null,
|
|
23713
23713
|
P ? /* @__PURE__ */ r(
|
|
@@ -23721,7 +23721,7 @@ function sI({
|
|
|
23721
23721
|
M
|
|
23722
23722
|
] })
|
|
23723
23723
|
] }),
|
|
23724
|
-
/* @__PURE__ */ r(Fu, { active: X, onOpenSessions: O, onOpenBots: k, onOpenAuto:
|
|
23724
|
+
/* @__PURE__ */ r(Fu, { active: X, onOpenSessions: O, onOpenBots: k, onOpenAuto: W })
|
|
23725
23725
|
] }),
|
|
23726
23726
|
/* @__PURE__ */ r("div", { className: "session-list-scroll min-h-0 flex-1 overflow-y-auto px-1.5 py-2", children: X === "chat" ? xo : /* @__PURE__ */ m(je, { children: [
|
|
23727
23727
|
!$ && I ? /* @__PURE__ */ m(
|
|
@@ -23751,7 +23751,7 @@ function sI({
|
|
|
23751
23751
|
}
|
|
23752
23752
|
)
|
|
23753
23753
|
] }) }),
|
|
23754
|
-
|
|
23754
|
+
H ? /* @__PURE__ */ r(
|
|
23755
23755
|
"div",
|
|
23756
23756
|
{
|
|
23757
23757
|
"data-lfg-host-slot": "rail-footer",
|
|
@@ -24034,15 +24034,15 @@ const K0 = Mr(function({
|
|
|
24034
24034
|
onSwipeLeft: N
|
|
24035
24035
|
}) {
|
|
24036
24036
|
const S = U(null), I = U({ startX: 0, startY: 0, x: 0, dragging: !1, decided: !1, horizontal: !1, swiped: !1 }), [A, C] = w(!1), R = 52, P = (k) => {
|
|
24037
|
-
const O = k.touches[0],
|
|
24038
|
-
|
|
24037
|
+
const O = k.touches[0], W = S.current;
|
|
24038
|
+
W && (W.style.transition = ""), I.current = { startX: O.clientX, startY: O.clientY, x: 0, dragging: !0, decided: !1, horizontal: !1, swiped: !1 };
|
|
24039
24039
|
}, z = (k) => {
|
|
24040
24040
|
const O = I.current;
|
|
24041
24041
|
if (!O.dragging) return;
|
|
24042
|
-
const
|
|
24042
|
+
const W = k.touches[0], X = W.clientX - O.startX, L = W.clientY - O.startY;
|
|
24043
24043
|
if (!O.decided && (Math.abs(X) > 8 || Math.abs(L) > 8) && (O.decided = !0, O.horizontal = Math.abs(X) > Math.abs(L), O.horizontal && (b || N) && C(!0)), !O.horizontal) return;
|
|
24044
|
-
let
|
|
24045
|
-
|
|
24044
|
+
let q = X >= 0 ? b ? X : 0 : N ? X : 0;
|
|
24045
|
+
q = Math.max(-96, Math.min(96, q)), O.x = q, S.current && (S.current.style.transform = `translateX(${q}px)`);
|
|
24046
24046
|
}, j = () => {
|
|
24047
24047
|
const k = I.current;
|
|
24048
24048
|
k.horizontal && (k.swiped = !0, k.x >= R && b ? (Ct("selection"), b.onCommit()) : k.x <= -R && N && (Ct("selection"), N.onCommit()));
|
|
@@ -24748,9 +24748,11 @@ function bi({
|
|
|
24748
24748
|
);
|
|
24749
24749
|
G(() => N(0), [v?.query]);
|
|
24750
24750
|
const C = re((O = f.current) => {
|
|
24751
|
-
if (O
|
|
24752
|
-
|
|
24753
|
-
|
|
24751
|
+
if (!O) return;
|
|
24752
|
+
const W = O.parentElement, X = W ? W.getBoundingClientRect().height : 0, L = W?.style.height ?? "", q = W?.style.boxSizing ?? "";
|
|
24753
|
+
if (W && X > 0 && (W.style.boxSizing = "border-box", W.style.height = `${X}px`), O.style.height = "0px", O.style.height = `${O.scrollHeight}px`, W && X > 0 && (W.style.height = L, W.style.boxSizing = q), l) {
|
|
24754
|
+
const V = window.getComputedStyle(O), E = Number.parseFloat(V.lineHeight), B = Number.parseFloat(V.paddingTop) + Number.parseFloat(V.paddingBottom), _ = O.scrollHeight - B, M = Number.isFinite(E) && _ > E * 1.5;
|
|
24755
|
+
h.current !== M && (h.current = M, l(M));
|
|
24754
24756
|
}
|
|
24755
24757
|
}, [l]), R = re(
|
|
24756
24758
|
(O) => {
|
|
@@ -24771,22 +24773,22 @@ function bi({
|
|
|
24771
24773
|
}
|
|
24772
24774
|
function z(O) {
|
|
24773
24775
|
if (!v) return;
|
|
24774
|
-
const
|
|
24776
|
+
const W = f.current, X = kN(e, v, O);
|
|
24775
24777
|
t(X.value), y(null), requestAnimationFrame(() => {
|
|
24776
|
-
|
|
24778
|
+
W?.focus(), W?.setSelectionRange(X.cursor, X.cursor), C(W);
|
|
24777
24779
|
});
|
|
24778
24780
|
}
|
|
24779
24781
|
function j(O) {
|
|
24780
24782
|
if (!p) return;
|
|
24781
|
-
const
|
|
24783
|
+
const W = f.current, X = `$${O.trigger} `, L = e.slice(0, p.start) + X + e.slice(p.end), q = p.start + X.length;
|
|
24782
24784
|
t(L), g(null), requestAnimationFrame(() => {
|
|
24783
|
-
|
|
24785
|
+
W?.focus(), W?.setSelectionRange(q, q), C(W);
|
|
24784
24786
|
});
|
|
24785
24787
|
}
|
|
24786
24788
|
function k() {
|
|
24787
|
-
const O = f.current,
|
|
24788
|
-
g({ start:
|
|
24789
|
-
O?.focus(), O?.setSelectionRange(
|
|
24789
|
+
const O = f.current, W = O?.selectionStart ?? e.length;
|
|
24790
|
+
g({ start: W, end: W, query: "" }), requestAnimationFrame(() => {
|
|
24791
|
+
O?.focus(), O?.setSelectionRange(W, W);
|
|
24790
24792
|
});
|
|
24791
24793
|
}
|
|
24792
24794
|
return /* @__PURE__ */ m("div", { ref: d, className: "relative min-w-0 flex-1", children: [
|
|
@@ -24831,21 +24833,21 @@ function bi({
|
|
|
24831
24833
|
return;
|
|
24832
24834
|
}
|
|
24833
24835
|
if (v && A.length) {
|
|
24834
|
-
const
|
|
24836
|
+
const W = A.length;
|
|
24835
24837
|
if (O.key === "Escape") {
|
|
24836
24838
|
O.preventDefault(), y(null);
|
|
24837
24839
|
return;
|
|
24838
24840
|
}
|
|
24839
24841
|
if (O.key === "ArrowDown") {
|
|
24840
|
-
O.preventDefault(), N((X) => (X + 1) %
|
|
24842
|
+
O.preventDefault(), N((X) => (X + 1) % W);
|
|
24841
24843
|
return;
|
|
24842
24844
|
}
|
|
24843
24845
|
if (O.key === "ArrowUp") {
|
|
24844
|
-
O.preventDefault(), N((X) => (X - 1 +
|
|
24846
|
+
O.preventDefault(), N((X) => (X - 1 + W) % W);
|
|
24845
24847
|
return;
|
|
24846
24848
|
}
|
|
24847
24849
|
if (O.key === "Enter" || O.key === "Tab") {
|
|
24848
|
-
O.preventDefault(), z(A[Math.min(b,
|
|
24850
|
+
O.preventDefault(), z(A[Math.min(b, W - 1)]);
|
|
24849
24851
|
return;
|
|
24850
24852
|
}
|
|
24851
24853
|
}
|
|
@@ -24928,7 +24930,7 @@ function mI({
|
|
|
24928
24930
|
}) {
|
|
24929
24931
|
const h = e.sessionId, p = !!e.shippedReview, g = lu([e.sessionId, e.nativeSessionId]), { answerInSession: v } = hi(), y = h ? `session:${h}` : "session:missing", [b, N] = w(
|
|
24930
24932
|
() => Wc(y)?.text ?? ""
|
|
24931
|
-
), [S, I] = w(!1), [A, C] = w(!1), [R, P] = w(null), [z, j] = w(!1), k = U(null), [O,
|
|
24933
|
+
), [S, I] = w(!1), [A, C] = w(!1), [R, P] = w(null), [z, j] = w(!1), k = U(null), [O, W] = w(0), [X, L] = w(!1), q = yu({
|
|
24932
24934
|
endpoint: (se) => h ? p ? `/api/uploads?filename=${encodeURIComponent(se.name)}` : `/api/sessions/${h}/upload?filename=${encodeURIComponent(se.name)}` : null,
|
|
24933
24935
|
disabled: S
|
|
24934
24936
|
}), {
|
|
@@ -24938,7 +24940,7 @@ function mI({
|
|
|
24938
24940
|
removeAttachment: _,
|
|
24939
24941
|
resolveUpload: M,
|
|
24940
24942
|
forgetAllUploads: F
|
|
24941
|
-
} =
|
|
24943
|
+
} = q, [K] = w(() => new _S()), H = rS(), { messages: Q, setMessages: te, sendMessage: fe, status: de } = H, Ue = _e(() => RS(Q), [Q]), [Re, Ae] = w(!1), we = n || Re || de === "submitted" || de === "streaming", De = re(
|
|
24942
24944
|
(se) => {
|
|
24943
24945
|
N(se), h && (i?.(h, se.trim().length > 0), dg({
|
|
24944
24946
|
contextKey: y,
|
|
@@ -24958,7 +24960,7 @@ function mI({
|
|
|
24958
24960
|
);
|
|
24959
24961
|
}, [o, e]), We = re(
|
|
24960
24962
|
(se, ae) => {
|
|
24961
|
-
De(ae.trim() ? `${ae.trimEnd()} ${se}` : se),
|
|
24963
|
+
De(ae.trim() ? `${ae.trimEnd()} ${se}` : se), W((Ne) => Ne + 1);
|
|
24962
24964
|
},
|
|
24963
24965
|
[De]
|
|
24964
24966
|
);
|
|
@@ -25173,7 +25175,7 @@ function mI({
|
|
|
25173
25175
|
"form",
|
|
25174
25176
|
{
|
|
25175
25177
|
onSubmit: Ze,
|
|
25176
|
-
...
|
|
25178
|
+
...q.dropZoneProps,
|
|
25177
25179
|
className: D(
|
|
25178
25180
|
// Sit on the same surface as the chat (no card/border seam) and let
|
|
25179
25181
|
// the transcript melt into the bar via a soft gradient fade so the
|
|
@@ -25187,16 +25189,16 @@ function mI({
|
|
|
25187
25189
|
),
|
|
25188
25190
|
children: [
|
|
25189
25191
|
/* @__PURE__ */ r(yk, { participants: be }),
|
|
25190
|
-
|
|
25192
|
+
q.fileInput,
|
|
25191
25193
|
/* @__PURE__ */ r(
|
|
25192
25194
|
bu,
|
|
25193
25195
|
{
|
|
25194
25196
|
className: "mb-2",
|
|
25195
25197
|
items: V.map((se) => ({ att: se })),
|
|
25196
25198
|
disabled: S,
|
|
25197
|
-
onAnnotate:
|
|
25199
|
+
onAnnotate: q.setAnnotatingId,
|
|
25198
25200
|
onRemove: _,
|
|
25199
|
-
onToggleHd:
|
|
25201
|
+
onToggleHd: q.setAttachmentHd
|
|
25200
25202
|
}
|
|
25201
25203
|
),
|
|
25202
25204
|
/* @__PURE__ */ m(
|
|
@@ -25220,7 +25222,7 @@ function mI({
|
|
|
25220
25222
|
type: "button",
|
|
25221
25223
|
variant: B ? "brand-soft" : "tint",
|
|
25222
25224
|
className: "size-10 shrink-0 rounded-full md:size-8",
|
|
25223
|
-
onClick:
|
|
25225
|
+
onClick: q.openFilePicker,
|
|
25224
25226
|
"aria-label": "Attach files",
|
|
25225
25227
|
title: "Attach files",
|
|
25226
25228
|
disabled: S,
|
|
@@ -25236,7 +25238,7 @@ function mI({
|
|
|
25236
25238
|
onValueChange: De,
|
|
25237
25239
|
onMultilineChange: L,
|
|
25238
25240
|
scrollToEndNonce: O,
|
|
25239
|
-
onPaste:
|
|
25241
|
+
onPaste: q.onPasteFiles,
|
|
25240
25242
|
onKeyDown: (se) => {
|
|
25241
25243
|
if (!(se.key !== "Enter" || se.shiftKey)) {
|
|
25242
25244
|
if (se.preventDefault(), se.metaKey || se.ctrlKey) {
|
|
@@ -25317,7 +25319,7 @@ function mI({
|
|
|
25317
25319
|
}
|
|
25318
25320
|
) : null
|
|
25319
25321
|
),
|
|
25320
|
-
|
|
25322
|
+
q.annotator
|
|
25321
25323
|
] });
|
|
25322
25324
|
}
|
|
25323
25325
|
function Z0({
|
|
@@ -25889,13 +25891,13 @@ function xI({
|
|
|
25889
25891
|
onTogglePin: v,
|
|
25890
25892
|
onClose: y
|
|
25891
25893
|
}) {
|
|
25892
|
-
const b = yg(), [N, S] = w(null), [I, A] = w(!1), C = U(null), R = U(null), P = U(null), z = U(!1), j = U(null), k = !!o[e], O = i[e] ?? null,
|
|
25893
|
-
(
|
|
25894
|
-
if (!
|
|
25895
|
-
const te = s.indexOf(
|
|
25894
|
+
const b = yg(), [N, S] = w(null), [I, A] = w(!1), C = U(null), R = U(null), P = U(null), z = U(!1), j = U(null), k = !!o[e], O = i[e] ?? null, W = a[e] ?? U0, X = s.indexOf(e), L = X > 0 ? s[X - 1] : null, q = X >= 0 && X < s.length - 1 ? s[X + 1] : null, V = re(
|
|
25895
|
+
(H) => {
|
|
25896
|
+
if (!H || z.current) return;
|
|
25897
|
+
const te = s.indexOf(H) > X ? 1 : -1;
|
|
25896
25898
|
j.current = te, Ct("selection");
|
|
25897
25899
|
const fe = P.current;
|
|
25898
|
-
fe && (fe.getAnimations().forEach((de) => de.cancel()), fe.style.transition = "", fe.style.transform = "", fe.style.opacity = ""), d(
|
|
25900
|
+
fe && (fe.getAnimations().forEach((de) => de.cancel()), fe.style.transition = "", fe.style.transform = "", fe.style.opacity = ""), d(H);
|
|
25899
25901
|
},
|
|
25900
25902
|
[X, d, s]
|
|
25901
25903
|
);
|
|
@@ -25903,10 +25905,10 @@ function xI({
|
|
|
25903
25905
|
S(null), A(!1);
|
|
25904
25906
|
}, [e]);
|
|
25905
25907
|
const E = re(
|
|
25906
|
-
async (
|
|
25908
|
+
async (H) => {
|
|
25907
25909
|
S(null), A(!1);
|
|
25908
25910
|
try {
|
|
25909
|
-
await h(e,
|
|
25911
|
+
await h(e, H), ve.success("Session renamed");
|
|
25910
25912
|
} catch (Q) {
|
|
25911
25913
|
throw S(Q instanceof Error ? Q.message : String(Q)), A(!0), Q;
|
|
25912
25914
|
}
|
|
@@ -25917,7 +25919,7 @@ function xI({
|
|
|
25917
25919
|
B.current.add(e), IT(e);
|
|
25918
25920
|
}, [e]), G(() => (bp(e), () => yp(e)), [e]), G(
|
|
25919
25921
|
() => () => {
|
|
25920
|
-
for (const
|
|
25922
|
+
for (const H of B.current) _T(H);
|
|
25921
25923
|
},
|
|
25922
25924
|
[]
|
|
25923
25925
|
);
|
|
@@ -25927,14 +25929,14 @@ function xI({
|
|
|
25927
25929
|
_.current = !1;
|
|
25928
25930
|
return;
|
|
25929
25931
|
}
|
|
25930
|
-
const
|
|
25931
|
-
if (!
|
|
25932
|
+
const H = P.current;
|
|
25933
|
+
if (!H) return;
|
|
25932
25934
|
const Q = j.current;
|
|
25933
25935
|
j.current = null;
|
|
25934
25936
|
const te = window.matchMedia?.("(prefers-reduced-motion: reduce)").matches ?? !1;
|
|
25935
25937
|
if (!Q || te) return;
|
|
25936
25938
|
const fe = Q === 1 ? 18 : -18;
|
|
25937
|
-
|
|
25939
|
+
H.getAnimations().forEach((de) => de.cancel()), H.style.transition = "", H.style.transform = "", H.animate(
|
|
25938
25940
|
[
|
|
25939
25941
|
{ opacity: 0, transform: `translateX(${fe}px)` },
|
|
25940
25942
|
{ opacity: 1, transform: "translateX(0px)" }
|
|
@@ -25943,12 +25945,12 @@ function xI({
|
|
|
25943
25945
|
);
|
|
25944
25946
|
}, [e]), G(() => {
|
|
25945
25947
|
if (!b.swipeBetweenChats) return;
|
|
25946
|
-
const
|
|
25947
|
-
if (!
|
|
25948
|
+
const H = P.current;
|
|
25949
|
+
if (!H) return;
|
|
25948
25950
|
const Q = 60, te = { active: !1, decided: !1, horizontal: !1, x0: 0, y0: 0, dx: 0 }, fe = (we) => {
|
|
25949
|
-
|
|
25951
|
+
H.style.transition = "none", H.style.transform = we ? `translateX(${we}px)` : "";
|
|
25950
25952
|
}, de = (we) => {
|
|
25951
|
-
|
|
25953
|
+
H.style.transition = "transform 180ms cubic-bezier(0.22,1,0.36,1)", H.style.transform = "";
|
|
25952
25954
|
}, Ue = (we) => {
|
|
25953
25955
|
if (z.current || we.touches.length !== 1) return;
|
|
25954
25956
|
if (!!(we.target instanceof Element ? we.target : null)?.closest("form")) {
|
|
@@ -25969,28 +25971,28 @@ function xI({
|
|
|
25969
25971
|
}
|
|
25970
25972
|
if (!te.horizontal) return;
|
|
25971
25973
|
we.preventDefault(), te.dx = be;
|
|
25972
|
-
const Ke = be > 0 ? !L : !
|
|
25974
|
+
const Ke = be > 0 ? !L : !q;
|
|
25973
25975
|
fe(be * (Ke ? 0.18 : 0.5));
|
|
25974
25976
|
}, Ae = () => {
|
|
25975
25977
|
if (!te.active) return;
|
|
25976
25978
|
const { horizontal: we, dx: De } = te;
|
|
25977
25979
|
if (te.active = !1, !we) return;
|
|
25978
|
-
const be = De > Q ? L : De < -Q ?
|
|
25980
|
+
const be = De > Q ? L : De < -Q ? q : null;
|
|
25979
25981
|
be ? V(be) : de();
|
|
25980
25982
|
};
|
|
25981
|
-
return
|
|
25982
|
-
|
|
25983
|
+
return H.addEventListener("touchstart", Ue, { passive: !0 }), H.addEventListener("touchmove", Re, { passive: !1 }), H.addEventListener("touchend", Ae, { passive: !0 }), H.addEventListener("touchcancel", Ae, { passive: !0 }), () => {
|
|
25984
|
+
H.removeEventListener("touchstart", Ue), H.removeEventListener("touchmove", Re), H.removeEventListener("touchend", Ae), H.removeEventListener("touchcancel", Ae);
|
|
25983
25985
|
};
|
|
25984
|
-
}, [V, b.swipeBetweenChats, L,
|
|
25986
|
+
}, [V, b.swipeBetweenChats, L, q]);
|
|
25985
25987
|
const M = re(() => {
|
|
25986
|
-
const
|
|
25988
|
+
const H = window.innerWidth || 1, Q = window.innerHeight || 1, te = Math.max(c.width / H, 1e-4), fe = Math.max(c.height / Q, 1e-4);
|
|
25987
25989
|
return `translate(${c.left}px, ${c.top}px) scale(${te}, ${fe})`;
|
|
25988
25990
|
}, [c]);
|
|
25989
25991
|
Wt(() => {
|
|
25990
|
-
const
|
|
25991
|
-
if (!
|
|
25992
|
+
const H = C.current, Q = R.current, te = P.current;
|
|
25993
|
+
if (!H) return;
|
|
25992
25994
|
const fe = M();
|
|
25993
|
-
|
|
25995
|
+
H.animate(
|
|
25994
25996
|
[
|
|
25995
25997
|
{ transform: fe, borderRadius: "16px", opacity: 0.55 },
|
|
25996
25998
|
{ transform: "translate(0px,0px) scale(1,1)", borderRadius: "0px", opacity: 1 }
|
|
@@ -26012,13 +26014,13 @@ function xI({
|
|
|
26012
26014
|
const F = re(() => {
|
|
26013
26015
|
if (z.current) return;
|
|
26014
26016
|
z.current = !0, Ct("selection");
|
|
26015
|
-
const
|
|
26017
|
+
const H = C.current, Q = R.current, te = P.current, fe = M();
|
|
26016
26018
|
let de = !1;
|
|
26017
26019
|
const Ue = () => {
|
|
26018
26020
|
de || (de = !0, y());
|
|
26019
26021
|
};
|
|
26020
|
-
if (
|
|
26021
|
-
const Re =
|
|
26022
|
+
if (H) {
|
|
26023
|
+
const Re = H.animate(
|
|
26022
26024
|
[
|
|
26023
26025
|
{ transform: "translate(0px,0px) scale(1,1)", borderRadius: "0px", opacity: 1 },
|
|
26024
26026
|
{ transform: fe, borderRadius: "16px", opacity: 0.55 }
|
|
@@ -26039,10 +26041,10 @@ function xI({
|
|
|
26039
26041
|
});
|
|
26040
26042
|
}, [M, y]);
|
|
26041
26043
|
G(() => {
|
|
26042
|
-
const
|
|
26043
|
-
if (!
|
|
26044
|
+
const H = C.current;
|
|
26045
|
+
if (!H) return;
|
|
26044
26046
|
const Q = { active: !1, decided: !1, dismissing: !1, x0: 0, y0: 0, y: 0, t0: 0 }, te = (Ae, we = !1) => {
|
|
26045
|
-
|
|
26047
|
+
H.style.transition = we ? "transform 180ms cubic-bezier(0.22,1,0.36,1), opacity 180ms ease" : "none", H.style.transform = Ae ? `translate3d(0, ${Ae}px, 0)` : "", H.style.opacity = Ae ? `${1 - Math.min(0.16, Math.abs(Ae) / 1200)}` : "";
|
|
26046
26048
|
}, fe = () => {
|
|
26047
26049
|
if (z.current) return;
|
|
26048
26050
|
z.current = !0, Ct("selection");
|
|
@@ -26051,15 +26053,15 @@ function xI({
|
|
|
26051
26053
|
const be = () => {
|
|
26052
26054
|
De || (De = !0, y());
|
|
26053
26055
|
};
|
|
26054
|
-
|
|
26056
|
+
H.getAnimations().forEach((Ke) => Ke.cancel()), H.style.transition = "transform 300ms cubic-bezier(0.32,0.72,0,1), opacity 220ms ease-out", H.style.transform = "translate3d(0, -105%, 0)", H.style.opacity = "0.92";
|
|
26055
26057
|
const We = (Ke) => {
|
|
26056
|
-
Ke.propertyName === "transform" && (
|
|
26058
|
+
Ke.propertyName === "transform" && (H.removeEventListener("transitionend", We), be());
|
|
26057
26059
|
};
|
|
26058
|
-
|
|
26060
|
+
H.addEventListener("transitionend", We), window.setTimeout(be, 340), Ae && (Ae.style.transition = "opacity 240ms ease-out", Ae.style.opacity = "0"), we && (we.style.transition = "transform 260ms cubic-bezier(0.32,0.72,0,1), opacity 180ms ease-out", we.style.transform = "translate3d(0, -18px, 0)", we.style.opacity = "0");
|
|
26059
26061
|
}, de = (Ae) => {
|
|
26060
26062
|
if (z.current || Ae.touches.length !== 1 || !Ae.target?.closest("form")) return;
|
|
26061
26063
|
const De = Ae.touches[0];
|
|
26062
|
-
Q.active = !0, Q.decided = !1, Q.dismissing = !1, Q.x0 = De.clientX, Q.y0 = De.clientY, Q.y = 0, Q.t0 = performance.now(),
|
|
26064
|
+
Q.active = !0, Q.decided = !1, Q.dismissing = !1, Q.x0 = De.clientX, Q.y0 = De.clientY, Q.y = 0, Q.t0 = performance.now(), H.getAnimations().forEach((be) => {
|
|
26063
26065
|
be.playState !== "finished" && be.cancel();
|
|
26064
26066
|
}), te(0);
|
|
26065
26067
|
}, Ue = (Ae) => {
|
|
@@ -26089,27 +26091,27 @@ function xI({
|
|
|
26089
26091
|
De && (De.style.transition = "opacity 180ms ease", De.style.opacity = "", window.setTimeout(() => {
|
|
26090
26092
|
De.style.transition = "";
|
|
26091
26093
|
}, 200)), window.setTimeout(() => {
|
|
26092
|
-
|
|
26094
|
+
H.style.transition = "", H.style.transform = "", H.style.opacity = "";
|
|
26093
26095
|
}, 200);
|
|
26094
26096
|
};
|
|
26095
|
-
return
|
|
26096
|
-
|
|
26097
|
+
return H.addEventListener("touchstart", de, { passive: !0 }), H.addEventListener("touchmove", Ue, { passive: !1 }), H.addEventListener("touchend", Re, { passive: !0 }), H.addEventListener("touchcancel", Re, { passive: !0 }), () => {
|
|
26098
|
+
H.removeEventListener("touchstart", de), H.removeEventListener("touchmove", Ue), H.removeEventListener("touchend", Re), H.removeEventListener("touchcancel", Re);
|
|
26097
26099
|
};
|
|
26098
26100
|
}, [y]), G(() => {
|
|
26099
|
-
const
|
|
26101
|
+
const H = (te) => {
|
|
26100
26102
|
if (te.key === "Escape") {
|
|
26101
26103
|
if (I) return;
|
|
26102
26104
|
F();
|
|
26103
26105
|
return;
|
|
26104
26106
|
}
|
|
26105
|
-
ks(te.target) || ks() || I || (te.key === "ArrowLeft" || te.key === "ArrowUp" ? (te.preventDefault(), V(L)) : (te.key === "ArrowRight" || te.key === "ArrowDown") && (te.preventDefault(), V(
|
|
26107
|
+
ks(te.target) || ks() || I || (te.key === "ArrowLeft" || te.key === "ArrowUp" ? (te.preventDefault(), V(L)) : (te.key === "ArrowRight" || te.key === "ArrowDown") && (te.preventDefault(), V(q)));
|
|
26106
26108
|
};
|
|
26107
|
-
document.addEventListener("keydown",
|
|
26109
|
+
document.addEventListener("keydown", H);
|
|
26108
26110
|
const Q = document.body.style.overflow;
|
|
26109
26111
|
return document.body.style.overflow = "hidden", () => {
|
|
26110
|
-
document.removeEventListener("keydown",
|
|
26112
|
+
document.removeEventListener("keydown", H), document.body.style.overflow = Q;
|
|
26111
26113
|
};
|
|
26112
|
-
}, [F, V, L,
|
|
26114
|
+
}, [F, V, L, q, I]);
|
|
26113
26115
|
const K = Wr(t);
|
|
26114
26116
|
return es(
|
|
26115
26117
|
/* @__PURE__ */ m(
|
|
@@ -26179,7 +26181,7 @@ function xI({
|
|
|
26179
26181
|
children: /* @__PURE__ */ r(hI, { title: K })
|
|
26180
26182
|
}
|
|
26181
26183
|
),
|
|
26182
|
-
/* @__PURE__ */ r(sx, { session: t, typingIds:
|
|
26184
|
+
/* @__PURE__ */ r(sx, { session: t, typingIds: W }),
|
|
26183
26185
|
t.shippedReview ? /* @__PURE__ */ r("span", { className: "shrink-0 rounded-full bg-emerald-500/10 px-2 py-0.5 text-[10px] font-semibold text-emerald-600 dark:text-emerald-400", children: "Shipped" }) : null,
|
|
26184
26186
|
/* @__PURE__ */ r(
|
|
26185
26187
|
tx,
|
|
@@ -26205,7 +26207,7 @@ function xI({
|
|
|
26205
26207
|
session: t,
|
|
26206
26208
|
busy: k,
|
|
26207
26209
|
prompt: O,
|
|
26208
|
-
typingIds:
|
|
26210
|
+
typingIds: W,
|
|
26209
26211
|
onTyping: l,
|
|
26210
26212
|
error: N,
|
|
26211
26213
|
onError: S,
|
|
@@ -26264,15 +26266,15 @@ function rx({
|
|
|
26264
26266
|
return;
|
|
26265
26267
|
}
|
|
26266
26268
|
localStorage.setItem("lfg_fork_agent", u), localStorage.setItem(`lfg_fork_model_${u}`, v), R.length && localStorage.setItem("lfg_thinking_level", b);
|
|
26267
|
-
const
|
|
26269
|
+
const W = (O ?? S).trim(), X = z.attachments;
|
|
26268
26270
|
n(), ve.promise(
|
|
26269
26271
|
(async () => {
|
|
26270
|
-
const L = X.length ? await Promise.all(X.map(z.resolveUpload)) : [],
|
|
26272
|
+
const L = X.length ? await Promise.all(X.map(z.resolveUpload)) : [], q = za(W, L);
|
|
26271
26273
|
return ye(`/api/sessions/${A}/fork`, {
|
|
26272
26274
|
method: "POST",
|
|
26273
26275
|
headers: { "Content-Type": "application/json" },
|
|
26274
26276
|
body: JSON.stringify({
|
|
26275
|
-
prompt:
|
|
26277
|
+
prompt: q || void 0,
|
|
26276
26278
|
user: e.assignedUser || void 0,
|
|
26277
26279
|
agent: u,
|
|
26278
26280
|
model: v,
|
|
@@ -26346,8 +26348,8 @@ function rx({
|
|
|
26346
26348
|
onText: (k, O) => I(O.trim() ? `${O.trimEnd()} ${k}` : k),
|
|
26347
26349
|
onInterim: (k, O) => I(O.trim() ? `${O.trimEnd()} ${k}` : k),
|
|
26348
26350
|
onAutoSubmit: (k, O) => {
|
|
26349
|
-
const
|
|
26350
|
-
I(
|
|
26351
|
+
const W = O.trim() ? `${O.trimEnd()} ${k}` : k;
|
|
26352
|
+
I(W), j(void 0, W);
|
|
26351
26353
|
},
|
|
26352
26354
|
onCancel: (k) => I(k)
|
|
26353
26355
|
}
|
|
@@ -26440,7 +26442,7 @@ const yI = Mr(function({
|
|
|
26440
26442
|
onTogglePin: N,
|
|
26441
26443
|
stageBotId: S
|
|
26442
26444
|
}) {
|
|
26443
|
-
const I = ou(), A = ss(), C = is(), [R, P] = w(null), [z, j] = w(!1), k = xt(ur), O = gp(t, S),
|
|
26445
|
+
const I = ou(), A = ss(), C = is(), [R, P] = w(null), [z, j] = w(!1), k = xt(ur), O = gp(t, S), W = O ? k.get(O) ?? null : null, X = xt(I0), L = t.sessionId, q = lu([t.sessionId, t.nativeSessionId]), V = q.length > 0, E = re(() => {
|
|
26444
26446
|
L && (Ct("selection"), j(!0));
|
|
26445
26447
|
}, [L]), B = re(
|
|
26446
26448
|
async (J) => {
|
|
@@ -26479,7 +26481,7 @@ const yI = Mr(function({
|
|
|
26479
26481
|
const oe = window.setTimeout(() => J.classList.remove("lfg-card-focus-glow"), 2e3);
|
|
26480
26482
|
return () => window.clearTimeout(oe);
|
|
26481
26483
|
}, [y]);
|
|
26482
|
-
const [K,
|
|
26484
|
+
const [K, H] = w(!1), Q = U(null), [te, fe] = w(44), [de, Ue] = w(!1), [Re, Ae] = w(null), [we, De] = w(!1), be = U({
|
|
26483
26485
|
startX: 0,
|
|
26484
26486
|
startY: 0,
|
|
26485
26487
|
x: 0,
|
|
@@ -26672,7 +26674,7 @@ const yI = Mr(function({
|
|
|
26672
26674
|
!C && !t.shippedReview && "cursor-text rounded-md hover:bg-muted/50"
|
|
26673
26675
|
),
|
|
26674
26676
|
children: /* @__PURE__ */ m("div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
26675
|
-
/* @__PURE__ */ r("div", { className: "truncate text-[15px] font-semibold leading-tight", children:
|
|
26677
|
+
/* @__PURE__ */ r("div", { className: "truncate text-[15px] font-semibold leading-tight", children: W ? W.name : Wr(t) }),
|
|
26676
26678
|
C && M ? /* @__PURE__ */ r("div", { className: "truncate text-[11px] leading-tight text-muted-foreground", children: M }) : null
|
|
26677
26679
|
] })
|
|
26678
26680
|
}
|
|
@@ -26680,7 +26682,7 @@ const yI = Mr(function({
|
|
|
26680
26682
|
V ? /* @__PURE__ */ m(
|
|
26681
26683
|
"span",
|
|
26682
26684
|
{
|
|
26683
|
-
title:
|
|
26685
|
+
title: q.length === 1 ? "This session is waiting for your answer" : `${q.length} questions are waiting for your answer`,
|
|
26684
26686
|
className: "flex shrink-0 items-center gap-1 rounded-full bg-primary/12 px-2 py-0.5 text-[10px] font-semibold text-primary",
|
|
26685
26687
|
children: [
|
|
26686
26688
|
/* @__PURE__ */ r(Nd, { className: "size-3" }),
|
|
@@ -26697,19 +26699,19 @@ const yI = Mr(function({
|
|
|
26697
26699
|
children: /* @__PURE__ */ r(vr, { className: "size-3.5", fill: "currentColor" })
|
|
26698
26700
|
}
|
|
26699
26701
|
) : null,
|
|
26700
|
-
|
|
26701
|
-
!Ve &&
|
|
26702
|
+
W ? null : /* @__PURE__ */ r(sx, { session: t, typingIds: a }),
|
|
26703
|
+
!Ve && W && X ? /* @__PURE__ */ r(
|
|
26702
26704
|
gd,
|
|
26703
26705
|
{
|
|
26704
|
-
bot:
|
|
26706
|
+
bot: W,
|
|
26705
26707
|
runtimeHealthy: !0,
|
|
26706
26708
|
busy: o,
|
|
26707
|
-
onEdit: () => X(
|
|
26709
|
+
onEdit: () => X(W),
|
|
26708
26710
|
onRefresh: d
|
|
26709
26711
|
}
|
|
26710
26712
|
) : null,
|
|
26711
|
-
!Ve && !
|
|
26712
|
-
!Ve && !
|
|
26713
|
+
!Ve && !W && t.botId && t.botName ? /* @__PURE__ */ r(C_, { session: t }) : null,
|
|
26714
|
+
!Ve && !W && ((t.agent === "claude" || t.agent === "opencode") && (t.tmuxTarget || t.agent === "opencode") && L ? /* @__PURE__ */ m(Ar, { children: [
|
|
26713
26715
|
/* @__PURE__ */ r(
|
|
26714
26716
|
Tr,
|
|
26715
26717
|
{
|
|
@@ -26765,11 +26767,11 @@ const yI = Mr(function({
|
|
|
26765
26767
|
{
|
|
26766
26768
|
paused: t.status === "blocked",
|
|
26767
26769
|
className: "lg:hidden",
|
|
26768
|
-
variant:
|
|
26770
|
+
variant: W ? "avatar" : "inline"
|
|
26769
26771
|
}
|
|
26770
26772
|
)
|
|
26771
26773
|
),
|
|
26772
|
-
!Ve && !
|
|
26774
|
+
!Ve && !W && /* @__PURE__ */ r(
|
|
26773
26775
|
tx,
|
|
26774
26776
|
{
|
|
26775
26777
|
session: t,
|
|
@@ -26800,7 +26802,7 @@ const yI = Mr(function({
|
|
|
26800
26802
|
Mu,
|
|
26801
26803
|
{
|
|
26802
26804
|
session: t,
|
|
26803
|
-
bot:
|
|
26805
|
+
bot: W ?? void 0,
|
|
26804
26806
|
busy: o,
|
|
26805
26807
|
prompt: i,
|
|
26806
26808
|
typingIds: a,
|
|
@@ -26809,7 +26811,7 @@ const yI = Mr(function({
|
|
|
26809
26811
|
onError: P,
|
|
26810
26812
|
onSubscribeTranscript: c,
|
|
26811
26813
|
onRefresh: d,
|
|
26812
|
-
onDictatingChange:
|
|
26814
|
+
onDictatingChange: H
|
|
26813
26815
|
}
|
|
26814
26816
|
)
|
|
26815
26817
|
]
|
|
@@ -26851,13 +26853,13 @@ const yI = Mr(function({
|
|
|
26851
26853
|
);
|
|
26852
26854
|
},
|
|
26853
26855
|
[n, l]
|
|
26854
|
-
),
|
|
26856
|
+
), W = _e(
|
|
26855
26857
|
() => KM(O, f.value),
|
|
26856
26858
|
[O, f.value]
|
|
26857
26859
|
), { items: X, queued: L } = _e(
|
|
26858
|
-
() => yS(Pd(
|
|
26859
|
-
[
|
|
26860
|
-
),
|
|
26860
|
+
() => yS(Pd(W)),
|
|
26861
|
+
[W]
|
|
26862
|
+
), q = _e(() => X.map(iT), [X]), V = X[X.length - 1], E = V?.type === "msg" ? V.message : void 0, B = s && E?.kind !== "thinking", _ = U(null), [M, F] = w(0), K = yM(d, X.length), H = U(/* @__PURE__ */ new Map());
|
|
26861
26863
|
G(() => {
|
|
26862
26864
|
Fm();
|
|
26863
26865
|
}, []);
|
|
@@ -26874,16 +26876,16 @@ const yI = Mr(function({
|
|
|
26874
26876
|
(ce) => {
|
|
26875
26877
|
const me = X[ce];
|
|
26876
26878
|
if (!me) return Ag + Kd;
|
|
26877
|
-
const Le = ce > 0 && xf(
|
|
26879
|
+
const Le = ce > 0 && xf(q, ce).firstOfRun;
|
|
26878
26880
|
if (!Q)
|
|
26879
26881
|
return u5(me, Le);
|
|
26880
|
-
const Ye = me.type === "tools" ? "" : me.message.text ?? "", pt = `${me.key}|${K.version}|${e5}|${Le ? 1 : 0}|${Ye.length}`, At =
|
|
26882
|
+
const Ye = me.type === "tools" ? "" : me.message.text ?? "", pt = `${me.key}|${K.version}|${e5}|${Le ? 1 : 0}|${Ye.length}`, At = H.current, en = At.get(pt);
|
|
26881
26883
|
if (en != null) return en;
|
|
26882
26884
|
At.size > 8e3 && At.clear();
|
|
26883
26885
|
const yn = d5(me, { ...Q, speakerChanged: Le });
|
|
26884
26886
|
return At.set(pt, yn), yn;
|
|
26885
26887
|
},
|
|
26886
|
-
[X,
|
|
26888
|
+
[X, q, Q, K.version]
|
|
26887
26889
|
), fe = re(
|
|
26888
26890
|
(ce) => {
|
|
26889
26891
|
const me = Vg(ce), Le = Math.max(0, X.length - vI);
|
|
@@ -26925,13 +26927,13 @@ const yI = Mr(function({
|
|
|
26925
26927
|
), We = U(/* @__PURE__ */ new Set()), Ke = U(/* @__PURE__ */ new Map()), Ze = U(null);
|
|
26926
26928
|
if (Ze.current !== t)
|
|
26927
26929
|
Ze.current = t, We.current = new Set(
|
|
26928
|
-
|
|
26930
|
+
W.filter((ce) => ce.id && ch(ce)).map((ce) => ce.id)
|
|
26929
26931
|
), Ke.current = /* @__PURE__ */ new Map();
|
|
26930
26932
|
else {
|
|
26931
26933
|
const ce = Date.now();
|
|
26932
26934
|
for (const [me, Le] of Ke.current)
|
|
26933
26935
|
Le <= ce && Ke.current.delete(me);
|
|
26934
|
-
for (const me of
|
|
26936
|
+
for (const me of W)
|
|
26935
26937
|
!me.id || !ch(me) || We.current.has(me.id) || (We.current.add(me.id), s && Ke.current.set(me.id, ce + 500));
|
|
26936
26938
|
}
|
|
26937
26939
|
const st = U(!1), Fe = U(null), se = U(sm()), ae = U(null), Ne = U(u), Te = U(!0), $ = re(() => {
|
|
@@ -27096,7 +27098,7 @@ const yI = Mr(function({
|
|
|
27096
27098
|
Y
|
|
27097
27099
|
);
|
|
27098
27100
|
}, [oe, jn, Y, Pt]), G(() => Ti, []), Wt(() => {
|
|
27099
|
-
h(!0), Ne.current = !0, I(!0), R.current = null, P.current = null, j.current = !1, k.current = Number.NEGATIVE_INFINITY,
|
|
27101
|
+
h(!0), Ne.current = !0, I(!0), R.current = null, P.current = null, j.current = !1, k.current = Number.NEGATIVE_INFINITY, H.current.clear(), ae.current = null, Te.current = !0, $(), z.current = 0;
|
|
27100
27102
|
}, [t, $]), Wt(() => {
|
|
27101
27103
|
if (o || v === t) return;
|
|
27102
27104
|
const ce = requestAnimationFrame(() => {
|
|
@@ -27142,7 +27144,7 @@ const yI = Mr(function({
|
|
|
27142
27144
|
running: Fe.current != null
|
|
27143
27145
|
});
|
|
27144
27146
|
Xt === "start" ? J(ce) : Xt === "snap" && ($(), ce.scrollTop = dn, z.current = ce.scrollTop, j.current = !1);
|
|
27145
|
-
}, [
|
|
27147
|
+
}, [W, s, u, X.length, B, Ae, p, v, t, J, $]), Wt(() => {
|
|
27146
27148
|
const ce = _.current, me = ce ? ce.offsetTop : 0;
|
|
27147
27149
|
F((Le) => Le === me ? Le : me);
|
|
27148
27150
|
}, [b, X.length > 0, s]), Wt(() => {
|
|
@@ -27166,7 +27168,7 @@ const yI = Mr(function({
|
|
|
27166
27168
|
if (en == null) return;
|
|
27167
27169
|
const yn = Math.max(0, Math.min(en, ce.scrollHeight - ce.clientHeight));
|
|
27168
27170
|
Math.abs(yn - ce.scrollTop) > 0.5 && (ce.scrollTop = yn), z.current = ce.scrollTop, j.current = !1, P.current = { key: Ye.anchorKey, offset: Ye.anchorOffset };
|
|
27169
|
-
}, [
|
|
27171
|
+
}, [W, Ae, u, we, de]);
|
|
27170
27172
|
const Un = re(async (ce) => {
|
|
27171
27173
|
const me = d.current;
|
|
27172
27174
|
if (!(!t || !me || b || !S)) {
|
|
@@ -27191,8 +27193,8 @@ const yI = Mr(function({
|
|
|
27191
27193
|
}, [t]), G(() => {
|
|
27192
27194
|
if (o || b || !S || !t) return;
|
|
27193
27195
|
const ce = d.current;
|
|
27194
|
-
!ce || !
|
|
27195
|
-
}, [o, b, S, t,
|
|
27196
|
+
!ce || !W.length || ke.current !== W.length && Wf(ce) === "backfill" && (ke.current = W.length, Un("backfill"));
|
|
27197
|
+
}, [o, b, S, t, W, Ae, Un]), /* @__PURE__ */ m("div", { className: "relative flex min-h-0 flex-1 flex-col", children: [
|
|
27196
27198
|
/* @__PURE__ */ r(
|
|
27197
27199
|
C0,
|
|
27198
27200
|
{
|
|
@@ -27224,7 +27226,7 @@ const yI = Mr(function({
|
|
|
27224
27226
|
// while it's actually shown, so it never overlaps the last message.
|
|
27225
27227
|
A ? "pb-16" : "pb-3"
|
|
27226
27228
|
),
|
|
27227
|
-
children:
|
|
27229
|
+
children: W.length || s ? /* @__PURE__ */ m(p3, { children: [
|
|
27228
27230
|
b ? /* @__PURE__ */ m("div", { className: "flex justify-center py-1 text-xs text-muted-foreground", children: [
|
|
27229
27231
|
/* @__PURE__ */ r(dt, { className: "mr-1.5 size-3.5 animate-spin" }),
|
|
27230
27232
|
"Loading older messages"
|
|
@@ -27238,7 +27240,7 @@ const yI = Mr(function({
|
|
|
27238
27240
|
children: Re.map((ce) => {
|
|
27239
27241
|
const me = ce.index, Le = X[me];
|
|
27240
27242
|
if (!Le) return null;
|
|
27241
|
-
const { firstOfRun: Ye, lastOfRun: pt } = xf(
|
|
27243
|
+
const { firstOfRun: Ye, lastOfRun: pt } = xf(q, me), At = me > 0 && Ye;
|
|
27242
27244
|
return /* @__PURE__ */ r(
|
|
27243
27245
|
"div",
|
|
27244
27246
|
{
|
|
@@ -27304,7 +27306,7 @@ const yI = Mr(function({
|
|
|
27304
27306
|
},
|
|
27305
27307
|
t ?? "no-session"
|
|
27306
27308
|
),
|
|
27307
|
-
|
|
27309
|
+
W.length ? /* @__PURE__ */ r("div", { className: "pointer-events-none absolute inset-x-0 top-2 z-20 flex flex-col items-end gap-1 px-3", children: oe ? /* @__PURE__ */ m(je, { children: [
|
|
27308
27310
|
/* @__PURE__ */ m("div", { className: "lfg-scroll-pill pointer-events-auto flex w-full max-w-sm items-center gap-1 rounded-full border border-border bg-card/95 py-1 pl-3 pr-1 shadow-md backdrop-blur", children: [
|
|
27309
27311
|
ue ? /* @__PURE__ */ r(dt, { className: "size-3.5 shrink-0 animate-spin text-muted-foreground" }) : /* @__PURE__ */ r(da, { className: "size-3.5 shrink-0 text-muted-foreground" }),
|
|
27310
27312
|
/* @__PURE__ */ r(
|
|
@@ -27529,7 +27531,7 @@ const _I = Mr(
|
|
|
27529
27531
|
] }),
|
|
27530
27532
|
/* @__PURE__ */ r("div", { className: "max-h-52 overflow-auto whitespace-pre-wrap break-words rounded-xl bg-muted/60 p-2.5 text-[11px] leading-relaxed text-muted-foreground", children: I.text || "thinking..." })
|
|
27531
27533
|
] }, I.id ?? `thinking-${I.ts}-${A}`);
|
|
27532
|
-
const P = I.text || (C ? "No command details" : "No result details"), z = C ? P.indexOf(":") : -1, j = C ? (z >= 0 ? P.slice(0, z) : P) || "Command" : `Result${t.filter((X) => X.kind === "tool_result").length > 1 ? ` ${A + 1}` : ""}`, k = C && z >= 0 ? P.slice(z + 1).trim() : C ? "" : P, O = wg(I) ? c[I.id] : void 0,
|
|
27534
|
+
const P = I.text || (C ? "No command details" : "No result details"), z = C ? P.indexOf(":") : -1, j = C ? (z >= 0 ? P.slice(0, z) : P) || "Command" : `Result${t.filter((X) => X.kind === "tool_result").length > 1 ? ` ${A + 1}` : ""}`, k = C && z >= 0 ? P.slice(z + 1).trim() : C ? "" : P, O = wg(I) ? c[I.id] : void 0, W = O?.status === "ready" ? O.args : k;
|
|
27533
27535
|
return /* @__PURE__ */ m("div", { className: "min-w-0", children: [
|
|
27534
27536
|
/* @__PURE__ */ m("div", { className: "mb-1 flex items-center gap-2 text-xs font-semibold text-foreground", children: [
|
|
27535
27537
|
/* @__PURE__ */ r("span", { className: D("size-1.5 rounded-full", C ? "bg-primary" : "bg-muted-foreground/60") }),
|
|
@@ -27551,7 +27553,7 @@ const _I = Mr(
|
|
|
27551
27553
|
"data-testid": "tool-args-error",
|
|
27552
27554
|
children: O.error
|
|
27553
27555
|
}
|
|
27554
|
-
) :
|
|
27556
|
+
) : W ? /* @__PURE__ */ r("pre", { className: "max-h-52 overflow-auto whitespace-pre-wrap break-words rounded-xl bg-muted/60 p-2.5 font-mono text-[11px] leading-relaxed text-muted-foreground", children: W }) : null
|
|
27555
27557
|
] }, I.id ?? `${I.kind}-${I.ts}-${A}`);
|
|
27556
27558
|
}) }), S = /* @__PURE__ */ m(
|
|
27557
27559
|
"button",
|
|
@@ -28683,15 +28685,15 @@ function gh({
|
|
|
28683
28685
|
() => S0(localStorage.getItem("lfg_v2_agent"), S)
|
|
28684
28686
|
), [R, P] = w(""), [z, j] = w(() => localStorage.getItem("lfg_v2_repo") || ""), [k, O] = w(
|
|
28685
28687
|
() => localStorage.getItem(`lfg_model_${A}`) || localStorage.getItem("lfg_model") || I(A)
|
|
28686
|
-
), [
|
|
28688
|
+
), [W, X] = w(
|
|
28687
28689
|
() => Qr()
|
|
28688
|
-
), [L,
|
|
28690
|
+
), [L, q] = w(() => Zf(localStorage, A)), [V, E] = w(() => NC(localStorage)), [B, _] = w(
|
|
28689
28691
|
() => ps(s || localStorage.getItem("lfg_user"), n)
|
|
28690
28692
|
), [M, F] = w(
|
|
28691
28693
|
() => Wc("new-session")?.text ?? ""
|
|
28692
28694
|
), K = U(M);
|
|
28693
28695
|
K.current = M;
|
|
28694
|
-
const [
|
|
28696
|
+
const [H, Q] = w(0), [te, fe] = w(!1), [de, Ue] = w([]), [Re, Ae] = w(0), [we, De] = w(null), be = yu({
|
|
28695
28697
|
endpoint: (ne) => `/api/uploads?filename=${encodeURIComponent(ne.name)}`,
|
|
28696
28698
|
onPatchExtra: (ne, ot) => Ue(
|
|
28697
28699
|
(rt) => rt.map((ft) => ft.id === ne ? { ...ft, ...ot } : ft)
|
|
@@ -28888,7 +28890,7 @@ function gh({
|
|
|
28888
28890
|
G(() => {
|
|
28889
28891
|
e && _(ps(s || localStorage.getItem("lfg_user"), n));
|
|
28890
28892
|
}, [e, s, n]);
|
|
28891
|
-
const zt = b.models[A] ?? Xn[A], Mt = os(A, k), nn = SC({ agent: A, model: k }), _t = L && nn, Kt = wC({ agent: A, model: k, thinkingLevels: Mt }), Zt = V && Kt && _t &&
|
|
28893
|
+
const zt = b.models[A] ?? Xn[A], Mt = os(A, k), nn = SC({ agent: A, model: k }), _t = L && nn, Kt = wC({ agent: A, model: k, thinkingLevels: Mt }), Zt = V && Kt && _t && W === "high", Qn = o !== "__all" ? t.find((ne) => Nr(ne) === o) : void 0, jn = !!Qn, Pt = o === "__all", Yt = dC({
|
|
28892
28894
|
scopedCwd: Qn?.cwd,
|
|
28893
28895
|
lastCwd: z,
|
|
28894
28896
|
repos: t
|
|
@@ -28922,17 +28924,17 @@ function gh({
|
|
|
28922
28924
|
G(() => {
|
|
28923
28925
|
zt.includes(k) || O(zt[0]);
|
|
28924
28926
|
}, [zt, k]), G(() => {
|
|
28925
|
-
Mt.length && !Mt.includes(
|
|
28926
|
-
}, [
|
|
28927
|
-
|
|
28927
|
+
Mt.length && !Mt.includes(W) && X(Mt.includes("high") ? "high" : Mt[0]);
|
|
28928
|
+
}, [W, Mt]), G(() => {
|
|
28929
|
+
q(Zf(localStorage, A));
|
|
28928
28930
|
}, [A]), G(() => {
|
|
28929
|
-
Zt &&
|
|
28930
|
-
}, [Zt,
|
|
28931
|
+
Zt && W !== "high" && X("high");
|
|
28932
|
+
}, [Zt, W]);
|
|
28931
28933
|
function yn(ne) {
|
|
28932
|
-
E(ne), rc(localStorage, ne), ne && Kt ? (
|
|
28934
|
+
E(ne), rc(localStorage, ne), ne && Kt ? (q(!0), sc(localStorage, A, !0), X("high")) : !ne && Zt && (q(!1), sc(localStorage, A, !1));
|
|
28933
28935
|
}
|
|
28934
28936
|
function dn(ne) {
|
|
28935
|
-
|
|
28937
|
+
q(ne), sc(localStorage, A, ne), !ne && V && (E(!1), rc(localStorage, !1));
|
|
28936
28938
|
}
|
|
28937
28939
|
function On(ne) {
|
|
28938
28940
|
Zt && ne !== "high" && (E(!1), rc(localStorage, !1)), X(ne);
|
|
@@ -28968,7 +28970,7 @@ function gh({
|
|
|
28968
28970
|
enabled: V,
|
|
28969
28971
|
available: Kt,
|
|
28970
28972
|
model: k,
|
|
28971
|
-
thinkingLevel: rt ??
|
|
28973
|
+
thinkingLevel: rt ?? W
|
|
28972
28974
|
}), Jt = Tt.model, sn = Tt.thinkingLevel, vn = _t || Tt.fastMode === !0, Wn = Lt === "aisdk" && R || void 0, yt = Hc({
|
|
28973
28975
|
contextKey: "new-session",
|
|
28974
28976
|
source: "new-session",
|
|
@@ -29085,7 +29087,7 @@ function gh({
|
|
|
29085
29087
|
Tu,
|
|
29086
29088
|
{
|
|
29087
29089
|
agent: A,
|
|
29088
|
-
value:
|
|
29090
|
+
value: W,
|
|
29089
29091
|
levels: Mt,
|
|
29090
29092
|
onChange: On,
|
|
29091
29093
|
flat: u === "inline",
|
|
@@ -29228,7 +29230,7 @@ function gh({
|
|
|
29228
29230
|
value: M,
|
|
29229
29231
|
onValueChange: me,
|
|
29230
29232
|
onMultilineChange: u === "inline" ? fe : void 0,
|
|
29231
|
-
scrollToEndNonce:
|
|
29233
|
+
scrollToEndNonce: H,
|
|
29232
29234
|
onPaste: be.onPasteFiles,
|
|
29233
29235
|
onKeyDown: (ne) => {
|
|
29234
29236
|
(ne.metaKey || ne.ctrlKey) && ne.key === "Enter" && (ne.preventDefault(), ne.currentTarget.form?.requestSubmit());
|
|
@@ -29342,7 +29344,7 @@ function gh({
|
|
|
29342
29344
|
HI,
|
|
29343
29345
|
{
|
|
29344
29346
|
disabled: !xo,
|
|
29345
|
-
thinkingLevel:
|
|
29347
|
+
thinkingLevel: W,
|
|
29346
29348
|
thinkingLevels: Zt ? ["high"] : F0(A) ? Mt : [],
|
|
29347
29349
|
onLaunch: (ne) => {
|
|
29348
29350
|
On(ne), Rn(void 0, void 0, ne);
|
|
@@ -29550,9 +29552,9 @@ function mx({
|
|
|
29550
29552
|
openOnDrag: i = !1,
|
|
29551
29553
|
orientation: a = "horizontal"
|
|
29552
29554
|
}) {
|
|
29553
|
-
const l = U(null), c = U({ x: 0, y: 0 }), d = U(null), f = U(0), u = U(0), h = U(!1), p = U(!1), g = U(!1), v = U(null), y = U(!1), [b, N] = w(!1), [S, I] = w(!1), A = U(!1), C = U(!1), R = U(!1), P = U(null), z = U(null), [j, k] = w(() => Math.max(0, t.indexOf(e))), [O,
|
|
29555
|
+
const l = U(null), c = U({ x: 0, y: 0 }), d = U(null), f = U(0), u = U(0), h = U(!1), p = U(!1), g = U(!1), v = U(null), y = U(!1), [b, N] = w(!1), [S, I] = w(!1), A = U(!1), C = U(!1), R = U(!1), P = U(null), z = U(null), [j, k] = w(() => Math.max(0, t.indexOf(e))), [O, W] = w({}), [X, L] = w("above"), q = Math.max(0, t.indexOf(e)), V = s && t.length > 1, E = Math.max(0, Math.min(t.length - 1, j)), B = t[E] ?? e, _ = t.length > 1 ? E / (t.length - 1) : 0, M = fx(_), F = a === "vertical", K = Math.round(
|
|
29554
29556
|
Math.max(120, Math.min(260, (t.length - 1) * bh(t.length)))
|
|
29555
|
-
),
|
|
29557
|
+
), H = () => {
|
|
29556
29558
|
l.current != null && (window.clearTimeout(l.current), l.current = null);
|
|
29557
29559
|
}, Q = U(!1), te = () => {
|
|
29558
29560
|
Q.current || (Q.current = !0, document.addEventListener("selectstart", Gi, !0), document.addEventListener("dragstart", Gi, !0));
|
|
@@ -29561,15 +29563,15 @@ function mx({
|
|
|
29561
29563
|
};
|
|
29562
29564
|
G(
|
|
29563
29565
|
() => () => {
|
|
29564
|
-
|
|
29566
|
+
H(), fe();
|
|
29565
29567
|
},
|
|
29566
29568
|
[]
|
|
29567
29569
|
), G(() => {
|
|
29568
29570
|
if (b)
|
|
29569
29571
|
return document.body.classList.add("thinking-scrubbing"), () => document.body.classList.remove("thinking-scrubbing");
|
|
29570
29572
|
}, [b]), G(() => {
|
|
29571
|
-
!h.current && !C.current && (u.current =
|
|
29572
|
-
}, [
|
|
29573
|
+
!h.current && !C.current && (u.current = q, k(q));
|
|
29574
|
+
}, [q]);
|
|
29573
29575
|
const de = (J) => {
|
|
29574
29576
|
const oe = J.getBoundingClientRect(), He = oe.left + oe.width / 2;
|
|
29575
29577
|
if (F) {
|
|
@@ -29577,11 +29579,11 @@ function mx({
|
|
|
29577
29579
|
12,
|
|
29578
29580
|
Math.min(window.innerWidth - 168 - 12, He + PI - 168)
|
|
29579
29581
|
), pe = K + 70, Oe = Math.max(12, oe.top - pe - 12);
|
|
29580
|
-
L("above"),
|
|
29582
|
+
L("above"), W({ left: he, top: Oe, width: 168, transformOrigin: `${He - he}px 100%` });
|
|
29581
29583
|
return;
|
|
29582
29584
|
}
|
|
29583
29585
|
const qe = Math.min(360, Math.max(248, window.innerWidth - 24)), Qe = Math.max(12, Math.min(window.innerWidth - qe - 12, He - qe / 2)), ut = 124, Et = oe.top - ut - 12 >= 12, Y = Et ? oe.top - ut - 12 : Math.min(window.innerHeight - ut - 12, oe.bottom + 12);
|
|
29584
|
-
L(Et ? "above" : "below"),
|
|
29586
|
+
L(Et ? "above" : "below"), W({
|
|
29585
29587
|
left: Qe,
|
|
29586
29588
|
top: Y,
|
|
29587
29589
|
width: qe,
|
|
@@ -29592,12 +29594,12 @@ function mx({
|
|
|
29592
29594
|
const oe = Math.max(0, t.indexOf(e));
|
|
29593
29595
|
document.getSelection()?.removeAllRanges(), u.current = oe, d.current = null, y.current = !1, h.current = !0, p.current = !0, k(oe), de(J), N(!0), Ct("heavy");
|
|
29594
29596
|
}, Re = (J) => {
|
|
29595
|
-
if (
|
|
29597
|
+
if (H(), !!h.current && (h.current = !1, N(!1), J)) {
|
|
29596
29598
|
const oe = t[u.current];
|
|
29597
29599
|
Bn.success(), oe && n(oe);
|
|
29598
29600
|
}
|
|
29599
29601
|
}, Ae = () => {
|
|
29600
|
-
A.current && (A.current = !1, C.current = !1, I(!1), u.current =
|
|
29602
|
+
A.current && (A.current = !1, C.current = !1, I(!1), u.current = q, k(q));
|
|
29601
29603
|
}, we = (J) => {
|
|
29602
29604
|
if (!V || h.current) return;
|
|
29603
29605
|
z.current = J;
|
|
@@ -29688,31 +29690,31 @@ function mx({
|
|
|
29688
29690
|
}, Ne = {
|
|
29689
29691
|
onPointerDown: (J) => {
|
|
29690
29692
|
if (!V || J.button !== 0) return;
|
|
29691
|
-
|
|
29693
|
+
H(), c.current = { x: J.clientX, y: J.clientY }, d.current = null, p.current = !1, g.current = R.current, R.current = !1, f.current = q, te(), J.currentTarget.setPointerCapture(J.pointerId), Ct("light");
|
|
29692
29694
|
const oe = J.currentTarget;
|
|
29693
29695
|
l.current = window.setTimeout(() => Ue(oe), BI);
|
|
29694
29696
|
},
|
|
29695
29697
|
onPointerMove: (J) => {
|
|
29696
29698
|
if (!h.current) {
|
|
29697
29699
|
if (!i || l.current == null || Math.abs(J.clientX - c.current.x) <= 8) return;
|
|
29698
|
-
|
|
29700
|
+
H(), Ue(J.currentTarget), We(J.clientX, J.clientY), J.preventDefault();
|
|
29699
29701
|
return;
|
|
29700
29702
|
}
|
|
29701
29703
|
J.preventDefault(), We(J.clientX, J.clientY);
|
|
29702
29704
|
},
|
|
29703
29705
|
onPointerUp: (J) => {
|
|
29704
|
-
|
|
29706
|
+
H(), fe(), p.current && (J.preventDefault(), g.current = !0, Re(!0));
|
|
29705
29707
|
},
|
|
29706
29708
|
// A cancelled pointer (scroll takeover, palm rejection) fires no click.
|
|
29707
29709
|
onPointerCancel: () => {
|
|
29708
|
-
|
|
29710
|
+
H(), fe(), Re(!1);
|
|
29709
29711
|
},
|
|
29710
29712
|
onContextMenu: (J) => {
|
|
29711
29713
|
V && J.preventDefault();
|
|
29712
29714
|
}
|
|
29713
29715
|
}, Te = () => g.current ? (g.current = !1, !0) : !1, $ = (J) => {
|
|
29714
29716
|
if (!V) return;
|
|
29715
|
-
const oe = t[Math.max(0, Math.min(t.length - 1,
|
|
29717
|
+
const oe = t[Math.max(0, Math.min(t.length - 1, q + J))];
|
|
29716
29718
|
!oe || oe === e || (Bn.select(), n(oe));
|
|
29717
29719
|
}, Ve = b || S ? es(
|
|
29718
29720
|
/* @__PURE__ */ r(
|
|
@@ -30274,14 +30276,14 @@ function KI({
|
|
|
30274
30276
|
onDismiss: a,
|
|
30275
30277
|
onRefineAgent: l
|
|
30276
30278
|
}) {
|
|
30277
|
-
const c = Zr(n?.agent ?? "aisdk"), [d, f] = w(""), [u, h] = w(!1), [p, g] = w(!1), [v, y] = w(!1), [b, N] = w(!1), [S, I] = w(""), [A, C] = w(!1), R = U(null), P = U(null), [z, j] = w(n?.agent ?? "aisdk"), [k, O] = w(n?.claudeAccountId ?? ""), [
|
|
30279
|
+
const c = Zr(n?.agent ?? "aisdk"), [d, f] = w(""), [u, h] = w(!1), [p, g] = w(!1), [v, y] = w(!1), [b, N] = w(!1), [S, I] = w(""), [A, C] = w(!1), R = U(null), P = U(null), [z, j] = w(n?.agent ?? "aisdk"), [k, O] = w(n?.claudeAccountId ?? ""), [W, X] = w(
|
|
30278
30280
|
n?.model ?? c
|
|
30279
|
-
), [L,
|
|
30281
|
+
), [L, q] = w(
|
|
30280
30282
|
n?.thinkingLevel ?? Qr()
|
|
30281
|
-
), V = U(null), E = gi(z), B = Zr(z), _ = os(z,
|
|
30283
|
+
), V = U(null), E = gi(z), B = Zr(z), _ = os(z, W).length > 0;
|
|
30282
30284
|
G(() => {
|
|
30283
|
-
E.includes(
|
|
30284
|
-
}, [B, E,
|
|
30285
|
+
E.includes(W) || X(B);
|
|
30286
|
+
}, [B, E, W]);
|
|
30285
30287
|
const M = _e(
|
|
30286
30288
|
() => new Set(
|
|
30287
30289
|
(s?.find((ae) => ae.key === "aisdk")?.status.accounts ?? []).filter((ae) => ae.connected).map((ae) => ae.id)
|
|
@@ -30289,10 +30291,10 @@ function KI({
|
|
|
30289
30291
|
[s]
|
|
30290
30292
|
), F = k && M.has(k) ? k : "", K = () => ({
|
|
30291
30293
|
agent: z,
|
|
30292
|
-
model:
|
|
30294
|
+
model: W,
|
|
30293
30295
|
thinkingLevel: _ ? L : void 0,
|
|
30294
30296
|
claudeAccountId: z === "aisdk" && F || void 0
|
|
30295
|
-
}), [
|
|
30297
|
+
}), [H, Q] = w(!1), te = U(null), fe = () => {
|
|
30296
30298
|
te.current !== null && (window.clearTimeout(te.current), te.current = null);
|
|
30297
30299
|
};
|
|
30298
30300
|
G(() => fe, []);
|
|
@@ -30346,7 +30348,7 @@ function KI({
|
|
|
30346
30348
|
const ae = S.trim();
|
|
30347
30349
|
!ae || u || !l || (Fo(e.id, "feedback", !!d.trim()), l(e, ae));
|
|
30348
30350
|
}
|
|
30349
|
-
const be = 3, We = e.reasoning, Ke = v || We.length <= be + 1 ? We : We.slice(0, be), Ze = We.length - Ke.length, st = [
|
|
30351
|
+
const be = 3, We = e.reasoning, Ke = v || We.length <= be + 1 ? We : We.slice(0, be), Ze = We.length - Ke.length, st = [W, _ ? `${L} thinking` : null].filter(Boolean).join(" · "), Fe = /* @__PURE__ */ m("div", { className: "px-1 pb-2", children: [
|
|
30350
30352
|
/* @__PURE__ */ m(
|
|
30351
30353
|
"button",
|
|
30352
30354
|
{
|
|
@@ -30370,10 +30372,10 @@ function KI({
|
|
|
30370
30372
|
{
|
|
30371
30373
|
backend: z,
|
|
30372
30374
|
setBackend: j,
|
|
30373
|
-
model:
|
|
30375
|
+
model: W,
|
|
30374
30376
|
setModel: X,
|
|
30375
30377
|
thinkingLevel: L,
|
|
30376
|
-
setThinkingLevel:
|
|
30378
|
+
setThinkingLevel: q,
|
|
30377
30379
|
codingAgents: s,
|
|
30378
30380
|
claudeAccountId: F,
|
|
30379
30381
|
setClaudeAccountId: O,
|
|
@@ -30568,7 +30570,7 @@ function KI({
|
|
|
30568
30570
|
] })
|
|
30569
30571
|
}
|
|
30570
30572
|
);
|
|
30571
|
-
return /* @__PURE__ */ r(_u, { onClose: o, title: `${t} finding`, page:
|
|
30573
|
+
return /* @__PURE__ */ r(_u, { onClose: o, title: `${t} finding`, page: H, footer: se, children: /* @__PURE__ */ m("div", { className: D("px-2 pb-2 pt-1", H && "mt-auto"), children: [
|
|
30572
30574
|
/* @__PURE__ */ m("div", { className: "flex items-center gap-2 text-xs text-muted-foreground", children: [
|
|
30573
30575
|
/* @__PURE__ */ r("span", { className: D("size-2 shrink-0 rounded-full", Cu[e.severity]) }),
|
|
30574
30576
|
/* @__PURE__ */ r("span", { className: "truncate font-medium text-foreground/75", children: t }),
|
|
@@ -30745,16 +30747,16 @@ function XI({
|
|
|
30745
30747
|
const Ke = { ...We, ...be };
|
|
30746
30748
|
return y(fS(Ke)), Ke;
|
|
30747
30749
|
});
|
|
30748
|
-
}, [z, j] = w(f?.enabled ?? !0), [k, O] = w(f?.cwd ?? t[0]?.cwd ?? ""), [
|
|
30750
|
+
}, [z, j] = w(f?.enabled ?? !0), [k, O] = w(f?.cwd ?? t[0]?.cwd ?? ""), [W, X] = w(f?.agent ?? "aisdk"), [L, q] = w(f?.claudeAccountId ?? ""), V = Zr(f?.agent ?? "aisdk"), [E, B] = w(
|
|
30749
30751
|
f?.model ?? V
|
|
30750
30752
|
), [_, M] = w(
|
|
30751
30753
|
f?.thinkingLevel ?? Qr()
|
|
30752
|
-
), [F, K] = w(!1), [
|
|
30754
|
+
), [F, K] = w(!1), [H, Q] = w(!1), [te, fe] = w(null), de = _e(() => Wp(v, n), [v, n]), Ue = gi(W), Re = Zr(W), Ae = os(W, E).length > 0;
|
|
30753
30755
|
G(() => {
|
|
30754
30756
|
Ue.includes(E) || B(Re);
|
|
30755
30757
|
}, [Re, Ue, E]);
|
|
30756
30758
|
async function we() {
|
|
30757
|
-
if (!(
|
|
30759
|
+
if (!(H || !p.trim())) {
|
|
30758
30760
|
Q(!0), fe(null);
|
|
30759
30761
|
try {
|
|
30760
30762
|
const be = await ye("/api/auto/enhance-prompt", {
|
|
@@ -30784,13 +30786,13 @@ function XI({
|
|
|
30784
30786
|
schedule: v.trim(),
|
|
30785
30787
|
enabled: z,
|
|
30786
30788
|
cwd: k || void 0,
|
|
30787
|
-
agent:
|
|
30789
|
+
agent: W,
|
|
30788
30790
|
model: E.trim() || void 0,
|
|
30789
30791
|
thinkingLevel: Ae ? _ : void 0,
|
|
30790
30792
|
// null, not undefined: JSON.stringify drops undefined, and an absent
|
|
30791
30793
|
// field means "keep the stored pin" — so clearing one has to be said
|
|
30792
30794
|
// out loud or the save is a silent no-op.
|
|
30793
|
-
claudeAccountId:
|
|
30795
|
+
claudeAccountId: W === "aisdk" && L || null
|
|
30794
30796
|
});
|
|
30795
30797
|
} finally {
|
|
30796
30798
|
K(!1);
|
|
@@ -30986,7 +30988,7 @@ function XI({
|
|
|
30986
30988
|
/* @__PURE__ */ r(
|
|
30987
30989
|
wl,
|
|
30988
30990
|
{
|
|
30989
|
-
backend:
|
|
30991
|
+
backend: W,
|
|
30990
30992
|
setBackend: X,
|
|
30991
30993
|
model: E,
|
|
30992
30994
|
setModel: B,
|
|
@@ -30994,7 +30996,7 @@ function XI({
|
|
|
30994
30996
|
setThinkingLevel: M,
|
|
30995
30997
|
codingAgents: s,
|
|
30996
30998
|
claudeAccountId: L,
|
|
30997
|
-
setClaudeAccountId:
|
|
30999
|
+
setClaudeAccountId: q,
|
|
30998
31000
|
scheduledOnly: !0
|
|
30999
31001
|
}
|
|
31000
31002
|
),
|
|
@@ -31036,13 +31038,13 @@ function XI({
|
|
|
31036
31038
|
"button",
|
|
31037
31039
|
{
|
|
31038
31040
|
type: "button",
|
|
31039
|
-
disabled:
|
|
31041
|
+
disabled: H || !p.trim(),
|
|
31040
31042
|
onClick: () => void we(),
|
|
31041
31043
|
className: "flex items-center gap-1 text-[11px] font-semibold uppercase tracking-wide text-primary disabled:text-muted-foreground",
|
|
31042
31044
|
title: "Rewrite into a sharper watch prompt",
|
|
31043
31045
|
children: [
|
|
31044
|
-
|
|
31045
|
-
|
|
31046
|
+
H ? /* @__PURE__ */ r(dt, { className: "size-3.5 animate-spin" }) : /* @__PURE__ */ r(po, { className: "size-3.5" }),
|
|
31047
|
+
H ? "Enhancing…" : "Enhance"
|
|
31046
31048
|
]
|
|
31047
31049
|
}
|
|
31048
31050
|
)
|
|
@@ -31053,7 +31055,7 @@ function XI({
|
|
|
31053
31055
|
value: p,
|
|
31054
31056
|
onValueChange: g,
|
|
31055
31057
|
rows: 5,
|
|
31056
|
-
disabled:
|
|
31058
|
+
disabled: H,
|
|
31057
31059
|
placeholder: "What to watch for…",
|
|
31058
31060
|
className: "mt-1.5 resize-none text-sm leading-relaxed"
|
|
31059
31061
|
}
|
|
@@ -33345,9 +33347,9 @@ function T_({
|
|
|
33345
33347
|
p ? e.shape ?? "circle" : Vl[Math.floor(Math.random() * Vl.length)]
|
|
33346
33348
|
), [k, O] = w(
|
|
33347
33349
|
p ? e.colorway ?? "warm" : Kl[Math.floor(Math.random() * Kl.length)]
|
|
33348
|
-
), [
|
|
33350
|
+
), [W, X] = w(v), [L, q] = w(p ? e.claudeAccountId ?? "" : ""), [V, E] = w(p ? e.model ?? y : y), [B, _] = w(p ? e.thinkingLevel ?? Qr() : Qr()), [M, F] = w(!1), K = !p && i ? Yw(i) : null, [H, Q] = w(!1), [te, fe] = w(!1), [de, Ue] = w(p ? e.configRevision ?? 1 : 1), [Re, Ae] = w(
|
|
33349
33351
|
p ? e.configStatus ?? "current" : "current"
|
|
33350
|
-
), [we, De] = w(p ? e.rotationError : void 0), be = gi(
|
|
33352
|
+
), [we, De] = w(p ? e.rotationError : void 0), be = gi(W), We = Zr(W), Ke = os(W, V);
|
|
33351
33353
|
G(() => {
|
|
33352
33354
|
be.includes(V) || E(We);
|
|
33353
33355
|
}, [We, V, be]);
|
|
@@ -33356,7 +33358,7 @@ function T_({
|
|
|
33356
33358
|
(n?.find(($) => $.key === "aisdk")?.status.accounts ?? []).filter(($) => $.connected).map(($) => $.id)
|
|
33357
33359
|
),
|
|
33358
33360
|
[n]
|
|
33359
|
-
), st =
|
|
33361
|
+
), st = W === "aisdk" && L && Ze.has(L) ? L : "";
|
|
33360
33362
|
G(() => {
|
|
33361
33363
|
if (!h) return;
|
|
33362
33364
|
const $ = document.body.style.overflow;
|
|
@@ -33365,7 +33367,7 @@ function T_({
|
|
|
33365
33367
|
};
|
|
33366
33368
|
}, [h]);
|
|
33367
33369
|
const Fe = !!b.trim() && !!S.trim() && !K?.reached, se = async () => {
|
|
33368
|
-
if (!Fe ||
|
|
33370
|
+
if (!Fe || H) return;
|
|
33369
33371
|
Q(!0);
|
|
33370
33372
|
const $ = await c({
|
|
33371
33373
|
id: p ? e.id : void 0,
|
|
@@ -33373,10 +33375,10 @@ function T_({
|
|
|
33373
33375
|
shape: z,
|
|
33374
33376
|
colorway: k,
|
|
33375
33377
|
persona: S.trim(),
|
|
33376
|
-
agent:
|
|
33378
|
+
agent: W,
|
|
33377
33379
|
model: V || void 0,
|
|
33378
33380
|
thinkingLevel: Ke.length ? B : void 0,
|
|
33379
|
-
claudeAccountId:
|
|
33381
|
+
claudeAccountId: W === "aisdk" && st || null,
|
|
33380
33382
|
cwd: R || void 0,
|
|
33381
33383
|
enabled: A
|
|
33382
33384
|
});
|
|
@@ -33399,8 +33401,8 @@ function T_({
|
|
|
33399
33401
|
}
|
|
33400
33402
|
),
|
|
33401
33403
|
/* @__PURE__ */ r("span", { className: "min-w-0 flex-1 truncate text-[15px] font-semibold", children: p ? "Edit bot" : "New bot" }),
|
|
33402
|
-
/* @__PURE__ */ m(Ee, { size: "sm", variant: "brand", disabled: !Fe ||
|
|
33403
|
-
|
|
33404
|
+
/* @__PURE__ */ m(Ee, { size: "sm", variant: "brand", disabled: !Fe || H, onClick: () => void se(), children: [
|
|
33405
|
+
H ? /* @__PURE__ */ r(dt, { className: "mr-1 size-3.5 animate-spin" }) : null,
|
|
33404
33406
|
p ? "Save" : "Create"
|
|
33405
33407
|
] })
|
|
33406
33408
|
] }), Te = /* @__PURE__ */ m(je, { children: [
|
|
@@ -33527,7 +33529,7 @@ function T_({
|
|
|
33527
33529
|
"Advanced"
|
|
33528
33530
|
] }),
|
|
33529
33531
|
/* @__PURE__ */ m("span", { className: "max-w-[55%] truncate text-xs text-muted-foreground", children: [
|
|
33530
|
-
|
|
33532
|
+
W,
|
|
33531
33533
|
" · ",
|
|
33532
33534
|
V
|
|
33533
33535
|
] })
|
|
@@ -33554,7 +33556,7 @@ function T_({
|
|
|
33554
33556
|
/* @__PURE__ */ r(
|
|
33555
33557
|
wl,
|
|
33556
33558
|
{
|
|
33557
|
-
backend:
|
|
33559
|
+
backend: W,
|
|
33558
33560
|
setBackend: X,
|
|
33559
33561
|
model: V,
|
|
33560
33562
|
setModel: E,
|
|
@@ -33562,7 +33564,7 @@ function T_({
|
|
|
33562
33564
|
setThinkingLevel: _,
|
|
33563
33565
|
codingAgents: n,
|
|
33564
33566
|
claudeAccountId: st,
|
|
33565
|
-
setClaudeAccountId:
|
|
33567
|
+
setClaudeAccountId: q,
|
|
33566
33568
|
scheduledOnly: !1
|
|
33567
33569
|
}
|
|
33568
33570
|
)
|