linear-grab 0.16.0 → 0.16.2
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/README.md +1 -1
- package/dist/index.global.js +8 -8
- package/dist/linear-grab.js +388 -372
- package/package.json +1 -1
package/dist/linear-grab.js
CHANGED
|
@@ -3152,25 +3152,17 @@ async function Dr(e) {
|
|
|
3152
3152
|
};
|
|
3153
3153
|
continue;
|
|
3154
3154
|
}
|
|
3155
|
-
let r = (e) => `${e.source?.filePath ?? ""}:${e.source?.lineNumber ?? ""}|${e.tagName ?? ""}|${(e.content ?? "").trim().slice(0, 80)}
|
|
3156
|
-
if (n.source?.filePath) {
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
};
|
|
3163
|
-
continue;
|
|
3164
|
-
}
|
|
3155
|
+
let r = (e) => `${e.source?.filePath ?? ""}:${e.source?.lineNumber ?? ""}|${e.tagName ?? ""}|${(e.content ?? "").trim().slice(0, 80)}`, i = t[t.length - 1];
|
|
3156
|
+
if (n.source?.filePath && i && r(i) === r(n)) {
|
|
3157
|
+
t[t.length - 1] = {
|
|
3158
|
+
...i,
|
|
3159
|
+
...n
|
|
3160
|
+
};
|
|
3161
|
+
continue;
|
|
3165
3162
|
}
|
|
3166
3163
|
t.push(n);
|
|
3167
3164
|
}
|
|
3168
|
-
|
|
3169
|
-
for (let e = t.length - 1; e >= 0; e--) {
|
|
3170
|
-
let i = t[e], a = i.source?.filePath ? `${i.source.filePath}:${i.source.lineNumber ?? ""}|${i.tagName ?? ""}|${(i.content ?? "").trim().slice(0, 80)}` : `id:${i.grabbedAt}`;
|
|
3171
|
-
n.has(a) || (n.add(a), r.unshift(i));
|
|
3172
|
-
}
|
|
3173
|
-
await Er(r.slice(-8));
|
|
3165
|
+
await Er(t.slice(-8));
|
|
3174
3166
|
}
|
|
3175
3167
|
async function Or(e) {
|
|
3176
3168
|
await Er((await Tr() ?? []).filter((t) => t.grabbedAt !== e));
|
|
@@ -41732,8 +41724,8 @@ function LZ() {
|
|
|
41732
41724
|
});
|
|
41733
41725
|
}
|
|
41734
41726
|
Rr(), br(), mD();
|
|
41735
|
-
var RZ = /*#__PURE__*/ N("<span class=\"text-text-faint ml-auto text-[10.5px] font-normal normal-case tabular-nums\">"), zZ = /*#__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\">"), BZ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex items-center justify-between gap-2\"><span class=\"text-text-faint min-w-0 text-[10.5px] leading-snug\">All elements post into ONE issue. Shift+click / drag selects several at once."),
|
|
41736
|
-
function
|
|
41727
|
+
var RZ = /*#__PURE__*/ N("<span class=\"text-text-faint ml-auto text-[10.5px] font-normal normal-case tabular-nums\">"), zZ = /*#__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\">"), BZ = /*#__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."), VZ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex items-center justify-between gap-2\"><span class=\"text-text-faint min-w-0 text-[10.5px] leading-snug\">All elements post into ONE issue. Shift+click / drag selects several at once."), HZ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\"><div class=\"flex gap-1.5\">"), UZ = /*#__PURE__*/ N("<span class=text-danger>●"), WZ = /*#__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."), GZ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Stop"), KZ = /*#__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"), qZ = /*#__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…"), JZ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-4 overflow-y-auto pt-3 pb-4 pl-3 pr-4\">"), YZ = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), XZ = /*#__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\">"), ZZ = /*#__PURE__*/ N("<span class=\"font-mono text-text-dim break-all text-[11px] leading-snug\">"), QZ = /*#__PURE__*/ N("<img alt=\"Element location screenshot\"class=\"border-border bg-bg max-h-32 w-full rounded-md border object-contain\">"), $Z = /*#__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\">"), eQ = /*#__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\">"), tQ = /*#__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\">"), nQ = /*#__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\">"), rQ = /*#__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\">"), iQ = /*#__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\">");
|
|
41728
|
+
function aQ(e) {
|
|
41737
41729
|
return (() => {
|
|
41738
41730
|
var t = zZ(), n = t.firstChild;
|
|
41739
41731
|
n.firstChild;
|
|
@@ -41749,7 +41741,7 @@ function iQ(e) {
|
|
|
41749
41741
|
}), null), P(r, () => e.children), t;
|
|
41750
41742
|
})();
|
|
41751
41743
|
}
|
|
41752
|
-
function
|
|
41744
|
+
function oQ() {
|
|
41753
41745
|
let e = sr(), t = _r(() => ({
|
|
41754
41746
|
queryKey: ["grab"],
|
|
41755
41747
|
queryFn: Tr
|
|
@@ -41834,8 +41826,8 @@ function aQ() {
|
|
|
41834
41826
|
}
|
|
41835
41827
|
};
|
|
41836
41828
|
return (() => {
|
|
41837
|
-
var e =
|
|
41838
|
-
return P(e, j(
|
|
41829
|
+
var e = JZ();
|
|
41830
|
+
return P(e, j(aQ, {
|
|
41839
41831
|
title: "Captured elements",
|
|
41840
41832
|
get badge() {
|
|
41841
41833
|
return $e(() => !!r().length)() ? `${r().length}/8` : void 0;
|
|
@@ -41852,13 +41844,13 @@ function aQ() {
|
|
|
41852
41844
|
});
|
|
41853
41845
|
},
|
|
41854
41846
|
get children() {
|
|
41855
|
-
var e =
|
|
41847
|
+
var e = VZ(), t = e.firstChild;
|
|
41856
41848
|
return t.firstChild, P(e, j(We, {
|
|
41857
41849
|
get each() {
|
|
41858
41850
|
return r();
|
|
41859
41851
|
},
|
|
41860
41852
|
children: (e) => (() => {
|
|
41861
|
-
var t =
|
|
41853
|
+
var t = $Z(), n = t.firstChild.firstChild, r = n.nextSibling;
|
|
41862
41854
|
return P(n, (() => {
|
|
41863
41855
|
var t = $e(() => !!e.componentName);
|
|
41864
41856
|
return () => t() ? `<${e.componentName}>` : $e(() => !!e.tagName)() ? `<${e.tagName}>` : "Element";
|
|
@@ -41874,10 +41866,10 @@ function aQ() {
|
|
|
41874
41866
|
return l() === e.grabbedAt;
|
|
41875
41867
|
},
|
|
41876
41868
|
get fallback() {
|
|
41877
|
-
return
|
|
41869
|
+
return eQ();
|
|
41878
41870
|
},
|
|
41879
41871
|
get children() {
|
|
41880
|
-
return
|
|
41872
|
+
return YZ();
|
|
41881
41873
|
}
|
|
41882
41874
|
});
|
|
41883
41875
|
}
|
|
@@ -41888,14 +41880,14 @@ function aQ() {
|
|
|
41888
41880
|
"aria-label": "Remove element",
|
|
41889
41881
|
onClick: () => void f(e.grabbedAt),
|
|
41890
41882
|
get children() {
|
|
41891
|
-
return
|
|
41883
|
+
return XZ();
|
|
41892
41884
|
}
|
|
41893
41885
|
}), null), P(t, j(M, {
|
|
41894
41886
|
get when() {
|
|
41895
41887
|
return e.source?.filePath;
|
|
41896
41888
|
},
|
|
41897
41889
|
get children() {
|
|
41898
|
-
var t =
|
|
41890
|
+
var t = ZZ();
|
|
41899
41891
|
return P(t, () => e.source.filePath, null), P(t, (() => {
|
|
41900
41892
|
var t = $e(() => e.source?.lineNumber != null);
|
|
41901
41893
|
return () => t() ? `:${e.source.lineNumber}` : "";
|
|
@@ -41906,11 +41898,18 @@ function aQ() {
|
|
|
41906
41898
|
return e.screenshotDataUrl;
|
|
41907
41899
|
},
|
|
41908
41900
|
get children() {
|
|
41909
|
-
var t =
|
|
41901
|
+
var t = QZ();
|
|
41910
41902
|
return D(() => it(t, "src", e.screenshotDataUrl)), t;
|
|
41911
41903
|
}
|
|
41912
41904
|
}), null), t;
|
|
41913
41905
|
})()
|
|
41906
|
+
}), t), P(e, j(M, {
|
|
41907
|
+
get when() {
|
|
41908
|
+
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;
|
|
41909
|
+
},
|
|
41910
|
+
get children() {
|
|
41911
|
+
return BZ();
|
|
41912
|
+
}
|
|
41914
41913
|
}), t), P(t, j(vj, {
|
|
41915
41914
|
class: "h-6 shrink-0 px-2 text-[11px]",
|
|
41916
41915
|
variant: "ghost",
|
|
@@ -41919,7 +41918,7 @@ function aQ() {
|
|
|
41919
41918
|
}), null), e;
|
|
41920
41919
|
}
|
|
41921
41920
|
}), (() => {
|
|
41922
|
-
var e =
|
|
41921
|
+
var e = HZ(), t = e.firstChild;
|
|
41923
41922
|
return P(t, j(vj, {
|
|
41924
41923
|
variant: "primary",
|
|
41925
41924
|
class: "min-w-0 flex-1",
|
|
@@ -41951,7 +41950,7 @@ function aQ() {
|
|
|
41951
41950
|
}), null), e;
|
|
41952
41951
|
})()];
|
|
41953
41952
|
}
|
|
41954
|
-
}), null), P(e, j(
|
|
41953
|
+
}), null), P(e, j(aQ, {
|
|
41955
41954
|
title: "Recording",
|
|
41956
41955
|
get badge() {
|
|
41957
41956
|
return $e(() => !!g().result)() ? `${(g().result.durationMs / 1e3).toFixed(1)}s` : void 0;
|
|
@@ -41963,12 +41962,12 @@ function aQ() {
|
|
|
41963
41962
|
return g().phase === "idle" || g().phase === "error";
|
|
41964
41963
|
},
|
|
41965
41964
|
get children() {
|
|
41966
|
-
var e =
|
|
41965
|
+
var e = WZ(), t = e.firstChild;
|
|
41967
41966
|
return P(e, j(vj, {
|
|
41968
41967
|
variant: "ghost",
|
|
41969
41968
|
onClick: () => void ZD(),
|
|
41970
41969
|
get children() {
|
|
41971
|
-
return [
|
|
41970
|
+
return [UZ(), " Record interaction"];
|
|
41972
41971
|
}
|
|
41973
41972
|
}), t), P(e, j(M, {
|
|
41974
41973
|
get when() {
|
|
@@ -41987,13 +41986,13 @@ function aQ() {
|
|
|
41987
41986
|
return g().phase === "recording";
|
|
41988
41987
|
},
|
|
41989
41988
|
get children() {
|
|
41990
|
-
var e =
|
|
41989
|
+
var e = KZ(), t = e.firstChild.nextSibling;
|
|
41991
41990
|
return t.nextSibling, P(t, () => b(v())), P(e, j(vj, {
|
|
41992
41991
|
variant: "primary",
|
|
41993
41992
|
class: "ml-auto",
|
|
41994
41993
|
onClick: () => void QD(),
|
|
41995
41994
|
get children() {
|
|
41996
|
-
return
|
|
41995
|
+
return GZ();
|
|
41997
41996
|
}
|
|
41998
41997
|
}), null), e;
|
|
41999
41998
|
}
|
|
@@ -42003,7 +42002,7 @@ function aQ() {
|
|
|
42003
42002
|
return g().phase === "processing";
|
|
42004
42003
|
},
|
|
42005
42004
|
get children() {
|
|
42006
|
-
var e =
|
|
42005
|
+
var e = qZ(), t = e.firstChild;
|
|
42007
42006
|
return P(e, j(yj, {}), t), e;
|
|
42008
42007
|
}
|
|
42009
42008
|
}),
|
|
@@ -42012,7 +42011,7 @@ function aQ() {
|
|
|
42012
42011
|
return $e(() => g().phase === "ready")() && g().result;
|
|
42013
42012
|
},
|
|
42014
42013
|
children: (e) => (() => {
|
|
42015
|
-
var t =
|
|
42014
|
+
var t = rQ(), n = t.firstChild, r = n.nextSibling, a = r.firstChild, o = a.nextSibling, s = o.nextSibling.nextSibling;
|
|
42016
42015
|
s.nextSibling;
|
|
42017
42016
|
var c = r.nextSibling, l = c.firstChild, u = c.nextSibling;
|
|
42018
42017
|
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) => eO(e.currentTarget.checked)), P(u, j(vj, {
|
|
@@ -42035,10 +42034,10 @@ function aQ() {
|
|
|
42035
42034
|
return x() === "copied";
|
|
42036
42035
|
},
|
|
42037
42036
|
get fallback() {
|
|
42038
|
-
return
|
|
42037
|
+
return iQ();
|
|
42039
42038
|
},
|
|
42040
42039
|
get children() {
|
|
42041
|
-
return
|
|
42040
|
+
return YZ();
|
|
42042
42041
|
}
|
|
42043
42042
|
});
|
|
42044
42043
|
}
|
|
@@ -42057,10 +42056,10 @@ function aQ() {
|
|
|
42057
42056
|
return te() === "copied";
|
|
42058
42057
|
},
|
|
42059
42058
|
get fallback() {
|
|
42060
|
-
return
|
|
42059
|
+
return eQ();
|
|
42061
42060
|
},
|
|
42062
42061
|
get children() {
|
|
42063
|
-
return
|
|
42062
|
+
return YZ();
|
|
42064
42063
|
}
|
|
42065
42064
|
});
|
|
42066
42065
|
}
|
|
@@ -42071,7 +42070,7 @@ function aQ() {
|
|
|
42071
42070
|
"aria-label": "Download GIF",
|
|
42072
42071
|
onClick: ee,
|
|
42073
42072
|
get children() {
|
|
42074
|
-
return
|
|
42073
|
+
return tQ();
|
|
42075
42074
|
}
|
|
42076
42075
|
}), null), P(u, j(vj, {
|
|
42077
42076
|
variant: "danger",
|
|
@@ -42080,7 +42079,7 @@ function aQ() {
|
|
|
42080
42079
|
"aria-label": "Discard recording",
|
|
42081
42080
|
onClick: $D,
|
|
42082
42081
|
get children() {
|
|
42083
|
-
return
|
|
42082
|
+
return nQ();
|
|
42084
42083
|
}
|
|
42085
42084
|
}), null), P(t, j(M, {
|
|
42086
42085
|
get when() {
|
|
@@ -42101,7 +42100,7 @@ function aQ() {
|
|
|
42101
42100
|
}
|
|
42102
42101
|
//#endregion
|
|
42103
42102
|
//#region node_modules/@tanstack/virtual-core/dist/esm/lazy-measurements.js
|
|
42104
|
-
function
|
|
42103
|
+
function sQ(e, t, n) {
|
|
42105
42104
|
let r = Array(e);
|
|
42106
42105
|
return new Proxy(r, { get(r, i, a) {
|
|
42107
42106
|
if (typeof i == "string") {
|
|
@@ -42131,7 +42130,7 @@ function oQ(e, t, n) {
|
|
|
42131
42130
|
}
|
|
42132
42131
|
//#endregion
|
|
42133
42132
|
//#region node_modules/@tanstack/virtual-core/dist/esm/utils.js
|
|
42134
|
-
function
|
|
42133
|
+
function cQ(e, t, n) {
|
|
42135
42134
|
let r = n.initialDeps ?? [], i, a = !0;
|
|
42136
42135
|
function o() {
|
|
42137
42136
|
let o = e();
|
|
@@ -42141,32 +42140,32 @@ function sQ(e, t, n) {
|
|
|
42141
42140
|
r = e;
|
|
42142
42141
|
}, o;
|
|
42143
42142
|
}
|
|
42144
|
-
function
|
|
42143
|
+
function lQ(e, t) {
|
|
42145
42144
|
if (e === void 0) throw Error(`Unexpected undefined${t ? `: ${t}` : ""}`);
|
|
42146
42145
|
return e;
|
|
42147
42146
|
}
|
|
42148
|
-
var
|
|
42147
|
+
var uQ = (e, t) => Math.abs(e - t) < 1.01, dQ = (e, t, n) => {
|
|
42149
42148
|
let r;
|
|
42150
42149
|
return function(...i) {
|
|
42151
42150
|
e.clearTimeout(r), r = e.setTimeout(() => t.apply(this, i), n);
|
|
42152
42151
|
};
|
|
42153
|
-
},
|
|
42154
|
-
if (
|
|
42155
|
-
if (typeof navigator > "u") return
|
|
42156
|
-
if (/iP(hone|od|ad)/.test(navigator.userAgent)) return
|
|
42152
|
+
}, fQ, pQ = () => {
|
|
42153
|
+
if (fQ !== void 0) return fQ;
|
|
42154
|
+
if (typeof navigator > "u") return fQ = !1;
|
|
42155
|
+
if (/iP(hone|od|ad)/.test(navigator.userAgent)) return fQ = !0;
|
|
42157
42156
|
let e = navigator.maxTouchPoints;
|
|
42158
|
-
return
|
|
42159
|
-
},
|
|
42157
|
+
return fQ = navigator.platform === "MacIntel" && e !== void 0 && e > 0;
|
|
42158
|
+
}, mQ = (e) => {
|
|
42160
42159
|
let { offsetWidth: t, offsetHeight: n } = e;
|
|
42161
42160
|
return {
|
|
42162
42161
|
width: t,
|
|
42163
42162
|
height: n
|
|
42164
42163
|
};
|
|
42165
|
-
},
|
|
42164
|
+
}, hQ = (e) => e, gQ = (e) => {
|
|
42166
42165
|
let t = Math.max(e.startIndex - e.overscan, 0), n = Math.min(e.endIndex + e.overscan, e.count - 1) - t + 1, r = Array(n);
|
|
42167
42166
|
for (let e = 0; e < n; e++) r[e] = t + e;
|
|
42168
42167
|
return r;
|
|
42169
|
-
},
|
|
42168
|
+
}, _Q = (e, t) => {
|
|
42170
42169
|
let n = e.scrollElement;
|
|
42171
42170
|
if (!n) return;
|
|
42172
42171
|
let r = e.targetWindow;
|
|
@@ -42178,7 +42177,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42178
42177
|
height: Math.round(r)
|
|
42179
42178
|
});
|
|
42180
42179
|
};
|
|
42181
|
-
if (i(
|
|
42180
|
+
if (i(mQ(n)), !r.ResizeObserver) return () => {};
|
|
42182
42181
|
let a = new r.ResizeObserver((t) => {
|
|
42183
42182
|
let r = () => {
|
|
42184
42183
|
let e = t[0];
|
|
@@ -42192,28 +42191,28 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42192
42191
|
return;
|
|
42193
42192
|
}
|
|
42194
42193
|
}
|
|
42195
|
-
i(
|
|
42194
|
+
i(mQ(n));
|
|
42196
42195
|
};
|
|
42197
42196
|
e.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(r) : r();
|
|
42198
42197
|
});
|
|
42199
42198
|
return a.observe(n, { box: "border-box" }), () => {
|
|
42200
42199
|
a.unobserve(n);
|
|
42201
42200
|
};
|
|
42202
|
-
},
|
|
42201
|
+
}, vQ = { passive: !0 }, yQ = typeof window > "u" || "onscrollend" in window, bQ = (e, t, n) => {
|
|
42203
42202
|
let r = e.scrollElement;
|
|
42204
42203
|
if (!r) return;
|
|
42205
42204
|
let i = e.targetWindow;
|
|
42206
42205
|
if (!i) return;
|
|
42207
|
-
let a = e.options.useScrollendEvent &&
|
|
42206
|
+
let a = e.options.useScrollendEvent && yQ, o = 0, s = a ? null : dQ(i, () => t(o, !1), e.options.isScrollingResetDelay), c = (e) => () => {
|
|
42208
42207
|
o = n(r), s?.(), t(o, e);
|
|
42209
42208
|
}, l = c(!0), u = c(!1);
|
|
42210
|
-
return r.addEventListener("scroll", l,
|
|
42209
|
+
return r.addEventListener("scroll", l, vQ), a && r.addEventListener("scrollend", u, vQ), () => {
|
|
42211
42210
|
r.removeEventListener("scroll", l), a && r.removeEventListener("scrollend", u);
|
|
42212
42211
|
};
|
|
42213
|
-
},
|
|
42212
|
+
}, xQ = (e, t) => bQ(e, t, (t) => {
|
|
42214
42213
|
let { horizontal: n, isRtl: r } = e.options;
|
|
42215
42214
|
return n ? t.scrollLeft * (r && -1 || 1) : t.scrollTop;
|
|
42216
|
-
}),
|
|
42215
|
+
}), SQ = (e, t, n) => {
|
|
42217
42216
|
if (n.options.useCachedMeasurements) {
|
|
42218
42217
|
let t = n.indexFromElement(e), r = n.options.getItemKey(t);
|
|
42219
42218
|
return n.itemSizeCache.get(r) ?? n.options.estimateSize(t);
|
|
@@ -42227,13 +42226,13 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42227
42226
|
if (i !== void 0) return i;
|
|
42228
42227
|
}
|
|
42229
42228
|
return e[n.options.horizontal ? "offsetWidth" : "offsetHeight"];
|
|
42230
|
-
},
|
|
42229
|
+
}, CQ = (e, { adjustments: t = 0, behavior: n }, r) => {
|
|
42231
42230
|
var i, a;
|
|
42232
42231
|
(a = (i = r.scrollElement)?.scrollTo) == null || a.call(i, {
|
|
42233
42232
|
[r.options.horizontal ? "left" : "top"]: e + t,
|
|
42234
42233
|
behavior: n
|
|
42235
42234
|
});
|
|
42236
|
-
},
|
|
42235
|
+
}, wQ = class {
|
|
42237
42236
|
constructor(e) {
|
|
42238
42237
|
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 = () => {
|
|
42239
42238
|
var e;
|
|
@@ -42274,10 +42273,10 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42274
42273
|
scrollPaddingStart: 0,
|
|
42275
42274
|
scrollPaddingEnd: 0,
|
|
42276
42275
|
horizontal: !1,
|
|
42277
|
-
getItemKey:
|
|
42278
|
-
rangeExtractor:
|
|
42276
|
+
getItemKey: hQ,
|
|
42277
|
+
rangeExtractor: gQ,
|
|
42279
42278
|
onChange: () => {},
|
|
42280
|
-
measureElement:
|
|
42279
|
+
measureElement: SQ,
|
|
42281
42280
|
initialRect: {
|
|
42282
42281
|
width: 0,
|
|
42283
42282
|
height: 0
|
|
@@ -42335,7 +42334,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42335
42334
|
}, this.notify = (e) => {
|
|
42336
42335
|
var t, n;
|
|
42337
42336
|
(n = (t = this.options).onChange) == null || n.call(t, this, e);
|
|
42338
|
-
}, this.maybeNotify =
|
|
42337
|
+
}, this.maybeNotify = cQ(() => (this.calculateRange(), [
|
|
42339
42338
|
this.isScrolling,
|
|
42340
42339
|
this.range ? this.range.startIndex : null,
|
|
42341
42340
|
this.range ? this.range.endIndex : null
|
|
@@ -42373,11 +42372,11 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42373
42372
|
let e = this.scrollElement, t = () => {
|
|
42374
42373
|
this._iosTouching = !0, this._iosJustTouchEnded = !1, this._iosTouchEndTimerId !== null && this.targetWindow != null && (this.targetWindow.clearTimeout(this._iosTouchEndTimerId), this._iosTouchEndTimerId = null);
|
|
42375
42374
|
}, n = () => {
|
|
42376
|
-
this._iosTouching = !1, !(!
|
|
42375
|
+
this._iosTouching = !1, !(!pQ() || this.targetWindow == null) && (this._iosJustTouchEnded = !0, this._iosTouchEndTimerId = this.targetWindow.setTimeout(() => {
|
|
42377
42376
|
this._iosJustTouchEnded = !1, this._iosTouchEndTimerId = null, this._flushIosDeferredIfReady();
|
|
42378
42377
|
}, 150));
|
|
42379
42378
|
};
|
|
42380
|
-
e.addEventListener("touchstart", t,
|
|
42379
|
+
e.addEventListener("touchstart", t, vQ), e.addEventListener("touchend", n, vQ), this.unsubs.push(() => {
|
|
42381
42380
|
e.removeEventListener("touchstart", t), e.removeEventListener("touchend", n), this._iosTouchEndTimerId !== null && this.targetWindow != null && (this.targetWindow.clearTimeout(this._iosTouchEndTimerId), this._iosTouchEndTimerId = null);
|
|
42382
42381
|
});
|
|
42383
42382
|
}
|
|
@@ -42389,7 +42388,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42389
42388
|
let t = this.pendingScrollAnchor;
|
|
42390
42389
|
if (this.pendingScrollAnchor = null, t && this.scrollElement && this.options.enabled) {
|
|
42391
42390
|
let [e, n, r, i] = t;
|
|
42392
|
-
e !== null && !r && (
|
|
42391
|
+
e !== null && !r && (pQ() && (this.isScrolling || this._iosTouching || this._iosJustTouchEnded) ? i !== 0 && (this._iosDeferredAdjustment += i) : this._scrollToOffset(this.getScrollOffset(), {
|
|
42393
42392
|
adjustments: void 0,
|
|
42394
42393
|
behavior: void 0
|
|
42395
42394
|
})), r && this.scrollToEnd({ behavior: r });
|
|
@@ -42403,7 +42402,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42403
42402
|
adjustments: this.scrollAdjustments += n,
|
|
42404
42403
|
behavior: void 0
|
|
42405
42404
|
});
|
|
42406
|
-
}, 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 =
|
|
42405
|
+
}, 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 = cQ(() => [
|
|
42407
42406
|
this.options.count,
|
|
42408
42407
|
this.options.paddingStart,
|
|
42409
42408
|
this.options.scrollMargin,
|
|
@@ -42421,7 +42420,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42421
42420
|
lanes: a,
|
|
42422
42421
|
laneAssignmentMode: o,
|
|
42423
42422
|
gap: s
|
|
42424
|
-
}), { key: !1 }), this.getMeasurements =
|
|
42423
|
+
}), { key: !1 }), this.getMeasurements = cQ(() => [this.getMeasurementOptions(), this.itemSizeCacheVersion], ({ count: e, paddingStart: t, scrollMargin: n, getItemKey: r, enabled: i, lanes: a, laneAssignmentMode: o, gap: s }, c) => {
|
|
42425
42424
|
let l = this.itemSizeCache;
|
|
42426
42425
|
if (!i) return this.measurementsCache = [], this.itemSizeCache.clear(), this.laneAssignments.clear(), [];
|
|
42427
42426
|
if (this.laneAssignments.size > e) for (let t of this.laneAssignments.keys()) t >= e && this.laneAssignments.delete(t);
|
|
@@ -42445,7 +42444,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42445
42444
|
let e = r(t), n = l.get(e), i = typeof n == "number" ? n : this.options.estimateSize(t);
|
|
42446
42445
|
a[t * 2] = o, a[t * 2 + 1] = i, o += i + s;
|
|
42447
42446
|
}
|
|
42448
|
-
let c =
|
|
42447
|
+
let c = sQ(e, a, r);
|
|
42449
42448
|
return this.measurementsCache = c, c;
|
|
42450
42449
|
}
|
|
42451
42450
|
let d = this.measurementsCache.slice(0, u), f = Array(a).fill(void 0), p = new Float64Array(a), m = 0;
|
|
@@ -42481,15 +42480,15 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42481
42480
|
}, {
|
|
42482
42481
|
key: !1,
|
|
42483
42482
|
debug: () => this.options.debug
|
|
42484
|
-
}), this.calculateRange =
|
|
42483
|
+
}), this.calculateRange = cQ(() => [
|
|
42485
42484
|
this.getMeasurements(),
|
|
42486
42485
|
this.getSize(),
|
|
42487
42486
|
this.getScrollOffset(),
|
|
42488
42487
|
this.options.lanes
|
|
42489
|
-
], (e, t, n, r) => e.length === 0 || t === 0 ? (this.range = null, null) : (this.range =
|
|
42488
|
+
], (e, t, n, r) => e.length === 0 || t === 0 ? (this.range = null, null) : (this.range = DQ(e, t, n, r, r === 1 && this._flatMeasurements != null ? this._flatMeasurements : null), this.range), {
|
|
42490
42489
|
key: !1,
|
|
42491
42490
|
debug: () => this.options.debug
|
|
42492
|
-
}), this.getVirtualIndexes =
|
|
42491
|
+
}), this.getVirtualIndexes = cQ(() => {
|
|
42493
42492
|
let e = null, t = null, n = this.calculateRange();
|
|
42494
42493
|
return n && (e = n.startIndex, t = n.endIndex), this.maybeNotify.updateDeps([
|
|
42495
42494
|
this.isScrolling,
|
|
@@ -42551,7 +42550,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42551
42550
|
}, o, this));
|
|
42552
42551
|
(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);
|
|
42553
42552
|
}
|
|
42554
|
-
}, this.getVirtualItems =
|
|
42553
|
+
}, this.getVirtualItems = cQ(() => [this.getVirtualIndexes(), this.getMeasurements()], (e, t) => {
|
|
42555
42554
|
let n = [];
|
|
42556
42555
|
for (let r = 0, i = e.length; r < i; r++) {
|
|
42557
42556
|
let i = t[e[r]];
|
|
@@ -42565,7 +42564,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42565
42564
|
let t = this.getMeasurements();
|
|
42566
42565
|
if (t.length === 0) return;
|
|
42567
42566
|
let n = this._flatMeasurements, r = this.options.lanes === 1 && n != null;
|
|
42568
|
-
return
|
|
42567
|
+
return lQ(t[TQ(0, t.length - 1, r ? (e) => n[e * 2] : (e) => lQ(t[e]).start, e)]);
|
|
42569
42568
|
}, this.getMaxScrollOffset = () => {
|
|
42570
42569
|
if (!this.scrollElement) return 0;
|
|
42571
42570
|
if ("scrollHeight" in this.scrollElement) return this.options.horizontal ? this.scrollElement.scrollWidth - this.scrollElement.clientWidth : this.scrollElement.scrollHeight - this.scrollElement.clientHeight;
|
|
@@ -42678,7 +42677,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42678
42677
|
}, this.setOptions(e);
|
|
42679
42678
|
}
|
|
42680
42679
|
applyScrollAdjustment(e, t) {
|
|
42681
|
-
e !== 0 && (
|
|
42680
|
+
e !== 0 && (pQ() && (this.isScrolling || this._iosTouching || this._iosJustTouchEnded) ? this._iosDeferredAdjustment += e : (this._scrollToOffset(this.getScrollOffset(), {
|
|
42682
42681
|
adjustments: this.scrollAdjustments += e,
|
|
42683
42682
|
behavior: t
|
|
42684
42683
|
}), this.scrollOffset !== null && (this.scrollOffset += this.scrollAdjustments, this.scrollAdjustments = 0)));
|
|
@@ -42699,7 +42698,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42699
42698
|
return;
|
|
42700
42699
|
}
|
|
42701
42700
|
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;
|
|
42702
|
-
if (!n &&
|
|
42701
|
+
if (!n && uQ(t, this.getScrollOffset())) {
|
|
42703
42702
|
if (this.scrollState.stableFrames++, this.scrollState.stableFrames >= 1) {
|
|
42704
42703
|
this.getScrollOffset() !== t && this._scrollToOffset(t, {
|
|
42705
42704
|
adjustments: void 0,
|
|
@@ -42716,7 +42715,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42716
42715
|
}
|
|
42717
42716
|
this.scheduleScrollReconcile();
|
|
42718
42717
|
}
|
|
42719
|
-
},
|
|
42718
|
+
}, TQ = (e, t, n, r) => {
|
|
42720
42719
|
for (; e <= t;) {
|
|
42721
42720
|
let i = (e + t) / 2 | 0, a = n(i);
|
|
42722
42721
|
if (a < r) e = i + 1;
|
|
@@ -42725,7 +42724,7 @@ var lQ = (e, t) => Math.abs(e - t) < 1.01, uQ = (e, t, n) => {
|
|
|
42725
42724
|
}
|
|
42726
42725
|
return e > 0 ? e - 1 : 0;
|
|
42727
42726
|
};
|
|
42728
|
-
function
|
|
42727
|
+
function EQ(e, t, n) {
|
|
42729
42728
|
let r = 0;
|
|
42730
42729
|
for (; r <= t;) {
|
|
42731
42730
|
let i = (r + t) / 2 | 0, a = e[i * 2];
|
|
@@ -42735,21 +42734,21 @@ function TQ(e, t, n) {
|
|
|
42735
42734
|
}
|
|
42736
42735
|
return r > 0 ? r - 1 : 0;
|
|
42737
42736
|
}
|
|
42738
|
-
function
|
|
42737
|
+
function DQ(e, t, n, r, i) {
|
|
42739
42738
|
let a = e.length - 1;
|
|
42740
42739
|
if (e.length <= r) return {
|
|
42741
42740
|
startIndex: 0,
|
|
42742
42741
|
endIndex: a
|
|
42743
42742
|
};
|
|
42744
42743
|
if (r === 1 && i !== null) {
|
|
42745
|
-
let e =
|
|
42744
|
+
let e = EQ(i, a, n), r = e, o = n + t;
|
|
42746
42745
|
for (; r < a && i[r * 2] + i[r * 2 + 1] < o;) r++;
|
|
42747
42746
|
return {
|
|
42748
42747
|
startIndex: e,
|
|
42749
42748
|
endIndex: r
|
|
42750
42749
|
};
|
|
42751
42750
|
}
|
|
42752
|
-
let o =
|
|
42751
|
+
let o = TQ(0, a, (t) => e[t].start, n), s = o;
|
|
42753
42752
|
if (r === 1) for (; s < a && e[s].end < n + t;) s++;
|
|
42754
42753
|
else if (r > 1) {
|
|
42755
42754
|
let i = Array(r).fill(0);
|
|
@@ -42771,8 +42770,8 @@ function EQ(e, t, n, r, i) {
|
|
|
42771
42770
|
}
|
|
42772
42771
|
//#endregion
|
|
42773
42772
|
//#region node_modules/@tanstack/solid-virtual/dist/esm/index.js
|
|
42774
|
-
function
|
|
42775
|
-
let t = Ve(e), n = new
|
|
42773
|
+
function OQ(e) {
|
|
42774
|
+
let t = Ve(e), n = new wQ(t), [r, i] = tr(n.getVirtualItems()), [a, o] = T(n.getTotalSize()), s = new Proxy(n, { get(e, t) {
|
|
42776
42775
|
switch (t) {
|
|
42777
42776
|
case "getVirtualItems": return () => r;
|
|
42778
42777
|
case "getTotalSize": return () => a();
|
|
@@ -42789,29 +42788,29 @@ function DQ(e) {
|
|
|
42789
42788
|
} })), s._willUpdate(), i(ar(n.getVirtualItems(), { key: "index" })), o(n.getTotalSize());
|
|
42790
42789
|
}), s;
|
|
42791
42790
|
}
|
|
42792
|
-
function
|
|
42793
|
-
return
|
|
42794
|
-
observeElementRect:
|
|
42795
|
-
observeElementOffset:
|
|
42796
|
-
scrollToFn:
|
|
42791
|
+
function kQ(e) {
|
|
42792
|
+
return OQ(Ve({
|
|
42793
|
+
observeElementRect: _Q,
|
|
42794
|
+
observeElementOffset: xQ,
|
|
42795
|
+
scrollToFn: CQ
|
|
42797
42796
|
}, e));
|
|
42798
42797
|
}
|
|
42799
42798
|
//#endregion
|
|
42800
42799
|
//#region src/lib/agentWatch.ts
|
|
42801
42800
|
Rr();
|
|
42802
|
-
var
|
|
42801
|
+
var AQ = 3e4, jQ = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i, MQ = {
|
|
42803
42802
|
running: [],
|
|
42804
42803
|
review: []
|
|
42805
|
-
},
|
|
42806
|
-
function
|
|
42807
|
-
return
|
|
42808
|
-
|
|
42804
|
+
}, NQ = null, PQ = /* @__PURE__ */ new Set();
|
|
42805
|
+
function FQ(e) {
|
|
42806
|
+
return PQ.add(e), NQ || (NQ = setInterval(() => void RQ(), AQ), RQ()), () => {
|
|
42807
|
+
PQ.delete(e), !PQ.size && NQ && (clearInterval(NQ), NQ = null);
|
|
42809
42808
|
};
|
|
42810
42809
|
}
|
|
42811
|
-
function
|
|
42812
|
-
|
|
42810
|
+
function IQ() {
|
|
42811
|
+
RQ();
|
|
42813
42812
|
}
|
|
42814
|
-
function
|
|
42813
|
+
function LQ(e) {
|
|
42815
42814
|
return {
|
|
42816
42815
|
id: e.id,
|
|
42817
42816
|
identifier: e.identifier,
|
|
@@ -42820,49 +42819,49 @@ function IQ(e) {
|
|
|
42820
42819
|
stateColor: e.state.color,
|
|
42821
42820
|
delegateName: e.delegate?.displayName ?? "Agent",
|
|
42822
42821
|
updatedAt: e.updatedAt,
|
|
42823
|
-
prUrl: e.attachments?.find((e) =>
|
|
42822
|
+
prUrl: e.attachments?.find((e) => jQ.test(e.url))?.url
|
|
42824
42823
|
};
|
|
42825
42824
|
}
|
|
42826
|
-
async function
|
|
42825
|
+
async function RQ() {
|
|
42827
42826
|
try {
|
|
42828
42827
|
let e = await Cr();
|
|
42829
42828
|
if (!e.linearApiKey && !e.linearAccessToken) return;
|
|
42830
|
-
let t = (await uO()).filter((e) => !!e.delegate && e.state.type === "started").map(
|
|
42831
|
-
|
|
42829
|
+
let t = (await uO()).filter((e) => !!e.delegate && e.state.type === "started").map(LQ);
|
|
42830
|
+
MQ = {
|
|
42832
42831
|
running: t.filter((e) => !e.prUrl),
|
|
42833
42832
|
review: t.filter((e) => !!e.prUrl)
|
|
42834
42833
|
};
|
|
42835
|
-
for (let e of
|
|
42834
|
+
for (let e of PQ) e(MQ);
|
|
42836
42835
|
} catch {}
|
|
42837
42836
|
}
|
|
42838
42837
|
//#endregion
|
|
42839
42838
|
//#region src/lib/captureShare.ts
|
|
42840
42839
|
Rr();
|
|
42841
|
-
function
|
|
42840
|
+
function zQ(e, t = 6e3) {
|
|
42842
42841
|
return Promise.race([e, new Promise((e, n) => setTimeout(() => n(/* @__PURE__ */ Error("upload timeout")), t))]);
|
|
42843
42842
|
}
|
|
42844
|
-
async function
|
|
42843
|
+
async function BQ() {
|
|
42845
42844
|
let e = [];
|
|
42846
42845
|
for (let t of await Tr() ?? []) {
|
|
42847
42846
|
let n = t.source?.filePath ? ` — \`${t.source.filePath}${t.source.lineNumber == null ? "" : `:${t.source.lineNumber}`}\`` : "";
|
|
42848
42847
|
if (e.push(`- \`<${t.componentName ?? t.tagName ?? "element"}>\`${n}`), t.screenshotDataUrl) try {
|
|
42849
|
-
let n = await
|
|
42848
|
+
let n = await zQ(xO(WA(t.screenshotDataUrl), `capture-${t.grabbedAt}.png`));
|
|
42850
42849
|
e.push(` `);
|
|
42851
42850
|
} catch {}
|
|
42852
42851
|
}
|
|
42853
42852
|
let t = BD();
|
|
42854
42853
|
if (t.result) try {
|
|
42855
|
-
let n = t.result.assetUrl ?? await
|
|
42854
|
+
let n = t.result.assetUrl ?? await zQ(xO(t.result.blob, `recording-${Date.now()}.gif`));
|
|
42856
42855
|
tO(n), e.push(``);
|
|
42857
42856
|
} catch {}
|
|
42858
42857
|
return e.length ? `Captured context:\n${e.join("\n")}` : null;
|
|
42859
42858
|
}
|
|
42860
42859
|
//#endregion
|
|
42861
42860
|
//#region src/panel/components/markdown.ts
|
|
42862
|
-
function
|
|
42861
|
+
function VQ(e) {
|
|
42863
42862
|
return e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
42864
42863
|
}
|
|
42865
|
-
var
|
|
42864
|
+
var HQ = /^(https?:\/\/|mailto:)/i, UQ = /\.(mp4|mov|webm|m4v)(\?|#|$)/i, WQ = /\.(png|jpe?g|gif|webp|avif|svg)(\?|#|$)/i, GQ = class extends HTMLElement {
|
|
42866
42865
|
objectUrl = null;
|
|
42867
42866
|
connectedCallback() {
|
|
42868
42867
|
let e = this.getAttribute("src") ?? "", t = this.getAttribute("alt") ?? "";
|
|
@@ -42889,27 +42888,27 @@ var VQ = /^(https?:\/\/|mailto:)/i, HQ = /\.(mp4|mov|webm|m4v)(\?|#|$)/i, UQ = /
|
|
|
42889
42888
|
this.objectUrl && URL.revokeObjectURL(this.objectUrl);
|
|
42890
42889
|
}
|
|
42891
42890
|
};
|
|
42892
|
-
typeof customElements < "u" && !customElements.get("lg-media") && customElements.define("lg-media",
|
|
42893
|
-
var
|
|
42894
|
-
function KQ(e) {
|
|
42895
|
-
GQ = e ? e.replace(/\/$/, "") : null;
|
|
42896
|
-
}
|
|
42891
|
+
typeof customElements < "u" && !customElements.get("lg-media") && customElements.define("lg-media", GQ);
|
|
42892
|
+
var KQ = null;
|
|
42897
42893
|
function qQ(e) {
|
|
42894
|
+
KQ = e ? e.replace(/\/$/, "") : null;
|
|
42895
|
+
}
|
|
42896
|
+
function JQ(e) {
|
|
42898
42897
|
try {
|
|
42899
|
-
if (
|
|
42898
|
+
if (KQ && new URL(e).hostname.endsWith("uploads.linear.app")) return `${KQ}/fetch?url=${encodeURIComponent(e)}`;
|
|
42900
42899
|
} catch {}
|
|
42901
42900
|
return e;
|
|
42902
42901
|
}
|
|
42903
|
-
function
|
|
42902
|
+
function YQ(e) {
|
|
42904
42903
|
let t = e;
|
|
42905
42904
|
return t = t.replace(/`([^`]+)`/g, (e, t) => `<code>${t}</code>`), t = t.replace(/!\[([^\]]*)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) => {
|
|
42906
|
-
if (!
|
|
42907
|
-
let r =
|
|
42908
|
-
return
|
|
42909
|
-
}), t = t.replace(/\[([^\]]+)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) =>
|
|
42905
|
+
if (!HQ.test(n)) return t;
|
|
42906
|
+
let r = JQ(n);
|
|
42907
|
+
return UQ.test(n) ? `<video controls preload="metadata" src="${r}"></video>` : r !== n && !WQ.test(n) ? `<lg-media src="${r}" alt="${t}"></lg-media>` : `<img src="${r}" alt="${t}" loading="lazy" />`;
|
|
42908
|
+
}), t = t.replace(/\[([^\]]+)\]\((?:<)?([^()\s]+?)(?:>)?\)/g, (e, t, n) => HQ.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;
|
|
42910
42909
|
}
|
|
42911
|
-
function
|
|
42912
|
-
let t =
|
|
42910
|
+
function XQ(e) {
|
|
42911
|
+
let t = VQ(e.trim()).split("\n"), n = [], r = 0;
|
|
42913
42912
|
for (; r < t.length;) {
|
|
42914
42913
|
let e = t[r];
|
|
42915
42914
|
if (!e.trim()) {
|
|
@@ -42924,51 +42923,51 @@ function YQ(e) {
|
|
|
42924
42923
|
}
|
|
42925
42924
|
let i = e.match(/^(#{1,6})\s+(.*)$/);
|
|
42926
42925
|
if (i) {
|
|
42927
|
-
n.push(`<h4>${
|
|
42926
|
+
n.push(`<h4>${YQ(i[2])}</h4>`), r++;
|
|
42928
42927
|
continue;
|
|
42929
42928
|
}
|
|
42930
42929
|
if (/^\s*[-*]\s+/.test(e)) {
|
|
42931
42930
|
let e = [];
|
|
42932
|
-
for (; r < t.length && /^\s*[-*]\s+/.test(t[r]);) e.push(`<li>${
|
|
42931
|
+
for (; r < t.length && /^\s*[-*]\s+/.test(t[r]);) e.push(`<li>${YQ(t[r].replace(/^\s*[-*]\s+/, ""))}</li>`), r++;
|
|
42933
42932
|
n.push(`<ul>${e.join("")}</ul>`);
|
|
42934
42933
|
continue;
|
|
42935
42934
|
}
|
|
42936
42935
|
if (/^\s*\d+[.)]\s+/.test(e)) {
|
|
42937
42936
|
let e = [];
|
|
42938
|
-
for (; r < t.length && /^\s*\d+[.)]\s+/.test(t[r]);) e.push(`<li>${
|
|
42937
|
+
for (; r < t.length && /^\s*\d+[.)]\s+/.test(t[r]);) e.push(`<li>${YQ(t[r].replace(/^\s*\d+[.)]\s+/, ""))}</li>`), r++;
|
|
42939
42938
|
n.push(`<ol>${e.join("")}</ol>`);
|
|
42940
42939
|
continue;
|
|
42941
42940
|
}
|
|
42942
42941
|
let a = [];
|
|
42943
42942
|
for (; r < t.length && t[r].trim() && !/^(#{1,6}\s|```|\s*[-*]\s+|\s*\d+[.)]\s+)/.test(t[r]);) a.push(t[r]), r++;
|
|
42944
|
-
n.push(`<p>${
|
|
42943
|
+
n.push(`<p>${YQ(a.join("<br />"))}</p>`);
|
|
42945
42944
|
}
|
|
42946
42945
|
return n.join("");
|
|
42947
42946
|
}
|
|
42948
42947
|
//#endregion
|
|
42949
42948
|
//#region src/panel/views/ActivityView.tsx
|
|
42950
42949
|
Rr();
|
|
42951
|
-
var
|
|
42952
|
-
function
|
|
42953
|
-
let t = k(() =>
|
|
42950
|
+
var ZQ = /*#__PURE__*/ N("<div class=\"lg-md text-text text-[12px] leading-relaxed break-words\">"), QQ = /*#__PURE__*/ N("<div class=\"flex h-full flex-col\">"), $Q = /*#__PURE__*/ N("<span class=\"tabular-nums text-[10.5px] text-text-faint\">live · updated "), e$ = /*#__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\">"), t$ = /*#__PURE__*/ N("<div class=\"flex-1 overflow-y-auto\">"), n$ = /*#__PURE__*/ N("<div class=\"min-h-0 flex-1 overflow-y-auto pl-2 pr-3\"><div style=position:relative>"), r$ = /*#__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\">"), i$ = /*#__PURE__*/ N("<div style=position:absolute;top:0;left:0;width:100%>"), a$ = /*#__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\">"), o$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[6ch] text-left\">← Back"), s$ = /*#__PURE__*/ N("<span class=\"font-mono text-[11px] text-text-dim shrink-0\">"), c$ = /*#__PURE__*/ N("<span class=\"truncate text-[12px] font-medium text-text\">"), l$ = /*#__PURE__*/ N("<span class=\"text-[11.5px] text-text-faint\">Loading…"), u$ = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\"><span class=\"text-[11px] text-text-dim\">"), d$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2\">"), f$ = /*#__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\">"), p$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-2.5\"><span class=\"text-[10.5px] font-semibold uppercase tracking-wide text-text-dim\">Comments"), m$ = /*#__PURE__*/ N("<option value=local>Message local Claude Code session"), h$ = /*#__PURE__*/ N("<option value=new>Start NEW agent (@<!>)"), g$ = /*#__PURE__*/ N("<option value=comment>Comment only"), _$ = /*#__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\">"), v$ = /*#__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>"), y$ = /*#__PURE__*/ N("<svg width=13 height=13 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 stroke-linecap=round stroke-linejoin=round aria-hidden><path d=\"M13 7.5 8.2 12.3a3.2 3.2 0 0 1-4.5-4.5L8.9 2.6a2.1 2.1 0 0 1 3 3L7.1 10.4a1 1 0 0 1-1.5-1.5l4.3-4.3\">"), b$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-left\">Send"), x$ = /*#__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\">"), S$ = /*#__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><button class=\"hover:bg-surface-2 flex h-9 w-full min-w-0 cursor-pointer items-center gap-2 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\">"), C$ = /*#__PURE__*/ N("<span class=\"inline-block min-w-[6ch] text-center\">Merge"), w$ = /*#__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\">"), T$ = /*#__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\">"), E$ = /*#__PURE__*/ N("<option>Steer running agent<!> · "), D$ = /*#__PURE__*/ N("<span class=\"bg-danger inline-block size-2.5 rounded-full\"aria-hidden>"), O$ = /*#__PURE__*/ N("<span class=\"text-[11px] text-text-dim\">"), k$ = /*#__PURE__*/ N("<p class=\"text-[12px] text-text leading-relaxed whitespace-pre-wrap break-words\">"), A$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5 border-t border-border pt-1.5 mt-0.5\">"), j$ = /*#__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\">"), M$ = /*#__PURE__*/ N("<div class=\"flex items-start gap-1.5\"><span class=\"tabular-nums text-[10px] text-text-faint shrink-0 mt-px\"></span><span class=\"text-[11px] text-text-dim break-words min-w-0\">");
|
|
42951
|
+
function N$(e) {
|
|
42952
|
+
let t = k(() => XQ(e.text));
|
|
42954
42953
|
return (() => {
|
|
42955
|
-
var e =
|
|
42954
|
+
var e = ZQ();
|
|
42956
42955
|
return D(() => e.innerHTML = t()), e;
|
|
42957
42956
|
})();
|
|
42958
42957
|
}
|
|
42959
|
-
function
|
|
42958
|
+
function P$() {
|
|
42960
42959
|
let [e, t] = T(null);
|
|
42961
42960
|
return O(() => {
|
|
42962
42961
|
let e = qA();
|
|
42963
42962
|
e && (t(e), XA());
|
|
42964
42963
|
}), (() => {
|
|
42965
|
-
var n =
|
|
42964
|
+
var n = QQ();
|
|
42966
42965
|
return P(n, j(M, {
|
|
42967
42966
|
get when() {
|
|
42968
42967
|
return e() === null;
|
|
42969
42968
|
},
|
|
42970
42969
|
get fallback() {
|
|
42971
|
-
return j(
|
|
42970
|
+
return j(L$, {
|
|
42972
42971
|
get issueId() {
|
|
42973
42972
|
return e();
|
|
42974
42973
|
},
|
|
@@ -42976,17 +42975,17 @@ function M$() {
|
|
|
42976
42975
|
});
|
|
42977
42976
|
},
|
|
42978
42977
|
get children() {
|
|
42979
|
-
return j(
|
|
42978
|
+
return j(F$, { onSelect: (e) => t(e) });
|
|
42980
42979
|
}
|
|
42981
42980
|
})), n;
|
|
42982
42981
|
})();
|
|
42983
42982
|
}
|
|
42984
|
-
function
|
|
42983
|
+
function F$(e) {
|
|
42985
42984
|
let t, n = _r(() => ({
|
|
42986
42985
|
queryKey: ["my-issues"],
|
|
42987
42986
|
queryFn: uO,
|
|
42988
42987
|
refetchInterval: 12e3
|
|
42989
|
-
})), r = k(() => n.data ?? []), i =
|
|
42988
|
+
})), r = k(() => n.data ?? []), i = kQ({
|
|
42990
42989
|
get count() {
|
|
42991
42990
|
return r().length;
|
|
42992
42991
|
},
|
|
@@ -42995,13 +42994,13 @@ function N$(e) {
|
|
|
42995
42994
|
overscan: 5
|
|
42996
42995
|
});
|
|
42997
42996
|
return (() => {
|
|
42998
|
-
var a =
|
|
42997
|
+
var a = r$(), o = a.firstChild.firstChild.nextSibling;
|
|
42999
42998
|
return P(o, j(M, {
|
|
43000
42999
|
get when() {
|
|
43001
43000
|
return n.dataUpdatedAt > 0;
|
|
43002
43001
|
},
|
|
43003
43002
|
get children() {
|
|
43004
|
-
var e =
|
|
43003
|
+
var e = $Q();
|
|
43005
43004
|
return e.firstChild, P(e, () => Nj(n.dataUpdatedAt), null), e;
|
|
43006
43005
|
}
|
|
43007
43006
|
}), null), P(o, j(vj, {
|
|
@@ -43013,14 +43012,14 @@ function N$(e) {
|
|
|
43013
43012
|
title: "Refresh",
|
|
43014
43013
|
"aria-label": "Refresh issues",
|
|
43015
43014
|
get children() {
|
|
43016
|
-
return $
|
|
43015
|
+
return e$();
|
|
43017
43016
|
}
|
|
43018
43017
|
}), null), P(a, j(M, {
|
|
43019
43018
|
get when() {
|
|
43020
43019
|
return n.isError;
|
|
43021
43020
|
},
|
|
43022
43021
|
get children() {
|
|
43023
|
-
var e =
|
|
43022
|
+
var e = t$();
|
|
43024
43023
|
return P(e, j(Aj, {
|
|
43025
43024
|
title: "Connect Linear in Settings",
|
|
43026
43025
|
get children() {
|
|
@@ -43033,7 +43032,7 @@ function N$(e) {
|
|
|
43033
43032
|
return $e(() => !n.isError && !n.isPending)() && r().length === 0;
|
|
43034
43033
|
},
|
|
43035
43034
|
get children() {
|
|
43036
|
-
var e =
|
|
43035
|
+
var e = t$();
|
|
43037
43036
|
return P(e, j(Aj, {
|
|
43038
43037
|
title: "No issues found",
|
|
43039
43038
|
children: "Issues you create will appear here."
|
|
@@ -43044,7 +43043,7 @@ function N$(e) {
|
|
|
43044
43043
|
return $e(() => !n.isError)() && r().length > 0;
|
|
43045
43044
|
},
|
|
43046
43045
|
get children() {
|
|
43047
|
-
var n =
|
|
43046
|
+
var n = n$(), a = n.firstChild, o = t;
|
|
43048
43047
|
return typeof o == "function" ? pt(o, n) : t = n, P(a, j(We, {
|
|
43049
43048
|
get each() {
|
|
43050
43049
|
return i.getVirtualItems();
|
|
@@ -43052,8 +43051,8 @@ function N$(e) {
|
|
|
43052
43051
|
children: (t) => {
|
|
43053
43052
|
let n = k(() => r()[t.index]);
|
|
43054
43053
|
return (() => {
|
|
43055
|
-
var r =
|
|
43056
|
-
return P(r, j(
|
|
43054
|
+
var r = i$();
|
|
43055
|
+
return P(r, j(I$, {
|
|
43057
43056
|
get issue() {
|
|
43058
43057
|
return n();
|
|
43059
43058
|
},
|
|
@@ -43068,9 +43067,9 @@ function N$(e) {
|
|
|
43068
43067
|
}), null), a;
|
|
43069
43068
|
})();
|
|
43070
43069
|
}
|
|
43071
|
-
function
|
|
43070
|
+
function I$(e) {
|
|
43072
43071
|
return (() => {
|
|
43073
|
-
var t =
|
|
43072
|
+
var t = a$(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = n.nextSibling, o = a.firstChild;
|
|
43074
43073
|
return t.$$click = () => e.onSelect(e.issue.id), P(n, j(kj, { get color() {
|
|
43075
43074
|
return e.issue.state.color;
|
|
43076
43075
|
} }), r), P(r, () => e.issue.identifier), P(i, () => e.issue.title), P(a, j(Oj, { get children() {
|
|
@@ -43104,7 +43103,7 @@ function P$(e) {
|
|
|
43104
43103
|
}), o), P(o, () => Nj(e.issue.updatedAt)), t;
|
|
43105
43104
|
})();
|
|
43106
43105
|
}
|
|
43107
|
-
function
|
|
43106
|
+
function L$(e) {
|
|
43108
43107
|
let t = sr(), n = _r(() => ({
|
|
43109
43108
|
queryKey: ["issue", e.issueId],
|
|
43110
43109
|
queryFn: () => dO(e.issueId),
|
|
@@ -43145,7 +43144,7 @@ function F$(e) {
|
|
|
43145
43144
|
})), [h, g] = T(!1), _ = async () => {
|
|
43146
43145
|
g(!0), d(null);
|
|
43147
43146
|
try {
|
|
43148
|
-
let e = await
|
|
43147
|
+
let e = await BQ();
|
|
43149
43148
|
e ? l((t) => `${t ? `${t}\n` : ""}${e}\n`) : d("Nothing captured yet — pick an element, capture a region, or record first.");
|
|
43150
43149
|
} catch (e) {
|
|
43151
43150
|
d(e instanceof Error ? e.message : "Attach failed.");
|
|
@@ -43186,78 +43185,84 @@ function F$(e) {
|
|
|
43186
43185
|
})), ee = (e) => ne().has(e) ? "MERGED" : E.data?.[e], [te, A] = T(null), [ne, re] = T(/* @__PURE__ */ new Set()), [ie, oe] = T(null), se = async (n) => {
|
|
43187
43186
|
oe(null), A(n);
|
|
43188
43187
|
try {
|
|
43189
|
-
await LO(n), re((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }),
|
|
43188
|
+
await LO(n), re((e) => new Set(e).add(n)), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), t.invalidateQueries({ queryKey: ["my-issues"] }), IQ();
|
|
43190
43189
|
} catch (e) {
|
|
43191
43190
|
oe(e instanceof Error ? `${e.message} (bridge must be running; gh needs merge rights)` : "Merge failed.");
|
|
43192
43191
|
} finally {
|
|
43193
43192
|
A(null);
|
|
43194
43193
|
}
|
|
43195
|
-
}, ce = k(() => n.data ? yO(n.data.comments) : []), [le, ue] = T("comment"), de = !1;
|
|
43194
|
+
}, ce = k(() => n.data ? yO(n.data.comments) : []), [le, ue] = T("comment"), de = !1, fe = !1;
|
|
43196
43195
|
O(() => {
|
|
43197
|
-
if (
|
|
43198
|
-
|
|
43196
|
+
if (fe || !n.data || !i.data) return;
|
|
43197
|
+
fe = !0;
|
|
43199
43198
|
let e = ce();
|
|
43200
43199
|
e.length ? ue(`thread:${e[0].id}`) : n.data.delegate && i.data.cursorAgentId && ue("new");
|
|
43200
|
+
}), O(() => {
|
|
43201
|
+
de || o() && (le() === "comment" || le() === "new") && ue("local");
|
|
43201
43202
|
});
|
|
43202
|
-
let
|
|
43203
|
+
let pe = vr(() => ({
|
|
43203
43204
|
mutationFn: async () => {
|
|
43204
43205
|
let t = c().trim();
|
|
43205
43206
|
if (!t) throw Error("Message is empty");
|
|
43206
43207
|
let n = i.data ?? {}, r = le();
|
|
43207
|
-
|
|
43208
|
+
if (r === "local") {
|
|
43209
|
+
let n = o();
|
|
43210
|
+
if (!n) throw Error("Local session not found — is the bridge running?");
|
|
43211
|
+
await AO(n.id, t), await _O(e.issueId, `🖥️ **→ local agent:** ${t}`).catch(() => {});
|
|
43212
|
+
} else r.startsWith("thread:") ? await _O(e.issueId, t, r.slice(7)) : r === "new" && n.cursorAgentId ? await vO(e.issueId, t, {
|
|
43208
43213
|
name: n.cursorAgentName,
|
|
43209
43214
|
displayName: n.cursorAgentName ?? "Cursor",
|
|
43210
43215
|
url: n.cursorAgentUrl
|
|
43211
43216
|
}) : await _O(e.issueId, t);
|
|
43212
43217
|
},
|
|
43213
43218
|
onSuccess: () => {
|
|
43214
|
-
l(""), d(null), $A("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }),
|
|
43219
|
+
l(""), d(null), $A("capture"), t.invalidateQueries({ queryKey: ["issue", e.issueId] }), IQ();
|
|
43215
43220
|
},
|
|
43216
43221
|
onError: (e) => {
|
|
43217
43222
|
d(e.message ?? "Failed to send");
|
|
43218
43223
|
}
|
|
43219
|
-
})),
|
|
43224
|
+
})), me = k(() => n.data), he = k(() => r.data ?? []);
|
|
43220
43225
|
return (() => {
|
|
43221
|
-
var t =
|
|
43226
|
+
var t = x$(), r = t.firstChild, a = r.firstChild, d = r.nextSibling, f = d.nextSibling, p = f.firstChild;
|
|
43222
43227
|
return P(a, j(vj, {
|
|
43223
43228
|
class: "min-w-[68px] shrink-0 text-[11px]",
|
|
43224
43229
|
get onClick() {
|
|
43225
43230
|
return e.onBack;
|
|
43226
43231
|
},
|
|
43227
43232
|
get children() {
|
|
43228
|
-
return
|
|
43233
|
+
return o$();
|
|
43229
43234
|
}
|
|
43230
43235
|
}), null), P(a, j(M, {
|
|
43231
43236
|
get when() {
|
|
43232
|
-
return
|
|
43237
|
+
return me();
|
|
43233
43238
|
},
|
|
43234
43239
|
get children() {
|
|
43235
43240
|
return [(() => {
|
|
43236
|
-
var e = o$();
|
|
43237
|
-
return P(e, () => pe().identifier), e;
|
|
43238
|
-
})(), (() => {
|
|
43239
43241
|
var e = s$();
|
|
43240
|
-
return P(e, () =>
|
|
43242
|
+
return P(e, () => me().identifier), e;
|
|
43243
|
+
})(), (() => {
|
|
43244
|
+
var e = c$();
|
|
43245
|
+
return P(e, () => me().title), e;
|
|
43241
43246
|
})()];
|
|
43242
43247
|
}
|
|
43243
43248
|
}), null), P(a, j(M, {
|
|
43244
43249
|
get when() {
|
|
43245
|
-
return $e(() => !!n.isPending)() && !
|
|
43250
|
+
return $e(() => !!n.isPending)() && !me();
|
|
43246
43251
|
},
|
|
43247
43252
|
get children() {
|
|
43248
|
-
return
|
|
43253
|
+
return l$();
|
|
43249
43254
|
}
|
|
43250
43255
|
}), null), P(r, j(M, {
|
|
43251
43256
|
get when() {
|
|
43252
|
-
return
|
|
43257
|
+
return me();
|
|
43253
43258
|
},
|
|
43254
43259
|
get children() {
|
|
43255
|
-
var e =
|
|
43260
|
+
var e = u$(), t = e.firstChild;
|
|
43256
43261
|
return P(e, j(kj, { get color() {
|
|
43257
|
-
return
|
|
43258
|
-
} }), t), P(t, () =>
|
|
43262
|
+
return me().state.color;
|
|
43263
|
+
} }), t), P(t, () => me().state.name), P(e, j(Tj, {
|
|
43259
43264
|
get href() {
|
|
43260
|
-
return
|
|
43265
|
+
return me().url;
|
|
43261
43266
|
},
|
|
43262
43267
|
class: "ml-auto shrink-0",
|
|
43263
43268
|
children: "Open in Linear"
|
|
@@ -43270,7 +43275,7 @@ function F$(e) {
|
|
|
43270
43275
|
children: (e) => {
|
|
43271
43276
|
let t = () => s(e());
|
|
43272
43277
|
return (() => {
|
|
43273
|
-
var n =
|
|
43278
|
+
var n = S$(), r = n.firstChild, i = r.firstChild.firstChild, a = i.nextSibling.nextSibling.nextSibling;
|
|
43274
43279
|
a.firstChild;
|
|
43275
43280
|
var o = r.nextSibling, s = o.firstChild, c = s.nextSibling;
|
|
43276
43281
|
return P(i, j(wj, { size: 12 })), P(a, () => Nj(e().startedAt), null), P(r, j(Oj, { get children() {
|
|
@@ -43290,31 +43295,31 @@ function F$(e) {
|
|
|
43290
43295
|
}
|
|
43291
43296
|
}), null), P(d, j(M, {
|
|
43292
43297
|
get when() {
|
|
43293
|
-
return
|
|
43298
|
+
return he().length > 0;
|
|
43294
43299
|
},
|
|
43295
43300
|
get children() {
|
|
43296
|
-
var e =
|
|
43301
|
+
var e = d$();
|
|
43297
43302
|
return P(e, j(We, {
|
|
43298
43303
|
get each() {
|
|
43299
|
-
return
|
|
43304
|
+
return he();
|
|
43300
43305
|
},
|
|
43301
|
-
children: (e) => j(
|
|
43306
|
+
children: (e) => j(R$, { session: e })
|
|
43302
43307
|
})), e;
|
|
43303
43308
|
}
|
|
43304
43309
|
}), null), P(d, j(M, {
|
|
43305
43310
|
get when() {
|
|
43306
|
-
return $e(() => !!
|
|
43311
|
+
return $e(() => !!me())() && me().attachments.length > 0;
|
|
43307
43312
|
},
|
|
43308
43313
|
get children() {
|
|
43309
|
-
var e =
|
|
43314
|
+
var e = f$(), t = e.firstChild.nextSibling;
|
|
43310
43315
|
return P(t, j(We, {
|
|
43311
43316
|
get each() {
|
|
43312
|
-
return
|
|
43317
|
+
return me().attachments;
|
|
43313
43318
|
},
|
|
43314
43319
|
children: (e) => {
|
|
43315
43320
|
let t = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i.test(e.url);
|
|
43316
43321
|
return (() => {
|
|
43317
|
-
var n =
|
|
43322
|
+
var n = w$(), r = n.firstChild;
|
|
43318
43323
|
return P(r, () => e.title), P(n, j(M, {
|
|
43319
43324
|
get when() {
|
|
43320
43325
|
return $e(() => !!(t && ee(e.url)))() && ee(e.url) !== "OPEN";
|
|
@@ -43345,7 +43350,7 @@ function F$(e) {
|
|
|
43345
43350
|
},
|
|
43346
43351
|
onClick: () => void se(e.url),
|
|
43347
43352
|
get children() {
|
|
43348
|
-
return
|
|
43353
|
+
return C$();
|
|
43349
43354
|
}
|
|
43350
43355
|
});
|
|
43351
43356
|
}
|
|
@@ -43371,18 +43376,18 @@ function F$(e) {
|
|
|
43371
43376
|
}
|
|
43372
43377
|
}), null), P(d, j(M, {
|
|
43373
43378
|
get when() {
|
|
43374
|
-
return $e(() => !!
|
|
43379
|
+
return $e(() => !!me())() && me().comments.length > 0;
|
|
43375
43380
|
},
|
|
43376
43381
|
get children() {
|
|
43377
|
-
var e =
|
|
43382
|
+
var e = p$();
|
|
43378
43383
|
return e.firstChild, P(e, j(Ge, {
|
|
43379
43384
|
get each() {
|
|
43380
|
-
return
|
|
43385
|
+
return me().comments;
|
|
43381
43386
|
},
|
|
43382
43387
|
children: (e) => {
|
|
43383
43388
|
let t = e();
|
|
43384
43389
|
return (() => {
|
|
43385
|
-
var e =
|
|
43390
|
+
var e = T$(), n = e.firstChild, r = n.firstChild, i = r.nextSibling;
|
|
43386
43391
|
return P(r, () => t.user?.displayName ?? t.user?.name ?? "Unknown"), P(n, j(M, {
|
|
43387
43392
|
get when() {
|
|
43388
43393
|
return t.user?.app;
|
|
@@ -43390,7 +43395,7 @@ function F$(e) {
|
|
|
43390
43395
|
get children() {
|
|
43391
43396
|
return j(Oj, { children: "agent" });
|
|
43392
43397
|
}
|
|
43393
|
-
}), i), P(i, () => Nj(t.createdAt)), P(e, j(
|
|
43398
|
+
}), i), P(i, () => Nj(t.createdAt)), P(e, j(N$, { get text() {
|
|
43394
43399
|
return t.body;
|
|
43395
43400
|
} }), null), e;
|
|
43396
43401
|
})();
|
|
@@ -43399,7 +43404,7 @@ function F$(e) {
|
|
|
43399
43404
|
}
|
|
43400
43405
|
}), null), P(d, j(M, {
|
|
43401
43406
|
get when() {
|
|
43402
|
-
return $e(() => !!(
|
|
43407
|
+
return $e(() => !!(me() && me().comments.length === 0))() && he().length === 0;
|
|
43403
43408
|
},
|
|
43404
43409
|
get children() {
|
|
43405
43410
|
return j(Aj, {
|
|
@@ -43409,7 +43414,7 @@ function F$(e) {
|
|
|
43409
43414
|
}
|
|
43410
43415
|
}), null), P(d, j(M, {
|
|
43411
43416
|
get when() {
|
|
43412
|
-
return $e(() => !!n.isError)() && !
|
|
43417
|
+
return $e(() => !!n.isError)() && !me();
|
|
43413
43418
|
},
|
|
43414
43419
|
get children() {
|
|
43415
43420
|
return j(Aj, {
|
|
@@ -43436,22 +43441,33 @@ function F$(e) {
|
|
|
43436
43441
|
},
|
|
43437
43442
|
onInput: (e) => l(e.target.value),
|
|
43438
43443
|
get disabled() {
|
|
43439
|
-
return
|
|
43444
|
+
return pe.isPending;
|
|
43440
43445
|
}
|
|
43441
43446
|
}), p), P(p, j(Sj, {
|
|
43442
43447
|
class: "min-w-0 flex-1",
|
|
43443
43448
|
get value() {
|
|
43444
43449
|
return le();
|
|
43445
43450
|
},
|
|
43446
|
-
onChange: (e) =>
|
|
43451
|
+
onChange: (e) => {
|
|
43452
|
+
de = !0, ue(e.currentTarget.value);
|
|
43453
|
+
},
|
|
43447
43454
|
get children() {
|
|
43448
43455
|
return [
|
|
43456
|
+
j(M, {
|
|
43457
|
+
get when() {
|
|
43458
|
+
return o();
|
|
43459
|
+
},
|
|
43460
|
+
get children() {
|
|
43461
|
+
var e = m$();
|
|
43462
|
+
return D(() => e.selected = le() === "local"), e;
|
|
43463
|
+
}
|
|
43464
|
+
}),
|
|
43449
43465
|
j(We, {
|
|
43450
43466
|
get each() {
|
|
43451
43467
|
return ce();
|
|
43452
43468
|
},
|
|
43453
43469
|
children: (e, t) => (() => {
|
|
43454
|
-
var n =
|
|
43470
|
+
var n = E$(), r = n.firstChild.nextSibling;
|
|
43455
43471
|
return r.nextSibling, P(n, (() => {
|
|
43456
43472
|
var e = $e(() => ce().length > 1);
|
|
43457
43473
|
return () => e() ? ` #${t() + 1}` : "";
|
|
@@ -43463,12 +43479,12 @@ function F$(e) {
|
|
|
43463
43479
|
return i.data?.cursorAgentId;
|
|
43464
43480
|
},
|
|
43465
43481
|
get children() {
|
|
43466
|
-
var e =
|
|
43482
|
+
var e = h$(), t = e.firstChild.nextSibling;
|
|
43467
43483
|
return t.nextSibling, P(e, () => i.data?.cursorAgentName ?? "Cursor", t), D(() => e.selected = le() === "new"), e;
|
|
43468
43484
|
}
|
|
43469
43485
|
}),
|
|
43470
43486
|
(() => {
|
|
43471
|
-
var e =
|
|
43487
|
+
var e = g$();
|
|
43472
43488
|
return D(() => e.selected = le() === "comment"), e;
|
|
43473
43489
|
})()
|
|
43474
43490
|
];
|
|
@@ -43484,7 +43500,7 @@ function F$(e) {
|
|
|
43484
43500
|
"aria-label": "Pick element for reply",
|
|
43485
43501
|
onClick: v,
|
|
43486
43502
|
get children() {
|
|
43487
|
-
return
|
|
43503
|
+
return _$();
|
|
43488
43504
|
}
|
|
43489
43505
|
}), null), P(p, j(vj, {
|
|
43490
43506
|
variant: "ghost",
|
|
@@ -43502,10 +43518,10 @@ function F$(e) {
|
|
|
43502
43518
|
return y().phase === "recording";
|
|
43503
43519
|
},
|
|
43504
43520
|
get fallback() {
|
|
43505
|
-
return
|
|
43521
|
+
return D$();
|
|
43506
43522
|
},
|
|
43507
43523
|
get children() {
|
|
43508
|
-
return
|
|
43524
|
+
return v$();
|
|
43509
43525
|
}
|
|
43510
43526
|
});
|
|
43511
43527
|
}
|
|
@@ -43519,31 +43535,31 @@ function F$(e) {
|
|
|
43519
43535
|
"aria-label": "Attach captures",
|
|
43520
43536
|
onClick: () => void _(),
|
|
43521
43537
|
get children() {
|
|
43522
|
-
return
|
|
43538
|
+
return y$();
|
|
43523
43539
|
}
|
|
43524
43540
|
}), null), P(p, j(vj, {
|
|
43525
43541
|
class: "min-w-[52px] shrink-0",
|
|
43526
43542
|
variant: "primary",
|
|
43527
43543
|
get loading() {
|
|
43528
|
-
return
|
|
43544
|
+
return pe.isPending;
|
|
43529
43545
|
},
|
|
43530
43546
|
get disabled() {
|
|
43531
43547
|
return c().trim().length === 0;
|
|
43532
43548
|
},
|
|
43533
|
-
onClick: () =>
|
|
43549
|
+
onClick: () => pe.mutate(),
|
|
43534
43550
|
get children() {
|
|
43535
|
-
return
|
|
43551
|
+
return b$();
|
|
43536
43552
|
}
|
|
43537
43553
|
}), null), t;
|
|
43538
43554
|
})();
|
|
43539
43555
|
}
|
|
43540
|
-
function
|
|
43556
|
+
function R$(e) {
|
|
43541
43557
|
let t = k(() => {
|
|
43542
43558
|
let t = e.session.status;
|
|
43543
43559
|
return /complete|done/i.test(t) ? "var(--color-success)" : /await|pending|elicit/i.test(t) ? "var(--color-warn)" : "var(--color-accent)";
|
|
43544
43560
|
}), n = k(() => e.session.activities.slice(-10));
|
|
43545
43561
|
return (() => {
|
|
43546
|
-
var r =
|
|
43562
|
+
var r = j$(), i = r.firstChild, a = i.firstChild;
|
|
43547
43563
|
return P(i, j(Oj, {
|
|
43548
43564
|
get color() {
|
|
43549
43565
|
return t();
|
|
@@ -43556,7 +43572,7 @@ function I$(e) {
|
|
|
43556
43572
|
return e.session.appUser?.displayName;
|
|
43557
43573
|
},
|
|
43558
43574
|
get children() {
|
|
43559
|
-
var t =
|
|
43575
|
+
var t = O$();
|
|
43560
43576
|
return P(t, () => e.session.appUser.displayName), t;
|
|
43561
43577
|
}
|
|
43562
43578
|
}), a), P(a, () => Nj(e.session.updatedAt)), P(r, j(M, {
|
|
@@ -43564,7 +43580,7 @@ function I$(e) {
|
|
|
43564
43580
|
return e.session.summary;
|
|
43565
43581
|
},
|
|
43566
43582
|
get children() {
|
|
43567
|
-
var t =
|
|
43583
|
+
var t = k$();
|
|
43568
43584
|
return P(t, () => e.session.summary), t;
|
|
43569
43585
|
}
|
|
43570
43586
|
}), null), P(r, j(M, {
|
|
@@ -43572,7 +43588,7 @@ function I$(e) {
|
|
|
43572
43588
|
return n().length > 0;
|
|
43573
43589
|
},
|
|
43574
43590
|
get children() {
|
|
43575
|
-
var e =
|
|
43591
|
+
var e = A$();
|
|
43576
43592
|
return P(e, j(We, {
|
|
43577
43593
|
get each() {
|
|
43578
43594
|
return n();
|
|
@@ -43580,7 +43596,7 @@ function I$(e) {
|
|
|
43580
43596
|
children: (e) => {
|
|
43581
43597
|
let t = e.content, n = String(t?.body ?? t?.text ?? t?.type ?? JSON.stringify(t)).slice(0, 300);
|
|
43582
43598
|
return (() => {
|
|
43583
|
-
var t =
|
|
43599
|
+
var t = M$(), r = t.firstChild, i = r.nextSibling;
|
|
43584
43600
|
return P(r, () => Nj(e.createdAt)), P(i, n), t;
|
|
43585
43601
|
})();
|
|
43586
43602
|
}
|
|
@@ -43592,7 +43608,7 @@ function I$(e) {
|
|
|
43592
43608
|
//#endregion
|
|
43593
43609
|
//#region src/panel/views/LocalView.tsx
|
|
43594
43610
|
rt(["click"]), Rr();
|
|
43595
|
-
var
|
|
43611
|
+
var z$ = /*#__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\">"), B$ = /*#__PURE__*/ N("<div><p></p><div class=\"lg-md text-text text-[11.5px] leading-relaxed break-words\">"), V$ = /*#__PURE__*/ N("<p>"), H$ = /*#__PURE__*/ N("<span class=\"text-text-faint max-w-[55%] truncate text-[10.5px] tabular-nums\"> running · "), U$ = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), W$ = /*#__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\">"), G$ = /*#__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"), K$ = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">ctx <!> · out "), q$ = /*#__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]\">"), J$ = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), Y$ = /*#__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\">"), X$ = /*#__PURE__*/ N("<svg width=11 height=11 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3 y=3 width=10 height=10 rx=1.5>"), Z$ = /*#__PURE__*/ N("<span class=\"font-mono text-text-faint min-w-0 truncate text-[10.5px]\">"), Q$ = /*#__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>−"), $$ = /*#__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\">"), e1 = /*#__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\">"), t1 = /*#__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\">"), n1 = /*#__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\">"), r1 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[4ch] text-center\">Send"), i1 = /*#__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]\">"), a1 = /*#__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\">"), o1 = /*#__PURE__*/ N("<span aria-hidden class=\"size-2 shrink-0 rounded-full\">"), s1 = /*#__PURE__*/ N("<div class=\"flex min-w-0 items-center gap-1.5\">"), c1 = /*#__PURE__*/ N("<option>"), l1 = /*#__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>"), u1 = /*#__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\">"), d1 = /*#__PURE__*/ N("<span class=text-success>+"), f1 = /*#__PURE__*/ N("<span class=text-danger>−"), p1 = /*#__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\">"), m1 = /*#__PURE__*/ N("<span class=text-text-faint>bin"), h1 = /*#__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"), g1 = /*#__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\">"), _1 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[11px]\">Waiting for output…"), v1 = [
|
|
43596
43612
|
{
|
|
43597
43613
|
id: "",
|
|
43598
43614
|
label: "Default model"
|
|
@@ -43614,13 +43630,13 @@ var L$ = /*#__PURE__*/ N("<div class=\"border-accent/40 bg-accent-soft self-end
|
|
|
43614
43630
|
label: "Haiku"
|
|
43615
43631
|
}
|
|
43616
43632
|
];
|
|
43617
|
-
function
|
|
43633
|
+
function y1(e, t) {
|
|
43618
43634
|
let n = e.split(".").map(Number), r = t.split(".").map(Number);
|
|
43619
43635
|
for (let e = 0; e < 3; e++) if ((n[e] ?? 0) !== (r[e] ?? 0)) return (n[e] ?? 0) < (r[e] ?? 0);
|
|
43620
43636
|
return !1;
|
|
43621
43637
|
}
|
|
43622
|
-
var
|
|
43623
|
-
function
|
|
43638
|
+
var b1 = (e) => e == null ? "–" : e >= 1e3 ? `${(e / 1e3).toFixed(e >= 1e5 ? 0 : 1)}k` : String(e);
|
|
43639
|
+
function x1() {
|
|
43624
43640
|
let e = sr(), t = _r(() => ({
|
|
43625
43641
|
queryKey: ["bridge-health"],
|
|
43626
43642
|
queryFn: EO,
|
|
@@ -43673,7 +43689,7 @@ function y1() {
|
|
|
43673
43689
|
let y = async () => {
|
|
43674
43690
|
m(!0);
|
|
43675
43691
|
try {
|
|
43676
|
-
let e = await
|
|
43692
|
+
let e = await BQ();
|
|
43677
43693
|
e && f((t) => `${t ? `${t}\n` : ""}${e}\n`);
|
|
43678
43694
|
} finally {
|
|
43679
43695
|
m(!1);
|
|
@@ -43703,20 +43719,20 @@ function y1() {
|
|
|
43703
43719
|
await navigator.clipboard.writeText(zO(e)), te(e.id), setTimeout(() => te(null), 1800);
|
|
43704
43720
|
} catch {}
|
|
43705
43721
|
}, ne = (e) => e === "running" ? "var(--color-accent)" : e === "done" ? "var(--color-success)" : e === "stopped" ? "var(--color-warn)" : "var(--color-danger)", re = (e) => {
|
|
43706
|
-
let t = e.line.kind, n = k(() =>
|
|
43722
|
+
let t = e.line.kind, n = k(() => XQ(e.line.text));
|
|
43707
43723
|
return t === "user" ? (() => {
|
|
43708
|
-
var e =
|
|
43724
|
+
var e = z$(), t = e.firstChild.nextSibling;
|
|
43709
43725
|
return D(() => t.innerHTML = n()), e;
|
|
43710
43726
|
})() : t === "assistant" || t === "result" ? (() => {
|
|
43711
|
-
var e =
|
|
43727
|
+
var e = B$(), r = e.firstChild, i = r.nextSibling;
|
|
43712
43728
|
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;
|
|
43713
43729
|
})() : (() => {
|
|
43714
|
-
var n =
|
|
43730
|
+
var n = V$();
|
|
43715
43731
|
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;
|
|
43716
43732
|
})();
|
|
43717
43733
|
};
|
|
43718
43734
|
return (() => {
|
|
43719
|
-
var e =
|
|
43735
|
+
var e = W$(), a = e.firstChild;
|
|
43720
43736
|
a.firstChild;
|
|
43721
43737
|
var l = a.nextSibling;
|
|
43722
43738
|
return P(a, j(M, {
|
|
@@ -43732,7 +43748,7 @@ function y1() {
|
|
|
43732
43748
|
get children() {
|
|
43733
43749
|
return [j(M, {
|
|
43734
43750
|
get when() {
|
|
43735
|
-
return
|
|
43751
|
+
return y1(t.data.version, "0.15.1");
|
|
43736
43752
|
},
|
|
43737
43753
|
get children() {
|
|
43738
43754
|
return j(Oj, {
|
|
@@ -43748,7 +43764,7 @@ function y1() {
|
|
|
43748
43764
|
});
|
|
43749
43765
|
}
|
|
43750
43766
|
}), (() => {
|
|
43751
|
-
var e =
|
|
43767
|
+
var e = H$(), n = e.firstChild;
|
|
43752
43768
|
return P(e, () => t.data.active, n), P(e, () => t.data.cwd.split("/").slice(-2).join("/"), null), D(() => it(e, "title", t.data?.cwd)), e;
|
|
43753
43769
|
})()];
|
|
43754
43770
|
}
|
|
@@ -43762,7 +43778,7 @@ function y1() {
|
|
|
43762
43778
|
get children() {
|
|
43763
43779
|
return [
|
|
43764
43780
|
"Start it in your repo's terminal:",
|
|
43765
|
-
|
|
43781
|
+
G$(),
|
|
43766
43782
|
"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."
|
|
43767
43783
|
];
|
|
43768
43784
|
}
|
|
@@ -43780,20 +43796,20 @@ function y1() {
|
|
|
43780
43796
|
});
|
|
43781
43797
|
},
|
|
43782
43798
|
get children() {
|
|
43783
|
-
var e =
|
|
43799
|
+
var e = U$();
|
|
43784
43800
|
return P(e, j(We, {
|
|
43785
43801
|
get each() {
|
|
43786
43802
|
return n.data;
|
|
43787
43803
|
},
|
|
43788
43804
|
children: (e) => (() => {
|
|
43789
|
-
var t =
|
|
43805
|
+
var t = a1(), n = t.firstChild, a = n.firstChild, l = a.nextSibling, m = n.nextSibling, h = m.nextSibling, g = h.nextSibling;
|
|
43790
43806
|
return P(n, j(M, {
|
|
43791
43807
|
get when() {
|
|
43792
43808
|
return e.status === "running";
|
|
43793
43809
|
},
|
|
43794
43810
|
get fallback() {
|
|
43795
43811
|
return (() => {
|
|
43796
|
-
var t =
|
|
43812
|
+
var t = o1();
|
|
43797
43813
|
return D((n) => dt(t, "background", ne(e.status))), t;
|
|
43798
43814
|
})();
|
|
43799
43815
|
},
|
|
@@ -43846,8 +43862,8 @@ function y1() {
|
|
|
43846
43862
|
return e.usage;
|
|
43847
43863
|
},
|
|
43848
43864
|
get children() {
|
|
43849
|
-
var t =
|
|
43850
|
-
return n.nextSibling, P(t, () =>
|
|
43865
|
+
var t = K$(), n = t.firstChild.nextSibling;
|
|
43866
|
+
return n.nextSibling, P(t, () => b1(e.usage.contextTokens), n), P(t, () => b1(e.usage.outputTokens), null), P(t, (() => {
|
|
43851
43867
|
var t = $e(() => !!e.usage.costUsd);
|
|
43852
43868
|
return () => t() ? ` · $${e.usage.costUsd.toFixed(2)}` : "";
|
|
43853
43869
|
})(), null), t;
|
|
@@ -43857,7 +43873,7 @@ function y1() {
|
|
|
43857
43873
|
return o(e);
|
|
43858
43874
|
},
|
|
43859
43875
|
children: (e) => (() => {
|
|
43860
|
-
var t =
|
|
43876
|
+
var t = s1();
|
|
43861
43877
|
return P(t, j(Oj, { get children() {
|
|
43862
43878
|
return e().state.name;
|
|
43863
43879
|
} }), null), P(t, j(Tj, {
|
|
@@ -43872,7 +43888,7 @@ function y1() {
|
|
|
43872
43888
|
return $e(() => !!e.worktree)() && !e.worktree.removed;
|
|
43873
43889
|
},
|
|
43874
43890
|
get children() {
|
|
43875
|
-
var t =
|
|
43891
|
+
var t = q$(), n = t.firstChild;
|
|
43876
43892
|
return P(t, j(Oj, {
|
|
43877
43893
|
class: "text-warn",
|
|
43878
43894
|
children: "⎇ worktree"
|
|
@@ -43908,9 +43924,9 @@ function y1() {
|
|
|
43908
43924
|
title: "Model — applies from the next message",
|
|
43909
43925
|
get children() {
|
|
43910
43926
|
return j(We, {
|
|
43911
|
-
each:
|
|
43927
|
+
each: v1,
|
|
43912
43928
|
children: (t) => (() => {
|
|
43913
|
-
var n =
|
|
43929
|
+
var n = c1();
|
|
43914
43930
|
return P(n, () => t.label), D(() => n.selected = (e.pendingModel ?? e.model ?? "") === t.id), D(() => n.value = t.id), n;
|
|
43915
43931
|
})()
|
|
43916
43932
|
});
|
|
@@ -43925,7 +43941,7 @@ function y1() {
|
|
|
43925
43941
|
title: "Open the issue's Activity thread",
|
|
43926
43942
|
onClick: () => YA("activity", e().id),
|
|
43927
43943
|
get children() {
|
|
43928
|
-
return
|
|
43944
|
+
return l1();
|
|
43929
43945
|
}
|
|
43930
43946
|
})
|
|
43931
43947
|
}), null), P(g, j(vj, {
|
|
@@ -43944,10 +43960,10 @@ function y1() {
|
|
|
43944
43960
|
return ee() === e.id;
|
|
43945
43961
|
},
|
|
43946
43962
|
get fallback() {
|
|
43947
|
-
return
|
|
43963
|
+
return u1();
|
|
43948
43964
|
},
|
|
43949
43965
|
get children() {
|
|
43950
|
-
return
|
|
43966
|
+
return J$();
|
|
43951
43967
|
}
|
|
43952
43968
|
});
|
|
43953
43969
|
}
|
|
@@ -43959,7 +43975,7 @@ function y1() {
|
|
|
43959
43975
|
},
|
|
43960
43976
|
onClick: () => i(r() === e.id ? null : e.id),
|
|
43961
43977
|
get children() {
|
|
43962
|
-
return
|
|
43978
|
+
return Y$();
|
|
43963
43979
|
}
|
|
43964
43980
|
}), null), P(g, j(M, {
|
|
43965
43981
|
get when() {
|
|
@@ -43975,7 +43991,7 @@ function y1() {
|
|
|
43975
43991
|
title: "Interrupt — the session stays resumable",
|
|
43976
43992
|
onClick: () => u.mutate(e.id),
|
|
43977
43993
|
get children() {
|
|
43978
|
-
return
|
|
43994
|
+
return X$();
|
|
43979
43995
|
}
|
|
43980
43996
|
});
|
|
43981
43997
|
}
|
|
@@ -43990,7 +44006,7 @@ function y1() {
|
|
|
43990
44006
|
return $e(() => !!c.data)() && (c.data.files.length || c.data.untracked.length || c.data.prs.length);
|
|
43991
44007
|
},
|
|
43992
44008
|
get children() {
|
|
43993
|
-
var e =
|
|
44009
|
+
var e = Q$(), t = e.firstChild, n = t.firstChild.nextSibling, r = n.firstChild;
|
|
43994
44010
|
r.firstChild;
|
|
43995
44011
|
var i = r.nextSibling.nextSibling;
|
|
43996
44012
|
return i.firstChild, P(t, j(M, {
|
|
@@ -43998,7 +44014,7 @@ function y1() {
|
|
|
43998
44014
|
return c.data.branch;
|
|
43999
44015
|
},
|
|
44000
44016
|
get children() {
|
|
44001
|
-
var e =
|
|
44017
|
+
var e = Z$();
|
|
44002
44018
|
return P(e, () => c.data.branch), e;
|
|
44003
44019
|
}
|
|
44004
44020
|
}), n), P(r, () => c.data.totalAdded, null), P(i, () => c.data.totalDeleted, null), P(e, j(We, {
|
|
@@ -44006,23 +44022,23 @@ function y1() {
|
|
|
44006
44022
|
return c.data.files;
|
|
44007
44023
|
},
|
|
44008
44024
|
children: (e) => (() => {
|
|
44009
|
-
var t =
|
|
44025
|
+
var t = p1(), n = t.firstChild, r = n.nextSibling;
|
|
44010
44026
|
return P(n, () => e.path), P(r, j(M, {
|
|
44011
44027
|
get when() {
|
|
44012
44028
|
return !e.binary;
|
|
44013
44029
|
},
|
|
44014
44030
|
get fallback() {
|
|
44015
|
-
return
|
|
44031
|
+
return m1();
|
|
44016
44032
|
},
|
|
44017
44033
|
get children() {
|
|
44018
44034
|
return [
|
|
44019
44035
|
(() => {
|
|
44020
|
-
var t =
|
|
44036
|
+
var t = d1();
|
|
44021
44037
|
return t.firstChild, P(t, () => e.added, null), t;
|
|
44022
44038
|
})(),
|
|
44023
44039
|
" ",
|
|
44024
44040
|
(() => {
|
|
44025
|
-
var t =
|
|
44041
|
+
var t = f1();
|
|
44026
44042
|
return t.firstChild, P(t, () => e.deleted, null), t;
|
|
44027
44043
|
})()
|
|
44028
44044
|
];
|
|
@@ -44034,7 +44050,7 @@ function y1() {
|
|
|
44034
44050
|
return c.data.untracked;
|
|
44035
44051
|
},
|
|
44036
44052
|
children: (e) => (() => {
|
|
44037
|
-
var t =
|
|
44053
|
+
var t = h1(), n = t.firstChild;
|
|
44038
44054
|
return it(n, "title", e), P(n, e), t;
|
|
44039
44055
|
})()
|
|
44040
44056
|
}), null), P(e, j(We, {
|
|
@@ -44042,7 +44058,7 @@ function y1() {
|
|
|
44042
44058
|
return c.data.prs;
|
|
44043
44059
|
},
|
|
44044
44060
|
children: (e) => (() => {
|
|
44045
|
-
var t =
|
|
44061
|
+
var t = g1(), n = t.firstChild;
|
|
44046
44062
|
return P(t, j(Oj, {
|
|
44047
44063
|
class: "text-accent",
|
|
44048
44064
|
get children() {
|
|
@@ -44060,7 +44076,7 @@ function y1() {
|
|
|
44060
44076
|
}
|
|
44061
44077
|
}),
|
|
44062
44078
|
(() => {
|
|
44063
|
-
var e =
|
|
44079
|
+
var e = $$();
|
|
44064
44080
|
return e.addEventListener("scroll", E), pt((e) => {
|
|
44065
44081
|
C = e, w = !0;
|
|
44066
44082
|
}, e), P(e, j(M, {
|
|
@@ -44068,7 +44084,7 @@ function y1() {
|
|
|
44068
44084
|
return (s.data?.tail ?? []).length > 0;
|
|
44069
44085
|
},
|
|
44070
44086
|
get fallback() {
|
|
44071
|
-
return
|
|
44087
|
+
return _1();
|
|
44072
44088
|
},
|
|
44073
44089
|
get children() {
|
|
44074
44090
|
return j(Ge, {
|
|
@@ -44083,7 +44099,7 @@ function y1() {
|
|
|
44083
44099
|
})), e;
|
|
44084
44100
|
})(),
|
|
44085
44101
|
(() => {
|
|
44086
|
-
var t =
|
|
44102
|
+
var t = i1(), n = t.firstChild, r = n.firstChild;
|
|
44087
44103
|
return P(t, j(xj, {
|
|
44088
44104
|
rows: 2,
|
|
44089
44105
|
get placeholder() {
|
|
@@ -44103,7 +44119,7 @@ function y1() {
|
|
|
44103
44119
|
"aria-label": "Pick element",
|
|
44104
44120
|
onClick: v,
|
|
44105
44121
|
get children() {
|
|
44106
|
-
return
|
|
44122
|
+
return e1();
|
|
44107
44123
|
}
|
|
44108
44124
|
}), null), P(n, j(vj, {
|
|
44109
44125
|
variant: "ghost",
|
|
@@ -44115,7 +44131,7 @@ function y1() {
|
|
|
44115
44131
|
"aria-label": "Attach captures",
|
|
44116
44132
|
onClick: () => void y(),
|
|
44117
44133
|
get children() {
|
|
44118
|
-
return
|
|
44134
|
+
return t1();
|
|
44119
44135
|
}
|
|
44120
44136
|
}), null), P(n, j(vj, {
|
|
44121
44137
|
variant: "ghost",
|
|
@@ -44130,7 +44146,7 @@ function y1() {
|
|
|
44130
44146
|
text: "/compact"
|
|
44131
44147
|
}),
|
|
44132
44148
|
get children() {
|
|
44133
|
-
return
|
|
44149
|
+
return n1();
|
|
44134
44150
|
}
|
|
44135
44151
|
}), null), P(n, j(vj, {
|
|
44136
44152
|
variant: "primary",
|
|
@@ -44146,7 +44162,7 @@ function y1() {
|
|
|
44146
44162
|
text: d().trim()
|
|
44147
44163
|
}),
|
|
44148
44164
|
get children() {
|
|
44149
|
-
return
|
|
44165
|
+
return r1();
|
|
44150
44166
|
}
|
|
44151
44167
|
}), null), t;
|
|
44152
44168
|
})()
|
|
@@ -44163,13 +44179,13 @@ function y1() {
|
|
|
44163
44179
|
}
|
|
44164
44180
|
//#endregion
|
|
44165
44181
|
//#region src/panel/views/PrsView.tsx
|
|
44166
|
-
var
|
|
44167
|
-
function
|
|
44182
|
+
var S1 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] tabular-nums\">/<!> from your issues"), C1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), w1 = /*#__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\">"), T1 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px]\"title=\"Merge states come from gh via the bridge\">states unknown — restart the bridge"), E1 = /*#__PURE__*/ N("<button>"), D1 = /*#__PURE__*/ N("<span class=\"text-[12px] leading-none\">✓"), O1 = /*#__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>"), k1 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), A1 = /*#__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\">"), j1 = /*#__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\">"), M1 = /*#__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\">"), N1 = /github\.com\/[^/]+\/[^/]+\/pull\/\d+/i;
|
|
44183
|
+
function P1(e) {
|
|
44168
44184
|
let t = _r(() => ({
|
|
44169
44185
|
queryKey: ["my-issues"],
|
|
44170
44186
|
queryFn: uO,
|
|
44171
44187
|
refetchInterval: 15e3
|
|
44172
|
-
})), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) =>
|
|
44188
|
+
})), n = k(() => (t.data ?? []).flatMap((e) => (e.attachments ?? []).filter((e) => N1.test(e.url)).map((t) => ({
|
|
44173
44189
|
issue: e,
|
|
44174
44190
|
attachment: t
|
|
44175
44191
|
})))), r = _r(() => ({
|
|
@@ -44206,7 +44222,7 @@ function M1(e) {
|
|
|
44206
44222
|
} catch {}
|
|
44207
44223
|
};
|
|
44208
44224
|
return (() => {
|
|
44209
|
-
var r =
|
|
44225
|
+
var r = w1(), p = r.firstChild;
|
|
44210
44226
|
p.firstChild;
|
|
44211
44227
|
var h = p.nextSibling, _ = h.firstChild, b = h.nextSibling;
|
|
44212
44228
|
return P(p, j(M, {
|
|
@@ -44214,10 +44230,10 @@ function M1(e) {
|
|
|
44214
44230
|
return !i.isError;
|
|
44215
44231
|
},
|
|
44216
44232
|
get fallback() {
|
|
44217
|
-
return
|
|
44233
|
+
return T1();
|
|
44218
44234
|
},
|
|
44219
44235
|
get children() {
|
|
44220
|
-
var e =
|
|
44236
|
+
var e = S1(), t = e.firstChild, r = t.nextSibling;
|
|
44221
44237
|
return r.nextSibling, P(e, () => d().length, t), P(e, () => n().length, r), e;
|
|
44222
44238
|
}
|
|
44223
44239
|
}), null), P(_, j(We, {
|
|
@@ -44240,7 +44256,7 @@ function M1(e) {
|
|
|
44240
44256
|
}
|
|
44241
44257
|
],
|
|
44242
44258
|
children: (e) => (() => {
|
|
44243
|
-
var t =
|
|
44259
|
+
var t = E1();
|
|
44244
44260
|
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;
|
|
44245
44261
|
})()
|
|
44246
44262
|
})), P(h, j(bj, {
|
|
@@ -44263,13 +44279,13 @@ function M1(e) {
|
|
|
44263
44279
|
});
|
|
44264
44280
|
},
|
|
44265
44281
|
get children() {
|
|
44266
|
-
var t =
|
|
44282
|
+
var t = C1();
|
|
44267
44283
|
return P(t, j(We, {
|
|
44268
44284
|
get each() {
|
|
44269
44285
|
return d();
|
|
44270
44286
|
},
|
|
44271
44287
|
children: (t) => (() => {
|
|
44272
|
-
var n =
|
|
44288
|
+
var n = A1(), r = n.firstChild, i = r.nextSibling, s = i.firstChild, c = s.nextSibling, l = c.nextSibling, u = i.nextSibling, d = u.firstChild;
|
|
44273
44289
|
return P(r, () => t.attachment.title || t.attachment.url), P(i, j(kj, { get color() {
|
|
44274
44290
|
return t.issue.state.color;
|
|
44275
44291
|
} }), s), P(s, () => t.issue.identifier), P(c, () => t.issue.title), P(l, () => Nj(t.issue.updatedAt)), P(u, j(Oj, { get children() {
|
|
@@ -44346,10 +44362,10 @@ function M1(e) {
|
|
|
44346
44362
|
return g().has(t.attachment.url);
|
|
44347
44363
|
},
|
|
44348
44364
|
get fallback() {
|
|
44349
|
-
return
|
|
44365
|
+
return j1();
|
|
44350
44366
|
},
|
|
44351
44367
|
get children() {
|
|
44352
|
-
return
|
|
44368
|
+
return D1();
|
|
44353
44369
|
}
|
|
44354
44370
|
});
|
|
44355
44371
|
}
|
|
@@ -44362,7 +44378,7 @@ function M1(e) {
|
|
|
44362
44378
|
YA("activity", t.issue.id), e.onOpenIssue();
|
|
44363
44379
|
},
|
|
44364
44380
|
get children() {
|
|
44365
|
-
return
|
|
44381
|
+
return O1();
|
|
44366
44382
|
}
|
|
44367
44383
|
}), null), P(d, j(vj, {
|
|
44368
44384
|
variant: "ghost",
|
|
@@ -44376,10 +44392,10 @@ function M1(e) {
|
|
|
44376
44392
|
return f() === t.attachment.id;
|
|
44377
44393
|
},
|
|
44378
44394
|
get fallback() {
|
|
44379
|
-
return
|
|
44395
|
+
return M1();
|
|
44380
44396
|
},
|
|
44381
44397
|
get children() {
|
|
44382
|
-
return
|
|
44398
|
+
return k1();
|
|
44383
44399
|
}
|
|
44384
44400
|
});
|
|
44385
44401
|
}
|
|
@@ -44399,13 +44415,13 @@ function M1(e) {
|
|
|
44399
44415
|
//#endregion
|
|
44400
44416
|
//#region src/lib/linear/auth.ts
|
|
44401
44417
|
rt(["click"]), Rr();
|
|
44402
|
-
function
|
|
44418
|
+
function F1(e) {
|
|
44403
44419
|
let t = "";
|
|
44404
44420
|
for (let n of e) t += String.fromCharCode(n);
|
|
44405
44421
|
return btoa(t).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
44406
44422
|
}
|
|
44407
|
-
async function
|
|
44408
|
-
let t =
|
|
44423
|
+
async function I1(e) {
|
|
44424
|
+
let t = F1(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = F1(new Uint8Array(n)), i = F1(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
|
|
44409
44425
|
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");
|
|
44410
44426
|
let s = await chrome.identity.launchWebAuthFlow({
|
|
44411
44427
|
url: o.toString(),
|
|
@@ -44433,15 +44449,15 @@ async function P1(e) {
|
|
|
44433
44449
|
linearOauthClientId: e
|
|
44434
44450
|
});
|
|
44435
44451
|
}
|
|
44436
|
-
async function
|
|
44452
|
+
async function L1() {
|
|
44437
44453
|
await wr({
|
|
44438
44454
|
linearAccessToken: void 0,
|
|
44439
44455
|
linearApiKey: void 0
|
|
44440
44456
|
});
|
|
44441
44457
|
}
|
|
44442
44458
|
Rr(), br(), Nx(), mD();
|
|
44443
|
-
var
|
|
44444
|
-
function
|
|
44459
|
+
var R1 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), z1 = /*#__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."), B1 = /*#__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"), V1 = /*#__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)."), H1 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), U1 = /*#__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]\">"), W1 = /*#__PURE__*/ N("<option value>Select a team…"), G1 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), K1 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), q1 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), J1 = /*#__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."), Y1 = /*#__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."), X1 = /*#__PURE__*/ N("<option value>Select a channel…"), Z1 = /*#__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"), Q1 = /*#__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."), $1 = /*#__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"), e0 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), t0 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), n0 = /*#__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."), r0 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), i0 = /*#__PURE__*/ N("<button>"), a0 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), o0 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), s0 = /*#__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\">"), c0 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), l0 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), u0 = /*#__PURE__*/ N("<option> (<!>)"), d0 = /*#__PURE__*/ N("<option value>Select the agent…"), f0 = /*#__PURE__*/ N("<option>"), p0 = /*#__PURE__*/ N("<option>#"), m0 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
|
|
44460
|
+
function h0() {
|
|
44445
44461
|
let e = sr(), t = _r(() => ({
|
|
44446
44462
|
queryKey: ["settings"],
|
|
44447
44463
|
queryFn: Cr,
|
|
@@ -44486,7 +44502,7 @@ function p0() {
|
|
|
44486
44502
|
}
|
|
44487
44503
|
v(!0), b("");
|
|
44488
44504
|
try {
|
|
44489
|
-
await
|
|
44505
|
+
await I1(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"] });
|
|
44490
44506
|
} catch (e) {
|
|
44491
44507
|
b(e instanceof Error ? e.message : "OAuth flow failed.");
|
|
44492
44508
|
} finally {
|
|
@@ -44497,7 +44513,7 @@ function p0() {
|
|
|
44497
44513
|
async function w() {
|
|
44498
44514
|
C(!0);
|
|
44499
44515
|
try {
|
|
44500
|
-
await
|
|
44516
|
+
await L1(), 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"] });
|
|
44501
44517
|
} finally {
|
|
44502
44518
|
C(!1);
|
|
44503
44519
|
}
|
|
@@ -44513,12 +44529,12 @@ function p0() {
|
|
|
44513
44529
|
return e ? `Drafting with ${e} — ${jx[e].fast} (fast) / ${jx[e].best} (best)` : null;
|
|
44514
44530
|
});
|
|
44515
44531
|
return (() => {
|
|
44516
|
-
var e =
|
|
44532
|
+
var e = r0();
|
|
44517
44533
|
return P(e, j(Dj, {
|
|
44518
44534
|
title: "Workflow",
|
|
44519
44535
|
get children() {
|
|
44520
44536
|
return [(() => {
|
|
44521
|
-
var e =
|
|
44537
|
+
var e = R1();
|
|
44522
44538
|
return P(e, j(We, {
|
|
44523
44539
|
each: [{
|
|
44524
44540
|
id: "cloud",
|
|
@@ -44528,19 +44544,19 @@ function p0() {
|
|
|
44528
44544
|
label: "Local · clipboard"
|
|
44529
44545
|
}],
|
|
44530
44546
|
children: (e) => (() => {
|
|
44531
|
-
var t =
|
|
44547
|
+
var t = i0();
|
|
44532
44548
|
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;
|
|
44533
44549
|
})()
|
|
44534
44550
|
})), e;
|
|
44535
|
-
})(),
|
|
44551
|
+
})(), z1()];
|
|
44536
44552
|
}
|
|
44537
44553
|
}), null), P(e, j(Dj, {
|
|
44538
44554
|
title: "Capture",
|
|
44539
44555
|
get children() {
|
|
44540
44556
|
return [(() => {
|
|
44541
|
-
var e =
|
|
44557
|
+
var e = B1(), t = e.firstChild;
|
|
44542
44558
|
return t.addEventListener("change", (e) => void r({ captureShots: e.currentTarget.checked || void 0 })), D(() => t.checked = !!n().captureShots), e;
|
|
44543
|
-
})(),
|
|
44559
|
+
})(), V1()];
|
|
44544
44560
|
}
|
|
44545
44561
|
}), null), P(e, j(Dj, {
|
|
44546
44562
|
title: "Linear",
|
|
@@ -44551,13 +44567,13 @@ function p0() {
|
|
|
44551
44567
|
},
|
|
44552
44568
|
get fallback() {
|
|
44553
44569
|
return (() => {
|
|
44554
|
-
var e =
|
|
44570
|
+
var e = c0();
|
|
44555
44571
|
return P(e, j(Ej, {
|
|
44556
44572
|
label: "Personal API key",
|
|
44557
44573
|
hint: "Create one at linear.app → Settings → API — fastest path.",
|
|
44558
44574
|
get children() {
|
|
44559
44575
|
return [(() => {
|
|
44560
|
-
var e =
|
|
44576
|
+
var e = a0();
|
|
44561
44577
|
return P(e, j(bj, {
|
|
44562
44578
|
type: "password",
|
|
44563
44579
|
placeholder: "lin_api_…",
|
|
@@ -44594,12 +44610,12 @@ function p0() {
|
|
|
44594
44610
|
}), null), P(e, j(M, {
|
|
44595
44611
|
when: yr,
|
|
44596
44612
|
get children() {
|
|
44597
|
-
return [
|
|
44613
|
+
return [o0(), j(Ej, {
|
|
44598
44614
|
label: "OAuth client ID",
|
|
44599
44615
|
get children() {
|
|
44600
44616
|
return [
|
|
44601
44617
|
(() => {
|
|
44602
|
-
var e =
|
|
44618
|
+
var e = a0();
|
|
44603
44619
|
return P(e, j(bj, {
|
|
44604
44620
|
placeholder: "your-client-id",
|
|
44605
44621
|
get value() {
|
|
@@ -44627,7 +44643,7 @@ function p0() {
|
|
|
44627
44643
|
}
|
|
44628
44644
|
}),
|
|
44629
44645
|
(() => {
|
|
44630
|
-
var e =
|
|
44646
|
+
var e = s0(), t = e.firstChild.nextSibling.nextSibling;
|
|
44631
44647
|
return P(t, E), e;
|
|
44632
44648
|
})()
|
|
44633
44649
|
];
|
|
@@ -44638,13 +44654,13 @@ function p0() {
|
|
|
44638
44654
|
})();
|
|
44639
44655
|
},
|
|
44640
44656
|
get children() {
|
|
44641
|
-
var e =
|
|
44657
|
+
var e = U1(), t = e.firstChild;
|
|
44642
44658
|
return P(t, j(M, {
|
|
44643
44659
|
get when() {
|
|
44644
44660
|
return !a.isLoading;
|
|
44645
44661
|
},
|
|
44646
44662
|
get fallback() {
|
|
44647
|
-
return
|
|
44663
|
+
return l0();
|
|
44648
44664
|
},
|
|
44649
44665
|
get children() {
|
|
44650
44666
|
return j(M, {
|
|
@@ -44657,7 +44673,7 @@ function p0() {
|
|
|
44657
44673
|
return a.isError;
|
|
44658
44674
|
},
|
|
44659
44675
|
get fallback() {
|
|
44660
|
-
return
|
|
44676
|
+
return l0();
|
|
44661
44677
|
},
|
|
44662
44678
|
get children() {
|
|
44663
44679
|
return j(jj, { message: "Key rejected — reconnect" });
|
|
@@ -44665,7 +44681,7 @@ function p0() {
|
|
|
44665
44681
|
});
|
|
44666
44682
|
},
|
|
44667
44683
|
get children() {
|
|
44668
|
-
var e =
|
|
44684
|
+
var e = H1(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
|
|
44669
44685
|
return P(t, () => a.data.name), P(n, () => a.data.email), e;
|
|
44670
44686
|
}
|
|
44671
44687
|
});
|
|
@@ -44706,7 +44722,7 @@ function p0() {
|
|
|
44706
44722
|
return o.isLoading;
|
|
44707
44723
|
},
|
|
44708
44724
|
get children() {
|
|
44709
|
-
return [
|
|
44725
|
+
return [W1(), j(M, {
|
|
44710
44726
|
get when() {
|
|
44711
44727
|
return o.data;
|
|
44712
44728
|
},
|
|
@@ -44716,7 +44732,7 @@ function p0() {
|
|
|
44716
44732
|
return o.data;
|
|
44717
44733
|
},
|
|
44718
44734
|
children: (e) => (() => {
|
|
44719
|
-
var t =
|
|
44735
|
+
var t = u0(), r = t.firstChild, i = r.nextSibling;
|
|
44720
44736
|
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;
|
|
44721
44737
|
})()
|
|
44722
44738
|
});
|
|
@@ -44760,7 +44776,7 @@ function p0() {
|
|
|
44760
44776
|
return s.isLoading;
|
|
44761
44777
|
},
|
|
44762
44778
|
get children() {
|
|
44763
|
-
return [
|
|
44779
|
+
return [d0(), j(M, {
|
|
44764
44780
|
get when() {
|
|
44765
44781
|
return s.data;
|
|
44766
44782
|
},
|
|
@@ -44770,7 +44786,7 @@ function p0() {
|
|
|
44770
44786
|
return s.data;
|
|
44771
44787
|
},
|
|
44772
44788
|
children: (e) => (() => {
|
|
44773
|
-
var t =
|
|
44789
|
+
var t = f0();
|
|
44774
44790
|
return P(t, () => e.displayName), D(() => t.selected = e.id === n().cursorAgentId), D(() => t.value = e.id), t;
|
|
44775
44791
|
})()
|
|
44776
44792
|
});
|
|
@@ -44780,7 +44796,7 @@ function p0() {
|
|
|
44780
44796
|
});
|
|
44781
44797
|
},
|
|
44782
44798
|
get children() {
|
|
44783
|
-
return
|
|
44799
|
+
return G1();
|
|
44784
44800
|
}
|
|
44785
44801
|
});
|
|
44786
44802
|
}
|
|
@@ -44828,7 +44844,7 @@ function p0() {
|
|
|
44828
44844
|
onBlur: (e) => {
|
|
44829
44845
|
r({ issueTemplate: e.currentTarget.value.trim() || void 0 });
|
|
44830
44846
|
}
|
|
44831
|
-
}),
|
|
44847
|
+
}), K1()];
|
|
44832
44848
|
}
|
|
44833
44849
|
}),
|
|
44834
44850
|
j(Ej, {
|
|
@@ -44885,7 +44901,7 @@ function p0() {
|
|
|
44885
44901
|
label: "Test account",
|
|
44886
44902
|
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.",
|
|
44887
44903
|
get children() {
|
|
44888
|
-
var e =
|
|
44904
|
+
var e = q1();
|
|
44889
44905
|
return P(e, j(bj, {
|
|
44890
44906
|
placeholder: "Username or email (e.g. demo@yourapp.com)",
|
|
44891
44907
|
get value() {
|
|
@@ -44917,7 +44933,7 @@ function p0() {
|
|
|
44917
44933
|
title: "Panel",
|
|
44918
44934
|
get children() {
|
|
44919
44935
|
return [(() => {
|
|
44920
|
-
var e =
|
|
44936
|
+
var e = J1(), t = e.firstChild.nextSibling;
|
|
44921
44937
|
return P(t, j(We, {
|
|
44922
44938
|
each: [{
|
|
44923
44939
|
id: "overlay",
|
|
@@ -44927,7 +44943,7 @@ function p0() {
|
|
|
44927
44943
|
label: "Beside page"
|
|
44928
44944
|
}],
|
|
44929
44945
|
children: (e) => (() => {
|
|
44930
|
-
var t =
|
|
44946
|
+
var t = i0();
|
|
44931
44947
|
return t.$$click = () => void r({
|
|
44932
44948
|
panelMode: e.id,
|
|
44933
44949
|
panelPos: void 0
|
|
@@ -44935,11 +44951,11 @@ function p0() {
|
|
|
44935
44951
|
})()
|
|
44936
44952
|
})), e;
|
|
44937
44953
|
})(), (() => {
|
|
44938
|
-
var e =
|
|
44954
|
+
var e = Y1(), t = e.firstChild.nextSibling;
|
|
44939
44955
|
return P(t, j(We, {
|
|
44940
44956
|
each: ["left", "right"],
|
|
44941
44957
|
children: (e) => (() => {
|
|
44942
|
-
var t =
|
|
44958
|
+
var t = i0();
|
|
44943
44959
|
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;
|
|
44944
44960
|
})()
|
|
44945
44961
|
})), e;
|
|
@@ -45051,12 +45067,12 @@ function p0() {
|
|
|
45051
45067
|
});
|
|
45052
45068
|
},
|
|
45053
45069
|
get children() {
|
|
45054
|
-
return [
|
|
45070
|
+
return [X1(), j(We, {
|
|
45055
45071
|
get each() {
|
|
45056
45072
|
return O.data ?? [];
|
|
45057
45073
|
},
|
|
45058
45074
|
children: (e) => (() => {
|
|
45059
|
-
var t =
|
|
45075
|
+
var t = p0();
|
|
45060
45076
|
return t.firstChild, P(t, () => e.name, null), D(() => t.selected = e.id === n().slackChannelId), D(() => t.value = e.id), t;
|
|
45061
45077
|
})()
|
|
45062
45078
|
})];
|
|
@@ -45107,10 +45123,10 @@ function p0() {
|
|
|
45107
45123
|
}
|
|
45108
45124
|
}),
|
|
45109
45125
|
(() => {
|
|
45110
|
-
var e =
|
|
45126
|
+
var e = Z1(), t = e.firstChild;
|
|
45111
45127
|
return t.addEventListener("change", (e) => void r({ notifyOnCreate: e.currentTarget.checked ? void 0 : !1 })), D(() => t.checked = n().notifyOnCreate !== !1), e;
|
|
45112
45128
|
})(),
|
|
45113
|
-
|
|
45129
|
+
Q1()
|
|
45114
45130
|
];
|
|
45115
45131
|
}
|
|
45116
45132
|
}), null), P(e, j(Dj, {
|
|
@@ -45148,7 +45164,7 @@ function p0() {
|
|
|
45148
45164
|
}
|
|
45149
45165
|
}),
|
|
45150
45166
|
(() => {
|
|
45151
|
-
var e =
|
|
45167
|
+
var e = $1(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
|
|
45152
45168
|
return t.$$click = () => void r({ preferredProvider: void 0 }), i.$$click = () => void r({ preferredProvider: "openai" }), a.$$click = () => void r({ preferredProvider: "anthropic" }), D((e) => {
|
|
45153
45169
|
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;
|
|
45154
45170
|
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;
|
|
@@ -45161,16 +45177,16 @@ function p0() {
|
|
|
45161
45177
|
}), e;
|
|
45162
45178
|
})(),
|
|
45163
45179
|
(() => {
|
|
45164
|
-
var e =
|
|
45180
|
+
var e = t0();
|
|
45165
45181
|
return P(e, j(M, {
|
|
45166
45182
|
get when() {
|
|
45167
45183
|
return te();
|
|
45168
45184
|
},
|
|
45169
45185
|
get fallback() {
|
|
45170
|
-
return
|
|
45186
|
+
return m0();
|
|
45171
45187
|
},
|
|
45172
45188
|
get children() {
|
|
45173
|
-
var e =
|
|
45189
|
+
var e = e0();
|
|
45174
45190
|
return P(e, te), e;
|
|
45175
45191
|
}
|
|
45176
45192
|
})), e;
|
|
@@ -45180,7 +45196,7 @@ function p0() {
|
|
|
45180
45196
|
}), null), P(e, j(Dj, {
|
|
45181
45197
|
title: "How it works",
|
|
45182
45198
|
get children() {
|
|
45183
|
-
return
|
|
45199
|
+
return n0();
|
|
45184
45200
|
}
|
|
45185
45201
|
}), null), e;
|
|
45186
45202
|
})();
|
|
@@ -45188,38 +45204,38 @@ function p0() {
|
|
|
45188
45204
|
rt(["click"]);
|
|
45189
45205
|
//#endregion
|
|
45190
45206
|
//#region src/lib/idbCache.ts
|
|
45191
|
-
var
|
|
45207
|
+
var g0 = "linear-grab", _0 = "queries", v0 = [
|
|
45192
45208
|
"my-issues",
|
|
45193
45209
|
"issue",
|
|
45194
45210
|
"sessions",
|
|
45195
45211
|
"teams",
|
|
45196
45212
|
"agents"
|
|
45197
45213
|
];
|
|
45198
|
-
function
|
|
45214
|
+
function y0() {
|
|
45199
45215
|
return new Promise((e) => {
|
|
45200
45216
|
try {
|
|
45201
|
-
let t = indexedDB.open(
|
|
45202
|
-
t.onupgradeneeded = () => t.result.createObjectStore(
|
|
45217
|
+
let t = indexedDB.open(g0, 1);
|
|
45218
|
+
t.onupgradeneeded = () => t.result.createObjectStore(_0), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
|
|
45203
45219
|
} catch {
|
|
45204
45220
|
e(null);
|
|
45205
45221
|
}
|
|
45206
45222
|
});
|
|
45207
45223
|
}
|
|
45208
|
-
function
|
|
45209
|
-
return typeof e[0] == "string" &&
|
|
45224
|
+
function b0(e) {
|
|
45225
|
+
return typeof e[0] == "string" && v0.includes(e[0]);
|
|
45210
45226
|
}
|
|
45211
|
-
async function
|
|
45212
|
-
let t = await
|
|
45227
|
+
async function x0(e) {
|
|
45228
|
+
let t = await y0();
|
|
45213
45229
|
if (!t) return () => {};
|
|
45214
45230
|
await new Promise((n) => {
|
|
45215
45231
|
try {
|
|
45216
|
-
let r = t.transaction(
|
|
45232
|
+
let r = t.transaction(_0, "readonly").objectStore(_0).openCursor();
|
|
45217
45233
|
r.onsuccess = () => {
|
|
45218
45234
|
let t = r.result;
|
|
45219
45235
|
if (!t) return n();
|
|
45220
45236
|
try {
|
|
45221
45237
|
let { queryKey: n, data: r } = t.value;
|
|
45222
|
-
|
|
45238
|
+
b0(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
|
|
45223
45239
|
} catch {}
|
|
45224
45240
|
t.continue();
|
|
45225
45241
|
}, r.onerror = () => n();
|
|
@@ -45230,14 +45246,14 @@ async function y0(e) {
|
|
|
45230
45246
|
let n = /* @__PURE__ */ new Map(), r = e.getQueryCache().subscribe((r) => {
|
|
45231
45247
|
if (r.type !== "updated" || r.action.type !== "success") return;
|
|
45232
45248
|
let { queryKey: i, queryHash: a } = r.query;
|
|
45233
|
-
if (!
|
|
45249
|
+
if (!b0(i)) return;
|
|
45234
45250
|
let o = n.get(a);
|
|
45235
45251
|
o && clearTimeout(o), n.set(a, setTimeout(() => {
|
|
45236
45252
|
n.delete(a);
|
|
45237
45253
|
try {
|
|
45238
45254
|
let n = e.getQueryData(i);
|
|
45239
45255
|
if (n === void 0) return;
|
|
45240
|
-
t.transaction(
|
|
45256
|
+
t.transaction(_0, "readwrite").objectStore(_0).put({
|
|
45241
45257
|
queryKey: i,
|
|
45242
45258
|
data: n
|
|
45243
45259
|
}, a);
|
|
@@ -45253,7 +45269,7 @@ async function y0(e) {
|
|
|
45253
45269
|
//#endregion
|
|
45254
45270
|
//#region src/panel/App.tsx
|
|
45255
45271
|
Rr();
|
|
45256
|
-
var
|
|
45272
|
+
var S0 = /*#__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\">"), C0 = /*#__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\">"), w0 = /*#__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\">–"), T0 = /*#__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>"), E0 = /*#__PURE__*/ N("<button>"), D0 = [
|
|
45257
45273
|
{
|
|
45258
45274
|
id: "draft",
|
|
45259
45275
|
label: "Draft"
|
|
@@ -45278,14 +45294,14 @@ var b0 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hid
|
|
|
45278
45294
|
id: "settings",
|
|
45279
45295
|
label: "Settings"
|
|
45280
45296
|
}
|
|
45281
|
-
],
|
|
45297
|
+
], O0 = new gr({ defaultOptions: { queries: {
|
|
45282
45298
|
retry: 1,
|
|
45283
45299
|
refetchOnWindowFocus: !1,
|
|
45284
45300
|
staleTime: 5e3
|
|
45285
45301
|
} } });
|
|
45286
|
-
function
|
|
45302
|
+
function k0(e) {
|
|
45287
45303
|
return (() => {
|
|
45288
|
-
var t =
|
|
45304
|
+
var t = S0();
|
|
45289
45305
|
return D((n) => {
|
|
45290
45306
|
var r = e.size ?? 14, i = e.size ?? 14;
|
|
45291
45307
|
return r !== n.e && it(t, "width", n.e = r), i !== n.t && it(t, "height", n.t = i), n;
|
|
@@ -45295,32 +45311,32 @@ function D0(e) {
|
|
|
45295
45311
|
}), t;
|
|
45296
45312
|
})();
|
|
45297
45313
|
}
|
|
45298
|
-
function
|
|
45314
|
+
function A0(e) {
|
|
45299
45315
|
let [t, n] = T("draft"), r = () => {
|
|
45300
|
-
|
|
45316
|
+
O0.invalidateQueries({ queryKey: ["grab"] }), ZA() === "capture" && n("capture"), e.onGrab?.();
|
|
45301
45317
|
};
|
|
45302
45318
|
return O(() => {
|
|
45303
45319
|
let e = GA();
|
|
45304
45320
|
e && n(e);
|
|
45305
45321
|
}), ie(() => {
|
|
45306
|
-
let e =
|
|
45307
|
-
RO().then(
|
|
45322
|
+
let e = x0(O0), t = IZ(r), n = () => {
|
|
45323
|
+
RO().then(qQ), FO();
|
|
45308
45324
|
};
|
|
45309
45325
|
n();
|
|
45310
45326
|
let i = Ar((e) => {
|
|
45311
|
-
e === "settings" && (
|
|
45327
|
+
e === "settings" && (O0.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
|
|
45312
45328
|
});
|
|
45313
45329
|
ae(() => {
|
|
45314
45330
|
t(), i(), e.then((e) => e());
|
|
45315
45331
|
});
|
|
45316
45332
|
}), j(cr, {
|
|
45317
|
-
client:
|
|
45333
|
+
client: O0,
|
|
45318
45334
|
get children() {
|
|
45319
|
-
var r =
|
|
45320
|
-
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(
|
|
45321
|
-
each:
|
|
45335
|
+
var r = T0(), 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;
|
|
45336
|
+
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(k0, { size: 14 })), P(o, j(We, {
|
|
45337
|
+
each: D0,
|
|
45322
45338
|
children: (e) => (() => {
|
|
45323
|
-
var r =
|
|
45339
|
+
var r = E0();
|
|
45324
45340
|
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;
|
|
45325
45341
|
})()
|
|
45326
45342
|
})), P(i, j(M, {
|
|
@@ -45328,7 +45344,7 @@ function O0(e) {
|
|
|
45328
45344
|
return e.onTogglePin;
|
|
45329
45345
|
},
|
|
45330
45346
|
get children() {
|
|
45331
|
-
var t =
|
|
45347
|
+
var t = C0();
|
|
45332
45348
|
return t.$$click = () => e.onTogglePin?.(), D((n) => {
|
|
45333
45349
|
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"}`;
|
|
45334
45350
|
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;
|
|
@@ -45343,10 +45359,10 @@ function O0(e) {
|
|
|
45343
45359
|
return e.onClose;
|
|
45344
45360
|
},
|
|
45345
45361
|
get children() {
|
|
45346
|
-
var t =
|
|
45362
|
+
var t = w0();
|
|
45347
45363
|
return t.$$click = () => e.onClose?.(), t;
|
|
45348
45364
|
}
|
|
45349
|
-
}), null), P(s, j(dM, { onCreated: () => n("activity") })), P(c, j(
|
|
45365
|
+
}), null), P(s, j(dM, { onCreated: () => n("activity") })), P(c, j(oQ, {})), P(l, j(P$, {})), P(u, j(x1, {})), P(d, j(P1, { onOpenIssue: () => n("activity") })), P(f, j(h0, {})), D((n) => {
|
|
45350
45366
|
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", p = t() !== "activity", m = t() !== "local", h = t() !== "prs", g = t() !== "settings";
|
|
45351
45367
|
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), p !== n.o && l.classList.toggle("hidden", n.o = p), m !== n.i && u.classList.toggle("hidden", n.i = m), h !== n.n && d.classList.toggle("hidden", n.n = h), g !== n.s && f.classList.toggle("hidden", n.s = g), n;
|
|
45352
45368
|
}, {
|
|
@@ -45364,12 +45380,12 @@ function O0(e) {
|
|
|
45364
45380
|
rt(["pointerdown", "click"]);
|
|
45365
45381
|
//#endregion
|
|
45366
45382
|
//#region src/styles/app.css?inline
|
|
45367
|
-
var k0 = "/*! 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-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-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-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[68px\\]{min-width:68px}.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-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-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-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}.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-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}.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}}";
|
|
45383
|
+
var j0 = "/*! 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-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-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-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[68px\\]{min-width:68px}.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-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-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-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}.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-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}.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}}";
|
|
45368
45384
|
//#endregion
|
|
45369
45385
|
//#region src/page/index.tsx
|
|
45370
45386
|
Rr();
|
|
45371
|
-
var
|
|
45372
|
-
function
|
|
45387
|
+
var M0 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), N0 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), P0 = /*#__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"), F0 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), I0 = /*#__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"), L0 = /*#__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\">"), R0 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), z0 = /*#__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\">"), B0 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), V0 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), H0 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), U0 = /*#__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>"), W0 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), G0 = /*#__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\"> · <!> · ");
|
|
45388
|
+
function K0(e = {}) {
|
|
45373
45389
|
if (typeof window > "u" || window.__LINEAR_GRAB_PAGE__) return;
|
|
45374
45390
|
window.__LINEAR_GRAB_PAGE__ = !0;
|
|
45375
45391
|
let t = () => {
|
|
@@ -45377,17 +45393,17 @@ function W0(e = {}) {
|
|
|
45377
45393
|
let t = document.createElement("div");
|
|
45378
45394
|
t.id = "linear-grab-root", document.body.appendChild(t);
|
|
45379
45395
|
let n = t.attachShadow({ mode: "open" }), r = document.createElement("style");
|
|
45380
|
-
r.textContent =
|
|
45396
|
+
r.textContent = j0, n.appendChild(r);
|
|
45381
45397
|
let i = document.createElement("div");
|
|
45382
45398
|
n.appendChild(i);
|
|
45383
|
-
let a = () => i.setAttribute("data-theme",
|
|
45384
|
-
a(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", a), nt(() => j(
|
|
45399
|
+
let a = () => i.setAttribute("data-theme", q0());
|
|
45400
|
+
a(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", a), nt(() => j($0, { get defaultOpen() {
|
|
45385
45401
|
return e.defaultOpen ?? !1;
|
|
45386
45402
|
} }), i);
|
|
45387
45403
|
};
|
|
45388
45404
|
document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
|
|
45389
45405
|
}
|
|
45390
|
-
function
|
|
45406
|
+
function q0() {
|
|
45391
45407
|
try {
|
|
45392
45408
|
let e = [document.body, document.documentElement];
|
|
45393
45409
|
for (let t of e) {
|
|
@@ -45397,11 +45413,11 @@ function G0() {
|
|
|
45397
45413
|
} catch {}
|
|
45398
45414
|
return matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
|
45399
45415
|
}
|
|
45400
|
-
var
|
|
45401
|
-
function
|
|
45416
|
+
var J0 = 130, Y0 = 36, X0 = 380, Z0 = 280, Q0 = 720;
|
|
45417
|
+
function $0(e) {
|
|
45402
45418
|
let [t, n] = T(e.defaultOpen), [r, i] = T("right"), [a, o] = T({
|
|
45403
|
-
x: Math.max(8, window.innerWidth -
|
|
45404
|
-
y: Math.max(8, window.innerHeight -
|
|
45419
|
+
x: Math.max(8, window.innerWidth - J0 - 24),
|
|
45420
|
+
y: Math.max(8, window.innerHeight - Y0 - 20)
|
|
45405
45421
|
}), [s, c] = T({
|
|
45406
45422
|
running: [],
|
|
45407
45423
|
review: []
|
|
@@ -45416,12 +45432,12 @@ function Z0(e) {
|
|
|
45416
45432
|
let t = Math.floor(e / 1e3);
|
|
45417
45433
|
return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
45418
45434
|
}, [v, y] = T(null), b = (e) => ({
|
|
45419
|
-
x: Math.min(Math.max(8, e.x), window.innerWidth -
|
|
45420
|
-
y: Math.min(Math.max(8, e.y), window.innerHeight -
|
|
45435
|
+
x: Math.min(Math.max(8, e.x), window.innerWidth - J0 - 8),
|
|
45436
|
+
y: Math.min(Math.max(8, e.y), window.innerHeight - Y0 - 8)
|
|
45421
45437
|
}), x = (e) => ({
|
|
45422
45438
|
x: Math.min(Math.max(8 - (te() - 80), e.x), window.innerWidth - 80),
|
|
45423
45439
|
y: Math.min(Math.max(0, e.y), window.innerHeight - 80)
|
|
45424
|
-
}), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(
|
|
45440
|
+
}), [S, C] = T(!1), [w, E] = T("cloud"), [k, ee] = T(!1), [te, A] = T(X0), ne = (e) => Math.min(Q0, Math.max(Z0, Math.min(e, window.innerWidth - 60)));
|
|
45425
45441
|
O(() => {
|
|
45426
45442
|
let e = document.documentElement, n = t() && S();
|
|
45427
45443
|
e.style.transition = "margin 0.2s ease", e.style.marginRight = n && r() === "right" ? `${te()}px` : "", e.style.marginLeft = n && r() === "left" ? `${te()}px` : "";
|
|
@@ -45453,7 +45469,7 @@ function Z0(e) {
|
|
|
45453
45469
|
window.addEventListener(DZ, r), ae(() => {
|
|
45454
45470
|
window.removeEventListener(EZ, t), window.removeEventListener(DZ, r);
|
|
45455
45471
|
});
|
|
45456
|
-
let s =
|
|
45472
|
+
let s = FQ(c), l = BD().phase, u = VD((e) => {
|
|
45457
45473
|
m(e.phase), e.phase === "recording" && l !== "recording" && !S() && n(!1), e.phase === "ready" && l !== "ready" && (YA("capture"), n(!0)), l = e.phase;
|
|
45458
45474
|
}), d = () => {
|
|
45459
45475
|
o(b(a()));
|
|
@@ -45529,7 +45545,7 @@ function Z0(e) {
|
|
|
45529
45545
|
return !t();
|
|
45530
45546
|
},
|
|
45531
45547
|
get children() {
|
|
45532
|
-
var e =
|
|
45548
|
+
var e = L0(), t = e.firstChild;
|
|
45533
45549
|
return t.$$pointerdown = se, P(t, j(M, {
|
|
45534
45550
|
get when() {
|
|
45535
45551
|
return p() === "recording";
|
|
@@ -45537,14 +45553,14 @@ function Z0(e) {
|
|
|
45537
45553
|
get fallback() {
|
|
45538
45554
|
return [
|
|
45539
45555
|
(() => {
|
|
45540
|
-
var e =
|
|
45556
|
+
var e = z0();
|
|
45541
45557
|
return e.$$click = () => {
|
|
45542
45558
|
oe || (f(!1), n(!0));
|
|
45543
|
-
}, P(e, j(
|
|
45559
|
+
}, P(e, j(k0, { size: 13 })), e;
|
|
45544
45560
|
})(),
|
|
45545
|
-
|
|
45561
|
+
B0(),
|
|
45546
45562
|
(() => {
|
|
45547
|
-
var e =
|
|
45563
|
+
var e = U0(), t = e.firstChild, n = t.nextSibling;
|
|
45548
45564
|
return e.$$click = () => {
|
|
45549
45565
|
oe || f((e) => !e);
|
|
45550
45566
|
}, P(n, (() => {
|
|
@@ -45555,8 +45571,8 @@ function Z0(e) {
|
|
|
45555
45571
|
return $e(() => !k())() && u().length > 0;
|
|
45556
45572
|
},
|
|
45557
45573
|
get children() {
|
|
45558
|
-
return [
|
|
45559
|
-
var e =
|
|
45574
|
+
return [V0(), (() => {
|
|
45575
|
+
var e = H0(), t = e.firstChild;
|
|
45560
45576
|
return P(e, () => u().length, t), e;
|
|
45561
45577
|
})()];
|
|
45562
45578
|
}
|
|
@@ -45572,13 +45588,13 @@ function Z0(e) {
|
|
|
45572
45588
|
},
|
|
45573
45589
|
get children() {
|
|
45574
45590
|
return [
|
|
45575
|
-
|
|
45591
|
+
M0(),
|
|
45576
45592
|
(() => {
|
|
45577
|
-
var e =
|
|
45593
|
+
var e = N0();
|
|
45578
45594
|
return P(e, () => _(h())), e;
|
|
45579
45595
|
})(),
|
|
45580
45596
|
(() => {
|
|
45581
|
-
var e =
|
|
45597
|
+
var e = P0();
|
|
45582
45598
|
return e.$$click = () => {
|
|
45583
45599
|
oe || QD();
|
|
45584
45600
|
}, e;
|
|
@@ -45590,17 +45606,17 @@ function Z0(e) {
|
|
|
45590
45606
|
return d();
|
|
45591
45607
|
},
|
|
45592
45608
|
get children() {
|
|
45593
|
-
var e =
|
|
45609
|
+
var e = I0(), t = e.firstChild;
|
|
45594
45610
|
return P(e, j(M, {
|
|
45595
45611
|
get when() {
|
|
45596
45612
|
return u().length > 0;
|
|
45597
45613
|
},
|
|
45598
45614
|
get children() {
|
|
45599
|
-
return [
|
|
45615
|
+
return [F0(), j(We, {
|
|
45600
45616
|
get each() {
|
|
45601
45617
|
return u();
|
|
45602
45618
|
},
|
|
45603
|
-
children: (e) => j(
|
|
45619
|
+
children: (e) => j(e2, {
|
|
45604
45620
|
agent: e,
|
|
45605
45621
|
review: !0,
|
|
45606
45622
|
onOpen: le
|
|
@@ -45612,14 +45628,14 @@ function Z0(e) {
|
|
|
45612
45628
|
return l().length > 0;
|
|
45613
45629
|
},
|
|
45614
45630
|
get fallback() {
|
|
45615
|
-
return
|
|
45631
|
+
return W0();
|
|
45616
45632
|
},
|
|
45617
45633
|
get children() {
|
|
45618
45634
|
return j(We, {
|
|
45619
45635
|
get each() {
|
|
45620
45636
|
return l();
|
|
45621
45637
|
},
|
|
45622
|
-
children: (e) => j(
|
|
45638
|
+
children: (e) => j(e2, {
|
|
45623
45639
|
agent: e,
|
|
45624
45640
|
onOpen: le
|
|
45625
45641
|
})
|
|
@@ -45640,8 +45656,8 @@ function Z0(e) {
|
|
|
45640
45656
|
return t();
|
|
45641
45657
|
},
|
|
45642
45658
|
get children() {
|
|
45643
|
-
var e =
|
|
45644
|
-
return t.$$pointerdown = ue, P(e, j(
|
|
45659
|
+
var e = R0(), t = e.firstChild;
|
|
45660
|
+
return t.$$pointerdown = ue, P(e, j(A0, {
|
|
45645
45661
|
onGrab: () => n(!0),
|
|
45646
45662
|
onClose: () => n(!1),
|
|
45647
45663
|
get onHeaderPointerDown() {
|
|
@@ -45669,19 +45685,19 @@ function Z0(e) {
|
|
|
45669
45685
|
}
|
|
45670
45686
|
})];
|
|
45671
45687
|
}
|
|
45672
|
-
function
|
|
45688
|
+
function e2(e) {
|
|
45673
45689
|
return (() => {
|
|
45674
|
-
var t =
|
|
45690
|
+
var t = G0(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
|
|
45675
45691
|
return c.nextSibling, t.$$click = () => e.onOpen(e.agent.id), P(i, () => e.agent.identifier), P(a, () => e.agent.title), P(o, (() => {
|
|
45676
45692
|
var t = $e(() => !!e.review);
|
|
45677
45693
|
return () => t() ? "PR ready · needs review" : e.agent.stateName;
|
|
45678
|
-
})(), s), P(o, () => e.agent.delegateName, c), P(o, () =>
|
|
45694
|
+
})(), s), P(o, () => e.agent.delegateName, c), P(o, () => t2(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
|
|
45679
45695
|
})();
|
|
45680
45696
|
}
|
|
45681
|
-
function
|
|
45697
|
+
function t2(e) {
|
|
45682
45698
|
let t = Math.max(0, Math.floor((Date.now() - Date.parse(e)) / 1e3));
|
|
45683
45699
|
return t < 60 ? "now" : t < 3600 ? `${Math.floor(t / 60)}m` : t < 86400 ? `${Math.floor(t / 3600)}h` : `${Math.floor(t / 86400)}d`;
|
|
45684
45700
|
}
|
|
45685
45701
|
rt(["pointerdown", "click"]);
|
|
45686
45702
|
//#endregion
|
|
45687
|
-
export {
|
|
45703
|
+
export { K0 as init };
|