ugly-app 0.1.820 → 0.1.822

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.
@@ -1,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.820";
1
+ export declare const CLI_VERSION = "0.1.822";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.820";
2
+ export const CLI_VERSION = "0.1.822";
3
3
  //# sourceMappingURL=version.js.map
@@ -8,12 +8,35 @@ export declare class PerfAgent {
8
8
  private pendingAnomalies;
9
9
  private snapshots;
10
10
  private profiling;
11
+ private lastProfileAt;
12
+ private startupCaptured;
11
13
  private lcpMs;
12
14
  private fcpMs;
13
15
  private _startup;
14
16
  constructor(now: () => number, vitalsReader: () => import('../protocol.js').WebVitals);
15
17
  /** Call once after the agent is created. Starts continuous monitoring. */
16
18
  install(): void;
19
+ /**
20
+ * Fire once, ~STARTUP_SNAPSHOT_DELAY_MS after load: a `page-load` snapshot carrying
21
+ * the startup milestone breakdown + LCP/FCP. Bypasses the hidden-tab gate — startup
22
+ * timing is a one-time load metric, not ongoing pressure — but LCP/FCP may be null
23
+ * if the tab never painted (preloaded in the background).
24
+ */
25
+ private captureStartupSnapshot;
26
+ /**
27
+ * Whether the long tasks seen *recently* warrant an anomaly.
28
+ *
29
+ * The old test also added `vitals.longTasks.length` — a cumulative buffer that is
30
+ * capped at 200 but never decays. Once a page had emitted 10 long tasks in its
31
+ * lifetime (trivial for any real app) the threshold was permanently satisfied, so
32
+ * EVERY subsequent long task captured an anomaly and ran a 1s self-profile. That
33
+ * is a runaway loop: profiling generates long tasks, which schedule more profiling.
34
+ *
35
+ * Only `this.longTasks` is consulted — it prunes to a trailing 10s window. `vitals`
36
+ * stays in the signature because its entries are stamped with a different clock
37
+ * (`deps.now()`), so they cannot be windowed against this one.
38
+ */
39
+ private longTaskAnomalyDue;
17
40
  /** Mark a startup milestone (call from outside). */
18
41
  mark(label: string): void;
19
42
  /** Read current lightweight vitals (for polling). */
@@ -1 +1 @@
1
- {"version":3,"file":"perfAgent.d.ts","sourceRoot":"","sources":["../../../src/inspect/agent/perfAgent.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAoK/D,qBAAa,SAAS;IAgBlB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,YAAY;IAhBtB,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAId;gBAGQ,GAAG,EAAE,MAAM,MAAM,EACjB,YAAY,EAAE,MAAM,OAAO,gBAAgB,EAAE,SAAS;IAWhE,0EAA0E;IAC1E,OAAO,IAAI,IAAI;IA2Df,oDAAoD;IACpD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOzB,qDAAqD;IACrD,MAAM,IAAI,UAAU;IASpB,0EAA0E;IAC1E,YAAY,IAAI,YAAY,GAAG,IAAI;IAWnC,kEAAkE;IAC5D,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAkErE,gEAAgE;IAChE,MAAM,IAAI,YAAY;IA2BtB,2BAA2B;IAC3B,OAAO,IAAI,IAAI;CAIhB"}
1
+ {"version":3,"file":"perfAgent.d.ts","sourceRoot":"","sources":["../../../src/inspect/agent/perfAgent.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAmO/D,qBAAa,SAAS;IAkBlB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,YAAY;IAlBtB,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAId;gBAGQ,GAAG,EAAE,MAAM,MAAM,EACjB,YAAY,EAAE,MAAM,OAAO,gBAAgB,EAAE,SAAS;IAWhE,0EAA0E;IAC1E,OAAO,IAAI,IAAI;IA2Ef;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAkC9B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,kBAAkB;IAK1B,oDAAoD;IACpD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOzB,qDAAqD;IACrD,MAAM,IAAI,UAAU;IASpB,0EAA0E;IAC1E,YAAY,IAAI,YAAY,GAAG,IAAI;IAWnC,kEAAkE;IAC5D,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmFrE,gEAAgE;IAChE,MAAM,IAAI,YAAY;IA2BtB,2BAA2B;IAC3B,OAAO,IAAI,IAAI;CAIhB"}
@@ -24,6 +24,29 @@ const LONG_TASK_WINDOW_COUNT = 5;
24
24
  const DROPPED_FRAME_THRESHOLD = 3;
25
25
  const MAX_PENDING_ANOMALIES = 10;
26
26
  const PROFILE_DURATION_MS = 1000;
27
+ // The 1s self-profile costs ~250 stack captures. Anomalies can arrive back-to-back
28
+ // (every long task fires one), so profiling every anomaly makes the agent a
29
+ // meaningful share of the very load it is measuring. Snapshots are still captured
30
+ // each time; only the call tree is rate-limited.
31
+ const PROFILE_COOLDOWN_MS = 30_000;
32
+ // Above this, a heartbeat gap is a discontinuity (suspension / sleep / throttled tick
33
+ // racing `visibilitychange`), not event-loop lag. Comfortably above the largest block
34
+ // we still want to report as a spike.
35
+ const SUSPEND_GAP_MS = 10_000;
36
+ // Delay before the one-shot `page-load` snapshot. Long enough for LCP/FCP to settle
37
+ // and the page to become interactive; well inside the "if it's slower than this it
38
+ // doesn't matter" horizon. Startup data lands without needing tab-close or app-quit.
39
+ const STARTUP_SNAPSHOT_DELAY_MS = 8_000;
40
+ /**
41
+ * A hidden page's timers are throttled by the browser — Chromium clamps them to 1s
42
+ * and, after ~5 minutes, to once per MINUTE. The heartbeat measures `now - expected`,
43
+ * so an idle backgrounded tab reports tens of seconds of "event-loop lag" and a
44
+ * saturated cpuPressure. That is a property of not being on screen, not of the page.
45
+ * Observed in production: a backgrounded tab converging on exactly ~60000ms of lag.
46
+ */
47
+ function isHidden() {
48
+ return typeof document !== 'undefined' && document.hidden === true;
49
+ }
27
50
  // ─── Helpers ─────────────────────────────────────────────────────────────────
28
51
  let raf;
29
52
  let caf;
@@ -72,10 +95,36 @@ class HeartbeatDetector {
72
95
  return 0;
73
96
  return this.lagSamples.reduce((a, b) => a + b, 0) / this.lagSamples.length;
74
97
  }
98
+ /**
99
+ * Drop the accumulated window and re-baseline. Called when the page is hidden (its
100
+ * timers are about to be throttled) and when it becomes visible again (the first
101
+ * tick after a throttled gap would otherwise register as a huge stall).
102
+ */
103
+ reset(now) {
104
+ this.lastTick = now;
105
+ this.lagSamples.length = 0;
106
+ this.delayedSamples.length = 0;
107
+ this.blipCount = 0;
108
+ }
75
109
  /** Returns true when a fresh anomaly is detected (pressure just crossed threshold). */
76
110
  tick(now) {
111
+ // A throttled tick measures the browser's scheduling policy, not the page's
112
+ // event loop. Re-baseline and record nothing.
113
+ if (isHidden()) {
114
+ this.reset(now);
115
+ return false;
116
+ }
77
117
  const expected = this.lastTick + HEARTBEAT_INTERVAL_MS;
78
118
  const lag = Math.max(0, now - expected);
119
+ // A gap this large is a discontinuity — process suspension, machine sleep, or a
120
+ // throttled tick that beat `visibilitychange` back to the queue. It is not a
121
+ // stall we could act on, and recording it poisons the trailing average for the
122
+ // next ~10s. Re-baseline instead. (A genuine multi-second block below this
123
+ // threshold is still reported as a spike.)
124
+ if (lag > SUSPEND_GAP_MS) {
125
+ this.reset(now);
126
+ return false;
127
+ }
79
128
  this.lagSamples.push(lag);
80
129
  if (this.lagSamples.length > HEARTBEAT_WINDOW_SAMPLES)
81
130
  this.lagSamples.shift();
@@ -120,7 +169,18 @@ class FrameBudgetMonitor {
120
169
  dropCount = 0;
121
170
  rafId = 0;
122
171
  onJank = null;
172
+ /** Forget the last frame time so a hidden→visible gap isn't counted as jank. */
173
+ reset() {
174
+ this.lastFrame = 0;
175
+ this.dropCount = 0;
176
+ }
123
177
  tick = (now) => {
178
+ // rAF is suspended while hidden; the first frame back carries the whole gap.
179
+ if (isHidden()) {
180
+ this.reset();
181
+ this.rafId = raf(this.tick);
182
+ return;
183
+ }
124
184
  const delta = now - this.lastFrame;
125
185
  if (this.lastFrame > 0 && delta > 32) {
126
186
  this.dropCount++;
@@ -167,6 +227,8 @@ export class PerfAgent {
167
227
  pendingAnomalies = [];
168
228
  snapshots = [];
169
229
  profiling = false;
230
+ lastProfileAt = 0;
231
+ startupCaptured = false;
170
232
  lcpMs;
171
233
  fcpMs;
172
234
  _startup;
@@ -213,9 +275,7 @@ export class PerfAgent {
213
275
  this.lcpMs = e.startTime;
214
276
  }
215
277
  }
216
- // Fire on web-vitals long-task count too
217
- const ltCount = vitals.longTasks?.length ?? 0;
218
- if (ltCount + this.longTasks.count >= LONG_TASK_WINDOW_COUNT * 2) {
278
+ if (this.longTaskAnomalyDue(vitals)) {
219
279
  void this.captureAnomaly('long-task');
220
280
  }
221
281
  });
@@ -236,8 +296,85 @@ export class PerfAgent {
236
296
  }
237
297
  }
238
298
  catch { /* unsupported */ }
299
+ // Re-baseline across visibility changes. Going hidden, the next tick may be a
300
+ // minute late; coming back, that gap must not be charged to the page.
301
+ try {
302
+ if (typeof document !== 'undefined' && typeof document.addEventListener === 'function') {
303
+ document.addEventListener('visibilitychange', () => {
304
+ this.heartbeat.reset(Date.now());
305
+ this.frameBudget.reset();
306
+ });
307
+ }
308
+ }
309
+ catch { /* no document (worker/test) */ }
239
310
  // Track startup milestones
240
311
  this._startup.milestones.push({ label: 'agent:install', deltaMs: Math.round(this.now() - this._startup.t0) });
312
+ // One-shot startup snapshot so initial-load data (startup timings + LCP/FCP)
313
+ // lands reliably a few seconds after load — not only on anomaly or unload.
314
+ try {
315
+ const t = setTimeout(() => this.captureStartupSnapshot(), STARTUP_SNAPSHOT_DELAY_MS);
316
+ if (t && typeof t.unref === 'function')
317
+ t.unref();
318
+ }
319
+ catch { /* no timers (test) */ }
320
+ }
321
+ /**
322
+ * Fire once, ~STARTUP_SNAPSHOT_DELAY_MS after load: a `page-load` snapshot carrying
323
+ * the startup milestone breakdown + LCP/FCP. Bypasses the hidden-tab gate — startup
324
+ * timing is a one-time load metric, not ongoing pressure — but LCP/FCP may be null
325
+ * if the tab never painted (preloaded in the background).
326
+ */
327
+ captureStartupSnapshot() {
328
+ if (this.startupCaptured)
329
+ return;
330
+ this.startupCaptured = true;
331
+ const heap = heapMb();
332
+ const vitals = this.vitalsReader();
333
+ const totalMs = this._startup.milestones.length > 0
334
+ ? this._startup.milestones[this._startup.milestones.length - 1].deltaMs
335
+ : 0;
336
+ const snapshot = {
337
+ trigger: 'page-load',
338
+ cpuPressure: this.heartbeat.pressure,
339
+ eventLoopLagMs: Math.round(this.heartbeat.avgLagMs),
340
+ heapUsedMb: Math.round(heap.used * 10) / 10,
341
+ heapTotalMb: Math.round(heap.total * 10) / 10,
342
+ longTaskCount: this.longTasks.count,
343
+ domNodeCount: domCount(),
344
+ ...(this.lcpMs != null ? { lcpMs: this.lcpMs } : {}),
345
+ ...(this.fcpMs != null ? { fcpMs: this.fcpMs } : {}),
346
+ ...(vitals.cls != null ? { cls: vitals.cls } : {}),
347
+ callTree: null,
348
+ startup: {
349
+ milestones: this._startup.milestones.slice(),
350
+ totalMs,
351
+ longTaskCount: this._startup.longTasks,
352
+ },
353
+ };
354
+ if (this.snapshots.length >= MAX_PENDING_ANOMALIES) {
355
+ this.snapshots.shift();
356
+ this.pendingAnomalies.shift();
357
+ }
358
+ this.pendingAnomalies.push('page-load');
359
+ this.snapshots.push(snapshot);
360
+ }
361
+ /**
362
+ * Whether the long tasks seen *recently* warrant an anomaly.
363
+ *
364
+ * The old test also added `vitals.longTasks.length` — a cumulative buffer that is
365
+ * capped at 200 but never decays. Once a page had emitted 10 long tasks in its
366
+ * lifetime (trivial for any real app) the threshold was permanently satisfied, so
367
+ * EVERY subsequent long task captured an anomaly and ran a 1s self-profile. That
368
+ * is a runaway loop: profiling generates long tasks, which schedule more profiling.
369
+ *
370
+ * Only `this.longTasks` is consulted — it prunes to a trailing 10s window. `vitals`
371
+ * stays in the signature because its entries are stamped with a different clock
372
+ * (`deps.now()`), so they cannot be windowed against this one.
373
+ */
374
+ longTaskAnomalyDue(_vitals) {
375
+ if (isHidden())
376
+ return false;
377
+ return this.longTasks.count >= LONG_TASK_WINDOW_COUNT;
241
378
  }
242
379
  /** Mark a startup milestone (call from outside). */
243
380
  mark(label) {
@@ -273,11 +410,21 @@ export class PerfAgent {
273
410
  return;
274
411
  if (this.profiling && trigger !== 'page-unload')
275
412
  return;
413
+ // A hidden page's detectors measure browser throttling, not the page. `page-unload`
414
+ // is exempt: a tab is often hidden at the moment it is torn down.
415
+ if (trigger !== 'page-unload' && isHidden())
416
+ return;
276
417
  this.profiling = true;
277
418
  const heap = heapMb();
278
419
  const vitals = this.vitalsReader();
420
+ // The profile is the expensive part (~250 stack captures over 1s). Snapshot every
421
+ // anomaly, but sample at most once per cooldown so the agent can't become the
422
+ // dominant cost on a page that is emitting anomalies continuously.
423
+ const nowMs = Date.now();
424
+ const mayProfile = trigger !== 'page-unload' && nowMs - this.lastProfileAt >= PROFILE_COOLDOWN_MS;
279
425
  let callTree = null;
280
- if (trigger !== 'page-unload') {
426
+ if (mayProfile) {
427
+ this.lastProfileAt = nowMs;
281
428
  try {
282
429
  const profile = await selfProfile(PROFILE_DURATION_MS, this.now);
283
430
  // Flatten the top 10 self-time frames
@@ -298,13 +445,20 @@ export class PerfAgent {
298
445
  walk(profile.root);
299
446
  frames.sort((a, b) => b.selfMs - a.selfMs);
300
447
  const totalSelf = frames.reduce((s, f) => s + f.selfMs, 0);
301
- callTree = frames.slice(0, 10).map((f) => ({
302
- functionName: f.fn,
303
- url: f.url,
304
- line: f.line,
305
- col: f.col,
306
- selfPercent: totalSelf > 0 ? Math.round((f.selfMs / totalSelf) * 100) : 0,
307
- }));
448
+ // No page frames sampled. This is the common case for a single synchronous
449
+ // block: the sampler runs on a timer, and timers do not run *during* the
450
+ // block, so by the time it profiles, the page is idle again. Report `null`
451
+ // rather than an empty tree — an empty array reads as "profiled, nothing hot",
452
+ // which is a different (and misleading) claim.
453
+ callTree = frames.length === 0
454
+ ? null
455
+ : frames.slice(0, 10).map((f) => ({
456
+ functionName: f.fn,
457
+ url: f.url,
458
+ line: f.line,
459
+ col: f.col,
460
+ selfPercent: totalSelf > 0 ? Math.round((f.selfMs / totalSelf) * 100) : 0,
461
+ }));
308
462
  }
309
463
  catch {
310
464
  callTree = null;
@@ -1 +1 @@
1
- {"version":3,"file":"perfAgent.js","sourceRoot":"","sources":["../../../src/inspect/agent/perfAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perfAgent.js","sourceRoot":"","sources":["../../../src/inspect/agent/perfAgent.ts"],"names":[],"mappings":"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"}
@@ -33,11 +33,25 @@ function schedule(fn) {
33
33
  else
34
34
  fn();
35
35
  }
36
+ /**
37
+ * Frames belonging to the inspect agent itself. The `profile.(js|ts)` test only ever
38
+ * matched an unbundled dev build: in the shipped IIFE every module collapses into one
39
+ * file, so the sampler's own frames survived the filter and it profiled ITSELF —
40
+ * production call trees were a single minified frame with 100% self time, useless for
41
+ * finding the real hot path. The bundle now carries a `sourceURL` footer so its frames
42
+ * are attributable.
43
+ *
44
+ * Bare `<anonymous>` is deliberately NOT filtered: page code run through `eval` /
45
+ * `executeJavaScript` reports that way and is exactly what we want to surface.
46
+ */
47
+ function isAgentFrame(url) {
48
+ return /profile\.(js|ts)/.test(url) || /ugly-inspect-agent/.test(url);
49
+ }
36
50
  function captureFrames() {
37
51
  // Frames are leaf→root; reverse to root→leaf and drop our own profiler frames.
38
52
  const frames = parseStack(new Error().stack, 1);
39
53
  return frames
40
- .filter((f) => !/profile\.(js|ts)/.test(f.url))
54
+ .filter((f) => !isAgentFrame(f.url))
41
55
  .map((f) => ({ url: f.url, line: f.line, col: f.col, functionName: f.functionName }))
42
56
  .reverse();
43
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/inspect/agent/profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/inspect/agent/profile.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
- "use strict";(()=>{var E=class{constructor(t){this.cap=t}cap;items=[];push(t){this.items.push(t),this.items.length>this.cap&&this.items.splice(0,this.items.length-this.cap)}since(t,n){let r=0,o=this.items.length;for(;r<o;){let i=r+o>>>1;n(this.items[i])<t?r=i+1:o=i}return this.items.slice(r)}all(){return this.items.slice()}clear(){this.items=[]}size(){return this.items.length}};var S=class{seq=0;byId=new Map;put(t){let n=`o${++this.seq}`;return this.byId.set(n,t),n}get(t){return this.byId.get(t)}clear(){this.byId.clear()}};function Te(e){return typeof Node<"u"&&typeof e=="object"&&e!==null&&e instanceof Node}function k(e,t){return e.length>t?`${e.slice(0,t)}\u2026`:e}function z(e){return Object.getPrototypeOf(e)?.constructor?.name}function g(e,t){switch(typeof e){case"undefined":return{type:"undefined"};case"boolean":return{type:"boolean",value:e};case"bigint":return{type:"bigint",value:`${e}n`,preview:`${e}n`};case"symbol":return{type:"symbol",value:String(e),preview:String(e)};case"string":return{type:"string",value:k(e,1e3)};case"number":return Number.isFinite(e)?{type:"number",value:e}:{type:"number",value:String(e),preview:String(e)};case"function":return{type:"function",className:"Function",preview:`\u0192 ${e.name||"(anonymous)"}()`};case"object":break;default:return{type:"object",preview:String(e)}}if(e===null)return{type:"null"};let n=e;if(Te(e))return{type:"node",className:e.nodeName??"Node",preview:Re(e),nodeId:t.nodeIdFor?.(e)};if(e instanceof Date)return{type:"date",className:"Date",preview:Pe(e)};if(e instanceof RegExp)return{type:"regexp",className:"RegExp",preview:String(e)};if(e instanceof Error)return{type:"error",className:e.name||"Error",preview:k(`${e.name}: ${e.message}`,100),objectId:t.registry.put(e)};if(Ne(e))return{type:"promise",className:"Promise",preview:"Promise",objectId:t.registry.put(e)};if(e instanceof Map)return{type:"map",className:"Map",size:e.size,objectId:t.registry.put(e),preview:`Map(${e.size})`,entries:H(e,t)};if(e instanceof Set)return{type:"set",className:"Set",size:e.size,objectId:t.registry.put(e),preview:`Set(${e.size})`,entries:X(e,t)};if(Array.isArray(e))return{type:"array",className:"Array",size:e.length,objectId:t.registry.put(e),preview:`Array(${e.length})`,entries:F(e,t)};let r=Object.keys(n);return{type:"object",className:z(n)??"Object",size:r.length,objectId:t.registry.put(n),preview:ve(n,r),entries:_(n,r,t)}}function V(e,t){if(e instanceof Map)return H(e,t,1/0).map(n=>n.value);if(e instanceof Set)return X(e,t,1/0).map(n=>n.value);if(Array.isArray(e))return F(e,t,1/0).map(n=>n.value);if(e instanceof Error)return _({name:e.name,message:e.message,stack:e.stack},["name","message","stack"],t,1/0).map(n=>n.value);if(typeof e=="object"&&e!==null){let n=Object.keys(e);return _(e,n,t,1/0).map(r=>r.value)}return[]}function F(e,t,n=5){let r=[];for(let o=0;o<e.length&&o<n;o++)r.push({key:String(o),value:g(e[o],t)});return r}function _(e,t,n,r=5){let o=[];for(let i=0;i<t.length&&i<r;i++){let s=t[i],c;try{c=e[s]}catch{c="(getter threw)"}o.push({key:s,value:g(c,n)})}return o}function H(e,t,n=5){let r=[],o=0;for(let[i,s]of e){if(o++>=n)break;r.push({key:g(i,t),value:g(s,t)})}return r}function X(e,t,n=5){let r=[],o=0;for(let i of e){if(o++>=n)break;r.push({value:g(i,t)})}return r}function ve(e,t){let n=t.slice(0,5).map(o=>{let i;try{i=e[o]}catch{i="\u2026"}return`${o}: ${Me(i)}`}),r=t.length>5?", \u2026":"";return k(`{${n.join(", ")}${r}}`,100)}function Me(e){let t=typeof e;return t==="string"?`"${k(e,20)}"`:t==="object"&&e!==null?Array.isArray(e)?`Array(${e.length})`:z(e)??"Object":String(e)}function Re(e){let t=e;if(t.nodeType===1){let n=(t.nodeName??"").toLowerCase(),r=t.id?`#${t.id}`:"",o=typeof t.className=="string"&&t.className?`.${t.className.trim().split(/\s+/).join(".")}`:"";return k(`<${n}${r}${o}>`,100)}return t.nodeName??"Node"}function Ne(e){return typeof e?.then=="function"}function Pe(e){try{return e.toISOString()}catch{return"Invalid Date"}}var q=["log","info","warn","error","debug"];function W(e){if(typeof console>"u")return()=>{};let t=0,n={};for(let s of q){let c=console[s];typeof c=="function"&&(n[s]=c,console[s]=(...d)=>{try{i(s,d)}catch{}c.apply(console,d)})}let r=s=>{i("error",[s.message],{stack:y(s.error?.stack),source:{url:s.filename||"",line:s.lineno||0,col:s.colno||0}})},o=s=>{let c=s.reason;i("error",[`Unhandled rejection: ${c?.message??String(s.reason)}`],{stack:y(c?.stack)})};typeof window<"u"&&(window.addEventListener("error",r),window.addEventListener("unhandledrejection",o));function i(s,c,d){let f=c.map(p=>g(p,{registry:e.registry,nodeIdFor:e.nodeIdFor})),a=d?.stack??y(new Error().stack,1),u={seq:++t,ts:e.now(),level:s,args:f,text:Ie(c),stack:a.length?a:void 0,source:d?.source??a[0]?{url:a[0].url,line:a[0].line,col:a[0].col}:void 0};e.buffer.push(u),e.onEntry?.(u)}return()=>{for(let s of q){let c=n[s];c&&(console[s]=c)}typeof window<"u"&&(window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",o))}}function Ie(e){return e.map(t=>{if(typeof t=="string")return t;if(t instanceof Error)return`${t.name}: ${t.message}`;try{return JSON.stringify(t)}catch{return String(t)}}).join(" ").slice(0,2e3)}function y(e,t=0){if(!e)return[];let n=[],r=e.split(`
2
- `);for(let o of r){let i=o.trim(),s=/^at\s+(.*?)\s+\((.*?):(\d+):(\d+)\)$/.exec(i)||/^at\s+(.*?):(\d+):(\d+)$/.exec(i);if(s){s.length===5?n.push({functionName:s[1],url:s[2],line:+s[3],col:+s[4]}):n.push({functionName:"(anonymous)",url:s[1],line:+s[2],col:+s[3]});continue}s=/^(.*?)@(.*?):(\d+):(\d+)$/.exec(i),s&&n.push({functionName:s[1]||"(anonymous)",url:s[2],line:+s[3],col:+s[4]})}return n.slice(t)}function J(e,t,n=Date.now){let r=t!=null&&t>0?t:40,o=typeof document<"u"&&document.documentElement?A(document.documentElement,e,r,0):Ae();return{documentUrl:typeof location<"u"?location.href:"",capturedAt:n(),root:o}}function A(e,t,n,r){let o={nodeId:t.idFor(e),nodeType:e.nodeType,nodeName:e.nodeName};if(e.nodeType===Node.TEXT_NODE||e.nodeType===Node.COMMENT_NODE){let a=(e.textContent??"").trim();return a&&(o.textContent=a.slice(0,200)),o}if(e.nodeType!==Node.ELEMENT_NODE)return o;let i=e;if(o.attributes=Le(i),o.rect=_e(i),r>=n)return o;let s=i.shadowRoot;s&&(o.shadowRoots=Array.from(s.childNodes).filter(G).map(a=>A(a,t,n,r+1)));let c=[],d=U(i,"before");d&&c.push(d);for(let a of Array.from(i.childNodes))G(a)&&c.push(A(a,t,n,r+1));let f=U(i,"after");return f&&c.push(f),c.length&&(o.children=c),o}function U(e,t){if(typeof getComputedStyle>"u")return;let n;try{n=getComputedStyle(e,`::${t}`).content}catch{return}if(!(!n||n==="none"||n==="normal"))return{nodeId:`${Ce(e)}::${t}`,nodeType:1,nodeName:`::${t}`,pseudo:t,textContent:n}}function Ce(e){return e.__inspectPseudoBase??e.tagName}function G(e){return e.nodeType===Node.TEXT_NODE?!!(e.textContent??"").trim():e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.COMMENT_NODE}function Le(e){let t={};for(let n of Array.from(e.attributes))t[n.name]=n.value;return t}function _e(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function Ae(){return{nodeId:"n0",nodeType:9,nodeName:"#document"}}function Y(e,t){let n=xe(e,t);if(!n)throw new Error(`inspect.element: node not found (${t.nodeId??t.selector??"?"})`);let r=getComputedStyle(n),o=Fe(n);return{nodeId:e.idFor(n),tag:n.tagName.toLowerCase(),attributes:Ve(n),computedStyles:De(r),matchedRules:Oe(n),boxModel:Be(n,r,o),eventListeners:$e(n),accessibility:ze(n),rect:o}}function xe(e,t){if(t.nodeId){let n=e.get(t.nodeId);return n?.nodeType===1?n:null}return t.selector&&typeof document<"u"?document.querySelector(t.selector):null}function De(e){let t={};for(let n=0;n<e.length;n++){let r=e.item(n);t[r]=e.getPropertyValue(r)}return t}function Oe(e){let t=[];if(typeof document>"u")return t;for(let n of Array.from(document.styleSheets)){let r;try{r=n.cssRules}catch{continue}let o=n.href??void 0;for(let i of Array.from(r)){if(!(i instanceof CSSStyleRule))continue;let s=!1;try{s=e.matches(i.selectorText)}catch{s=!1}s&&t.push({selector:i.selectorText,source:o?{url:o,line:0,col:0}:void 0,props:je(i.style)})}}return t}function je(e){let t={};for(let n=0;n<e.length;n++){let r=e.item(n);t[r]=e.getPropertyValue(r)}return t}function Be(e,t,n){let r=(o,i)=>({top:T(t.getPropertyValue(`${o}-top${i}`)),right:T(t.getPropertyValue(`${o}-right${i}`)),bottom:T(t.getPropertyValue(`${o}-bottom${i}`)),left:T(t.getPropertyValue(`${o}-left${i}`))});return{content:n,padding:r("padding",""),border:r("border","-width"),margin:r("margin","")}}function $e(e){let n=(typeof window<"u"?window:{}).__inspectGetEventListeners;if(!n)return[];try{let r=n(e),o=[];for(let[i,s]of Object.entries(r))for(let c of s)o.push({type:i,useCapture:c.useCapture,passive:c.passive});return o}catch{return[]}}function ze(e){let t={};for(let o of Array.from(e.attributes))o.name.startsWith("aria-")&&(t[o.name]=o.value);let n=e.getAttribute("role")??void 0,r=e.getAttribute("aria-label")??e.title??(e.textContent??"").trim().slice(0,80)??void 0;return{role:n,name:r||void 0,properties:t}}function Ve(e){let t={};for(let n of Array.from(e.attributes))t[n.name]=n.value;return t}function Fe(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function T(e){let t=parseFloat(e);return Number.isFinite(t)?t:0}async function K(e,t,n){let r=t.now();try{let o=He(e,n?.replMode?{$0:t.getPicked(),$_:t.getLast()}:{});return n?.awaitPromise&&Xe(o)&&(o=await o),t.setLast(o),{ok:!0,value:g(o,{registry:t.registry,nodeIdFor:t.nodeIdFor}),tookMs:t.now()-r}}catch(o){let i=o;return{ok:!1,exception:{text:`${i?.name??"Error"}: ${i?.message??String(o)}`,stack:y(i?.stack)},tookMs:t.now()-r}}}function He(e,t){let n=Object.keys(t);if(n.length===0)return(0,eval)(e);let r=new Function(...n,`return (${e});`);try{return r(...n.map(o=>t[o]))}catch(o){if(o instanceof SyntaxError)return new Function(...n,e)(...n.map(s=>t[s]));throw o}}function Xe(e){return typeof e?.then=="function"}var v=64*1024;function te(e){if(typeof window>"u")return()=>{};let t=0,n=()=>`r${++t}`,r=window.fetch?.bind(window);r&&(window.fetch=async(d,f)=>{let a=e.now(),u=(f?.method||(d instanceof Request?d.method:"GET")).toUpperCase(),p=d instanceof Request?d.url:String(d),m={id:n(),ts:a,method:u,url:p,resourceType:"fetch",requestHeaders:Z(f?.headers??(d instanceof Request?d.headers:void 0)),requestBody:ee(f?.body),timing:{startMs:a,durationMs:0}};try{let l=await r(d,f);return m.status=l.status,m.responseHeaders=Z(l.headers),m.timing.durationMs=e.now()-a,m.fromCache=l.fromCache,await Ue(l,m),c(m),l}catch(l){throw m.failed=!0,m.timing.durationMs=e.now()-a,m.responseBody={kind:"text",data:String(l?.message??l)},c(m),l}});let o=window.XMLHttpRequest,i=o?.prototype.open,s=o?.prototype.send;o&&i&&s&&(o.prototype.open=function(f,a,...u){return this.__inspect={method:f.toUpperCase(),url:a,start:0},i.apply(this,[f,a,...u])},o.prototype.send=function(f){let a=this.__inspect;return a&&(a.start=e.now(),this.addEventListener("loadend",()=>{let u={id:n(),ts:a.start,method:a.method,url:a.url,status:this.status,resourceType:"xhr",requestHeaders:{},responseHeaders:We(this.getAllResponseHeaders()),requestBody:ee(f),responseBody:Ge(this),timing:{startMs:a.start,durationMs:e.now()-a.start},failed:this.status===0};c(u)})),s.apply(this,[f])});function c(d){e.buffer.push(d),e.onEntry?.(d)}return()=>{r&&(window.fetch=r),o&&i&&(o.prototype.open=i),o&&s&&(o.prototype.send=s)}}function Q(e){return e.responseStatus||void 0}function ne(){if(typeof performance>"u"||!performance.getEntriesByType)return[];let e=performance.timeOrigin??0,t=[],n=performance.getEntriesByType("navigation")[0];n&&t.push({id:"nav",ts:e+n.startTime,method:"GET",url:n.name||(typeof location<"u"?location.href:""),status:Q(n),resourceType:"document",requestHeaders:{},timing:{startMs:e+n.startTime,durationMs:n.duration,ttfbMs:n.responseStart-n.startTime},sizeBytes:n.transferSize||void 0});for(let r of performance.getEntriesByType("resource"))r.initiatorType==="fetch"||r.initiatorType==="xmlhttprequest"||t.push({id:`res:${Math.round(r.startTime)}:${r.name}`,ts:e+r.startTime,method:"GET",url:r.name,status:Q(r),resourceType:qe(r.initiatorType),requestHeaders:{},timing:{startMs:e+r.startTime,durationMs:r.duration},sizeBytes:r.transferSize||r.decodedBodySize||void 0,fromCache:r.transferSize===0&&r.decodedBodySize>0});return t}function qe(e){switch(e){case"img":case"image":return"img";case"css":case"link":return"css";case"script":return"script";case"font":return"font";default:return e||"other"}}function Z(e){let t={};if(!e)return t;if(typeof Headers<"u"&&e instanceof Headers)e.forEach((n,r)=>t[r]=n);else if(Array.isArray(e))for(let[n,r]of e)t[n]=r;else Object.assign(t,e);return t}function We(e){let t={};for(let n of e.split(`\r
3
- `)){let r=n.indexOf(":");r>0&&(t[n.slice(0,r).trim().toLowerCase()]=n.slice(r+1).trim())}return t}function ee(e){if(e!=null)return typeof e=="string"?e.slice(0,v):typeof URLSearchParams<"u"&&e instanceof URLSearchParams?e.toString().slice(0,v):"(binary)"}async function Ue(e,t){let n=e.headers.get("content-type")||"";if(!/json|text|javascript|xml|html|csv/i.test(n)){t.responseBody={kind:"omitted"};return}try{let r=await e.clone().text();t.sizeBytes=r.length;let o=/json/i.test(n)?"json":"text";t.responseBody={kind:o,data:r.slice(0,v)}}catch{t.responseBody={kind:"omitted"}}}function Ge(e){try{if(e.responseType===""||e.responseType==="text"){let t=e.responseText||"",n=e.getResponseHeader("content-type")||"";return{kind:/json/i.test(n)?"json":"text",data:t.slice(0,v)}}}catch{}return{kind:"omitted"}}var M=class{seq=0;byId=new Map;idOf=new WeakMap;idFor(t){let n=this.idOf.get(t);if(n)return this.byId.set(n,t),n;let r=`n${++this.seq}`;return this.idOf.set(t,r),this.byId.set(r,t),r}get(t){return this.byId.get(t)}clear(){this.byId.clear()}};var se=4;async function R(e,t){let n=t(),r=[];await new Promise(i=>{let s=()=>{r.push(Je()),t()-n>=e?i():re(s)};re(s)});let o=t();return{startTime:n,endTime:o,durationMs:o-n,sampleCount:r.length,precise:!1,root:Ye(r)}}function re(e){typeof setTimeout<"u"?setTimeout(e,se):e()}function Je(){return y(new Error().stack,1).filter(t=>!/profile\.(js|ts)/.test(t.url)).map(t=>({url:t.url,line:t.line,col:t.col,functionName:t.functionName})).reverse()}function Ye(e){let t=0,n=oe(t++,"(root)");for(let r of e){let o=n;o.hitCount++;for(let i of r){let s=i,c=`${s.functionName??"(anonymous)"}@${s.url}:${s.line}`,d=o.childMap.get(c);d||(d=oe(t++,s.functionName??"(anonymous)",{url:s.url,line:s.line,col:s.col}),o.childMap.set(c,d),o.children.push(d)),d.hitCount++,o=d}}return ie(n,e.length),ae(n)}function oe(e,t,n){return{id:e,functionName:t,source:n,selfTimeMs:0,totalTimeMs:0,hitCount:0,children:[],childMap:new Map}}function ie(e,t){let n=0;for(let r of e.children)n+=ie(r,t);return e.totalTimeMs=e.hitCount*se,e.selfTimeMs=Math.max(0,e.totalTimeMs-n),e.totalTimeMs}function ae(e){return{id:e.id,functionName:e.functionName,source:e.source,selfTimeMs:e.selfTimeMs,totalTimeMs:e.totalTimeMs,hitCount:e.hitCount,children:e.children.map(t=>ae(t))}}var x=200,Ke=2,Qe=10,ce=50,Ze=1e4,et=5,tt=3,ue=10,nt=1e3,N,D;function rt(){typeof requestAnimationFrame<"u"?(N=requestAnimationFrame.bind(window),D=cancelAnimationFrame.bind(window)):(N=e=>setTimeout(e,16),D=e=>clearTimeout(e))}function le(){let e=performance;return e.memory?{used:e.memory.usedJSHeapSize/(1024*1024),total:e.memory.jsHeapSizeLimit/(1024*1024)}:{used:0,total:0}}function de(){return typeof document>"u"?0:document.getElementsByTagName("*").length}var O=class{lastTick=0;blipCount=0;lagSamples=[];delayedSamples=[];timer=null;get pressure(){return this.delayedSamples.length===0?0:this.delayedSamples.reduce((n,r)=>n+(r?1:0),0)/this.delayedSamples.length}get avgLagMs(){return this.lagSamples.length===0?0:this.lagSamples.reduce((t,n)=>t+n,0)/this.lagSamples.length}tick(t){let n=this.lastTick+x,r=Math.max(0,t-n);this.lagSamples.push(r),this.lagSamples.length>ce&&this.lagSamples.shift();let o=this.pressure>.5,i=r>x*Ke;this.delayedSamples.push(i),this.delayedSamples.length>ce&&this.delayedSamples.shift();let s=r>1e3&&!o;i?this.blipCount++:this.blipCount=Math.max(0,this.blipCount-2);let c=s||!o&&this.blipCount>=Qe;return this.lastTick=t,c}start(){this.lastTick=Date.now();let t=()=>{let n=Date.now();this.tick(n),this.timer=setTimeout(t,x)};t()}stop(){this.timer!==null&&clearTimeout(this.timer),this.timer=null}},j=class{lastFrame=0;dropCount=0;rafId=0;onJank=null;tick=t=>{let n=t-this.lastFrame;this.lastFrame>0&&n>32?(this.dropCount++,this.dropCount>=tt&&(this.dropCount=0,this.onJank?.())):this.dropCount=0,this.lastFrame=t,this.rafId=N(this.tick)};start(){this.lastFrame=performance.now?.()??Date.now(),this.rafId=N(this.tick)}stop(){D(this.rafId)}},B=class{tasks=[];get count(){return this.prune(),this.tasks.length}prune(){let t=Date.now()-Ze;this.tasks=this.tasks.filter(n=>n.ts>t)}add(t,n){this.tasks.push({ts:t,dur:n}),this.prune()}},P=class{constructor(t,n){this.now=t;this.vitalsReader=n;rt();let r=typeof performance<"u"?performance.timeOrigin??Date.now():Date.now();this._startup={milestones:[],t0:r,longTasks:0}}now;vitalsReader;heartbeat=new O;frameBudget=new j;longTasks=new B;pendingAnomalies=[];snapshots=[];profiling=!1;lcpMs;fcpMs;_startup;install(){this.heartbeat.start();let t=this,n=this.heartbeat.tick.bind(this.heartbeat);this.heartbeat.tick=r=>{let o=n(r);return o&&t.captureAnomaly("cpu-pressure"),o},this.frameBudget.onJank=()=>{this.captureAnomaly("dropped-frames")},this.frameBudget.start();try{typeof PerformanceObserver<"u"&&new PerformanceObserver(o=>{let i=this.vitalsReader();for(let c of o.getEntries())this.longTasks.add(Date.now(),c.duration);for(let c of o.getEntries())c.entryType==="largest-contentful-paint"&&(this.lcpMs=c.startTime);(i.longTasks?.length??0)+this.longTasks.count>=et*2&&this.captureAnomaly("long-task")}).observe({type:"longtask",buffered:!0})}catch{}try{typeof PerformanceObserver<"u"&&new PerformanceObserver(o=>{for(let i of o.getEntries())i.name==="first-contentful-paint"&&(this.fcpMs=i.startTime)}).observe({type:"paint",buffered:!0})}catch{}this._startup.milestones.push({label:"agent:install",deltaMs:Math.round(this.now()-this._startup.t0)})}mark(t){this._startup.milestones.push({label:t,deltaMs:Math.round(this.now()-this._startup.t0)})}vitals(){return{cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),longTaskCount:this.longTasks.count,pendingAnomalies:this.pendingAnomalies.slice()}}takeSnapshot(){let t=this.snapshots.shift();return t?(this.pendingAnomalies.shift(),t):null}async captureAnomaly(t){if(this.pendingAnomalies.length>=ue||this.profiling&&t!=="page-unload")return;this.profiling=!0;let n=le(),r=this.vitalsReader(),o=null;if(t!=="page-unload")try{let f=function(u){u.source&&d.push({fn:u.functionName,url:u.source.url,line:u.source.line,col:u.source.col,selfMs:u.selfTimeMs});for(let p of u.children)f(p)};var s=f;let c=await R(nt,this.now),d=[];f(c.root),d.sort((u,p)=>p.selfMs-u.selfMs);let a=d.reduce((u,p)=>u+p.selfMs,0);o=d.slice(0,10).map(u=>({functionName:u.fn,url:u.url,line:u.line,col:u.col,selfPercent:a>0?Math.round(u.selfMs/a*100):0}))}catch{o=null}let i={trigger:t,cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),heapUsedMb:Math.round(n.used*10)/10,heapTotalMb:Math.round(n.total*10)/10,longTaskCount:this.longTasks.count,domNodeCount:de(),...this.lcpMs!=null?{lcpMs:this.lcpMs}:{},...this.fcpMs!=null?{fcpMs:this.fcpMs}:{},...r.cls!=null?{cls:r.cls}:{},callTree:o};this.snapshots.length>=ue&&(this.snapshots.shift(),this.pendingAnomalies.shift()),this.pendingAnomalies.push(t),this.snapshots.push(i),this.profiling=!1}unload(){let t=le(),n=this.vitalsReader(),r=this._startup.milestones.length>0?this._startup.milestones[this._startup.milestones.length-1].deltaMs:0;return{trigger:"page-unload",cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),heapUsedMb:Math.round(t.used*10)/10,heapTotalMb:Math.round(t.total*10)/10,longTaskCount:this.longTasks.count,domNodeCount:de(),...this.lcpMs!=null?{lcpMs:this.lcpMs}:{},...this.fcpMs!=null?{fcpMs:this.fcpMs}:{},...n.cls!=null?{cls:n.cls}:{},callTree:null,startup:{milestones:this._startup.milestones.slice(),totalMs:r,longTaskCount:this._startup.longTasks}}}destroy(){this.heartbeat.stop(),this.frameBudget.stop()}};function I(e){let t=e.getAttribute?.("data-id");if(t)return`[data-id=${t}]`;let n=e.getAttribute?.("role"),r=e.tagName.toLowerCase();return e.id?`${r}#${e.id}`:n?`${r}[role=${n}]`:r}var fe="__ugly_inspect_overlay__";function pe(e){if(typeof document>"u")return{setEnabled:()=>{},highlight:()=>{},destroy:()=>{}};let t=!1,n=null;function r(){if(n)return n;let a=document.createElement("div");return a.id=fe,Object.assign(a.style,{position:"fixed",pointerEvents:"none",zIndex:"2147483647",background:"rgba(64,128,255,0.28)",border:"1px solid rgba(64,128,255,0.9)",boxSizing:"border-box",top:"0",left:"0",display:"none"}),document.documentElement.appendChild(a),n=a,a}function o(a){let u=r();if(!a){u.style.display="none";return}Object.assign(u.style,{display:"block",transform:`translate(${a.x}px, ${a.y}px)`,width:`${a.w}px`,height:`${a.h}px`})}let i=a=>{let u=c(a.clientX,a.clientY);u&&o($(u))},s=a=>{let u=c(a.clientX,a.clientY);u&&(a.preventDefault(),a.stopPropagation(),e.setPickedNode(u),e.onPicked({nodeId:e.reg.idFor(u),selector:I(u),rect:$(u)}),d(!1))};function c(a,u){n&&(n.style.display="none");let p=document.elementFromPoint(a,u);return p&&p.id!==fe?p:null}function d(a){a!==t&&(t=a,a?(window.addEventListener("pointermove",i,!0),window.addEventListener("pointerdown",s,!0)):(window.removeEventListener("pointermove",i,!0),window.removeEventListener("pointerdown",s,!0),o(null)))}function f(a){if(!a){o(null);return}let u=e.reg.get(a);u?.nodeType===1&&o($(u))}return{setEnabled:d,highlight:f,destroy:()=>{d(!1),n?.remove(),n=null}}}function $(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function ge(e,t,n){if(e==="cookie"){document.cookie=`${encodeURIComponent(t)}=${encodeURIComponent(n)}; path=/`;return}C(()=>e==="session"?sessionStorage:localStorage)?.setItem(t,n)}function he(e,t){if(e==="cookie"){document.cookie=`${encodeURIComponent(t)}=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT`;return}C(()=>e==="session"?sessionStorage:localStorage)?.removeItem(t)}async function ye(){return{localStorage:me(C(()=>localStorage)),sessionStorage:me(C(()=>sessionStorage)),cookies:ot(),indexedDB:await st()}}function C(e){try{return e()}catch{return null}}function me(e){let t={};if(!e)return t;for(let n=0;n<e.length;n++){let r=e.key(n);r!=null&&(t[r]=e.getItem(r)??"")}return t}function ot(){if(typeof document>"u"||!document.cookie)return[];let e=typeof location<"u"?location.hostname:"";return document.cookie.split("; ").filter(Boolean).map(t=>{let n=t.indexOf("="),r=n>=0?t.slice(0,n):t,o=n>=0?t.slice(n+1):"";return{name:r,value:o,domain:e,path:"/"}})}async function st(){if(typeof indexedDB>"u"||typeof indexedDB.databases!="function")return[];try{let e=await indexedDB.databases(),t=[];for(let n of e)n.name&&t.push({name:n.name,stores:await it(n.name)});return t}catch{return[]}}function it(e){return new Promise(t=>{try{let n=indexedDB.open(e);n.onsuccess=()=>{let r=n.result,o=Array.from(r.objectStoreNames);r.close(),t(o)},n.onerror=()=>t([])}catch{t([])}})}var at=40;function we(e){let t={longTasks:[]},n=[];if(typeof PerformanceObserver>"u")return{read:()=>({...t,navigation:be()}),stop:()=>{}};r("largest-contentful-paint",o=>{let i=o[o.length-1];if(!i)return;let s=i.element;t.lcp={valueMs:i.startTime,element:s?{nodeId:e.nodeIdFor(s),selector:I(s),rect:ut(s)}:void 0}}),r("paint",o=>{for(let i of o)i.name==="first-contentful-paint"&&(t.fcp=i.startTime)}),r("layout-shift",o=>{let i=t.cls??0;for(let s of o)s.hadRecentInput||(i+=s.value);t.cls=i}),r("event",o=>{let i=t.inp??0;for(let s of o){let c=s.duration;c>i&&(i=c)}t.inp=i},{durationThreshold:40}),r("longtask",o=>{for(let i of o)t.longTasks.push({ts:e.now(),durationMs:i.duration});t.longTasks.length>200&&t.longTasks.splice(0,t.longTasks.length-200)});function r(o,i,s){try{let c=new PerformanceObserver(d=>i(d.getEntries()));c.observe({type:o,buffered:!0,...s??{}}),n.push(c)}catch{}}return{read:()=>{let o=be(),{resources:i,resourceSummary:s}=ct(o?.domInteractiveMs??t.fcp);return{...t,longTasks:t.longTasks.slice(),navigation:o,ttfb:t.ttfb??o?.ttfbMs,resources:i,resourceSummary:s}},stop:()=>n.forEach(o=>o.disconnect())}}function ct(e){if(typeof performance>"u"||!performance.getEntriesByType)return{};let t=performance.getEntriesByType("resource");if(!t.length)return{};let n=0,r=0;return{resources:t.map(s=>{n+=s.transferSize||0,r+=s.duration;let c=s.requestStart>0?Math.max(0,s.requestStart-s.startTime):void 0,d=e!=null&&s.responseEnd<=e&&(s.initiatorType==="link"||s.initiatorType==="css"||s.initiatorType==="script");return{name:s.name,initiatorType:s.initiatorType||"other",startMs:s.startTime,durationMs:s.duration,blockingMs:c,transferSizeBytes:s.transferSize||void 0,decodedSizeBytes:s.decodedBodySize||void 0,fromCache:s.transferSize===0&&s.decodedBodySize>0,renderBlocking:d}}).sort((s,c)=>c.durationMs-s.durationMs).slice(0,at),resourceSummary:{count:t.length,transferBytes:n,durationMs:r}}}function be(){if(typeof performance>"u"||!performance.getEntriesByType)return;let e=performance.getEntriesByType("navigation")[0];if(e)return{ttfbMs:e.responseStart,domContentLoadedMs:e.domContentLoadedEventEnd,loadEventMs:e.loadEventEnd,domInteractiveMs:e.domInteractive,transferSizeBytes:e.transferSize}}function ut(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}var Ee=1e3;function b(){return typeof performance<"u"&&performance.now?performance.timeOrigin+performance.now():Date.now()}function lt(e={}){let t=new S,n=new M,r=l=>n.idFor(l),o=new E(Ee),i=new E(Ee),s=null,c,d=W({buffer:o,registry:t,nodeIdFor:r,onEntry:l=>e.onConsole?.(l),now:b}),f=te({buffer:i,onEntry:l=>e.onNetwork?.(l),now:b}),a=we({nodeIdFor:r,now:b}),u=new P(b,()=>a.read());u.install();let p=pe({reg:n,onPicked:l=>e.onPicked?.(l),setPickedNode:l=>s=l});return{meta(){return{url:typeof location<"u"?location.href:"",title:typeof document<"u"?document.title:"",isUglyApp:typeof window<"u"&&"__uglyInspect"in window,viewport:{w:typeof window<"u"?window.innerWidth:0,h:typeof window<"u"?window.innerHeight:0,dpr:typeof window<"u"&&window.devicePixelRatio||1}}},consoleBuffer:l=>l==null?o.all():o.all().filter(h=>h.seq>l),networkBuffer:l=>{let w=[...i.all(),...ne()].sort((L,Se)=>L.ts-Se.ts);return l==null?w:w.filter(L=>L.ts>l)},evaluate:(l,h)=>K(l,{registry:t,nodeIdFor:r,now:b,getPicked:()=>s,getLast:()=>c,setLast:w=>c=w},h),expand:l=>({entries:V(t.get(l),{registry:t,nodeIdFor:r})}),domCapture:l=>J(n,l,b),element:l=>Y(n,l),highlight:l=>p.highlight(l),setPicker:l=>p.setEnabled(l),vitals:()=>a.read(),profile:l=>R(l,b),perfVitals:()=>u.vitals(),perfSnapshot:()=>u.takeSnapshot(),perfUnload:()=>u.unload(),storage:()=>ye(),storageSet:(l,h,w)=>ge(l,h,w),storageRemove:(l,h)=>he(l,h),reload:l=>{typeof location<"u"&&location.reload()},reset:()=>{t.clear(),n.clear(),o.clear(),i.clear(),s=null,c=void 0},stop:()=>{d(),f(),a.stop(),u.destroy(),p.destroy()}}}function ke(e){if(typeof window<"u"&&window.__uglyInspectAgent)return window.__uglyInspectAgent;let t=lt(e);return typeof window<"u"&&(window.__uglyInspectAgent=t),t}ke();})();
1
+ "use strict";(()=>{var w=class{constructor(t){this.cap=t}cap;items=[];push(t){this.items.push(t),this.items.length>this.cap&&this.items.splice(0,this.items.length-this.cap)}since(t,n){let r=0,o=this.items.length;for(;r<o;){let i=r+o>>>1;n(this.items[i])<t?r=i+1:o=i}return this.items.slice(r)}all(){return this.items.slice()}clear(){this.items=[]}size(){return this.items.length}};var v=class{seq=0;byId=new Map;put(t){let n=`o${++this.seq}`;return this.byId.set(n,t),n}get(t){return this.byId.get(t)}clear(){this.byId.clear()}};function Me(e){return typeof Node<"u"&&typeof e=="object"&&e!==null&&e instanceof Node}function k(e,t){return e.length>t?`${e.slice(0,t)}\u2026`:e}function X(e){return Object.getPrototypeOf(e)?.constructor?.name}function g(e,t){switch(typeof e){case"undefined":return{type:"undefined"};case"boolean":return{type:"boolean",value:e};case"bigint":return{type:"bigint",value:`${e}n`,preview:`${e}n`};case"symbol":return{type:"symbol",value:String(e),preview:String(e)};case"string":return{type:"string",value:k(e,1e3)};case"number":return Number.isFinite(e)?{type:"number",value:e}:{type:"number",value:String(e),preview:String(e)};case"function":return{type:"function",className:"Function",preview:`\u0192 ${e.name||"(anonymous)"}()`};case"object":break;default:return{type:"object",preview:String(e)}}if(e===null)return{type:"null"};let n=e;if(Me(e))return{type:"node",className:e.nodeName??"Node",preview:Ne(e),nodeId:t.nodeIdFor?.(e)};if(e instanceof Date)return{type:"date",className:"Date",preview:Ie(e)};if(e instanceof RegExp)return{type:"regexp",className:"RegExp",preview:String(e)};if(e instanceof Error)return{type:"error",className:e.name||"Error",preview:k(`${e.name}: ${e.message}`,100),objectId:t.registry.put(e)};if(Pe(e))return{type:"promise",className:"Promise",preview:"Promise",objectId:t.registry.put(e)};if(e instanceof Map)return{type:"map",className:"Map",size:e.size,objectId:t.registry.put(e),preview:`Map(${e.size})`,entries:U(e,t)};if(e instanceof Set)return{type:"set",className:"Set",size:e.size,objectId:t.registry.put(e),preview:`Set(${e.size})`,entries:G(e,t)};if(Array.isArray(e))return{type:"array",className:"Array",size:e.length,objectId:t.registry.put(e),preview:`Array(${e.length})`,entries:q(e,t)};let r=Object.keys(n);return{type:"object",className:X(n)??"Object",size:r.length,objectId:t.registry.put(n),preview:Te(n,r),entries:L(n,r,t)}}function W(e,t){if(e instanceof Map)return U(e,t,1/0).map(n=>n.value);if(e instanceof Set)return G(e,t,1/0).map(n=>n.value);if(Array.isArray(e))return q(e,t,1/0).map(n=>n.value);if(e instanceof Error)return L({name:e.name,message:e.message,stack:e.stack},["name","message","stack"],t,1/0).map(n=>n.value);if(typeof e=="object"&&e!==null){let n=Object.keys(e);return L(e,n,t,1/0).map(r=>r.value)}return[]}function q(e,t,n=5){let r=[];for(let o=0;o<e.length&&o<n;o++)r.push({key:String(o),value:g(e[o],t)});return r}function L(e,t,n,r=5){let o=[];for(let i=0;i<t.length&&i<r;i++){let s=t[i],c;try{c=e[s]}catch{c="(getter threw)"}o.push({key:s,value:g(c,n)})}return o}function U(e,t,n=5){let r=[],o=0;for(let[i,s]of e){if(o++>=n)break;r.push({key:g(i,t),value:g(s,t)})}return r}function G(e,t,n=5){let r=[],o=0;for(let i of e){if(o++>=n)break;r.push({value:g(i,t)})}return r}function Te(e,t){let n=t.slice(0,5).map(o=>{let i;try{i=e[o]}catch{i="\u2026"}return`${o}: ${Re(i)}`}),r=t.length>5?", \u2026":"";return k(`{${n.join(", ")}${r}}`,100)}function Re(e){let t=typeof e;return t==="string"?`"${k(e,20)}"`:t==="object"&&e!==null?Array.isArray(e)?`Array(${e.length})`:X(e)??"Object":String(e)}function Ne(e){let t=e;if(t.nodeType===1){let n=(t.nodeName??"").toLowerCase(),r=t.id?`#${t.id}`:"",o=typeof t.className=="string"&&t.className?`.${t.className.trim().split(/\s+/).join(".")}`:"";return k(`<${n}${r}${o}>`,100)}return t.nodeName??"Node"}function Pe(e){return typeof e?.then=="function"}function Ie(e){try{return e.toISOString()}catch{return"Invalid Date"}}var J=["log","info","warn","error","debug"];function Y(e){if(typeof console>"u")return()=>{};let t=0,n={};for(let s of J){let c=console[s];typeof c=="function"&&(n[s]=c,console[s]=(...l)=>{try{i(s,l)}catch{}c.apply(console,l)})}let r=s=>{i("error",[s.message],{stack:y(s.error?.stack),source:{url:s.filename||"",line:s.lineno||0,col:s.colno||0}})},o=s=>{let c=s.reason;i("error",[`Unhandled rejection: ${c?.message??String(s.reason)}`],{stack:y(c?.stack)})};typeof window<"u"&&(window.addEventListener("error",r),window.addEventListener("unhandledrejection",o));function i(s,c,l){let p=c.map(m=>g(m,{registry:e.registry,nodeIdFor:e.nodeIdFor})),a=l?.stack??y(new Error().stack,1),d={seq:++t,ts:e.now(),level:s,args:p,text:_e(c),stack:a.length?a:void 0,source:l?.source??a[0]?{url:a[0].url,line:a[0].line,col:a[0].col}:void 0};e.buffer.push(d),e.onEntry?.(d)}return()=>{for(let s of J){let c=n[s];c&&(console[s]=c)}typeof window<"u"&&(window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",o))}}function _e(e){return e.map(t=>{if(typeof t=="string")return t;if(t instanceof Error)return`${t.name}: ${t.message}`;try{return JSON.stringify(t)}catch{return String(t)}}).join(" ").slice(0,2e3)}function y(e,t=0){if(!e)return[];let n=[],r=e.split(`
2
+ `);for(let o of r){let i=o.trim(),s=/^at\s+(.*?)\s+\((.*?):(\d+):(\d+)\)$/.exec(i)||/^at\s+(.*?):(\d+):(\d+)$/.exec(i);if(s){s.length===5?n.push({functionName:s[1],url:s[2],line:+s[3],col:+s[4]}):n.push({functionName:"(anonymous)",url:s[1],line:+s[2],col:+s[3]});continue}s=/^(.*?)@(.*?):(\d+):(\d+)$/.exec(i),s&&n.push({functionName:s[1]||"(anonymous)",url:s[2],line:+s[3],col:+s[4]})}return n.slice(t)}function Z(e,t,n=Date.now){let r=t!=null&&t>0?t:40,o=typeof document<"u"&&document.documentElement?x(document.documentElement,e,r,0):xe();return{documentUrl:typeof location<"u"?location.href:"",capturedAt:n(),root:o}}function x(e,t,n,r){let o={nodeId:t.idFor(e),nodeType:e.nodeType,nodeName:e.nodeName};if(e.nodeType===Node.TEXT_NODE||e.nodeType===Node.COMMENT_NODE){let a=(e.textContent??"").trim();return a&&(o.textContent=a.slice(0,200)),o}if(e.nodeType!==Node.ELEMENT_NODE)return o;let i=e;if(o.attributes=Ce(i),o.rect=Le(i),r>=n)return o;let s=i.shadowRoot;s&&(o.shadowRoots=Array.from(s.childNodes).filter(Q).map(a=>x(a,t,n,r+1)));let c=[],l=K(i,"before");l&&c.push(l);for(let a of Array.from(i.childNodes))Q(a)&&c.push(x(a,t,n,r+1));let p=K(i,"after");return p&&c.push(p),c.length&&(o.children=c),o}function K(e,t){if(typeof getComputedStyle>"u")return;let n;try{n=getComputedStyle(e,`::${t}`).content}catch{return}if(!(!n||n==="none"||n==="normal"))return{nodeId:`${Ae(e)}::${t}`,nodeType:1,nodeName:`::${t}`,pseudo:t,textContent:n}}function Ae(e){return e.__inspectPseudoBase??e.tagName}function Q(e){return e.nodeType===Node.TEXT_NODE?!!(e.textContent??"").trim():e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.COMMENT_NODE}function Ce(e){let t={};for(let n of Array.from(e.attributes))t[n.name]=n.value;return t}function Le(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function xe(){return{nodeId:"n0",nodeType:9,nodeName:"#document"}}function ee(e,t){let n=De(e,t);if(!n)throw new Error(`inspect.element: node not found (${t.nodeId??t.selector??"?"})`);let r=getComputedStyle(n),o=He(n);return{nodeId:e.idFor(n),tag:n.tagName.toLowerCase(),attributes:Ve(n),computedStyles:Oe(r),matchedRules:je(n),boxModel:$e(n,r,o),eventListeners:Fe(n),accessibility:ze(n),rect:o}}function De(e,t){if(t.nodeId){let n=e.get(t.nodeId);return n?.nodeType===1?n:null}return t.selector&&typeof document<"u"?document.querySelector(t.selector):null}function Oe(e){let t={};for(let n=0;n<e.length;n++){let r=e.item(n);t[r]=e.getPropertyValue(r)}return t}function je(e){let t=[];if(typeof document>"u")return t;for(let n of Array.from(document.styleSheets)){let r;try{r=n.cssRules}catch{continue}let o=n.href??void 0;for(let i of Array.from(r)){if(!(i instanceof CSSStyleRule))continue;let s=!1;try{s=e.matches(i.selectorText)}catch{s=!1}s&&t.push({selector:i.selectorText,source:o?{url:o,line:0,col:0}:void 0,props:Be(i.style)})}}return t}function Be(e){let t={};for(let n=0;n<e.length;n++){let r=e.item(n);t[r]=e.getPropertyValue(r)}return t}function $e(e,t,n){let r=(o,i)=>({top:M(t.getPropertyValue(`${o}-top${i}`)),right:M(t.getPropertyValue(`${o}-right${i}`)),bottom:M(t.getPropertyValue(`${o}-bottom${i}`)),left:M(t.getPropertyValue(`${o}-left${i}`))});return{content:n,padding:r("padding",""),border:r("border","-width"),margin:r("margin","")}}function Fe(e){let n=(typeof window<"u"?window:{}).__inspectGetEventListeners;if(!n)return[];try{let r=n(e),o=[];for(let[i,s]of Object.entries(r))for(let c of s)o.push({type:i,useCapture:c.useCapture,passive:c.passive});return o}catch{return[]}}function ze(e){let t={};for(let o of Array.from(e.attributes))o.name.startsWith("aria-")&&(t[o.name]=o.value);let n=e.getAttribute("role")??void 0,r=e.getAttribute("aria-label")??e.title??(e.textContent??"").trim().slice(0,80)??void 0;return{role:n,name:r||void 0,properties:t}}function Ve(e){let t={};for(let n of Array.from(e.attributes))t[n.name]=n.value;return t}function He(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function M(e){let t=parseFloat(e);return Number.isFinite(t)?t:0}async function te(e,t,n){let r=t.now();try{let o=Xe(e,n?.replMode?{$0:t.getPicked(),$_:t.getLast()}:{});return n?.awaitPromise&&We(o)&&(o=await o),t.setLast(o),{ok:!0,value:g(o,{registry:t.registry,nodeIdFor:t.nodeIdFor}),tookMs:t.now()-r}}catch(o){let i=o;return{ok:!1,exception:{text:`${i?.name??"Error"}: ${i?.message??String(o)}`,stack:y(i?.stack)},tookMs:t.now()-r}}}function Xe(e,t){let n=Object.keys(t);if(n.length===0)return(0,eval)(e);let r=new Function(...n,`return (${e});`);try{return r(...n.map(o=>t[o]))}catch(o){if(o instanceof SyntaxError)return new Function(...n,e)(...n.map(s=>t[s]));throw o}}function We(e){return typeof e?.then=="function"}var T=64*1024;function se(e){if(typeof window>"u")return()=>{};let t=0,n=()=>`r${++t}`,r=window.fetch?.bind(window);r&&(window.fetch=async(l,p)=>{let a=e.now(),d=(p?.method||(l instanceof Request?l.method:"GET")).toUpperCase(),m=l instanceof Request?l.url:String(l),f={id:n(),ts:a,method:d,url:m,resourceType:"fetch",requestHeaders:re(p?.headers??(l instanceof Request?l.headers:void 0)),requestBody:oe(p?.body),timing:{startMs:a,durationMs:0}};try{let u=await r(l,p);return f.status=u.status,f.responseHeaders=re(u.headers),f.timing.durationMs=e.now()-a,f.fromCache=u.fromCache,await Ge(u,f),c(f),u}catch(u){throw f.failed=!0,f.timing.durationMs=e.now()-a,f.responseBody={kind:"text",data:String(u?.message??u)},c(f),u}});let o=window.XMLHttpRequest,i=o?.prototype.open,s=o?.prototype.send;o&&i&&s&&(o.prototype.open=function(p,a,...d){return this.__inspect={method:p.toUpperCase(),url:a,start:0},i.apply(this,[p,a,...d])},o.prototype.send=function(p){let a=this.__inspect;return a&&(a.start=e.now(),this.addEventListener("loadend",()=>{let d={id:n(),ts:a.start,method:a.method,url:a.url,status:this.status,resourceType:"xhr",requestHeaders:{},responseHeaders:Ue(this.getAllResponseHeaders()),requestBody:oe(p),responseBody:Je(this),timing:{startMs:a.start,durationMs:e.now()-a.start},failed:this.status===0};c(d)})),s.apply(this,[p])});function c(l){e.buffer.push(l),e.onEntry?.(l)}return()=>{r&&(window.fetch=r),o&&i&&(o.prototype.open=i),o&&s&&(o.prototype.send=s)}}function ne(e){return e.responseStatus||void 0}function ie(){if(typeof performance>"u"||!performance.getEntriesByType)return[];let e=performance.timeOrigin??0,t=[],n=performance.getEntriesByType("navigation")[0];n&&t.push({id:"nav",ts:e+n.startTime,method:"GET",url:n.name||(typeof location<"u"?location.href:""),status:ne(n),resourceType:"document",requestHeaders:{},timing:{startMs:e+n.startTime,durationMs:n.duration,ttfbMs:n.responseStart-n.startTime},sizeBytes:n.transferSize||void 0});for(let r of performance.getEntriesByType("resource"))r.initiatorType==="fetch"||r.initiatorType==="xmlhttprequest"||t.push({id:`res:${Math.round(r.startTime)}:${r.name}`,ts:e+r.startTime,method:"GET",url:r.name,status:ne(r),resourceType:qe(r.initiatorType),requestHeaders:{},timing:{startMs:e+r.startTime,durationMs:r.duration},sizeBytes:r.transferSize||r.decodedBodySize||void 0,fromCache:r.transferSize===0&&r.decodedBodySize>0});return t}function qe(e){switch(e){case"img":case"image":return"img";case"css":case"link":return"css";case"script":return"script";case"font":return"font";default:return e||"other"}}function re(e){let t={};if(!e)return t;if(typeof Headers<"u"&&e instanceof Headers)e.forEach((n,r)=>t[r]=n);else if(Array.isArray(e))for(let[n,r]of e)t[n]=r;else Object.assign(t,e);return t}function Ue(e){let t={};for(let n of e.split(`\r
3
+ `)){let r=n.indexOf(":");r>0&&(t[n.slice(0,r).trim().toLowerCase()]=n.slice(r+1).trim())}return t}function oe(e){if(e!=null)return typeof e=="string"?e.slice(0,T):typeof URLSearchParams<"u"&&e instanceof URLSearchParams?e.toString().slice(0,T):"(binary)"}async function Ge(e,t){let n=e.headers.get("content-type")||"";if(!/json|text|javascript|xml|html|csv/i.test(n)){t.responseBody={kind:"omitted"};return}try{let r=await e.clone().text();t.sizeBytes=r.length;let o=/json/i.test(n)?"json":"text";t.responseBody={kind:o,data:r.slice(0,T)}}catch{t.responseBody={kind:"omitted"}}}function Je(e){try{if(e.responseType===""||e.responseType==="text"){let t=e.responseText||"",n=e.getResponseHeader("content-type")||"";return{kind:/json/i.test(n)?"json":"text",data:t.slice(0,T)}}}catch{}return{kind:"omitted"}}var R=class{seq=0;byId=new Map;idOf=new WeakMap;idFor(t){let n=this.idOf.get(t);if(n)return this.byId.set(n,t),n;let r=`n${++this.seq}`;return this.idOf.set(t,r),this.byId.set(r,t),r}get(t){return this.byId.get(t)}clear(){this.byId.clear()}};var ue=4;async function N(e,t){let n=t(),r=[];await new Promise(i=>{let s=()=>{r.push(Ke()),t()-n>=e?i():ae(s)};ae(s)});let o=t();return{startTime:n,endTime:o,durationMs:o-n,sampleCount:r.length,precise:!1,root:Qe(r)}}function ae(e){typeof setTimeout<"u"?setTimeout(e,ue):e()}function Ye(e){return/profile\.(js|ts)/.test(e)||/ugly-inspect-agent/.test(e)}function Ke(){return y(new Error().stack,1).filter(t=>!Ye(t.url)).map(t=>({url:t.url,line:t.line,col:t.col,functionName:t.functionName})).reverse()}function Qe(e){let t=0,n=ce(t++,"(root)");for(let r of e){let o=n;o.hitCount++;for(let i of r){let s=i,c=`${s.functionName??"(anonymous)"}@${s.url}:${s.line}`,l=o.childMap.get(c);l||(l=ce(t++,s.functionName??"(anonymous)",{url:s.url,line:s.line,col:s.col}),o.childMap.set(c,l),o.children.push(l)),l.hitCount++,o=l}}return le(n,e.length),de(n)}function ce(e,t,n){return{id:e,functionName:t,source:n,selfTimeMs:0,totalTimeMs:0,hitCount:0,children:[],childMap:new Map}}function le(e,t){let n=0;for(let r of e.children)n+=le(r,t);return e.totalTimeMs=e.hitCount*ue,e.selfTimeMs=Math.max(0,e.totalTimeMs-n),e.totalTimeMs}function de(e){return{id:e.id,functionName:e.functionName,source:e.source,selfTimeMs:e.selfTimeMs,totalTimeMs:e.totalTimeMs,hitCount:e.hitCount,children:e.children.map(t=>de(t))}}var D=200,Ze=2,et=10,fe=50,tt=1e4,nt=5,rt=3,O=10,ot=1e3,st=3e4,it=1e4,at=8e3;function P(){return typeof document<"u"&&document.hidden===!0}var S,$;function ct(){typeof requestAnimationFrame<"u"?(S=requestAnimationFrame.bind(window),$=cancelAnimationFrame.bind(window)):(S=e=>setTimeout(e,16),$=e=>clearTimeout(e))}function j(){let e=performance;return e.memory?{used:e.memory.usedJSHeapSize/(1024*1024),total:e.memory.jsHeapSizeLimit/(1024*1024)}:{used:0,total:0}}function B(){return typeof document>"u"?0:document.getElementsByTagName("*").length}var F=class{lastTick=0;blipCount=0;lagSamples=[];delayedSamples=[];timer=null;get pressure(){return this.delayedSamples.length===0?0:this.delayedSamples.reduce((n,r)=>n+(r?1:0),0)/this.delayedSamples.length}get avgLagMs(){return this.lagSamples.length===0?0:this.lagSamples.reduce((t,n)=>t+n,0)/this.lagSamples.length}reset(t){this.lastTick=t,this.lagSamples.length=0,this.delayedSamples.length=0,this.blipCount=0}tick(t){if(P())return this.reset(t),!1;let n=this.lastTick+D,r=Math.max(0,t-n);if(r>it)return this.reset(t),!1;this.lagSamples.push(r),this.lagSamples.length>fe&&this.lagSamples.shift();let o=this.pressure>.5,i=r>D*Ze;this.delayedSamples.push(i),this.delayedSamples.length>fe&&this.delayedSamples.shift();let s=r>1e3&&!o;i?this.blipCount++:this.blipCount=Math.max(0,this.blipCount-2);let c=s||!o&&this.blipCount>=et;return this.lastTick=t,c}start(){this.lastTick=Date.now();let t=()=>{let n=Date.now();this.tick(n),this.timer=setTimeout(t,D)};t()}stop(){this.timer!==null&&clearTimeout(this.timer),this.timer=null}},z=class{lastFrame=0;dropCount=0;rafId=0;onJank=null;reset(){this.lastFrame=0,this.dropCount=0}tick=t=>{if(P()){this.reset(),this.rafId=S(this.tick);return}let n=t-this.lastFrame;this.lastFrame>0&&n>32?(this.dropCount++,this.dropCount>=rt&&(this.dropCount=0,this.onJank?.())):this.dropCount=0,this.lastFrame=t,this.rafId=S(this.tick)};start(){this.lastFrame=performance.now?.()??Date.now(),this.rafId=S(this.tick)}stop(){$(this.rafId)}},V=class{tasks=[];get count(){return this.prune(),this.tasks.length}prune(){let t=Date.now()-tt;this.tasks=this.tasks.filter(n=>n.ts>t)}add(t,n){this.tasks.push({ts:t,dur:n}),this.prune()}},I=class{constructor(t,n){this.now=t;this.vitalsReader=n;ct();let r=typeof performance<"u"?performance.timeOrigin??Date.now():Date.now();this._startup={milestones:[],t0:r,longTasks:0}}now;vitalsReader;heartbeat=new F;frameBudget=new z;longTasks=new V;pendingAnomalies=[];snapshots=[];profiling=!1;lastProfileAt=0;startupCaptured=!1;lcpMs;fcpMs;_startup;install(){this.heartbeat.start();let t=this,n=this.heartbeat.tick.bind(this.heartbeat);this.heartbeat.tick=r=>{let o=n(r);return o&&t.captureAnomaly("cpu-pressure"),o},this.frameBudget.onJank=()=>{this.captureAnomaly("dropped-frames")},this.frameBudget.start();try{typeof PerformanceObserver<"u"&&new PerformanceObserver(o=>{let i=this.vitalsReader();for(let s of o.getEntries())this.longTasks.add(Date.now(),s.duration);for(let s of o.getEntries())s.entryType==="largest-contentful-paint"&&(this.lcpMs=s.startTime);this.longTaskAnomalyDue(i)&&this.captureAnomaly("long-task")}).observe({type:"longtask",buffered:!0})}catch{}try{typeof PerformanceObserver<"u"&&new PerformanceObserver(o=>{for(let i of o.getEntries())i.name==="first-contentful-paint"&&(this.fcpMs=i.startTime)}).observe({type:"paint",buffered:!0})}catch{}try{typeof document<"u"&&typeof document.addEventListener=="function"&&document.addEventListener("visibilitychange",()=>{this.heartbeat.reset(Date.now()),this.frameBudget.reset()})}catch{}this._startup.milestones.push({label:"agent:install",deltaMs:Math.round(this.now()-this._startup.t0)});try{let r=setTimeout(()=>this.captureStartupSnapshot(),at);r&&typeof r.unref=="function"&&r.unref()}catch{}}captureStartupSnapshot(){if(this.startupCaptured)return;this.startupCaptured=!0;let t=j(),n=this.vitalsReader(),r=this._startup.milestones.length>0?this._startup.milestones[this._startup.milestones.length-1].deltaMs:0,o={trigger:"page-load",cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),heapUsedMb:Math.round(t.used*10)/10,heapTotalMb:Math.round(t.total*10)/10,longTaskCount:this.longTasks.count,domNodeCount:B(),...this.lcpMs!=null?{lcpMs:this.lcpMs}:{},...this.fcpMs!=null?{fcpMs:this.fcpMs}:{},...n.cls!=null?{cls:n.cls}:{},callTree:null,startup:{milestones:this._startup.milestones.slice(),totalMs:r,longTaskCount:this._startup.longTasks}};this.snapshots.length>=O&&(this.snapshots.shift(),this.pendingAnomalies.shift()),this.pendingAnomalies.push("page-load"),this.snapshots.push(o)}longTaskAnomalyDue(t){return P()?!1:this.longTasks.count>=nt}mark(t){this._startup.milestones.push({label:t,deltaMs:Math.round(this.now()-this._startup.t0)})}vitals(){return{cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),longTaskCount:this.longTasks.count,pendingAnomalies:this.pendingAnomalies.slice()}}takeSnapshot(){let t=this.snapshots.shift();return t?(this.pendingAnomalies.shift(),t):null}async captureAnomaly(t){if(this.pendingAnomalies.length>=O||this.profiling&&t!=="page-unload"||t!=="page-unload"&&P())return;this.profiling=!0;let n=j(),r=this.vitalsReader(),o=Date.now(),i=t!=="page-unload"&&o-this.lastProfileAt>=st,s=null;if(i){this.lastProfileAt=o;try{let d=function(f){f.source&&a.push({fn:f.functionName,url:f.source.url,line:f.source.line,col:f.source.col,selfMs:f.selfTimeMs});for(let u of f.children)d(u)};var l=d;let p=await N(ot,this.now),a=[];d(p.root),a.sort((f,u)=>u.selfMs-f.selfMs);let m=a.reduce((f,u)=>f+u.selfMs,0);s=a.length===0?null:a.slice(0,10).map(f=>({functionName:f.fn,url:f.url,line:f.line,col:f.col,selfPercent:m>0?Math.round(f.selfMs/m*100):0}))}catch{s=null}}let c={trigger:t,cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),heapUsedMb:Math.round(n.used*10)/10,heapTotalMb:Math.round(n.total*10)/10,longTaskCount:this.longTasks.count,domNodeCount:B(),...this.lcpMs!=null?{lcpMs:this.lcpMs}:{},...this.fcpMs!=null?{fcpMs:this.fcpMs}:{},...r.cls!=null?{cls:r.cls}:{},callTree:s};this.snapshots.length>=O&&(this.snapshots.shift(),this.pendingAnomalies.shift()),this.pendingAnomalies.push(t),this.snapshots.push(c),this.profiling=!1}unload(){let t=j(),n=this.vitalsReader(),r=this._startup.milestones.length>0?this._startup.milestones[this._startup.milestones.length-1].deltaMs:0;return{trigger:"page-unload",cpuPressure:this.heartbeat.pressure,eventLoopLagMs:Math.round(this.heartbeat.avgLagMs),heapUsedMb:Math.round(t.used*10)/10,heapTotalMb:Math.round(t.total*10)/10,longTaskCount:this.longTasks.count,domNodeCount:B(),...this.lcpMs!=null?{lcpMs:this.lcpMs}:{},...this.fcpMs!=null?{fcpMs:this.fcpMs}:{},...n.cls!=null?{cls:n.cls}:{},callTree:null,startup:{milestones:this._startup.milestones.slice(),totalMs:r,longTaskCount:this._startup.longTasks}}}destroy(){this.heartbeat.stop(),this.frameBudget.stop()}};function _(e){let t=e.getAttribute?.("data-id");if(t)return`[data-id=${t}]`;let n=e.getAttribute?.("role"),r=e.tagName.toLowerCase();return e.id?`${r}#${e.id}`:n?`${r}[role=${n}]`:r}var pe="__ugly_inspect_overlay__";function me(e){if(typeof document>"u")return{setEnabled:()=>{},highlight:()=>{},destroy:()=>{}};let t=!1,n=null;function r(){if(n)return n;let a=document.createElement("div");return a.id=pe,Object.assign(a.style,{position:"fixed",pointerEvents:"none",zIndex:"2147483647",background:"rgba(64,128,255,0.28)",border:"1px solid rgba(64,128,255,0.9)",boxSizing:"border-box",top:"0",left:"0",display:"none"}),document.documentElement.appendChild(a),n=a,a}function o(a){let d=r();if(!a){d.style.display="none";return}Object.assign(d.style,{display:"block",transform:`translate(${a.x}px, ${a.y}px)`,width:`${a.w}px`,height:`${a.h}px`})}let i=a=>{let d=c(a.clientX,a.clientY);d&&o(H(d))},s=a=>{let d=c(a.clientX,a.clientY);d&&(a.preventDefault(),a.stopPropagation(),e.setPickedNode(d),e.onPicked({nodeId:e.reg.idFor(d),selector:_(d),rect:H(d)}),l(!1))};function c(a,d){n&&(n.style.display="none");let m=document.elementFromPoint(a,d);return m&&m.id!==pe?m:null}function l(a){a!==t&&(t=a,a?(window.addEventListener("pointermove",i,!0),window.addEventListener("pointerdown",s,!0)):(window.removeEventListener("pointermove",i,!0),window.removeEventListener("pointerdown",s,!0),o(null)))}function p(a){if(!a){o(null);return}let d=e.reg.get(a);d?.nodeType===1&&o(H(d))}return{setEnabled:l,highlight:p,destroy:()=>{l(!1),n?.remove(),n=null}}}function H(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}function he(e,t,n){if(e==="cookie"){document.cookie=`${encodeURIComponent(t)}=${encodeURIComponent(n)}; path=/`;return}A(()=>e==="session"?sessionStorage:localStorage)?.setItem(t,n)}function ye(e,t){if(e==="cookie"){document.cookie=`${encodeURIComponent(t)}=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT`;return}A(()=>e==="session"?sessionStorage:localStorage)?.removeItem(t)}async function be(){return{localStorage:ge(A(()=>localStorage)),sessionStorage:ge(A(()=>sessionStorage)),cookies:ut(),indexedDB:await lt()}}function A(e){try{return e()}catch{return null}}function ge(e){let t={};if(!e)return t;for(let n=0;n<e.length;n++){let r=e.key(n);r!=null&&(t[r]=e.getItem(r)??"")}return t}function ut(){if(typeof document>"u"||!document.cookie)return[];let e=typeof location<"u"?location.hostname:"";return document.cookie.split("; ").filter(Boolean).map(t=>{let n=t.indexOf("="),r=n>=0?t.slice(0,n):t,o=n>=0?t.slice(n+1):"";return{name:r,value:o,domain:e,path:"/"}})}async function lt(){if(typeof indexedDB>"u"||typeof indexedDB.databases!="function")return[];try{let e=await indexedDB.databases(),t=[];for(let n of e)n.name&&t.push({name:n.name,stores:await dt(n.name)});return t}catch{return[]}}function dt(e){return new Promise(t=>{try{let n=indexedDB.open(e);n.onsuccess=()=>{let r=n.result,o=Array.from(r.objectStoreNames);r.close(),t(o)},n.onerror=()=>t([])}catch{t([])}})}var ft=40;function we(e){let t={longTasks:[]},n=[];if(typeof PerformanceObserver>"u")return{read:()=>({...t,navigation:Ee()}),stop:()=>{}};r("largest-contentful-paint",o=>{let i=o[o.length-1];if(!i)return;let s=i.element;t.lcp={valueMs:i.startTime,element:s?{nodeId:e.nodeIdFor(s),selector:_(s),rect:mt(s)}:void 0}}),r("paint",o=>{for(let i of o)i.name==="first-contentful-paint"&&(t.fcp=i.startTime)}),r("layout-shift",o=>{let i=t.cls??0;for(let s of o)s.hadRecentInput||(i+=s.value);t.cls=i}),r("event",o=>{let i=t.inp??0;for(let s of o){let c=s.duration;c>i&&(i=c)}t.inp=i},{durationThreshold:40}),r("longtask",o=>{for(let i of o)t.longTasks.push({ts:e.now(),durationMs:i.duration});t.longTasks.length>200&&t.longTasks.splice(0,t.longTasks.length-200)});function r(o,i,s){try{let c=new PerformanceObserver(l=>i(l.getEntries()));c.observe({type:o,buffered:!0,...s??{}}),n.push(c)}catch{}}return{read:()=>{let o=Ee(),{resources:i,resourceSummary:s}=pt(o?.domInteractiveMs??t.fcp);return{...t,longTasks:t.longTasks.slice(),navigation:o,ttfb:t.ttfb??o?.ttfbMs,resources:i,resourceSummary:s}},stop:()=>n.forEach(o=>o.disconnect())}}function pt(e){if(typeof performance>"u"||!performance.getEntriesByType)return{};let t=performance.getEntriesByType("resource");if(!t.length)return{};let n=0,r=0;return{resources:t.map(s=>{n+=s.transferSize||0,r+=s.duration;let c=s.requestStart>0?Math.max(0,s.requestStart-s.startTime):void 0,l=e!=null&&s.responseEnd<=e&&(s.initiatorType==="link"||s.initiatorType==="css"||s.initiatorType==="script");return{name:s.name,initiatorType:s.initiatorType||"other",startMs:s.startTime,durationMs:s.duration,blockingMs:c,transferSizeBytes:s.transferSize||void 0,decodedSizeBytes:s.decodedBodySize||void 0,fromCache:s.transferSize===0&&s.decodedBodySize>0,renderBlocking:l}}).sort((s,c)=>c.durationMs-s.durationMs).slice(0,ft),resourceSummary:{count:t.length,transferBytes:n,durationMs:r}}}function Ee(){if(typeof performance>"u"||!performance.getEntriesByType)return;let e=performance.getEntriesByType("navigation")[0];if(e)return{ttfbMs:e.responseStart,domContentLoadedMs:e.domContentLoadedEventEnd,loadEventMs:e.loadEventEnd,domInteractiveMs:e.domInteractive,transferSizeBytes:e.transferSize}}function mt(e){let t=e.getBoundingClientRect();return{x:t.x,y:t.y,w:t.width,h:t.height}}var ke=1e3;function b(){return typeof performance<"u"&&performance.now?performance.timeOrigin+performance.now():Date.now()}function gt(e={}){let t=new v,n=new R,r=u=>n.idFor(u),o=new w(ke),i=new w(ke),s=null,c,l=Y({buffer:o,registry:t,nodeIdFor:r,onEntry:u=>e.onConsole?.(u),now:b}),p=se({buffer:i,onEntry:u=>e.onNetwork?.(u),now:b}),a=we({nodeIdFor:r,now:b}),d=new I(b,()=>a.read());d.install();let m=me({reg:n,onPicked:u=>e.onPicked?.(u),setPickedNode:u=>s=u});return{meta(){return{url:typeof location<"u"?location.href:"",title:typeof document<"u"?document.title:"",isUglyApp:typeof window<"u"&&"__uglyInspect"in window,viewport:{w:typeof window<"u"?window.innerWidth:0,h:typeof window<"u"?window.innerHeight:0,dpr:typeof window<"u"&&window.devicePixelRatio||1}}},consoleBuffer:u=>u==null?o.all():o.all().filter(h=>h.seq>u),networkBuffer:u=>{let E=[...i.all(),...ie()].sort((C,ve)=>C.ts-ve.ts);return u==null?E:E.filter(C=>C.ts>u)},evaluate:(u,h)=>te(u,{registry:t,nodeIdFor:r,now:b,getPicked:()=>s,getLast:()=>c,setLast:E=>c=E},h),expand:u=>({entries:W(t.get(u),{registry:t,nodeIdFor:r})}),domCapture:u=>Z(n,u,b),element:u=>ee(n,u),highlight:u=>m.highlight(u),setPicker:u=>m.setEnabled(u),vitals:()=>a.read(),profile:u=>N(u,b),perfVitals:()=>d.vitals(),perfSnapshot:()=>d.takeSnapshot(),perfUnload:()=>d.unload(),storage:()=>be(),storageSet:(u,h,E)=>he(u,h,E),storageRemove:(u,h)=>ye(u,h),reload:u=>{typeof location<"u"&&location.reload()},reset:()=>{t.clear(),n.clear(),o.clear(),i.clear(),s=null,c=void 0},stop:()=>{l(),p(),a.stop(),d.destroy(),m.destroy()}}}function Se(e){if(typeof window<"u"&&window.__uglyInspectAgent)return window.__uglyInspectAgent;let t=gt(e);return typeof window<"u"&&(window.__uglyInspectAgent=t),t}Se();})();
4
+ //# sourceURL=ugly-inspect-agent.js