linear-grab 0.19.0 → 0.20.0

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.
@@ -26519,7 +26519,7 @@ async function fO() {
26519
26519
  }));
26520
26520
  }
26521
26521
  async function pO(e) {
26522
- let { comments: t, attachments: n, ...r } = (await cO("query($id: String!) {\n issue(id: $id) {\n id identifier title url updatedAt priority description branchName\n state { name color type }\n delegate { id name displayName }\n assignee { displayName }\n comments(first: 50) {\n nodes { id body createdAt parent { id } user { id name displayName app } }\n }\n attachments(first: 20) {\n nodes { id title url sourceType }\n }\n }\n }", { id: e })).issue;
26522
+ let { comments: t, attachments: n, ...r } = (await cO("query($id: String!) {\n issue(id: $id) {\n id identifier title url updatedAt priority description branchName\n team { id }\n state { name color type }\n delegate { id name displayName }\n assignee { displayName }\n comments(first: 50) {\n nodes { id body createdAt parent { id } user { id name displayName app } }\n }\n attachments(first: 20) {\n nodes { id title url sourceType }\n }\n }\n }", { id: e })).issue;
26523
26523
  return {
26524
26524
  ...r,
26525
26525
  comments: t.nodes,
@@ -43238,15 +43238,15 @@ function h$(e) {
43238
43238
  //#endregion
43239
43239
  //#region src/panel/views/ActivityView.tsx
43240
43240
  Br();
43241
- var g$ = /*#__PURE__*/ N("<div class=\"lg-md text-text text-[12px] leading-relaxed break-words\">"), _$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\">"), v$ = /*#__PURE__*/ N("<span class=\"tabular-nums text-[10.5px] text-text-faint\">live · updated "), y$ = /*#__PURE__*/ N("<svg aria-hidden width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d=\"M1 4.5A7 7 0 0 1 13.5 3\"></path><path d=\"M15 11.5A7 7 0 0 1 2.5 13\"></path><polyline points=\"1 1 1 5 5 5\"></polyline><polyline points=\"15 11 15 15 11 15\">"), b$ = /*#__PURE__*/ N("<div class=\"flex-1 overflow-y-auto\">"), x$ = /*#__PURE__*/ N("<div class=\"min-h-0 flex-1 overflow-y-auto pl-2 pr-3\"><div style=position:relative>"), S$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">My issues</span><div class=\"flex items-center gap-2\"></div></div><div class=\"border-border flex shrink-0 items-center gap-1 border-b px-3 py-1.5\">"), C$ = /*#__PURE__*/ N("<button>"), w$ = /*#__PURE__*/ N("<div style=position:absolute;top:0;left:0;width:100%>"), T$ = /*#__PURE__*/ N("<button class=\"w-full cursor-pointer rounded-md px-2 py-1.5 text-left hover:bg-surface-2 transition-colors\"><div class=\"flex items-center gap-1.5 min-w-0\"><span class=\"font-mono text-[11px] text-text-dim shrink-0\"></span><span class=\"truncate text-[12.5px] text-text\"></span></div><div class=\"mt-0.5 flex items-center gap-1.5\"><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), E$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M10.5 3.5 6 8l4.5 4.5\">"), D$ = /*#__PURE__*/ N("<span class=\"font-mono text-[11px] text-text-dim shrink-0\">"), O$ = /*#__PURE__*/ N("<span class=\"truncate text-[12px] font-medium text-text\">"), k$ = /*#__PURE__*/ N("<span class=\"text-[11.5px] text-text-faint\">Loading…"), A$ = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\"><span class=\"text-[11px] text-text-dim\">"), j$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2\">"), M$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Attachments</span><div class=\"flex flex-col gap-1\">"), N$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2.5\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Comments"), P$ = /*#__PURE__*/ N("<option value=local>Message local Claude Code session"), F$ = /*#__PURE__*/ N("<option value=new>Start NEW agent (@<!>)"), I$ = /*#__PURE__*/ N("<option value=comment>Comment only"), L$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=2.2></circle><path d=\"M8 1v3M8 12v3M1 8h3M12 8h3\">"), R$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), z$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M13 7.5 8.2 12.3a3.2 3.2 0 0 1-4.5-4.5L8.9 2.6a2.1 2.1 0 0 1 3 3L7.1 10.4a1 1 0 0 1-1.5-1.5l4.3-4.3\">"), B$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-left\">Send"), V$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 flex-col gap-1 border-b px-3 py-2\"><div class=\"flex items-center gap-2\"></div></div><div class=\"min-h-0 flex-1 overflow-y-auto pl-3 pr-4 py-3 flex flex-col gap-3\"></div><div class=\"border-border shrink-0 border-t p-2.5 flex flex-col gap-1.5\"><div class=\"flex items-center gap-2\">"), H$ = /*#__PURE__*/ N("<option selected>"), U$ = /*#__PURE__*/ N("<svg width=10 height=10 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), W$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><path d=\"M4.5 2.8a.8.8 0 0 1 1.22-.68l8 5.2a.8.8 0 0 1 0 1.36l-8 5.2a.8.8 0 0 1-1.22-.68V2.8Z\">"), G$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"m2.5 4 3.5 4-3.5 4M8 12.5h5.5\">"), K$ = /*#__PURE__*/ N("<div class=\"bg-surface border-border overflow-clip rounded-lg border\"><div class=\"border-border flex h-9 min-w-0 items-center justify-between gap-2 border-b px-3\"><div class=\"flex min-w-0 items-center gap-1.5 text-[11.5px] font-medium\"><span aria-hidden class=\"text-text-dim inline-flex\"></span><span class=\"text-text shrink-0\">Local Claude Code</span><span class=\"text-text-dim shrink-0\">started by you</span><span class=\"text-text-faint shrink-0 tabular-nums\">· </span></div></div><div class=\"flex h-9 items-center gap-1 pr-2\"><button class=\"hover:bg-surface-2 flex h-full min-w-0 flex-1 cursor-pointer items-center gap-2 rounded-md px-3 text-left transition-colors\"title=\"Open the live thread in the Local tab\"><span></span><span class=\"text-text-faint min-w-0 flex-1 truncate text-[11.5px]\"></span><svg width=14 height=14 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden class=\"text-text-dim shrink-0\"><path d=\"m6 3.5 4.5 4.5L6 12.5\">"), q$ = /*#__PURE__*/ N("<option>"), J$ = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), Y$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[6ch] text-center\">Merge"), X$ = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><a target=_blank rel=noreferrer class=\"text-accent min-w-0 truncate text-[11.5px] hover:underline\">"), Z$ = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M8 2 14 5.5 8 9 2 5.5 8 2Z\"></path><path d=\"M2 10.5 8 14l6-3.5\">"), Q$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><div class=\"flex items-center gap-1.5\"><span class=\"text-[11px] font-medium text-text-dim\"></span><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), $$ = /*#__PURE__*/ N("<option>Steer running agent<!> · "), e1 = /*#__PURE__*/ N("<span class=\"bg-danger inline-block size-2.5 rounded-full\"aria-hidden>"), t1 = /*#__PURE__*/ N("<span class=\"text-[11px] text-text-dim\">"), n1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden class=transition-transform><path d=\"m3.5 6.5 4.5 4 4.5-4\">"), r1 = /*#__PURE__*/ N("<p class=\"text-[12px] text-text leading-relaxed whitespace-pre-wrap break-words\">"), i1 = /*#__PURE__*/ N("<div class=\"border-border mt-0.5 flex flex-col gap-1 overflow-y-auto border-t pt-1.5 pl-0.5 pr-3\">"), a1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border rounded-lg border p-2.5 flex flex-col gap-1.5\"><div class=\"flex items-center gap-1.5 flex-wrap\"><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), o1 = /*#__PURE__*/ N("<p class=\"font-mono text-text-faint text-[10.5px] leading-relaxed break-words\">→ <!> "), s1 = /*#__PURE__*/ N("<div>");
43242
- function c1(e) {
43241
+ var g$ = /*#__PURE__*/ N("<div class=\"lg-md text-text text-[12px] leading-relaxed break-words\">"), _$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\">"), v$ = /*#__PURE__*/ N("<span class=\"tabular-nums text-[10.5px] text-text-faint\">live · updated "), y$ = /*#__PURE__*/ N("<svg aria-hidden width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d=\"M1 4.5A7 7 0 0 1 13.5 3\"></path><path d=\"M15 11.5A7 7 0 0 1 2.5 13\"></path><polyline points=\"1 1 1 5 5 5\"></polyline><polyline points=\"15 11 15 15 11 15\">"), b$ = /*#__PURE__*/ N("<div class=\"flex-1 overflow-y-auto\">"), x$ = /*#__PURE__*/ N("<div class=\"min-h-0 flex-1 overflow-y-auto pl-2 pr-3\"><div style=position:relative>"), S$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">My issues</span><div class=\"flex items-center gap-2\"></div></div><div class=\"border-border flex shrink-0 items-center gap-1 border-b px-3 py-1.5\">"), C$ = /*#__PURE__*/ N("<button>"), w$ = /*#__PURE__*/ N("<div style=position:absolute;top:0;left:0;width:100%>"), T$ = /*#__PURE__*/ N("<button class=\"w-full cursor-pointer rounded-md px-2 py-1.5 text-left hover:bg-surface-2 transition-colors\"><div class=\"flex items-center gap-1.5 min-w-0\"><span class=\"font-mono text-[11px] text-text-dim shrink-0\"></span><span class=\"truncate text-[12.5px] text-text\"></span></div><div class=\"mt-0.5 flex items-center gap-1.5\"><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), E$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M10.5 3.5 6 8l4.5 4.5\">"), D$ = /*#__PURE__*/ N("<span class=\"font-mono text-[11px] text-text-dim shrink-0\">"), O$ = /*#__PURE__*/ N("<span class=\"truncate text-[12px] font-medium text-text\">"), k$ = /*#__PURE__*/ N("<span class=\"text-[11.5px] text-text-faint\">Loading…"), A$ = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\"><span class=\"text-[11px] text-text-dim\">"), j$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2\">"), M$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Attachments</span><div class=\"flex flex-col gap-1\">"), N$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2.5\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Comments"), P$ = /*#__PURE__*/ N("<option value=local>Message local Claude Code session"), F$ = /*#__PURE__*/ N("<option value=new>Start NEW agent (@<!>)"), I$ = /*#__PURE__*/ N("<option value=comment>Comment only"), L$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=2.2></circle><path d=\"M8 1v3M8 12v3M1 8h3M12 8h3\">"), R$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), z$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M13 7.5 8.2 12.3a3.2 3.2 0 0 1-4.5-4.5L8.9 2.6a2.1 2.1 0 0 1 3 3L7.1 10.4a1 1 0 0 1-1.5-1.5l4.3-4.3\">"), B$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-left\">Send"), V$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 flex-col gap-1 border-b px-3 py-2\"><div class=\"flex items-center gap-2\"></div></div><div class=\"min-h-0 flex-1 overflow-y-auto pl-3 pr-4 py-3 flex flex-col gap-3\"></div><div class=\"border-border shrink-0 border-t p-2.5 flex flex-col gap-1.5\"><div class=\"flex items-center gap-2\">"), H$ = /*#__PURE__*/ N("<option selected>"), U$ = /*#__PURE__*/ N("<svg width=10 height=10 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), W$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><path d=\"M4.5 2.8a.8.8 0 0 1 1.22-.68l8 5.2a.8.8 0 0 1 0 1.36l-8 5.2a.8.8 0 0 1-1.22-.68V2.8Z\">"), G$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"m2.5 4 3.5 4-3.5 4M8 12.5h5.5\">"), K$ = /*#__PURE__*/ N("<div class=\"bg-surface border-border overflow-clip rounded-lg border\"><div class=\"border-border flex h-9 min-w-0 items-center justify-between gap-2 border-b px-3\"><div class=\"flex min-w-0 items-center gap-1.5 text-[11.5px] font-medium\"><span aria-hidden class=\"text-text-dim inline-flex\"></span><span class=\"text-text shrink-0\">Local Claude Code</span><span class=\"text-text-dim shrink-0\">started by you</span><span class=\"text-text-faint shrink-0 tabular-nums\">· </span></div></div><div class=\"flex h-9 items-center gap-1 pr-2\"><button class=\"hover:bg-surface-2 flex h-full min-w-0 flex-1 cursor-pointer items-center gap-2 rounded-md px-3 text-left transition-colors\"title=\"Open the live thread in the Local tab\"><span></span><span class=\"text-text-faint min-w-0 flex-1 truncate text-[11.5px]\"></span><svg width=14 height=14 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden class=\"text-text-dim shrink-0\"><path d=\"m6 3.5 4.5 4.5L6 12.5\">"), q$ = /*#__PURE__*/ N("<option>"), J$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), Y$ = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), X$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[6ch] text-center\">Merge"), Z$ = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><a target=_blank rel=noreferrer class=\"text-accent min-w-0 truncate text-[11.5px] hover:underline\">"), Q$ = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M8 2 14 5.5 8 9 2 5.5 8 2Z\"></path><path d=\"M2 10.5 8 14l6-3.5\">"), $$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><div class=\"flex items-center gap-1.5\"><span class=\"text-[11px] font-medium text-text-dim\"></span><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), e1 = /*#__PURE__*/ N("<option>Steer running agent<!> · "), t1 = /*#__PURE__*/ N("<span class=\"bg-danger inline-block size-2.5 rounded-full\"aria-hidden>"), n1 = /*#__PURE__*/ N("<span class=\"text-[11px] text-text-dim\">"), r1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden class=transition-transform><path d=\"m3.5 6.5 4.5 4 4.5-4\">"), i1 = /*#__PURE__*/ N("<p class=\"text-[12px] text-text leading-relaxed whitespace-pre-wrap break-words\">"), a1 = /*#__PURE__*/ N("<div class=\"border-border mt-0.5 flex flex-col gap-1 overflow-y-auto border-t pt-1.5 pl-0.5 pr-3\">"), o1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border rounded-lg border p-2.5 flex flex-col gap-1.5\"><div class=\"flex items-center gap-1.5 flex-wrap\"><span class=\"ml-auto tabular-nums text-[10.5px] text-text-faint\">"), s1 = /*#__PURE__*/ N("<p class=\"font-mono text-text-faint text-[10.5px] leading-relaxed break-words\">→ <!> "), c1 = /*#__PURE__*/ N("<div>");
43242
+ function l1(e) {
43243
43243
  let t = k(() => h$(e.text));
43244
43244
  return (() => {
43245
43245
  var e = g$();
43246
43246
  return D(() => e.innerHTML = t()), e;
43247
43247
  })();
43248
43248
  }
