@concavejs/devtools 0.0.1-alpha.6 → 0.0.1-alpha.7
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/{client-B2IPTPCG.js → client-B-Tg1Mm1.js} +953 -906
- package/dist/client.js +1 -1
- package/dist/index.js +2 -2
- package/dist/overlay/utils.d.ts +14 -0
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsxs as n, jsx as t, Fragment as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { jsxs as n, jsx as t, Fragment as X } from "react/jsx-runtime";
|
|
2
|
+
import se from "react-dom";
|
|
3
|
+
import le, { useState as L, useMemo as it, useRef as ft, useEffect as U, useCallback as F } from "react";
|
|
4
4
|
let mt = null;
|
|
5
|
-
function
|
|
5
|
+
function Jt() {
|
|
6
6
|
if (mt !== null) return mt;
|
|
7
7
|
try {
|
|
8
8
|
const o = "__concave_test__";
|
|
@@ -12,34 +12,34 @@ function Vt() {
|
|
|
12
12
|
}
|
|
13
13
|
return mt;
|
|
14
14
|
}
|
|
15
|
-
function
|
|
16
|
-
if (!
|
|
15
|
+
function jt(o) {
|
|
16
|
+
if (!Jt()) return null;
|
|
17
17
|
try {
|
|
18
18
|
return localStorage.getItem(o);
|
|
19
19
|
} catch {
|
|
20
20
|
return null;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
function
|
|
24
|
-
if (
|
|
23
|
+
function Rt(o, r) {
|
|
24
|
+
if (Jt())
|
|
25
25
|
try {
|
|
26
26
|
localStorage.setItem(o, r);
|
|
27
27
|
} catch {
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
function
|
|
31
|
-
if (
|
|
30
|
+
function Wt(o) {
|
|
31
|
+
if (Jt())
|
|
32
32
|
try {
|
|
33
33
|
localStorage.removeItem(o);
|
|
34
34
|
} catch {
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
const
|
|
38
|
-
version:
|
|
39
|
-
},
|
|
40
|
-
|
|
41
|
-
const
|
|
42
|
-
class
|
|
37
|
+
const de = "0.0.1-alpha.6", Gt = {
|
|
38
|
+
version: de
|
|
39
|
+
}, ne = Gt.version.length > 0 ? Gt.version : "0.0.0", ae = ne;
|
|
40
|
+
ne.split("-")[0];
|
|
41
|
+
const ce = "concave-devtools-events", pe = "concave-devtools-settings", Xt = 200;
|
|
42
|
+
class Mt {
|
|
43
43
|
events = [];
|
|
44
44
|
maxEvents;
|
|
45
45
|
listeners = /* @__PURE__ */ new Set();
|
|
@@ -67,15 +67,15 @@ class St {
|
|
|
67
67
|
static MAX_EVENTS = 1e4;
|
|
68
68
|
constructor(r = 1e3, a = "global") {
|
|
69
69
|
const s = typeof r == "number" ? { maxEvents: r, storageScope: a } : r, l = (s.storageScope ?? "global").trim() || "global";
|
|
70
|
-
this.storageKey = `${
|
|
70
|
+
this.storageKey = `${ce}:${l}`, this.settingsKey = `${pe}:${l}`, this.persistenceEnabled = s.enablePersistence !== !1, this.maxEvents = s.maxEvents ?? 1e3, this.persistenceEnabled || (this.settings.persistEvents = !1), this.loadSettings(), this.persistenceEnabled || (this.settings.persistEvents = !1), this.loadPersistedEvents();
|
|
71
71
|
}
|
|
72
72
|
/**
|
|
73
73
|
* Add an event to the store
|
|
74
74
|
*/
|
|
75
75
|
addEvent(r) {
|
|
76
76
|
if (!this.isPaused && !(r.type === "log" && !this.settings.captureLogLines) && !this.recentEventIds.has(r.id)) {
|
|
77
|
-
if (this.recentEventIds.add(r.id), this.recentEventIds.size >
|
|
78
|
-
const a = this.recentEventIds.size -
|
|
77
|
+
if (this.recentEventIds.add(r.id), this.recentEventIds.size > Xt) {
|
|
78
|
+
const a = this.recentEventIds.size - Xt, s = this.recentEventIds.values();
|
|
79
79
|
for (let l = 0; l < a; l++)
|
|
80
80
|
this.recentEventIds.delete(s.next().value);
|
|
81
81
|
}
|
|
@@ -168,70 +168,70 @@ class St {
|
|
|
168
168
|
*/
|
|
169
169
|
getPerformanceMetrics() {
|
|
170
170
|
const r = (x) => {
|
|
171
|
-
const
|
|
172
|
-
return !Number.isFinite(
|
|
171
|
+
const f = typeof x == "number" ? x : typeof x == "string" ? Number(x) : Number.NaN;
|
|
172
|
+
return !Number.isFinite(f) || f < 0 ? null : f;
|
|
173
173
|
}, a = (x) => {
|
|
174
|
-
const
|
|
175
|
-
for (const
|
|
176
|
-
if (
|
|
177
|
-
const
|
|
178
|
-
|
|
174
|
+
const f = [];
|
|
175
|
+
for (const m of x) {
|
|
176
|
+
if (m.status !== "success") continue;
|
|
177
|
+
const g = r(m.endToEndDurationMs ?? m.duration);
|
|
178
|
+
g !== null && f.push({ event: m, duration: g });
|
|
179
179
|
}
|
|
180
|
-
return
|
|
181
|
-
}, s = a(this.getEventsByType("query")), l = a(this.getEventsByType("mutation")), u = a(this.getEventsByType("action")), c = (x) => x.length === 0 ? 0 : x.reduce((
|
|
180
|
+
return f;
|
|
181
|
+
}, s = a(this.getEventsByType("query")), l = a(this.getEventsByType("mutation")), u = a(this.getEventsByType("action")), c = (x) => x.length === 0 ? 0 : x.reduce((m, g) => m + g, 0) / x.length, b = (x, f) => {
|
|
182
182
|
if (x.length === 0) return 0;
|
|
183
|
-
const
|
|
184
|
-
return
|
|
185
|
-
},
|
|
186
|
-
...s.map(({ event: x, duration:
|
|
183
|
+
const m = [...x].sort(($, I) => $ - I), g = Math.floor(m.length * f);
|
|
184
|
+
return m[Math.min(g, m.length - 1)] || 0;
|
|
185
|
+
}, N = [
|
|
186
|
+
...s.map(({ event: x, duration: f }) => ({
|
|
187
187
|
type: "query",
|
|
188
188
|
eventId: x.id,
|
|
189
189
|
udfPath: x.udfPath,
|
|
190
|
-
duration:
|
|
190
|
+
duration: f,
|
|
191
191
|
timestamp: x.timestamp
|
|
192
192
|
})),
|
|
193
|
-
...l.map(({ event: x, duration:
|
|
193
|
+
...l.map(({ event: x, duration: f }) => ({
|
|
194
194
|
type: "mutation",
|
|
195
195
|
eventId: x.id,
|
|
196
196
|
udfPath: x.udfPath,
|
|
197
|
-
duration:
|
|
197
|
+
duration: f,
|
|
198
198
|
timestamp: x.timestamp
|
|
199
199
|
})),
|
|
200
|
-
...u.map(({ event: x, duration:
|
|
200
|
+
...u.map(({ event: x, duration: f }) => ({
|
|
201
201
|
type: "action",
|
|
202
202
|
eventId: x.id,
|
|
203
203
|
udfPath: x.udfPath,
|
|
204
|
-
duration:
|
|
204
|
+
duration: f,
|
|
205
205
|
timestamp: x.timestamp
|
|
206
206
|
}))
|
|
207
|
-
].sort((x,
|
|
207
|
+
].sort((x, f) => f.duration - x.duration).slice(0, 10), y = s.map(({ duration: x }) => x), D = l.map(({ duration: x }) => x), h = u.map(({ duration: x }) => x);
|
|
208
208
|
return {
|
|
209
209
|
totalQueries: s.length,
|
|
210
210
|
totalMutations: l.length,
|
|
211
211
|
totalActions: u.length,
|
|
212
|
-
avgQueryDuration: c(
|
|
213
|
-
avgMutationDuration: c(
|
|
212
|
+
avgQueryDuration: c(y),
|
|
213
|
+
avgMutationDuration: c(D),
|
|
214
214
|
avgActionDuration: c(h),
|
|
215
|
-
p50QueryDuration:
|
|
216
|
-
p50MutationDuration:
|
|
217
|
-
p50ActionDuration:
|
|
218
|
-
p90QueryDuration:
|
|
219
|
-
p90MutationDuration:
|
|
220
|
-
p90ActionDuration:
|
|
221
|
-
p95QueryDuration:
|
|
222
|
-
p95MutationDuration:
|
|
223
|
-
p95ActionDuration:
|
|
224
|
-
p99QueryDuration:
|
|
225
|
-
p99MutationDuration:
|
|
226
|
-
p99ActionDuration:
|
|
227
|
-
slowestOperations:
|
|
215
|
+
p50QueryDuration: b(y, 0.5),
|
|
216
|
+
p50MutationDuration: b(D, 0.5),
|
|
217
|
+
p50ActionDuration: b(h, 0.5),
|
|
218
|
+
p90QueryDuration: b(y, 0.9),
|
|
219
|
+
p90MutationDuration: b(D, 0.9),
|
|
220
|
+
p90ActionDuration: b(h, 0.9),
|
|
221
|
+
p95QueryDuration: b(y, 0.95),
|
|
222
|
+
p95MutationDuration: b(D, 0.95),
|
|
223
|
+
p95ActionDuration: b(h, 0.95),
|
|
224
|
+
p99QueryDuration: b(y, 0.99),
|
|
225
|
+
p99MutationDuration: b(D, 0.99),
|
|
226
|
+
p99ActionDuration: b(h, 0.99),
|
|
227
|
+
slowestOperations: N
|
|
228
228
|
};
|
|
229
229
|
}
|
|
230
230
|
/**
|
|
231
231
|
* Clear all events
|
|
232
232
|
*/
|
|
233
233
|
clear() {
|
|
234
|
-
this.events = [], this.subscriptions.clear(), this.snapshots = [], this.setFocusedEventId(null), this.recentEventIds.clear(),
|
|
234
|
+
this.events = [], this.subscriptions.clear(), this.snapshots = [], this.setFocusedEventId(null), this.recentEventIds.clear(), Wt(this.storageKey), this.listeners.forEach((r) => {
|
|
235
235
|
r({
|
|
236
236
|
id: "clear",
|
|
237
237
|
timestamp: Date.now(),
|
|
@@ -296,7 +296,7 @@ class St {
|
|
|
296
296
|
*/
|
|
297
297
|
exportSession() {
|
|
298
298
|
return {
|
|
299
|
-
version:
|
|
299
|
+
version: ae,
|
|
300
300
|
exportedAt: Date.now(),
|
|
301
301
|
events: [...this.events],
|
|
302
302
|
subscriptions: Array.from(this.subscriptions.entries()),
|
|
@@ -338,7 +338,7 @@ class St {
|
|
|
338
338
|
saveSettings(r) {
|
|
339
339
|
this.settings = { ...this.settings, ...r }, this.persistenceEnabled || (this.settings.persistEvents = !1);
|
|
340
340
|
const a = this.normalizeMaxEvents(this.settings.maxEvents);
|
|
341
|
-
this.settings.maxEvents !== a && (this.settings.maxEvents = a), a !== this.maxEvents && (this.maxEvents = a), this.events.length > this.maxEvents && (this.events = this.events.slice(-this.maxEvents)), this.syncLatencyConfig(), this.persistenceEnabled &&
|
|
341
|
+
this.settings.maxEvents !== a && (this.settings.maxEvents = a), a !== this.maxEvents && (this.maxEvents = a), this.events.length > this.maxEvents && (this.events = this.events.slice(-this.maxEvents)), this.syncLatencyConfig(), this.persistenceEnabled && Rt(this.settingsKey, JSON.stringify(this.settings)), this.notifySettingsChanged();
|
|
342
342
|
}
|
|
343
343
|
/**
|
|
344
344
|
* Get settings
|
|
@@ -358,7 +358,7 @@ class St {
|
|
|
358
358
|
loadSettings() {
|
|
359
359
|
if (this.persistenceEnabled) {
|
|
360
360
|
try {
|
|
361
|
-
const r =
|
|
361
|
+
const r = jt(this.settingsKey);
|
|
362
362
|
r && (this.settings = { ...this.settings, ...JSON.parse(r) }, this.maxEvents = this.normalizeMaxEvents(this.settings.maxEvents), this.settings.maxEvents = this.maxEvents);
|
|
363
363
|
} catch (r) {
|
|
364
364
|
console.warn("[DevTools] Failed to load settings:", r);
|
|
@@ -392,7 +392,7 @@ class St {
|
|
|
392
392
|
if (!(!this.persistenceEnabled || !this.settings.persistEvents))
|
|
393
393
|
try {
|
|
394
394
|
const r = this.events.slice(-100);
|
|
395
|
-
|
|
395
|
+
Rt(this.storageKey, JSON.stringify(r));
|
|
396
396
|
} catch (r) {
|
|
397
397
|
console.warn("[DevTools] Failed to persist events:", r);
|
|
398
398
|
}
|
|
@@ -403,13 +403,13 @@ class St {
|
|
|
403
403
|
loadPersistedEvents() {
|
|
404
404
|
if (!(!this.persistenceEnabled || !this.settings.persistEvents))
|
|
405
405
|
try {
|
|
406
|
-
const r =
|
|
406
|
+
const r = jt(this.storageKey);
|
|
407
407
|
if (r) {
|
|
408
408
|
const a = this.sanitizeEvents(JSON.parse(r));
|
|
409
409
|
this.events = a.slice(-this.maxEvents);
|
|
410
410
|
}
|
|
411
411
|
} catch (r) {
|
|
412
|
-
console.warn("[DevTools] Failed to load persisted events:", r),
|
|
412
|
+
console.warn("[DevTools] Failed to load persisted events:", r), Wt(this.storageKey);
|
|
413
413
|
}
|
|
414
414
|
}
|
|
415
415
|
/**
|
|
@@ -440,7 +440,7 @@ class St {
|
|
|
440
440
|
if (!Number.isFinite(a))
|
|
441
441
|
return 1e3;
|
|
442
442
|
const s = Math.round(a);
|
|
443
|
-
return Math.min(
|
|
443
|
+
return Math.min(Mt.MAX_EVENTS, Math.max(Mt.MIN_EVENTS, s));
|
|
444
444
|
}
|
|
445
445
|
isOperationEvent(r) {
|
|
446
446
|
return r.type === "query" || r.type === "mutation" || r.type === "action";
|
|
@@ -455,18 +455,18 @@ class St {
|
|
|
455
455
|
this.isTerminalOperationEvent(r) && this.events.length !== 0 && (this.events = this.events.filter((a) => !this.isMatchingPendingOperation(a, r)));
|
|
456
456
|
}
|
|
457
457
|
}
|
|
458
|
-
let
|
|
459
|
-
function
|
|
460
|
-
return
|
|
458
|
+
let Tt = null;
|
|
459
|
+
function ue() {
|
|
460
|
+
return Tt || (Tt = new Mt()), Tt;
|
|
461
461
|
}
|
|
462
|
-
const
|
|
463
|
-
function
|
|
462
|
+
const xe = "#f97316", he = 6, be = "M16 6 Q 9.2 13.3 8 22 Q 16 19 24 22 Q 22.8 13.3 16 6 Z";
|
|
463
|
+
function P(o) {
|
|
464
464
|
const r = document.featurePolicy ?? document.permissionsPolicy;
|
|
465
|
-
(r ? r.allowsFeature("clipboard-write") : !0) && navigator.clipboard?.writeText ? navigator.clipboard.writeText(o).then(
|
|
466
|
-
|
|
467
|
-
}) : (
|
|
465
|
+
(r ? r.allowsFeature("clipboard-write") : !0) && navigator.clipboard?.writeText ? navigator.clipboard.writeText(o).then(zt, () => {
|
|
466
|
+
Yt(o), zt();
|
|
467
|
+
}) : (Yt(o), zt());
|
|
468
468
|
}
|
|
469
|
-
function
|
|
469
|
+
function zt() {
|
|
470
470
|
const o = document.createElement("div");
|
|
471
471
|
o.textContent = "Copied!", o.style.cssText = "position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:99999999;padding:4px 12px;border-radius:6px;font:500 11px/1.4 system-ui,sans-serif;color:#e4e4e7;background:rgba(39,39,42,0.95);border:1px solid rgba(63,63,70,0.6);box-shadow:0 4px 12px rgba(0,0,0,0.4);pointer-events:none;animation:dt-fade-in 0.15s ease-out;opacity:1;transition:opacity 0.2s;", document.body.appendChild(o), setTimeout(() => {
|
|
472
472
|
o.style.opacity = "0";
|
|
@@ -474,7 +474,7 @@ function Tt() {
|
|
|
474
474
|
o.remove();
|
|
475
475
|
}, 800);
|
|
476
476
|
}
|
|
477
|
-
function
|
|
477
|
+
function Yt(o) {
|
|
478
478
|
const r = document.createElement("textarea");
|
|
479
479
|
r.value = o, r.style.cssText = "position:fixed;opacity:0;pointer-events:none;", document.body.appendChild(r), r.select();
|
|
480
480
|
try {
|
|
@@ -483,17 +483,24 @@ function Xt(o) {
|
|
|
483
483
|
}
|
|
484
484
|
document.body.removeChild(r);
|
|
485
485
|
}
|
|
486
|
+
function $t() {
|
|
487
|
+
const o = document.getElementById("concave-devtools-host");
|
|
488
|
+
return o ? document.activeElement === o || o.contains(document.activeElement) : !1;
|
|
489
|
+
}
|
|
490
|
+
function ie() {
|
|
491
|
+
return document.getElementById("concave-devtools-host")?.shadowRoot?.activeElement ?? null;
|
|
492
|
+
}
|
|
486
493
|
function lt(o) {
|
|
487
494
|
return Array.isArray(o) && o.length === 1 ? o[0] : o;
|
|
488
495
|
}
|
|
489
|
-
const
|
|
496
|
+
const me = {
|
|
490
497
|
maxStringLength: 40,
|
|
491
498
|
stringTailLength: 10,
|
|
492
499
|
maxArrayItems: 2,
|
|
493
500
|
maxObjectEntries: 2,
|
|
494
501
|
maxDepth: 2
|
|
495
502
|
};
|
|
496
|
-
function
|
|
503
|
+
function ge(o, r, a) {
|
|
497
504
|
if (o.length <= r)
|
|
498
505
|
return o;
|
|
499
506
|
const s = Math.max(12, r), l = Math.max(
|
|
@@ -504,13 +511,13 @@ function be(o, r, a) {
|
|
|
504
511
|
}
|
|
505
512
|
function wt(o, r = {}, a = 0) {
|
|
506
513
|
const s = {
|
|
507
|
-
...
|
|
514
|
+
...me,
|
|
508
515
|
...r
|
|
509
516
|
};
|
|
510
517
|
if (o === null) return "null";
|
|
511
518
|
if (o === void 0) return "undefined";
|
|
512
519
|
if (typeof o == "string")
|
|
513
|
-
return `"${
|
|
520
|
+
return `"${ge(
|
|
514
521
|
o,
|
|
515
522
|
s.maxStringLength,
|
|
516
523
|
s.stringTailLength
|
|
@@ -527,7 +534,7 @@ function wt(o, r = {}, a = 0) {
|
|
|
527
534
|
const l = Object.entries(o);
|
|
528
535
|
if (l.length === 0) return "{}";
|
|
529
536
|
if (a >= s.maxDepth) return "{…}";
|
|
530
|
-
const u = l.slice(0, s.maxObjectEntries).map(([
|
|
537
|
+
const u = l.slice(0, s.maxObjectEntries).map(([b, N]) => `${b}: ${wt(N, s, a + 1)}`), c = l.length > s.maxObjectEntries ? ", …" : "";
|
|
531
538
|
return `{${u.join(", ")}${c}}`;
|
|
532
539
|
}
|
|
533
540
|
return String(o);
|
|
@@ -546,35 +553,35 @@ function gt({
|
|
|
546
553
|
onCopy: a,
|
|
547
554
|
maxHeight: s = 300
|
|
548
555
|
}) {
|
|
549
|
-
const [l, u] =
|
|
550
|
-
|
|
556
|
+
const [l, u] = L(!0), [c, b] = L("tree"), [N, y] = L(""), D = () => {
|
|
557
|
+
P(JSON.stringify(o, null, 2)), a?.();
|
|
551
558
|
}, h = it(() => JSON.stringify(o, null, 2), [o]), x = it(() => {
|
|
552
|
-
if (!
|
|
553
|
-
const
|
|
554
|
-
function
|
|
555
|
-
if (
|
|
556
|
-
"null".includes(
|
|
559
|
+
if (!N) return null;
|
|
560
|
+
const m = /* @__PURE__ */ new Set(), g = N.toLowerCase();
|
|
561
|
+
function $(I, T) {
|
|
562
|
+
if (I === null) {
|
|
563
|
+
"null".includes(g) && m.add(T);
|
|
557
564
|
return;
|
|
558
565
|
}
|
|
559
|
-
if (typeof
|
|
560
|
-
String(
|
|
566
|
+
if (typeof I == "string" || typeof I == "number" || typeof I == "boolean") {
|
|
567
|
+
String(I).toLowerCase().includes(g) && m.add(T);
|
|
561
568
|
return;
|
|
562
569
|
}
|
|
563
|
-
if (Array.isArray(
|
|
564
|
-
for (let
|
|
565
|
-
const
|
|
566
|
-
|
|
570
|
+
if (Array.isArray(I)) {
|
|
571
|
+
for (let E = 0; E < I.length; E++) {
|
|
572
|
+
const z = `${T}[${E}]`;
|
|
573
|
+
$(I[E], z);
|
|
567
574
|
}
|
|
568
575
|
return;
|
|
569
576
|
}
|
|
570
|
-
if (typeof
|
|
571
|
-
for (const [
|
|
572
|
-
const
|
|
573
|
-
|
|
577
|
+
if (typeof I == "object")
|
|
578
|
+
for (const [E, z] of Object.entries(I)) {
|
|
579
|
+
const O = `${T}.${E}`;
|
|
580
|
+
E.toLowerCase().includes(g) && m.add(O), $(z, O);
|
|
574
581
|
}
|
|
575
582
|
}
|
|
576
|
-
return
|
|
577
|
-
}, [o,
|
|
583
|
+
return $(o, "$"), m;
|
|
584
|
+
}, [o, N]), f = x?.size ?? 0;
|
|
578
585
|
return /* @__PURE__ */ n("div", { className: "flex flex-col gap-1 text-[12px]", role: "region", "aria-label": r || "Data Inspector", children: [
|
|
579
586
|
r && /* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
580
587
|
/* @__PURE__ */ n(
|
|
@@ -596,7 +603,7 @@ function gt({
|
|
|
596
603
|
"button",
|
|
597
604
|
{
|
|
598
605
|
className: `px-1.5 py-0.5 text-[10px] bg-transparent border border-transparent rounded cursor-pointer transition-all ${c === "tree" ? "bg-white/10 text-dt-text-secondary border-dt-border-light" : "text-dt-text-muted hover:text-dt-text-tertiary"}`,
|
|
599
|
-
onClick: () =>
|
|
606
|
+
onClick: () => b("tree"),
|
|
600
607
|
title: "Tree view",
|
|
601
608
|
"aria-label": "Tree view",
|
|
602
609
|
"aria-pressed": c === "tree",
|
|
@@ -607,7 +614,7 @@ function gt({
|
|
|
607
614
|
"button",
|
|
608
615
|
{
|
|
609
616
|
className: `px-1.5 py-0.5 text-[10px] bg-transparent border border-transparent rounded cursor-pointer transition-all ${c === "raw" ? "bg-white/10 text-dt-text-secondary border-dt-border-light" : "text-dt-text-muted hover:text-dt-text-tertiary"}`,
|
|
610
|
-
onClick: () =>
|
|
617
|
+
onClick: () => b("raw"),
|
|
611
618
|
title: "Raw JSON",
|
|
612
619
|
"aria-label": "Raw JSON view",
|
|
613
620
|
"aria-pressed": c === "raw",
|
|
@@ -618,7 +625,7 @@ function gt({
|
|
|
618
625
|
"button",
|
|
619
626
|
{
|
|
620
627
|
className: "p-0.5 bg-transparent border-none text-dt-text-muted cursor-pointer rounded hover:text-dt-text-tertiary transition-colors text-[12px]",
|
|
621
|
-
onClick:
|
|
628
|
+
onClick: D,
|
|
622
629
|
title: "Copy JSON",
|
|
623
630
|
"aria-label": "Copy JSON to clipboard",
|
|
624
631
|
children: /* @__PURE__ */ n("svg", { width: "12", height: "12", viewBox: "0 0 16 16", fill: "currentColor", children: [
|
|
@@ -637,21 +644,21 @@ function gt({
|
|
|
637
644
|
type: "text",
|
|
638
645
|
className: "flex-1 bg-transparent border-none text-[10px] font-mono text-dt-text-secondary placeholder-dt-text-muted/40 outline-none",
|
|
639
646
|
placeholder: "Filter...",
|
|
640
|
-
value:
|
|
641
|
-
onChange: (
|
|
647
|
+
value: N,
|
|
648
|
+
onChange: (m) => y(m.target.value)
|
|
642
649
|
}
|
|
643
650
|
),
|
|
644
|
-
|
|
651
|
+
N && /* @__PURE__ */ n(X, { children: [
|
|
645
652
|
/* @__PURE__ */ n("span", { className: "text-[9px] text-dt-text-muted/60 font-mono", children: [
|
|
646
|
-
|
|
653
|
+
f,
|
|
647
654
|
" match",
|
|
648
|
-
|
|
655
|
+
f !== 1 ? "es" : ""
|
|
649
656
|
] }),
|
|
650
657
|
/* @__PURE__ */ t(
|
|
651
658
|
"button",
|
|
652
659
|
{
|
|
653
660
|
className: "bg-transparent border-none text-dt-text-muted cursor-pointer text-[10px] p-0 hover:text-dt-text-secondary",
|
|
654
|
-
onClick: () =>
|
|
661
|
+
onClick: () => y(""),
|
|
655
662
|
"aria-label": "Clear search",
|
|
656
663
|
children: "×"
|
|
657
664
|
}
|
|
@@ -666,36 +673,36 @@ function gt({
|
|
|
666
673
|
style: { maxHeight: s },
|
|
667
674
|
role: "region",
|
|
668
675
|
"aria-label": `${r || "Data"} content`,
|
|
669
|
-
children: c === "tree" ? /* @__PURE__ */ t(
|
|
676
|
+
children: c === "tree" ? /* @__PURE__ */ t(Ft, { data: o, matchingPaths: x, searchTerm: N }) : /* @__PURE__ */ t("pre", { className: "text-dt-text-muted whitespace-pre-wrap break-all m-0", "aria-readonly": "true", children: N ? /* @__PURE__ */ t(fe, { text: h, term: N }) : h })
|
|
670
677
|
}
|
|
671
678
|
)
|
|
672
679
|
] })
|
|
673
680
|
] });
|
|
674
681
|
}
|
|
675
|
-
function
|
|
676
|
-
if (!r) return /* @__PURE__ */ t(
|
|
682
|
+
function fe({ text: o, term: r }) {
|
|
683
|
+
if (!r) return /* @__PURE__ */ t(X, { children: o });
|
|
677
684
|
const a = [], s = o.toLowerCase(), l = r.toLowerCase();
|
|
678
|
-
let u = 0, c = s.indexOf(l, u),
|
|
685
|
+
let u = 0, c = s.indexOf(l, u), b = 0;
|
|
679
686
|
for (; c !== -1; )
|
|
680
687
|
c > u && a.push(o.slice(u, c)), a.push(
|
|
681
|
-
/* @__PURE__ */ t("mark", { className: "bg-yellow-400/30 text-yellow-200 rounded-sm px-px", children: o.slice(c, c + r.length) },
|
|
688
|
+
/* @__PURE__ */ t("mark", { className: "bg-yellow-400/30 text-yellow-200 rounded-sm px-px", children: o.slice(c, c + r.length) }, b++)
|
|
682
689
|
), u = c + r.length, c = s.indexOf(l, u);
|
|
683
|
-
return u < o.length && a.push(o.slice(u)), /* @__PURE__ */ t(
|
|
690
|
+
return u < o.length && a.push(o.slice(u)), /* @__PURE__ */ t(X, { children: a });
|
|
684
691
|
}
|
|
685
|
-
function
|
|
686
|
-
const u = s ?
|
|
692
|
+
function Ft({ data: o, depth: r = 0, path: a = "$", matchingPaths: s, searchTerm: l }) {
|
|
693
|
+
const u = s ? qt(a, s) : !1, [c, b] = L(r < 2), N = s?.has(a) ?? !1, y = c || !!s && u;
|
|
687
694
|
if (o === null)
|
|
688
|
-
return /* @__PURE__ */ t("span", { className: `italic ${
|
|
695
|
+
return /* @__PURE__ */ t("span", { className: `italic ${N ? "bg-yellow-400/25 rounded-sm px-0.5 text-yellow-200" : "text-dt-text-muted"}`, children: "null" });
|
|
689
696
|
if (typeof o == "string")
|
|
690
|
-
return /* @__PURE__ */ n("span", { className:
|
|
697
|
+
return /* @__PURE__ */ n("span", { className: N ? "bg-yellow-400/25 rounded-sm px-0.5 text-yellow-200" : "text-dt-success", children: [
|
|
691
698
|
'"',
|
|
692
|
-
l ? /* @__PURE__ */ t(
|
|
699
|
+
l ? /* @__PURE__ */ t(Zt, { text: o, term: l }) : o,
|
|
693
700
|
'"'
|
|
694
701
|
] });
|
|
695
702
|
if (typeof o == "number")
|
|
696
|
-
return /* @__PURE__ */ t("span", { className:
|
|
703
|
+
return /* @__PURE__ */ t("span", { className: N ? "bg-yellow-400/25 rounded-sm px-0.5 text-yellow-200" : "text-dt-query", children: o });
|
|
697
704
|
if (typeof o == "boolean")
|
|
698
|
-
return /* @__PURE__ */ t("span", { className:
|
|
705
|
+
return /* @__PURE__ */ t("span", { className: N ? "bg-yellow-400/25 rounded-sm px-0.5 text-yellow-200" : "text-dt-mutation", children: o.toString() });
|
|
699
706
|
if (Array.isArray(o))
|
|
700
707
|
return o.length === 0 ? /* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "[]" }) : /* @__PURE__ */ n("div", { className: "inline", children: [
|
|
701
708
|
/* @__PURE__ */ n(
|
|
@@ -703,68 +710,68 @@ function Rt({ data: o, depth: r = 0, path: a = "$", matchingPaths: s, searchTerm
|
|
|
703
710
|
{
|
|
704
711
|
type: "button",
|
|
705
712
|
className: "bg-transparent border-none cursor-pointer p-0 text-inherit font-inherit inline-flex items-center gap-0.5",
|
|
706
|
-
onClick: () =>
|
|
707
|
-
"aria-expanded":
|
|
708
|
-
"aria-label": `${
|
|
713
|
+
onClick: () => b(!y),
|
|
714
|
+
"aria-expanded": y,
|
|
715
|
+
"aria-label": `${y ? "Collapse" : "Expand"} array with ${o.length} items`,
|
|
709
716
|
children: [
|
|
710
|
-
/* @__PURE__ */ t("span", { className: `text-[10px] transition-transform inline-block ${
|
|
717
|
+
/* @__PURE__ */ t("span", { className: `text-[10px] transition-transform inline-block ${y ? "rotate-90" : ""}`, "aria-hidden": "true", children: "▶" }),
|
|
711
718
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "[" }),
|
|
712
|
-
!
|
|
719
|
+
!y && /* @__PURE__ */ n("span", { className: "text-dt-text-muted/60 italic text-[10px]", children: [
|
|
713
720
|
o.length,
|
|
714
721
|
" items..."
|
|
715
722
|
] }),
|
|
716
|
-
!
|
|
723
|
+
!y && /* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "]" })
|
|
717
724
|
]
|
|
718
725
|
}
|
|
719
726
|
),
|
|
720
|
-
|
|
721
|
-
/* @__PURE__ */ t("div", { className: "pl-4 border-l border-dt-border-light/30 ml-1", children: o.map((
|
|
727
|
+
y && /* @__PURE__ */ n(X, { children: [
|
|
728
|
+
/* @__PURE__ */ t("div", { className: "pl-4 border-l border-dt-border-light/30 ml-1", children: o.map((D, h) => {
|
|
722
729
|
const x = `${a}[${h}]`;
|
|
723
|
-
return s && !
|
|
730
|
+
return s && !qt(x, s) && !s.has(x) ? null : /* @__PURE__ */ n("div", { className: "py-px", children: [
|
|
724
731
|
/* @__PURE__ */ n("span", { className: "text-dt-text-tertiary", children: [
|
|
725
732
|
h,
|
|
726
733
|
":"
|
|
727
734
|
] }),
|
|
728
735
|
" ",
|
|
729
|
-
/* @__PURE__ */ t(
|
|
736
|
+
/* @__PURE__ */ t(Ft, { data: D, depth: r + 1, path: x, matchingPaths: s, searchTerm: l })
|
|
730
737
|
] }, h);
|
|
731
738
|
}) }),
|
|
732
739
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "]" })
|
|
733
740
|
] })
|
|
734
741
|
] });
|
|
735
742
|
if (typeof o == "object") {
|
|
736
|
-
const
|
|
737
|
-
return
|
|
743
|
+
const D = Object.entries(o);
|
|
744
|
+
return D.length === 0 ? /* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "{}" }) : /* @__PURE__ */ n("div", { className: "inline", children: [
|
|
738
745
|
/* @__PURE__ */ n(
|
|
739
746
|
"button",
|
|
740
747
|
{
|
|
741
748
|
type: "button",
|
|
742
749
|
className: "bg-transparent border-none cursor-pointer p-0 text-inherit font-inherit inline-flex items-center gap-0.5",
|
|
743
|
-
onClick: () =>
|
|
744
|
-
"aria-expanded":
|
|
745
|
-
"aria-label": `${
|
|
750
|
+
onClick: () => b(!y),
|
|
751
|
+
"aria-expanded": y,
|
|
752
|
+
"aria-label": `${y ? "Collapse" : "Expand"} object with ${D.length} keys`,
|
|
746
753
|
children: [
|
|
747
|
-
/* @__PURE__ */ t("span", { className: `text-[10px] transition-transform inline-block ${
|
|
754
|
+
/* @__PURE__ */ t("span", { className: `text-[10px] transition-transform inline-block ${y ? "rotate-90" : ""}`, "aria-hidden": "true", children: "▶" }),
|
|
748
755
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "{" }),
|
|
749
|
-
!
|
|
750
|
-
|
|
756
|
+
!y && /* @__PURE__ */ n("span", { className: "text-dt-text-muted/60 italic text-[10px]", children: [
|
|
757
|
+
D.length,
|
|
751
758
|
" keys..."
|
|
752
759
|
] }),
|
|
753
|
-
!
|
|
760
|
+
!y && /* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "}" })
|
|
754
761
|
]
|
|
755
762
|
}
|
|
756
763
|
),
|
|
757
|
-
|
|
758
|
-
/* @__PURE__ */ t("div", { className: "pl-4 border-l border-dt-border-light/30 ml-1", children:
|
|
759
|
-
const
|
|
760
|
-
return s && !
|
|
761
|
-
/* @__PURE__ */ n("span", { className:
|
|
764
|
+
y && /* @__PURE__ */ n(X, { children: [
|
|
765
|
+
/* @__PURE__ */ t("div", { className: "pl-4 border-l border-dt-border-light/30 ml-1", children: D.map(([h, x]) => {
|
|
766
|
+
const f = `${a}.${h}`, m = s?.has(f) && l && h.toLowerCase().includes(l.toLowerCase());
|
|
767
|
+
return s && !qt(f, s) && !s.has(f) ? null : /* @__PURE__ */ n("div", { className: "py-px", children: [
|
|
768
|
+
/* @__PURE__ */ n("span", { className: m ? "bg-yellow-400/25 rounded-sm px-0.5 text-yellow-200" : "text-dt-text-tertiary", children: [
|
|
762
769
|
'"',
|
|
763
|
-
l ? /* @__PURE__ */ t(
|
|
770
|
+
l ? /* @__PURE__ */ t(Zt, { text: h, term: l }) : h,
|
|
764
771
|
'":'
|
|
765
772
|
] }),
|
|
766
773
|
" ",
|
|
767
|
-
/* @__PURE__ */ t(
|
|
774
|
+
/* @__PURE__ */ t(Ft, { data: x, depth: r + 1, path: f, matchingPaths: s, searchTerm: l })
|
|
768
775
|
] }, h);
|
|
769
776
|
}) }),
|
|
770
777
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "}" })
|
|
@@ -773,24 +780,24 @@ function Rt({ data: o, depth: r = 0, path: a = "$", matchingPaths: s, searchTerm
|
|
|
773
780
|
}
|
|
774
781
|
return /* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: String(o) });
|
|
775
782
|
}
|
|
776
|
-
function
|
|
783
|
+
function qt(o, r) {
|
|
777
784
|
for (const a of r)
|
|
778
785
|
if (a.startsWith(o) && a !== o) return !0;
|
|
779
786
|
return !1;
|
|
780
787
|
}
|
|
781
|
-
function
|
|
782
|
-
if (!r) return /* @__PURE__ */ t(
|
|
788
|
+
function Zt({ text: o, term: r }) {
|
|
789
|
+
if (!r) return /* @__PURE__ */ t(X, { children: o });
|
|
783
790
|
const a = o.toLowerCase(), s = r.toLowerCase(), l = [];
|
|
784
|
-
let u = 0, c = a.indexOf(s, u),
|
|
791
|
+
let u = 0, c = a.indexOf(s, u), b = 0;
|
|
785
792
|
for (; c !== -1; )
|
|
786
793
|
c > u && l.push(o.slice(u, c)), l.push(
|
|
787
|
-
/* @__PURE__ */ t("mark", { className: "bg-yellow-400/30 text-yellow-200 rounded-sm px-px", children: o.slice(c, c + r.length) },
|
|
794
|
+
/* @__PURE__ */ t("mark", { className: "bg-yellow-400/30 text-yellow-200 rounded-sm px-px", children: o.slice(c, c + r.length) }, b++)
|
|
788
795
|
), u = c + r.length, c = a.indexOf(s, u);
|
|
789
|
-
return u < o.length && l.push(o.slice(u)), /* @__PURE__ */ t(
|
|
796
|
+
return u < o.length && l.push(o.slice(u)), /* @__PURE__ */ t(X, { children: l });
|
|
790
797
|
}
|
|
791
|
-
const
|
|
798
|
+
const Ut = le.forwardRef(
|
|
792
799
|
({ value: o, onValueChange: r, onClear: a, placeholder: s, className: l = "", ...u }, c) => {
|
|
793
|
-
const
|
|
800
|
+
const b = () => {
|
|
794
801
|
a ? a() : r("");
|
|
795
802
|
};
|
|
796
803
|
return /* @__PURE__ */ n("div", { className: `relative flex items-center ${l === "stretch" ? "flex-1" : ""}`, role: "search", children: [
|
|
@@ -802,7 +809,7 @@ const Jt = ie.forwardRef(
|
|
|
802
809
|
type: "search",
|
|
803
810
|
className: "w-full bg-dt-bg-tertiary/50 border border-dt-border-light rounded-md px-2.5 pr-7 py-1 text-[11px] text-dt-text-secondary placeholder:text-dt-text-muted/50 outline-none focus:border-dt-info/50 focus:bg-dt-bg-tertiary transition-colors font-sans [&::-webkit-search-cancel-button]:hidden",
|
|
804
811
|
value: o,
|
|
805
|
-
onChange: (
|
|
812
|
+
onChange: (N) => r(N.target.value),
|
|
806
813
|
placeholder: s,
|
|
807
814
|
spellCheck: u.spellCheck ?? !1,
|
|
808
815
|
"aria-label": u["aria-label"] || s || "Search"
|
|
@@ -813,7 +820,7 @@ const Jt = ie.forwardRef(
|
|
|
813
820
|
{
|
|
814
821
|
type: "button",
|
|
815
822
|
className: "absolute right-1.5 p-0.5 bg-transparent border-none text-dt-text-muted cursor-pointer rounded hover:text-dt-text-tertiary transition-colors",
|
|
816
|
-
onClick:
|
|
823
|
+
onClick: b,
|
|
817
824
|
"aria-label": "Clear search",
|
|
818
825
|
title: "Clear search",
|
|
819
826
|
children: /* @__PURE__ */ t("svg", { width: "12", height: "12", viewBox: "0 0 16 16", fill: "currentColor", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3.646 3.646a.5.5 0 0 1 .708 0L8 7.293l3.646-3.647a.5.5 0 0 1 .708.708L8.707 8l3.647 3.646a.5.5 0 0 1-.708.708L8 8.707l-3.646 3.647a.5.5 0 0 1-.708-.708L7.293 8 3.646 4.354a.5.5 0 0 1 0-.708Z" }) })
|
|
@@ -822,27 +829,27 @@ const Jt = ie.forwardRef(
|
|
|
822
829
|
] });
|
|
823
830
|
}
|
|
824
831
|
);
|
|
825
|
-
function
|
|
826
|
-
const [l, u] =
|
|
827
|
-
|
|
832
|
+
function Kt({ x: o, y: r, items: a, onClose: s }) {
|
|
833
|
+
const [l, u] = L(-1), c = ft(null), [b, N] = L({ x: o, y: r });
|
|
834
|
+
U(() => {
|
|
828
835
|
const h = c.current;
|
|
829
836
|
if (!h) return;
|
|
830
|
-
const x = 8,
|
|
831
|
-
let
|
|
832
|
-
o +
|
|
833
|
-
}, [o, r]),
|
|
834
|
-
const h = (
|
|
835
|
-
c.current && !c.current.contains(
|
|
836
|
-
}, x = (
|
|
837
|
-
c.current && !c.current.contains(
|
|
838
|
-
},
|
|
837
|
+
const x = 8, f = h.getBoundingClientRect(), m = window.innerWidth, g = window.innerHeight;
|
|
838
|
+
let $ = o, I = r;
|
|
839
|
+
o + f.width > m - x && ($ = Math.max(x, m - f.width - x)), r + f.height > g - x && (I = Math.max(x, g - f.height - x)), ($ !== b.x || I !== b.y) && N({ x: $, y: I });
|
|
840
|
+
}, [o, r]), U(() => {
|
|
841
|
+
const h = ($) => {
|
|
842
|
+
c.current && !c.current.contains($.target) && s();
|
|
843
|
+
}, x = ($) => {
|
|
844
|
+
c.current && !c.current.contains($.target) && s();
|
|
845
|
+
}, f = () => s(), m = () => s(), g = setTimeout(() => {
|
|
839
846
|
document.addEventListener("mousedown", h), document.addEventListener("contextmenu", x);
|
|
840
847
|
}, 0);
|
|
841
|
-
return window.addEventListener("scroll",
|
|
842
|
-
clearTimeout(
|
|
848
|
+
return window.addEventListener("scroll", f, !0), window.addEventListener("blur", m), () => {
|
|
849
|
+
clearTimeout(g), document.removeEventListener("mousedown", h), document.removeEventListener("contextmenu", x), window.removeEventListener("scroll", f, !0), window.removeEventListener("blur", m);
|
|
843
850
|
};
|
|
844
851
|
}, [s]);
|
|
845
|
-
const
|
|
852
|
+
const y = a.map((h, x) => ({ ...h, index: x })).filter((h) => !h.disabled), D = F(
|
|
846
853
|
(h) => {
|
|
847
854
|
if (h.key === "Escape") {
|
|
848
855
|
h.preventDefault(), h.stopPropagation(), s();
|
|
@@ -850,15 +857,15 @@ function Ut({ x: o, y: r, items: a, onClose: s }) {
|
|
|
850
857
|
}
|
|
851
858
|
if (h.key === "ArrowDown") {
|
|
852
859
|
h.preventDefault(), u((x) => {
|
|
853
|
-
const
|
|
854
|
-
return
|
|
860
|
+
const f = y.findIndex((g) => g.index === x), m = f < y.length - 1 ? f + 1 : 0;
|
|
861
|
+
return y[m].index;
|
|
855
862
|
});
|
|
856
863
|
return;
|
|
857
864
|
}
|
|
858
865
|
if (h.key === "ArrowUp") {
|
|
859
866
|
h.preventDefault(), u((x) => {
|
|
860
|
-
const
|
|
861
|
-
return
|
|
867
|
+
const f = y.findIndex((g) => g.index === x), m = f > 0 ? f - 1 : y.length - 1;
|
|
868
|
+
return y[m].index;
|
|
862
869
|
});
|
|
863
870
|
return;
|
|
864
871
|
}
|
|
@@ -867,16 +874,16 @@ function Ut({ x: o, y: r, items: a, onClose: s }) {
|
|
|
867
874
|
return;
|
|
868
875
|
}
|
|
869
876
|
},
|
|
870
|
-
[s, l, a,
|
|
877
|
+
[s, l, a, y]
|
|
871
878
|
);
|
|
872
|
-
return
|
|
873
|
-
|
|
879
|
+
return U(() => (window.addEventListener("keydown", D, !0), () => window.removeEventListener("keydown", D, !0)), [D]), U(() => {
|
|
880
|
+
y.length > 0 && l === -1 && u(y[0].index);
|
|
874
881
|
}, []), /* @__PURE__ */ t(
|
|
875
882
|
"div",
|
|
876
883
|
{
|
|
877
884
|
ref: c,
|
|
878
885
|
className: "fixed z-[9999999] min-w-[180px] max-w-[280px] bg-zinc-900/[0.98] backdrop-blur-lg border border-dt-border rounded-lg shadow-2xl py-1 animate-[dt-fade-in_0.1s_ease-out]",
|
|
879
|
-
style: { top:
|
|
886
|
+
style: { top: b.y, left: b.x },
|
|
880
887
|
role: "menu",
|
|
881
888
|
onContextMenu: (h) => h.preventDefault(),
|
|
882
889
|
children: a.map((h, x) => /* @__PURE__ */ n("div", { children: [
|
|
@@ -891,8 +898,8 @@ function Ut({ x: o, y: r, items: a, onClose: s }) {
|
|
|
891
898
|
onMouseEnter: () => {
|
|
892
899
|
h.disabled || u(x);
|
|
893
900
|
},
|
|
894
|
-
onClick: (
|
|
895
|
-
|
|
901
|
+
onClick: (f) => {
|
|
902
|
+
f.stopPropagation(), h.disabled || (h.action(), s());
|
|
896
903
|
},
|
|
897
904
|
children: [
|
|
898
905
|
/* @__PURE__ */ t("span", { className: "flex-1 truncate", children: h.label }),
|
|
@@ -904,30 +911,30 @@ function Ut({ x: o, y: r, items: a, onClose: s }) {
|
|
|
904
911
|
}
|
|
905
912
|
);
|
|
906
913
|
}
|
|
907
|
-
function
|
|
914
|
+
function St(o) {
|
|
908
915
|
return o.type === "query" || o.type === "mutation" || o.type === "action";
|
|
909
916
|
}
|
|
910
|
-
function
|
|
917
|
+
function Bt(o) {
|
|
911
918
|
return o.type === "auth";
|
|
912
919
|
}
|
|
913
920
|
function Nt(o) {
|
|
914
|
-
return
|
|
921
|
+
return St(o) || Bt(o);
|
|
915
922
|
}
|
|
916
|
-
const
|
|
923
|
+
const we = `
|
|
917
924
|
.cdv-json-key { color: var(--color-dt-text-tertiary); }
|
|
918
925
|
.cdv-json-string { color: var(--color-dt-success); }
|
|
919
926
|
.cdv-json-number { color: var(--color-dt-query); }
|
|
920
927
|
.cdv-json-boolean { color: var(--color-dt-mutation); }
|
|
921
928
|
.cdv-json-null { color: var(--color-dt-text-muted); }
|
|
922
929
|
.cdv-json-value { color: var(--color-dt-text-secondary); }
|
|
923
|
-
`, Et = 100,
|
|
930
|
+
`, Et = 100, te = 100, pt = 4e3, ve = {
|
|
924
931
|
maxStringLength: 128,
|
|
925
932
|
stringTailLength: 24,
|
|
926
933
|
maxArrayItems: 4,
|
|
927
934
|
maxObjectEntries: 4,
|
|
928
935
|
maxDepth: 3
|
|
929
936
|
};
|
|
930
|
-
function
|
|
937
|
+
function Pt(o) {
|
|
931
938
|
if (o == null) return "";
|
|
932
939
|
if (typeof o == "string")
|
|
933
940
|
return o.length > pt ? o.slice(0, pt) : o;
|
|
@@ -939,221 +946,223 @@ function qt(o) {
|
|
|
939
946
|
return r.length > pt ? r.slice(0, pt) : r;
|
|
940
947
|
}
|
|
941
948
|
}
|
|
942
|
-
function
|
|
949
|
+
function ye(o) {
|
|
943
950
|
const [r, a] = o.split("-", 3);
|
|
944
951
|
return r === "query" && a ? `Q${a}` : r === "mutation" && a ? `M${a}` : r === "action" && a ? `A${a}` : o;
|
|
945
952
|
}
|
|
946
|
-
function
|
|
947
|
-
const [a, s] =
|
|
948
|
-
|
|
949
|
-
}, []),
|
|
950
|
-
u(e),
|
|
951
|
-
}, [
|
|
952
|
-
|
|
953
|
-
}, [
|
|
954
|
-
|
|
953
|
+
function ke({ eventStore: o, panelConnectionState: r }) {
|
|
954
|
+
const [a, s] = L([]), [l, u] = L("all"), [c, b] = L(""), [N, y] = L(Et), [D, h] = L(null), [x, f] = L(0), [m, g] = L(null), [$, I] = L(null), T = ft(null), E = D && St(D) ? D : null, z = D && Bt(D) ? D : null, O = F(() => {
|
|
955
|
+
y(Et), f(0);
|
|
956
|
+
}, []), d = F((e) => {
|
|
957
|
+
u(e), O();
|
|
958
|
+
}, [O]), p = F((e) => {
|
|
959
|
+
b(e), O();
|
|
960
|
+
}, [O]);
|
|
961
|
+
U(() => {
|
|
955
962
|
const e = () => {
|
|
956
963
|
s(o.getAllEvents());
|
|
957
|
-
},
|
|
958
|
-
return e(),
|
|
959
|
-
}, [o]),
|
|
960
|
-
const e = (
|
|
961
|
-
if (!
|
|
962
|
-
const
|
|
963
|
-
if (!
|
|
964
|
-
u("all"),
|
|
965
|
-
const
|
|
966
|
-
|
|
967
|
-
},
|
|
968
|
-
return e(o.getFocusedEventId()),
|
|
964
|
+
}, v = o.subscribe(e);
|
|
965
|
+
return e(), v;
|
|
966
|
+
}, [o]), U(() => {
|
|
967
|
+
const e = (w) => {
|
|
968
|
+
if (!w) return;
|
|
969
|
+
const q = o.getAllEvents().find((_) => _.id === w);
|
|
970
|
+
if (!q || !Nt(q)) return;
|
|
971
|
+
u("all"), b(""), y(Et), g(null), I(null), h(q), f(0);
|
|
972
|
+
const A = o.getAllEvents().filter(Nt).sort((_, Q) => Q.timestamp - _.timestamp).findIndex((_) => _.id === w);
|
|
973
|
+
A >= 0 && (y((_) => Math.max(_, Et, A + 1)), f(A));
|
|
974
|
+
}, v = o.subscribeFocus(e);
|
|
975
|
+
return e(o.getFocusedEventId()), v;
|
|
969
976
|
}, [o]);
|
|
970
|
-
const
|
|
971
|
-
const
|
|
977
|
+
const i = F((e) => {
|
|
978
|
+
const v = lt(e.args), w = [
|
|
972
979
|
e.id,
|
|
973
980
|
e.type,
|
|
974
981
|
e.status,
|
|
975
982
|
e.udfPath
|
|
976
983
|
];
|
|
977
|
-
if (e.componentPath &&
|
|
978
|
-
|
|
984
|
+
if (e.componentPath && w.push(e.componentPath), e.type === "query")
|
|
985
|
+
w.push(String(e.queryId), `q${e.queryId}`), e.triggeredBy && w.push(e.triggeredBy);
|
|
979
986
|
else {
|
|
980
|
-
const
|
|
981
|
-
|
|
987
|
+
const q = e.type === "mutation" ? "m" : "a";
|
|
988
|
+
w.push(String(e.requestId), `${q}${e.requestId}`);
|
|
982
989
|
}
|
|
983
|
-
return
|
|
984
|
-
`)), typeof e.duration == "number" &&
|
|
990
|
+
return w.push(Pt(v)), e.result !== void 0 && w.push(Pt(e.result)), e.error && w.push(e.error), e.logLines && e.logLines.length > 0 && w.push(e.logLines.join(`
|
|
991
|
+
`)), typeof e.duration == "number" && w.push(`${e.duration}`, `${e.duration}ms`), typeof e.simulatedDelayMs == "number" && e.simulatedDelayMs > 0 && w.push(`simulated ${e.simulatedDelayMs}`, `delay ${e.simulatedDelayMs}ms`), typeof e.endToEndDurationMs == "number" && w.push(`${e.endToEndDurationMs}`, `${e.endToEndDurationMs}ms`, "end-to-end"), w.join(`
|
|
985
992
|
`).toLowerCase();
|
|
986
|
-
}, []),
|
|
987
|
-
if (
|
|
988
|
-
return
|
|
989
|
-
const
|
|
993
|
+
}, []), C = F((e) => {
|
|
994
|
+
if (St(e))
|
|
995
|
+
return i(e);
|
|
996
|
+
const v = [
|
|
990
997
|
e.id,
|
|
991
998
|
e.type,
|
|
992
999
|
e.status,
|
|
993
1000
|
e.direction,
|
|
994
1001
|
e.messageType
|
|
995
1002
|
];
|
|
996
|
-
return e.tokenType &&
|
|
1003
|
+
return e.tokenType && v.push(e.tokenType), e.error && v.push(e.error), e.details !== void 0 && v.push(Pt(e.details)), v.join(`
|
|
997
1004
|
`).toLowerCase();
|
|
998
|
-
}, [
|
|
1005
|
+
}, [i]), { filteredEvents: S, totalMatchCount: M, hasMoreResults: H } = it(() => {
|
|
999
1006
|
let e = a.filter(Nt);
|
|
1000
|
-
l !== "all" && (l === "error" ? e = e.filter((
|
|
1001
|
-
const
|
|
1002
|
-
|
|
1003
|
-
const
|
|
1004
|
-
return
|
|
1007
|
+
l !== "all" && (l === "error" ? e = e.filter((k) => k.status === "error") : e = e.filter((k) => k.type === l));
|
|
1008
|
+
const v = c.trim().toLowerCase().split(/\s+/).filter((k) => k.length > 0);
|
|
1009
|
+
v.length > 0 && (e = e.filter((k) => {
|
|
1010
|
+
const A = C(k);
|
|
1011
|
+
return v.every((_) => A.includes(_));
|
|
1005
1012
|
}));
|
|
1006
|
-
const
|
|
1013
|
+
const w = e.sort((k, A) => A.timestamp - k.timestamp), q = w.slice(0, N);
|
|
1007
1014
|
return {
|
|
1008
|
-
filteredEvents:
|
|
1009
|
-
totalMatchCount:
|
|
1010
|
-
hasMoreResults:
|
|
1015
|
+
filteredEvents: q,
|
|
1016
|
+
totalMatchCount: w.length,
|
|
1017
|
+
hasMoreResults: w.length > q.length
|
|
1011
1018
|
};
|
|
1012
|
-
}, [a, l, c,
|
|
1013
|
-
|
|
1014
|
-
if (
|
|
1015
|
-
|
|
1019
|
+
}, [a, l, c, N, C]);
|
|
1020
|
+
U(() => {
|
|
1021
|
+
if (S.length === 0) {
|
|
1022
|
+
f(0);
|
|
1016
1023
|
return;
|
|
1017
1024
|
}
|
|
1018
|
-
|
|
1019
|
-
}, [
|
|
1020
|
-
const
|
|
1021
|
-
const e = a.filter(Nt),
|
|
1025
|
+
f((e) => Math.min(e, S.length - 1));
|
|
1026
|
+
}, [S.length]);
|
|
1027
|
+
const j = it(() => {
|
|
1028
|
+
const e = a.filter(Nt), v = e.filter((_) => _.type === "query"), w = e.filter((_) => _.type === "mutation"), q = e.filter((_) => _.type === "action"), k = e.filter((_) => _.type === "auth"), A = e.filter((_) => _.status === "error").length;
|
|
1022
1029
|
return {
|
|
1023
|
-
queries:
|
|
1024
|
-
mutations:
|
|
1025
|
-
actions:
|
|
1026
|
-
auth:
|
|
1027
|
-
errors:
|
|
1028
|
-
total:
|
|
1030
|
+
queries: v.length,
|
|
1031
|
+
mutations: w.length,
|
|
1032
|
+
actions: q.length,
|
|
1033
|
+
auth: k.length,
|
|
1034
|
+
errors: A,
|
|
1035
|
+
total: v.length + w.length + q.length + k.length
|
|
1029
1036
|
};
|
|
1030
1037
|
}, [a]), Y = !!r?.waitingForConnection && l === "all" && !c;
|
|
1031
|
-
|
|
1032
|
-
const e = (
|
|
1033
|
-
if ((
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
if (
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1038
|
+
U(() => {
|
|
1039
|
+
const e = (v) => {
|
|
1040
|
+
if ($t()) {
|
|
1041
|
+
if ((v.metaKey || v.ctrlKey) && v.key === "k") {
|
|
1042
|
+
v.preventDefault(), T.current?.focus();
|
|
1043
|
+
return;
|
|
1044
|
+
}
|
|
1045
|
+
if (v.key === "Escape") {
|
|
1046
|
+
v.preventDefault(), D ? h(null) : (l !== "all" || c) && (d("all"), p(""));
|
|
1047
|
+
return;
|
|
1048
|
+
}
|
|
1049
|
+
if (ie() !== T.current && S.length !== 0) {
|
|
1050
|
+
if (v.key === "ArrowDown")
|
|
1051
|
+
v.preventDefault(), f((w) => Math.min(w + 1, S.length - 1));
|
|
1052
|
+
else if (v.key === "ArrowUp")
|
|
1053
|
+
v.preventDefault(), f((w) => Math.max(w - 1, 0));
|
|
1054
|
+
else if (v.key === "Enter") {
|
|
1055
|
+
v.preventDefault();
|
|
1056
|
+
const w = S[x];
|
|
1057
|
+
w && h(D?.id === w.id ? null : w);
|
|
1058
|
+
}
|
|
1050
1059
|
}
|
|
1051
1060
|
}
|
|
1052
1061
|
};
|
|
1053
1062
|
return window.addEventListener("keydown", e), () => window.removeEventListener("keydown", e);
|
|
1054
|
-
}, [
|
|
1055
|
-
const
|
|
1063
|
+
}, [S, x, D, l, c, d, p]);
|
|
1064
|
+
const K = (e) => {
|
|
1056
1065
|
if (e == null) return "0";
|
|
1057
|
-
const
|
|
1058
|
-
return
|
|
1059
|
-
},
|
|
1066
|
+
const v = JSON.stringify(e), w = new Blob([v]).size;
|
|
1067
|
+
return w < 1024 ? `${w}B` : w < 1024 * 1024 ? `${(w / 1024).toFixed(1)}KB` : `${(w / (1024 * 1024)).toFixed(1)}MB`;
|
|
1068
|
+
}, R = (e) => !Number.isFinite(e) || e < 0 ? "—" : e < 1e3 ? `${e.toFixed(3)}ms` : e < 6e4 ? `${(e / 1e3).toFixed(3)}s` : e < 36e5 ? `${(e / 6e4).toFixed(1)}m` : `${(e / 36e5).toFixed(2)}h`, Z = (e) => typeof e.duration != "number" || !Number.isFinite(e.duration) || e.duration < 0 ? null : e.duration, rt = (e) => typeof e.simulatedDelayMs != "number" || !Number.isFinite(e.simulatedDelayMs) || e.simulatedDelayMs <= 0 ? 0 : e.simulatedDelayMs, It = (e) => {
|
|
1060
1069
|
if (typeof e.endToEndDurationMs == "number" && Number.isFinite(e.endToEndDurationMs) && e.endToEndDurationMs >= 0)
|
|
1061
1070
|
return e.endToEndDurationMs;
|
|
1062
|
-
const
|
|
1063
|
-
return
|
|
1071
|
+
const v = Z(e);
|
|
1072
|
+
return v === null ? null : v + rt(e);
|
|
1064
1073
|
}, xt = (e) => {
|
|
1065
|
-
const
|
|
1066
|
-
return
|
|
1067
|
-
},
|
|
1074
|
+
const v = Date.now() - e;
|
|
1075
|
+
return v < 2e3 ? "just now" : v < 6e4 ? `${Math.floor(v / 1e3)}s ago` : v < 36e5 ? `${Math.floor(v / 6e4)}m ago` : v < 864e5 ? `${Math.floor(v / 36e5)}h ago` : `${Math.floor(v / 864e5)}d ago`;
|
|
1076
|
+
}, _t = (e) => new Date(e).toLocaleTimeString([], {
|
|
1068
1077
|
hour: "2-digit",
|
|
1069
1078
|
minute: "2-digit",
|
|
1070
1079
|
second: "2-digit",
|
|
1071
1080
|
fractionalSecondDigits: 3
|
|
1072
|
-
}),
|
|
1081
|
+
}), Qt = (e) => e.type === "query" ? `Q${e.queryId}` : e.type === "mutation" ? `M${e.requestId}` : e.type === "action" ? `A${e.requestId}` : null, Lt = (e) => St(e) ? Qt(e) ?? e.id : `${e.direction === "client" ? "C" : "S"}:${e.messageType}`, vt = F((e, v) => {
|
|
1073
1082
|
if (typeof window > "u") return null;
|
|
1074
|
-
const
|
|
1075
|
-
let
|
|
1076
|
-
|
|
1077
|
-
let
|
|
1078
|
-
return
|
|
1079
|
-
}, []),
|
|
1080
|
-
if (
|
|
1081
|
-
const
|
|
1082
|
-
{ label: "Copy Message Type", action: () =>
|
|
1083
|
+
const w = 8, q = 300, k = window.innerWidth, A = window.innerHeight, _ = Math.min(260, A - w * 2);
|
|
1084
|
+
let Q = v.right + w;
|
|
1085
|
+
Q + q > k - w && (Q = v.left - q - w), Q < w && (Q = Math.max(w, k - q - w));
|
|
1086
|
+
let B = v.top + v.height / 2 - _ / 2;
|
|
1087
|
+
return B < w && (B = w), B + _ > A - w && (B = Math.max(w, A - w - _)), { event: e, x: Q, y: B };
|
|
1088
|
+
}, []), Ht = F((e) => {
|
|
1089
|
+
if (Bt(e)) {
|
|
1090
|
+
const _ = [
|
|
1091
|
+
{ label: "Copy Message Type", action: () => P(e.messageType), shortcut: "⌘C" }
|
|
1083
1092
|
];
|
|
1084
|
-
return e.error &&
|
|
1093
|
+
return e.error && _.push({
|
|
1085
1094
|
label: "Copy Error",
|
|
1086
|
-
action: () =>
|
|
1087
|
-
}), e.details !== void 0 &&
|
|
1095
|
+
action: () => P(e.error)
|
|
1096
|
+
}), e.details !== void 0 && _.push({
|
|
1088
1097
|
label: "Copy Details",
|
|
1089
|
-
action: () =>
|
|
1090
|
-
}),
|
|
1098
|
+
action: () => P(JSON.stringify(e.details, null, 2))
|
|
1099
|
+
}), _.push({
|
|
1091
1100
|
label: "Filter by Type: auth",
|
|
1092
|
-
action: () =>
|
|
1101
|
+
action: () => d("auth"),
|
|
1093
1102
|
separator: !0
|
|
1094
|
-
}),
|
|
1103
|
+
}), _.push({
|
|
1095
1104
|
label: "Copy Event ID",
|
|
1096
|
-
action: () =>
|
|
1105
|
+
action: () => P(e.id),
|
|
1097
1106
|
separator: !0
|
|
1098
|
-
}),
|
|
1107
|
+
}), _.push({
|
|
1099
1108
|
label: "Copy as JSON",
|
|
1100
|
-
action: () =>
|
|
1101
|
-
}),
|
|
1109
|
+
action: () => P(JSON.stringify(e, null, 2))
|
|
1110
|
+
}), _;
|
|
1102
1111
|
}
|
|
1103
|
-
const
|
|
1104
|
-
{ label: "Copy Function Path", action: () =>
|
|
1112
|
+
const v = lt(e.args), w = v != null, q = e.status === "success" && e.result !== void 0, k = e.status === "error" && !!e.error, A = [
|
|
1113
|
+
{ label: "Copy Function Path", action: () => P(e.udfPath), shortcut: "⌘C" }
|
|
1105
1114
|
];
|
|
1106
|
-
if (
|
|
1107
|
-
const
|
|
1108
|
-
|
|
1115
|
+
if (w) {
|
|
1116
|
+
const _ = JSON.stringify(v);
|
|
1117
|
+
A.push({
|
|
1109
1118
|
label: "Copy as convex run",
|
|
1110
|
-
action: () =>
|
|
1111
|
-
}),
|
|
1119
|
+
action: () => P(`npx convex run ${e.udfPath} '${_}'`)
|
|
1120
|
+
}), A.push({
|
|
1112
1121
|
label: "Copy Arguments",
|
|
1113
|
-
action: () =>
|
|
1122
|
+
action: () => P(JSON.stringify(v, null, 2))
|
|
1114
1123
|
});
|
|
1115
1124
|
}
|
|
1116
|
-
return
|
|
1125
|
+
return q && A.push({
|
|
1117
1126
|
label: "Copy Result",
|
|
1118
|
-
action: () =>
|
|
1119
|
-
}),
|
|
1127
|
+
action: () => P(JSON.stringify(e.result, null, 2))
|
|
1128
|
+
}), k && A.push({
|
|
1120
1129
|
label: "Copy Error",
|
|
1121
|
-
action: () =>
|
|
1122
|
-
}),
|
|
1130
|
+
action: () => P(e.error)
|
|
1131
|
+
}), A.push({
|
|
1123
1132
|
label: "Filter by Function",
|
|
1124
|
-
action: () =>
|
|
1133
|
+
action: () => p(e.udfPath),
|
|
1125
1134
|
separator: !0
|
|
1126
|
-
}),
|
|
1135
|
+
}), A.push({
|
|
1127
1136
|
label: `Filter by Type: ${e.type}`,
|
|
1128
|
-
action: () =>
|
|
1129
|
-
}),
|
|
1137
|
+
action: () => d(e.type)
|
|
1138
|
+
}), A.push({
|
|
1130
1139
|
label: "Copy Event ID",
|
|
1131
|
-
action: () =>
|
|
1140
|
+
action: () => P(e.id),
|
|
1132
1141
|
separator: !0
|
|
1133
|
-
}),
|
|
1142
|
+
}), A.push({
|
|
1134
1143
|
label: "Copy as JSON",
|
|
1135
|
-
action: () =>
|
|
1136
|
-
}),
|
|
1137
|
-
}, [
|
|
1144
|
+
action: () => P(JSON.stringify(e, null, 2))
|
|
1145
|
+
}), A;
|
|
1146
|
+
}, [d, p]);
|
|
1138
1147
|
return /* @__PURE__ */ n("div", { className: "flex flex-col h-full overflow-hidden", children: [
|
|
1139
|
-
/* @__PURE__ */ t("style", { children:
|
|
1148
|
+
/* @__PURE__ */ t("style", { children: we }),
|
|
1140
1149
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 px-3 py-1.5 border-b border-dt-border-light", children: [
|
|
1141
1150
|
/* @__PURE__ */ t("div", { className: "flex gap-[3px] bg-zinc-900/50 p-[3px] rounded-md border border-zinc-700/30", children: ["all", "query", "mutation", "action", "auth", "error"].map((e) => /* @__PURE__ */ t(
|
|
1142
1151
|
"button",
|
|
1143
1152
|
{
|
|
1144
1153
|
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all ${l === e ? e === "query" ? "bg-dt-query/25 text-dt-query shadow-[0_0_0_1px_rgba(96,165,250,0.5)]" : e === "mutation" ? "bg-dt-mutation/25 text-dt-mutation shadow-[0_0_0_1px_rgba(167,139,250,0.5)]" : e === "action" ? "bg-dt-action/25 text-dt-action shadow-[0_0_0_1px_rgba(52,211,153,0.5)]" : e === "auth" ? "bg-dt-warning/20 text-dt-warning shadow-[0_0_0_1px_rgba(245,158,11,0.5)]" : e === "error" ? "bg-dt-error/25 text-dt-error shadow-[0_0_0_1px_rgba(239,68,68,0.5)]" : "bg-zinc-500/25 text-dt-text-tertiary shadow-[0_0_0_1px_rgba(161,161,170,0.4)]" : e === "query" ? "text-dt-text-muted hover:bg-dt-query/15 hover:text-dt-query" : e === "mutation" ? "text-dt-text-muted hover:bg-dt-mutation/15 hover:text-dt-mutation" : e === "action" ? "text-dt-text-muted hover:bg-dt-action/15 hover:text-dt-action" : e === "auth" ? "text-dt-text-muted hover:bg-dt-warning/15 hover:text-dt-warning" : e === "error" ? "text-dt-text-muted hover:bg-dt-error/15 hover:text-dt-error" : "text-dt-text-muted hover:bg-white/5 hover:text-dt-text-tertiary"}`,
|
|
1145
|
-
onClick: () =>
|
|
1146
|
-
children: e === "all" ? `All ${
|
|
1154
|
+
onClick: () => d(e),
|
|
1155
|
+
children: e === "all" ? `All ${j.total}` : `${e === "auth" ? "C" : e === "error" ? "E" : e.charAt(0).toUpperCase()} ${e === "query" ? j.queries : e === "mutation" ? j.mutations : e === "action" ? j.actions : e === "error" ? j.errors : j.auth}`
|
|
1147
1156
|
},
|
|
1148
1157
|
e
|
|
1149
1158
|
)) }),
|
|
1150
1159
|
/* @__PURE__ */ t(
|
|
1151
|
-
|
|
1160
|
+
Ut,
|
|
1152
1161
|
{
|
|
1153
|
-
ref:
|
|
1162
|
+
ref: T,
|
|
1154
1163
|
value: c,
|
|
1155
|
-
onValueChange:
|
|
1156
|
-
onClear: () =>
|
|
1164
|
+
onValueChange: p,
|
|
1165
|
+
onClear: () => p(""),
|
|
1157
1166
|
placeholder: "Search path/auth/error/details... (Cmd/Ctrl+K)",
|
|
1158
1167
|
className: "stretch"
|
|
1159
1168
|
}
|
|
@@ -1163,21 +1172,21 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1163
1172
|
{
|
|
1164
1173
|
className: "p-1 bg-transparent border-none text-dt-text-muted cursor-pointer rounded transition-colors hover:text-dt-text-tertiary",
|
|
1165
1174
|
onClick: () => {
|
|
1166
|
-
|
|
1175
|
+
d("all"), p("");
|
|
1167
1176
|
},
|
|
1168
1177
|
title: "Clear filters (Esc)",
|
|
1169
1178
|
children: /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "currentColor", children: /* @__PURE__ */ t("path", { d: "M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z" }) })
|
|
1170
1179
|
}
|
|
1171
1180
|
) })
|
|
1172
1181
|
] }),
|
|
1173
|
-
|
|
1182
|
+
S.length === 0 && /* @__PURE__ */ n("div", { className: "flex flex-col items-center justify-center py-12 text-dt-text-muted gap-2", children: [
|
|
1174
1183
|
/* @__PURE__ */ n("svg", { width: "48", height: "48", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", children: [
|
|
1175
1184
|
/* @__PURE__ */ t("circle", { cx: "12", cy: "12", r: "10", strokeWidth: "1.5" }),
|
|
1176
1185
|
/* @__PURE__ */ t("path", { d: "M12 6v6l4 2", strokeWidth: "1.5", strokeLinecap: "round" })
|
|
1177
1186
|
] }),
|
|
1178
|
-
Y ? /* @__PURE__ */ n(
|
|
1187
|
+
Y ? /* @__PURE__ */ n(X, { children: [
|
|
1179
1188
|
/* @__PURE__ */ t("p", { children: "Waiting for Convex WebSocket activity" }),
|
|
1180
|
-
r.needsReload ? /* @__PURE__ */ n(
|
|
1189
|
+
r.needsReload ? /* @__PURE__ */ n(X, { children: [
|
|
1181
1190
|
/* @__PURE__ */ t("p", { className: "text-[11px] text-dt-text-muted/60 max-w-[360px] text-center", children: "Page was already connected before DevTools attached. Reload to start capturing this connection." }),
|
|
1182
1191
|
/* @__PURE__ */ t(
|
|
1183
1192
|
"button",
|
|
@@ -1197,60 +1206,60 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1197
1206
|
" · Capture ",
|
|
1198
1207
|
r.captureLive ? "live" : r.needsReload ? "reload" : "waiting"
|
|
1199
1208
|
] })
|
|
1200
|
-
] }) : /* @__PURE__ */ n(
|
|
1209
|
+
] }) : /* @__PURE__ */ n(X, { children: [
|
|
1201
1210
|
/* @__PURE__ */ t("p", { children: "No activity yet" }),
|
|
1202
1211
|
/* @__PURE__ */ t("p", { className: "text-[11px] text-dt-text-muted/60", children: l !== "all" || c ? "No activity matches your current filters" : "Execute operations or auth flows to see them here" })
|
|
1203
1212
|
] })
|
|
1204
1213
|
] }),
|
|
1205
|
-
|
|
1214
|
+
S.length > 0 && /* @__PURE__ */ n("div", { className: "flex flex-1 overflow-hidden", children: [
|
|
1206
1215
|
/* @__PURE__ */ n("div", { className: "flex-1 overflow-y-auto", children: [
|
|
1207
|
-
|
|
1216
|
+
H && /* @__PURE__ */ n("div", { className: "text-center text-[10px] text-dt-text-muted/60 py-1 border-b border-dt-border-light/30", children: [
|
|
1208
1217
|
"Showing ",
|
|
1209
|
-
|
|
1218
|
+
S.length,
|
|
1210
1219
|
" of ",
|
|
1211
|
-
|
|
1220
|
+
M
|
|
1212
1221
|
] }),
|
|
1213
|
-
|
|
1214
|
-
const
|
|
1222
|
+
S.map((e, v) => {
|
|
1223
|
+
const w = D?.id === e.id, q = v === x;
|
|
1215
1224
|
if (e.type === "auth") {
|
|
1216
|
-
const
|
|
1225
|
+
const J = e.direction === "client" ? "cli" : "srv", st = e.direction === "client" ? "→" : "←", at = e.details && typeof e.details == "object" && !Array.isArray(e.details) ? Object.keys(e.details).length : null;
|
|
1217
1226
|
return /* @__PURE__ */ t(
|
|
1218
1227
|
"div",
|
|
1219
1228
|
{
|
|
1220
|
-
className: `flex flex-col px-3 py-1.5 border-b border-dt-border-light/50 cursor-pointer transition-colors hover:bg-white/[0.03] ${
|
|
1229
|
+
className: `flex flex-col px-3 py-1.5 border-b border-dt-border-light/50 cursor-pointer transition-colors hover:bg-white/[0.03] ${w ? "bg-white/[0.06]" : ""} ${q ? "bg-white/[0.03] outline outline-1 outline-dt-info/30 -outline-offset-1" : ""} ${e.status === "error" ? "border-l-2 border-l-dt-error/40" : ""}`,
|
|
1221
1230
|
onClick: () => {
|
|
1222
|
-
h(
|
|
1231
|
+
h(w ? null : e), f(v);
|
|
1223
1232
|
},
|
|
1224
|
-
onKeyDown: (
|
|
1225
|
-
(
|
|
1233
|
+
onKeyDown: (V) => {
|
|
1234
|
+
(V.key === "Enter" || V.key === " ") && (V.preventDefault(), h(w ? null : e), f(v));
|
|
1226
1235
|
},
|
|
1227
|
-
onContextMenu: (
|
|
1228
|
-
|
|
1229
|
-
x:
|
|
1230
|
-
y:
|
|
1231
|
-
items:
|
|
1236
|
+
onContextMenu: (V) => {
|
|
1237
|
+
V.preventDefault(), g(null), I({
|
|
1238
|
+
x: V.clientX,
|
|
1239
|
+
y: V.clientY,
|
|
1240
|
+
items: Ht(e)
|
|
1232
1241
|
});
|
|
1233
1242
|
},
|
|
1234
|
-
onMouseEnter: (
|
|
1235
|
-
const
|
|
1236
|
-
ct &&
|
|
1243
|
+
onMouseEnter: (V) => {
|
|
1244
|
+
const At = V.currentTarget.getBoundingClientRect(), ct = vt(e, At);
|
|
1245
|
+
ct && g(ct);
|
|
1237
1246
|
},
|
|
1238
|
-
onMouseMove: (
|
|
1239
|
-
if (
|
|
1240
|
-
const
|
|
1241
|
-
ct &&
|
|
1247
|
+
onMouseMove: (V) => {
|
|
1248
|
+
if (m?.event.id === e.id) {
|
|
1249
|
+
const At = V.currentTarget.getBoundingClientRect(), ct = vt(e, At);
|
|
1250
|
+
ct && g(
|
|
1242
1251
|
(bt) => bt && bt.event.id === e.id && (bt.x !== ct.x || bt.y !== ct.y) ? ct : bt
|
|
1243
1252
|
);
|
|
1244
1253
|
}
|
|
1245
1254
|
},
|
|
1246
1255
|
onMouseLeave: () => {
|
|
1247
|
-
|
|
1256
|
+
g((V) => V && V.event.id === e.id ? null : V);
|
|
1248
1257
|
},
|
|
1249
1258
|
role: "button",
|
|
1250
1259
|
tabIndex: 0,
|
|
1251
1260
|
"aria-label": `Connection ${e.messageType} ${e.status}`,
|
|
1252
|
-
"aria-selected":
|
|
1253
|
-
"aria-current":
|
|
1261
|
+
"aria-selected": w,
|
|
1262
|
+
"aria-current": q ? "true" : void 0,
|
|
1254
1263
|
children: /* @__PURE__ */ n("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
1255
1264
|
/* @__PURE__ */ t("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-[3px] text-[9px] font-bold shrink-0 bg-dt-warning/20 text-dt-warning shadow-[0_1px_2px_rgba(245,158,11,0.35)]", children: "C" }),
|
|
1256
1265
|
/* @__PURE__ */ t(
|
|
@@ -1272,110 +1281,110 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1272
1281
|
"f"
|
|
1273
1282
|
] }),
|
|
1274
1283
|
e.error && /* @__PURE__ */ t("span", { className: "text-dt-error truncate max-w-[180px]", title: e.error, children: e.error }),
|
|
1275
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/70 font-mono text-[10px]", children:
|
|
1276
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children:
|
|
1284
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/70 font-mono text-[10px]", children: J }),
|
|
1285
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children: _t(e.timestamp) })
|
|
1277
1286
|
] })
|
|
1278
1287
|
] })
|
|
1279
1288
|
},
|
|
1280
1289
|
e.id
|
|
1281
1290
|
);
|
|
1282
1291
|
}
|
|
1283
|
-
const
|
|
1292
|
+
const k = e, A = lt(k.args), _ = A !== void 0, Q = k.type === "query" ? o.getSubscription(k.queryId) : null, B = Q && Q.updateCount > 0, G = It(k), ot = Z(k), nt = rt(k), et = k.type === "query" ? "Query" : k.type === "mutation" ? "Mutation" : "Action", ht = k.status === "success" ? "succeeded" : k.status === "error" ? "failed" : "pending", dt = nt > 0 && ot !== null, yt = `${et} ${k.udfPath} ${ht}${G !== null ? ` in ${dt ? `e2e ${R(G)}` : `net ${R(G)}`}` : ""}${dt ? ` (${R(ot)} net + ${R(nt)} simulated)` : ""}`, kt = B && k.type === "query";
|
|
1284
1293
|
return /* @__PURE__ */ t(
|
|
1285
1294
|
"div",
|
|
1286
1295
|
{
|
|
1287
|
-
className: `flex flex-col px-3 py-1.5 border-b border-dt-border-light/50 cursor-pointer transition-colors hover:bg-white/[0.03] ${
|
|
1296
|
+
className: `flex flex-col px-3 py-1.5 border-b border-dt-border-light/50 cursor-pointer transition-colors hover:bg-white/[0.03] ${w ? "bg-white/[0.06]" : ""} ${q ? "bg-white/[0.03] outline outline-1 outline-dt-info/30 -outline-offset-1" : ""} ${k.status === "error" ? "border-l-2 border-l-dt-error/40" : ""} ${kt ? "border-l-2 border-l-dt-query/30 bg-dt-query/[0.02]" : ""}`,
|
|
1288
1297
|
onClick: () => {
|
|
1289
|
-
h(
|
|
1298
|
+
h(w ? null : e), f(v);
|
|
1290
1299
|
},
|
|
1291
|
-
onKeyDown: (
|
|
1292
|
-
(
|
|
1300
|
+
onKeyDown: (J) => {
|
|
1301
|
+
(J.key === "Enter" || J.key === " ") && (J.preventDefault(), h(w ? null : e), f(v));
|
|
1293
1302
|
},
|
|
1294
|
-
onContextMenu: (
|
|
1295
|
-
|
|
1296
|
-
x:
|
|
1297
|
-
y:
|
|
1298
|
-
items:
|
|
1303
|
+
onContextMenu: (J) => {
|
|
1304
|
+
J.preventDefault(), g(null), I({
|
|
1305
|
+
x: J.clientX,
|
|
1306
|
+
y: J.clientY,
|
|
1307
|
+
items: Ht(k)
|
|
1299
1308
|
});
|
|
1300
1309
|
},
|
|
1301
|
-
onMouseEnter: (
|
|
1302
|
-
const st =
|
|
1303
|
-
at &&
|
|
1310
|
+
onMouseEnter: (J) => {
|
|
1311
|
+
const st = J.currentTarget.getBoundingClientRect(), at = vt(k, st);
|
|
1312
|
+
at && g(at);
|
|
1304
1313
|
},
|
|
1305
|
-
onMouseMove: (
|
|
1306
|
-
if (
|
|
1307
|
-
const st =
|
|
1308
|
-
at &&
|
|
1309
|
-
(
|
|
1314
|
+
onMouseMove: (J) => {
|
|
1315
|
+
if (m?.event.id === k.id) {
|
|
1316
|
+
const st = J.currentTarget.getBoundingClientRect(), at = vt(k, st);
|
|
1317
|
+
at && g(
|
|
1318
|
+
(V) => V && V.event.id === k.id && (V.x !== at.x || V.y !== at.y) ? at : V
|
|
1310
1319
|
);
|
|
1311
1320
|
}
|
|
1312
1321
|
},
|
|
1313
1322
|
onMouseLeave: () => {
|
|
1314
|
-
|
|
1323
|
+
g((J) => J && J.event.id === k.id ? null : J);
|
|
1315
1324
|
},
|
|
1316
1325
|
role: "button",
|
|
1317
1326
|
tabIndex: 0,
|
|
1318
1327
|
"aria-label": yt,
|
|
1319
|
-
"aria-selected":
|
|
1320
|
-
"aria-current":
|
|
1328
|
+
"aria-selected": w,
|
|
1329
|
+
"aria-current": q ? "true" : void 0,
|
|
1321
1330
|
children: /* @__PURE__ */ n("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
1322
1331
|
/* @__PURE__ */ t(
|
|
1323
1332
|
"span",
|
|
1324
1333
|
{
|
|
1325
|
-
className: `inline-flex items-center justify-center w-4 h-4 rounded-[3px] text-[9px] font-bold shrink-0 ${
|
|
1326
|
-
title:
|
|
1327
|
-
children:
|
|
1334
|
+
className: `inline-flex items-center justify-center w-4 h-4 rounded-[3px] text-[9px] font-bold shrink-0 ${k.type === "query" ? "bg-dt-query/20 text-dt-query shadow-[0_1px_2px_rgba(96,165,250,0.35)]" : k.type === "mutation" ? "bg-dt-mutation/20 text-dt-mutation shadow-[0_1px_2px_rgba(167,139,250,0.35)]" : "bg-dt-action/20 text-dt-action shadow-[0_1px_2px_rgba(52,211,153,0.35)]"}`,
|
|
1335
|
+
title: k.type,
|
|
1336
|
+
children: k.type === "query" ? "Q" : k.type === "mutation" ? "M" : "A"
|
|
1328
1337
|
}
|
|
1329
1338
|
),
|
|
1330
1339
|
/* @__PURE__ */ t(
|
|
1331
1340
|
"span",
|
|
1332
1341
|
{
|
|
1333
|
-
className: `w-1.5 h-1.5 rounded-full shrink-0 ${
|
|
1334
|
-
title:
|
|
1342
|
+
className: `w-1.5 h-1.5 rounded-full shrink-0 ${k.status === "success" ? "bg-dt-success" : k.status === "error" ? "bg-dt-error" : "bg-dt-warning animate-pulse"}`,
|
|
1343
|
+
title: k.status
|
|
1335
1344
|
}
|
|
1336
1345
|
),
|
|
1337
1346
|
/* @__PURE__ */ n("span", { className: "flex items-center gap-0 min-w-0 flex-1 overflow-hidden", children: [
|
|
1338
1347
|
/* @__PURE__ */ t(
|
|
1339
1348
|
"span",
|
|
1340
1349
|
{
|
|
1341
|
-
className: `font-mono text-[12px] text-dt-text-secondary truncate min-w-0 ${
|
|
1342
|
-
children:
|
|
1350
|
+
className: `font-mono text-[12px] text-dt-text-secondary truncate min-w-0 ${_ ? "max-w-[44%]" : ""}`,
|
|
1351
|
+
children: k.udfPath
|
|
1343
1352
|
}
|
|
1344
1353
|
),
|
|
1345
|
-
"args" in
|
|
1354
|
+
"args" in k && _ && /* @__PURE__ */ n(
|
|
1346
1355
|
"span",
|
|
1347
1356
|
{
|
|
1348
1357
|
className: "font-mono text-[11px] text-dt-text-muted min-w-0 flex-1 truncate max-w-[min(62vw,760px)]",
|
|
1349
|
-
title: tt(
|
|
1358
|
+
title: tt(A, 460),
|
|
1350
1359
|
children: [
|
|
1351
1360
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60", children: "(" }),
|
|
1352
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: wt(
|
|
1361
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: wt(A, ve) }),
|
|
1353
1362
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60", children: ")" })
|
|
1354
1363
|
]
|
|
1355
1364
|
}
|
|
1356
1365
|
)
|
|
1357
1366
|
] }),
|
|
1358
1367
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 shrink-0 text-[11px] text-dt-text-muted ml-auto", children: [
|
|
1359
|
-
|
|
1368
|
+
B && /* @__PURE__ */ n("span", { className: "text-dt-info text-[10px]", title: "Subscription update", children: [
|
|
1360
1369
|
"↻",
|
|
1361
|
-
|
|
1370
|
+
Q.updateCount
|
|
1362
1371
|
] }),
|
|
1363
|
-
|
|
1372
|
+
k.status === "success" && "result" in k && k.result !== void 0 && /* @__PURE__ */ n("span", { className: "text-dt-text-muted/80", title: tt(k.result), children: [
|
|
1364
1373
|
"↓",
|
|
1365
|
-
|
|
1374
|
+
K(k.result)
|
|
1366
1375
|
] }),
|
|
1367
|
-
|
|
1376
|
+
G !== null && (!B || G > 100) && /* @__PURE__ */ n(
|
|
1368
1377
|
"span",
|
|
1369
1378
|
{
|
|
1370
1379
|
className: "font-mono text-dt-text-muted",
|
|
1371
|
-
title: dt ? `E2E ${
|
|
1380
|
+
title: dt ? `E2E ${R(G)} = Net ${R(ot)} + Sim ${R(nt)}` : `Net ${R(G)}`,
|
|
1372
1381
|
children: [
|
|
1373
|
-
|
|
1374
|
-
dt ? `E2E ${
|
|
1382
|
+
B && "Δ",
|
|
1383
|
+
dt ? `E2E ${R(G)}` : `Net ${R(G)}`
|
|
1375
1384
|
]
|
|
1376
1385
|
}
|
|
1377
1386
|
),
|
|
1378
|
-
|
|
1387
|
+
k.status === "pending" && /* @__PURE__ */ t("span", { className: "font-mono text-dt-warning/90 text-[10px] uppercase", children: "pending" }),
|
|
1379
1388
|
dt && /* @__PURE__ */ n(
|
|
1380
1389
|
"span",
|
|
1381
1390
|
{
|
|
@@ -1383,7 +1392,7 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1383
1392
|
title: "Server/network round-trip",
|
|
1384
1393
|
children: [
|
|
1385
1394
|
"Net ",
|
|
1386
|
-
|
|
1395
|
+
R(ot)
|
|
1387
1396
|
]
|
|
1388
1397
|
}
|
|
1389
1398
|
),
|
|
@@ -1394,40 +1403,40 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1394
1403
|
title: "Devtools simulated client delivery delay",
|
|
1395
1404
|
children: [
|
|
1396
1405
|
"Sim +",
|
|
1397
|
-
|
|
1406
|
+
R(nt)
|
|
1398
1407
|
]
|
|
1399
1408
|
}
|
|
1400
1409
|
),
|
|
1401
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children:
|
|
1410
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children: _t(k.timestamp) })
|
|
1402
1411
|
] })
|
|
1403
1412
|
] })
|
|
1404
1413
|
},
|
|
1405
1414
|
e.id
|
|
1406
1415
|
);
|
|
1407
1416
|
}),
|
|
1408
|
-
|
|
1417
|
+
H && /* @__PURE__ */ n("div", { className: "sticky bottom-0 z-[2] px-3 py-2 border-t border-dt-border-light/40 bg-dt-bg-secondary/85 backdrop-blur-sm flex items-center justify-between gap-2", children: [
|
|
1409
1418
|
/* @__PURE__ */ n("span", { className: "text-[10px] text-dt-text-muted", children: [
|
|
1410
1419
|
"Showing ",
|
|
1411
|
-
|
|
1420
|
+
S.length,
|
|
1412
1421
|
" of ",
|
|
1413
|
-
|
|
1422
|
+
M
|
|
1414
1423
|
] }),
|
|
1415
1424
|
/* @__PURE__ */ n(
|
|
1416
1425
|
"button",
|
|
1417
1426
|
{
|
|
1418
1427
|
type: "button",
|
|
1419
1428
|
className: "px-2 py-1 text-[10px] font-semibold rounded border border-dt-border-light text-dt-text-secondary bg-dt-bg-tertiary hover:bg-white/10 hover:border-dt-border transition-colors",
|
|
1420
|
-
onClick: () =>
|
|
1429
|
+
onClick: () => y((e) => Math.min(e + te, M)),
|
|
1421
1430
|
children: [
|
|
1422
1431
|
"Load ",
|
|
1423
|
-
Math.min(
|
|
1432
|
+
Math.min(te, M - S.length),
|
|
1424
1433
|
" more"
|
|
1425
1434
|
]
|
|
1426
1435
|
}
|
|
1427
1436
|
)
|
|
1428
1437
|
] })
|
|
1429
1438
|
] }),
|
|
1430
|
-
|
|
1439
|
+
D && /* @__PURE__ */ n("div", { className: "w-[320px] border-l border-dt-border overflow-y-auto bg-dt-bg-secondary/50 animate-[dt-slide-in_0.2s_ease-out] shrink-0", children: [
|
|
1431
1440
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between px-3 py-2 border-b border-dt-border-light", children: [
|
|
1432
1441
|
/* @__PURE__ */ t("h4", { className: "text-[12px] font-semibold text-dt-text-secondary m-0", children: "Details" }),
|
|
1433
1442
|
/* @__PURE__ */ t(
|
|
@@ -1440,10 +1449,10 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1440
1449
|
)
|
|
1441
1450
|
] }),
|
|
1442
1451
|
/* @__PURE__ */ n("div", { className: "p-3 flex flex-col gap-3", children: [
|
|
1443
|
-
|
|
1444
|
-
const e = o.getSubscription(
|
|
1452
|
+
D.type === "query" && o.getSubscription(D.queryId) && (() => {
|
|
1453
|
+
const e = o.getSubscription(D.queryId);
|
|
1445
1454
|
if (e.updateCount > 0) {
|
|
1446
|
-
const
|
|
1455
|
+
const w = _t(e.addedAt);
|
|
1447
1456
|
return /* @__PURE__ */ n("div", { className: "flex items-center gap-1 flex-wrap bg-dt-info/5 border border-dt-info/20 rounded-md px-2 py-1 text-[10px] font-mono", children: [
|
|
1448
1457
|
/* @__PURE__ */ t("span", { className: "text-dt-info font-semibold uppercase tracking-wide", children: "Sub" }),
|
|
1449
1458
|
/* @__PURE__ */ n("span", { className: "text-dt-text-secondary", children: [
|
|
@@ -1459,127 +1468,127 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1459
1468
|
{
|
|
1460
1469
|
className: "ml-auto text-dt-text-muted/60",
|
|
1461
1470
|
title: new Date(e.addedAt).toLocaleString(),
|
|
1462
|
-
children:
|
|
1471
|
+
children: w
|
|
1463
1472
|
}
|
|
1464
1473
|
)
|
|
1465
1474
|
] });
|
|
1466
1475
|
}
|
|
1467
1476
|
return null;
|
|
1468
1477
|
})(),
|
|
1469
|
-
|
|
1470
|
-
const e =
|
|
1471
|
-
return /* @__PURE__ */ n(
|
|
1478
|
+
E && (() => {
|
|
1479
|
+
const e = E.udfPath, v = E.componentPath, w = new Date(E.timestamp), q = Qt(E), k = It(E), A = Z(E), _ = rt(E), Q = k !== null ? R(k) : null, B = A !== null ? R(A) : null, G = _ > 0 ? R(_) : null, ot = lt(E.args), nt = E.status === "success" && "result" in E && E.result !== void 0 ? E.result : void 0;
|
|
1480
|
+
return /* @__PURE__ */ n(X, { children: [
|
|
1472
1481
|
/* @__PURE__ */ n("div", { className: "flex flex-col gap-2", children: [
|
|
1473
1482
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
1474
1483
|
/* @__PURE__ */ t(
|
|
1475
1484
|
"span",
|
|
1476
1485
|
{
|
|
1477
|
-
className: `text-[11px] font-bold uppercase tracking-wider ${
|
|
1478
|
-
children:
|
|
1486
|
+
className: `text-[11px] font-bold uppercase tracking-wider ${E.type === "query" ? "text-dt-query" : E.type === "mutation" ? "text-dt-mutation" : "text-dt-action"}`,
|
|
1487
|
+
children: E.type === "query" ? "Query" : E.type === "mutation" ? "Mutation" : "Action"
|
|
1479
1488
|
}
|
|
1480
1489
|
),
|
|
1481
1490
|
/* @__PURE__ */ n(
|
|
1482
1491
|
"span",
|
|
1483
1492
|
{
|
|
1484
|
-
className: `text-[10px] font-semibold uppercase flex items-center gap-1 ${
|
|
1493
|
+
className: `text-[10px] font-semibold uppercase flex items-center gap-1 ${E.status === "success" ? "text-dt-success" : E.status === "error" ? "text-dt-error" : "text-dt-warning"}`,
|
|
1485
1494
|
children: [
|
|
1486
|
-
/* @__PURE__ */ t(Ct, { status:
|
|
1487
|
-
|
|
1495
|
+
/* @__PURE__ */ t(Ct, { status: E.status }),
|
|
1496
|
+
E.status?.toUpperCase() ?? "PENDING"
|
|
1488
1497
|
]
|
|
1489
1498
|
}
|
|
1490
1499
|
),
|
|
1491
|
-
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted ml-auto", title:
|
|
1500
|
+
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted ml-auto", title: w.toLocaleString(), children: xt(E.timestamp) })
|
|
1492
1501
|
] }),
|
|
1493
1502
|
/* @__PURE__ */ t("div", { className: "font-mono text-[12px] text-dt-text truncate", title: e, children: e || "Unknown function" }),
|
|
1494
1503
|
/* @__PURE__ */ n("div", { className: "flex flex-wrap gap-1", children: [
|
|
1495
|
-
|
|
1496
|
-
|
|
1504
|
+
q && /* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: q }),
|
|
1505
|
+
Q && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1497
1506
|
"E2E ",
|
|
1498
|
-
|
|
1507
|
+
Q
|
|
1499
1508
|
] }),
|
|
1500
|
-
|
|
1509
|
+
G && B && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1501
1510
|
"Net ",
|
|
1502
|
-
|
|
1511
|
+
B
|
|
1503
1512
|
] }),
|
|
1504
|
-
|
|
1513
|
+
G && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-warning/15 border border-dt-warning/20 rounded text-[10px] text-dt-warning font-mono", children: [
|
|
1505
1514
|
"Sim +",
|
|
1506
|
-
|
|
1515
|
+
G
|
|
1507
1516
|
] })
|
|
1508
1517
|
] }),
|
|
1509
|
-
|
|
1510
|
-
|
|
1518
|
+
v && /* @__PURE__ */ t("div", { className: "text-[10px] text-dt-text-muted/60 font-mono truncate", title: v, children: v }),
|
|
1519
|
+
E.type === "query" && E.triggeredBy && /* @__PURE__ */ n(
|
|
1511
1520
|
"button",
|
|
1512
1521
|
{
|
|
1513
1522
|
type: "button",
|
|
1514
1523
|
className: "flex items-center gap-1.5 px-2 py-1 bg-dt-mutation/10 border border-dt-mutation/20 rounded text-[10px] text-dt-mutation hover:bg-dt-mutation/20 transition-colors cursor-pointer",
|
|
1515
1524
|
title: "Jump to triggering operation",
|
|
1516
|
-
onClick: () => o.setFocusedEventId(
|
|
1525
|
+
onClick: () => o.setFocusedEventId(E.triggeredBy),
|
|
1517
1526
|
children: [
|
|
1518
1527
|
/* @__PURE__ */ n("span", { children: [
|
|
1519
1528
|
"Triggered by ",
|
|
1520
|
-
|
|
1529
|
+
ye(E.triggeredBy)
|
|
1521
1530
|
] }),
|
|
1522
1531
|
/* @__PURE__ */ t("span", { className: "text-dt-mutation/70", children: "→" })
|
|
1523
1532
|
]
|
|
1524
1533
|
}
|
|
1525
1534
|
)
|
|
1526
1535
|
] }),
|
|
1527
|
-
"args" in
|
|
1536
|
+
"args" in E && ot !== void 0 && /* @__PURE__ */ t(gt, { data: ot, label: "Arguments", maxHeight: 200 }),
|
|
1528
1537
|
nt !== void 0 && /* @__PURE__ */ t(gt, { data: nt, label: "Result", maxHeight: 200 }),
|
|
1529
|
-
|
|
1538
|
+
E.status === "error" && "error" in E && E.error && /* @__PURE__ */ n("div", { className: "flex flex-col gap-1", children: [
|
|
1530
1539
|
/* @__PURE__ */ t("div", { className: "text-[11px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Error" }),
|
|
1531
|
-
/* @__PURE__ */ t("div", { className: "text-[12px] text-dt-error bg-dt-error/10 rounded px-2 py-1.5 font-mono break-words", children:
|
|
1540
|
+
/* @__PURE__ */ t("div", { className: "text-[12px] text-dt-error bg-dt-error/10 rounded px-2 py-1.5 font-mono break-words", children: E.error })
|
|
1532
1541
|
] }),
|
|
1533
|
-
|
|
1542
|
+
E.logLines && E.logLines.length > 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-1", children: [
|
|
1534
1543
|
/* @__PURE__ */ t("div", { className: "text-[11px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Console Output" }),
|
|
1535
|
-
/* @__PURE__ */ t("div", { className: "bg-zinc-950/50 rounded border border-dt-border-light p-2 font-mono text-[11px] max-h-[150px] overflow-y-auto", children:
|
|
1544
|
+
/* @__PURE__ */ t("div", { className: "bg-zinc-950/50 rounded border border-dt-border-light p-2 font-mono text-[11px] max-h-[150px] overflow-y-auto", children: E.logLines.map((et, ht) => /* @__PURE__ */ t("div", { className: "text-dt-text-muted leading-relaxed", children: et }, ht)) })
|
|
1536
1545
|
] })
|
|
1537
1546
|
] });
|
|
1538
1547
|
})(),
|
|
1539
|
-
|
|
1548
|
+
z && /* @__PURE__ */ n(X, { children: [
|
|
1540
1549
|
/* @__PURE__ */ n("div", { className: "flex flex-col gap-2", children: [
|
|
1541
1550
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
1542
1551
|
/* @__PURE__ */ t("span", { className: "text-[11px] font-bold uppercase tracking-wider text-dt-warning", children: "Connection" }),
|
|
1543
1552
|
/* @__PURE__ */ n(
|
|
1544
1553
|
"span",
|
|
1545
1554
|
{
|
|
1546
|
-
className: `text-[10px] font-semibold uppercase flex items-center gap-1 ${
|
|
1555
|
+
className: `text-[10px] font-semibold uppercase flex items-center gap-1 ${z.status === "success" ? "text-dt-success" : z.status === "error" ? "text-dt-error" : "text-dt-warning"}`,
|
|
1547
1556
|
children: [
|
|
1548
|
-
/* @__PURE__ */ t(Ct, { status:
|
|
1549
|
-
|
|
1557
|
+
/* @__PURE__ */ t(Ct, { status: z.status }),
|
|
1558
|
+
z.status.toUpperCase()
|
|
1550
1559
|
]
|
|
1551
1560
|
}
|
|
1552
1561
|
),
|
|
1553
|
-
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted ml-auto", title: new Date(
|
|
1562
|
+
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted ml-auto", title: new Date(z.timestamp).toLocaleString(), children: xt(z.timestamp) })
|
|
1554
1563
|
] }),
|
|
1555
1564
|
/* @__PURE__ */ n("div", { className: "font-mono text-[12px] text-dt-text truncate", children: [
|
|
1556
|
-
|
|
1565
|
+
z.direction === "client" ? "→" : "←",
|
|
1557
1566
|
" ",
|
|
1558
|
-
|
|
1567
|
+
z.messageType
|
|
1559
1568
|
] }),
|
|
1560
1569
|
/* @__PURE__ */ n("div", { className: "flex flex-wrap gap-1", children: [
|
|
1561
|
-
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children:
|
|
1562
|
-
|
|
1570
|
+
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: Lt(z) }),
|
|
1571
|
+
z.tokenType && /* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: z.tokenType })
|
|
1563
1572
|
] })
|
|
1564
1573
|
] }),
|
|
1565
|
-
|
|
1566
|
-
|
|
1574
|
+
z.details !== void 0 && /* @__PURE__ */ t(gt, { data: z.details, label: "Details", maxHeight: 220 }),
|
|
1575
|
+
z.error && /* @__PURE__ */ n("div", { className: "flex flex-col gap-1", children: [
|
|
1567
1576
|
/* @__PURE__ */ t("div", { className: "text-[11px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Error" }),
|
|
1568
|
-
/* @__PURE__ */ t("div", { className: "text-[12px] text-dt-error bg-dt-error/10 rounded px-2 py-1.5 font-mono break-words", children:
|
|
1577
|
+
/* @__PURE__ */ t("div", { className: "text-[12px] text-dt-error bg-dt-error/10 rounded px-2 py-1.5 font-mono break-words", children: z.error })
|
|
1569
1578
|
] })
|
|
1570
1579
|
] })
|
|
1571
1580
|
] })
|
|
1572
1581
|
] })
|
|
1573
1582
|
] }),
|
|
1574
|
-
|
|
1575
|
-
const e =
|
|
1583
|
+
m && (() => {
|
|
1584
|
+
const e = m.event;
|
|
1576
1585
|
if (e.type === "auth") {
|
|
1577
|
-
const
|
|
1586
|
+
const J = e.details !== void 0 ? tt(e.details, 200) : null, st = e.error && e.error.length > 160 ? `${e.error.slice(0, 157)}…` : e.error;
|
|
1578
1587
|
return /* @__PURE__ */ n(
|
|
1579
1588
|
"div",
|
|
1580
1589
|
{
|
|
1581
1590
|
className: "fixed z-[9999999] w-[300px] bg-zinc-900/[0.98] border border-dt-border rounded-lg shadow-2xl p-3 flex flex-col gap-2 pointer-events-none animate-[dt-fade-in_0.15s_ease-out] backdrop-blur-lg",
|
|
1582
|
-
style: { top:
|
|
1591
|
+
style: { top: m.y, left: m.x },
|
|
1583
1592
|
role: "tooltip",
|
|
1584
1593
|
children: [
|
|
1585
1594
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
@@ -1602,12 +1611,12 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1602
1611
|
] }),
|
|
1603
1612
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-1 flex-wrap", children: [
|
|
1604
1613
|
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: xt(e.timestamp) }),
|
|
1605
|
-
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children:
|
|
1614
|
+
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: Lt(e) }),
|
|
1606
1615
|
e.tokenType && /* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: e.tokenType })
|
|
1607
1616
|
] }),
|
|
1608
|
-
|
|
1617
|
+
J && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
1609
1618
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Details" }),
|
|
1610
|
-
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[100px] whitespace-pre-wrap break-all m-0", children: /* @__PURE__ */ t(
|
|
1619
|
+
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[100px] whitespace-pre-wrap break-all m-0", children: /* @__PURE__ */ t(Ot, { json: J }) })
|
|
1611
1620
|
] }),
|
|
1612
1621
|
st && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
1613
1622
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Error" }),
|
|
@@ -1617,12 +1626,12 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1617
1626
|
}
|
|
1618
1627
|
);
|
|
1619
1628
|
}
|
|
1620
|
-
const
|
|
1629
|
+
const v = Lt(e), w = It(e), q = Z(e), k = rt(e), A = w !== null ? R(w) : null, _ = q !== null ? R(q) : null, Q = k > 0 ? R(k) : null, B = lt(e.args), G = B !== void 0 ? tt(B) : null, ot = B !== void 0 ? K(B) : null, nt = B !== void 0 ? tt(B) : "", et = e.status === "success" && e.result !== void 0 ? e.result : void 0, ht = et ? tt(et) : null, dt = et ? tt(et) : "", yt = et ? K(et) : null, kt = e.status === "error" && e.error ? e.error.length > 160 ? `${e.error.slice(0, 157)}…` : e.error : null;
|
|
1621
1630
|
return /* @__PURE__ */ n(
|
|
1622
1631
|
"div",
|
|
1623
1632
|
{
|
|
1624
1633
|
className: "fixed z-[9999999] w-[300px] bg-zinc-900/[0.98] border border-dt-border rounded-lg shadow-2xl p-3 flex flex-col gap-2 pointer-events-none animate-[dt-fade-in_0.15s_ease-out] backdrop-blur-lg",
|
|
1625
|
-
style: { top:
|
|
1634
|
+
style: { top: m.y, left: m.x },
|
|
1626
1635
|
role: "tooltip",
|
|
1627
1636
|
children: [
|
|
1628
1637
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
@@ -1647,38 +1656,38 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1647
1656
|
] }),
|
|
1648
1657
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-1 flex-wrap", children: [
|
|
1649
1658
|
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: xt(e.timestamp) }),
|
|
1650
|
-
|
|
1659
|
+
A && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1651
1660
|
"E2E ",
|
|
1652
|
-
|
|
1661
|
+
A
|
|
1653
1662
|
] }),
|
|
1654
|
-
|
|
1663
|
+
Q && _ && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1655
1664
|
"Net ",
|
|
1656
|
-
|
|
1665
|
+
_
|
|
1657
1666
|
] }),
|
|
1658
|
-
|
|
1667
|
+
Q && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-warning/15 border border-dt-warning/20 rounded text-[10px] text-dt-warning font-mono", children: [
|
|
1659
1668
|
"Sim +",
|
|
1660
|
-
|
|
1669
|
+
Q
|
|
1661
1670
|
] }),
|
|
1662
|
-
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children:
|
|
1671
|
+
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: v }),
|
|
1663
1672
|
e.logLines && e.logLines.length > 0 && /* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1664
1673
|
"Logs ",
|
|
1665
1674
|
e.logLines.length
|
|
1666
1675
|
] })
|
|
1667
1676
|
] }),
|
|
1668
1677
|
e.componentPath && /* @__PURE__ */ t("div", { className: "text-[10px] text-dt-text-muted/60 font-mono truncate", title: e.componentPath, children: e.componentPath }),
|
|
1669
|
-
|
|
1678
|
+
B !== void 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
1670
1679
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
1671
1680
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Args" }),
|
|
1672
1681
|
ot && /* @__PURE__ */ t("span", { className: "text-[9px] text-dt-text-muted/60 font-mono", children: ot })
|
|
1673
1682
|
] }),
|
|
1674
|
-
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title:
|
|
1683
|
+
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title: G ?? void 0, children: /* @__PURE__ */ t(Ot, { json: nt }) })
|
|
1675
1684
|
] }),
|
|
1676
1685
|
et !== void 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
1677
1686
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
1678
1687
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Result" }),
|
|
1679
1688
|
yt && /* @__PURE__ */ t("span", { className: "text-[9px] text-dt-text-muted/60 font-mono", children: yt })
|
|
1680
1689
|
] }),
|
|
1681
|
-
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title: ht ?? void 0, children: /* @__PURE__ */ t(
|
|
1690
|
+
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title: ht ?? void 0, children: /* @__PURE__ */ t(Ot, { json: dt }) })
|
|
1682
1691
|
] }),
|
|
1683
1692
|
kt && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
1684
1693
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Error" }),
|
|
@@ -1688,18 +1697,18 @@ function ve({ eventStore: o, panelConnectionState: r }) {
|
|
|
1688
1697
|
}
|
|
1689
1698
|
);
|
|
1690
1699
|
})(),
|
|
1691
|
-
|
|
1692
|
-
|
|
1700
|
+
$ && /* @__PURE__ */ t(
|
|
1701
|
+
Kt,
|
|
1693
1702
|
{
|
|
1694
|
-
x:
|
|
1695
|
-
y:
|
|
1696
|
-
items:
|
|
1697
|
-
onClose: () =>
|
|
1703
|
+
x: $.x,
|
|
1704
|
+
y: $.y,
|
|
1705
|
+
items: $.items,
|
|
1706
|
+
onClose: () => I(null)
|
|
1698
1707
|
}
|
|
1699
1708
|
)
|
|
1700
1709
|
] });
|
|
1701
1710
|
}
|
|
1702
|
-
function
|
|
1711
|
+
function Ot({ json: o }) {
|
|
1703
1712
|
const r = it(() => o.replace(
|
|
1704
1713
|
/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+-]?\d+)?)/g,
|
|
1705
1714
|
(a) => {
|
|
@@ -1718,92 +1727,94 @@ function Ct({ status: o }) {
|
|
|
1718
1727
|
/* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "2" })
|
|
1719
1728
|
] });
|
|
1720
1729
|
}
|
|
1721
|
-
const
|
|
1730
|
+
const ee = {
|
|
1722
1731
|
maxStringLength: 96,
|
|
1723
1732
|
stringTailLength: 20,
|
|
1724
1733
|
maxArrayItems: 4,
|
|
1725
1734
|
maxObjectEntries: 4,
|
|
1726
1735
|
maxDepth: 3
|
|
1727
1736
|
};
|
|
1728
|
-
function
|
|
1729
|
-
const [r, a] =
|
|
1730
|
-
|
|
1731
|
-
const
|
|
1737
|
+
function Ne({ eventStore: o }) {
|
|
1738
|
+
const [r, a] = L([]), [s, l] = L(null), [u, c] = L(0), [b, N] = L("all"), [y, D] = L(""), [h, x] = L(null), [f, m] = L(null), g = ft(null);
|
|
1739
|
+
U(() => {
|
|
1740
|
+
const d = () => {
|
|
1732
1741
|
a(o.getActiveSubscriptions());
|
|
1733
|
-
},
|
|
1734
|
-
return
|
|
1742
|
+
}, p = o.subscribe(d);
|
|
1743
|
+
return d(), p;
|
|
1735
1744
|
}, [o]);
|
|
1736
|
-
const
|
|
1737
|
-
let
|
|
1738
|
-
return
|
|
1739
|
-
(
|
|
1740
|
-
)), [...
|
|
1741
|
-
}, [r,
|
|
1742
|
-
|
|
1743
|
-
const
|
|
1744
|
-
if ((
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
if (
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1745
|
+
const $ = it(() => {
|
|
1746
|
+
let d = r;
|
|
1747
|
+
return b !== "all" && (d = d.filter((p) => p.status === b)), y && (d = d.filter(
|
|
1748
|
+
(p) => p.udfPath.toLowerCase().includes(y.toLowerCase()) || p.componentPath?.toLowerCase().includes(y.toLowerCase())
|
|
1749
|
+
)), [...d].sort((p, i) => p.lastUpdate !== i.lastUpdate ? i.lastUpdate - p.lastUpdate : p.addedAt !== i.addedAt ? i.addedAt - p.addedAt : i.queryId - p.queryId);
|
|
1750
|
+
}, [r, b, y]);
|
|
1751
|
+
U(() => {
|
|
1752
|
+
const d = (p) => {
|
|
1753
|
+
if ($t()) {
|
|
1754
|
+
if ((p.metaKey || p.ctrlKey) && p.key === "k") {
|
|
1755
|
+
p.preventDefault(), g.current?.focus();
|
|
1756
|
+
return;
|
|
1757
|
+
}
|
|
1758
|
+
if (p.key === "Escape") {
|
|
1759
|
+
p.preventDefault(), s !== null ? l(null) : (b !== "all" || y) && (N("all"), D(""));
|
|
1760
|
+
return;
|
|
1761
|
+
}
|
|
1762
|
+
if (ie() !== g.current && $.length !== 0) {
|
|
1763
|
+
if (p.key === "ArrowDown")
|
|
1764
|
+
p.preventDefault(), c((i) => Math.min(i + 1, $.length - 1));
|
|
1765
|
+
else if (p.key === "ArrowUp")
|
|
1766
|
+
p.preventDefault(), c((i) => Math.max(i - 1, 0));
|
|
1767
|
+
else if (p.key === "Enter" || p.key === " ") {
|
|
1768
|
+
p.preventDefault();
|
|
1769
|
+
const i = $[u];
|
|
1770
|
+
i && l(s === i.queryId ? null : i.queryId);
|
|
1771
|
+
}
|
|
1761
1772
|
}
|
|
1762
1773
|
}
|
|
1763
1774
|
};
|
|
1764
|
-
return window.addEventListener("keydown",
|
|
1765
|
-
}, [
|
|
1775
|
+
return window.addEventListener("keydown", d), () => window.removeEventListener("keydown", d);
|
|
1776
|
+
}, [$, u, s, b, y]), U(() => {
|
|
1766
1777
|
c(0);
|
|
1767
|
-
}, [
|
|
1768
|
-
const
|
|
1769
|
-
|
|
1770
|
-
}, []),
|
|
1778
|
+
}, [b, y]);
|
|
1779
|
+
const I = F((d) => {
|
|
1780
|
+
P(d);
|
|
1781
|
+
}, []), T = F((d, p) => {
|
|
1771
1782
|
if (typeof window > "u") return null;
|
|
1772
|
-
const
|
|
1773
|
-
let
|
|
1774
|
-
|
|
1775
|
-
let Y =
|
|
1776
|
-
return Y <
|
|
1777
|
-
}, []),
|
|
1778
|
-
if (
|
|
1779
|
-
const
|
|
1780
|
-
return
|
|
1781
|
-
}, []),
|
|
1782
|
-
(
|
|
1783
|
-
const
|
|
1784
|
-
{ label: "Copy Function Path", action: () =>
|
|
1783
|
+
const i = 8, C = 300, S = window.innerWidth, M = window.innerHeight, H = Math.min(260, M - i * 2);
|
|
1784
|
+
let j = p.right + i;
|
|
1785
|
+
j + C > S - i && (j = p.left - C - i), j < i && (j = Math.max(i, S - C - i));
|
|
1786
|
+
let Y = p.top + p.height / 2 - H / 2;
|
|
1787
|
+
return Y < i && (Y = i), Y + H > M - i && (Y = Math.max(i, M - i - H)), { subscription: d, x: j, y: Y };
|
|
1788
|
+
}, []), E = F((d) => {
|
|
1789
|
+
if (d == null) return "0";
|
|
1790
|
+
const p = JSON.stringify(d), i = new Blob([p]).size;
|
|
1791
|
+
return i < 1024 ? `${i}B` : i < 1024 * 1024 ? `${(i / 1024).toFixed(1)}KB` : `${(i / (1024 * 1024)).toFixed(1)}MB`;
|
|
1792
|
+
}, []), z = F(
|
|
1793
|
+
(d) => {
|
|
1794
|
+
const p = lt(d.args), i = p != null, C = d.currentValue !== void 0, S = [
|
|
1795
|
+
{ label: "Copy Function Path", action: () => P(d.udfPath), shortcut: "⌘C" }
|
|
1785
1796
|
];
|
|
1786
|
-
return
|
|
1797
|
+
return i && S.push({
|
|
1787
1798
|
label: "Copy Arguments",
|
|
1788
|
-
action: () =>
|
|
1789
|
-
}),
|
|
1799
|
+
action: () => P(JSON.stringify(p, null, 2))
|
|
1800
|
+
}), C && S.push({
|
|
1790
1801
|
label: "Copy Current Value",
|
|
1791
|
-
action: () =>
|
|
1792
|
-
}),
|
|
1802
|
+
action: () => P(JSON.stringify(d.currentValue, null, 2))
|
|
1803
|
+
}), S.push({
|
|
1793
1804
|
label: "Filter by Function",
|
|
1794
|
-
action: () =>
|
|
1805
|
+
action: () => D(d.udfPath),
|
|
1795
1806
|
separator: !0
|
|
1796
|
-
}),
|
|
1807
|
+
}), S.push({
|
|
1797
1808
|
label: "Copy Query ID",
|
|
1798
|
-
action: () =>
|
|
1799
|
-
}),
|
|
1809
|
+
action: () => P(String(d.queryId))
|
|
1810
|
+
}), S;
|
|
1800
1811
|
},
|
|
1801
1812
|
[]
|
|
1802
|
-
),
|
|
1803
|
-
const
|
|
1804
|
-
if (
|
|
1805
|
-
const
|
|
1806
|
-
return
|
|
1813
|
+
), O = (d) => {
|
|
1814
|
+
const p = Math.floor((Date.now() - d) / 1e3);
|
|
1815
|
+
if (p < 60) return `${p}s ago`;
|
|
1816
|
+
const i = Math.floor(p / 60);
|
|
1817
|
+
return i < 60 ? `${i}m ago` : `${Math.floor(i / 60)}h ago`;
|
|
1807
1818
|
};
|
|
1808
1819
|
return /* @__PURE__ */ n("div", { className: "flex flex-col h-full overflow-hidden", children: [
|
|
1809
1820
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 px-3 py-1.5 border-b border-dt-border-light", children: [
|
|
@@ -1811,118 +1822,118 @@ function ye({ eventStore: o }) {
|
|
|
1811
1822
|
/* @__PURE__ */ t(
|
|
1812
1823
|
"button",
|
|
1813
1824
|
{
|
|
1814
|
-
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all hover:bg-white/5 hover:text-dt-text-tertiary ${
|
|
1815
|
-
onClick: () =>
|
|
1825
|
+
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all hover:bg-white/5 hover:text-dt-text-tertiary ${b === "all" ? "bg-zinc-500/25 text-dt-text-tertiary shadow-[0_0_0_1px_rgba(161,161,170,0.4)]" : "text-dt-text-muted"}`,
|
|
1826
|
+
onClick: () => N("all"),
|
|
1816
1827
|
"aria-label": "Show all subscriptions",
|
|
1817
|
-
"aria-pressed":
|
|
1828
|
+
"aria-pressed": b === "all",
|
|
1818
1829
|
children: "All"
|
|
1819
1830
|
}
|
|
1820
1831
|
),
|
|
1821
1832
|
/* @__PURE__ */ t(
|
|
1822
1833
|
"button",
|
|
1823
1834
|
{
|
|
1824
|
-
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all ${
|
|
1825
|
-
onClick: () =>
|
|
1835
|
+
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all ${b === "active" ? "bg-dt-query/25 text-dt-query shadow-[0_0_0_1px_rgba(96,165,250,0.5)]" : "text-dt-text-muted hover:bg-dt-query/15 hover:text-dt-query"}`,
|
|
1836
|
+
onClick: () => N("active"),
|
|
1826
1837
|
"aria-label": "Show active subscriptions",
|
|
1827
|
-
"aria-pressed":
|
|
1838
|
+
"aria-pressed": b === "active",
|
|
1828
1839
|
children: "Active"
|
|
1829
1840
|
}
|
|
1830
1841
|
),
|
|
1831
1842
|
/* @__PURE__ */ t(
|
|
1832
1843
|
"button",
|
|
1833
1844
|
{
|
|
1834
|
-
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all ${
|
|
1835
|
-
onClick: () =>
|
|
1845
|
+
className: `px-2 py-1 text-[11px] font-mono font-bold uppercase tracking-wide bg-transparent border-none rounded cursor-pointer transition-all ${b === "error" ? "bg-dt-error/25 text-dt-error shadow-[0_0_0_1px_rgba(239,68,68,0.5)]" : "text-dt-text-muted hover:bg-dt-error/15 hover:text-dt-error"}`,
|
|
1846
|
+
onClick: () => N("error"),
|
|
1836
1847
|
"aria-label": "Show error subscriptions",
|
|
1837
|
-
"aria-pressed":
|
|
1848
|
+
"aria-pressed": b === "error",
|
|
1838
1849
|
children: "Errors"
|
|
1839
1850
|
}
|
|
1840
1851
|
)
|
|
1841
1852
|
] }),
|
|
1842
1853
|
/* @__PURE__ */ t(
|
|
1843
|
-
|
|
1854
|
+
Ut,
|
|
1844
1855
|
{
|
|
1845
|
-
ref:
|
|
1846
|
-
value:
|
|
1847
|
-
onValueChange:
|
|
1848
|
-
onClear: () =>
|
|
1856
|
+
ref: g,
|
|
1857
|
+
value: y,
|
|
1858
|
+
onValueChange: D,
|
|
1859
|
+
onClear: () => D(""),
|
|
1849
1860
|
placeholder: "Search subscriptions... (Cmd/Ctrl+K)",
|
|
1850
1861
|
className: "stretch"
|
|
1851
1862
|
}
|
|
1852
1863
|
)
|
|
1853
1864
|
] }),
|
|
1854
1865
|
/* @__PURE__ */ n("div", { className: "flex-1 overflow-y-auto", children: [
|
|
1855
|
-
|
|
1866
|
+
$.length === 0 && /* @__PURE__ */ n("div", { className: "flex flex-col items-center justify-center py-12 text-dt-text-muted gap-2", children: [
|
|
1856
1867
|
/* @__PURE__ */ t("svg", { width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", children: /* @__PURE__ */ t("circle", { cx: "12", cy: "12", r: "10", strokeWidth: "1.5" }) }),
|
|
1857
|
-
/* @__PURE__ */ t("p", { children: r.length === 0 ? "No active subscriptions" :
|
|
1858
|
-
|
|
1868
|
+
/* @__PURE__ */ t("p", { children: r.length === 0 ? "No active subscriptions" : b !== "all" || y ? "No subscriptions match your filters" : "No active subscriptions" }),
|
|
1869
|
+
b !== "all" || y ? /* @__PURE__ */ t("p", { className: "text-[11px] text-dt-text-muted/60", children: "Try adjusting your filters or search" }) : null
|
|
1859
1870
|
] }),
|
|
1860
|
-
|
|
1861
|
-
const
|
|
1871
|
+
$.map((d, p) => {
|
|
1872
|
+
const i = s === d.queryId, C = p === u, S = d.status === "error" ? "error" : "success", M = lt(d.args), H = M != null, j = JSON.stringify(M ?? null, null, 2), Y = `Subscription ${d.queryId} ${d.udfPath} ${d.status}${H ? ` with args ${wt(M, ee)}` : ""}`;
|
|
1862
1873
|
return /* @__PURE__ */ n(
|
|
1863
1874
|
"div",
|
|
1864
1875
|
{
|
|
1865
|
-
className: `border-b border-dt-border-light/50 transition-colors ${
|
|
1876
|
+
className: `border-b border-dt-border-light/50 transition-colors ${d.status === "error" ? "border-l-2 border-l-dt-error/40" : ""} ${i ? "bg-white/[0.03]" : ""} ${C ? "bg-white/[0.03] outline outline-1 outline-dt-info/30 -outline-offset-1" : ""}`,
|
|
1866
1877
|
children: [
|
|
1867
1878
|
/* @__PURE__ */ n(
|
|
1868
1879
|
"div",
|
|
1869
1880
|
{
|
|
1870
1881
|
className: "flex items-center gap-2 px-3 py-1.5 cursor-pointer hover:bg-white/[0.03]",
|
|
1871
1882
|
onClick: () => {
|
|
1872
|
-
l(
|
|
1883
|
+
l(i ? null : d.queryId), c(p);
|
|
1873
1884
|
},
|
|
1874
|
-
onKeyDown: (
|
|
1875
|
-
(
|
|
1885
|
+
onKeyDown: (K) => {
|
|
1886
|
+
(K.key === "Enter" || K.key === " ") && (K.preventDefault(), l(i ? null : d.queryId), c(p));
|
|
1876
1887
|
},
|
|
1877
|
-
onContextMenu: (
|
|
1878
|
-
|
|
1879
|
-
x:
|
|
1880
|
-
y:
|
|
1881
|
-
items:
|
|
1888
|
+
onContextMenu: (K) => {
|
|
1889
|
+
K.preventDefault(), x(null), m({
|
|
1890
|
+
x: K.clientX,
|
|
1891
|
+
y: K.clientY,
|
|
1892
|
+
items: z(d)
|
|
1882
1893
|
});
|
|
1883
1894
|
},
|
|
1884
|
-
onMouseEnter: (
|
|
1885
|
-
const
|
|
1895
|
+
onMouseEnter: (K) => {
|
|
1896
|
+
const R = K.currentTarget.getBoundingClientRect(), Z = T(d, R);
|
|
1886
1897
|
Z && x(Z);
|
|
1887
1898
|
},
|
|
1888
|
-
onMouseMove: (
|
|
1889
|
-
if (h?.subscription.queryId ===
|
|
1890
|
-
const
|
|
1899
|
+
onMouseMove: (K) => {
|
|
1900
|
+
if (h?.subscription.queryId === d.queryId) {
|
|
1901
|
+
const R = K.currentTarget.getBoundingClientRect(), Z = T(d, R);
|
|
1891
1902
|
Z && x(
|
|
1892
|
-
(rt) => rt && rt.subscription.queryId ===
|
|
1903
|
+
(rt) => rt && rt.subscription.queryId === d.queryId && (rt.x !== Z.x || rt.y !== Z.y) ? Z : rt
|
|
1893
1904
|
);
|
|
1894
1905
|
}
|
|
1895
1906
|
},
|
|
1896
1907
|
onMouseLeave: () => {
|
|
1897
|
-
h?.subscription.queryId ===
|
|
1908
|
+
h?.subscription.queryId === d.queryId && x(null);
|
|
1898
1909
|
},
|
|
1899
1910
|
role: "button",
|
|
1900
1911
|
tabIndex: 0,
|
|
1901
1912
|
"aria-label": Y,
|
|
1902
|
-
"aria-expanded":
|
|
1903
|
-
"aria-current":
|
|
1913
|
+
"aria-expanded": i,
|
|
1914
|
+
"aria-current": C ? "true" : void 0,
|
|
1904
1915
|
children: [
|
|
1905
1916
|
/* @__PURE__ */ n("span", { className: "text-[10px] font-mono text-dt-text-muted font-semibold shrink-0", children: [
|
|
1906
1917
|
"Q",
|
|
1907
|
-
|
|
1918
|
+
d.queryId
|
|
1908
1919
|
] }),
|
|
1909
|
-
/* @__PURE__ */ t("span", { className: `w-1.5 h-1.5 rounded-full shrink-0 ${
|
|
1920
|
+
/* @__PURE__ */ t("span", { className: `w-1.5 h-1.5 rounded-full shrink-0 ${S === "error" ? "bg-dt-error" : "bg-dt-success"}` }),
|
|
1910
1921
|
/* @__PURE__ */ n("span", { className: "flex items-center gap-0 min-w-0 flex-1 overflow-hidden", children: [
|
|
1911
1922
|
/* @__PURE__ */ t(
|
|
1912
1923
|
"span",
|
|
1913
1924
|
{
|
|
1914
|
-
className: `font-mono text-[12px] text-dt-text-secondary truncate min-w-0 ${
|
|
1915
|
-
children:
|
|
1925
|
+
className: `font-mono text-[12px] text-dt-text-secondary truncate min-w-0 ${H ? "max-w-[44%]" : ""}`,
|
|
1926
|
+
children: d.udfPath
|
|
1916
1927
|
}
|
|
1917
1928
|
),
|
|
1918
|
-
|
|
1929
|
+
H && /* @__PURE__ */ n(
|
|
1919
1930
|
"span",
|
|
1920
1931
|
{
|
|
1921
1932
|
className: "font-mono text-[11px] text-dt-text-muted min-w-0 flex-1 truncate max-w-[min(58vw,680px)]",
|
|
1922
|
-
title: tt(
|
|
1933
|
+
title: tt(M, 360),
|
|
1923
1934
|
children: [
|
|
1924
1935
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60", children: "(" }),
|
|
1925
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: wt(
|
|
1936
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: wt(M, ee) }),
|
|
1926
1937
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60", children: ")" })
|
|
1927
1938
|
]
|
|
1928
1939
|
}
|
|
@@ -1931,113 +1942,113 @@ function ye({ eventStore: o }) {
|
|
|
1931
1942
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 shrink-0 text-[11px] text-dt-text-muted ml-auto", children: [
|
|
1932
1943
|
/* @__PURE__ */ n("span", { className: "text-dt-info font-mono", children: [
|
|
1933
1944
|
"↻",
|
|
1934
|
-
|
|
1945
|
+
d.updateCount
|
|
1935
1946
|
] }),
|
|
1936
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children:
|
|
1937
|
-
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted/40", children:
|
|
1947
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 font-mono", children: O(d.lastUpdate) }),
|
|
1948
|
+
/* @__PURE__ */ t("span", { className: "text-[10px] text-dt-text-muted/40", children: i ? "▼" : "▶" })
|
|
1938
1949
|
] })
|
|
1939
1950
|
]
|
|
1940
1951
|
}
|
|
1941
1952
|
),
|
|
1942
|
-
|
|
1953
|
+
i && /* @__PURE__ */ n("div", { className: "px-3 py-2 bg-dt-bg-secondary/30 border-t border-dt-border-light/30 flex flex-col gap-2 animate-[dt-fade-in_0.15s_ease-out]", children: [
|
|
1943
1954
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-1 flex-wrap text-[10px] font-mono", children: [
|
|
1944
1955
|
/* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-dt-text-muted", children: [
|
|
1945
1956
|
"Started ",
|
|
1946
|
-
new Date(
|
|
1957
|
+
new Date(d.addedAt).toLocaleTimeString()
|
|
1947
1958
|
] }),
|
|
1948
|
-
|
|
1959
|
+
d.componentPath && /* @__PURE__ */ t(
|
|
1949
1960
|
"span",
|
|
1950
1961
|
{
|
|
1951
1962
|
className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-dt-text-muted truncate max-w-[200px]",
|
|
1952
|
-
title:
|
|
1953
|
-
children:
|
|
1963
|
+
title: d.componentPath,
|
|
1964
|
+
children: d.componentPath
|
|
1954
1965
|
}
|
|
1955
1966
|
)
|
|
1956
1967
|
] }),
|
|
1957
|
-
|
|
1968
|
+
d.status === "error" && d.error && /* @__PURE__ */ t("div", { className: "text-dt-error font-mono text-[11px] bg-dt-error/10 rounded px-2 py-1 break-words", children: d.error }),
|
|
1958
1969
|
/* @__PURE__ */ t(
|
|
1959
1970
|
gt,
|
|
1960
1971
|
{
|
|
1961
|
-
data:
|
|
1972
|
+
data: M ?? null,
|
|
1962
1973
|
label: "Args",
|
|
1963
|
-
onCopy: () =>
|
|
1974
|
+
onCopy: () => I(j ?? "null"),
|
|
1964
1975
|
maxHeight: 200
|
|
1965
1976
|
}
|
|
1966
1977
|
),
|
|
1967
|
-
|
|
1968
|
-
|
|
1978
|
+
d.currentValue !== void 0 && d.previousValue !== void 0 && /* @__PURE__ */ t(Ee, { previous: d.previousValue, current: d.currentValue }),
|
|
1979
|
+
d.currentValue !== void 0 && /* @__PURE__ */ t(
|
|
1969
1980
|
gt,
|
|
1970
1981
|
{
|
|
1971
|
-
data:
|
|
1982
|
+
data: d.currentValue,
|
|
1972
1983
|
label: "Current Value",
|
|
1973
|
-
onCopy: () =>
|
|
1984
|
+
onCopy: () => I(JSON.stringify(d.currentValue, null, 2)),
|
|
1974
1985
|
maxHeight: 300
|
|
1975
1986
|
}
|
|
1976
1987
|
)
|
|
1977
1988
|
] })
|
|
1978
1989
|
]
|
|
1979
1990
|
},
|
|
1980
|
-
|
|
1991
|
+
d.queryId
|
|
1981
1992
|
);
|
|
1982
1993
|
})
|
|
1983
1994
|
] }),
|
|
1984
1995
|
h && (() => {
|
|
1985
|
-
const
|
|
1996
|
+
const d = h.subscription, p = lt(d.args), i = p !== void 0 ? tt(p) : null, C = p !== void 0 ? E(p) : null, S = p !== void 0 ? tt(p) : "", M = d.currentValue, H = M !== void 0 ? tt(M) : null, j = M !== void 0 ? tt(M) : "", Y = M !== void 0 ? E(M) : null, K = d.status === "error" && d.error ? d.error.length > 160 ? `${d.error.slice(0, 157)}…` : d.error : null;
|
|
1986
1997
|
return /* @__PURE__ */ n("div", { className: "fixed z-[9999999] w-[300px] bg-zinc-900/[0.98] border border-dt-border rounded-lg shadow-2xl p-3 flex flex-col gap-2 pointer-events-none animate-[dt-fade-in_0.15s_ease-out] backdrop-blur-lg", style: { top: h.y, left: h.x }, role: "tooltip", children: [
|
|
1987
1998
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
1988
1999
|
/* @__PURE__ */ t("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-[3px] bg-dt-query/20 text-dt-query text-[9px] font-bold shrink-0 shadow-[0_1px_2px_rgba(96,165,250,0.35)]", children: "Q" }),
|
|
1989
|
-
/* @__PURE__ */ t("span", { className: "font-mono text-[12px] text-dt-text truncate flex-1", title:
|
|
1990
|
-
/* @__PURE__ */ n("span", { className: `text-[9px] font-bold uppercase flex items-center gap-0.5 px-1.5 py-0.5 rounded-full ${
|
|
1991
|
-
|
|
1992
|
-
|
|
2000
|
+
/* @__PURE__ */ t("span", { className: "font-mono text-[12px] text-dt-text truncate flex-1", title: d.udfPath, children: d.udfPath }),
|
|
2001
|
+
/* @__PURE__ */ n("span", { className: `text-[9px] font-bold uppercase flex items-center gap-0.5 px-1.5 py-0.5 rounded-full ${d.status === "error" ? "bg-dt-error/15 text-dt-error" : "bg-dt-success/15 text-dt-success"}`, children: [
|
|
2002
|
+
d.status === "error" ? "❌" : "✓",
|
|
2003
|
+
d.status.toUpperCase()
|
|
1993
2004
|
] })
|
|
1994
2005
|
] }),
|
|
1995
2006
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-1 flex-wrap", children: [
|
|
1996
2007
|
/* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
1997
2008
|
"Q",
|
|
1998
|
-
|
|
2009
|
+
d.queryId
|
|
1999
2010
|
] }),
|
|
2000
2011
|
/* @__PURE__ */ n("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: [
|
|
2001
2012
|
"↻ ",
|
|
2002
|
-
|
|
2013
|
+
d.updateCount,
|
|
2003
2014
|
" updates"
|
|
2004
2015
|
] }),
|
|
2005
|
-
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children:
|
|
2016
|
+
/* @__PURE__ */ t("span", { className: "px-1.5 py-0.5 bg-dt-bg-tertiary rounded text-[10px] text-dt-text-muted font-mono", children: O(d.lastUpdate) })
|
|
2006
2017
|
] }),
|
|
2007
|
-
|
|
2008
|
-
|
|
2018
|
+
d.componentPath && /* @__PURE__ */ t("div", { className: "text-[10px] text-dt-text-muted/60 font-mono truncate", title: d.componentPath, children: d.componentPath }),
|
|
2019
|
+
p !== void 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
2009
2020
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
2010
2021
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Args" }),
|
|
2011
|
-
|
|
2022
|
+
C && /* @__PURE__ */ t("span", { className: "text-[9px] text-dt-text-muted/60 font-mono", children: C })
|
|
2012
2023
|
] }),
|
|
2013
|
-
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title:
|
|
2024
|
+
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title: i ?? void 0, children: S })
|
|
2014
2025
|
] }),
|
|
2015
|
-
|
|
2026
|
+
M !== void 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
2016
2027
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between", children: [
|
|
2017
2028
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Current Value" }),
|
|
2018
2029
|
Y && /* @__PURE__ */ t("span", { className: "text-[9px] text-dt-text-muted/60 font-mono", children: Y })
|
|
2019
2030
|
] }),
|
|
2020
|
-
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title:
|
|
2031
|
+
/* @__PURE__ */ t("pre", { className: "font-mono text-[10px] text-dt-text-muted bg-zinc-950/50 rounded p-1.5 overflow-hidden max-h-[80px] whitespace-pre-wrap break-all m-0", title: H ?? void 0, children: j })
|
|
2021
2032
|
] }),
|
|
2022
|
-
|
|
2033
|
+
K && /* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5", children: [
|
|
2023
2034
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Error" }),
|
|
2024
|
-
/* @__PURE__ */ t("span", { className: "text-[11px] text-dt-error", title:
|
|
2035
|
+
/* @__PURE__ */ t("span", { className: "text-[11px] text-dt-error", title: d.error, children: K })
|
|
2025
2036
|
] })
|
|
2026
2037
|
] });
|
|
2027
2038
|
})(),
|
|
2028
|
-
|
|
2029
|
-
|
|
2039
|
+
f && /* @__PURE__ */ t(
|
|
2040
|
+
Kt,
|
|
2030
2041
|
{
|
|
2031
|
-
x:
|
|
2032
|
-
y:
|
|
2033
|
-
items:
|
|
2034
|
-
onClose: () =>
|
|
2042
|
+
x: f.x,
|
|
2043
|
+
y: f.y,
|
|
2044
|
+
items: f.items,
|
|
2045
|
+
onClose: () => m(null)
|
|
2035
2046
|
}
|
|
2036
2047
|
)
|
|
2037
2048
|
] });
|
|
2038
2049
|
}
|
|
2039
|
-
function
|
|
2040
|
-
const [a, s] =
|
|
2050
|
+
function Ee({ previous: o, current: r }) {
|
|
2051
|
+
const [a, s] = L(!0), l = it(() => Vt(o, r), [o, r]);
|
|
2041
2052
|
return l.length === 0 ? null : /* @__PURE__ */ n("div", { className: "flex flex-col gap-1", children: [
|
|
2042
2053
|
/* @__PURE__ */ n(
|
|
2043
2054
|
"button",
|
|
@@ -2061,7 +2072,7 @@ function ke({ previous: o, current: r }) {
|
|
|
2061
2072
|
":"
|
|
2062
2073
|
] }),
|
|
2063
2074
|
" ",
|
|
2064
|
-
u.type === "changed" ? /* @__PURE__ */ n(
|
|
2075
|
+
u.type === "changed" ? /* @__PURE__ */ n(X, { children: [
|
|
2065
2076
|
/* @__PURE__ */ t("span", { className: "text-dt-error line-through opacity-70", children: u.oldVal }),
|
|
2066
2077
|
" → ",
|
|
2067
2078
|
/* @__PURE__ */ t("span", { className: "text-dt-success", children: u.newVal })
|
|
@@ -2069,7 +2080,7 @@ function ke({ previous: o, current: r }) {
|
|
|
2069
2080
|
] }, c)) })
|
|
2070
2081
|
] });
|
|
2071
2082
|
}
|
|
2072
|
-
function
|
|
2083
|
+
function Vt(o, r, a = "$") {
|
|
2073
2084
|
const s = [], l = (u) => {
|
|
2074
2085
|
const c = JSON.stringify(u);
|
|
2075
2086
|
return c && c.length > 80 ? c.slice(0, 77) + "…" : c;
|
|
@@ -2080,69 +2091,69 @@ function Bt(o, r, a = "$") {
|
|
|
2080
2091
|
if (Array.isArray(o) && Array.isArray(r)) {
|
|
2081
2092
|
const u = Math.max(o.length, r.length);
|
|
2082
2093
|
for (let c = 0; c < u && s.length < 50; c++)
|
|
2083
|
-
c >= o.length ? s.push({ type: "added", path: `${a}[${c}]`, value: l(r[c]) }) : c >= r.length ? s.push({ type: "removed", path: `${a}[${c}]`, value: l(o[c]) }) : s.push(...
|
|
2094
|
+
c >= o.length ? s.push({ type: "added", path: `${a}[${c}]`, value: l(r[c]) }) : c >= r.length ? s.push({ type: "removed", path: `${a}[${c}]`, value: l(o[c]) }) : s.push(...Vt(o[c], r[c], `${a}[${c}]`));
|
|
2084
2095
|
return s;
|
|
2085
2096
|
}
|
|
2086
2097
|
if (!Array.isArray(o) && !Array.isArray(r)) {
|
|
2087
|
-
const u = o, c = r,
|
|
2088
|
-
for (const
|
|
2098
|
+
const u = o, c = r, b = /* @__PURE__ */ new Set([...Object.keys(u), ...Object.keys(c)]);
|
|
2099
|
+
for (const N of b) {
|
|
2089
2100
|
if (s.length >= 50) break;
|
|
2090
|
-
|
|
2101
|
+
N in u ? N in c ? s.push(...Vt(u[N], c[N], `${a}.${N}`)) : s.push({ type: "removed", path: `${a}.${N}`, value: l(u[N]) }) : s.push({ type: "added", path: `${a}.${N}`, value: l(c[N]) });
|
|
2091
2102
|
}
|
|
2092
2103
|
}
|
|
2093
2104
|
return s;
|
|
2094
2105
|
}
|
|
2095
|
-
function
|
|
2096
|
-
const [a, s] =
|
|
2097
|
-
|
|
2098
|
-
const
|
|
2106
|
+
function Ce({ eventStore: o, onNavigate: r }) {
|
|
2107
|
+
const [a, s] = L(null), [l, u] = L([]);
|
|
2108
|
+
U(() => {
|
|
2109
|
+
const g = () => {
|
|
2099
2110
|
s(o.getPerformanceMetrics()), u(o.getAllEvents());
|
|
2100
|
-
},
|
|
2101
|
-
return
|
|
2111
|
+
}, $ = o.subscribe(g);
|
|
2112
|
+
return g(), $;
|
|
2102
2113
|
}, [o]);
|
|
2103
2114
|
const c = it(() => {
|
|
2104
|
-
const
|
|
2105
|
-
const
|
|
2106
|
-
return !Number.isFinite(
|
|
2107
|
-
},
|
|
2108
|
-
if (
|
|
2115
|
+
const g = (d) => {
|
|
2116
|
+
const p = typeof d == "number" ? d : typeof d == "string" ? Number(d) : Number.NaN;
|
|
2117
|
+
return !Number.isFinite(p) || p < 0 ? null : p;
|
|
2118
|
+
}, $ = Date.now(), I = 6e4, T = 60, E = I / T, z = l.flatMap((d) => {
|
|
2119
|
+
if (d?.type !== "query" && d?.type !== "mutation" && d?.type !== "action")
|
|
2109
2120
|
return [];
|
|
2110
|
-
const
|
|
2111
|
-
return
|
|
2112
|
-
}),
|
|
2113
|
-
const
|
|
2114
|
-
for (const
|
|
2115
|
-
if (
|
|
2116
|
-
const
|
|
2117
|
-
if (
|
|
2118
|
-
const
|
|
2119
|
-
|
|
2121
|
+
const p = typeof d.timestamp == "number" && Number.isFinite(d.timestamp) ? d.timestamp : null, i = g(d.endToEndDurationMs ?? d.duration);
|
|
2122
|
+
return p === null || i === null ? [] : [{ type: d.type, timestamp: p, duration: i }];
|
|
2123
|
+
}), O = (d) => {
|
|
2124
|
+
const p = new Array(T).fill(0), i = new Array(T).fill(0);
|
|
2125
|
+
for (const C of z) {
|
|
2126
|
+
if (d && C.type !== d) continue;
|
|
2127
|
+
const S = $ - C.timestamp;
|
|
2128
|
+
if (S > I || S < 0) continue;
|
|
2129
|
+
const M = Math.min(T - 1, Math.floor((I - S) / E));
|
|
2130
|
+
M < 0 || M >= T || (p[M] += C.duration, i[M]++);
|
|
2120
2131
|
}
|
|
2121
|
-
return
|
|
2132
|
+
return p.map((C, S) => i[S] > 0 ? C / i[S] : 0);
|
|
2122
2133
|
};
|
|
2123
2134
|
return {
|
|
2124
|
-
all:
|
|
2125
|
-
query:
|
|
2126
|
-
mutation:
|
|
2127
|
-
action:
|
|
2135
|
+
all: O(),
|
|
2136
|
+
query: O("query"),
|
|
2137
|
+
mutation: O("mutation"),
|
|
2138
|
+
action: O("action")
|
|
2128
2139
|
};
|
|
2129
|
-
}, [l]),
|
|
2130
|
-
o.setFocusedEventId(
|
|
2140
|
+
}, [l]), b = F((g) => {
|
|
2141
|
+
o.setFocusedEventId(g), r?.("activity");
|
|
2131
2142
|
}, [o, r]);
|
|
2132
2143
|
if (!a)
|
|
2133
2144
|
return /* @__PURE__ */ t("div", { className: "flex flex-col h-full overflow-hidden p-3 gap-3", children: "Loading..." });
|
|
2134
|
-
const
|
|
2135
|
-
(
|
|
2136
|
-
),
|
|
2145
|
+
const N = a.totalQueries + a.totalMutations + a.totalActions > 0, y = l.some(
|
|
2146
|
+
(g) => (g?.type === "query" || g?.type === "mutation" || g?.type === "action") && typeof g?.simulatedDelayMs == "number" && g.simulatedDelayMs > 0
|
|
2147
|
+
), D = a.totalQueries + a.totalMutations + a.totalActions, h = D > 0 ? a.totalQueries / D * 100 : 0, x = D > 0 ? a.totalMutations / D * 100 : 0, f = D > 0 ? a.totalActions / D * 100 : 0, m = Math.max(a.slowestOperations[0]?.duration ?? 0, 1);
|
|
2137
2148
|
return /* @__PURE__ */ t("div", { className: "flex flex-col h-full overflow-hidden", children: /* @__PURE__ */ n("div", { className: "flex-1 min-h-0 overflow-y-auto p-3 flex flex-col gap-3", children: [
|
|
2138
|
-
!
|
|
2149
|
+
!N && /* @__PURE__ */ n("div", { className: "flex flex-col items-center justify-center py-12 text-dt-text-muted gap-2", children: [
|
|
2139
2150
|
/* @__PURE__ */ t("svg", { width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", children: /* @__PURE__ */ t("path", { d: "M13 2L3 14h9l-1 8 10-12h-9l1-8z", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) }),
|
|
2140
2151
|
/* @__PURE__ */ t("p", { children: "No performance data yet" })
|
|
2141
2152
|
] }),
|
|
2142
|
-
|
|
2153
|
+
N && /* @__PURE__ */ n(X, { children: [
|
|
2143
2154
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-1 text-[11px] font-mono flex-wrap px-1", children: [
|
|
2144
2155
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "Total:" }),
|
|
2145
|
-
/* @__PURE__ */ t("span", { className: "font-semibold text-dt-text-secondary", children:
|
|
2156
|
+
/* @__PURE__ */ t("span", { className: "font-semibold text-dt-text-secondary", children: D }),
|
|
2146
2157
|
/* @__PURE__ */ t("span", { className: "text-dt-border mx-0.5", children: "|" }),
|
|
2147
2158
|
/* @__PURE__ */ t("span", { className: "text-dt-text-muted", children: "Q:" }),
|
|
2148
2159
|
/* @__PURE__ */ t("span", { className: "font-semibold text-dt-query", children: a.totalQueries }),
|
|
@@ -2164,14 +2175,14 @@ function Ne({ eventStore: o, onNavigate: r }) {
|
|
|
2164
2175
|
/* @__PURE__ */ t("span", { className: "font-semibold text-dt-action", children: a.totalActions }),
|
|
2165
2176
|
/* @__PURE__ */ n("span", { className: "text-dt-text-muted/60 text-[10px]", children: [
|
|
2166
2177
|
"(",
|
|
2167
|
-
|
|
2178
|
+
f.toFixed(0),
|
|
2168
2179
|
"%)"
|
|
2169
2180
|
] })
|
|
2170
2181
|
] }),
|
|
2171
2182
|
/* @__PURE__ */ n("div", { className: "flex flex-col gap-2", children: [
|
|
2172
2183
|
/* @__PURE__ */ n("div", { className: "text-[11px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: [
|
|
2173
2184
|
"Latency (60s window)",
|
|
2174
|
-
|
|
2185
|
+
y && /* @__PURE__ */ t("span", { className: "ml-2 text-[10px] normal-case font-normal text-dt-warning/90", children: "includes simulated delay" })
|
|
2175
2186
|
] }),
|
|
2176
2187
|
/* @__PURE__ */ t(Dt, { label: "All", data: c.all, color: "#e4e4e7" }),
|
|
2177
2188
|
/* @__PURE__ */ t(Dt, { label: "Query", data: c.query, color: "#60a5fa" }),
|
|
@@ -2189,53 +2200,53 @@ function Ne({ eventStore: o, onNavigate: r }) {
|
|
|
2189
2200
|
] }),
|
|
2190
2201
|
/* @__PURE__ */ n("div", { className: "grid grid-cols-6 gap-0 px-2 py-1.5 border-t border-dt-border-light/50 text-[11px] font-mono text-dt-text-secondary", children: [
|
|
2191
2202
|
/* @__PURE__ */ t("span", { className: "text-dt-query font-bold", children: "Q" }),
|
|
2192
|
-
/* @__PURE__ */ t("span", { children:
|
|
2193
|
-
/* @__PURE__ */ t("span", { children:
|
|
2194
|
-
/* @__PURE__ */ t("span", { children:
|
|
2195
|
-
/* @__PURE__ */ t("span", { children:
|
|
2196
|
-
/* @__PURE__ */ t("span", { children:
|
|
2203
|
+
/* @__PURE__ */ t("span", { children: W(a.avgQueryDuration) }),
|
|
2204
|
+
/* @__PURE__ */ t("span", { children: W(a.p50QueryDuration) }),
|
|
2205
|
+
/* @__PURE__ */ t("span", { children: W(a.p90QueryDuration) }),
|
|
2206
|
+
/* @__PURE__ */ t("span", { children: W(a.p95QueryDuration) }),
|
|
2207
|
+
/* @__PURE__ */ t("span", { children: W(a.p99QueryDuration) })
|
|
2197
2208
|
] }),
|
|
2198
2209
|
/* @__PURE__ */ n("div", { className: "grid grid-cols-6 gap-0 px-2 py-1.5 border-t border-dt-border-light/50 text-[11px] font-mono text-dt-text-secondary", children: [
|
|
2199
2210
|
/* @__PURE__ */ t("span", { className: "text-dt-mutation font-bold", children: "M" }),
|
|
2200
|
-
/* @__PURE__ */ t("span", { children:
|
|
2201
|
-
/* @__PURE__ */ t("span", { children:
|
|
2202
|
-
/* @__PURE__ */ t("span", { children:
|
|
2203
|
-
/* @__PURE__ */ t("span", { children:
|
|
2204
|
-
/* @__PURE__ */ t("span", { children:
|
|
2211
|
+
/* @__PURE__ */ t("span", { children: W(a.avgMutationDuration) }),
|
|
2212
|
+
/* @__PURE__ */ t("span", { children: W(a.p50MutationDuration) }),
|
|
2213
|
+
/* @__PURE__ */ t("span", { children: W(a.p90MutationDuration) }),
|
|
2214
|
+
/* @__PURE__ */ t("span", { children: W(a.p95MutationDuration) }),
|
|
2215
|
+
/* @__PURE__ */ t("span", { children: W(a.p99MutationDuration) })
|
|
2205
2216
|
] }),
|
|
2206
2217
|
/* @__PURE__ */ n("div", { className: "grid grid-cols-6 gap-0 px-2 py-1.5 border-t border-dt-border-light/50 text-[11px] font-mono text-dt-text-secondary", children: [
|
|
2207
2218
|
/* @__PURE__ */ t("span", { className: "text-dt-action font-bold", children: "A" }),
|
|
2208
|
-
/* @__PURE__ */ t("span", { children:
|
|
2209
|
-
/* @__PURE__ */ t("span", { children:
|
|
2210
|
-
/* @__PURE__ */ t("span", { children:
|
|
2211
|
-
/* @__PURE__ */ t("span", { children:
|
|
2212
|
-
/* @__PURE__ */ t("span", { children:
|
|
2219
|
+
/* @__PURE__ */ t("span", { children: W(a.avgActionDuration) }),
|
|
2220
|
+
/* @__PURE__ */ t("span", { children: W(a.p50ActionDuration) }),
|
|
2221
|
+
/* @__PURE__ */ t("span", { children: W(a.p90ActionDuration) }),
|
|
2222
|
+
/* @__PURE__ */ t("span", { children: W(a.p95ActionDuration) }),
|
|
2223
|
+
/* @__PURE__ */ t("span", { children: W(a.p99ActionDuration) })
|
|
2213
2224
|
] })
|
|
2214
2225
|
] }),
|
|
2215
2226
|
a.slowestOperations.length > 0 && /* @__PURE__ */ n("div", { className: "flex flex-col gap-1", children: [
|
|
2216
2227
|
/* @__PURE__ */ t("div", { className: "text-[11px] font-semibold text-dt-text-tertiary uppercase tracking-wider", children: "Slowest Operations" }),
|
|
2217
|
-
/* @__PURE__ */ t("div", { className: "flex flex-col gap-0.5", children: a.slowestOperations.map((
|
|
2228
|
+
/* @__PURE__ */ t("div", { className: "flex flex-col gap-0.5", children: a.slowestOperations.map((g, $) => /* @__PURE__ */ n(
|
|
2218
2229
|
"button",
|
|
2219
2230
|
{
|
|
2220
2231
|
className: "flex items-center gap-2 text-[11px] py-0.5 px-1 bg-transparent border-none text-left cursor-pointer rounded hover:bg-white/[0.04] focus:outline-none focus:ring-1 focus:ring-dt-info/40",
|
|
2221
|
-
onClick: () =>
|
|
2232
|
+
onClick: () => b(g.eventId),
|
|
2222
2233
|
title: "Open operation in Activity",
|
|
2223
2234
|
type: "button",
|
|
2224
2235
|
children: [
|
|
2225
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/40 w-4 text-right font-mono text-[10px]", children:
|
|
2226
|
-
/* @__PURE__ */ t("span", { className: `inline-flex items-center justify-center w-4 h-4 rounded text-[9px] font-bold ${
|
|
2227
|
-
/* @__PURE__ */ t("span", { className: "font-mono text-dt-text-secondary truncate flex-1", children:
|
|
2228
|
-
/* @__PURE__ */ t("span", { className: "font-mono text-dt-text-muted shrink-0", children:
|
|
2236
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/40 w-4 text-right font-mono text-[10px]", children: $ + 1 }),
|
|
2237
|
+
/* @__PURE__ */ t("span", { className: `inline-flex items-center justify-center w-4 h-4 rounded text-[9px] font-bold ${g.type === "query" ? "text-dt-query" : g.type === "mutation" ? "text-dt-mutation" : "text-dt-action"}`, children: g.type[0].toUpperCase() }),
|
|
2238
|
+
/* @__PURE__ */ t("span", { className: "font-mono text-dt-text-secondary truncate flex-1", children: g.udfPath }),
|
|
2239
|
+
/* @__PURE__ */ t("span", { className: "font-mono text-dt-text-muted shrink-0", children: W(g.duration) }),
|
|
2229
2240
|
/* @__PURE__ */ t("div", { className: "w-16 h-1.5 bg-dt-bg-tertiary rounded-full overflow-hidden shrink-0", children: /* @__PURE__ */ t(
|
|
2230
2241
|
"div",
|
|
2231
2242
|
{
|
|
2232
|
-
className: `h-full rounded-full ${
|
|
2233
|
-
style: { width: `${Math.min(100, Math.max(2,
|
|
2243
|
+
className: `h-full rounded-full ${g.type === "query" ? "bg-dt-query" : g.type === "mutation" ? "bg-dt-mutation" : "bg-dt-action"}`,
|
|
2244
|
+
style: { width: `${Math.min(100, Math.max(2, g.duration / m * 100))}%` }
|
|
2234
2245
|
}
|
|
2235
2246
|
) })
|
|
2236
2247
|
]
|
|
2237
2248
|
},
|
|
2238
|
-
|
|
2249
|
+
g.eventId
|
|
2239
2250
|
)) })
|
|
2240
2251
|
] })
|
|
2241
2252
|
] })
|
|
@@ -2247,234 +2258,266 @@ function Dt({ label: o, data: r, color: a }) {
|
|
|
2247
2258
|
), l = Math.max(...s, 1), u = s[s.length - 1] || 0;
|
|
2248
2259
|
return /* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
2249
2260
|
/* @__PURE__ */ t("span", { className: "text-[10px] font-mono text-dt-text-muted w-14 shrink-0", children: o }),
|
|
2250
|
-
/* @__PURE__ */ t("div", { className: "flex-1 h-5 flex items-end gap-px", children: s.map((c,
|
|
2261
|
+
/* @__PURE__ */ t("div", { className: "flex-1 h-5 flex items-end gap-px", children: s.map((c, b) => /* @__PURE__ */ t(
|
|
2251
2262
|
"div",
|
|
2252
2263
|
{
|
|
2253
2264
|
className: "flex-1 rounded-t-sm min-h-px",
|
|
2254
2265
|
style: {
|
|
2255
2266
|
height: `${Math.max(1, c / l * 100)}%`,
|
|
2256
2267
|
backgroundColor: c > 0 ? a : "rgba(63,63,70,0.3)",
|
|
2257
|
-
opacity: c > 0 ? 0.5 +
|
|
2268
|
+
opacity: c > 0 ? 0.5 + b / s.length * 0.5 : 0.2
|
|
2258
2269
|
}
|
|
2259
2270
|
},
|
|
2260
|
-
|
|
2271
|
+
b
|
|
2261
2272
|
)) }),
|
|
2262
|
-
/* @__PURE__ */ t("span", { className: "text-[10px] font-mono text-dt-text-muted w-14 text-right shrink-0", children: u > 0 ?
|
|
2273
|
+
/* @__PURE__ */ t("span", { className: "text-[10px] font-mono text-dt-text-muted w-14 text-right shrink-0", children: u > 0 ? W(u) : "—" })
|
|
2263
2274
|
] });
|
|
2264
2275
|
}
|
|
2265
|
-
function
|
|
2276
|
+
function W(o) {
|
|
2266
2277
|
return !Number.isFinite(o) || o < 0 ? "—" : o < 1e3 ? `${o.toFixed(3)}ms` : `${(o / 1e3).toFixed(3)}s`;
|
|
2267
2278
|
}
|
|
2268
|
-
function
|
|
2279
|
+
function De(o) {
|
|
2269
2280
|
return o.type === "query" || o.type === "mutation" || o.type === "action";
|
|
2270
2281
|
}
|
|
2271
|
-
function
|
|
2282
|
+
function re(o) {
|
|
2272
2283
|
return o.type === "query" ? `Q${o.queryId}` : o.type === "mutation" ? `M${o.requestId}` : `A${o.requestId}`;
|
|
2273
2284
|
}
|
|
2274
|
-
function
|
|
2275
|
-
const [a, s] =
|
|
2276
|
-
(
|
|
2277
|
-
|
|
2285
|
+
function Se({ eventStore: o, onNavigate: r }) {
|
|
2286
|
+
const [a, s] = L([]), [l, u] = L(/* @__PURE__ */ new Map()), [c, b] = L(!0), [N, y] = L("all"), [D, h] = L(""), [x, f] = L(null), [m, g] = L(null), $ = ft(null), I = ft(null), T = F(
|
|
2287
|
+
(i) => {
|
|
2288
|
+
i && (o.setFocusedEventId(i), r?.("activity"));
|
|
2278
2289
|
},
|
|
2279
2290
|
[o, r]
|
|
2280
2291
|
);
|
|
2281
|
-
|
|
2282
|
-
const
|
|
2283
|
-
const
|
|
2284
|
-
for (const
|
|
2285
|
-
if (
|
|
2286
|
-
|
|
2292
|
+
U(() => {
|
|
2293
|
+
const i = () => {
|
|
2294
|
+
const S = o.getAllEvents(), M = /* @__PURE__ */ new Map(), H = [];
|
|
2295
|
+
for (const j of S) {
|
|
2296
|
+
if (j.type === "log") {
|
|
2297
|
+
H.push(j);
|
|
2287
2298
|
continue;
|
|
2288
2299
|
}
|
|
2289
|
-
|
|
2300
|
+
De(j) && M.set(j.id, j);
|
|
2290
2301
|
}
|
|
2291
|
-
s(
|
|
2292
|
-
},
|
|
2293
|
-
return
|
|
2302
|
+
s(H), u(M);
|
|
2303
|
+
}, C = o.subscribe(i);
|
|
2304
|
+
return i(), C;
|
|
2294
2305
|
}, [o]);
|
|
2295
|
-
const
|
|
2296
|
-
const
|
|
2297
|
-
return a.filter((
|
|
2298
|
-
if (
|
|
2299
|
-
if (
|
|
2300
|
-
const
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2306
|
+
const E = it(() => {
|
|
2307
|
+
const i = D.trim().toLowerCase().split(/\s+/).filter((C) => C.length > 0);
|
|
2308
|
+
return a.filter((C) => {
|
|
2309
|
+
if (N !== "all" && C.level !== N) return !1;
|
|
2310
|
+
if (i.length === 0) return !0;
|
|
2311
|
+
const S = C.relatedEventId ? l.get(C.relatedEventId) : void 0, M = [
|
|
2312
|
+
C.message,
|
|
2313
|
+
C.level,
|
|
2314
|
+
C.relatedEventId ?? "",
|
|
2315
|
+
S?.udfPath ?? "",
|
|
2316
|
+
S?.type ?? "",
|
|
2317
|
+
S ? re(S) : ""
|
|
2307
2318
|
].join(`
|
|
2308
2319
|
`).toLowerCase();
|
|
2309
|
-
return
|
|
2320
|
+
return i.every((H) => M.includes(H));
|
|
2310
2321
|
});
|
|
2311
|
-
}, [a,
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2322
|
+
}, [a, N, D, l]), z = F((i) => {
|
|
2323
|
+
P(i.message), g(i.id), setTimeout(() => g(null), 300);
|
|
2324
|
+
}, []), O = F((i) => `[${new Date(i.timestamp).toLocaleTimeString([], {
|
|
2325
|
+
hour: "2-digit",
|
|
2326
|
+
minute: "2-digit",
|
|
2327
|
+
second: "2-digit",
|
|
2328
|
+
fractionalSecondDigits: 3
|
|
2329
|
+
})}] [${i.level.toUpperCase()}] ${i.message}`, []), d = F(() => {
|
|
2330
|
+
const i = E.map(O).join(`
|
|
2331
|
+
`);
|
|
2332
|
+
P(i);
|
|
2333
|
+
}, [E, O]);
|
|
2334
|
+
U(() => {
|
|
2335
|
+
const i = (C) => {
|
|
2336
|
+
if ($t()) {
|
|
2337
|
+
if ((C.metaKey || C.ctrlKey) && C.key === "k") {
|
|
2338
|
+
C.preventDefault(), $.current?.focus();
|
|
2339
|
+
return;
|
|
2340
|
+
}
|
|
2341
|
+
C.key === "Escape" && (N !== "all" || D) && (C.preventDefault(), y("all"), h(""));
|
|
2317
2342
|
}
|
|
2318
|
-
D.key === "Escape" && (E !== "all" || C) && (D.preventDefault(), k("all"), h(""));
|
|
2319
2343
|
};
|
|
2320
|
-
return window.addEventListener("keydown",
|
|
2321
|
-
}, [
|
|
2322
|
-
c &&
|
|
2323
|
-
}, [
|
|
2324
|
-
const
|
|
2325
|
-
(
|
|
2326
|
-
const
|
|
2344
|
+
return window.addEventListener("keydown", i), () => window.removeEventListener("keydown", i);
|
|
2345
|
+
}, [N, D]), U(() => {
|
|
2346
|
+
c && I.current && I.current.scrollIntoView({ behavior: "smooth" });
|
|
2347
|
+
}, [E.length, c]);
|
|
2348
|
+
const p = F(
|
|
2349
|
+
(i) => {
|
|
2350
|
+
const C = i.relatedEventId ? l.get(i.relatedEventId) : void 0, S = new Date(i.timestamp).toLocaleTimeString([], {
|
|
2327
2351
|
hour: "2-digit",
|
|
2328
2352
|
minute: "2-digit",
|
|
2329
2353
|
second: "2-digit",
|
|
2330
2354
|
fractionalSecondDigits: 3
|
|
2331
|
-
}),
|
|
2332
|
-
{ label: "Copy Message", action: () =>
|
|
2333
|
-
{ label: "Copy Timestamp", action: () =>
|
|
2355
|
+
}), M = [
|
|
2356
|
+
{ label: "Copy Message", action: () => P(i.message), shortcut: "⌘C" },
|
|
2357
|
+
{ label: "Copy Timestamp", action: () => P(S) }
|
|
2334
2358
|
];
|
|
2335
|
-
return
|
|
2336
|
-
label: `Filter by Level: ${
|
|
2337
|
-
action: () =>
|
|
2359
|
+
return M.push({
|
|
2360
|
+
label: `Filter by Level: ${i.level}`,
|
|
2361
|
+
action: () => y(i.level),
|
|
2338
2362
|
separator: !0
|
|
2339
|
-
}),
|
|
2363
|
+
}), i.relatedEventId && M.push({
|
|
2340
2364
|
label: "Copy Related Event ID",
|
|
2341
|
-
action: () =>
|
|
2342
|
-
}),
|
|
2365
|
+
action: () => P(i.relatedEventId)
|
|
2366
|
+
}), C && (M.push({
|
|
2343
2367
|
label: "Copy Related Function Path",
|
|
2344
|
-
action: () =>
|
|
2345
|
-
}),
|
|
2368
|
+
action: () => P(C.udfPath)
|
|
2369
|
+
}), M.push({
|
|
2346
2370
|
label: "Filter by Related Function",
|
|
2347
|
-
action: () => h(
|
|
2348
|
-
})),
|
|
2371
|
+
action: () => h(C.udfPath)
|
|
2372
|
+
})), i.relatedEventId && r && M.push({
|
|
2349
2373
|
label: "Go to Related Event",
|
|
2350
|
-
action: () =>
|
|
2351
|
-
}),
|
|
2374
|
+
action: () => T(i.relatedEventId)
|
|
2375
|
+
}), M.push({
|
|
2352
2376
|
label: "Copy as JSON",
|
|
2353
|
-
action: () =>
|
|
2377
|
+
action: () => P(JSON.stringify(i, null, 2)),
|
|
2354
2378
|
separator: !0
|
|
2355
|
-
}),
|
|
2379
|
+
}), M;
|
|
2356
2380
|
},
|
|
2357
|
-
[
|
|
2381
|
+
[T, r, l]
|
|
2358
2382
|
);
|
|
2359
2383
|
return /* @__PURE__ */ n("div", { className: "flex flex-col h-full overflow-hidden", children: [
|
|
2360
2384
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 px-3 py-1.5 border-b border-dt-border-light", children: [
|
|
2361
|
-
/* @__PURE__ */ t("div", { className: "flex items-center gap-0.5", children: ["all", "log", "info", "warn", "error"].map((
|
|
2385
|
+
/* @__PURE__ */ t("div", { className: "flex items-center gap-0.5", children: ["all", "log", "info", "warn", "error"].map((i) => /* @__PURE__ */ t(
|
|
2362
2386
|
"button",
|
|
2363
2387
|
{
|
|
2364
|
-
className: `px-2 py-1 text-[11px] bg-transparent border rounded-md cursor-pointer transition-all ${
|
|
2365
|
-
onClick: () =>
|
|
2366
|
-
children:
|
|
2388
|
+
className: `px-2 py-1 text-[11px] bg-transparent border rounded-md cursor-pointer transition-all ${N === i ? i === "info" ? "bg-dt-info/20 text-dt-info border-dt-info/30 font-medium" : i === "warn" ? "bg-dt-warning/20 text-dt-warning border-dt-warning/30 font-medium" : i === "error" ? "bg-dt-error/20 text-dt-error border-dt-error/30 font-medium" : "bg-white/10 text-dt-text-secondary border-dt-border-light font-medium" : i === "info" ? "border-transparent text-dt-text-muted hover:bg-dt-info/15 hover:text-dt-info" : i === "warn" ? "border-transparent text-dt-text-muted hover:bg-dt-warning/15 hover:text-dt-warning" : i === "error" ? "border-transparent text-dt-text-muted hover:bg-dt-error/15 hover:text-dt-error" : "border-transparent text-dt-text-muted hover:bg-white/5 hover:text-dt-text-tertiary"}`,
|
|
2389
|
+
onClick: () => y(i),
|
|
2390
|
+
children: i.charAt(0).toUpperCase() + i.slice(1)
|
|
2367
2391
|
},
|
|
2368
|
-
|
|
2392
|
+
i
|
|
2369
2393
|
)) }),
|
|
2370
2394
|
/* @__PURE__ */ t(
|
|
2371
|
-
|
|
2395
|
+
Ut,
|
|
2372
2396
|
{
|
|
2373
|
-
ref:
|
|
2374
|
-
value:
|
|
2397
|
+
ref: $,
|
|
2398
|
+
value: D,
|
|
2375
2399
|
onValueChange: h,
|
|
2376
2400
|
onClear: () => h(""),
|
|
2377
2401
|
placeholder: "Search msg/path/id... (Cmd/Ctrl+K)",
|
|
2378
2402
|
className: "stretch"
|
|
2379
2403
|
}
|
|
2380
2404
|
),
|
|
2381
|
-
/* @__PURE__ */ n("
|
|
2382
|
-
/* @__PURE__ */
|
|
2383
|
-
|
|
2405
|
+
/* @__PURE__ */ n("div", { className: "flex items-center gap-2 ml-auto", children: [
|
|
2406
|
+
/* @__PURE__ */ n(
|
|
2407
|
+
"button",
|
|
2408
|
+
{
|
|
2409
|
+
className: "px-2 py-1 text-[11px] bg-transparent border border-dt-border-light rounded-md cursor-pointer text-dt-text-muted hover:text-dt-text-secondary hover:bg-white/5 transition-colors disabled:opacity-30 disabled:cursor-default disabled:hover:bg-transparent disabled:hover:text-dt-text-muted",
|
|
2410
|
+
onClick: d,
|
|
2411
|
+
disabled: E.length === 0,
|
|
2412
|
+
title: "Copy all visible logs as plain text",
|
|
2413
|
+
children: [
|
|
2414
|
+
"Copy all (",
|
|
2415
|
+
E.length,
|
|
2416
|
+
")"
|
|
2417
|
+
]
|
|
2418
|
+
}
|
|
2419
|
+
),
|
|
2420
|
+
/* @__PURE__ */ n("label", { className: "flex items-center gap-1.5 text-[11px] text-dt-text-muted cursor-pointer select-none", children: [
|
|
2421
|
+
/* @__PURE__ */ t("input", { type: "checkbox", checked: c, onChange: (i) => b(i.target.checked) }),
|
|
2422
|
+
"Auto-scroll"
|
|
2423
|
+
] })
|
|
2384
2424
|
] })
|
|
2385
2425
|
] }),
|
|
2386
2426
|
/* @__PURE__ */ n("div", { className: "flex-1 overflow-y-auto p-1", children: [
|
|
2387
|
-
|
|
2427
|
+
E.length === 0 && /* @__PURE__ */ n("div", { className: "flex flex-col items-center justify-center py-12 text-dt-text-muted gap-2", children: [
|
|
2388
2428
|
/* @__PURE__ */ t("p", { children: "No logs yet" }),
|
|
2389
2429
|
/* @__PURE__ */ t("p", { className: "text-[11px] text-dt-text-muted/60", children: "Console output from functions will appear here" })
|
|
2390
2430
|
] }),
|
|
2391
|
-
|
|
2392
|
-
const
|
|
2431
|
+
E.map((i) => {
|
|
2432
|
+
const C = i.relatedEventId ? l.get(i.relatedEventId) : void 0, S = C ? re(C) : null;
|
|
2393
2433
|
return /* @__PURE__ */ n(
|
|
2394
2434
|
"div",
|
|
2395
2435
|
{
|
|
2396
|
-
className: `flex items-start gap-2 px-2 py-1 text-[11px] font-mono border-b border-dt-border-light/30 hover:bg-white/[0.02] ${
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
2401
|
-
|
|
2436
|
+
className: `flex items-start gap-2 px-2 py-1 text-[11px] font-mono border-b border-dt-border-light/30 cursor-pointer select-none transition-colors duration-300 ${m === i.id ? "bg-white/10" : `hover:bg-white/[0.02] ${i.level === "warn" ? "bg-dt-warning/5" : i.level === "error" ? "bg-dt-error/5" : ""}`}`,
|
|
2437
|
+
onClick: () => z(i),
|
|
2438
|
+
onContextMenu: (M) => {
|
|
2439
|
+
M.preventDefault(), f({
|
|
2440
|
+
x: M.clientX,
|
|
2441
|
+
y: M.clientY,
|
|
2442
|
+
items: p(i)
|
|
2402
2443
|
});
|
|
2403
2444
|
},
|
|
2404
2445
|
children: [
|
|
2405
|
-
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 shrink-0", children: new Date(
|
|
2446
|
+
/* @__PURE__ */ t("span", { className: "text-dt-text-muted/60 shrink-0", children: new Date(i.timestamp).toLocaleTimeString([], {
|
|
2406
2447
|
hour: "2-digit",
|
|
2407
2448
|
minute: "2-digit",
|
|
2408
2449
|
second: "2-digit",
|
|
2409
2450
|
fractionalSecondDigits: 3
|
|
2410
2451
|
}) }),
|
|
2411
|
-
/* @__PURE__ */ t("span", { className: `font-semibold shrink-0 w-10 uppercase text-[10px] ${
|
|
2452
|
+
/* @__PURE__ */ t("span", { className: `font-semibold shrink-0 w-10 uppercase text-[10px] ${i.level === "info" ? "text-dt-info" : i.level === "warn" ? "text-dt-warning" : i.level === "error" ? "text-dt-error" : "text-dt-text-muted"}`, children: i.level.toUpperCase() }),
|
|
2412
2453
|
/* @__PURE__ */ n("div", { className: "flex-1 min-w-0", children: [
|
|
2413
|
-
/* @__PURE__ */ t("div", { className: "text-dt-text-secondary break-all", children:
|
|
2414
|
-
|
|
2415
|
-
|
|
2454
|
+
/* @__PURE__ */ t("div", { className: "text-dt-text-secondary break-all", children: i.message }),
|
|
2455
|
+
C && /* @__PURE__ */ n("div", { className: "text-[10px] text-dt-text-muted/70 truncate", title: `${C.type} ${C.udfPath}`, children: [
|
|
2456
|
+
C.type,
|
|
2416
2457
|
" ",
|
|
2417
|
-
|
|
2458
|
+
C.udfPath
|
|
2418
2459
|
] })
|
|
2419
2460
|
] }),
|
|
2420
|
-
|
|
2461
|
+
i.relatedEventId && /* @__PURE__ */ t(
|
|
2421
2462
|
"button",
|
|
2422
2463
|
{
|
|
2423
2464
|
className: "shrink-0 px-1 py-0.5 bg-transparent border border-dt-border-light/50 rounded text-[9px] font-mono text-dt-text-muted cursor-pointer hover:text-dt-info hover:border-dt-info/30 transition-colors",
|
|
2424
|
-
onClick: () =>
|
|
2425
|
-
|
|
2426
|
-
|
|
2465
|
+
onClick: (M) => {
|
|
2466
|
+
M.stopPropagation(), T(i.relatedEventId);
|
|
2467
|
+
},
|
|
2468
|
+
title: C ? `Open ${C.udfPath}` : `From: ${i.relatedEventId}`,
|
|
2469
|
+
children: S ?? i.relatedEventId.split("-")[0]
|
|
2427
2470
|
}
|
|
2428
2471
|
)
|
|
2429
2472
|
]
|
|
2430
2473
|
},
|
|
2431
|
-
|
|
2474
|
+
i.id
|
|
2432
2475
|
);
|
|
2433
2476
|
}),
|
|
2434
|
-
/* @__PURE__ */ t("div", { ref:
|
|
2477
|
+
/* @__PURE__ */ t("div", { ref: I })
|
|
2435
2478
|
] }),
|
|
2436
2479
|
x && /* @__PURE__ */ t(
|
|
2437
|
-
|
|
2480
|
+
Kt,
|
|
2438
2481
|
{
|
|
2439
2482
|
x: x.x,
|
|
2440
2483
|
y: x.y,
|
|
2441
2484
|
items: x.items,
|
|
2442
|
-
onClose: () =>
|
|
2485
|
+
onClose: () => f(null)
|
|
2443
2486
|
}
|
|
2444
2487
|
)
|
|
2445
2488
|
] });
|
|
2446
2489
|
}
|
|
2447
|
-
function
|
|
2448
|
-
const [r, a] =
|
|
2449
|
-
|
|
2450
|
-
a(
|
|
2490
|
+
function Me({ eventStore: o }) {
|
|
2491
|
+
const [r, a] = L(o.getSettings()), [s, l] = L(o.getSnapshots()), u = o.isPausedState(), c = o.isPersistenceEnabled();
|
|
2492
|
+
U(() => (a(o.getSettings()), o.subscribeSettings((g) => {
|
|
2493
|
+
a(g);
|
|
2451
2494
|
})), [o]);
|
|
2452
|
-
const
|
|
2453
|
-
o.saveSettings({ [
|
|
2454
|
-
},
|
|
2455
|
-
const
|
|
2495
|
+
const b = (m, g) => {
|
|
2496
|
+
o.saveSettings({ [m]: g });
|
|
2497
|
+
}, N = () => {
|
|
2498
|
+
const m = o.exportSession(), g = new Blob([JSON.stringify(m, null, 2)], {
|
|
2456
2499
|
type: "application/json"
|
|
2457
|
-
}),
|
|
2458
|
-
|
|
2459
|
-
},
|
|
2460
|
-
const
|
|
2461
|
-
|
|
2462
|
-
const
|
|
2463
|
-
if (
|
|
2500
|
+
}), $ = URL.createObjectURL(g), I = document.createElement("a");
|
|
2501
|
+
I.href = $, I.download = `concave-devtools-${Date.now()}.json`, I.click(), URL.revokeObjectURL($);
|
|
2502
|
+
}, y = () => {
|
|
2503
|
+
const m = document.createElement("input");
|
|
2504
|
+
m.type = "file", m.accept = ".json", m.onchange = async (g) => {
|
|
2505
|
+
const $ = g.target.files?.[0];
|
|
2506
|
+
if ($)
|
|
2464
2507
|
try {
|
|
2465
|
-
const
|
|
2466
|
-
alert(
|
|
2467
|
-
} catch (
|
|
2468
|
-
alert(`Failed to import session: ${
|
|
2508
|
+
const I = await $.text(), T = JSON.parse(I), E = o.importSession(T);
|
|
2509
|
+
alert(E ? "Session imported successfully!" : "Failed to import session. Invalid format.");
|
|
2510
|
+
} catch (I) {
|
|
2511
|
+
alert(`Failed to import session: ${I}`);
|
|
2469
2512
|
}
|
|
2470
|
-
},
|
|
2471
|
-
},
|
|
2513
|
+
}, m.click();
|
|
2514
|
+
}, D = () => {
|
|
2472
2515
|
o.createSnapshot(), l(o.getSnapshots());
|
|
2473
|
-
}, h = (
|
|
2474
|
-
confirm("Restore to this snapshot? Current state will be replaced.") && o.restoreSnapshot(
|
|
2516
|
+
}, h = (m) => {
|
|
2517
|
+
confirm("Restore to this snapshot? Current state will be replaced.") && o.restoreSnapshot(m) && l(o.getSnapshots());
|
|
2475
2518
|
}, x = () => {
|
|
2476
2519
|
u ? o.resume() : o.pause(), a({ ...o.getSettings() });
|
|
2477
|
-
},
|
|
2520
|
+
}, f = () => {
|
|
2478
2521
|
o.clear(), l([]);
|
|
2479
2522
|
};
|
|
2480
2523
|
return /* @__PURE__ */ n("div", { className: "flex flex-col h-full overflow-y-auto p-3 gap-3", children: [
|
|
@@ -2513,7 +2556,7 @@ function De({ eventStore: o }) {
|
|
|
2513
2556
|
type: "checkbox",
|
|
2514
2557
|
checked: r.persistEvents,
|
|
2515
2558
|
disabled: !c,
|
|
2516
|
-
onChange: (
|
|
2559
|
+
onChange: (m) => b("persistEvents", m.target.checked)
|
|
2517
2560
|
}
|
|
2518
2561
|
),
|
|
2519
2562
|
/* @__PURE__ */ t("span", { className: "text-dt-text-secondary", children: "Persist events" }),
|
|
@@ -2527,7 +2570,7 @@ function De({ eventStore: o }) {
|
|
|
2527
2570
|
{
|
|
2528
2571
|
type: "checkbox",
|
|
2529
2572
|
checked: r.captureLogLines,
|
|
2530
|
-
onChange: (
|
|
2573
|
+
onChange: (m) => b("captureLogLines", m.target.checked)
|
|
2531
2574
|
}
|
|
2532
2575
|
),
|
|
2533
2576
|
/* @__PURE__ */ t("span", { className: "text-dt-text-secondary", children: "Capture console logs" })
|
|
@@ -2538,7 +2581,7 @@ function De({ eventStore: o }) {
|
|
|
2538
2581
|
{
|
|
2539
2582
|
type: "checkbox",
|
|
2540
2583
|
checked: r.autoPauseOnError,
|
|
2541
|
-
onChange: (
|
|
2584
|
+
onChange: (m) => b("autoPauseOnError", m.target.checked)
|
|
2542
2585
|
}
|
|
2543
2586
|
),
|
|
2544
2587
|
/* @__PURE__ */ t("span", { className: "text-dt-text-secondary", children: "Auto-pause on error" })
|
|
@@ -2551,7 +2594,7 @@ function De({ eventStore: o }) {
|
|
|
2551
2594
|
type: "number",
|
|
2552
2595
|
className: "w-20 bg-dt-bg-tertiary border border-dt-border-light rounded px-2 py-1 text-[12px] text-dt-text-secondary font-mono outline-none focus:border-dt-info/50",
|
|
2553
2596
|
value: r.maxEvents,
|
|
2554
|
-
onChange: (
|
|
2597
|
+
onChange: (m) => b("maxEvents", parseInt(m.target.value, 10) || 1e3),
|
|
2555
2598
|
min: "100",
|
|
2556
2599
|
max: "10000",
|
|
2557
2600
|
step: "100"
|
|
@@ -2570,7 +2613,7 @@ function De({ eventStore: o }) {
|
|
|
2570
2613
|
type: "number",
|
|
2571
2614
|
className: "w-20 bg-dt-bg-tertiary border border-dt-border-light rounded px-2 py-1 text-[12px] text-dt-text-secondary font-mono outline-none focus:border-dt-info/50",
|
|
2572
2615
|
value: r.wsLatencyMs,
|
|
2573
|
-
onChange: (
|
|
2616
|
+
onChange: (m) => b("wsLatencyMs", Math.max(0, parseInt(m.target.value, 10) || 0)),
|
|
2574
2617
|
min: "0",
|
|
2575
2618
|
max: "10000",
|
|
2576
2619
|
step: "50"
|
|
@@ -2586,7 +2629,7 @@ function De({ eventStore: o }) {
|
|
|
2586
2629
|
type: "number",
|
|
2587
2630
|
className: "w-20 bg-dt-bg-tertiary border border-dt-border-light rounded px-2 py-1 text-[12px] text-dt-text-secondary font-mono outline-none focus:border-dt-info/50",
|
|
2588
2631
|
value: r.wsJitterMs,
|
|
2589
|
-
onChange: (
|
|
2632
|
+
onChange: (m) => b("wsJitterMs", Math.max(0, parseInt(m.target.value, 10) || 0)),
|
|
2590
2633
|
min: "0",
|
|
2591
2634
|
max: "5000",
|
|
2592
2635
|
step: "25"
|
|
@@ -2622,7 +2665,7 @@ function De({ eventStore: o }) {
|
|
|
2622
2665
|
{
|
|
2623
2666
|
type: "button",
|
|
2624
2667
|
className: "px-2.5 py-1 bg-dt-bg-tertiary border border-dt-border-light rounded-md text-[11px] text-dt-text-secondary cursor-pointer transition-all hover:bg-white/10 hover:border-dt-border",
|
|
2625
|
-
onClick:
|
|
2668
|
+
onClick: N,
|
|
2626
2669
|
children: "Export"
|
|
2627
2670
|
}
|
|
2628
2671
|
),
|
|
@@ -2631,7 +2674,7 @@ function De({ eventStore: o }) {
|
|
|
2631
2674
|
{
|
|
2632
2675
|
type: "button",
|
|
2633
2676
|
className: "px-2.5 py-1 bg-dt-bg-tertiary border border-dt-border-light rounded-md text-[11px] text-dt-text-secondary cursor-pointer transition-all hover:bg-white/10 hover:border-dt-border",
|
|
2634
|
-
onClick:
|
|
2677
|
+
onClick: y,
|
|
2635
2678
|
children: "Import"
|
|
2636
2679
|
}
|
|
2637
2680
|
),
|
|
@@ -2640,7 +2683,7 @@ function De({ eventStore: o }) {
|
|
|
2640
2683
|
{
|
|
2641
2684
|
type: "button",
|
|
2642
2685
|
className: "px-2.5 py-1 bg-dt-bg-tertiary border border-dt-border-light rounded-md text-[11px] text-dt-text-secondary cursor-pointer transition-all hover:bg-dt-error/15 hover:text-dt-error hover:border-dt-error/30",
|
|
2643
|
-
onClick:
|
|
2686
|
+
onClick: f,
|
|
2644
2687
|
children: "Clear"
|
|
2645
2688
|
}
|
|
2646
2689
|
)
|
|
@@ -2654,7 +2697,7 @@ function De({ eventStore: o }) {
|
|
|
2654
2697
|
{
|
|
2655
2698
|
type: "button",
|
|
2656
2699
|
className: "px-2.5 py-1 bg-dt-bg-tertiary border border-dt-border-light rounded-md text-[11px] text-dt-text-secondary cursor-pointer transition-all hover:bg-white/10 hover:border-dt-border",
|
|
2657
|
-
onClick:
|
|
2700
|
+
onClick: D,
|
|
2658
2701
|
children: "Snapshot"
|
|
2659
2702
|
}
|
|
2660
2703
|
),
|
|
@@ -2663,7 +2706,7 @@ function De({ eventStore: o }) {
|
|
|
2663
2706
|
" saved"
|
|
2664
2707
|
] })
|
|
2665
2708
|
] }),
|
|
2666
|
-
s.length > 0 ? /* @__PURE__ */ t("div", { className: "flex flex-col gap-1 max-h-[180px] overflow-y-auto pr-1", children: [...s].reverse().map((
|
|
2709
|
+
s.length > 0 ? /* @__PURE__ */ t("div", { className: "flex flex-col gap-1 max-h-[180px] overflow-y-auto pr-1", children: [...s].reverse().map((m) => /* @__PURE__ */ n(
|
|
2667
2710
|
"div",
|
|
2668
2711
|
{
|
|
2669
2712
|
className: "flex items-center gap-2 px-2 py-1 bg-dt-bg-tertiary/50 rounded border border-dt-border-light/30 text-[11px]",
|
|
@@ -2672,8 +2715,8 @@ function De({ eventStore: o }) {
|
|
|
2672
2715
|
"span",
|
|
2673
2716
|
{
|
|
2674
2717
|
className: "text-dt-text-secondary font-mono",
|
|
2675
|
-
title: new Date(
|
|
2676
|
-
children: new Date(
|
|
2718
|
+
title: new Date(m.timestamp).toLocaleString(),
|
|
2719
|
+
children: new Date(m.timestamp).toLocaleTimeString([], {
|
|
2677
2720
|
hour: "2-digit",
|
|
2678
2721
|
minute: "2-digit",
|
|
2679
2722
|
second: "2-digit"
|
|
@@ -2681,7 +2724,7 @@ function De({ eventStore: o }) {
|
|
|
2681
2724
|
}
|
|
2682
2725
|
),
|
|
2683
2726
|
/* @__PURE__ */ n("span", { className: "text-dt-text-muted", children: [
|
|
2684
|
-
|
|
2727
|
+
m.events.length,
|
|
2685
2728
|
"e"
|
|
2686
2729
|
] }),
|
|
2687
2730
|
/* @__PURE__ */ t(
|
|
@@ -2689,13 +2732,13 @@ function De({ eventStore: o }) {
|
|
|
2689
2732
|
{
|
|
2690
2733
|
type: "button",
|
|
2691
2734
|
className: "ml-auto px-1.5 py-0.5 bg-dt-info/15 text-dt-info border border-dt-info/30 rounded text-[10px] font-medium cursor-pointer hover:bg-dt-info/25",
|
|
2692
|
-
onClick: () => h(
|
|
2735
|
+
onClick: () => h(m.timestamp),
|
|
2693
2736
|
children: "Restore"
|
|
2694
2737
|
}
|
|
2695
2738
|
)
|
|
2696
2739
|
]
|
|
2697
2740
|
},
|
|
2698
|
-
|
|
2741
|
+
m.timestamp
|
|
2699
2742
|
)) }) : /* @__PURE__ */ t("p", { className: "text-[11px] text-dt-text-muted/60 m-0", children: "No snapshots" })
|
|
2700
2743
|
] }),
|
|
2701
2744
|
/* @__PURE__ */ n("div", { className: "flex flex-col gap-1.5", children: [
|
|
@@ -2726,64 +2769,68 @@ function De({ eventStore: o }) {
|
|
|
2726
2769
|
" ",
|
|
2727
2770
|
/* @__PURE__ */ n("span", { children: [
|
|
2728
2771
|
"v",
|
|
2729
|
-
|
|
2772
|
+
ae
|
|
2730
2773
|
] })
|
|
2731
2774
|
] })
|
|
2732
2775
|
] })
|
|
2733
2776
|
] });
|
|
2734
2777
|
}
|
|
2735
|
-
function
|
|
2778
|
+
function $e({
|
|
2736
2779
|
eventStore: o,
|
|
2737
2780
|
position: r = "bottom-right",
|
|
2738
2781
|
mode: a = "overlay",
|
|
2739
2782
|
panelConnectionState: s
|
|
2740
2783
|
}) {
|
|
2741
|
-
const l = a === "panel", [u, c] =
|
|
2784
|
+
const l = a === "panel", [u, c] = L(() => {
|
|
2742
2785
|
if (l) return !0;
|
|
2743
|
-
const
|
|
2744
|
-
return
|
|
2745
|
-
}), [
|
|
2746
|
-
|
|
2747
|
-
const
|
|
2748
|
-
|
|
2786
|
+
const p = jt("concave-devtools-open");
|
|
2787
|
+
return p ? JSON.parse(p) : !0;
|
|
2788
|
+
}), [b, N] = L("activity"), [y, D] = L([]), [h, x] = L(!1);
|
|
2789
|
+
U(() => {
|
|
2790
|
+
const p = o.subscribe((i) => {
|
|
2791
|
+
D(o.getAllEvents()), x(o.isPausedState());
|
|
2749
2792
|
});
|
|
2750
|
-
return
|
|
2751
|
-
}, [o]),
|
|
2752
|
-
l ||
|
|
2793
|
+
return D(o.getAllEvents()), x(o.isPausedState()), p;
|
|
2794
|
+
}, [o]), U(() => {
|
|
2795
|
+
l || Rt("concave-devtools-open", JSON.stringify(u));
|
|
2753
2796
|
}, [u, l]);
|
|
2754
|
-
const
|
|
2755
|
-
o.clear(),
|
|
2756
|
-
}, [o]),
|
|
2797
|
+
const f = F(() => {
|
|
2798
|
+
o.clear(), D([]);
|
|
2799
|
+
}, [o]), m = F(() => {
|
|
2757
2800
|
c(!1);
|
|
2758
|
-
}, []),
|
|
2759
|
-
const
|
|
2801
|
+
}, []), g = F(() => {
|
|
2802
|
+
const p = o.exportSession(), i = new Blob([JSON.stringify(p, null, 2)], {
|
|
2760
2803
|
type: "application/json"
|
|
2761
|
-
}),
|
|
2762
|
-
|
|
2763
|
-
}, [o]),
|
|
2804
|
+
}), C = URL.createObjectURL(i), S = document.createElement("a");
|
|
2805
|
+
S.href = C, S.download = `concave-devtools-${Date.now()}.json`, S.click(), URL.revokeObjectURL(C);
|
|
2806
|
+
}, [o]), $ = F(() => {
|
|
2764
2807
|
o.isPausedState() ? (o.resume(), x(!1)) : (o.pause(), x(!0));
|
|
2765
2808
|
}, [o]);
|
|
2766
|
-
|
|
2767
|
-
const
|
|
2768
|
-
(
|
|
2809
|
+
U(() => {
|
|
2810
|
+
const p = (i) => {
|
|
2811
|
+
if ((i.metaKey || i.ctrlKey) && i.shiftKey && i.key === "D") {
|
|
2812
|
+
i.preventDefault(), c((C) => !C);
|
|
2813
|
+
return;
|
|
2814
|
+
}
|
|
2815
|
+
$t() && ((i.metaKey || i.ctrlKey) && i.key === "e" && (i.preventDefault(), g()), (i.metaKey || i.ctrlKey) && i.key === "p" && (i.preventDefault(), $()));
|
|
2769
2816
|
};
|
|
2770
|
-
return window.addEventListener("keydown",
|
|
2771
|
-
}, [
|
|
2772
|
-
const
|
|
2817
|
+
return window.addEventListener("keydown", p), () => window.removeEventListener("keydown", p);
|
|
2818
|
+
}, [f, g, $]);
|
|
2819
|
+
const I = {
|
|
2773
2820
|
"bottom-right": "bottom-4 right-4",
|
|
2774
2821
|
"bottom-left": "bottom-4 left-4",
|
|
2775
2822
|
"top-right": "top-4 right-4",
|
|
2776
2823
|
"top-left": "top-4 left-4"
|
|
2777
|
-
}[r],
|
|
2778
|
-
(
|
|
2779
|
-
),
|
|
2780
|
-
{ id: "activity", label: "Activity", count:
|
|
2781
|
-
{ id: "subscriptions", label: "Subscriptions", count:
|
|
2824
|
+
}[r], T = y.filter(
|
|
2825
|
+
(p) => p.type === "query" || p.type === "mutation" || p.type === "action" || p.type === "auth"
|
|
2826
|
+
), E = o.getActiveSubscriptions().length, z = y.filter((p) => p.type === "log"), O = T.filter((p) => "status" in p && p.status === "error"), d = [
|
|
2827
|
+
{ id: "activity", label: "Activity", count: T.length, hasError: O.length > 0 },
|
|
2828
|
+
{ id: "subscriptions", label: "Subscriptions", count: E, hasError: !1 },
|
|
2782
2829
|
{ id: "performance", label: "Performance", count: 0, hasError: !1 },
|
|
2783
|
-
{ id: "logs", label: "Logs", count:
|
|
2830
|
+
{ id: "logs", label: "Logs", count: z.length, hasError: !1 },
|
|
2784
2831
|
{ id: "settings", label: "Settings", count: 0, hasError: !1 }
|
|
2785
2832
|
];
|
|
2786
|
-
return /* @__PURE__ */ n("div", { className: l ? "w-full h-full bg-dt-bg font-sans text-[13px] leading-normal text-dt-text-secondary antialiased" : `fixed z-[999999] font-sans text-[13px] leading-normal text-dt-text-secondary antialiased ${
|
|
2833
|
+
return /* @__PURE__ */ n("div", { className: l ? "w-full h-full bg-dt-bg font-sans text-[13px] leading-normal text-dt-text-secondary antialiased" : `fixed z-[999999] font-sans text-[13px] leading-normal text-dt-text-secondary antialiased ${I}`, children: [
|
|
2787
2834
|
!l && !u && /* @__PURE__ */ n(
|
|
2788
2835
|
"button",
|
|
2789
2836
|
{
|
|
@@ -2794,31 +2841,31 @@ function Me({
|
|
|
2794
2841
|
"aria-expanded": "false",
|
|
2795
2842
|
children: [
|
|
2796
2843
|
/* @__PURE__ */ n("svg", { width: "20", height: "20", viewBox: "0 0 32 32", fill: "none", children: [
|
|
2797
|
-
/* @__PURE__ */ t("rect", { width: "32", height: "32", rx:
|
|
2798
|
-
/* @__PURE__ */ t("path", { d:
|
|
2844
|
+
/* @__PURE__ */ t("rect", { width: "32", height: "32", rx: he, fill: xe }),
|
|
2845
|
+
/* @__PURE__ */ t("path", { d: be, fill: "white" })
|
|
2799
2846
|
] }),
|
|
2800
|
-
|
|
2847
|
+
O.length > 0 ? /* @__PURE__ */ t("span", { className: "bg-gradient-to-br from-red-500 to-red-600 text-white px-2 py-0.5 rounded-full text-[10px] font-bold tracking-wide shadow-md min-w-5 text-center", children: O.length }) : T.length > 0 ? /* @__PURE__ */ t("span", { className: "bg-gradient-to-br from-blue-500 to-blue-600 text-white px-2 py-0.5 rounded-full text-[10px] font-bold tracking-wide shadow-md min-w-5 text-center", children: T.length }) : null
|
|
2801
2848
|
]
|
|
2802
2849
|
}
|
|
2803
2850
|
),
|
|
2804
|
-
(l || u) && /* @__PURE__ */ n("div", { className: l ? "w-full h-full bg-dt-bg flex flex-col overflow-hidden" : "w-[min(860px,calc(100vw-32px))] min-w-[300px] max-w-[calc(100vw-24px)] h-[min(620px,calc(100vh-32px))] min-h-[360px] max-h-[calc(100vh-24px)] bg-zinc-950/98 border border-dt-border rounded-2xl shadow-2xl flex flex-col overflow-hidden", role: "dialog", "aria-label": "Concave DevTools", "aria-modal": "false", children: [
|
|
2851
|
+
(l || u) && /* @__PURE__ */ n("div", { className: l ? "w-full h-full bg-dt-bg flex flex-col overflow-hidden outline-none" : "w-[min(860px,calc(100vw-32px))] min-w-[300px] max-w-[calc(100vw-24px)] h-[min(620px,calc(100vh-32px))] min-h-[360px] max-h-[calc(100vh-24px)] bg-zinc-950/98 border border-dt-border rounded-2xl shadow-2xl flex flex-col overflow-hidden outline-none", role: "dialog", "aria-label": "Concave DevTools", "aria-modal": "false", tabIndex: -1, children: [
|
|
2805
2852
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between border-b border-dt-border px-0 bg-dt-bg-secondary", children: [
|
|
2806
|
-
/* @__PURE__ */ t("div", { className: "flex items-center gap-0 flex-1 overflow-x-auto", role: "tablist", "aria-label": "DevTools panels", children:
|
|
2853
|
+
/* @__PURE__ */ t("div", { className: "flex items-center gap-0 flex-1 overflow-x-auto", role: "tablist", "aria-label": "DevTools panels", children: d.map((p) => /* @__PURE__ */ n(
|
|
2807
2854
|
"button",
|
|
2808
2855
|
{
|
|
2809
|
-
id: `tab-${
|
|
2810
|
-
className: l ? `px-3 py-[7px] bg-transparent border-none text-[12px] cursor-pointer transition-colors whitespace-nowrap border-b-2 ${
|
|
2811
|
-
onClick: () =>
|
|
2812
|
-
"aria-label": `${
|
|
2813
|
-
"aria-selected":
|
|
2856
|
+
id: `tab-${p.id}`,
|
|
2857
|
+
className: l ? `px-3 py-[7px] bg-transparent border-none text-[12px] cursor-pointer transition-colors whitespace-nowrap border-b-2 ${b === p.id ? "text-dt-info border-b-dt-info" : "text-dt-text-tertiary border-b-transparent hover:text-dt-text-secondary hover:bg-white/5"}` : `px-3 py-[7px] bg-transparent border-none text-[12px] cursor-pointer transition-colors whitespace-nowrap border-b-2 ${b === p.id ? "text-dt-info border-b-dt-info" : "text-dt-text-tertiary border-b-transparent hover:text-dt-text-secondary hover:bg-white/5"}`,
|
|
2858
|
+
onClick: () => N(p.id),
|
|
2859
|
+
"aria-label": `${p.label} panel`,
|
|
2860
|
+
"aria-selected": b === p.id,
|
|
2814
2861
|
role: "tab",
|
|
2815
|
-
"aria-controls": `panel-${
|
|
2862
|
+
"aria-controls": `panel-${p.id}`,
|
|
2816
2863
|
children: [
|
|
2817
|
-
/* @__PURE__ */ t("span", { children:
|
|
2818
|
-
|
|
2864
|
+
/* @__PURE__ */ t("span", { children: p.label }),
|
|
2865
|
+
p.count > 0 && /* @__PURE__ */ t("span", { className: l ? `ml-1.5 px-1.5 py-0 rounded-full text-[10px] font-medium ${p.hasError ? "bg-dt-error/20 text-dt-error" : "bg-dt-bg-tertiary text-dt-text-tertiary"}` : `ml-1.5 px-1.5 py-0 rounded-full text-[10px] font-medium ${p.hasError ? "bg-dt-error/20 text-dt-error" : "bg-dt-bg-tertiary text-dt-text-tertiary"}`, children: p.count })
|
|
2819
2866
|
]
|
|
2820
2867
|
},
|
|
2821
|
-
|
|
2868
|
+
p.id
|
|
2822
2869
|
)) }),
|
|
2823
2870
|
/* @__PURE__ */ n("div", { className: l ? "flex items-center gap-0.5 ml-auto pr-1" : "flex items-center gap-1.5 ml-auto", role: "toolbar", "aria-label": "DevTools quick actions", children: [
|
|
2824
2871
|
/* @__PURE__ */ t(
|
|
@@ -2826,7 +2873,7 @@ function Me({
|
|
|
2826
2873
|
{
|
|
2827
2874
|
type: "button",
|
|
2828
2875
|
className: l ? `flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded cursor-pointer transition-colors hover:bg-white/10 ${h ? "text-dt-text-muted hover:text-dt-text-secondary" : "text-dt-error hover:text-dt-error"}` : `flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded-md cursor-pointer transition-all relative hover:bg-zinc-600/20 active:scale-[0.94] ${h ? "text-dt-text-muted hover:text-dt-text-secondary" : "text-dt-error bg-dt-error/10 hover:bg-dt-error/15 hover:text-dt-error"}`,
|
|
2829
|
-
onClick:
|
|
2876
|
+
onClick: $,
|
|
2830
2877
|
title: h ? "Start recording (Cmd/Ctrl+P)" : "Stop recording (Cmd/Ctrl+P)",
|
|
2831
2878
|
"aria-label": h ? "Start recording" : "Stop recording",
|
|
2832
2879
|
"aria-pressed": !h,
|
|
@@ -2838,7 +2885,7 @@ function Me({
|
|
|
2838
2885
|
{
|
|
2839
2886
|
type: "button",
|
|
2840
2887
|
className: l ? "flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded text-dt-text-tertiary cursor-pointer transition-colors hover:bg-white/10 hover:text-dt-text-secondary" : "flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded-md text-dt-text-muted cursor-pointer transition-all relative hover:bg-zinc-600/20 hover:text-dt-text-secondary active:scale-[0.94]",
|
|
2841
|
-
onClick:
|
|
2888
|
+
onClick: g,
|
|
2842
2889
|
title: "Export Session (Cmd/Ctrl+E)",
|
|
2843
2890
|
"aria-label": "Export session",
|
|
2844
2891
|
children: /* @__PURE__ */ n("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "currentColor", children: [
|
|
@@ -2852,7 +2899,7 @@ function Me({
|
|
|
2852
2899
|
{
|
|
2853
2900
|
type: "button",
|
|
2854
2901
|
className: l ? "flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded text-dt-text-tertiary cursor-pointer transition-colors hover:bg-white/10 hover:text-dt-text-secondary" : "flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded-md text-dt-text-muted cursor-pointer transition-all relative hover:bg-zinc-600/20 hover:text-dt-text-secondary active:scale-[0.94]",
|
|
2855
|
-
onClick:
|
|
2902
|
+
onClick: f,
|
|
2856
2903
|
title: "Clear all data",
|
|
2857
2904
|
"aria-label": "Clear all data",
|
|
2858
2905
|
children: /* @__PURE__ */ n("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
|
|
@@ -2866,7 +2913,7 @@ function Me({
|
|
|
2866
2913
|
{
|
|
2867
2914
|
type: "button",
|
|
2868
2915
|
className: "flex items-center justify-center w-7 h-7 p-0 bg-transparent border-none rounded-md text-dt-text-muted cursor-pointer transition-all relative hover:bg-red-500/15 hover:text-dt-error active:scale-[0.94]",
|
|
2869
|
-
onClick:
|
|
2916
|
+
onClick: m,
|
|
2870
2917
|
title: "Close (Cmd/Ctrl+Shift+D)",
|
|
2871
2918
|
"aria-label": "Close DevTools",
|
|
2872
2919
|
children: /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "currentColor", children: /* @__PURE__ */ t("path", { d: "M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z" }) })
|
|
@@ -2875,20 +2922,20 @@ function Me({
|
|
|
2875
2922
|
] })
|
|
2876
2923
|
] }),
|
|
2877
2924
|
/* @__PURE__ */ n("div", { className: "flex-1 min-h-0 flex flex-col", children: [
|
|
2878
|
-
|
|
2879
|
-
|
|
2880
|
-
|
|
2881
|
-
|
|
2882
|
-
|
|
2925
|
+
b === "activity" && /* @__PURE__ */ t("div", { id: "panel-activity", className: "flex-1 min-h-0 flex flex-col", role: "tabpanel", "aria-labelledby": "tab-activity", children: /* @__PURE__ */ t(ke, { eventStore: o, panelConnectionState: l ? s : void 0 }) }),
|
|
2926
|
+
b === "subscriptions" && /* @__PURE__ */ t("div", { id: "panel-subscriptions", className: "flex-1 min-h-0 flex flex-col", role: "tabpanel", "aria-labelledby": "tab-subscriptions", children: /* @__PURE__ */ t(Ne, { eventStore: o }) }),
|
|
2927
|
+
b === "performance" && /* @__PURE__ */ t("div", { id: "panel-performance", className: "flex-1 min-h-0 flex flex-col", role: "tabpanel", "aria-labelledby": "tab-performance", children: /* @__PURE__ */ t(Ce, { eventStore: o, onNavigate: N }) }),
|
|
2928
|
+
b === "logs" && /* @__PURE__ */ t("div", { id: "panel-logs", className: "flex-1 min-h-0 flex flex-col", role: "tabpanel", "aria-labelledby": "tab-logs", children: /* @__PURE__ */ t(Se, { eventStore: o, onNavigate: N }) }),
|
|
2929
|
+
b === "settings" && /* @__PURE__ */ t("div", { id: "panel-settings", className: "flex-1 min-h-0 flex flex-col", role: "tabpanel", "aria-labelledby": "tab-settings", children: /* @__PURE__ */ t(Me, { eventStore: o }) })
|
|
2883
2930
|
] })
|
|
2884
2931
|
] })
|
|
2885
2932
|
] });
|
|
2886
2933
|
}
|
|
2887
|
-
var ut = {},
|
|
2888
|
-
function
|
|
2889
|
-
if (
|
|
2890
|
-
|
|
2891
|
-
var o =
|
|
2934
|
+
var ut = {}, oe;
|
|
2935
|
+
function Ie() {
|
|
2936
|
+
if (oe) return ut;
|
|
2937
|
+
oe = 1;
|
|
2938
|
+
var o = se;
|
|
2892
2939
|
if (process.env.NODE_ENV === "production")
|
|
2893
2940
|
ut.createRoot = o.createRoot, ut.hydrateRoot = o.hydrateRoot;
|
|
2894
2941
|
else {
|
|
@@ -2911,32 +2958,32 @@ function Se() {
|
|
|
2911
2958
|
}
|
|
2912
2959
|
return ut;
|
|
2913
2960
|
}
|
|
2914
|
-
var
|
|
2915
|
-
const Ie = '@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:"Fira Code","Monaco","Consolas",monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-white:#fff;--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-lg:16px;--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-dt-bg:#121214fa;--color-dt-bg-secondary:#18181bf2;--color-dt-bg-tertiary:#27272a99;--color-dt-border:#3f3f4699;--color-dt-border-light:#3f3f4666;--color-dt-text:#f4f4f5;--color-dt-text-secondary:#e4e4e7;--color-dt-text-tertiary:#a1a1aa;--color-dt-text-muted:#71717a;--color-dt-success:#22c55e;--color-dt-error:#ef4444;--color-dt-warning:#f59e0b;--color-dt-info:#3b82f6;--color-dt-query:#60a5fa;--color-dt-mutation:#a78bfa;--color-dt-action:#34d399}}@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;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-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-1\\/2{top:50%}.top-4{top:calc(var(--spacing)*4)}.right-1\\.5{right:calc(var(--spacing)*1.5)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.left-4{left:calc(var(--spacing)*4)}.z-\\[2\\]{z-index:2}.z-\\[999999\\]{z-index:999999}.z-\\[9999999\\]{z-index:9999999}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mx-0\\.5{margin-inline:calc(var(--spacing)*.5)}.my-0\\.5{margin-block:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mr-1{margin-right:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-1\\.5{margin-left:calc(var(--spacing)*1.5)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\\.5{height:calc(var(--spacing)*1.5)}.h-2\\.5{height:calc(var(--spacing)*2.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-\\[min\\(620px\\,calc\\(100vh-32px\\)\\)\\]{height:min(620px,100vh - 32px)}.h-full{height:100%}.max-h-\\[80px\\]{max-height:80px}.max-h-\\[100px\\]{max-height:100px}.max-h-\\[150px\\]{max-height:150px}.max-h-\\[180px\\]{max-height:180px}.max-h-\\[200px\\]{max-height:200px}.max-h-\\[calc\\(100vh-24px\\)\\]{max-height:calc(100vh - 24px)}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\\[360px\\]{min-height:360px}.min-h-px{min-height:1px}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-2\\.5{width:calc(var(--spacing)*2.5)}.w-4{width:calc(var(--spacing)*4)}.w-7{width:calc(var(--spacing)*7)}.w-10{width:calc(var(--spacing)*10)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-\\[300px\\]{width:300px}.w-\\[320px\\]{width:320px}.w-\\[min\\(860px\\,calc\\(100vw-32px\\)\\)\\]{width:min(860px,100vw - 32px)}.w-full{width:100%}.max-w-\\[44\\%\\]{max-width:44%}.max-w-\\[150px\\]{max-width:150px}.max-w-\\[180px\\]{max-width:180px}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[360px\\]{max-width:360px}.max-w-\\[calc\\(100vw-24px\\)\\]{max-width:calc(100vw - 24px)}.max-w-\\[min\\(58vw\\,680px\\)\\]{max-width:min(58vw,680px)}.max-w-\\[min\\(62vw\\,760px\\)\\]{max-width:min(62vw,760px)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-\\[180px\\]{min-width:180px}.min-w-\\[300px\\]{min-width:300px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-y-1\\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-150{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-90{rotate:90deg}.animate-\\[dt-fade-in_0\\.1s_ease-out\\]{animation:.1s ease-out dt-fade-in}.animate-\\[dt-fade-in_0\\.15s_ease-out\\]{animation:.15s ease-out dt-fade-in}.animate-\\[dt-slide-in_0\\.2s_ease-out\\]{animation:.2s ease-out dt-slide-in}.animate-pulse{animation:var(--animate-pulse)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.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-\\[3px\\]{gap:3px}.gap-px{gap:1px}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\\[3px\\]{border-radius:3px}.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-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-sm{border-top-left-radius:var(--radius-sm);border-top-right-radius:var(--radius-sm)}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-none{--tw-border-style:none;border-style:none}.border-dt-border{border-color:var(--color-dt-border)}.border-dt-border-light{border-color:var(--color-dt-border-light)}.border-dt-border-light\\/30{border-color:#3f3f461f}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/30{border-color:color-mix(in oklab,var(--color-dt-border-light)30%,transparent)}}.border-dt-border-light\\/40{border-color:#3f3f4629}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/40{border-color:color-mix(in oklab,var(--color-dt-border-light)40%,transparent)}}.border-dt-border-light\\/50{border-color:#3f3f4633}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/50{border-color:color-mix(in oklab,var(--color-dt-border-light)50%,transparent)}}.border-dt-error\\/30{border-color:#ef44444d}@supports (color:color-mix(in lab,red,red)){.border-dt-error\\/30{border-color:color-mix(in oklab,var(--color-dt-error)30%,transparent)}}.border-dt-info\\/20{border-color:#3b82f633}@supports (color:color-mix(in lab,red,red)){.border-dt-info\\/20{border-color:color-mix(in oklab,var(--color-dt-info)20%,transparent)}}.border-dt-info\\/30{border-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.border-dt-info\\/30{border-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.border-dt-mutation\\/20{border-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.border-dt-mutation\\/20{border-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.border-dt-success\\/30{border-color:#22c55e4d}@supports (color:color-mix(in lab,red,red)){.border-dt-success\\/30{border-color:color-mix(in oklab,var(--color-dt-success)30%,transparent)}}.border-dt-warning\\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-dt-warning\\/20{border-color:color-mix(in oklab,var(--color-dt-warning)20%,transparent)}}.border-dt-warning\\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-dt-warning\\/30{border-color:color-mix(in oklab,var(--color-dt-warning)30%,transparent)}}.border-transparent{border-color:#0000}.border-zinc-700\\/30{border-color:#3f3f464d}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/30{border-color:color-mix(in oklab,var(--color-zinc-700)30%,transparent)}}.border-b-dt-info{border-bottom-color:var(--color-dt-info)}.border-b-transparent{border-bottom-color:#0000}.border-l-dt-error\\/40{border-left-color:#ef444466}@supports (color:color-mix(in lab,red,red)){.border-l-dt-error\\/40{border-left-color:color-mix(in oklab,var(--color-dt-error)40%,transparent)}}.border-l-dt-query\\/30{border-left-color:#60a5fa4d}@supports (color:color-mix(in lab,red,red)){.border-l-dt-query\\/30{border-left-color:color-mix(in oklab,var(--color-dt-query)30%,transparent)}}.bg-dt-action{background-color:var(--color-dt-action)}.bg-dt-action\\/20{background-color:#34d39933}@supports (color:color-mix(in lab,red,red)){.bg-dt-action\\/20{background-color:color-mix(in oklab,var(--color-dt-action)20%,transparent)}}.bg-dt-action\\/25{background-color:#34d39940}@supports (color:color-mix(in lab,red,red)){.bg-dt-action\\/25{background-color:color-mix(in oklab,var(--color-dt-action)25%,transparent)}}.bg-dt-bg{background-color:var(--color-dt-bg)}.bg-dt-bg-secondary{background-color:var(--color-dt-bg-secondary)}.bg-dt-bg-secondary\\/30{background-color:#18181b49}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/30{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)30%,transparent)}}.bg-dt-bg-secondary\\/50{background-color:#18181b79}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/50{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)50%,transparent)}}.bg-dt-bg-secondary\\/85{background-color:#18181bce}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/85{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)85%,transparent)}}.bg-dt-bg-tertiary{background-color:var(--color-dt-bg-tertiary)}.bg-dt-bg-tertiary\\/30{background-color:#27272a2e}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-tertiary\\/30{background-color:color-mix(in oklab,var(--color-dt-bg-tertiary)30%,transparent)}}.bg-dt-bg-tertiary\\/50{background-color:#27272a4d}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-tertiary\\/50{background-color:color-mix(in oklab,var(--color-dt-bg-tertiary)50%,transparent)}}.bg-dt-error{background-color:var(--color-dt-error)}.bg-dt-error\\/5{background-color:#ef44440d}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/5{background-color:color-mix(in oklab,var(--color-dt-error)5%,transparent)}}.bg-dt-error\\/10{background-color:#ef44441a}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/10{background-color:color-mix(in oklab,var(--color-dt-error)10%,transparent)}}.bg-dt-error\\/15{background-color:#ef444426}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/15{background-color:color-mix(in oklab,var(--color-dt-error)15%,transparent)}}.bg-dt-error\\/20{background-color:#ef444433}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/20{background-color:color-mix(in oklab,var(--color-dt-error)20%,transparent)}}.bg-dt-error\\/25{background-color:#ef444440}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/25{background-color:color-mix(in oklab,var(--color-dt-error)25%,transparent)}}.bg-dt-info\\/5{background-color:#3b82f60d}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/5{background-color:color-mix(in oklab,var(--color-dt-info)5%,transparent)}}.bg-dt-info\\/15{background-color:#3b82f626}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/15{background-color:color-mix(in oklab,var(--color-dt-info)15%,transparent)}}.bg-dt-info\\/20{background-color:#3b82f633}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/20{background-color:color-mix(in oklab,var(--color-dt-info)20%,transparent)}}.bg-dt-mutation{background-color:var(--color-dt-mutation)}.bg-dt-mutation\\/10{background-color:#a78bfa1a}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/10{background-color:color-mix(in oklab,var(--color-dt-mutation)10%,transparent)}}.bg-dt-mutation\\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/20{background-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.bg-dt-mutation\\/25{background-color:#a78bfa40}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/25{background-color:color-mix(in oklab,var(--color-dt-mutation)25%,transparent)}}.bg-dt-query{background-color:var(--color-dt-query)}.bg-dt-query\\/20{background-color:#60a5fa33}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/20{background-color:color-mix(in oklab,var(--color-dt-query)20%,transparent)}}.bg-dt-query\\/25{background-color:#60a5fa40}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/25{background-color:color-mix(in oklab,var(--color-dt-query)25%,transparent)}}.bg-dt-query\\/\\[0\\.02\\]{background-color:#60a5fa05}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/\\[0\\.02\\]{background-color:color-mix(in oklab,var(--color-dt-query)2%,transparent)}}.bg-dt-success{background-color:var(--color-dt-success)}.bg-dt-success\\/5{background-color:#22c55e0d}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/5{background-color:color-mix(in oklab,var(--color-dt-success)5%,transparent)}}.bg-dt-success\\/15{background-color:#22c55e26}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/15{background-color:color-mix(in oklab,var(--color-dt-success)15%,transparent)}}.bg-dt-success\\/20{background-color:#22c55e33}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/20{background-color:color-mix(in oklab,var(--color-dt-success)20%,transparent)}}.bg-dt-warning{background-color:var(--color-dt-warning)}.bg-dt-warning\\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/5{background-color:color-mix(in oklab,var(--color-dt-warning)5%,transparent)}}.bg-dt-warning\\/15{background-color:#f59e0b26}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/15{background-color:color-mix(in oklab,var(--color-dt-warning)15%,transparent)}}.bg-dt-warning\\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/20{background-color:color-mix(in oklab,var(--color-dt-warning)20%,transparent)}}.bg-transparent{background-color:#0000}.bg-white\\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-white\\/\\[0\\.03\\]{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.03\\]{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.bg-white\\/\\[0\\.06\\]{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.06\\]{background-color:color-mix(in oklab,var(--color-white)6%,transparent)}}.bg-white\\/\\[0\\.08\\]{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.08\\]{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.bg-yellow-400\\/25{background-color:#fac80040}@supports (color:color-mix(in lab,red,red)){.bg-yellow-400\\/25{background-color:color-mix(in oklab,var(--color-yellow-400)25%,transparent)}}.bg-yellow-400\\/30{background-color:#fac8004d}@supports (color:color-mix(in lab,red,red)){.bg-yellow-400\\/30{background-color:color-mix(in oklab,var(--color-yellow-400)30%,transparent)}}.bg-zinc-500\\/25{background-color:#71717b40}@supports (color:color-mix(in lab,red,red)){.bg-zinc-500\\/25{background-color:color-mix(in oklab,var(--color-zinc-500)25%,transparent)}}.bg-zinc-900\\/50{background-color:#18181b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/50{background-color:color-mix(in oklab,var(--color-zinc-900)50%,transparent)}}.bg-zinc-900\\/\\[0\\.98\\]{background-color:#18181bfa}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/\\[0\\.98\\]{background-color:color-mix(in oklab,var(--color-zinc-900)98%,transparent)}}.bg-zinc-950\\/50{background-color:#09090b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/50{background-color:color-mix(in oklab,var(--color-zinc-950)50%,transparent)}}.bg-zinc-950\\/98{background-color:#09090bfa}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/98{background-color:color-mix(in oklab,var(--color-zinc-950)98%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-red-500{--tw-gradient-from:var(--color-red-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-from:#18181bfa}@supports (color:color-mix(in lab,red,red)){.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-from:color-mix(in oklab,var(--color-zinc-900)98%,transparent)}}.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-red-600{--tw-gradient-to:var(--color-red-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-zinc-800\\/95{--tw-gradient-to:#27272af2}@supports (color:color-mix(in lab,red,red)){.to-zinc-800\\/95{--tw-gradient-to:color-mix(in oklab,var(--color-zinc-800)95%,transparent)}}.to-zinc-800\\/95{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-0{padding:calc(var(--spacing)*0)}.p-0\\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-\\[3px\\]{padding:3px}.px-0{padding-inline:calc(var(--spacing)*0)}.px-0\\.5{padding-inline:calc(var(--spacing)*.5)}.px-1{padding-inline:calc(var(--spacing)*1)}.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-\\[18px\\]{padding-inline:18px}.px-px{padding-inline:1px}.py-0{padding-block:calc(var(--spacing)*0)}.py-0\\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.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-12{padding-block:calc(var(--spacing)*12)}.py-\\[7px\\]{padding-block:7px}.py-px{padding-block:1px}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-7{padding-right:calc(var(--spacing)*7)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-dt-action{color:var(--color-dt-action)}.text-dt-border{color:var(--color-dt-border)}.text-dt-error{color:var(--color-dt-error)}.text-dt-info{color:var(--color-dt-info)}.text-dt-mutation{color:var(--color-dt-mutation)}.text-dt-mutation\\/70{color:#a78bfab3}@supports (color:color-mix(in lab,red,red)){.text-dt-mutation\\/70{color:color-mix(in oklab,var(--color-dt-mutation)70%,transparent)}}.text-dt-query{color:var(--color-dt-query)}.text-dt-success{color:var(--color-dt-success)}.text-dt-text{color:var(--color-dt-text)}.text-dt-text-muted{color:var(--color-dt-text-muted)}.text-dt-text-muted\\/40{color:#71717a66}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/40{color:color-mix(in oklab,var(--color-dt-text-muted)40%,transparent)}}.text-dt-text-muted\\/60{color:#71717a99}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/60{color:color-mix(in oklab,var(--color-dt-text-muted)60%,transparent)}}.text-dt-text-muted\\/70{color:#71717ab3}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/70{color:color-mix(in oklab,var(--color-dt-text-muted)70%,transparent)}}.text-dt-text-muted\\/80{color:#71717acc}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/80{color:color-mix(in oklab,var(--color-dt-text-muted)80%,transparent)}}.text-dt-text-muted\\/85{color:#71717ad9}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/85{color:color-mix(in oklab,var(--color-dt-text-muted)85%,transparent)}}.text-dt-text-secondary{color:var(--color-dt-text-secondary)}.text-dt-text-tertiary{color:var(--color-dt-text-tertiary)}.text-dt-warning{color:var(--color-dt-warning)}.text-dt-warning\\/90{color:#f59e0be6}@supports (color:color-mix(in lab,red,red)){.text-dt-warning\\/90{color:color-mix(in oklab,var(--color-dt-warning)90%,transparent)}}.text-inherit{color:inherit}.text-white{color:var(--color-white)}.text-yellow-200{color:var(--color-yellow-200)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-dt-text-muted\\/40::placeholder{color:#71717a66}@supports (color:color-mix(in lab,red,red)){.placeholder-dt-text-muted\\/40::placeholder{color:color-mix(in oklab,var(--color-dt-text-muted)40%,transparent)}}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.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-\\[0_0_0_1px_rgba\\(52\\,211\\,153\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#34d39980);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(96\\,165\\,250\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#60a5fa80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(161\\,161\\,170\\,0\\.4\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#a1a1aa66);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(167\\,139\\,250\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#a78bfa80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(239\\,68\\,68\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#ef444480);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(245\\,158\\,11\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#f59e0b80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(52\\,211\\,153\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#34d39959);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(96\\,165\\,250\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#60a5fa59);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(167\\,139\\,250\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#a78bfa59);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(245\\,158\\,11\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#f59e0b59);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)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px 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-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + 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)}.ring-dt-info{--tw-ring-color:var(--color-dt-info)}.outline,.outline-1{outline-style:var(--tw-outline-style);outline-width:1px}.-outline-offset-1{outline-offset:-1px}.outline-dt-info\\/30{outline-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.outline-dt-info\\/30{outline-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.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{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-blur-\\[20px\\]{--tw-backdrop-blur:blur(20px);-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,)}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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-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-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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.placeholder\\:text-dt-text-muted\\/50::placeholder{color:#71717a80}@supports (color:color-mix(in lab,red,red)){.placeholder\\:text-dt-text-muted\\/50::placeholder{color:color-mix(in oklab,var(--color-dt-text-muted)50%,transparent)}}@media(hover:hover){.hover\\:-translate-y-0\\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\\:scale-150:hover{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:scale-\\[1\\.02\\]:hover{scale:1.02}.hover\\:border-dt-border:hover{border-color:var(--color-dt-border)}.hover\\:border-dt-border-light:hover{border-color:var(--color-dt-border-light)}.hover\\:border-dt-error\\/30:hover{border-color:#ef44444d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-dt-error\\/30:hover{border-color:color-mix(in oklab,var(--color-dt-error)30%,transparent)}}.hover\\:border-dt-info\\/30:hover{border-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-dt-info\\/30:hover{border-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.hover\\:bg-dt-action\\/15:hover{background-color:#34d39926}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-action\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-action)15%,transparent)}}.hover\\:bg-dt-error\\/15:hover{background-color:#ef444426}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-error\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-error)15%,transparent)}}.hover\\:bg-dt-error\\/25:hover{background-color:#ef444440}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-error\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-error)25%,transparent)}}.hover\\:bg-dt-info\\/15:hover{background-color:#3b82f626}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-info\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-info)15%,transparent)}}.hover\\:bg-dt-info\\/25:hover{background-color:#3b82f640}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-info\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-info)25%,transparent)}}.hover\\:bg-dt-mutation\\/15:hover{background-color:#a78bfa26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-mutation\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-mutation)15%,transparent)}}.hover\\:bg-dt-mutation\\/20:hover{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-mutation\\/20:hover{background-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.hover\\:bg-dt-query\\/15:hover{background-color:#60a5fa26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-query\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-query)15%,transparent)}}.hover\\:bg-dt-success\\/25:hover{background-color:#22c55e40}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-success\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-success)25%,transparent)}}.hover\\:bg-dt-warning\\/15:hover{background-color:#f59e0b26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-warning\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-warning)15%,transparent)}}.hover\\:bg-dt-warning\\/25:hover{background-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-warning\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-warning)25%,transparent)}}.hover\\:bg-red-500\\/15:hover{background-color:#fb2c3626}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/15:hover{background-color:color-mix(in oklab,var(--color-red-500)15%,transparent)}}.hover\\:bg-white\\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/5:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\\:bg-white\\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.hover\\:bg-white\\/\\[0\\.03\\]:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.03\\]:hover{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.hover\\:bg-white\\/\\[0\\.04\\]:hover{background-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.04\\]:hover{background-color:color-mix(in oklab,var(--color-white)4%,transparent)}}.hover\\:bg-white\\/\\[0\\.06\\]:hover{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.06\\]:hover{background-color:color-mix(in oklab,var(--color-white)6%,transparent)}}.hover\\:bg-zinc-600\\/20:hover{background-color:#52525c33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-600\\/20:hover{background-color:color-mix(in oklab,var(--color-zinc-600)20%,transparent)}}.hover\\:text-dt-action:hover{color:var(--color-dt-action)}.hover\\:text-dt-error:hover{color:var(--color-dt-error)}.hover\\:text-dt-info:hover{color:var(--color-dt-info)}.hover\\:text-dt-mutation:hover{color:var(--color-dt-mutation)}.hover\\:text-dt-query:hover{color:var(--color-dt-query)}.hover\\:text-dt-text-secondary:hover{color:var(--color-dt-text-secondary)}.hover\\:text-dt-text-tertiary:hover{color:var(--color-dt-text-tertiary)}.hover\\:text-dt-warning:hover{color:var(--color-dt-warning)}}.focus\\:border-dt-info\\/50:focus{border-color:#3b82f680}@supports (color:color-mix(in lab,red,red)){.focus\\:border-dt-info\\/50:focus{border-color:color-mix(in oklab,var(--color-dt-info)50%,transparent)}}.focus\\:bg-dt-bg-tertiary:focus{background-color:var(--color-dt-bg-tertiary)}.focus\\:ring-1:focus{--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)}.focus\\:ring-dt-info\\/40:focus{--tw-ring-color:#3b82f666}@supports (color:color-mix(in lab,red,red)){.focus\\:ring-dt-info\\/40:focus{--tw-ring-color:color-mix(in oklab,var(--color-dt-info)40%,transparent)}}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\\:scale-\\[0\\.94\\]:active{scale:.94}.\\[\\&\\:\\:-webkit-search-cancel-button\\]\\:hidden::-webkit-search-cancel-button{display:none}}@keyframes dt-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes dt-slide-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}html{color-scheme:dark;background-color:#121214}:host{--sb-thumb:#71717a80;--sb-track:transparent}*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb)var(--sb-track)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--sb-track)}::-webkit-scrollbar-thumb{background-color:var(--sb-thumb);border-radius:3px}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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}@keyframes pulse{50%{opacity:.5}}';
|
|
2916
|
-
function
|
|
2961
|
+
var _e = Ie();
|
|
2962
|
+
const Le = '@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:"Fira Code","Monaco","Consolas",monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-white:#fff;--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-lg:16px;--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-dt-bg:#121214fa;--color-dt-bg-secondary:#18181bf2;--color-dt-bg-tertiary:#27272a99;--color-dt-border:#3f3f4699;--color-dt-border-light:#3f3f4666;--color-dt-text:#f4f4f5;--color-dt-text-secondary:#e4e4e7;--color-dt-text-tertiary:#a1a1aa;--color-dt-text-muted:#71717a;--color-dt-success:#22c55e;--color-dt-error:#ef4444;--color-dt-warning:#f59e0b;--color-dt-info:#3b82f6;--color-dt-query:#60a5fa;--color-dt-mutation:#a78bfa;--color-dt-action:#34d399}}@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;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-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-1\\/2{top:50%}.top-4{top:calc(var(--spacing)*4)}.right-1\\.5{right:calc(var(--spacing)*1.5)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.left-4{left:calc(var(--spacing)*4)}.z-\\[2\\]{z-index:2}.z-\\[999999\\]{z-index:999999}.z-\\[9999999\\]{z-index:9999999}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mx-0\\.5{margin-inline:calc(var(--spacing)*.5)}.my-0\\.5{margin-block:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mr-1{margin-right:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-1\\.5{margin-left:calc(var(--spacing)*1.5)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\\.5{height:calc(var(--spacing)*1.5)}.h-2\\.5{height:calc(var(--spacing)*2.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-\\[min\\(620px\\,calc\\(100vh-32px\\)\\)\\]{height:min(620px,100vh - 32px)}.h-full{height:100%}.max-h-\\[80px\\]{max-height:80px}.max-h-\\[100px\\]{max-height:100px}.max-h-\\[150px\\]{max-height:150px}.max-h-\\[180px\\]{max-height:180px}.max-h-\\[200px\\]{max-height:200px}.max-h-\\[calc\\(100vh-24px\\)\\]{max-height:calc(100vh - 24px)}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\\[360px\\]{min-height:360px}.min-h-px{min-height:1px}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-2\\.5{width:calc(var(--spacing)*2.5)}.w-4{width:calc(var(--spacing)*4)}.w-7{width:calc(var(--spacing)*7)}.w-10{width:calc(var(--spacing)*10)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-\\[300px\\]{width:300px}.w-\\[320px\\]{width:320px}.w-\\[min\\(860px\\,calc\\(100vw-32px\\)\\)\\]{width:min(860px,100vw - 32px)}.w-full{width:100%}.max-w-\\[44\\%\\]{max-width:44%}.max-w-\\[150px\\]{max-width:150px}.max-w-\\[180px\\]{max-width:180px}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[360px\\]{max-width:360px}.max-w-\\[calc\\(100vw-24px\\)\\]{max-width:calc(100vw - 24px)}.max-w-\\[min\\(58vw\\,680px\\)\\]{max-width:min(58vw,680px)}.max-w-\\[min\\(62vw\\,760px\\)\\]{max-width:min(62vw,760px)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-\\[180px\\]{min-width:180px}.min-w-\\[300px\\]{min-width:300px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-y-1\\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-150{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-90{rotate:90deg}.animate-\\[dt-fade-in_0\\.1s_ease-out\\]{animation:.1s ease-out dt-fade-in}.animate-\\[dt-fade-in_0\\.15s_ease-out\\]{animation:.15s ease-out dt-fade-in}.animate-\\[dt-slide-in_0\\.2s_ease-out\\]{animation:.2s ease-out dt-slide-in}.animate-pulse{animation:var(--animate-pulse)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.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-\\[3px\\]{gap:3px}.gap-px{gap:1px}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\\[3px\\]{border-radius:3px}.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-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-sm{border-top-left-radius:var(--radius-sm);border-top-right-radius:var(--radius-sm)}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-none{--tw-border-style:none;border-style:none}.border-dt-border{border-color:var(--color-dt-border)}.border-dt-border-light{border-color:var(--color-dt-border-light)}.border-dt-border-light\\/30{border-color:#3f3f461f}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/30{border-color:color-mix(in oklab,var(--color-dt-border-light)30%,transparent)}}.border-dt-border-light\\/40{border-color:#3f3f4629}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/40{border-color:color-mix(in oklab,var(--color-dt-border-light)40%,transparent)}}.border-dt-border-light\\/50{border-color:#3f3f4633}@supports (color:color-mix(in lab,red,red)){.border-dt-border-light\\/50{border-color:color-mix(in oklab,var(--color-dt-border-light)50%,transparent)}}.border-dt-error\\/30{border-color:#ef44444d}@supports (color:color-mix(in lab,red,red)){.border-dt-error\\/30{border-color:color-mix(in oklab,var(--color-dt-error)30%,transparent)}}.border-dt-info\\/20{border-color:#3b82f633}@supports (color:color-mix(in lab,red,red)){.border-dt-info\\/20{border-color:color-mix(in oklab,var(--color-dt-info)20%,transparent)}}.border-dt-info\\/30{border-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.border-dt-info\\/30{border-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.border-dt-mutation\\/20{border-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.border-dt-mutation\\/20{border-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.border-dt-success\\/30{border-color:#22c55e4d}@supports (color:color-mix(in lab,red,red)){.border-dt-success\\/30{border-color:color-mix(in oklab,var(--color-dt-success)30%,transparent)}}.border-dt-warning\\/20{border-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.border-dt-warning\\/20{border-color:color-mix(in oklab,var(--color-dt-warning)20%,transparent)}}.border-dt-warning\\/30{border-color:#f59e0b4d}@supports (color:color-mix(in lab,red,red)){.border-dt-warning\\/30{border-color:color-mix(in oklab,var(--color-dt-warning)30%,transparent)}}.border-transparent{border-color:#0000}.border-zinc-700\\/30{border-color:#3f3f464d}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/30{border-color:color-mix(in oklab,var(--color-zinc-700)30%,transparent)}}.border-b-dt-info{border-bottom-color:var(--color-dt-info)}.border-b-transparent{border-bottom-color:#0000}.border-l-dt-error\\/40{border-left-color:#ef444466}@supports (color:color-mix(in lab,red,red)){.border-l-dt-error\\/40{border-left-color:color-mix(in oklab,var(--color-dt-error)40%,transparent)}}.border-l-dt-query\\/30{border-left-color:#60a5fa4d}@supports (color:color-mix(in lab,red,red)){.border-l-dt-query\\/30{border-left-color:color-mix(in oklab,var(--color-dt-query)30%,transparent)}}.bg-dt-action{background-color:var(--color-dt-action)}.bg-dt-action\\/20{background-color:#34d39933}@supports (color:color-mix(in lab,red,red)){.bg-dt-action\\/20{background-color:color-mix(in oklab,var(--color-dt-action)20%,transparent)}}.bg-dt-action\\/25{background-color:#34d39940}@supports (color:color-mix(in lab,red,red)){.bg-dt-action\\/25{background-color:color-mix(in oklab,var(--color-dt-action)25%,transparent)}}.bg-dt-bg{background-color:var(--color-dt-bg)}.bg-dt-bg-secondary{background-color:var(--color-dt-bg-secondary)}.bg-dt-bg-secondary\\/30{background-color:#18181b49}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/30{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)30%,transparent)}}.bg-dt-bg-secondary\\/50{background-color:#18181b79}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/50{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)50%,transparent)}}.bg-dt-bg-secondary\\/85{background-color:#18181bce}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-secondary\\/85{background-color:color-mix(in oklab,var(--color-dt-bg-secondary)85%,transparent)}}.bg-dt-bg-tertiary{background-color:var(--color-dt-bg-tertiary)}.bg-dt-bg-tertiary\\/30{background-color:#27272a2e}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-tertiary\\/30{background-color:color-mix(in oklab,var(--color-dt-bg-tertiary)30%,transparent)}}.bg-dt-bg-tertiary\\/50{background-color:#27272a4d}@supports (color:color-mix(in lab,red,red)){.bg-dt-bg-tertiary\\/50{background-color:color-mix(in oklab,var(--color-dt-bg-tertiary)50%,transparent)}}.bg-dt-error{background-color:var(--color-dt-error)}.bg-dt-error\\/5{background-color:#ef44440d}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/5{background-color:color-mix(in oklab,var(--color-dt-error)5%,transparent)}}.bg-dt-error\\/10{background-color:#ef44441a}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/10{background-color:color-mix(in oklab,var(--color-dt-error)10%,transparent)}}.bg-dt-error\\/15{background-color:#ef444426}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/15{background-color:color-mix(in oklab,var(--color-dt-error)15%,transparent)}}.bg-dt-error\\/20{background-color:#ef444433}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/20{background-color:color-mix(in oklab,var(--color-dt-error)20%,transparent)}}.bg-dt-error\\/25{background-color:#ef444440}@supports (color:color-mix(in lab,red,red)){.bg-dt-error\\/25{background-color:color-mix(in oklab,var(--color-dt-error)25%,transparent)}}.bg-dt-info\\/5{background-color:#3b82f60d}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/5{background-color:color-mix(in oklab,var(--color-dt-info)5%,transparent)}}.bg-dt-info\\/15{background-color:#3b82f626}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/15{background-color:color-mix(in oklab,var(--color-dt-info)15%,transparent)}}.bg-dt-info\\/20{background-color:#3b82f633}@supports (color:color-mix(in lab,red,red)){.bg-dt-info\\/20{background-color:color-mix(in oklab,var(--color-dt-info)20%,transparent)}}.bg-dt-mutation{background-color:var(--color-dt-mutation)}.bg-dt-mutation\\/10{background-color:#a78bfa1a}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/10{background-color:color-mix(in oklab,var(--color-dt-mutation)10%,transparent)}}.bg-dt-mutation\\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/20{background-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.bg-dt-mutation\\/25{background-color:#a78bfa40}@supports (color:color-mix(in lab,red,red)){.bg-dt-mutation\\/25{background-color:color-mix(in oklab,var(--color-dt-mutation)25%,transparent)}}.bg-dt-query{background-color:var(--color-dt-query)}.bg-dt-query\\/20{background-color:#60a5fa33}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/20{background-color:color-mix(in oklab,var(--color-dt-query)20%,transparent)}}.bg-dt-query\\/25{background-color:#60a5fa40}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/25{background-color:color-mix(in oklab,var(--color-dt-query)25%,transparent)}}.bg-dt-query\\/\\[0\\.02\\]{background-color:#60a5fa05}@supports (color:color-mix(in lab,red,red)){.bg-dt-query\\/\\[0\\.02\\]{background-color:color-mix(in oklab,var(--color-dt-query)2%,transparent)}}.bg-dt-success{background-color:var(--color-dt-success)}.bg-dt-success\\/5{background-color:#22c55e0d}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/5{background-color:color-mix(in oklab,var(--color-dt-success)5%,transparent)}}.bg-dt-success\\/15{background-color:#22c55e26}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/15{background-color:color-mix(in oklab,var(--color-dt-success)15%,transparent)}}.bg-dt-success\\/20{background-color:#22c55e33}@supports (color:color-mix(in lab,red,red)){.bg-dt-success\\/20{background-color:color-mix(in oklab,var(--color-dt-success)20%,transparent)}}.bg-dt-warning{background-color:var(--color-dt-warning)}.bg-dt-warning\\/5{background-color:#f59e0b0d}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/5{background-color:color-mix(in oklab,var(--color-dt-warning)5%,transparent)}}.bg-dt-warning\\/15{background-color:#f59e0b26}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/15{background-color:color-mix(in oklab,var(--color-dt-warning)15%,transparent)}}.bg-dt-warning\\/20{background-color:#f59e0b33}@supports (color:color-mix(in lab,red,red)){.bg-dt-warning\\/20{background-color:color-mix(in oklab,var(--color-dt-warning)20%,transparent)}}.bg-transparent{background-color:#0000}.bg-white\\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-white\\/\\[0\\.03\\]{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.03\\]{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.bg-white\\/\\[0\\.06\\]{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.06\\]{background-color:color-mix(in oklab,var(--color-white)6%,transparent)}}.bg-white\\/\\[0\\.08\\]{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.08\\]{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.bg-yellow-400\\/25{background-color:#fac80040}@supports (color:color-mix(in lab,red,red)){.bg-yellow-400\\/25{background-color:color-mix(in oklab,var(--color-yellow-400)25%,transparent)}}.bg-yellow-400\\/30{background-color:#fac8004d}@supports (color:color-mix(in lab,red,red)){.bg-yellow-400\\/30{background-color:color-mix(in oklab,var(--color-yellow-400)30%,transparent)}}.bg-zinc-500\\/25{background-color:#71717b40}@supports (color:color-mix(in lab,red,red)){.bg-zinc-500\\/25{background-color:color-mix(in oklab,var(--color-zinc-500)25%,transparent)}}.bg-zinc-900\\/50{background-color:#18181b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/50{background-color:color-mix(in oklab,var(--color-zinc-900)50%,transparent)}}.bg-zinc-900\\/\\[0\\.98\\]{background-color:#18181bfa}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/\\[0\\.98\\]{background-color:color-mix(in oklab,var(--color-zinc-900)98%,transparent)}}.bg-zinc-950\\/50{background-color:#09090b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/50{background-color:color-mix(in oklab,var(--color-zinc-950)50%,transparent)}}.bg-zinc-950\\/98{background-color:#09090bfa}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/98{background-color:color-mix(in oklab,var(--color-zinc-950)98%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-red-500{--tw-gradient-from:var(--color-red-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-from:#18181bfa}@supports (color:color-mix(in lab,red,red)){.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-from:color-mix(in oklab,var(--color-zinc-900)98%,transparent)}}.from-zinc-900\\/\\[0\\.98\\]{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-red-600{--tw-gradient-to:var(--color-red-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-zinc-800\\/95{--tw-gradient-to:#27272af2}@supports (color:color-mix(in lab,red,red)){.to-zinc-800\\/95{--tw-gradient-to:color-mix(in oklab,var(--color-zinc-800)95%,transparent)}}.to-zinc-800\\/95{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-0{padding:calc(var(--spacing)*0)}.p-0\\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-\\[3px\\]{padding:3px}.px-0{padding-inline:calc(var(--spacing)*0)}.px-0\\.5{padding-inline:calc(var(--spacing)*.5)}.px-1{padding-inline:calc(var(--spacing)*1)}.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-\\[18px\\]{padding-inline:18px}.px-px{padding-inline:1px}.py-0{padding-block:calc(var(--spacing)*0)}.py-0\\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.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-12{padding-block:calc(var(--spacing)*12)}.py-\\[7px\\]{padding-block:7px}.py-px{padding-block:1px}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-7{padding-right:calc(var(--spacing)*7)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-dt-action{color:var(--color-dt-action)}.text-dt-border{color:var(--color-dt-border)}.text-dt-error{color:var(--color-dt-error)}.text-dt-info{color:var(--color-dt-info)}.text-dt-mutation{color:var(--color-dt-mutation)}.text-dt-mutation\\/70{color:#a78bfab3}@supports (color:color-mix(in lab,red,red)){.text-dt-mutation\\/70{color:color-mix(in oklab,var(--color-dt-mutation)70%,transparent)}}.text-dt-query{color:var(--color-dt-query)}.text-dt-success{color:var(--color-dt-success)}.text-dt-text{color:var(--color-dt-text)}.text-dt-text-muted{color:var(--color-dt-text-muted)}.text-dt-text-muted\\/40{color:#71717a66}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/40{color:color-mix(in oklab,var(--color-dt-text-muted)40%,transparent)}}.text-dt-text-muted\\/60{color:#71717a99}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/60{color:color-mix(in oklab,var(--color-dt-text-muted)60%,transparent)}}.text-dt-text-muted\\/70{color:#71717ab3}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/70{color:color-mix(in oklab,var(--color-dt-text-muted)70%,transparent)}}.text-dt-text-muted\\/80{color:#71717acc}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/80{color:color-mix(in oklab,var(--color-dt-text-muted)80%,transparent)}}.text-dt-text-muted\\/85{color:#71717ad9}@supports (color:color-mix(in lab,red,red)){.text-dt-text-muted\\/85{color:color-mix(in oklab,var(--color-dt-text-muted)85%,transparent)}}.text-dt-text-secondary{color:var(--color-dt-text-secondary)}.text-dt-text-tertiary{color:var(--color-dt-text-tertiary)}.text-dt-warning{color:var(--color-dt-warning)}.text-dt-warning\\/90{color:#f59e0be6}@supports (color:color-mix(in lab,red,red)){.text-dt-warning\\/90{color:color-mix(in oklab,var(--color-dt-warning)90%,transparent)}}.text-inherit{color:inherit}.text-white{color:var(--color-white)}.text-yellow-200{color:var(--color-yellow-200)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-dt-text-muted\\/40::placeholder{color:#71717a66}@supports (color:color-mix(in lab,red,red)){.placeholder-dt-text-muted\\/40::placeholder{color:color-mix(in oklab,var(--color-dt-text-muted)40%,transparent)}}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.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-\\[0_0_0_1px_rgba\\(52\\,211\\,153\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#34d39980);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(96\\,165\\,250\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#60a5fa80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(161\\,161\\,170\\,0\\.4\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#a1a1aa66);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(167\\,139\\,250\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#a78bfa80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(239\\,68\\,68\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#ef444480);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_0_1px_rgba\\(245\\,158\\,11\\,0\\.5\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#f59e0b80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(52\\,211\\,153\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#34d39959);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(96\\,165\\,250\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#60a5fa59);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(167\\,139\\,250\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#a78bfa59);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(245\\,158\\,11\\,0\\.35\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#f59e0b59);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)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px 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-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + 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)}.ring-dt-info{--tw-ring-color:var(--color-dt-info)}.outline,.outline-1{outline-style:var(--tw-outline-style);outline-width:1px}.-outline-offset-1{outline-offset:-1px}.outline-dt-info\\/30{outline-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.outline-dt-info\\/30{outline-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.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{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-blur-\\[20px\\]{--tw-backdrop-blur:blur(20px);-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,)}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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-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-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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.placeholder\\:text-dt-text-muted\\/50::placeholder{color:#71717a80}@supports (color:color-mix(in lab,red,red)){.placeholder\\:text-dt-text-muted\\/50::placeholder{color:color-mix(in oklab,var(--color-dt-text-muted)50%,transparent)}}@media(hover:hover){.hover\\:-translate-y-0\\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\\:scale-150:hover{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:scale-\\[1\\.02\\]:hover{scale:1.02}.hover\\:border-dt-border:hover{border-color:var(--color-dt-border)}.hover\\:border-dt-border-light:hover{border-color:var(--color-dt-border-light)}.hover\\:border-dt-error\\/30:hover{border-color:#ef44444d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-dt-error\\/30:hover{border-color:color-mix(in oklab,var(--color-dt-error)30%,transparent)}}.hover\\:border-dt-info\\/30:hover{border-color:#3b82f64d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-dt-info\\/30:hover{border-color:color-mix(in oklab,var(--color-dt-info)30%,transparent)}}.hover\\:bg-dt-action\\/15:hover{background-color:#34d39926}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-action\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-action)15%,transparent)}}.hover\\:bg-dt-error\\/15:hover{background-color:#ef444426}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-error\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-error)15%,transparent)}}.hover\\:bg-dt-error\\/25:hover{background-color:#ef444440}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-error\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-error)25%,transparent)}}.hover\\:bg-dt-info\\/15:hover{background-color:#3b82f626}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-info\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-info)15%,transparent)}}.hover\\:bg-dt-info\\/25:hover{background-color:#3b82f640}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-info\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-info)25%,transparent)}}.hover\\:bg-dt-mutation\\/15:hover{background-color:#a78bfa26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-mutation\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-mutation)15%,transparent)}}.hover\\:bg-dt-mutation\\/20:hover{background-color:#a78bfa33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-mutation\\/20:hover{background-color:color-mix(in oklab,var(--color-dt-mutation)20%,transparent)}}.hover\\:bg-dt-query\\/15:hover{background-color:#60a5fa26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-query\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-query)15%,transparent)}}.hover\\:bg-dt-success\\/25:hover{background-color:#22c55e40}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-success\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-success)25%,transparent)}}.hover\\:bg-dt-warning\\/15:hover{background-color:#f59e0b26}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-warning\\/15:hover{background-color:color-mix(in oklab,var(--color-dt-warning)15%,transparent)}}.hover\\:bg-dt-warning\\/25:hover{background-color:#f59e0b40}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-dt-warning\\/25:hover{background-color:color-mix(in oklab,var(--color-dt-warning)25%,transparent)}}.hover\\:bg-red-500\\/15:hover{background-color:#fb2c3626}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/15:hover{background-color:color-mix(in oklab,var(--color-red-500)15%,transparent)}}.hover\\:bg-white\\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/5:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\\:bg-white\\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.hover\\:bg-white\\/\\[0\\.03\\]:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.03\\]:hover{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.hover\\:bg-white\\/\\[0\\.04\\]:hover{background-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.04\\]:hover{background-color:color-mix(in oklab,var(--color-white)4%,transparent)}}.hover\\:bg-white\\/\\[0\\.06\\]:hover{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.06\\]:hover{background-color:color-mix(in oklab,var(--color-white)6%,transparent)}}.hover\\:bg-zinc-600\\/20:hover{background-color:#52525c33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-600\\/20:hover{background-color:color-mix(in oklab,var(--color-zinc-600)20%,transparent)}}.hover\\:text-dt-action:hover{color:var(--color-dt-action)}.hover\\:text-dt-error:hover{color:var(--color-dt-error)}.hover\\:text-dt-info:hover{color:var(--color-dt-info)}.hover\\:text-dt-mutation:hover{color:var(--color-dt-mutation)}.hover\\:text-dt-query:hover{color:var(--color-dt-query)}.hover\\:text-dt-text-secondary:hover{color:var(--color-dt-text-secondary)}.hover\\:text-dt-text-tertiary:hover{color:var(--color-dt-text-tertiary)}.hover\\:text-dt-warning:hover{color:var(--color-dt-warning)}}.focus\\:border-dt-info\\/50:focus{border-color:#3b82f680}@supports (color:color-mix(in lab,red,red)){.focus\\:border-dt-info\\/50:focus{border-color:color-mix(in oklab,var(--color-dt-info)50%,transparent)}}.focus\\:bg-dt-bg-tertiary:focus{background-color:var(--color-dt-bg-tertiary)}.focus\\:ring-1:focus{--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)}.focus\\:ring-dt-info\\/40:focus{--tw-ring-color:#3b82f666}@supports (color:color-mix(in lab,red,red)){.focus\\:ring-dt-info\\/40:focus{--tw-ring-color:color-mix(in oklab,var(--color-dt-info)40%,transparent)}}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\\:scale-\\[0\\.94\\]:active{scale:.94}.\\[\\&\\:\\:-webkit-search-cancel-button\\]\\:hidden::-webkit-search-cancel-button{display:none}}@keyframes dt-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes dt-slide-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}html{color-scheme:dark;background-color:#121214}:host{--sb-thumb:#71717a80;--sb-track:transparent}*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb)var(--sb-track)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--sb-track)}::-webkit-scrollbar-thumb{background-color:var(--sb-thumb);border-radius:3px}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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}@keyframes pulse{50%{opacity:.5}}';
|
|
2963
|
+
function Ae(o = {}) {
|
|
2917
2964
|
if (window.__concaveDevToolsInstalled) {
|
|
2918
2965
|
console.warn("[DevTools] Already initialized");
|
|
2919
2966
|
return;
|
|
2920
2967
|
}
|
|
2921
2968
|
window.__concaveDevToolsInstalled = !0, console.log("[DevTools] Initializing UI...");
|
|
2922
|
-
const r =
|
|
2969
|
+
const r = ue(), a = window.__concaveDevToolsEvents || [];
|
|
2923
2970
|
console.log(`[DevTools] Loading ${a.length} captured events`), a.forEach((u) => {
|
|
2924
2971
|
r.addEvent(u);
|
|
2925
2972
|
});
|
|
2926
2973
|
let s = a.length;
|
|
2927
2974
|
setInterval(() => {
|
|
2928
2975
|
const u = window.__concaveDevToolsEvents || [];
|
|
2929
|
-
u.length > s && (u.slice(s).forEach((
|
|
2930
|
-
r.addEvent(
|
|
2976
|
+
u.length > s && (u.slice(s).forEach((b) => {
|
|
2977
|
+
r.addEvent(b);
|
|
2931
2978
|
}), s = u.length);
|
|
2932
2979
|
}, 100);
|
|
2933
2980
|
const l = () => {
|
|
2934
2981
|
const u = document.createElement("div");
|
|
2935
2982
|
u.id = "concave-devtools-host", u.style.cssText = "position:fixed;z-index:999999;bottom:16px;right:16px;pointer-events:none;", document.body.appendChild(u);
|
|
2936
|
-
const c = u.attachShadow({ mode: "open" }),
|
|
2937
|
-
|
|
2938
|
-
const
|
|
2939
|
-
|
|
2983
|
+
const c = u.attachShadow({ mode: "open" }), b = document.createElement("style");
|
|
2984
|
+
b.textContent = Le, c.appendChild(b);
|
|
2985
|
+
const N = document.createElement("div");
|
|
2986
|
+
N.id = "concave-devtools-root", N.style.cssText = "pointer-events:auto;", c.appendChild(N), _e.createRoot(N).render(/* @__PURE__ */ t($e, { eventStore: r, position: o.position })), console.log("[DevTools] UI mounted successfully");
|
|
2940
2987
|
};
|
|
2941
2988
|
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", l) : l(), window.__concaveDevTools = {
|
|
2942
2989
|
eventStore: r
|
|
@@ -2945,17 +2992,17 @@ function _e(o = {}) {
|
|
|
2945
2992
|
if (typeof window < "u") {
|
|
2946
2993
|
const o = window.__concaveDevToolsConfig || {};
|
|
2947
2994
|
o.autoInit !== !1 && setTimeout(() => {
|
|
2948
|
-
|
|
2995
|
+
Ae(o);
|
|
2949
2996
|
}, 100);
|
|
2950
2997
|
}
|
|
2951
2998
|
export {
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
|
|
2957
|
-
|
|
2999
|
+
$e as D,
|
|
3000
|
+
Mt as E,
|
|
3001
|
+
Se as L,
|
|
3002
|
+
Ce as P,
|
|
3003
|
+
Ne as S,
|
|
3004
|
+
Me as a,
|
|
2958
3005
|
gt as b,
|
|
2959
|
-
|
|
2960
|
-
|
|
3006
|
+
ue as g,
|
|
3007
|
+
Ae as i
|
|
2961
3008
|
};
|