linear-grab 0.23.4 → 0.23.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.global.js +7 -7
- package/dist/linear-grab.js +275 -231
- package/package.json +1 -1
package/dist/linear-grab.js
CHANGED
|
@@ -46044,10 +46044,28 @@ function O2() {
|
|
|
46044
46044
|
w2 = [];
|
|
46045
46045
|
for (let e of T2) e(w2);
|
|
46046
46046
|
}
|
|
46047
|
-
var k2 = !
|
|
46048
|
-
|
|
46049
|
-
|
|
46050
|
-
|
|
46047
|
+
var k2 = !0;
|
|
46048
|
+
try {
|
|
46049
|
+
k2 = localStorage.getItem("linear-grab:css-watch") !== "0";
|
|
46050
|
+
} catch {}
|
|
46051
|
+
var A2 = /* @__PURE__ */ new Set();
|
|
46052
|
+
function j2() {
|
|
46053
|
+
return k2;
|
|
46054
|
+
}
|
|
46055
|
+
function M2(e) {
|
|
46056
|
+
k2 = e;
|
|
46057
|
+
try {
|
|
46058
|
+
localStorage.setItem("linear-grab:css-watch", e ? "1" : "0");
|
|
46059
|
+
} catch {}
|
|
46060
|
+
for (let t of A2) t(e);
|
|
46061
|
+
}
|
|
46062
|
+
function N2(e) {
|
|
46063
|
+
return A2.add(e), e(k2), () => void A2.delete(e);
|
|
46064
|
+
}
|
|
46065
|
+
var P2 = !1;
|
|
46066
|
+
function F2() {
|
|
46067
|
+
if (P2 || typeof window > "u") return;
|
|
46068
|
+
P2 = !0;
|
|
46051
46069
|
let e = 0, t = () => {
|
|
46052
46070
|
e = performance.now();
|
|
46053
46071
|
};
|
|
@@ -46061,6 +46079,7 @@ function A2() {
|
|
|
46061
46079
|
});
|
|
46062
46080
|
let n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
|
|
46063
46081
|
window.addEventListener("transitionrun", (t) => {
|
|
46082
|
+
if (!k2) return;
|
|
46064
46083
|
let i = performance.now() - e;
|
|
46065
46084
|
if (i > d2) return;
|
|
46066
46085
|
let a = t.target;
|
|
@@ -46110,9 +46129,9 @@ function A2() {
|
|
|
46110
46129
|
passive: !0
|
|
46111
46130
|
});
|
|
46112
46131
|
}
|
|
46113
|
-
var
|
|
46114
|
-
async function
|
|
46115
|
-
let e = /* @__PURE__ */ new Map(), t = Array.from(document.querySelectorAll(
|
|
46132
|
+
var I2 = "button, a, input, select, textarea, [role], [tabindex], [data-state], [aria-expanded]";
|
|
46133
|
+
async function L2() {
|
|
46134
|
+
let e = /* @__PURE__ */ new Map(), t = Array.from(document.querySelectorAll(I2)).slice(0, 3e3);
|
|
46116
46135
|
for (let n of t) {
|
|
46117
46136
|
if (n.closest("#linear-grab-root")) continue;
|
|
46118
46137
|
let t = n.getBoundingClientRect();
|
|
@@ -46157,7 +46176,7 @@ async function M2() {
|
|
|
46157
46176
|
for (let e of n) C2(e);
|
|
46158
46177
|
return n;
|
|
46159
46178
|
}
|
|
46160
|
-
function
|
|
46179
|
+
function R2(e) {
|
|
46161
46180
|
return [
|
|
46162
46181
|
"Below is a CSS-slowdown report from my running app (live-captured on real input + full-page audit).",
|
|
46163
46182
|
"Goal: ALL interaction feedback must be instant. Rules:",
|
|
@@ -46186,10 +46205,10 @@ function N2(e) {
|
|
|
46186
46205
|
"",
|
|
46187
46206
|
"---",
|
|
46188
46207
|
"",
|
|
46189
|
-
|
|
46208
|
+
z2(e)
|
|
46190
46209
|
].join("\n");
|
|
46191
46210
|
}
|
|
46192
|
-
function
|
|
46211
|
+
function z2(e) {
|
|
46193
46212
|
let t = [
|
|
46194
46213
|
`# CSS slowdowns on ${location.host}${location.pathname}`,
|
|
46195
46214
|
"Threshold: 50ms (interaction feedback should be instant).",
|
|
@@ -46200,22 +46219,22 @@ function P2(e) {
|
|
|
46200
46219
|
}
|
|
46201
46220
|
//#endregion
|
|
46202
46221
|
//#region src/panel/views/DesignView.tsx
|
|
46203
|
-
var
|
|
46204
|
-
function
|
|
46222
|
+
var B2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[7ch] text-center\">Extract"), V2 = /*#__PURE__*/ N("<div class=\"relative flex flex-col gap-2 pl-4\"><div class=\"bg-border absolute top-1 bottom-1 left-[5px] w-px\"aria-hidden>"), H2 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), U2 = /*#__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\">"), W2 = /*#__PURE__*/ N("<div class=\"flex items-center justify-end gap-1 px-1\">"), G2 = /*#__PURE__*/ N("<span class=\"relative inline-flex items-center justify-center\"><svg width=12 height=12 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><rect x=3.5 y=3 width=3.2 height=10 rx=1></rect><rect x=9.3 y=3 width=3.2 height=10 rx=1></rect></svg><span class=\"bg-success absolute -top-0.5 -right-0.5 size-1.5 animate-pulse rounded-full\"aria-hidden>"), K2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[5ch] text-center\">Audit"), q2 = /*#__PURE__*/ N("<div class=\"flex max-h-72 flex-col gap-1.5 overflow-y-auto pr-2\">"), J2 = /*#__PURE__*/ N("<span class=\"text-[12px] leading-none\">✓"), Y2 = /*#__PURE__*/ N("<div class=\"flex items-center gap-1 px-1\">"), X2 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-3 overflow-y-auto pt-3 pb-4 pr-3 pl-2\"><div class=\"flex items-center justify-between gap-2 px-1\"><div class=min-w-0><p class=\"text-text text-[12.5px] font-semibold\">Design genomes</p><p class=\"text-text-faint text-[10.5px] leading-snug\">Point at a component → get its structure, tokens and interaction states as a spec you can hand to an agent.</p></div></div><div class=\"border-border mt-1 flex flex-col gap-2 border-t pt-3\"><div class=\"flex items-center justify-between gap-2 px-1\"><div class=min-w-0><p class=\"text-text text-[12.5px] font-semibold\">CSS slowdowns</p><p class=\"text-text-faint text-[10.5px] leading-snug\">Transitions/delays ≥50ms on interactive elements — feedback that animates instead of being instant. Live hits appear as you use the app; Audit sweeps the whole page.</p></div><div class=\"flex shrink-0 items-center gap-1\">"), Z2 = /*#__PURE__*/ N("<p class=\"text-text mt-1 text-[11px] font-semibold\">Interaction states"), Q2 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"aria-hidden><rect x=3.5 y=3.5 width=9 height=9 rx=1.5 fill=currentColor>"), $2 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px] font-medium tabular-nums\">s · <!> states"), e4 = /*#__PURE__*/ N("<div class=\"border-border flex flex-col gap-2 border-t px-2.5 py-2\"><p class=\"text-text-faint truncate text-[10px]\"></p><div class=\"flex max-h-64 flex-col gap-2 overflow-y-auto pr-2\"></div><div class=\"flex items-center gap-1\">"), t4 = /*#__PURE__*/ N("<div class=relative><span class=\"border-border bg-surface absolute top-3 -left-[13.5px] size-[9px] rounded-full border\"aria-hidden></span><div class=\"bg-surface border-border flex flex-col rounded-lg border\"><button class=\"flex w-full cursor-pointer items-center gap-2 px-2.5 py-2 text-left\"><span class=\"text-accent min-w-0 truncate font-mono text-[12px]\"></span><span class=\"text-text-faint ml-auto shrink-0 text-[10.5px] tabular-nums\"> roles<!> · </span><svg width=10 height=10 viewBox=\"0 0 16 16\"fill=none stroke=currentColor stroke-width=1.5 class=\"text-text-faint shrink-0 transition-transform\"aria-hidden><path d=\"m4 6 4 4 4-4\">"), n4 = /*#__PURE__*/ N("<span class=text-text-faint> ×"), r4 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><p class=\"text-text text-[11px] font-medium\">"), i4 = /*#__PURE__*/ N("<span class=text-accent> ← var(<!>)"), a4 = /*#__PURE__*/ N("<p class=\"text-text-dim font-mono text-[10px] leading-snug break-all\">: "), o4 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><p class=\"text-warn text-[10.5px] font-medium\"> — "), s4 = /*#__PURE__*/ N("<p class=\"text-text-dim font-mono text-[10px] leading-snug break-all\">: <!> → "), c4 = /*#__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=2 fill=currentColor stroke=none>"), l4 = /*#__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\">"), u4 = /*#__PURE__*/ N("<svg width=12 height=12 viewBox=\"0 0 16 16\"fill=currentColor aria-hidden><path d=\"M4.5 2.5v11l9-5.5z\">"), d4 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1 text-[10.5px]\">Nothing caught yet — interact with the app, or run Audit."), f4 = /*#__PURE__*/ N("<span class=\"text-text-dim font-mono text-[10px] break-all\">"), p4 = /*#__PURE__*/ N("<span class=\"text-danger text-[10px] leading-snug\">⚠ layout/paint transition: "), m4 = /*#__PURE__*/ N("<span class=\"text-danger text-[10px] leading-snug\">⚠ ease-in easing: "), h4 = /*#__PURE__*/ N("<div class=\"bg-surface border-border flex flex-col gap-0.5 rounded-lg border p-2\"><div class=\"flex items-center gap-2\"><span class=\"text-warn shrink-0 text-[10px] font-semibold tracking-wide uppercase\"></span><span class=\"text-accent min-w-0 truncate font-mono text-[11.5px]\"></span><span class=\"text-text ml-auto shrink-0 text-[11px] font-medium tabular-nums\">ms</span></div><span class=\"text-text-dim text-[10px] leading-snug\"></span><span class=\"text-text-faint text-[10px] leading-snug\">"), g4 = /*#__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 1.5 9.6 6l4.4 1.6L9.6 9.2 8 13.7 6.4 9.2 2 7.6 6.4 6Z\"></path><path d=\"M13 11.5l.6 1.7 1.7.6-1.7.6-.6 1.7-.6-1.7-1.7-.6 1.7-.6Z\">"), _4 = "linear-grab:genomes:v1", v4 = 30;
|
|
46223
|
+
function y4() {
|
|
46205
46224
|
try {
|
|
46206
|
-
return JSON.parse(localStorage.getItem(
|
|
46225
|
+
return JSON.parse(localStorage.getItem(_4) ?? "[]");
|
|
46207
46226
|
} catch {
|
|
46208
46227
|
return [];
|
|
46209
46228
|
}
|
|
46210
46229
|
}
|
|
46211
|
-
function
|
|
46230
|
+
function b4(e) {
|
|
46212
46231
|
try {
|
|
46213
|
-
localStorage.setItem(
|
|
46232
|
+
localStorage.setItem(_4, JSON.stringify(e.slice(0, v4)));
|
|
46214
46233
|
} catch {}
|
|
46215
46234
|
}
|
|
46216
|
-
var
|
|
46217
|
-
function
|
|
46218
|
-
let [e, t] = T(
|
|
46235
|
+
var x4 = /* @__PURE__ */ new Map();
|
|
46236
|
+
function S4() {
|
|
46237
|
+
let [e, t] = T(y4()), [n, r] = T(null), [i, a] = T(null), [o, s] = T(null), [c, l] = T(null), [u, d] = T(null), [f, p] = T({
|
|
46219
46238
|
active: !1,
|
|
46220
46239
|
msLeft: 0,
|
|
46221
46240
|
total: 0,
|
|
@@ -46224,34 +46243,36 @@ function h4() {
|
|
|
46224
46243
|
ae(i2(p));
|
|
46225
46244
|
let [m, h] = T([]);
|
|
46226
46245
|
ae(D2(h));
|
|
46227
|
-
let [g, _] = T(
|
|
46228
|
-
|
|
46246
|
+
let [g, _] = T(j2());
|
|
46247
|
+
ae(N2(_));
|
|
46248
|
+
let [v, y] = T(!1), [b, x] = T(!1), S = async () => {
|
|
46249
|
+
y(!0);
|
|
46229
46250
|
try {
|
|
46230
|
-
await
|
|
46251
|
+
await L2();
|
|
46231
46252
|
} finally {
|
|
46232
|
-
|
|
46253
|
+
y(!1);
|
|
46233
46254
|
}
|
|
46234
|
-
},
|
|
46255
|
+
}, C = async () => {
|
|
46235
46256
|
try {
|
|
46236
|
-
await navigator.clipboard.writeText(
|
|
46257
|
+
await navigator.clipboard.writeText(z2(m())), x(!0), setTimeout(() => x(!1), 1600);
|
|
46237
46258
|
} catch {
|
|
46238
46259
|
l("Clipboard was blocked — click Copy again.");
|
|
46239
46260
|
}
|
|
46240
|
-
}, [
|
|
46261
|
+
}, [w, E] = T(!1), O = async () => {
|
|
46241
46262
|
try {
|
|
46242
|
-
await navigator.clipboard.writeText(
|
|
46263
|
+
await navigator.clipboard.writeText(R2(m())), E(!0), setTimeout(() => E(!1), 1600);
|
|
46243
46264
|
} catch {
|
|
46244
46265
|
l("Clipboard was blocked — click Copy again.");
|
|
46245
46266
|
}
|
|
46246
|
-
},
|
|
46247
|
-
t(e),
|
|
46248
|
-
},
|
|
46267
|
+
}, k = (e) => {
|
|
46268
|
+
t(e), b4(e);
|
|
46269
|
+
}, ee = async () => {
|
|
46249
46270
|
l(null), a("extract"), window.dispatchEvent(new CustomEvent(BZ));
|
|
46250
46271
|
try {
|
|
46251
46272
|
let t = await u2();
|
|
46252
46273
|
if (!t) return;
|
|
46253
46274
|
let n = await e2(t), i = Date.now();
|
|
46254
|
-
|
|
46275
|
+
x4.set(i, new WeakRef(t)), k([{
|
|
46255
46276
|
id: i,
|
|
46256
46277
|
genome: n
|
|
46257
46278
|
}, ...e()]), r(i);
|
|
@@ -46260,16 +46281,16 @@ function h4() {
|
|
|
46260
46281
|
} finally {
|
|
46261
46282
|
a(null), oj("design"), window.dispatchEvent(new CustomEvent(VZ));
|
|
46262
46283
|
}
|
|
46263
|
-
},
|
|
46284
|
+
}, te = async (t) => {
|
|
46264
46285
|
l(null), a(t.id), window.dispatchEvent(new CustomEvent(BZ));
|
|
46265
46286
|
try {
|
|
46266
|
-
let n =
|
|
46287
|
+
let n = x4.get(t.id)?.deref() ?? null;
|
|
46267
46288
|
if (!n || !n.isConnected) {
|
|
46268
46289
|
if (n = await u2(), !n) return;
|
|
46269
|
-
|
|
46290
|
+
x4.set(t.id, new WeakRef(n));
|
|
46270
46291
|
}
|
|
46271
46292
|
let r = await c2(n, 8e3, (e) => s(Math.ceil(e / 1e3)));
|
|
46272
|
-
r.length === 0 && l("No state changes captured — hover/open the component while the 8s window runs."),
|
|
46293
|
+
r.length === 0 && l("No state changes captured — hover/open the component while the 8s window runs."), k(e().map((e) => e.id === t.id ? {
|
|
46273
46294
|
...e,
|
|
46274
46295
|
genome: {
|
|
46275
46296
|
...e.genome,
|
|
@@ -46281,37 +46302,37 @@ function h4() {
|
|
|
46281
46302
|
} finally {
|
|
46282
46303
|
a(null), s(null), oj("design"), window.dispatchEvent(new CustomEvent(VZ));
|
|
46283
46304
|
}
|
|
46284
|
-
},
|
|
46305
|
+
}, A = async (e) => {
|
|
46285
46306
|
try {
|
|
46286
46307
|
await navigator.clipboard.writeText(l2(e.genome)), d(e.id), setTimeout(() => d(null), 1600);
|
|
46287
46308
|
} catch {
|
|
46288
46309
|
l("Clipboard was blocked — click Copy again.");
|
|
46289
46310
|
}
|
|
46290
|
-
},
|
|
46291
|
-
|
|
46292
|
-
}, [
|
|
46311
|
+
}, ne = (t) => {
|
|
46312
|
+
x4.delete(t), k(e().filter((e) => e.id !== t));
|
|
46313
|
+
}, [re, ie] = T(!1), oe = async () => {
|
|
46293
46314
|
try {
|
|
46294
46315
|
let t = e().map((e) => l2(e.genome)).join("\n\n---\n\n");
|
|
46295
|
-
await navigator.clipboard.writeText(t),
|
|
46316
|
+
await navigator.clipboard.writeText(t), ie(!0), setTimeout(() => ie(!1), 1600);
|
|
46296
46317
|
} catch {
|
|
46297
46318
|
l("Clipboard was blocked — click Copy again.");
|
|
46298
46319
|
}
|
|
46299
|
-
},
|
|
46300
|
-
|
|
46320
|
+
}, se = () => {
|
|
46321
|
+
x4.clear(), k([]), r(null);
|
|
46301
46322
|
};
|
|
46302
46323
|
return (() => {
|
|
46303
|
-
var t =
|
|
46324
|
+
var t = X2(), a = t.firstChild;
|
|
46304
46325
|
a.firstChild;
|
|
46305
|
-
var o = a.nextSibling, s = o.firstChild;
|
|
46306
|
-
return
|
|
46326
|
+
var o = a.nextSibling, s = o.firstChild.firstChild.nextSibling;
|
|
46327
|
+
return P(a, j(kj, {
|
|
46307
46328
|
variant: "primary",
|
|
46308
46329
|
class: "h-7 shrink-0 px-2.5 text-[11.5px]",
|
|
46309
46330
|
get loading() {
|
|
46310
46331
|
return i() === "extract";
|
|
46311
46332
|
},
|
|
46312
|
-
onClick: () => void
|
|
46333
|
+
onClick: () => void ee(),
|
|
46313
46334
|
get children() {
|
|
46314
|
-
return
|
|
46335
|
+
return B2();
|
|
46315
46336
|
}
|
|
46316
46337
|
}), null), P(t, j(M, {
|
|
46317
46338
|
get when() {
|
|
@@ -46334,7 +46355,7 @@ function h4() {
|
|
|
46334
46355
|
},
|
|
46335
46356
|
get children() {
|
|
46336
46357
|
return [(() => {
|
|
46337
|
-
var t =
|
|
46358
|
+
var t = V2();
|
|
46338
46359
|
return t.firstChild, P(t, j(We, {
|
|
46339
46360
|
get each() {
|
|
46340
46361
|
return e();
|
|
@@ -46342,7 +46363,7 @@ function h4() {
|
|
|
46342
46363
|
children: (e) => {
|
|
46343
46364
|
let t = () => n() === e.id;
|
|
46344
46365
|
return (() => {
|
|
46345
|
-
var n =
|
|
46366
|
+
var n = t4(), a = n.firstChild, o = a.nextSibling, s = o.firstChild, c = s.firstChild, l = c.nextSibling, d = l.firstChild, p = d.nextSibling;
|
|
46346
46367
|
p.nextSibling;
|
|
46347
46368
|
var m = l.nextSibling;
|
|
46348
46369
|
return s.$$click = () => r(t() ? null : e.id), P(c, () => e.genome.title), P(l, () => e.genome.nodes.length, d), P(l, (() => {
|
|
@@ -46353,19 +46374,19 @@ function h4() {
|
|
|
46353
46374
|
return t();
|
|
46354
46375
|
},
|
|
46355
46376
|
get children() {
|
|
46356
|
-
var t =
|
|
46377
|
+
var t = e4(), n = t.firstChild, r = n.nextSibling, a = r.nextSibling;
|
|
46357
46378
|
return P(n, () => e.genome.pageUrl), P(r, j(We, {
|
|
46358
46379
|
get each() {
|
|
46359
46380
|
return e.genome.nodes;
|
|
46360
46381
|
},
|
|
46361
46382
|
children: (e) => (() => {
|
|
46362
|
-
var t =
|
|
46383
|
+
var t = r4(), n = t.firstChild;
|
|
46363
46384
|
return P(n, () => e.label, null), P(n, j(M, {
|
|
46364
46385
|
get when() {
|
|
46365
46386
|
return e.count > 1;
|
|
46366
46387
|
},
|
|
46367
46388
|
get children() {
|
|
46368
|
-
var t =
|
|
46389
|
+
var t = n4();
|
|
46369
46390
|
return t.firstChild, P(t, () => e.count, null), t;
|
|
46370
46391
|
}
|
|
46371
46392
|
}), null), P(t, j(We, {
|
|
@@ -46373,13 +46394,13 @@ function h4() {
|
|
|
46373
46394
|
return Object.entries(e.styles);
|
|
46374
46395
|
},
|
|
46375
46396
|
children: ([t, n]) => (() => {
|
|
46376
|
-
var r =
|
|
46397
|
+
var r = a4(), i = r.firstChild;
|
|
46377
46398
|
return P(r, t, i), P(r, n, null), P(r, j(M, {
|
|
46378
46399
|
get when() {
|
|
46379
46400
|
return e.tokens[t];
|
|
46380
46401
|
},
|
|
46381
46402
|
get children() {
|
|
46382
|
-
var n =
|
|
46403
|
+
var n = i4(), r = n.firstChild.nextSibling;
|
|
46383
46404
|
return r.nextSibling, P(n, () => e.tokens[t], r), n;
|
|
46384
46405
|
}
|
|
46385
46406
|
}), null), r;
|
|
@@ -46391,18 +46412,18 @@ function h4() {
|
|
|
46391
46412
|
return e.genome.states.length > 0;
|
|
46392
46413
|
},
|
|
46393
46414
|
get children() {
|
|
46394
|
-
return [
|
|
46415
|
+
return [Z2(), j(We, {
|
|
46395
46416
|
get each() {
|
|
46396
46417
|
return e.genome.states;
|
|
46397
46418
|
},
|
|
46398
46419
|
children: (e) => (() => {
|
|
46399
|
-
var t =
|
|
46420
|
+
var t = o4(), n = t.firstChild, r = n.firstChild;
|
|
46400
46421
|
return P(n, () => e.label, r), P(n, () => e.trigger, null), P(t, j(We, {
|
|
46401
46422
|
get each() {
|
|
46402
46423
|
return Object.entries(e.changed);
|
|
46403
46424
|
},
|
|
46404
46425
|
children: ([e, t]) => (() => {
|
|
46405
|
-
var n =
|
|
46426
|
+
var n = s4(), r = n.firstChild, i = r.nextSibling;
|
|
46406
46427
|
return i.nextSibling, P(n, e, r), P(n, () => t.from, i), P(n, () => t.to, null), n;
|
|
46407
46428
|
})()
|
|
46408
46429
|
}), null), t;
|
|
@@ -46422,9 +46443,9 @@ function h4() {
|
|
|
46422
46443
|
},
|
|
46423
46444
|
title: "Capture states — records hover/focus/open styles for 8s while you interact; the pill shows the timer and Stop",
|
|
46424
46445
|
"aria-label": "Capture interaction states",
|
|
46425
|
-
onClick: () => void
|
|
46446
|
+
onClick: () => void te(e),
|
|
46426
46447
|
get children() {
|
|
46427
|
-
return
|
|
46448
|
+
return c4();
|
|
46428
46449
|
}
|
|
46429
46450
|
});
|
|
46430
46451
|
},
|
|
@@ -46438,10 +46459,10 @@ function h4() {
|
|
|
46438
46459
|
"aria-label": "Stop recording states",
|
|
46439
46460
|
onClick: () => o2(),
|
|
46440
46461
|
get children() {
|
|
46441
|
-
return
|
|
46462
|
+
return Q2();
|
|
46442
46463
|
}
|
|
46443
46464
|
}), (() => {
|
|
46444
|
-
var e =
|
|
46465
|
+
var e = $2(), t = e.firstChild, n = t.nextSibling;
|
|
46445
46466
|
return n.nextSibling, P(e, () => Math.ceil(f().msLeft / 1e3), t), P(e, () => f().total, n), e;
|
|
46446
46467
|
})()];
|
|
46447
46468
|
}
|
|
@@ -46452,17 +46473,17 @@ function h4() {
|
|
|
46452
46473
|
return u() === e.id ? "Copied!" : "Copy spec — markdown for an agent or issue";
|
|
46453
46474
|
},
|
|
46454
46475
|
"aria-label": "Copy genome spec",
|
|
46455
|
-
onClick: () => void
|
|
46476
|
+
onClick: () => void A(e),
|
|
46456
46477
|
get children() {
|
|
46457
46478
|
return j(M, {
|
|
46458
46479
|
get when() {
|
|
46459
46480
|
return u() === e.id;
|
|
46460
46481
|
},
|
|
46461
46482
|
get fallback() {
|
|
46462
|
-
return
|
|
46483
|
+
return l4();
|
|
46463
46484
|
},
|
|
46464
46485
|
get children() {
|
|
46465
|
-
return
|
|
46486
|
+
return H2();
|
|
46466
46487
|
}
|
|
46467
46488
|
});
|
|
46468
46489
|
}
|
|
@@ -46471,9 +46492,9 @@ function h4() {
|
|
|
46471
46492
|
variant: "ghost",
|
|
46472
46493
|
title: "Delete this genome",
|
|
46473
46494
|
"aria-label": "Delete genome",
|
|
46474
|
-
onClick: () =>
|
|
46495
|
+
onClick: () => ne(e.id),
|
|
46475
46496
|
get children() {
|
|
46476
|
-
return
|
|
46497
|
+
return U2();
|
|
46477
46498
|
}
|
|
46478
46499
|
}), null), t;
|
|
46479
46500
|
}
|
|
@@ -46488,25 +46509,25 @@ function h4() {
|
|
|
46488
46509
|
}
|
|
46489
46510
|
}), null), t;
|
|
46490
46511
|
})(), (() => {
|
|
46491
|
-
var e =
|
|
46512
|
+
var e = W2();
|
|
46492
46513
|
return P(e, j(kj, {
|
|
46493
46514
|
class: "size-7 px-0",
|
|
46494
46515
|
variant: "ghost",
|
|
46495
46516
|
get title() {
|
|
46496
|
-
return
|
|
46517
|
+
return re() ? "Copied!" : "Copy all genomes as one markdown document";
|
|
46497
46518
|
},
|
|
46498
46519
|
"aria-label": "Copy all genomes",
|
|
46499
|
-
onClick: () => void
|
|
46520
|
+
onClick: () => void oe(),
|
|
46500
46521
|
get children() {
|
|
46501
46522
|
return j(M, {
|
|
46502
46523
|
get when() {
|
|
46503
|
-
return
|
|
46524
|
+
return re();
|
|
46504
46525
|
},
|
|
46505
46526
|
get fallback() {
|
|
46506
|
-
return
|
|
46527
|
+
return l4();
|
|
46507
46528
|
},
|
|
46508
46529
|
get children() {
|
|
46509
|
-
return
|
|
46530
|
+
return H2();
|
|
46510
46531
|
}
|
|
46511
46532
|
});
|
|
46512
46533
|
}
|
|
@@ -46515,39 +46536,62 @@ function h4() {
|
|
|
46515
46536
|
variant: "ghost",
|
|
46516
46537
|
title: "Delete all saved genomes",
|
|
46517
46538
|
"aria-label": "Delete all genomes",
|
|
46518
|
-
onClick:
|
|
46539
|
+
onClick: se,
|
|
46519
46540
|
get children() {
|
|
46520
|
-
return
|
|
46541
|
+
return U2();
|
|
46521
46542
|
}
|
|
46522
46543
|
}), null), e;
|
|
46523
46544
|
})()];
|
|
46524
46545
|
}
|
|
46525
46546
|
}), o), P(s, j(kj, {
|
|
46547
|
+
class: "size-7 px-0",
|
|
46526
46548
|
variant: "ghost",
|
|
46527
|
-
|
|
46549
|
+
get title() {
|
|
46550
|
+
return g() ? "Live capture ON — recording transitions fired by your input. Click to pause." : "Live capture PAUSED — click to resume recording input-triggered transitions.";
|
|
46551
|
+
},
|
|
46552
|
+
get "aria-label"() {
|
|
46553
|
+
return g() ? "Pause live capture" : "Start live capture";
|
|
46554
|
+
},
|
|
46555
|
+
onClick: () => M2(!g()),
|
|
46556
|
+
get children() {
|
|
46557
|
+
return j(M, {
|
|
46558
|
+
get when() {
|
|
46559
|
+
return g();
|
|
46560
|
+
},
|
|
46561
|
+
get fallback() {
|
|
46562
|
+
return u4();
|
|
46563
|
+
},
|
|
46564
|
+
get children() {
|
|
46565
|
+
return G2();
|
|
46566
|
+
}
|
|
46567
|
+
});
|
|
46568
|
+
}
|
|
46569
|
+
}), null), P(s, j(kj, {
|
|
46570
|
+
variant: "ghost",
|
|
46571
|
+
class: "h-7 px-2.5 text-[11.5px]",
|
|
46528
46572
|
get loading() {
|
|
46529
|
-
return
|
|
46573
|
+
return v();
|
|
46530
46574
|
},
|
|
46531
|
-
onClick: () => void
|
|
46575
|
+
onClick: () => void S(),
|
|
46532
46576
|
get children() {
|
|
46533
|
-
return
|
|
46577
|
+
return K2();
|
|
46534
46578
|
}
|
|
46535
46579
|
}), null), P(o, j(M, {
|
|
46536
46580
|
get when() {
|
|
46537
46581
|
return m().length > 0;
|
|
46538
46582
|
},
|
|
46539
46583
|
get fallback() {
|
|
46540
|
-
return
|
|
46584
|
+
return d4();
|
|
46541
46585
|
},
|
|
46542
46586
|
get children() {
|
|
46543
46587
|
return [(() => {
|
|
46544
|
-
var e =
|
|
46588
|
+
var e = q2();
|
|
46545
46589
|
return P(e, j(We, {
|
|
46546
46590
|
get each() {
|
|
46547
46591
|
return m();
|
|
46548
46592
|
},
|
|
46549
46593
|
children: (e) => (() => {
|
|
46550
|
-
var t =
|
|
46594
|
+
var t = h4(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = a.firstChild, s = n.nextSibling, c = s.nextSibling;
|
|
46551
46595
|
return P(r, () => e.mode === "live" ? "live" : "audit"), P(i, () => e.component ?? e.element, null), P(i, j(M, {
|
|
46552
46596
|
get when() {
|
|
46553
46597
|
return e.count > 1;
|
|
@@ -46563,7 +46607,7 @@ function h4() {
|
|
|
46563
46607
|
return e.source;
|
|
46564
46608
|
},
|
|
46565
46609
|
get children() {
|
|
46566
|
-
var t =
|
|
46610
|
+
var t = f4();
|
|
46567
46611
|
return P(t, () => e.source), t;
|
|
46568
46612
|
}
|
|
46569
46613
|
}), s), P(s, () => e.properties.join(", "), null), P(s, j(M, {
|
|
@@ -46582,7 +46626,7 @@ function h4() {
|
|
|
46582
46626
|
return e.jankProps?.length;
|
|
46583
46627
|
},
|
|
46584
46628
|
get children() {
|
|
46585
|
-
var t =
|
|
46629
|
+
var t = p4();
|
|
46586
46630
|
return t.firstChild, P(t, () => e.jankProps.join(", "), null), t;
|
|
46587
46631
|
}
|
|
46588
46632
|
}), c), P(t, j(M, {
|
|
@@ -46590,32 +46634,32 @@ function h4() {
|
|
|
46590
46634
|
return e.easing;
|
|
46591
46635
|
},
|
|
46592
46636
|
get children() {
|
|
46593
|
-
var t =
|
|
46637
|
+
var t = m4();
|
|
46594
46638
|
return t.firstChild, P(t, () => e.easing, null), t;
|
|
46595
46639
|
}
|
|
46596
46640
|
}), c), P(c, () => e.suggestion), t;
|
|
46597
46641
|
})()
|
|
46598
46642
|
})), e;
|
|
46599
46643
|
})(), (() => {
|
|
46600
|
-
var e =
|
|
46644
|
+
var e = Y2();
|
|
46601
46645
|
return P(e, j(kj, {
|
|
46602
46646
|
class: "size-7 px-0",
|
|
46603
46647
|
variant: "primary",
|
|
46604
46648
|
get title() {
|
|
46605
|
-
return
|
|
46649
|
+
return w() ? "Copied!" : "Copy AI prompt — report + fix rules, ready to paste into a Claude Code session";
|
|
46606
46650
|
},
|
|
46607
46651
|
"aria-label": "Copy AI fix prompt",
|
|
46608
|
-
onClick: () => void
|
|
46652
|
+
onClick: () => void O(),
|
|
46609
46653
|
get children() {
|
|
46610
46654
|
return j(M, {
|
|
46611
46655
|
get when() {
|
|
46612
|
-
return
|
|
46656
|
+
return w();
|
|
46613
46657
|
},
|
|
46614
46658
|
get fallback() {
|
|
46615
|
-
return
|
|
46659
|
+
return g4();
|
|
46616
46660
|
},
|
|
46617
46661
|
get children() {
|
|
46618
|
-
return
|
|
46662
|
+
return J2();
|
|
46619
46663
|
}
|
|
46620
46664
|
});
|
|
46621
46665
|
}
|
|
@@ -46623,20 +46667,20 @@ function h4() {
|
|
|
46623
46667
|
class: "size-7 px-0",
|
|
46624
46668
|
variant: "ghost",
|
|
46625
46669
|
get title() {
|
|
46626
|
-
return
|
|
46670
|
+
return b() ? "Copied!" : "Copy report — plain markdown findings";
|
|
46627
46671
|
},
|
|
46628
46672
|
"aria-label": "Copy report",
|
|
46629
|
-
onClick: () => void
|
|
46673
|
+
onClick: () => void C(),
|
|
46630
46674
|
get children() {
|
|
46631
46675
|
return j(M, {
|
|
46632
46676
|
get when() {
|
|
46633
|
-
return
|
|
46677
|
+
return b();
|
|
46634
46678
|
},
|
|
46635
46679
|
get fallback() {
|
|
46636
|
-
return
|
|
46680
|
+
return l4();
|
|
46637
46681
|
},
|
|
46638
46682
|
get children() {
|
|
46639
|
-
return
|
|
46683
|
+
return H2();
|
|
46640
46684
|
}
|
|
46641
46685
|
});
|
|
46642
46686
|
}
|
|
@@ -46647,7 +46691,7 @@ function h4() {
|
|
|
46647
46691
|
"aria-label": "Clear all findings",
|
|
46648
46692
|
onClick: O2,
|
|
46649
46693
|
get children() {
|
|
46650
|
-
return
|
|
46694
|
+
return U2();
|
|
46651
46695
|
}
|
|
46652
46696
|
}), null), e;
|
|
46653
46697
|
})()];
|
|
@@ -46658,7 +46702,7 @@ function h4() {
|
|
|
46658
46702
|
rt(["click"]);
|
|
46659
46703
|
//#endregion
|
|
46660
46704
|
//#region src/lib/projectConfig.ts
|
|
46661
|
-
var
|
|
46705
|
+
var C4 = [
|
|
46662
46706
|
"defaultTeamId",
|
|
46663
46707
|
"defaultProjectId",
|
|
46664
46708
|
"defaultLabelIds",
|
|
@@ -46673,29 +46717,29 @@ var g4 = [
|
|
|
46673
46717
|
"issueTemplate",
|
|
46674
46718
|
"testUsername"
|
|
46675
46719
|
];
|
|
46676
|
-
function
|
|
46720
|
+
function w4(e) {
|
|
46677
46721
|
let t = {};
|
|
46678
|
-
for (let n of
|
|
46722
|
+
for (let n of C4) {
|
|
46679
46723
|
let r = e[n];
|
|
46680
46724
|
r !== void 0 && r !== "" && !(Array.isArray(r) && r.length === 0) && (t[n] = r);
|
|
46681
46725
|
}
|
|
46682
46726
|
return t;
|
|
46683
46727
|
}
|
|
46684
|
-
function
|
|
46728
|
+
function T4(e, t) {
|
|
46685
46729
|
let n = {};
|
|
46686
|
-
for (let r of
|
|
46730
|
+
for (let r of C4) e[r] === void 0 && t[r] !== void 0 && (n[r] = t[r]);
|
|
46687
46731
|
return Object.keys(n).length ? n : null;
|
|
46688
46732
|
}
|
|
46689
46733
|
//#endregion
|
|
46690
46734
|
//#region src/lib/linear/auth.ts
|
|
46691
46735
|
Br();
|
|
46692
|
-
function
|
|
46736
|
+
function E4(e) {
|
|
46693
46737
|
let t = "";
|
|
46694
46738
|
for (let n of e) t += String.fromCharCode(n);
|
|
46695
46739
|
return btoa(t).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
46696
46740
|
}
|
|
46697
|
-
async function
|
|
46698
|
-
let t =
|
|
46741
|
+
async function D4(e) {
|
|
46742
|
+
let t = E4(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = E4(new Uint8Array(n)), i = E4(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
|
|
46699
46743
|
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");
|
|
46700
46744
|
let s = await chrome.identity.launchWebAuthFlow({
|
|
46701
46745
|
url: o.toString(),
|
|
@@ -46723,15 +46767,15 @@ async function b4(e) {
|
|
|
46723
46767
|
linearOauthClientId: e
|
|
46724
46768
|
});
|
|
46725
46769
|
}
|
|
46726
|
-
async function
|
|
46770
|
+
async function O4() {
|
|
46727
46771
|
await Er({
|
|
46728
46772
|
linearAccessToken: void 0,
|
|
46729
46773
|
linearApiKey: void 0
|
|
46730
46774
|
});
|
|
46731
46775
|
}
|
|
46732
46776
|
Br(), Sr(), Fx(), gD();
|
|
46733
|
-
var
|
|
46734
|
-
function
|
|
46777
|
+
var k4 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), A4 = /*#__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."), j4 = /*#__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"), M4 = /*#__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)."), N4 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), P4 = /*#__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]\">"), F4 = /*#__PURE__*/ N("<option value>Select a team…"), I4 = /*#__PURE__*/ N("<option value>No project"), L4 = /*#__PURE__*/ N("<div class=\"flex flex-wrap gap-1\">"), R4 = /*#__PURE__*/ N("<label class=\"flex items-start gap-2\"><input type=checkbox class=\"accent-accent mt-0.5\"><span class=\"flex flex-col gap-0.5\"><span class=text-[12px]>Let agents close out Linear themselves</span><span class=\"text-text-faint text-[10.5px] leading-snug\">Embeds your Linear API key + raw GraphQL closeout recipes in every issue's Agent instructions — cloud agent VMs have no authenticated Linear MCP, so without this they can't comment, attach media, or move the issue. The key is visible to anyone who can read the issue."), z4 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), B4 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), V4 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), H4 = /*#__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."), U4 = /*#__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."), W4 = /*#__PURE__*/ N("<p class=\"text-text-faint text-[10.5px] leading-snug\">A committed <code>.lineargrab.json</code> at the repo root (where the bridge runs) shares team/project/labels, skills, staging branch, and workflow defaults with every machine and teammate — it seeds any setting you haven't set locally. Secrets never belong in it."), G4 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[10ch] text-center\">"), K4 = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\">"), q4 = /*#__PURE__*/ N("<option value>Select a channel…"), J4 = /*#__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"), Y4 = /*#__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."), X4 = /*#__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"), Z4 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), Q4 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), $4 = /*#__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."), e3 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), t3 = /*#__PURE__*/ N("<button>"), n3 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), r3 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), i3 = /*#__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\">"), a3 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), o3 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), s3 = /*#__PURE__*/ N("<option> (<!>)"), c3 = /*#__PURE__*/ N("<option>"), l3 = /*#__PURE__*/ N("<button type=button><span class=\"mr-1 inline-block size-2 rounded-full align-middle\">"), u3 = /*#__PURE__*/ N("<option value>Select the agent…"), d3 = /*#__PURE__*/ N("<option>#"), f3 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
|
|
46778
|
+
function p3() {
|
|
46735
46779
|
let e = sr(), t = _r(() => ({
|
|
46736
46780
|
queryKey: ["settings"],
|
|
46737
46781
|
queryFn: Tr,
|
|
@@ -46759,13 +46803,13 @@ function o3() {
|
|
|
46759
46803
|
retry: 0
|
|
46760
46804
|
})), [l, u] = T(!1), d = async () => {
|
|
46761
46805
|
try {
|
|
46762
|
-
await navigator.clipboard.writeText(JSON.stringify(
|
|
46806
|
+
await navigator.clipboard.writeText(JSON.stringify(w4(n()), null, 2) + "\n"), u(!0), setTimeout(() => u(!1), 1800);
|
|
46763
46807
|
} catch {}
|
|
46764
46808
|
}, f = () => {
|
|
46765
46809
|
let e = c.data?.projectConfig;
|
|
46766
46810
|
if (!e) return;
|
|
46767
46811
|
let t = {};
|
|
46768
|
-
for (let n of
|
|
46812
|
+
for (let n of C4) e[n] !== void 0 && (t[n] = e[n]);
|
|
46769
46813
|
r(t);
|
|
46770
46814
|
}, p = _r(() => ({
|
|
46771
46815
|
queryKey: ["linear-labels"],
|
|
@@ -46798,7 +46842,7 @@ function o3() {
|
|
|
46798
46842
|
}
|
|
46799
46843
|
E(!0), ee("");
|
|
46800
46844
|
try {
|
|
46801
|
-
await
|
|
46845
|
+
await D4(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"] });
|
|
46802
46846
|
} catch (e) {
|
|
46803
46847
|
ee(e instanceof Error ? e.message : "OAuth flow failed.");
|
|
46804
46848
|
} finally {
|
|
@@ -46809,7 +46853,7 @@ function o3() {
|
|
|
46809
46853
|
async function re() {
|
|
46810
46854
|
ne(!0);
|
|
46811
46855
|
try {
|
|
46812
|
-
await
|
|
46856
|
+
await O4(), 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"] });
|
|
46813
46857
|
} finally {
|
|
46814
46858
|
ne(!1);
|
|
46815
46859
|
}
|
|
@@ -46825,12 +46869,12 @@ function o3() {
|
|
|
46825
46869
|
return e ? `Drafting with ${e} — ${Nx[e].fast} (fast) / ${Nx[e].best} (best)` : null;
|
|
46826
46870
|
});
|
|
46827
46871
|
return (() => {
|
|
46828
|
-
var e =
|
|
46872
|
+
var e = e3();
|
|
46829
46873
|
return P(e, j(Rj, {
|
|
46830
46874
|
title: "Workflow",
|
|
46831
46875
|
get children() {
|
|
46832
46876
|
return [(() => {
|
|
46833
|
-
var e =
|
|
46877
|
+
var e = k4();
|
|
46834
46878
|
return P(e, j(We, {
|
|
46835
46879
|
each: [{
|
|
46836
46880
|
id: "cloud",
|
|
@@ -46840,19 +46884,19 @@ function o3() {
|
|
|
46840
46884
|
label: "Local · clipboard"
|
|
46841
46885
|
}],
|
|
46842
46886
|
children: (e) => (() => {
|
|
46843
|
-
var t =
|
|
46887
|
+
var t = t3();
|
|
46844
46888
|
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;
|
|
46845
46889
|
})()
|
|
46846
46890
|
})), e;
|
|
46847
|
-
})(),
|
|
46891
|
+
})(), A4()];
|
|
46848
46892
|
}
|
|
46849
46893
|
}), null), P(e, j(Rj, {
|
|
46850
46894
|
title: "Capture",
|
|
46851
46895
|
get children() {
|
|
46852
46896
|
return [(() => {
|
|
46853
|
-
var e =
|
|
46897
|
+
var e = j4(), t = e.firstChild;
|
|
46854
46898
|
return t.addEventListener("change", (e) => void r({ captureShots: e.currentTarget.checked || void 0 })), D(() => t.checked = !!n().captureShots), e;
|
|
46855
|
-
})(),
|
|
46899
|
+
})(), M4()];
|
|
46856
46900
|
}
|
|
46857
46901
|
}), null), P(e, j(Rj, {
|
|
46858
46902
|
title: "Linear",
|
|
@@ -46863,13 +46907,13 @@ function o3() {
|
|
|
46863
46907
|
},
|
|
46864
46908
|
get fallback() {
|
|
46865
46909
|
return (() => {
|
|
46866
|
-
var e =
|
|
46910
|
+
var e = a3();
|
|
46867
46911
|
return P(e, j(Lj, {
|
|
46868
46912
|
label: "Personal API key",
|
|
46869
46913
|
hint: "Create one at linear.app → Settings → API — fastest path.",
|
|
46870
46914
|
get children() {
|
|
46871
46915
|
return [(() => {
|
|
46872
|
-
var e =
|
|
46916
|
+
var e = n3();
|
|
46873
46917
|
return P(e, j(jj, {
|
|
46874
46918
|
type: "password",
|
|
46875
46919
|
placeholder: "lin_api_…",
|
|
@@ -46906,12 +46950,12 @@ function o3() {
|
|
|
46906
46950
|
}), null), P(e, j(M, {
|
|
46907
46951
|
when: xr,
|
|
46908
46952
|
get children() {
|
|
46909
|
-
return [
|
|
46953
|
+
return [r3(), j(Lj, {
|
|
46910
46954
|
label: "OAuth client ID",
|
|
46911
46955
|
get children() {
|
|
46912
46956
|
return [
|
|
46913
46957
|
(() => {
|
|
46914
|
-
var e =
|
|
46958
|
+
var e = n3();
|
|
46915
46959
|
return P(e, j(jj, {
|
|
46916
46960
|
placeholder: "your-client-id",
|
|
46917
46961
|
get value() {
|
|
@@ -46939,7 +46983,7 @@ function o3() {
|
|
|
46939
46983
|
}
|
|
46940
46984
|
}),
|
|
46941
46985
|
(() => {
|
|
46942
|
-
var e =
|
|
46986
|
+
var e = i3(), t = e.firstChild.nextSibling.nextSibling;
|
|
46943
46987
|
return P(t, ie), e;
|
|
46944
46988
|
})()
|
|
46945
46989
|
];
|
|
@@ -46950,13 +46994,13 @@ function o3() {
|
|
|
46950
46994
|
})();
|
|
46951
46995
|
},
|
|
46952
46996
|
get children() {
|
|
46953
|
-
var e =
|
|
46997
|
+
var e = P4(), t = e.firstChild;
|
|
46954
46998
|
return P(t, j(M, {
|
|
46955
46999
|
get when() {
|
|
46956
47000
|
return !a.isLoading;
|
|
46957
47001
|
},
|
|
46958
47002
|
get fallback() {
|
|
46959
|
-
return
|
|
47003
|
+
return o3();
|
|
46960
47004
|
},
|
|
46961
47005
|
get children() {
|
|
46962
47006
|
return j(M, {
|
|
@@ -46969,7 +47013,7 @@ function o3() {
|
|
|
46969
47013
|
return a.isError;
|
|
46970
47014
|
},
|
|
46971
47015
|
get fallback() {
|
|
46972
|
-
return
|
|
47016
|
+
return o3();
|
|
46973
47017
|
},
|
|
46974
47018
|
get children() {
|
|
46975
47019
|
return j(Hj, { message: "Key rejected — reconnect" });
|
|
@@ -46977,7 +47021,7 @@ function o3() {
|
|
|
46977
47021
|
});
|
|
46978
47022
|
},
|
|
46979
47023
|
get children() {
|
|
46980
|
-
var e =
|
|
47024
|
+
var e = N4(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
|
|
46981
47025
|
return P(t, () => a.data.name), P(n, () => a.data.email), e;
|
|
46982
47026
|
}
|
|
46983
47027
|
});
|
|
@@ -47018,7 +47062,7 @@ function o3() {
|
|
|
47018
47062
|
return o.isLoading;
|
|
47019
47063
|
},
|
|
47020
47064
|
get children() {
|
|
47021
|
-
return [
|
|
47065
|
+
return [F4(), j(M, {
|
|
47022
47066
|
get when() {
|
|
47023
47067
|
return o.data;
|
|
47024
47068
|
},
|
|
@@ -47028,7 +47072,7 @@ function o3() {
|
|
|
47028
47072
|
return o.data;
|
|
47029
47073
|
},
|
|
47030
47074
|
children: (e) => (() => {
|
|
47031
|
-
var t =
|
|
47075
|
+
var t = s3(), r = t.firstChild, i = r.nextSibling;
|
|
47032
47076
|
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;
|
|
47033
47077
|
})()
|
|
47034
47078
|
});
|
|
@@ -47052,14 +47096,14 @@ function o3() {
|
|
|
47052
47096
|
},
|
|
47053
47097
|
get children() {
|
|
47054
47098
|
return [(() => {
|
|
47055
|
-
var e =
|
|
47099
|
+
var e = I4();
|
|
47056
47100
|
return D(() => e.selected = !n().defaultProjectId), e;
|
|
47057
47101
|
})(), j(We, {
|
|
47058
47102
|
get each() {
|
|
47059
47103
|
return s.data ?? [];
|
|
47060
47104
|
},
|
|
47061
47105
|
children: (e) => (() => {
|
|
47062
|
-
var t =
|
|
47106
|
+
var t = c3();
|
|
47063
47107
|
return P(t, () => e.name), D(() => t.selected = e.id === n().defaultProjectId), D(() => t.value = e.id), t;
|
|
47064
47108
|
})()
|
|
47065
47109
|
})];
|
|
@@ -47071,7 +47115,7 @@ function o3() {
|
|
|
47071
47115
|
label: "Default labels",
|
|
47072
47116
|
hint: "Applied to every issue created from the panel.",
|
|
47073
47117
|
get children() {
|
|
47074
|
-
var e =
|
|
47118
|
+
var e = L4();
|
|
47075
47119
|
return P(e, j(We, {
|
|
47076
47120
|
get each() {
|
|
47077
47121
|
return p.data ?? [];
|
|
@@ -47079,7 +47123,7 @@ function o3() {
|
|
|
47079
47123
|
children: (e) => {
|
|
47080
47124
|
let t = () => (n().defaultLabelIds ?? []).includes(e.id);
|
|
47081
47125
|
return (() => {
|
|
47082
|
-
var i =
|
|
47126
|
+
var i = l3(), a = i.firstChild;
|
|
47083
47127
|
return i.$$click = () => {
|
|
47084
47128
|
let i = n().defaultLabelIds ?? [];
|
|
47085
47129
|
r({ defaultLabelIds: t() ? i.filter((t) => t !== e.id) : [...i, e.id] });
|
|
@@ -47096,7 +47140,7 @@ function o3() {
|
|
|
47096
47140
|
}
|
|
47097
47141
|
}),
|
|
47098
47142
|
(() => {
|
|
47099
|
-
var e =
|
|
47143
|
+
var e = R4(), t = e.firstChild;
|
|
47100
47144
|
return t.addEventListener("change", (e) => void r({ shareLinearKey: e.currentTarget.checked })), D(() => t.checked = !!n().shareLinearKey), e;
|
|
47101
47145
|
})(),
|
|
47102
47146
|
j(Lj, {
|
|
@@ -47146,7 +47190,7 @@ function o3() {
|
|
|
47146
47190
|
return m.isLoading;
|
|
47147
47191
|
},
|
|
47148
47192
|
get children() {
|
|
47149
|
-
return [
|
|
47193
|
+
return [u3(), j(M, {
|
|
47150
47194
|
get when() {
|
|
47151
47195
|
return m.data;
|
|
47152
47196
|
},
|
|
@@ -47156,7 +47200,7 @@ function o3() {
|
|
|
47156
47200
|
return m.data;
|
|
47157
47201
|
},
|
|
47158
47202
|
children: (e) => (() => {
|
|
47159
|
-
var t =
|
|
47203
|
+
var t = c3();
|
|
47160
47204
|
return P(t, () => e.displayName), D(() => t.selected = e.id === n().cursorAgentId), D(() => t.value = e.id), t;
|
|
47161
47205
|
})()
|
|
47162
47206
|
});
|
|
@@ -47166,7 +47210,7 @@ function o3() {
|
|
|
47166
47210
|
});
|
|
47167
47211
|
},
|
|
47168
47212
|
get children() {
|
|
47169
|
-
return
|
|
47213
|
+
return z4();
|
|
47170
47214
|
}
|
|
47171
47215
|
});
|
|
47172
47216
|
}
|
|
@@ -47214,7 +47258,7 @@ function o3() {
|
|
|
47214
47258
|
onBlur: (e) => {
|
|
47215
47259
|
r({ issueTemplate: e.currentTarget.value.trim() || void 0 });
|
|
47216
47260
|
}
|
|
47217
|
-
}),
|
|
47261
|
+
}), B4()];
|
|
47218
47262
|
}
|
|
47219
47263
|
}),
|
|
47220
47264
|
j(Lj, {
|
|
@@ -47271,7 +47315,7 @@ function o3() {
|
|
|
47271
47315
|
label: "Test account",
|
|
47272
47316
|
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.",
|
|
47273
47317
|
get children() {
|
|
47274
|
-
var e =
|
|
47318
|
+
var e = V4();
|
|
47275
47319
|
return P(e, j(jj, {
|
|
47276
47320
|
placeholder: "Username or email (e.g. demo@yourapp.com)",
|
|
47277
47321
|
get value() {
|
|
@@ -47303,7 +47347,7 @@ function o3() {
|
|
|
47303
47347
|
title: "Panel",
|
|
47304
47348
|
get children() {
|
|
47305
47349
|
return [(() => {
|
|
47306
|
-
var e =
|
|
47350
|
+
var e = H4(), t = e.firstChild.nextSibling;
|
|
47307
47351
|
return P(t, j(We, {
|
|
47308
47352
|
each: [{
|
|
47309
47353
|
id: "overlay",
|
|
@@ -47313,7 +47357,7 @@ function o3() {
|
|
|
47313
47357
|
label: "Beside page"
|
|
47314
47358
|
}],
|
|
47315
47359
|
children: (e) => (() => {
|
|
47316
|
-
var t =
|
|
47360
|
+
var t = t3();
|
|
47317
47361
|
return t.$$click = () => void r({
|
|
47318
47362
|
panelMode: e.id,
|
|
47319
47363
|
panelPos: void 0
|
|
@@ -47321,11 +47365,11 @@ function o3() {
|
|
|
47321
47365
|
})()
|
|
47322
47366
|
})), e;
|
|
47323
47367
|
})(), (() => {
|
|
47324
|
-
var e =
|
|
47368
|
+
var e = U4(), t = e.firstChild.nextSibling;
|
|
47325
47369
|
return P(t, j(We, {
|
|
47326
47370
|
each: ["left", "right"],
|
|
47327
47371
|
children: (e) => (() => {
|
|
47328
|
-
var t =
|
|
47372
|
+
var t = t3();
|
|
47329
47373
|
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;
|
|
47330
47374
|
})()
|
|
47331
47375
|
})), e;
|
|
@@ -47355,8 +47399,8 @@ function o3() {
|
|
|
47355
47399
|
}), null), P(e, j(Rj, {
|
|
47356
47400
|
title: "Project config (.lineargrab.json)",
|
|
47357
47401
|
get children() {
|
|
47358
|
-
return [
|
|
47359
|
-
var e =
|
|
47402
|
+
return [W4(), (() => {
|
|
47403
|
+
var e = K4();
|
|
47360
47404
|
return P(e, j(M, {
|
|
47361
47405
|
get when() {
|
|
47362
47406
|
return c.data?.projectConfig;
|
|
@@ -47387,7 +47431,7 @@ function o3() {
|
|
|
47387
47431
|
},
|
|
47388
47432
|
onClick: () => void d(),
|
|
47389
47433
|
get children() {
|
|
47390
|
-
var e =
|
|
47434
|
+
var e = G4();
|
|
47391
47435
|
return P(e, () => l() ? "Copied ✓" : "Copy config"), e;
|
|
47392
47436
|
}
|
|
47393
47437
|
}), null), e;
|
|
@@ -47478,12 +47522,12 @@ function o3() {
|
|
|
47478
47522
|
});
|
|
47479
47523
|
},
|
|
47480
47524
|
get children() {
|
|
47481
|
-
return [
|
|
47525
|
+
return [q4(), j(We, {
|
|
47482
47526
|
get each() {
|
|
47483
47527
|
return ae.data ?? [];
|
|
47484
47528
|
},
|
|
47485
47529
|
children: (e) => (() => {
|
|
47486
|
-
var t =
|
|
47530
|
+
var t = d3();
|
|
47487
47531
|
return t.firstChild, P(t, () => e.name, null), D(() => t.selected = e.id === n().slackChannelId), D(() => t.value = e.id), t;
|
|
47488
47532
|
})()
|
|
47489
47533
|
})];
|
|
@@ -47534,10 +47578,10 @@ function o3() {
|
|
|
47534
47578
|
}
|
|
47535
47579
|
}),
|
|
47536
47580
|
(() => {
|
|
47537
|
-
var e =
|
|
47581
|
+
var e = J4(), t = e.firstChild;
|
|
47538
47582
|
return t.addEventListener("change", (e) => void r({ notifyOnCreate: e.currentTarget.checked ? void 0 : !1 })), D(() => t.checked = n().notifyOnCreate !== !1), e;
|
|
47539
47583
|
})(),
|
|
47540
|
-
|
|
47584
|
+
Y4()
|
|
47541
47585
|
];
|
|
47542
47586
|
}
|
|
47543
47587
|
}), null), P(e, j(Rj, {
|
|
@@ -47575,7 +47619,7 @@ function o3() {
|
|
|
47575
47619
|
}
|
|
47576
47620
|
}),
|
|
47577
47621
|
(() => {
|
|
47578
|
-
var e =
|
|
47622
|
+
var e = X4(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
|
|
47579
47623
|
return t.$$click = () => void r({ preferredProvider: void 0 }), i.$$click = () => void r({ preferredProvider: "openai" }), a.$$click = () => void r({ preferredProvider: "anthropic" }), D((e) => {
|
|
47580
47624
|
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;
|
|
47581
47625
|
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;
|
|
@@ -47588,16 +47632,16 @@ function o3() {
|
|
|
47588
47632
|
}), e;
|
|
47589
47633
|
})(),
|
|
47590
47634
|
(() => {
|
|
47591
|
-
var e =
|
|
47635
|
+
var e = Q4();
|
|
47592
47636
|
return P(e, j(M, {
|
|
47593
47637
|
get when() {
|
|
47594
47638
|
return se();
|
|
47595
47639
|
},
|
|
47596
47640
|
get fallback() {
|
|
47597
|
-
return
|
|
47641
|
+
return f3();
|
|
47598
47642
|
},
|
|
47599
47643
|
get children() {
|
|
47600
|
-
var e =
|
|
47644
|
+
var e = Z4();
|
|
47601
47645
|
return P(e, se), e;
|
|
47602
47646
|
}
|
|
47603
47647
|
})), e;
|
|
@@ -47607,7 +47651,7 @@ function o3() {
|
|
|
47607
47651
|
}), null), P(e, j(Rj, {
|
|
47608
47652
|
title: "How it works",
|
|
47609
47653
|
get children() {
|
|
47610
|
-
return
|
|
47654
|
+
return $4();
|
|
47611
47655
|
}
|
|
47612
47656
|
}), null), e;
|
|
47613
47657
|
})();
|
|
@@ -47615,38 +47659,38 @@ function o3() {
|
|
|
47615
47659
|
rt(["click"]);
|
|
47616
47660
|
//#endregion
|
|
47617
47661
|
//#region src/lib/idbCache.ts
|
|
47618
|
-
var
|
|
47662
|
+
var m3 = "linear-grab", h3 = "queries", g3 = [
|
|
47619
47663
|
"my-issues",
|
|
47620
47664
|
"issue",
|
|
47621
47665
|
"sessions",
|
|
47622
47666
|
"teams",
|
|
47623
47667
|
"agents"
|
|
47624
47668
|
];
|
|
47625
|
-
function
|
|
47669
|
+
function _3() {
|
|
47626
47670
|
return new Promise((e) => {
|
|
47627
47671
|
try {
|
|
47628
|
-
let t = indexedDB.open(
|
|
47629
|
-
t.onupgradeneeded = () => t.result.createObjectStore(
|
|
47672
|
+
let t = indexedDB.open(m3, 1);
|
|
47673
|
+
t.onupgradeneeded = () => t.result.createObjectStore(h3), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
|
|
47630
47674
|
} catch {
|
|
47631
47675
|
e(null);
|
|
47632
47676
|
}
|
|
47633
47677
|
});
|
|
47634
47678
|
}
|
|
47635
|
-
function
|
|
47636
|
-
return typeof e[0] == "string" &&
|
|
47679
|
+
function v3(e) {
|
|
47680
|
+
return typeof e[0] == "string" && g3.includes(e[0]);
|
|
47637
47681
|
}
|
|
47638
|
-
async function
|
|
47639
|
-
let t = await
|
|
47682
|
+
async function y3(e) {
|
|
47683
|
+
let t = await _3();
|
|
47640
47684
|
if (!t) return () => {};
|
|
47641
47685
|
await new Promise((n) => {
|
|
47642
47686
|
try {
|
|
47643
|
-
let r = t.transaction(
|
|
47687
|
+
let r = t.transaction(h3, "readonly").objectStore(h3).openCursor();
|
|
47644
47688
|
r.onsuccess = () => {
|
|
47645
47689
|
let t = r.result;
|
|
47646
47690
|
if (!t) return n();
|
|
47647
47691
|
try {
|
|
47648
47692
|
let { queryKey: n, data: r } = t.value;
|
|
47649
|
-
|
|
47693
|
+
v3(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
|
|
47650
47694
|
} catch {}
|
|
47651
47695
|
t.continue();
|
|
47652
47696
|
}, r.onerror = () => n();
|
|
@@ -47657,14 +47701,14 @@ async function f3(e) {
|
|
|
47657
47701
|
let n = /* @__PURE__ */ new Map(), r = e.getQueryCache().subscribe((r) => {
|
|
47658
47702
|
if (r.type !== "updated" || r.action.type !== "success") return;
|
|
47659
47703
|
let { queryKey: i, queryHash: a } = r.query;
|
|
47660
|
-
if (!
|
|
47704
|
+
if (!v3(i)) return;
|
|
47661
47705
|
let o = n.get(a);
|
|
47662
47706
|
o && clearTimeout(o), n.set(a, setTimeout(() => {
|
|
47663
47707
|
n.delete(a);
|
|
47664
47708
|
try {
|
|
47665
47709
|
let n = e.getQueryData(i);
|
|
47666
47710
|
if (n === void 0) return;
|
|
47667
|
-
t.transaction(
|
|
47711
|
+
t.transaction(h3, "readwrite").objectStore(h3).put({
|
|
47668
47712
|
queryKey: i,
|
|
47669
47713
|
data: n
|
|
47670
47714
|
}, a);
|
|
@@ -47680,7 +47724,7 @@ async function f3(e) {
|
|
|
47680
47724
|
//#endregion
|
|
47681
47725
|
//#region src/panel/App.tsx
|
|
47682
47726
|
Br();
|
|
47683
|
-
var
|
|
47727
|
+
var b3 = /*#__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\">"), x3 = /*#__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\">"), S3 = /*#__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\">–"), C3 = /*#__PURE__*/ N("<div class=\"bg-bg text-text flex h-full flex-col\"><header><span class=\"text-accent mr-0.5 inline-flex shrink-0\"title=\"Linear Grab\"></span><div class=\"no-scrollbar flex min-w-0 flex-1 items-center gap-1 overflow-x-auto\"></div></header><main class=\"min-h-0 flex-1\"><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full></div><div class=h-full>"), w3 = /*#__PURE__*/ N("<button>"), T3 = [
|
|
47684
47728
|
{
|
|
47685
47729
|
id: "draft",
|
|
47686
47730
|
label: "Draft"
|
|
@@ -47717,35 +47761,35 @@ var p3 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hid
|
|
|
47717
47761
|
id: "settings",
|
|
47718
47762
|
label: "Settings"
|
|
47719
47763
|
}
|
|
47720
|
-
],
|
|
47721
|
-
function
|
|
47722
|
-
if (
|
|
47723
|
-
|
|
47764
|
+
], E3 = /* @__PURE__ */ new Set();
|
|
47765
|
+
function D3(e, t, n) {
|
|
47766
|
+
if (E3.has(e) || typeof Notification > "u") return;
|
|
47767
|
+
E3.add(e);
|
|
47724
47768
|
let r = () => new Notification(t, { body: n });
|
|
47725
47769
|
Notification.permission === "granted" ? r() : Notification.permission === "default" && Notification.requestPermission().then((e) => e === "granted" && r());
|
|
47726
47770
|
}
|
|
47727
|
-
function
|
|
47771
|
+
function O3() {
|
|
47728
47772
|
setInterval(() => {
|
|
47729
47773
|
NO().then((e) => {
|
|
47730
47774
|
for (let t of e) {
|
|
47731
47775
|
if (t.status !== "running") continue;
|
|
47732
47776
|
let e = t.lastEventAt ?? t.startedAt;
|
|
47733
|
-
Date.now() - e > 10 * 6e4 &&
|
|
47777
|
+
Date.now() - e > 10 * 6e4 && D3(`local-stuck:${t.id}:${e}`, "Local agent may be stuck", `${t.title.slice(0, 80)} — no output for ${Math.round((Date.now() - e) / 6e4)}m. Nudge or interrupt it in the Local tab.`);
|
|
47734
47778
|
}
|
|
47735
47779
|
}).catch(() => {}), gO().then((e) => {
|
|
47736
|
-
for (let t of e) /awaitingInput|elicit/i.test(t.status) &&
|
|
47780
|
+
for (let t of e) /awaitingInput|elicit/i.test(t.status) && D3(`cloud-input:${t.id}`, "Cloud agent needs input", `${t.issue?.identifier ?? "Session"} — ${t.issue?.title?.slice(0, 80) ?? "a Cursor agent"} is waiting for you.`);
|
|
47737
47781
|
}).catch(() => {});
|
|
47738
47782
|
}, 6e4);
|
|
47739
47783
|
}
|
|
47740
|
-
|
|
47741
|
-
var
|
|
47784
|
+
O3();
|
|
47785
|
+
var k3 = new gr({ defaultOptions: { queries: {
|
|
47742
47786
|
retry: 1,
|
|
47743
47787
|
refetchOnWindowFocus: !1,
|
|
47744
47788
|
staleTime: 5e3
|
|
47745
47789
|
} } });
|
|
47746
|
-
function
|
|
47790
|
+
function A3(e) {
|
|
47747
47791
|
return (() => {
|
|
47748
|
-
var t =
|
|
47792
|
+
var t = b3();
|
|
47749
47793
|
return D((n) => {
|
|
47750
47794
|
var r = e.size ?? 14, i = e.size ?? 14;
|
|
47751
47795
|
return r !== n.e && it(t, "width", n.e = r), i !== n.t && it(t, "height", n.t = i), n;
|
|
@@ -47755,36 +47799,36 @@ function C3(e) {
|
|
|
47755
47799
|
}), t;
|
|
47756
47800
|
})();
|
|
47757
47801
|
}
|
|
47758
|
-
function
|
|
47802
|
+
function j3(e) {
|
|
47759
47803
|
let [t, n] = T("draft"), r = () => {
|
|
47760
|
-
|
|
47804
|
+
k3.invalidateQueries({ queryKey: ["grab"] }), cj() === "capture" && n("capture"), e.onGrab?.();
|
|
47761
47805
|
};
|
|
47762
47806
|
return O(() => {
|
|
47763
47807
|
let e = nj();
|
|
47764
47808
|
e && n(e);
|
|
47765
47809
|
}), ie(() => {
|
|
47766
|
-
let e =
|
|
47810
|
+
let e = y3(k3), t = XZ(r), n = () => {
|
|
47767
47811
|
JO().then(y$), VO(), MO().then(async (e) => {
|
|
47768
47812
|
if (!e.projectConfig) return;
|
|
47769
|
-
let t =
|
|
47813
|
+
let t = T4(await Tr(), e.projectConfig);
|
|
47770
47814
|
t && await Er(t);
|
|
47771
47815
|
}).catch(() => {});
|
|
47772
47816
|
};
|
|
47773
47817
|
n();
|
|
47774
47818
|
let i = Mr((e) => {
|
|
47775
|
-
e === "settings" && (
|
|
47819
|
+
e === "settings" && (k3.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
|
|
47776
47820
|
});
|
|
47777
47821
|
ae(() => {
|
|
47778
47822
|
t(), i(), e.then((e) => e());
|
|
47779
47823
|
});
|
|
47780
47824
|
}), j(cr, {
|
|
47781
|
-
client:
|
|
47825
|
+
client: k3,
|
|
47782
47826
|
get children() {
|
|
47783
|
-
var r =
|
|
47784
|
-
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(
|
|
47785
|
-
each:
|
|
47827
|
+
var r = C3(), i = r.firstChild, a = i.firstChild, o = a.nextSibling, s = i.nextSibling.firstChild, c = s.nextSibling, l = c.nextSibling, u = l.nextSibling, d = u.nextSibling, f = d.nextSibling, p = f.nextSibling, m = p.nextSibling, h = m.nextSibling;
|
|
47828
|
+
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(A3, { size: 14 })), P(o, j(We, {
|
|
47829
|
+
each: T3,
|
|
47786
47830
|
children: (e) => (() => {
|
|
47787
|
-
var r =
|
|
47831
|
+
var r = w3();
|
|
47788
47832
|
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;
|
|
47789
47833
|
})()
|
|
47790
47834
|
})), P(i, j(M, {
|
|
@@ -47792,7 +47836,7 @@ function w3(e) {
|
|
|
47792
47836
|
return e.onTogglePin;
|
|
47793
47837
|
},
|
|
47794
47838
|
get children() {
|
|
47795
|
-
var t =
|
|
47839
|
+
var t = x3();
|
|
47796
47840
|
return t.$$click = () => e.onTogglePin?.(), D((n) => {
|
|
47797
47841
|
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"}`;
|
|
47798
47842
|
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;
|
|
@@ -47807,10 +47851,10 @@ function w3(e) {
|
|
|
47807
47851
|
return e.onClose;
|
|
47808
47852
|
},
|
|
47809
47853
|
get children() {
|
|
47810
|
-
var t =
|
|
47854
|
+
var t = S3();
|
|
47811
47855
|
return t.$$click = () => e.onClose?.(), t;
|
|
47812
47856
|
}
|
|
47813
|
-
}), null), P(s, j(wM, { onCreated: () => n("activity") })), P(c, j(TQ, {})), P(l, j(_1, {})), P(u, j(B1, {})), P(d, j(P1, {})), P(f, j(T0, {})), P(p, j(B0, { onOpenIssue: () => n("activity") })), P(m, j(
|
|
47857
|
+
}), null), P(s, j(wM, { onCreated: () => n("activity") })), P(c, j(TQ, {})), P(l, j(_1, {})), P(u, j(B1, {})), P(d, j(P1, {})), P(f, j(T0, {})), P(p, j(B0, { onOpenIssue: () => n("activity") })), P(m, j(S4, {})), P(h, j(p3, {})), D((n) => {
|
|
47814
47858
|
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", g = t() !== "activity", _ = t() !== "running", v = t() !== "cloud", y = t() !== "local", b = t() !== "prs", x = t() !== "design", S = t() !== "settings";
|
|
47815
47859
|
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), g !== n.o && l.classList.toggle("hidden", n.o = g), _ !== n.i && u.classList.toggle("hidden", n.i = _), v !== n.n && d.classList.toggle("hidden", n.n = v), y !== n.s && f.classList.toggle("hidden", n.s = y), b !== n.h && p.classList.toggle("hidden", n.h = b), x !== n.r && m.classList.toggle("hidden", n.r = x), S !== n.d && h.classList.toggle("hidden", n.d = S), n;
|
|
47816
47860
|
}, {
|
|
@@ -47831,16 +47875,16 @@ function w3(e) {
|
|
|
47831
47875
|
rt(["pointerdown", "click"]);
|
|
47832
47876
|
//#endregion
|
|
47833
47877
|
//#region src/styles/app.css?inline
|
|
47834
|
-
var T3 = "/*! 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-in:cubic-bezier(.4, 0, 1, 1);--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-3{top:calc(var(--spacing) * 3)}.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-1{bottom:var(--spacing)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\\[2px\\]{bottom:2px}.bottom-full{bottom:100%}.-left-\\[13\\.5px\\]{left:-13.5px}.left-0{left:0}.left-1{left:var(--spacing)}.left-1\\/2{left:50%}.left-\\[5px\\]{left:5px}.left-full{left:100%}.z-1{z-index:1}.z-10{z-index:10}.z-\\[2147483645\\]{z-index:2147483645}.z-\\[2147483646\\]{z-index:2147483646}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\\!{width:100%!important}@media (width>=40rem){.container\\!{max-width:40rem!important}}@media (width>=48rem){.container\\!{max-width:48rem!important}}@media (width>=64rem){.container\\!{max-width:64rem!important}}@media (width>=80rem){.container\\!{max-width:80rem!important}}@media (width>=96rem){.container\\!{max-width:96rem!important}}.-m-0{margin:0}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.-m-4{margin:calc(var(--spacing) * -4)}.m-0{margin:0}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1{margin-block:calc(var(--spacing) * -1)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-px{margin-top:1px}.mr-0{margin-right:0}.mr-0\\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\\.5{margin-right:calc(var(--spacing) * 2.5)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-2\\.5{margin-left:calc(var(--spacing) * 2.5)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ml-px{margin-left:1px}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-0{width:0;height:0}.size-1{width:var(--spacing);height:var(--spacing)}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\\[9px\\]{width:9px;height:9px}.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-72{max-height:calc(var(--spacing) * 72)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\\[var\\(--rg-edit-list-max-h\\)\\]{max-height:var(--rg-edit-list-max-h)}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-\\[2lh\\]{min-height:2lh}.min-h-\\[28px\\]{min-height:28px}.w-1{width:var(--spacing)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-16{width:calc(var(--spacing) * 16)}.w-28{width:calc(var(--spacing) * 28)}.w-72{width:calc(var(--spacing) * 72)}.w-\\[2px\\]{width:2px}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\\[55\\%\\]{max-width:55%}.max-w-\\[100vw\\]{max-width:100vw}.max-w-\\[110px\\]{max-width:110px}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[3ch\\]{min-width:3ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[7ch\\]{min-width:7ch}.min-w-\\[8ch\\]{min-width:8ch}.min-w-\\[10ch\\]{min-width:10ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\\[5px\\]{gap:5px}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-accent{border-color:var(--color-accent)}.border-accent\\/40{border-color:#5e6ad266}@supports (color:color-mix(in lab, red, red)){.border-accent\\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-border{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-success\\/40{border-color:#4cb78266}@supports (color:color-mix(in lab, red, red)){.border-success\\/40{border-color:color-mix(in oklab, var(--color-success) 40%, transparent)}}.border-text-dim{border-color:var(--color-text-dim)}.border-transparent{border-color:#0000}.border-warn{border-color:var(--color-warn)}.border-warn\\/40{border-color:#f2c94c66}@supports (color:color-mix(in lab, red, red)){.border-warn\\/40{border-color:color-mix(in oklab, var(--color-warn) 40%, transparent)}}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.border-t-transparent{border-top-color:#0000}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-bg\\/80{background-color:#0b0c0ecc}@supports (color:color-mix(in lab, red, red)){.bg-bg\\/80{background-color:color-mix(in oklab, var(--color-bg) 80%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--color-danger)}.bg-danger-soft{background-color:var(--color-danger-soft)}.bg-red-500{background-color:var(--color-red-500)}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-text-faint{background-color:var(--color-text-faint)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--color-warn)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-px{padding-block:1px}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[15px\\]{font-size:15px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-faint{color:var(--color-text-faint)}.text-warn{color:var(--color-warn)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.group-open\\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-text-faint::placeholder{color:var(--color-text-faint)}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\\:bg-accent\\/50:hover{background-color:#5e6ad280}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-accent\\/50:hover{background-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\\:bg-danger\\/30:hover{background-color:#eb57574d}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-danger\\/30:hover{background-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.hover\\:bg-surface-2:hover{background-color:var(--color-surface-2)}.hover\\:bg-surface-3:hover{background-color:var(--color-surface-3)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}.hover\\:text-accent:hover{color:var(--color-accent)}.hover\\:text-danger:hover{color:var(--color-danger)}.hover\\:text-text:hover{color:var(--color-text)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-80:hover{opacity:.8}}.focus\\:border-accent:focus{border-color:var(--color-accent)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-accent:active{background-color:var(--color-accent)}.active\\:transition-none:active{transition-property:none}.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)}}.data-\\[state\\=on\\]\\:transition-none[data-state=on],.data-\\[state\\=open\\]\\:transition-none[data-state=open],.data-\\[state\\=…\\]\\:transition-none[data-state=…]{transition-property:none}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light],:host([data-theme=light]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}body{background-color:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;margin:0;font-size:13px}@keyframes geist-spinner-fade{0%{opacity:1}to{opacity:.15}}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;z-index:60;background:#1b1c20;border-radius:6px;max-width:260px;padding:3px 8px;font-size:10.5px;font-weight:500;line-height:1.35;position:absolute;bottom:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}[data-tip][data-tip-pos~=right]:hover:after{left:0;transform:none}[data-tip][data-tip-pos~=left]:hover:after{left:auto;right:0;transform:none}[data-tip][data-tip-pos~=bottom]:hover:after{top:calc(100% + 6px);bottom:auto}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.lg-md p{margin:0 0 6px}.lg-md p:last-child{margin-bottom:0}.lg-md a{color:var(--color-accent);word-break:break-all;text-decoration:none}.lg-md a:hover{text-decoration:underline}.lg-md code{background:var(--color-surface-2);border:1px solid var(--color-border);font-family:var(--font-mono);border-radius:4px;padding:0 4px;font-size:11px}.lg-md pre{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;margin:6px 0;padding:8px;overflow-x:auto}.lg-md pre code{white-space:pre;background:0 0;border:none;padding:0;font-size:11px}.lg-md ul,.lg-md ol{flex-direction:column;gap:2px;margin:4px 0 6px;padding-left:18px;display:flex}.lg-md ul{list-style:outside}.lg-md ol{list-style:decimal}.lg-md h4{margin:8px 0 4px;font-size:12px;font-weight:600}.lg-md lg-media{display:block}.lg-md lg-media img,.lg-md lg-media video{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md video{border:1px solid var(--color-border);background:#000;border-radius:6px;max-width:100%;margin:4px 0}.lg-md img{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md strong{font-weight:600}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-track{background:0 0}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-ordinal{syntax:\"*\";inherits:false}@property --tw-slashed-zero{syntax:\"*\";inherits:false}@property --tw-numeric-figure{syntax:\"*\";inherits:false}@property --tw-numeric-spacing{syntax:\"*\";inherits:false}@property --tw-numeric-fraction{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@property --tw-contain-size{syntax:\"*\";inherits:false}@property --tw-contain-layout{syntax:\"*\";inherits:false}@property --tw-contain-paint{syntax:\"*\";inherits:false}@property --tw-contain-style{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
|
|
47878
|
+
var M3 = "/*! 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-in:cubic-bezier(.4, 0, 1, 1);--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-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.top-\\[2px\\]{top:2px}.top-full{top:100%}.-right-0{right:0}.-right-0\\.5{right:calc(var(--spacing) * -.5)}.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-1{bottom:var(--spacing)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\\[2px\\]{bottom:2px}.bottom-full{bottom:100%}.-left-\\[13\\.5px\\]{left:-13.5px}.left-0{left:0}.left-1{left:var(--spacing)}.left-1\\/2{left:50%}.left-\\[5px\\]{left:5px}.left-full{left:100%}.z-1{z-index:1}.z-10{z-index:10}.z-\\[2147483645\\]{z-index:2147483645}.z-\\[2147483646\\]{z-index:2147483646}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\\!{width:100%!important}@media (width>=40rem){.container\\!{max-width:40rem!important}}@media (width>=48rem){.container\\!{max-width:48rem!important}}@media (width>=64rem){.container\\!{max-width:64rem!important}}@media (width>=80rem){.container\\!{max-width:80rem!important}}@media (width>=96rem){.container\\!{max-width:96rem!important}}.-m-0{margin:0}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.-m-4{margin:calc(var(--spacing) * -4)}.m-0{margin:0}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1{margin-block:calc(var(--spacing) * -1)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.mt-0{margin-top:0}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-px{margin-top:1px}.mr-0{margin-right:0}.mr-0\\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\\.5{margin-right:calc(var(--spacing) * 2.5)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-0{margin-bottom:0}.mb-0\\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-2\\.5{margin-left:calc(var(--spacing) * 2.5)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ml-px{margin-left:1px}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-0{width:0;height:0}.size-1{width:var(--spacing);height:var(--spacing)}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\\[9px\\]{width:9px;height:9px}.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-72{max-height:calc(var(--spacing) * 72)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\\[var\\(--rg-edit-list-max-h\\)\\]{max-height:var(--rg-edit-list-max-h)}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-\\[2lh\\]{min-height:2lh}.min-h-\\[28px\\]{min-height:28px}.w-1{width:var(--spacing)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-16{width:calc(var(--spacing) * 16)}.w-28{width:calc(var(--spacing) * 28)}.w-72{width:calc(var(--spacing) * 72)}.w-\\[2px\\]{width:2px}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\\[55\\%\\]{max-width:55%}.max-w-\\[100vw\\]{max-width:100vw}.max-w-\\[110px\\]{max-width:110px}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\\[3\\.5ch\\]{min-width:3.5ch}.min-w-\\[3ch\\]{min-width:3ch}.min-w-\\[4ch\\]{min-width:4ch}.min-w-\\[5ch\\]{min-width:5ch}.min-w-\\[6ch\\]{min-width:6ch}.min-w-\\[7ch\\]{min-width:7ch}.min-w-\\[8ch\\]{min-width:8ch}.min-w-\\[10ch\\]{min-width:10ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\\[5px\\]{gap:5px}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-accent{border-color:var(--color-accent)}.border-accent\\/40{border-color:#5e6ad266}@supports (color:color-mix(in lab, red, red)){.border-accent\\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-border{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-success\\/40{border-color:#4cb78266}@supports (color:color-mix(in lab, red, red)){.border-success\\/40{border-color:color-mix(in oklab, var(--color-success) 40%, transparent)}}.border-text-dim{border-color:var(--color-text-dim)}.border-transparent{border-color:#0000}.border-warn{border-color:var(--color-warn)}.border-warn\\/40{border-color:#f2c94c66}@supports (color:color-mix(in lab, red, red)){.border-warn\\/40{border-color:color-mix(in oklab, var(--color-warn) 40%, transparent)}}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.border-t-transparent{border-top-color:#0000}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-bg\\/80{background-color:#0b0c0ecc}@supports (color:color-mix(in lab, red, red)){.bg-bg\\/80{background-color:color-mix(in oklab, var(--color-bg) 80%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--color-danger)}.bg-danger-soft{background-color:var(--color-danger-soft)}.bg-red-500{background-color:var(--color-red-500)}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-text-faint{background-color:var(--color-text-faint)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--color-warn)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-px{padding-block:1px}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[15px\\]{font-size:15px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-faint{color:var(--color-text-faint)}.text-warn{color:var(--color-warn)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.group-open\\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-text-faint::placeholder{color:var(--color-text-faint)}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\\:bg-accent\\/50:hover{background-color:#5e6ad280}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-accent\\/50:hover{background-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\\:bg-danger\\/30:hover{background-color:#eb57574d}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-danger\\/30:hover{background-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.hover\\:bg-surface-2:hover{background-color:var(--color-surface-2)}.hover\\:bg-surface-3:hover{background-color:var(--color-surface-3)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}.hover\\:text-accent:hover{color:var(--color-accent)}.hover\\:text-danger:hover{color:var(--color-danger)}.hover\\:text-text:hover{color:var(--color-text)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-80:hover{opacity:.8}}.focus\\:border-accent:focus{border-color:var(--color-accent)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-accent:active{background-color:var(--color-accent)}.active\\:transition-none:active{transition-property:none}.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)}}.data-\\[state\\=on\\]\\:transition-none[data-state=on],.data-\\[state\\=open\\]\\:transition-none[data-state=open],.data-\\[state\\=…\\]\\:transition-none[data-state=…]{transition-property:none}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light],:host([data-theme=light]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg:#fbfbfc;--color-surface:#fff;--color-surface-2:#f4f4f6;--color-surface-3:#e9e9ee;--color-border:#e2e2e8;--color-border-strong:#cfcfd8;--color-text:#1b1c20;--color-text-dim:#5c5f6a;--color-text-faint:#9a9da8;--color-accent-soft:#5e6ad21f;--color-danger-soft:#eb57571a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}body{background-color:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;margin:0;font-size:13px}@keyframes geist-spinner-fade{0%{opacity:1}to{opacity:.15}}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;z-index:60;background:#1b1c20;border-radius:6px;max-width:260px;padding:3px 8px;font-size:10.5px;font-weight:500;line-height:1.35;position:absolute;bottom:calc(100% + 6px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}[data-tip][data-tip-pos~=right]:hover:after{left:0;transform:none}[data-tip][data-tip-pos~=left]:hover:after{left:auto;right:0;transform:none}[data-tip][data-tip-pos~=bottom]:hover:after{top:calc(100% + 6px);bottom:auto}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.lg-md p{margin:0 0 6px}.lg-md p:last-child{margin-bottom:0}.lg-md a{color:var(--color-accent);word-break:break-all;text-decoration:none}.lg-md a:hover{text-decoration:underline}.lg-md code{background:var(--color-surface-2);border:1px solid var(--color-border);font-family:var(--font-mono);border-radius:4px;padding:0 4px;font-size:11px}.lg-md pre{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;margin:6px 0;padding:8px;overflow-x:auto}.lg-md pre code{white-space:pre;background:0 0;border:none;padding:0;font-size:11px}.lg-md ul,.lg-md ol{flex-direction:column;gap:2px;margin:4px 0 6px;padding-left:18px;display:flex}.lg-md ul{list-style:outside}.lg-md ol{list-style:decimal}.lg-md h4{margin:8px 0 4px;font-size:12px;font-weight:600}.lg-md lg-media{display:block}.lg-md lg-media img,.lg-md lg-media video{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md video{border:1px solid var(--color-border);background:#000;border-radius:6px;max-width:100%;margin:4px 0}.lg-md img{border:1px solid var(--color-border);border-radius:6px;max-width:100%;margin:4px 0}.lg-md strong{font-weight:600}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-track{background:0 0}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-ordinal{syntax:\"*\";inherits:false}@property --tw-slashed-zero{syntax:\"*\";inherits:false}@property --tw-numeric-figure{syntax:\"*\";inherits:false}@property --tw-numeric-spacing{syntax:\"*\";inherits:false}@property --tw-numeric-fraction{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@property --tw-contain-size{syntax:\"*\";inherits:false}@property --tw-contain-layout{syntax:\"*\";inherits:false}@property --tw-contain-paint{syntax:\"*\";inherits:false}@property --tw-contain-style{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
|
|
47835
47879
|
//#endregion
|
|
47836
47880
|
//#region src/page/index.tsx
|
|
47837
47881
|
Br();
|
|
47838
|
-
var
|
|
47839
|
-
function
|
|
47882
|
+
var N3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), P3 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), F3 = /*#__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"), I3 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), L3 = /*#__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"), R3 = /*#__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\">"), z3 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), B3 = /*#__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\">"), V3 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), H3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), U3 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), W3 = /*#__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>"), G3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-accent size-2 shrink-0 animate-pulse rounded-full\">"), K3 = /*#__PURE__*/ N("<span class=\"text-text min-w-[3ch] text-[11px] font-medium tabular-nums\">s"), q3 = /*#__PURE__*/ N("<span class=\"text-text-dim min-w-[7ch] text-[11px] tabular-nums\"> states"), J3 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), Y3 = /*#__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\"> · <!> · ");
|
|
47883
|
+
function X3(e = {}) {
|
|
47840
47884
|
if (typeof window > "u" || window.__LINEAR_GRAB_PAGE__) return;
|
|
47841
47885
|
window.__LINEAR_GRAB_PAGE__ = !0;
|
|
47842
47886
|
let t = () => {
|
|
47843
|
-
lk(),
|
|
47887
|
+
lk(), F2(), JZ();
|
|
47844
47888
|
let t = document.createElement("div");
|
|
47845
47889
|
t.id = "linear-grab-root", document.body.appendChild(t);
|
|
47846
47890
|
let n = (e) => {
|
|
@@ -47868,17 +47912,17 @@ function U3(e = {}) {
|
|
|
47868
47912
|
"keypress"
|
|
47869
47913
|
]) window.addEventListener(e, n, { capture: !0 });
|
|
47870
47914
|
let r = t.attachShadow({ mode: "open" }), i = document.createElement("style");
|
|
47871
|
-
i.textContent =
|
|
47915
|
+
i.textContent = M3, r.appendChild(i);
|
|
47872
47916
|
let a = document.createElement("div");
|
|
47873
47917
|
r.appendChild(a);
|
|
47874
|
-
let o = () => a.setAttribute("data-theme",
|
|
47875
|
-
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(
|
|
47918
|
+
let o = () => a.setAttribute("data-theme", Z3());
|
|
47919
|
+
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(r6, { get defaultOpen() {
|
|
47876
47920
|
return e.defaultOpen ?? !1;
|
|
47877
47921
|
} }), a);
|
|
47878
47922
|
};
|
|
47879
47923
|
document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
|
|
47880
47924
|
}
|
|
47881
|
-
function
|
|
47925
|
+
function Z3() {
|
|
47882
47926
|
try {
|
|
47883
47927
|
let e = [document.body, document.documentElement];
|
|
47884
47928
|
for (let t of e) {
|
|
@@ -47888,11 +47932,11 @@ function W3() {
|
|
|
47888
47932
|
} catch {}
|
|
47889
47933
|
return matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
|
47890
47934
|
}
|
|
47891
|
-
var
|
|
47892
|
-
function
|
|
47935
|
+
var Q3 = 130, $3 = 36, e6 = 380, t6 = 280, n6 = 720;
|
|
47936
|
+
function r6(e) {
|
|
47893
47937
|
let [t, n] = T(e.defaultOpen), [r, i] = T("right"), [a, o] = T({
|
|
47894
|
-
x: Math.max(8, window.innerWidth -
|
|
47895
|
-
y: Math.max(8, window.innerHeight -
|
|
47938
|
+
x: Math.max(8, window.innerWidth - Q3 - 24),
|
|
47939
|
+
y: Math.max(8, window.innerHeight - $3 - 20)
|
|
47896
47940
|
}), [s, c] = T({
|
|
47897
47941
|
running: [],
|
|
47898
47942
|
review: []
|
|
@@ -47912,12 +47956,12 @@ function X3(e) {
|
|
|
47912
47956
|
let t = Math.floor(e / 1e3);
|
|
47913
47957
|
return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
47914
47958
|
}, [b, x] = T(null), S = (e) => ({
|
|
47915
|
-
x: Math.min(Math.max(8, e.x), window.innerWidth -
|
|
47916
|
-
y: Math.min(Math.max(8, e.y), window.innerHeight -
|
|
47959
|
+
x: Math.min(Math.max(8, e.x), window.innerWidth - Q3 - 8),
|
|
47960
|
+
y: Math.min(Math.max(8, e.y), window.innerHeight - $3 - 8)
|
|
47917
47961
|
}), C = (e) => ({
|
|
47918
47962
|
x: Math.min(Math.max(8 - (ne() - 80), e.x), window.innerWidth - 80),
|
|
47919
47963
|
y: Math.min(Math.max(0, e.y), window.innerHeight - 80)
|
|
47920
|
-
}), [w, E] = T(!1), [k, ee] = T("cloud"), [te, A] = T(!1), [ne, re] = T(
|
|
47964
|
+
}), [w, E] = T(!1), [k, ee] = T("cloud"), [te, A] = T(!1), [ne, re] = T(e6), oe = (e) => Math.min(n6, Math.max(t6, Math.min(e, window.innerWidth - 60)));
|
|
47921
47965
|
O(() => {
|
|
47922
47966
|
let e = document.documentElement, n = t() && w();
|
|
47923
47967
|
e.style.transition = "margin 0.2s ease", e.style.marginRight = n && r() === "right" ? `${ne()}px` : "", e.style.marginLeft = n && r() === "left" ? `${ne()}px` : "";
|
|
@@ -48031,7 +48075,7 @@ function X3(e) {
|
|
|
48031
48075
|
return !t();
|
|
48032
48076
|
},
|
|
48033
48077
|
get children() {
|
|
48034
|
-
var e =
|
|
48078
|
+
var e = R3(), t = e.firstChild;
|
|
48035
48079
|
return t.$$click = () => {
|
|
48036
48080
|
ce || p() === "recording" || h().active || (f(!1), n(!0));
|
|
48037
48081
|
}, t.$$pointerdown = le, P(t, j(M, {
|
|
@@ -48041,14 +48085,14 @@ function X3(e) {
|
|
|
48041
48085
|
get fallback() {
|
|
48042
48086
|
return [
|
|
48043
48087
|
(() => {
|
|
48044
|
-
var e =
|
|
48088
|
+
var e = B3();
|
|
48045
48089
|
return e.$$click = () => {
|
|
48046
48090
|
ce || (f(!1), n(!0));
|
|
48047
|
-
}, P(e, j(
|
|
48091
|
+
}, P(e, j(A3, { size: 13 })), e;
|
|
48048
48092
|
})(),
|
|
48049
|
-
|
|
48093
|
+
V3(),
|
|
48050
48094
|
(() => {
|
|
48051
|
-
var e =
|
|
48095
|
+
var e = W3(), t = e.firstChild, n = t.nextSibling;
|
|
48052
48096
|
return e.$$click = (e) => {
|
|
48053
48097
|
e.stopPropagation(), !ce && f((e) => !e);
|
|
48054
48098
|
}, P(n, (() => {
|
|
@@ -48059,8 +48103,8 @@ function X3(e) {
|
|
|
48059
48103
|
return $e(() => !te())() && u().length > 0;
|
|
48060
48104
|
},
|
|
48061
48105
|
get children() {
|
|
48062
|
-
return [
|
|
48063
|
-
var e =
|
|
48106
|
+
return [H3(), (() => {
|
|
48107
|
+
var e = U3(), t = e.firstChild;
|
|
48064
48108
|
return P(e, () => u().length, t), e;
|
|
48065
48109
|
})()];
|
|
48066
48110
|
}
|
|
@@ -48081,17 +48125,17 @@ function X3(e) {
|
|
|
48081
48125
|
},
|
|
48082
48126
|
get fallback() {
|
|
48083
48127
|
return [
|
|
48084
|
-
|
|
48128
|
+
G3(),
|
|
48085
48129
|
(() => {
|
|
48086
|
-
var e =
|
|
48130
|
+
var e = K3(), t = e.firstChild;
|
|
48087
48131
|
return P(e, () => Math.ceil(h().msLeft / 1e3), t), e;
|
|
48088
48132
|
})(),
|
|
48089
48133
|
(() => {
|
|
48090
|
-
var e =
|
|
48134
|
+
var e = q3(), t = e.firstChild;
|
|
48091
48135
|
return P(e, () => h().total, t), D(() => it(e, "title", Object.entries(h().byTrigger).map(([e, t]) => `${t} ${e}`).join(" · ") || "hover / open the component to record its states")), e;
|
|
48092
48136
|
})(),
|
|
48093
48137
|
(() => {
|
|
48094
|
-
var e =
|
|
48138
|
+
var e = F3();
|
|
48095
48139
|
return e.$$click = (e) => {
|
|
48096
48140
|
e.stopPropagation(), !ce && o2();
|
|
48097
48141
|
}, e;
|
|
@@ -48100,13 +48144,13 @@ function X3(e) {
|
|
|
48100
48144
|
},
|
|
48101
48145
|
get children() {
|
|
48102
48146
|
return [
|
|
48103
|
-
|
|
48147
|
+
N3(),
|
|
48104
48148
|
(() => {
|
|
48105
|
-
var e =
|
|
48149
|
+
var e = P3();
|
|
48106
48150
|
return P(e, () => y(_())), e;
|
|
48107
48151
|
})(),
|
|
48108
48152
|
(() => {
|
|
48109
|
-
var e =
|
|
48153
|
+
var e = F3();
|
|
48110
48154
|
return e.$$click = () => {
|
|
48111
48155
|
ce || eO();
|
|
48112
48156
|
}, e;
|
|
@@ -48120,17 +48164,17 @@ function X3(e) {
|
|
|
48120
48164
|
return d();
|
|
48121
48165
|
},
|
|
48122
48166
|
get children() {
|
|
48123
|
-
var e =
|
|
48167
|
+
var e = L3(), t = e.firstChild;
|
|
48124
48168
|
return P(e, j(M, {
|
|
48125
48169
|
get when() {
|
|
48126
48170
|
return u().length > 0;
|
|
48127
48171
|
},
|
|
48128
48172
|
get children() {
|
|
48129
|
-
return [
|
|
48173
|
+
return [I3(), j(We, {
|
|
48130
48174
|
get each() {
|
|
48131
48175
|
return u();
|
|
48132
48176
|
},
|
|
48133
|
-
children: (e) => j(
|
|
48177
|
+
children: (e) => j(i6, {
|
|
48134
48178
|
agent: e,
|
|
48135
48179
|
review: !0,
|
|
48136
48180
|
onOpen: de
|
|
@@ -48142,14 +48186,14 @@ function X3(e) {
|
|
|
48142
48186
|
return l().length > 0;
|
|
48143
48187
|
},
|
|
48144
48188
|
get fallback() {
|
|
48145
|
-
return
|
|
48189
|
+
return J3();
|
|
48146
48190
|
},
|
|
48147
48191
|
get children() {
|
|
48148
48192
|
return j(We, {
|
|
48149
48193
|
get each() {
|
|
48150
48194
|
return l();
|
|
48151
48195
|
},
|
|
48152
|
-
children: (e) => j(
|
|
48196
|
+
children: (e) => j(i6, {
|
|
48153
48197
|
agent: e,
|
|
48154
48198
|
onOpen: de
|
|
48155
48199
|
})
|
|
@@ -48170,8 +48214,8 @@ function X3(e) {
|
|
|
48170
48214
|
return t();
|
|
48171
48215
|
},
|
|
48172
48216
|
get children() {
|
|
48173
|
-
var e =
|
|
48174
|
-
return t.$$pointerdown = fe, P(e, j(
|
|
48217
|
+
var e = z3(), t = e.firstChild;
|
|
48218
|
+
return t.$$pointerdown = fe, P(e, j(j3, {
|
|
48175
48219
|
onGrab: () => n(!0),
|
|
48176
48220
|
onClose: () => n(!1),
|
|
48177
48221
|
get onHeaderPointerDown() {
|
|
@@ -48199,19 +48243,19 @@ function X3(e) {
|
|
|
48199
48243
|
}
|
|
48200
48244
|
})];
|
|
48201
48245
|
}
|
|
48202
|
-
function
|
|
48246
|
+
function i6(e) {
|
|
48203
48247
|
return (() => {
|
|
48204
|
-
var t =
|
|
48248
|
+
var t = Y3(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
|
|
48205
48249
|
return c.nextSibling, t.$$click = () => e.onOpen(e.agent.id), P(i, () => e.agent.identifier), P(a, () => e.agent.title), P(o, (() => {
|
|
48206
48250
|
var t = $e(() => !!e.review);
|
|
48207
48251
|
return () => t() ? "PR ready · needs review" : e.agent.stateName;
|
|
48208
|
-
})(), s), P(o, () => e.agent.delegateName, c), P(o, () =>
|
|
48252
|
+
})(), s), P(o, () => e.agent.delegateName, c), P(o, () => a6(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
|
|
48209
48253
|
})();
|
|
48210
48254
|
}
|
|
48211
|
-
function
|
|
48255
|
+
function a6(e) {
|
|
48212
48256
|
let t = Math.max(0, Math.floor((Date.now() - Date.parse(e)) / 1e3));
|
|
48213
48257
|
return t < 60 ? "now" : t < 3600 ? `${Math.floor(t / 60)}m` : t < 86400 ? `${Math.floor(t / 3600)}h` : `${Math.floor(t / 86400)}d`;
|
|
48214
48258
|
}
|
|
48215
48259
|
rt(["pointerdown", "click"]);
|
|
48216
48260
|
//#endregion
|
|
48217
|
-
export {
|
|
48261
|
+
export { X3 as init };
|