linear-grab 0.21.0 → 0.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.global.js +10 -10
- package/dist/linear-grab.js +462 -444
- package/package.json +1 -1
package/dist/linear-grab.js
CHANGED
|
@@ -41719,19 +41719,19 @@ var HJ, UJ, WJ, GJ, KJ, qJ, JJ, YJ, XJ, ZJ, QJ, $J, eY, tY, nY, rY, iY, aY, oY,
|
|
|
41719
41719
|
}, typeof window < "u" && !window.__REACT_GRAB_DISABLED__ && (window.__REACT_GRAB__ ? jZ = window.__REACT_GRAB__ : (jZ = OZ(), window.__REACT_GRAB__ = jZ), FZ(jZ), window.dispatchEvent(new CustomEvent("react-grab:init", { detail: jZ })));
|
|
41720
41720
|
}));
|
|
41721
41721
|
Sr(), Br(), gD();
|
|
41722
|
-
var zZ = "linear-grab:context-copied", BZ = "linear-grab:picker-activated", VZ =
|
|
41723
|
-
function
|
|
41724
|
-
!e || e.grabbedAt ===
|
|
41725
|
-
if (t.workflowMode !== "local" || e.grabbedAt ===
|
|
41722
|
+
var zZ = "linear-grab:context-copied", BZ = "linear-grab:picker-activated", VZ = "linear-grab:picker-finished", HZ = 0, UZ = null;
|
|
41723
|
+
function WZ(e) {
|
|
41724
|
+
!e || e.grabbedAt === HZ || Tr().then((t) => {
|
|
41725
|
+
if (t.workflowMode !== "local" || e.grabbedAt === HZ) return;
|
|
41726
41726
|
let n = () => {
|
|
41727
|
-
|
|
41728
|
-
|
|
41727
|
+
HZ = e.grabbedAt, navigator.clipboard.writeText(fD(e, t)).then(() => window.dispatchEvent(new CustomEvent(zZ))).catch(() => {
|
|
41728
|
+
HZ = 0;
|
|
41729
41729
|
});
|
|
41730
41730
|
};
|
|
41731
|
-
e.source?.filePath ? (
|
|
41731
|
+
e.source?.filePath ? (UZ && clearTimeout(UZ), UZ = null, n()) : (UZ && clearTimeout(UZ), UZ = setTimeout(n, 900));
|
|
41732
41732
|
});
|
|
41733
41733
|
}
|
|
41734
|
-
function
|
|
41734
|
+
function GZ(e, t = Date.now()) {
|
|
41735
41735
|
return {
|
|
41736
41736
|
tagName: e.tagName || void 0,
|
|
41737
41737
|
componentName: e.componentName || void 0,
|
|
@@ -41747,7 +41747,7 @@ function WZ(e, t = Date.now()) {
|
|
|
41747
41747
|
grabbedAt: t
|
|
41748
41748
|
};
|
|
41749
41749
|
}
|
|
41750
|
-
function
|
|
41750
|
+
function KZ(e, t) {
|
|
41751
41751
|
let n = null, r = 0;
|
|
41752
41752
|
return {
|
|
41753
41753
|
plugin: {
|
|
@@ -41780,7 +41780,7 @@ function GZ(e, t) {
|
|
|
41780
41780
|
} }
|
|
41781
41781
|
},
|
|
41782
41782
|
handleSelection(t) {
|
|
41783
|
-
let i = r && Date.now() - r < 4e3 ? r : Date.now(), a = t.map((e, t) =>
|
|
41783
|
+
let i = r && Date.now() - r < 4e3 ? r : Date.now(), a = t.map((e, t) => GZ(e, i + t));
|
|
41784
41784
|
if (!a.length) return;
|
|
41785
41785
|
e(a);
|
|
41786
41786
|
let o = n;
|
|
@@ -41793,35 +41793,51 @@ function GZ(e, t) {
|
|
|
41793
41793
|
}
|
|
41794
41794
|
};
|
|
41795
41795
|
}
|
|
41796
|
-
var
|
|
41797
|
-
async function
|
|
41798
|
-
if (xr ||
|
|
41799
|
-
|
|
41796
|
+
var qZ = !1;
|
|
41797
|
+
async function JZ() {
|
|
41798
|
+
if (xr || qZ) return;
|
|
41799
|
+
qZ = !0;
|
|
41800
41800
|
let e = await Promise.resolve().then(() => (RZ(), AZ));
|
|
41801
41801
|
try {
|
|
41802
41802
|
e.init();
|
|
41803
41803
|
} catch {
|
|
41804
|
-
|
|
41804
|
+
qZ = !1;
|
|
41805
41805
|
return;
|
|
41806
41806
|
}
|
|
41807
|
-
let t =
|
|
41808
|
-
kr(e),
|
|
41807
|
+
let t = KZ((e) => {
|
|
41808
|
+
kr(e), WZ(e[0]);
|
|
41809
41809
|
}, () => e.getGlobalApi());
|
|
41810
41810
|
e.registerPlugin(t.plugin), GA(), window.addEventListener("react-grab:element-selected", (e) => {
|
|
41811
41811
|
t.handleSelection(e.detail.elements ?? []);
|
|
41812
41812
|
});
|
|
41813
41813
|
}
|
|
41814
|
-
async function
|
|
41814
|
+
async function YZ() {
|
|
41815
41815
|
if (xr) {
|
|
41816
41816
|
let e = await chrome.runtime.sendMessage({ type: "grab/activate" });
|
|
41817
41817
|
if (e && e.ok === !1) throw Error(e.error ?? "Cannot activate the picker on this page.");
|
|
41818
41818
|
return;
|
|
41819
41819
|
}
|
|
41820
|
-
await
|
|
41820
|
+
await JZ();
|
|
41821
41821
|
let e = await Promise.resolve().then(() => (RZ(), AZ));
|
|
41822
|
-
window.dispatchEvent(new CustomEvent(BZ))
|
|
41822
|
+
window.dispatchEvent(new CustomEvent(BZ));
|
|
41823
|
+
let t = e.getGlobalApi();
|
|
41824
|
+
if (t?.activate?.(), typeof t?.isActive == "function") {
|
|
41825
|
+
let e = !1, n = 0, r = setInterval(() => {
|
|
41826
|
+
n += 1;
|
|
41827
|
+
let i = !1;
|
|
41828
|
+
try {
|
|
41829
|
+
i = t.isActive();
|
|
41830
|
+
} catch {}
|
|
41831
|
+
if (i) {
|
|
41832
|
+
e = !0;
|
|
41833
|
+
return;
|
|
41834
|
+
}
|
|
41835
|
+
(e || n >= 8) && (clearInterval(r), window.dispatchEvent(new CustomEvent(VZ)));
|
|
41836
|
+
}, 250);
|
|
41837
|
+
setTimeout(() => clearInterval(r), 3e5);
|
|
41838
|
+
}
|
|
41823
41839
|
}
|
|
41824
|
-
function
|
|
41840
|
+
function XZ(e) {
|
|
41825
41841
|
if (!xr) return () => {};
|
|
41826
41842
|
let t = (t) => {
|
|
41827
41843
|
t?.type === "grab/updated" && e();
|
|
@@ -41830,7 +41846,7 @@ function YZ(e) {
|
|
|
41830
41846
|
}
|
|
41831
41847
|
//#endregion
|
|
41832
41848
|
//#region src/lib/regionCapture.ts
|
|
41833
|
-
function
|
|
41849
|
+
function ZZ() {
|
|
41834
41850
|
return new Promise((e) => {
|
|
41835
41851
|
let t = document.createElement("div");
|
|
41836
41852
|
t.style.cssText = "position:fixed;inset:0;z-index:2147483647;cursor:crosshair;user-select:none;";
|
|
@@ -41876,10 +41892,10 @@ function XZ() {
|
|
|
41876
41892
|
});
|
|
41877
41893
|
}
|
|
41878
41894
|
Br(), Sr(), gD();
|
|
41879
|
-
var
|
|
41880
|
-
function
|
|
41895
|
+
var QZ = /*#__PURE__*/ N("<span class=\"text-text-faint ml-auto text-[10.5px] font-normal normal-case tabular-nums\">"), $Z = /*#__PURE__*/ N("<details open class=group><summary class=\"text-text-dim hover:text-text flex cursor-pointer items-center gap-1.5 text-[11px] font-semibold tracking-wide uppercase select-none\"><span aria-hidden class=\"text-text-faint inline-block w-3 text-center transition-transform group-open:rotate-90\">›</span></summary><div class=\"flex flex-col gap-2 pt-2 pl-4\">"), eQ = /*#__PURE__*/ N("<p class=\"text-warn text-[10.5px] leading-snug\">Several captures resolve to the same source — this page region likely renders inside an iframe/canvas the picker can't see into. Use <b>Capture region</b> for visual pointers there."), tQ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[8ch] text-center\">"), nQ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex flex-col gap-1.5\"><span class=\"text-text-faint text-[10.5px] leading-snug\">All elements post into ONE issue. Shift+click / drag selects several at once.</span><div class=\"flex items-center justify-end gap-1.5\">"), rQ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex gap-1.5\">"), iQ = /*#__PURE__*/ N("<span class=text-danger>●"), aQ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><span class=\"text-text-faint text-[10.5px] leading-snug\">Captures your screen as a looping GIF (max 30s) the coding agent can watch. Pick this tab in the share dialog, then reproduce the issue."), oQ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Stop"), sQ = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex items-center gap-2 rounded-lg border p-2.5\"><span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\"></span><span class=\"text-text min-w-[5ch] text-[12px] tabular-nums\"></span><span class=\"text-text-faint text-[10.5px]\">max 0:30"), cQ = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex items-center gap-2 rounded-lg border p-2.5\"><span class=\"text-text-dim text-[12px]\">Encoding GIF…"), lQ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-4 overflow-y-auto pt-3 pb-4 pl-3 pr-4\">"), uQ = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), dQ = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round aria-hidden><path d=\"M4 4l8 8M12 4l-8 8\">"), fQ = /*#__PURE__*/ N("<span class=\"font-mono text-text-dim break-all text-[11px] leading-snug\">"), pQ = /*#__PURE__*/ N("<img alt=\"Element location screenshot\"class=\"border-border bg-bg max-h-32 w-full rounded-md border object-contain\">"), mQ = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-1.5 rounded-lg border p-2.5\"><div class=\"flex items-center justify-between gap-2\"><span class=\"font-mono text-accent min-w-0 truncate text-[12px]\"></span><div class=\"flex shrink-0 items-center gap-1\">"), hQ = /*#__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\">"), gQ = /*#__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><rect x=2 y=2.5 width=12 height=11 rx=1.5></rect><path d=\"m2 10.5 3.5-3 3 2.5 3-2 2.5 2\"></path><circle cx=6 cy=6 r=1 fill=currentColor stroke=none>"), _Q = /*#__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=\"M8 2.5v8M4.5 7.5 8 11l3.5-3.5M2.5 13.5h11\">"), vQ = /*#__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=\"M2.5 4h11M6.5 4V2.5h3V4M4 4l.7 9a1.5 1.5 0 0 0 1.5 1.4h3.6A1.5 1.5 0 0 0 11.3 13l.7-9M6.5 7v4.5M9.5 7v4.5\">"), yQ = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-2 rounded-lg border p-2.5\"><img alt=\"Screen recording preview\"class=\"border-border bg-bg max-h-44 w-full rounded-md border object-contain\"><span class=\"text-text-faint text-[10.5px] tabular-nums\"> KB · <!>s · <!>×</span><label class=\"flex cursor-pointer items-center gap-2 select-none\"><input type=checkbox class=\"accent-accent rounded\"><span class=\"text-text text-[12px]\">Attach to issue on create</span></label><div class=\"flex items-center gap-1\">"), bQ = /*#__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=\"M6.5 9.5 9.5 6.5M7.5 4.5 9 3a2.5 2.5 0 0 1 3.5 3.5L11 8M8.5 11.5 7 13a2.5 2.5 0 0 1-3.5-3.5L5 8\">");
|
|
41896
|
+
function xQ(e) {
|
|
41881
41897
|
return (() => {
|
|
41882
|
-
var t =
|
|
41898
|
+
var t = $Z(), n = t.firstChild;
|
|
41883
41899
|
n.firstChild;
|
|
41884
41900
|
var r = n.nextSibling;
|
|
41885
41901
|
return P(n, () => e.title, null), P(n, j(M, {
|
|
@@ -41887,13 +41903,13 @@ function bQ(e) {
|
|
|
41887
41903
|
return e.badge;
|
|
41888
41904
|
},
|
|
41889
41905
|
get children() {
|
|
41890
|
-
var t =
|
|
41906
|
+
var t = QZ();
|
|
41891
41907
|
return P(t, () => e.badge), t;
|
|
41892
41908
|
}
|
|
41893
41909
|
}), null), P(r, () => e.children), t;
|
|
41894
41910
|
})();
|
|
41895
41911
|
}
|
|
41896
|
-
function
|
|
41912
|
+
function SQ() {
|
|
41897
41913
|
let e = sr(), t = _r(() => ({
|
|
41898
41914
|
queryKey: ["grab"],
|
|
41899
41915
|
queryFn: Dr
|
|
@@ -41901,7 +41917,7 @@ function xQ() {
|
|
|
41901
41917
|
queryKey: ["settings"],
|
|
41902
41918
|
queryFn: Tr
|
|
41903
41919
|
})), r = () => t.data ?? [], i = () => !!(n.data?.linearApiKey || n.data?.linearAccessToken), [a, o] = T(null), s = () => {
|
|
41904
|
-
o(null),
|
|
41920
|
+
o(null), YZ().catch((e) => {
|
|
41905
41921
|
o(e instanceof Error && e.message ? e.message : "Cannot activate the picker — open your dev app in the active tab first.");
|
|
41906
41922
|
});
|
|
41907
41923
|
}, c = async () => {
|
|
@@ -41926,7 +41942,7 @@ function xQ() {
|
|
|
41926
41942
|
}, [y, b] = T(!1), x = async () => {
|
|
41927
41943
|
o(null), b(!0), window.dispatchEvent(new CustomEvent(BZ));
|
|
41928
41944
|
try {
|
|
41929
|
-
let e = await
|
|
41945
|
+
let e = await ZZ();
|
|
41930
41946
|
e ? await kr([e]) : o("Region capture failed — try a smaller area, or it was cancelled. The exact error is in the browser console ([linear-grab]).");
|
|
41931
41947
|
} finally {
|
|
41932
41948
|
b(!1), window.dispatchEvent(new CustomEvent("linear-grab:picker-finished"));
|
|
@@ -41987,8 +42003,8 @@ function xQ() {
|
|
|
41987
42003
|
}
|
|
41988
42004
|
};
|
|
41989
42005
|
return (() => {
|
|
41990
|
-
var e =
|
|
41991
|
-
return P(e, j(
|
|
42006
|
+
var e = lQ();
|
|
42007
|
+
return P(e, j(xQ, {
|
|
41992
42008
|
title: "Captured elements",
|
|
41993
42009
|
get badge() {
|
|
41994
42010
|
return $e(() => !!r().length)() ? `${r().length}/8` : void 0;
|
|
@@ -42005,13 +42021,13 @@ function xQ() {
|
|
|
42005
42021
|
});
|
|
42006
42022
|
},
|
|
42007
42023
|
get children() {
|
|
42008
|
-
var e =
|
|
42009
|
-
return
|
|
42024
|
+
var e = nQ(), t = e.firstChild, n = t.firstChild.nextSibling;
|
|
42025
|
+
return P(e, j(We, {
|
|
42010
42026
|
get each() {
|
|
42011
42027
|
return r();
|
|
42012
42028
|
},
|
|
42013
42029
|
children: (e) => (() => {
|
|
42014
|
-
var t =
|
|
42030
|
+
var t = mQ(), n = t.firstChild.firstChild, r = n.nextSibling;
|
|
42015
42031
|
return P(n, (() => {
|
|
42016
42032
|
var t = $e(() => !!e.componentName);
|
|
42017
42033
|
return () => t() ? `<${e.componentName}>` : $e(() => !!e.tagName)() ? `<${e.tagName}>` : "Element";
|
|
@@ -42027,10 +42043,10 @@ function xQ() {
|
|
|
42027
42043
|
return h() === e.grabbedAt;
|
|
42028
42044
|
},
|
|
42029
42045
|
get fallback() {
|
|
42030
|
-
return
|
|
42046
|
+
return hQ();
|
|
42031
42047
|
},
|
|
42032
42048
|
get children() {
|
|
42033
|
-
return
|
|
42049
|
+
return uQ();
|
|
42034
42050
|
}
|
|
42035
42051
|
});
|
|
42036
42052
|
}
|
|
@@ -42053,10 +42069,10 @@ function xQ() {
|
|
|
42053
42069
|
return f() === e.grabbedAt;
|
|
42054
42070
|
},
|
|
42055
42071
|
get fallback() {
|
|
42056
|
-
return
|
|
42072
|
+
return gQ();
|
|
42057
42073
|
},
|
|
42058
42074
|
get children() {
|
|
42059
|
-
return
|
|
42075
|
+
return uQ();
|
|
42060
42076
|
}
|
|
42061
42077
|
});
|
|
42062
42078
|
}
|
|
@@ -42069,14 +42085,14 @@ function xQ() {
|
|
|
42069
42085
|
"aria-label": "Remove element",
|
|
42070
42086
|
onClick: () => void v(e.grabbedAt),
|
|
42071
42087
|
get children() {
|
|
42072
|
-
return
|
|
42088
|
+
return dQ();
|
|
42073
42089
|
}
|
|
42074
42090
|
}), null), P(t, j(M, {
|
|
42075
42091
|
get when() {
|
|
42076
42092
|
return e.source?.filePath;
|
|
42077
42093
|
},
|
|
42078
42094
|
get children() {
|
|
42079
|
-
var t =
|
|
42095
|
+
var t = fQ();
|
|
42080
42096
|
return P(t, () => e.source.filePath, null), P(t, (() => {
|
|
42081
42097
|
var t = $e(() => e.source?.lineNumber != null);
|
|
42082
42098
|
return () => t() ? `:${e.source.lineNumber}` : "";
|
|
@@ -42087,7 +42103,7 @@ function xQ() {
|
|
|
42087
42103
|
return e.screenshotDataUrl;
|
|
42088
42104
|
},
|
|
42089
42105
|
get children() {
|
|
42090
|
-
var t =
|
|
42106
|
+
var t = pQ();
|
|
42091
42107
|
return D(() => it(t, "src", e.screenshotDataUrl)), t;
|
|
42092
42108
|
}
|
|
42093
42109
|
}), null), t;
|
|
@@ -42097,18 +42113,18 @@ function xQ() {
|
|
|
42097
42113
|
return new Set(r().filter((e) => e.source?.filePath).map((e) => `${e.source.filePath}:${e.source.lineNumber ?? ""}`)).size < r().filter((e) => e.source?.filePath).length;
|
|
42098
42114
|
},
|
|
42099
42115
|
get children() {
|
|
42100
|
-
return
|
|
42116
|
+
return eQ();
|
|
42101
42117
|
}
|
|
42102
|
-
}), t), P(
|
|
42118
|
+
}), t), P(n, j(kj, {
|
|
42103
42119
|
class: "h-6 shrink-0 px-2 text-[11px]",
|
|
42104
42120
|
variant: "ghost",
|
|
42105
42121
|
title: "Copy all captures as plain text — paste into a Claude Code session",
|
|
42106
42122
|
onClick: () => void d(),
|
|
42107
42123
|
get children() {
|
|
42108
|
-
var e =
|
|
42124
|
+
var e = tQ();
|
|
42109
42125
|
return P(e, () => l() ? "Copied ✓" : "Copy all"), e;
|
|
42110
42126
|
}
|
|
42111
|
-
}), null), P(
|
|
42127
|
+
}), null), P(n, j(kj, {
|
|
42112
42128
|
class: "h-6 shrink-0 px-2 text-[11px]",
|
|
42113
42129
|
variant: "ghost",
|
|
42114
42130
|
onClick: c,
|
|
@@ -42116,7 +42132,7 @@ function xQ() {
|
|
|
42116
42132
|
}), null), e;
|
|
42117
42133
|
}
|
|
42118
42134
|
}), (() => {
|
|
42119
|
-
var e =
|
|
42135
|
+
var e = rQ(), t = e.firstChild;
|
|
42120
42136
|
return P(t, j(kj, {
|
|
42121
42137
|
variant: "primary",
|
|
42122
42138
|
class: "min-w-0 flex-1",
|
|
@@ -42148,7 +42164,7 @@ function xQ() {
|
|
|
42148
42164
|
}), null), e;
|
|
42149
42165
|
})()];
|
|
42150
42166
|
}
|
|
42151
|
-
}), null), P(e, j(
|
|
42167
|
+
}), null), P(e, j(xQ, {
|
|
42152
42168
|
title: "Recording",
|
|
42153
42169
|
get badge() {
|
|
42154
42170
|
return $e(() => !!S().result)() ? `${(S().result.durationMs / 1e3).toFixed(1)}s` : void 0;
|
|
@@ -42160,12 +42176,12 @@ function xQ() {
|
|
|
42160
42176
|
return S().phase === "idle" || S().phase === "error";
|
|
42161
42177
|
},
|
|
42162
42178
|
get children() {
|
|
42163
|
-
var e =
|
|
42179
|
+
var e = aQ(), t = e.firstChild;
|
|
42164
42180
|
return P(e, j(kj, {
|
|
42165
42181
|
variant: "ghost",
|
|
42166
42182
|
onClick: () => void $D(),
|
|
42167
42183
|
get children() {
|
|
42168
|
-
return [
|
|
42184
|
+
return [iQ(), " Record interaction"];
|
|
42169
42185
|
}
|
|
42170
42186
|
}), t), P(e, j(M, {
|
|
42171
42187
|
get when() {
|
|
@@ -42184,13 +42200,13 @@ function xQ() {
|
|
|
42184
42200
|
return S().phase === "recording";
|
|
42185
42201
|
},
|
|
42186
42202
|
get children() {
|
|
42187
|
-
var e =
|
|
42203
|
+
var e = sQ(), t = e.firstChild.nextSibling;
|
|
42188
42204
|
return t.nextSibling, P(t, () => k(w())), P(e, j(kj, {
|
|
42189
42205
|
variant: "primary",
|
|
42190
42206
|
class: "ml-auto",
|
|
42191
42207
|
onClick: () => void eO(),
|
|
42192
42208
|
get children() {
|
|
42193
|
-
return
|
|
42209
|
+
return oQ();
|
|
42194
42210
|
}
|
|
42195
42211
|
}), null), e;
|
|
42196
42212
|
}
|
|
@@ -42200,7 +42216,7 @@ function xQ() {
|
|
|
42200
42216
|
return S().phase === "processing";
|
|
42201
42217
|
},
|
|
42202
42218
|
get children() {
|
|
42203
|
-
var e =
|
|
42219
|
+
var e = cQ(), t = e.firstChild;
|
|
42204
42220
|
return P(e, j(Aj, {}), t), e;
|
|
42205
42221
|
}
|
|
42206
42222
|
}),
|
|
@@ -42209,7 +42225,7 @@ function xQ() {
|
|
|
42209
42225
|
return $e(() => S().phase === "ready")() && S().result;
|
|
42210
42226
|
},
|
|
42211
42227
|
children: (e) => (() => {
|
|
42212
|
-
var t =
|
|
42228
|
+
var t = yQ(), n = t.firstChild, r = n.nextSibling, a = r.firstChild, o = a.nextSibling, s = o.nextSibling.nextSibling;
|
|
42213
42229
|
s.nextSibling;
|
|
42214
42230
|
var c = r.nextSibling, l = c.firstChild, u = c.nextSibling;
|
|
42215
42231
|
return P(r, () => (e().blob.size / 1024).toFixed(0), a), P(r, () => (e().durationMs / 1e3).toFixed(1), o), P(r, () => e().width, s), P(r, () => e().height, null), l.addEventListener("change", (e) => nO(e.currentTarget.checked)), P(u, j(kj, {
|
|
@@ -42232,10 +42248,10 @@ function xQ() {
|
|
|
42232
42248
|
return ee() === "copied";
|
|
42233
42249
|
},
|
|
42234
42250
|
get fallback() {
|
|
42235
|
-
return
|
|
42251
|
+
return bQ();
|
|
42236
42252
|
},
|
|
42237
42253
|
get children() {
|
|
42238
|
-
return
|
|
42254
|
+
return uQ();
|
|
42239
42255
|
}
|
|
42240
42256
|
});
|
|
42241
42257
|
}
|
|
@@ -42254,10 +42270,10 @@ function xQ() {
|
|
|
42254
42270
|
return se() === "copied";
|
|
42255
42271
|
},
|
|
42256
42272
|
get fallback() {
|
|
42257
|
-
return
|
|
42273
|
+
return hQ();
|
|
42258
42274
|
},
|
|
42259
42275
|
get children() {
|
|
42260
|
-
return
|
|
42276
|
+
return uQ();
|
|
42261
42277
|
}
|
|
42262
42278
|
});
|
|
42263
42279
|
}
|
|
@@ -42268,7 +42284,7 @@ function xQ() {
|
|
|
42268
42284
|
"aria-label": "Download GIF",
|
|
42269
42285
|
onClick: oe,
|
|
42270
42286
|
get children() {
|
|
42271
|
-
return
|
|
42287
|
+
return _Q();
|
|
42272
42288
|
}
|
|
42273
42289
|
}), null), P(u, j(kj, {
|
|
42274
42290
|
variant: "danger",
|
|
@@ -42277,7 +42293,7 @@ function xQ() {
|
|
|
42277
42293
|
"aria-label": "Discard recording",
|
|
42278
42294
|
onClick: tO,
|
|
42279
42295
|
get children() {
|
|
42280
|
-
return
|
|
42296
|
+
return vQ();
|
|
42281
42297
|
}
|
|
42282
42298
|
}), null), P(t, j(M, {
|
|
42283
42299
|
get when() {
|
|
@@ -42298,7 +42314,7 @@ function xQ() {
|
|
|
42298
42314
|
}
|
|
42299
42315
|
//#endregion
|
|
42300
42316
|
//#region node_modules/@tanstack/virtual-core/dist/esm/lazy-measurements.js
|
|
42301
|
-
function
|
|
42317
|
+
function CQ(e, t, n) {
|
|
42302
42318
|
let r = Array(e);
|
|
42303
42319
|
return new Proxy(r, { get(r, i, a) {
|
|
42304
42320
|
if (typeof i == "string") {
|
|
@@ -42328,7 +42344,7 @@ function SQ(e, t, n) {
|
|
|
42328
42344
|
}
|
|
42329
42345
|
//#endregion
|
|
42330
42346
|
//#region node_modules/@tanstack/virtual-core/dist/esm/utils.js
|
|
42331
|
-
function
|
|
42347
|
+
function wQ(e, t, n) {
|
|
42332
42348
|
let r = n.initialDeps ?? [], i, a = !0;
|
|
42333
42349
|
function o() {
|
|
42334
42350
|
let o = e();
|
|
@@ -42338,32 +42354,32 @@ function CQ(e, t, n) {
|
|
|
42338
42354
|
r = e;
|
|
42339
42355
|
}, o;
|
|
42340
42356
|
}
|
|
42341
|
-
function
|
|
42357
|
+
function TQ(e, t) {
|
|
42342
42358
|
if (e === void 0) throw Error(`Unexpected undefined${t ? `: ${t}` : ""}`);
|
|
42343
42359
|
return e;
|
|
42344
42360
|
}
|
|
42345
|
-
var
|
|
42361
|
+
var EQ = (e, t) => Math.abs(e - t) < 1.01, DQ = (e, t, n) => {
|
|
42346
42362
|
let r;
|
|
42347
42363
|
return function(...i) {
|
|
42348
42364
|
e.clearTimeout(r), r = e.setTimeout(() => t.apply(this, i), n);
|
|
42349
42365
|
};
|
|
42350
|
-
},
|
|
42351
|
-
if (
|
|
42352
|
-
if (typeof navigator > "u") return
|
|
42353
|
-
if (/iP(hone|od|ad)/.test(navigator.userAgent)) return
|
|
42366
|
+
}, OQ, kQ = () => {
|
|
42367
|
+
if (OQ !== void 0) return OQ;
|
|
42368
|
+
if (typeof navigator > "u") return OQ = !1;
|
|
42369
|
+
if (/iP(hone|od|ad)/.test(navigator.userAgent)) return OQ = !0;
|
|
42354
42370
|
let e = navigator.maxTouchPoints;
|
|
42355
|
-
return
|
|
42356
|
-
},
|
|
42371
|
+
return OQ = navigator.platform === "MacIntel" && e !== void 0 && e > 0;
|
|
42372
|
+
}, AQ = (e) => {
|
|
42357
42373
|
let { offsetWidth: t, offsetHeight: n } = e;
|
|
42358
42374
|
return {
|
|
42359
42375
|
width: t,
|
|
42360
42376
|
height: n
|
|
42361
42377
|
};
|
|
42362
|
-
},
|
|
42378
|
+
}, jQ = (e) => e, MQ = (e) => {
|
|
42363
42379
|
let t = Math.max(e.startIndex - e.overscan, 0), n = Math.min(e.endIndex + e.overscan, e.count - 1) - t + 1, r = Array(n);
|
|
42364
42380
|
for (let e = 0; e < n; e++) r[e] = t + e;
|
|
42365
42381
|
return r;
|
|
42366
|
-
},
|
|
42382
|
+
}, NQ = (e, t) => {
|
|
42367
42383
|
let n = e.scrollElement;
|
|
42368
42384
|
if (!n) return;
|
|
42369
42385
|
let r = e.targetWindow;
|
|
@@ -42375,7 +42391,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42375
42391
|
height: Math.round(r)
|
|
42376
42392
|
});
|
|
42377
42393
|
};
|
|
42378
|
-
if (i(
|
|
42394
|
+
if (i(AQ(n)), !r.ResizeObserver) return () => {};
|
|
42379
42395
|
let a = new r.ResizeObserver((t) => {
|
|
42380
42396
|
let r = () => {
|
|
42381
42397
|
let e = t[0];
|
|
@@ -42389,28 +42405,28 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42389
42405
|
return;
|
|
42390
42406
|
}
|
|
42391
42407
|
}
|
|
42392
|
-
i(
|
|
42408
|
+
i(AQ(n));
|
|
42393
42409
|
};
|
|
42394
42410
|
e.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(r) : r();
|
|
42395
42411
|
});
|
|
42396
42412
|
return a.observe(n, { box: "border-box" }), () => {
|
|
42397
42413
|
a.unobserve(n);
|
|
42398
42414
|
};
|
|
42399
|
-
},
|
|
42415
|
+
}, PQ = { passive: !0 }, FQ = typeof window > "u" || "onscrollend" in window, IQ = (e, t, n) => {
|
|
42400
42416
|
let r = e.scrollElement;
|
|
42401
42417
|
if (!r) return;
|
|
42402
42418
|
let i = e.targetWindow;
|
|
42403
42419
|
if (!i) return;
|
|
42404
|
-
let a = e.options.useScrollendEvent &&
|
|
42420
|
+
let a = e.options.useScrollendEvent && FQ, o = 0, s = a ? null : DQ(i, () => t(o, !1), e.options.isScrollingResetDelay), c = (e) => () => {
|
|
42405
42421
|
o = n(r), s?.(), t(o, e);
|
|
42406
42422
|
}, l = c(!0), u = c(!1);
|
|
42407
|
-
return r.addEventListener("scroll", l,
|
|
42423
|
+
return r.addEventListener("scroll", l, PQ), a && r.addEventListener("scrollend", u, PQ), () => {
|
|
42408
42424
|
r.removeEventListener("scroll", l), a && r.removeEventListener("scrollend", u);
|
|
42409
42425
|
};
|
|
42410
|
-
},
|
|
42426
|
+
}, LQ = (e, t) => IQ(e, t, (t) => {
|
|
42411
42427
|
let { horizontal: n, isRtl: r } = e.options;
|
|
42412
42428
|
return n ? t.scrollLeft * (r && -1 || 1) : t.scrollTop;
|
|
42413
|
-
}),
|
|
42429
|
+
}), RQ = (e, t, n) => {
|
|
42414
42430
|
if (n.options.useCachedMeasurements) {
|
|
42415
42431
|
let t = n.indexFromElement(e), r = n.options.getItemKey(t);
|
|
42416
42432
|
return n.itemSizeCache.get(r) ?? n.options.estimateSize(t);
|
|
@@ -42424,13 +42440,13 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42424
42440
|
if (i !== void 0) return i;
|
|
42425
42441
|
}
|
|
42426
42442
|
return e[n.options.horizontal ? "offsetWidth" : "offsetHeight"];
|
|
42427
|
-
},
|
|
42443
|
+
}, zQ = (e, { adjustments: t = 0, behavior: n }, r) => {
|
|
42428
42444
|
var i, a;
|
|
42429
42445
|
(a = (i = r.scrollElement)?.scrollTo) == null || a.call(i, {
|
|
42430
42446
|
[r.options.horizontal ? "left" : "top"]: e + t,
|
|
42431
42447
|
behavior: n
|
|
42432
42448
|
});
|
|
42433
|
-
},
|
|
42449
|
+
}, BQ = class {
|
|
42434
42450
|
constructor(e) {
|
|
42435
42451
|
this.unsubs = [], this.scrollElement = null, this.targetWindow = null, this.isScrolling = !1, this.scrollState = null, this.measurementsCache = [], this._flatMeasurements = null, this.itemSizeCache = /* @__PURE__ */ new Map(), this.itemSizeCacheVersion = 0, this.laneAssignments = /* @__PURE__ */ new Map(), this.pendingMin = null, this.prevLanes = void 0, this.lanesChangedFlag = !1, this.lanesSettling = !1, this.pendingScrollAnchor = null, this.scrollRect = null, this.scrollOffset = null, this.scrollDirection = null, this.scrollAdjustments = 0, this._iosDeferredAdjustment = 0, this._iosTouching = !1, this._iosJustTouchEnded = !1, this._iosTouchEndTimerId = null, this._intendedScrollOffset = null, this.elementsCache = /* @__PURE__ */ new Map(), this.now = () => {
|
|
42436
42452
|
var e;
|
|
@@ -42471,10 +42487,10 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42471
42487
|
scrollPaddingStart: 0,
|
|
42472
42488
|
scrollPaddingEnd: 0,
|
|
42473
42489
|
horizontal: !1,
|
|
42474
|
-
getItemKey:
|
|
42475
|
-
rangeExtractor:
|
|
42490
|
+
getItemKey: jQ,
|
|
42491
|
+
rangeExtractor: MQ,
|
|
42476
42492
|
onChange: () => {},
|
|
42477
|
-
measureElement:
|
|
42493
|
+
measureElement: RQ,
|
|
42478
42494
|
initialRect: {
|
|
42479
42495
|
width: 0,
|
|
42480
42496
|
height: 0
|
|
@@ -42532,7 +42548,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42532
42548
|
}, this.notify = (e) => {
|
|
42533
42549
|
var t, n;
|
|
42534
42550
|
(n = (t = this.options).onChange) == null || n.call(t, this, e);
|
|
42535
|
-
}, this.maybeNotify =
|
|
42551
|
+
}, this.maybeNotify = wQ(() => (this.calculateRange(), [
|
|
42536
42552
|
this.isScrolling,
|
|
42537
42553
|
this.range ? this.range.startIndex : null,
|
|
42538
42554
|
this.range ? this.range.endIndex : null
|
|
@@ -42570,11 +42586,11 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42570
42586
|
let e = this.scrollElement, t = () => {
|
|
42571
42587
|
this._iosTouching = !0, this._iosJustTouchEnded = !1, this._iosTouchEndTimerId !== null && this.targetWindow != null && (this.targetWindow.clearTimeout(this._iosTouchEndTimerId), this._iosTouchEndTimerId = null);
|
|
42572
42588
|
}, n = () => {
|
|
42573
|
-
this._iosTouching = !1, !(!
|
|
42589
|
+
this._iosTouching = !1, !(!kQ() || this.targetWindow == null) && (this._iosJustTouchEnded = !0, this._iosTouchEndTimerId = this.targetWindow.setTimeout(() => {
|
|
42574
42590
|
this._iosJustTouchEnded = !1, this._iosTouchEndTimerId = null, this._flushIosDeferredIfReady();
|
|
42575
42591
|
}, 150));
|
|
42576
42592
|
};
|
|
42577
|
-
e.addEventListener("touchstart", t,
|
|
42593
|
+
e.addEventListener("touchstart", t, PQ), e.addEventListener("touchend", n, PQ), this.unsubs.push(() => {
|
|
42578
42594
|
e.removeEventListener("touchstart", t), e.removeEventListener("touchend", n), this._iosTouchEndTimerId !== null && this.targetWindow != null && (this.targetWindow.clearTimeout(this._iosTouchEndTimerId), this._iosTouchEndTimerId = null);
|
|
42579
42595
|
});
|
|
42580
42596
|
}
|
|
@@ -42586,7 +42602,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42586
42602
|
let t = this.pendingScrollAnchor;
|
|
42587
42603
|
if (this.pendingScrollAnchor = null, t && this.scrollElement && this.options.enabled) {
|
|
42588
42604
|
let [e, n, r, i] = t;
|
|
42589
|
-
e !== null && !r && (
|
|
42605
|
+
e !== null && !r && (kQ() && (this.isScrolling || this._iosTouching || this._iosJustTouchEnded) ? i !== 0 && (this._iosDeferredAdjustment += i) : this._scrollToOffset(this.getScrollOffset(), {
|
|
42590
42606
|
adjustments: void 0,
|
|
42591
42607
|
behavior: void 0
|
|
42592
42608
|
})), r && this.scrollToEnd({ behavior: r });
|
|
@@ -42600,7 +42616,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42600
42616
|
adjustments: this.scrollAdjustments += n,
|
|
42601
42617
|
behavior: void 0
|
|
42602
42618
|
});
|
|
42603
|
-
}, this.rafId = null, this.getSize = () => this.options.enabled ? (this.scrollRect = this.scrollRect ?? this.options.initialRect, this.scrollRect[this.options.horizontal ? "width" : "height"]) : (this.scrollRect = null, 0), this.getScrollOffset = () => this.options.enabled ? (this.scrollOffset = this.scrollOffset ?? (typeof this.options.initialOffset == "function" ? this.options.initialOffset() : this.options.initialOffset), this.scrollOffset) : (this.scrollOffset = null, 0), this.getMeasurementOptions =
|
|
42619
|
+
}, this.rafId = null, this.getSize = () => this.options.enabled ? (this.scrollRect = this.scrollRect ?? this.options.initialRect, this.scrollRect[this.options.horizontal ? "width" : "height"]) : (this.scrollRect = null, 0), this.getScrollOffset = () => this.options.enabled ? (this.scrollOffset = this.scrollOffset ?? (typeof this.options.initialOffset == "function" ? this.options.initialOffset() : this.options.initialOffset), this.scrollOffset) : (this.scrollOffset = null, 0), this.getMeasurementOptions = wQ(() => [
|
|
42604
42620
|
this.options.count,
|
|
42605
42621
|
this.options.paddingStart,
|
|
42606
42622
|
this.options.scrollMargin,
|
|
@@ -42618,7 +42634,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42618
42634
|
lanes: a,
|
|
42619
42635
|
laneAssignmentMode: o,
|
|
42620
42636
|
gap: s
|
|
42621
|
-
}), { key: !1 }), this.getMeasurements =
|
|
42637
|
+
}), { key: !1 }), this.getMeasurements = wQ(() => [this.getMeasurementOptions(), this.itemSizeCacheVersion], ({ count: e, paddingStart: t, scrollMargin: n, getItemKey: r, enabled: i, lanes: a, laneAssignmentMode: o, gap: s }, c) => {
|
|
42622
42638
|
let l = this.itemSizeCache;
|
|
42623
42639
|
if (!i) return this.measurementsCache = [], this.itemSizeCache.clear(), this.laneAssignments.clear(), [];
|
|
42624
42640
|
if (this.laneAssignments.size > e) for (let t of this.laneAssignments.keys()) t >= e && this.laneAssignments.delete(t);
|
|
@@ -42642,7 +42658,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42642
42658
|
let e = r(t), n = l.get(e), i = typeof n == "number" ? n : this.options.estimateSize(t);
|
|
42643
42659
|
a[t * 2] = o, a[t * 2 + 1] = i, o += i + s;
|
|
42644
42660
|
}
|
|
42645
|
-
let c =
|
|
42661
|
+
let c = CQ(e, a, r);
|
|
42646
42662
|
return this.measurementsCache = c, c;
|
|
42647
42663
|
}
|
|
42648
42664
|
let d = this.measurementsCache.slice(0, u), f = Array(a).fill(void 0), p = new Float64Array(a), m = 0;
|
|
@@ -42678,15 +42694,15 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42678
42694
|
}, {
|
|
42679
42695
|
key: !1,
|
|
42680
42696
|
debug: () => this.options.debug
|
|
42681
|
-
}), this.calculateRange =
|
|
42697
|
+
}), this.calculateRange = wQ(() => [
|
|
42682
42698
|
this.getMeasurements(),
|
|
42683
42699
|
this.getSize(),
|
|
42684
42700
|
this.getScrollOffset(),
|
|
42685
42701
|
this.options.lanes
|
|
42686
|
-
], (e, t, n, r) => e.length === 0 || t === 0 ? (this.range = null, null) : (this.range =
|
|
42702
|
+
], (e, t, n, r) => e.length === 0 || t === 0 ? (this.range = null, null) : (this.range = UQ(e, t, n, r, r === 1 && this._flatMeasurements != null ? this._flatMeasurements : null), this.range), {
|
|
42687
42703
|
key: !1,
|
|
42688
42704
|
debug: () => this.options.debug
|
|
42689
|
-
}), this.getVirtualIndexes =
|
|
42705
|
+
}), this.getVirtualIndexes = wQ(() => {
|
|
42690
42706
|
let e = null, t = null, n = this.calculateRange();
|
|
42691
42707
|
return n && (e = n.startIndex, t = n.endIndex), this.maybeNotify.updateDeps([
|
|
42692
42708
|
this.isScrolling,
|
|
@@ -42748,7 +42764,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42748
42764
|
}, o, this));
|
|
42749
42765
|
(this.pendingMin === null || e < this.pendingMin) && (this.pendingMin = e), this.itemSizeCache.set(i, t), this.itemSizeCacheVersion++, a ? this.applyScrollAdjustment(this.getTotalSize() - s) : c && this.applyScrollAdjustment(o), this.notify(!1);
|
|
42750
42766
|
}
|
|
42751
|
-
}, this.getVirtualItems =
|
|
42767
|
+
}, this.getVirtualItems = wQ(() => [this.getVirtualIndexes(), this.getMeasurements()], (e, t) => {
|
|
42752
42768
|
let n = [];
|
|
42753
42769
|
for (let r = 0, i = e.length; r < i; r++) {
|
|
42754
42770
|
let i = t[e[r]];
|
|
@@ -42762,7 +42778,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42762
42778
|
let t = this.getMeasurements();
|
|
42763
42779
|
if (t.length === 0) return;
|
|
42764
42780
|
let n = this._flatMeasurements, r = this.options.lanes === 1 && n != null;
|
|
42765
|
-
return
|
|
42781
|
+
return TQ(t[VQ(0, t.length - 1, r ? (e) => n[e * 2] : (e) => TQ(t[e]).start, e)]);
|
|
42766
42782
|
}, this.getMaxScrollOffset = () => {
|
|
42767
42783
|
if (!this.scrollElement) return 0;
|
|
42768
42784
|
if ("scrollHeight" in this.scrollElement) return this.options.horizontal ? this.scrollElement.scrollWidth - this.scrollElement.clientWidth : this.scrollElement.scrollHeight - this.scrollElement.clientHeight;
|
|
@@ -42875,7 +42891,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42875
42891
|
}, this.setOptions(e);
|
|
42876
42892
|
}
|
|
42877
42893
|
applyScrollAdjustment(e, t) {
|
|
42878
|
-
e !== 0 && (
|
|
42894
|
+
e !== 0 && (kQ() && (this.isScrolling || this._iosTouching || this._iosJustTouchEnded) ? this._iosDeferredAdjustment += e : (this._scrollToOffset(this.getScrollOffset(), {
|
|
42879
42895
|
adjustments: this.scrollAdjustments += e,
|
|
42880
42896
|
behavior: t
|
|
42881
42897
|
}), this.scrollOffset !== null && (this.scrollOffset += this.scrollAdjustments, this.scrollAdjustments = 0)));
|
|
@@ -42896,7 +42912,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42896
42912
|
return;
|
|
42897
42913
|
}
|
|
42898
42914
|
let e = this.scrollState.index == null ? void 0 : this.getOffsetForIndex(this.scrollState.index, this.scrollState.align), t = e ? e[0] : this.scrollState.lastTargetOffset, n = t !== this.scrollState.lastTargetOffset;
|
|
42899
|
-
if (!n &&
|
|
42915
|
+
if (!n && EQ(t, this.getScrollOffset())) {
|
|
42900
42916
|
if (this.scrollState.stableFrames++, this.scrollState.stableFrames >= 1) {
|
|
42901
42917
|
this.getScrollOffset() !== t && this._scrollToOffset(t, {
|
|
42902
42918
|
adjustments: void 0,
|
|
@@ -42913,7 +42929,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42913
42929
|
}
|
|
42914
42930
|
this.scheduleScrollReconcile();
|
|
42915
42931
|
}
|
|
42916
|
-
},
|
|
42932
|
+
}, VQ = (e, t, n, r) => {
|
|
42917
42933
|
for (; e <= t;) {
|
|
42918
42934
|
let i = (e + t) / 2 | 0, a = n(i);
|
|
42919
42935
|
if (a < r) e = i + 1;
|
|
@@ -42922,7 +42938,7 @@ var TQ = (e, t) => Math.abs(e - t) < 1.01, EQ = (e, t, n) => {
|
|
|
42922
42938
|
}
|
|
42923
42939
|
return e > 0 ? e - 1 : 0;
|
|
42924
42940
|
};
|
|
42925
|
-
function
|
|
42941
|
+
function HQ(e, t, n) {
|
|
42926
42942
|
let r = 0;
|
|
42927
42943
|
for (; r <= t;) {
|
|
42928
42944
|
let i = (r + t) / 2 | 0, a = e[i * 2];
|
|
@@ -42932,21 +42948,21 @@ function VQ(e, t, n) {
|
|
|
42932
42948
|
}
|
|
42933
42949
|
return r > 0 ? r - 1 : 0;
|
|
42934
42950
|
}
|
|
42935
|
-
function
|
|
42951
|
+
function UQ(e, t, n, r, i) {
|
|
42936
42952
|
let a = e.length - 1;
|
|
42937
42953
|
if (e.length <= r) return {
|
|
42938
42954
|
startIndex: 0,
|
|
42939
42955
|
endIndex: a
|
|
42940
42956
|
};
|
|
42941
42957
|
if (r === 1 && i !== null) {
|
|
42942
|
-
let e =
|
|
42958
|
+
let e = HQ(i, a, n), r = e, o = n + t;
|
|
42943
42959
|
for (; r < a && i[r * 2] + i[r * 2 + 1] < o;) r++;
|
|
42944
42960
|
return {
|
|
42945
42961
|
startIndex: e,
|
|
42946
42962
|
endIndex: r
|
|
42947
42963
|
};
|
|
42948
42964
|
}
|
|
42949
|
-
let o =
|
|
42965
|
+
let o = VQ(0, a, (t) => e[t].start, n), s = o;
|
|
42950
42966
|
if (r === 1) for (; s < a && e[s].end < n + t;) s++;
|
|
42951
42967
|
else if (r > 1) {
|
|
42952
42968
|
let i = Array(r).fill(0);
|
|
@@ -42968,8 +42984,8 @@ function HQ(e, t, n, r, i) {
|
|
|
42968
42984
|
}
|
|
42969
42985
|
//#endregion
|
|
42970
42986
|
//#region node_modules/@tanstack/solid-virtual/dist/esm/index.js
|
|
42971
|
-
function
|
|
42972
|
-
let t = Ve(e), n = new
|
|
42987
|
+
function WQ(e) {
|
|
42988
|
+
let t = Ve(e), n = new BQ(t), [r, i] = tr(n.getVirtualItems()), [a, o] = T(n.getTotalSize()), s = new Proxy(n, { get(e, t) {
|
|
42973
42989
|
switch (t) {
|
|
42974
42990
|
case "getVirtualItems": return () => r;
|
|
42975
42991
|
case "getTotalSize": return () => a();
|
|
@@ -42986,29 +43002,29 @@ function UQ(e) {
|
|
|
42986
43002
|
} })), s._willUpdate(), i(ar(n.getVirtualItems(), { key: "index" })), o(n.getTotalSize());
|
|
42987
43003
|
}), s;
|
|
42988
43004
|
}
|
|
42989
|
-
function
|
|
42990
|
-
return
|
|
42991
|
-
observeElementRect:
|
|
42992
|
-
observeElementOffset:
|
|
42993
|
-
scrollToFn:
|
|
43005
|
+
function GQ(e) {
|
|
43006
|
+
return WQ(Ve({
|
|
43007
|
+
observeElementRect: NQ,
|
|
43008
|
+
observeElementOffset: LQ,
|
|
43009
|
+
scrollToFn: zQ
|
|
42994
43010
|
}, e));
|
|
42995
43011
|
}
|
|
42996
43012
|
//#endregion
|
|
42997
43013
|
//#region src/lib/agentWatch.ts
|
|
42998
43014
|
Br();
|
|
42999
|
-
var
|
|
43015
|
+
var KQ = 3e4, qQ = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i, JQ = {
|
|
43000
43016
|
running: [],
|
|
43001
43017
|
review: []
|
|
43002
|
-
},
|
|
43003
|
-
function
|
|
43004
|
-
return
|
|
43005
|
-
|
|
43018
|
+
}, YQ = null, XQ = /* @__PURE__ */ new Set();
|
|
43019
|
+
function ZQ(e) {
|
|
43020
|
+
return XQ.add(e), YQ || (YQ = setInterval(() => void e$(), KQ), e$()), () => {
|
|
43021
|
+
XQ.delete(e), !XQ.size && YQ && (clearInterval(YQ), YQ = null);
|
|
43006
43022
|
};
|
|
43007
43023
|
}
|
|
43008
|
-
function
|
|
43009
|
-
$
|
|
43024
|
+
function QQ() {
|
|
43025
|
+
e$();
|
|
43010
43026
|
}
|
|
43011
|
-
function
|
|
43027
|
+
function $Q(e) {
|
|
43012
43028
|
return {
|
|
43013
43029
|
id: e.id,
|
|
43014
43030
|
identifier: e.identifier,
|
|
@@ -43017,25 +43033,25 @@ function QQ(e) {
|
|
|
43017
43033
|
stateColor: e.state.color,
|
|
43018
43034
|
delegateName: e.delegate?.displayName ?? "Agent",
|
|
43019
43035
|
updatedAt: e.updatedAt,
|
|
43020
|
-
prUrl: e.attachments?.find((e) =>
|
|
43036
|
+
prUrl: e.attachments?.find((e) => qQ.test(e.url))?.url
|
|
43021
43037
|
};
|
|
43022
43038
|
}
|
|
43023
|
-
async function $
|
|
43039
|
+
async function e$() {
|
|
43024
43040
|
try {
|
|
43025
43041
|
let e = await Tr();
|
|
43026
43042
|
if (!e.linearApiKey && !e.linearAccessToken) return;
|
|
43027
|
-
let t = (await fO()).filter((e) => !!e.delegate && e.state.type === "started").map(
|
|
43028
|
-
|
|
43043
|
+
let t = (await fO()).filter((e) => !!e.delegate && e.state.type === "started").map($Q);
|
|
43044
|
+
JQ = {
|
|
43029
43045
|
running: t.filter((e) => !e.prUrl),
|
|
43030
43046
|
review: t.filter((e) => !!e.prUrl)
|
|
43031
43047
|
};
|
|
43032
|
-
for (let e of
|
|
43048
|
+
for (let e of XQ) e(JQ);
|
|
43033
43049
|
} catch {}
|
|
43034
43050
|
}
|
|
43035
43051
|
//#endregion
|
|
43036
43052
|
//#region src/panel/components/BuildLogs.tsx
|
|
43037
|
-
var
|
|
43038
|
-
function
|
|
43053
|
+
var t$ = /*#__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 8a5.5 5.5 0 1 1 1.6 3.9\"></path><path d=\"M2.5 12.5V8.9h3.6\">"), n$ = /*#__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\">"), r$ = /*#__PURE__*/ N("<pre class=\"font-mono max-h-56 overflow-auto px-2.5 py-2 pr-3 text-[10px] leading-relaxed whitespace-pre-wrap\"style=background:#0b0c0e;color:#8b8e98>"), i$ = /*#__PURE__*/ N("<div class=\"border-border overflow-clip rounded-lg border\"><div class=\"bg-surface-2 flex h-8 items-center gap-2 pl-2.5 pr-1.5\"><span class=\"text-[11px] font-medium\"></span><span class=\"text-text-faint font-mono text-[10px]\"></span><span class=ml-auto>"), a$ = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), o$ = /*#__PURE__*/ N("<p class=\"text-text-faint px-2.5 py-2 text-[10.5px]\">No deployment URL yet — logs appear once Vercel picks up the branch.");
|
|
43054
|
+
function s$(e) {
|
|
43039
43055
|
let t = sr(), n = _r(() => ({
|
|
43040
43056
|
queryKey: [
|
|
43041
43057
|
"stage-status",
|
|
@@ -43085,14 +43101,14 @@ function o$(e) {
|
|
|
43085
43101
|
};
|
|
43086
43102
|
};
|
|
43087
43103
|
return (() => {
|
|
43088
|
-
var t =
|
|
43104
|
+
var t = i$(), d = t.firstChild, f = d.firstChild, p = f.nextSibling;
|
|
43089
43105
|
return p.nextSibling, P(d, j(M, {
|
|
43090
43106
|
get when() {
|
|
43091
43107
|
return r();
|
|
43092
43108
|
},
|
|
43093
43109
|
get fallback() {
|
|
43094
43110
|
return (() => {
|
|
43095
|
-
var e =
|
|
43111
|
+
var e = a$();
|
|
43096
43112
|
return D((t) => dt(e, "background", u().color)), e;
|
|
43097
43113
|
})();
|
|
43098
43114
|
},
|
|
@@ -43128,7 +43144,7 @@ function o$(e) {
|
|
|
43128
43144
|
"aria-label": "Reset staging branch",
|
|
43129
43145
|
onClick: () => l.mutate(),
|
|
43130
43146
|
get children() {
|
|
43131
|
-
return
|
|
43147
|
+
return t$();
|
|
43132
43148
|
}
|
|
43133
43149
|
}), null), P(d, j(kj, {
|
|
43134
43150
|
variant: "ghost",
|
|
@@ -43141,7 +43157,7 @@ function o$(e) {
|
|
|
43141
43157
|
},
|
|
43142
43158
|
onClick: () => a((e) => !e),
|
|
43143
43159
|
get children() {
|
|
43144
|
-
return
|
|
43160
|
+
return n$();
|
|
43145
43161
|
}
|
|
43146
43162
|
}), null), P(t, j(M, {
|
|
43147
43163
|
get when() {
|
|
@@ -43153,10 +43169,10 @@ function o$(e) {
|
|
|
43153
43169
|
return n.data?.url;
|
|
43154
43170
|
},
|
|
43155
43171
|
get fallback() {
|
|
43156
|
-
return
|
|
43172
|
+
return o$();
|
|
43157
43173
|
},
|
|
43158
43174
|
get children() {
|
|
43159
|
-
var e =
|
|
43175
|
+
var e = r$();
|
|
43160
43176
|
e.addEventListener("scroll", () => {
|
|
43161
43177
|
s && (c = s.scrollTop + s.clientHeight >= s.scrollHeight - 40);
|
|
43162
43178
|
});
|
|
@@ -43181,15 +43197,15 @@ function o$(e) {
|
|
|
43181
43197
|
//#endregion
|
|
43182
43198
|
//#region src/lib/captureShare.ts
|
|
43183
43199
|
Br();
|
|
43184
|
-
function
|
|
43200
|
+
function c$(e, t = 6e3) {
|
|
43185
43201
|
return Promise.race([e, new Promise((e, n) => setTimeout(() => n(/* @__PURE__ */ Error("upload timeout")), t))]);
|
|
43186
43202
|
}
|
|
43187
|
-
async function
|
|
43203
|
+
async function l$() {
|
|
43188
43204
|
let e = [], t = [];
|
|
43189
43205
|
for (let n of await Dr() ?? []) {
|
|
43190
43206
|
let r = n.source?.filePath ? ` — \`${n.source.filePath}${n.source.lineNumber == null ? "" : `:${n.source.lineNumber}`}\`` : "";
|
|
43191
43207
|
if (e.push(`- \`<${n.componentName ?? n.tagName ?? "element"}>\`${r}`), n.screenshotDataUrl) try {
|
|
43192
|
-
let t = await
|
|
43208
|
+
let t = await c$(DO(tj(n.screenshotDataUrl), `capture-${n.grabbedAt}.png`), 15e3);
|
|
43193
43209
|
e.push(` `);
|
|
43194
43210
|
} catch {
|
|
43195
43211
|
t.push("element screenshot upload failed — the ref line still landed");
|
|
@@ -43197,7 +43213,7 @@ async function c$() {
|
|
|
43197
43213
|
}
|
|
43198
43214
|
let n = HD();
|
|
43199
43215
|
if (n.result) try {
|
|
43200
|
-
let t = n.result.assetUrl ?? await
|
|
43216
|
+
let t = n.result.assetUrl ?? await c$(DO(n.result.blob, `recording-${Date.now()}.gif`), 6e4);
|
|
43201
43217
|
rO(t), e.push(``);
|
|
43202
43218
|
} catch (e) {
|
|
43203
43219
|
t.push(`recording upload failed (${e instanceof Error ? e.message : "error"}) — Copy GIF from the Capture tab and paste it instead`);
|
|
@@ -43209,10 +43225,10 @@ async function c$() {
|
|
|
43209
43225
|
}
|
|
43210
43226
|
//#endregion
|
|
43211
43227
|
//#region src/panel/components/markdown.ts
|
|
43212
|
-
function
|
|
43228
|
+
function u$(e) {
|
|
43213
43229
|
return e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
43214
43230
|
}
|
|
43215
|
-
var
|
|
43231
|
+
var d$ = /^(https?:\/\/|mailto:)/i, f$ = /\.(mp4|mov|webm|m4v)(\?|#|$)/i, p$ = /\.(png|jpe?g|gif|webp|avif|svg)(\?|#|$)/i, m$ = class extends HTMLElement {
|
|
43216
43232
|
objectUrl = null;
|
|
43217
43233
|
connectedCallback() {
|
|
43218
43234
|
let e = this.getAttribute("src") ?? "", t = this.getAttribute("alt") ?? "";
|
|
@@ -43239,27 +43255,27 @@ var u$ = /^(https?:\/\/|mailto:)/i, d$ = /\.(mp4|mov|webm|m4v)(\?|#|$)/i, f$ = /
|
|
|
43239
43255
|
this.objectUrl && URL.revokeObjectURL(this.objectUrl);
|
|
43240
43256
|
}
|
|
43241
43257
|
};
|
|
43242
|
-
typeof customElements < "u" && !customElements.get("lg-media") && customElements.define("lg-media",
|
|
43243
|
-
var
|
|
43244
|
-
function h$(e) {
|
|
43245
|
-
m$ = e ? e.replace(/\/$/, "") : null;
|
|
43246
|
-
}
|
|
43258
|
+
typeof customElements < "u" && !customElements.get("lg-media") && customElements.define("lg-media", m$);
|
|
43259
|
+
var h$ = null;
|
|
43247
43260
|
function g$(e) {
|
|
43261
|
+
h$ = e ? e.replace(/\/$/, "") : null;
|
|
43262
|
+
}
|
|
43263
|
+
function _$(e) {
|
|
43248
43264
|
try {
|
|
43249
|
-
if (
|
|
43265
|
+
if (h$ && new URL(e).hostname.endsWith("uploads.linear.app")) return `${h$}/fetch?url=${encodeURIComponent(e)}`;
|
|
43250
43266
|
} catch {}
|
|
43251
43267
|
return e;
|
|
43252
43268
|
}
|
|
43253
|
-
function
|
|
43269
|
+
function v$(e) {
|
|
43254
43270
|
let t = e;
|
|
43255
43271
|
return t = t.replace(/`([^`]+)`/g, (e, t) => `<code>${t}</code>`), t = t.replace(/!\[([^\]]*)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) => {
|
|
43256
|
-
if (!
|
|
43257
|
-
let r =
|
|
43258
|
-
return
|
|
43259
|
-
}), t = t.replace(/\[([^\]]+)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) =>
|
|
43272
|
+
if (!d$.test(n)) return t;
|
|
43273
|
+
let r = _$(n);
|
|
43274
|
+
return f$.test(n) ? `<video controls preload="metadata" src="${r}"></video>` : r !== n && !p$.test(n) ? `<lg-media src="${r}" alt="${t}"></lg-media>` : `<img src="${r}" alt="${t}" loading="lazy" />`;
|
|
43275
|
+
}), t = t.replace(/\[([^\]]+)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) => d$.test(n) ? `<a href="${n}" target="_blank" rel="noopener noreferrer">${t}</a>` : t), t = t.replace(/<(https?:\/\/[^\s&]+)>/g, "<a href=\"$1\" target=\"_blank\" rel=\"noopener noreferrer\">$1</a>"), t = t.replace(/(^|[\s(])((?:https?:\/\/)[^\s<>()"']+)/g, (e, t, n) => `${t}<a href="${n}" target="_blank" rel="noopener noreferrer">${n}</a>`), t = t.replace(/\*\*([^*]+)\*\*/g, "<strong>$1</strong>"), t = t.replace(/(^|\W)\*([^*\n]+)\*(?=\W|$)/g, "$1<em>$2</em>"), t;
|
|
43260
43276
|
}
|
|
43261
|
-
function
|
|
43262
|
-
let t =
|
|
43277
|
+
function y$(e) {
|
|
43278
|
+
let t = u$(e.trim()).split("\n"), n = [], r = 0;
|
|
43263
43279
|
for (; r < t.length;) {
|
|
43264
43280
|
let e = t[r];
|
|
43265
43281
|
if (!e.trim()) {
|
|
@@ -43274,51 +43290,51 @@ function v$(e) {
|
|
|
43274
43290
|
}
|
|
43275
43291
|
let i = e.match(/^(#{1,6})\s+(.*)$/);
|
|
43276
43292
|
if (i) {
|
|
43277
|
-
n.push(`<h4>${
|
|
43293
|
+
n.push(`<h4>${v$(i[2])}</h4>`), r++;
|
|
43278
43294
|
continue;
|
|
43279
43295
|
}
|
|
43280
43296
|
if (/^\s*[-*]\s+/.test(e)) {
|
|
43281
43297
|
let e = [];
|
|
43282
|
-
for (; r < t.length && /^\s*[-*]\s+/.test(t[r]);) e.push(`<li>${
|
|
43298
|
+
for (; r < t.length && /^\s*[-*]\s+/.test(t[r]);) e.push(`<li>${v$(t[r].replace(/^\s*[-*]\s+/, ""))}</li>`), r++;
|
|
43283
43299
|
n.push(`<ul>${e.join("")}</ul>`);
|
|
43284
43300
|
continue;
|
|
43285
43301
|
}
|
|
43286
43302
|
if (/^\s*\d+[.)]\s+/.test(e)) {
|
|
43287
43303
|
let e = [];
|
|
43288
|
-
for (; r < t.length && /^\s*\d+[.)]\s+/.test(t[r]);) e.push(`<li>${
|
|
43304
|
+
for (; r < t.length && /^\s*\d+[.)]\s+/.test(t[r]);) e.push(`<li>${v$(t[r].replace(/^\s*\d+[.)]\s+/, ""))}</li>`), r++;
|
|
43289
43305
|
n.push(`<ol>${e.join("")}</ol>`);
|
|
43290
43306
|
continue;
|
|
43291
43307
|
}
|
|
43292
43308
|
let a = [];
|
|
43293
43309
|
for (; r < t.length && t[r].trim() && !/^(#{1,6}\s|```|\s*[-*]\s+|\s*\d+[.)]\s+)/.test(t[r]);) a.push(t[r]), r++;
|
|
43294
|
-
n.push(`<p>${
|
|
43310
|
+
n.push(`<p>${v$(a.join("<br />"))}</p>`);
|
|
43295
43311
|
}
|
|
43296
43312
|
return n.join("");
|
|
43297
43313
|
}
|
|
43298
43314
|
//#endregion
|
|
43299
43315
|
//#region src/panel/views/ActivityView.tsx
|
|
43300
43316
|
Br();
|
|
43301
|
-
var
|
|
43302
|
-
function
|
|
43303
|
-
let t = k(() =>
|
|
43317
|
+
var b$ = /*#__PURE__*/ N("<div class=\"lg-md text-text text-[12px] leading-relaxed break-words\">"), x$ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\">"), S$ = /*#__PURE__*/ N("<span class=\"tabular-nums text-[10.5px] text-text-faint\">live · updated "), C$ = /*#__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\">"), w$ = /*#__PURE__*/ N("<div class=\"flex-1 overflow-y-auto\">"), T$ = /*#__PURE__*/ N("<div class=\"min-h-0 flex-1 overflow-y-auto pl-2 pr-3\"><div style=position:relative>"), E$ = /*#__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\">"), D$ = /*#__PURE__*/ N("<button>"), O$ = /*#__PURE__*/ N("<div style=position:absolute;top:0;left:0;width:100%>"), k$ = /*#__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\">"), A$ = /*#__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\">"), j$ = /*#__PURE__*/ N("<span class=\"font-mono text-[11px] text-text-dim shrink-0\">"), M$ = /*#__PURE__*/ N("<span class=\"truncate text-[12px] font-medium text-text\">"), N$ = /*#__PURE__*/ N("<span class=\"text-[11.5px] text-text-faint\">Loading…"), P$ = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\"><span class=\"text-[11px] text-text-dim\">"), F$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2\">"), I$ = /*#__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\">"), L$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2.5\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Comments"), R$ = /*#__PURE__*/ N("<option value=local>Message local Claude Code session"), z$ = /*#__PURE__*/ N("<option value=new>Start NEW agent (@<!>)"), B$ = /*#__PURE__*/ N("<option value=comment>Comment only"), V$ = /*#__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\">"), H$ = /*#__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>"), U$ = /*#__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\">"), W$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-left\">Send"), G$ = /*#__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\">"), K$ = /*#__PURE__*/ N("<option selected>"), q$ = /*#__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>"), J$ = /*#__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\">"), Y$ = /*#__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\">"), X$ = /*#__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\">"), Z$ = /*#__PURE__*/ N("<option>"), Q$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), $$ = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), e1 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[6ch] text-center\">Merge"), t1 = /*#__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\">"), 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><path d=\"M8 2 14 5.5 8 9 2 5.5 8 2Z\"></path><path d=\"M2 10.5 8 14l6-3.5\">"), r1 = /*#__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\">"), i1 = /*#__PURE__*/ N("<option>Steer running agent<!> · "), a1 = /*#__PURE__*/ N("<span class=\"bg-danger inline-block size-2.5 rounded-full\"aria-hidden>"), o1 = /*#__PURE__*/ N("<span class=\"text-[11px] text-text-dim\">"), s1 = /*#__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\">"), c1 = /*#__PURE__*/ N("<p class=\"text-[12px] text-text leading-relaxed whitespace-pre-wrap break-words\">"), l1 = /*#__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\">"), u1 = /*#__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\">"), d1 = /*#__PURE__*/ N("<p class=\"font-mono text-text-faint text-[10.5px] leading-relaxed break-words\">→ <!> "), f1 = /*#__PURE__*/ N("<div>");
|
|
43318
|
+
function p1(e) {
|
|
43319
|
+
let t = k(() => y$(e.text));
|
|
43304
43320
|
return (() => {
|
|
43305
|
-
var e =
|
|
43321
|
+
var e = b$();
|
|
43306
43322
|
return D(() => e.innerHTML = t()), e;
|
|
43307
43323
|
})();
|
|
43308
43324
|
}
|
|
43309
|
-
function
|
|
43325
|
+
function m1() {
|
|
43310
43326
|
let [e, t] = T(null);
|
|
43311
43327
|
return O(() => {
|
|
43312
43328
|
let e = ij();
|
|
43313
43329
|
e && (t(e), sj());
|
|
43314
43330
|
}), (() => {
|
|
43315
|
-
var n =
|
|
43331
|
+
var n = x$();
|
|
43316
43332
|
return P(n, j(M, {
|
|
43317
43333
|
get when() {
|
|
43318
43334
|
return e() === null;
|
|
43319
43335
|
},
|
|
43320
43336
|
get fallback() {
|
|
43321
|
-
return j(
|
|
43337
|
+
return j(_1, {
|
|
43322
43338
|
get issueId() {
|
|
43323
43339
|
return e();
|
|
43324
43340
|
},
|
|
@@ -43326,12 +43342,12 @@ function p1() {
|
|
|
43326
43342
|
});
|
|
43327
43343
|
},
|
|
43328
43344
|
get children() {
|
|
43329
|
-
return j(
|
|
43345
|
+
return j(h1, { onSelect: (e) => t(e) });
|
|
43330
43346
|
}
|
|
43331
43347
|
})), n;
|
|
43332
43348
|
})();
|
|
43333
43349
|
}
|
|
43334
|
-
function
|
|
43350
|
+
function h1(e) {
|
|
43335
43351
|
let t, n = _r(() => ({
|
|
43336
43352
|
queryKey: ["my-issues"],
|
|
43337
43353
|
queryFn: fO,
|
|
@@ -43379,7 +43395,7 @@ function m1(e) {
|
|
|
43379
43395
|
default: return !0;
|
|
43380
43396
|
}
|
|
43381
43397
|
});
|
|
43382
|
-
}), f =
|
|
43398
|
+
}), f = GQ({
|
|
43383
43399
|
get count() {
|
|
43384
43400
|
return d().length;
|
|
43385
43401
|
},
|
|
@@ -43388,13 +43404,13 @@ function m1(e) {
|
|
|
43388
43404
|
overscan: 5
|
|
43389
43405
|
});
|
|
43390
43406
|
return (() => {
|
|
43391
|
-
var r =
|
|
43407
|
+
var r = E$(), a = r.firstChild, p = a.firstChild.nextSibling, m = a.nextSibling;
|
|
43392
43408
|
return P(p, j(M, {
|
|
43393
43409
|
get when() {
|
|
43394
43410
|
return n.dataUpdatedAt > 0;
|
|
43395
43411
|
},
|
|
43396
43412
|
get children() {
|
|
43397
|
-
var e =
|
|
43413
|
+
var e = S$();
|
|
43398
43414
|
return e.firstChild, P(e, () => Wj(n.dataUpdatedAt), null), e;
|
|
43399
43415
|
}
|
|
43400
43416
|
}), null), P(p, j(kj, {
|
|
@@ -43406,12 +43422,12 @@ function m1(e) {
|
|
|
43406
43422
|
title: "Refresh",
|
|
43407
43423
|
"aria-label": "Refresh issues",
|
|
43408
43424
|
get children() {
|
|
43409
|
-
return
|
|
43425
|
+
return C$();
|
|
43410
43426
|
}
|
|
43411
43427
|
}), null), P(m, j(We, {
|
|
43412
43428
|
each: o,
|
|
43413
43429
|
children: (e) => (() => {
|
|
43414
|
-
var t =
|
|
43430
|
+
var t = D$();
|
|
43415
43431
|
return t.$$click = () => c(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 ${s() === e.id ? "bg-accent-soft text-accent" : "text-text-dim hover:bg-surface-2"}`)), t;
|
|
43416
43432
|
})()
|
|
43417
43433
|
}), null), P(m, j(jj, {
|
|
@@ -43426,7 +43442,7 @@ function m1(e) {
|
|
|
43426
43442
|
return n.isError;
|
|
43427
43443
|
},
|
|
43428
43444
|
get children() {
|
|
43429
|
-
var e =
|
|
43445
|
+
var e = w$();
|
|
43430
43446
|
return P(e, j(Vj, {
|
|
43431
43447
|
title: "Connect Linear in Settings",
|
|
43432
43448
|
get children() {
|
|
@@ -43439,7 +43455,7 @@ function m1(e) {
|
|
|
43439
43455
|
return $e(() => !n.isError && !n.isPending)() && d().length === 0;
|
|
43440
43456
|
},
|
|
43441
43457
|
get children() {
|
|
43442
|
-
var e =
|
|
43458
|
+
var e = w$();
|
|
43443
43459
|
return P(e, j(Vj, {
|
|
43444
43460
|
title: "No issues found",
|
|
43445
43461
|
children: "Issues you create will appear here."
|
|
@@ -43450,7 +43466,7 @@ function m1(e) {
|
|
|
43450
43466
|
return $e(() => !n.isError)() && d().length > 0;
|
|
43451
43467
|
},
|
|
43452
43468
|
get children() {
|
|
43453
|
-
var n =
|
|
43469
|
+
var n = T$(), r = n.firstChild, a = t;
|
|
43454
43470
|
return typeof a == "function" ? pt(a, n) : t = n, P(r, j(We, {
|
|
43455
43471
|
get each() {
|
|
43456
43472
|
return f.getVirtualItems();
|
|
@@ -43462,8 +43478,8 @@ function m1(e) {
|
|
|
43462
43478
|
return n();
|
|
43463
43479
|
},
|
|
43464
43480
|
get children() {
|
|
43465
|
-
var r =
|
|
43466
|
-
return P(r, j(
|
|
43481
|
+
var r = O$();
|
|
43482
|
+
return P(r, j(g1, {
|
|
43467
43483
|
get issue() {
|
|
43468
43484
|
return n();
|
|
43469
43485
|
},
|
|
@@ -43482,9 +43498,9 @@ function m1(e) {
|
|
|
43482
43498
|
}), null), r;
|
|
43483
43499
|
})();
|
|
43484
43500
|
}
|
|
43485
|
-
function
|
|
43501
|
+
function g1(e) {
|
|
43486
43502
|
return (() => {
|
|
43487
|
-
var t =
|
|
43503
|
+
var t = k$(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = n.nextSibling, o = a.firstChild;
|
|
43488
43504
|
return t.$$click = () => e.onSelect(e.issue.id), P(n, j(Bj, { get color() {
|
|
43489
43505
|
return e.issue.state.color;
|
|
43490
43506
|
} }), r), P(r, () => e.issue.identifier), P(i, () => e.issue.title), P(a, j(zj, { get children() {
|
|
@@ -43530,7 +43546,7 @@ function h1(e) {
|
|
|
43530
43546
|
}), o), P(o, () => Wj(e.issue.updatedAt)), t;
|
|
43531
43547
|
})();
|
|
43532
43548
|
}
|
|
43533
|
-
function
|
|
43549
|
+
function _1(e) {
|
|
43534
43550
|
let t = sr(), n = _r(() => ({
|
|
43535
43551
|
queryKey: ["issue", e.issueId],
|
|
43536
43552
|
queryFn: () => pO(e.issueId),
|
|
@@ -43633,7 +43649,7 @@ function g1(e) {
|
|
|
43633
43649
|
})), [C, w] = T(!1), E = async () => {
|
|
43634
43650
|
w(!0), y(null);
|
|
43635
43651
|
try {
|
|
43636
|
-
let { block: e, failed: t } = await
|
|
43652
|
+
let { block: e, failed: t } = await l$();
|
|
43637
43653
|
e ? _((t) => `${t ? `${t}\n` : ""}${e}\n`) : t.length || y("Nothing captured yet — pick an element, capture a region, or record first."), t.length && y(t.join(" · "));
|
|
43638
43654
|
} catch (e) {
|
|
43639
43655
|
y(e instanceof Error ? e.message : "Attach failed.");
|
|
@@ -43645,7 +43661,7 @@ function g1(e) {
|
|
|
43645
43661
|
uj("capture");
|
|
43646
43662
|
return;
|
|
43647
43663
|
}
|
|
43648
|
-
x(Date.now()), uj("composer"),
|
|
43664
|
+
x(Date.now()), uj("composer"), YZ().catch(() => uj("capture"));
|
|
43649
43665
|
};
|
|
43650
43666
|
O(() => {
|
|
43651
43667
|
if (cj() !== "composer") return;
|
|
@@ -43681,7 +43697,7 @@ function g1(e) {
|
|
|
43681
43697
|
}, [_e, ve] = T(/* @__PURE__ */ new Set()), [ye, be] = T(null), xe = async (n) => {
|
|
43682
43698
|
be(null), ue(n);
|
|
43683
43699
|
try {
|
|
43684
|
-
await qO(n), ve((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }),
|
|
43700
|
+
await qO(n), ve((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }), QQ();
|
|
43685
43701
|
} catch (e) {
|
|
43686
43702
|
be(e instanceof Error ? `${e.message} (bridge must be running; gh needs merge rights)` : "Merge failed.");
|
|
43687
43703
|
} finally {
|
|
@@ -43728,14 +43744,14 @@ function g1(e) {
|
|
|
43728
43744
|
}) : await CO(e.issueId, t);
|
|
43729
43745
|
},
|
|
43730
43746
|
onSuccess: () => {
|
|
43731
|
-
_(""), y(null), uj("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }),
|
|
43747
|
+
_(""), y(null), uj("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), QQ();
|
|
43732
43748
|
},
|
|
43733
43749
|
onError: (e) => {
|
|
43734
43750
|
y(e.message ?? "Failed to send");
|
|
43735
43751
|
}
|
|
43736
43752
|
})), Oe = k(() => n.data), ke = k(() => r.data ?? []);
|
|
43737
43753
|
return (() => {
|
|
43738
|
-
var t =
|
|
43754
|
+
var t = G$(), r = t.firstChild, a = r.firstChild, f = r.nextSibling, y = f.nextSibling, b = y.firstChild;
|
|
43739
43755
|
return P(a, j(kj, {
|
|
43740
43756
|
variant: "ghost",
|
|
43741
43757
|
class: "size-7 shrink-0 px-0",
|
|
@@ -43746,7 +43762,7 @@ function g1(e) {
|
|
|
43746
43762
|
return e.onBack;
|
|
43747
43763
|
},
|
|
43748
43764
|
get children() {
|
|
43749
|
-
return
|
|
43765
|
+
return A$();
|
|
43750
43766
|
}
|
|
43751
43767
|
}), null), P(a, j(M, {
|
|
43752
43768
|
get when() {
|
|
@@ -43754,10 +43770,10 @@ function g1(e) {
|
|
|
43754
43770
|
},
|
|
43755
43771
|
get children() {
|
|
43756
43772
|
return [(() => {
|
|
43757
|
-
var e =
|
|
43773
|
+
var e = j$();
|
|
43758
43774
|
return P(e, () => Oe().identifier), e;
|
|
43759
43775
|
})(), (() => {
|
|
43760
|
-
var e =
|
|
43776
|
+
var e = M$();
|
|
43761
43777
|
return P(e, () => Oe().title), e;
|
|
43762
43778
|
})()];
|
|
43763
43779
|
}
|
|
@@ -43766,14 +43782,14 @@ function g1(e) {
|
|
|
43766
43782
|
return $e(() => !!n.isPending)() && !Oe();
|
|
43767
43783
|
},
|
|
43768
43784
|
get children() {
|
|
43769
|
-
return
|
|
43785
|
+
return N$();
|
|
43770
43786
|
}
|
|
43771
43787
|
}), null), P(r, j(M, {
|
|
43772
43788
|
get when() {
|
|
43773
43789
|
return Oe();
|
|
43774
43790
|
},
|
|
43775
43791
|
get children() {
|
|
43776
|
-
var e =
|
|
43792
|
+
var e = P$(), t = e.firstChild;
|
|
43777
43793
|
return P(e, j(Bj, { get color() {
|
|
43778
43794
|
return Oe().state.color;
|
|
43779
43795
|
} }), t), P(t, () => Oe().state.name), P(e, j(Ij, {
|
|
@@ -43791,7 +43807,7 @@ function g1(e) {
|
|
|
43791
43807
|
children: (e) => {
|
|
43792
43808
|
let t = () => h(e());
|
|
43793
43809
|
return (() => {
|
|
43794
|
-
var n =
|
|
43810
|
+
var n = X$(), r = n.firstChild, i = r.firstChild.firstChild, a = i.nextSibling.nextSibling.nextSibling;
|
|
43795
43811
|
a.firstChild;
|
|
43796
43812
|
var s = r.nextSibling, f = s.firstChild, m = f.firstChild, h = m.nextSibling;
|
|
43797
43813
|
return P(i, j(Fj, { size: 12 })), P(a, () => Wj(e().startedAt), null), P(r, j(Nj, {
|
|
@@ -43808,7 +43824,7 @@ function g1(e) {
|
|
|
43808
43824
|
return [j(We, {
|
|
43809
43825
|
each: o,
|
|
43810
43826
|
children: (t) => (() => {
|
|
43811
|
-
var n =
|
|
43827
|
+
var n = Z$();
|
|
43812
43828
|
return P(n, () => t.label), D(() => n.selected = (e().pendingModel ?? e().model ?? "") === t.id), D(() => n.value = t.id), n;
|
|
43813
43829
|
})()
|
|
43814
43830
|
}), j(M, {
|
|
@@ -43816,7 +43832,7 @@ function g1(e) {
|
|
|
43816
43832
|
return !o.some((t) => t.id === (e().pendingModel ?? e().model ?? ""));
|
|
43817
43833
|
},
|
|
43818
43834
|
get children() {
|
|
43819
|
-
var t =
|
|
43835
|
+
var t = K$();
|
|
43820
43836
|
return P(t, () => e().pendingModel ?? e().model), D(() => t.value = e().pendingModel ?? e().model ?? ""), t;
|
|
43821
43837
|
}
|
|
43822
43838
|
})];
|
|
@@ -43846,7 +43862,7 @@ function g1(e) {
|
|
|
43846
43862
|
"aria-label": "Stop session",
|
|
43847
43863
|
onClick: () => u.mutate(e().id),
|
|
43848
43864
|
get children() {
|
|
43849
|
-
return
|
|
43865
|
+
return q$();
|
|
43850
43866
|
}
|
|
43851
43867
|
});
|
|
43852
43868
|
}
|
|
@@ -43867,7 +43883,7 @@ function g1(e) {
|
|
|
43867
43883
|
"aria-label": "Resume session",
|
|
43868
43884
|
onClick: () => l.mutate(e().id),
|
|
43869
43885
|
get children() {
|
|
43870
|
-
return
|
|
43886
|
+
return J$();
|
|
43871
43887
|
}
|
|
43872
43888
|
});
|
|
43873
43889
|
}
|
|
@@ -43885,7 +43901,7 @@ function g1(e) {
|
|
|
43885
43901
|
"aria-label": "Copy resume command",
|
|
43886
43902
|
onClick: () => void p(e()),
|
|
43887
43903
|
get children() {
|
|
43888
|
-
return
|
|
43904
|
+
return Y$();
|
|
43889
43905
|
}
|
|
43890
43906
|
});
|
|
43891
43907
|
}
|
|
@@ -43897,14 +43913,14 @@ function g1(e) {
|
|
|
43897
43913
|
return ke().length > 0;
|
|
43898
43914
|
},
|
|
43899
43915
|
get children() {
|
|
43900
|
-
var e =
|
|
43916
|
+
var e = F$();
|
|
43901
43917
|
return P(e, j(We, {
|
|
43902
43918
|
get each() {
|
|
43903
43919
|
return ke();
|
|
43904
43920
|
},
|
|
43905
43921
|
children: (e) => (() => {
|
|
43906
|
-
var t =
|
|
43907
|
-
return P(t, j(
|
|
43922
|
+
var t = Q$();
|
|
43923
|
+
return P(t, j(v1, { session: e }), null), P(t, j(M, {
|
|
43908
43924
|
get when() {
|
|
43909
43925
|
return $e(() => !!(/complete/i.test(e.status) && n.data?.state.type === "started"))() && !/review/i.test(n.data?.state.name ?? "");
|
|
43910
43926
|
},
|
|
@@ -43929,7 +43945,7 @@ function g1(e) {
|
|
|
43929
43945
|
return $e(() => !!Oe())() && Oe().attachments.length > 0;
|
|
43930
43946
|
},
|
|
43931
43947
|
get children() {
|
|
43932
|
-
var e =
|
|
43948
|
+
var e = I$(), t = e.firstChild.nextSibling;
|
|
43933
43949
|
return P(t, j(We, {
|
|
43934
43950
|
get each() {
|
|
43935
43951
|
return Oe().attachments;
|
|
@@ -43937,7 +43953,7 @@ function g1(e) {
|
|
|
43937
43953
|
children: (e) => {
|
|
43938
43954
|
let t = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i.test(e.url);
|
|
43939
43955
|
return [(() => {
|
|
43940
|
-
var n =
|
|
43956
|
+
var n = t1(), r = n.firstChild;
|
|
43941
43957
|
return P(r, () => e.title), P(n, j(M, {
|
|
43942
43958
|
get when() {
|
|
43943
43959
|
return t && se.data?.previews[e.url];
|
|
@@ -43991,10 +44007,10 @@ function g1(e) {
|
|
|
43991
44007
|
return me().has(e.url);
|
|
43992
44008
|
},
|
|
43993
44009
|
get fallback() {
|
|
43994
|
-
return
|
|
44010
|
+
return n1();
|
|
43995
44011
|
},
|
|
43996
44012
|
get children() {
|
|
43997
|
-
return
|
|
44013
|
+
return $$();
|
|
43998
44014
|
}
|
|
43999
44015
|
});
|
|
44000
44016
|
}
|
|
@@ -44009,7 +44025,7 @@ function g1(e) {
|
|
|
44009
44025
|
},
|
|
44010
44026
|
onClick: () => void xe(e.url),
|
|
44011
44027
|
get children() {
|
|
44012
|
-
return
|
|
44028
|
+
return e1();
|
|
44013
44029
|
}
|
|
44014
44030
|
})];
|
|
44015
44031
|
}
|
|
@@ -44025,7 +44041,7 @@ function g1(e) {
|
|
|
44025
44041
|
return me().has(e.url);
|
|
44026
44042
|
},
|
|
44027
44043
|
get children() {
|
|
44028
|
-
return j(
|
|
44044
|
+
return j(s$, {
|
|
44029
44045
|
get url() {
|
|
44030
44046
|
return e.url;
|
|
44031
44047
|
},
|
|
@@ -44052,7 +44068,7 @@ function g1(e) {
|
|
|
44052
44068
|
return $e(() => !!Oe())() && Oe().comments.length > 0;
|
|
44053
44069
|
},
|
|
44054
44070
|
get children() {
|
|
44055
|
-
var e =
|
|
44071
|
+
var e = L$();
|
|
44056
44072
|
return e.firstChild, P(e, j(Ge, {
|
|
44057
44073
|
get each() {
|
|
44058
44074
|
return Oe().comments;
|
|
@@ -44060,7 +44076,7 @@ function g1(e) {
|
|
|
44060
44076
|
children: (e) => {
|
|
44061
44077
|
let t = e();
|
|
44062
44078
|
return (() => {
|
|
44063
|
-
var e =
|
|
44079
|
+
var e = r1(), n = e.firstChild, r = n.firstChild, i = r.nextSibling;
|
|
44064
44080
|
return P(r, () => t.user?.displayName ?? t.user?.name ?? "Unknown"), P(n, j(M, {
|
|
44065
44081
|
get when() {
|
|
44066
44082
|
return t.user?.app;
|
|
@@ -44068,7 +44084,7 @@ function g1(e) {
|
|
|
44068
44084
|
get children() {
|
|
44069
44085
|
return j(zj, { children: "agent" });
|
|
44070
44086
|
}
|
|
44071
|
-
}), i), P(i, () => Wj(t.createdAt)), P(e, j(
|
|
44087
|
+
}), i), P(i, () => Wj(t.createdAt)), P(e, j(p1, { get text() {
|
|
44072
44088
|
return t.body;
|
|
44073
44089
|
} }), null), e;
|
|
44074
44090
|
})();
|
|
@@ -44131,7 +44147,7 @@ function g1(e) {
|
|
|
44131
44147
|
return m();
|
|
44132
44148
|
},
|
|
44133
44149
|
get children() {
|
|
44134
|
-
var e =
|
|
44150
|
+
var e = R$();
|
|
44135
44151
|
return D(() => e.selected = Ce() === "local"), e;
|
|
44136
44152
|
}
|
|
44137
44153
|
}),
|
|
@@ -44140,7 +44156,7 @@ function g1(e) {
|
|
|
44140
44156
|
return Se();
|
|
44141
44157
|
},
|
|
44142
44158
|
children: (e, t) => (() => {
|
|
44143
|
-
var n =
|
|
44159
|
+
var n = i1(), r = n.firstChild.nextSibling;
|
|
44144
44160
|
return r.nextSibling, P(n, (() => {
|
|
44145
44161
|
var e = $e(() => Se().length > 1);
|
|
44146
44162
|
return () => e() ? ` #${t() + 1}` : "";
|
|
@@ -44152,12 +44168,12 @@ function g1(e) {
|
|
|
44152
44168
|
return i.data?.cursorAgentId;
|
|
44153
44169
|
},
|
|
44154
44170
|
get children() {
|
|
44155
|
-
var e =
|
|
44171
|
+
var e = z$(), t = e.firstChild.nextSibling;
|
|
44156
44172
|
return t.nextSibling, P(e, () => i.data?.cursorAgentName ?? "Cursor", t), D(() => e.selected = Ce() === "new"), e;
|
|
44157
44173
|
}
|
|
44158
44174
|
}),
|
|
44159
44175
|
(() => {
|
|
44160
|
-
var e =
|
|
44176
|
+
var e = B$();
|
|
44161
44177
|
return D(() => e.selected = Ce() === "comment"), e;
|
|
44162
44178
|
})()
|
|
44163
44179
|
];
|
|
@@ -44173,7 +44189,7 @@ function g1(e) {
|
|
|
44173
44189
|
"aria-label": "Pick element for reply",
|
|
44174
44190
|
onClick: ee,
|
|
44175
44191
|
get children() {
|
|
44176
|
-
return
|
|
44192
|
+
return V$();
|
|
44177
44193
|
}
|
|
44178
44194
|
}), null), P(b, j(kj, {
|
|
44179
44195
|
variant: "ghost",
|
|
@@ -44191,10 +44207,10 @@ function g1(e) {
|
|
|
44191
44207
|
return te().phase === "recording";
|
|
44192
44208
|
},
|
|
44193
44209
|
get fallback() {
|
|
44194
|
-
return
|
|
44210
|
+
return a1();
|
|
44195
44211
|
},
|
|
44196
44212
|
get children() {
|
|
44197
|
-
return
|
|
44213
|
+
return H$();
|
|
44198
44214
|
}
|
|
44199
44215
|
});
|
|
44200
44216
|
}
|
|
@@ -44208,7 +44224,7 @@ function g1(e) {
|
|
|
44208
44224
|
"aria-label": "Attach captures",
|
|
44209
44225
|
onClick: () => void E(),
|
|
44210
44226
|
get children() {
|
|
44211
|
-
return
|
|
44227
|
+
return U$();
|
|
44212
44228
|
}
|
|
44213
44229
|
}), null), P(b, j(kj, {
|
|
44214
44230
|
class: "min-w-[52px] shrink-0",
|
|
@@ -44221,12 +44237,12 @@ function g1(e) {
|
|
|
44221
44237
|
},
|
|
44222
44238
|
onClick: () => De.mutate(),
|
|
44223
44239
|
get children() {
|
|
44224
|
-
return
|
|
44240
|
+
return W$();
|
|
44225
44241
|
}
|
|
44226
44242
|
}), null), t;
|
|
44227
44243
|
})();
|
|
44228
44244
|
}
|
|
44229
|
-
function
|
|
44245
|
+
function v1(e) {
|
|
44230
44246
|
let t = k(() => {
|
|
44231
44247
|
let t = e.session.status;
|
|
44232
44248
|
return /complete|done/i.test(t) ? "var(--color-success)" : /await|pending|elicit/i.test(t) ? "var(--color-warn)" : "var(--color-accent)";
|
|
@@ -44242,7 +44258,7 @@ function _1(e) {
|
|
|
44242
44258
|
o && (o.scrollTop = o.scrollHeight);
|
|
44243
44259
|
});
|
|
44244
44260
|
}), (() => {
|
|
44245
|
-
var s =
|
|
44261
|
+
var s = u1(), l = s.firstChild, u = l.firstChild;
|
|
44246
44262
|
return P(l, j(M, {
|
|
44247
44263
|
get when() {
|
|
44248
44264
|
return /active|pending/i.test(e.session.status);
|
|
@@ -44262,7 +44278,7 @@ function _1(e) {
|
|
|
44262
44278
|
return e.session.appUser?.displayName;
|
|
44263
44279
|
},
|
|
44264
44280
|
get children() {
|
|
44265
|
-
var t =
|
|
44281
|
+
var t = o1();
|
|
44266
44282
|
return P(t, () => e.session.appUser.displayName), t;
|
|
44267
44283
|
}
|
|
44268
44284
|
}), u), P(u, () => Wj(e.session.updatedAt)), P(l, j(M, {
|
|
@@ -44290,7 +44306,7 @@ function _1(e) {
|
|
|
44290
44306
|
},
|
|
44291
44307
|
onClick: () => a((e) => !e),
|
|
44292
44308
|
get children() {
|
|
44293
|
-
var e =
|
|
44309
|
+
var e = s1();
|
|
44294
44310
|
return D((t) => dt(e, "transform", i() ? "rotate(180deg)" : "none")), e;
|
|
44295
44311
|
}
|
|
44296
44312
|
}), null), P(s, j(M, {
|
|
@@ -44298,7 +44314,7 @@ function _1(e) {
|
|
|
44298
44314
|
return e.session.summary;
|
|
44299
44315
|
},
|
|
44300
44316
|
get children() {
|
|
44301
|
-
var t =
|
|
44317
|
+
var t = c1();
|
|
44302
44318
|
return P(t, () => e.session.summary), t;
|
|
44303
44319
|
}
|
|
44304
44320
|
}), null), P(s, j(M, {
|
|
@@ -44306,7 +44322,7 @@ function _1(e) {
|
|
|
44306
44322
|
return r().length > 0;
|
|
44307
44323
|
},
|
|
44308
44324
|
get children() {
|
|
44309
|
-
var e =
|
|
44325
|
+
var e = l1();
|
|
44310
44326
|
e.addEventListener("scroll", c);
|
|
44311
44327
|
var t = o;
|
|
44312
44328
|
return typeof t == "function" ? pt(t, e) : o = e, P(e, j(Ge, {
|
|
@@ -44319,14 +44335,14 @@ function _1(e) {
|
|
|
44319
44335
|
},
|
|
44320
44336
|
get fallback() {
|
|
44321
44337
|
return (() => {
|
|
44322
|
-
var t =
|
|
44323
|
-
return P(t, j(
|
|
44338
|
+
var t = f1();
|
|
44339
|
+
return P(t, j(p1, { get text() {
|
|
44324
44340
|
return e().content.body ?? "";
|
|
44325
44341
|
} })), D(() => st(t, `lg-md text-[11.5px] leading-relaxed break-words ${e().content.__typename === "AgentActivityErrorContent" ? "text-danger" : "text-text"}`)), t;
|
|
44326
44342
|
})();
|
|
44327
44343
|
},
|
|
44328
44344
|
get children() {
|
|
44329
|
-
var t =
|
|
44345
|
+
var t = d1(), n = t.firstChild.nextSibling;
|
|
44330
44346
|
return n.nextSibling, P(t, () => e().content.action, n), P(t, () => e().content.parameter, null), t;
|
|
44331
44347
|
}
|
|
44332
44348
|
})
|
|
@@ -44338,8 +44354,8 @@ function _1(e) {
|
|
|
44338
44354
|
rt(["click"]);
|
|
44339
44355
|
//#endregion
|
|
44340
44356
|
//#region src/panel/views/CloudView.tsx
|
|
44341
|
-
var
|
|
44342
|
-
function
|
|
44357
|
+
var y1 = /*#__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\">"), b1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), x1 = /*#__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\">"), S1 = /*#__PURE__*/ N("<button>"), C1 = /*#__PURE__*/ N("<div class=\"grid place-items-center py-10\">"), w1 = /*#__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\">"), T1 = /*#__PURE__*/ N("<p class=\"text-text-dim line-clamp-2 cursor-pointer text-[11.5px] leading-snug break-words\">"), E1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[11px]\">"), D1 = /*#__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>"), O1 = /*#__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>"), k1 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), A1 = /*#__PURE__*/ N("<span class=\"text-text-dim text-[12.5px]\">Conversation session");
|
|
44358
|
+
function j1() {
|
|
44343
44359
|
let e = _r(() => ({
|
|
44344
44360
|
queryKey: ["cloud-sessions"],
|
|
44345
44361
|
queryFn: gO,
|
|
@@ -44392,7 +44408,7 @@ function A1() {
|
|
|
44392
44408
|
return !c();
|
|
44393
44409
|
},
|
|
44394
44410
|
get fallback() {
|
|
44395
|
-
return j(
|
|
44411
|
+
return j(_1, {
|
|
44396
44412
|
get issueId() {
|
|
44397
44413
|
return c();
|
|
44398
44414
|
},
|
|
@@ -44400,11 +44416,11 @@ function A1() {
|
|
|
44400
44416
|
});
|
|
44401
44417
|
},
|
|
44402
44418
|
get children() {
|
|
44403
|
-
var c =
|
|
44419
|
+
var c = x1(), u = c.firstChild, d = u.firstChild, f = d.firstChild, p = d.nextSibling, m = p.firstChild, h = u.nextSibling, g = h.nextSibling;
|
|
44404
44420
|
return P(d, j(Pj, { size: 13 }), f), P(p, s, m), P(p, () => Wj(e.dataUpdatedAt || Date.now()), null), P(h, j(We, {
|
|
44405
44421
|
each: t,
|
|
44406
44422
|
children: (e) => (() => {
|
|
44407
|
-
var t =
|
|
44423
|
+
var t = S1();
|
|
44408
44424
|
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;
|
|
44409
44425
|
})()
|
|
44410
44426
|
}), null), P(h, j(kj, {
|
|
@@ -44416,7 +44432,7 @@ function A1() {
|
|
|
44416
44432
|
"aria-label": "Refresh sessions",
|
|
44417
44433
|
onClick: () => void e.refetch(),
|
|
44418
44434
|
get children() {
|
|
44419
|
-
return
|
|
44435
|
+
return y1();
|
|
44420
44436
|
}
|
|
44421
44437
|
}), null), P(g, j(M, {
|
|
44422
44438
|
get when() {
|
|
@@ -44429,7 +44445,7 @@ function A1() {
|
|
|
44429
44445
|
},
|
|
44430
44446
|
get fallback() {
|
|
44431
44447
|
return (() => {
|
|
44432
|
-
var e =
|
|
44448
|
+
var e = C1();
|
|
44433
44449
|
return P(e, j(Aj, {})), e;
|
|
44434
44450
|
})();
|
|
44435
44451
|
},
|
|
@@ -44442,20 +44458,20 @@ function A1() {
|
|
|
44442
44458
|
});
|
|
44443
44459
|
},
|
|
44444
44460
|
get children() {
|
|
44445
|
-
var e =
|
|
44461
|
+
var e = b1();
|
|
44446
44462
|
return P(e, j(Ge, {
|
|
44447
44463
|
get each() {
|
|
44448
44464
|
return i();
|
|
44449
44465
|
},
|
|
44450
44466
|
children: (e) => (() => {
|
|
44451
|
-
var t =
|
|
44467
|
+
var t = O1(), n = t.firstChild, r = n.firstChild, i = n.nextSibling, s = i.firstChild;
|
|
44452
44468
|
return P(n, j(M, {
|
|
44453
44469
|
get when() {
|
|
44454
44470
|
return /active|pending/i.test(e().status);
|
|
44455
44471
|
},
|
|
44456
44472
|
get fallback() {
|
|
44457
44473
|
return (() => {
|
|
44458
|
-
var t =
|
|
44474
|
+
var t = k1();
|
|
44459
44475
|
return D((n) => dt(t, "background", a(e().status).color)), t;
|
|
44460
44476
|
})();
|
|
44461
44477
|
},
|
|
@@ -44467,10 +44483,10 @@ function A1() {
|
|
|
44467
44483
|
return e().issue;
|
|
44468
44484
|
},
|
|
44469
44485
|
get fallback() {
|
|
44470
|
-
return
|
|
44486
|
+
return A1();
|
|
44471
44487
|
},
|
|
44472
44488
|
get children() {
|
|
44473
|
-
var t =
|
|
44489
|
+
var t = w1(), n = t.firstChild, r = n.nextSibling;
|
|
44474
44490
|
return t.$$click = () => l(e().issue.id), P(n, () => e().issue.identifier), P(r, () => e().issue.title), t;
|
|
44475
44491
|
}
|
|
44476
44492
|
}), r), P(r, () => Wj(e().updatedAt)), P(t, j(M, {
|
|
@@ -44478,7 +44494,7 @@ function A1() {
|
|
|
44478
44494
|
return o(e());
|
|
44479
44495
|
},
|
|
44480
44496
|
get children() {
|
|
44481
|
-
var t =
|
|
44497
|
+
var t = T1();
|
|
44482
44498
|
return t.$$click = () => e().issue && l(e().issue.id), P(t, () => o(e())), t;
|
|
44483
44499
|
}
|
|
44484
44500
|
}), i), P(i, j(zj, {
|
|
@@ -44496,7 +44512,7 @@ function A1() {
|
|
|
44496
44512
|
return [j(Bj, { get color() {
|
|
44497
44513
|
return e().issue.state.color;
|
|
44498
44514
|
} }), (() => {
|
|
44499
|
-
var t =
|
|
44515
|
+
var t = E1();
|
|
44500
44516
|
return P(t, () => e().issue.state.name), t;
|
|
44501
44517
|
})()];
|
|
44502
44518
|
}
|
|
@@ -44512,7 +44528,7 @@ function A1() {
|
|
|
44512
44528
|
"aria-label": "Open thread",
|
|
44513
44529
|
onClick: () => l(e().issue.id),
|
|
44514
44530
|
get children() {
|
|
44515
|
-
return
|
|
44531
|
+
return D1();
|
|
44516
44532
|
}
|
|
44517
44533
|
}), j(Ij, {
|
|
44518
44534
|
get href() {
|
|
@@ -44533,8 +44549,8 @@ function A1() {
|
|
|
44533
44549
|
rt(["click"]);
|
|
44534
44550
|
//#endregion
|
|
44535
44551
|
//#region src/panel/views/RunningView.tsx
|
|
44536
|
-
var
|
|
44537
|
-
function
|
|
44552
|
+
var M1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), N1 = /*#__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\">"), P1 = /*#__PURE__*/ N("<span class=\"font-mono text-text-dim shrink-0 text-[11px]\">"), F1 = /*#__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>"), I1 = /*#__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>");
|
|
44553
|
+
function L1() {
|
|
44538
44554
|
let e = _r(() => ({
|
|
44539
44555
|
queryKey: ["cloud-sessions"],
|
|
44540
44556
|
queryFn: gO,
|
|
@@ -44575,7 +44591,7 @@ function I1() {
|
|
|
44575
44591
|
return !i();
|
|
44576
44592
|
},
|
|
44577
44593
|
get fallback() {
|
|
44578
|
-
return j(
|
|
44594
|
+
return j(_1, {
|
|
44579
44595
|
get issueId() {
|
|
44580
44596
|
return i();
|
|
44581
44597
|
},
|
|
@@ -44583,7 +44599,7 @@ function I1() {
|
|
|
44583
44599
|
});
|
|
44584
44600
|
},
|
|
44585
44601
|
get children() {
|
|
44586
|
-
var e =
|
|
44602
|
+
var e = N1(), t = e.firstChild, n = t.firstChild.nextSibling, i = n.firstChild, c = i.nextSibling;
|
|
44587
44603
|
c.nextSibling;
|
|
44588
44604
|
var l = t.nextSibling;
|
|
44589
44605
|
return P(n, () => r().length, i), P(n, () => r().length === 1 ? "" : "s", c), P(l, j(M, {
|
|
@@ -44597,13 +44613,13 @@ function I1() {
|
|
|
44597
44613
|
});
|
|
44598
44614
|
},
|
|
44599
44615
|
get children() {
|
|
44600
|
-
var e =
|
|
44616
|
+
var e = M1();
|
|
44601
44617
|
return P(e, j(Ge, {
|
|
44602
44618
|
get each() {
|
|
44603
44619
|
return r();
|
|
44604
44620
|
},
|
|
44605
44621
|
children: (e) => (() => {
|
|
44606
|
-
var t =
|
|
44622
|
+
var t = I1(), n = t.firstChild, r = n.firstChild, i = r.firstChild, c = r.nextSibling, l = n.nextSibling, u = l.nextSibling, d = u.firstChild;
|
|
44607
44623
|
return P(n, j(Aj, { size: 12 }), r), P(n, j(zj, {
|
|
44608
44624
|
get title() {
|
|
44609
44625
|
return e().kind === "cloud" ? "Cursor cloud agent" : "Local Claude Code";
|
|
@@ -44619,7 +44635,7 @@ function I1() {
|
|
|
44619
44635
|
return e().kind === "cloud";
|
|
44620
44636
|
},
|
|
44621
44637
|
get children() {
|
|
44622
|
-
var t =
|
|
44638
|
+
var t = P1();
|
|
44623
44639
|
return P(t, () => e().session.issue?.identifier), t;
|
|
44624
44640
|
}
|
|
44625
44641
|
}), i), P(i, (() => {
|
|
@@ -44660,7 +44676,7 @@ function I1() {
|
|
|
44660
44676
|
t.kind === "cloud" && t.session.issue ? a(t.session.issue.id) : t.kind === "local" && oj("local");
|
|
44661
44677
|
},
|
|
44662
44678
|
get children() {
|
|
44663
|
-
return
|
|
44679
|
+
return F1();
|
|
44664
44680
|
}
|
|
44665
44681
|
}), null), D(() => it(r, "title", e().kind === "cloud" ? "View the thread here" : "Open the Local tab")), t;
|
|
44666
44682
|
})()
|
|
@@ -44673,7 +44689,7 @@ function I1() {
|
|
|
44673
44689
|
//#endregion
|
|
44674
44690
|
//#region src/panel/views/LocalView.tsx
|
|
44675
44691
|
rt(["click"]), Br();
|
|
44676
|
-
var
|
|
44692
|
+
var R1 = /*#__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\">"), z1 = /*#__PURE__*/ N("<div><p></p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), B1 = /*#__PURE__*/ N("<p>"), V1 = /*#__PURE__*/ N("<span class=\"text-text-faint max-w-[55%] truncate text-[10.5px] tabular-nums\"> running<!> · "), H1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), U1 = /*#__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\">"), W1 = /*#__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"), G1 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">ctx <!> · out "), K1 = /*#__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]\">"), q1 = /*#__PURE__*/ N("<option selected>"), J1 = /*#__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\">"), Y1 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), X1 = /*#__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\">"), Z1 = /*#__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]\">"), $1 = /*#__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>−"), e0 = /*#__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\">"), 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=2.2></circle><path d=\"M8 1v3M8 12v3M1 8h3M12 8h3\">"), n0 = /*#__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\">"), r0 = /*#__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\">"), i0 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Send"), a0 = /*#__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]\">"), o0 = /*#__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\">"), s0 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), c0 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\">"), l0 = /*#__PURE__*/ N("<option>"), u0 = /*#__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>"), d0 = /*#__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\">"), f0 = /*#__PURE__*/ N("<span class=text-success>+"), p0 = /*#__PURE__*/ N("<span class=text-danger>−"), m0 = /*#__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\">"), h0 = /*#__PURE__*/ N("<span class=text-text-faint>bin"), g0 = /*#__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"), _0 = /*#__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\">"), v0 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[11px]\">Waiting for output…"), y0 = [
|
|
44677
44693
|
{
|
|
44678
44694
|
id: "",
|
|
44679
44695
|
label: "Default model"
|
|
@@ -44695,13 +44711,13 @@ var L1 = /*#__PURE__*/ N("<div class=\"border-accent/40 bg-accent-soft self-end
|
|
|
44695
44711
|
label: "Haiku"
|
|
44696
44712
|
}
|
|
44697
44713
|
];
|
|
44698
|
-
function
|
|
44714
|
+
function b0(e, t) {
|
|
44699
44715
|
let n = e.split(".").map(Number), r = t.split(".").map(Number);
|
|
44700
44716
|
for (let e = 0; e < 3; e++) if ((n[e] ?? 0) !== (r[e] ?? 0)) return (n[e] ?? 0) < (r[e] ?? 0);
|
|
44701
44717
|
return !1;
|
|
44702
44718
|
}
|
|
44703
|
-
var
|
|
44704
|
-
function
|
|
44719
|
+
var x0 = (e) => e == null ? "–" : e >= 1e3 ? `${(e / 1e3).toFixed(e >= 1e5 ? 0 : 1)}k` : String(e);
|
|
44720
|
+
function S0() {
|
|
44705
44721
|
let e = sr(), t = _r(() => ({
|
|
44706
44722
|
queryKey: ["bridge-health"],
|
|
44707
44723
|
queryFn: MO,
|
|
@@ -44739,7 +44755,7 @@ function x0() {
|
|
|
44739
44755
|
queryFn: Dr,
|
|
44740
44756
|
enabled: cj() === "local"
|
|
44741
44757
|
})), v = () => {
|
|
44742
|
-
g(Date.now()), uj("local"),
|
|
44758
|
+
g(Date.now()), uj("local"), YZ().catch(() => uj("capture"));
|
|
44743
44759
|
};
|
|
44744
44760
|
O(() => {
|
|
44745
44761
|
if (cj() !== "local") return;
|
|
@@ -44754,7 +44770,7 @@ function x0() {
|
|
|
44754
44770
|
let y = async () => {
|
|
44755
44771
|
m(!0);
|
|
44756
44772
|
try {
|
|
44757
|
-
let { block: e, failed: t } = await
|
|
44773
|
+
let { block: e, failed: t } = await l$();
|
|
44758
44774
|
e && f((t) => `${t ? `${t}\n` : ""}${e}\n`), t.length && f((e) => `${e}\n<!-- upload issues: ${t.join(" · ")} -->\n`);
|
|
44759
44775
|
} finally {
|
|
44760
44776
|
m(!1);
|
|
@@ -44786,20 +44802,20 @@ function x0() {
|
|
|
44786
44802
|
await navigator.clipboard.writeText(YO(e)), te(e.id), setTimeout(() => te(null), 1800);
|
|
44787
44803
|
} catch {}
|
|
44788
44804
|
}, ne = (e) => e === "running" ? "var(--color-accent)" : e === "done" ? "var(--color-success)" : e === "stopped" ? "var(--color-warn)" : "var(--color-danger)", re = (e) => {
|
|
44789
|
-
let t = e.line.kind, n = k(() =>
|
|
44805
|
+
let t = e.line.kind, n = k(() => y$(e.line.text));
|
|
44790
44806
|
return t === "user" ? (() => {
|
|
44791
|
-
var e =
|
|
44807
|
+
var e = R1(), t = e.firstChild.nextSibling;
|
|
44792
44808
|
return D(() => t.innerHTML = n()), e;
|
|
44793
44809
|
})() : t === "assistant" || t === "result" ? (() => {
|
|
44794
|
-
var e =
|
|
44810
|
+
var e = z1(), r = e.firstChild, i = r.nextSibling;
|
|
44795
44811
|
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;
|
|
44796
44812
|
})() : (() => {
|
|
44797
|
-
var n =
|
|
44813
|
+
var n = B1();
|
|
44798
44814
|
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;
|
|
44799
44815
|
})();
|
|
44800
44816
|
};
|
|
44801
44817
|
return (() => {
|
|
44802
|
-
var e =
|
|
44818
|
+
var e = U1(), a = e.firstChild;
|
|
44803
44819
|
a.firstChild;
|
|
44804
44820
|
var l = a.nextSibling;
|
|
44805
44821
|
return P(a, j(M, {
|
|
@@ -44815,7 +44831,7 @@ function x0() {
|
|
|
44815
44831
|
get children() {
|
|
44816
44832
|
return [j(M, {
|
|
44817
44833
|
get when() {
|
|
44818
|
-
return
|
|
44834
|
+
return b0(t.data.version, "0.15.1");
|
|
44819
44835
|
},
|
|
44820
44836
|
get children() {
|
|
44821
44837
|
return j(zj, {
|
|
@@ -44831,7 +44847,7 @@ function x0() {
|
|
|
44831
44847
|
});
|
|
44832
44848
|
}
|
|
44833
44849
|
}), (() => {
|
|
44834
|
-
var e =
|
|
44850
|
+
var e = V1(), r = e.firstChild, i = r.nextSibling;
|
|
44835
44851
|
return i.nextSibling, P(e, () => t.data.active, r), P(e, () => {
|
|
44836
44852
|
let e = (n.data ?? []).reduce((e, t) => e + (t.usage?.costUsd ?? 0), 0);
|
|
44837
44853
|
return e > 0 ? ` · Σ $${e.toFixed(2)}` : "";
|
|
@@ -44848,7 +44864,7 @@ function x0() {
|
|
|
44848
44864
|
get children() {
|
|
44849
44865
|
return [
|
|
44850
44866
|
"Start it in your repo's terminal:",
|
|
44851
|
-
|
|
44867
|
+
W1(),
|
|
44852
44868
|
"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."
|
|
44853
44869
|
];
|
|
44854
44870
|
}
|
|
@@ -44866,20 +44882,20 @@ function x0() {
|
|
|
44866
44882
|
});
|
|
44867
44883
|
},
|
|
44868
44884
|
get children() {
|
|
44869
|
-
var e =
|
|
44885
|
+
var e = H1();
|
|
44870
44886
|
return P(e, j(Ge, {
|
|
44871
44887
|
get each() {
|
|
44872
44888
|
return n.data;
|
|
44873
44889
|
},
|
|
44874
44890
|
children: (e) => (() => {
|
|
44875
|
-
var t =
|
|
44891
|
+
var t = o0(), n = t.firstChild, a = n.firstChild, l = a.nextSibling, m = n.nextSibling, h = m.nextSibling, g = h.nextSibling;
|
|
44876
44892
|
return P(n, j(M, {
|
|
44877
44893
|
get when() {
|
|
44878
44894
|
return e().status === "running";
|
|
44879
44895
|
},
|
|
44880
44896
|
get fallback() {
|
|
44881
44897
|
return (() => {
|
|
44882
|
-
var t =
|
|
44898
|
+
var t = s0();
|
|
44883
44899
|
return D((n) => dt(t, "background", ne(e().status))), t;
|
|
44884
44900
|
})();
|
|
44885
44901
|
},
|
|
@@ -44932,8 +44948,8 @@ function x0() {
|
|
|
44932
44948
|
return e().usage;
|
|
44933
44949
|
},
|
|
44934
44950
|
get children() {
|
|
44935
|
-
var t =
|
|
44936
|
-
return n.nextSibling, P(t, () =>
|
|
44951
|
+
var t = G1(), n = t.firstChild.nextSibling;
|
|
44952
|
+
return n.nextSibling, P(t, () => x0(e().usage.contextTokens), n), P(t, () => x0(e().usage.outputTokens), null), P(t, (() => {
|
|
44937
44953
|
var t = $e(() => !!e().usage.costUsd);
|
|
44938
44954
|
return () => t() ? ` · $${e().usage.costUsd.toFixed(2)}` : "";
|
|
44939
44955
|
})(), null), t;
|
|
@@ -44943,7 +44959,7 @@ function x0() {
|
|
|
44943
44959
|
return o(e());
|
|
44944
44960
|
},
|
|
44945
44961
|
children: (e) => (() => {
|
|
44946
|
-
var t =
|
|
44962
|
+
var t = c0();
|
|
44947
44963
|
return P(t, j(zj, { get children() {
|
|
44948
44964
|
return e().state.name;
|
|
44949
44965
|
} }), null), P(t, j(Ij, {
|
|
@@ -44958,7 +44974,7 @@ function x0() {
|
|
|
44958
44974
|
return $e(() => !!e().worktree)() && !e().worktree.removed;
|
|
44959
44975
|
},
|
|
44960
44976
|
get children() {
|
|
44961
|
-
var t =
|
|
44977
|
+
var t = K1(), n = t.firstChild;
|
|
44962
44978
|
return P(t, j(zj, {
|
|
44963
44979
|
class: "text-warn",
|
|
44964
44980
|
children: "⎇ worktree"
|
|
@@ -44994,17 +45010,17 @@ function x0() {
|
|
|
44994
45010
|
title: "Model — applies from the next message",
|
|
44995
45011
|
get children() {
|
|
44996
45012
|
return [j(We, {
|
|
44997
|
-
each:
|
|
45013
|
+
each: y0,
|
|
44998
45014
|
children: (t) => (() => {
|
|
44999
|
-
var n =
|
|
45015
|
+
var n = l0();
|
|
45000
45016
|
return P(n, () => t.label), D(() => n.selected = (e().pendingModel ?? e().model ?? "") === t.id), D(() => n.value = t.id), n;
|
|
45001
45017
|
})()
|
|
45002
45018
|
}), j(M, {
|
|
45003
45019
|
get when() {
|
|
45004
|
-
return !
|
|
45020
|
+
return !y0.some((t) => t.id === (e().pendingModel ?? e().model ?? ""));
|
|
45005
45021
|
},
|
|
45006
45022
|
get children() {
|
|
45007
|
-
var t =
|
|
45023
|
+
var t = q1();
|
|
45008
45024
|
return P(t, () => e().pendingModel ?? e().model), D(() => t.value = e().pendingModel ?? e().model ?? ""), t;
|
|
45009
45025
|
}
|
|
45010
45026
|
})];
|
|
@@ -45029,7 +45045,7 @@ function x0() {
|
|
|
45029
45045
|
text: "Continue where you left off. If the work is already complete, finish any remaining closeout steps (PR, Linear update, announcement)."
|
|
45030
45046
|
}),
|
|
45031
45047
|
get children() {
|
|
45032
|
-
return
|
|
45048
|
+
return J1();
|
|
45033
45049
|
}
|
|
45034
45050
|
});
|
|
45035
45051
|
}
|
|
@@ -45043,7 +45059,7 @@ function x0() {
|
|
|
45043
45059
|
title: "Open the issue's Activity thread",
|
|
45044
45060
|
onClick: () => oj("activity", e().id),
|
|
45045
45061
|
get children() {
|
|
45046
|
-
return
|
|
45062
|
+
return u0();
|
|
45047
45063
|
}
|
|
45048
45064
|
})
|
|
45049
45065
|
}), null), P(g, j(kj, {
|
|
@@ -45062,10 +45078,10 @@ function x0() {
|
|
|
45062
45078
|
return ee() === e().id;
|
|
45063
45079
|
},
|
|
45064
45080
|
get fallback() {
|
|
45065
|
-
return
|
|
45081
|
+
return d0();
|
|
45066
45082
|
},
|
|
45067
45083
|
get children() {
|
|
45068
|
-
return
|
|
45084
|
+
return Y1();
|
|
45069
45085
|
}
|
|
45070
45086
|
});
|
|
45071
45087
|
}
|
|
@@ -45077,7 +45093,7 @@ function x0() {
|
|
|
45077
45093
|
},
|
|
45078
45094
|
onClick: () => i(r() === e().id ? null : e().id),
|
|
45079
45095
|
get children() {
|
|
45080
|
-
return
|
|
45096
|
+
return X1();
|
|
45081
45097
|
}
|
|
45082
45098
|
}), null), P(g, j(M, {
|
|
45083
45099
|
get when() {
|
|
@@ -45093,7 +45109,7 @@ function x0() {
|
|
|
45093
45109
|
title: "Interrupt — the session stays resumable",
|
|
45094
45110
|
onClick: () => u.mutate(e().id),
|
|
45095
45111
|
get children() {
|
|
45096
|
-
return
|
|
45112
|
+
return Z1();
|
|
45097
45113
|
}
|
|
45098
45114
|
});
|
|
45099
45115
|
}
|
|
@@ -45108,7 +45124,7 @@ function x0() {
|
|
|
45108
45124
|
return $e(() => !!c.data)() && (c.data.files.length || c.data.untracked.length || c.data.prs.length);
|
|
45109
45125
|
},
|
|
45110
45126
|
get children() {
|
|
45111
|
-
var e =
|
|
45127
|
+
var e = $1(), t = e.firstChild, n = t.firstChild.nextSibling, r = n.firstChild;
|
|
45112
45128
|
r.firstChild;
|
|
45113
45129
|
var i = r.nextSibling.nextSibling;
|
|
45114
45130
|
return i.firstChild, P(t, j(M, {
|
|
@@ -45116,7 +45132,7 @@ function x0() {
|
|
|
45116
45132
|
return c.data.branch;
|
|
45117
45133
|
},
|
|
45118
45134
|
get children() {
|
|
45119
|
-
var e =
|
|
45135
|
+
var e = Q1();
|
|
45120
45136
|
return P(e, () => c.data.branch), e;
|
|
45121
45137
|
}
|
|
45122
45138
|
}), n), P(r, () => c.data.totalAdded, null), P(i, () => c.data.totalDeleted, null), P(e, j(We, {
|
|
@@ -45124,23 +45140,23 @@ function x0() {
|
|
|
45124
45140
|
return c.data.files;
|
|
45125
45141
|
},
|
|
45126
45142
|
children: (e) => (() => {
|
|
45127
|
-
var t =
|
|
45143
|
+
var t = m0(), n = t.firstChild, r = n.nextSibling;
|
|
45128
45144
|
return P(n, () => e.path), P(r, j(M, {
|
|
45129
45145
|
get when() {
|
|
45130
45146
|
return !e.binary;
|
|
45131
45147
|
},
|
|
45132
45148
|
get fallback() {
|
|
45133
|
-
return
|
|
45149
|
+
return h0();
|
|
45134
45150
|
},
|
|
45135
45151
|
get children() {
|
|
45136
45152
|
return [
|
|
45137
45153
|
(() => {
|
|
45138
|
-
var t =
|
|
45154
|
+
var t = f0();
|
|
45139
45155
|
return t.firstChild, P(t, () => e.added, null), t;
|
|
45140
45156
|
})(),
|
|
45141
45157
|
" ",
|
|
45142
45158
|
(() => {
|
|
45143
|
-
var t =
|
|
45159
|
+
var t = p0();
|
|
45144
45160
|
return t.firstChild, P(t, () => e.deleted, null), t;
|
|
45145
45161
|
})()
|
|
45146
45162
|
];
|
|
@@ -45152,7 +45168,7 @@ function x0() {
|
|
|
45152
45168
|
return c.data.untracked;
|
|
45153
45169
|
},
|
|
45154
45170
|
children: (e) => (() => {
|
|
45155
|
-
var t =
|
|
45171
|
+
var t = g0(), n = t.firstChild;
|
|
45156
45172
|
return it(n, "title", e), P(n, e), t;
|
|
45157
45173
|
})()
|
|
45158
45174
|
}), null), P(e, j(We, {
|
|
@@ -45160,7 +45176,7 @@ function x0() {
|
|
|
45160
45176
|
return c.data.prs;
|
|
45161
45177
|
},
|
|
45162
45178
|
children: (e) => (() => {
|
|
45163
|
-
var t =
|
|
45179
|
+
var t = _0(), n = t.firstChild;
|
|
45164
45180
|
return P(t, j(zj, {
|
|
45165
45181
|
class: "text-accent",
|
|
45166
45182
|
get children() {
|
|
@@ -45178,7 +45194,7 @@ function x0() {
|
|
|
45178
45194
|
}
|
|
45179
45195
|
}),
|
|
45180
45196
|
(() => {
|
|
45181
|
-
var e =
|
|
45197
|
+
var e = e0();
|
|
45182
45198
|
return e.addEventListener("scroll", E), pt((e) => {
|
|
45183
45199
|
C = e, w = !0;
|
|
45184
45200
|
}, e), P(e, j(M, {
|
|
@@ -45186,7 +45202,7 @@ function x0() {
|
|
|
45186
45202
|
return (s.data?.tail ?? []).length > 0;
|
|
45187
45203
|
},
|
|
45188
45204
|
get fallback() {
|
|
45189
|
-
return
|
|
45205
|
+
return v0();
|
|
45190
45206
|
},
|
|
45191
45207
|
get children() {
|
|
45192
45208
|
return j(Ge, {
|
|
@@ -45201,7 +45217,7 @@ function x0() {
|
|
|
45201
45217
|
})), e;
|
|
45202
45218
|
})(),
|
|
45203
45219
|
(() => {
|
|
45204
|
-
var t =
|
|
45220
|
+
var t = a0(), n = t.firstChild, r = n.firstChild;
|
|
45205
45221
|
return P(t, j(Mj, {
|
|
45206
45222
|
rows: 2,
|
|
45207
45223
|
get placeholder() {
|
|
@@ -45221,7 +45237,7 @@ function x0() {
|
|
|
45221
45237
|
"aria-label": "Pick element",
|
|
45222
45238
|
onClick: v,
|
|
45223
45239
|
get children() {
|
|
45224
|
-
return
|
|
45240
|
+
return t0();
|
|
45225
45241
|
}
|
|
45226
45242
|
}), null), P(n, j(kj, {
|
|
45227
45243
|
variant: "ghost",
|
|
@@ -45233,7 +45249,7 @@ function x0() {
|
|
|
45233
45249
|
"aria-label": "Attach captures",
|
|
45234
45250
|
onClick: () => void y(),
|
|
45235
45251
|
get children() {
|
|
45236
|
-
return
|
|
45252
|
+
return n0();
|
|
45237
45253
|
}
|
|
45238
45254
|
}), null), P(n, j(kj, {
|
|
45239
45255
|
variant: "ghost",
|
|
@@ -45248,7 +45264,7 @@ function x0() {
|
|
|
45248
45264
|
text: "/compact"
|
|
45249
45265
|
}),
|
|
45250
45266
|
get children() {
|
|
45251
|
-
return
|
|
45267
|
+
return r0();
|
|
45252
45268
|
}
|
|
45253
45269
|
}), null), P(n, j(kj, {
|
|
45254
45270
|
variant: "primary",
|
|
@@ -45264,7 +45280,7 @@ function x0() {
|
|
|
45264
45280
|
text: d().trim()
|
|
45265
45281
|
}),
|
|
45266
45282
|
get children() {
|
|
45267
|
-
return
|
|
45283
|
+
return i0();
|
|
45268
45284
|
}
|
|
45269
45285
|
}), null), t;
|
|
45270
45286
|
})()
|
|
@@ -45282,13 +45298,13 @@ function x0() {
|
|
|
45282
45298
|
//#endregion
|
|
45283
45299
|
//#region src/panel/views/PrsView.tsx
|
|
45284
45300
|
Br();
|
|
45285
|
-
var
|
|
45286
|
-
function
|
|
45301
|
+
var C0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">/<!> from your issues"), w0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), T0 = /*#__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\">"), E0 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px]\"title=\"Merge states come from gh via the bridge\">states unknown — restart the bridge"), D0 = /*#__PURE__*/ N("<button>"), O0 = /*#__PURE__*/ N("<span class=\"text-success text-[11px]\">✓"), k0 = /*#__PURE__*/ N("<span class=\"text-[12px] leading-none\">✓"), 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=8 cy=8 r=6></circle><circle cx=8 cy=8 r=1.6 fill=currentColor stroke=none>"), j0 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), M0 = /*#__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\">"), N0 = /*#__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\">"), P0 = /*#__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\">"), F0 = /*#__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\">"), I0 = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i;
|
|
45302
|
+
function L0(e) {
|
|
45287
45303
|
let t = _r(() => ({
|
|
45288
45304
|
queryKey: ["my-issues"],
|
|
45289
45305
|
queryFn: fO,
|
|
45290
45306
|
refetchInterval: 15e3
|
|
45291
|
-
})), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) =>
|
|
45307
|
+
})), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) => I0.test(e.url)).map((t) => ({
|
|
45292
45308
|
issue: e,
|
|
45293
45309
|
attachment: t
|
|
45294
45310
|
})))), r = _r(() => ({
|
|
@@ -45337,7 +45353,7 @@ function I0(e) {
|
|
|
45337
45353
|
} catch {}
|
|
45338
45354
|
};
|
|
45339
45355
|
return (() => {
|
|
45340
|
-
var r =
|
|
45356
|
+
var r = T0(), f = r.firstChild;
|
|
45341
45357
|
f.firstChild;
|
|
45342
45358
|
var h = f.nextSibling, _ = h.firstChild, v = h.nextSibling;
|
|
45343
45359
|
return P(f, j(M, {
|
|
@@ -45345,10 +45361,10 @@ function I0(e) {
|
|
|
45345
45361
|
return !i.isError;
|
|
45346
45362
|
},
|
|
45347
45363
|
get fallback() {
|
|
45348
|
-
return
|
|
45364
|
+
return E0();
|
|
45349
45365
|
},
|
|
45350
45366
|
get children() {
|
|
45351
|
-
var e =
|
|
45367
|
+
var e = C0(), t = e.firstChild, r = t.nextSibling;
|
|
45352
45368
|
return r.nextSibling, P(e, () => d().length, t), P(e, () => n().length, r), e;
|
|
45353
45369
|
}
|
|
45354
45370
|
}), null), P(_, j(We, {
|
|
@@ -45371,7 +45387,7 @@ function I0(e) {
|
|
|
45371
45387
|
}
|
|
45372
45388
|
],
|
|
45373
45389
|
children: (e) => (() => {
|
|
45374
|
-
var t =
|
|
45390
|
+
var t = D0();
|
|
45375
45391
|
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;
|
|
45376
45392
|
})()
|
|
45377
45393
|
})), P(h, j(jj, {
|
|
@@ -45394,13 +45410,13 @@ function I0(e) {
|
|
|
45394
45410
|
});
|
|
45395
45411
|
},
|
|
45396
45412
|
get children() {
|
|
45397
|
-
var t =
|
|
45413
|
+
var t = w0();
|
|
45398
45414
|
return P(t, j(We, {
|
|
45399
45415
|
get each() {
|
|
45400
45416
|
return d();
|
|
45401
45417
|
},
|
|
45402
45418
|
children: (t) => (() => {
|
|
45403
|
-
var n =
|
|
45419
|
+
var n = M0(), r = n.firstChild, s = r.nextSibling, c = s.firstChild, l = c.nextSibling, u = l.nextSibling, d = s.nextSibling, f = d.firstChild;
|
|
45404
45420
|
return P(r, () => t.attachment.title || t.attachment.url), P(n, j(M, {
|
|
45405
45421
|
get when() {
|
|
45406
45422
|
return i.data?.previews[t.attachment.url];
|
|
@@ -45488,10 +45504,10 @@ function I0(e) {
|
|
|
45488
45504
|
return g().has(t.attachment.url);
|
|
45489
45505
|
},
|
|
45490
45506
|
get fallback() {
|
|
45491
|
-
return
|
|
45507
|
+
return N0();
|
|
45492
45508
|
},
|
|
45493
45509
|
get children() {
|
|
45494
|
-
return
|
|
45510
|
+
return O0();
|
|
45495
45511
|
}
|
|
45496
45512
|
});
|
|
45497
45513
|
}
|
|
@@ -45518,10 +45534,10 @@ function I0(e) {
|
|
|
45518
45534
|
return E().has(t.attachment.url);
|
|
45519
45535
|
},
|
|
45520
45536
|
get fallback() {
|
|
45521
|
-
return
|
|
45537
|
+
return P0();
|
|
45522
45538
|
},
|
|
45523
45539
|
get children() {
|
|
45524
|
-
return
|
|
45540
|
+
return k0();
|
|
45525
45541
|
}
|
|
45526
45542
|
});
|
|
45527
45543
|
}
|
|
@@ -45534,7 +45550,7 @@ function I0(e) {
|
|
|
45534
45550
|
oj("activity", t.issue.id), e.onOpenIssue();
|
|
45535
45551
|
},
|
|
45536
45552
|
get children() {
|
|
45537
|
-
return
|
|
45553
|
+
return A0();
|
|
45538
45554
|
}
|
|
45539
45555
|
}), null), P(f, j(kj, {
|
|
45540
45556
|
variant: "ghost",
|
|
@@ -45548,10 +45564,10 @@ function I0(e) {
|
|
|
45548
45564
|
return x() === t.attachment.id;
|
|
45549
45565
|
},
|
|
45550
45566
|
get fallback() {
|
|
45551
|
-
return
|
|
45567
|
+
return F0();
|
|
45552
45568
|
},
|
|
45553
45569
|
get children() {
|
|
45554
|
-
return
|
|
45570
|
+
return j0();
|
|
45555
45571
|
}
|
|
45556
45572
|
});
|
|
45557
45573
|
}
|
|
@@ -45560,7 +45576,7 @@ function I0(e) {
|
|
|
45560
45576
|
return g().has(t.attachment.url);
|
|
45561
45577
|
},
|
|
45562
45578
|
get children() {
|
|
45563
|
-
return j(
|
|
45579
|
+
return j(s$, {
|
|
45564
45580
|
get url() {
|
|
45565
45581
|
return t.attachment.url;
|
|
45566
45582
|
},
|
|
@@ -45585,7 +45601,7 @@ function I0(e) {
|
|
|
45585
45601
|
rt(["click"]);
|
|
45586
45602
|
//#endregion
|
|
45587
45603
|
//#region src/lib/projectConfig.ts
|
|
45588
|
-
var
|
|
45604
|
+
var R0 = [
|
|
45589
45605
|
"defaultTeamId",
|
|
45590
45606
|
"defaultProjectId",
|
|
45591
45607
|
"defaultLabelIds",
|
|
@@ -45600,29 +45616,29 @@ var L0 = [
|
|
|
45600
45616
|
"issueTemplate",
|
|
45601
45617
|
"testUsername"
|
|
45602
45618
|
];
|
|
45603
|
-
function
|
|
45619
|
+
function z0(e) {
|
|
45604
45620
|
let t = {};
|
|
45605
|
-
for (let n of
|
|
45621
|
+
for (let n of R0) {
|
|
45606
45622
|
let r = e[n];
|
|
45607
45623
|
r !== void 0 && r !== "" && !(Array.isArray(r) && r.length === 0) && (t[n] = r);
|
|
45608
45624
|
}
|
|
45609
45625
|
return t;
|
|
45610
45626
|
}
|
|
45611
|
-
function
|
|
45627
|
+
function B0(e, t) {
|
|
45612
45628
|
let n = {};
|
|
45613
|
-
for (let r of
|
|
45629
|
+
for (let r of R0) e[r] === void 0 && t[r] !== void 0 && (n[r] = t[r]);
|
|
45614
45630
|
return Object.keys(n).length ? n : null;
|
|
45615
45631
|
}
|
|
45616
45632
|
//#endregion
|
|
45617
45633
|
//#region src/lib/linear/auth.ts
|
|
45618
45634
|
Br();
|
|
45619
|
-
function
|
|
45635
|
+
function V0(e) {
|
|
45620
45636
|
let t = "";
|
|
45621
45637
|
for (let n of e) t += String.fromCharCode(n);
|
|
45622
45638
|
return btoa(t).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
45623
45639
|
}
|
|
45624
|
-
async function
|
|
45625
|
-
let t =
|
|
45640
|
+
async function H0(e) {
|
|
45641
|
+
let t = V0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = V0(new Uint8Array(n)), i = V0(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
|
|
45626
45642
|
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");
|
|
45627
45643
|
let s = await chrome.identity.launchWebAuthFlow({
|
|
45628
45644
|
url: o.toString(),
|
|
@@ -45650,15 +45666,15 @@ async function V0(e) {
|
|
|
45650
45666
|
linearOauthClientId: e
|
|
45651
45667
|
});
|
|
45652
45668
|
}
|
|
45653
|
-
async function
|
|
45669
|
+
async function U0() {
|
|
45654
45670
|
await Er({
|
|
45655
45671
|
linearAccessToken: void 0,
|
|
45656
45672
|
linearApiKey: void 0
|
|
45657
45673
|
});
|
|
45658
45674
|
}
|
|
45659
45675
|
Br(), Sr(), Fx(), gD();
|
|
45660
|
-
var
|
|
45661
|
-
function
|
|
45676
|
+
var W0 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), G0 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Cloud: picking an element opens the panel to draft & 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."), K0 = /*#__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"), q0 = /*#__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)."), J0 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), Y0 = /*#__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]\">"), X0 = /*#__PURE__*/ N("<option value>Select a team…"), Z0 = /*#__PURE__*/ N("<option value>No project"), Q0 = /*#__PURE__*/ N("<div class=\"flex flex-wrap gap-1\">"), $0 = /*#__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."), e2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), t2 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), n2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), r2 = /*#__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."), i2 = /*#__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."), a2 = /*#__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."), o2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[10ch] text-center\">"), s2 = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\">"), c2 = /*#__PURE__*/ N("<option value>Select a channel…"), l2 = /*#__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"), u2 = /*#__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."), d2 = /*#__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"), f2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), p2 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), m2 = /*#__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."), h2 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), g2 = /*#__PURE__*/ N("<button>"), _2 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), v2 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), y2 = /*#__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\">"), b2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), x2 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), S2 = /*#__PURE__*/ N("<option> (<!>)"), C2 = /*#__PURE__*/ N("<option>"), w2 = /*#__PURE__*/ N("<button type=button><span class=\"mr-1 inline-block size-2 rounded-full align-middle\">"), T2 = /*#__PURE__*/ N("<option value>Select the agent…"), E2 = /*#__PURE__*/ N("<option>#"), D2 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
|
|
45677
|
+
function O2() {
|
|
45662
45678
|
let e = sr(), t = _r(() => ({
|
|
45663
45679
|
queryKey: ["settings"],
|
|
45664
45680
|
queryFn: Tr,
|
|
@@ -45686,13 +45702,13 @@ function D2() {
|
|
|
45686
45702
|
retry: 0
|
|
45687
45703
|
})), [l, u] = T(!1), d = async () => {
|
|
45688
45704
|
try {
|
|
45689
|
-
await navigator.clipboard.writeText(JSON.stringify(
|
|
45705
|
+
await navigator.clipboard.writeText(JSON.stringify(z0(n()), null, 2) + "\n"), u(!0), setTimeout(() => u(!1), 1800);
|
|
45690
45706
|
} catch {}
|
|
45691
45707
|
}, f = () => {
|
|
45692
45708
|
let e = c.data?.projectConfig;
|
|
45693
45709
|
if (!e) return;
|
|
45694
45710
|
let t = {};
|
|
45695
|
-
for (let n of
|
|
45711
|
+
for (let n of R0) e[n] !== void 0 && (t[n] = e[n]);
|
|
45696
45712
|
r(t);
|
|
45697
45713
|
}, p = _r(() => ({
|
|
45698
45714
|
queryKey: ["linear-labels"],
|
|
@@ -45725,7 +45741,7 @@ function D2() {
|
|
|
45725
45741
|
}
|
|
45726
45742
|
E(!0), ee("");
|
|
45727
45743
|
try {
|
|
45728
|
-
await
|
|
45744
|
+
await H0(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"] });
|
|
45729
45745
|
} catch (e) {
|
|
45730
45746
|
ee(e instanceof Error ? e.message : "OAuth flow failed.");
|
|
45731
45747
|
} finally {
|
|
@@ -45736,7 +45752,7 @@ function D2() {
|
|
|
45736
45752
|
async function re() {
|
|
45737
45753
|
ne(!0);
|
|
45738
45754
|
try {
|
|
45739
|
-
await
|
|
45755
|
+
await U0(), 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"] });
|
|
45740
45756
|
} finally {
|
|
45741
45757
|
ne(!1);
|
|
45742
45758
|
}
|
|
@@ -45752,12 +45768,12 @@ function D2() {
|
|
|
45752
45768
|
return e ? `Drafting with ${e} — ${Nx[e].fast} (fast) / ${Nx[e].best} (best)` : null;
|
|
45753
45769
|
});
|
|
45754
45770
|
return (() => {
|
|
45755
|
-
var e =
|
|
45771
|
+
var e = h2();
|
|
45756
45772
|
return P(e, j(Rj, {
|
|
45757
45773
|
title: "Workflow",
|
|
45758
45774
|
get children() {
|
|
45759
45775
|
return [(() => {
|
|
45760
|
-
var e =
|
|
45776
|
+
var e = W0();
|
|
45761
45777
|
return P(e, j(We, {
|
|
45762
45778
|
each: [{
|
|
45763
45779
|
id: "cloud",
|
|
@@ -45767,19 +45783,19 @@ function D2() {
|
|
|
45767
45783
|
label: "Local · clipboard"
|
|
45768
45784
|
}],
|
|
45769
45785
|
children: (e) => (() => {
|
|
45770
|
-
var t =
|
|
45786
|
+
var t = g2();
|
|
45771
45787
|
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;
|
|
45772
45788
|
})()
|
|
45773
45789
|
})), e;
|
|
45774
|
-
})(),
|
|
45790
|
+
})(), G0()];
|
|
45775
45791
|
}
|
|
45776
45792
|
}), null), P(e, j(Rj, {
|
|
45777
45793
|
title: "Capture",
|
|
45778
45794
|
get children() {
|
|
45779
45795
|
return [(() => {
|
|
45780
|
-
var e =
|
|
45796
|
+
var e = K0(), t = e.firstChild;
|
|
45781
45797
|
return t.addEventListener("change", (e) => void r({ captureShots: e.currentTarget.checked || void 0 })), D(() => t.checked = !!n().captureShots), e;
|
|
45782
|
-
})(),
|
|
45798
|
+
})(), q0()];
|
|
45783
45799
|
}
|
|
45784
45800
|
}), null), P(e, j(Rj, {
|
|
45785
45801
|
title: "Linear",
|
|
@@ -45790,13 +45806,13 @@ function D2() {
|
|
|
45790
45806
|
},
|
|
45791
45807
|
get fallback() {
|
|
45792
45808
|
return (() => {
|
|
45793
|
-
var e =
|
|
45809
|
+
var e = b2();
|
|
45794
45810
|
return P(e, j(Lj, {
|
|
45795
45811
|
label: "Personal API key",
|
|
45796
45812
|
hint: "Create one at linear.app → Settings → API — fastest path.",
|
|
45797
45813
|
get children() {
|
|
45798
45814
|
return [(() => {
|
|
45799
|
-
var e =
|
|
45815
|
+
var e = _2();
|
|
45800
45816
|
return P(e, j(jj, {
|
|
45801
45817
|
type: "password",
|
|
45802
45818
|
placeholder: "lin_api_…",
|
|
@@ -45833,12 +45849,12 @@ function D2() {
|
|
|
45833
45849
|
}), null), P(e, j(M, {
|
|
45834
45850
|
when: xr,
|
|
45835
45851
|
get children() {
|
|
45836
|
-
return [
|
|
45852
|
+
return [v2(), j(Lj, {
|
|
45837
45853
|
label: "OAuth client ID",
|
|
45838
45854
|
get children() {
|
|
45839
45855
|
return [
|
|
45840
45856
|
(() => {
|
|
45841
|
-
var e =
|
|
45857
|
+
var e = _2();
|
|
45842
45858
|
return P(e, j(jj, {
|
|
45843
45859
|
placeholder: "your-client-id",
|
|
45844
45860
|
get value() {
|
|
@@ -45866,7 +45882,7 @@ function D2() {
|
|
|
45866
45882
|
}
|
|
45867
45883
|
}),
|
|
45868
45884
|
(() => {
|
|
45869
|
-
var e =
|
|
45885
|
+
var e = y2(), t = e.firstChild.nextSibling.nextSibling;
|
|
45870
45886
|
return P(t, ie), e;
|
|
45871
45887
|
})()
|
|
45872
45888
|
];
|
|
@@ -45877,13 +45893,13 @@ function D2() {
|
|
|
45877
45893
|
})();
|
|
45878
45894
|
},
|
|
45879
45895
|
get children() {
|
|
45880
|
-
var e =
|
|
45896
|
+
var e = Y0(), t = e.firstChild;
|
|
45881
45897
|
return P(t, j(M, {
|
|
45882
45898
|
get when() {
|
|
45883
45899
|
return !a.isLoading;
|
|
45884
45900
|
},
|
|
45885
45901
|
get fallback() {
|
|
45886
|
-
return
|
|
45902
|
+
return x2();
|
|
45887
45903
|
},
|
|
45888
45904
|
get children() {
|
|
45889
45905
|
return j(M, {
|
|
@@ -45896,7 +45912,7 @@ function D2() {
|
|
|
45896
45912
|
return a.isError;
|
|
45897
45913
|
},
|
|
45898
45914
|
get fallback() {
|
|
45899
|
-
return
|
|
45915
|
+
return x2();
|
|
45900
45916
|
},
|
|
45901
45917
|
get children() {
|
|
45902
45918
|
return j(Hj, { message: "Key rejected — reconnect" });
|
|
@@ -45904,7 +45920,7 @@ function D2() {
|
|
|
45904
45920
|
});
|
|
45905
45921
|
},
|
|
45906
45922
|
get children() {
|
|
45907
|
-
var e =
|
|
45923
|
+
var e = J0(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
|
|
45908
45924
|
return P(t, () => a.data.name), P(n, () => a.data.email), e;
|
|
45909
45925
|
}
|
|
45910
45926
|
});
|
|
@@ -45945,7 +45961,7 @@ function D2() {
|
|
|
45945
45961
|
return o.isLoading;
|
|
45946
45962
|
},
|
|
45947
45963
|
get children() {
|
|
45948
|
-
return [
|
|
45964
|
+
return [X0(), j(M, {
|
|
45949
45965
|
get when() {
|
|
45950
45966
|
return o.data;
|
|
45951
45967
|
},
|
|
@@ -45955,7 +45971,7 @@ function D2() {
|
|
|
45955
45971
|
return o.data;
|
|
45956
45972
|
},
|
|
45957
45973
|
children: (e) => (() => {
|
|
45958
|
-
var t =
|
|
45974
|
+
var t = S2(), r = t.firstChild, i = r.nextSibling;
|
|
45959
45975
|
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;
|
|
45960
45976
|
})()
|
|
45961
45977
|
});
|
|
@@ -45979,14 +45995,14 @@ function D2() {
|
|
|
45979
45995
|
},
|
|
45980
45996
|
get children() {
|
|
45981
45997
|
return [(() => {
|
|
45982
|
-
var e =
|
|
45998
|
+
var e = Z0();
|
|
45983
45999
|
return D(() => e.selected = !n().defaultProjectId), e;
|
|
45984
46000
|
})(), j(We, {
|
|
45985
46001
|
get each() {
|
|
45986
46002
|
return s.data ?? [];
|
|
45987
46003
|
},
|
|
45988
46004
|
children: (e) => (() => {
|
|
45989
|
-
var t =
|
|
46005
|
+
var t = C2();
|
|
45990
46006
|
return P(t, () => e.name), D(() => t.selected = e.id === n().defaultProjectId), D(() => t.value = e.id), t;
|
|
45991
46007
|
})()
|
|
45992
46008
|
})];
|
|
@@ -45998,7 +46014,7 @@ function D2() {
|
|
|
45998
46014
|
label: "Default labels",
|
|
45999
46015
|
hint: "Applied to every issue created from the panel.",
|
|
46000
46016
|
get children() {
|
|
46001
|
-
var e =
|
|
46017
|
+
var e = Q0();
|
|
46002
46018
|
return P(e, j(We, {
|
|
46003
46019
|
get each() {
|
|
46004
46020
|
return p.data ?? [];
|
|
@@ -46006,7 +46022,7 @@ function D2() {
|
|
|
46006
46022
|
children: (e) => {
|
|
46007
46023
|
let t = () => (n().defaultLabelIds ?? []).includes(e.id);
|
|
46008
46024
|
return (() => {
|
|
46009
|
-
var i =
|
|
46025
|
+
var i = w2(), a = i.firstChild;
|
|
46010
46026
|
return i.$$click = () => {
|
|
46011
46027
|
let i = n().defaultLabelIds ?? [];
|
|
46012
46028
|
r({ defaultLabelIds: t() ? i.filter((t) => t !== e.id) : [...i, e.id] });
|
|
@@ -46023,7 +46039,7 @@ function D2() {
|
|
|
46023
46039
|
}
|
|
46024
46040
|
}),
|
|
46025
46041
|
(() => {
|
|
46026
|
-
var e =
|
|
46042
|
+
var e = $0(), t = e.firstChild;
|
|
46027
46043
|
return t.addEventListener("change", (e) => void r({ shareLinearKey: e.currentTarget.checked })), D(() => t.checked = !!n().shareLinearKey), e;
|
|
46028
46044
|
})(),
|
|
46029
46045
|
j(Lj, {
|
|
@@ -46073,7 +46089,7 @@ function D2() {
|
|
|
46073
46089
|
return m.isLoading;
|
|
46074
46090
|
},
|
|
46075
46091
|
get children() {
|
|
46076
|
-
return [
|
|
46092
|
+
return [T2(), j(M, {
|
|
46077
46093
|
get when() {
|
|
46078
46094
|
return m.data;
|
|
46079
46095
|
},
|
|
@@ -46083,7 +46099,7 @@ function D2() {
|
|
|
46083
46099
|
return m.data;
|
|
46084
46100
|
},
|
|
46085
46101
|
children: (e) => (() => {
|
|
46086
|
-
var t =
|
|
46102
|
+
var t = C2();
|
|
46087
46103
|
return P(t, () => e.displayName), D(() => t.selected = e.id === n().cursorAgentId), D(() => t.value = e.id), t;
|
|
46088
46104
|
})()
|
|
46089
46105
|
});
|
|
@@ -46093,7 +46109,7 @@ function D2() {
|
|
|
46093
46109
|
});
|
|
46094
46110
|
},
|
|
46095
46111
|
get children() {
|
|
46096
|
-
return
|
|
46112
|
+
return e2();
|
|
46097
46113
|
}
|
|
46098
46114
|
});
|
|
46099
46115
|
}
|
|
@@ -46141,7 +46157,7 @@ function D2() {
|
|
|
46141
46157
|
onBlur: (e) => {
|
|
46142
46158
|
r({ issueTemplate: e.currentTarget.value.trim() || void 0 });
|
|
46143
46159
|
}
|
|
46144
|
-
}),
|
|
46160
|
+
}), t2()];
|
|
46145
46161
|
}
|
|
46146
46162
|
}),
|
|
46147
46163
|
j(Lj, {
|
|
@@ -46198,7 +46214,7 @@ function D2() {
|
|
|
46198
46214
|
label: "Test account",
|
|
46199
46215
|
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.",
|
|
46200
46216
|
get children() {
|
|
46201
|
-
var e =
|
|
46217
|
+
var e = n2();
|
|
46202
46218
|
return P(e, j(jj, {
|
|
46203
46219
|
placeholder: "Username or email (e.g. demo@yourapp.com)",
|
|
46204
46220
|
get value() {
|
|
@@ -46230,7 +46246,7 @@ function D2() {
|
|
|
46230
46246
|
title: "Panel",
|
|
46231
46247
|
get children() {
|
|
46232
46248
|
return [(() => {
|
|
46233
|
-
var e =
|
|
46249
|
+
var e = r2(), t = e.firstChild.nextSibling;
|
|
46234
46250
|
return P(t, j(We, {
|
|
46235
46251
|
each: [{
|
|
46236
46252
|
id: "overlay",
|
|
@@ -46240,7 +46256,7 @@ function D2() {
|
|
|
46240
46256
|
label: "Beside page"
|
|
46241
46257
|
}],
|
|
46242
46258
|
children: (e) => (() => {
|
|
46243
|
-
var t =
|
|
46259
|
+
var t = g2();
|
|
46244
46260
|
return t.$$click = () => void r({
|
|
46245
46261
|
panelMode: e.id,
|
|
46246
46262
|
panelPos: void 0
|
|
@@ -46248,11 +46264,11 @@ function D2() {
|
|
|
46248
46264
|
})()
|
|
46249
46265
|
})), e;
|
|
46250
46266
|
})(), (() => {
|
|
46251
|
-
var e =
|
|
46267
|
+
var e = i2(), t = e.firstChild.nextSibling;
|
|
46252
46268
|
return P(t, j(We, {
|
|
46253
46269
|
each: ["left", "right"],
|
|
46254
46270
|
children: (e) => (() => {
|
|
46255
|
-
var t =
|
|
46271
|
+
var t = g2();
|
|
46256
46272
|
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;
|
|
46257
46273
|
})()
|
|
46258
46274
|
})), e;
|
|
@@ -46282,8 +46298,8 @@ function D2() {
|
|
|
46282
46298
|
}), null), P(e, j(Rj, {
|
|
46283
46299
|
title: "Project config (.lineargrab.json)",
|
|
46284
46300
|
get children() {
|
|
46285
|
-
return [
|
|
46286
|
-
var e =
|
|
46301
|
+
return [a2(), (() => {
|
|
46302
|
+
var e = s2();
|
|
46287
46303
|
return P(e, j(M, {
|
|
46288
46304
|
get when() {
|
|
46289
46305
|
return c.data?.projectConfig;
|
|
@@ -46314,7 +46330,7 @@ function D2() {
|
|
|
46314
46330
|
},
|
|
46315
46331
|
onClick: () => void d(),
|
|
46316
46332
|
get children() {
|
|
46317
|
-
var e =
|
|
46333
|
+
var e = o2();
|
|
46318
46334
|
return P(e, () => l() ? "Copied ✓" : "Copy config"), e;
|
|
46319
46335
|
}
|
|
46320
46336
|
}), null), e;
|
|
@@ -46405,12 +46421,12 @@ function D2() {
|
|
|
46405
46421
|
});
|
|
46406
46422
|
},
|
|
46407
46423
|
get children() {
|
|
46408
|
-
return [
|
|
46424
|
+
return [c2(), j(We, {
|
|
46409
46425
|
get each() {
|
|
46410
46426
|
return ae.data ?? [];
|
|
46411
46427
|
},
|
|
46412
46428
|
children: (e) => (() => {
|
|
46413
|
-
var t =
|
|
46429
|
+
var t = E2();
|
|
46414
46430
|
return t.firstChild, P(t, () => e.name, null), D(() => t.selected = e.id === n().slackChannelId), D(() => t.value = e.id), t;
|
|
46415
46431
|
})()
|
|
46416
46432
|
})];
|
|
@@ -46461,10 +46477,10 @@ function D2() {
|
|
|
46461
46477
|
}
|
|
46462
46478
|
}),
|
|
46463
46479
|
(() => {
|
|
46464
|
-
var e =
|
|
46480
|
+
var e = l2(), t = e.firstChild;
|
|
46465
46481
|
return t.addEventListener("change", (e) => void r({ notifyOnCreate: e.currentTarget.checked ? void 0 : !1 })), D(() => t.checked = n().notifyOnCreate !== !1), e;
|
|
46466
46482
|
})(),
|
|
46467
|
-
|
|
46483
|
+
u2()
|
|
46468
46484
|
];
|
|
46469
46485
|
}
|
|
46470
46486
|
}), null), P(e, j(Rj, {
|
|
@@ -46502,7 +46518,7 @@ function D2() {
|
|
|
46502
46518
|
}
|
|
46503
46519
|
}),
|
|
46504
46520
|
(() => {
|
|
46505
|
-
var e =
|
|
46521
|
+
var e = d2(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
|
|
46506
46522
|
return t.$$click = () => void r({ preferredProvider: void 0 }), i.$$click = () => void r({ preferredProvider: "openai" }), a.$$click = () => void r({ preferredProvider: "anthropic" }), D((e) => {
|
|
46507
46523
|
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;
|
|
46508
46524
|
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;
|
|
@@ -46515,16 +46531,16 @@ function D2() {
|
|
|
46515
46531
|
}), e;
|
|
46516
46532
|
})(),
|
|
46517
46533
|
(() => {
|
|
46518
|
-
var e =
|
|
46534
|
+
var e = p2();
|
|
46519
46535
|
return P(e, j(M, {
|
|
46520
46536
|
get when() {
|
|
46521
46537
|
return se();
|
|
46522
46538
|
},
|
|
46523
46539
|
get fallback() {
|
|
46524
|
-
return
|
|
46540
|
+
return D2();
|
|
46525
46541
|
},
|
|
46526
46542
|
get children() {
|
|
46527
|
-
var e =
|
|
46543
|
+
var e = f2();
|
|
46528
46544
|
return P(e, se), e;
|
|
46529
46545
|
}
|
|
46530
46546
|
})), e;
|
|
@@ -46534,7 +46550,7 @@ function D2() {
|
|
|
46534
46550
|
}), null), P(e, j(Rj, {
|
|
46535
46551
|
title: "How it works",
|
|
46536
46552
|
get children() {
|
|
46537
|
-
return
|
|
46553
|
+
return m2();
|
|
46538
46554
|
}
|
|
46539
46555
|
}), null), e;
|
|
46540
46556
|
})();
|
|
@@ -46542,38 +46558,38 @@ function D2() {
|
|
|
46542
46558
|
rt(["click"]);
|
|
46543
46559
|
//#endregion
|
|
46544
46560
|
//#region src/lib/idbCache.ts
|
|
46545
|
-
var
|
|
46561
|
+
var k2 = "linear-grab", A2 = "queries", j2 = [
|
|
46546
46562
|
"my-issues",
|
|
46547
46563
|
"issue",
|
|
46548
46564
|
"sessions",
|
|
46549
46565
|
"teams",
|
|
46550
46566
|
"agents"
|
|
46551
46567
|
];
|
|
46552
|
-
function
|
|
46568
|
+
function M2() {
|
|
46553
46569
|
return new Promise((e) => {
|
|
46554
46570
|
try {
|
|
46555
|
-
let t = indexedDB.open(
|
|
46556
|
-
t.onupgradeneeded = () => t.result.createObjectStore(
|
|
46571
|
+
let t = indexedDB.open(k2, 1);
|
|
46572
|
+
t.onupgradeneeded = () => t.result.createObjectStore(A2), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
|
|
46557
46573
|
} catch {
|
|
46558
46574
|
e(null);
|
|
46559
46575
|
}
|
|
46560
46576
|
});
|
|
46561
46577
|
}
|
|
46562
|
-
function
|
|
46563
|
-
return typeof e[0] == "string" &&
|
|
46578
|
+
function N2(e) {
|
|
46579
|
+
return typeof e[0] == "string" && j2.includes(e[0]);
|
|
46564
46580
|
}
|
|
46565
|
-
async function
|
|
46566
|
-
let t = await
|
|
46581
|
+
async function P2(e) {
|
|
46582
|
+
let t = await M2();
|
|
46567
46583
|
if (!t) return () => {};
|
|
46568
46584
|
await new Promise((n) => {
|
|
46569
46585
|
try {
|
|
46570
|
-
let r = t.transaction(
|
|
46586
|
+
let r = t.transaction(A2, "readonly").objectStore(A2).openCursor();
|
|
46571
46587
|
r.onsuccess = () => {
|
|
46572
46588
|
let t = r.result;
|
|
46573
46589
|
if (!t) return n();
|
|
46574
46590
|
try {
|
|
46575
46591
|
let { queryKey: n, data: r } = t.value;
|
|
46576
|
-
|
|
46592
|
+
N2(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
|
|
46577
46593
|
} catch {}
|
|
46578
46594
|
t.continue();
|
|
46579
46595
|
}, r.onerror = () => n();
|
|
@@ -46584,14 +46600,14 @@ async function N2(e) {
|
|
|
46584
46600
|
let n = /* @__PURE__ */ new Map(), r = e.getQueryCache().subscribe((r) => {
|
|
46585
46601
|
if (r.type !== "updated" || r.action.type !== "success") return;
|
|
46586
46602
|
let { queryKey: i, queryHash: a } = r.query;
|
|
46587
|
-
if (!
|
|
46603
|
+
if (!N2(i)) return;
|
|
46588
46604
|
let o = n.get(a);
|
|
46589
46605
|
o && clearTimeout(o), n.set(a, setTimeout(() => {
|
|
46590
46606
|
n.delete(a);
|
|
46591
46607
|
try {
|
|
46592
46608
|
let n = e.getQueryData(i);
|
|
46593
46609
|
if (n === void 0) return;
|
|
46594
|
-
t.transaction(
|
|
46610
|
+
t.transaction(A2, "readwrite").objectStore(A2).put({
|
|
46595
46611
|
queryKey: i,
|
|
46596
46612
|
data: n
|
|
46597
46613
|
}, a);
|
|
@@ -46607,7 +46623,7 @@ async function N2(e) {
|
|
|
46607
46623
|
//#endregion
|
|
46608
46624
|
//#region src/panel/App.tsx
|
|
46609
46625
|
Br();
|
|
46610
|
-
var
|
|
46626
|
+
var F2 = /*#__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\">"), I2 = /*#__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\">"), L2 = /*#__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\">–"), R2 = /*#__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>"), z2 = /*#__PURE__*/ N("<button>"), B2 = [
|
|
46611
46627
|
{
|
|
46612
46628
|
id: "draft",
|
|
46613
46629
|
label: "Draft"
|
|
@@ -46640,35 +46656,35 @@ var P2 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hid
|
|
|
46640
46656
|
id: "settings",
|
|
46641
46657
|
label: "Settings"
|
|
46642
46658
|
}
|
|
46643
|
-
],
|
|
46644
|
-
function
|
|
46645
|
-
if (
|
|
46646
|
-
|
|
46659
|
+
], V2 = /* @__PURE__ */ new Set();
|
|
46660
|
+
function H2(e, t, n) {
|
|
46661
|
+
if (V2.has(e) || typeof Notification > "u") return;
|
|
46662
|
+
V2.add(e);
|
|
46647
46663
|
let r = () => new Notification(t, { body: n });
|
|
46648
46664
|
Notification.permission === "granted" ? r() : Notification.permission === "default" && Notification.requestPermission().then((e) => e === "granted" && r());
|
|
46649
46665
|
}
|
|
46650
|
-
function
|
|
46666
|
+
function U2() {
|
|
46651
46667
|
setInterval(() => {
|
|
46652
46668
|
NO().then((e) => {
|
|
46653
46669
|
for (let t of e) {
|
|
46654
46670
|
if (t.status !== "running") continue;
|
|
46655
46671
|
let e = t.lastEventAt ?? t.startedAt;
|
|
46656
|
-
Date.now() - e > 10 * 6e4 &&
|
|
46672
|
+
Date.now() - e > 10 * 6e4 && H2(`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.`);
|
|
46657
46673
|
}
|
|
46658
46674
|
}).catch(() => {}), gO().then((e) => {
|
|
46659
|
-
for (let t of e) /awaitingInput|elicit/i.test(t.status) &&
|
|
46675
|
+
for (let t of e) /awaitingInput|elicit/i.test(t.status) && H2(`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.`);
|
|
46660
46676
|
}).catch(() => {});
|
|
46661
46677
|
}, 6e4);
|
|
46662
46678
|
}
|
|
46663
|
-
|
|
46664
|
-
var
|
|
46679
|
+
U2();
|
|
46680
|
+
var W2 = new gr({ defaultOptions: { queries: {
|
|
46665
46681
|
retry: 1,
|
|
46666
46682
|
refetchOnWindowFocus: !1,
|
|
46667
46683
|
staleTime: 5e3
|
|
46668
46684
|
} } });
|
|
46669
|
-
function
|
|
46685
|
+
function G2(e) {
|
|
46670
46686
|
return (() => {
|
|
46671
|
-
var t =
|
|
46687
|
+
var t = F2();
|
|
46672
46688
|
return D((n) => {
|
|
46673
46689
|
var r = e.size ?? 14, i = e.size ?? 14;
|
|
46674
46690
|
return r !== n.e && it(t, "width", n.e = r), i !== n.t && it(t, "height", n.t = i), n;
|
|
@@ -46678,36 +46694,36 @@ function W2(e) {
|
|
|
46678
46694
|
}), t;
|
|
46679
46695
|
})();
|
|
46680
46696
|
}
|
|
46681
|
-
function
|
|
46697
|
+
function K2(e) {
|
|
46682
46698
|
let [t, n] = T("draft"), r = () => {
|
|
46683
|
-
|
|
46699
|
+
W2.invalidateQueries({ queryKey: ["grab"] }), cj() === "capture" && n("capture"), e.onGrab?.();
|
|
46684
46700
|
};
|
|
46685
46701
|
return O(() => {
|
|
46686
46702
|
let e = nj();
|
|
46687
46703
|
e && n(e);
|
|
46688
46704
|
}), ie(() => {
|
|
46689
|
-
let e =
|
|
46690
|
-
JO().then(
|
|
46705
|
+
let e = P2(W2), t = XZ(r), n = () => {
|
|
46706
|
+
JO().then(g$), VO(), MO().then(async (e) => {
|
|
46691
46707
|
if (!e.projectConfig) return;
|
|
46692
|
-
let t =
|
|
46708
|
+
let t = B0(await Tr(), e.projectConfig);
|
|
46693
46709
|
t && await Er(t);
|
|
46694
46710
|
}).catch(() => {});
|
|
46695
46711
|
};
|
|
46696
46712
|
n();
|
|
46697
46713
|
let i = Mr((e) => {
|
|
46698
|
-
e === "settings" && (
|
|
46714
|
+
e === "settings" && (W2.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
|
|
46699
46715
|
});
|
|
46700
46716
|
ae(() => {
|
|
46701
46717
|
t(), i(), e.then((e) => e());
|
|
46702
46718
|
});
|
|
46703
46719
|
}), j(cr, {
|
|
46704
|
-
client:
|
|
46720
|
+
client: W2,
|
|
46705
46721
|
get children() {
|
|
46706
|
-
var r =
|
|
46707
|
-
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(
|
|
46708
|
-
each:
|
|
46722
|
+
var r = R2(), 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;
|
|
46723
|
+
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(G2, { size: 14 })), P(o, j(We, {
|
|
46724
|
+
each: B2,
|
|
46709
46725
|
children: (e) => (() => {
|
|
46710
|
-
var r =
|
|
46726
|
+
var r = z2();
|
|
46711
46727
|
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;
|
|
46712
46728
|
})()
|
|
46713
46729
|
})), P(i, j(M, {
|
|
@@ -46715,7 +46731,7 @@ function G2(e) {
|
|
|
46715
46731
|
return e.onTogglePin;
|
|
46716
46732
|
},
|
|
46717
46733
|
get children() {
|
|
46718
|
-
var t =
|
|
46734
|
+
var t = I2();
|
|
46719
46735
|
return t.$$click = () => e.onTogglePin?.(), D((n) => {
|
|
46720
46736
|
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"}`;
|
|
46721
46737
|
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;
|
|
@@ -46730,10 +46746,10 @@ function G2(e) {
|
|
|
46730
46746
|
return e.onClose;
|
|
46731
46747
|
},
|
|
46732
46748
|
get children() {
|
|
46733
|
-
var t =
|
|
46749
|
+
var t = L2();
|
|
46734
46750
|
return t.$$click = () => e.onClose?.(), t;
|
|
46735
46751
|
}
|
|
46736
|
-
}), null), P(s, j(wM, { onCreated: () => n("activity") })), P(c, j(
|
|
46752
|
+
}), null), P(s, j(wM, { onCreated: () => n("activity") })), P(c, j(SQ, {})), P(l, j(m1, {})), P(u, j(L1, {})), P(d, j(j1, {})), P(f, j(S0, {})), P(p, j(L0, { onOpenIssue: () => n("activity") })), P(m, j(O2, {})), D((n) => {
|
|
46737
46753
|
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";
|
|
46738
46754
|
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;
|
|
46739
46755
|
}, {
|
|
@@ -46753,16 +46769,16 @@ function G2(e) {
|
|
|
46753
46769
|
rt(["pointerdown", "click"]);
|
|
46754
46770
|
//#endregion
|
|
46755
46771
|
//#region src/styles/app.css?inline
|
|
46756
|
-
var K2 = "/*! 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-\\[8ch\\]{min-width:8ch}.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}}";
|
|
46772
|
+
var q2 = "/*! 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-\\[8ch\\]{min-width:8ch}.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}}";
|
|
46757
46773
|
//#endregion
|
|
46758
46774
|
//#region src/page/index.tsx
|
|
46759
46775
|
Br();
|
|
46760
|
-
var
|
|
46761
|
-
function
|
|
46776
|
+
var J2 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), Y2 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), X2 = /*#__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"), Z2 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), Q2 = /*#__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"), $2 = /*#__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\">"), e4 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), t4 = /*#__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\">"), n4 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), r4 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), i4 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), a4 = /*#__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>"), o4 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), s4 = /*#__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\"> · <!> · ");
|
|
46777
|
+
function c4(e = {}) {
|
|
46762
46778
|
if (typeof window > "u" || window.__LINEAR_GRAB_PAGE__) return;
|
|
46763
46779
|
window.__LINEAR_GRAB_PAGE__ = !0;
|
|
46764
46780
|
let t = () => {
|
|
46765
|
-
lk(),
|
|
46781
|
+
lk(), JZ();
|
|
46766
46782
|
let t = document.createElement("div");
|
|
46767
46783
|
t.id = "linear-grab-root", document.body.appendChild(t);
|
|
46768
46784
|
let n = (e) => {
|
|
@@ -46790,17 +46806,17 @@ function s4(e = {}) {
|
|
|
46790
46806
|
"keypress"
|
|
46791
46807
|
]) window.addEventListener(e, n, { capture: !0 });
|
|
46792
46808
|
let r = t.attachShadow({ mode: "open" }), i = document.createElement("style");
|
|
46793
|
-
i.textContent =
|
|
46809
|
+
i.textContent = q2, r.appendChild(i);
|
|
46794
46810
|
let a = document.createElement("div");
|
|
46795
46811
|
r.appendChild(a);
|
|
46796
|
-
let o = () => a.setAttribute("data-theme",
|
|
46797
|
-
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(
|
|
46812
|
+
let o = () => a.setAttribute("data-theme", l4());
|
|
46813
|
+
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(h4, { get defaultOpen() {
|
|
46798
46814
|
return e.defaultOpen ?? !1;
|
|
46799
46815
|
} }), a);
|
|
46800
46816
|
};
|
|
46801
46817
|
document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
|
|
46802
46818
|
}
|
|
46803
|
-
function
|
|
46819
|
+
function l4() {
|
|
46804
46820
|
try {
|
|
46805
46821
|
let e = [document.body, document.documentElement];
|
|
46806
46822
|
for (let t of e) {
|
|
@@ -46810,11 +46826,11 @@ function c4() {
|
|
|
46810
46826
|
} catch {}
|
|
46811
46827
|
return matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
|
46812
46828
|
}
|
|
46813
|
-
var
|
|
46814
|
-
function
|
|
46829
|
+
var u4 = 130, d4 = 36, f4 = 380, p4 = 280, m4 = 720;
|
|
46830
|
+
function h4(e) {
|
|
46815
46831
|
let [t, n] = T(e.defaultOpen), [r, i] = T("right"), [a, o] = T({
|
|
46816
|
-
x: Math.max(8, window.innerWidth -
|
|
46817
|
-
y: Math.max(8, window.innerHeight -
|
|
46832
|
+
x: Math.max(8, window.innerWidth - u4 - 24),
|
|
46833
|
+
y: Math.max(8, window.innerHeight - d4 - 20)
|
|
46818
46834
|
}), [s, c] = T({
|
|
46819
46835
|
running: [],
|
|
46820
46836
|
review: []
|
|
@@ -46829,12 +46845,12 @@ function m4(e) {
|
|
|
46829
46845
|
let t = Math.floor(e / 1e3);
|
|
46830
46846
|
return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
46831
46847
|
}, [v, y] = T(null), b = (e) => ({
|
|
46832
|
-
x: Math.min(Math.max(8, e.x), window.innerWidth -
|
|
46833
|
-
y: Math.min(Math.max(8, e.y), window.innerHeight -
|
|
46848
|
+
x: Math.min(Math.max(8, e.x), window.innerWidth - u4 - 8),
|
|
46849
|
+
y: Math.min(Math.max(8, e.y), window.innerHeight - d4 - 8)
|
|
46834
46850
|
}), x = (e) => ({
|
|
46835
46851
|
x: Math.min(Math.max(8 - (te() - 80), e.x), window.innerWidth - 80),
|
|
46836
46852
|
y: Math.min(Math.max(0, e.y), window.innerHeight - 80)
|
|
46837
|
-
}), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(
|
|
46853
|
+
}), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(f4), ne = (e) => Math.min(m4, Math.max(p4, Math.min(e, window.innerWidth - 60)));
|
|
46838
46854
|
O(() => {
|
|
46839
46855
|
let e = document.documentElement, n = t() && S();
|
|
46840
46856
|
e.style.transition = "margin 0.2s ease", e.style.marginRight = n && r() === "right" ? `${te()}px` : "", e.style.marginLeft = n && r() === "left" ? `${te()}px` : "";
|
|
@@ -46868,7 +46884,7 @@ function m4(e) {
|
|
|
46868
46884
|
window.addEventListener("linear-grab:picker-finished", s), ae(() => {
|
|
46869
46885
|
window.removeEventListener(zZ, t), window.removeEventListener(BZ, r), window.removeEventListener("linear-grab:picker-finished", s);
|
|
46870
46886
|
});
|
|
46871
|
-
let l =
|
|
46887
|
+
let l = ZQ(c), u = HD().phase, d = UD((e) => {
|
|
46872
46888
|
m(e.phase), e.phase === "recording" && u !== "recording" && !S() && n(!1), e.phase === "ready" && u !== "ready" && (oj("capture"), n(!0)), u = e.phase;
|
|
46873
46889
|
}), p = () => {
|
|
46874
46890
|
o(b(a()));
|
|
@@ -46946,24 +46962,26 @@ function m4(e) {
|
|
|
46946
46962
|
return !t();
|
|
46947
46963
|
},
|
|
46948
46964
|
get children() {
|
|
46949
|
-
var e =
|
|
46950
|
-
return t.$$
|
|
46965
|
+
var e = $2(), t = e.firstChild;
|
|
46966
|
+
return t.$$click = () => {
|
|
46967
|
+
oe || p() === "recording" || (f(!1), n(!0));
|
|
46968
|
+
}, t.$$pointerdown = se, P(t, j(M, {
|
|
46951
46969
|
get when() {
|
|
46952
46970
|
return p() === "recording";
|
|
46953
46971
|
},
|
|
46954
46972
|
get fallback() {
|
|
46955
46973
|
return [
|
|
46956
46974
|
(() => {
|
|
46957
|
-
var e =
|
|
46975
|
+
var e = t4();
|
|
46958
46976
|
return e.$$click = () => {
|
|
46959
46977
|
oe || (f(!1), n(!0));
|
|
46960
|
-
}, P(e, j(
|
|
46978
|
+
}, P(e, j(G2, { size: 13 })), e;
|
|
46961
46979
|
})(),
|
|
46962
|
-
|
|
46980
|
+
n4(),
|
|
46963
46981
|
(() => {
|
|
46964
|
-
var e =
|
|
46965
|
-
return e.$$click = () => {
|
|
46966
|
-
oe
|
|
46982
|
+
var e = a4(), t = e.firstChild, n = t.nextSibling;
|
|
46983
|
+
return e.$$click = (e) => {
|
|
46984
|
+
e.stopPropagation(), !oe && f((e) => !e);
|
|
46967
46985
|
}, P(n, (() => {
|
|
46968
46986
|
var e = $e(() => !!k());
|
|
46969
46987
|
return () => e() ? "Copied ✓" : `${l().length} run`;
|
|
@@ -46972,8 +46990,8 @@ function m4(e) {
|
|
|
46972
46990
|
return $e(() => !k())() && u().length > 0;
|
|
46973
46991
|
},
|
|
46974
46992
|
get children() {
|
|
46975
|
-
return [
|
|
46976
|
-
var e =
|
|
46993
|
+
return [r4(), (() => {
|
|
46994
|
+
var e = i4(), t = e.firstChild;
|
|
46977
46995
|
return P(e, () => u().length, t), e;
|
|
46978
46996
|
})()];
|
|
46979
46997
|
}
|
|
@@ -46989,13 +47007,13 @@ function m4(e) {
|
|
|
46989
47007
|
},
|
|
46990
47008
|
get children() {
|
|
46991
47009
|
return [
|
|
46992
|
-
|
|
47010
|
+
J2(),
|
|
46993
47011
|
(() => {
|
|
46994
|
-
var e =
|
|
47012
|
+
var e = Y2();
|
|
46995
47013
|
return P(e, () => _(h())), e;
|
|
46996
47014
|
})(),
|
|
46997
47015
|
(() => {
|
|
46998
|
-
var e =
|
|
47016
|
+
var e = X2();
|
|
46999
47017
|
return e.$$click = () => {
|
|
47000
47018
|
oe || eO();
|
|
47001
47019
|
}, e;
|
|
@@ -47007,17 +47025,17 @@ function m4(e) {
|
|
|
47007
47025
|
return d();
|
|
47008
47026
|
},
|
|
47009
47027
|
get children() {
|
|
47010
|
-
var e =
|
|
47028
|
+
var e = Q2(), t = e.firstChild;
|
|
47011
47029
|
return P(e, j(M, {
|
|
47012
47030
|
get when() {
|
|
47013
47031
|
return u().length > 0;
|
|
47014
47032
|
},
|
|
47015
47033
|
get children() {
|
|
47016
|
-
return [
|
|
47034
|
+
return [Z2(), j(We, {
|
|
47017
47035
|
get each() {
|
|
47018
47036
|
return u();
|
|
47019
47037
|
},
|
|
47020
|
-
children: (e) => j(
|
|
47038
|
+
children: (e) => j(g4, {
|
|
47021
47039
|
agent: e,
|
|
47022
47040
|
review: !0,
|
|
47023
47041
|
onOpen: le
|
|
@@ -47029,14 +47047,14 @@ function m4(e) {
|
|
|
47029
47047
|
return l().length > 0;
|
|
47030
47048
|
},
|
|
47031
47049
|
get fallback() {
|
|
47032
|
-
return
|
|
47050
|
+
return o4();
|
|
47033
47051
|
},
|
|
47034
47052
|
get children() {
|
|
47035
47053
|
return j(We, {
|
|
47036
47054
|
get each() {
|
|
47037
47055
|
return l();
|
|
47038
47056
|
},
|
|
47039
|
-
children: (e) => j(
|
|
47057
|
+
children: (e) => j(g4, {
|
|
47040
47058
|
agent: e,
|
|
47041
47059
|
onOpen: le
|
|
47042
47060
|
})
|
|
@@ -47057,8 +47075,8 @@ function m4(e) {
|
|
|
47057
47075
|
return t();
|
|
47058
47076
|
},
|
|
47059
47077
|
get children() {
|
|
47060
|
-
var e =
|
|
47061
|
-
return t.$$pointerdown = ue, P(e, j(
|
|
47078
|
+
var e = e4(), t = e.firstChild;
|
|
47079
|
+
return t.$$pointerdown = ue, P(e, j(K2, {
|
|
47062
47080
|
onGrab: () => n(!0),
|
|
47063
47081
|
onClose: () => n(!1),
|
|
47064
47082
|
get onHeaderPointerDown() {
|
|
@@ -47086,19 +47104,19 @@ function m4(e) {
|
|
|
47086
47104
|
}
|
|
47087
47105
|
})];
|
|
47088
47106
|
}
|
|
47089
|
-
function
|
|
47107
|
+
function g4(e) {
|
|
47090
47108
|
return (() => {
|
|
47091
|
-
var t =
|
|
47109
|
+
var t = s4(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
|
|
47092
47110
|
return c.nextSibling, t.$$click = () => e.onOpen(e.agent.id), P(i, () => e.agent.identifier), P(a, () => e.agent.title), P(o, (() => {
|
|
47093
47111
|
var t = $e(() => !!e.review);
|
|
47094
47112
|
return () => t() ? "PR ready · needs review" : e.agent.stateName;
|
|
47095
|
-
})(), s), P(o, () => e.agent.delegateName, c), P(o, () =>
|
|
47113
|
+
})(), s), P(o, () => e.agent.delegateName, c), P(o, () => _4(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
|
|
47096
47114
|
})();
|
|
47097
47115
|
}
|
|
47098
|
-
function
|
|
47116
|
+
function _4(e) {
|
|
47099
47117
|
let t = Math.max(0, Math.floor((Date.now() - Date.parse(e)) / 1e3));
|
|
47100
47118
|
return t < 60 ? "now" : t < 3600 ? `${Math.floor(t / 60)}m` : t < 86400 ? `${Math.floor(t / 3600)}h` : `${Math.floor(t / 86400)}d`;
|
|
47101
47119
|
}
|
|
47102
47120
|
rt(["pointerdown", "click"]);
|
|
47103
47121
|
//#endregion
|
|
47104
|
-
export {
|
|
47122
|
+
export { c4 as init };
|