43249
- function l1() {
43249
+ function u1() {
43250
43250
  let [e, t] = T(null);
43251
43251
  return O(() => {
43252
43252
  let e = rj();
@@ -43258,7 +43258,7 @@ function l1() {
43258
43258
  return e() === null;
43259
43259
  },
43260
43260
  get fallback() {
43261
- return j(f1, {
43261
+ return j(p1, {
43262
43262
  get issueId() {
43263
43263
  return e();
43264
43264
  },
@@ -43266,12 +43266,12 @@ function l1() {
43266
43266
  });
43267
43267
  },
43268
43268
  get children() {
43269
- return j(u1, { onSelect: (e) => t(e) });
43269
+ return j(d1, { onSelect: (e) => t(e) });
43270
43270
  }
43271
43271
  })), n;
43272
43272
  })();
43273
43273
  }
43274
- function u1(e) {
43274
+ function d1(e) {
43275
43275
  let t, n = _r(() => ({
43276
43276
  queryKey: ["my-issues"],
43277
43277
  queryFn: fO,
@@ -43403,7 +43403,7 @@ function u1(e) {
43403
43403
  },
43404
43404
  get children() {
43405
43405
  var r = w$();
43406
- return P(r, j(d1, {
43406
+ return P(r, j(f1, {
43407
43407
  get issue() {
43408
43408
  return n();
43409
43409
  },
@@ -43422,7 +43422,7 @@ function u1(e) {
43422
43422
  }), null), r;
43423
43423
  })();
43424
43424
  }
43425
- function d1(e) {
43425
+ function f1(e) {
43426
43426
  return (() => {
43427
43427
  var t = T$(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = n.nextSibling, o = a.firstChild;
43428
43428
  return t.$$click = () => e.onSelect(e.issue.id), P(n, j(zj, { get color() {
@@ -43470,7 +43470,7 @@ function d1(e) {
43470
43470
  }), o), P(o, () => Uj(e.issue.updatedAt)), t;
43471
43471
  })();
43472
43472
  }
43473
- function f1(e) {
43473
+ function p1(e) {
43474
43474
  let t = sr(), n = _r(() => ({
43475
43475
  queryKey: ["issue", e.issueId],
43476
43476
  queryFn: () => pO(e.issueId),
@@ -43511,24 +43511,50 @@ function f1(e) {
43511
43511
  label: "Haiku"
43512
43512
  }
43513
43513
  ], s = vr(() => ({
43514
+ mutationFn: async (t) => {
43515
+ let r = n.data?.attachments.find((e) => /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i.test(e.url)), i = r ? se.data?.previews[r.url] : void 0, a = [...t.activities].reverse().find((e) => e.content.__typename === "AgentActivityResponseContent")?.content.body, o = [
43516
+ "✅ **Closeout** (posted from the panel — one-click acceptance)",
43517
+ "",
43518
+ `**Fix:** ${(t.summary ?? a ?? "Fix complete — see the PR.").slice(0, 600)}`,
43519
+ "",
43520
+ ...r ? [`**PR:** ${r.url}`] : [],
43521
+ ...i ? [`**Deploy preview:** ${i}`] : [],
43522
+ "",
43523
+ "**DEFINITION OF DONE — acceptance checklist**",
43524
+ `- [x] PR opened and linked${r ? ` — ${r.url}` : ""}`,
43525
+ i ? "- [x] Deploy-preview URL included (above)" : "- [ ] Deploy-preview URL — none found on the PR",
43526
+ "- [x] Issue moved to review state (this action)",
43527
+ "- [ ] Demo media on the issue — attach from the PR/agent artifacts if recorded"
43528
+ ];
43529
+ await CO(e.issueId, o.join("\n"), t.comment?.id ?? void 0);
43530
+ let s = n.data?.team?.id;
43531
+ if (s) {
43532
+ let t = await vO(s), n = t.find((e) => e.type === "started" && /review/i.test(e.name)) ?? t.filter((e) => e.type === "completed").sort((e, t) => e.position - t.position)[0];
43533
+ n && await yO(e.issueId, n.id);
43534
+ }
43535
+ },
43536
+ onSuccess: () => {
43537
+ t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["sessions", e.issueId] });
43538
+ }
43539
+ })), c = vr(() => ({
43514
43540
  mutationFn: (e) => LO(e.id, e.model),
43515
43541
  onSuccess: (e) => {
43516
43542
  t.setQueryData(["bridge-tasks"], (t) => t?.map((t) => t.id === e.id ? e : t));
43517
43543
  }
43518
- })), c = vr(() => ({
43544
+ })), l = vr(() => ({
43519
43545
  mutationFn: (e) => IO(e, "Continue where you left off. If the work is already complete, finish any remaining closeout steps (PR, Linear update, announcement)."),
43520
43546
  onSuccess: () => void t.invalidateQueries({ queryKey: ["bridge-tasks"] })
43521
- })), l = vr(() => ({
43547
+ })), u = vr(() => ({
43522
43548
  mutationFn: (e) => RO(e),
43523
43549
  onSuccess: () => void t.invalidateQueries({ queryKey: ["bridge-tasks"] })
43524
- })), [u, d] = T(!1), f = async (e) => {
43550
+ })), [d, f] = T(!1), p = async (e) => {
43525
43551
  try {
43526
- await navigator.clipboard.writeText(YO(e)), d(!0), setTimeout(() => d(!1), 1800);
43552
+ await navigator.clipboard.writeText(YO(e)), f(!0), setTimeout(() => f(!1), 1800);
43527
43553
  } catch {}
43528
- }, p = k(() => {
43554
+ }, m = k(() => {
43529
43555
  let e = n.data?.identifier;
43530
43556
  return e ? a.data?.find((t) => t.title.startsWith(e)) : void 0;
43531
- }), m = (e) => e.status === "running" ? {
43557
+ }), h = (e) => e.status === "running" ? {
43532
43558
  word: "Working…",
43533
43559
  cls: "text-accent"
43534
43560
  } : e.status === "done" ? {
@@ -43540,68 +43566,68 @@ function f1(e) {
43540
43566
  } : {
43541
43567
  word: "Error",
43542
43568
  cls: "text-danger"
43543
- }, [h, g] = br(`activity-reply:${e.issueId}`, ""), [_, v] = T(null), [y, b] = T(0), x = _r(() => ({
43569
+ }, [g, _] = br(`activity-reply:${e.issueId}`, ""), [v, y] = T(null), [b, x] = T(0), S = _r(() => ({
43544
43570
  queryKey: ["grab"],
43545
43571
  queryFn: Dr,
43546
43572
  enabled: sj() === "composer"
43547
- })), [S, C] = T(!1), w = async () => {
43548
- C(!0), v(null);
43573
+ })), [C, w] = T(!1), E = async () => {
43574
+ w(!0), y(null);
43549
43575
  try {
43550
43576
  let e = await a$();
43551
- e ? g((t) => `${t ? `${t}\n` : ""}${e}\n`) : v("Nothing captured yet — pick an element, capture a region, or record first.");
43577
+ e ? _((t) => `${t ? `${t}\n` : ""}${e}\n`) : y("Nothing captured yet — pick an element, capture a region, or record first.");
43552
43578
  } catch (e) {
43553
- v(e instanceof Error ? e.message : "Attach failed.");
43579
+ y(e instanceof Error ? e.message : "Attach failed.");
43554
43580
  } finally {
43555
- C(!1);
43581
+ w(!1);
43556
43582
  }
43557
- }, E = () => {
43583
+ }, ee = () => {
43558
43584
  if (sj() === "composer") {
43559
43585
  lj("capture");
43560
43586
  return;
43561
43587
  }
43562
- b(Date.now()), lj("composer"), qZ().catch(() => lj("capture"));
43588
+ x(Date.now()), lj("composer"), qZ().catch(() => lj("capture"));
43563
43589
  };
43564
43590
  O(() => {
43565
43591
  if (sj() !== "composer") return;
43566
- let e = (x.data ?? []).filter((e) => e.grabbedAt > y());
43592
+ let e = (S.data ?? []).filter((e) => e.grabbedAt > b());
43567
43593
  if (!e.length) return;
43568
43594
  let t = e.map((e) => {
43569
43595
  let t = e.source?.filePath ? ` — \`${e.source.filePath}${e.source.lineNumber == null ? "" : `:${e.source.lineNumber}`}\`` : "";
43570
43596
  return `- \`<${e.componentName ?? e.tagName ?? "element"}>\`${t}`;
43571
43597
  }).join("\n");
43572
- g((e) => `${e ? `${e}\n` : ""}${t}\n`), b(Math.max(...e.map((e) => e.grabbedAt)));
43598
+ _((e) => `${e ? `${e}\n` : ""}${t}\n`), x(Math.max(...e.map((e) => e.grabbedAt)));
43573
43599
  });
43574
- let [ee, te] = T(HD());
43575
- ae(UD(te));
43576
- let A = !1;
43600
+ let [te, A] = T(HD());
43601
+ ae(UD(A));
43602
+ let ne = !1;
43577
43603
  O(() => {
43578
- ee().phase === "ready" && A && (A = !1, w());
43604
+ te().phase === "ready" && ne && (ne = !1, E());
43579
43605
  });
43580
- let ne = () => {
43581
- ee().phase === "recording" ? eO() : (A = !0, $D());
43582
- }, re = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i, ie = k(() => (n.data?.attachments ?? []).map((e) => e.url).filter((e) => re.test(e))), oe = _r(() => ({
43583
- queryKey: ["pr-status", ie().sort().join("|")],
43584
- queryFn: () => HO(ie()),
43606
+ let re = () => {
43607
+ te().phase === "recording" ? eO() : (ne = !0, $D());
43608
+ }, ie = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i, oe = k(() => (n.data?.attachments ?? []).map((e) => e.url).filter((e) => ie.test(e))), se = _r(() => ({
43609
+ queryKey: ["pr-status", oe().sort().join("|")],
43610
+ queryFn: () => HO(oe()),
43585
43611
  refetchInterval: 3e4,
43586
43612
  retry: 0,
43587
- enabled: ie().length > 0
43588
- })), se = (e) => ge().has(e) ? "MERGED" : oe.data?.statuses[e], [ce, le] = T(null), ue = () => i.data?.stagingBranch?.trim() || "staging", [de, fe] = T(null), [pe, me] = T(/* @__PURE__ */ new Set()), he = async (e) => {
43589
- fe(e);
43613
+ enabled: oe().length > 0
43614
+ })), ce = (e) => _e().has(e) ? "MERGED" : se.data?.statuses[e], [le, ue] = T(null), de = () => i.data?.stagingBranch?.trim() || "staging", [fe, pe] = T(null), [me, he] = T(/* @__PURE__ */ new Set()), ge = async (e) => {
43615
+ pe(e);
43590
43616
  try {
43591
- await UO(e, ue()), me((t) => new Set(t).add(e));
43617
+ await UO(e, de()), he((t) => new Set(t).add(e));
43592
43618
  } catch {} finally {
43593
- fe(null);
43619
+ pe(null);
43594
43620
  }
43595
- }, [ge, _e] = T(/* @__PURE__ */ new Set()), [ve, ye] = T(null), be = async (n) => {
43596
- ye(null), le(n);
43621
+ }, [_e, ve] = T(/* @__PURE__ */ new Set()), [ye, be] = T(null), xe = async (n) => {
43622
+ be(null), ue(n);
43597
43623
  try {
43598
- await qO(n), _e((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }), JQ();
43624
+ await qO(n), ve((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }), JQ();
43599
43625
  } catch (e) {
43600
- ye(e instanceof Error ? `${e.message} (bridge must be running; gh needs merge rights)` : "Merge failed.");
43626
+ be(e instanceof Error ? `${e.message} (bridge must be running; gh needs merge rights)` : "Merge failed.");
43601
43627
  } finally {
43602
- le(null);
43628
+ ue(null);
43603
43629
  }
43604
- }, xe = k(() => {
43630
+ }, Se = k(() => {
43605
43631
  let e = n.data ? TO(n.data.comments) : [], t = new Set(e.map((e) => e.id));
43606
43632
  return [...(r.data ?? []).filter((e) => e.comment?.id && !t.has(e.comment.id)).map((e) => ({
43607
43633
  id: e.comment.id,
@@ -43613,26 +43639,26 @@ function f1(e) {
43613
43639
  },
43614
43640
  parent: null
43615
43641
  })), ...e];
43616
- }), [Se, Ce] = T("comment"), we = !1, Te = !1;
43642
+ }), [Ce, we] = T("comment"), Te = !1, Ee = !1;
43617
43643
  O(() => {
43618
- if (Te || !n.data || !i.data) return;
43619
- Te = !0;
43620
- let e = xe();
43621
- e.length ? Ce(`thread:${e[0].id}`) : n.data.delegate && i.data.cursorAgentId && Ce("new");
43644
+ if (Ee || !n.data || !i.data) return;
43645
+ Ee = !0;
43646
+ let e = Se();
43647
+ e.length ? we(`thread:${e[0].id}`) : n.data.delegate && i.data.cursorAgentId && we("new");
43622
43648
  }), O(() => {
43623
- we || p() && (Se() === "comment" || Se() === "new") && Ce("local");
43649
+ Te || m() && (Ce() === "comment" || Ce() === "new") && we("local");
43624
43650
  }), O(() => {
43625
- if (we) return;
43626
- let e = xe();
43627
- e.length && (Se() === "comment" || Se() === "new") && Ce(`thread:${e[0].id}`);
43651
+ if (Te) return;
43652
+ let e = Se();
43653
+ e.length && (Ce() === "comment" || Ce() === "new") && we(`thread:${e[0].id}`);
43628
43654
  });
43629
- let Ee = vr(() => ({
43655
+ let De = vr(() => ({
43630
43656
  mutationFn: async () => {
43631
- let t = h().trim();
43657
+ let t = g().trim();
43632
43658
  if (!t) throw Error("Message is empty");
43633
- let n = i.data ?? {}, r = Se();
43659
+ let n = i.data ?? {}, r = Ce();
43634
43660
  if (r === "local") {
43635
- let n = p();
43661
+ let n = m();
43636
43662
  if (!n) throw Error("Local session not found — is the bridge running?");
43637
43663
  await IO(n.id, t), await CO(e.issueId, `🖥️ **→ local agent:** ${t}`).catch(() => {});
43638
43664
  } else r.startsWith("thread:") ? await CO(e.issueId, t, r.slice(7)) : r === "new" && n.cursorAgentId ? await wO(e.issueId, t, {
@@ -43642,14 +43668,14 @@ function f1(e) {
43642
43668
  }) : await CO(e.issueId, t);
43643
43669
  },
43644
43670
  onSuccess: () => {
43645
- g(""), v(null), lj("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), JQ();
43671
+ _(""), y(null), lj("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), JQ();
43646
43672
  },
43647
43673
  onError: (e) => {
43648
- v(e.message ?? "Failed to send");
43674
+ y(e.message ?? "Failed to send");
43649
43675
  }
43650
- })), De = k(() => n.data), Oe = k(() => r.data ?? []);
43676
+ })), Oe = k(() => n.data), ke = k(() => r.data ?? []);
43651
43677
  return (() => {
43652
- var t = V$(), r = t.firstChild, a = r.firstChild, d = r.nextSibling, v = d.nextSibling, y = v.firstChild;
43678
+ var t = V$(), r = t.firstChild, a = r.firstChild, f = r.nextSibling, y = f.nextSibling, b = y.firstChild;
43653
43679
  return P(a, j(Oj, {
43654
43680
  variant: "ghost",
43655
43681
  class: "size-7 shrink-0 px-0",
@@ -43664,56 +43690,56 @@ function f1(e) {
43664
43690
  }
43665
43691
  }), null), P(a, j(M, {
43666
43692
  get when() {
43667
- return De();
43693
+ return Oe();
43668
43694
  },
43669
43695
  get children() {
43670
43696
  return [(() => {
43671
43697
  var e = D$();
43672
- return P(e, () => De().identifier), e;
43698
+ return P(e, () => Oe().identifier), e;
43673
43699
  })(), (() => {
43674
43700
  var e = O$();
43675
- return P(e, () => De().title), e;
43701
+ return P(e, () => Oe().title), e;
43676
43702
  })()];
43677
43703
  }
43678
43704
  }), null), P(a, j(M, {
43679
43705
  get when() {
43680
- return $e(() => !!n.isPending)() && !De();
43706
+ return $e(() => !!n.isPending)() && !Oe();
43681
43707
  },
43682
43708
  get children() {
43683
43709
  return k$();
43684
43710
  }
43685
43711
  }), null), P(r, j(M, {
43686
43712
  get when() {
43687
- return De();
43713
+ return Oe();
43688
43714
  },
43689
43715
  get children() {
43690
43716
  var e = A$(), t = e.firstChild;
43691
43717
  return P(e, j(zj, { get color() {
43692
- return De().state.color;
43693
- } }), t), P(t, () => De().state.name), P(e, j(Fj, {
43718
+ return Oe().state.color;
43719
+ } }), t), P(t, () => Oe().state.name), P(e, j(Fj, {
43694
43720
  get href() {
43695
- return De().url;
43721
+ return Oe().url;
43696
43722
  },
43697
43723
  class: "ml-auto shrink-0",
43698
43724
  children: "Open in Linear"
43699
43725
  }), null), e;
43700
43726
  }
43701
- }), null), P(d, j(M, {
43727
+ }), null), P(f, j(M, {
43702
43728
  get when() {
43703
- return p();
43729
+ return m();
43704
43730
  },
43705
43731
  children: (e) => {
43706
- let t = () => m(e());
43732
+ let t = () => h(e());
43707
43733
  return (() => {
43708
43734
  var n = K$(), r = n.firstChild, i = r.firstChild.firstChild, a = i.nextSibling.nextSibling.nextSibling;
43709
43735
  a.firstChild;
43710
- var d = r.nextSibling, p = d.firstChild, m = p.firstChild, h = m.nextSibling;
43736
+ var s = r.nextSibling, f = s.firstChild, m = f.firstChild, h = m.nextSibling;
43711
43737
  return P(i, j(Pj, { size: 12 })), P(a, () => Uj(e().startedAt), null), P(r, j(Mj, {
43712
43738
  class: "h-6 w-auto max-w-[110px] shrink-0 text-[10.5px]",
43713
43739
  get value() {
43714
43740
  return e().pendingModel ?? e().model ?? "";
43715
43741
  },
43716
- onChange: (t) => s.mutate({
43742
+ onChange: (t) => c.mutate({
43717
43743
  id: e().id,
43718
43744
  model: t.currentTarget.value
43719
43745
  }),
@@ -43735,7 +43761,7 @@ function f1(e) {
43735
43761
  }
43736
43762
  })];
43737
43763
  }
43738
- }), null), p.$$click = () => aj("local"), P(p, j(M, {
43764
+ }), null), f.$$click = () => aj("local"), P(f, j(M, {
43739
43765
  get when() {
43740
43766
  return e().status === "running";
43741
43767
  },
@@ -43745,7 +43771,7 @@ function f1(e) {
43745
43771
  }), m), P(m, () => t().word), P(h, (() => {
43746
43772
  var t = $e(() => e().status === "done");
43747
43773
  return () => t() ? e().result ?? e().lastText : e().lastText;
43748
- })()), P(d, j(M, {
43774
+ })()), P(s, j(M, {
43749
43775
  get when() {
43750
43776
  return e().status === "running";
43751
43777
  },
@@ -43754,17 +43780,17 @@ function f1(e) {
43754
43780
  variant: "danger",
43755
43781
  class: "size-6 shrink-0 px-0",
43756
43782
  get loading() {
43757
- return l.isPending;
43783
+ return u.isPending;
43758
43784
  },
43759
43785
  title: "Stop the session — resumable afterwards",
43760
43786
  "aria-label": "Stop session",
43761
- onClick: () => l.mutate(e().id),
43787
+ onClick: () => u.mutate(e().id),
43762
43788
  get children() {
43763
43789
  return U$();
43764
43790
  }
43765
43791
  });
43766
43792
  }
43767
- }), null), P(d, j(M, {
43793
+ }), null), P(s, j(M, {
43768
43794
  get when() {
43769
43795
  return $e(() => e().status !== "running")() && e().sessionId;
43770
43796
  },
@@ -43773,19 +43799,19 @@ function f1(e) {
43773
43799
  variant: "ghost",
43774
43800
  class: "size-6 shrink-0 px-0",
43775
43801
  get loading() {
43776
- return c.isPending;
43802
+ return l.isPending;
43777
43803
  },
43778
43804
  get title() {
43779
43805
  return `Run again — resumes this session${e().pendingModel ? ` on ${e().pendingModel}` : ""}`;
43780
43806
  },
43781
43807
  "aria-label": "Resume session",
43782
- onClick: () => c.mutate(e().id),
43808
+ onClick: () => l.mutate(e().id),
43783
43809
  get children() {
43784
43810
  return W$();
43785
43811
  }
43786
43812
  });
43787
43813
  }
43788
- }), null), P(d, j(M, {
43814
+ }), null), P(s, j(M, {
43789
43815
  get when() {
43790
43816
  return e().sessionId;
43791
43817
  },
@@ -43794,10 +43820,10 @@ function f1(e) {
43794
43820
  variant: "ghost",
43795
43821
  class: "size-6 shrink-0 px-0",
43796
43822
  get title() {
43797
- return u() ? "Copied!" : "Copy terminal resume command (claude --resume …)";
43823
+ return d() ? "Copied!" : "Copy terminal resume command (claude --resume …)";
43798
43824
  },
43799
43825
  "aria-label": "Copy resume command",
43800
- onClick: () => void f(e()),
43826
+ onClick: () => void p(e()),
43801
43827
  get children() {
43802
43828
  return G$();
43803
43829
  }
@@ -43806,41 +43832,60 @@ function f1(e) {
43806
43832
  }), null), D(() => st(m, `shrink-0 text-[11.5px] font-medium ${t().cls}`)), n;
43807
43833
  })();
43808
43834
  }
43809
- }), null), P(d, j(M, {
43835
+ }), null), P(f, j(M, {
43810
43836
  get when() {
43811
- return Oe().length > 0;
43837
+ return ke().length > 0;
43812
43838
  },
43813
43839
  get children() {
43814
43840
  var e = j$();
43815
43841
  return P(e, j(We, {
43816
43842
  get each() {
43817
- return Oe();
43843
+ return ke();
43818
43844
  },
43819
- children: (e) => j(p1, { session: e })
43845
+ children: (e) => (() => {
43846
+ var t = J$();
43847
+ return P(t, j(m1, { session: e }), null), P(t, j(M, {
43848
+ get when() {
43849
+ return $e(() => !!(/complete/i.test(e.status) && n.data?.state.type === "started"))() && !/review/i.test(n.data?.state.name ?? "");
43850
+ },
43851
+ get children() {
43852
+ return j(Oj, {
43853
+ variant: "primary",
43854
+ class: "self-start",
43855
+ get loading() {
43856
+ return s.isPending;
43857
+ },
43858
+ title: "Post the acceptance comment (fix summary, PR, preview, checklist) in the agent thread and move the issue to review",
43859
+ onClick: () => s.mutate(e),
43860
+ children: "Post closeout to Linear"
43861
+ });
43862
+ }
43863
+ }), null), t;
43864
+ })()
43820
43865
  })), e;
43821
43866
  }
43822
- }), null), P(d, j(M, {
43867
+ }), null), P(f, j(M, {
43823
43868
  get when() {
43824
- return $e(() => !!De())() && De().attachments.length > 0;
43869
+ return $e(() => !!Oe())() && Oe().attachments.length > 0;
43825
43870
  },
43826
43871
  get children() {
43827
43872
  var e = M$(), t = e.firstChild.nextSibling;
43828
43873
  return P(t, j(We, {
43829
43874
  get each() {
43830
- return De().attachments;
43875
+ return Oe().attachments;
43831
43876
  },
43832
43877
  children: (e) => {
43833
43878
  let t = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i.test(e.url);
43834
43879
  return [(() => {
43835
- var n = X$(), r = n.firstChild;
43880
+ var n = Z$(), r = n.firstChild;
43836
43881
  return P(r, () => e.title), P(n, j(M, {
43837
43882
  get when() {
43838
- return t && oe.data?.previews[e.url];
43883
+ return t && se.data?.previews[e.url];
43839
43884
  },
43840
43885
  get children() {
43841
43886
  return j(Fj, {
43842
43887
  get href() {
43843
- return oe.data.previews[e.url];
43888
+ return se.data.previews[e.url];
43844
43889
  },
43845
43890
  class: "shrink-0",
43846
43891
  title: "Vercel deploy preview of this PR's branch",
@@ -43849,47 +43894,47 @@ function f1(e) {
43849
43894
  }
43850
43895
  }), null), P(n, j(M, {
43851
43896
  get when() {
43852
- return $e(() => !!(t && se(e.url)))() && se(e.url) !== "OPEN";
43897
+ return $e(() => !!(t && ce(e.url)))() && ce(e.url) !== "OPEN";
43853
43898
  },
43854
43899
  get children() {
43855
43900
  return j(Rj, {
43856
43901
  get class() {
43857
- return `ml-auto shrink-0 ${se(e.url) === "MERGED" ? "text-success" : "text-text-faint"}`;
43902
+ return `ml-auto shrink-0 ${ce(e.url) === "MERGED" ? "text-success" : "text-text-faint"}`;
43858
43903
  },
43859
43904
  get children() {
43860
- return se(e.url) === "MERGED" ? "✓ merged" : "closed";
43905
+ return ce(e.url) === "MERGED" ? "✓ merged" : "closed";
43861
43906
  }
43862
43907
  });
43863
43908
  }
43864
43909
  }), null), P(n, j(M, {
43865
43910
  get when() {
43866
- return t && (!se(e.url) || se(e.url) === "OPEN");
43911
+ return t && (!ce(e.url) || ce(e.url) === "OPEN");
43867
43912
  },
43868
43913
  get children() {
43869
43914
  return [j(Oj, {
43870
43915
  variant: "ghost",
43871
43916
  class: "ml-auto size-6 shrink-0 px-0",
43872
43917
  get loading() {
43873
- return de() === e.url;
43918
+ return fe() === e.url;
43874
43919
  },
43875
43920
  get disabled() {
43876
- return pe().has(e.url);
43921
+ return me().has(e.url);
43877
43922
  },
43878
43923
  get title() {
43879
- return $e(() => !!pe().has(e.url))() ? `On ${ue()} — staging preview deploying` : `Merge into ${ue()} — deploys the staging preview domain`;
43924
+ return $e(() => !!me().has(e.url))() ? `On ${de()} — staging preview deploying` : `Merge into ${de()} — deploys the staging preview domain`;
43880
43925
  },
43881
43926
  "aria-label": "Merge to staging",
43882
- onClick: () => void he(e.url),
43927
+ onClick: () => void ge(e.url),
43883
43928
  get children() {
43884
43929
  return j(M, {
43885
43930
  get when() {
43886
- return pe().has(e.url);
43931
+ return me().has(e.url);
43887
43932
  },
43888
43933
  get fallback() {
43889
- return Z$();
43934
+ return Q$();
43890
43935
  },
43891
43936
  get children() {
43892
- return J$();
43937
+ return Y$();
43893
43938
  }
43894
43939
  });
43895
43940
  }
@@ -43897,14 +43942,14 @@ function f1(e) {
43897
43942
  variant: "primary",
43898
43943
  class: "h-6 shrink-0 px-2 text-[11px]",
43899
43944
  get loading() {
43900
- return ce() === e.url;
43945
+ return le() === e.url;
43901
43946
  },
43902
43947
  get title() {
43903
- return oe.isError ? "PR state unknown — restart the bridge (npx linear-grab-bridge) for live merge status" : "Squash-merge this PR via the bridge gh — reviewed the demo? Ship it.";
43948
+ return se.isError ? "PR state unknown — restart the bridge (npx linear-grab-bridge) for live merge status" : "Squash-merge this PR via the bridge gh — reviewed the demo? Ship it.";
43904
43949
  },
43905
- onClick: () => void be(e.url),
43950
+ onClick: () => void xe(e.url),
43906
43951
  get children() {
43907
- return Y$();
43952
+ return X$();
43908
43953
  }
43909
43954
  })];
43910
43955
  }
@@ -43917,7 +43962,7 @@ function f1(e) {
43917
43962
  }), n;
43918
43963
  })(), j(M, {
43919
43964
  get when() {
43920
- return pe().has(e.url);
43965
+ return me().has(e.url);
43921
43966
  },
43922
43967
  get children() {
43923
43968
  return j(r$, {
@@ -43925,7 +43970,7 @@ function f1(e) {
43925
43970
  return e.url;
43926
43971
  },
43927
43972
  get base() {
43928
- return ue();
43973
+ return de();
43929
43974
  }
43930
43975
  });
43931
43976
  }
@@ -43933,29 +43978,29 @@ function f1(e) {
43933
43978
  }
43934
43979
  }), null), P(t, j(M, {
43935
43980
  get when() {
43936
- return ve();
43981
+ return ye();
43937
43982
  },
43938
43983
  get children() {
43939
43984
  return j(Vj, { get message() {
43940
- return ve();
43985
+ return ye();
43941
43986
  } });
43942
43987
  }
43943
43988
  }), null), e;
43944
43989
  }
43945
- }), null), P(d, j(M, {
43990
+ }), null), P(f, j(M, {
43946
43991
  get when() {
43947
- return $e(() => !!De())() && De().comments.length > 0;
43992
+ return $e(() => !!Oe())() && Oe().comments.length > 0;
43948
43993
  },
43949
43994
  get children() {
43950
43995
  var e = N$();
43951
43996
  return e.firstChild, P(e, j(Ge, {
43952
43997
  get each() {
43953
- return De().comments;
43998
+ return Oe().comments;
43954
43999
  },
43955
44000
  children: (e) => {
43956
44001
  let t = e();
43957
44002
  return (() => {
43958
- var e = Q$(), n = e.firstChild, r = n.firstChild, i = r.nextSibling;
44003
+ var e = $$(), n = e.firstChild, r = n.firstChild, i = r.nextSibling;
43959
44004
  return P(r, () => t.user?.displayName ?? t.user?.name ?? "Unknown"), P(n, j(M, {
43960
44005
  get when() {
43961
44006
  return t.user?.app;
@@ -43963,16 +44008,16 @@ function f1(e) {
43963
44008
  get children() {
43964
44009
  return j(Rj, { children: "agent" });
43965
44010
  }
43966
- }), i), P(i, () => Uj(t.createdAt)), P(e, j(c1, { get text() {
44011
+ }), i), P(i, () => Uj(t.createdAt)), P(e, j(l1, { get text() {
43967
44012
  return t.body;
43968
44013
  } }), null), e;
43969
44014
  })();
43970
44015
  }
43971
44016
  }), null), e;
43972
44017
  }
43973
- }), null), P(d, j(M, {
44018
+ }), null), P(f, j(M, {
43974
44019
  get when() {
43975
- return $e(() => !!(De() && De().comments.length === 0))() && Oe().length === 0;
44020
+ return $e(() => !!(Oe() && Oe().comments.length === 0))() && ke().length === 0;
43976
44021
  },
43977
44022
  get children() {
43978
44023
  return j(Bj, {
@@ -43980,9 +44025,9 @@ function f1(e) {
43980
44025
  children: "Comments and agent sessions will appear here."
43981
44026
  });
43982
44027
  }
43983
- }), null), P(d, j(M, {
44028
+ }), null), P(f, j(M, {
43984
44029
  get when() {
43985
- return $e(() => !!n.isError)() && !De();
44030
+ return $e(() => !!n.isError)() && !Oe();
43986
44031
  },
43987
44032
  get children() {
43988
44033
  return j(Bj, {
@@ -43992,54 +44037,54 @@ function f1(e) {
43992
44037
  }
43993
44038
  });
43994
44039
  }
43995
- }), null), P(v, j(M, {
44040
+ }), null), P(y, j(M, {
43996
44041
  get when() {
43997
- return _();
44042
+ return v();
43998
44043
  },
43999
44044
  get children() {
44000
44045
  return j(Vj, { get message() {
44001
- return _();
44046
+ return v();
44002
44047
  } });
44003
44048
  }
44004
- }), y), P(v, j(jj, {
44049
+ }), b), P(y, j(jj, {
44005
44050
  rows: 2,
44006
44051
  placeholder: "Reply — steer the agent or add context…",
44007
44052
  get value() {
44008
- return h();
44053
+ return g();
44009
44054
  },
44010
- onInput: (e) => g(e.target.value),
44055
+ onInput: (e) => _(e.target.value),
44011
44056
  get disabled() {
44012
- return Ee.isPending;
44057
+ return De.isPending;
44013
44058
  }
44014
- }), y), P(y, j(Mj, {
44059
+ }), b), P(b, j(Mj, {
44015
44060
  class: "min-w-0 flex-1",
44016
44061
  get value() {
44017
- return Se();
44062
+ return Ce();
44018
44063
  },
44019
44064
  onChange: (e) => {
44020
- we = !0, Ce(e.currentTarget.value);
44065
+ Te = !0, we(e.currentTarget.value);
44021
44066
  },
44022
44067
  get children() {
44023
44068
  return [
44024
44069
  j(M, {
44025
44070
  get when() {
44026
- return p();
44071
+ return m();
44027
44072
  },
44028
44073
  get children() {
44029
44074
  var e = P$();
44030
- return D(() => e.selected = Se() === "local"), e;
44075
+ return D(() => e.selected = Ce() === "local"), e;
44031
44076
  }
44032
44077
  }),
44033
44078
  j(We, {
44034
44079
  get each() {
44035
- return xe();
44080
+ return Se();
44036
44081
  },
44037
44082
  children: (e, t) => (() => {
44038
- var n = $$(), r = n.firstChild.nextSibling;
44083
+ var n = e1(), r = n.firstChild.nextSibling;
44039
44084
  return r.nextSibling, P(n, (() => {
44040
- var e = $e(() => xe().length > 1);
44085
+ var e = $e(() => Se().length > 1);
44041
44086
  return () => e() ? ` #${t() + 1}` : "";
44042
- })(), r), P(n, () => Uj(e.createdAt), null), D(() => n.selected = Se() === `thread:${e.id}`), D(() => n.value = `thread:${e.id}`), n;
44087
+ })(), r), P(n, () => Uj(e.createdAt), null), D(() => n.selected = Ce() === `thread:${e.id}`), D(() => n.value = `thread:${e.id}`), n;
44043
44088
  })()
44044
44089
  }),
44045
44090
  j(M, {
@@ -44048,16 +44093,16 @@ function f1(e) {
44048
44093
  },
44049
44094
  get children() {
44050
44095
  var e = F$(), t = e.firstChild.nextSibling;
44051
- return t.nextSibling, P(e, () => i.data?.cursorAgentName ?? "Cursor", t), D(() => e.selected = Se() === "new"), e;
44096
+ return t.nextSibling, P(e, () => i.data?.cursorAgentName ?? "Cursor", t), D(() => e.selected = Ce() === "new"), e;
44052
44097
  }
44053
44098
  }),
44054
44099
  (() => {
44055
44100
  var e = I$();
44056
- return D(() => e.selected = Se() === "comment"), e;
44101
+ return D(() => e.selected = Ce() === "comment"), e;
44057
44102
  })()
44058
44103
  ];
44059
44104
  }
44060
- }), null), P(y, j(Oj, {
44105
+ }), null), P(b, j(Oj, {
44061
44106
  variant: "ghost",
44062
44107
  get class() {
44063
44108
  return `size-7 shrink-0 px-0 ${sj() === "composer" ? "text-accent" : ""}`;
@@ -44066,62 +44111,62 @@ function f1(e) {
44066
44111
  return sj() === "composer" ? "Pick mode ON — every pick appends here. Click to stop." : "Pick elements — refs append to this reply (stays on until toggled off or sent)";
44067
44112
  },
44068
44113
  "aria-label": "Pick element for reply",
44069
- onClick: E,
44114
+ onClick: ee,
44070
44115
  get children() {
44071
44116
  return L$();
44072
44117
  }
44073
- }), null), P(y, j(Oj, {
44118
+ }), null), P(b, j(Oj, {
44074
44119
  variant: "ghost",
44075
44120
  get class() {
44076
- return `size-7 shrink-0 px-0 ${ee().phase === "recording" ? "text-danger" : ""}`;
44121
+ return `size-7 shrink-0 px-0 ${te().phase === "recording" ? "text-danger" : ""}`;
44077
44122
  },
44078
44123
  get title() {
44079
- return ee().phase === "recording" ? "Stop recording — the GIF auto-attaches to this reply" : "Record a GIF from this thread (auto-attaches when done)";
44124
+ return te().phase === "recording" ? "Stop recording — the GIF auto-attaches to this reply" : "Record a GIF from this thread (auto-attaches when done)";
44080
44125
  },
44081
44126
  "aria-label": "Record GIF",
44082
- onClick: ne,
44127
+ onClick: re,
44083
44128
  get children() {
44084
44129
  return j(M, {
44085
44130
  get when() {
44086
- return ee().phase === "recording";
44131
+ return te().phase === "recording";
44087
44132
  },
44088
44133
  get fallback() {
44089
- return e1();
44134
+ return t1();
44090
44135
  },
44091
44136
  get children() {
44092
44137
  return R$();
44093
44138
  }
44094
44139
  });
44095
44140
  }
44096
- }), null), P(y, j(Oj, {
44141
+ }), null), P(b, j(Oj, {
44097
44142
  variant: "ghost",
44098
44143
  class: "size-7 shrink-0 px-0",
44099
44144
  get loading() {
44100
- return S();
44145
+ return C();
44101
44146
  },
44102
44147
  title: "Attach captures — element refs, screenshots, region shots, recording GIF",
44103
44148
  "aria-label": "Attach captures",
44104
- onClick: () => void w(),
44149
+ onClick: () => void E(),
44105
44150
  get children() {
44106
44151
  return z$();
44107
44152
  }
44108
- }), null), P(y, j(Oj, {
44153
+ }), null), P(b, j(Oj, {
44109
44154
  class: "min-w-[52px] shrink-0",
44110
44155
  variant: "primary",
44111
44156
  get loading() {
44112
- return Ee.isPending;
44157
+ return De.isPending;
44113
44158
  },
44114
44159
  get disabled() {
44115
- return h().trim().length === 0;
44160
+ return g().trim().length === 0;
44116
44161
  },
44117
- onClick: () => Ee.mutate(),
44162
+ onClick: () => De.mutate(),
44118
44163
  get children() {
44119
44164
  return B$();
44120
44165
  }
44121
44166
  }), null), t;
44122
44167
  })();
44123
44168
  }
44124
- function p1(e) {
44169
+ function m1(e) {
44125
44170
  let t = k(() => {
44126
44171
  let t = e.session.status;
44127
44172
  return /complete|done/i.test(t) ? "var(--color-success)" : /await|pending|elicit/i.test(t) ? "var(--color-warn)" : "var(--color-accent)";
@@ -44137,7 +44182,7 @@ function p1(e) {
44137
44182
  o && (o.scrollTop = o.scrollHeight);
44138
44183
  });
44139
44184
  }), (() => {
44140
- var s = a1(), l = s.firstChild, u = l.firstChild;
44185
+ var s = o1(), l = s.firstChild, u = l.firstChild;
44141
44186
  return P(l, j(M, {
44142
44187
  get when() {
44143
44188
  return /active|pending/i.test(e.session.status);
@@ -44157,7 +44202,7 @@ function p1(e) {
44157
44202
  return e.session.appUser?.displayName;
44158
44203
  },
44159
44204
  get children() {
44160
- var t = t1();
44205
+ var t = n1();
44161
44206
  return P(t, () => e.session.appUser.displayName), t;
44162
44207
  }
44163
44208
  }), u), P(u, () => Uj(e.session.updatedAt)), P(l, j(M, {
@@ -44185,7 +44230,7 @@ function p1(e) {
44185
44230
  },
44186
44231
  onClick: () => a((e) => !e),
44187
44232
  get children() {
44188
- var e = n1();
44233
+ var e = r1();
44189
44234
  return D((t) => dt(e, "transform", i() ? "rotate(180deg)" : "none")), e;
44190
44235
  }
44191
44236
  }), null), P(s, j(M, {
@@ -44193,7 +44238,7 @@ function p1(e) {
44193
44238
  return e.session.summary;
44194
44239
  },
44195
44240
  get children() {
44196
- var t = r1();
44241
+ var t = i1();
44197
44242
  return P(t, () => e.session.summary), t;
44198
44243
  }
44199
44244
  }), null), P(s, j(M, {
@@ -44201,7 +44246,7 @@ function p1(e) {
44201
44246
  return r().length > 0;
44202
44247
  },
44203
44248
  get children() {
44204
- var e = i1();
44249
+ var e = a1();
44205
44250
  e.addEventListener("scroll", c);
44206
44251
  var t = o;
44207
44252
  return typeof t == "function" ? pt(t, e) : o = e, P(e, j(Ge, {
@@ -44214,14 +44259,14 @@ function p1(e) {
44214
44259
  },
44215
44260
  get fallback() {
44216
44261
  return (() => {
44217
- var t = s1();
44218
- return P(t, j(c1, { get text() {
44262
+ var t = c1();
44263
+ return P(t, j(l1, { get text() {
44219
44264
  return e().content.body ?? "";
44220
44265
  } })), D(() => st(t, `lg-md text-[11.5px] leading-relaxed break-words ${e().content.__typename === "AgentActivityErrorContent" ? "text-danger" : "text-text"}`)), t;
44221
44266
  })();
44222
44267
  },
44223
44268
  get children() {
44224
- var t = o1(), n = t.firstChild.nextSibling;
44269
+ var t = s1(), n = t.firstChild.nextSibling;
44225
44270
  return n.nextSibling, P(t, () => e().content.action, n), P(t, () => e().content.parameter, null), t;
44226
44271
  }
44227
44272
  })
@@ -44233,8 +44278,8 @@ function p1(e) {
44233
44278
  rt(["click"]);
44234
44279
  //#endregion
44235
44280
  //#region src/panel/views/CloudView.tsx
44236
- var m1 = /*#__PURE__*/ N("<svg aria-hidden width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d=\"M1 4.5A7 7 0 0 1 13.5 3\"></path><path d=\"M15 11.5A7 7 0 0 1 2.5 13\"></path><polyline points=\"1 1 1 5 5 5\"></polyline><polyline points=\"15 11 15 15 11 15\">"), h1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), g1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text inline-flex items-center gap-1.5 text-[12px] font-semibold\"> Cloud agents</span><span class=\"text-text-faint text-[10.5px] tabular-nums\"> working · updated </span></div><div class=\"border-border flex shrink-0 items-center gap-1 border-b px-3 py-1.5\"></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), _1 = /*#__PURE__*/ N("<button>"), v1 = /*#__PURE__*/ N("<div class=\"grid place-items-center py-10\">"), y1 = /*#__PURE__*/ N("<button class=\"flex min-w-0 flex-1 cursor-pointer items-center gap-1.5 text-left\"title=\"View the thread here\"><span class=\"font-mono text-text-dim shrink-0 text-[11px]\"></span><span class=\"text-text hover:text-accent min-w-0 truncate text-[12.5px] font-medium transition-colors\">"), b1 = /*#__PURE__*/ N("<p class=\"text-text-dim line-clamp-2 cursor-pointer text-[11.5px] leading-snug break-words\">"), x1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[11px]\">"), S1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), C1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><div class=\"flex min-w-0 items-center gap-1.5\"><span class=ml-auto>"), w1 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), T1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[12.5px]\">Conversation session");
44237
- function E1() {
44281
+ var h1 = /*#__PURE__*/ N("<svg aria-hidden width=11 height=11 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d=\"M1 4.5A7 7 0 0 1 13.5 3\"></path><path d=\"M15 11.5A7 7 0 0 1 2.5 13\"></path><polyline points=\"1 1 1 5 5 5\"></polyline><polyline points=\"15 11 15 15 11 15\">"), g1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), _1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text inline-flex items-center gap-1.5 text-[12px] font-semibold\"> Cloud agents</span><span class=\"text-text-faint text-[10.5px] tabular-nums\"> working · updated </span></div><div class=\"border-border flex shrink-0 items-center gap-1 border-b px-3 py-1.5\"></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), v1 = /*#__PURE__*/ N("<button>"), y1 = /*#__PURE__*/ N("<div class=\"grid place-items-center py-10\">"), b1 = /*#__PURE__*/ N("<button class=\"flex min-w-0 flex-1 cursor-pointer items-center gap-1.5 text-left\"title=\"View the thread here\"><span class=\"font-mono text-text-dim shrink-0 text-[11px]\"></span><span class=\"text-text hover:text-accent min-w-0 truncate text-[12.5px] font-medium transition-colors\">"), x1 = /*#__PURE__*/ N("<p class=\"text-text-dim line-clamp-2 cursor-pointer text-[11.5px] leading-snug break-words\">"), S1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[11px]\">"), C1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), w1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><div class=\"flex min-w-0 items-center gap-1.5\"><span class=ml-auto>"), T1 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), E1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[12.5px]\">Conversation session");
44282
+ function D1() {
44238
44283
  let e = _r(() => ({
44239
44284
  queryKey: ["cloud-sessions"],
44240
44285
  queryFn: gO,
@@ -44287,7 +44332,7 @@ function E1() {
44287
44332
  return !c();
44288
44333
  },
44289
44334
  get fallback() {
44290
- return j(f1, {
44335
+ return j(p1, {
44291
44336
  get issueId() {
44292
44337
  return c();
44293
44338
  },
@@ -44295,11 +44340,11 @@ function E1() {
44295
44340
  });
44296
44341
  },
44297
44342
  get children() {
44298
- var c = g1(), u = c.firstChild, d = u.firstChild, f = d.firstChild, p = d.nextSibling, m = p.firstChild, h = u.nextSibling, g = h.nextSibling;
44343
+ var c = _1(), u = c.firstChild, d = u.firstChild, f = d.firstChild, p = d.nextSibling, m = p.firstChild, h = u.nextSibling, g = h.nextSibling;
44299
44344
  return P(d, j(Nj, { size: 13 }), f), P(p, s, m), P(p, () => Uj(e.dataUpdatedAt || Date.now()), null), P(h, j(We, {
44300
44345
  each: t,
44301
44346
  children: (e) => (() => {
44302
- var t = _1();
44347
+ var t = v1();
44303
44348
  return t.$$click = () => r(e.id), P(t, () => e.label), D(() => st(t, `h-6 shrink-0 cursor-pointer rounded-md px-2 text-[11px] font-medium transition-colors ${n() === e.id ? "bg-accent-soft text-accent" : "text-text-dim hover:bg-surface-2"}`)), t;
44304
44349
  })()
44305
44350
  }), null), P(h, j(Oj, {
@@ -44311,7 +44356,7 @@ function E1() {
44311
44356
  "aria-label": "Refresh sessions",
44312
44357
  onClick: () => void e.refetch(),
44313
44358
  get children() {
44314
- return m1();
44359
+ return h1();
44315
44360
  }
44316
44361
  }), null), P(g, j(M, {
44317
44362
  get when() {
@@ -44324,7 +44369,7 @@ function E1() {
44324
44369
  },
44325
44370
  get fallback() {
44326
44371
  return (() => {
44327
- var e = v1();
44372
+ var e = y1();
44328
44373
  return P(e, j(kj, {})), e;
44329
44374
  })();
44330
44375
  },
@@ -44337,20 +44382,20 @@ function E1() {
44337
44382
  });
44338
44383
  },
44339
44384
  get children() {
44340
- var e = h1();
44385
+ var e = g1();
44341
44386
  return P(e, j(Ge, {
44342
44387
  get each() {
44343
44388
  return i();
44344
44389
  },
44345
44390
  children: (e) => (() => {
44346
- var t = C1(), n = t.firstChild, r = n.firstChild, i = n.nextSibling, s = i.firstChild;
44391
+ var t = w1(), n = t.firstChild, r = n.firstChild, i = n.nextSibling, s = i.firstChild;
44347
44392
  return P(n, j(M, {
44348
44393
  get when() {
44349
44394
  return /active|pending/i.test(e().status);
44350
44395
  },
44351
44396
  get fallback() {
44352
44397
  return (() => {
44353
- var t = w1();
44398
+ var t = T1();
44354
44399
  return D((n) => dt(t, "background", a(e().status).color)), t;
44355
44400
  })();
44356
44401
  },
@@ -44362,10 +44407,10 @@ function E1() {
44362
44407
  return e().issue;
44363
44408
  },
44364
44409
  get fallback() {
44365
- return T1();
44410
+ return E1();
44366
44411
  },
44367
44412
  get children() {
44368
- var t = y1(), n = t.firstChild, r = n.nextSibling;
44413
+ var t = b1(), n = t.firstChild, r = n.nextSibling;
44369
44414
  return t.$$click = () => l(e().issue.id), P(n, () => e().issue.identifier), P(r, () => e().issue.title), t;
44370
44415
  }
44371
44416
  }), r), P(r, () => Uj(e().updatedAt)), P(t, j(M, {
@@ -44373,7 +44418,7 @@ function E1() {
44373
44418
  return o(e());
44374
44419
  },
44375
44420
  get children() {
44376
- var t = b1();
44421
+ var t = x1();
44377
44422
  return t.$$click = () => e().issue && l(e().issue.id), P(t, () => o(e())), t;
44378
44423
  }
44379
44424
  }), i), P(i, j(Rj, {
@@ -44391,7 +44436,7 @@ function E1() {
44391
44436
  return [j(zj, { get color() {
44392
44437
  return e().issue.state.color;
44393
44438
  } }), (() => {
44394
- var t = x1();
44439
+ var t = S1();
44395
44440
  return P(t, () => e().issue.state.name), t;
44396
44441
  })()];
44397
44442
  }
@@ -44407,7 +44452,7 @@ function E1() {
44407
44452
  "aria-label": "Open thread",
44408
44453
  onClick: () => l(e().issue.id),
44409
44454
  get children() {
44410
- return S1();
44455
+ return C1();
44411
44456
  }
44412
44457
  }), j(Fj, {
44413
44458
  get href() {
@@ -44428,8 +44473,8 @@ function E1() {
44428
44473
  rt(["click"]);
44429
44474
  //#endregion
44430
44475
  //#region src/panel/views/RunningView.tsx
44431
- var D1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), O1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Running now</span><span class=\"text-text-faint text-[10.5px] tabular-nums\"> agent<!> active</span></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), k1 = /*#__PURE__*/ N("<span class=\"font-mono text-text-dim shrink-0 text-[11px]\">"), A1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), j1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><button class=\"flex min-w-0 flex-1 cursor-pointer items-center gap-1.5 text-left\"><span class=\"text-text hover:text-accent min-w-0 truncate text-[12.5px] font-medium transition-colors\"></span></button><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><p class=\"text-text-dim line-clamp-2 text-[11.5px] leading-snug break-words\"></p><div class=\"flex min-w-0 items-center gap-1.5\"><span class=ml-auto>");
44432
- function M1() {
44476
+ var O1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), k1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Running now</span><span class=\"text-text-faint text-[10.5px] tabular-nums\"> agent<!> active</span></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), A1 = /*#__PURE__*/ N("<span class=\"font-mono text-text-dim shrink-0 text-[11px]\">"), j1 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), M1 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><button class=\"flex min-w-0 flex-1 cursor-pointer items-center gap-1.5 text-left\"><span class=\"text-text hover:text-accent min-w-0 truncate text-[12.5px] font-medium transition-colors\"></span></button><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><p class=\"text-text-dim line-clamp-2 text-[11.5px] leading-snug break-words\"></p><div class=\"flex min-w-0 items-center gap-1.5\"><span class=ml-auto>");
44477
+ function N1() {
44433
44478
  let e = _r(() => ({
44434
44479
  queryKey: ["cloud-sessions"],
44435
44480
  queryFn: gO,
@@ -44470,7 +44515,7 @@ function M1() {
44470
44515
  return !i();
44471
44516
  },
44472
44517
  get fallback() {
44473
- return j(f1, {
44518
+ return j(p1, {
44474
44519
  get issueId() {
44475
44520
  return i();
44476
44521
  },
@@ -44478,7 +44523,7 @@ function M1() {
44478
44523
  });
44479
44524
  },
44480
44525
  get children() {
44481
- var e = O1(), t = e.firstChild, n = t.firstChild.nextSibling, i = n.firstChild, c = i.nextSibling;
44526
+ var e = k1(), t = e.firstChild, n = t.firstChild.nextSibling, i = n.firstChild, c = i.nextSibling;
44482
44527
  c.nextSibling;
44483
44528
  var l = t.nextSibling;
44484
44529
  return P(n, () => r().length, i), P(n, () => r().length === 1 ? "" : "s", c), P(l, j(M, {
@@ -44492,13 +44537,13 @@ function M1() {
44492
44537
  });
44493
44538
  },
44494
44539
  get children() {
44495
- var e = D1();
44540
+ var e = O1();
44496
44541
  return P(e, j(Ge, {
44497
44542
  get each() {
44498
44543
  return r();
44499
44544
  },
44500
44545
  children: (e) => (() => {
44501
- var t = j1(), n = t.firstChild, r = n.firstChild, i = r.firstChild, c = r.nextSibling, l = n.nextSibling, u = l.nextSibling, d = u.firstChild;
44546
+ var t = M1(), n = t.firstChild, r = n.firstChild, i = r.firstChild, c = r.nextSibling, l = n.nextSibling, u = l.nextSibling, d = u.firstChild;
44502
44547
  return P(n, j(kj, { size: 12 }), r), P(n, j(Rj, {
44503
44548
  get title() {
44504
44549
  return e().kind === "cloud" ? "Cursor cloud agent" : "Local Claude Code";
@@ -44514,7 +44559,7 @@ function M1() {
44514
44559
  return e().kind === "cloud";
44515
44560
  },
44516
44561
  get children() {
44517
- var t = k1();
44562
+ var t = A1();
44518
44563
  return P(t, () => e().session.issue?.identifier), t;
44519
44564
  }
44520
44565
  }), i), P(i, (() => {
@@ -44555,7 +44600,7 @@ function M1() {
44555
44600
  t.kind === "cloud" && t.session.issue ? a(t.session.issue.id) : t.kind === "local" && aj("local");
44556
44601
  },
44557
44602
  get children() {
44558
- return A1();
44603
+ return j1();
44559
44604
  }
44560
44605
  }), null), D(() => it(r, "title", e().kind === "cloud" ? "View the thread here" : "Open the Local tab")), t;
44561
44606
  })()
@@ -44568,7 +44613,7 @@ function M1() {
44568
44613
  //#endregion
44569
44614
  //#region src/panel/views/LocalView.tsx
44570
44615
  rt(["click"]), Br();
44571
- var N1 = /*#__PURE__*/ N("<div class=\"border-accent/40 bg-accent-soft self-end rounded-lg border px-2.5 py-1.5\"><p class=\"text-accent mb-0.5 text-[9.5px] font-semibold tracking-wide uppercase\">You</p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), P1 = /*#__PURE__*/ N("<div><p></p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), F1 = /*#__PURE__*/ N("<p>"), I1 = /*#__PURE__*/ N("<span class=\"text-text-faint max-w-[55%] truncate text-[10.5px] tabular-nums\"> running<!> · "), L1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), R1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Local Claude Code</span></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), z1 = /*#__PURE__*/ N("<span class=\"bg-surface-2 border-border font-mono mt-2 block rounded-md border px-2 py-1.5 text-[11px] select-all\">npx linear-grab-bridge"), B1 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">ctx <!> · out "), V1 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-faint min-w-0 truncate text-[10.5px]\">"), H1 = /*#__PURE__*/ N("<option selected>"), U1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><path d=\"M4.5 2.8a.8.8 0 0 1 1.22-.68l8 5.2a.8.8 0 0 1 0 1.36l-8 5.2a.8.8 0 0 1-1.22-.68V2.8Z\">"), W1 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), G1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linejoin=round aria-hidden><path d=\"M14 10a2 2 0 0 1-2 2H6l-3.5 2.5V4a2 2 0 0 1 2-2H12a2 2 0 0 1 2 2v6Z\">"), K1 = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), q1 = /*#__PURE__*/ N("<span class=\"font-mono text-text-faint min-w-0 truncate text-[10.5px]\">"), J1 = /*#__PURE__*/ N("<div class=\"border-border bg-bg flex flex-col gap-1 rounded-md border p-2\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text-dim text-[10.5px] font-semibold tracking-wide uppercase\">Changes</span><span class=\"ml-auto shrink-0 text-[10.5px] tabular-nums\"><span class=text-success>+</span> <span class=text-danger>−"), Y1 = /*#__PURE__*/ N("<div class=\"border-border bg-bg flex max-h-80 flex-col gap-1.5 overflow-y-auto rounded-md border py-2 pl-2 pr-3\">"), X1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=2.2></circle><path d=\"M8 1v3M8 12v3M1 8h3M12 8h3\">"), Z1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M13 7.5 8.2 12.3a3.2 3.2 0 0 1-4.5-4.5L8.9 2.6a2.1 2.1 0 0 1 3 3L7.1 10.4a1 1 0 0 1-1.5-1.5l4.3-4.3\">"), Q1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><path d=\"M8 2v4M8 10v4M2 8h4M10 8h4M4.5 4.5 6 6M11.5 11.5 10 10M11.5 4.5 10 6M4.5 11.5 6 10\">"), $1 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Send"), e0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex items-center gap-1\"><span class=\"text-text-faint min-w-0 flex-1 truncate text-[10.5px]\">"), t0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text min-w-0 truncate text-[12.5px] font-medium\"></span><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><p class=\"text-text-dim text-[11.5px] leading-snug break-words\"></p><div class=\"flex flex-wrap items-center gap-1.5\"></div><div class=\"flex items-center gap-1\">"), n0 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), r0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\">"), i0 = /*#__PURE__*/ N("<option>"), a0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), o0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M2.5 3.5 6 7 2.5 10.5M7.5 12.5h6\">"), s0 = /*#__PURE__*/ N("<span class=text-success>+"), c0 = /*#__PURE__*/ N("<span class=text-danger>−"), l0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim min-w-0 flex-1 truncate text-[10.5px]\"></span><span class=\"shrink-0 text-[10px] tabular-nums\">"), u0 = /*#__PURE__*/ N("<span class=text-text-faint>bin"), d0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim min-w-0 flex-1 truncate text-[10.5px]\"></span><span class=\"text-success shrink-0 text-[10px]\">new"), f0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5 pt-0.5\"><a target=_blank rel=noreferrer class=\"text-accent min-w-0 truncate text-[11px] hover:underline\">"), p0 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[11px]\">Waiting for output…"), m0 = [
44616
+ var P1 = /*#__PURE__*/ N("<div class=\"border-accent/40 bg-accent-soft self-end rounded-lg border px-2.5 py-1.5\"><p class=\"text-accent mb-0.5 text-[9.5px] font-semibold tracking-wide uppercase\">You</p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), F1 = /*#__PURE__*/ N("<div><p></p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), I1 = /*#__PURE__*/ N("<p>"), L1 = /*#__PURE__*/ N("<span class=\"text-text-faint max-w-[55%] truncate text-[10.5px] tabular-nums\"> running<!> · "), R1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), z1 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Local Claude Code</span></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), B1 = /*#__PURE__*/ N("<span class=\"bg-surface-2 border-border font-mono mt-2 block rounded-md border px-2 py-1.5 text-[11px] select-all\">npx linear-grab-bridge"), V1 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">ctx <!> · out "), H1 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-faint min-w-0 truncate text-[10.5px]\">"), U1 = /*#__PURE__*/ N("<option selected>"), W1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><path d=\"M4.5 2.8a.8.8 0 0 1 1.22-.68l8 5.2a.8.8 0 0 1 0 1.36l-8 5.2a.8.8 0 0 1-1.22-.68V2.8Z\">"), G1 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), K1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linejoin=round aria-hidden><path d=\"M14 10a2 2 0 0 1-2 2H6l-3.5 2.5V4a2 2 0 0 1 2-2H12a2 2 0 0 1 2 2v6Z\">"), q1 = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), J1 = /*#__PURE__*/ N("<span class=\"font-mono text-text-faint min-w-0 truncate text-[10.5px]\">"), Y1 = /*#__PURE__*/ N("<div class=\"border-border bg-bg flex flex-col gap-1 rounded-md border p-2\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text-dim text-[10.5px] font-semibold tracking-wide uppercase\">Changes</span><span class=\"ml-auto shrink-0 text-[10.5px] tabular-nums\"><span class=text-success>+</span> <span class=text-danger>−"), X1 = /*#__PURE__*/ N("<div class=\"border-border bg-bg flex max-h-80 flex-col gap-1.5 overflow-y-auto rounded-md border py-2 pl-2 pr-3\">"), Z1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=2.2></circle><path d=\"M8 1v3M8 12v3M1 8h3M12 8h3\">"), Q1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M13 7.5 8.2 12.3a3.2 3.2 0 0 1-4.5-4.5L8.9 2.6a2.1 2.1 0 0 1 3 3L7.1 10.4a1 1 0 0 1-1.5-1.5l4.3-4.3\">"), $1 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><path d=\"M8 2v4M8 10v4M2 8h4M10 8h4M4.5 4.5 6 6M11.5 11.5 10 10M11.5 4.5 10 6M4.5 11.5 6 10\">"), e0 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Send"), t0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex items-center gap-1\"><span class=\"text-text-faint min-w-0 flex-1 truncate text-[10.5px]\">"), n0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"text-text min-w-0 truncate text-[12.5px] font-medium\"></span><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><p class=\"text-text-dim text-[11.5px] leading-snug break-words\"></p><div class=\"flex flex-wrap items-center gap-1.5\"></div><div class=\"flex items-center gap-1\">"), r0 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), i0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\">"), a0 = /*#__PURE__*/ N("<option>"), o0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), s0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M2.5 3.5 6 7 2.5 10.5M7.5 12.5h6\">"), c0 = /*#__PURE__*/ N("<span class=text-success>+"), l0 = /*#__PURE__*/ N("<span class=text-danger>−"), u0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim min-w-0 flex-1 truncate text-[10.5px]\"></span><span class=\"shrink-0 text-[10px] tabular-nums\">"), d0 = /*#__PURE__*/ N("<span class=text-text-faint>bin"), f0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim min-w-0 flex-1 truncate text-[10.5px]\"></span><span class=\"text-success shrink-0 text-[10px]\">new"), p0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5 pt-0.5\"><a target=_blank rel=noreferrer class=\"text-accent min-w-0 truncate text-[11px] hover:underline\">"), m0 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[11px]\">Waiting for output…"), h0 = [
44572
44617
  {
44573
44618
  id: "",
44574
44619
  label: "Default model"
@@ -44590,13 +44635,13 @@ var N1 = /*#__PURE__*/ N("<div class=\"border-accent/40 bg-accent-soft self-end
44590
44635
  label: "Haiku"
44591
44636
  }
44592
44637
  ];
44593
- function h0(e, t) {
44638
+ function g0(e, t) {
44594
44639
  let n = e.split(".").map(Number), r = t.split(".").map(Number);
44595
44640
  for (let e = 0; e < 3; e++) if ((n[e] ?? 0) !== (r[e] ?? 0)) return (n[e] ?? 0) < (r[e] ?? 0);
44596
44641
  return !1;
44597
44642
  }
44598
- var g0 = (e) => e == null ? "–" : e >= 1e3 ? `${(e / 1e3).toFixed(e >= 1e5 ? 0 : 1)}k` : String(e);
44599
- function _0() {
44643
+ var _0 = (e) => e == null ? "–" : e >= 1e3 ? `${(e / 1e3).toFixed(e >= 1e5 ? 0 : 1)}k` : String(e);
44644
+ function v0() {
44600
44645
  let e = sr(), t = _r(() => ({
44601
44646
  queryKey: ["bridge-health"],
44602
44647
  queryFn: MO,
@@ -44683,18 +44728,18 @@ function _0() {
44683
44728
  }, ne = (e) => e === "running" ? "var(--color-accent)" : e === "done" ? "var(--color-success)" : e === "stopped" ? "var(--color-warn)" : "var(--color-danger)", re = (e) => {
44684
44729
  let t = e.line.kind, n = k(() => h$(e.line.text));
44685
44730
  return t === "user" ? (() => {
44686
- var e = N1(), t = e.firstChild.nextSibling;
44731
+ var e = P1(), t = e.firstChild.nextSibling;
44687
44732
  return D(() => t.innerHTML = n()), e;
44688
44733
  })() : t === "assistant" || t === "result" ? (() => {
44689
- var e = P1(), r = e.firstChild, i = r.nextSibling;
44734
+ var e = F1(), r = e.firstChild, i = r.nextSibling;
44690
44735
  return st(e, `bg-surface rounded-lg border px-2.5 py-1.5 ${t === "result" ? "border-success/40" : "border-border"}`), st(r, `mb-0.5 text-[9.5px] font-semibold tracking-wide uppercase ${t === "result" ? "text-success" : "text-text-faint"}`), P(r, t === "result" ? "Result" : "Claude"), D(() => i.innerHTML = n()), e;
44691
44736
  })() : (() => {
44692
- var n = F1();
44737
+ var n = I1();
44693
44738
  return st(n, `font-mono px-1 text-[10px] leading-relaxed break-words ${t === "subagent" ? "text-warn" : t === "stderr" ? "text-danger" : "text-text-faint"}`), P(n, () => e.line.text), n;
44694
44739
  })();
44695
44740
  };
44696
44741
  return (() => {
44697
- var e = R1(), a = e.firstChild;
44742
+ var e = z1(), a = e.firstChild;
44698
44743
  a.firstChild;
44699
44744
  var l = a.nextSibling;
44700
44745
  return P(a, j(M, {
@@ -44710,7 +44755,7 @@ function _0() {
44710
44755
  get children() {
44711
44756
  return [j(M, {
44712
44757
  get when() {
44713
- return h0(t.data.version, "0.15.1");
44758
+ return g0(t.data.version, "0.15.1");
44714
44759
  },
44715
44760
  get children() {
44716
44761
  return j(Rj, {
@@ -44726,7 +44771,7 @@ function _0() {
44726
44771
  });
44727
44772
  }
44728
44773
  }), (() => {
44729
- var e = I1(), r = e.firstChild, i = r.nextSibling;
44774
+ var e = L1(), r = e.firstChild, i = r.nextSibling;
44730
44775
  return i.nextSibling, P(e, () => t.data.active, r), P(e, () => {
44731
44776
  let e = (n.data ?? []).reduce((e, t) => e + (t.usage?.costUsd ?? 0), 0);
44732
44777
  return e > 0 ? ` · Σ $${e.toFixed(2)}` : "";
@@ -44743,7 +44788,7 @@ function _0() {
44743
44788
  get children() {
44744
44789
  return [
44745
44790
  "Start it in your repo's terminal:",
44746
- z1(),
44791
+ B1(),
44747
44792
  "Then delegate from the Draft tab (\"Local Claude Code\") or watch tasks here. Sessions stay interactive — send follow-ups, switch models, interrupt, resume in your terminal. History persists across restarts."
44748
44793
  ];
44749
44794
  }
@@ -44761,20 +44806,20 @@ function _0() {
44761
44806
  });
44762
44807
  },
44763
44808
  get children() {
44764
- var e = L1();
44809
+ var e = R1();
44765
44810
  return P(e, j(Ge, {
44766
44811
  get each() {
44767
44812
  return n.data;
44768
44813
  },
44769
44814
  children: (e) => (() => {
44770
- var t = t0(), n = t.firstChild, a = n.firstChild, l = a.nextSibling, m = n.nextSibling, h = m.nextSibling, g = h.nextSibling;
44815
+ var t = n0(), n = t.firstChild, a = n.firstChild, l = a.nextSibling, m = n.nextSibling, h = m.nextSibling, g = h.nextSibling;
44771
44816
  return P(n, j(M, {
44772
44817
  get when() {
44773
44818
  return e().status === "running";
44774
44819
  },
44775
44820
  get fallback() {
44776
44821
  return (() => {
44777
- var t = n0();
44822
+ var t = r0();
44778
44823
  return D((n) => dt(t, "background", ne(e().status))), t;
44779
44824
  })();
44780
44825
  },
@@ -44827,8 +44872,8 @@ function _0() {
44827
44872
  return e().usage;
44828
44873
  },
44829
44874
  get children() {
44830
- var t = B1(), n = t.firstChild.nextSibling;
44831
- return n.nextSibling, P(t, () => g0(e().usage.contextTokens), n), P(t, () => g0(e().usage.outputTokens), null), P(t, (() => {
44875
+ var t = V1(), n = t.firstChild.nextSibling;
44876
+ return n.nextSibling, P(t, () => _0(e().usage.contextTokens), n), P(t, () => _0(e().usage.outputTokens), null), P(t, (() => {
44832
44877
  var t = $e(() => !!e().usage.costUsd);
44833
44878
  return () => t() ? ` · $${e().usage.costUsd.toFixed(2)}` : "";
44834
44879
  })(), null), t;
@@ -44838,7 +44883,7 @@ function _0() {
44838
44883
  return o(e());
44839
44884
  },
44840
44885
  children: (e) => (() => {
44841
- var t = r0();
44886
+ var t = i0();
44842
44887
  return P(t, j(Rj, { get children() {
44843
44888
  return e().state.name;
44844
44889
  } }), null), P(t, j(Fj, {
@@ -44853,7 +44898,7 @@ function _0() {
44853
44898
  return $e(() => !!e().worktree)() && !e().worktree.removed;
44854
44899
  },
44855
44900
  get children() {
44856
- var t = V1(), n = t.firstChild;
44901
+ var t = H1(), n = t.firstChild;
44857
44902
  return P(t, j(Rj, {
44858
44903
  class: "text-warn",
44859
44904
  children: "⎇ worktree"
@@ -44889,17 +44934,17 @@ function _0() {
44889
44934
  title: "Model — applies from the next message",
44890
44935
  get children() {
44891
44936
  return [j(We, {
44892
- each: m0,
44937
+ each: h0,
44893
44938
  children: (t) => (() => {
44894
- var n = i0();
44939
+ var n = a0();
44895
44940
  return P(n, () => t.label), D(() => n.selected = (e().pendingModel ?? e().model ?? "") === t.id), D(() => n.value = t.id), n;
44896
44941
  })()
44897
44942
  }), j(M, {
44898
44943
  get when() {
44899
- return !m0.some((t) => t.id === (e().pendingModel ?? e().model ?? ""));
44944
+ return !h0.some((t) => t.id === (e().pendingModel ?? e().model ?? ""));
44900
44945
  },
44901
44946
  get children() {
44902
- var t = H1();
44947
+ var t = U1();
44903
44948
  return P(t, () => e().pendingModel ?? e().model), D(() => t.value = e().pendingModel ?? e().model ?? ""), t;
44904
44949
  }
44905
44950
  })];
@@ -44924,7 +44969,7 @@ function _0() {
44924
44969
  text: "Continue where you left off. If the work is already complete, finish any remaining closeout steps (PR, Linear update, announcement)."
44925
44970
  }),
44926
44971
  get children() {
44927
- return U1();
44972
+ return W1();
44928
44973
  }
44929
44974
  });
44930
44975
  }
@@ -44938,7 +44983,7 @@ function _0() {
44938
44983
  title: "Open the issue's Activity thread",
44939
44984
  onClick: () => aj("activity", e().id),
44940
44985
  get children() {
44941
- return a0();
44986
+ return o0();
44942
44987
  }
44943
44988
  })
44944
44989
  }), null), P(g, j(Oj, {
@@ -44957,10 +45002,10 @@ function _0() {
44957
45002
  return ee() === e().id;
44958
45003
  },
44959
45004
  get fallback() {
44960
- return o0();
45005
+ return s0();
44961
45006
  },
44962
45007
  get children() {
44963
- return W1();
45008
+ return G1();
44964
45009
  }
44965
45010
  });
44966
45011
  }
@@ -44972,7 +45017,7 @@ function _0() {
44972
45017
  },
44973
45018
  onClick: () => i(r() === e().id ? null : e().id),
44974
45019
  get children() {
44975
- return G1();
45020
+ return K1();
44976
45021
  }
44977
45022
  }), null), P(g, j(M, {
44978
45023
  get when() {
@@ -44988,7 +45033,7 @@ function _0() {
44988
45033
  title: "Interrupt — the session stays resumable",
44989
45034
  onClick: () => u.mutate(e().id),
44990
45035
  get children() {
44991
- return K1();
45036
+ return q1();
44992
45037
  }
44993
45038
  });
44994
45039
  }
@@ -45003,7 +45048,7 @@ function _0() {
45003
45048
  return $e(() => !!c.data)() && (c.data.files.length || c.data.untracked.length || c.data.prs.length);
45004
45049
  },
45005
45050
  get children() {
45006
- var e = J1(), t = e.firstChild, n = t.firstChild.nextSibling, r = n.firstChild;
45051
+ var e = Y1(), t = e.firstChild, n = t.firstChild.nextSibling, r = n.firstChild;
45007
45052
  r.firstChild;
45008
45053
  var i = r.nextSibling.nextSibling;
45009
45054
  return i.firstChild, P(t, j(M, {
@@ -45011,7 +45056,7 @@ function _0() {
45011
45056
  return c.data.branch;
45012
45057
  },
45013
45058
  get children() {
45014
- var e = q1();
45059
+ var e = J1();
45015
45060
  return P(e, () => c.data.branch), e;
45016
45061
  }
45017
45062
  }), n), P(r, () => c.data.totalAdded, null), P(i, () => c.data.totalDeleted, null), P(e, j(We, {
@@ -45019,23 +45064,23 @@ function _0() {
45019
45064
  return c.data.files;
45020
45065
  },
45021
45066
  children: (e) => (() => {
45022
- var t = l0(), n = t.firstChild, r = n.nextSibling;
45067
+ var t = u0(), n = t.firstChild, r = n.nextSibling;
45023
45068
  return P(n, () => e.path), P(r, j(M, {
45024
45069
  get when() {
45025
45070
  return !e.binary;
45026
45071
  },
45027
45072
  get fallback() {
45028
- return u0();
45073
+ return d0();
45029
45074
  },
45030
45075
  get children() {
45031
45076
  return [
45032
45077
  (() => {
45033
- var t = s0();
45078
+ var t = c0();
45034
45079
  return t.firstChild, P(t, () => e.added, null), t;
45035
45080
  })(),
45036
45081
  " ",
45037
45082
  (() => {
45038
- var t = c0();
45083
+ var t = l0();
45039
45084
  return t.firstChild, P(t, () => e.deleted, null), t;
45040
45085
  })()
45041
45086
  ];
@@ -45047,7 +45092,7 @@ function _0() {
45047
45092
  return c.data.untracked;
45048
45093
  },
45049
45094
  children: (e) => (() => {
45050
- var t = d0(), n = t.firstChild;
45095
+ var t = f0(), n = t.firstChild;
45051
45096
  return it(n, "title", e), P(n, e), t;
45052
45097
  })()
45053
45098
  }), null), P(e, j(We, {
@@ -45055,7 +45100,7 @@ function _0() {
45055
45100
  return c.data.prs;
45056
45101
  },
45057
45102
  children: (e) => (() => {
45058
- var t = f0(), n = t.firstChild;
45103
+ var t = p0(), n = t.firstChild;
45059
45104
  return P(t, j(Rj, {
45060
45105
  class: "text-accent",
45061
45106
  get children() {
@@ -45073,7 +45118,7 @@ function _0() {
45073
45118
  }
45074
45119
  }),
45075
45120
  (() => {
45076
- var e = Y1();
45121
+ var e = X1();
45077
45122
  return e.addEventListener("scroll", E), pt((e) => {
45078
45123
  C = e, w = !0;
45079
45124
  }, e), P(e, j(M, {
@@ -45081,7 +45126,7 @@ function _0() {
45081
45126
  return (s.data?.tail ?? []).length > 0;
45082
45127
  },
45083
45128
  get fallback() {
45084
- return p0();
45129
+ return m0();
45085
45130
  },
45086
45131
  get children() {
45087
45132
  return j(Ge, {
@@ -45096,7 +45141,7 @@ function _0() {
45096
45141
  })), e;
45097
45142
  })(),
45098
45143
  (() => {
45099
- var t = e0(), n = t.firstChild, r = n.firstChild;
45144
+ var t = t0(), n = t.firstChild, r = n.firstChild;
45100
45145
  return P(t, j(jj, {
45101
45146
  rows: 2,
45102
45147
  get placeholder() {
@@ -45116,7 +45161,7 @@ function _0() {
45116
45161
  "aria-label": "Pick element",
45117
45162
  onClick: v,
45118
45163
  get children() {
45119
- return X1();
45164
+ return Z1();
45120
45165
  }
45121
45166
  }), null), P(n, j(Oj, {
45122
45167
  variant: "ghost",
@@ -45128,7 +45173,7 @@ function _0() {
45128
45173
  "aria-label": "Attach captures",
45129
45174
  onClick: () => void y(),
45130
45175
  get children() {
45131
- return Z1();
45176
+ return Q1();
45132
45177
  }
45133
45178
  }), null), P(n, j(Oj, {
45134
45179
  variant: "ghost",
@@ -45143,7 +45188,7 @@ function _0() {
45143
45188
  text: "/compact"
45144
45189
  }),
45145
45190
  get children() {
45146
- return Q1();
45191
+ return $1();
45147
45192
  }
45148
45193
  }), null), P(n, j(Oj, {
45149
45194
  variant: "primary",
@@ -45159,7 +45204,7 @@ function _0() {
45159
45204
  text: d().trim()
45160
45205
  }),
45161
45206
  get children() {
45162
- return $1();
45207
+ return e0();
45163
45208
  }
45164
45209
  }), null), t;
45165
45210
  })()
@@ -45177,13 +45222,13 @@ function _0() {
45177
45222
  //#endregion
45178
45223
  //#region src/panel/views/PrsView.tsx
45179
45224
  Br();
45180
- var v0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">/<!> from your issues"), y0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), b0 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Pull requests</span></div><div class=\"border-border flex shrink-0 items-center gap-1.5 border-b px-3 py-1.5\"><div class=\"bg-surface-2 border-border flex shrink-0 rounded-md border p-0.5\"></div></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), x0 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px]\"title=\"Merge states come from gh via the bridge\">states unknown — restart the bridge"), S0 = /*#__PURE__*/ N("<button>"), C0 = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), w0 = /*#__PURE__*/ N("<span class=\"text-[12px] leading-none\">✓"), T0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), E0 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), D0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><a target=_blank rel=noreferrer class=\"text-accent truncate text-[12.5px] font-medium hover:underline\"></a><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim shrink-0 text-[11px]\"></span><span class=\"text-text-dim truncate text-[11.5px]\"></span><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><div class=\"flex min-w-0 flex-wrap items-center gap-1.5\"><div class=\"ml-auto flex shrink-0 items-center gap-1\">"), O0 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M8 2 14 5.5 8 9 2 5.5 8 2Z\"></path><path d=\"M2 10.5 8 14l6-3.5\">"), k0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=4 cy=3.5 r=1.5></circle><circle cx=4 cy=12.5 r=1.5></circle><circle cx=12 cy=8 r=1.5></circle><path d=\"M4 5v6M4 6.5c0 2 2 3 4.5 3h2\">"), A0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linejoin=round aria-hidden><rect x=5.5 y=5.5 width=9 height=9 rx=1.5></rect><path d=\"M10.5 5.5v-2a2 2 0 0 0-2-2h-5a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h2\">"), j0 = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i;
45181
- function M0(e) {
45225
+ var y0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">/<!> from your issues"), b0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), x0 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\"><div class=\"border-border flex shrink-0 items-center justify-between border-b px-3 py-2\"><span class=\"text-text text-[12px] font-semibold\">Pull requests</span></div><div class=\"border-border flex shrink-0 items-center gap-1.5 border-b px-3 py-1.5\"><div class=\"bg-surface-2 border-border flex shrink-0 rounded-md border p-0.5\"></div></div><div class=\"min-h-0 flex-1 overflow-y-auto pt-2 pb-3 pl-2 pr-3\">"), S0 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px]\"title=\"Merge states come from gh via the bridge\">states unknown — restart the bridge"), C0 = /*#__PURE__*/ N("<button>"), w0 = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), T0 = /*#__PURE__*/ N("<span class=\"text-[12px] leading-none\">✓"), E0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), D0 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), O0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><a target=_blank rel=noreferrer class=\"text-accent truncate text-[12.5px] font-medium hover:underline\"></a><div class=\"flex min-w-0 items-center gap-1.5\"><span class=\"font-mono text-text-dim shrink-0 text-[11px]\"></span><span class=\"text-text-dim truncate text-[11.5px]\"></span><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"></span></div><div class=\"flex min-w-0 flex-wrap items-center gap-1.5\"><div class=\"ml-auto flex shrink-0 items-center gap-1\">"), k0 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M8 2 14 5.5 8 9 2 5.5 8 2Z\"></path><path d=\"M2 10.5 8 14l6-3.5\">"), A0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><circle cx=4 cy=3.5 r=1.5></circle><circle cx=4 cy=12.5 r=1.5></circle><circle cx=12 cy=8 r=1.5></circle><path d=\"M4 5v6M4 6.5c0 2 2 3 4.5 3h2\">"), j0 = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linejoin=round aria-hidden><rect x=5.5 y=5.5 width=9 height=9 rx=1.5></rect><path d=\"M10.5 5.5v-2a2 2 0 0 0-2-2h-5a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h2\">"), M0 = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i;
45226
+ function N0(e) {
45182
45227
  let t = _r(() => ({
45183
45228
  queryKey: ["my-issues"],
45184
45229
  queryFn: fO,
45185
45230
  refetchInterval: 15e3
45186
- })), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) => j0.test(e.url)).map((t) => ({
45231
+ })), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) => M0.test(e.url)).map((t) => ({
45187
45232
  issue: e,
45188
45233
  attachment: t
45189
45234
  })))), r = _r(() => ({
@@ -45232,7 +45277,7 @@ function M0(e) {
45232
45277
  } catch {}
45233
45278
  };
45234
45279
  return (() => {
45235
- var r = b0(), f = r.firstChild;
45280
+ var r = x0(), f = r.firstChild;
45236
45281
  f.firstChild;
45237
45282
  var h = f.nextSibling, _ = h.firstChild, v = h.nextSibling;
45238
45283
  return P(f, j(M, {
@@ -45240,10 +45285,10 @@ function M0(e) {
45240
45285
  return !i.isError;
45241
45286
  },
45242
45287
  get fallback() {
45243
- return x0();
45288
+ return S0();
45244
45289
  },
45245
45290
  get children() {
45246
- var e = v0(), t = e.firstChild, r = t.nextSibling;
45291
+ var e = y0(), t = e.firstChild, r = t.nextSibling;
45247
45292
  return r.nextSibling, P(e, () => d().length, t), P(e, () => n().length, r), e;
45248
45293
  }
45249
45294
  }), null), P(_, j(We, {
@@ -45266,7 +45311,7 @@ function M0(e) {
45266
45311
  }
45267
45312
  ],
45268
45313
  children: (e) => (() => {
45269
- var t = S0();
45314
+ var t = C0();
45270
45315
  return t.$$click = () => c(e.id), P(t, () => e.label), D(() => st(t, `rounded-[5px] px-2 py-0.5 text-[11px] font-medium transition-colors ${s() === e.id ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer"}`)), t;
45271
45316
  })()
45272
45317
  })), P(h, j(Aj, {
@@ -45289,13 +45334,13 @@ function M0(e) {
45289
45334
  });
45290
45335
  },
45291
45336
  get children() {
45292
- var t = y0();
45337
+ var t = b0();
45293
45338
  return P(t, j(We, {
45294
45339
  get each() {
45295
45340
  return d();
45296
45341
  },
45297
45342
  children: (t) => (() => {
45298
- var n = D0(), r = n.firstChild, s = r.nextSibling, c = s.firstChild, l = c.nextSibling, u = l.nextSibling, d = s.nextSibling, f = d.firstChild;
45343
+ var n = O0(), r = n.firstChild, s = r.nextSibling, c = s.firstChild, l = c.nextSibling, u = l.nextSibling, d = s.nextSibling, f = d.firstChild;
45299
45344
  return P(r, () => t.attachment.title || t.attachment.url), P(n, j(M, {
45300
45345
  get when() {
45301
45346
  return i.data?.previews[t.attachment.url];
@@ -45383,10 +45428,10 @@ function M0(e) {
45383
45428
  return g().has(t.attachment.url);
45384
45429
  },
45385
45430
  get fallback() {
45386
- return O0();
45431
+ return k0();
45387
45432
  },
45388
45433
  get children() {
45389
- return C0();
45434
+ return w0();
45390
45435
  }
45391
45436
  });
45392
45437
  }
@@ -45413,10 +45458,10 @@ function M0(e) {
45413
45458
  return E().has(t.attachment.url);
45414
45459
  },
45415
45460
  get fallback() {
45416
- return k0();
45461
+ return A0();
45417
45462
  },
45418
45463
  get children() {
45419
- return w0();
45464
+ return T0();
45420
45465
  }
45421
45466
  });
45422
45467
  }
@@ -45429,7 +45474,7 @@ function M0(e) {
45429
45474
  aj("activity", t.issue.id), e.onOpenIssue();
45430
45475
  },
45431
45476
  get children() {
45432
- return T0();
45477
+ return E0();
45433
45478
  }
45434
45479
  }), null), P(f, j(Oj, {
45435
45480
  variant: "ghost",
@@ -45443,10 +45488,10 @@ function M0(e) {
45443
45488
  return x() === t.attachment.id;
45444
45489
  },
45445
45490
  get fallback() {
45446
- return A0();
45491
+ return j0();
45447
45492
  },
45448
45493
  get children() {
45449
- return E0();
45494
+ return D0();
45450
45495
  }
45451
45496
  });
45452
45497
  }
@@ -45477,16 +45522,47 @@ function M0(e) {
45477
45522
  })), r;
45478
45523
  })();
45479
45524
  }
45525
+ rt(["click"]);
45526
+ //#endregion
45527
+ //#region src/lib/projectConfig.ts
45528
+ var P0 = [
45529
+ "defaultTeamId",
45530
+ "defaultProjectId",
45531
+ "defaultLabelIds",
45532
+ "defaultRepo",
45533
+ "workflowMode",
45534
+ "cursorModel",
45535
+ "stagingBranch",
45536
+ "githubAssetsRepo",
45537
+ "skillPaths",
45538
+ "logUrl",
45539
+ "logLines",
45540
+ "issueTemplate",
45541
+ "testUsername"
45542
+ ];
45543
+ function F0(e) {
45544
+ let t = {};
45545
+ for (let n of P0) {
45546
+ let r = e[n];
45547
+ r !== void 0 && r !== "" && !(Array.isArray(r) && r.length === 0) && (t[n] = r);
45548
+ }
45549
+ return t;
45550
+ }
45551
+ function I0(e, t) {
45552
+ let n = {};
45553
+ for (let r of P0) e[r] === void 0 && t[r] !== void 0 && (n[r] = t[r]);
45554
+ return Object.keys(n).length ? n : null;
45555
+ }
45480
45556
  //#endregion
45481
45557
  //#region src/lib/linear/auth.ts
45482
- rt(["click"]), Br();
45483
- function N0(e) {
45558
+ Br();
45559
+ function L0(e) {
45484
45560
  let t = "";
45485
45561
  for (let n of e) t += String.fromCharCode(n);
45486
45562
  return btoa(t).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
45487
45563
  }
45488
- async function P0(e) {
45489
- let t = N0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = N0(new Uint8Array(n)), i = N0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
45564
+ async function R0(e) {
45565
+ let t = L0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = L0(new Uint8Array(n)), i = L0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
45490
45566
  o.searchParams.set("client_id", e), o.searchParams.set("redirect_uri", a), o.searchParams.set("response_type", "code"), o.searchParams.set("scope", "read,write"), o.searchParams.set("state", i), o.searchParams.set("code_challenge", r), o.searchParams.set("code_challenge_method", "S256");
45491
45567
  let s = await chrome.identity.launchWebAuthFlow({
45492
45568
  url: o.toString(),
@@ -45514,15 +45590,15 @@ async function P0(e) {
45514
45590
  linearOauthClientId: e
45515
45591
  });
45516
45592
  }
45517
- async function F0() {
45593
+ async function z0() {
45518
45594
  await Er({
45519
45595
  linearAccessToken: void 0,
45520
45596
  linearApiKey: void 0
45521
45597
  });
45522
45598
  }
45523
45599
  Br(), Sr(), Fx(), gD();
45524
- var I0 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), L0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Cloud: picking an element opens the panel to draft &amp; delegate to the Cursor agent. Local (react-grab style): picking auto-copies the element's context — source, stack, and your skills/memory paths — straight to the clipboard for a local Claude Code or Cursor session; the panel stays out of the way. Both share the same picker; switch anytime."), R0 = /*#__PURE__*/ N("<label class=\"flex cursor-pointer items-center gap-2 select-none\"><input type=checkbox class=\"accent-accent rounded\"><span class=\"text-text text-[12px]\">Element screenshots"), z0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Captures a highlighted screenshot of each picked element and attaches it to the issue. Costs a beat on huge pages — with this off, picking is instant (pure react-grab speed)."), B0 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), V0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex items-center justify-between rounded-lg border p-2.5\"><span class=\"text-text text-[12px]\">"), H0 = /*#__PURE__*/ N("<option value>Select a team…"), U0 = /*#__PURE__*/ N("<option value>No project"), W0 = /*#__PURE__*/ N("<div class=\"flex flex-wrap gap-1\">"), G0 = /*#__PURE__*/ N("<label class=\"flex items-start gap-2\"><input type=checkbox class=\"accent-accent mt-0.5\"><span class=\"flex flex-col gap-0.5\"><span class=text-[12px]>Let agents close out Linear themselves</span><span class=\"text-text-faint text-[10.5px] leading-snug\">Embeds your Linear API key + raw GraphQL closeout recipes in every issue's Agent instructions — cloud agent VMs have no authenticated Linear MCP, so without this they can't comment, attach media, or move the issue. The key is visible to anyone who can read the issue."), K0 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), q0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), J0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), Y0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Mode</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"></div><span class=\"text-text-faint text-[10.5px] leading-snug\">Beside page squeezes the app next to the panel, DevTools-style — nothing gets covered. Also toggleable from the dock icon in the panel header."), X0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Dock side</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"></div><span class=\"text-text-faint text-[10.5px] leading-snug\">The launcher pill is draggable — park it anywhere it doesn't cover your app."), Z0 = /*#__PURE__*/ N("<option value>Select a channel…"), Q0 = /*#__PURE__*/ N("<label class=\"flex cursor-pointer items-center gap-2 select-none\"><input type=checkbox class=\"accent-accent rounded\"><span class=\"text-text text-[12px]\">Announce new issues on create"), $0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">⚠️ Tokens are embedded in issue Agent-instructions so agents can post the finished demo — everyone who can read the issue can read them. Use single-channel-scoped bots."), e2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Provider preference</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"><button>Auto</button><button>OpenAI</button><button>Anthropic"), t2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), n2 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), r2 = /*#__PURE__*/ N("<ol class=\"text-text-faint flex list-decimal flex-col gap-1 pl-4 text-[11px] leading-relaxed\"><li>Pick an element on your running dev app.</li><li>Draft the issue (AI optional).</li><li>Create + delegate — Cursor's cloud agent fixes it and opens a PR.</li><li>Track and steer it from Activity."), i2 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), a2 = /*#__PURE__*/ N("<button>"), o2 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), s2 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), c2 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Register this callback URL in your Linear OAuth app config:<br><span class=\"font-mono text-[10.5px] break-all\">"), l2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), u2 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), d2 = /*#__PURE__*/ N("<option> (<!>)"), f2 = /*#__PURE__*/ N("<option>"), p2 = /*#__PURE__*/ N("<button type=button><span class=\"mr-1 inline-block size-2 rounded-full align-middle\">"), m2 = /*#__PURE__*/ N("<option value>Select the agent…"), h2 = /*#__PURE__*/ N("<option>#"), g2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
45525
- function _2() {
45600
+ var B0 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), V0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Cloud: picking an element opens the panel to draft &amp; delegate to the Cursor agent. Local (react-grab style): picking auto-copies the element's context — source, stack, and your skills/memory paths — straight to the clipboard for a local Claude Code or Cursor session; the panel stays out of the way. Both share the same picker; switch anytime."), H0 = /*#__PURE__*/ N("<label class=\"flex cursor-pointer items-center gap-2 select-none\"><input type=checkbox class=\"accent-accent rounded\"><span class=\"text-text text-[12px]\">Element screenshots"), U0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Captures a highlighted screenshot of each picked element and attaches it to the issue. Costs a beat on huge pages — with this off, picking is instant (pure react-grab speed)."), W0 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), G0 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex items-center justify-between rounded-lg border p-2.5\"><span class=\"text-text text-[12px]\">"), K0 = /*#__PURE__*/ N("<option value>Select a team…"), q0 = /*#__PURE__*/ N("<option value>No project"), J0 = /*#__PURE__*/ N("<div class=\"flex flex-wrap gap-1\">"), Y0 = /*#__PURE__*/ N("<label class=\"flex items-start gap-2\"><input type=checkbox class=\"accent-accent mt-0.5\"><span class=\"flex flex-col gap-0.5\"><span class=text-[12px]>Let agents close out Linear themselves</span><span class=\"text-text-faint text-[10.5px] leading-snug\">Embeds your Linear API key + raw GraphQL closeout recipes in every issue's Agent instructions — cloud agent VMs have no authenticated Linear MCP, so without this they can't comment, attach media, or move the issue. The key is visible to anyone who can read the issue."), X0 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), Z0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), Q0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), $0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Mode</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"></div><span class=\"text-text-faint text-[10.5px] leading-snug\">Beside page squeezes the app next to the panel, DevTools-style — nothing gets covered. Also toggleable from the dock icon in the panel header."), e2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Dock side</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"></div><span class=\"text-text-faint text-[10.5px] leading-snug\">The launcher pill is draggable — park it anywhere it doesn't cover your app."), t2 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[10.5px] leading-snug\">A committed <code>.lineargrab.json</code> at the repo root (where the bridge runs) shares team/project/labels, skills, staging branch, and workflow defaults with every machine and teammate — it seeds any setting you haven't set locally. Secrets never belong in it."), n2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[10ch] text-center\">"), r2 = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\">"), i2 = /*#__PURE__*/ N("<option value>Select a channel…"), a2 = /*#__PURE__*/ N("<label class=\"flex cursor-pointer items-center gap-2 select-none\"><input type=checkbox class=\"accent-accent rounded\"><span class=\"text-text text-[12px]\">Announce new issues on create"), o2 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">⚠️ Tokens are embedded in issue Agent-instructions so agents can post the finished demo — everyone who can read the issue can read them. Use single-channel-scoped bots."), s2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1\"><span class=\"text-text-dim text-[11px] font-medium\">Provider preference</span><div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\"><button>Auto</button><button>OpenAI</button><button>Anthropic"), c2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), l2 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), u2 = /*#__PURE__*/ N("<ol class=\"text-text-faint flex list-decimal flex-col gap-1 pl-4 text-[11px] leading-relaxed\"><li>Pick an element on your running dev app.</li><li>Draft the issue (AI optional).</li><li>Create + delegate — Cursor's cloud agent fixes it and opens a PR.</li><li>Track and steer it from Activity."), d2 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), f2 = /*#__PURE__*/ N("<button>"), p2 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), m2 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), h2 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Register this callback URL in your Linear OAuth app config:<br><span class=\"font-mono text-[10.5px] break-all\">"), g2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), _2 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), v2 = /*#__PURE__*/ N("<option> (<!>)"), y2 = /*#__PURE__*/ N("<option>"), b2 = /*#__PURE__*/ N("<button type=button><span class=\"mr-1 inline-block size-2 rounded-full align-middle\">"), x2 = /*#__PURE__*/ N("<option value>Select the agent…"), S2 = /*#__PURE__*/ N("<option>#"), C2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
45601
+ function w2() {
45526
45602
  let e = sr(), t = _r(() => ({
45527
45603
  queryKey: ["settings"],
45528
45604
  queryFn: Tr,
@@ -45545,69 +45621,83 @@ function _2() {
45545
45621
  queryFn: bO,
45546
45622
  enabled: i()
45547
45623
  })), c = _r(() => ({
45624
+ queryKey: ["bridge-health"],
45625
+ queryFn: MO,
45626
+ retry: 0
45627
+ })), [l, u] = T(!1), d = async () => {
45628
+ try {
45629
+ await navigator.clipboard.writeText(JSON.stringify(F0(n()), null, 2) + "\n"), u(!0), setTimeout(() => u(!1), 1800);
45630
+ } catch {}
45631
+ }, f = () => {
45632
+ let e = c.data?.projectConfig;
45633
+ if (!e) return;
45634
+ let t = {};
45635
+ for (let n of P0) e[n] !== void 0 && (t[n] = e[n]);
45636
+ r(t);
45637
+ }, p = _r(() => ({
45548
45638
  queryKey: ["linear-labels"],
45549
45639
  queryFn: xO,
45550
45640
  enabled: i()
45551
- })), l = _r(() => ({
45641
+ })), m = _r(() => ({
45552
45642
  queryKey: ["agents"],
45553
45643
  queryFn: dO,
45554
45644
  enabled: i()
45555
- })), [u, d] = T(""), [f, p] = T(!1), [m, h] = T("");
45556
- async function g() {
45557
- let e = u().trim();
45645
+ })), [h, g] = T(""), [_, v] = T(!1), [y, b] = T("");
45646
+ async function x() {
45647
+ let e = h().trim();
45558
45648
  if (e) {
45559
- p(!0), h("");
45649
+ v(!0), b("");
45560
45650
  try {
45561
- await r({ linearApiKey: e }, !0), await lO(), d("");
45651
+ await r({ linearApiKey: e }, !0), await lO(), g("");
45562
45652
  } catch {
45563
- h("Key rejected — could not verify. Check the key and try again."), await r({ linearApiKey: void 0 }, !0);
45653
+ b("Key rejected — could not verify. Check the key and try again."), await r({ linearApiKey: void 0 }, !0);
45564
45654
  } finally {
45565
- p(!1);
45655
+ v(!1);
45566
45656
  }
45567
45657
  }
45568
45658
  }
45569
- let [_, v] = T(""), [y, b] = T(!1), [x, S] = T("");
45570
- async function C() {
45571
- let t = (_() || n().linearOauthClientId || "").trim();
45659
+ let [S, C] = T(""), [w, E] = T(!1), [O, ee] = T("");
45660
+ async function te() {
45661
+ let t = (S() || n().linearOauthClientId || "").trim();
45572
45662
  if (!t) {
45573
- S("Enter an OAuth client ID first.");
45663
+ ee("Enter an OAuth client ID first.");
45574
45664
  return;
45575
45665
  }
45576
- b(!0), S("");
45666
+ E(!0), ee("");
45577
45667
  try {
45578
- await P0(t), await e.invalidateQueries({ queryKey: ["settings"] }), await e.invalidateQueries({ queryKey: ["viewer"] }), await e.invalidateQueries({ queryKey: ["teams"] }), await e.invalidateQueries({ queryKey: ["agents"] }), await e.invalidateQueries({ queryKey: ["my-issues"] });
45668
+ await R0(t), await e.invalidateQueries({ queryKey: ["settings"] }), await e.invalidateQueries({ queryKey: ["viewer"] }), await e.invalidateQueries({ queryKey: ["teams"] }), await e.invalidateQueries({ queryKey: ["agents"] }), await e.invalidateQueries({ queryKey: ["my-issues"] });
45579
45669
  } catch (e) {
45580
- S(e instanceof Error ? e.message : "OAuth flow failed.");
45670
+ ee(e instanceof Error ? e.message : "OAuth flow failed.");
45581
45671
  } finally {
45582
- b(!1);
45672
+ E(!1);
45583
45673
  }
45584
45674
  }
45585
- let [w, E] = T(!1);
45586
- async function O() {
45587
- E(!0);
45675
+ let [A, ne] = T(!1);
45676
+ async function re() {
45677
+ ne(!0);
45588
45678
  try {
45589
- await F0(), await e.invalidateQueries({ queryKey: ["settings"] }), await e.invalidateQueries({ queryKey: ["viewer"] }), await e.invalidateQueries({ queryKey: ["teams"] }), await e.invalidateQueries({ queryKey: ["agents"] }), await e.invalidateQueries({ queryKey: ["my-issues"] });
45679
+ await z0(), await e.invalidateQueries({ queryKey: ["settings"] }), await e.invalidateQueries({ queryKey: ["viewer"] }), await e.invalidateQueries({ queryKey: ["teams"] }), await e.invalidateQueries({ queryKey: ["agents"] }), await e.invalidateQueries({ queryKey: ["my-issues"] });
45590
45680
  } finally {
45591
- E(!1);
45681
+ ne(!1);
45592
45682
  }
45593
45683
  }
45594
- let ee = xr ? chrome.identity.getRedirectURL() : null, te = _r(() => ({
45684
+ let ie = xr ? chrome.identity.getRedirectURL() : null, ae = _r(() => ({
45595
45685
  queryKey: ["slack-channels", n().slackToken],
45596
45686
  queryFn: () => ek(n().slackToken),
45597
45687
  enabled: !!n().slackToken,
45598
45688
  retry: 0,
45599
45689
  staleTime: 6e4
45600
- })), A = k(() => Ax(n())), ne = k(() => {
45601
- let e = A();
45690
+ })), oe = k(() => Ax(n())), se = k(() => {
45691
+ let e = oe();
45602
45692
  return e ? `Drafting with ${e} — ${Nx[e].fast} (fast) / ${Nx[e].best} (best)` : null;
45603
45693
  });
45604
45694
  return (() => {
45605
- var e = i2();
45695
+ var e = d2();
45606
45696
  return P(e, j(Lj, {
45607
45697
  title: "Workflow",
45608
45698
  get children() {
45609
45699
  return [(() => {
45610
- var e = I0();
45700
+ var e = B0();
45611
45701
  return P(e, j(We, {
45612
45702
  each: [{
45613
45703
  id: "cloud",
@@ -45617,19 +45707,19 @@ function _2() {
45617
45707
  label: "Local · clipboard"
45618
45708
  }],
45619
45709
  children: (e) => (() => {
45620
- var t = a2();
45710
+ var t = f2();
45621
45711
  return t.$$click = () => void r({ workflowMode: e.id }), P(t, () => e.label), D(() => st(t, `flex-1 rounded-[5px] px-2 py-1 text-[11.5px] font-medium transition-colors ${(n().workflowMode ?? "cloud") === e.id ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer"}`)), t;
45622
45712
  })()
45623
45713
  })), e;
45624
- })(), L0()];
45714
+ })(), V0()];
45625
45715
  }
45626
45716
  }), null), P(e, j(Lj, {
45627
45717
  title: "Capture",
45628
45718
  get children() {
45629
45719
  return [(() => {
45630
- var e = R0(), t = e.firstChild;
45720
+ var e = H0(), t = e.firstChild;
45631
45721
  return t.addEventListener("change", (e) => void r({ captureShots: e.currentTarget.checked || void 0 })), D(() => t.checked = !!n().captureShots), e;
45632
- })(), z0()];
45722
+ })(), U0()];
45633
45723
  }
45634
45724
  }), null), P(e, j(Lj, {
45635
45725
  title: "Linear",
@@ -45640,42 +45730,42 @@ function _2() {
45640
45730
  },
45641
45731
  get fallback() {
45642
45732
  return (() => {
45643
- var e = l2();
45733
+ var e = g2();
45644
45734
  return P(e, j(Ij, {
45645
45735
  label: "Personal API key",
45646
45736
  hint: "Create one at linear.app → Settings → API — fastest path.",
45647
45737
  get children() {
45648
45738
  return [(() => {
45649
- var e = o2();
45739
+ var e = p2();
45650
45740
  return P(e, j(Aj, {
45651
45741
  type: "password",
45652
45742
  placeholder: "lin_api_…",
45653
45743
  get value() {
45654
- return u();
45744
+ return h();
45655
45745
  },
45656
- onInput: (e) => d(e.currentTarget.value),
45746
+ onInput: (e) => g(e.currentTarget.value),
45657
45747
  "on:keydown": (e) => {
45658
- e.key === "Enter" && g();
45748
+ e.key === "Enter" && x();
45659
45749
  }
45660
45750
  }), null), P(e, j(Oj, {
45661
45751
  variant: "primary",
45662
45752
  get loading() {
45663
- return f();
45753
+ return _();
45664
45754
  },
45665
45755
  get disabled() {
45666
- return !u().trim();
45756
+ return !h().trim();
45667
45757
  },
45668
- onClick: () => void g(),
45758
+ onClick: () => void x(),
45669
45759
  class: "shrink-0",
45670
45760
  children: "Connect"
45671
45761
  }), null), e;
45672
45762
  })(), j(M, {
45673
45763
  get when() {
45674
- return m();
45764
+ return y();
45675
45765
  },
45676
45766
  get children() {
45677
45767
  return j(Vj, { get message() {
45678
- return m();
45768
+ return y();
45679
45769
  } });
45680
45770
  }
45681
45771
  })];
@@ -45683,41 +45773,41 @@ function _2() {
45683
45773
  }), null), P(e, j(M, {
45684
45774
  when: xr,
45685
45775
  get children() {
45686
- return [s2(), j(Ij, {
45776
+ return [m2(), j(Ij, {
45687
45777
  label: "OAuth client ID",
45688
45778
  get children() {
45689
45779
  return [
45690
45780
  (() => {
45691
- var e = o2();
45781
+ var e = p2();
45692
45782
  return P(e, j(Aj, {
45693
45783
  placeholder: "your-client-id",
45694
45784
  get value() {
45695
- return _() || n().linearOauthClientId || "";
45785
+ return S() || n().linearOauthClientId || "";
45696
45786
  },
45697
- onInput: (e) => v(e.currentTarget.value)
45787
+ onInput: (e) => C(e.currentTarget.value)
45698
45788
  }), null), P(e, j(Oj, {
45699
45789
  variant: "ghost",
45700
45790
  get loading() {
45701
- return y();
45791
+ return w();
45702
45792
  },
45703
- onClick: () => void C(),
45793
+ onClick: () => void te(),
45704
45794
  class: "shrink-0 whitespace-nowrap",
45705
45795
  children: "Connect with OAuth"
45706
45796
  }), null), e;
45707
45797
  })(),
45708
45798
  j(M, {
45709
45799
  get when() {
45710
- return x();
45800
+ return O();
45711
45801
  },
45712
45802
  get children() {
45713
45803
  return j(Vj, { get message() {
45714
- return x();
45804
+ return O();
45715
45805
  } });
45716
45806
  }
45717
45807
  }),
45718
45808
  (() => {
45719
- var e = c2(), t = e.firstChild.nextSibling.nextSibling;
45720
- return P(t, ee), e;
45809
+ var e = h2(), t = e.firstChild.nextSibling.nextSibling;
45810
+ return P(t, ie), e;
45721
45811
  })()
45722
45812
  ];
45723
45813
  }
@@ -45727,13 +45817,13 @@ function _2() {
45727
45817
  })();
45728
45818
  },
45729
45819
  get children() {
45730
- var e = V0(), t = e.firstChild;
45820
+ var e = G0(), t = e.firstChild;
45731
45821
  return P(t, j(M, {
45732
45822
  get when() {
45733
45823
  return !a.isLoading;
45734
45824
  },
45735
45825
  get fallback() {
45736
- return u2();
45826
+ return _2();
45737
45827
  },
45738
45828
  get children() {
45739
45829
  return j(M, {
@@ -45746,7 +45836,7 @@ function _2() {
45746
45836
  return a.isError;
45747
45837
  },
45748
45838
  get fallback() {
45749
- return u2();
45839
+ return _2();
45750
45840
  },
45751
45841
  get children() {
45752
45842
  return j(Vj, { message: "Key rejected — reconnect" });
@@ -45754,7 +45844,7 @@ function _2() {
45754
45844
  });
45755
45845
  },
45756
45846
  get children() {
45757
- var e = B0(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
45847
+ var e = W0(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
45758
45848
  return P(t, () => a.data.name), P(n, () => a.data.email), e;
45759
45849
  }
45760
45850
  });
@@ -45762,9 +45852,9 @@ function _2() {
45762
45852
  })), P(e, j(Oj, {
45763
45853
  variant: "ghost",
45764
45854
  get loading() {
45765
- return w();
45855
+ return A();
45766
45856
  },
45767
- onClick: () => void O(),
45857
+ onClick: () => void re(),
45768
45858
  class: "ml-2 shrink-0",
45769
45859
  children: "Disconnect"
45770
45860
  }), null), e;
@@ -45795,7 +45885,7 @@ function _2() {
45795
45885
  return o.isLoading;
45796
45886
  },
45797
45887
  get children() {
45798
- return [H0(), j(M, {
45888
+ return [K0(), j(M, {
45799
45889
  get when() {
45800
45890
  return o.data;
45801
45891
  },
@@ -45805,7 +45895,7 @@ function _2() {
45805
45895
  return o.data;
45806
45896
  },
45807
45897
  children: (e) => (() => {
45808
- var t = d2(), r = t.firstChild, i = r.nextSibling;
45898
+ var t = v2(), r = t.firstChild, i = r.nextSibling;
45809
45899
  return i.nextSibling, P(t, () => e.name, r), P(t, () => e.key, i), D(() => t.selected = e.id === n().defaultTeamId), D(() => t.value = e.id), t;
45810
45900
  })()
45811
45901
  });
@@ -45829,14 +45919,14 @@ function _2() {
45829
45919
  },
45830
45920
  get children() {
45831
45921
  return [(() => {
45832
- var e = U0();
45922
+ var e = q0();
45833
45923
  return D(() => e.selected = !n().defaultProjectId), e;
45834
45924
  })(), j(We, {
45835
45925
  get each() {
45836
45926
  return s.data ?? [];
45837
45927
  },
45838
45928
  children: (e) => (() => {
45839
- var t = f2();
45929
+ var t = y2();
45840
45930
  return P(t, () => e.name), D(() => t.selected = e.id === n().defaultProjectId), D(() => t.value = e.id), t;
45841
45931
  })()
45842
45932
  })];
@@ -45848,15 +45938,15 @@ function _2() {
45848
45938
  label: "Default labels",
45849
45939
  hint: "Applied to every issue created from the panel.",
45850
45940
  get children() {
45851
- var e = W0();
45941
+ var e = J0();
45852
45942
  return P(e, j(We, {
45853
45943
  get each() {
45854
- return c.data ?? [];
45944
+ return p.data ?? [];
45855
45945
  },
45856
45946
  children: (e) => {
45857
45947
  let t = () => (n().defaultLabelIds ?? []).includes(e.id);
45858
45948
  return (() => {
45859
- var i = p2(), a = i.firstChild;
45949
+ var i = b2(), a = i.firstChild;
45860
45950
  return i.$$click = () => {
45861
45951
  let i = n().defaultLabelIds ?? [];
45862
45952
  r({ defaultLabelIds: t() ? i.filter((t) => t !== e.id) : [...i, e.id] });
@@ -45873,7 +45963,7 @@ function _2() {
45873
45963
  }
45874
45964
  }),
45875
45965
  (() => {
45876
- var e = G0(), t = e.firstChild;
45966
+ var e = Y0(), t = e.firstChild;
45877
45967
  return t.addEventListener("change", (e) => void r({ shareLinearKey: e.currentTarget.checked })), D(() => t.checked = !!n().shareLinearKey), e;
45878
45968
  })(),
45879
45969
  j(Ij, {
@@ -45895,7 +45985,7 @@ function _2() {
45895
45985
  get children() {
45896
45986
  return j(M, {
45897
45987
  get when() {
45898
- return $e(() => !!l.data)() && l.data.length === 0;
45988
+ return $e(() => !!m.data)() && m.data.length === 0;
45899
45989
  },
45900
45990
  get fallback() {
45901
45991
  return j(Mj, {
@@ -45912,7 +46002,7 @@ function _2() {
45912
46002
  });
45913
46003
  return;
45914
46004
  }
45915
- let n = l.data?.find((e) => e.id === t);
46005
+ let n = m.data?.find((e) => e.id === t);
45916
46006
  n && r({
45917
46007
  cursorAgentId: n.id,
45918
46008
  cursorAgentName: n.displayName,
@@ -45920,20 +46010,20 @@ function _2() {
45920
46010
  });
45921
46011
  },
45922
46012
  get disabled() {
45923
- return l.isLoading;
46013
+ return m.isLoading;
45924
46014
  },
45925
46015
  get children() {
45926
- return [m2(), j(M, {
46016
+ return [x2(), j(M, {
45927
46017
  get when() {
45928
- return l.data;
46018
+ return m.data;
45929
46019
  },
45930
46020
  get children() {
45931
46021
  return j(We, {
45932
46022
  get each() {
45933
- return l.data;
46023
+ return m.data;
45934
46024
  },
45935
46025
  children: (e) => (() => {
45936
- var t = f2();
46026
+ var t = y2();
45937
46027
  return P(t, () => e.displayName), D(() => t.selected = e.id === n().cursorAgentId), D(() => t.value = e.id), t;
45938
46028
  })()
45939
46029
  });
@@ -45943,7 +46033,7 @@ function _2() {
45943
46033
  });
45944
46034
  },
45945
46035
  get children() {
45946
- return K0();
46036
+ return X0();
45947
46037
  }
45948
46038
  });
45949
46039
  }
@@ -45991,7 +46081,7 @@ function _2() {
45991
46081
  onBlur: (e) => {
45992
46082
  r({ issueTemplate: e.currentTarget.value.trim() || void 0 });
45993
46083
  }
45994
- }), q0()];
46084
+ }), Z0()];
45995
46085
  }
45996
46086
  }),
45997
46087
  j(Ij, {
@@ -46048,7 +46138,7 @@ function _2() {
46048
46138
  label: "Test account",
46049
46139
  hint: "The cloud agent logs into the app with this while testing and recording its demo. Added to every issue's Agent instructions. Use a throwaway account — it's visible to everyone who can read the issue.",
46050
46140
  get children() {
46051
- var e = J0();
46141
+ var e = Q0();
46052
46142
  return P(e, j(Aj, {
46053
46143
  placeholder: "Username or email (e.g. demo@yourapp.com)",
46054
46144
  get value() {
@@ -46080,7 +46170,7 @@ function _2() {
46080
46170
  title: "Panel",
46081
46171
  get children() {
46082
46172
  return [(() => {
46083
- var e = Y0(), t = e.firstChild.nextSibling;
46173
+ var e = $0(), t = e.firstChild.nextSibling;
46084
46174
  return P(t, j(We, {
46085
46175
  each: [{
46086
46176
  id: "overlay",
@@ -46090,7 +46180,7 @@ function _2() {
46090
46180
  label: "Beside page"
46091
46181
  }],
46092
46182
  children: (e) => (() => {
46093
- var t = a2();
46183
+ var t = f2();
46094
46184
  return t.$$click = () => void r({
46095
46185
  panelMode: e.id,
46096
46186
  panelPos: void 0
@@ -46098,11 +46188,11 @@ function _2() {
46098
46188
  })()
46099
46189
  })), e;
46100
46190
  })(), (() => {
46101
- var e = X0(), t = e.firstChild.nextSibling;
46191
+ var e = e2(), t = e.firstChild.nextSibling;
46102
46192
  return P(t, j(We, {
46103
46193
  each: ["left", "right"],
46104
46194
  children: (e) => (() => {
46105
- var t = a2();
46195
+ var t = f2();
46106
46196
  return t.$$click = () => void r({ panelSide: e }), P(t, e === "left" ? "Left" : "Right"), D(() => st(t, `flex-1 rounded-[5px] px-2 py-0.5 text-[11.5px] font-medium transition-colors ${(n().panelSide ?? "right") === e ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer"}`)), t;
46107
46197
  })()
46108
46198
  })), e;
@@ -46129,6 +46219,47 @@ function _2() {
46129
46219
  }
46130
46220
  });
46131
46221
  }
46222
+ }), null), P(e, j(Lj, {
46223
+ title: "Project config (.lineargrab.json)",
46224
+ get children() {
46225
+ return [t2(), (() => {
46226
+ var e = r2();
46227
+ return P(e, j(M, {
46228
+ get when() {
46229
+ return c.data?.projectConfig;
46230
+ },
46231
+ get fallback() {
46232
+ return j(Rj, {
46233
+ title: "No .lineargrab.json found at the bridge's cwd (or bridge offline / outdated)",
46234
+ children: "not detected"
46235
+ });
46236
+ },
46237
+ get children() {
46238
+ return [j(Rj, {
46239
+ class: "text-success",
46240
+ children: "detected"
46241
+ }), j(Oj, {
46242
+ variant: "ghost",
46243
+ class: "h-7 px-2 text-[11px]",
46244
+ title: "Overwrite your local settings with every value from the repo's config",
46245
+ onClick: f,
46246
+ children: "Apply all"
46247
+ })];
46248
+ }
46249
+ }), null), P(e, j(Oj, {
46250
+ variant: "ghost",
46251
+ class: "h-7 px-2 text-[11px]",
46252
+ get title() {
46253
+ return l() ? "Copied!" : "Copy your current shareable settings as .lineargrab.json — commit it to the repo root";
46254
+ },
46255
+ onClick: () => void d(),
46256
+ get children() {
46257
+ var e = n2();
46258
+ return P(e, () => l() ? "Copied ✓" : "Copy config"), e;
46259
+ }
46260
+ }), null), e;
46261
+ })()];
46262
+ }
46132
46263
  }), null), P(e, j(Lj, {
46133
46264
  title: "Asset uploads",
46134
46265
  get children() {
@@ -46193,7 +46324,7 @@ function _2() {
46193
46324
  get children() {
46194
46325
  return j(M, {
46195
46326
  get when() {
46196
- return !te.isError;
46327
+ return !ae.isError;
46197
46328
  },
46198
46329
  get fallback() {
46199
46330
  return j(Vj, { message: "Couldn't list channels — check the token scopes (channels:read)." });
@@ -46204,22 +46335,22 @@ function _2() {
46204
46335
  return n().slackChannelId ?? "";
46205
46336
  },
46206
46337
  get disabled() {
46207
- return te.isLoading;
46338
+ return ae.isLoading;
46208
46339
  },
46209
46340
  onChange: (e) => {
46210
- let t = e.currentTarget.value, n = te.data?.find((e) => e.id === t);
46341
+ let t = e.currentTarget.value, n = ae.data?.find((e) => e.id === t);
46211
46342
  r({
46212
46343
  slackChannelId: t || void 0,
46213
46344
  slackChannelName: n?.name
46214
46345
  });
46215
46346
  },
46216
46347
  get children() {
46217
- return [Z0(), j(We, {
46348
+ return [i2(), j(We, {
46218
46349
  get each() {
46219
- return te.data ?? [];
46350
+ return ae.data ?? [];
46220
46351
  },
46221
46352
  children: (e) => (() => {
46222
- var t = h2();
46353
+ var t = S2();
46223
46354
  return t.firstChild, P(t, () => e.name, null), D(() => t.selected = e.id === n().slackChannelId), D(() => t.value = e.id), t;
46224
46355
  })()
46225
46356
  })];
@@ -46270,10 +46401,10 @@ function _2() {
46270
46401
  }
46271
46402
  }),
46272
46403
  (() => {
46273
- var e = Q0(), t = e.firstChild;
46404
+ var e = a2(), t = e.firstChild;
46274
46405
  return t.addEventListener("change", (e) => void r({ notifyOnCreate: e.currentTarget.checked ? void 0 : !1 })), D(() => t.checked = n().notifyOnCreate !== !1), e;
46275
46406
  })(),
46276
- $0()
46407
+ o2()
46277
46408
  ];
46278
46409
  }
46279
46410
  }), null), P(e, j(Lj, {
@@ -46311,7 +46442,7 @@ function _2() {
46311
46442
  }
46312
46443
  }),
46313
46444
  (() => {
46314
- var e = e2(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
46445
+ var e = s2(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
46315
46446
  return t.$$click = () => void r({ preferredProvider: void 0 }), i.$$click = () => void r({ preferredProvider: "openai" }), a.$$click = () => void r({ preferredProvider: "anthropic" }), D((e) => {
46316
46447
  var r = `flex-1 rounded-[5px] px-2 py-0.5 text-[11.5px] font-medium transition-colors ${n().preferredProvider === void 0 ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer"}`, o = `flex-1 rounded-[5px] px-2 py-0.5 text-[11.5px] font-medium transition-colors disabled:cursor-not-allowed ${n().preferredProvider === "openai" ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer disabled:text-text-faint"}`, s = !n().openaiKey, c = `flex-1 rounded-[5px] px-2 py-0.5 text-[11.5px] font-medium transition-colors disabled:cursor-not-allowed ${n().preferredProvider === "anthropic" ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer disabled:text-text-faint"}`, l = !n().anthropicKey;
46317
46448
  return r !== e.e && st(t, e.e = r), o !== e.t && st(i, e.t = o), s !== e.a && (i.disabled = e.a = s), c !== e.o && st(a, e.o = c), l !== e.i && (a.disabled = e.i = l), e;
@@ -46324,17 +46455,17 @@ function _2() {
46324
46455
  }), e;
46325
46456
  })(),
46326
46457
  (() => {
46327
- var e = n2();
46458
+ var e = l2();
46328
46459
  return P(e, j(M, {
46329
46460
  get when() {
46330
- return ne();
46461
+ return se();
46331
46462
  },
46332
46463
  get fallback() {
46333
- return g2();
46464
+ return C2();
46334
46465
  },
46335
46466
  get children() {
46336
- var e = t2();
46337
- return P(e, ne), e;
46467
+ var e = c2();
46468
+ return P(e, se), e;
46338
46469
  }
46339
46470
  })), e;
46340
46471
  })()
@@ -46343,7 +46474,7 @@ function _2() {
46343
46474
  }), null), P(e, j(Lj, {
46344
46475
  title: "How it works",
46345
46476
  get children() {
46346
- return r2();
46477
+ return u2();
46347
46478
  }
46348
46479
  }), null), e;
46349
46480
  })();
@@ -46351,38 +46482,38 @@ function _2() {
46351
46482
  rt(["click"]);
46352
46483
  //#endregion
46353
46484
  //#region src/lib/idbCache.ts
46354
- var v2 = "linear-grab", y2 = "queries", b2 = [
46485
+ var T2 = "linear-grab", E2 = "queries", D2 = [
46355
46486
  "my-issues",
46356
46487
  "issue",
46357
46488
  "sessions",
46358
46489
  "teams",
46359
46490
  "agents"
46360
46491
  ];
46361
- function x2() {
46492
+ function O2() {
46362
46493
  return new Promise((e) => {
46363
46494
  try {
46364
- let t = indexedDB.open(v2, 1);
46365
- t.onupgradeneeded = () => t.result.createObjectStore(y2), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
46495
+ let t = indexedDB.open(T2, 1);
46496
+ t.onupgradeneeded = () => t.result.createObjectStore(E2), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
46366
46497
  } catch {
46367
46498
  e(null);
46368
46499
  }
46369
46500
  });
46370
46501
  }
46371
- function S2(e) {
46372
- return typeof e[0] == "string" && b2.includes(e[0]);
46502
+ function k2(e) {
46503
+ return typeof e[0] == "string" && D2.includes(e[0]);
46373
46504
  }
46374
- async function C2(e) {
46375
- let t = await x2();
46505
+ async function A2(e) {
46506
+ let t = await O2();
46376
46507
  if (!t) return () => {};
46377
46508
  await new Promise((n) => {
46378
46509
  try {
46379
- let r = t.transaction(y2, "readonly").objectStore(y2).openCursor();
46510
+ let r = t.transaction(E2, "readonly").objectStore(E2).openCursor();
46380
46511
  r.onsuccess = () => {
46381
46512
  let t = r.result;
46382
46513
  if (!t) return n();
46383
46514
  try {
46384
46515
  let { queryKey: n, data: r } = t.value;
46385
- S2(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
46516
+ k2(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
46386
46517
  } catch {}
46387
46518
  t.continue();
46388
46519
  }, r.onerror = () => n();
@@ -46393,14 +46524,14 @@ async function C2(e) {
46393
46524
  let n = /* @__PURE__ */ new Map(), r = e.getQueryCache().subscribe((r) => {
46394
46525
  if (r.type !== "updated" || r.action.type !== "success") return;
46395
46526
  let { queryKey: i, queryHash: a } = r.query;
46396
- if (!S2(i)) return;
46527
+ if (!k2(i)) return;
46397
46528
  let o = n.get(a);
46398
46529
  o && clearTimeout(o), n.set(a, setTimeout(() => {
46399
46530
  n.delete(a);
46400
46531
  try {
46401
46532
  let n = e.getQueryData(i);
46402
46533
  if (n === void 0) return;
46403
- t.transaction(y2, "readwrite").objectStore(y2).put({
46534
+ t.transaction(E2, "readwrite").objectStore(E2).put({
46404
46535
  queryKey: i,
46405
46536
  data: n
46406
46537
  }, a);
@@ -46416,7 +46547,7 @@ async function C2(e) {
46416
46547
  //#endregion
46417
46548
  //#region src/panel/App.tsx
46418
46549
  Br();
46419
- var w2 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hidden><path d=\"M1.22541 61.5228c-.2225-.9485.90748-1.5459 1.59638-.857L39.3342 97.1782c.6889.6889.0915 1.8189-.857 1.5964C20.0515 94.4522 5.54779 79.9485 1.22541 61.5228ZM.00189135 46.8891c-.01764375.2833.08887215.5599.28957165.7606L52.3503 99.7085c.2007.2007.4773.3075.7606.2896 2.3692-.1476 4.6938-.46 6.9624-.9259.7645-.157 1.0301-1.0963.4782-1.6481L2.57595 39.4485c-.55186-.5519-1.49117-.2863-1.648174.4782-.465915 2.2686-.77832 4.5932-.92588465 6.9624ZM4.21093 29.7054c-.16649.3738-.08169.8106.20765 1.1l64.77602 64.776c.2894.2894.7262.3742 1.1.2077 1.7861-.7956 3.5171-1.6927 5.1855-2.684.5521-.328.6373-1.0867.1832-1.5407L8.43566 24.3367c-.45409-.4541-1.21271-.3689-1.54074.1832-.99132 1.6684-1.88843 3.3994-2.68399 5.1855ZM12.6587 18.074c-.3701-.3701-.393-.9637-.0443-1.3541C21.7795 6.45931 35.1114 0 49.9519 0 77.5927 0 100 22.4073 100 50.0481c0 14.8405-6.4593 28.1724-16.7199 37.3375-.3903.3487-.984.3258-1.3541-.0443L12.6587 18.074Z\">"), T2 = /*#__PURE__*/ N("<button><svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><rect x=1.5 y=2.5 width=13 height=11 rx=1.5></rect><path d=\"M10 2.5v11\">"), E2 = /*#__PURE__*/ N("<button aria-label=\"Minimize to launcher\"title=\"Minimize to launcher\"class=\"text-text-dim hover:text-text hover:bg-surface-3 grid size-6 shrink-0 cursor-pointer place-items-center rounded-md text-[15px] leading-none transition-colors\">–"), D2 = /*#__PURE__*/ N("<div class=\"bg-bg text-text flex h-full flex-col\"><header><span class=\"text-accent mr-0.5 inline-flex shrink-0\"title=\"Linear Grab\"></span><div class=\"no-scrollbar flex min-w-0 flex-1 items-center gap-1 overflow-x-auto\"></div></header><main class=\"min-h-0 flex-1\"><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full>"), O2 = /*#__PURE__*/ N("<button>"), k2 = [
46550
+ var j2 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hidden><path d=\"M1.22541 61.5228c-.2225-.9485.90748-1.5459 1.59638-.857L39.3342 97.1782c.6889.6889.0915 1.8189-.857 1.5964C20.0515 94.4522 5.54779 79.9485 1.22541 61.5228ZM.00189135 46.8891c-.01764375.2833.08887215.5599.28957165.7606L52.3503 99.7085c.2007.2007.4773.3075.7606.2896 2.3692-.1476 4.6938-.46 6.9624-.9259.7645-.157 1.0301-1.0963.4782-1.6481L2.57595 39.4485c-.55186-.5519-1.49117-.2863-1.648174.4782-.465915 2.2686-.77832 4.5932-.92588465 6.9624ZM4.21093 29.7054c-.16649.3738-.08169.8106.20765 1.1l64.77602 64.776c.2894.2894.7262.3742 1.1.2077 1.7861-.7956 3.5171-1.6927 5.1855-2.684.5521-.328.6373-1.0867.1832-1.5407L8.43566 24.3367c-.45409-.4541-1.21271-.3689-1.54074.1832-.99132 1.6684-1.88843 3.3994-2.68399 5.1855ZM12.6587 18.074c-.3701-.3701-.393-.9637-.0443-1.3541C21.7795 6.45931 35.1114 0 49.9519 0 77.5927 0 100 22.4073 100 50.0481c0 14.8405-6.4593 28.1724-16.7199 37.3375-.3903.3487-.984.3258-1.3541-.0443L12.6587 18.074Z\">"), M2 = /*#__PURE__*/ N("<button><svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 aria-hidden><rect x=1.5 y=2.5 width=13 height=11 rx=1.5></rect><path d=\"M10 2.5v11\">"), N2 = /*#__PURE__*/ N("<button aria-label=\"Minimize to launcher\"title=\"Minimize to launcher\"class=\"text-text-dim hover:text-text hover:bg-surface-3 grid size-6 shrink-0 cursor-pointer place-items-center rounded-md text-[15px] leading-none transition-colors\">–"), P2 = /*#__PURE__*/ N("<div class=\"bg-bg text-text flex h-full flex-col\"><header><span class=\"text-accent mr-0.5 inline-flex shrink-0\"title=\"Linear Grab\"></span><div class=\"no-scrollbar flex min-w-0 flex-1 items-center gap-1 overflow-x-auto\"></div></header><main class=\"min-h-0 flex-1\"><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full>"), F2 = /*#__PURE__*/ N("<button>"), I2 = [
46420
46551
  {
46421
46552
  id: "draft",
46422
46553
  label: "Draft"
@@ -46449,35 +46580,35 @@ var w2 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hid
46449
46580
  id: "settings",
46450
46581
  label: "Settings"
46451
46582
  }
46452
- ], A2 = /* @__PURE__ */ new Set();
46453
- function j2(e, t, n) {
46454
- if (A2.has(e) || typeof Notification > "u") return;
46455
- A2.add(e);
46583
+ ], L2 = /* @__PURE__ */ new Set();
46584
+ function R2(e, t, n) {
46585
+ if (L2.has(e) || typeof Notification > "u") return;
46586
+ L2.add(e);
46456
46587
  let r = () => new Notification(t, { body: n });
46457
46588
  Notification.permission === "granted" ? r() : Notification.permission === "default" && Notification.requestPermission().then((e) => e === "granted" && r());
46458
46589
  }
46459
- function M2() {
46590
+ function z2() {
46460
46591
  setInterval(() => {
46461
46592
  NO().then((e) => {
46462
46593
  for (let t of e) {
46463
46594
  if (t.status !== "running") continue;
46464
46595
  let e = t.lastEventAt ?? t.startedAt;
46465
- Date.now() - e > 10 * 6e4 && j2(`local-stuck:${t.id}:${e}`, "Local agent may be stuck", `${t.title.slice(0, 80)} — no output for ${Math.round((Date.now() - e) / 6e4)}m. Nudge or interrupt it in the Local tab.`);
46596
+ Date.now() - e > 10 * 6e4 && R2(`local-stuck:${t.id}:${e}`, "Local agent may be stuck", `${t.title.slice(0, 80)} — no output for ${Math.round((Date.now() - e) / 6e4)}m. Nudge or interrupt it in the Local tab.`);
46466
46597
  }
46467
46598
  }).catch(() => {}), gO().then((e) => {
46468
- for (let t of e) /awaitingInput|elicit/i.test(t.status) && j2(`cloud-input:${t.id}`, "Cloud agent needs input", `${t.issue?.identifier ?? "Session"} — ${t.issue?.title?.slice(0, 80) ?? "a Cursor agent"} is waiting for you.`);
46599
+ for (let t of e) /awaitingInput|elicit/i.test(t.status) && R2(`cloud-input:${t.id}`, "Cloud agent needs input", `${t.issue?.identifier ?? "Session"} — ${t.issue?.title?.slice(0, 80) ?? "a Cursor agent"} is waiting for you.`);
46469
46600
  }).catch(() => {});
46470
46601
  }, 6e4);
46471
46602
  }
46472
- M2();
46473
- var N2 = new gr({ defaultOptions: { queries: {
46603
+ z2();
46604
+ var B2 = new gr({ defaultOptions: { queries: {
46474
46605
  retry: 1,
46475
46606
  refetchOnWindowFocus: !1,
46476
46607
  staleTime: 5e3
46477
46608
  } } });
46478
- function P2(e) {
46609
+ function V2(e) {
46479
46610
  return (() => {
46480
- var t = w2();
46611
+ var t = j2();
46481
46612
  return D((n) => {
46482
46613
  var r = e.size ?? 14, i = e.size ?? 14;
46483
46614
  return r !== n.e && it(t, "width", n.e = r), i !== n.t && it(t, "height", n.t = i), n;
@@ -46487,32 +46618,36 @@ function P2(e) {
46487
46618
  }), t;
46488
46619
  })();
46489
46620
  }
46490
- function F2(e) {
46621
+ function H2(e) {
46491
46622
  let [t, n] = T("draft"), r = () => {
46492
- N2.invalidateQueries({ queryKey: ["grab"] }), sj() === "capture" && n("capture"), e.onGrab?.();
46623
+ B2.invalidateQueries({ queryKey: ["grab"] }), sj() === "capture" && n("capture"), e.onGrab?.();
46493
46624
  };
46494
46625
  return O(() => {
46495
46626
  let e = tj();
46496
46627
  e && n(e);
46497
46628
  }), ie(() => {
46498
- let e = C2(N2), t = JZ(r), n = () => {
46499
- JO().then(f$), VO();
46629
+ let e = A2(B2), t = JZ(r), n = () => {
46630
+ JO().then(f$), VO(), MO().then(async (e) => {
46631
+ if (!e.projectConfig) return;
46632
+ let t = I0(await Tr(), e.projectConfig);
46633
+ t && await Er(t);
46634
+ }).catch(() => {});
46500
46635
  };
46501
46636
  n();
46502
46637
  let i = Mr((e) => {
46503
- e === "settings" && (N2.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
46638
+ e === "settings" && (B2.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
46504
46639
  });
46505
46640
  ae(() => {
46506
46641
  t(), i(), e.then((e) => e());
46507
46642
  });
46508
46643
  }), j(cr, {
46509
- client: N2,
46644
+ client: B2,
46510
46645
  get children() {
46511
- var r = D2(), i = r.firstChild, a = i.firstChild, o = a.nextSibling, s = i.nextSibling.firstChild, c = s.nextSibling, l = c.nextSibling, u = l.nextSibling, d = u.nextSibling, f = d.nextSibling, p = f.nextSibling, m = p.nextSibling;
46512
- return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(P2, { size: 14 })), P(o, j(We, {
46513
- each: k2,
46646
+ var r = P2(), i = r.firstChild, a = i.firstChild, o = a.nextSibling, s = i.nextSibling.firstChild, c = s.nextSibling, l = c.nextSibling, u = l.nextSibling, d = u.nextSibling, f = d.nextSibling, p = f.nextSibling, m = p.nextSibling;
46647
+ return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(V2, { size: 14 })), P(o, j(We, {
46648
+ each: I2,
46514
46649
  children: (e) => (() => {
46515
- var r = O2();
46650
+ var r = F2();
46516
46651
  return r.$$click = () => n(e.id), P(r, () => e.label), D(() => st(r, `h-6 shrink-0 rounded-md px-2 text-[12px] font-medium whitespace-nowrap transition-colors ${t() === e.id ? "bg-surface-3 text-text" : "text-text-dim hover:text-text cursor-pointer"}`)), r;
46517
46652
  })()
46518
46653
  })), P(i, j(M, {
@@ -46520,7 +46655,7 @@ function F2(e) {
46520
46655
  return e.onTogglePin;
46521
46656
  },
46522
46657
  get children() {
46523
- var t = T2();
46658
+ var t = M2();
46524
46659
  return t.$$click = () => e.onTogglePin?.(), D((n) => {
46525
46660
  var r = e.pinned ? "Switch to overlay" : "Dock beside page", i = e.pinned ? "Overlay the page" : "Dock beside page (squeezes the app, DevTools-style)", a = `hover:bg-surface-3 grid size-6 shrink-0 cursor-pointer place-items-center rounded-md transition-colors ${e.pinned ? "text-accent" : "text-text-dim hover:text-text"}`;
46526
46661
  return r !== n.e && it(t, "aria-label", n.e = r), i !== n.t && it(t, "title", n.t = i), a !== n.a && st(t, n.a = a), n;
@@ -46535,10 +46670,10 @@ function F2(e) {
46535
46670
  return e.onClose;
46536
46671
  },
46537
46672
  get children() {
46538
- var t = E2();
46673
+ var t = N2();
46539
46674
  return t.$$click = () => e.onClose?.(), t;
46540
46675
  }
46541
- }), null), P(s, j(CM, { onCreated: () => n("activity") })), P(c, j(vQ, {})), P(l, j(l1, {})), P(u, j(M1, {})), P(d, j(E1, {})), P(f, j(_0, {})), P(p, j(M0, { onOpenIssue: () => n("activity") })), P(m, j(_2, {})), D((n) => {
46676
+ }), null), P(s, j(CM, { onCreated: () => n("activity") })), P(c, j(vQ, {})), P(l, j(u1, {})), P(u, j(N1, {})), P(d, j(D1, {})), P(f, j(v0, {})), P(p, j(N0, { onOpenIssue: () => n("activity") })), P(m, j(w2, {})), D((n) => {
46542
46677
  var r = `border-border bg-surface flex shrink-0 items-center gap-1 border-b px-2 py-1.5 select-none ${e.onHeaderPointerDown ? "cursor-grab active:cursor-grabbing" : ""}`, a = t() !== "draft", o = t() !== "capture", h = t() !== "activity", g = t() !== "running", _ = t() !== "cloud", v = t() !== "local", y = t() !== "prs", b = t() !== "settings";
46543
46678
  return r !== n.e && st(i, n.e = r), a !== n.t && s.classList.toggle("hidden", n.t = a), o !== n.a && c.classList.toggle("hidden", n.a = o), h !== n.o && l.classList.toggle("hidden", n.o = h), g !== n.i && u.classList.toggle("hidden", n.i = g), _ !== n.n && d.classList.toggle("hidden", n.n = _), v !== n.s && f.classList.toggle("hidden", n.s = v), y !== n.h && p.classList.toggle("hidden", n.h = y), b !== n.r && m.classList.toggle("hidden", n.r = b), n;
46544
46679
  }, {
@@ -46558,12 +46693,12 @@ function F2(e) {
46558
46693
  rt(["pointerdown", "click"]);
46559
46694
  //#endregion
46560
46695
  //#region src/styles/app.css?inline
46561
- var I2 = "/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial}}}@layer theme{:root,:host{--font-sans:\"Inter\", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif;--font-mono:ui-monospace, \"SF Mono\", Menlo, monospace;--color-red-500:oklch(63.7% .237 25.331);--color-white:#fff;--spacing:.25rem;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#0b0c0e;--color-surface:#141517;--color-surface-2:#1c1d21;--color-surface-3:#24262b;--color-border:#26282d;--color-border-strong:#34363d;--color-text:#e8e9eb;--color-text-dim:#8b8e98;--color-text-faint:#5c5f6a;--color-accent:#5e6ad2;--color-accent-hover:#6e79e0;--color-accent-soft:#5e6ad226;--color-success:#4cb782;--color-warn:#f2c94c;--color-danger:#eb5757;--color-danger-soft:#eb575726}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.visible\\!{visibility:visible!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-\\[2px\\]{top:2px}.top-full{top:100%}.right-0{right:0}.right-0\\.5{right:calc(var(--spacing) * .5)}.right-4{right:calc(var(--spacing) * 4)}.right-full{right:100%}.bottom-0{bottom:0}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\\[2px\\]{bottom:2px}.bottom-full{bottom:100%}.left-0{left:0}.left-1{left:var(--spacing)}.left-1\\/2{left:50%}.left-full{left:100%}.z-1{z-index:1}.z-10{z-index:10}.z-\\[2147483645\\]{z-index:2147483645}.z-\\[2147483646\\]{z-index:2147483646}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\\!{width:100%!important}@media (width>=40rem){.container\\!{max-width:40rem!important}}@media (width>=48rem){.container\\!{max-width:48rem!important}}@media (width>=64rem){.container\\!{max-width:64rem!important}}@media (width>=80rem){.container\\!{max-width:80rem!important}}@media (width>=96rem){.container\\!{max-width:96rem!important}}.-m-0{margin:0}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.-m-4{margin:calc(var(--spacing) * -4)}.m-0{margin:0}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1{margin-block:calc(var(--spacing) * -1)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-px{margin-top:1px}.mr-0{margin-right:0}.mr-0\\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\\.5{margin-right:calc(var(--spacing) * 2.5)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-2\\.5{margin-left:calc(var(--spacing) * 2.5)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ml-px{margin-left:1px}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-0{width:0;height:0}.size-1{width:var(--spacing);height:var(--spacing)}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\\[12px\\]{width:12px;height:12px}.size-\\[16px\\]{width:16px;height:16px}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-16{height:calc(var(--spacing) * 16)}.h-\\[8px\\]{height:8px}.h-\\[17px\\]{height:17px}.h-\\[18px\\]{height:18px}.h-\\[20px\\]{height:20px}.h-\\[24px\\]{height:24px}.h-fit{height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-44{max-height:calc(var(--spacing) * 44)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\\[var\\(--rg-edit-list-max-h\\)\\]{max-height:var(--rg-edit-list-max-h)}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-\\[2lh\\]{min-height:2lh}.min-h-\\[28px\\]{min-height:28px}.w-1{width:var(--spacing)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-16{width:calc(var(--spacing) * 16)}.w-28{width:calc(var(--spacing) * 28)}.w-72{width:calc(var(--spacing) * 72)}.w-\\[2px\\]{width:2px}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\\[55\\%\\]{max-width:55%}.max-w-\\[100vw\\]{max-width:100vw}.max-w-\\[110px\\]{max-width:110px}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\\[5px\\]{gap:5px}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-accent{border-color:var(--color-accent)}.border-accent\\/40{border-color:#5e6ad266}@supports (color:color-mix(in lab, red, red)){.border-accent\\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-border{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-success\\/40{border-color:#4cb78266}@supports (color:color-mix(in lab, red, red)){.border-success\\/40{border-color:color-mix(in oklab, var(--color-success) 40%, transparent)}}.border-text-dim{border-color:var(--color-text-dim)}.border-transparent{border-color:#0000}.border-warn{border-color:var(--color-warn)}.border-warn\\/40{border-color:#f2c94c66}@supports (color:color-mix(in lab, red, red)){.border-warn\\/40{border-color:color-mix(in oklab, var(--color-warn) 40%, transparent)}}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.border-t-transparent{border-top-color:#0000}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-bg\\/80{background-color:#0b0c0ecc}@supports (color:color-mix(in lab, red, red)){.bg-bg\\/80{background-color:color-mix(in oklab, var(--color-bg) 80%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--color-danger)}.bg-danger-soft{background-color:var(--color-danger-soft)}.bg-red-500{background-color:var(--color-red-500)}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-text-faint{background-color:var(--color-text-faint)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--color-warn)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-px{padding-block:1px}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[15px\\]{font-size:15px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-faint{color:var(--color-text-faint)}.text-warn{color:var(--color-warn)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.group-open\\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-text-faint::placeholder{color:var(--color-text-faint)}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\\:bg-accent\\/50:hover{background-color:#5e6ad280}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-accent\\/50:hover{background-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\\:bg-danger\\/30:hover{background-color:#eb57574d}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-danger\\/30:hover{background-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.hover\\:bg-surface-2:hover{background-color:var(--color-surface-2)}.hover\\:bg-surface-3:hover{background-color:var(--color-surface-3)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}.hover\\:text-accent:hover{color:var(--color-accent)}.hover\\:text-danger:hover{color:var(--color-danger)}.hover\\:text-text:hover{color:var(--color-text)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-80:hover{opacity:.8}}.focus\\:border-accent:focus{border-color:var(--color-accent)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-accent:active{background-color:var(--color-accent)}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-surface-3:disabled{background-color:var(--color-surface-3)}.disabled\\:text-text-faint:disabled{color:var(--color-text-faint)}.disabled\\:opacity-40:disabled{opacity:.4}@media (hover:hover){.disabled\\:hover\\:bg-surface-2:disabled:hover{background-color:var(--color-surface-2)}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light],:host([data-theme=light]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}body{background-color:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;margin:0;font-size:13px}@keyframes geist-spinner-fade{0%{opacity:1}to{opacity:.15}}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;z-index:60;background:#1b1c20;border-radius:6px;max-width:260px;padding:3px 8px;font-size:10.5px;font-weight:500;line-height:1.35;position:absolute;bottom:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}[data-tip][data-tip-pos~=right]:hover:after{left:0;transform:none}[data-tip][data-tip-pos~=left]:hover:after{left:auto;right:0;transform:none}[data-tip][data-tip-pos~=bottom]:hover:after{top:calc(100% + 6px);bottom:auto}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.lg-md p{margin:0 0 6px}.lg-md p:last-child{margin-bottom:0}.lg-md a{color:var(--color-accent);word-break:break-all;text-decoration:none}.lg-md a:hover{text-decoration:underline}.lg-md code{background:var(--color-surface-2);border:1px solid var(--color-border);font-family:var(--font-mono);border-radius:4px;padding:0 4px;font-size:11px}.lg-md pre{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;margin:6px 0;padding:8px;overflow-x:auto}.lg-md pre code{white-space:pre;background:0 0;border:none;padding:0;font-size:11px}.lg-md ul,.lg-md ol{flex-direction:column;gap:2px;margin:4px 0 6px;padding-left:18px;display:flex}.lg-md ul{list-style:outside}.lg-md ol{list-style:decimal}.lg-md h4{margin:8px 0 4px;font-size:12px;font-weight:600}.lg-md lg-media{display:block}.lg-md lg-media img,.lg-md lg-media video{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md video{border:1px solid var(--color-border);background:#000;border-radius:6px;max-width:100%;margin:4px 0}.lg-md img{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md strong{font-weight:600}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-track{background:0 0}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-ordinal{syntax:\"*\";inherits:false}@property --tw-slashed-zero{syntax:\"*\";inherits:false}@property --tw-numeric-figure{syntax:\"*\";inherits:false}@property --tw-numeric-spacing{syntax:\"*\";inherits:false}@property --tw-numeric-fraction{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@property --tw-contain-size{syntax:\"*\";inherits:false}@property --tw-contain-layout{syntax:\"*\";inherits:false}@property --tw-contain-paint{syntax:\"*\";inherits:false}@property --tw-contain-style{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
46696
+ var U2 = "/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial}}}@layer theme{:root,:host{--font-sans:\"Inter\", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif;--font-mono:ui-monospace, \"SF Mono\", Menlo, monospace;--color-red-500:oklch(63.7% .237 25.331);--color-white:#fff;--spacing:.25rem;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#0b0c0e;--color-surface:#141517;--color-surface-2:#1c1d21;--color-surface-3:#24262b;--color-border:#26282d;--color-border-strong:#34363d;--color-text:#e8e9eb;--color-text-dim:#8b8e98;--color-text-faint:#5c5f6a;--color-accent:#5e6ad2;--color-accent-hover:#6e79e0;--color-accent-soft:#5e6ad226;--color-success:#4cb782;--color-warn:#f2c94c;--color-danger:#eb5757;--color-danger-soft:#eb575726}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.visible\\!{visibility:visible!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-\\[2px\\]{top:2px}.top-full{top:100%}.right-0{right:0}.right-0\\.5{right:calc(var(--spacing) * .5)}.right-4{right:calc(var(--spacing) * 4)}.right-full{right:100%}.bottom-0{bottom:0}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\\[2px\\]{bottom:2px}.bottom-full{bottom:100%}.left-0{left:0}.left-1{left:var(--spacing)}.left-1\\/2{left:50%}.left-full{left:100%}.z-1{z-index:1}.z-10{z-index:10}.z-\\[2147483645\\]{z-index:2147483645}.z-\\[2147483646\\]{z-index:2147483646}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\\!{width:100%!important}@media (width>=40rem){.container\\!{max-width:40rem!important}}@media (width>=48rem){.container\\!{max-width:48rem!important}}@media (width>=64rem){.container\\!{max-width:64rem!important}}@media (width>=80rem){.container\\!{max-width:80rem!important}}@media (width>=96rem){.container\\!{max-width:96rem!important}}.-m-0{margin:0}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.-m-4{margin:calc(var(--spacing) * -4)}.m-0{margin:0}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1{margin-block:calc(var(--spacing) * -1)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-px{margin-top:1px}.mr-0{margin-right:0}.mr-0\\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\\.5{margin-right:calc(var(--spacing) * 2.5)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-2\\.5{margin-left:calc(var(--spacing) * 2.5)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ml-px{margin-left:1px}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-0{width:0;height:0}.size-1{width:var(--spacing);height:var(--spacing)}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\\[12px\\]{width:12px;height:12px}.size-\\[16px\\]{width:16px;height:16px}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-16{height:calc(var(--spacing) * 16)}.h-\\[8px\\]{height:8px}.h-\\[17px\\]{height:17px}.h-\\[18px\\]{height:18px}.h-\\[20px\\]{height:20px}.h-\\[24px\\]{height:24px}.h-fit{height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-44{max-height:calc(var(--spacing) * 44)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\\[var\\(--rg-edit-list-max-h\\)\\]{max-height:var(--rg-edit-list-max-h)}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-\\[2lh\\]{min-height:2lh}.min-h-\\[28px\\]{min-height:28px}.w-1{width:var(--spacing)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-16{width:calc(var(--spacing) * 16)}.w-28{width:calc(var(--spacing) * 28)}.w-72{width:calc(var(--spacing) * 72)}.w-\\[2px\\]{width:2px}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\\[55\\%\\]{max-width:55%}.max-w-\\[100vw\\]{max-width:100vw}.max-w-\\[110px\\]{max-width:110px}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[10ch\\]{min-width:10ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\\[5px\\]{gap:5px}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-accent{border-color:var(--color-accent)}.border-accent\\/40{border-color:#5e6ad266}@supports (color:color-mix(in lab, red, red)){.border-accent\\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-border{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-success\\/40{border-color:#4cb78266}@supports (color:color-mix(in lab, red, red)){.border-success\\/40{border-color:color-mix(in oklab, var(--color-success) 40%, transparent)}}.border-text-dim{border-color:var(--color-text-dim)}.border-transparent{border-color:#0000}.border-warn{border-color:var(--color-warn)}.border-warn\\/40{border-color:#f2c94c66}@supports (color:color-mix(in lab, red, red)){.border-warn\\/40{border-color:color-mix(in oklab, var(--color-warn) 40%, transparent)}}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.border-t-transparent{border-top-color:#0000}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-bg\\/80{background-color:#0b0c0ecc}@supports (color:color-mix(in lab, red, red)){.bg-bg\\/80{background-color:color-mix(in oklab, var(--color-bg) 80%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--color-danger)}.bg-danger-soft{background-color:var(--color-danger-soft)}.bg-red-500{background-color:var(--color-red-500)}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-text-faint{background-color:var(--color-text-faint)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--color-warn)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-px{padding-block:1px}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[15px\\]{font-size:15px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-faint{color:var(--color-text-faint)}.text-warn{color:var(--color-warn)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.group-open\\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-text-faint::placeholder{color:var(--color-text-faint)}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\\:bg-accent\\/50:hover{background-color:#5e6ad280}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-accent\\/50:hover{background-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\\:bg-danger\\/30:hover{background-color:#eb57574d}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-danger\\/30:hover{background-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.hover\\:bg-surface-2:hover{background-color:var(--color-surface-2)}.hover\\:bg-surface-3:hover{background-color:var(--color-surface-3)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}.hover\\:text-accent:hover{color:var(--color-accent)}.hover\\:text-danger:hover{color:var(--color-danger)}.hover\\:text-text:hover{color:var(--color-text)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-80:hover{opacity:.8}}.focus\\:border-accent:focus{border-color:var(--color-accent)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-accent:active{background-color:var(--color-accent)}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-surface-3:disabled{background-color:var(--color-surface-3)}.disabled\\:text-text-faint:disabled{color:var(--color-text-faint)}.disabled\\:opacity-40:disabled{opacity:.4}@media (hover:hover){.disabled\\:hover\\:bg-surface-2:disabled:hover{background-color:var(--color-surface-2)}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light],:host([data-theme=light]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}body{background-color:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;margin:0;font-size:13px}@keyframes geist-spinner-fade{0%{opacity:1}to{opacity:.15}}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;z-index:60;background:#1b1c20;border-radius:6px;max-width:260px;padding:3px 8px;font-size:10.5px;font-weight:500;line-height:1.35;position:absolute;bottom:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}[data-tip][data-tip-pos~=right]:hover:after{left:0;transform:none}[data-tip][data-tip-pos~=left]:hover:after{left:auto;right:0;transform:none}[data-tip][data-tip-pos~=bottom]:hover:after{top:calc(100% + 6px);bottom:auto}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.lg-md p{margin:0 0 6px}.lg-md p:last-child{margin-bottom:0}.lg-md a{color:var(--color-accent);word-break:break-all;text-decoration:none}.lg-md a:hover{text-decoration:underline}.lg-md code{background:var(--color-surface-2);border:1px solid var(--color-border);font-family:var(--font-mono);border-radius:4px;padding:0 4px;font-size:11px}.lg-md pre{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;margin:6px 0;padding:8px;overflow-x:auto}.lg-md pre code{white-space:pre;background:0 0;border:none;padding:0;font-size:11px}.lg-md ul,.lg-md ol{flex-direction:column;gap:2px;margin:4px 0 6px;padding-left:18px;display:flex}.lg-md ul{list-style:outside}.lg-md ol{list-style:decimal}.lg-md h4{margin:8px 0 4px;font-size:12px;font-weight:600}.lg-md lg-media{display:block}.lg-md lg-media img,.lg-md lg-media video{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md video{border:1px solid var(--color-border);background:#000;border-radius:6px;max-width:100%;margin:4px 0}.lg-md img{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md strong{font-weight:600}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-track{background:0 0}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-ordinal{syntax:\"*\";inherits:false}@property --tw-slashed-zero{syntax:\"*\";inherits:false}@property --tw-numeric-figure{syntax:\"*\";inherits:false}@property --tw-numeric-spacing{syntax:\"*\";inherits:false}@property --tw-numeric-fraction{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@property --tw-contain-size{syntax:\"*\";inherits:false}@property --tw-contain-layout{syntax:\"*\";inherits:false}@property --tw-contain-paint{syntax:\"*\";inherits:false}@property --tw-contain-style{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
46562
46697
  //#endregion
46563
46698
  //#region src/page/index.tsx
46564
46699
  Br();
46565
- var L2 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), R2 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), z2 = /*#__PURE__*/ N("<button class=\"bg-accent hover:bg-accent-hover h-7 cursor-pointer rounded-full px-2.5 text-[11px] font-medium text-white transition-colors\"><span class=\"inline-block min-w-[4ch] text-center\">Stop"), B2 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), V2 = /*#__PURE__*/ N("<div><p class=\"text-text-dim px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Running agents"), H2 = /*#__PURE__*/ N("<div class=\"fixed z-[2147483646] select-none\"><div class=\"bg-surface border-border text-text flex h-9 cursor-grab items-center gap-1 rounded-full border py-1 pr-1 pl-2.5 font-sans shadow-lg active:cursor-grabbing\">"), U2 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), W2 = /*#__PURE__*/ N("<button title=\"Open Linear Grab\"aria-label=\"Open Linear Grab\"class=\"text-accent hover:opacity-80 inline-flex cursor-pointer items-center gap-1.5\">"), G2 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), K2 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), q2 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), J2 = /*#__PURE__*/ N("<button title=\"Running agents\"aria-label=\"Running agents\"class=\"hover:bg-surface-2 flex h-7 cursor-pointer items-center gap-1.5 rounded-full px-2 transition-colors\"><span aria-hidden></span><span>"), Y2 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), X2 = /*#__PURE__*/ N("<button class=\"hover:bg-surface-2 flex w-full cursor-pointer flex-col gap-0.5 rounded-md px-1.5 py-1.5 text-left transition-colors\"><span class=\"flex min-w-0 items-center gap-1.5\"><span aria-hidden class=\"size-1.5 shrink-0 rounded-full\"></span><span class=\"font-mono text-text-dim shrink-0 text-[10.5px]\"></span><span class=\"text-text truncate text-[11.5px]\"></span></span><span class=\"text-text-faint pl-3 text-[10.5px] tabular-nums\"> · <!> · ");
46566
- function Z2(e = {}) {
46700
+ var W2 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), G2 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), K2 = /*#__PURE__*/ N("<button class=\"bg-accent hover:bg-accent-hover h-7 cursor-pointer rounded-full px-2.5 text-[11px] font-medium text-white transition-colors\"><span class=\"inline-block min-w-[4ch] text-center\">Stop"), q2 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), J2 = /*#__PURE__*/ N("<div><p class=\"text-text-dim px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Running agents"), Y2 = /*#__PURE__*/ N("<div class=\"fixed z-[2147483646] select-none\"><div class=\"bg-surface border-border text-text flex h-9 cursor-grab items-center gap-1 rounded-full border py-1 pr-1 pl-2.5 font-sans shadow-lg active:cursor-grabbing\">"), X2 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), Z2 = /*#__PURE__*/ N("<button title=\"Open Linear Grab\"aria-label=\"Open Linear Grab\"class=\"text-accent hover:opacity-80 inline-flex cursor-pointer items-center gap-1.5\">"), Q2 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), $2 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), e4 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), t4 = /*#__PURE__*/ N("<button title=\"Running agents\"aria-label=\"Running agents\"class=\"hover:bg-surface-2 flex h-7 cursor-pointer items-center gap-1.5 rounded-full px-2 transition-colors\"><span aria-hidden></span><span>"), n4 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), r4 = /*#__PURE__*/ N("<button class=\"hover:bg-surface-2 flex w-full cursor-pointer flex-col gap-0.5 rounded-md px-1.5 py-1.5 text-left transition-colors\"><span class=\"flex min-w-0 items-center gap-1.5\"><span aria-hidden class=\"size-1.5 shrink-0 rounded-full\"></span><span class=\"font-mono text-text-dim shrink-0 text-[10.5px]\"></span><span class=\"text-text truncate text-[11.5px]\"></span></span><span class=\"text-text-faint pl-3 text-[10.5px] tabular-nums\"> · <!> · ");
46701
+ function i4(e = {}) {
46567
46702
  if (typeof window > "u" || window.__LINEAR_GRAB_PAGE__) return;
46568
46703
  window.__LINEAR_GRAB_PAGE__ = !0;
46569
46704
  let t = () => {
@@ -46595,17 +46730,17 @@ function Z2(e = {}) {
46595
46730
  "keypress"
46596
46731
  ]) window.addEventListener(e, n, { capture: !0 });
46597
46732
  let r = t.attachShadow({ mode: "open" }), i = document.createElement("style");
46598
- i.textContent = I2, r.appendChild(i);
46733
+ i.textContent = U2, r.appendChild(i);
46599
46734
  let a = document.createElement("div");
46600
46735
  r.appendChild(a);
46601
- let o = () => a.setAttribute("data-theme", Q2());
46602
- o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(i4, { get defaultOpen() {
46736
+ let o = () => a.setAttribute("data-theme", a4());
46737
+ o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(d4, { get defaultOpen() {
46603
46738
  return e.defaultOpen ?? !1;
46604
46739
  } }), a);
46605
46740
  };
46606
46741
  document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
46607
46742
  }
46608
- function Q2() {
46743
+ function a4() {
46609
46744
  try {
46610
46745
  let e = [document.body, document.documentElement];
46611
46746
  for (let t of e) {
@@ -46615,11 +46750,11 @@ function Q2() {
46615
46750
  } catch {}
46616
46751
  return matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
46617
46752
  }
46618
- var $2 = 130, e4 = 36, t4 = 380, n4 = 280, r4 = 720;
46619
- function i4(e) {
46753
+ var o4 = 130, s4 = 36, c4 = 380, l4 = 280, u4 = 720;
46754
+ function d4(e) {
46620
46755
  let [t, n] = T(e.defaultOpen), [r, i] = T("right"), [a, o] = T({
46621
- x: Math.max(8, window.innerWidth - $2 - 24),
46622
- y: Math.max(8, window.innerHeight - e4 - 20)
46756
+ x: Math.max(8, window.innerWidth - o4 - 24),
46757
+ y: Math.max(8, window.innerHeight - s4 - 20)
46623
46758
  }), [s, c] = T({
46624
46759
  running: [],
46625
46760
  review: []
@@ -46634,12 +46769,12 @@ function i4(e) {
46634
46769
  let t = Math.floor(e / 1e3);
46635
46770
  return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
46636
46771
  }, [v, y] = T(null), b = (e) => ({
46637
- x: Math.min(Math.max(8, e.x), window.innerWidth - $2 - 8),
46638
- y: Math.min(Math.max(8, e.y), window.innerHeight - e4 - 8)
46772
+ x: Math.min(Math.max(8, e.x), window.innerWidth - o4 - 8),
46773
+ y: Math.min(Math.max(8, e.y), window.innerHeight - s4 - 8)
46639
46774
  }), x = (e) => ({
46640
46775
  x: Math.min(Math.max(8 - (te() - 80), e.x), window.innerWidth - 80),
46641
46776
  y: Math.min(Math.max(0, e.y), window.innerHeight - 80)
46642
- }), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(t4), ne = (e) => Math.min(r4, Math.max(n4, Math.min(e, window.innerWidth - 60)));
46777
+ }), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(c4), ne = (e) => Math.min(u4, Math.max(l4, Math.min(e, window.innerWidth - 60)));
46643
46778
  O(() => {
46644
46779
  let e = document.documentElement, n = t() && S();
46645
46780
  e.style.transition = "margin 0.2s ease", e.style.marginRight = n && r() === "right" ? `${te()}px` : "", e.style.marginLeft = n && r() === "left" ? `${te()}px` : "";
@@ -46747,7 +46882,7 @@ function i4(e) {
46747
46882
  return !t();
46748
46883
  },
46749
46884
  get children() {
46750
- var e = H2(), t = e.firstChild;
46885
+ var e = Y2(), t = e.firstChild;
46751
46886
  return t.$$pointerdown = se, P(t, j(M, {
46752
46887
  get when() {
46753
46888
  return p() === "recording";
@@ -46755,14 +46890,14 @@ function i4(e) {
46755
46890
  get fallback() {
46756
46891
  return [
46757
46892
  (() => {
46758
- var e = W2();
46893
+ var e = Z2();
46759
46894
  return e.$$click = () => {
46760
46895
  oe || (f(!1), n(!0));
46761
- }, P(e, j(P2, { size: 13 })), e;
46896
+ }, P(e, j(V2, { size: 13 })), e;
46762
46897
  })(),
46763
- G2(),
46898
+ Q2(),
46764
46899
  (() => {
46765
- var e = J2(), t = e.firstChild, n = t.nextSibling;
46900
+ var e = t4(), t = e.firstChild, n = t.nextSibling;
46766
46901
  return e.$$click = () => {
46767
46902
  oe || f((e) => !e);
46768
46903
  }, P(n, (() => {
@@ -46773,8 +46908,8 @@ function i4(e) {
46773
46908
  return $e(() => !k())() && u().length > 0;
46774
46909
  },
46775
46910
  get children() {
46776
- return [K2(), (() => {
46777
- var e = q2(), t = e.firstChild;
46911
+ return [$2(), (() => {
46912
+ var e = e4(), t = e.firstChild;
46778
46913
  return P(e, () => u().length, t), e;
46779
46914
  })()];
46780
46915
  }
@@ -46790,13 +46925,13 @@ function i4(e) {
46790
46925
  },
46791
46926
  get children() {
46792
46927
  return [
46793
- L2(),
46928
+ W2(),
46794
46929
  (() => {
46795
- var e = R2();
46930
+ var e = G2();
46796
46931
  return P(e, () => _(h())), e;
46797
46932
  })(),
46798
46933
  (() => {
46799
- var e = z2();
46934
+ var e = K2();
46800
46935
  return e.$$click = () => {
46801
46936
  oe || eO();
46802
46937
  }, e;
@@ -46808,17 +46943,17 @@ function i4(e) {
46808
46943
  return d();
46809
46944
  },
46810
46945
  get children() {
46811
- var e = V2(), t = e.firstChild;
46946
+ var e = J2(), t = e.firstChild;
46812
46947
  return P(e, j(M, {
46813
46948
  get when() {
46814
46949
  return u().length > 0;
46815
46950
  },
46816
46951
  get children() {
46817
- return [B2(), j(We, {
46952
+ return [q2(), j(We, {
46818
46953
  get each() {
46819
46954
  return u();
46820
46955
  },
46821
- children: (e) => j(a4, {
46956
+ children: (e) => j(f4, {
46822
46957
  agent: e,
46823
46958
  review: !0,
46824
46959
  onOpen: le
@@ -46830,14 +46965,14 @@ function i4(e) {
46830
46965
  return l().length > 0;
46831
46966
  },
46832
46967
  get fallback() {
46833
- return Y2();
46968
+ return n4();
46834
46969
  },
46835
46970
  get children() {
46836
46971
  return j(We, {
46837
46972
  get each() {
46838
46973
  return l();
46839
46974
  },
46840
- children: (e) => j(a4, {
46975
+ children: (e) => j(f4, {
46841
46976
  agent: e,
46842
46977
  onOpen: le
46843
46978
  })
@@ -46858,8 +46993,8 @@ function i4(e) {
46858
46993
  return t();
46859
46994
  },
46860
46995
  get children() {
46861
- var e = U2(), t = e.firstChild;
46862
- return t.$$pointerdown = ue, P(e, j(F2, {
46996
+ var e = X2(), t = e.firstChild;
46997
+ return t.$$pointerdown = ue, P(e, j(H2, {
46863
46998
  onGrab: () => n(!0),
46864
46999
  onClose: () => n(!1),
46865
47000
  get onHeaderPointerDown() {
@@ -46887,19 +47022,19 @@ function i4(e) {
46887
47022
  }
46888
47023
  })];
46889
47024
  }
46890
- function a4(e) {
47025
+ function f4(e) {
46891
47026
  return (() => {
46892
- var t = X2(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
47027
+ var t = r4(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
46893
47028
  return c.nextSibling, t.$$click = () => e.onOpen(e.agent.id), P(i, () => e.agent.identifier), P(a, () => e.agent.title), P(o, (() => {
46894
47029
  var t = $e(() => !!e.review);
46895
47030
  return () => t() ? "PR ready · needs review" : e.agent.stateName;
46896
- })(), s), P(o, () => e.agent.delegateName, c), P(o, () => o4(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
47031
+ })(), s), P(o, () => e.agent.delegateName, c), P(o, () => p4(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
46897
47032
  })();
46898
47033
  }
46899
- function o4(e) {
47034
+ function p4(e) {
46900
47035
  let t = Math.max(0, Math.floor((Date.now() - Date.parse(e)) / 1e3));
46901
47036
  return t < 60 ? "now" : t < 3600 ? `${Math.floor(t / 60)}m` : t < 86400 ? `${Math.floor(t / 3600)}h` : `${Math.floor(t / 86400)}d`;
46902
47037
  }
46903
47038
  rt(["pointerdown", "click"]);
46904
47039
  //#endregion
46905
- export { Z2 as init };
47040
+ export { i4 as init };