linear-grab 0.23.1 → 0.23.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.global.js +10 -5
- package/dist/linear-grab.js +390 -320
- package/package.json +1 -1
package/dist/linear-grab.js
CHANGED
|
@@ -46031,7 +46031,7 @@ function w2(e) {
|
|
|
46031
46031
|
return S2.add(e), e(x2), () => void S2.delete(e);
|
|
46032
46032
|
}
|
|
46033
46033
|
function T2() {
|
|
46034
|
-
x2 =
|
|
46034
|
+
x2 = [];
|
|
46035
46035
|
for (let e of S2) e(x2);
|
|
46036
46036
|
}
|
|
46037
46037
|
var E2 = !1;
|
|
@@ -46143,6 +46143,33 @@ async function k2() {
|
|
|
46143
46143
|
return n;
|
|
46144
46144
|
}
|
|
46145
46145
|
function A2(e) {
|
|
46146
|
+
return [
|
|
46147
|
+
"Below is a CSS-slowdown report from my running app (live-captured on real input + full-page audit).",
|
|
46148
|
+
"Goal: ALL interaction feedback must be instant. Rules:",
|
|
46149
|
+
"",
|
|
46150
|
+
"1. Most of these come from SHARED design-system variants — fix the VARIANT",
|
|
46151
|
+
" DEFINITIONS, not the call sites. Grep for the exact class recipes in the",
|
|
46152
|
+
" findings' `classes:` lines (e.g. `transition-all`, `transition-colors duration-150`).",
|
|
46153
|
+
"2. Press/toggle state changes get NO transition: add `active:transition-none`",
|
|
46154
|
+
" and `data-[state=on]:transition-none` / `data-[state=open]:transition-none`.",
|
|
46155
|
+
" Hover in/out may keep a transition but shorten it: duration-150 → duration-100",
|
|
46156
|
+
" (duration-75 for small controls like tabs and icon buttons).",
|
|
46157
|
+
"3. Replace every `transition-all` with the scoped variant (transition-colors /",
|
|
46158
|
+
" transition-transform / transition-opacity — per what actually changes).",
|
|
46159
|
+
"4. Where a finding's source looks like a generic fallback (one file:line repeated",
|
|
46160
|
+
" for many components), locate the code by the `classes:` line instead.",
|
|
46161
|
+
"5. Do NOT touch entry/exit animations of popovers/menus or icon micro-motion",
|
|
46162
|
+
" (chevron rotate etc.) — that is intentional; only input FEEDBACK must be instant.",
|
|
46163
|
+
"6. PROOF REQUIRED: after the change I will re-run the audit — it must show zero",
|
|
46164
|
+
" interactive elements ≥100ms and clicking must produce no live findings.",
|
|
46165
|
+
" Do not claim done without stating what you changed per variant.",
|
|
46166
|
+
"",
|
|
46167
|
+
"---",
|
|
46168
|
+
"",
|
|
46169
|
+
j2(e)
|
|
46170
|
+
].join("\n");
|
|
46171
|
+
}
|
|
46172
|
+
function j2(e) {
|
|
46146
46173
|
let t = [
|
|
46147
46174
|
`# CSS slowdowns on ${location.host}${location.pathname}`,
|
|
46148
46175
|
"Threshold: 50ms (interaction feedback should be instant).",
|
|
@@ -46153,22 +46180,22 @@ function A2(e) {
|
|
|
46153
46180
|
}
|
|
46154
46181
|
//#endregion
|
|
46155
46182
|
//#region src/panel/views/DesignView.tsx
|
|
46156
|
-
var
|
|
46157
|
-
function
|
|
46183
|
+
var M2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[7ch] text-center\">Extract"), N2 = /*#__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>"), P2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[8ch] text-center\">"), F2 = /*#__PURE__*/ N("<div class=\"flex items-center justify-end gap-1.5 px-1\">"), I2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[5ch] text-center\">Audit"), L2 = /*#__PURE__*/ N("<div class=\"flex max-h-72 flex-col gap-1.5 overflow-y-auto pr-2\">"), R2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[11ch] text-center\">"), z2 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[10ch] text-center\">"), B2 = /*#__PURE__*/ N("<div class=\"flex items-center gap-1.5 px-1\">"), V2 = /*#__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."), H2 = /*#__PURE__*/ N("<p class=\"text-text mt-1 text-[11px] font-semibold\">Interaction states"), U2 = /*#__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>"), W2 = /*#__PURE__*/ N("<span class=\"text-warn text-[10.5px] font-medium tabular-nums\">s · <!> states"), G2 = /*#__PURE__*/ N("<span class=\"text-success text-[12px] leading-none\">✓"), K2 = /*#__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\">"), q2 = /*#__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\">"), J2 = /*#__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\">"), Y2 = /*#__PURE__*/ N("<span class=text-text-faint> ×"), X2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><p class=\"text-text text-[11px] font-medium\">"), Z2 = /*#__PURE__*/ N("<span class=text-accent> ← var(<!>)"), Q2 = /*#__PURE__*/ N("<p class=\"text-text-dim font-mono text-[10px] leading-snug break-all\">: "), $2 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-0.5\"><p class=\"text-warn text-[10.5px] font-medium\"> — "), e4 = /*#__PURE__*/ N("<p class=\"text-text-dim font-mono text-[10px] leading-snug break-all\">: <!> → "), t4 = /*#__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>"), n4 = /*#__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\">"), r4 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1 text-[10.5px]\">Nothing caught yet — interact with the app, or run Audit."), i4 = /*#__PURE__*/ N("<span class=\"text-text-dim font-mono text-[10px] break-all\">"), a4 = /*#__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\">"), o4 = "linear-grab:genomes:v1", s4 = 30;
|
|
46184
|
+
function c4() {
|
|
46158
46185
|
try {
|
|
46159
|
-
return JSON.parse(localStorage.getItem(
|
|
46186
|
+
return JSON.parse(localStorage.getItem(o4) ?? "[]");
|
|
46160
46187
|
} catch {
|
|
46161
46188
|
return [];
|
|
46162
46189
|
}
|
|
46163
46190
|
}
|
|
46164
|
-
function
|
|
46191
|
+
function l4(e) {
|
|
46165
46192
|
try {
|
|
46166
|
-
localStorage.setItem(
|
|
46193
|
+
localStorage.setItem(o4, JSON.stringify(e.slice(0, s4)));
|
|
46167
46194
|
} catch {}
|
|
46168
46195
|
}
|
|
46169
|
-
var
|
|
46170
|
-
function
|
|
46171
|
-
let [e, t] = T(
|
|
46196
|
+
var u4 = /* @__PURE__ */ new Map();
|
|
46197
|
+
function d4() {
|
|
46198
|
+
let [e, t] = T(c4()), [n, r] = T(null), [i, a] = T(null), [o, s] = T(null), [c, l] = T(null), [u, d] = T(null), [f, p] = T({
|
|
46172
46199
|
active: !1,
|
|
46173
46200
|
msLeft: 0,
|
|
46174
46201
|
total: 0,
|
|
@@ -46186,19 +46213,25 @@ function s4() {
|
|
|
46186
46213
|
}
|
|
46187
46214
|
}, x = async () => {
|
|
46188
46215
|
try {
|
|
46189
|
-
await navigator.clipboard.writeText(
|
|
46216
|
+
await navigator.clipboard.writeText(j2(m())), y(!0), setTimeout(() => y(!1), 1600);
|
|
46190
46217
|
} catch {
|
|
46191
46218
|
l("Clipboard was blocked — click Copy again.");
|
|
46192
46219
|
}
|
|
46193
|
-
}, S = (
|
|
46194
|
-
|
|
46195
|
-
|
|
46220
|
+
}, [S, C] = T(!1), w = async () => {
|
|
46221
|
+
try {
|
|
46222
|
+
await navigator.clipboard.writeText(A2(m())), C(!0), setTimeout(() => C(!1), 1600);
|
|
46223
|
+
} catch {
|
|
46224
|
+
l("Clipboard was blocked — click Copy again.");
|
|
46225
|
+
}
|
|
46226
|
+
}, E = (e) => {
|
|
46227
|
+
t(e), l4(e);
|
|
46228
|
+
}, O = async () => {
|
|
46196
46229
|
l(null), a("extract"), window.dispatchEvent(new CustomEvent(BZ));
|
|
46197
46230
|
try {
|
|
46198
46231
|
let t = await u2();
|
|
46199
46232
|
if (!t) return;
|
|
46200
46233
|
let n = await e2(t), i = Date.now();
|
|
46201
|
-
|
|
46234
|
+
u4.set(i, new WeakRef(t)), E([{
|
|
46202
46235
|
id: i,
|
|
46203
46236
|
genome: n
|
|
46204
46237
|
}, ...e()]), r(i);
|
|
@@ -46207,16 +46240,16 @@ function s4() {
|
|
|
46207
46240
|
} finally {
|
|
46208
46241
|
a(null), oj("design"), window.dispatchEvent(new CustomEvent(VZ));
|
|
46209
46242
|
}
|
|
46210
|
-
},
|
|
46243
|
+
}, k = async (t) => {
|
|
46211
46244
|
l(null), a(t.id), window.dispatchEvent(new CustomEvent(BZ));
|
|
46212
46245
|
try {
|
|
46213
|
-
let n =
|
|
46246
|
+
let n = u4.get(t.id)?.deref() ?? null;
|
|
46214
46247
|
if (!n || !n.isConnected) {
|
|
46215
46248
|
if (n = await u2(), !n) return;
|
|
46216
|
-
|
|
46249
|
+
u4.set(t.id, new WeakRef(n));
|
|
46217
46250
|
}
|
|
46218
46251
|
let r = await c2(n, 8e3, (e) => s(Math.ceil(e / 1e3)));
|
|
46219
|
-
r.length === 0 && l("No state changes captured — hover/open the component while the 8s window runs."),
|
|
46252
|
+
r.length === 0 && l("No state changes captured — hover/open the component while the 8s window runs."), E(e().map((e) => e.id === t.id ? {
|
|
46220
46253
|
...e,
|
|
46221
46254
|
genome: {
|
|
46222
46255
|
...e.genome,
|
|
@@ -46228,17 +46261,26 @@ function s4() {
|
|
|
46228
46261
|
} finally {
|
|
46229
46262
|
a(null), s(null), oj("design"), window.dispatchEvent(new CustomEvent(VZ));
|
|
46230
46263
|
}
|
|
46231
|
-
},
|
|
46264
|
+
}, ee = async (e) => {
|
|
46232
46265
|
try {
|
|
46233
46266
|
await navigator.clipboard.writeText(l2(e.genome)), d(e.id), setTimeout(() => d(null), 1600);
|
|
46234
46267
|
} catch {
|
|
46235
46268
|
l("Clipboard was blocked — click Copy again.");
|
|
46236
46269
|
}
|
|
46237
|
-
},
|
|
46238
|
-
|
|
46270
|
+
}, te = (t) => {
|
|
46271
|
+
u4.delete(t), E(e().filter((e) => e.id !== t));
|
|
46272
|
+
}, [A, ne] = T(!1), re = async () => {
|
|
46273
|
+
try {
|
|
46274
|
+
let t = e().map((e) => l2(e.genome)).join("\n\n---\n\n");
|
|
46275
|
+
await navigator.clipboard.writeText(t), ne(!0), setTimeout(() => ne(!1), 1600);
|
|
46276
|
+
} catch {
|
|
46277
|
+
l("Clipboard was blocked — click Copy again.");
|
|
46278
|
+
}
|
|
46279
|
+
}, ie = () => {
|
|
46280
|
+
u4.clear(), E([]), r(null);
|
|
46239
46281
|
};
|
|
46240
46282
|
return (() => {
|
|
46241
|
-
var t =
|
|
46283
|
+
var t = V2(), a = t.firstChild;
|
|
46242
46284
|
a.firstChild;
|
|
46243
46285
|
var o = a.nextSibling, s = o.firstChild;
|
|
46244
46286
|
return s.firstChild, P(a, j(kj, {
|
|
@@ -46247,9 +46289,9 @@ function s4() {
|
|
|
46247
46289
|
get loading() {
|
|
46248
46290
|
return i() === "extract";
|
|
46249
46291
|
},
|
|
46250
|
-
onClick: () => void
|
|
46292
|
+
onClick: () => void O(),
|
|
46251
46293
|
get children() {
|
|
46252
|
-
return
|
|
46294
|
+
return M2();
|
|
46253
46295
|
}
|
|
46254
46296
|
}), null), P(t, j(M, {
|
|
46255
46297
|
get when() {
|
|
@@ -46271,159 +46313,178 @@ function s4() {
|
|
|
46271
46313
|
});
|
|
46272
46314
|
},
|
|
46273
46315
|
get children() {
|
|
46274
|
-
|
|
46275
|
-
|
|
46276
|
-
|
|
46277
|
-
|
|
46278
|
-
|
|
46279
|
-
|
|
46280
|
-
|
|
46281
|
-
|
|
46282
|
-
|
|
46283
|
-
|
|
46284
|
-
|
|
46285
|
-
|
|
46286
|
-
|
|
46287
|
-
|
|
46288
|
-
|
|
46289
|
-
|
|
46290
|
-
|
|
46291
|
-
|
|
46292
|
-
|
|
46293
|
-
|
|
46294
|
-
|
|
46295
|
-
|
|
46296
|
-
|
|
46297
|
-
|
|
46298
|
-
|
|
46299
|
-
|
|
46300
|
-
|
|
46301
|
-
|
|
46302
|
-
|
|
46303
|
-
|
|
46304
|
-
|
|
46305
|
-
|
|
46306
|
-
|
|
46307
|
-
|
|
46308
|
-
|
|
46309
|
-
|
|
46310
|
-
|
|
46311
|
-
|
|
46312
|
-
|
|
46313
|
-
|
|
46314
|
-
|
|
46315
|
-
|
|
46316
|
-
|
|
46317
|
-
|
|
46318
|
-
|
|
46319
|
-
|
|
46320
|
-
|
|
46321
|
-
|
|
46322
|
-
|
|
46323
|
-
|
|
46324
|
-
|
|
46325
|
-
|
|
46326
|
-
|
|
46327
|
-
|
|
46328
|
-
|
|
46329
|
-
|
|
46330
|
-
|
|
46331
|
-
|
|
46332
|
-
|
|
46333
|
-
|
|
46334
|
-
|
|
46335
|
-
|
|
46336
|
-
|
|
46337
|
-
|
|
46338
|
-
|
|
46339
|
-
|
|
46340
|
-
|
|
46341
|
-
|
|
46342
|
-
|
|
46343
|
-
|
|
46344
|
-
|
|
46345
|
-
|
|
46346
|
-
|
|
46347
|
-
|
|
46348
|
-
|
|
46349
|
-
|
|
46350
|
-
|
|
46351
|
-
|
|
46352
|
-
|
|
46353
|
-
|
|
46354
|
-
|
|
46355
|
-
|
|
46356
|
-
|
|
46357
|
-
|
|
46358
|
-
|
|
46359
|
-
|
|
46360
|
-
|
|
46361
|
-
|
|
46362
|
-
|
|
46363
|
-
|
|
46364
|
-
|
|
46365
|
-
|
|
46366
|
-
|
|
46367
|
-
|
|
46368
|
-
|
|
46369
|
-
|
|
46370
|
-
|
|
46371
|
-
|
|
46372
|
-
|
|
46373
|
-
|
|
46374
|
-
|
|
46375
|
-
|
|
46376
|
-
|
|
46377
|
-
|
|
46378
|
-
|
|
46379
|
-
|
|
46380
|
-
|
|
46381
|
-
|
|
46382
|
-
|
|
46383
|
-
|
|
46384
|
-
|
|
46385
|
-
|
|
46386
|
-
|
|
46387
|
-
|
|
46388
|
-
|
|
46389
|
-
|
|
46390
|
-
|
|
46391
|
-
|
|
46392
|
-
|
|
46393
|
-
|
|
46394
|
-
|
|
46395
|
-
|
|
46396
|
-
|
|
46397
|
-
|
|
46398
|
-
|
|
46399
|
-
|
|
46400
|
-
|
|
46401
|
-
|
|
46402
|
-
|
|
46403
|
-
|
|
46404
|
-
|
|
46405
|
-
|
|
46406
|
-
|
|
46407
|
-
|
|
46408
|
-
|
|
46409
|
-
|
|
46410
|
-
|
|
46411
|
-
|
|
46412
|
-
|
|
46413
|
-
|
|
46414
|
-
|
|
46415
|
-
|
|
46416
|
-
|
|
46417
|
-
|
|
46418
|
-
|
|
46419
|
-
|
|
46420
|
-
|
|
46421
|
-
|
|
46422
|
-
|
|
46423
|
-
|
|
46424
|
-
|
|
46425
|
-
|
|
46426
|
-
|
|
46316
|
+
return [(() => {
|
|
46317
|
+
var t = N2();
|
|
46318
|
+
return t.firstChild, P(t, j(We, {
|
|
46319
|
+
get each() {
|
|
46320
|
+
return e();
|
|
46321
|
+
},
|
|
46322
|
+
children: (e) => {
|
|
46323
|
+
let t = () => n() === e.id;
|
|
46324
|
+
return (() => {
|
|
46325
|
+
var n = J2(), a = n.firstChild, o = a.nextSibling, s = o.firstChild, c = s.firstChild, l = c.nextSibling, d = l.firstChild, p = d.nextSibling;
|
|
46326
|
+
p.nextSibling;
|
|
46327
|
+
var m = l.nextSibling;
|
|
46328
|
+
return s.$$click = () => r(t() ? null : e.id), P(c, () => e.genome.title), P(l, () => e.genome.nodes.length, d), P(l, (() => {
|
|
46329
|
+
var t = $e(() => !!e.genome.states.length);
|
|
46330
|
+
return () => t() ? ` · ${e.genome.states.length} states` : "";
|
|
46331
|
+
})(), p), P(l, () => Wj(e.genome.extractedAt), null), P(o, j(M, {
|
|
46332
|
+
get when() {
|
|
46333
|
+
return t();
|
|
46334
|
+
},
|
|
46335
|
+
get children() {
|
|
46336
|
+
var t = q2(), n = t.firstChild, r = n.nextSibling, a = r.nextSibling;
|
|
46337
|
+
return P(n, () => e.genome.pageUrl), P(r, j(We, {
|
|
46338
|
+
get each() {
|
|
46339
|
+
return e.genome.nodes;
|
|
46340
|
+
},
|
|
46341
|
+
children: (e) => (() => {
|
|
46342
|
+
var t = X2(), n = t.firstChild;
|
|
46343
|
+
return P(n, () => e.label, null), P(n, j(M, {
|
|
46344
|
+
get when() {
|
|
46345
|
+
return e.count > 1;
|
|
46346
|
+
},
|
|
46347
|
+
get children() {
|
|
46348
|
+
var t = Y2();
|
|
46349
|
+
return t.firstChild, P(t, () => e.count, null), t;
|
|
46350
|
+
}
|
|
46351
|
+
}), null), P(t, j(We, {
|
|
46352
|
+
get each() {
|
|
46353
|
+
return Object.entries(e.styles);
|
|
46354
|
+
},
|
|
46355
|
+
children: ([t, n]) => (() => {
|
|
46356
|
+
var r = Q2(), i = r.firstChild;
|
|
46357
|
+
return P(r, t, i), P(r, n, null), P(r, j(M, {
|
|
46358
|
+
get when() {
|
|
46359
|
+
return e.tokens[t];
|
|
46360
|
+
},
|
|
46361
|
+
get children() {
|
|
46362
|
+
var n = Z2(), r = n.firstChild.nextSibling;
|
|
46363
|
+
return r.nextSibling, P(n, () => e.tokens[t], r), n;
|
|
46364
|
+
}
|
|
46365
|
+
}), null), r;
|
|
46366
|
+
})()
|
|
46367
|
+
}), null), t;
|
|
46368
|
+
})()
|
|
46369
|
+
}), null), P(r, j(M, {
|
|
46370
|
+
get when() {
|
|
46371
|
+
return e.genome.states.length > 0;
|
|
46372
|
+
},
|
|
46373
|
+
get children() {
|
|
46374
|
+
return [H2(), j(We, {
|
|
46375
|
+
get each() {
|
|
46376
|
+
return e.genome.states;
|
|
46377
|
+
},
|
|
46378
|
+
children: (e) => (() => {
|
|
46379
|
+
var t = $2(), n = t.firstChild, r = n.firstChild;
|
|
46380
|
+
return P(n, () => e.label, r), P(n, () => e.trigger, null), P(t, j(We, {
|
|
46381
|
+
get each() {
|
|
46382
|
+
return Object.entries(e.changed);
|
|
46383
|
+
},
|
|
46384
|
+
children: ([e, t]) => (() => {
|
|
46385
|
+
var n = e4(), r = n.firstChild, i = r.nextSibling;
|
|
46386
|
+
return i.nextSibling, P(n, e, r), P(n, () => t.from, i), P(n, () => t.to, null), n;
|
|
46387
|
+
})()
|
|
46388
|
+
}), null), t;
|
|
46389
|
+
})()
|
|
46390
|
+
})];
|
|
46391
|
+
}
|
|
46392
|
+
}), null), P(a, j(M, {
|
|
46393
|
+
get when() {
|
|
46394
|
+
return $e(() => i() === e.id)() && f().active;
|
|
46395
|
+
},
|
|
46396
|
+
get fallback() {
|
|
46397
|
+
return j(kj, {
|
|
46398
|
+
class: "size-7 px-0",
|
|
46399
|
+
variant: "ghost",
|
|
46400
|
+
get loading() {
|
|
46401
|
+
return i() === e.id;
|
|
46402
|
+
},
|
|
46403
|
+
title: "Capture states — records hover/focus/open styles for 8s while you interact; the pill shows the timer and Stop",
|
|
46404
|
+
"aria-label": "Capture interaction states",
|
|
46405
|
+
onClick: () => void k(e),
|
|
46406
|
+
get children() {
|
|
46407
|
+
return t4();
|
|
46408
|
+
}
|
|
46409
|
+
});
|
|
46410
|
+
},
|
|
46411
|
+
get children() {
|
|
46412
|
+
return [j(kj, {
|
|
46413
|
+
class: "text-danger size-7 px-0",
|
|
46414
|
+
variant: "ghost",
|
|
46415
|
+
get title() {
|
|
46416
|
+
return `Stop recording — ${Math.ceil(f().msLeft / 1e3)}s left · ${f().total} captured`;
|
|
46417
|
+
},
|
|
46418
|
+
"aria-label": "Stop recording states",
|
|
46419
|
+
onClick: () => o2(),
|
|
46420
|
+
get children() {
|
|
46421
|
+
return U2();
|
|
46422
|
+
}
|
|
46423
|
+
}), (() => {
|
|
46424
|
+
var e = W2(), t = e.firstChild, n = t.nextSibling;
|
|
46425
|
+
return n.nextSibling, P(e, () => Math.ceil(f().msLeft / 1e3), t), P(e, () => f().total, n), e;
|
|
46426
|
+
})()];
|
|
46427
|
+
}
|
|
46428
|
+
}), null), P(a, j(kj, {
|
|
46429
|
+
class: "size-7 px-0",
|
|
46430
|
+
variant: "ghost",
|
|
46431
|
+
get title() {
|
|
46432
|
+
return u() === e.id ? "Copied!" : "Copy spec — markdown for an agent or issue";
|
|
46433
|
+
},
|
|
46434
|
+
"aria-label": "Copy genome spec",
|
|
46435
|
+
onClick: () => void ee(e),
|
|
46436
|
+
get children() {
|
|
46437
|
+
return j(M, {
|
|
46438
|
+
get when() {
|
|
46439
|
+
return u() === e.id;
|
|
46440
|
+
},
|
|
46441
|
+
get fallback() {
|
|
46442
|
+
return n4();
|
|
46443
|
+
},
|
|
46444
|
+
get children() {
|
|
46445
|
+
return G2();
|
|
46446
|
+
}
|
|
46447
|
+
});
|
|
46448
|
+
}
|
|
46449
|
+
}), null), P(a, j(kj, {
|
|
46450
|
+
class: "text-danger ml-auto size-7 px-0",
|
|
46451
|
+
variant: "ghost",
|
|
46452
|
+
title: "Delete this genome",
|
|
46453
|
+
"aria-label": "Delete genome",
|
|
46454
|
+
onClick: () => te(e.id),
|
|
46455
|
+
get children() {
|
|
46456
|
+
return K2();
|
|
46457
|
+
}
|
|
46458
|
+
}), null), t;
|
|
46459
|
+
}
|
|
46460
|
+
}), null), D((e) => {
|
|
46461
|
+
var n = { "bg-accent border-accent": t() }, r = !!t();
|
|
46462
|
+
return e.e = lt(a, n, e.e), r !== e.t && m.classList.toggle("rotate-180", e.t = r), e;
|
|
46463
|
+
}, {
|
|
46464
|
+
e: void 0,
|
|
46465
|
+
t: void 0
|
|
46466
|
+
}), n;
|
|
46467
|
+
})();
|
|
46468
|
+
}
|
|
46469
|
+
}), null), t;
|
|
46470
|
+
})(), (() => {
|
|
46471
|
+
var e = F2();
|
|
46472
|
+
return P(e, j(kj, {
|
|
46473
|
+
class: "h-6 px-2 text-[11px]",
|
|
46474
|
+
variant: "ghost",
|
|
46475
|
+
title: "Copy every genome as one markdown document",
|
|
46476
|
+
onClick: () => void re(),
|
|
46477
|
+
get children() {
|
|
46478
|
+
var e = P2();
|
|
46479
|
+
return P(e, () => A() ? "Copied ✓" : "Copy all"), e;
|
|
46480
|
+
}
|
|
46481
|
+
}), null), P(e, j(kj, {
|
|
46482
|
+
class: "h-6 px-2 text-[11px]",
|
|
46483
|
+
variant: "ghost",
|
|
46484
|
+
onClick: ie,
|
|
46485
|
+
children: "Clear all"
|
|
46486
|
+
}), null), e;
|
|
46487
|
+
})()];
|
|
46427
46488
|
}
|
|
46428
46489
|
}), o), P(s, j(kj, {
|
|
46429
46490
|
variant: "ghost",
|
|
@@ -46433,24 +46494,24 @@ function s4() {
|
|
|
46433
46494
|
},
|
|
46434
46495
|
onClick: () => void b(),
|
|
46435
46496
|
get children() {
|
|
46436
|
-
return
|
|
46497
|
+
return I2();
|
|
46437
46498
|
}
|
|
46438
46499
|
}), null), P(o, j(M, {
|
|
46439
46500
|
get when() {
|
|
46440
46501
|
return m().length > 0;
|
|
46441
46502
|
},
|
|
46442
46503
|
get fallback() {
|
|
46443
|
-
return
|
|
46504
|
+
return r4();
|
|
46444
46505
|
},
|
|
46445
46506
|
get children() {
|
|
46446
46507
|
return [(() => {
|
|
46447
|
-
var e =
|
|
46508
|
+
var e = L2();
|
|
46448
46509
|
return P(e, j(We, {
|
|
46449
46510
|
get each() {
|
|
46450
46511
|
return m();
|
|
46451
46512
|
},
|
|
46452
46513
|
children: (e) => (() => {
|
|
46453
|
-
var t =
|
|
46514
|
+
var t = a4(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = a.firstChild, s = n.nextSibling, c = s.nextSibling;
|
|
46454
46515
|
return P(r, () => e.mode === "live" ? "live" : "audit"), P(i, () => e.component ?? e.element, null), P(i, j(M, {
|
|
46455
46516
|
get when() {
|
|
46456
46517
|
return e.count > 1;
|
|
@@ -46466,7 +46527,7 @@ function s4() {
|
|
|
46466
46527
|
return e.source;
|
|
46467
46528
|
},
|
|
46468
46529
|
get children() {
|
|
46469
|
-
var t =
|
|
46530
|
+
var t = i4();
|
|
46470
46531
|
return P(t, () => e.source), t;
|
|
46471
46532
|
}
|
|
46472
46533
|
}), s), P(s, () => e.properties.join(", "), null), P(s, j(M, {
|
|
@@ -46484,20 +46545,29 @@ function s4() {
|
|
|
46484
46545
|
})()
|
|
46485
46546
|
})), e;
|
|
46486
46547
|
})(), (() => {
|
|
46487
|
-
var e =
|
|
46548
|
+
var e = B2();
|
|
46488
46549
|
return P(e, j(kj, {
|
|
46550
|
+
class: "h-6 px-2 text-[11px]",
|
|
46551
|
+
variant: "primary",
|
|
46552
|
+
title: "Report + fix rules, ready to paste into a Claude Code session",
|
|
46553
|
+
onClick: () => void w(),
|
|
46554
|
+
get children() {
|
|
46555
|
+
var e = R2();
|
|
46556
|
+
return P(e, () => S() ? "Copied ✓" : "Copy AI prompt"), e;
|
|
46557
|
+
}
|
|
46558
|
+
}), null), P(e, j(kj, {
|
|
46489
46559
|
class: "h-6 px-2 text-[11px]",
|
|
46490
46560
|
variant: "ghost",
|
|
46491
46561
|
onClick: () => void x(),
|
|
46492
46562
|
get children() {
|
|
46493
|
-
var e =
|
|
46563
|
+
var e = z2();
|
|
46494
46564
|
return P(e, () => v() ? "Copied ✓" : "Copy report"), e;
|
|
46495
46565
|
}
|
|
46496
46566
|
}), null), P(e, j(kj, {
|
|
46497
46567
|
class: "h-6 px-2 text-[11px]",
|
|
46498
46568
|
variant: "ghost",
|
|
46499
46569
|
onClick: T2,
|
|
46500
|
-
children: "Clear
|
|
46570
|
+
children: "Clear all"
|
|
46501
46571
|
}), null), e;
|
|
46502
46572
|
})()];
|
|
46503
46573
|
}
|
|
@@ -46507,7 +46577,7 @@ function s4() {
|
|
|
46507
46577
|
rt(["click"]);
|
|
46508
46578
|
//#endregion
|
|
46509
46579
|
//#region src/lib/projectConfig.ts
|
|
46510
|
-
var
|
|
46580
|
+
var f4 = [
|
|
46511
46581
|
"defaultTeamId",
|
|
46512
46582
|
"defaultProjectId",
|
|
46513
46583
|
"defaultLabelIds",
|
|
@@ -46522,29 +46592,29 @@ var c4 = [
|
|
|
46522
46592
|
"issueTemplate",
|
|
46523
46593
|
"testUsername"
|
|
46524
46594
|
];
|
|
46525
|
-
function
|
|
46595
|
+
function p4(e) {
|
|
46526
46596
|
let t = {};
|
|
46527
|
-
for (let n of
|
|
46597
|
+
for (let n of f4) {
|
|
46528
46598
|
let r = e[n];
|
|
46529
46599
|
r !== void 0 && r !== "" && !(Array.isArray(r) && r.length === 0) && (t[n] = r);
|
|
46530
46600
|
}
|
|
46531
46601
|
return t;
|
|
46532
46602
|
}
|
|
46533
|
-
function
|
|
46603
|
+
function m4(e, t) {
|
|
46534
46604
|
let n = {};
|
|
46535
|
-
for (let r of
|
|
46605
|
+
for (let r of f4) e[r] === void 0 && t[r] !== void 0 && (n[r] = t[r]);
|
|
46536
46606
|
return Object.keys(n).length ? n : null;
|
|
46537
46607
|
}
|
|
46538
46608
|
//#endregion
|
|
46539
46609
|
//#region src/lib/linear/auth.ts
|
|
46540
46610
|
Br();
|
|
46541
|
-
function
|
|
46611
|
+
function h4(e) {
|
|
46542
46612
|
let t = "";
|
|
46543
46613
|
for (let n of e) t += String.fromCharCode(n);
|
|
46544
46614
|
return btoa(t).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
46545
46615
|
}
|
|
46546
|
-
async function
|
|
46547
|
-
let t =
|
|
46616
|
+
async function g4(e) {
|
|
46617
|
+
let t = h4(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(32))), n = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(t)), r = h4(new Uint8Array(n)), i = h4(crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16))), a = chrome.identity.getRedirectURL(), o = new URL("https://linear.app/oauth/authorize");
|
|
46548
46618
|
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");
|
|
46549
46619
|
let s = await chrome.identity.launchWebAuthFlow({
|
|
46550
46620
|
url: o.toString(),
|
|
@@ -46572,15 +46642,15 @@ async function f4(e) {
|
|
|
46572
46642
|
linearOauthClientId: e
|
|
46573
46643
|
});
|
|
46574
46644
|
}
|
|
46575
|
-
async function
|
|
46645
|
+
async function _4() {
|
|
46576
46646
|
await Er({
|
|
46577
46647
|
linearAccessToken: void 0,
|
|
46578
46648
|
linearApiKey: void 0
|
|
46579
46649
|
});
|
|
46580
46650
|
}
|
|
46581
46651
|
Br(), Sr(), Fx(), gD();
|
|
46582
|
-
var
|
|
46583
|
-
function
|
|
46652
|
+
var v4 = /*#__PURE__*/ N("<div class=\"bg-surface-2 border-border flex rounded-md border p-0.5\">"), y4 = /*#__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."), b4 = /*#__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"), x4 = /*#__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)."), S4 = /*#__PURE__*/ N("<span class=text-text>Connected as <span class=font-medium></span> · <span class=text-text-dim>"), C4 = /*#__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]\">"), w4 = /*#__PURE__*/ N("<option value>Select a team…"), T4 = /*#__PURE__*/ N("<option value>No project"), E4 = /*#__PURE__*/ N("<div class=\"flex flex-wrap gap-1\">"), D4 = /*#__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."), O4 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No agents found — install the Cursor integration in Linear first."), k4 = /*#__PURE__*/ N("<span class=\"text-text-faint text-[10.5px] leading-snug\">Empty = the default above (computer-use testing, video demo, PR + review babysitting)."), A4 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-1.5\">"), j4 = /*#__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."), M4 = /*#__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."), N4 = /*#__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."), P4 = /*#__PURE__*/ N("<span class=\"inline-block min-w-[10ch] text-center\">"), F4 = /*#__PURE__*/ N("<div class=\"flex items-center gap-2\">"), I4 = /*#__PURE__*/ N("<option value>Select a channel…"), L4 = /*#__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"), R4 = /*#__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."), z4 = /*#__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"), B4 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">"), V4 = /*#__PURE__*/ N("<div class=min-h-[2lh]>"), H4 = /*#__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."), U4 = /*#__PURE__*/ N("<div class=\"flex h-full flex-col gap-5 overflow-y-auto pt-3 pb-6 pl-3 pr-4\">"), W4 = /*#__PURE__*/ N("<button>"), G4 = /*#__PURE__*/ N("<div class=\"flex gap-1.5\">"), K4 = /*#__PURE__*/ N("<p class=\"text-text-faint text-center text-[10.5px]\">or"), q4 = /*#__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\">"), J4 = /*#__PURE__*/ N("<div class=\"flex flex-col gap-3\">"), Y4 = /*#__PURE__*/ N("<span class=text-text-dim>Connected — verifying…"), X4 = /*#__PURE__*/ N("<option> (<!>)"), Z4 = /*#__PURE__*/ N("<option>"), Q4 = /*#__PURE__*/ N("<button type=button><span class=\"mr-1 inline-block size-2 rounded-full align-middle\">"), $4 = /*#__PURE__*/ N("<option value>Select the agent…"), e3 = /*#__PURE__*/ N("<option>#"), t3 = /*#__PURE__*/ N("<p class=\"text-text-dim text-[11px]\">No key set — AI drafting disabled, manual drafting still works.");
|
|
46653
|
+
function n3() {
|
|
46584
46654
|
let e = sr(), t = _r(() => ({
|
|
46585
46655
|
queryKey: ["settings"],
|
|
46586
46656
|
queryFn: Tr,
|
|
@@ -46608,13 +46678,13 @@ function Q4() {
|
|
|
46608
46678
|
retry: 0
|
|
46609
46679
|
})), [l, u] = T(!1), d = async () => {
|
|
46610
46680
|
try {
|
|
46611
|
-
await navigator.clipboard.writeText(JSON.stringify(
|
|
46681
|
+
await navigator.clipboard.writeText(JSON.stringify(p4(n()), null, 2) + "\n"), u(!0), setTimeout(() => u(!1), 1800);
|
|
46612
46682
|
} catch {}
|
|
46613
46683
|
}, f = () => {
|
|
46614
46684
|
let e = c.data?.projectConfig;
|
|
46615
46685
|
if (!e) return;
|
|
46616
46686
|
let t = {};
|
|
46617
|
-
for (let n of
|
|
46687
|
+
for (let n of f4) e[n] !== void 0 && (t[n] = e[n]);
|
|
46618
46688
|
r(t);
|
|
46619
46689
|
}, p = _r(() => ({
|
|
46620
46690
|
queryKey: ["linear-labels"],
|
|
@@ -46647,7 +46717,7 @@ function Q4() {
|
|
|
46647
46717
|
}
|
|
46648
46718
|
E(!0), ee("");
|
|
46649
46719
|
try {
|
|
46650
|
-
await
|
|
46720
|
+
await g4(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"] });
|
|
46651
46721
|
} catch (e) {
|
|
46652
46722
|
ee(e instanceof Error ? e.message : "OAuth flow failed.");
|
|
46653
46723
|
} finally {
|
|
@@ -46658,7 +46728,7 @@ function Q4() {
|
|
|
46658
46728
|
async function re() {
|
|
46659
46729
|
ne(!0);
|
|
46660
46730
|
try {
|
|
46661
|
-
await
|
|
46731
|
+
await _4(), 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"] });
|
|
46662
46732
|
} finally {
|
|
46663
46733
|
ne(!1);
|
|
46664
46734
|
}
|
|
@@ -46674,12 +46744,12 @@ function Q4() {
|
|
|
46674
46744
|
return e ? `Drafting with ${e} — ${Nx[e].fast} (fast) / ${Nx[e].best} (best)` : null;
|
|
46675
46745
|
});
|
|
46676
46746
|
return (() => {
|
|
46677
|
-
var e =
|
|
46747
|
+
var e = U4();
|
|
46678
46748
|
return P(e, j(Rj, {
|
|
46679
46749
|
title: "Workflow",
|
|
46680
46750
|
get children() {
|
|
46681
46751
|
return [(() => {
|
|
46682
|
-
var e =
|
|
46752
|
+
var e = v4();
|
|
46683
46753
|
return P(e, j(We, {
|
|
46684
46754
|
each: [{
|
|
46685
46755
|
id: "cloud",
|
|
@@ -46689,19 +46759,19 @@ function Q4() {
|
|
|
46689
46759
|
label: "Local · clipboard"
|
|
46690
46760
|
}],
|
|
46691
46761
|
children: (e) => (() => {
|
|
46692
|
-
var t =
|
|
46762
|
+
var t = W4();
|
|
46693
46763
|
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;
|
|
46694
46764
|
})()
|
|
46695
46765
|
})), e;
|
|
46696
|
-
})(),
|
|
46766
|
+
})(), y4()];
|
|
46697
46767
|
}
|
|
46698
46768
|
}), null), P(e, j(Rj, {
|
|
46699
46769
|
title: "Capture",
|
|
46700
46770
|
get children() {
|
|
46701
46771
|
return [(() => {
|
|
46702
|
-
var e =
|
|
46772
|
+
var e = b4(), t = e.firstChild;
|
|
46703
46773
|
return t.addEventListener("change", (e) => void r({ captureShots: e.currentTarget.checked || void 0 })), D(() => t.checked = !!n().captureShots), e;
|
|
46704
|
-
})(),
|
|
46774
|
+
})(), x4()];
|
|
46705
46775
|
}
|
|
46706
46776
|
}), null), P(e, j(Rj, {
|
|
46707
46777
|
title: "Linear",
|
|
@@ -46712,13 +46782,13 @@ function Q4() {
|
|
|
46712
46782
|
},
|
|
46713
46783
|
get fallback() {
|
|
46714
46784
|
return (() => {
|
|
46715
|
-
var e =
|
|
46785
|
+
var e = J4();
|
|
46716
46786
|
return P(e, j(Lj, {
|
|
46717
46787
|
label: "Personal API key",
|
|
46718
46788
|
hint: "Create one at linear.app → Settings → API — fastest path.",
|
|
46719
46789
|
get children() {
|
|
46720
46790
|
return [(() => {
|
|
46721
|
-
var e =
|
|
46791
|
+
var e = G4();
|
|
46722
46792
|
return P(e, j(jj, {
|
|
46723
46793
|
type: "password",
|
|
46724
46794
|
placeholder: "lin_api_…",
|
|
@@ -46755,12 +46825,12 @@ function Q4() {
|
|
|
46755
46825
|
}), null), P(e, j(M, {
|
|
46756
46826
|
when: xr,
|
|
46757
46827
|
get children() {
|
|
46758
|
-
return [
|
|
46828
|
+
return [K4(), j(Lj, {
|
|
46759
46829
|
label: "OAuth client ID",
|
|
46760
46830
|
get children() {
|
|
46761
46831
|
return [
|
|
46762
46832
|
(() => {
|
|
46763
|
-
var e =
|
|
46833
|
+
var e = G4();
|
|
46764
46834
|
return P(e, j(jj, {
|
|
46765
46835
|
placeholder: "your-client-id",
|
|
46766
46836
|
get value() {
|
|
@@ -46788,7 +46858,7 @@ function Q4() {
|
|
|
46788
46858
|
}
|
|
46789
46859
|
}),
|
|
46790
46860
|
(() => {
|
|
46791
|
-
var e =
|
|
46861
|
+
var e = q4(), t = e.firstChild.nextSibling.nextSibling;
|
|
46792
46862
|
return P(t, ie), e;
|
|
46793
46863
|
})()
|
|
46794
46864
|
];
|
|
@@ -46799,13 +46869,13 @@ function Q4() {
|
|
|
46799
46869
|
})();
|
|
46800
46870
|
},
|
|
46801
46871
|
get children() {
|
|
46802
|
-
var e =
|
|
46872
|
+
var e = C4(), t = e.firstChild;
|
|
46803
46873
|
return P(t, j(M, {
|
|
46804
46874
|
get when() {
|
|
46805
46875
|
return !a.isLoading;
|
|
46806
46876
|
},
|
|
46807
46877
|
get fallback() {
|
|
46808
|
-
return
|
|
46878
|
+
return Y4();
|
|
46809
46879
|
},
|
|
46810
46880
|
get children() {
|
|
46811
46881
|
return j(M, {
|
|
@@ -46818,7 +46888,7 @@ function Q4() {
|
|
|
46818
46888
|
return a.isError;
|
|
46819
46889
|
},
|
|
46820
46890
|
get fallback() {
|
|
46821
|
-
return
|
|
46891
|
+
return Y4();
|
|
46822
46892
|
},
|
|
46823
46893
|
get children() {
|
|
46824
46894
|
return j(Hj, { message: "Key rejected — reconnect" });
|
|
@@ -46826,7 +46896,7 @@ function Q4() {
|
|
|
46826
46896
|
});
|
|
46827
46897
|
},
|
|
46828
46898
|
get children() {
|
|
46829
|
-
var e =
|
|
46899
|
+
var e = S4(), t = e.firstChild.nextSibling, n = t.nextSibling.nextSibling;
|
|
46830
46900
|
return P(t, () => a.data.name), P(n, () => a.data.email), e;
|
|
46831
46901
|
}
|
|
46832
46902
|
});
|
|
@@ -46867,7 +46937,7 @@ function Q4() {
|
|
|
46867
46937
|
return o.isLoading;
|
|
46868
46938
|
},
|
|
46869
46939
|
get children() {
|
|
46870
|
-
return [
|
|
46940
|
+
return [w4(), j(M, {
|
|
46871
46941
|
get when() {
|
|
46872
46942
|
return o.data;
|
|
46873
46943
|
},
|
|
@@ -46877,7 +46947,7 @@ function Q4() {
|
|
|
46877
46947
|
return o.data;
|
|
46878
46948
|
},
|
|
46879
46949
|
children: (e) => (() => {
|
|
46880
|
-
var t =
|
|
46950
|
+
var t = X4(), r = t.firstChild, i = r.nextSibling;
|
|
46881
46951
|
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;
|
|
46882
46952
|
})()
|
|
46883
46953
|
});
|
|
@@ -46901,14 +46971,14 @@ function Q4() {
|
|
|
46901
46971
|
},
|
|
46902
46972
|
get children() {
|
|
46903
46973
|
return [(() => {
|
|
46904
|
-
var e =
|
|
46974
|
+
var e = T4();
|
|
46905
46975
|
return D(() => e.selected = !n().defaultProjectId), e;
|
|
46906
46976
|
})(), j(We, {
|
|
46907
46977
|
get each() {
|
|
46908
46978
|
return s.data ?? [];
|
|
46909
46979
|
},
|
|
46910
46980
|
children: (e) => (() => {
|
|
46911
|
-
var t =
|
|
46981
|
+
var t = Z4();
|
|
46912
46982
|
return P(t, () => e.name), D(() => t.selected = e.id === n().defaultProjectId), D(() => t.value = e.id), t;
|
|
46913
46983
|
})()
|
|
46914
46984
|
})];
|
|
@@ -46920,7 +46990,7 @@ function Q4() {
|
|
|
46920
46990
|
label: "Default labels",
|
|
46921
46991
|
hint: "Applied to every issue created from the panel.",
|
|
46922
46992
|
get children() {
|
|
46923
|
-
var e =
|
|
46993
|
+
var e = E4();
|
|
46924
46994
|
return P(e, j(We, {
|
|
46925
46995
|
get each() {
|
|
46926
46996
|
return p.data ?? [];
|
|
@@ -46928,7 +46998,7 @@ function Q4() {
|
|
|
46928
46998
|
children: (e) => {
|
|
46929
46999
|
let t = () => (n().defaultLabelIds ?? []).includes(e.id);
|
|
46930
47000
|
return (() => {
|
|
46931
|
-
var i =
|
|
47001
|
+
var i = Q4(), a = i.firstChild;
|
|
46932
47002
|
return i.$$click = () => {
|
|
46933
47003
|
let i = n().defaultLabelIds ?? [];
|
|
46934
47004
|
r({ defaultLabelIds: t() ? i.filter((t) => t !== e.id) : [...i, e.id] });
|
|
@@ -46945,7 +47015,7 @@ function Q4() {
|
|
|
46945
47015
|
}
|
|
46946
47016
|
}),
|
|
46947
47017
|
(() => {
|
|
46948
|
-
var e =
|
|
47018
|
+
var e = D4(), t = e.firstChild;
|
|
46949
47019
|
return t.addEventListener("change", (e) => void r({ shareLinearKey: e.currentTarget.checked })), D(() => t.checked = !!n().shareLinearKey), e;
|
|
46950
47020
|
})(),
|
|
46951
47021
|
j(Lj, {
|
|
@@ -46995,7 +47065,7 @@ function Q4() {
|
|
|
46995
47065
|
return m.isLoading;
|
|
46996
47066
|
},
|
|
46997
47067
|
get children() {
|
|
46998
|
-
return [
|
|
47068
|
+
return [$4(), j(M, {
|
|
46999
47069
|
get when() {
|
|
47000
47070
|
return m.data;
|
|
47001
47071
|
},
|
|
@@ -47005,7 +47075,7 @@ function Q4() {
|
|
|
47005
47075
|
return m.data;
|
|
47006
47076
|
},
|
|
47007
47077
|
children: (e) => (() => {
|
|
47008
|
-
var t =
|
|
47078
|
+
var t = Z4();
|
|
47009
47079
|
return P(t, () => e.displayName), D(() => t.selected = e.id === n().cursorAgentId), D(() => t.value = e.id), t;
|
|
47010
47080
|
})()
|
|
47011
47081
|
});
|
|
@@ -47015,7 +47085,7 @@ function Q4() {
|
|
|
47015
47085
|
});
|
|
47016
47086
|
},
|
|
47017
47087
|
get children() {
|
|
47018
|
-
return
|
|
47088
|
+
return O4();
|
|
47019
47089
|
}
|
|
47020
47090
|
});
|
|
47021
47091
|
}
|
|
@@ -47063,7 +47133,7 @@ function Q4() {
|
|
|
47063
47133
|
onBlur: (e) => {
|
|
47064
47134
|
r({ issueTemplate: e.currentTarget.value.trim() || void 0 });
|
|
47065
47135
|
}
|
|
47066
|
-
}),
|
|
47136
|
+
}), k4()];
|
|
47067
47137
|
}
|
|
47068
47138
|
}),
|
|
47069
47139
|
j(Lj, {
|
|
@@ -47120,7 +47190,7 @@ function Q4() {
|
|
|
47120
47190
|
label: "Test account",
|
|
47121
47191
|
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.",
|
|
47122
47192
|
get children() {
|
|
47123
|
-
var e =
|
|
47193
|
+
var e = A4();
|
|
47124
47194
|
return P(e, j(jj, {
|
|
47125
47195
|
placeholder: "Username or email (e.g. demo@yourapp.com)",
|
|
47126
47196
|
get value() {
|
|
@@ -47152,7 +47222,7 @@ function Q4() {
|
|
|
47152
47222
|
title: "Panel",
|
|
47153
47223
|
get children() {
|
|
47154
47224
|
return [(() => {
|
|
47155
|
-
var e =
|
|
47225
|
+
var e = j4(), t = e.firstChild.nextSibling;
|
|
47156
47226
|
return P(t, j(We, {
|
|
47157
47227
|
each: [{
|
|
47158
47228
|
id: "overlay",
|
|
@@ -47162,7 +47232,7 @@ function Q4() {
|
|
|
47162
47232
|
label: "Beside page"
|
|
47163
47233
|
}],
|
|
47164
47234
|
children: (e) => (() => {
|
|
47165
|
-
var t =
|
|
47235
|
+
var t = W4();
|
|
47166
47236
|
return t.$$click = () => void r({
|
|
47167
47237
|
panelMode: e.id,
|
|
47168
47238
|
panelPos: void 0
|
|
@@ -47170,11 +47240,11 @@ function Q4() {
|
|
|
47170
47240
|
})()
|
|
47171
47241
|
})), e;
|
|
47172
47242
|
})(), (() => {
|
|
47173
|
-
var e =
|
|
47243
|
+
var e = M4(), t = e.firstChild.nextSibling;
|
|
47174
47244
|
return P(t, j(We, {
|
|
47175
47245
|
each: ["left", "right"],
|
|
47176
47246
|
children: (e) => (() => {
|
|
47177
|
-
var t =
|
|
47247
|
+
var t = W4();
|
|
47178
47248
|
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;
|
|
47179
47249
|
})()
|
|
47180
47250
|
})), e;
|
|
@@ -47204,8 +47274,8 @@ function Q4() {
|
|
|
47204
47274
|
}), null), P(e, j(Rj, {
|
|
47205
47275
|
title: "Project config (.lineargrab.json)",
|
|
47206
47276
|
get children() {
|
|
47207
|
-
return [
|
|
47208
|
-
var e =
|
|
47277
|
+
return [N4(), (() => {
|
|
47278
|
+
var e = F4();
|
|
47209
47279
|
return P(e, j(M, {
|
|
47210
47280
|
get when() {
|
|
47211
47281
|
return c.data?.projectConfig;
|
|
@@ -47236,7 +47306,7 @@ function Q4() {
|
|
|
47236
47306
|
},
|
|
47237
47307
|
onClick: () => void d(),
|
|
47238
47308
|
get children() {
|
|
47239
|
-
var e =
|
|
47309
|
+
var e = P4();
|
|
47240
47310
|
return P(e, () => l() ? "Copied ✓" : "Copy config"), e;
|
|
47241
47311
|
}
|
|
47242
47312
|
}), null), e;
|
|
@@ -47327,12 +47397,12 @@ function Q4() {
|
|
|
47327
47397
|
});
|
|
47328
47398
|
},
|
|
47329
47399
|
get children() {
|
|
47330
|
-
return [
|
|
47400
|
+
return [I4(), j(We, {
|
|
47331
47401
|
get each() {
|
|
47332
47402
|
return ae.data ?? [];
|
|
47333
47403
|
},
|
|
47334
47404
|
children: (e) => (() => {
|
|
47335
|
-
var t =
|
|
47405
|
+
var t = e3();
|
|
47336
47406
|
return t.firstChild, P(t, () => e.name, null), D(() => t.selected = e.id === n().slackChannelId), D(() => t.value = e.id), t;
|
|
47337
47407
|
})()
|
|
47338
47408
|
})];
|
|
@@ -47383,10 +47453,10 @@ function Q4() {
|
|
|
47383
47453
|
}
|
|
47384
47454
|
}),
|
|
47385
47455
|
(() => {
|
|
47386
|
-
var e =
|
|
47456
|
+
var e = L4(), t = e.firstChild;
|
|
47387
47457
|
return t.addEventListener("change", (e) => void r({ notifyOnCreate: e.currentTarget.checked ? void 0 : !1 })), D(() => t.checked = n().notifyOnCreate !== !1), e;
|
|
47388
47458
|
})(),
|
|
47389
|
-
|
|
47459
|
+
R4()
|
|
47390
47460
|
];
|
|
47391
47461
|
}
|
|
47392
47462
|
}), null), P(e, j(Rj, {
|
|
@@ -47424,7 +47494,7 @@ function Q4() {
|
|
|
47424
47494
|
}
|
|
47425
47495
|
}),
|
|
47426
47496
|
(() => {
|
|
47427
|
-
var e =
|
|
47497
|
+
var e = z4(), t = e.firstChild.nextSibling.firstChild, i = t.nextSibling, a = i.nextSibling;
|
|
47428
47498
|
return t.$$click = () => void r({ preferredProvider: void 0 }), i.$$click = () => void r({ preferredProvider: "openai" }), a.$$click = () => void r({ preferredProvider: "anthropic" }), D((e) => {
|
|
47429
47499
|
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;
|
|
47430
47500
|
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;
|
|
@@ -47437,16 +47507,16 @@ function Q4() {
|
|
|
47437
47507
|
}), e;
|
|
47438
47508
|
})(),
|
|
47439
47509
|
(() => {
|
|
47440
|
-
var e =
|
|
47510
|
+
var e = V4();
|
|
47441
47511
|
return P(e, j(M, {
|
|
47442
47512
|
get when() {
|
|
47443
47513
|
return se();
|
|
47444
47514
|
},
|
|
47445
47515
|
get fallback() {
|
|
47446
|
-
return
|
|
47516
|
+
return t3();
|
|
47447
47517
|
},
|
|
47448
47518
|
get children() {
|
|
47449
|
-
var e =
|
|
47519
|
+
var e = B4();
|
|
47450
47520
|
return P(e, se), e;
|
|
47451
47521
|
}
|
|
47452
47522
|
})), e;
|
|
@@ -47456,7 +47526,7 @@ function Q4() {
|
|
|
47456
47526
|
}), null), P(e, j(Rj, {
|
|
47457
47527
|
title: "How it works",
|
|
47458
47528
|
get children() {
|
|
47459
|
-
return
|
|
47529
|
+
return H4();
|
|
47460
47530
|
}
|
|
47461
47531
|
}), null), e;
|
|
47462
47532
|
})();
|
|
@@ -47464,38 +47534,38 @@ function Q4() {
|
|
|
47464
47534
|
rt(["click"]);
|
|
47465
47535
|
//#endregion
|
|
47466
47536
|
//#region src/lib/idbCache.ts
|
|
47467
|
-
var
|
|
47537
|
+
var r3 = "linear-grab", i3 = "queries", a3 = [
|
|
47468
47538
|
"my-issues",
|
|
47469
47539
|
"issue",
|
|
47470
47540
|
"sessions",
|
|
47471
47541
|
"teams",
|
|
47472
47542
|
"agents"
|
|
47473
47543
|
];
|
|
47474
|
-
function
|
|
47544
|
+
function o3() {
|
|
47475
47545
|
return new Promise((e) => {
|
|
47476
47546
|
try {
|
|
47477
|
-
let t = indexedDB.open(
|
|
47478
|
-
t.onupgradeneeded = () => t.result.createObjectStore(
|
|
47547
|
+
let t = indexedDB.open(r3, 1);
|
|
47548
|
+
t.onupgradeneeded = () => t.result.createObjectStore(i3), t.onsuccess = () => e(t.result), t.onerror = () => e(null);
|
|
47479
47549
|
} catch {
|
|
47480
47550
|
e(null);
|
|
47481
47551
|
}
|
|
47482
47552
|
});
|
|
47483
47553
|
}
|
|
47484
|
-
function
|
|
47485
|
-
return typeof e[0] == "string" &&
|
|
47554
|
+
function s3(e) {
|
|
47555
|
+
return typeof e[0] == "string" && a3.includes(e[0]);
|
|
47486
47556
|
}
|
|
47487
|
-
async function
|
|
47488
|
-
let t = await
|
|
47557
|
+
async function c3(e) {
|
|
47558
|
+
let t = await o3();
|
|
47489
47559
|
if (!t) return () => {};
|
|
47490
47560
|
await new Promise((n) => {
|
|
47491
47561
|
try {
|
|
47492
|
-
let r = t.transaction(
|
|
47562
|
+
let r = t.transaction(i3, "readonly").objectStore(i3).openCursor();
|
|
47493
47563
|
r.onsuccess = () => {
|
|
47494
47564
|
let t = r.result;
|
|
47495
47565
|
if (!t) return n();
|
|
47496
47566
|
try {
|
|
47497
47567
|
let { queryKey: n, data: r } = t.value;
|
|
47498
|
-
|
|
47568
|
+
s3(n) && e.getQueryData(n) === void 0 && e.setQueryData(n, r, { updatedAt: 0 });
|
|
47499
47569
|
} catch {}
|
|
47500
47570
|
t.continue();
|
|
47501
47571
|
}, r.onerror = () => n();
|
|
@@ -47506,14 +47576,14 @@ async function i3(e) {
|
|
|
47506
47576
|
let n = /* @__PURE__ */ new Map(), r = e.getQueryCache().subscribe((r) => {
|
|
47507
47577
|
if (r.type !== "updated" || r.action.type !== "success") return;
|
|
47508
47578
|
let { queryKey: i, queryHash: a } = r.query;
|
|
47509
|
-
if (!
|
|
47579
|
+
if (!s3(i)) return;
|
|
47510
47580
|
let o = n.get(a);
|
|
47511
47581
|
o && clearTimeout(o), n.set(a, setTimeout(() => {
|
|
47512
47582
|
n.delete(a);
|
|
47513
47583
|
try {
|
|
47514
47584
|
let n = e.getQueryData(i);
|
|
47515
47585
|
if (n === void 0) return;
|
|
47516
|
-
t.transaction(
|
|
47586
|
+
t.transaction(i3, "readwrite").objectStore(i3).put({
|
|
47517
47587
|
queryKey: i,
|
|
47518
47588
|
data: n
|
|
47519
47589
|
}, a);
|
|
@@ -47529,7 +47599,7 @@ async function i3(e) {
|
|
|
47529
47599
|
//#endregion
|
|
47530
47600
|
//#region src/panel/App.tsx
|
|
47531
47601
|
Br();
|
|
47532
|
-
var
|
|
47602
|
+
var l3 = /*#__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\">"), u3 = /*#__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\">"), d3 = /*#__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\">–"), f3 = /*#__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>"), p3 = /*#__PURE__*/ N("<button>"), m3 = [
|
|
47533
47603
|
{
|
|
47534
47604
|
id: "draft",
|
|
47535
47605
|
label: "Draft"
|
|
@@ -47566,35 +47636,35 @@ var a3 = /*#__PURE__*/ N("<svg viewBox=\"0 0 100 100\"fill=currentColor aria-hid
|
|
|
47566
47636
|
id: "settings",
|
|
47567
47637
|
label: "Settings"
|
|
47568
47638
|
}
|
|
47569
|
-
],
|
|
47570
|
-
function
|
|
47571
|
-
if (
|
|
47572
|
-
|
|
47639
|
+
], h3 = /* @__PURE__ */ new Set();
|
|
47640
|
+
function g3(e, t, n) {
|
|
47641
|
+
if (h3.has(e) || typeof Notification > "u") return;
|
|
47642
|
+
h3.add(e);
|
|
47573
47643
|
let r = () => new Notification(t, { body: n });
|
|
47574
47644
|
Notification.permission === "granted" ? r() : Notification.permission === "default" && Notification.requestPermission().then((e) => e === "granted" && r());
|
|
47575
47645
|
}
|
|
47576
|
-
function
|
|
47646
|
+
function _3() {
|
|
47577
47647
|
setInterval(() => {
|
|
47578
47648
|
NO().then((e) => {
|
|
47579
47649
|
for (let t of e) {
|
|
47580
47650
|
if (t.status !== "running") continue;
|
|
47581
47651
|
let e = t.lastEventAt ?? t.startedAt;
|
|
47582
|
-
Date.now() - e > 10 * 6e4 &&
|
|
47652
|
+
Date.now() - e > 10 * 6e4 && g3(`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.`);
|
|
47583
47653
|
}
|
|
47584
47654
|
}).catch(() => {}), gO().then((e) => {
|
|
47585
|
-
for (let t of e) /awaitingInput|elicit/i.test(t.status) &&
|
|
47655
|
+
for (let t of e) /awaitingInput|elicit/i.test(t.status) && g3(`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.`);
|
|
47586
47656
|
}).catch(() => {});
|
|
47587
47657
|
}, 6e4);
|
|
47588
47658
|
}
|
|
47589
|
-
|
|
47590
|
-
var
|
|
47659
|
+
_3();
|
|
47660
|
+
var v3 = new gr({ defaultOptions: { queries: {
|
|
47591
47661
|
retry: 1,
|
|
47592
47662
|
refetchOnWindowFocus: !1,
|
|
47593
47663
|
staleTime: 5e3
|
|
47594
47664
|
} } });
|
|
47595
|
-
function
|
|
47665
|
+
function y3(e) {
|
|
47596
47666
|
return (() => {
|
|
47597
|
-
var t =
|
|
47667
|
+
var t = l3();
|
|
47598
47668
|
return D((n) => {
|
|
47599
47669
|
var r = e.size ?? 14, i = e.size ?? 14;
|
|
47600
47670
|
return r !== n.e && it(t, "width", n.e = r), i !== n.t && it(t, "height", n.t = i), n;
|
|
@@ -47604,36 +47674,36 @@ function h3(e) {
|
|
|
47604
47674
|
}), t;
|
|
47605
47675
|
})();
|
|
47606
47676
|
}
|
|
47607
|
-
function
|
|
47677
|
+
function b3(e) {
|
|
47608
47678
|
let [t, n] = T("draft"), r = () => {
|
|
47609
|
-
|
|
47679
|
+
v3.invalidateQueries({ queryKey: ["grab"] }), cj() === "capture" && n("capture"), e.onGrab?.();
|
|
47610
47680
|
};
|
|
47611
47681
|
return O(() => {
|
|
47612
47682
|
let e = nj();
|
|
47613
47683
|
e && n(e);
|
|
47614
47684
|
}), ie(() => {
|
|
47615
|
-
let e =
|
|
47685
|
+
let e = c3(v3), t = XZ(r), n = () => {
|
|
47616
47686
|
JO().then(y$), VO(), MO().then(async (e) => {
|
|
47617
47687
|
if (!e.projectConfig) return;
|
|
47618
|
-
let t =
|
|
47688
|
+
let t = m4(await Tr(), e.projectConfig);
|
|
47619
47689
|
t && await Er(t);
|
|
47620
47690
|
}).catch(() => {});
|
|
47621
47691
|
};
|
|
47622
47692
|
n();
|
|
47623
47693
|
let i = Mr((e) => {
|
|
47624
|
-
e === "settings" && (
|
|
47694
|
+
e === "settings" && (v3.invalidateQueries({ queryKey: ["settings"] }), n()), e === "grab" && r();
|
|
47625
47695
|
});
|
|
47626
47696
|
ae(() => {
|
|
47627
47697
|
t(), i(), e.then((e) => e());
|
|
47628
47698
|
});
|
|
47629
47699
|
}), j(cr, {
|
|
47630
|
-
client:
|
|
47700
|
+
client: v3,
|
|
47631
47701
|
get children() {
|
|
47632
|
-
var r =
|
|
47633
|
-
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(
|
|
47634
|
-
each:
|
|
47702
|
+
var r = f3(), 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;
|
|
47703
|
+
return i.$$pointerdown = (t) => e.onHeaderPointerDown?.(t), P(a, j(y3, { size: 14 })), P(o, j(We, {
|
|
47704
|
+
each: m3,
|
|
47635
47705
|
children: (e) => (() => {
|
|
47636
|
-
var r =
|
|
47706
|
+
var r = p3();
|
|
47637
47707
|
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;
|
|
47638
47708
|
})()
|
|
47639
47709
|
})), P(i, j(M, {
|
|
@@ -47641,7 +47711,7 @@ function g3(e) {
|
|
|
47641
47711
|
return e.onTogglePin;
|
|
47642
47712
|
},
|
|
47643
47713
|
get children() {
|
|
47644
|
-
var t =
|
|
47714
|
+
var t = u3();
|
|
47645
47715
|
return t.$$click = () => e.onTogglePin?.(), D((n) => {
|
|
47646
47716
|
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"}`;
|
|
47647
47717
|
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;
|
|
@@ -47656,10 +47726,10 @@ function g3(e) {
|
|
|
47656
47726
|
return e.onClose;
|
|
47657
47727
|
},
|
|
47658
47728
|
get children() {
|
|
47659
|
-
var t =
|
|
47729
|
+
var t = d3();
|
|
47660
47730
|
return t.$$click = () => e.onClose?.(), t;
|
|
47661
47731
|
}
|
|
47662
|
-
}), 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(
|
|
47732
|
+
}), 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(d4, {})), P(h, j(n3, {})), D((n) => {
|
|
47663
47733
|
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";
|
|
47664
47734
|
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;
|
|
47665
47735
|
}, {
|
|
@@ -47680,12 +47750,12 @@ function g3(e) {
|
|
|
47680
47750
|
rt(["pointerdown", "click"]);
|
|
47681
47751
|
//#endregion
|
|
47682
47752
|
//#region src/styles/app.css?inline
|
|
47683
|
-
var _3 = "/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial}}}@layer theme{:root,:host{--font-sans:\"Inter\", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif;--font-mono:ui-monospace, \"SF Mono\", Menlo, monospace;--color-red-500:oklch(63.7% .237 25.331);--color-white:#fff;--spacing:.25rem;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#0b0c0e;--color-surface:#141517;--color-surface-2:#1c1d21;--color-surface-3:#24262b;--color-border:#26282d;--color-border-strong:#34363d;--color-text:#e8e9eb;--color-text-dim:#8b8e98;--color-text-faint:#5c5f6a;--color-accent:#5e6ad2;--color-accent-hover:#6e79e0;--color-accent-soft:#5e6ad226;--color-success:#4cb782;--color-warn:#f2c94c;--color-danger:#eb5757;--color-danger-soft:#eb575726}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.visible\\!{visibility:visible!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-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-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\\=…\\]\\: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}}";
|
|
47753
|
+
var x3 = "/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial}}}@layer theme{:root,:host{--font-sans:\"Inter\", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif;--font-mono:ui-monospace, \"SF Mono\", Menlo, monospace;--color-red-500:oklch(63.7% .237 25.331);--color-white:#fff;--spacing:.25rem;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#0b0c0e;--color-surface:#141517;--color-surface-2:#1c1d21;--color-surface-3:#24262b;--color-border:#26282d;--color-border-strong:#34363d;--color-text:#e8e9eb;--color-text-dim:#8b8e98;--color-text-faint:#5c5f6a;--color-accent:#5e6ad2;--color-accent-hover:#6e79e0;--color-accent-soft:#5e6ad226;--color-success:#4cb782;--color-warn:#f2c94c;--color-danger:#eb5757;--color-danger-soft:#eb575726}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.visible\\!{visibility:visible!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-0\\.5{top:calc(var(--spacing) * .5)}.top-1{top:var(--spacing)}.top-1\\/2{top:50%}.top-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-\\[11ch\\]{min-width:11ch}.min-w-\\[12ch\\]{min-width:12ch}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[52px\\]{min-width:52px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\\[5px\\]{gap:5px}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[5px\\]{border-radius:5px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-accent{border-color:var(--color-accent)}.border-accent\\/40{border-color:#5e6ad266}@supports (color:color-mix(in lab, red, red)){.border-accent\\/40{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.border-border{border-color:var(--color-border)}.border-success{border-color:var(--color-success)}.border-success\\/40{border-color:#4cb78266}@supports (color:color-mix(in lab, red, red)){.border-success\\/40{border-color:color-mix(in oklab, var(--color-success) 40%, transparent)}}.border-text-dim{border-color:var(--color-text-dim)}.border-transparent{border-color:#0000}.border-warn{border-color:var(--color-warn)}.border-warn\\/40{border-color:#f2c94c66}@supports (color:color-mix(in lab, red, red)){.border-warn\\/40{border-color:color-mix(in oklab, var(--color-warn) 40%, transparent)}}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.border-t-transparent{border-top-color:#0000}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-bg\\/80{background-color:#0b0c0ecc}@supports (color:color-mix(in lab, red, red)){.bg-bg\\/80{background-color:color-mix(in oklab, var(--color-bg) 80%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--color-danger)}.bg-danger-soft{background-color:var(--color-danger-soft)}.bg-red-500{background-color:var(--color-red-500)}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-text-faint{background-color:var(--color-text-faint)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--color-warn)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\\.5{padding:calc(var(--spacing) * 2.5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:0}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:var(--spacing)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:0}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:var(--spacing)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-px{padding-block:1px}.pt-0{padding-top:0}.pt-0\\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:var(--spacing)}.pr-1\\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-1{padding-bottom:var(--spacing)}.pb-1\\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.pl-0\\.5{padding-left:calc(var(--spacing) * .5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9\\.5px\\]{font-size:9.5px}.text-\\[9px\\]{font-size:9px}.text-\\[10\\.5px\\]{font-size:10.5px}.text-\\[10px\\]{font-size:10px}.text-\\[11\\.5px\\]{font-size:11.5px}.text-\\[11px\\]{font-size:11px}.text-\\[12\\.5px\\]{font-size:12.5px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.text-\\[15px\\]{font-size:15px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-faint{color:var(--color-text-faint)}.text-warn{color:var(--color-warn)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}.group-open\\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-text-faint::placeholder{color:var(--color-text-faint)}@media (hover:hover){.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\\:bg-accent\\/50:hover{background-color:#5e6ad280}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-accent\\/50:hover{background-color:color-mix(in oklab, var(--color-accent) 50%, transparent)}}.hover\\:bg-danger\\/30:hover{background-color:#eb57574d}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-danger\\/30:hover{background-color:color-mix(in oklab, var(--color-danger) 30%, transparent)}}.hover\\:bg-surface-2:hover{background-color:var(--color-surface-2)}.hover\\:bg-surface-3:hover{background-color:var(--color-surface-3)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}.hover\\:text-accent:hover{color:var(--color-accent)}.hover\\:text-danger:hover{color:var(--color-danger)}.hover\\:text-text:hover{color:var(--color-text)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-80:hover{opacity:.8}}.focus\\:border-accent:focus{border-color:var(--color-accent)}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-accent:active{background-color:var(--color-accent)}.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}}";
|
|
47684
47754
|
//#endregion
|
|
47685
47755
|
//#region src/page/index.tsx
|
|
47686
47756
|
Br();
|
|
47687
|
-
var
|
|
47688
|
-
function
|
|
47757
|
+
var S3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-danger size-2 shrink-0 animate-pulse rounded-full\">"), C3 = /*#__PURE__*/ N("<span class=\"text-text min-w-[5ch] text-[11px] font-medium tabular-nums\">"), w3 = /*#__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"), T3 = /*#__PURE__*/ N("<p class=\"text-warn px-1.5 pt-1 pb-1.5 text-[10.5px] font-semibold tracking-wide uppercase\">Needs review"), E3 = /*#__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"), D3 = /*#__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\">"), O3 = /*#__PURE__*/ N("<div><div title=\"Drag to resize\">"), k3 = /*#__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\">"), A3 = /*#__PURE__*/ N("<span class=\"bg-border h-4 w-px\"aria-hidden>"), j3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-warn size-2 rounded-full\">"), M3 = /*#__PURE__*/ N("<span class=\"text-warn min-w-[3.5ch] text-left text-[11px] font-medium tabular-nums\"> rev"), N3 = /*#__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>"), P3 = /*#__PURE__*/ N("<span aria-hidden class=\"bg-accent size-2 shrink-0 animate-pulse rounded-full\">"), F3 = /*#__PURE__*/ N("<span class=\"text-text min-w-[3ch] text-[11px] font-medium tabular-nums\">s"), I3 = /*#__PURE__*/ N("<span class=\"text-text-dim min-w-[7ch] text-[11px] tabular-nums\"> states"), L3 = /*#__PURE__*/ N("<p class=\"text-text-faint px-1.5 pb-1.5 text-[11.5px]\">No agents running right now."), R3 = /*#__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\"> · <!> · ");
|
|
47758
|
+
function z3(e = {}) {
|
|
47689
47759
|
if (typeof window > "u" || window.__LINEAR_GRAB_PAGE__) return;
|
|
47690
47760
|
window.__LINEAR_GRAB_PAGE__ = !0;
|
|
47691
47761
|
let t = () => {
|
|
@@ -47717,17 +47787,17 @@ function F3(e = {}) {
|
|
|
47717
47787
|
"keypress"
|
|
47718
47788
|
]) window.addEventListener(e, n, { capture: !0 });
|
|
47719
47789
|
let r = t.attachShadow({ mode: "open" }), i = document.createElement("style");
|
|
47720
|
-
i.textContent =
|
|
47790
|
+
i.textContent = x3, r.appendChild(i);
|
|
47721
47791
|
let a = document.createElement("div");
|
|
47722
47792
|
r.appendChild(a);
|
|
47723
|
-
let o = () => a.setAttribute("data-theme",
|
|
47724
|
-
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(
|
|
47793
|
+
let o = () => a.setAttribute("data-theme", B3());
|
|
47794
|
+
o(), matchMedia("(prefers-color-scheme: light)").addEventListener("change", o), nt(() => j(K3, { get defaultOpen() {
|
|
47725
47795
|
return e.defaultOpen ?? !1;
|
|
47726
47796
|
} }), a);
|
|
47727
47797
|
};
|
|
47728
47798
|
document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
|
|
47729
47799
|
}
|
|
47730
|
-
function
|
|
47800
|
+
function B3() {
|
|
47731
47801
|
try {
|
|
47732
47802
|
let e = [document.body, document.documentElement];
|
|
47733
47803
|
for (let t of e) {
|
|
@@ -47737,11 +47807,11 @@ function I3() {
|
|
|
47737
47807
|
} catch {}
|
|
47738
47808
|
return matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
|
47739
47809
|
}
|
|
47740
|
-
var
|
|
47741
|
-
function
|
|
47810
|
+
var V3 = 130, H3 = 36, U3 = 380, W3 = 280, G3 = 720;
|
|
47811
|
+
function K3(e) {
|
|
47742
47812
|
let [t, n] = T(e.defaultOpen), [r, i] = T("right"), [a, o] = T({
|
|
47743
|
-
x: Math.max(8, window.innerWidth -
|
|
47744
|
-
y: Math.max(8, window.innerHeight -
|
|
47813
|
+
x: Math.max(8, window.innerWidth - V3 - 24),
|
|
47814
|
+
y: Math.max(8, window.innerHeight - H3 - 20)
|
|
47745
47815
|
}), [s, c] = T({
|
|
47746
47816
|
running: [],
|
|
47747
47817
|
review: []
|
|
@@ -47761,12 +47831,12 @@ function H3(e) {
|
|
|
47761
47831
|
let t = Math.floor(e / 1e3);
|
|
47762
47832
|
return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
47763
47833
|
}, [b, x] = T(null), S = (e) => ({
|
|
47764
|
-
x: Math.min(Math.max(8, e.x), window.innerWidth -
|
|
47765
|
-
y: Math.min(Math.max(8, e.y), window.innerHeight -
|
|
47834
|
+
x: Math.min(Math.max(8, e.x), window.innerWidth - V3 - 8),
|
|
47835
|
+
y: Math.min(Math.max(8, e.y), window.innerHeight - H3 - 8)
|
|
47766
47836
|
}), C = (e) => ({
|
|
47767
47837
|
x: Math.min(Math.max(8 - (ne() - 80), e.x), window.innerWidth - 80),
|
|
47768
47838
|
y: Math.min(Math.max(0, e.y), window.innerHeight - 80)
|
|
47769
|
-
}), [w, E] = T(!1), [k, ee] = T("cloud"), [te, A] = T(!1), [ne, re] = T(
|
|
47839
|
+
}), [w, E] = T(!1), [k, ee] = T("cloud"), [te, A] = T(!1), [ne, re] = T(U3), oe = (e) => Math.min(G3, Math.max(W3, Math.min(e, window.innerWidth - 60)));
|
|
47770
47840
|
O(() => {
|
|
47771
47841
|
let e = document.documentElement, n = t() && w();
|
|
47772
47842
|
e.style.transition = "margin 0.2s ease", e.style.marginRight = n && r() === "right" ? `${ne()}px` : "", e.style.marginLeft = n && r() === "left" ? `${ne()}px` : "";
|
|
@@ -47880,7 +47950,7 @@ function H3(e) {
|
|
|
47880
47950
|
return !t();
|
|
47881
47951
|
},
|
|
47882
47952
|
get children() {
|
|
47883
|
-
var e =
|
|
47953
|
+
var e = D3(), t = e.firstChild;
|
|
47884
47954
|
return t.$$click = () => {
|
|
47885
47955
|
ce || p() === "recording" || h().active || (f(!1), n(!0));
|
|
47886
47956
|
}, t.$$pointerdown = le, P(t, j(M, {
|
|
@@ -47890,14 +47960,14 @@ function H3(e) {
|
|
|
47890
47960
|
get fallback() {
|
|
47891
47961
|
return [
|
|
47892
47962
|
(() => {
|
|
47893
|
-
var e =
|
|
47963
|
+
var e = k3();
|
|
47894
47964
|
return e.$$click = () => {
|
|
47895
47965
|
ce || (f(!1), n(!0));
|
|
47896
|
-
}, P(e, j(
|
|
47966
|
+
}, P(e, j(y3, { size: 13 })), e;
|
|
47897
47967
|
})(),
|
|
47898
|
-
|
|
47968
|
+
A3(),
|
|
47899
47969
|
(() => {
|
|
47900
|
-
var e =
|
|
47970
|
+
var e = N3(), t = e.firstChild, n = t.nextSibling;
|
|
47901
47971
|
return e.$$click = (e) => {
|
|
47902
47972
|
e.stopPropagation(), !ce && f((e) => !e);
|
|
47903
47973
|
}, P(n, (() => {
|
|
@@ -47908,8 +47978,8 @@ function H3(e) {
|
|
|
47908
47978
|
return $e(() => !te())() && u().length > 0;
|
|
47909
47979
|
},
|
|
47910
47980
|
get children() {
|
|
47911
|
-
return [
|
|
47912
|
-
var e =
|
|
47981
|
+
return [j3(), (() => {
|
|
47982
|
+
var e = M3(), t = e.firstChild;
|
|
47913
47983
|
return P(e, () => u().length, t), e;
|
|
47914
47984
|
})()];
|
|
47915
47985
|
}
|
|
@@ -47930,17 +48000,17 @@ function H3(e) {
|
|
|
47930
48000
|
},
|
|
47931
48001
|
get fallback() {
|
|
47932
48002
|
return [
|
|
47933
|
-
|
|
48003
|
+
P3(),
|
|
47934
48004
|
(() => {
|
|
47935
|
-
var e =
|
|
48005
|
+
var e = F3(), t = e.firstChild;
|
|
47936
48006
|
return P(e, () => Math.ceil(h().msLeft / 1e3), t), e;
|
|
47937
48007
|
})(),
|
|
47938
48008
|
(() => {
|
|
47939
|
-
var e =
|
|
48009
|
+
var e = I3(), t = e.firstChild;
|
|
47940
48010
|
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;
|
|
47941
48011
|
})(),
|
|
47942
48012
|
(() => {
|
|
47943
|
-
var e =
|
|
48013
|
+
var e = w3();
|
|
47944
48014
|
return e.$$click = (e) => {
|
|
47945
48015
|
e.stopPropagation(), !ce && o2();
|
|
47946
48016
|
}, e;
|
|
@@ -47949,13 +48019,13 @@ function H3(e) {
|
|
|
47949
48019
|
},
|
|
47950
48020
|
get children() {
|
|
47951
48021
|
return [
|
|
47952
|
-
|
|
48022
|
+
S3(),
|
|
47953
48023
|
(() => {
|
|
47954
|
-
var e =
|
|
48024
|
+
var e = C3();
|
|
47955
48025
|
return P(e, () => y(_())), e;
|
|
47956
48026
|
})(),
|
|
47957
48027
|
(() => {
|
|
47958
|
-
var e =
|
|
48028
|
+
var e = w3();
|
|
47959
48029
|
return e.$$click = () => {
|
|
47960
48030
|
ce || eO();
|
|
47961
48031
|
}, e;
|
|
@@ -47969,17 +48039,17 @@ function H3(e) {
|
|
|
47969
48039
|
return d();
|
|
47970
48040
|
},
|
|
47971
48041
|
get children() {
|
|
47972
|
-
var e =
|
|
48042
|
+
var e = E3(), t = e.firstChild;
|
|
47973
48043
|
return P(e, j(M, {
|
|
47974
48044
|
get when() {
|
|
47975
48045
|
return u().length > 0;
|
|
47976
48046
|
},
|
|
47977
48047
|
get children() {
|
|
47978
|
-
return [
|
|
48048
|
+
return [T3(), j(We, {
|
|
47979
48049
|
get each() {
|
|
47980
48050
|
return u();
|
|
47981
48051
|
},
|
|
47982
|
-
children: (e) => j(
|
|
48052
|
+
children: (e) => j(q3, {
|
|
47983
48053
|
agent: e,
|
|
47984
48054
|
review: !0,
|
|
47985
48055
|
onOpen: de
|
|
@@ -47991,14 +48061,14 @@ function H3(e) {
|
|
|
47991
48061
|
return l().length > 0;
|
|
47992
48062
|
},
|
|
47993
48063
|
get fallback() {
|
|
47994
|
-
return
|
|
48064
|
+
return L3();
|
|
47995
48065
|
},
|
|
47996
48066
|
get children() {
|
|
47997
48067
|
return j(We, {
|
|
47998
48068
|
get each() {
|
|
47999
48069
|
return l();
|
|
48000
48070
|
},
|
|
48001
|
-
children: (e) => j(
|
|
48071
|
+
children: (e) => j(q3, {
|
|
48002
48072
|
agent: e,
|
|
48003
48073
|
onOpen: de
|
|
48004
48074
|
})
|
|
@@ -48019,8 +48089,8 @@ function H3(e) {
|
|
|
48019
48089
|
return t();
|
|
48020
48090
|
},
|
|
48021
48091
|
get children() {
|
|
48022
|
-
var e =
|
|
48023
|
-
return t.$$pointerdown = fe, P(e, j(
|
|
48092
|
+
var e = O3(), t = e.firstChild;
|
|
48093
|
+
return t.$$pointerdown = fe, P(e, j(b3, {
|
|
48024
48094
|
onGrab: () => n(!0),
|
|
48025
48095
|
onClose: () => n(!1),
|
|
48026
48096
|
get onHeaderPointerDown() {
|
|
@@ -48048,19 +48118,19 @@ function H3(e) {
|
|
|
48048
48118
|
}
|
|
48049
48119
|
})];
|
|
48050
48120
|
}
|
|
48051
|
-
function
|
|
48121
|
+
function q3(e) {
|
|
48052
48122
|
return (() => {
|
|
48053
|
-
var t =
|
|
48123
|
+
var t = R3(), n = t.firstChild, r = n.firstChild, i = r.nextSibling, a = i.nextSibling, o = n.nextSibling, s = o.firstChild, c = s.nextSibling;
|
|
48054
48124
|
return c.nextSibling, t.$$click = () => e.onOpen(e.agent.id), P(i, () => e.agent.identifier), P(a, () => e.agent.title), P(o, (() => {
|
|
48055
48125
|
var t = $e(() => !!e.review);
|
|
48056
48126
|
return () => t() ? "PR ready · needs review" : e.agent.stateName;
|
|
48057
|
-
})(), s), P(o, () => e.agent.delegateName, c), P(o, () =>
|
|
48127
|
+
})(), s), P(o, () => e.agent.delegateName, c), P(o, () => J3(e.agent.updatedAt), null), D((t) => dt(r, "background", e.review ? "var(--color-warn)" : e.agent.stateColor)), t;
|
|
48058
48128
|
})();
|
|
48059
48129
|
}
|
|
48060
|
-
function
|
|
48130
|
+
function J3(e) {
|
|
48061
48131
|
let t = Math.max(0, Math.floor((Date.now() - Date.parse(e)) / 1e3));
|
|
48062
48132
|
return t < 60 ? "now" : t < 3600 ? `${Math.floor(t / 60)}m` : t < 86400 ? `${Math.floor(t / 3600)}h` : `${Math.floor(t / 86400)}d`;
|
|
48063
48133
|
}
|
|
48064
48134
|
rt(["pointerdown", "click"]);
|
|
48065
48135
|
//#endregion
|
|
48066
|
-
export {
|
|
48136
|
+
export { z3 as init };
|