@vanelsas/baredom 4.0.0-alpha.0 → 4.0.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 +342 -6
- package/README.md +23 -10
- package/custom-elements.json +17352 -4514
- package/dist/baredom.d.ts +92 -94
- package/dist/baremirror-alpha.js +25 -0
- package/dist/base.js +700 -605
- package/dist/integrity.json +113 -113
- package/dist/requests.d.ts +3 -0
- package/dist/requests.js +35 -0
- package/dist/x-alert.js +17 -17
- package/dist/x-avatar-group.js +10 -9
- package/dist/x-avatar.js +14 -14
- package/dist/x-badge.js +9 -9
- package/dist/x-bento-grid.d.ts +5 -0
- package/dist/x-bento-grid.js +6 -5
- package/dist/x-bento-item.d.ts +3 -0
- package/dist/x-bento-item.js +4 -4
- package/dist/x-breadcrumbs.d.ts +6 -5
- package/dist/x-breadcrumbs.js +16 -14
- package/dist/x-button.d.ts +4 -0
- package/dist/x-button.js +1 -1
- package/dist/x-calendar.js +42 -39
- package/dist/x-cancel-dialogue.js +16 -14
- package/dist/x-card.d.ts +4 -0
- package/dist/x-card.js +7 -7
- package/dist/x-carousel.js +37 -35
- package/dist/x-chart.d.ts +2 -0
- package/dist/x-chart.js +48 -47
- package/dist/x-checkbox.d.ts +11 -4
- package/dist/x-checkbox.js +1 -1
- package/dist/x-chip.js +1 -1
- package/dist/x-code.js +29 -27
- package/dist/x-collapse.js +11 -11
- package/dist/x-color-picker.d.ts +7 -0
- package/dist/x-color-picker.js +48 -46
- package/dist/x-combobox.d.ts +12 -4
- package/dist/x-combobox.js +36 -30
- package/dist/x-command-palette.d.ts +9 -1
- package/dist/x-command-palette.js +32 -28
- package/dist/x-confetti.js +24 -24
- package/dist/x-container.d.ts +4 -0
- package/dist/x-container.js +6 -5
- package/dist/x-context-menu.js +20 -20
- package/dist/x-copy.js +1 -1
- package/dist/x-currency-field.d.ts +5 -0
- package/dist/x-currency-field.js +26 -24
- package/dist/x-date-picker.d.ts +20 -2
- package/dist/x-date-picker.js +46 -39
- package/dist/x-divider.js +9 -10
- package/dist/x-drag-panel.d.ts +45 -0
- package/dist/x-drag-panel.js +37 -0
- package/dist/x-drawer.js +12 -11
- package/dist/x-drop-zone.d.ts +49 -0
- package/dist/x-drop-zone.js +12 -0
- package/dist/x-dropdown.js +12 -12
- package/dist/x-fieldset.js +6 -6
- package/dist/x-file-download.d.ts +4 -0
- package/dist/x-file-download.js +15 -7
- package/dist/x-file-upload.d.ts +10 -5
- package/dist/x-file-upload.js +27 -23
- package/dist/x-floating-panel.d.ts +50 -0
- package/dist/x-floating-panel.js +25 -0
- package/dist/x-form-field.d.ts +11 -1
- package/dist/x-form-field.js +18 -15
- package/dist/x-form.js +10 -11
- package/dist/x-gaussian-blur.js +13 -14
- package/dist/x-grid.d.ts +9 -0
- package/dist/x-grid.js +8 -6
- 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 +19 -17
- package/dist/x-kbd.js +16 -16
- package/dist/x-kinetic-canvas.js +26 -26
- package/dist/x-kinetic-font.js +27 -27
- package/dist/x-kinetic-typography.js +35 -35
- package/dist/x-liquid-dock.js +34 -34
- package/dist/x-liquid-fill.js +42 -42
- package/dist/x-liquid-glass.js +42 -41
- package/dist/x-menu-item.js +9 -8
- package/dist/x-menu.js +10 -10
- package/dist/x-metaball-cursor.js +23 -23
- package/dist/x-modal.js +13 -12
- package/dist/x-morph-stack.js +38 -37
- package/dist/x-multi-combobox.d.ts +13 -5
- package/dist/x-multi-combobox.js +42 -36
- package/dist/x-navbar.js +16 -15
- package/dist/x-neural-glow.js +31 -30
- package/dist/x-notification-center.js +9 -9
- package/dist/x-organic-divider.js +18 -18
- package/dist/x-organic-progress.js +35 -35
- package/dist/x-organic-shape.js +13 -14
- package/dist/x-otp-input.d.ts +5 -0
- package/dist/x-otp-input.js +23 -22
- package/dist/x-pagination.js +16 -14
- package/dist/x-particle-button.d.ts +10 -1
- package/dist/x-particle-button.js +55 -51
- package/dist/x-popover.js +28 -27
- package/dist/x-progress-circle.js +8 -9
- package/dist/x-progress.js +8 -8
- package/dist/x-proximity-list.js +20 -20
- package/dist/x-radio.d.ts +10 -3
- package/dist/x-radio.js +13 -11
- package/dist/x-range-slider.d.ts +7 -0
- package/dist/x-range-slider.js +31 -28
- package/dist/x-rating.d.ts +7 -0
- package/dist/x-rating.js +25 -23
- package/dist/x-ripple-effect.js +10 -10
- package/dist/x-scroll-parallax.js +17 -17
- package/dist/x-scroll-stack.js +17 -17
- package/dist/x-scroll-story.js +33 -33
- package/dist/x-scroll-timeline.js +46 -46
- package/dist/x-scroll.js +39 -38
- package/dist/x-search-field.d.ts +10 -3
- package/dist/x-search-field.js +1 -1
- package/dist/x-select.d.ts +12 -2
- package/dist/x-select.js +1 -1
- package/dist/x-sidebar.d.ts +4 -0
- package/dist/x-sidebar.js +17 -18
- package/dist/x-skeleton-group.js +13 -12
- package/dist/x-skeleton.js +1 -1
- package/dist/x-slider.d.ts +7 -0
- package/dist/x-slider.js +17 -16
- package/dist/x-soft-body.js +20 -20
- package/dist/x-spacer.js +4 -4
- package/dist/x-spinner.js +4 -4
- package/dist/x-splash.js +13 -12
- package/dist/x-split-pane.js +15 -15
- package/dist/x-spotlight-card.js +13 -12
- package/dist/x-stat.js +10 -10
- package/dist/x-stepper.js +15 -13
- package/dist/x-switch.d.ts +10 -3
- package/dist/x-switch.js +12 -11
- package/dist/x-tab.d.ts +5 -0
- package/dist/x-tab.js +10 -7
- package/dist/x-table-cell.js +21 -21
- package/dist/x-table-row.js +9 -8
- package/dist/x-table.js +14 -13
- package/dist/x-tabs.d.ts +9 -0
- package/dist/x-tabs.js +11 -11
- package/dist/x-text-area.d.ts +12 -0
- package/dist/x-text-area.js +21 -19
- package/dist/x-theme.js +26 -25
- package/dist/x-timeline-item.js +21 -20
- package/dist/x-timeline.js +8 -8
- package/dist/x-toast.js +22 -22
- package/dist/x-toaster.js +7 -7
- package/dist/x-tooltip.js +14 -12
- package/dist/x-trace-history.js +119 -127
- package/dist/x-typography.js +9 -9
- package/dist/x-welcome-tour.js +63 -63
- package/package.json +25 -26
- package/dist/barebuild-action.d.ts +0 -45
- package/dist/barebuild-action.js +0 -9
- package/dist/barebuild-data.d.ts +0 -39
- package/dist/barebuild-data.js +0 -5
- package/dist/barebuild-invalidate-on.d.ts +0 -42
- package/dist/barebuild-invalidate-on.js +0 -5
- package/dist/barebuild-route.d.ts +0 -39
- package/dist/barebuild-route.js +0 -4
- package/dist/barebuild-router.d.ts +0 -41
- package/dist/barebuild-router.js +0 -13
package/dist/x-trace-history.js
CHANGED
|
@@ -1,128 +1,120 @@
|
|
|
1
1
|
import { $APP, shadow$provide } from "./base.js";
|
|
2
|
-
var
|
|
3
|
-
a
|
|
4
|
-
null?
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
c.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
$APP.
|
|
43
|
-
"
|
|
44
|
-
$APP.
|
|
45
|
-
d)
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
"
|
|
54
|
-
|
|
55
|
-
"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
$APP.
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
""
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
d)
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
d
|
|
81
|
-
new FileReader,d=Gfa(b.name);c.onload=function(){var e=bQ.j(c.result,d);e!=null?($APP.l(a,"__xTraceHistoryHintEl").classList.remove("error"),$APP.Q(a,"__xTraceHistoryView",new $APP.J(null,2,5,$APP.K,[WN,e],null)),e=OP(a)):e=aQ(a,"Import failed — see console for details.");return e};c.onerror=function(){return aQ(a,"Could not read file.")};return c.readAsText(b)},dQ=function(a){a=a.dataTransfer;return $APP.n(a)?a.types.includes("Files"):null},Hfa=function(a,b){var c=a.shadowRoot;a=$APP.n(c)?c:a.attachShadow({mode:"open"});
|
|
82
|
-
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; }")+
|
|
83
|
-
"
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
r)
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
c
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
"
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
null,"dom/attribute-set",null],null),null),fQ,new $APP.ch(null,new $APP.M(null,3,["lifecycle/attribute-changed",null,"lifecycle/connected",null,"lifecycle/disconnected",null],null),null)],null),oN=new $APP.J(null,4,5,$APP.K,[$APP.ou,$APP.Tt,eQ,fQ],null),BN=new $APP.M(null,5,[$APP.ou,"#94e2d5",$APP.Tt,"#f9e2af",eQ,"#fab387",fQ,"#cba6f7",pN,"#6c7086"],null),PN=function PN(a,b){return $APP.Fd(b,new $APP.Id(null,function(){return $APP.Ce(function(d){return PN.j?PN.j(a,d):PN.call(null,a,d)},$APP.Ec([Hea(a,
|
|
122
|
-
b.id)]))},null))},rP=function rP(a){return $APP.za(lQ,0,$APP.ye.j(rP,RN.i(a)))+1},sP=function sP(a){return $APP.Tc(RN.i(a))?0:$APP.ce($APP.Wo,$APP.ye.j(sP,RN.i(a)))+1},tP=function tP(a,b,c){var e=QN.i(a),f=RN.i(a);a=30+b*56;if($APP.Tc(f))return new $APP.J(null,2,5,$APP.K,[new $APP.M(null,6,[$APP.qt,e.id,QN,e,nP,c+70,oP,a,mQ,b,RN,$APP.Ge],null),c+158],null);f=$APP.za(function(m,r){var u=$APP.B(m,0,null);m=$APP.B(m,1,null);var x=b+1;m=tP.m?tP.m(r,x,m):tP.call(null,r,x,m);r=$APP.B(m,0,null);m=$APP.B(m,
|
|
123
|
-
1,null);return new $APP.J(null,2,5,$APP.K,[$APP.Cd.j(u,r),m],null)},new $APP.J(null,2,5,$APP.K,[$APP.Ge,c],null),f);c=$APP.B(f,0,null);f=$APP.B(f,1,null);var h=nP.i($APP.t(c)),k=nP.i($APP.Ic(c));return new $APP.J(null,2,5,$APP.K,[new $APP.M(null,6,[$APP.qt,e.id,QN,e,nP,(h+k)/2,oP,a,mQ,b,RN,c],null),f],null)},uP=function uP(a){return $APP.Kf.j(new $APP.J(null,1,5,$APP.K,[$APP.Uo.j(a,RN)],null),$APP.Ce(uP,$APP.Ec([RN.i(a)])))},vP=function vP(a){var c=$APP.qt.i(a),d=nP.i(a),e=oP.i(a);return $APP.bf($APP.Ce(function(f){return $APP.Fd(new $APP.M(null,
|
|
124
|
-
6,[Sfa,c,iP,d,jP,e,Rfa,$APP.qt.i(f),kP,nP.i(f),lP,oP.i(f)],null),vP.i?vP.i(f):vP.call(null,f))},$APP.Ec([RN.i(a)])))};var nN=$APP.ve($APP.Gg([fN,vO,zO,lO,$APP.iq,GO,MN,wO,MO,tO,KO,nQ,LO],[!1,5E3,$APP.ke,0,!1,$APP.Ge,JO,$APP.ke,null,0,$APP.Ge,0,0])),dO=$APP.ve(new $APP.M(null,3,[hO,0,eO,!1,fO,$APP.ke],null)),uO=$APP.ve($APP.Ge),EO=$APP.ve(null),CO=$APP.ve(!1),nO=$APP.ve(0),aO=$APP.ve([null,null]),Pea=new $APP.ch(null,new $APP.M(null,3,[$APP.$i,null,$APP.Si,null,$APP.Zi,null],null),null),Qea=new $APP.ch(null,new $APP.M(null,3,[$APP.ij,null,$APP.kj,null,$APP.dj,null],null),null),bQ=function bQ(a){switch(arguments.length){case 1:return bQ.i(arguments[0]);
|
|
125
|
-
case 2:return bQ.j(arguments[0],arguments[1]);default:throw Error(["Invalid arity: ",arguments.length].join(""));}};bQ.i=function(a){return bQ.j(a,null)};
|
|
126
|
-
bQ.j=function(a,b){a=Xea(a);var c=$APP.G(a);a=$APP.C(c,$APP.Ts);c=$APP.C(c,$APP.fq);if($APP.n(c))return console.warn("[x-trace-history] import rejected:",c),null;c=performance.now();var d=nQ.i($APP.eb(nN));b=b==null||$APP.z.j("",b)?"Import "+$APP.P.i(d):b;var e=new $APP.M(null,4,[$APP.qt,d,$APP.Wj,b,WO,c,FO,a],null);cO.j(nN,function(f){return kO.m(kO.J(f,GO,$APP.Cd,e),nQ,VM)});gO();return d};bQ.M=2;var MP,oQ=window.matchMedia;MP=$APP.n(oQ)?oQ.call(window,"(prefers-reduced-motion: reduce)"):null;var Zea=RegExp("\x26","g"),$ea=RegExp("\x3c","g"),afa=RegExp("\x3e","g"),bfa=RegExp('"',"g"),cfa=RegExp("'","g"),FP=new WeakMap,Dfa=new $APP.ch(null,new $APP.M(null,5,["x-select",null,"select",null,"input",null,"textarea",null,"x-checkbox",null],null),null),Qfa=new $APP.M(null,5,[$APP.gi,!0,$APP.ji,[],$APP.hi,function(a){return Ofa(a)},$APP.ei,function(a){var b=$APP.l(a,"__xTraceHistorySubToken");$APP.n(b)&&cO.B(dO,kO,fO,$APP.Uo,$APP.Ec([b]));b=ZN(a,$P);$APP.n(b)&&typeof b==="number"&&clearTimeout(b);
|
|
127
|
-
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.Q(a,"__xTraceHistoryListeners",null)}b=$APP.l(a,"__xTraceHistoryHighlightListeners");if($APP.n(b)){c=b.length;for(d=0;;)if(d<c)e=b[d],e[0].removeEventListener(e[1],e[2],e[3]),d+=1;else break;$APP.bj(a,"__xTraceHistoryHighlightListeners",null)}b=$APP.l(a,"__xTraceHistoryHighlightRaf");$APP.n(b)&&(cancelAnimationFrame(b),$APP.bj(a,"__xTraceHistoryHighlightRaf",
|
|
128
|
-
null));b=$APP.l(a,"__xTraceHistoryHighlightLayer");$APP.n(b)&&$APP.rk(b);$APP.bj(a,"__xTraceHistoryHighlightLayer",null);$APP.bj(a,"__xTraceHistoryHighlightBox",null);$APP.bj(a,"__xTraceHistoryHighlightCid",null);$APP.Q(a,"__xTraceHistorySubToken",null);$N(a,$P,null);return $APP.Q(a,"__xTraceHistoryMounted",null)},$APP.di,function(){return null}],null);$APP.fa("baredom.exports.x_trace_history.init",kQ);jQ();export const init=kQ;
|
|
2
|
+
var LM=function(a,b){const c=a.length-b.length;return c>=0&&a.indexOf(b,c)==c},uka=function(a){return a-1},vka=function(a,b){return $APP.pd(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.nd($APP.ld);return e.j?e.j(c,d):e.call(null,c,d)},b)},MM=function(a,b){return vka(a,b)},NM=function(a){if(a instanceof RegExp)return a;var b=$APP.Ah(/^\(\?([idmsux]*)\)/,a),c=$APP.B(b,0,null);b=$APP.B(b,1,null);return new RegExp(a.substring(c==null?0:c.length),$APP.m(b)?b:"")},wka=
|
|
3
|
+
function(a){return $APP.Yd($APP.za(function(b,c){return $APP.$d(b,c,$APP.Rc(b,c,0)+1)},$APP.Bb($APP.oe),a))},xka=function(a){return new $APP.H(null,2,5,$APP.J,[$APP.Me(200,a),$APP.Ne(200,a)],null)},OM=function(){var a=window;var b=a.location.search;b=b==null?null:$APP.Ah(yka,b);return $APP.D(b)||$APP.l(a,"BAREDOM_TRACE_HISTORY")===!0||$APP.z.j("raw",$APP.l(a,"BAREDOM_TRACE_HISTORY"))},zka=function(a){a=a==null?null:a.tagName;a=a==null?null:a.toLowerCase();return $APP.m(a)?a:"document"},PM=function(a){try{return a==
|
|
4
|
+
null?null:$APP.xo(a)}catch(b){try{return""+$APP.N.i(a)}catch(c){return"(unprintable)"}}},Aka=function(a,b,c){a=$APP.G(a);var d=$APP.C(a,$APP.P),e=$APP.C(a,$APP.pv),f=$APP.C(a,QM),h=$APP.C(a,RM);var k=$APP.Od(d);k=$APP.m(k)?""+$APP.N.i(k)+"/"+$APP.N.i($APP.jh(d)):$APP.jh(d);b={schemaVersion:1,id:b,t:c,type:k,tag:e,componentId:f,causeId:h};switch(d instanceof $APP.F?d.da:null){case "event/dispatch":case "event/dispatch-cancelable":case "event/dispatch-document":return c=$APP.bj.i(a),b.eventName=c,c=
|
|
5
|
+
PM($APP.cj.i(a)),b.detail=c,c=$APP.D($APP.dj.i(a)),b.cancelable=c,a=$APP.D($APP.ej.i(a)),b.defaultPrevented=a,b;case "state/instance-field-set":return c=$APP.Ki.i(a),b.field=c,a=PM($APP.Q.i(a)),b.value=a,b;case "dom/attribute-set":return c=$APP.Ui.i(a),b.attribute=c,a=$APP.Q.i(a),b.value=a,b;case "dom/attribute-removed":return a=$APP.Ui.i(a),b.attribute=a,b;case "lifecycle/attribute-changed":return c=$APP.Ui.i(a),b.attribute=c,c=$APP.Kj.i(a),b.oldValue=c,a=$APP.Lj.i(a),b.newValue=a,b;case "lifecycle/connected":case "lifecycle/disconnected":return b;
|
|
6
|
+
default:return b}},SM=function(a){a=""+$APP.N.i(a);return a.length<2?"0"+$APP.N.i(a):a},Bka=function(a,b){return $APP.Xf.l($APP.oe,$APP.Te(function(c){var d=$APP.B(c,0,null);$APP.B(c,1,null);return $APP.kd(b,d)}),a)},aN=function(a,b,c,d){var e=$APP.G(d);d=$APP.C(e,TM);var f=$APP.C(e,$APP.Dt),h=$APP.C(e,UM);e=$APP.C(e,VM);a:{var k=a.length;for(var n=0,r=$APP.Bb($APP.bh);;){if(n>=k){k=$APP.Eb(r);break a}var v=a[n].componentId;n+=1;r=v!=null?$APP.Db(r,v):r}k=void 0}k=Bka(b,k);b=$APP.D(e);e={};k=$APP.q(k);
|
|
7
|
+
n=null;for(v=r=0;;)if(v<r){var x=n.C(null,v),y=$APP.B(x,0,null),A=$APP.B(x,1,null);x=e;y=""+$APP.N.i(y);A={tag:$APP.pv.i(A),firstSeen:WM.i(A)};x[y]=A;v+=1}else if(k=$APP.q(k))$APP.gd(k)?(r=$APP.Jb(k),k=$APP.Kb(k),n=r,r=$APP.w(r)):(n=$APP.t(k),r=$APP.B(n,0,null),v=$APP.B(n,1,null),n=e,r=""+$APP.N.i(r),v={tag:$APP.pv.i(v),firstSeen:WM.i(v)},n[r]=v,k=$APP.u(k),n=null,r=0),v=0;else break;k=[];c=$APP.q(c);n=null;for(v=r=0;;)if(v<r){x=n.C(null,v);var E=$APP.G(x);x=$APP.C(E,$APP.zt);y=$APP.C(E,$APP.Z);A=
|
|
8
|
+
$APP.C(E,XM);var I=$APP.C(E,YM),O=$APP.C(E,ZM);E=$APP.C(E,$M);k.push({id:x,label:y,startT:A,endT:I,startId:O,endId:E});v+=1}else if(c=$APP.q(c))$APP.gd(c)?(r=$APP.Jb(c),c=$APP.Kb(c),n=r,r=$APP.w(r)):(n=$APP.t(c),A=$APP.G(n),n=$APP.C(A,$APP.zt),r=$APP.C(A,$APP.Z),v=$APP.C(A,XM),x=$APP.C(A,YM),y=$APP.C(A,ZM),A=$APP.C(A,$M),k.push({id:n,label:r,startT:v,endT:x,startId:y,endId:A}),c=$APP.u(c),n=null,r=0),v=0;else break;return{schemaVersion:1,exportedAt:d,origin:f,userAgent:h,forensic:b,components:e,sessions:k,
|
|
9
|
+
records:a}},bN=function(a){if($APP.sa(a)){if(typeof a.schemaVersion!=="number")return new $APP.K(null,1,[$APP.Qj,"Envelope is missing schemaVersion."],null);if($APP.M.j(1,a.schemaVersion))return new $APP.K(null,1,[$APP.Qj,"Schema version mismatch: expected "+$APP.N.i(1)+", got "+$APP.N.i(a.schemaVersion)+"."],null);if($APP.p($APP.ra(a.records)))return new $APP.K(null,1,[$APP.Qj,"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];
|
|
10
|
+
if($APP.sa(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.K(null,1,[$APP.jt,a],null):new $APP.K(null,1,[$APP.Qj,"Record at index "+$APP.N.i(b)+" is missing required fields (id, t, type)."],null)}return new $APP.K(null,1,[$APP.Qj,"Envelope is not a JSON object."],null)},Cka=function(a,b,c){return $APP.w(a)>=c?$APP.Jd.j($APP.Zc(a),b):$APP.Jd.j(a,b)},Dka=function(){var a=VM.i($APP.db(cN));return $APP.m(a)?$APP.fh(dN):
|
|
11
|
+
$APP.Jq.j($APP.fh(dN),$APP.Lt)},fN=function(a){var b=$APP.te(function(c){var d=$APP.B(c,0,null);c=$APP.B(c,1,null);return $APP.kd(c,a)?d:null},Eka);return $APP.m(b)?b:eN},gN=function(a){try{var b=JSON.stringify(a)}catch(c){b=""}return $APP.m(b)?b.toLowerCase():""},kN=function(a,b){var c=$APP.G(b),d=$APP.C(c,$APP.pv),e=$APP.C(c,hN);b=$APP.C(c,iN);c=$APP.Rc(c,jN,gN);if(d=d==null||$APP.z.j("",d)||$APP.z.j("all",d)||$APP.z.j(d,a.tag)){if(e=e==null||$APP.kd(e,fN(a.type)))e=b==null||$APP.z.j("",b)||!((c.i?
|
|
12
|
+
c.i(a):c.call(null,a)).indexOf(b)<0);d=e}return d},lN=function(a,b){return $APP.rf(MM(function(c){return c.t},$APP.Ue(function(c){return kN(c,b)},$APP.Jc(a))))},mN=function(a,b){return typeof b==="number"?a.find(function(c){return $APP.z.j(b,c.id)}):null},nN=function(a){if(a!=null)try{var b=JSON.stringify(a),c=""+$APP.N.i(b);return c.length<=60?c:""+$APP.N.i($APP.Ed(c,60))+"…"}catch(d){return"(unstringifiable)"}else return null},oN=function(a){switch(a.type){case "event/dispatch":return""+$APP.N.i(a.eventName)+
|
|
13
|
+
$APP.N.i(function(){var b=nN(a.detail);return $APP.m(b)?" "+$APP.N.i(b):null}());case "event/dispatch-cancelable":return""+$APP.N.i(a.eventName)+$APP.N.i($APP.m(a.defaultPrevented)?" (prevented)":null)+$APP.N.i(function(){var b=nN(a.detail);return $APP.m(b)?" "+$APP.N.i(b):null}());case "event/dispatch-document":return""+$APP.N.i(a.eventName)+$APP.N.i(function(){var b=nN(a.detail);return $APP.m(b)?" "+$APP.N.i(b):null}());case "state/instance-field-set":return""+$APP.N.i(a.field)+" \x3d "+$APP.N.i(function(){var b=
|
|
14
|
+
nN(a.value);return $APP.m(b)?b:"null"}());case "dom/attribute-set":return""+$APP.N.i(a.attribute)+"\x3d"+$APP.N.i($APP.Vh($APP.Jc([a.value])));case "dom/attribute-removed":return""+$APP.N.i(a.attribute)+" removed";case "lifecycle/connected":return"connected";case "lifecycle/disconnected":return"disconnected";case "lifecycle/attribute-changed":return""+$APP.N.i(a.attribute)+": "+$APP.N.i($APP.Vh($APP.Jc([a.oldValue])))+" → "+$APP.N.i($APP.Vh($APP.Jc([a.newValue])));default:return"("+$APP.N.i(a.type)+
|
|
15
|
+
")"}},pN=function(a){if(typeof a!=="number")return"";if(a<1E3)return""+$APP.N.i(a.toFixed(0))+"ms";if(a<6E4)return""+$APP.N.i((a/1E3).toFixed(3))+"s";var b=$APP.Bd(a,6E4)/1E3;return""+$APP.N.i(Math.floor(a/6E4))+"m"+$APP.N.i(b.toFixed(1))+"s"},rN=function(a){a=fN(a.type);return $APP.C(qN,$APP.m(a)?a:eN)},tN=function(a){a=a.componentId;return $APP.m(a)?a:sN},Fka=function(a){return $APP.rf(MM(uN,$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.K(null,3,
|
|
16
|
+
[vN,c,$APP.pv,d.tag,uN,$APP.ge($APP.Dk,$APP.Oe.j(function(e){return e.t},b))],null)},$APP.fi(tN,a))))},yN=function(a){if($APP.q(a)){var b=$APP.Oe.j(function(c){return c.t},a);a=$APP.ge($APP.Dk,b);b=$APP.ge($APP.Sm,b);return new $APP.K(null,3,[wN,a,Gka,b,xN,$APP.Sm.j(1,b-a)],null)}return null},Hka=function(a,b){return $APP.q(a)?$APP.he(zN,function(c){return Math.abs(c.t-b)},a):null},Ika=function(a){if($APP.q(a)){var b=wka($APP.Oe.j(function(d){return fN(d.type)},a)),c=$APP.ge($APP.Sm,$APP.Wg(b));a=
|
|
17
|
+
$APP.te(function(d){return $APP.z.j(c,$APP.C(b,d))?d:null},dN);return $APP.m(a)?a:eN}return null},Mka=function(a,b){a=$APP.fi(function(c){c=b.i?b.i(c):b.call(null,c);return Math.floor(c/4)},a);return $APP.rf(MM(AN,$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.rf(MM(function(f){return f.id},e));return new $APP.K(null,7,[AN,d,BN,e,CN,Ika(e),DN,d*4,Jka,(d+1)*4,Kka,$APP.ge($APP.Dk,c),Lka,$APP.ge($APP.Sm,c)],null)},a)))},Nka=function(a){return $APP.te(function(b){return $APP.w(BN.i(b))>
|
|
18
|
+
3},a)},Oka=function(a){return $APP.q(a)?$APP.ge($APP.Sm,$APP.Oe.j(function(b){return $APP.w(BN.i(b))},a)):0},Pka=function(a,b){var c=b.id;a=MM(function(d){return d.t},$APP.Ue(function(d){return $APP.z.j(c,d.causeId)},$APP.Jc(a)));return new $APP.K(null,2,[$APP.Fx,$APP.w(a),BN,$APP.rf($APP.Me(50,a))],null)},Qka=function(a,b){return $APP.rf(MM(function(c){return c.id},$APP.Ue(function(c){return $APP.z.j(b,c.causeId)},$APP.Jc(a))))},Rka=function(a,b){var c=xka(EN(a,b));a=$APP.B(c,0,null);c=$APP.B(c,
|
|
19
|
+
1,null);var d=$APP.fi(function(e){return e.causeId},a);return $APP.Pg.l(function h(f){var k=$APP.Ci.j;var n=f.id;n=d.i?d.i(n):d.call(null,n);return new $APP.K(null,2,[FN,f,$APP.Wv,k.call($APP.Ci,h,n)],null)}(b),GN,$APP.D($APP.q(c)))},Ska=function(a,b){return typeof b==="number"?$APP.te(function(c){return $APP.z.j(b,$APP.zt.i(c))?c:null},$APP.Nk.i(a)):null},Tka=function(a,b,c,d){b===0?c="No records yet — interact with components to start tracing.":a===0?c=""+$APP.N.i(b)+" "+$APP.N.i($APP.z.j(1,b)?
|
|
20
|
+
"record":"records")+" · all hidden by filter":(a=""+$APP.N.i(a)+$APP.N.i($APP.M.j(a,b)?" of "+$APP.N.i(b):null)+" "+$APP.N.i($APP.z.j(1,a)?"record":"records")+" · "+$APP.N.i(d)+" "+$APP.N.i($APP.z.j(1,d)?"lane":"lanes"),b=$APP.N,d=b.i,c=xN.i(c),c=$APP.m(c)?" · spanning "+$APP.N.i(pN(c)):null,c=a+d.call(b,c));return c},IN=function(a){return $APP.fd(a)&&$APP.z.j(HN,$APP.t(a))},KN=function(a){return $APP.fd(a)&&$APP.z.j(JN,$APP.t(a))},LN=function(a){return $APP.fd(a)&&($APP.z.j(HN,$APP.t(a))||$APP.z.j(JN,
|
|
21
|
+
$APP.t(a)))?$APP.Mc(a):null},MN=function(a,b){a=$APP.l(a,"__xTraceHistoryUiState");return $APP.m(a)?(b=$APP.l(a,$APP.jh(b)),void 0===b?null:b):null},NN=function(a,b,c){var d=$APP.l(a,"__xTraceHistoryUiState");d=$APP.m(d)?d:{};b=$APP.jh(b);d[b]=c;a.__xTraceHistoryUiState=d},PN=function(){var a=BN.i($APP.db(cN)),b=$APP.db(ON),c=b[1];if(b[0]===a)return c;b=$APP.xo($APP.rf(a));$APP.Ke(ON,[a,b]);return b},Uka=function(){var a=$APP.Kq.J(QN,$APP.Pg,$APP.Nm,!1);a=$APP.G(a);a=$APP.C(a,RN);a=$APP.q(a);for(var b=
|
|
22
|
+
null,c=0,d=0;;)if(d<c){var e=b.C(null,d);$APP.B(e,0,null);e=$APP.B(e,1,null);try{e.G?e.G():e.call(null)}catch(f){}d+=1}else if(a=$APP.q(a)){if($APP.gd(a))c=$APP.Jb(a),a=$APP.Kb(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.G?e.G():e.call(null)}catch(f){}a=$APP.u(a);b=null;c=0}d=0}else return null},SN=function(){if(QN instanceof $APP.He){var a=QN.state;a=$APP.Pg.l?$APP.Pg.l(a,$APP.Nm,!0):$APP.Pg.call(null,a,$APP.Nm,!0);if(QN instanceof $APP.He){var b=QN.uc;if(b!=null&&
|
|
23
|
+
!$APP.m(b.i?b.i(a):b.call(null,a)))throw Error("Validator rejected reference state");b=QN.state;QN.state=a;QN.ic!=null&&$APP.Ie(QN,b,a);a=new $APP.H(null,2,5,$APP.J,[b,a],null)}else a=new $APP.H(null,2,5,$APP.J,[$APP.db(QN),$APP.Lb(QN,a)],null)}else a=new $APP.H(null,2,5,$APP.J,[$APP.db(QN),$APP.Fq(QN,$APP.Pg,$APP.Nm,!0)],null);b=$APP.B(a,0,null);$APP.B(a,1,null);return $APP.m($APP.Nm.i(b))?null:requestAnimationFrame(Uka)},Vka=function(a,b){var c=TN.i(a)+1;return $APP.Lq($APP.Pg.l(a,TN,c),new $APP.H(null,
|
|
24
|
+
2,5,$APP.J,[RN,c],null),b)},Wka=function(a,b,c){if($APP.z.j("document",b))return new $APP.K(null,2,[$APP.zt,null,UN,!1],null);b=$APP.l(a,"__xTraceHistoryId");if(b!=null)return new $APP.K(null,2,[$APP.zt,b,UN,!1],null);a.__xTraceHistoryId=c;return new $APP.K(null,2,[$APP.zt,c,UN,!0],null)},WN=function(){var a=$APP.Kq.J(cN,$APP.zi,VN,$APP.sc);return VN.i(a)-1},Xka=function(a){$APP.Kq.j(XN,$APP.sc);try{a.G?a.G():a.call(null)}finally{$APP.Kq.j(XN,uka)}},YN=function(a){var b=a.getRootNode();return b instanceof
|
|
25
|
+
ShadowRoot?b.host:a.parentNode},ZN=function(a){for(;;)if(a!=null&&a instanceof Element){var b=a.localName;var c=b!=null;b=c?b.includes("-"):c;if($APP.m(b))return a;a=YN(a)}else return null},$N=function(a){if(a instanceof Node)for(a=YN(a);;){if(a==null||a===document)return!1;if($APP.m($APP.l(a,"__xTraceHistoryInternal")))return!0;a=YN(a)}else return!1},aO=function(a){var b=document.body;if($APP.m($APP.m(b)?a!=null:b)){b=[b];for(var c=0;;){if(b.length===0||c>=1E6)return null;var d=b.pop();if(d instanceof
|
|
26
|
+
Element){if(!$APP.m($APP.l(d,"__xTraceHistoryInternal"))){if($APP.z.j(a,$APP.l(d,"__xTraceHistoryId")))return d;for(var e=d.children,f=e.length,h=0;;)if(h<f)b.push(e[h]),h+=1;else break;d=d.shadowRoot;if($APP.m(d))for(d=d.children,e=d.length,f=0;;)if(f<e)b.push(d[f]),f+=1;else break}c+=1}}}else return null},bO=function(a){var b=$APP.Ji.i(a);return $APP.kd(Yka,$APP.P.i(a))?b instanceof Node?(a=$APP.l(b,"__xTraceHistoryInternal"),$APP.m(a)?a:$N(b)):!1:$N(b)},fO=function(a,b,c,d){var e=$APP.db(cN),f=
|
|
27
|
+
$APP.Ji.i(a);if(!$APP.m(function(){var v=(v=$APP.p(d))?$APP.qr.i(e):v;return $APP.m(v)?v:bO(a)}())){var h=function(){var v=ZN(f);return $APP.m(v)?v:f}(),k=zka(h);h=Wka(h,k,cO.i(e));var n=$APP.G(h);h=$APP.C(n,$APP.zt);n=$APP.C(n,UN);var r=$APP.Yc($APP.db(dO));r=$APP.Pg.o(a,$APP.pv,k,$APP.Jc([QM,h,RM,r]));b=Aka(r,b,c);b=Cka(BN.i(e),b,$APP.Mm.i(e));c=$APP.m(n)?$APP.Pg.l(eO.i(e),h,new $APP.K(null,2,[$APP.pv,k,WM,c],null)):eO.i(e);k=$APP.m(n)?h+1:cO.i(e);$APP.Kq.o(cN,$APP.Pg,BN,b,$APP.Jc([cO,k,eO,c]));
|
|
28
|
+
SN()}},gO=function(a,b){var c=ZN(b);b=$APP.l($APP.m(c)?c:b,"__xTraceHistoryId");if($APP.m(b))switch(c=$APP.P.i(a),c instanceof $APP.F?c.da:null){case "event/dispatch":case "event/dispatch-cancelable":case "event/dispatch-document":return""+$APP.N.i(b)+":evt:"+$APP.N.i($APP.bj.i(a));case "state/instance-field-set":return""+$APP.N.i(b)+":fld:"+$APP.N.i($APP.Ki.i(a));case "dom/attribute-set":case "dom/attribute-removed":return""+$APP.N.i(b)+":attr:"+$APP.N.i($APP.Ui.i(a));default:return null}else return null},
|
|
29
|
+
iO=function(a,b,c,d){var e=$APP.p(VM.i(a));return e?(b=gO(b,c),$APP.m(b)?(a=$APP.C(hO.i(a),b),$APP.m(a)?d-a<16:null):null):e},jO=function(a,b,c){if($APP.m(VM.i($APP.db(cN))))return null;a=gO(a,b);return $APP.m(a)?$APP.Kq.J(cN,$APP.Lq,new $APP.H(null,2,5,$APP.J,[hO,a],null),c):null},lO=function(a){var b=$APP.P.i(a),c=$APP.Ji.i(a),d=performance.now();if($APP.m(function(){var f=$APP.db(XN)>0;if(f)return f;f=$APP.db(kO);f=$APP.m(f)?$APP.kd(Zka,b):f;if($APP.m(f))return f;f=bO(a);return $APP.m(f)?f:iO($APP.db(cN),
|
|
30
|
+
a,c,d)}()))return null;var e=WN();fO(a,e,d,!1);return jO(a,c,d)},$ka=function(){var a=EventTarget.prototype,b=a.dispatchEvent;$APP.m($APP.l(b,"__xTraceHistoryWrapped"))||($APP.Ke(mO,b),b=function(c){var d=$APP.db(mO);var e=$APP.p($APP.db(kO));e||(e=$APP.qr.i($APP.db(cN)),e=$APP.m(e)?e:$APP.db(XN)>0||$N(this));if($APP.m(e))c=d.call(this,c);else{e=c instanceof CustomEvent;var f=performance.now(),h=e?new $APP.K(null,2,[$APP.P,this===document?$APP.ij:$APP.m(c.cancelable)?$APP.gj:$APP.aj,$APP.bj,c.type],
|
|
31
|
+
null):null;if($APP.m(e?iO($APP.db(cN),h,this,f):e))c=d.call(this,c);else{var k=WN();$APP.Kq.l(dO,$APP.Jd,k);try{var n=d.call(this,c)}finally{$APP.Kq.j(dO,$APP.Zc)}if(e)try{fO(new $APP.K(null,6,[$APP.P,this===document?$APP.ij:$APP.m(c.cancelable)?$APP.gj:$APP.aj,$APP.Ji,this,$APP.bj,c.type,$APP.cj,c.detail,$APP.dj,c.cancelable,$APP.ej,c.defaultPrevented],null),k,f,!0),jO(h,this,f)}catch(r){}c=n}}return c},b.__xTraceHistoryWrapped=!0,a.dispatchEvent=b)},ala=function(){return PN()},bla=function(){var a=
|
|
32
|
+
eO.i($APP.db(cN)),b={};a=$APP.q(a);for(var c=null,d=0,e=0;;)if(e<d){var f=c.C(null,e),h=$APP.B(f,0,null),k=$APP.B(f,1,null);f=b;h=""+$APP.N.i(h);k={tag:$APP.pv.i(k),firstSeen:WM.i(k)};f[h]=k;e+=1}else if(a=$APP.q(a))$APP.gd(a)?(d=$APP.Jb(a),a=$APP.Kb(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.N.i(d),e={tag:$APP.pv.i(e),firstSeen:WM.i(e)},c[d]=e,a=$APP.u(a),c=null,d=0),e=0;else break;return b},cla=function(a){var b=a.components;return b==null?$APP.Xe:$APP.Oe.j(function(c){return $APP.l(b,
|
|
33
|
+
c).tag},Object.keys(b))},dla=function(){var a=$APP.db(cN),b=$APP.Oe.j($APP.pv,$APP.Wg(eO.i(a)));a=$APP.Se(function(c){c=$APP.G(c);c=$APP.C(c,nO);return cla(c)},$APP.Jc([oO.i(a)]));return $APP.rf($APP.Xf.j($APP.hh(),$APP.Re.j(b,a)))},pO=function(){$APP.Kq.J(cN,$APP.Pg,$APP.qr,!0);return SN()},qO=function(){$APP.Kq.J(cN,$APP.Pg,$APP.qr,!1);return SN()},vO=function(){$APP.Kq.o(cN,$APP.Pg,BN,rO,$APP.Jc([VN,0,sO,$APP.Xe,tO,0,uO,null,hO,$APP.oe]));return SN()},wO=function(){return uO.i($APP.db(cN))},ela=
|
|
34
|
+
function(a,b,c,d){return b==null?a:$APP.Ci.j(function(e){e=$APP.G(e);var f=$APP.C(e,$APP.zt);return $APP.z.j(f,b)?$APP.Pg.o(e,YM,c,$APP.Jc([$M,d])):e},a)},xO=function(){var a=performance.now();$APP.Kq.j(cN,function(b){return $APP.Pg.l($APP.zi.ta(b,sO,ela,uO.i(b),a,VN.i(b)),uO,null)});return SN()},yO=function(){wO()!=null&&(console.warn("[x-trace-history] start-session! called while a session was already active — stopping the previous one"),xO());var a=performance.now();$APP.Kq.j(cN,function(b){var c=
|
|
35
|
+
tO.i(b),d=VN.i(b);return $APP.Pg.o($APP.zi.J(b,sO,$APP.Jd,new $APP.K(null,6,[$APP.zt,c,$APP.Z,"Session "+$APP.N.i(c),XM,a,YM,null,ZM,d,$M,null],null)),uO,c,$APP.Jc([tO,c+1]))});SN();return uO.i($APP.db(cN))},zO=function(a,b){var c=$APP.G(b);b=$APP.C(c,ZM);c=$APP.C(c,$M);a=a.id;return a>=b&&(c==null||a<c)},AO=function(){var a=$APP.db(cN),b=PN(),c=$APP.Jc(b);return $APP.xo($APP.Ci.j(function(d){var e=$APP.G(d);d=$APP.C(e,$APP.zt);var f=$APP.C(e,$APP.Z),h=$APP.C(e,XM),k=$APP.C(e,YM),n=$APP.w($APP.Ue(function(r){return zO(r,
|
|
36
|
+
e)},c));return{id:d,label:f,startT:h,endT:$APP.m(k)?k:null,recordCount:n}},sO.i(a)))},BO=function(a){var b=$APP.db(cN),c=$APP.t($APP.Ue(function(d){return $APP.z.j($APP.zt.i(d),a)},sO.i(b)));return $APP.m(c)?$APP.xo(MM(function(d){return d.t},$APP.Ue(function(d){return zO(d,c)},$APP.Kc(PN())))):[]},fla=function(a){if(typeof a==="string"){try{var b=JSON.parse(a)}catch(c){b=CO}a=$APP.z.j(b,CO)?new $APP.K(null,1,[$APP.Qj,"File is not valid JSON."],null):bN(b)}else a=$APP.sa(a)?bN(a):new $APP.K(null,
|
|
37
|
+
1,[$APP.Qj,"Import expects a JSON string or a parsed envelope object."],null);return a},DO=function(a){$APP.Kq.J(cN,$APP.zi,oO,function(b){return $APP.rf($APP.We(function(c){c=$APP.G(c);c=$APP.C(c,$APP.zt);return $APP.z.j(c,a)},b))});return SN()},FO=function(){return $APP.xo($APP.Ci.j(function(a){var b=$APP.G(a);a=$APP.C(b,$APP.zt);var c=$APP.C(b,$APP.Z),d=$APP.C(b,EO);b=$APP.C(b,nO);return{id:a,label:c,importedAt:d,recordCount:b.records.length}},oO.i($APP.db(cN))))},GO=function(a){var b=$APP.t($APP.Ue(function(c){return $APP.z.j($APP.zt.i(c),
|
|
38
|
+
a)},oO.i($APP.db(cN))));return $APP.m(b)?nO.i(b).records:[]},HO=function(a,b){return new $APP.K(null,4,[TM,a.getTime(),$APP.Dt,function(){var c=window;c=c==null?null:c.location;c=c==null?null:c.href;return $APP.m(c)?c:""}(),UM,function(){var c=navigator;c=c==null?null:c.userAgent;return $APP.m(c)?c:""}(),VM,b],null)},gla=function(){var a=$APP.db(cN),b=PN(),c=HO(new Date,VM.i(a));return aN(b,eO.i(a),sO.i(a),c)},IO=function(){var a=new Date,b=$APP.db(cN),c=PN(),d=HO(a,VM.i(b));b=aN(c,eO.i(b),sO.i(b),
|
|
39
|
+
d);b=JSON.stringify(b,null,2);a=""+$APP.N.i("baredom-trace-")+$APP.N.i(a.getFullYear())+$APP.N.i(SM(a.getMonth()+1))+$APP.N.i(SM(a.getDate()))+"-"+$APP.N.i(SM(a.getHours()))+$APP.N.i(SM(a.getMinutes()))+$APP.N.i(SM(a.getSeconds()))+$APP.N.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=c.click()}finally{document.body.removeChild(c),URL.revokeObjectURL(b)}return e},
|
|
40
|
+
JO=function(a,b){b=b.getBoundingClientRect();a.style.top=""+$APP.N.i(b.top)+"px";a.style.left=""+$APP.N.i(b.left)+"px";a.style.width=""+$APP.N.i(b.width)+"px";a.style.height=""+$APP.N.i(b.height)+"px"},KO=function(a){a=$APP.l(a,"__xTraceHistoryHighlightBox");$APP.m(a)&&(a.style.display="none")},LO=function(a){var b=$APP.l(a,"__xTraceHistoryHighlightCid");if($APP.m(b)){b=aO(b);if($APP.m(b))return a=$APP.l(a,"__xTraceHistoryHighlightBox"),$APP.m(a)?(JO(a,b),a.style.display="block"):null;KO(a);return $APP.Xi(a,
|
|
41
|
+
"__xTraceHistoryHighlightCid",null)}return null},MO=function(a){return(""+$APP.N.i(a)).replace(hla,"\x26amp;").replace(ila,"\x26lt;").replace(jla,"\x26gt;").replace(kla,"\x26quot;").replace(lla,"\x26#39;")},mla=function(a){return"\x3coption value\x3d'"+$APP.N.i(MO(a))+"'\x3e"+$APP.N.i(MO(a))+"\x3c/option\x3e"},NO=function(a,b){return"\x3clabel class\x3d'cat'\x3e\x3cx-checkbox data-x-th-cat\x3d'"+$APP.N.i(a)+"' "+$APP.N.i($APP.m(b)?"checked ":null)+"aria-label\x3d'"+$APP.N.i(a)+"'\x3e\x3c/x-checkbox\x3e"+
|
|
42
|
+
$APP.N.i(a)+"\x3c/label\x3e"},nla=function(a,b){return $APP.ge($APP.N,$APP.Oe.j(function(c){var d=$APP.G(c);c=$APP.C(d,vN);var e=$APP.C(d,$APP.pv),f=$APP.G(d);d=$APP.C(f,vN);f=$APP.C(f,$APP.pv);d=$APP.z.j(sN,d)?"document":""+$APP.N.i(f)+" #"+$APP.N.i(d);f=$APP.z.j(sN,c)?"document":e;var h=$APP.z.j(b,f);return"\x3cdiv class\x3d'lane-label"+$APP.N.i(h?" active":null)+"' data-x-th-lane-tag\x3d'"+$APP.N.i(MO(f))+"' title\x3d'"+$APP.N.i(MO(d))+"'\x3e"+$APP.N.i(MO($APP.z.j(sN,c)?"document":e))+$APP.N.i($APP.M.j(sN,
|
|
43
|
+
c)?" \x3cspan class\x3d'cid'\x3e#"+$APP.N.i(c)+"\x3c/span\x3e":null)+"\x3c/div\x3e"},a))},ola=function(a,b,c){return $APP.m(a)?"\x3cline class\x3d'scrubber' x1\x3d'"+$APP.N.i(b)+"' y1\x3d'0' x2\x3d'"+$APP.N.i(b)+"' y2\x3d'"+$APP.N.i(c)+"' /\x3e":""},OO=function(a,b,c,d){a=MM(function(e){return $APP.z.j(e.id,d)?1:0},a);return $APP.ge($APP.N,$APP.Oe.j(function(e){var f=c.i?c.i(e):c.call(null,e),h=b+10,k=$APP.z.j(e.id,d),n=k?6.5:4.5;return"\x3ccircle class\x3d'dot"+$APP.N.i(k?" selected":null)+"' data-x-th-id\x3d'"+
|
|
44
|
+
$APP.N.i(e.id)+"' cx\x3d'"+$APP.N.i(f)+"' cy\x3d'"+$APP.N.i(h)+"' r\x3d'"+$APP.N.i(n)+"' fill\x3d'"+$APP.N.i(rN(e))+"' /\x3e"},a))},pla=function(a,b,c,d){if(c==null)return"";a=$APP.te(function(e){e=$APP.G(e);e=$APP.C(e,BN);return $APP.te(function(f){return $APP.z.j(f.id,c)?f:null},e)},a);return $APP.m(a)?(d=d.i?d.i(a):d.call(null,a),"\x3cline class\x3d'density-selected' x1\x3d'"+$APP.N.i(d)+"' y1\x3d'"+$APP.N.i(b)+"' x2\x3d'"+$APP.N.i(d)+"' y2\x3d'"+$APP.N.i(b+20)+"' /\x3e"):""},qla=function(a,b,
|
|
45
|
+
c,d){var e=Oka(a);return""+$APP.N.i($APP.ge($APP.N,$APP.Oe.j(function(f){var h=$APP.G(f),k=$APP.C(h,BN);f=$APP.C(h,CN);h=$APP.C(h,DN);var n=$APP.t(k),r=$APP.C(qN,$APP.m(f)?f:eN);var v=$APP.w(k);v=v==null||v===0||e==null||e===0?0:v>=e?1:.4+.6*((v-1)/$APP.Sm.j(1,e-1));var x=MO($APP.jh($APP.m(f)?f:eN));k=$APP.w(k);f=""+$APP.N.i(k)+" "+$APP.N.i($APP.z.j(1,k)?"record":"records")+" · "+$APP.N.i($APP.jh($APP.m(f)?f:eN));return"\x3crect class\x3d'density-bin' role\x3d'button' aria-label\x3d'"+$APP.N.i(MO(f))+
|
|
46
|
+
"' data-x-th-bin-record-id\x3d'"+$APP.N.i(n.id)+"' data-x-th-bin-count\x3d'"+$APP.N.i(k)+"' data-x-th-bin-cat\x3d'"+$APP.N.i(x)+"' x\x3d'"+$APP.N.i(h)+"' y\x3d'"+$APP.N.i(b)+"' width\x3d'"+$APP.N.i(4)+"' height\x3d'"+$APP.N.i(20)+"' fill\x3d'"+$APP.N.i(r)+"' fill-opacity\x3d'"+$APP.N.i(v)+"' /\x3e"},a)))+$APP.N.i(pla(a,b,c,d))},rla=function(a,b,c,d,e,f){function h(A){a:{var E=$APP.C(x,A.id);var I=a instanceof $APP.F?a.da:null;switch(I){case "order":A=$APP.Sm.j(0,e-16);E=v===0||v<0?8:$APP.z.j(1,v)?
|
|
47
|
+
8+A/2:8+$APP.Dk.j($APP.Sm.j(E/(v-1),0),1)*A;break a;case "time":E=A.t;I=$APP.G(d);A=$APP.C(I,wN);I=$APP.C(I,xN);var O=$APP.Sm.j(0,e-16);E=A==null||I==null?8:8+$APP.Dk.j($APP.Sm.j((E-A)/I,0),1)*O;break a;default:throw Error("No matching clause: "+$APP.N.i(I));}}return E}var k=$APP.m(f)?f.id:null,n=$APP.Xf.j($APP.oe,$APP.Ee(function(A,E){E=$APP.G(E);E=$APP.C(E,vN);return new $APP.H(null,2,5,$APP.J,[E,A*20],null)},c)),r=$APP.Sm.j(20,20*$APP.w(c)),v=$APP.w(b),x=$APP.Xf.j($APP.oe,$APP.Ee(function(A,E){return new $APP.H(null,
|
|
48
|
+
2,5,$APP.J,[E.id,A],null)},b)),y=$APP.fi(tN,b);return"\x3csvg class\x3d'timeline-svg' width\x3d'"+$APP.N.i(e)+"' height\x3d'"+$APP.N.i(r)+"' viewBox\x3d'0 0 "+$APP.N.i(e)+" "+$APP.N.i(r)+"'\x3e"+$APP.N.i($APP.ge($APP.N,$APP.Oe.j(function(A){A=$APP.G(A);var E=$APP.C(A,vN);A=$APP.Rc(y,E,$APP.Xe);E=$APP.C(n,E);if($APP.z.j(PO,a)){var I=Mka(A,h);A=$APP.m(Nka(I))?qla(I,E,k,h):OO(A,E,h,k)}else A=OO(A,E,h,k);return A},c)))+$APP.N.i(ola(f,$APP.m(f)?h(f):null,r))+"\x3c/svg\x3e"},sla=function(a,b,c,d,e,f,h,
|
|
49
|
+
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 n=$APP.Sm.j(200,b.clientWidth);a.innerHTML=nla(e,k);b.innerHTML=rla(c,d,e,f,n,h)}},QO=function(a){return""+$APP.N.i(a.tag)+" · "+$APP.N.i(a.type)},tla=function(a){var b=$APP.G(a);a=$APP.C(b,RO);var c=$APP.C(b,SO),d=$APP.C(b,TO);b=$APP.C(b,UO);c+=14;b-=14;return"\x3cline class\x3d'edge' x1\x3d'"+$APP.N.i(a)+"' y1\x3d'"+$APP.N.i(c)+"' x2\x3d'"+$APP.N.i(d)+"' y2\x3d'"+
|
|
50
|
+
$APP.N.i(b)+"' /\x3e"},ula=function(a,b){var c=$APP.G(a);a=$APP.C(c,$APP.Nk);var d=$APP.C(c,VO),e=$APP.C(c,$APP.fq);c=$APP.C(c,$APP.gq);return"\x3csvg class\x3d'causality-svg' width\x3d'"+$APP.N.i(e)+"' height\x3d'"+$APP.N.i(c)+"' viewBox\x3d'0 0 "+$APP.N.i(e)+" "+$APP.N.i(c)+"'\x3e"+$APP.N.i($APP.ge($APP.N,$APP.Oe.j(tla,d)))+$APP.N.i($APP.ge($APP.N,$APP.Oe.j(function(f){var h=$APP.G(f),k=$APP.C(h,$APP.zt);f=$APP.C(h,FN);var n=$APP.C(h,WO);h=$APP.C(h,XO);n-=70;var r=h-14,v=$APP.z.j(k,b),x=n+12,y=
|
|
51
|
+
n+22,A=n+22,E=r+18,I=r+11,O=MO("#"+$APP.N.i(k)+" "+$APP.N.i(QO(f))+" · "+$APP.N.i(oN(f)));k="\x3cg data-x-th-link-id\x3d'"+$APP.N.i(k)+"' role\x3d'button' aria-label\x3d'"+$APP.N.i(O)+"'\x3e\x3ctitle\x3e"+$APP.N.i(O)+"\x3c/title\x3e\x3crect class\x3d'node-rect"+$APP.N.i(v?" selected":null)+"' x\x3d'"+$APP.N.i(n)+"' y\x3d'"+$APP.N.i(r)+"' width\x3d'"+$APP.N.i(140)+"' height\x3d'"+$APP.N.i(28)+"' /\x3e\x3ccircle class\x3d'node-dot' cx\x3d'"+$APP.N.i(x)+"' cy\x3d'"+$APP.N.i(h)+"' r\x3d'"+$APP.N.i(4)+
|
|
52
|
+
"' fill\x3d'"+$APP.N.i(rN(f))+"' /\x3e\x3ctext class\x3d'node-text id' x\x3d'"+$APP.N.i(y)+"' y\x3d'"+$APP.N.i(I)+"'\x3e#"+$APP.N.i(k)+"\x3c/text\x3e\x3ctext class\x3d'node-text' x\x3d'"+$APP.N.i(A)+"' y\x3d'"+$APP.N.i(E)+"'\x3e";h=$APP.N;n=h.i;f=QO(f);f=""+$APP.N.i(f);f=f.length<=22?f:""+$APP.N.i(f.substring(0,21))+"…";return k+n.call(h,MO(f))+"\x3c/text\x3e\x3c/g\x3e"},a)))+"\x3c/svg\x3e"},wla=function(a,b,c,d){if(d==null)NN(a,YO,null),b.innerHTML="\x3cdiv class\x3d'causality-empty'\x3e"+$APP.N.i(MO("Select a record from the timeline to see its causality tree."))+
|
|
53
|
+
"\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=mN(c,h);if($APP.m(h))f+=1,e=h;else break a}e=void 0}e=Rka(c,e);c=new $APP.K(null,2,[ZO,$O(e),vla,aP(e)],null);if($APP.m(GN.i(e)))NN(a,YO,null),a=$APP.N,d=a.i,c=$APP.G(c),c=$APP.C(c,ZO),c="Causality tree exceeds the "+$APP.N.i(200)+"-node cap (≥ "+$APP.N.i(c)+" nodes). Pick a smaller leaf record to view its subtree.",b.innerHTML="\x3cdiv class\x3d'causality-empty'\x3e"+d.call(a,MO(c))+"\x3c/div\x3e";
|
|
54
|
+
else{e=bP(e,0,16);f=$APP.B(e,0,null);$APP.B(e,1,null);e=cP(f);f=dP(f);h=$APP.za($APP.Sm,0,$APP.Oe.j(WO,e));var k=$APP.za($APP.Sm,0,$APP.Oe.j(XO,e));e=new $APP.K(null,4,[$APP.Nk,e,VO,f,$APP.fq,h+70+16,$APP.gq,k+14+16],null);c=$APP.z.j(1,ZO.i(c));NN(a,YO,e);b.innerHTML=""+$APP.N.i(c?"\x3cdiv class\x3d'causality-leaf-hint'\x3e"+$APP.N.i(MO("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."))+
|
|
55
|
+
"\x3c/div\x3e":null)+$APP.N.i(ula(e,d.id))}}},xla=function(a){if($APP.m(MN(a,eP))){var b=$APP.l(a,"__xTraceHistoryCausalityEl"),c=MN(a,YO),d=fP.i?fP.i(a):fP.call(null,a),e=$APP.m(c)?Ska(c,d):null,f=b==null?null:b.clientWidth;d=b==null?null:b.clientHeight;if($APP.m($APP.m(b)?$APP.m(c)?$APP.m(e)?typeof f==="number"&&typeof d==="number"&&f>0&&d>0:e:c:b)){var h=$APP.G(c);c=$APP.C(h,$APP.fq);h=$APP.C(h,$APP.gq);var k=WO.i(e),n=XO.i(e);e=k-f/2;k=n-d/2;f=$APP.Sm.j(0,c-f);d=$APP.Sm.j(0,h-d);d=new $APP.K(null,
|
|
56
|
+
2,[gP,$APP.Sm.j(0,$APP.Dk.j(f,e)),hP,$APP.Sm.j(0,$APP.Dk.j(d,k))],null);f=$APP.G(d);d=$APP.C(f,gP);f=$APP.C(f,hP);b.scrollLeft=d;b.scrollTop=f;NN(a,eP,!1)}}},yla=function(a){var b=dla();a:{var c=a.querySelectorAll("option");for(var d=c.length,e=0,f=$APP.Bb($APP.bh);;){if(e>=d){c=$APP.Eb(f);break a}var h=c[e].value;e+=1;f=$APP.z.j(h,"all")?f:$APP.Db(f,h)}c=void 0}b=$APP.We(c,b);$APP.q(b)&&(b=$APP.ge($APP.N,$APP.Oe.j(mla,b)),a.insertAdjacentHTML("beforeend",b))},zla=function(a){var b=$APP.qr.i($APP.db(cN));
|
|
57
|
+
a.textContent=$APP.m(b)?"Resume":"Pause";a.pressed=b},Ala=function(a){var b=wO()!=null;a.textContent=b?"Stop":"Record";a.pressed=b},Bla=function(a){var b=$APP.G(a);a=$APP.C(b,iP);var c=$APP.C(b,$APP.cp),d=$APP.C(b,jP),e=$APP.C(b,kP),f=$APP.C(b,$APP.Z);b=$APP.C(b,lP);return"\x3cbutton class\x3d'session-chip"+$APP.N.i($APP.m(c)?" active":null)+$APP.N.i($APP.m(e)?" import":null)+"' type\x3d'button' data-x-th-session\x3d'"+$APP.N.i(MO(a))+"'\x3e"+$APP.N.i($APP.m(d)?"\x3cspan class\x3d'live-dot' aria-hidden\x3d'true'\x3e\x3c/span\x3e":
|
|
58
|
+
null)+$APP.N.i(MO(f))+$APP.N.i($APP.m(e)?"\x3cspan class\x3d'chip-close' role\x3d'button' aria-label\x3d'Remove import' data-x-th-import-close\x3d'"+$APP.N.i(b)+"'\x3e×\x3c/span\x3e":null)+"\x3c/button\x3e"},Cla=function(a,b,c,d){var e=new $APP.K(null,5,[iP,"live",$APP.cp,$APP.z.j(c,$APP.Uu),jP,!1,kP,!1,$APP.Z,"Live"],null),f=IN(c)?LN(c):null,h=KN(c)?LN(c):null;a=$APP.Ci.j(function(k){var n=k.id;return new $APP.K(null,5,[iP,""+$APP.N.i(n),$APP.cp,$APP.z.j(n,f),jP,$APP.z.j(n,d),kP,!1,$APP.Z,""+$APP.N.i(k.label)+
|
|
59
|
+
" · "+$APP.N.i(k.recordCount)],null)},$APP.Jc(a));b=$APP.Ci.j(function(k){var n=k.id;return new $APP.K(null,6,[iP,"import:"+$APP.N.i(n),$APP.cp,$APP.z.j(n,h),jP,!1,kP,!0,lP,n,$APP.Z,""+$APP.N.i(k.label)+" · "+$APP.N.i(k.recordCount)],null)},$APP.Jc(b));return $APP.ge($APP.N,$APP.Oe.j(Bla,$APP.Re.o(new $APP.H(null,1,5,$APP.J,[e],null),a,$APP.Jc([b]))))},Dla=function(a,b,c,d,e){a.innerHTML=Cla(b,c,d,e);b.length===0&&c.length===0?a.setAttribute("hidden",""):a.removeAttribute("hidden")},mP=function(a){var b=
|
|
60
|
+
oN(a);b="#"+$APP.N.i(a.id)+" "+$APP.N.i(a.tag)+" · "+$APP.N.i(a.type)+$APP.N.i($APP.m($APP.m(b)?!$APP.qi(b):b)?" · "+$APP.N.i(b):null);return"\x3cx-button class\x3d'detail-link' size\x3d'sm' variant\x3d'ghost' data-x-th-link-id\x3d'"+$APP.N.i(a.id)+"' title\x3d'"+$APP.N.i(MO(b))+"'\x3e"+$APP.N.i(MO(b))+"\x3c/x-button\x3e"},Ela=function(a,b,c,d){if($APP.m(d)){var e=JSON.stringify(d,null,2);var f=d.causeId;var h=typeof f==="number"?mN(c,f):null;f=Pka(c,d);e="\x3cpre class\x3d'detail-json'\x3e"+$APP.N.i(MO(e))+
|
|
61
|
+
"\x3c/pre\x3e"+$APP.N.i($APP.m(h)?"\x3cdiv class\x3d'detail-section' data-x-th-detail-cause\x3e\x3cdiv class\x3d'detail-label'\x3eCaused by\x3c/div\x3e"+$APP.N.i(mP(h))+"\x3c/div\x3e":null);c=$APP.N;d=c.i;h=$APP.G(f);f=$APP.C(h,$APP.Fx);h=$APP.C(h,BN);if(f>0){var k=$APP.w(h);f=$APP.z.j(k,f)?"Effects ("+$APP.N.i(f)+")":"Effects ("+$APP.N.i(k)+" of "+$APP.N.i(f)+")";f="\x3cdiv class\x3d'detail-section' data-x-th-detail-effects\x3e\x3cdiv class\x3d'detail-label'\x3e"+$APP.N.i(f)+"\x3c/div\x3e"+$APP.N.i($APP.ge($APP.N,
|
|
62
|
+
$APP.Oe.j(mP,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","")},oP=function(a){var b=nP.get(a);if($APP.m(b))return b;b=gN(a);nP.set(a,b);return b},pP=function(a){return $APP.z.j(a,$APP.Uu)?"live":IN(a)?"session:"+$APP.N.i(LN(a)):KN(a)?"import:"+$APP.N.i(LN(a)):"live"},fP=function(a){var b=$APP.l(a,"__xTraceHistoryView");a=$APP.l(a,"__xTraceHistoryViewSelected");return $APP.m(a)?
|
|
63
|
+
$APP.l(a,pP(b)):null},rP=function(a,b){var c=$APP.l(a,"__xTraceHistoryViewSelected");c=$APP.m(c)?c:{};var d=pP($APP.l(a,"__xTraceHistoryView"));b==null?d in c&&delete c[d]:c[d]=b;$APP.T(a,"__xTraceHistoryViewSelected",c);b!=null&&$APP.z.j(qP,$APP.l(a,"__xTraceHistoryDockMode"))&&NN(a,eP,!0)},Fla=function(a,b,c){var d=fP(a);b=mN(b,d);if(b==null)return null;if(kN(b,$APP.Pg.l(c,jN,oP)))return b;rP(a,null);return null},sP=function(a){return $APP.z.j(a,$APP.Uu)?PN():IN(a)?(a=BO(LN(a)),a.length===0?PN():
|
|
64
|
+
a):KN(a)?(a=GO(LN(a)),a.length===0?PN():a):PN()},Gla=function(a,b,c,d){switch(d instanceof $APP.F?d.da: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")}},tP=function(a){KO(a);return $APP.Xi(a,"__xTraceHistoryHighlightCid",null)},Hla=function(a,b){if(b!=null&&b.componentId!=null&&$APP.M.j("document",b.tag))if($APP.z.j(b.componentId,
|
|
65
|
+
$APP.l(a,"__xTraceHistoryHighlightCid")))b=LO(a);else{var c=b.componentId;b=aO(c);if($APP.m(b)){$APP.Xi(a,"__xTraceHistoryHighlightCid",c);c=$APP.l(a,"__xTraceHistoryHighlightBox");if($APP.m(c))a=c;else{c=$APP.Rl(a,":host { all: initial; }\n.outline {\n position: absolute;\n pointer-events: none;\n box-sizing: border-box;\n border: 3px solid #ff2d8a;\n border-radius: 3px;\n background: rgba(255, 45, 138, 0.12);\n box-shadow:\n 0 0 0 1px rgba(0, 0, 0, 0.85),\n 0 0 0 4px rgba(255, 255, 255, 0.85),\n 0 0 14px 2px rgba(255, 45, 138, 0.55);\n display: none;\n}\n@media (prefers-reduced-motion: no-preference) {\n .outline {\n transition: top .08s linear, left .08s linear,\n width .08s linear, height .08s linear;\n animation: x-th-highlight-pulse .55s ease-out 1 both;\n }\n @keyframes x-th-highlight-pulse {\n 0% { box-shadow:\n 0 0 0 1px rgba(0, 0, 0, 0.85),\n 0 0 0 4px rgba(255, 255, 255, 0.85),\n 0 0 0 12px rgba(255, 45, 138, 0.55); }\n 100% { box-shadow:\n 0 0 0 1px rgba(0, 0, 0, 0.85),\n 0 0 0 4px rgba(255, 255, 255, 0.85),\n 0 0 14px 2px rgba(255, 45, 138, 0.55); }\n }\n}\n",
|
|
66
|
+
9998);var d=c.shadowRoot,e=document.createElement("div");e.className="outline";d.appendChild(e);$APP.Xi(a,"__xTraceHistoryHighlightLayer",c);$APP.Xi(a,"__xTraceHistoryHighlightBox",e);a=e}c=b.getBoundingClientRect();d=window.innerWidth;e=window.innerHeight;c.top>=0&&c.left>=0&&c.bottom<=e&&c.right<=d||b.scrollIntoView({block:"nearest",inline:"nearest",behavior:$APP.D($APP.m(uP)?uP.matches:null)?"auto":"smooth"});JO(a,b);a.style.display="block";b=a;b.style.animation="none";b=b.style.animation=""}else b=
|
|
67
|
+
tP(a)}else b=tP(a);return b},wP=function(a){var b=$APP.l(a,"__xTraceHistoryTimelineEl"),c=$APP.l(a,"__xTraceHistoryCausalityEl"),d=$APP.l(a,"__xTraceHistoryLanesEl"),e=$APP.l(a,"__xTraceHistorySvgPaneEl"),f=$APP.l(a,"__xTraceHistoryCountEl"),h=$APP.l(a,"__xTraceHistoryDetailEl"),k=$APP.l(a,"__xTraceHistorySplitterEl"),n=$APP.l(a,"__xTraceHistoryHintEl"),r=$APP.l(a,"__xTraceHistoryPauseBtn"),v=$APP.l(a,"__xTraceHistoryRecordBtn"),x=$APP.l(a,"__xTraceHistorySessionsEl"),y=$APP.l(a,"__xTraceHistoryTagSelectEl"),
|
|
68
|
+
A=$APP.l(a,"__xTraceHistoryFilter"),E=$APP.l(a,"__xTraceHistoryView"),I=sP(E),O=lN(I,$APP.Pg.l(A,jN,oP)),S=$APP.w(O),R=I.length,da=yN(O),na=Fka(O),ka=Fla(a,I,A),oa=AO(),Qa=FO(),Sa=wO(),ob=function(){var Yb=$APP.l(a,"__xTraceHistoryAxisMode");return $APP.m(Yb)?Yb:$APP.ys}(),Cb=function(){var Yb=$APP.l(a,"__xTraceHistoryDockMode");return $APP.m(Yb)?Yb:vP}();yla(y);Gla(a,b,c,Cb);switch(Cb instanceof $APP.F?Cb.da:null){case "causality":wla(a,c,I,ka);break;default:sla(d,e,ob,O,na,da,ka,$APP.pv.i(A))}f.textContent=
|
|
69
|
+
""+$APP.N.i(S);n.textContent=Tka(S,R,da,$APP.w(na));Ela(h,k,I,ka);zla(r);Ala(v);Dla(x,oa,Qa,E,Sa);xla(a);return Hla(a,ka)},xP=function(a){return $APP.m(a)?$APP.z.j("circle",a.tagName.toLowerCase()):a},yP=function(a){return $APP.m(a)?$APP.z.j("rect",a.tagName.toLowerCase())&&a.getAttribute("data-x-th-bin-record-id")!=null:a},zP=function(a){a=a.getAttribute("data-x-th-id");return $APP.m(a)?parseInt(a,10):null},AP=function(a,b){$APP.m(b)?a.classList.add("collapsed"):a.classList.remove("collapsed");a=
|
|
70
|
+
$APP.l(a,"__xTraceHistoryCollapseBtn");return $APP.m(a)?(a.textContent=$APP.m(b)?"»":"«",a.setAttribute("aria-expanded",$APP.m(b)?"false":"true")):null},BP=function(a){var b=!$APP.D($APP.l(a,"__xTraceHistoryCollapsed"));$APP.T(a,"__xTraceHistoryCollapsed",b);return AP(a,b)},Ila=function(a,b){$APP.T(a,"__xTraceHistoryAxisMode",function(){switch(b){case "order":return $APP.ys;case "time":return PO;default:return $APP.ys}}());return wP(a)},Jla=function(a,b){var c=function(){switch(b){case "timeline":return vP;
|
|
71
|
+
case "causality":return qP;default:return vP}}();$APP.T(a,"__xTraceHistoryDockMode",c);$APP.z.j(qP,c)?NN(a,eP,!0):NN(a,eP,!1);return wP(a)},CP=function(a,b,c,d){a.textContent=d;a.removeAttribute("hidden");var e=b.getBoundingClientRect();d=c.clientX-e.left;c=c.clientY-e.top;e=b.scrollTop;var f=b.scrollLeft;b=$APP.Sm.j(0,d+12+280>b.clientWidth?d-12-280:d+12);a.style.left=""+$APP.N.i(b+f)+"px";return a.style.top=""+$APP.N.i(c+e+12)+"px"},Kla=function(a,b){var c=b.target,d=$APP.l(a,"__xTraceHistoryTooltipEl"),
|
|
72
|
+
e=$APP.l(a,"__xTraceHistoryTimelineEl");a=sP($APP.l(a,"__xTraceHistoryView"));if($APP.m(xP(c))){c=zP(c);a=mN(a,c);if($APP.m(a)){c=""+$APP.N.i(a.tag);var f=$APP.N,h=f.i;var k=a.componentId;k=$APP.m(k)?" #"+$APP.N.i(k):null;a=c+h.call(f,k)+"\n"+$APP.N.i(a.type)+"\n"+$APP.N.i(oN(a))+"\n@ "+$APP.N.i(pN(a.t));b=CP(d,e,b,a)}else b=null;return b}if($APP.m(yP(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.m($APP.m(f)?$APP.m(h)?
|
|
73
|
+
c:h:f)?new $APP.K(null,3,[DP,parseInt(f,10),EP,parseInt(h,10),CN,$APP.Lh.i(c)],null):null;if($APP.m(c)){f=$APP.G(c);h=$APP.C(f,DP);c=$APP.C(f,EP);f=$APP.C(f,CN);a=mN(a,h);if($APP.m(a)){h=""+$APP.N.i(a.tag);k=$APP.N;var n=k.i;var r=a.componentId;r=$APP.m(r)?" #"+$APP.N.i(r):null;a=h+n.call(k,r)+"\n"+$APP.N.i(c)+" "+$APP.N.i($APP.z.j(1,c)?"record":"records")+" · "+$APP.N.i($APP.jh($APP.m(f)?f:eN))+"\n@ "+$APP.N.i(pN(a.t));b=CP(d,e,b,a)}else b=null;return b}return null}return d.setAttribute("hidden",
|
|
74
|
+
"")},FP=function(a,b,c,d,e,f){a:switch(b=b instanceof $APP.F?b.da:null,b){case "order":d=$APP.w(c);e=$APP.Sm.j(0,e-16);d===0||d<0?f=null:$APP.z.j(1,d)||e===0?f=0:(f=$APP.Dk.j($APP.Sm.j((f-8)/e,0),1),f=Math.round(f*(d-1)));c=$APP.m(f)?$APP.B(c,f,null):null;break a;case "time":var h=$APP.G(d);d=$APP.C(h,wN);b=$APP.C(h,xN);var k=$APP.Sm.j(0,e-16);h==null||d==null||b==null?f=0:e===0||e<0||k===0?f=d:(f=$APP.Dk.j($APP.Sm.j((f-8)/k,0),1),f=d+f*b);c=Hka(c,f);break a;default:throw Error("No matching clause: "+
|
|
75
|
+
$APP.N.i(b));}return $APP.m(c)?(rP(a,c.id),wP(a)):null},Lla=function(a,b,c){function d(x){return FP(a,k,r,v,f,x.clientX-e.left)}c.preventDefault();b.setPointerCapture(c.pointerId);var e=b.getBoundingClientRect(),f=$APP.Sm.j(200,b.clientWidth),h=$APP.l(a,"__xTraceHistoryFilter"),k=function(){var x=$APP.l(a,"__xTraceHistoryAxisMode");return $APP.m(x)?x:$APP.ys}(),n=sP($APP.l(a,"__xTraceHistoryView")),r=lN(n,$APP.Pg.l(h,jN,oP)),v=yN(r);FP(a,k,r,v,f,c.clientX-e.left);c=function y(){b.removeEventListener("pointermove",
|
|
76
|
+
d);b.removeEventListener("pointerup",y);return b.removeEventListener("pointercancel",y)};b.addEventListener("pointermove",d);b.addEventListener("pointerup",c);return b.addEventListener("pointercancel",c)},GP=function(a,b){var c=$APP.l(a,"__xTraceHistoryFilter"),d=sP($APP.l(a,"__xTraceHistoryView"));c=lN(d,$APP.Pg.l(c,jN,oP));d=fP(a);a:if($APP.q(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.z.j(d,$APP.Ec(c,f).id)){d=f;break b}f+=1}d=void 0}else d=
|
|
77
|
+
null;else d=null;if(d==null)switch(b=b instanceof $APP.F?b.da:null,b){case "next":b=$APP.t(c);break a;case "prev":b=$APP.Yc(c);break a;default:throw Error("No matching clause: "+$APP.N.i(b));}else b=$APP.z.j(b,$APP.ss)?$APP.C(c,d+1):$APP.C(c,d-1)}else b=null;return $APP.m(b)?(rP(a,b.id),wP(a)):null},HP=function(a){var b=$APP.D(a==null?null:a.isContentEditable);b?a=b:(a=a==null?null:a.tagName,a=$APP.kd(Mla,a==null?null:a.toLowerCase()));return a},Nla=function(a,b){if(HP(b.target))return null;switch(b.key){case "ArrowRight":return b.preventDefault(),
|
|
78
|
+
GP(a,$APP.ss);case "ArrowLeft":return b.preventDefault(),GP(a,$APP.uv);default:return null}},Ola=function(a,b,c){function d(h){h=$APP.Sm.j(60,f+(e-h.clientY));return a.style.height=""+$APP.N.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",
|
|
79
|
+
d);b.addEventListener("pointerup",c);return b.addEventListener("pointercancel",c)},Pla=function(a){return a==null||$APP.z.j("",a)?null:LM(a,".trace.json")?$APP.Ed(a,$APP.w(a)-11):LM(a,".json")?$APP.Ed(a,$APP.w(a)-5):a},JP=function(a,b){var c=$APP.l(a,"__xTraceHistoryHintEl"),d=MN(a,IP);typeof d==="number"&&clearTimeout(d);c.textContent=b;c.classList.add("error");b=setTimeout(function(){c.classList.remove("error");NN(a,IP,null);return wP(a)},4E3);return NN(a,IP,b)},LP=function(a,b){var c=new FileReader,
|
|
80
|
+
d=Pla(b.name);c.onload=function(){var e=KP.j(c.result,d);e!=null?($APP.l(a,"__xTraceHistoryHintEl").classList.remove("error"),$APP.T(a,"__xTraceHistoryView",new $APP.H(null,2,5,$APP.J,[JN,e],null)),e=wP(a)):e=JP(a,"Import failed — see console for details.");return e};c.onerror=function(){return JP(a,"Could not read file.")};return c.readAsText(b)},MP=function(a){a=a.dataTransfer;return $APP.m(a)?a.types.includes("Files"):null},Qla=function(a,b){var c=a.shadowRoot;a=$APP.m(c)?c:a.attachShadow({mode:"open"});
|
|
81
|
+
if(c==null){c="\x3cstyle\x3e"+$APP.N.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; }")+
|
|
82
|
+
"\x3c/style\x3e";var d=$APP.N,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"+
|
|
83
|
+
$APP.N.i(NO("events",$APP.kd(b,$APP.Xt)))+$APP.N.i(NO("state",$APP.kd(b,$APP.Lt)))+$APP.N.i(NO("dom",$APP.kd(b,NP)))+$APP.N.i(NO("lifecycle",$APP.kd(b,OP)))+"\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";
|
|
84
|
+
a.innerHTML=c+e.call(d,b)}return a},Rla=function(a,b){$APP.T(a,"__xTraceHistoryShadow",b);$APP.T(a,"__xTraceHistoryTimelineEl",b.querySelector("[data-x-th-timeline]"));$APP.T(a,"__xTraceHistoryLanesEl",b.querySelector("[data-x-th-lanes]"));$APP.T(a,"__xTraceHistorySvgPaneEl",b.querySelector("[data-x-th-svg-pane]"));$APP.T(a,"__xTraceHistoryTooltipEl",b.querySelector("[data-x-th-tooltip]"));$APP.T(a,"__xTraceHistoryCountEl",b.querySelector("[data-x-th-count]"));$APP.T(a,"__xTraceHistoryDetailEl",b.querySelector("[data-x-th-detail]"));
|
|
85
|
+
$APP.T(a,"__xTraceHistorySplitterEl",b.querySelector("[data-x-th-splitter]"));$APP.T(a,"__xTraceHistoryHintEl",b.querySelector("[data-x-th-hint]"));$APP.T(a,"__xTraceHistoryTagSelectEl",b.querySelector("[data-x-th-tag]"));$APP.T(a,"__xTraceHistoryCausalityEl",b.querySelector("[data-x-th-causality]"));$APP.T(a,"__xTraceHistoryPauseBtn",b.querySelector("[data-x-th-action\x3d'pause']"));$APP.T(a,"__xTraceHistoryRecordBtn",b.querySelector("[data-x-th-action\x3d'record']"));$APP.T(a,"__xTraceHistorySessionsEl",
|
|
86
|
+
b.querySelector("[data-x-th-sessions]"));$APP.T(a,"__xTraceHistoryImportInput",b.querySelector("[data-x-th-import-input]"));$APP.T(a,"__xTraceHistoryDropOverlay",b.querySelector("[data-x-th-drop-overlay]"));$APP.T(a,"__xTraceHistoryCollapseBtn",b.querySelector("[data-x-th-action\x3d'collapse']"))},Sla=function(a,b,c,d,e,f,h,k){return[[b,"click",function(n){n=n.target;var r=n.closest("[data-x-th-action]");if($APP.m(r))switch(r.getAttribute("data-x-th-action")){case "pause":$APP.m($APP.qr.i($APP.db(cN)))?
|
|
87
|
+
qO():pO();break;case "record":wO()!=null?xO():yO();break;case "clear":$APP.T(a,"__xTraceHistoryViewSelected",{});$APP.T(a,"__xTraceHistoryView",$APP.Uu);vO();break;case "export":IO();break;case "import":r=$APP.l(a,"__xTraceHistoryImportInput");$APP.m(r)&&(r.value="",r.click());break;case "collapse":BP(a)}r=n.closest("[data-x-th-import-close]");if($APP.m(r)){r=parseInt(r.getAttribute("data-x-th-import-close"),10);var v=$APP.l(a,"__xTraceHistoryView");KN(v)&&$APP.z.j(r,LN(v))&&$APP.T(a,"__xTraceHistoryView",
|
|
88
|
+
$APP.Uu);DO(r)}$APP.m(n.closest("[data-x-th-import-close]"))||(r=n.closest("[data-x-th-session]"),$APP.m(r)&&(r=r.getAttribute("data-x-th-session"),r=$APP.z.j(r,"live")?$APP.Uu:r.lastIndexOf("import:",0)==0?new $APP.H(null,2,5,$APP.J,[JN,parseInt(r.substring(7),10)],null):new $APP.H(null,2,5,$APP.J,[HN,parseInt(r,10)],null),$APP.T(a,"__xTraceHistoryView",r),wP(a)));r=n.closest("[data-x-th-lane-tag]");if($APP.m(r)){v=r.getAttribute("data-x-th-lane-tag");r=$APP.l(a,"__xTraceHistoryFilter");var x=$APP.pv.i(r);
|
|
89
|
+
v=$APP.z.j(v,x)?null:v;r=$APP.Pg.l(r,$APP.pv,v);$APP.T(a,"__xTraceHistoryFilter",r);r=$APP.l(a,"__xTraceHistoryTagSelectEl");$APP.m(r)&&(r.value=$APP.m(v)?v:"all");wP(a)}r=n.closest("[data-x-th-link-id]");$APP.m(r)&&(r=r.getAttribute("data-x-th-link-id"),$APP.m(r)&&(r=parseInt(r,10),$APP.m(isNaN(r))||(rP(a,r),wP(a))));r=xP(n);r=$APP.m(r)?r:yP(n);$APP.m(r)?($APP.m(xP(n))?n=zP(n):$APP.m(yP(n))?(n=n.getAttribute("data-x-th-bin-record-id"),n=$APP.m(n)?parseInt(n,10):null):n=null,r=fP(a),n=$APP.z.j(n,
|
|
90
|
+
r)?null:n,rP(a,n),n=wP(a)):n=null;return n}],[b,"select-change",function(n){var r=n.target;n=n.detail.value;r.getAttribute("data-x-th-tag")!=null?(r=$APP.Pg.l($APP.l(a,"__xTraceHistoryFilter"),$APP.pv,$APP.z.j(n,"all")?null:n),$APP.T(a,"__xTraceHistoryFilter",r),r=wP(a)):r=r.getAttribute("data-x-th-mode")!=null?Jla(a,n):r.getAttribute("data-x-th-axis")!=null?Ila(a,n):null;return r}],[b,"x-checkbox-change",function(n){var r=n.target.getAttribute("data-x-th-cat");if(r!=null){var v=n.detail.checked;
|
|
91
|
+
n=$APP.l(a,"__xTraceHistoryFilter");var x=hN.i(n);x=$APP.m(x)?x:$APP.fh(dN);r=$APP.Lh.i(r);r=$APP.m(v)?$APP.Jd.j(x,r):$APP.Jq.j(x,r);n=$APP.Pg.l(n,hN,r);$APP.T(a,"__xTraceHistoryFilter",n);n=wP(a)}else n=null;return n}],[b,"x-search-field-input",function(n){var r=n.target;$APP.m($APP.m(r)?r.hasAttribute("data-x-th-search"):r)?(n=n.detail.value,n=($APP.m(n)?n:"").toLowerCase(),n=$APP.Pg.l($APP.l(a,"__xTraceHistoryFilter"),iN,$APP.z.j("",n)?null:n),$APP.T(a,"__xTraceHistoryFilter",n),n=wP(a)):n=null;
|
|
92
|
+
return n}],[c,"pointermove",function(n){return Kla(a,n)}],[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(n){return Nla(a,n)}],[d,"pointerdown",function(n){return Lla(a,$APP.l(a,"__xTraceHistorySvgPaneEl"),n)}],[e,"pointerdown",function(n){return Ola(f,e,n)}],[h,"change",function(n){n=n.target.files;return n.length>0?LP(a,n[0]):null}],
|
|
93
|
+
[b,"dragenter",function(n){if($APP.m(MP(n))){n.preventDefault();n=$APP.l(a,"__xTraceHistoryDropOverlay");var r=MN(a,PP);NN(a,PP,($APP.m(r)?r:0)+1);n=n.removeAttribute("hidden")}else n=null;return n}],[b,"dragover",function(n){$APP.m(MP(n))?(n.preventDefault(),n=n.dataTransfer,n=$APP.m(n)?n.dropEffect="copy":null):n=null;return n}],[b,"dragleave",function(n){if($APP.m(MP(n))){n=$APP.l(a,"__xTraceHistoryDropOverlay");var r=$APP.Sm.j,v=MN(a,PP);r=r.call($APP.Sm,0,($APP.m(v)?v:0)-1);NN(a,PP,r);n=r===
|
|
94
|
+
0?n.setAttribute("hidden",""):null}else n=null;return n}],[b,"drop",function(n){$APP.m(MP(n))?(n.preventDefault(),NN(a,PP,0),$APP.l(a,"__xTraceHistoryDropOverlay").setAttribute("hidden",""),n=n.dataTransfer,n=$APP.m(n)?n.files:null,n=$APP.m($APP.m(n)?n.length>0:n)?LP(a,n[0]):null):n=null;return n}],[document,"keydown",function(n){var r;if(r=$APP.z.j("\\",n.key))r=n.metaKey,r=$APP.m(r)?r:n.ctrlKey,r=$APP.m(r)?$APP.p(n.altKey)&&$APP.p(n.shiftKey)&&!HP(n.target):r;$APP.m(r)?(n.preventDefault(),n=BP(a)):
|
|
95
|
+
n=null;return n}]]},Tla=function(a,b){b=Sla(a,b,$APP.l(a,"__xTraceHistoryTimelineEl"),$APP.l(a,"__xTraceHistorySvgPaneEl"),$APP.l(a,"__xTraceHistorySplitterEl"),$APP.l(a,"__xTraceHistoryDetailEl"),$APP.l(a,"__xTraceHistoryImportInput"),$APP.l(a,"__xTraceHistoryCausalityEl"));$APP.T(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}},Ula=function(a){if($APP.m($APP.l(a,"__xTraceHistoryHighlightRaf")))return null;var b=requestAnimationFrame(function(){$APP.Xi(a,
|
|
96
|
+
"__xTraceHistoryHighlightRaf",null);return LO(a)});return $APP.Xi(a,"__xTraceHistoryHighlightRaf",b)},Vla=function(a){function b(){return Ula(a)}var c=[[window,"scroll",b,{capture:!0,passive:!0}],[window,"resize",b,{capture:!1,passive:!0}]];$APP.Xi(a,"__xTraceHistoryHighlightListeners",c);for(var d=c.length,e=0;;)if(e<d){var f=c[e];f[0].addEventListener(f[1],f[2],f[3]);e+=1}else break},Wla=function(a,b){$APP.m($APP.l(a,"__xTraceHistoryFilter"))||$APP.T(a,"__xTraceHistoryFilter",new $APP.K(null,3,
|
|
97
|
+
[$APP.pv,null,hN,b,iN,null],null));$APP.m($APP.l(a,"__xTraceHistoryView"))||$APP.T(a,"__xTraceHistoryView",$APP.Uu);$APP.m($APP.l(a,"__xTraceHistoryViewSelected"))||$APP.T(a,"__xTraceHistoryViewSelected",{});$APP.m($APP.l(a,"__xTraceHistoryAxisMode"))||$APP.T(a,"__xTraceHistoryAxisMode",$APP.ys);$APP.m($APP.l(a,"__xTraceHistoryDockMode"))||$APP.T(a,"__xTraceHistoryDockMode",vP);$APP.l(a,"__xTraceHistoryCollapsed")==null&&$APP.T(a,"__xTraceHistoryCollapsed",!1);AP(a,$APP.D($APP.l(a,"__xTraceHistoryCollapsed")))},
|
|
98
|
+
Xla=function(a){if($APP.m($APP.l(a,"__xTraceHistoryMounted")))return null;a.__xTraceHistoryInternal=!0;var b=PN().length;Xka(function(){var c=Dka(),d=Qla(a,c);Rla(a,d);Wla(a,c);Tla(a,d);Vla(a);c=TN.i($APP.Kq.l(QN,Vka,function(){var e=$APP.l(a,"__xTraceHistoryView"),f=FO(),h=f.length;var k=MN(a,QP);k=$APP.m(k)?k:0;h>k?(NN(a,QP,h),$APP.z.j(e,$APP.Uu)&&PN().length===0&&$APP.T(a,"__xTraceHistoryView",new $APP.H(null,2,5,$APP.J,[JN,f[h-1].id],null))):h<k&&NN(a,QP,h);return wP(a)}));$APP.T(a,"__xTraceHistorySubToken",
|
|
99
|
+
c);wP(a);return $APP.T(a,"__xTraceHistoryMounted",!0)});return $APP.M.j(b,PN().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},RP=function(){return $APP.m(document.querySelector("x-trace-history"))?null:document.body.appendChild(document.createElement("x-trace-history"))},SP=function(){if(OM()){var a=$APP.Kq.o;var b=$APP.l(window,"BAREDOM_TRACE_HISTORY_CAPACITY");
|
|
100
|
+
b=typeof b==="number"&&b>0?b:5E3;var c=window,d;(d=$APP.z.j("raw",$APP.l(c,"BAREDOM_TRACE_HISTORY")))||(c=c.location.search,c=c==null?null:$APP.Ah(Yla,c),d=$APP.D(c));a.call($APP.Kq,cN,$APP.Pg,$APP.Mm,b,$APP.Jc([VM,d]));$APP.Ke($APP.Hi,lO);$APP.Ke($APP.wj,lO);$APP.Ke(XN,0);$APP.Ke(dO,$APP.Xe);$ka();$APP.Ke(kO,!0);a=$APP.l(window,"BareDOM");a=$APP.m(a)?a:{};a.traceHistory={records:ala,sessions:AO,"export":gla,download:IO,stopSession:xO,"import":KP,pause:pO,importRecords:GO,sessionRecords:BO,startSession:yO,
|
|
101
|
+
components:bla,clear:vO,imports:FO,removeImport:DO,resume:qO};window.BareDOM=a;console.log("%c[BareDOM Trace History]%c Active — see window.BareDOM.traceHistory for the API","color:#3b82f6;font-weight:bold","color:inherit")}$APP.Dp();$APP.An();$APP.Ql();$APP.$p();$APP.Oj("x-trace-history",Zla);return OM()?$APP.m(document.body)?RP():document.addEventListener("DOMContentLoaded",RP,{once:!0}):null},TP=function(){return SP()},zN=function zN(a){switch(arguments.length){case 2:return zN.j(arguments[0],
|
|
102
|
+
arguments[1]);case 3:return zN.l(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 zN.o(arguments[0],arguments[1],arguments[2],3<c.length?new $APP.hc(c.slice(3),0,null):null)}};zN.j=function(a,b){return b};zN.l=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};zN.o=function(a,b,c,d){return $APP.za(function(e,f){return zN.l(a,e,f)},zN.l(a,b,c),d)};
|
|
103
|
+
zN.H=function(a){var b=$APP.t(a),c=$APP.u(a);a=$APP.t(c);var d=$APP.u(c);c=$APP.t(d);d=$APP.u(d);return this.o(b,a,c,d)};zN.K=3;
|
|
104
|
+
var XM=new $APP.F(null,"start-t","start-t",1829305353),ZO=new $APP.F(null,"node-count","node-count",383091297),ZM=new $APP.F(null,"start-id","start-id",-456790067),$M=new $APP.F(null,"end-id","end-id",2084513705),vP=new $APP.F(null,"timeline","timeline",192903161),iP=new $APP.F(null,"chip-key","chip-key",644014552),cO=new $APP.F(null,"next-component-id","next-component-id",1588977206),VO=new $APP.F(null,"edges","edges",-694791395),TN=new $APP.F(null,"next-token","next-token",1432414974),UM=new $APP.F(null,
|
|
105
|
+
"user-agent","user-agent",1220426212),qP=new $APP.F(null,"causality","causality",-712927373),VM=new $APP.F(null,"forensic?","forensic?",188264321),iN=new $APP.F(null,"search","search",1564939822),HN=new $APP.F(null,"session","session",1008279103),YO=new $APP.F(null,"causality-layout","causality-layout",-1264013405),jP=new $APP.F(null,"recording?","recording?",-1477514924),BN=new $APP.F(null,"records","records",1326822832),UN=new $APP.F(null,"new?","new?",777958557),vla=new $APP.F(null,"max-depth",
|
|
106
|
+
"max-depth",127060793),GN=new $APP.F(null,"capped?","capped?",-65680820),XO=new $APP.F(null,"cy","cy",755331060),WO=new $APP.F(null,"cx","cx",1272694324),DN=new $APP.F(null,"x-start","x-start",1183238797),gP=new $APP.F(null,"scroll-left","scroll-left",-211761103),vN=new $APP.F(null,"lane-id","lane-id",2005926623),jN=new $APP.F(null,"haystack-fn","haystack-fn",1813797862),sO=new $APP.F(null,"sessions","sessions",-699316392),YM=new $APP.F(null,"end-t","end-t",-218701242),RN=new $APP.F(null,"by-token",
|
|
107
|
+
"by-token",-1485378511),UP=new $APP.F(null,"next-import-id","next-import-id",287496955),FN=new $APP.F(null,"record","record",-779106859),eO=new $APP.F(null,"components","components",-1073188942),nO=new $APP.F(null,"envelope","envelope",-236796318),RM=new $APP.F(null,"cause-id","cause-id",-1282947263),Jka=new $APP.F(null,"x-end","x-end",-1725631203),Gka=new $APP.F(null,"tmax","tmax",2006118392),EP=new $APP.F(null,"bin-count","bin-count",1792167977),QP=new $APP.F(null,"auto-switch-import","auto-switch-import",
|
|
108
|
+
-809333661),eP=new $APP.F(null,"causality-needs-fit","causality-needs-fit",1728707358),UO=new $APP.F(null,"to-cy","to-cy",1542880464),TO=new $APP.F(null,"to-cx","to-cx",698995232),hP=new $APP.F(null,"scroll-top","scroll-top",-46723100),hO=new $APP.F(null,"rate-limit","rate-limit",1748082022),wN=new $APP.F(null,"tmin","tmin",-39508962),$la=new $APP.F(null,"to-id","to-id",1021626465),Kka=new $APP.F(null,"t-min","t-min",-488887638),VN=new $APP.F(null,"next-id","next-id",-224240762),hN=new $APP.F(null,
|
|
109
|
+
"categories","categories",178386610),Lka=new $APP.F(null,"t-max","t-max",-949530573),PO=new $APP.F(null,"time","time",1385887882),CN=new $APP.F(null,"dominant-cat","dominant-cat",-914257775),OP=new $APP.F(null,"lifecycle","lifecycle",341496205),eN=new $APP.F(null,"other","other",995793544),CO=new $APP.F("baredom.dev.x-trace-history.model","parse-error","baredom.dev.x-trace-history.model/parse-error",840657481),uN=new $APP.F(null,"min-t","min-t",-1349871659),oO=new $APP.F(null,"imports","imports",
|
|
110
|
+
-1249933394),AN=new $APP.F(null,"bin-i","bin-i",791326307),WM=new $APP.F(null,"first-seen","first-seen",390191468),kP=new $APP.F(null,"import?","import?",-40157302),NP=new $APP.F(null,"dom","dom",-1236537922),tO=new $APP.F(null,"next-session-id","next-session-id",1944278844),EO=new $APP.F(null,"imported-at","imported-at",-1157103926),VP=new $APP.F(null,"depth","depth",1768663640),DP=new $APP.F(null,"record-id","record-id",-1468971877),uO=new $APP.F(null,"active-session-id","active-session-id",943086451),
|
|
111
|
+
RO=new $APP.F(null,"from-cx","from-cx",-293616201),SO=new $APP.F(null,"from-cy","from-cy",1126835724),TM=new $APP.F(null,"exported-at","exported-at",1661975683),QM=new $APP.F(null,"component-id","component-id",1551113783),IP=new $APP.F(null,"import-error","import-error",1672727808),PP=new $APP.F(null,"drag-depth","drag-depth",-226189617),ama=new $APP.F(null,"from-id","from-id",-106962526),lP=new $APP.F(null,"import-id","import-id",940580069),xN=new $APP.F(null,"span","span",1394872991),sN=new $APP.F("baredom.dev.x-trace-history.model",
|
|
112
|
+
"document","baredom.dev.x-trace-history.model/document",-1776453896),JN=new $APP.F(null,"import","import",-1399500709);var rO=$APP.Xf.j($APP.Rq,$APP.Xe),yka=NM("(?:^\\?|\x26)"+$APP.N.i("baredom-trace-history")+"(?:\x3d|\x26|$)"),Yla=NM("(?:^\\?|\x26)"+$APP.N.i("baredom-trace-history")+"\x3d"+$APP.N.i("raw")+"(?:\x26|$)"),Eka=new $APP.K(null,4,[$APP.Xt,new $APP.ah(null,new $APP.K(null,3,["event/dispatch",null,"event/dispatch-document",null,"event/dispatch-cancelable",null],null),null),$APP.Lt,new $APP.ah(null,new $APP.K(null,1,["state/instance-field-set",null],null),null),NP,new $APP.ah(null,new $APP.K(null,2,["dom/attribute-removed",
|
|
113
|
+
null,"dom/attribute-set",null],null),null),OP,new $APP.ah(null,new $APP.K(null,3,["lifecycle/attribute-changed",null,"lifecycle/connected",null,"lifecycle/disconnected",null],null),null)],null),dN=new $APP.H(null,4,5,$APP.J,[$APP.Xt,$APP.Lt,NP,OP],null),qN=new $APP.K(null,5,[$APP.Xt,"#94e2d5",$APP.Lt,"#f9e2af",NP,"#fab387",OP,"#cba6f7",eN,"#6c7086"],null),EN=function EN(a,b){return $APP.Md(b,new $APP.Pd(null,function(){return $APP.Se(function(d){return EN.j?EN.j(a,d):EN.call(null,a,d)},$APP.Jc([Qka(a,
|
|
114
|
+
b.id)]))},null))},$O=function $O(a){return $APP.za($APP.xk,0,$APP.Oe.j($O,$APP.Wv.i(a)))+1},aP=function aP(a){return $APP.$c($APP.Wv.i(a))?0:$APP.ge($APP.Sm,$APP.Oe.j(aP,$APP.Wv.i(a)))+1},bP=function bP(a,b,c){var e=FN.i(a),f=$APP.Wv.i(a);a=30+b*56;if($APP.$c(f))return new $APP.H(null,2,5,$APP.J,[new $APP.K(null,6,[$APP.zt,e.id,FN,e,WO,c+70,XO,a,VP,b,$APP.Wv,$APP.Xe],null),c+158],null);f=$APP.za(function(n,r){var v=$APP.B(n,0,null);n=$APP.B(n,1,null);var x=b+1;n=bP.l?bP.l(r,x,n):bP.call(null,r,x,
|
|
115
|
+
n);r=$APP.B(n,0,null);n=$APP.B(n,1,null);return new $APP.H(null,2,5,$APP.J,[$APP.Jd.j(v,r),n],null)},new $APP.H(null,2,5,$APP.J,[$APP.Xe,c],null),f);c=$APP.B(f,0,null);f=$APP.B(f,1,null);var h=WO.i($APP.t(c)),k=WO.i($APP.Nc(c));return new $APP.H(null,2,5,$APP.J,[new $APP.K(null,6,[$APP.zt,e.id,FN,e,WO,(h+k)/2,XO,a,VP,b,$APP.Wv,c],null),f],null)},cP=function cP(a){return $APP.Xf.j(new $APP.H(null,1,5,$APP.J,[$APP.sk.j(a,$APP.Wv)],null),$APP.Se(cP,$APP.Jc([$APP.Wv.i(a)])))},dP=function dP(a){var c=
|
|
116
|
+
$APP.zt.i(a),d=WO.i(a),e=XO.i(a);return $APP.rf($APP.Se(function(f){return $APP.Md(new $APP.K(null,6,[ama,c,RO,d,SO,e,$la,$APP.zt.i(f),TO,WO.i(f),UO,XO.i(f)],null),dP.i?dP.i(f):dP.call(null,f))},$APP.Jc([$APP.Wv.i(a)])))};var cN=$APP.Je($APP.Ag([VM,$APP.Mm,hO,VN,$APP.qr,oO,BN,eO,uO,cO,sO,UP,tO],[!1,5E3,$APP.oe,0,!1,$APP.Xe,rO,$APP.oe,null,0,$APP.Xe,0,0])),QN=$APP.Je(new $APP.K(null,3,[TN,0,$APP.Nm,!1,RN,$APP.oe],null)),dO=$APP.Je($APP.Xe),mO=$APP.Je(null),kO=$APP.Je(!1),XN=$APP.Je(0),ON=$APP.Je([null,null]),Yka=new $APP.ah(null,new $APP.K(null,3,[$APP.Vi,null,$APP.Ii,null,$APP.Ni,null],null),null),Zka=new $APP.ah(null,new $APP.K(null,3,[$APP.gj,null,$APP.ij,null,$APP.aj,null],null),null),KP=function KP(a){switch(arguments.length){case 1:return KP.i(arguments[0]);
|
|
117
|
+
case 2:return KP.j(arguments[0],arguments[1]);default:throw Error(["Invalid arity: ",arguments.length].join(""));}};KP.i=function(a){return KP.j(a,null)};
|
|
118
|
+
KP.j=function(a,b){a=fla(a);var c=$APP.G(a);a=$APP.C(c,$APP.jt);c=$APP.C(c,$APP.Qj);if($APP.m(c))return console.warn("[x-trace-history] import rejected:",c),null;c=performance.now();var d=UP.i($APP.db(cN));b=b==null||$APP.z.j("",b)?"Import "+$APP.N.i(d):b;var e=new $APP.K(null,4,[$APP.zt,d,$APP.Z,b,EO,c,nO,a],null);$APP.Kq.j(cN,function(f){return $APP.zi.l($APP.zi.J(f,oO,$APP.Jd,e),UP,$APP.sc)});SN();return d};KP.K=2;var uP,WP=window.matchMedia;uP=$APP.m(WP)?WP.call(window,"(prefers-reduced-motion: reduce)"):null;var hla=RegExp("\x26","g"),ila=RegExp("\x3c","g"),jla=RegExp("\x3e","g"),kla=RegExp('"',"g"),lla=RegExp("'","g"),nP=new WeakMap,Mla=new $APP.ah(null,new $APP.K(null,5,["x-select",null,"select",null,"input",null,"textarea",null,"x-checkbox",null],null),null),Zla=new $APP.K(null,5,[$APP.Dj,!0,$APP.Gj,[],$APP.Ej,function(a){return Xla(a)},$APP.Bj,function(a){var b=$APP.l(a,"__xTraceHistorySubToken");$APP.m(b)&&$APP.Kq.o(QN,$APP.zi,RN,$APP.sk,$APP.Jc([b]));b=MN(a,IP);$APP.m(b)&&typeof b==="number"&&clearTimeout(b);
|
|
119
|
+
b=$APP.l(a,"__xTraceHistoryListeners");if($APP.m(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.T(a,"__xTraceHistoryListeners",null)}b=$APP.l(a,"__xTraceHistoryHighlightListeners");if($APP.m(b)){c=b.length;for(d=0;;)if(d<c)e=b[d],e[0].removeEventListener(e[1],e[2],e[3]),d+=1;else break;$APP.Xi(a,"__xTraceHistoryHighlightListeners",null)}b=$APP.l(a,"__xTraceHistoryHighlightRaf");$APP.m(b)&&(cancelAnimationFrame(b),$APP.Xi(a,"__xTraceHistoryHighlightRaf",
|
|
120
|
+
null));b=$APP.l(a,"__xTraceHistoryHighlightLayer");$APP.m(b)&&$APP.Tl(b);$APP.Xi(a,"__xTraceHistoryHighlightLayer",null);$APP.Xi(a,"__xTraceHistoryHighlightBox",null);$APP.Xi(a,"__xTraceHistoryHighlightCid",null);$APP.T(a,"__xTraceHistorySubToken",null);NN(a,IP,null);return $APP.T(a,"__xTraceHistoryMounted",null)},$APP.Aj,function(){return null}],null);$APP.ha("baredom.exports.x_trace_history.init",TP);SP();export const init=TP;
|