@vanelsas/baredom 3.0.0 → 3.1.0
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/CHANGELOG.md +18 -0
- package/custom-elements.json +3393 -2954
- package/dist/baredom.d.ts +86 -86
- package/dist/base.js +533 -524
- package/dist/integrity.json +103 -103
- package/dist/x-alert.js +16 -16
- package/dist/x-avatar-group.js +9 -9
- package/dist/x-avatar.js +14 -14
- package/dist/x-badge.js +9 -9
- package/dist/x-bento-grid.js +5 -5
- package/dist/x-bento-item.js +4 -4
- package/dist/x-breadcrumbs.js +14 -13
- package/dist/x-button.js +1 -1
- package/dist/x-cancel-dialogue.js +14 -13
- package/dist/x-card.d.ts +1 -1
- package/dist/x-card.js +7 -7
- package/dist/x-carousel.d.ts +3 -0
- package/dist/x-carousel.js +35 -33
- package/dist/x-chart.js +47 -47
- package/dist/x-checkbox.js +1 -1
- package/dist/x-chip.js +1 -1
- package/dist/x-collapse.d.ts +1 -0
- package/dist/x-collapse.js +11 -10
- package/dist/x-color-picker.js +46 -45
- package/dist/x-combobox.d.ts +2 -0
- package/dist/x-combobox.js +30 -26
- package/dist/x-command-palette.d.ts +3 -0
- package/dist/x-command-palette.js +28 -26
- package/dist/x-confetti.js +24 -24
- package/dist/x-container.js +5 -6
- package/dist/x-context-menu.d.ts +4 -0
- package/dist/x-context-menu.js +21 -20
- package/dist/x-copy.js +20 -20
- package/dist/x-currency-field.d.ts +2 -0
- package/dist/x-currency-field.js +24 -23
- package/dist/x-date-picker.d.ts +3 -0
- package/dist/x-date-picker.js +42 -42
- package/dist/x-divider.js +10 -9
- package/dist/x-drawer.js +11 -10
- package/dist/x-dropdown.d.ts +3 -0
- package/dist/x-dropdown.js +12 -11
- package/dist/x-fieldset.js +6 -5
- package/dist/x-file-download.js +7 -7
- package/dist/x-file-upload.d.ts +2 -0
- package/dist/x-file-upload.js +23 -22
- package/dist/x-form-field.js +15 -15
- package/dist/x-form.d.ts +4 -0
- package/dist/x-form.js +10 -9
- package/dist/x-gaussian-blur.js +13 -12
- package/dist/x-grid.js +6 -7
- package/dist/x-i18n-provider.js +7 -7
- package/dist/x-i18n.js +4 -4
- package/dist/x-icon.js +7 -7
- package/dist/x-image.js +17 -17
- package/dist/x-kbd.js +16 -16
- package/dist/x-kinetic-canvas.js +26 -25
- package/dist/x-kinetic-font.js +27 -27
- package/dist/x-kinetic-typography.js +35 -33
- package/dist/x-liquid-dock.js +34 -38
- package/dist/x-liquid-fill.js +42 -45
- package/dist/x-liquid-glass.js +41 -47
- package/dist/x-menu-item.js +8 -8
- package/dist/x-menu.js +10 -11
- package/dist/x-metaball-cursor.js +23 -26
- package/dist/x-modal.js +12 -11
- package/dist/x-morph-stack.d.ts +4 -0
- package/dist/x-morph-stack.js +37 -37
- package/dist/x-multi-combobox.js +36 -36
- package/dist/x-navbar.js +15 -12
- package/dist/x-neural-glow.js +30 -33
- package/dist/x-notification-center.d.ts +2 -0
- package/dist/x-notification-center.js +9 -9
- package/dist/x-organic-divider.js +18 -17
- package/dist/x-organic-progress.js +35 -37
- package/dist/x-organic-shape.js +14 -13
- package/dist/x-otp-input.js +22 -22
- package/dist/x-pagination.js +14 -15
- package/dist/x-particle-button.js +51 -51
- package/dist/x-popover.d.ts +3 -0
- package/dist/x-popover.js +27 -25
- package/dist/x-progress-circle.d.ts +3 -0
- package/dist/x-progress-circle.js +9 -9
- package/dist/x-progress.js +8 -10
- package/dist/x-proximity-list.js +20 -20
- package/dist/x-radio.js +11 -11
- package/dist/x-ripple-effect.js +10 -11
- package/dist/x-scroll-parallax.js +17 -18
- package/dist/x-scroll-stack.js +16 -17
- package/dist/x-scroll-story.js +33 -34
- package/dist/x-scroll-timeline.js +46 -45
- package/dist/x-scroll.d.ts +3 -0
- package/dist/x-scroll.js +38 -40
- package/dist/x-search-field.d.ts +2 -0
- package/dist/x-search-field.js +1 -1
- package/dist/x-select.js +1 -1
- package/dist/x-sidebar.js +18 -17
- package/dist/x-skeleton-group.js +12 -12
- package/dist/x-skeleton.js +1 -1
- package/dist/x-slider.js +16 -15
- package/dist/x-soft-body.js +20 -22
- package/dist/x-spacer.js +4 -4
- package/dist/x-spinner.js +4 -4
- package/dist/x-splash.js +12 -13
- package/dist/x-spotlight-card.js +12 -12
- package/dist/x-stat.js +10 -10
- package/dist/x-stepper.js +13 -14
- package/dist/x-switch.js +11 -10
- package/dist/x-tab.js +7 -7
- package/dist/x-table-cell.js +21 -20
- package/dist/x-table-row.js +8 -8
- package/dist/x-table.d.ts +32 -32
- package/dist/x-table.js +13 -12
- package/dist/x-tabs.js +11 -11
- package/dist/x-text-area.js +19 -19
- package/dist/x-theme.js +25 -25
- package/dist/x-timeline-item.js +20 -20
- package/dist/x-timeline.js +8 -8
- package/dist/x-toast.d.ts +1 -0
- package/dist/x-toast.js +22 -22
- package/dist/x-toaster.js +7 -8
- package/dist/x-tooltip.d.ts +2 -0
- package/dist/x-tooltip.js +12 -12
- package/dist/x-trace-history.js +120 -117
- package/dist/x-typography.js +9 -9
- package/dist/x-welcome-tour.js +63 -61
- package/package.json +4 -2
package/dist/x-trace-history.js
CHANGED
|
@@ -1,118 +1,121 @@
|
|
|
1
1
|
import { $APP, shadow$provide } from "./base.js";
|
|
2
|
-
var
|
|
3
|
-
b);else{var c=
|
|
4
|
-
a),c=$APP.
|
|
5
|
-
|
|
6
|
-
b={schemaVersion:1,id:b,t:c,type:
|
|
7
|
-
b.value=a,b;case "dom/attribute-removed":return a=$APP.
|
|
8
|
-
b,c,d){var e=$APP.
|
|
9
|
-
(m=$APP.
|
|
10
|
-
|
|
11
|
-
$APP.
|
|
12
|
-
null)}return new $APP.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
$APP.
|
|
17
|
-
a:
|
|
18
|
-
b)},a):null},
|
|
19
|
-
7,[
|
|
20
|
-
$APP.
|
|
21
|
-
a===0?c=""+$APP.
|
|
22
|
-
($APP.
|
|
23
|
-
a=$APP.C(a,
|
|
24
|
-
$APP.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
c
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
$APP.
|
|
42
|
-
|
|
43
|
-
$APP.
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
"\
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
"
|
|
58
|
-
|
|
59
|
-
"
|
|
60
|
-
$APP.
|
|
61
|
-
$APP.
|
|
62
|
-
(a
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
$APP.
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
"
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
"
|
|
72
|
-
"__xTraceHistoryFilter"),
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
new $APP.M(null,2,5,$APP.N,[aO,e],null),e=wQ(a)):e=RQ(a,"Import failed — see console for details.");return e};c.onerror=function(){return RQ(a,"Could not read file.")};return c.readAsText(b)},UQ=function(a){a=a.dataTransfer;return $APP.n(a)?a.types.includes("Files"):null},XQ=function(a,b){var c=a.shadowRoot;a=$APP.n(c)?c:a.attachShadow({mode:"open"});if(c==null){c="\x3cstyle\x3e"+$APP.V.i(":host {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n width: min(420px, calc(100vw - 1rem));\n z-index: 1999999;\n font: 11px/1.4 ui-monospace, 'SF Mono', 'Cascadia Code', 'Consolas', monospace;\n color: #cdd6f4;\n pointer-events: auto;\n /* The width transition makes the collapse / expand toggle feel\n responsive without being slow. The dock is otherwise position:\n fixed so transitioning width doesn't reflow the host page. */\n transition: width 160ms ease;\n}\n/* Collapsed mode: shrink the host to a thin vertical strip so the\n user can reach components the full dock would otherwise cover.\n The only interactive element left is the collapse-toggle button,\n which expands the dock back to full width when clicked. */\n:host(.collapsed) {\n width: 32px;\n}\n:host(.collapsed) .dock \x3e *:not(.header) { display: none; }\n:host(.collapsed) .header {\n flex-direction: column;\n align-items: center;\n padding: 8px 0;\n gap: 4px;\n}\n:host(.collapsed) .header \x3e *:not([data-x-th-action\x3d'collapse']) {\n display: none;\n}\n/* Causality mode: hide the axis-mode select (Order / Time only\n affects the timeline pane, so it's noise in causality view). */\n:host(.causality-mode) [data-x-th-axis] {\n display: none;\n}\n@media (prefers-reduced-motion: reduce) {\n :host { transition: none; }\n}\n.dock {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #11111b;\n border-left: 1px solid rgba(59,130,246,0.6);\n box-shadow: -4px 0 20px rgba(0,0,0,0.4);\n /* Anchor for the absolutely-positioned drop-overlay added in PR 11\n so its `inset: 0` reaches the dock edges. */\n position: relative;\n}\n.header {\n display: flex;\n /* Wrap so the count + action buttons survive narrow viewports\n (`min(420px, calc(100vw - 1rem))` reaches 304px at 320px screens,\n which is too tight for four action buttons + title + count on\n one row). */\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 8px 10px;\n background: rgba(59,130,246,0.15);\n border-bottom: 1px solid rgba(59,130,246,0.3);\n flex: 0 0 auto;\n}\n.title { font-weight: 700; color: #89b4fa; font-size: 12px; }\n.count { color: #6c7086; margin-left: auto; }\n.filters {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px 12px;\n padding: 6px 10px;\n border-bottom: 1px solid rgba(255,255,255,0.06);\n flex: 0 0 auto;\n}\n/* The tag dropdown is an \x3cx-select\x3e; its own shadow brings styling.\n We just constrain its width and font so it matches the dock's\n ui-monospace 11px tone. */\n.filters x-select {\n font-size: 11px;\n max-width: 140px;\n}\n/* x-checkbox has no slot for its label, so the visible text sits\n next to the checkbox inside a \x3clabel\x3e wrapper. The label uses\n inline-flex to keep the checkbox + text on one row, with a small\n gap. Cursor: pointer mirrors native checkbox-label affordance. */\n.filters label.cat {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: #a6adc8;\n font-size: 10px;\n cursor: pointer;\n user-select: none;\n}\n/* PR 16 — search input. x-search-field brings its own theming via its\n shadow DOM; the dock just constrains the host width so it shares\n the filter row's monospace tone with the tag dropdown. */\n.filters x-search-field {\n font-size: 11px;\n flex: 1 1 140px;\n min-width: 100px;\n max-width: 240px;\n}\n/* Session strip: thin row above the filter row listing the live view\n plus any captured session as a clickable chip. Hidden when the only\n chip is Live (no sessions yet) so the dock stays compact. Scrolls\n horizontally if the chip count overflows the dock width. */\n.sessions {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n background: rgba(0,0,0,0.15);\n border-bottom: 1px solid rgba(255,255,255,0.04);\n flex: 0 0 auto;\n overflow-x: auto;\n white-space: nowrap;\n}\n.sessions[hidden] { display: none; }\n.session-chip {\n flex: 0 0 auto;\n background: rgba(255,255,255,0.04);\n color: #a6adc8;\n border: 1px solid rgba(255,255,255,0.08);\n border-radius: 3px;\n padding: 1px 6px;\n font: inherit;\n font-size: 10px;\n cursor: pointer;\n user-select: none;\n}\n.session-chip:hover { background: rgba(59,130,246,0.12); color: #cdd6f4; }\n.session-chip.active {\n background: rgba(59,130,246,0.22);\n border-color: rgba(59,130,246,0.6);\n color: #89b4fa;\n font-weight: 600;\n}\n/* Imported traces are visually distinct from locally-captured\n sessions: amber border instead of blue, plus a small close button\n inside the chip so the user can drop the import without clearing\n live state. */\n.session-chip.import {\n border-color: rgba(249,226,175,0.45);\n color: #f9e2af;\n}\n.session-chip.import.active {\n background: rgba(249,226,175,0.18);\n border-color: rgba(249,226,175,0.7);\n color: #f9e2af;\n}\n.session-chip.import .chip-close {\n background: transparent;\n border: none;\n color: inherit;\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n line-height: 1;\n padding: 0 0 0 6px;\n margin: 0;\n opacity: 0.6;\n}\n.session-chip.import .chip-close:hover { opacity: 1; }\n.session-chip .live-dot {\n display: inline-block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: #f38ba8;\n margin-right: 4px;\n vertical-align: middle;\n animation: x-th-pulse 1s ease-in-out infinite;\n}\n@keyframes x-th-pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.35; }\n}\n@media (prefers-reduced-motion: reduce) {\n .session-chip .live-dot { animation: none; }\n}\n.timeline {\n flex: 1 1 auto;\n overflow: auto;\n min-height: 0;\n position: relative;\n /* Transparent border reserves 2px so the focus indicator below doesn't\n overlap the leftmost pixels of lane labels or shift content layout. */\n border: 2px solid transparent;\n box-sizing: border-box;\n}\n.timeline-body {\n display: flex;\n align-items: stretch;\n min-height: 100%;\n}\n.lanes {\n flex: 0 0 110px;\n display: flex;\n flex-direction: column;\n border-right: 1px solid rgba(255,255,255,0.06);\n background: #11111b;\n position: sticky;\n left: 0;\n z-index: 1;\n}\n.lane-label {\n height: 20px;\n padding: 0 8px;\n display: flex;\n align-items: center;\n font-size: 11px;\n color: #a6adc8;\n border-bottom: 1px solid rgba(255,255,255,0.04);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n user-select: none;\n}\n.lane-label:hover { background: rgba(59,130,246,0.08); color: #cdd6f4; }\n.lane-label.active {\n background: rgba(59,130,246,0.18);\n color: #89b4fa;\n font-weight: 600;\n}\n.lane-label .cid { color: #6c7086; margin-left: 4px; }\n.svg-pane {\n flex: 1 1 auto;\n min-width: 0;\n display: block;\n}\nsvg.timeline-svg {\n display: block;\n background:\n repeating-linear-gradient(\n to bottom,\n transparent 0,\n transparent 19px,\n rgba(255,255,255,0.03) 19px,\n rgba(255,255,255,0.03) 20px);\n}\n.dot { cursor: pointer; transition: r 80ms ease; }\n.dot:hover { stroke: #fff; stroke-width: 1; }\n.dot.selected { stroke: #fff; stroke-width: 1.5; }\n/* Heatmap bins (PR 18). Each lane that exceeds the density threshold\n renders as a row of these rects rather than individual dots; the\n per-bin fill-opacity is set inline by the renderer (scales with\n the bin's record count relative to the lane's max). */\n.density-bin {\n cursor: pointer;\n transition: stroke 80ms ease, fill-opacity 80ms ease;\n}\n.density-bin:hover {\n stroke: #fff;\n stroke-width: 0.5;\n}\n/* Thin pink bar drawn at the selected record's exact x inside its\n bin — keeps the scrubber-style highlight in dense lanes without\n obscuring the bin's category colour. */\nline.density-selected {\n stroke: #f5c2e7;\n stroke-width: 2;\n pointer-events: none;\n}\nline.scrubber {\n stroke: #f5c2e7;\n stroke-width: 1.5;\n stroke-dasharray: 4 2;\n pointer-events: none;\n}\n.svg-pane { cursor: crosshair; }\n.timeline:focus {\n outline: none;\n border-color: #89b4fa;\n}\n.tooltip {\n position: absolute;\n background: #1e1e2e;\n border: 1px solid rgba(59,130,246,0.6);\n border-radius: 4px;\n padding: 4px 8px;\n font-size: 10px;\n white-space: pre-wrap;\n pointer-events: none;\n max-width: 280px;\n color: #cdd6f4;\n z-index: 10;\n box-shadow: 0 4px 12px rgba(0,0,0,0.5);\n}\n.timeline-empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n width: 100%;\n}\n/* Causality DAG pane (PR 17). Shares the flexible vertical slot with\n .timeline — render! toggles which one is hidden by dock-mode. The\n scrollable container holds an inner \x3csvg\x3e sized to the tree's\n bounding box so the scrollbars correctly reflect off-screen depth\n and breadth. */\n.causality {\n flex: 1 1 auto;\n overflow: auto;\n min-height: 0;\n position: relative;\n background: #11111b;\n border: 2px solid transparent;\n box-sizing: border-box;\n}\n.causality:focus { outline: none; border-color: #89b4fa; }\n.causality[hidden] { display: none; }\n.timeline[hidden] { display: none; }\n.causality-empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n width: 100%;\n}\n/* Leaf-hint banner rendered ABOVE the SVG when the tree has only\n one node. Pinned via sticky positioning so it stays visible even\n when the user scrolls the pane (the lone node sits at the\n padded origin and could be obscured by the banner otherwise). */\n.causality-leaf-hint {\n position: sticky;\n top: 0;\n left: 0;\n z-index: 1;\n background: rgba(249,226,175,0.10);\n border-bottom: 1px solid rgba(249,226,175,0.35);\n color: #f9e2af;\n font-size: 10px;\n padding: 6px 10px;\n line-height: 1.4;\n}\nsvg.causality-svg { display: block; }\nsvg.causality-svg .edge {\n stroke: rgba(255,255,255,0.18);\n stroke-width: 1;\n fill: none;\n}\nsvg.causality-svg .node-rect {\n fill: rgba(255,255,255,0.04);\n stroke: rgba(255,255,255,0.12);\n stroke-width: 1;\n cursor: pointer;\n rx: 4;\n ry: 4;\n transition: fill 80ms ease, stroke 80ms ease;\n}\nsvg.causality-svg .node-rect:hover {\n fill: rgba(59,130,246,0.16);\n stroke: rgba(59,130,246,0.6);\n}\nsvg.causality-svg .node-rect.selected {\n fill: rgba(245,194,231,0.18);\n stroke: #f5c2e7;\n stroke-width: 1.5;\n}\nsvg.causality-svg .node-dot {\n pointer-events: none;\n}\nsvg.causality-svg .node-text {\n fill: #cdd6f4;\n font: 10px ui-monospace, 'SF Mono', 'Cascadia Code', 'Consolas', monospace;\n pointer-events: none;\n dominant-baseline: middle;\n}\nsvg.causality-svg .node-text.id {\n fill: #a6adc8;\n font-size: 9px;\n}\n.splitter {\n flex: 0 0 auto;\n height: 4px;\n background: rgba(255,255,255,0.04);\n cursor: ns-resize;\n touch-action: none;\n transition: background 120ms ease;\n}\n.splitter:hover, .splitter.dragging { background: rgba(59,130,246,0.6); }\n.detail {\n background: #181825;\n border-top: 1px solid rgba(59,130,246,0.2);\n padding: 8px 10px;\n font-size: 10px;\n color: #cdd6f4;\n flex: 0 0 auto;\n height: 35vh;\n min-height: 60px;\n max-height: 80%;\n overflow-y: auto;\n}\n.detail-json {\n margin: 0 0 8px 0;\n font: inherit;\n white-space: pre-wrap;\n word-break: break-all;\n color: #a6e3a1;\n}\n.detail-section { margin-top: 6px; }\n.detail-label {\n color: #89b4fa;\n font-weight: 600;\n margin-bottom: 2px;\n font-size: 10px;\n letter-spacing: 0.02em;\n}\n/* The host is an \x3cx-button\x3e; its own shadow brings background, hover,\n border-radius, etc. We keep block-layout + width on the host so each\n link fills its row, and reach into the button's `label` part to add\n ellipsis truncation (the summary string can exceed the dock width). */\n.detail-link {\n display: block;\n width: 100%;\n margin: 2px 0;\n}\n.detail-link::part(label) {\n display: block;\n min-width: 0;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.detail-link::part(button) {\n width: 100%;\n justify-content: flex-start;\n}\n.detail-empty { color: #6c7086; font-style: italic; font-size: 10px; }\n.empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n}\n.hint { color: #6c7086; font-size: 10px; padding: 4px 10px; flex: 0 0 auto; }\n.hint.error { color: #f38ba8; }\n/* Drop overlay — covers the whole dock while a file is being hovered.\n pointer-events:none keeps drag events flowing through to the dock root\n so the dragleave/drop bookkeeping doesn't fight the overlay layer. */\n.drop-overlay {\n position: absolute;\n inset: 0;\n background: rgba(249,226,175,0.10);\n border: 2px dashed rgba(249,226,175,0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n color: #f9e2af;\n font-size: 12px;\n font-weight: 600;\n letter-spacing: 0.02em;\n z-index: 100;\n pointer-events: none;\n}\n.drop-overlay[hidden] { display: none; }\n/* The hidden file input is kept off-screen — clicked programmatically\n by the Import button — but we mark it `display:none` to keep it out\n of layout entirely. */\n.import-input { display: none; }")+
|
|
77
|
-
"\x3c/style\x3e";var d=$APP.V,e=d.i;b="\x3cdiv class\x3d'dock'\x3e\x3cdiv class\x3d'header'\x3e\x3cx-button data-x-th-action\x3d'collapse' size\x3d'sm' variant\x3d'ghost' aria-label\x3d'Collapse panel' title\x3d'Collapse / expand panel (Ctrl/Cmd + \\\\)'\x3e«\x3c/x-button\x3e\x3cspan class\x3d'title'\x3ex-trace-history\x3c/span\x3e\x3cx-button data-x-th-action\x3d'pause' size\x3d'sm' variant\x3d'ghost'\x3ePause\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'record' size\x3d'sm' variant\x3d'ghost'\x3eRecord\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'clear' size\x3d'sm' variant\x3d'ghost'\x3eClear\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'export' size\x3d'sm' variant\x3d'ghost' title\x3d'Download trace as .trace.json'\x3eExport\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'import' size\x3d'sm' variant\x3d'ghost' title\x3d'Load a .trace.json file (or drag-drop one onto the dock)'\x3eImport\x3c/x-button\x3e\x3cspan class\x3d'count' data-x-th-count\x3e0\x3c/span\x3e\x3c/div\x3e\x3cdiv class\x3d'sessions' data-x-th-sessions hidden\x3e\x3c/div\x3e\x3cdiv class\x3d'filters'\x3e\x3cx-select data-x-th-tag size\x3d'sm'\x3e\x3coption value\x3d'all' selected\x3eAll tags\x3c/option\x3e\x3c/x-select\x3e\x3cx-search-field data-x-th-search name\x3d'search' placeholder\x3d'Search records…' autocomplete\x3d'off'\x3e\x3c/x-search-field\x3e"+
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
a.
|
|
81
|
-
b.querySelector("[data-x-th-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
$APP.
|
|
85
|
-
q
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
m
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
(a
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
var
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
"
|
|
108
|
-
|
|
109
|
-
"
|
|
110
|
-
|
|
111
|
-
"
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
2
|
+
var OO=function(a,b,c){for(var d=$APP.r(a.$b),e=null,f=0,h=0;;)if(h<f){var k=e.F(null,h),m=$APP.B(k,0,null);k=$APP.B(k,1,null);k.J?k.J(m,a,b,c):k.call(null,m,a,b,c);h+=1}else if(d=$APP.r(d))$APP.Wc(d)?(e=$APP.Cb(d),d=$APP.Db(d),m=e,f=$APP.w(e),e=m):(e=$APP.t(d),m=$APP.B(e,0,null),k=$APP.B(e,1,null),k.J?k.J(m,a,b,c):k.call(null,m,a,b,c),d=$APP.v(d),e=null,f=0),h=0;else break},PO=function(a,b){const c=a.length-b.length;return c>=0&&a.indexOf(b,c)==c},QO=function(a,b){if(a!=null&&a.xc!=null)a=a.xc(a,
|
|
3
|
+
b);else{var c=QO[$APP.aa(a==null?null:a)];if(c!=null)a=c.j?c.j(a,b):c.call(null,a,b);else if(c=QO._,c!=null)a=c.j?c.j(a,b):c.call(null,a,b);else throw $APP.ua("IReset.-reset!",a);}return a},RO=function(a){return a+1},SO=function(a){return a-1},TO=function(a,b){return $APP.ed(function(c,d){c=a.i?a.i(c):a.call(null,c);d=a.i?a.i(d):a.call(null,d);var e=$APP.cd($APP.ad);return e.j?e.j(c,d):e.call(null,c,d)},b)},UO=function(a,b){return TO(a,b)},VO=function(a){if(a instanceof RegExp)return a;var b=$APP.Mg(/^\(\?([idmsux]*)\)/,
|
|
4
|
+
a),c=$APP.B(b,0,null);b=$APP.B(b,1,null);return new RegExp(a.substring(c==null?0:c.length),$APP.n(b)?b:"")},WO=function(a){return $APP.Md($APP.ya(function(b,c){return $APP.Od(b,c,$APP.Hc(b,c,0)+1)},$APP.vb($APP.ce),a))},XO=function(a){return new $APP.K(null,2,5,$APP.M,[$APP.me(200,a),$APP.ne(200,a)],null)},YO=function(a,b){if(a instanceof $APP.ke){var c=a.lc;if(c!=null&&!$APP.n(c.i?c.i(b):c.call(null,b)))throw Error("Validator rejected reference state");c=a.state;a.state=b;a.$b!=null&&OO(a,c,b);return b}return QO(a,
|
|
5
|
+
b)},$O=function(){var a=window;var b=a.location.search;b=b==null?null:$APP.Mg(ZO,b);return $APP.E(b)||$APP.l(a,"BAREDOM_TRACE_HISTORY")===!0||$APP.y.j("raw",$APP.l(a,"BAREDOM_TRACE_HISTORY"))},aP=function(a){a=a==null?null:a.tagName;a=a==null?null:a.toLowerCase();return $APP.n(a)?a:"document"},bP=function(a){try{return a==null?null:$APP.Xm(a)}catch(b){try{return""+$APP.P.i(a)}catch(c){return"(unprintable)"}}},fP=function(a,b,c){a=$APP.H(a);var d=$APP.C(a,$APP.O),e=$APP.C(a,cP),f=$APP.C(a,dP),h=$APP.C(a,
|
|
6
|
+
eP);var k=$APP.Bd(d);k=$APP.n(k)?""+$APP.P.i(k)+"/"+$APP.P.i($APP.Dg(d)):$APP.Dg(d);b={schemaVersion:1,id:b,t:c,type:k,tag:e,componentId:f,causeId:h};switch(d instanceof $APP.F?d.ea:null){case "event/dispatch":case "event/dispatch-cancelable":case "event/dispatch-document":return c=$APP.mi.i(a),b.eventName=c,c=bP($APP.V.i(a)),b.detail=c,c=$APP.E($APP.ni.i(a)),b.cancelable=c,a=$APP.E($APP.oi.i(a)),b.defaultPrevented=a,b;case "state/instance-field-set":return c=$APP.di.i(a),b.field=c,a=bP($APP.ei.i(a)),
|
|
7
|
+
b.value=a,b;case "dom/attribute-set":return c=$APP.Gh.i(a),b.attribute=c,a=$APP.ei.i(a),b.value=a,b;case "dom/attribute-removed":return a=$APP.Gh.i(a),b.attribute=a,b;case "lifecycle/attribute-changed":return c=$APP.Gh.i(a),b.attribute=c,c=$APP.Hh.i(a),b.oldValue=c,a=$APP.Ih.i(a),b.newValue=a,b;case "lifecycle/connected":case "lifecycle/disconnected":return b;default:return b}},gP=function(a){a=""+$APP.P.i(a);return a.length<2?"0"+$APP.P.i(a):a},hP=function(a,b){return $APP.tf.m($APP.ce,$APP.te(function(c){var d=
|
|
8
|
+
$APP.B(c,0,null);$APP.B(c,1,null);return $APP.$c(b,d)}),a)},qP=function(a,b,c,d){var e=$APP.H(d);d=$APP.C(e,iP);var f=$APP.C(e,$APP.fr),h=$APP.C(e,jP);e=$APP.C(e,kP);a:{var k=a.length;for(var m=0,q=$APP.vb($APP.sg);;){if(m>=k){k=$APP.xb(q);break a}var u=a[m].componentId;m+=1;q=u!=null?$APP.wb(q,u):q}k=void 0}k=hP(b,k);b=$APP.E(e);e={};k=$APP.r(k);m=null;for(u=q=0;;)if(u<q){var x=m.F(null,u),z=$APP.B(x,0,null),A=$APP.B(x,1,null);x=e;z=""+$APP.P.i(z);A={tag:cP.i(A),firstSeen:lP.i(A)};x[z]=A;u+=1}else if(k=
|
|
9
|
+
$APP.r(k))$APP.Wc(k)?(q=$APP.Cb(k),k=$APP.Db(k),m=q,q=$APP.w(q)):(m=$APP.t(k),q=$APP.B(m,0,null),u=$APP.B(m,1,null),m=e,q=""+$APP.P.i(q),u={tag:cP.i(u),firstSeen:lP.i(u)},m[q]=u,k=$APP.v(k),m=null,q=0),u=0;else break;k=[];c=$APP.r(c);m=null;for(u=q=0;;)if(u<q){x=m.F(null,u);var D=$APP.H(x);x=$APP.C(D,$APP.ar);z=$APP.C(D,$APP.bj);A=$APP.C(D,mP);var G=$APP.C(D,nP),J=$APP.C(D,oP);D=$APP.C(D,pP);k.push({id:x,label:z,startT:A,endT:G,startId:J,endId:D});u+=1}else if(c=$APP.r(c))$APP.Wc(c)?(q=$APP.Cb(c),
|
|
10
|
+
c=$APP.Db(c),m=q,q=$APP.w(q)):(m=$APP.t(c),A=$APP.H(m),m=$APP.C(A,$APP.ar),q=$APP.C(A,$APP.bj),u=$APP.C(A,mP),x=$APP.C(A,nP),z=$APP.C(A,oP),A=$APP.C(A,pP),k.push({id:m,label:q,startT:u,endT:x,startId:z,endId:A}),c=$APP.v(c),m=null,q=0),u=0;else break;return{schemaVersion:1,exportedAt:d,origin:f,userAgent:h,forensic:b,components:e,sessions:k,records:a}},rP=function(a){if($APP.ra(a)){if(typeof a.schemaVersion!=="number")return new $APP.N(null,1,[$APP.On,"Envelope is missing schemaVersion."],null);if($APP.I(1,
|
|
11
|
+
a.schemaVersion))return new $APP.N(null,1,[$APP.On,"Schema version mismatch: expected "+$APP.P.i(1)+", got "+$APP.P.i(a.schemaVersion)+"."],null);if($APP.p($APP.qa(a.records)))return new $APP.N(null,1,[$APP.On,"Envelope.records is not an array."],null);var b=a.records,c=b.length;a:{for(var d=0;;){if(d>=c){b=null;break a}var e=b[d];if($APP.ra(e)&&typeof e.id==="number"&&typeof e.t==="number"&&typeof e.type==="string")d+=1;else{b=d;break a}}b=void 0}return b==null?new $APP.N(null,1,[$APP.Cq,a],null):
|
|
12
|
+
new $APP.N(null,1,[$APP.On,"Record at index "+$APP.P.i(b)+" is missing required fields (id, t, type)."],null)}return new $APP.N(null,1,[$APP.On,"Envelope is not a JSON object."],null)},sP=function(a,b,c){return $APP.w(a)>=c?$APP.wd.j($APP.Oc(a),b):$APP.wd.j(a,b)},vP=function(){var a=kP.i($APP.bb(tP));return $APP.n(a)?$APP.wg(uP):$APP.Fm.j($APP.wg(uP),$APP.Br)},yP=function(a){var b=$APP.fe(function(c){var d=$APP.B(c,0,null);c=$APP.B(c,1,null);return $APP.$c(c,a)?d:null},wP);return $APP.n(b)?b:xP},
|
|
13
|
+
zP=function(a){try{var b=JSON.stringify(a)}catch(c){b=""}return $APP.n(b)?b.toLowerCase():""},DP=function(a,b){var c=$APP.H(b),d=$APP.C(c,cP),e=$APP.C(c,AP);b=$APP.C(c,BP);c=$APP.Hc(c,CP,zP);if(d=d==null||$APP.y.j("",d)||$APP.y.j("all",d)||$APP.y.j(d,a.tag)){if(e=e==null||$APP.$c(e,yP(a.type)))e=b==null||$APP.y.j("",b)||!((c.i?c.i(a):c.call(null,a)).indexOf(b)<0);d=e}return d},EP=function(a,b){return $APP.Oe(UO(function(c){return c.t},$APP.ue(function(c){return DP(c,b)},$APP.Ac(a))))},FP=function(a,
|
|
14
|
+
b){return typeof b==="number"?a.find(function(c){return $APP.y.j(b,c.id)}):null},GP=function(a){if(a!=null)try{var b=JSON.stringify(a),c=""+$APP.P.i(b);return c.length<=60?c:""+$APP.P.i(c.substring(0,60))+"…"}catch(d){return"(unstringifiable)"}else return null},HP=function(a){switch(a.type){case "event/dispatch":return""+$APP.P.i(a.eventName)+$APP.P.i(function(){var b=GP(a.detail);return $APP.n(b)?" "+$APP.P.i(b):null}());case "event/dispatch-cancelable":return""+$APP.P.i(a.eventName)+$APP.P.i($APP.n(a.defaultPrevented)?
|
|
15
|
+
" (prevented)":null)+$APP.P.i(function(){var b=GP(a.detail);return $APP.n(b)?" "+$APP.P.i(b):null}());case "event/dispatch-document":return""+$APP.P.i(a.eventName)+$APP.P.i(function(){var b=GP(a.detail);return $APP.n(b)?" "+$APP.P.i(b):null}());case "state/instance-field-set":return""+$APP.P.i(a.field)+" \x3d "+$APP.P.i(function(){var b=GP(a.value);return $APP.n(b)?b:"null"}());case "dom/attribute-set":return""+$APP.P.i(a.attribute)+"\x3d"+$APP.P.i($APP.ch($APP.Ac([a.value])));case "dom/attribute-removed":return""+
|
|
16
|
+
$APP.P.i(a.attribute)+" removed";case "lifecycle/connected":return"connected";case "lifecycle/disconnected":return"disconnected";case "lifecycle/attribute-changed":return""+$APP.P.i(a.attribute)+": "+$APP.P.i($APP.ch($APP.Ac([a.oldValue])))+" → "+$APP.P.i($APP.ch($APP.Ac([a.newValue])));default:return"("+$APP.P.i(a.type)+")"}},IP=function(a){if(typeof a!=="number")return"";if(a<1E3)return""+$APP.P.i(a.toFixed(0))+"ms";if(a<6E4)return""+$APP.P.i((a/1E3).toFixed(3))+"s";var b=$APP.qd(a,6E4)/1E3;return""+
|
|
17
|
+
$APP.P.i(Math.floor(a/6E4))+"m"+$APP.P.i(b.toFixed(1))+"s"},KP=function(a){a=yP(a.type);return $APP.C(JP,$APP.n(a)?a:xP)},MP=function(a){a=a.componentId;return $APP.n(a)?a:LP},PP=function(a){return $APP.Oe(UO(NP,$APP.oe.j(function(b){var c=$APP.B(b,0,null);b=$APP.B(b,1,null);var d=$APP.t(b);return new $APP.N(null,3,[OP,c,cP,d.tag,NP,$APP.Vd($APP.Hm,$APP.oe.j(function(e){return e.t},b))],null)},$APP.kh(MP,a))))},TP=function(a){if($APP.r(a)){var b=$APP.oe.j(function(c){return c.t},a);a=$APP.Vd($APP.Hm,
|
|
18
|
+
b);b=$APP.Vd($APP.Gm,b);return new $APP.N(null,3,[QP,a,RP,b,SP,$APP.Gm.j(1,b-a)],null)}return null},VP=function(a,b){return $APP.r(a)?$APP.Wd(UP,function(c){return Math.abs(c.t-b)},a):null},WP=function(a){if($APP.r(a)){var b=WO($APP.oe.j(function(d){return yP(d.type)},a)),c=$APP.Vd($APP.Gm,$APP.og(b));a=$APP.fe(function(d){return $APP.y.j(c,$APP.C(b,d))?d:null},uP);return $APP.n(a)?a:xP}return null},dQ=function(a,b){a=$APP.kh(function(c){c=b.i?b.i(c):b.call(null,c);return Math.floor(c/4)},a);return $APP.Oe(UO(XP,
|
|
19
|
+
$APP.oe.j(function(c){var d=$APP.B(c,0,null),e=$APP.B(c,1,null);c=$APP.oe.j(function(f){return f.t},e);e=$APP.Oe(UO(function(f){return f.id},e));return new $APP.N(null,7,[XP,d,YP,e,ZP,WP(e),$P,d*4,aQ,(d+1)*4,bQ,$APP.Vd($APP.Hm,c),cQ,$APP.Vd($APP.Gm,c)],null)},a)))},eQ=function(a){return $APP.fe(function(b){return $APP.w(YP.i(b))>3},a)},fQ=function(a){return $APP.r(a)?$APP.Vd($APP.Gm,$APP.oe.j(function(b){return $APP.w(YP.i(b))},a)):0},gQ=function(a,b){var c=b.id;a=UO(function(d){return d.t},$APP.ue(function(d){return $APP.y.j(c,
|
|
20
|
+
d.causeId)},$APP.Ac(a)));return new $APP.N(null,2,[$APP.ys,$APP.w(a),YP,$APP.Oe($APP.me(50,a))],null)},hQ=function(a,b){return $APP.Oe(UO(function(c){return c.id},$APP.ue(function(c){return $APP.y.j(b,c.causeId)},$APP.Ac(a))))},mQ=function(a,b){var c=XO(iQ(a,b));a=$APP.B(c,0,null);c=$APP.B(c,1,null);var d=$APP.kh(function(e){return e.causeId},a);return $APP.Vk.m(function h(f){var k=f.id;k=d.i?d.i(k):d.call(null,k);return new $APP.N(null,2,[jQ,f,kQ,$APP.xe(h,k)],null)}(b),lQ,$APP.E($APP.r(c)))},oQ=
|
|
21
|
+
function(a,b){return typeof b==="number"?$APP.fe(function(c){return $APP.y.j(b,$APP.ar.i(c))?c:null},nQ.i(a)):null},pQ=function(a,b,c,d){b===0?c="No records yet — interact with components to start tracing.":a===0?c=""+$APP.P.i(b)+" "+$APP.P.i($APP.y.j(1,b)?"record":"records")+" · all hidden by filter":(a=""+$APP.P.i(a)+$APP.P.i($APP.I(a,b)?" of "+$APP.P.i(b):null)+" "+$APP.P.i($APP.y.j(1,a)?"record":"records")+" · "+$APP.P.i(d)+" "+$APP.P.i($APP.y.j(1,d)?"lane":"lanes"),b=$APP.P,d=b.i,c=SP.i(c),c=
|
|
22
|
+
$APP.n(c)?" · spanning "+$APP.P.i(IP(c)):null,c=a+d.call(b,c));return c},rQ=function(a){return $APP.Vc(a)&&$APP.y.j(qQ,$APP.t(a))},tQ=function(a){return $APP.Vc(a)&&$APP.y.j(sQ,$APP.t(a))},uQ=function(a){return $APP.Vc(a)&&($APP.y.j(qQ,$APP.t(a))||$APP.y.j(sQ,$APP.t(a)))?$APP.Dc(a):null},vQ=function(a,b){a=$APP.l(a,"__xTraceHistoryUiState");return $APP.n(a)?(b=$APP.l(a,$APP.Dg(b)),void 0===b?null:b):null},wQ=function(a,b,c){var d=$APP.l(a,"__xTraceHistoryUiState");d=$APP.n(d)?d:{};b=$APP.Dg(b);d[b]=
|
|
23
|
+
c;a.__xTraceHistoryUiState=d},yQ=function(){var a=YP.i($APP.bb(tP)),b=$APP.bb(xQ),c=b[1];if(b[0]===a)return c;b=$APP.Xm($APP.Oe(a));YO(xQ,[a,b]);return b},DQ=function(){var a=zQ.J(AQ,$APP.Vk,BQ,!1);a=$APP.H(a);a=$APP.C(a,CQ);a=$APP.r(a);for(var b=null,c=0,d=0;;)if(d<c){var e=b.F(null,d);$APP.B(e,0,null);e=$APP.B(e,1,null);try{e.H?e.H():e.call(null)}catch(f){}d+=1}else if(a=$APP.r(a)){if($APP.Wc(a))c=$APP.Cb(a),a=$APP.Db(a),b=c,c=$APP.w(c);else{b=$APP.t(a);$APP.B(b,0,null);e=$APP.B(b,1,null);try{e.H?
|
|
24
|
+
e.H():e.call(null)}catch(f){}a=$APP.v(a);b=null;c=0}d=0}else return null},EQ=function(){if(AQ instanceof $APP.ke){var a=AQ.state;a=$APP.Vk.m?$APP.Vk.m(a,BQ,!0):$APP.Vk.call(null,a,BQ,!0);if(AQ instanceof $APP.ke){var b=AQ.lc;if(b!=null&&!$APP.n(b.i?b.i(a):b.call(null,a)))throw Error("Validator rejected reference state");b=AQ.state;AQ.state=a;AQ.$b!=null&&OO(AQ,b,a);a=new $APP.K(null,2,5,$APP.M,[b,a],null)}else a=new $APP.K(null,2,5,$APP.M,[$APP.bb(AQ),QO(AQ,a)],null)}else a=new $APP.K(null,2,5,$APP.M,
|
|
25
|
+
[$APP.bb(AQ),$APP.Am(AQ,$APP.Vk,BQ,!0)],null);b=$APP.B(a,0,null);$APP.B(a,1,null);return $APP.n(BQ.i(b))?null:requestAnimationFrame(DQ)},aaa=function(a,b){var c=FQ.i(a)+1;return GQ($APP.Vk.m(a,FQ,c),new $APP.K(null,2,5,$APP.M,[CQ,c],null),b)},baa=function(a,b,c){if($APP.y.j("document",b))return new $APP.N(null,2,[$APP.ar,null,HQ,!1],null);b=$APP.l(a,"__xTraceHistoryId");if(b!=null)return new $APP.N(null,2,[$APP.ar,b,HQ,!1],null);a.__xTraceHistoryId=c;return new $APP.N(null,2,[$APP.ar,c,HQ,!0],null)},
|
|
26
|
+
KQ=function(){var a=zQ.J(tP,IQ,JQ,RO);return JQ.i(a)-1},caa=function(a){zQ.j(LQ,RO);try{a.H?a.H():a.call(null)}finally{zQ.j(LQ,SO)}},MQ=function(a){var b=a.getRootNode();return b instanceof ShadowRoot?b.host:a.parentNode},NQ=function(a){for(;;)if(a!=null&&a instanceof Element){var b=a.localName;var c=b!=null;b=c?b.includes("-"):c;if($APP.n(b))return a;a=MQ(a)}else return null},OQ=function(a){if(a instanceof Node)for(a=MQ(a);;){if(a==null||a===document)return!1;if($APP.n($APP.l(a,"__xTraceHistoryInternal")))return!0;
|
|
27
|
+
a=MQ(a)}else return!1},PQ=function(a){var b=$APP.Dh.i(a);return $APP.$c(daa,$APP.O.i(a))?b instanceof Node?(a=$APP.l(b,"__xTraceHistoryInternal"),$APP.n(a)?a:OQ(b)):!1:OQ(b)},UQ=function(a,b,c,d){var e=$APP.bb(tP),f=$APP.Dh.i(a);if(!$APP.n(function(){var u=(u=$APP.p(d))?$APP.Qn.i(e):u;return $APP.n(u)?u:PQ(a)}())){var h=function(){var u=NQ(f);return $APP.n(u)?u:f}(),k=aP(h);h=baa(h,k,QQ.i(e));var m=$APP.H(h);h=$APP.C(m,$APP.ar);m=$APP.C(m,HQ);var q=$APP.Nc($APP.bb(RQ));q=$APP.Vk.B(a,cP,k,$APP.Ac([dP,
|
|
28
|
+
h,eP,q]));b=fP(q,b,c);b=sP(YP.i(e),b,SQ.i(e));c=$APP.n(m)?$APP.Vk.m(TQ.i(e),h,new $APP.N(null,2,[cP,k,lP,c],null)):TQ.i(e);k=$APP.n(m)?h+1:QQ.i(e);zQ.B(tP,$APP.Vk,YP,b,$APP.Ac([QQ,k,TQ,c]));EQ()}},VQ=function(a,b){var c=NQ(b);b=$APP.l($APP.n(c)?c:b,"__xTraceHistoryId");if($APP.n(b))switch(c=$APP.O.i(a),c instanceof $APP.F?c.ea:null){case "event/dispatch":case "event/dispatch-cancelable":case "event/dispatch-document":return""+$APP.P.i(b)+":evt:"+$APP.P.i($APP.mi.i(a));case "state/instance-field-set":return""+
|
|
29
|
+
$APP.P.i(b)+":fld:"+$APP.P.i($APP.di.i(a));case "dom/attribute-set":case "dom/attribute-removed":return""+$APP.P.i(b)+":attr:"+$APP.P.i($APP.Gh.i(a));default:return null}else return null},XQ=function(a,b,c,d){var e=$APP.p(kP.i(a));return e?(b=VQ(b,c),$APP.n(b)?(a=$APP.C(WQ.i(a),b),$APP.n(a)?d-a<16:null):null):e},YQ=function(a,b,c){if($APP.n(kP.i($APP.bb(tP))))return null;a=VQ(a,b);return $APP.n(a)?zQ.J(tP,GQ,new $APP.K(null,2,5,$APP.M,[WQ,a],null),c):null},$Q=function(a){var b=$APP.O.i(a),c=$APP.Dh.i(a),
|
|
30
|
+
d=performance.now();if($APP.n(function(){var f=$APP.bb(LQ)>0;if(f)return f;f=$APP.bb(ZQ);f=$APP.n(f)?$APP.$c(eaa,b):f;if($APP.n(f))return f;f=PQ(a);return $APP.n(f)?f:XQ($APP.bb(tP),a,c,d)}()))return null;var e=KQ();UQ(a,e,d,!1);return YQ(a,c,d)},faa=function(){var a=EventTarget.prototype,b=a.dispatchEvent;$APP.n($APP.l(b,"__xTraceHistoryWrapped"))||(YO(aR,b),b=function(c){var d=$APP.bb(aR);var e=$APP.p($APP.bb(ZQ));e||(e=$APP.Qn.i($APP.bb(tP)),e=$APP.n(e)?e:$APP.bb(LQ)>0||OQ(this));if($APP.n(e))c=
|
|
31
|
+
d.call(this,c);else{e=c instanceof CustomEvent;var f=performance.now(),h=e?new $APP.N(null,2,[$APP.O,this===document?$APP.si:$APP.n(c.cancelable)?$APP.qi:$APP.li,$APP.mi,c.type],null):null;if($APP.n(e?XQ($APP.bb(tP),h,this,f):e))c=d.call(this,c);else{var k=KQ();zQ.m(RQ,$APP.wd,k);try{var m=d.call(this,c)}finally{zQ.j(RQ,$APP.Oc)}if(e)try{UQ(new $APP.N(null,6,[$APP.O,this===document?$APP.si:$APP.n(c.cancelable)?$APP.qi:$APP.li,$APP.Dh,this,$APP.mi,c.type,$APP.V,c.detail,$APP.ni,c.cancelable,$APP.oi,
|
|
32
|
+
c.defaultPrevented],null),k,f,!0),YQ(h,this,f)}catch(q){}c=m}}return c},b.__xTraceHistoryWrapped=!0,a.dispatchEvent=b)},gaa=function(){return yQ()},haa=function(){var a=TQ.i($APP.bb(tP)),b={};a=$APP.r(a);for(var c=null,d=0,e=0;;)if(e<d){var f=c.F(null,e),h=$APP.B(f,0,null),k=$APP.B(f,1,null);f=b;h=""+$APP.P.i(h);k={tag:cP.i(k),firstSeen:lP.i(k)};f[h]=k;e+=1}else if(a=$APP.r(a))$APP.Wc(a)?(d=$APP.Cb(a),a=$APP.Db(a),c=d,d=$APP.w(d)):(c=$APP.t(a),d=$APP.B(c,0,null),e=$APP.B(c,1,null),c=b,d=""+$APP.P.i(d),
|
|
33
|
+
e={tag:cP.i(e),firstSeen:lP.i(e)},c[d]=e,a=$APP.v(a),c=null,d=0),e=0;else break;return b},iaa=function(a){var b=a.components;return b==null?$APP.we:$APP.oe.j(function(c){return $APP.l(b,c).tag},Object.keys(b))},jaa=function(){var a=$APP.bb(tP),b=$APP.oe.j(cP,$APP.og(TQ.i(a)));a=$APP.se(function(c){c=$APP.H(c);c=$APP.C(c,bR);return iaa(c)},$APP.Ac([cR.i(a)]));return $APP.Oe($APP.tf.j($APP.Cg(),$APP.re.j(b,a)))},dR=function(){zQ.J(tP,$APP.Vk,$APP.Qn,!0);return EQ()},eR=function(){zQ.J(tP,$APP.Vk,$APP.Qn,
|
|
34
|
+
!1);return EQ()},jR=function(){zQ.B(tP,$APP.Vk,YP,fR,$APP.Ac([JQ,0,gR,$APP.we,hR,0,iR,null,WQ,$APP.ce]));return EQ()},kR=function(){return iR.i($APP.bb(tP))},kaa=function(a,b,c,d){return b==null?a:$APP.xe(function(e){e=$APP.H(e);var f=$APP.C(e,$APP.ar);return $APP.y.j(f,b)?$APP.Vk.B(e,nP,c,$APP.Ac([pP,d])):e},a)},lR=function(){var a=performance.now();zQ.j(tP,function(b){return $APP.Vk.m(IQ.ua(b,gR,kaa,iR.i(b),a,JQ.i(b)),iR,null)});return EQ()},mR=function(){kR()!=null&&(console.warn("[x-trace-history] start-session! called while a session was already active — stopping the previous one"),
|
|
35
|
+
lR());var a=performance.now();zQ.j(tP,function(b){var c=hR.i(b),d=JQ.i(b);return $APP.Vk.B(IQ.J(b,gR,$APP.wd,new $APP.N(null,6,[$APP.ar,c,$APP.bj,"Session "+$APP.P.i(c),mP,a,nP,null,oP,d,pP,null],null)),iR,c,$APP.Ac([hR,c+1]))});EQ();return iR.i($APP.bb(tP))},nR=function(a,b){var c=$APP.H(b);b=$APP.C(c,oP);c=$APP.C(c,pP);a=a.id;return a>=b&&(c==null||a<c)},oR=function(){var a=$APP.bb(tP),b=yQ(),c=$APP.Ac(b);return $APP.Xm($APP.xe(function(d){var e=$APP.H(d);d=$APP.C(e,$APP.ar);var f=$APP.C(e,$APP.bj),
|
|
36
|
+
h=$APP.C(e,mP),k=$APP.C(e,nP),m=$APP.w($APP.ue(function(q){return nR(q,e)},c));return{id:d,label:f,startT:h,endT:$APP.n(k)?k:null,recordCount:m}},gR.i(a)))},pR=function(a){var b=$APP.bb(tP),c=$APP.t($APP.ue(function(d){return $APP.y.j($APP.ar.i(d),a)},gR.i(b)));return $APP.n(c)?$APP.Xm(UO(function(d){return d.t},$APP.ue(function(d){return nR(d,c)},$APP.Bc(yQ())))):[]},laa=function(a){if(typeof a==="string"){try{var b=JSON.parse(a)}catch(c){b=qR}a=$APP.y.j(b,qR)?new $APP.N(null,1,[$APP.On,"File is not valid JSON."],
|
|
37
|
+
null):rP(b)}else a=$APP.ra(a)?rP(a):new $APP.N(null,1,[$APP.On,"Import expects a JSON string or a parsed envelope object."],null);return a},rR=function(a){zQ.J(tP,IQ,cR,function(b){return $APP.Oe($APP.ve(function(c){c=$APP.H(c);c=$APP.C(c,$APP.ar);return $APP.y.j(c,a)},b))});return EQ()},tR=function(){return $APP.Xm($APP.xe(function(a){var b=$APP.H(a);a=$APP.C(b,$APP.ar);var c=$APP.C(b,$APP.bj),d=$APP.C(b,sR);b=$APP.C(b,bR);return{id:a,label:c,importedAt:d,recordCount:b.records.length}},cR.i($APP.bb(tP))))},
|
|
38
|
+
uR=function(a){var b=$APP.t($APP.ue(function(c){return $APP.y.j($APP.ar.i(c),a)},cR.i($APP.bb(tP))));return $APP.n(b)?bR.i(b).records:[]},vR=function(a,b){return new $APP.N(null,4,[iP,a.getTime(),$APP.fr,function(){var c=window;c=c==null?null:c.location;c=c==null?null:c.href;return $APP.n(c)?c:""}(),jP,function(){var c=navigator;c=c==null?null:c.userAgent;return $APP.n(c)?c:""}(),kP,b],null)},maa=function(){var a=$APP.bb(tP),b=yQ(),c=vR(new Date,kP.i(a));return qP(b,TQ.i(a),gR.i(a),c)},wR=function(){var a=
|
|
39
|
+
new Date,b=$APP.bb(tP),c=yQ(),d=vR(a,kP.i(b));b=qP(c,TQ.i(b),gR.i(b),d);b=JSON.stringify(b,null,2);a=""+$APP.P.i("baredom-trace-")+$APP.P.i(a.getFullYear())+$APP.P.i(gP(a.getMonth()+1))+$APP.P.i(gP(a.getDate()))+"-"+$APP.P.i(gP(a.getHours()))+$APP.P.i(gP(a.getMinutes()))+$APP.P.i(gP(a.getSeconds()))+$APP.P.i(".trace.json");b=URL.createObjectURL(new Blob([b],{type:"application/json"}));c=document.createElement("a");c.href=b;c.download=a;c.style.display="none";document.body.appendChild(c);try{var e=
|
|
40
|
+
c.click()}finally{document.body.removeChild(c),URL.revokeObjectURL(b)}return e},xR=function(a){return(""+$APP.P.i(a)).replace(naa,"\x26amp;").replace(oaa,"\x26lt;").replace(paa,"\x26gt;").replace(qaa,"\x26quot;").replace(raa,"\x26#39;")},saa=function(a){return"\x3coption value\x3d'"+$APP.P.i(xR(a))+"'\x3e"+$APP.P.i(xR(a))+"\x3c/option\x3e"},yR=function(a,b){return"\x3clabel class\x3d'cat'\x3e\x3cx-checkbox data-x-th-cat\x3d'"+$APP.P.i(a)+"' "+$APP.P.i($APP.n(b)?"checked ":null)+"aria-label\x3d'"+
|
|
41
|
+
$APP.P.i(a)+"'\x3e\x3c/x-checkbox\x3e"+$APP.P.i(a)+"\x3c/label\x3e"},taa=function(a,b){return $APP.Vd($APP.P,$APP.oe.j(function(c){var d=$APP.H(c);c=$APP.C(d,OP);var e=$APP.C(d,cP),f=$APP.H(d);d=$APP.C(f,OP);f=$APP.C(f,cP);d=$APP.y.j(LP,d)?"document":""+$APP.P.i(f)+" #"+$APP.P.i(d);f=$APP.y.j(LP,c)?"document":e;var h=$APP.y.j(b,f);return"\x3cdiv class\x3d'lane-label"+$APP.P.i(h?" active":null)+"' data-x-th-lane-tag\x3d'"+$APP.P.i(xR(f))+"' title\x3d'"+$APP.P.i(xR(d))+"'\x3e"+$APP.P.i(xR($APP.y.j(LP,
|
|
42
|
+
c)?"document":e))+$APP.P.i($APP.I(LP,c)?" \x3cspan class\x3d'cid'\x3e#"+$APP.P.i(c)+"\x3c/span\x3e":null)+"\x3c/div\x3e"},a))},uaa=function(a,b,c){return $APP.n(a)?"\x3cline class\x3d'scrubber' x1\x3d'"+$APP.P.i(b)+"' y1\x3d'0' x2\x3d'"+$APP.P.i(b)+"' y2\x3d'"+$APP.P.i(c)+"' /\x3e":""},zR=function(a,b,c,d){a=UO(function(e){return $APP.y.j(e.id,d)?1:0},a);return $APP.Vd($APP.P,$APP.oe.j(function(e){var f=c.i?c.i(e):c.call(null,e),h=b+10,k=$APP.y.j(e.id,d),m=k?6.5:4.5;return"\x3ccircle class\x3d'dot"+
|
|
43
|
+
$APP.P.i(k?" selected":null)+"' data-x-th-id\x3d'"+$APP.P.i(e.id)+"' cx\x3d'"+$APP.P.i(f)+"' cy\x3d'"+$APP.P.i(h)+"' r\x3d'"+$APP.P.i(m)+"' fill\x3d'"+$APP.P.i(KP(e))+"' /\x3e"},a))},vaa=function(a,b,c,d){if(c==null)return"";a=$APP.fe(function(e){e=$APP.H(e);e=$APP.C(e,YP);return $APP.fe(function(f){return $APP.y.j(f.id,c)?f:null},e)},a);return $APP.n(a)?(d=d.i?d.i(a):d.call(null,a),"\x3cline class\x3d'density-selected' x1\x3d'"+$APP.P.i(d)+"' y1\x3d'"+$APP.P.i(b)+"' x2\x3d'"+$APP.P.i(d)+"' y2\x3d'"+
|
|
44
|
+
$APP.P.i(b+20)+"' /\x3e"):""},waa=function(a,b,c,d){var e=fQ(a);return""+$APP.P.i($APP.Vd($APP.P,$APP.oe.j(function(f){var h=$APP.H(f),k=$APP.C(h,YP);f=$APP.C(h,ZP);h=$APP.C(h,$P);var m=$APP.t(k),q=$APP.C(JP,$APP.n(f)?f:xP);var u=$APP.w(k);u=u==null||u===0||e==null||e===0?0:u>=e?1:.4+.6*((u-1)/$APP.Gm.j(1,e-1));var x=xR($APP.Dg($APP.n(f)?f:xP));k=$APP.w(k);f=""+$APP.P.i(k)+" "+$APP.P.i($APP.y.j(1,k)?"record":"records")+" · "+$APP.P.i($APP.Dg($APP.n(f)?f:xP));return"\x3crect class\x3d'density-bin' role\x3d'button' aria-label\x3d'"+
|
|
45
|
+
$APP.P.i(xR(f))+"' data-x-th-bin-record-id\x3d'"+$APP.P.i(m.id)+"' data-x-th-bin-count\x3d'"+$APP.P.i(k)+"' data-x-th-bin-cat\x3d'"+$APP.P.i(x)+"' x\x3d'"+$APP.P.i(h)+"' y\x3d'"+$APP.P.i(b)+"' width\x3d'"+$APP.P.i(4)+"' height\x3d'"+$APP.P.i(20)+"' fill\x3d'"+$APP.P.i(q)+"' fill-opacity\x3d'"+$APP.P.i(u)+"' /\x3e"},a)))+$APP.P.i(vaa(a,b,c,d))},xaa=function(a,b,c,d,e,f){function h(A){a:{var D=$APP.C(x,A.id);var G=a instanceof $APP.F?a.ea:null;switch(G){case "order":A=$APP.Gm.j(0,e-16);D=u===0||u<0?
|
|
46
|
+
8:$APP.y.j(1,u)?8+A/2:8+$APP.Hm.j($APP.Gm.j(D/(u-1),0),1)*A;break a;case "time":D=A.t;G=$APP.H(d);A=$APP.C(G,QP);G=$APP.C(G,SP);var J=$APP.Gm.j(0,e-16);D=A==null||G==null?8:8+$APP.Hm.j($APP.Gm.j((D-A)/G,0),1)*J;break a;default:throw Error("No matching clause: "+$APP.P.i(G));}}return D}var k=$APP.n(f)?f.id:null,m=$APP.tf.j($APP.ce,$APP.ie(function(A,D){D=$APP.H(D);D=$APP.C(D,OP);return new $APP.K(null,2,5,$APP.M,[D,A*20],null)},c)),q=$APP.Gm.j(20,20*$APP.w(c)),u=$APP.w(b),x=$APP.tf.j($APP.ce,$APP.ie(function(A,
|
|
47
|
+
D){return new $APP.K(null,2,5,$APP.M,[D.id,A],null)},b)),z=$APP.kh(MP,b);return"\x3csvg class\x3d'timeline-svg' width\x3d'"+$APP.P.i(e)+"' height\x3d'"+$APP.P.i(q)+"' viewBox\x3d'0 0 "+$APP.P.i(e)+" "+$APP.P.i(q)+"'\x3e"+$APP.P.i($APP.Vd($APP.P,$APP.oe.j(function(A){A=$APP.H(A);var D=$APP.C(A,OP);A=$APP.Hc(z,D,$APP.we);D=$APP.C(m,D);if($APP.y.j(AR,a)){var G=dQ(A,h);A=$APP.n(eQ(G))?waa(G,D,k,h):zR(A,D,h,k)}else A=zR(A,D,h,k);return A},c)))+$APP.P.i(uaa(f,$APP.n(f)?h(f):null,q))+"\x3c/svg\x3e"},yaa=
|
|
48
|
+
function(a,b,c,d,e,f,h,k){if($APP.w(d)===0)a.innerHTML="",b.innerHTML="\x3cdiv class\x3d'timeline-empty'\x3eNo records match the current filter.\x3c/div\x3e";else{var m=$APP.Gm.j(200,b.clientWidth);a.innerHTML=taa(e,k);b.innerHTML=xaa(c,d,e,f,m,h)}},BR=function(a){return""+$APP.P.i(a.tag)+" · "+$APP.P.i(a.type)},zaa=function(a){var b=$APP.H(a);a=$APP.C(b,CR);var c=$APP.C(b,DR),d=$APP.C(b,ER);b=$APP.C(b,FR);c+=14;b-=14;return"\x3cline class\x3d'edge' x1\x3d'"+$APP.P.i(a)+"' y1\x3d'"+$APP.P.i(c)+"' x2\x3d'"+
|
|
49
|
+
$APP.P.i(d)+"' y2\x3d'"+$APP.P.i(b)+"' /\x3e"},Aaa=function(a,b){var c=$APP.H(a);a=$APP.C(c,nQ);var d=$APP.C(c,GR),e=$APP.C(c,$APP.Vl);c=$APP.C(c,$APP.Wl);return"\x3csvg class\x3d'causality-svg' width\x3d'"+$APP.P.i(e)+"' height\x3d'"+$APP.P.i(c)+"' viewBox\x3d'0 0 "+$APP.P.i(e)+" "+$APP.P.i(c)+"'\x3e"+$APP.P.i($APP.Vd($APP.P,$APP.oe.j(zaa,d)))+$APP.P.i($APP.Vd($APP.P,$APP.oe.j(function(f){var h=$APP.H(f),k=$APP.C(h,$APP.ar);f=$APP.C(h,jQ);var m=$APP.C(h,HR);h=$APP.C(h,IR);m-=70;var q=h-14,u=$APP.y.j(k,
|
|
50
|
+
b),x=m+12,z=m+22,A=m+22,D=q+18,G=q+11,J=xR("#"+$APP.P.i(k)+" "+$APP.P.i(BR(f))+" · "+$APP.P.i(HP(f)));k="\x3cg data-x-th-link-id\x3d'"+$APP.P.i(k)+"' role\x3d'button' aria-label\x3d'"+$APP.P.i(J)+"'\x3e\x3ctitle\x3e"+$APP.P.i(J)+"\x3c/title\x3e\x3crect class\x3d'node-rect"+$APP.P.i(u?" selected":null)+"' x\x3d'"+$APP.P.i(m)+"' y\x3d'"+$APP.P.i(q)+"' width\x3d'"+$APP.P.i(140)+"' height\x3d'"+$APP.P.i(28)+"' /\x3e\x3ccircle class\x3d'node-dot' cx\x3d'"+$APP.P.i(x)+"' cy\x3d'"+$APP.P.i(h)+"' r\x3d'"+
|
|
51
|
+
$APP.P.i(4)+"' fill\x3d'"+$APP.P.i(KP(f))+"' /\x3e\x3ctext class\x3d'node-text id' x\x3d'"+$APP.P.i(z)+"' y\x3d'"+$APP.P.i(G)+"'\x3e#"+$APP.P.i(k)+"\x3c/text\x3e\x3ctext class\x3d'node-text' x\x3d'"+$APP.P.i(A)+"' y\x3d'"+$APP.P.i(D)+"'\x3e";h=$APP.P;m=h.i;f=BR(f);f=""+$APP.P.i(f);f=f.length<=22?f:""+$APP.P.i(f.substring(0,21))+"…";return k+m.call(h,xR(f))+"\x3c/text\x3e\x3c/g\x3e"},a)))+"\x3c/svg\x3e"},Caa=function(a,b,c,d){if(d==null)wQ(a,JR,null),b.innerHTML="\x3cdiv class\x3d'causality-empty'\x3e"+
|
|
52
|
+
$APP.P.i(xR("Select a record from the timeline to see its causality tree."))+"\x3c/div\x3e";else{a:{var e=d;for(var f=0;;){var h=e.causeId;if(typeof h!=="number"||f>=5E3)break a;h=FP(c,h);if($APP.n(h))f+=1,e=h;else break a}e=void 0}e=mQ(c,e);c=new $APP.N(null,2,[KR,LR(e),Baa,MR(e)],null);if($APP.n(lQ.i(e)))wQ(a,JR,null),a=$APP.P,d=a.i,c=$APP.H(c),c=$APP.C(c,KR),c="Causality tree exceeds the "+$APP.P.i(200)+"-node cap (≥ "+$APP.P.i(c)+" nodes). Pick a smaller leaf record to view its subtree.",b.innerHTML=
|
|
53
|
+
"\x3cdiv class\x3d'causality-empty'\x3e"+d.call(a,xR(c))+"\x3c/div\x3e";else{e=NR(e,0,16);f=$APP.B(e,0,null);$APP.B(e,1,null);e=OR(f);f=PR(f);h=$APP.ya($APP.Gm,0,$APP.oe.j(HR,e));var k=$APP.ya($APP.Gm,0,$APP.oe.j(IR,e));e=new $APP.N(null,4,[nQ,e,GR,f,$APP.Vl,h+70+16,$APP.Wl,k+14+16],null);c=$APP.y.j(1,KR.i(c));wQ(a,JR,e);b.innerHTML=""+$APP.P.i(c?"\x3cdiv class\x3d'causality-leaf-hint'\x3e"+$APP.P.i(xR("This record has no cause and no effects in the current buffer. Pick an event/dispatch* record (or one with a 'Caused by' link in the detail pane) to see a chain."))+
|
|
54
|
+
"\x3c/div\x3e":null)+$APP.P.i(Aaa(e,d.id))}}},Daa=function(a){if($APP.n(vQ(a,QR))){var b=$APP.l(a,"__xTraceHistoryCausalityEl"),c=vQ(a,JR),d=RR.i?RR.i(a):RR.call(null,a),e=$APP.n(c)?oQ(c,d):null,f=b==null?null:b.clientWidth;d=b==null?null:b.clientHeight;if($APP.n($APP.n(b)?$APP.n(c)?$APP.n(e)?typeof f==="number"&&typeof d==="number"&&f>0&&d>0:e:c:b)){var h=$APP.H(c);c=$APP.C(h,$APP.Vl);h=$APP.C(h,$APP.Wl);var k=HR.i(e),m=IR.i(e);e=k-f/2;k=m-d/2;f=$APP.Gm.j(0,c-f);d=$APP.Gm.j(0,h-d);d=new $APP.N(null,
|
|
55
|
+
2,[SR,$APP.Gm.j(0,$APP.Hm.j(f,e)),TR,$APP.Gm.j(0,$APP.Hm.j(d,k))],null);f=$APP.H(d);d=$APP.C(f,SR);f=$APP.C(f,TR);b.scrollLeft=d;b.scrollTop=f;return wQ(a,QR,!1)}}return null},Eaa=function(a){var b=jaa();a:{var c=a.querySelectorAll("option");for(var d=c.length,e=0,f=$APP.vb($APP.sg);;){if(e>=d){c=$APP.xb(f);break a}var h=c[e].value;e+=1;f=$APP.y.j(h,"all")?f:$APP.wb(f,h)}c=void 0}b=$APP.ve(c,b);$APP.r(b)&&(b=$APP.Vd($APP.P,$APP.oe.j(saa,b)),a.insertAdjacentHTML("beforeend",b))},Faa=function(a){var b=
|
|
56
|
+
$APP.Qn.i($APP.bb(tP));a.textContent=$APP.n(b)?"Resume":"Pause";a.pressed=b},Gaa=function(a){var b=kR()!=null;a.textContent=b?"Stop":"Record";a.pressed=b},Haa=function(a){var b=$APP.H(a);a=$APP.C(b,UR);var c=$APP.C(b,$APP.Zk),d=$APP.C(b,VR),e=$APP.C(b,WR),f=$APP.C(b,$APP.bj);b=$APP.C(b,YR);return"\x3cbutton class\x3d'session-chip"+$APP.P.i($APP.n(c)?" active":null)+$APP.P.i($APP.n(e)?" import":null)+"' type\x3d'button' data-x-th-session\x3d'"+$APP.P.i(xR(a))+"'\x3e"+$APP.P.i($APP.n(d)?"\x3cspan class\x3d'live-dot' aria-hidden\x3d'true'\x3e\x3c/span\x3e":
|
|
57
|
+
null)+$APP.P.i(xR(f))+$APP.P.i($APP.n(e)?"\x3cspan class\x3d'chip-close' role\x3d'button' aria-label\x3d'Remove import' data-x-th-import-close\x3d'"+$APP.P.i(b)+"'\x3e×\x3c/span\x3e":null)+"\x3c/button\x3e"},Iaa=function(a,b,c,d){var e=new $APP.N(null,5,[UR,"live",$APP.Zk,$APP.y.j(c,$APP.Pn),VR,!1,WR,!1,$APP.bj,"Live"],null),f=rQ(c)?uQ(c):null,h=tQ(c)?uQ(c):null;a=$APP.xe(function(k){var m=k.id;return new $APP.N(null,5,[UR,""+$APP.P.i(m),$APP.Zk,$APP.y.j(m,f),VR,$APP.y.j(m,d),WR,!1,$APP.bj,""+$APP.P.i(k.label)+
|
|
58
|
+
" · "+$APP.P.i(k.recordCount)],null)},$APP.Ac(a));b=$APP.xe(function(k){var m=k.id;return new $APP.N(null,6,[UR,"import:"+$APP.P.i(m),$APP.Zk,$APP.y.j(m,h),VR,!1,WR,!0,YR,m,$APP.bj,""+$APP.P.i(k.label)+" · "+$APP.P.i(k.recordCount)],null)},$APP.Ac(b));return $APP.Vd($APP.P,$APP.oe.j(Haa,$APP.re.B(new $APP.K(null,1,5,$APP.M,[e],null),a,$APP.Ac([b]))))},Jaa=function(a,b,c,d,e){a.innerHTML=Iaa(b,c,d,e);b.length===0&&c.length===0?a.setAttribute("hidden",""):a.removeAttribute("hidden")},ZR=function(a){var b=
|
|
59
|
+
HP(a);b="#"+$APP.P.i(a.id)+" "+$APP.P.i(a.tag)+" · "+$APP.P.i(a.type)+$APP.P.i($APP.n($APP.n(b)?!$APP.Th(b):b)?" · "+$APP.P.i(b):null);return"\x3cx-button class\x3d'detail-link' size\x3d'sm' variant\x3d'ghost' data-x-th-link-id\x3d'"+$APP.P.i(a.id)+"' title\x3d'"+$APP.P.i(xR(b))+"'\x3e"+$APP.P.i(xR(b))+"\x3c/x-button\x3e"},Kaa=function(a,b,c,d){if($APP.n(d)){var e=JSON.stringify(d,null,2);var f=d.causeId;var h=typeof f==="number"?FP(c,f):null;f=gQ(c,d);e="\x3cpre class\x3d'detail-json'\x3e"+$APP.P.i(xR(e))+
|
|
60
|
+
"\x3c/pre\x3e"+$APP.P.i($APP.n(h)?"\x3cdiv class\x3d'detail-section' data-x-th-detail-cause\x3e\x3cdiv class\x3d'detail-label'\x3eCaused by\x3c/div\x3e"+$APP.P.i(ZR(h))+"\x3c/div\x3e":null);c=$APP.P;d=c.i;h=$APP.H(f);f=$APP.C(h,$APP.ys);h=$APP.C(h,YP);if(f>0){var k=$APP.w(h);f=$APP.y.j(k,f)?"Effects ("+$APP.P.i(f)+")":"Effects ("+$APP.P.i(k)+" of "+$APP.P.i(f)+")";f="\x3cdiv class\x3d'detail-section' data-x-th-detail-effects\x3e\x3cdiv class\x3d'detail-label'\x3e"+$APP.P.i(f)+"\x3c/div\x3e"+$APP.P.i($APP.Vd($APP.P,
|
|
61
|
+
$APP.oe.j(ZR,h)))+"\x3c/div\x3e"}else f=null;e+=d.call(c,f);a.innerHTML=e;a.removeAttribute("hidden");b.removeAttribute("hidden")}else a.setAttribute("hidden",""),b.setAttribute("hidden","")},aS=function(a){var b=$R.get(a);if($APP.n(b))return b;b=zP(a);$R.set(a,b);return b},bS=function(a){return $APP.y.j(a,$APP.Pn)?"live":rQ(a)?"session:"+$APP.P.i(uQ(a)):tQ(a)?"import:"+$APP.P.i(uQ(a)):"live"},RR=function(a){var b=$APP.l(a,"__xTraceHistoryView");a=$APP.l(a,"__xTraceHistoryViewSelected");return $APP.n(a)?
|
|
62
|
+
$APP.l(a,bS(b)):null},dS=function(a,b){var c=$APP.l(a,"__xTraceHistoryViewSelected");c=$APP.n(c)?c:{};var d=bS($APP.l(a,"__xTraceHistoryView"));b==null?d in c&&delete c[d]:c[d]=b;$APP.R(a,"__xTraceHistoryViewSelected",c);b!=null&&$APP.y.j(cS,$APP.l(a,"__xTraceHistoryDockMode"))&&wQ(a,QR,!0)},Laa=function(a,b,c){var d=RR(a);b=FP(b,d);if(b==null)return null;if(DP(b,$APP.Vk.m(c,CP,aS)))return b;dS(a,null);return null},eS=function(a){return $APP.y.j(a,$APP.Pn)?yQ():rQ(a)?(a=pR(uQ(a)),a.length===0?yQ():
|
|
63
|
+
a):tQ(a)?(a=uR(uQ(a)),a.length===0?yQ():a):yQ()},Maa=function(a,b,c,d){switch(d instanceof $APP.F?d.ea:null){case "causality":b.setAttribute("hidden","");c.removeAttribute("hidden");a.classList.add("causality-mode");break;default:b.removeAttribute("hidden"),c.setAttribute("hidden",""),a.classList.remove("causality-mode")}},gS=function(a){var b=$APP.l(a,"__xTraceHistoryTimelineEl"),c=$APP.l(a,"__xTraceHistoryCausalityEl"),d=$APP.l(a,"__xTraceHistoryLanesEl"),e=$APP.l(a,"__xTraceHistorySvgPaneEl"),
|
|
64
|
+
f=$APP.l(a,"__xTraceHistoryCountEl"),h=$APP.l(a,"__xTraceHistoryDetailEl"),k=$APP.l(a,"__xTraceHistorySplitterEl"),m=$APP.l(a,"__xTraceHistoryHintEl"),q=$APP.l(a,"__xTraceHistoryPauseBtn"),u=$APP.l(a,"__xTraceHistoryRecordBtn"),x=$APP.l(a,"__xTraceHistorySessionsEl"),z=$APP.l(a,"__xTraceHistoryTagSelectEl"),A=$APP.l(a,"__xTraceHistoryFilter"),D=$APP.l(a,"__xTraceHistoryView"),G=eS(D),J=EP(G,$APP.Vk.m(A,CP,aS)),S=$APP.w(J),Q=G.length,X=TP(J),ja=PP(J),ka=Laa(a,G,A),na=oR(),Ga=tR(),Ia=kR(),$a=function(){var Gb=
|
|
65
|
+
$APP.l(a,"__xTraceHistoryAxisMode");return $APP.n(Gb)?Gb:$APP.Cp}(),nb=function(){var Gb=$APP.l(a,"__xTraceHistoryDockMode");return $APP.n(Gb)?Gb:fS}();Eaa(z);Maa(a,b,c,nb);switch(nb instanceof $APP.F?nb.ea:null){case "causality":Caa(a,c,G,ka);break;default:yaa(d,e,$a,J,ja,X,ka,cP.i(A))}f.textContent=""+$APP.P.i(S);m.textContent=pQ(S,Q,X,$APP.w(ja));Kaa(h,k,G,ka);Faa(q);Gaa(u);Jaa(x,na,Ga,D,Ia);return Daa(a)},hS=function(a){return $APP.n(a)?$APP.y.j("circle",a.tagName.toLowerCase()):a},iS=function(a){return $APP.n(a)?
|
|
66
|
+
$APP.y.j("rect",a.tagName.toLowerCase())&&a.getAttribute("data-x-th-bin-record-id")!=null:a},jS=function(a){a=a.getAttribute("data-x-th-id");return $APP.n(a)?parseInt(a,10):null},kS=function(a,b){$APP.n(b)?a.classList.add("collapsed"):a.classList.remove("collapsed");a=$APP.l(a,"__xTraceHistoryCollapseBtn");return $APP.n(a)?(a.textContent=$APP.n(b)?"»":"«",a.setAttribute("aria-expanded",$APP.n(b)?"false":"true")):null},lS=function(a){var b=!$APP.E($APP.l(a,"__xTraceHistoryCollapsed"));$APP.R(a,"__xTraceHistoryCollapsed",
|
|
67
|
+
b);return kS(a,b)},Naa=function(a,b){$APP.R(a,"__xTraceHistoryAxisMode",function(){switch(b){case "order":return $APP.Cp;case "time":return AR;default:return $APP.Cp}}());return gS(a)},Oaa=function(a,b){var c=function(){switch(b){case "timeline":return fS;case "causality":return cS;default:return fS}}();$APP.R(a,"__xTraceHistoryDockMode",c);$APP.y.j(cS,c)?wQ(a,QR,!0):wQ(a,QR,!1);return gS(a)},mS=function(a,b,c,d){a.textContent=d;a.removeAttribute("hidden");var e=b.getBoundingClientRect();d=c.clientX-
|
|
68
|
+
e.left;c=c.clientY-e.top;e=b.scrollTop;var f=b.scrollLeft;b=$APP.Gm.j(0,d+12+280>b.clientWidth?d-12-280:d+12);a.style.left=""+$APP.P.i(b+f)+"px";return a.style.top=""+$APP.P.i(c+e+12)+"px"},Paa=function(a,b){var c=b.target,d=$APP.l(a,"__xTraceHistoryTooltipEl"),e=$APP.l(a,"__xTraceHistoryTimelineEl");a=eS($APP.l(a,"__xTraceHistoryView"));if($APP.n(hS(c))){c=jS(c);a=FP(a,c);if($APP.n(a)){c=""+$APP.P.i(a.tag);var f=$APP.P,h=f.i;var k=a.componentId;k=$APP.n(k)?" #"+$APP.P.i(k):null;a=c+h.call(f,k)+"\n"+
|
|
69
|
+
$APP.P.i(a.type)+"\n"+$APP.P.i(HP(a))+"\n@ "+$APP.P.i(IP(a.t));b=mS(d,e,b,a)}else b=null;return b}if($APP.n(iS(c))){f=c.getAttribute("data-x-th-bin-record-id");h=c.getAttribute("data-x-th-bin-count");c=c.getAttribute("data-x-th-bin-cat");c=$APP.n($APP.n(f)?$APP.n(h)?c:h:f)?new $APP.N(null,3,[nS,parseInt(f,10),oS,parseInt(h,10),ZP,$APP.Xg.i(c)],null):null;if($APP.n(c)){f=$APP.H(c);h=$APP.C(f,nS);c=$APP.C(f,oS);f=$APP.C(f,ZP);a=FP(a,h);if($APP.n(a)){h=""+$APP.P.i(a.tag);k=$APP.P;var m=k.i;var q=a.componentId;
|
|
70
|
+
q=$APP.n(q)?" #"+$APP.P.i(q):null;a=h+m.call(k,q)+"\n"+$APP.P.i(c)+" "+$APP.P.i($APP.y.j(1,c)?"record":"records")+" · "+$APP.P.i($APP.Dg($APP.n(f)?f:xP))+"\n@ "+$APP.P.i(IP(a.t));b=mS(d,e,b,a)}else b=null;return b}return null}return d.setAttribute("hidden","")},pS=function(a,b,c,d,e,f){a:switch(b=b instanceof $APP.F?b.ea:null,b){case "order":d=$APP.w(c);e=$APP.Gm.j(0,e-16);d===0||d<0?f=null:$APP.y.j(1,d)||e===0?f=0:(f=$APP.Hm.j($APP.Gm.j((f-8)/e,0),1),f=Math.round(f*(d-1)));c=$APP.n(f)?$APP.B(c,f,
|
|
71
|
+
null):null;break a;case "time":var h=$APP.H(d);d=$APP.C(h,QP);b=$APP.C(h,SP);var k=$APP.Gm.j(0,e-16);h==null||d==null||b==null?f=0:e===0||e<0||k===0?f=d:(f=$APP.Hm.j($APP.Gm.j((f-8)/k,0),1),f=d+f*b);c=VP(c,f);break a;default:throw Error("No matching clause: "+$APP.P.i(b));}return $APP.n(c)?(dS(a,c.id),gS(a)):null},Qaa=function(a,b,c){function d(x){return pS(a,k,q,u,f,x.clientX-e.left)}c.preventDefault();b.setPointerCapture(c.pointerId);var e=b.getBoundingClientRect(),f=$APP.Gm.j(200,b.clientWidth),
|
|
72
|
+
h=$APP.l(a,"__xTraceHistoryFilter"),k=function(){var x=$APP.l(a,"__xTraceHistoryAxisMode");return $APP.n(x)?x:$APP.Cp}(),m=eS($APP.l(a,"__xTraceHistoryView")),q=EP(m,$APP.Vk.m(h,CP,aS)),u=TP(q);pS(a,k,q,u,f,c.clientX-e.left);c=function z(){b.removeEventListener("pointermove",d);b.removeEventListener("pointerup",z);return b.removeEventListener("pointercancel",z)};b.addEventListener("pointermove",d);b.addEventListener("pointerup",c);return b.addEventListener("pointercancel",c)},qS=function(a,b){var c=
|
|
73
|
+
$APP.l(a,"__xTraceHistoryFilter"),d=eS($APP.l(a,"__xTraceHistoryView"));c=EP(d,$APP.Vk.m(c,CP,aS));d=RR(a);a:if($APP.r(c)){if(d!=null)b:if(typeof d==="number"){for(var e=$APP.w(c),f=0;;){if(f>=e){d=null;break b}if($APP.y.j(d,$APP.vc(c,f).id)){d=f;break b}f+=1}d=void 0}else d=null;else d=null;if(d==null)switch(b=b instanceof $APP.F?b.ea:null,b){case "next":b=$APP.t(c);break a;case "prev":b=$APP.Nc(c);break a;default:throw Error("No matching clause: "+$APP.P.i(b));}else b=$APP.y.j(b,$APP.qp)?$APP.C(c,
|
|
74
|
+
d+1):$APP.C(c,d-1)}else b=null;return $APP.n(b)?(dS(a,b.id),gS(a)):null},rS=function(a){var b=$APP.E(a==null?null:a.isContentEditable);b?a=b:(a=a==null?null:a.tagName,a=$APP.$c(Raa,a==null?null:a.toLowerCase()));return a},Saa=function(a,b){if(rS(b.target))return null;switch(b.key){case "ArrowRight":return b.preventDefault(),qS(a,$APP.qp);case "ArrowLeft":return b.preventDefault(),qS(a,$APP.Vo);default:return null}},Taa=function(a,b,c){function d(h){h=$APP.Gm.j(60,f+(e-h.clientY));return a.style.height=
|
|
75
|
+
""+$APP.P.i(h)+"px"}c.preventDefault();b.setPointerCapture(c.pointerId);b.classList.add("dragging");var e=c.clientY,f=a.offsetHeight;c=function k(){b.removeEventListener("pointermove",d);b.removeEventListener("pointerup",k);b.removeEventListener("pointercancel",k);return b.classList.remove("dragging")};b.addEventListener("pointermove",d);b.addEventListener("pointerup",c);return b.addEventListener("pointercancel",c)},Uaa=function(a){if(a==null||$APP.y.j("",a))a=null;else if(PO(a,".trace.json")){var b=
|
|
76
|
+
$APP.w(a)-11;a=a.substring(0,b)}else PO(a,".json")&&(b=$APP.w(a)-5,a=a.substring(0,b));return a},tS=function(a,b){var c=$APP.l(a,"__xTraceHistoryHintEl"),d=vQ(a,sS);typeof d==="number"&&clearTimeout(d);c.textContent=b;c.classList.add("error");b=setTimeout(function(){c.classList.remove("error");wQ(a,sS,null);return gS(a)},4E3);return wQ(a,sS,b)},vS=function(a,b){var c=new FileReader,d=Uaa(b.name);c.onload=function(){var e=uS.j(c.result,d);e!=null?($APP.l(a,"__xTraceHistoryHintEl").classList.remove("error"),
|
|
77
|
+
$APP.R(a,"__xTraceHistoryView",new $APP.K(null,2,5,$APP.M,[sQ,e],null)),e=gS(a)):e=tS(a,"Import failed — see console for details.");return e};c.onerror=function(){return tS(a,"Could not read file.")};return c.readAsText(b)},wS=function(a){a=a.dataTransfer;return $APP.n(a)?a.types.includes("Files"):null},Vaa=function(a,b){var c=a.shadowRoot;a=$APP.n(c)?c:a.attachShadow({mode:"open"});if(c==null){c="\x3cstyle\x3e"+$APP.P.i(":host {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n width: min(420px, calc(100vw - 1rem));\n z-index: 1999999;\n font: 11px/1.4 ui-monospace, 'SF Mono', 'Cascadia Code', 'Consolas', monospace;\n color: #cdd6f4;\n pointer-events: auto;\n /* The width transition makes the collapse / expand toggle feel\n responsive without being slow. The dock is otherwise position:\n fixed so transitioning width doesn't reflow the host page. */\n transition: width 160ms ease;\n}\n/* Collapsed mode: shrink the host to a thin vertical strip so the\n user can reach components the full dock would otherwise cover.\n The only interactive element left is the collapse-toggle button,\n which expands the dock back to full width when clicked. */\n:host(.collapsed) {\n width: 32px;\n}\n:host(.collapsed) .dock \x3e *:not(.header) { display: none; }\n:host(.collapsed) .header {\n flex-direction: column;\n align-items: center;\n padding: 8px 0;\n gap: 4px;\n}\n:host(.collapsed) .header \x3e *:not([data-x-th-action\x3d'collapse']) {\n display: none;\n}\n/* Causality mode: hide the axis-mode select (Order / Time only\n affects the timeline pane, so it's noise in causality view). */\n:host(.causality-mode) [data-x-th-axis] {\n display: none;\n}\n@media (prefers-reduced-motion: reduce) {\n :host { transition: none; }\n}\n.dock {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #11111b;\n border-left: 1px solid rgba(59,130,246,0.6);\n box-shadow: -4px 0 20px rgba(0,0,0,0.4);\n /* Anchor for the absolutely-positioned drop-overlay added in PR 11\n so its `inset: 0` reaches the dock edges. */\n position: relative;\n}\n.header {\n display: flex;\n /* Wrap so the count + action buttons survive narrow viewports\n (`min(420px, calc(100vw - 1rem))` reaches 304px at 320px screens,\n which is too tight for four action buttons + title + count on\n one row). */\n flex-wrap: wrap;\n align-items: center;\n gap: 8px;\n padding: 8px 10px;\n background: rgba(59,130,246,0.15);\n border-bottom: 1px solid rgba(59,130,246,0.3);\n flex: 0 0 auto;\n}\n.title { font-weight: 700; color: #89b4fa; font-size: 12px; }\n.count { color: #6c7086; margin-left: auto; }\n.filters {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px 12px;\n padding: 6px 10px;\n border-bottom: 1px solid rgba(255,255,255,0.06);\n flex: 0 0 auto;\n}\n/* The tag dropdown is an \x3cx-select\x3e; its own shadow brings styling.\n We just constrain its width and font so it matches the dock's\n ui-monospace 11px tone. */\n.filters x-select {\n font-size: 11px;\n max-width: 140px;\n}\n/* x-checkbox has no slot for its label, so the visible text sits\n next to the checkbox inside a \x3clabel\x3e wrapper. The label uses\n inline-flex to keep the checkbox + text on one row, with a small\n gap. Cursor: pointer mirrors native checkbox-label affordance. */\n.filters label.cat {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: #a6adc8;\n font-size: 10px;\n cursor: pointer;\n user-select: none;\n}\n/* PR 16 — search input. x-search-field brings its own theming via its\n shadow DOM; the dock just constrains the host width so it shares\n the filter row's monospace tone with the tag dropdown. */\n.filters x-search-field {\n font-size: 11px;\n flex: 1 1 140px;\n min-width: 100px;\n max-width: 240px;\n}\n/* Session strip: thin row above the filter row listing the live view\n plus any captured session as a clickable chip. Hidden when the only\n chip is Live (no sessions yet) so the dock stays compact. Scrolls\n horizontally if the chip count overflows the dock width. */\n.sessions {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n background: rgba(0,0,0,0.15);\n border-bottom: 1px solid rgba(255,255,255,0.04);\n flex: 0 0 auto;\n overflow-x: auto;\n white-space: nowrap;\n}\n.sessions[hidden] { display: none; }\n.session-chip {\n flex: 0 0 auto;\n background: rgba(255,255,255,0.04);\n color: #a6adc8;\n border: 1px solid rgba(255,255,255,0.08);\n border-radius: 3px;\n padding: 1px 6px;\n font: inherit;\n font-size: 10px;\n cursor: pointer;\n user-select: none;\n}\n.session-chip:hover { background: rgba(59,130,246,0.12); color: #cdd6f4; }\n.session-chip.active {\n background: rgba(59,130,246,0.22);\n border-color: rgba(59,130,246,0.6);\n color: #89b4fa;\n font-weight: 600;\n}\n/* Imported traces are visually distinct from locally-captured\n sessions: amber border instead of blue, plus a small close button\n inside the chip so the user can drop the import without clearing\n live state. */\n.session-chip.import {\n border-color: rgba(249,226,175,0.45);\n color: #f9e2af;\n}\n.session-chip.import.active {\n background: rgba(249,226,175,0.18);\n border-color: rgba(249,226,175,0.7);\n color: #f9e2af;\n}\n.session-chip.import .chip-close {\n background: transparent;\n border: none;\n color: inherit;\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n line-height: 1;\n padding: 0 0 0 6px;\n margin: 0;\n opacity: 0.6;\n}\n.session-chip.import .chip-close:hover { opacity: 1; }\n.session-chip .live-dot {\n display: inline-block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: #f38ba8;\n margin-right: 4px;\n vertical-align: middle;\n animation: x-th-pulse 1s ease-in-out infinite;\n}\n@keyframes x-th-pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.35; }\n}\n@media (prefers-reduced-motion: reduce) {\n .session-chip .live-dot { animation: none; }\n}\n.timeline {\n flex: 1 1 auto;\n overflow: auto;\n min-height: 0;\n position: relative;\n /* Transparent border reserves 2px so the focus indicator below doesn't\n overlap the leftmost pixels of lane labels or shift content layout. */\n border: 2px solid transparent;\n box-sizing: border-box;\n}\n.timeline-body {\n display: flex;\n align-items: stretch;\n min-height: 100%;\n}\n.lanes {\n flex: 0 0 110px;\n display: flex;\n flex-direction: column;\n border-right: 1px solid rgba(255,255,255,0.06);\n background: #11111b;\n position: sticky;\n left: 0;\n z-index: 1;\n}\n.lane-label {\n height: 20px;\n padding: 0 8px;\n display: flex;\n align-items: center;\n font-size: 11px;\n color: #a6adc8;\n border-bottom: 1px solid rgba(255,255,255,0.04);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n user-select: none;\n}\n.lane-label:hover { background: rgba(59,130,246,0.08); color: #cdd6f4; }\n.lane-label.active {\n background: rgba(59,130,246,0.18);\n color: #89b4fa;\n font-weight: 600;\n}\n.lane-label .cid { color: #6c7086; margin-left: 4px; }\n.svg-pane {\n flex: 1 1 auto;\n min-width: 0;\n display: block;\n}\nsvg.timeline-svg {\n display: block;\n background:\n repeating-linear-gradient(\n to bottom,\n transparent 0,\n transparent 19px,\n rgba(255,255,255,0.03) 19px,\n rgba(255,255,255,0.03) 20px);\n}\n.dot { cursor: pointer; transition: r 80ms ease; }\n.dot:hover { stroke: #fff; stroke-width: 1; }\n.dot.selected { stroke: #fff; stroke-width: 1.5; }\n/* Heatmap bins (PR 18). Each lane that exceeds the density threshold\n renders as a row of these rects rather than individual dots; the\n per-bin fill-opacity is set inline by the renderer (scales with\n the bin's record count relative to the lane's max). */\n.density-bin {\n cursor: pointer;\n transition: stroke 80ms ease, fill-opacity 80ms ease;\n}\n.density-bin:hover {\n stroke: #fff;\n stroke-width: 0.5;\n}\n/* Thin pink bar drawn at the selected record's exact x inside its\n bin — keeps the scrubber-style highlight in dense lanes without\n obscuring the bin's category colour. */\nline.density-selected {\n stroke: #f5c2e7;\n stroke-width: 2;\n pointer-events: none;\n}\nline.scrubber {\n stroke: #f5c2e7;\n stroke-width: 1.5;\n stroke-dasharray: 4 2;\n pointer-events: none;\n}\n.svg-pane { cursor: crosshair; }\n.timeline:focus {\n outline: none;\n border-color: #89b4fa;\n}\n.tooltip {\n position: absolute;\n background: #1e1e2e;\n border: 1px solid rgba(59,130,246,0.6);\n border-radius: 4px;\n padding: 4px 8px;\n font-size: 10px;\n white-space: pre-wrap;\n pointer-events: none;\n max-width: 280px;\n color: #cdd6f4;\n z-index: 10;\n box-shadow: 0 4px 12px rgba(0,0,0,0.5);\n}\n.timeline-empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n width: 100%;\n}\n/* Causality DAG pane (PR 17). Shares the flexible vertical slot with\n .timeline — render! toggles which one is hidden by dock-mode. The\n scrollable container holds an inner \x3csvg\x3e sized to the tree's\n bounding box so the scrollbars correctly reflect off-screen depth\n and breadth. */\n.causality {\n flex: 1 1 auto;\n overflow: auto;\n min-height: 0;\n position: relative;\n background: #11111b;\n border: 2px solid transparent;\n box-sizing: border-box;\n}\n.causality:focus { outline: none; border-color: #89b4fa; }\n.causality[hidden] { display: none; }\n.timeline[hidden] { display: none; }\n.causality-empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n width: 100%;\n}\n/* Leaf-hint banner rendered ABOVE the SVG when the tree has only\n one node. Pinned via sticky positioning so it stays visible even\n when the user scrolls the pane (the lone node sits at the\n padded origin and could be obscured by the banner otherwise). */\n.causality-leaf-hint {\n position: sticky;\n top: 0;\n left: 0;\n z-index: 1;\n background: rgba(249,226,175,0.10);\n border-bottom: 1px solid rgba(249,226,175,0.35);\n color: #f9e2af;\n font-size: 10px;\n padding: 6px 10px;\n line-height: 1.4;\n}\nsvg.causality-svg { display: block; }\nsvg.causality-svg .edge {\n stroke: rgba(255,255,255,0.18);\n stroke-width: 1;\n fill: none;\n}\nsvg.causality-svg .node-rect {\n fill: rgba(255,255,255,0.04);\n stroke: rgba(255,255,255,0.12);\n stroke-width: 1;\n cursor: pointer;\n rx: 4;\n ry: 4;\n transition: fill 80ms ease, stroke 80ms ease;\n}\nsvg.causality-svg .node-rect:hover {\n fill: rgba(59,130,246,0.16);\n stroke: rgba(59,130,246,0.6);\n}\nsvg.causality-svg .node-rect.selected {\n fill: rgba(245,194,231,0.18);\n stroke: #f5c2e7;\n stroke-width: 1.5;\n}\nsvg.causality-svg .node-dot {\n pointer-events: none;\n}\nsvg.causality-svg .node-text {\n fill: #cdd6f4;\n font: 10px ui-monospace, 'SF Mono', 'Cascadia Code', 'Consolas', monospace;\n pointer-events: none;\n dominant-baseline: middle;\n}\nsvg.causality-svg .node-text.id {\n fill: #a6adc8;\n font-size: 9px;\n}\n.splitter {\n flex: 0 0 auto;\n height: 4px;\n background: rgba(255,255,255,0.04);\n cursor: ns-resize;\n touch-action: none;\n transition: background 120ms ease;\n}\n.splitter:hover, .splitter.dragging { background: rgba(59,130,246,0.6); }\n.detail {\n background: #181825;\n border-top: 1px solid rgba(59,130,246,0.2);\n padding: 8px 10px;\n font-size: 10px;\n color: #cdd6f4;\n flex: 0 0 auto;\n height: 35vh;\n min-height: 60px;\n max-height: 80%;\n overflow-y: auto;\n}\n.detail-json {\n margin: 0 0 8px 0;\n font: inherit;\n white-space: pre-wrap;\n word-break: break-all;\n color: #a6e3a1;\n}\n.detail-section { margin-top: 6px; }\n.detail-label {\n color: #89b4fa;\n font-weight: 600;\n margin-bottom: 2px;\n font-size: 10px;\n letter-spacing: 0.02em;\n}\n/* The host is an \x3cx-button\x3e; its own shadow brings background, hover,\n border-radius, etc. We keep block-layout + width on the host so each\n link fills its row, and reach into the button's `label` part to add\n ellipsis truncation (the summary string can exceed the dock width). */\n.detail-link {\n display: block;\n width: 100%;\n margin: 2px 0;\n}\n.detail-link::part(label) {\n display: block;\n min-width: 0;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.detail-link::part(button) {\n width: 100%;\n justify-content: flex-start;\n}\n.detail-empty { color: #6c7086; font-style: italic; font-size: 10px; }\n.empty {\n color: #6c7086;\n font-style: italic;\n text-align: center;\n padding: 20px;\n}\n.hint { color: #6c7086; font-size: 10px; padding: 4px 10px; flex: 0 0 auto; }\n.hint.error { color: #f38ba8; }\n/* Drop overlay — covers the whole dock while a file is being hovered.\n pointer-events:none keeps drag events flowing through to the dock root\n so the dragleave/drop bookkeeping doesn't fight the overlay layer. */\n.drop-overlay {\n position: absolute;\n inset: 0;\n background: rgba(249,226,175,0.10);\n border: 2px dashed rgba(249,226,175,0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n color: #f9e2af;\n font-size: 12px;\n font-weight: 600;\n letter-spacing: 0.02em;\n z-index: 100;\n pointer-events: none;\n}\n.drop-overlay[hidden] { display: none; }\n/* The hidden file input is kept off-screen — clicked programmatically\n by the Import button — but we mark it `display:none` to keep it out\n of layout entirely. */\n.import-input { display: none; }")+
|
|
78
|
+
"\x3c/style\x3e";var d=$APP.P,e=d.i;b="\x3cdiv class\x3d'dock'\x3e\x3cdiv class\x3d'header'\x3e\x3cx-button data-x-th-action\x3d'collapse' size\x3d'sm' variant\x3d'ghost' aria-label\x3d'Collapse panel' title\x3d'Collapse / expand panel (Ctrl/Cmd + \\\\)'\x3e«\x3c/x-button\x3e\x3cspan class\x3d'title'\x3ex-trace-history\x3c/span\x3e\x3cx-button data-x-th-action\x3d'pause' size\x3d'sm' variant\x3d'ghost'\x3ePause\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'record' size\x3d'sm' variant\x3d'ghost'\x3eRecord\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'clear' size\x3d'sm' variant\x3d'ghost'\x3eClear\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'export' size\x3d'sm' variant\x3d'ghost' title\x3d'Download trace as .trace.json'\x3eExport\x3c/x-button\x3e\x3cx-button data-x-th-action\x3d'import' size\x3d'sm' variant\x3d'ghost' title\x3d'Load a .trace.json file (or drag-drop one onto the dock)'\x3eImport\x3c/x-button\x3e\x3cspan class\x3d'count' data-x-th-count\x3e0\x3c/span\x3e\x3c/div\x3e\x3cdiv class\x3d'sessions' data-x-th-sessions hidden\x3e\x3c/div\x3e\x3cdiv class\x3d'filters'\x3e\x3cx-select data-x-th-tag size\x3d'sm'\x3e\x3coption value\x3d'all' selected\x3eAll tags\x3c/option\x3e\x3c/x-select\x3e\x3cx-search-field data-x-th-search name\x3d'search' placeholder\x3d'Search records…' autocomplete\x3d'off'\x3e\x3c/x-search-field\x3e"+
|
|
79
|
+
$APP.P.i(yR("events",$APP.$c(b,$APP.Tr)))+$APP.P.i(yR("state",$APP.$c(b,$APP.Br)))+$APP.P.i(yR("dom",$APP.$c(b,xS)))+$APP.P.i(yR("lifecycle",$APP.$c(b,yS)))+"\x3cx-select data-x-th-mode size\x3d'sm'\x3e\x3coption value\x3d'timeline' selected\x3eTimeline\x3c/option\x3e\x3coption value\x3d'causality'\x3eCausality\x3c/option\x3e\x3c/x-select\x3e\x3cx-select data-x-th-axis size\x3d'sm'\x3e\x3coption value\x3d'order' selected\x3eOrder\x3c/option\x3e\x3coption value\x3d'time'\x3eTime\x3c/option\x3e\x3c/x-select\x3e\x3c/div\x3e\x3cdiv class\x3d'timeline' data-x-th-timeline tabindex\x3d'0'\x3e\x3cdiv class\x3d'lanes' data-x-th-lanes\x3e\x3c/div\x3e\x3cdiv class\x3d'svg-pane' data-x-th-svg-pane\x3e\x3c/div\x3e\x3cdiv class\x3d'tooltip' data-x-th-tooltip hidden\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'causality' data-x-th-causality tabindex\x3d'0' hidden\x3e\x3c/div\x3e\x3cdiv class\x3d'splitter' data-x-th-splitter hidden\x3e\x3c/div\x3e\x3cdiv class\x3d'detail' data-x-th-detail hidden\x3e\x3c/div\x3e\x3cdiv class\x3d'hint' data-x-th-hint\x3e\x3c/div\x3e\x3cdiv class\x3d'drop-overlay' data-x-th-drop-overlay hidden\x3eDrop .trace.json to import\x3c/div\x3e\x3cinput class\x3d'import-input' data-x-th-import-input type\x3d'file' accept\x3d'.json,.trace.json,application/json' /\x3e\x3c/div\x3e";
|
|
80
|
+
a.innerHTML=c+e.call(d,b)}return a},Waa=function(a,b){$APP.R(a,"__xTraceHistoryShadow",b);$APP.R(a,"__xTraceHistoryTimelineEl",b.querySelector("[data-x-th-timeline]"));$APP.R(a,"__xTraceHistoryLanesEl",b.querySelector("[data-x-th-lanes]"));$APP.R(a,"__xTraceHistorySvgPaneEl",b.querySelector("[data-x-th-svg-pane]"));$APP.R(a,"__xTraceHistoryTooltipEl",b.querySelector("[data-x-th-tooltip]"));$APP.R(a,"__xTraceHistoryCountEl",b.querySelector("[data-x-th-count]"));$APP.R(a,"__xTraceHistoryDetailEl",b.querySelector("[data-x-th-detail]"));
|
|
81
|
+
$APP.R(a,"__xTraceHistorySplitterEl",b.querySelector("[data-x-th-splitter]"));$APP.R(a,"__xTraceHistoryHintEl",b.querySelector("[data-x-th-hint]"));$APP.R(a,"__xTraceHistoryTagSelectEl",b.querySelector("[data-x-th-tag]"));$APP.R(a,"__xTraceHistoryCausalityEl",b.querySelector("[data-x-th-causality]"));$APP.R(a,"__xTraceHistoryPauseBtn",b.querySelector("[data-x-th-action\x3d'pause']"));$APP.R(a,"__xTraceHistoryRecordBtn",b.querySelector("[data-x-th-action\x3d'record']"));$APP.R(a,"__xTraceHistorySessionsEl",
|
|
82
|
+
b.querySelector("[data-x-th-sessions]"));$APP.R(a,"__xTraceHistoryImportInput",b.querySelector("[data-x-th-import-input]"));$APP.R(a,"__xTraceHistoryDropOverlay",b.querySelector("[data-x-th-drop-overlay]"));$APP.R(a,"__xTraceHistoryCollapseBtn",b.querySelector("[data-x-th-action\x3d'collapse']"))},Xaa=function(a,b,c,d,e,f,h,k){return[[b,"click",function(m){m=m.target;var q=m.closest("[data-x-th-action]");if($APP.n(q))switch(q.getAttribute("data-x-th-action")){case "pause":$APP.n($APP.Qn.i($APP.bb(tP)))?
|
|
83
|
+
eR():dR();break;case "record":kR()!=null?lR():mR();break;case "clear":$APP.R(a,"__xTraceHistoryViewSelected",{});$APP.R(a,"__xTraceHistoryView",$APP.Pn);jR();break;case "export":wR();break;case "import":q=$APP.l(a,"__xTraceHistoryImportInput");$APP.n(q)&&(q.value="",q.click());break;case "collapse":lS(a)}q=m.closest("[data-x-th-import-close]");if($APP.n(q)){q=parseInt(q.getAttribute("data-x-th-import-close"),10);var u=$APP.l(a,"__xTraceHistoryView");tQ(u)&&$APP.y.j(q,uQ(u))&&$APP.R(a,"__xTraceHistoryView",
|
|
84
|
+
$APP.Pn);rR(q)}$APP.n(m.closest("[data-x-th-import-close]"))||(q=m.closest("[data-x-th-session]"),$APP.n(q)&&(q=q.getAttribute("data-x-th-session"),q=$APP.y.j(q,"live")?$APP.Pn:q.lastIndexOf("import:",0)==0?new $APP.K(null,2,5,$APP.M,[sQ,parseInt(q.substring(7),10)],null):new $APP.K(null,2,5,$APP.M,[qQ,parseInt(q,10)],null),$APP.R(a,"__xTraceHistoryView",q),gS(a)));q=m.closest("[data-x-th-lane-tag]");if($APP.n(q)){u=q.getAttribute("data-x-th-lane-tag");q=$APP.l(a,"__xTraceHistoryFilter");var x=cP.i(q);
|
|
85
|
+
u=$APP.y.j(u,x)?null:u;q=$APP.Vk.m(q,cP,u);$APP.R(a,"__xTraceHistoryFilter",q);q=$APP.l(a,"__xTraceHistoryTagSelectEl");$APP.n(q)&&(q.value=$APP.n(u)?u:"all");gS(a)}q=m.closest("[data-x-th-link-id]");$APP.n(q)&&(q=q.getAttribute("data-x-th-link-id"),$APP.n(q)&&(q=parseInt(q,10),$APP.n(isNaN(q))||(dS(a,q),gS(a))));q=hS(m);q=$APP.n(q)?q:iS(m);$APP.n(q)?($APP.n(hS(m))?m=jS(m):$APP.n(iS(m))?(m=m.getAttribute("data-x-th-bin-record-id"),m=$APP.n(m)?parseInt(m,10):null):m=null,q=RR(a),m=$APP.y.j(m,q)?null:
|
|
86
|
+
m,dS(a,m),m=gS(a)):m=null;return m}],[b,"select-change",function(m){var q=m.target;m=m.detail.value;q.getAttribute("data-x-th-tag")!=null?(q=$APP.Vk.m($APP.l(a,"__xTraceHistoryFilter"),cP,$APP.y.j(m,"all")?null:m),$APP.R(a,"__xTraceHistoryFilter",q),q=gS(a)):q=q.getAttribute("data-x-th-mode")!=null?Oaa(a,m):q.getAttribute("data-x-th-axis")!=null?Naa(a,m):null;return q}],[b,"x-checkbox-change",function(m){var q=m.target.getAttribute("data-x-th-cat");if(q!=null){var u=m.detail.checked;m=$APP.l(a,"__xTraceHistoryFilter");
|
|
87
|
+
var x=AP.i(m);x=$APP.n(x)?x:$APP.wg(uP);q=$APP.Xg.i(q);q=$APP.n(u)?$APP.wd.j(x,q):$APP.Fm.j(x,q);m=$APP.Vk.m(m,AP,q);$APP.R(a,"__xTraceHistoryFilter",m);m=gS(a)}else m=null;return m}],[b,"x-search-field-input",function(m){var q=m.target;$APP.n($APP.n(q)?q.hasAttribute("data-x-th-search"):q)?(m=m.detail.value,m=($APP.n(m)?m:"").toLowerCase(),m=$APP.Vk.m($APP.l(a,"__xTraceHistoryFilter"),BP,$APP.y.j("",m)?null:m),$APP.R(a,"__xTraceHistoryFilter",m),m=gS(a)):m=null;return m}],[c,"pointermove",function(m){return Paa(a,
|
|
88
|
+
m)}],[c,"pointerleave",function(){return $APP.l(a,"__xTraceHistoryTooltipEl").setAttribute("hidden","")}],[c,"pointerdown",function(){return c.focus()}],[k,"pointerdown",function(){return k.focus()}],[b,"keydown",function(m){return Saa(a,m)}],[d,"pointerdown",function(m){return Qaa(a,$APP.l(a,"__xTraceHistorySvgPaneEl"),m)}],[e,"pointerdown",function(m){return Taa(f,e,m)}],[h,"change",function(m){m=m.target.files;return m.length>0?vS(a,m[0]):null}],[b,"dragenter",function(m){if($APP.n(wS(m))){m.preventDefault();
|
|
89
|
+
m=$APP.l(a,"__xTraceHistoryDropOverlay");var q=vQ(a,zS);wQ(a,zS,($APP.n(q)?q:0)+1);m=m.removeAttribute("hidden")}else m=null;return m}],[b,"dragover",function(m){$APP.n(wS(m))?(m.preventDefault(),m=m.dataTransfer,m=$APP.n(m)?m.dropEffect="copy":null):m=null;return m}],[b,"dragleave",function(m){if($APP.n(wS(m))){m=$APP.l(a,"__xTraceHistoryDropOverlay");var q=$APP.Gm.j,u=vQ(a,zS);q=q.call($APP.Gm,0,($APP.n(u)?u:0)-1);wQ(a,zS,q);m=q===0?m.setAttribute("hidden",""):null}else m=null;return m}],[b,"drop",
|
|
90
|
+
function(m){$APP.n(wS(m))?(m.preventDefault(),wQ(a,zS,0),$APP.l(a,"__xTraceHistoryDropOverlay").setAttribute("hidden",""),m=m.dataTransfer,m=$APP.n(m)?m.files:null,m=$APP.n($APP.n(m)?m.length>0:m)?vS(a,m[0]):null):m=null;return m}],[document,"keydown",function(m){var q;if(q=$APP.y.j("\\",m.key))q=m.metaKey,q=$APP.n(q)?q:m.ctrlKey,q=$APP.n(q)?$APP.p(m.altKey)&&$APP.p(m.shiftKey)&&!rS(m.target):q;$APP.n(q)?(m.preventDefault(),m=lS(a)):m=null;return m}]]},Yaa=function(a,b){b=Xaa(a,b,$APP.l(a,"__xTraceHistoryTimelineEl"),
|
|
91
|
+
$APP.l(a,"__xTraceHistorySvgPaneEl"),$APP.l(a,"__xTraceHistorySplitterEl"),$APP.l(a,"__xTraceHistoryDetailEl"),$APP.l(a,"__xTraceHistoryImportInput"),$APP.l(a,"__xTraceHistoryCausalityEl"));$APP.R(a,"__xTraceHistoryListeners",b);a:{a=b.length;for(var c=0;;)if(c<a){var d=b[c];d[0].addEventListener(d[1],d[2]);c+=1}else break a}},Zaa=function(a,b){$APP.n($APP.l(a,"__xTraceHistoryFilter"))||$APP.R(a,"__xTraceHistoryFilter",new $APP.N(null,3,[cP,null,AP,b,BP,null],null));$APP.n($APP.l(a,"__xTraceHistoryView"))||
|
|
92
|
+
$APP.R(a,"__xTraceHistoryView",$APP.Pn);$APP.n($APP.l(a,"__xTraceHistoryViewSelected"))||$APP.R(a,"__xTraceHistoryViewSelected",{});$APP.n($APP.l(a,"__xTraceHistoryAxisMode"))||$APP.R(a,"__xTraceHistoryAxisMode",$APP.Cp);$APP.n($APP.l(a,"__xTraceHistoryDockMode"))||$APP.R(a,"__xTraceHistoryDockMode",fS);$APP.l(a,"__xTraceHistoryCollapsed")==null&&$APP.R(a,"__xTraceHistoryCollapsed",!1);kS(a,$APP.E($APP.l(a,"__xTraceHistoryCollapsed")))},$aa=function(a){if($APP.n($APP.l(a,"__xTraceHistoryMounted")))return null;
|
|
93
|
+
a.__xTraceHistoryInternal=!0;var b=yQ().length;caa(function(){var c=vP(),d=Vaa(a,c);Waa(a,d);Zaa(a,c);Yaa(a,d);c=FQ.i(zQ.m(AQ,aaa,function(){var e=$APP.l(a,"__xTraceHistoryView"),f=tR(),h=f.length;var k=vQ(a,AS);k=$APP.n(k)?k:0;h>k?(wQ(a,AS,h),$APP.y.j(e,$APP.Pn)&&yQ().length===0&&$APP.R(a,"__xTraceHistoryView",new $APP.K(null,2,5,$APP.M,[sQ,f[h-1].id],null))):h<k&&wQ(a,AS,h);return gS(a)}));$APP.R(a,"__xTraceHistorySubToken",c);gS(a);return $APP.R(a,"__xTraceHistoryMounted",!0)});return $APP.I(b,
|
|
94
|
+
yQ().length)?console.warn("[x-trace-history] dock mount produced records — internal-host suppression is leaking. ","Wrap dynamic child-component constructors in recorder/with-suppressed-recording!."):null},BS=function(){return $APP.n(document.querySelector("x-trace-history"))?null:document.body.appendChild(document.createElement("x-trace-history"))},CS=function(){if($O()){var a=zQ.B;var b=$APP.l(window,"BAREDOM_TRACE_HISTORY_CAPACITY");b=typeof b==="number"&&b>0?b:5E3;var c=window,d;(d=$APP.y.j("raw",
|
|
95
|
+
$APP.l(c,"BAREDOM_TRACE_HISTORY")))||(c=c.location.search,c=c==null?null:$APP.Mg(aba,c),d=$APP.E(c));a.call(zQ,tP,$APP.Vk,SQ,b,$APP.Ac([kP,d]));YO($APP.bi,$Q);YO($APP.lh,$Q);YO(LQ,0);YO(RQ,$APP.we);faa();YO(ZQ,!0);a=$APP.l(window,"BareDOM");a=$APP.n(a)?a:{};a.traceHistory={records:gaa,sessions:oR,"export":maa,download:wR,stopSession:lR,"import":uS,pause:dR,importRecords:uR,sessionRecords:pR,startSession:mR,components:haa,clear:jR,imports:tR,removeImport:rR,resume:eR};window.BareDOM=a;console.log("%c[BareDOM Trace History]%c Active — see window.BareDOM.traceHistory for the API",
|
|
96
|
+
"color:#3b82f6;font-weight:bold","color:inherit")}$APP.zl();$APP.Fk();$APP.tj();$APP.Pl();$APP.Kh("x-trace-history",bba);return $O()?$APP.n(document.body)?BS():document.addEventListener("DOMContentLoaded",BS,{once:!0}):null},DS=function(){return CS()},UP=function UP(a){switch(arguments.length){case 2:return UP.j(arguments[0],arguments[1]);case 3:return UP.m(arguments[0],arguments[1],arguments[2]);default:for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return UP.B(arguments[0],
|
|
97
|
+
arguments[1],arguments[2],3<c.length?new $APP.$b(c.slice(3),0,null):null)}};UP.j=function(a,b){return b};UP.m=function(a,b,c){return(a.i?a.i(b):a.call(null,b))<(a.i?a.i(c):a.call(null,c))?b:c};UP.B=function(a,b,c,d){return $APP.ya(function(e,f){return UP.m(a,e,f)},UP.m(a,b,c),d)};UP.K=function(a){var b=$APP.t(a),c=$APP.v(a);a=$APP.t(c);var d=$APP.v(c);c=$APP.t(d);d=$APP.v(d);return this.B(b,a,c,d)};UP.M=3;
|
|
98
|
+
var ES=function ES(a){switch(arguments.length){case 0:return ES.H();case 1:return ES.i(arguments[0]);case 2:return ES.j(arguments[0],arguments[1]);default:for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return ES.B(arguments[0],arguments[1],2<c.length?new $APP.$b(c.slice(2),0,null):null)}};ES.H=function(){return 0};ES.i=function(a){return a};ES.j=function(a,b){return a+b};ES.B=function(a,b,c){return $APP.ya(ES,a+b,c)};
|
|
99
|
+
ES.K=function(a){var b=$APP.t(a),c=$APP.v(a);a=$APP.t(c);c=$APP.v(c);return this.B(b,a,c)};ES.M=2;
|
|
100
|
+
var IQ=function IQ(a){switch(arguments.length){case 3:return IQ.m(arguments[0],arguments[1],arguments[2]);case 4:return IQ.J(arguments[0],arguments[1],arguments[2],arguments[3]);case 5:return IQ.da(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]);case 6:return IQ.ua(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4],arguments[5]);default:for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return IQ.B(arguments[0],arguments[1],arguments[2],
|
|
101
|
+
arguments[3],arguments[4],arguments[5],6<c.length?new $APP.$b(c.slice(6),0,null):null)}};IQ.m=function(a,b,c){var d=$APP.Vk.m,e=$APP.C(a,b);c=c.i?c.i(e):c.call(null,e);return d.call($APP.Vk,a,b,c)};IQ.J=function(a,b,c,d){var e=$APP.Vk.m,f=$APP.C(a,b);c=c.j?c.j(f,d):c.call(null,f,d);return e.call($APP.Vk,a,b,c)};IQ.da=function(a,b,c,d,e){var f=$APP.Vk.m,h=$APP.C(a,b);c=c.m?c.m(h,d,e):c.call(null,h,d,e);return f.call($APP.Vk,a,b,c)};
|
|
102
|
+
IQ.ua=function(a,b,c,d,e,f){var h=$APP.Vk.m,k=$APP.C(a,b);c=c.J?c.J(k,d,e,f):c.call(null,k,d,e,f);return h.call($APP.Vk,a,b,c)};IQ.B=function(a,b,c,d,e,f,h){return $APP.Vk.m(a,b,$APP.Zd(c,$APP.C(a,b),d,e,f,$APP.Ac([h])))};IQ.K=function(a){var b=$APP.t(a),c=$APP.v(a);a=$APP.t(c);var d=$APP.v(c);c=$APP.t(d);var e=$APP.v(d);d=$APP.t(e);var f=$APP.v(e);e=$APP.t(f);var h=$APP.v(f);f=$APP.t(h);h=$APP.v(h);return this.B(b,a,c,d,e,f,h)};IQ.M=6;
|
|
103
|
+
var GQ=function GQ(a,b,c){var e=$APP.r(b);b=$APP.t(e);var f=$APP.v(e);if(f){e=$APP.Vk.m;var h=$APP.C(a,b);c=GQ.m?GQ.m(h,f,c):GQ.call(null,h,f,c);a=e.call($APP.Vk,a,b,c)}else a=$APP.Vk.m(a,b,c);return a},zQ=function zQ(a){switch(arguments.length){case 2:return zQ.j(arguments[0],arguments[1]);case 3:return zQ.m(arguments[0],arguments[1],arguments[2]);case 4:return zQ.J(arguments[0],arguments[1],arguments[2],arguments[3]);default:for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;
|
|
104
|
+
else break;return zQ.B(arguments[0],arguments[1],arguments[2],arguments[3],4<c.length?new $APP.$b(c.slice(4),0,null):null)}};zQ.j=function(a,b){if(a instanceof $APP.ke){var c=a.state;b=b.i?b.i(c):b.call(null,c);a=YO(a,b)}else a=$APP.Am(a,b);return a};zQ.m=function(a,b,c){if(a instanceof $APP.ke){var d=a.state;b=b.j?b.j(d,c):b.call(null,d,c);a=YO(a,b)}else a=$APP.Am(a,b,c);return a};
|
|
105
|
+
zQ.J=function(a,b,c,d){if(a instanceof $APP.ke){var e=a.state;b=b.m?b.m(e,c,d):b.call(null,e,c,d);a=YO(a,b)}else a=$APP.Am(a,b,c,d);return a};zQ.B=function(a,b,c,d,e){return a instanceof $APP.ke?YO(a,$APP.Yd(b,a.state,c,d,e)):$APP.Am(a,b,c,d,e)};zQ.K=function(a){var b=$APP.t(a),c=$APP.v(a);a=$APP.t(c);var d=$APP.v(c);c=$APP.t(d);var e=$APP.v(d);d=$APP.t(e);e=$APP.v(e);return this.B(b,a,c,d,e)};zQ.M=4;
|
|
106
|
+
var mP=new $APP.F(null,"start-t","start-t",1829305353),eP=new $APP.F(null,"cause-id","cause-id",-1282947263),aQ=new $APP.F(null,"x-end","x-end",-1725631203),KR=new $APP.F(null,"node-count","node-count",383091297),oP=new $APP.F(null,"start-id","start-id",-456790067),pP=new $APP.F(null,"end-id","end-id",2084513705),RP=new $APP.F(null,"tmax","tmax",2006118392),fS=new $APP.F(null,"timeline","timeline",192903161),oS=new $APP.F(null,"bin-count","bin-count",1792167977),AS=new $APP.F(null,"auto-switch-import",
|
|
107
|
+
"auto-switch-import",-809333661),QR=new $APP.F(null,"causality-needs-fit","causality-needs-fit",1728707358),FR=new $APP.F(null,"to-cy","to-cy",1542880464),ER=new $APP.F(null,"to-cx","to-cx",698995232),TR=new $APP.F(null,"scroll-top","scroll-top",-46723100),UR=new $APP.F(null,"chip-key","chip-key",644014552),QQ=new $APP.F(null,"next-component-id","next-component-id",1588977206),BQ=new $APP.F(null,"pending?","pending?",-2133618792),WQ=new $APP.F(null,"rate-limit","rate-limit",1748082022),QP=new $APP.F(null,
|
|
108
|
+
"tmin","tmin",-39508962),cba=new $APP.F(null,"to-id","to-id",1021626465),GR=new $APP.F(null,"edges","edges",-694791395),FQ=new $APP.F(null,"next-token","next-token",1432414974),bQ=new $APP.F(null,"t-min","t-min",-488887638),jP=new $APP.F(null,"user-agent","user-agent",1220426212),cS=new $APP.F(null,"causality","causality",-712927373),kP=new $APP.F(null,"forensic?","forensic?",188264321),cP=new $APP.F(null,"tag","tag",-1290361223),BP=new $APP.F(null,"search","search",1564939822),qQ=new $APP.F(null,
|
|
109
|
+
"session","session",1008279103),JQ=new $APP.F(null,"next-id","next-id",-224240762),AP=new $APP.F(null,"categories","categories",178386610),JR=new $APP.F(null,"causality-layout","causality-layout",-1264013405),cQ=new $APP.F(null,"t-max","t-max",-949530573),SQ=new $APP.F(null,"capacity","capacity",72689734),VR=new $APP.F(null,"recording?","recording?",-1477514924),YP=new $APP.F(null,"records","records",1326822832),AR=new $APP.F(null,"time","time",1385887882),ZP=new $APP.F(null,"dominant-cat","dominant-cat",
|
|
110
|
+
-914257775),yS=new $APP.F(null,"lifecycle","lifecycle",341496205),xP=new $APP.F(null,"other","other",995793544),qR=new $APP.F("baredom.dev.x-trace-history.model","parse-error","baredom.dev.x-trace-history.model/parse-error",840657481),HQ=new $APP.F(null,"new?","new?",777958557),Baa=new $APP.F(null,"max-depth","max-depth",127060793),NP=new $APP.F(null,"min-t","min-t",-1349871659),lQ=new $APP.F(null,"capped?","capped?",-65680820),cR=new $APP.F(null,"imports","imports",-1249933394),XP=new $APP.F(null,
|
|
111
|
+
"bin-i","bin-i",791326307),lP=new $APP.F(null,"first-seen","first-seen",390191468),WR=new $APP.F(null,"import?","import?",-40157302),IR=new $APP.F(null,"cy","cy",755331060),kQ=new $APP.F(null,"children","children",-940561982),HR=new $APP.F(null,"cx","cx",1272694324),xS=new $APP.F(null,"dom","dom",-1236537922),hR=new $APP.F(null,"next-session-id","next-session-id",1944278844),$P=new $APP.F(null,"x-start","x-start",1183238797),SR=new $APP.F(null,"scroll-left","scroll-left",-211761103),sR=new $APP.F(null,
|
|
112
|
+
"imported-at","imported-at",-1157103926),OP=new $APP.F(null,"lane-id","lane-id",2005926623),CP=new $APP.F(null,"haystack-fn","haystack-fn",1813797862),FS=new $APP.F(null,"depth","depth",1768663640),nS=new $APP.F(null,"record-id","record-id",-1468971877),iR=new $APP.F(null,"active-session-id","active-session-id",943086451),CR=new $APP.F(null,"from-cx","from-cx",-293616201),DR=new $APP.F(null,"from-cy","from-cy",1126835724),gR=new $APP.F(null,"sessions","sessions",-699316392),iP=new $APP.F(null,"exported-at",
|
|
113
|
+
"exported-at",1661975683),dP=new $APP.F(null,"component-id","component-id",1551113783),sS=new $APP.F(null,"import-error","import-error",1672727808),zS=new $APP.F(null,"drag-depth","drag-depth",-226189617),dba=new $APP.F(null,"from-id","from-id",-106962526),YR=new $APP.F(null,"import-id","import-id",940580069),nQ=new $APP.F(null,"nodes","nodes",-2099585805),nP=new $APP.F(null,"end-t","end-t",-218701242),CQ=new $APP.F(null,"by-token","by-token",-1485378511),GS=new $APP.F(null,"next-import-id","next-import-id",
|
|
114
|
+
287496955),jQ=new $APP.F(null,"record","record",-779106859),SP=new $APP.F(null,"span","span",1394872991),LP=new $APP.F("baredom.dev.x-trace-history.model","document","baredom.dev.x-trace-history.model/document",-1776453896),TQ=new $APP.F(null,"components","components",-1073188942),sQ=new $APP.F(null,"import","import",-1399500709),bR=new $APP.F(null,"envelope","envelope",-236796318);var fR=$APP.tf.j($APP.Om,$APP.we),ZO=VO("(?:^\\?|\x26)"+$APP.P.i("baredom-trace-history")+"(?:\x3d|\x26|$)"),aba=VO("(?:^\\?|\x26)"+$APP.P.i("baredom-trace-history")+"\x3d"+$APP.P.i("raw")+"(?:\x26|$)"),wP=new $APP.N(null,4,[$APP.Tr,new $APP.rg(null,new $APP.N(null,3,["event/dispatch",null,"event/dispatch-document",null,"event/dispatch-cancelable",null],null),null),$APP.Br,new $APP.rg(null,new $APP.N(null,1,["state/instance-field-set",null],null),null),xS,new $APP.rg(null,new $APP.N(null,2,["dom/attribute-removed",
|
|
115
|
+
null,"dom/attribute-set",null],null),null),yS,new $APP.rg(null,new $APP.N(null,3,["lifecycle/attribute-changed",null,"lifecycle/connected",null,"lifecycle/disconnected",null],null),null)],null),uP=new $APP.K(null,4,5,$APP.M,[$APP.Tr,$APP.Br,xS,yS],null),JP=new $APP.N(null,5,[$APP.Tr,"#94e2d5",$APP.Br,"#f9e2af",xS,"#fab387",yS,"#cba6f7",xP,"#6c7086"],null),iQ=function iQ(a,b){return $APP.zd(b,new $APP.Cd(null,function(){return $APP.se(function(d){return iQ.j?iQ.j(a,d):iQ.call(null,a,d)},$APP.Ac([hQ(a,
|
|
116
|
+
b.id)]))},null))},LR=function LR(a){return $APP.ya(ES,0,$APP.oe.j(LR,kQ.i(a)))+1},MR=function MR(a){return $APP.Pc(kQ.i(a))?0:$APP.Vd($APP.Gm,$APP.oe.j(MR,kQ.i(a)))+1},NR=function NR(a,b,c){var e=jQ.i(a),f=kQ.i(a);a=30+b*56;if($APP.Pc(f))return new $APP.K(null,2,5,$APP.M,[new $APP.N(null,6,[$APP.ar,e.id,jQ,e,HR,c+70,IR,a,FS,b,kQ,$APP.we],null),c+158],null);f=$APP.ya(function(m,q){var u=$APP.B(m,0,null);m=$APP.B(m,1,null);var x=b+1;m=NR.m?NR.m(q,x,m):NR.call(null,q,x,m);q=$APP.B(m,0,null);m=$APP.B(m,
|
|
117
|
+
1,null);return new $APP.K(null,2,5,$APP.M,[$APP.wd.j(u,q),m],null)},new $APP.K(null,2,5,$APP.M,[$APP.we,c],null),f);c=$APP.B(f,0,null);f=$APP.B(f,1,null);var h=HR.i($APP.t(c)),k=HR.i($APP.Ec(c));return new $APP.K(null,2,5,$APP.M,[new $APP.N(null,6,[$APP.ar,e.id,jQ,e,HR,(h+k)/2,IR,a,FS,b,kQ,c],null),f],null)},OR=function OR(a){return $APP.tf.j(new $APP.K(null,1,5,$APP.M,[$APP.Em.j(a,kQ)],null),$APP.se(OR,$APP.Ac([kQ.i(a)])))},PR=function PR(a){var c=$APP.ar.i(a),d=HR.i(a),e=IR.i(a);return $APP.Oe($APP.se(function(f){return $APP.zd(new $APP.N(null,
|
|
118
|
+
6,[dba,c,CR,d,DR,e,cba,$APP.ar.i(f),ER,HR.i(f),FR,IR.i(f)],null),PR.i?PR.i(f):PR.call(null,f))},$APP.Ac([kQ.i(a)])))};var tP=$APP.le($APP.Yf([kP,SQ,WQ,JQ,$APP.Qn,cR,YP,TQ,iR,QQ,gR,GS,hR],[!1,5E3,$APP.ce,0,!1,$APP.we,fR,$APP.ce,null,0,$APP.we,0,0])),AQ=$APP.le(new $APP.N(null,3,[FQ,0,BQ,!1,CQ,$APP.ce],null)),RQ=$APP.le($APP.we),aR=$APP.le(null),ZQ=$APP.le(!1),LQ=$APP.le(0),xQ=$APP.le([null,null]),daa=new $APP.rg(null,new $APP.N(null,3,[$APP.hi,null,$APP.ci,null,$APP.gi,null],null),null),eaa=new $APP.rg(null,new $APP.N(null,3,[$APP.qi,null,$APP.si,null,$APP.li,null],null),null),uS=function uS(a){switch(arguments.length){case 1:return uS.i(arguments[0]);
|
|
119
|
+
case 2:return uS.j(arguments[0],arguments[1]);default:throw Error(["Invalid arity: ",arguments.length].join(""));}};uS.i=function(a){return uS.j(a,null)};
|
|
120
|
+
uS.j=function(a,b){a=laa(a);var c=$APP.H(a);a=$APP.C(c,$APP.Cq);c=$APP.C(c,$APP.On);if($APP.n(c))return console.warn("[x-trace-history] import rejected:",c),null;c=performance.now();var d=GS.i($APP.bb(tP));b=b==null||$APP.y.j("",b)?"Import "+$APP.P.i(d):b;var e=new $APP.N(null,4,[$APP.ar,d,$APP.bj,b,sR,c,bR,a],null);zQ.j(tP,function(f){return IQ.m(IQ.J(f,cR,$APP.wd,e),GS,RO)});EQ();return d};uS.M=2;var naa=RegExp("\x26","g"),oaa=RegExp("\x3c","g"),paa=RegExp("\x3e","g"),qaa=RegExp('"',"g"),raa=RegExp("'","g"),$R=new WeakMap,Raa=new $APP.rg(null,new $APP.N(null,5,["x-select",null,"select",null,"input",null,"textarea",null,"x-checkbox",null],null),null),bba=new $APP.N(null,5,[$APP.yh,!0,$APP.Bh,[],$APP.zh,function(a){return $aa(a)},$APP.qh,function(a){var b=$APP.l(a,"__xTraceHistorySubToken");$APP.n(b)&&zQ.B(AQ,IQ,CQ,$APP.Em,$APP.Ac([b]));b=vQ(a,sS);$APP.n(b)&&typeof b==="number"&&clearTimeout(b);
|
|
121
|
+
b=$APP.l(a,"__xTraceHistoryListeners");if($APP.n(b)){for(var c=b.length,d=0;;)if(d<c){var e=b[d];e[0].removeEventListener(e[1],e[2]);d+=1}else break;$APP.R(a,"__xTraceHistoryListeners",null)}$APP.R(a,"__xTraceHistorySubToken",null);wQ(a,sS,null);return $APP.R(a,"__xTraceHistoryMounted",null)},$APP.ph,function(){return null}],null);$APP.fa("baredom.exports.x_trace_history.init",DS);CS();export const init=DS;
|