@mastra/playground-ui 48.0.0-alpha.8 → 48.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 +338 -0
- package/dist/{Button-Bm94fEF2.cjs → Button-B4Ixj2aW.cjs} +4 -3
- package/dist/Button-B4Ixj2aW.cjs.map +1 -0
- package/dist/{Button-Bx2lFdqb.js → Button-C-9Pzy-Z.js} +4 -3
- package/dist/Button-C-9Pzy-Z.js.map +1 -0
- package/dist/{Notice-B9cdEg8R.cjs → Notice-DSfh1Ap5.cjs} +2 -2
- package/dist/{Notice-B9cdEg8R.cjs.map → Notice-DSfh1Ap5.cjs.map} +1 -1
- package/dist/{Notice-DIK9IZsq.js → Notice-DWHQgxkA.js} +2 -2
- package/dist/{Notice-DIK9IZsq.js.map → Notice-DWHQgxkA.js.map} +1 -1
- package/dist/{SessionExpired-C5ADs4NL.cjs → SessionExpired-CL4bppLl.cjs} +2 -2
- package/dist/{SessionExpired-C5ADs4NL.cjs.map → SessionExpired-CL4bppLl.cjs.map} +1 -1
- package/dist/{SessionExpired-CHF__hq9.js → SessionExpired-qvMB5AP_.js} +2 -2
- package/dist/{SessionExpired-CHF__hq9.js.map → SessionExpired-qvMB5AP_.js.map} +1 -1
- package/dist/Shimmer.css +37 -0
- package/dist/{combobox-sa_Pxyl4.js → combobox-CH9vBToX.js} +2 -2
- package/dist/{combobox-sa_Pxyl4.js.map → combobox-CH9vBToX.js.map} +1 -1
- package/dist/{combobox-DXwbHjvQ.cjs → combobox-Z3NehlIY.cjs} +2 -2
- package/dist/{combobox-DXwbHjvQ.cjs.map → combobox-Z3NehlIY.cjs.map} +1 -1
- package/dist/{command-Duq1xsiS.js → command-BZ7S7MR-.js} +2 -2
- package/dist/{command-Duq1xsiS.js.map → command-BZ7S7MR-.js.map} +1 -1
- package/dist/{command-qsEykgml.cjs → command-DJwcGKv_.cjs} +2 -2
- package/dist/{command-qsEykgml.cjs.map → command-DJwcGKv_.cjs.map} +1 -1
- package/dist/components/AlertDialog.cjs.js +1 -1
- package/dist/components/AlertDialog.es.js +1 -1
- package/dist/components/Button.cjs.js +1 -1
- package/dist/components/Button.es.js +1 -1
- package/dist/components/ChatShell.cjs.js +10 -6
- package/dist/components/ChatShell.cjs.js.map +1 -1
- package/dist/components/ChatShell.es.js +10 -6
- package/dist/components/ChatShell.es.js.map +1 -1
- package/dist/components/ClampedText.cjs.js +1 -1
- package/dist/components/ClampedText.es.js +1 -1
- package/dist/components/CodeBlock.cjs.js +6 -5
- package/dist/components/CodeBlock.cjs.js.map +1 -1
- package/dist/components/CodeBlock.es.js +4 -3
- package/dist/components/CodeBlock.es.js.map +1 -1
- package/dist/components/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/Columns.cjs.js +1 -1
- package/dist/components/Columns.es.js +1 -1
- package/dist/components/Combobox.cjs.js +1 -1
- package/dist/components/Combobox.es.js +1 -1
- package/dist/components/Command.cjs.js +1 -1
- package/dist/components/Command.es.js +1 -1
- package/dist/components/CommandPalette.cjs.js +1 -1
- package/dist/components/CommandPalette.es.js +1 -1
- package/dist/components/CopyButton.cjs.js +1 -1
- package/dist/components/CopyButton.es.js +1 -1
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +2 -2
- package/dist/components/DataDetailsPanel.es.js +2 -2
- package/dist/components/DataFilter.cjs.js +2 -2
- package/dist/components/DataFilter.es.js +2 -2
- package/dist/components/DataList.cjs.js +2 -2
- package/dist/components/DataList.es.js +2 -2
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +1 -1
- package/dist/components/DateRangeTimeline.es.js +1 -1
- package/dist/components/DateTimePicker.cjs.js +2 -2
- package/dist/components/DateTimePicker.es.js +2 -2
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/Dialog.cjs.js +1 -1
- package/dist/components/Dialog.es.js +1 -1
- package/dist/components/Drawer.cjs.js +1 -1
- package/dist/components/Drawer.es.js +1 -1
- package/dist/components/DropdownMenu.cjs.js +1 -1
- package/dist/components/DropdownMenu.es.js +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +4 -4
- package/dist/components/EnvironmentVariablesEditor.es.js +4 -4
- package/dist/components/ErrorBoundary.cjs.js +1 -1
- package/dist/components/ErrorBoundary.es.js +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +2 -2
- package/dist/components/FormFieldBlocks.es.js +2 -2
- package/dist/components/HoverCard.cjs.js +1 -1
- package/dist/components/HoverCard.es.js +1 -1
- package/dist/components/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +2 -2
- package/dist/components/JSONSchemaForm.es.js +2 -2
- package/dist/components/KeyValueList.cjs.js +1 -1
- package/dist/components/KeyValueList.es.js +1 -1
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/MainSidebar.cjs.js +73 -50
- package/dist/components/MainSidebar.cjs.js.map +1 -1
- package/dist/components/MainSidebar.es.js +73 -50
- package/dist/components/MainSidebar.es.js.map +1 -1
- package/dist/components/MarkdownRenderer.cjs.js +1 -1
- package/dist/components/MarkdownRenderer.es.js +1 -1
- package/dist/components/MessageScroller.cjs.js +1 -1
- package/dist/components/MessageScroller.es.js +1 -1
- package/dist/components/Notice.cjs.js +1 -1
- package/dist/components/Notice.es.js +1 -1
- package/dist/components/PrevNextNav.cjs.js +1 -1
- package/dist/components/PrevNextNav.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +3 -3
- package/dist/components/PropertyFilter.es.js +4 -4
- package/dist/components/RuleBuilder.cjs.js +2 -2
- package/dist/components/RuleBuilder.es.js +2 -2
- package/dist/components/SankeyChart.cjs.js +10 -709
- package/dist/components/SankeyChart.cjs.js.map +1 -1
- package/dist/components/SankeyChart.es.js +2 -706
- package/dist/components/SankeyChart.es.js.map +1 -1
- package/dist/components/Select.cjs.js +1 -1
- package/dist/components/Select.es.js +1 -1
- package/dist/components/SessionExpired.cjs.js +1 -1
- package/dist/components/SessionExpired.es.js +1 -1
- package/dist/components/Shimmer.cjs.js +2 -15
- package/dist/components/Shimmer.cjs.js.map +1 -1
- package/dist/components/Shimmer.es.js +2 -15
- package/dist/components/Shimmer.es.js.map +1 -1
- package/dist/components/SideDialog.cjs.js +3 -3
- package/dist/components/SideDialog.es.js +3 -3
- package/dist/components/Tabs.cjs.js +4 -3
- package/dist/components/Tabs.cjs.js.map +1 -1
- package/dist/components/Tabs.es.js +2 -1
- package/dist/components/Tabs.es.js.map +1 -1
- package/dist/components/ThreadList.cjs.js +1 -1
- package/dist/components/ThreadList.es.js +1 -1
- package/dist/components/ThreadRail.cjs.js +6 -5
- package/dist/components/ThreadRail.cjs.js.map +1 -1
- package/dist/components/ThreadRail.es.js +6 -6
- package/dist/components/ThreadRail.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/ai/ask-user.cjs.js +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/plan.cjs.js +2 -2
- package/dist/components/ai/plan.es.js +2 -2
- package/dist/{copy-button-H2iaKMng.js → copy-button-B1GWIQ-x.js} +2 -2
- package/dist/{copy-button-H2iaKMng.js.map → copy-button-B1GWIQ-x.js.map} +1 -1
- package/dist/{copy-button-BKFcsNE1.cjs → copy-button-DwZ3c7D4.cjs} +2 -2
- package/dist/{copy-button-BKFcsNE1.cjs.map → copy-button-DwZ3c7D4.cjs.map} +1 -1
- package/dist/{data-code-section-D2zjah_b.cjs → data-code-section-BjmFgJpC.cjs} +5 -5
- package/dist/{data-code-section-D2zjah_b.cjs.map → data-code-section-BjmFgJpC.cjs.map} +1 -1
- package/dist/{data-code-section-MHMkC6q9.js → data-code-section-PJM5l3aS.js} +5 -5
- package/dist/{data-code-section-MHMkC6q9.js.map → data-code-section-PJM5l3aS.js.map} +1 -1
- package/dist/{data-list-CnQRIUyN.js → data-list-CnQWE0QP.js} +2 -2
- package/dist/{data-list-CnQRIUyN.js.map → data-list-CnQWE0QP.js.map} +1 -1
- package/dist/{data-list-Cb-piK4z.cjs → data-list-Cnnnx_vD.cjs} +2 -2
- package/dist/{data-list-Cb-piK4z.cjs.map → data-list-Cnnnx_vD.cjs.map} +1 -1
- package/dist/{data-panel-BEvHk4wg.js → data-panel-BQqPr6ew.js} +3 -3
- package/dist/{data-panel-BEvHk4wg.js.map → data-panel-BQqPr6ew.js.map} +1 -1
- package/dist/{data-panel-BumsjXVz.cjs → data-panel-C85h9XvH.cjs} +3 -3
- package/dist/{data-panel-BumsjXVz.cjs.map → data-panel-C85h9XvH.cjs.map} +1 -1
- package/dist/{date-time-range-picker-yJBIm34J.js → date-time-range-picker-BQpZVrH7.js} +4 -4
- package/dist/{date-time-range-picker-yJBIm34J.js.map → date-time-range-picker-BQpZVrH7.js.map} +1 -1
- package/dist/{date-time-range-picker-ue0m5G27.cjs → date-time-range-picker-sT6pHDmU.cjs} +4 -4
- package/dist/{date-time-range-picker-ue0m5G27.cjs.map → date-time-range-picker-sT6pHDmU.cjs.map} +1 -1
- package/dist/{dialog-ClItuCFY.cjs → dialog-5ZYCeKf-.cjs} +2 -2
- package/dist/{dialog-ClItuCFY.cjs.map → dialog-5ZYCeKf-.cjs.map} +1 -1
- package/dist/{dialog-bnt6epW2.js → dialog-DDXW5M21.js} +2 -2
- package/dist/{dialog-bnt6epW2.js.map → dialog-DDXW5M21.js.map} +1 -1
- package/dist/domains/logs/components/log-details-view.cjs.js +2 -2
- package/dist/domains/logs/components/log-details-view.es.js +2 -2
- package/dist/domains/logs/components/logs-error-content.cjs.js +1 -1
- package/dist/domains/logs/components/logs-error-content.es.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
- package/dist/domains/logs/components/no-logs-info.cjs.js +1 -1
- package/dist/domains/logs/components/no-logs-info.es.js +1 -1
- package/dist/domains/memory/components/flame-graph.cjs.js +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +1 -1
- package/dist/domains/memory/components/memory-studio-panel.cjs.js +1 -1
- package/dist/domains/memory/components/memory-studio-panel.es.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.cjs.js +4 -3
- package/dist/domains/metrics/components/latency-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/latency-card-view.es.js +2 -1
- package/dist/domains/metrics/components/latency-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/memory-card-view.cjs.js +5 -4
- package/dist/domains/metrics/components/memory-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/memory-card-view.es.js +3 -2
- package/dist/domains/metrics/components/memory-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +1 -1
- package/dist/domains/metrics/components/scores-card-view.cjs.js +5 -4
- package/dist/domains/metrics/components/scores-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/scores-card-view.es.js +3 -2
- package/dist/domains/metrics/components/scores-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +4 -3
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +2 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +4 -3
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +2 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +4 -3
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +2 -1
- package/dist/domains/metrics/components/traces-volume-card-view.es.js.map +1 -1
- package/dist/domains/traces/components/no-traces-info.cjs.js +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +1 -1
- package/dist/domains/traces/components/shared.cjs.js +8 -0
- package/dist/domains/traces/components/shared.cjs.js.map +1 -1
- package/dist/domains/traces/components/shared.es.js +8 -0
- package/dist/domains/traces/components/shared.es.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +6 -5
- package/dist/domains/traces/components/span-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.es.js +4 -3
- package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.cjs.js +6 -2
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +6 -2
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +1 -1
- package/dist/domains/traces/components/timeline-timing-col.es.js +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +3 -3
- package/dist/domains/traces/components/trace-columns-menu.es.js +3 -3
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +4 -10
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.es.js +5 -11
- package/dist/domains/traces/components/trace-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/traces-error-content.cjs.js +1 -1
- package/dist/domains/traces/components/traces-error-content.es.js +1 -1
- package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +2 -2
- package/dist/domains/traces/components/traces-list-mode-toggle.es.js +2 -2
- package/dist/domains/traces/components/traces-list-view.cjs.js +2 -2
- package/dist/domains/traces/components/traces-list-view.es.js +2 -2
- package/dist/domains/traces/components/traces-toolbar.cjs.js +1 -1
- package/dist/domains/traces/components/traces-toolbar.es.js +1 -1
- package/dist/domains/traces/hooks/use-entity-names.cjs.js +12 -4
- package/dist/domains/traces/hooks/use-entity-names.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-entity-names.es.js +12 -4
- package/dist/domains/traces/hooks/use-entity-names.es.js.map +1 -1
- package/dist/{drawer-DZ9amYo_.js → drawer-C8jNXutE.js} +2 -2
- package/dist/{drawer-DZ9amYo_.js.map → drawer-C8jNXutE.js.map} +1 -1
- package/dist/{drawer-CdsTitFp.cjs → drawer-CNnvBMfD.cjs} +2 -2
- package/dist/{drawer-CdsTitFp.cjs.map → drawer-CNnvBMfD.cjs.map} +1 -1
- package/dist/{dropdown-menu-ppWztidX.cjs → dropdown-menu-BZGlERgf.cjs} +4 -3
- package/dist/dropdown-menu-BZGlERgf.cjs.map +1 -0
- package/dist/{dropdown-menu-DEFygDZI.js → dropdown-menu-DCMh8P4w.js} +4 -3
- package/dist/dropdown-menu-DCMh8P4w.js.map +1 -0
- package/dist/ee/signals/components/signals-empty-state.cjs.js +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +1 -1
- package/dist/ee/signals/entity-learning-api.cjs.js +113 -0
- package/dist/ee/signals/entity-learning-api.cjs.js.map +1 -0
- package/dist/ee/signals/entity-learning-api.d.ts +2 -0
- package/dist/ee/signals/entity-learning-api.es.js +99 -0
- package/dist/ee/signals/entity-learning-api.es.js.map +1 -0
- package/dist/ee/signals/examples-pager.cjs.js +49 -0
- package/dist/ee/signals/examples-pager.cjs.js.map +1 -0
- package/dist/ee/signals/examples-pager.d.ts +2 -0
- package/dist/ee/signals/examples-pager.es.js +44 -0
- package/dist/ee/signals/examples-pager.es.js.map +1 -0
- package/dist/ee/signals/flow-card.cjs.js +105 -0
- package/dist/ee/signals/flow-card.cjs.js.map +1 -0
- package/dist/ee/signals/flow-card.d.ts +2 -0
- package/dist/ee/signals/flow-card.es.js +101 -0
- package/dist/ee/signals/flow-card.es.js.map +1 -0
- package/dist/ee/signals/hooks/theme-query-guards.cjs.js +20 -0
- package/dist/ee/signals/hooks/theme-query-guards.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/theme-query-guards.d.ts +2 -0
- package/dist/ee/signals/hooks/theme-query-guards.es.js +14 -0
- package/dist/ee/signals/hooks/theme-query-guards.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-entity-learning-progress.cjs.js +19 -0
- package/dist/ee/signals/hooks/use-entity-learning-progress.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-entity-learning-progress.d.ts +2 -0
- package/dist/ee/signals/hooks/use-entity-learning-progress.es.js +15 -0
- package/dist/ee/signals/hooks/use-entity-learning-progress.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-noise-examples.cjs.js +32 -0
- package/dist/ee/signals/hooks/use-noise-examples.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-noise-examples.d.ts +2 -0
- package/dist/ee/signals/hooks/use-noise-examples.es.js +28 -0
- package/dist/ee/signals/hooks/use-noise-examples.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-noise.cjs.js +22 -0
- package/dist/ee/signals/hooks/use-noise.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-noise.d.ts +2 -0
- package/dist/ee/signals/hooks/use-noise.es.js +18 -0
- package/dist/ee/signals/hooks/use-noise.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-snapshot-playback.cjs.js +22 -0
- package/dist/ee/signals/hooks/use-snapshot-playback.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-snapshot-playback.d.ts +2 -0
- package/dist/ee/signals/hooks/use-snapshot-playback.es.js +18 -0
- package/dist/ee/signals/hooks/use-snapshot-playback.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-detail.cjs.js +27 -0
- package/dist/ee/signals/hooks/use-theme-detail.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-detail.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-detail.es.js +23 -0
- package/dist/ee/signals/hooks/use-theme-detail.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-entities.cjs.js +18 -0
- package/dist/ee/signals/hooks/use-theme-entities.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-entities.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-entities.es.js +14 -0
- package/dist/ee/signals/hooks/use-theme-entities.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-examples.cjs.js +40 -0
- package/dist/ee/signals/hooks/use-theme-examples.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-examples.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-examples.es.js +36 -0
- package/dist/ee/signals/hooks/use-theme-examples.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-flow.cjs.js +23 -0
- package/dist/ee/signals/hooks/use-theme-flow.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-flow.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-flow.es.js +19 -0
- package/dist/ee/signals/hooks/use-theme-flow.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-flows.cjs.js +22 -0
- package/dist/ee/signals/hooks/use-theme-flows.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-flows.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-flows.es.js +18 -0
- package/dist/ee/signals/hooks/use-theme-flows.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-history.cjs.js +20 -0
- package/dist/ee/signals/hooks/use-theme-history.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-history.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-history.es.js +16 -0
- package/dist/ee/signals/hooks/use-theme-history.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-paths.cjs.js +21 -0
- package/dist/ee/signals/hooks/use-theme-paths.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-paths.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-paths.es.js +17 -0
- package/dist/ee/signals/hooks/use-theme-paths.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-snapshots.cjs.js +22 -0
- package/dist/ee/signals/hooks/use-theme-snapshots.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-theme-snapshots.d.ts +2 -0
- package/dist/ee/signals/hooks/use-theme-snapshots.es.js +18 -0
- package/dist/ee/signals/hooks/use-theme-snapshots.es.js.map +1 -0
- package/dist/ee/signals/hooks/use-trace-insight.cjs.js +21 -0
- package/dist/ee/signals/hooks/use-trace-insight.cjs.js.map +1 -0
- package/dist/ee/signals/hooks/use-trace-insight.d.ts +2 -0
- package/dist/ee/signals/hooks/use-trace-insight.es.js +17 -0
- package/dist/ee/signals/hooks/use-trace-insight.es.js.map +1 -0
- package/dist/ee/signals/hooks.cjs.js +30 -0
- package/dist/ee/signals/hooks.cjs.js.map +1 -0
- package/dist/ee/signals/hooks.d.ts +2 -0
- package/dist/ee/signals/hooks.es.js +12 -0
- package/dist/ee/signals/hooks.es.js.map +1 -0
- package/dist/ee/signals/lifeline-point.cjs.js +73 -0
- package/dist/ee/signals/lifeline-point.cjs.js.map +1 -0
- package/dist/ee/signals/lifeline-point.d.ts +2 -0
- package/dist/ee/signals/lifeline-point.es.js +69 -0
- package/dist/ee/signals/lifeline-point.es.js.map +1 -0
- package/dist/ee/signals/lifeline-row.cjs.js +118 -0
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -0
- package/dist/ee/signals/lifeline-row.d.ts +2 -0
- package/dist/ee/signals/lifeline-row.es.js +114 -0
- package/dist/ee/signals/lifeline-row.es.js.map +1 -0
- package/dist/ee/signals/noise-detail-panel.cjs.js +96 -0
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -0
- package/dist/ee/signals/noise-detail-panel.d.ts +2 -0
- package/dist/ee/signals/noise-detail-panel.es.js +92 -0
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -0
- package/dist/ee/signals/sankey-signals-data.cjs.js +138 -0
- package/dist/ee/signals/sankey-signals-data.cjs.js.map +1 -0
- package/dist/ee/signals/sankey-signals-data.d.ts +2 -0
- package/dist/ee/signals/sankey-signals-data.es.js +127 -0
- package/dist/ee/signals/sankey-signals-data.es.js.map +1 -0
- package/dist/ee/signals/sankey-signals.cjs.js +367 -0
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -0
- package/dist/ee/signals/sankey-signals.d.ts +2 -0
- package/dist/ee/signals/sankey-signals.es.js +363 -0
- package/dist/ee/signals/sankey-signals.es.js.map +1 -0
- package/dist/ee/signals/signal-delta-column.cjs.js +90 -0
- package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -0
- package/dist/ee/signals/signal-delta-column.d.ts +2 -0
- package/dist/ee/signals/signal-delta-column.es.js +86 -0
- package/dist/ee/signals/signal-delta-column.es.js.map +1 -0
- package/dist/ee/signals/signal-formatting.cjs.js +83 -0
- package/dist/ee/signals/signal-formatting.cjs.js.map +1 -0
- package/dist/ee/signals/signal-formatting.d.ts +2 -0
- package/dist/ee/signals/signal-formatting.es.js +70 -0
- package/dist/ee/signals/signal-formatting.es.js.map +1 -0
- package/dist/ee/signals/signal-lifelines.cjs.js +69 -0
- package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -0
- package/dist/ee/signals/signal-lifelines.d.ts +2 -0
- package/dist/ee/signals/signal-lifelines.es.js +65 -0
- package/dist/ee/signals/signal-lifelines.es.js.map +1 -0
- package/dist/ee/signals/signals-error-state.cjs.js +28 -0
- package/dist/ee/signals/signals-error-state.cjs.js.map +1 -0
- package/dist/ee/signals/signals-error-state.d.ts +2 -0
- package/dist/ee/signals/signals-error-state.es.js +24 -0
- package/dist/ee/signals/signals-error-state.es.js.map +1 -0
- package/dist/ee/signals/signals-loading-skeleton.cjs.js +57 -0
- package/dist/ee/signals/signals-loading-skeleton.cjs.js.map +1 -0
- package/dist/ee/signals/signals-loading-skeleton.d.ts +2 -0
- package/dist/ee/signals/signals-loading-skeleton.es.js +52 -0
- package/dist/ee/signals/signals-loading-skeleton.es.js.map +1 -0
- package/dist/ee/signals/snapshot-timeline-data.cjs.js +40 -0
- package/dist/ee/signals/snapshot-timeline-data.cjs.js.map +1 -0
- package/dist/ee/signals/snapshot-timeline-data.d.ts +2 -0
- package/dist/ee/signals/snapshot-timeline-data.es.js +34 -0
- package/dist/ee/signals/snapshot-timeline-data.es.js.map +1 -0
- package/dist/ee/signals/snapshot-timeline.cjs.js +109 -0
- package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -0
- package/dist/ee/signals/snapshot-timeline.d.ts +2 -0
- package/dist/ee/signals/snapshot-timeline.es.js +104 -0
- package/dist/ee/signals/snapshot-timeline.es.js.map +1 -0
- package/dist/ee/signals/sortable-signal-headers.cjs.js +145 -0
- package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -0
- package/dist/ee/signals/sortable-signal-headers.d.ts +2 -0
- package/dist/ee/signals/sortable-signal-headers.es.js +141 -0
- package/dist/ee/signals/sortable-signal-headers.es.js.map +1 -0
- package/dist/ee/signals/theme-compare-data.cjs.js +46 -0
- package/dist/ee/signals/theme-compare-data.cjs.js.map +1 -0
- package/dist/ee/signals/theme-compare-data.d.ts +2 -0
- package/dist/ee/signals/theme-compare-data.es.js +41 -0
- package/dist/ee/signals/theme-compare-data.es.js.map +1 -0
- package/dist/ee/signals/theme-compare-sparkline.cjs.js +67 -0
- package/dist/ee/signals/theme-compare-sparkline.cjs.js.map +1 -0
- package/dist/ee/signals/theme-compare-sparkline.d.ts +2 -0
- package/dist/ee/signals/theme-compare-sparkline.es.js +63 -0
- package/dist/ee/signals/theme-compare-sparkline.es.js.map +1 -0
- package/dist/ee/signals/theme-compare.cjs.js +103 -0
- package/dist/ee/signals/theme-compare.cjs.js.map +1 -0
- package/dist/ee/signals/theme-compare.d.ts +2 -0
- package/dist/ee/signals/theme-compare.es.js +99 -0
- package/dist/ee/signals/theme-compare.es.js.map +1 -0
- package/dist/ee/signals/theme-detail-panel.cjs.js +171 -0
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -0
- package/dist/ee/signals/theme-detail-panel.d.ts +2 -0
- package/dist/ee/signals/theme-detail-panel.es.js +167 -0
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -0
- package/dist/ee/signals/theme-drilldown-data.cjs.js +115 -0
- package/dist/ee/signals/theme-drilldown-data.cjs.js.map +1 -0
- package/dist/ee/signals/theme-drilldown-data.d.ts +2 -0
- package/dist/ee/signals/theme-drilldown-data.es.js +109 -0
- package/dist/ee/signals/theme-drilldown-data.es.js.map +1 -0
- package/dist/ee/signals/theme-filter-banner.cjs.js +64 -0
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -0
- package/dist/ee/signals/theme-filter-banner.d.ts +2 -0
- package/dist/ee/signals/theme-filter-banner.es.js +60 -0
- package/dist/ee/signals/theme-filter-banner.es.js.map +1 -0
- package/dist/ee/signals/theme-lifelines-data.cjs.js +62 -0
- package/dist/ee/signals/theme-lifelines-data.cjs.js.map +1 -0
- package/dist/ee/signals/theme-lifelines-data.d.ts +2 -0
- package/dist/ee/signals/theme-lifelines-data.es.js +56 -0
- package/dist/ee/signals/theme-lifelines-data.es.js.map +1 -0
- package/dist/ee/signals/theme-lifelines.cjs.js +75 -0
- package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -0
- package/dist/ee/signals/theme-lifelines.d.ts +2 -0
- package/dist/ee/signals/theme-lifelines.es.js +71 -0
- package/dist/ee/signals/theme-lifelines.es.js.map +1 -0
- package/dist/ee/signals/theme-trend-chart.cjs.js +83 -0
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -0
- package/dist/ee/signals/theme-trend-chart.d.ts +2 -0
- package/dist/ee/signals/theme-trend-chart.es.js +79 -0
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -0
- package/dist/ee/signals/theme-trend.cjs.js +27 -0
- package/dist/ee/signals/theme-trend.cjs.js.map +1 -0
- package/dist/ee/signals/theme-trend.d.ts +2 -0
- package/dist/ee/signals/theme-trend.es.js +22 -0
- package/dist/ee/signals/theme-trend.es.js.map +1 -0
- package/dist/ee/signals/trace-insight-view.cjs.js +89 -0
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -0
- package/dist/ee/signals/trace-insight-view.d.ts +2 -0
- package/dist/ee/signals/trace-insight-view.es.js +85 -0
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-context.cjs.js +24 -0
- package/dist/ee/signals/trace-intelligence-context.cjs.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-context.d.ts +2 -0
- package/dist/ee/signals/trace-intelligence-context.es.js +19 -0
- package/dist/ee/signals/trace-intelligence-context.es.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +45 -0
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-explainer.d.ts +2 -0
- package/dist/ee/signals/trace-intelligence-explainer.es.js +41 -0
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-provider.cjs.js +19 -0
- package/dist/ee/signals/trace-intelligence-provider.cjs.js.map +1 -0
- package/dist/ee/signals/trace-intelligence-provider.d.ts +2 -0
- package/dist/ee/signals/trace-intelligence-provider.es.js +15 -0
- package/dist/ee/signals/trace-intelligence-provider.es.js.map +1 -0
- package/dist/ee/signals/types.cjs.js +3 -0
- package/dist/ee/signals/types.cjs.js.map +1 -0
- package/dist/ee/signals/types.d.ts +2 -0
- package/dist/ee/signals/types.es.js +2 -0
- package/dist/ee/signals/types.es.js.map +1 -0
- package/dist/ee/signals/use-trace-intelligence.cjs.js +13 -0
- package/dist/ee/signals/use-trace-intelligence.cjs.js.map +1 -0
- package/dist/ee/signals/use-trace-intelligence.d.ts +2 -0
- package/dist/ee/signals/use-trace-intelligence.es.js +9 -0
- package/dist/ee/signals/use-trace-intelligence.es.js.map +1 -0
- package/dist/ee/signals/view-mode-tab.cjs.js +18 -0
- package/dist/ee/signals/view-mode-tab.cjs.js.map +1 -0
- package/dist/ee/signals/view-mode-tab.d.ts +2 -0
- package/dist/ee/signals/view-mode-tab.es.js +14 -0
- package/dist/ee/signals/view-mode-tab.es.js.map +1 -0
- package/dist/ee/signals.cjs.js +38 -0
- package/dist/ee/signals.cjs.js.map +1 -1
- package/dist/ee/signals.es.js +18 -0
- package/dist/ee/signals.es.js.map +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +3 -3
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +3 -3
- package/dist/{hover-card-crVofiZO.js → hover-card-Bs845QbV.js} +2 -2
- package/dist/{hover-card-crVofiZO.js.map → hover-card-Bs845QbV.js.map} +1 -1
- package/dist/{hover-card-Bx258om1.cjs → hover-card-Cd9QK50X.cjs} +2 -2
- package/dist/{hover-card-Bx258om1.cjs.map → hover-card-Cd9QK50X.cjs.map} +1 -1
- package/dist/{input-group-CH72YUVL.cjs → input-group-BTaw3Ycd.cjs} +2 -2
- package/dist/{input-group-CH72YUVL.cjs.map → input-group-BTaw3Ycd.cjs.map} +1 -1
- package/dist/{input-group-Dzs-ai0n.js → input-group-CWT_IwX0.js} +2 -2
- package/dist/{input-group-Dzs-ai0n.js.map → input-group-CWT_IwX0.js.map} +1 -1
- package/dist/{markdown-renderer-Bi2fWeoF.js → markdown-renderer-DszxuuNM.js} +36 -18
- package/dist/markdown-renderer-DszxuuNM.js.map +1 -0
- package/dist/{markdown-renderer-DwfNrhEH.cjs → markdown-renderer-g8xNLOc0.cjs} +36 -18
- package/dist/markdown-renderer-g8xNLOc0.cjs.map +1 -0
- package/dist/{message-scroller-BmzjZZNs.cjs → message-scroller-BssU0EKT.cjs} +89 -16
- package/dist/message-scroller-BssU0EKT.cjs.map +1 -0
- package/dist/{message-scroller-D5O7sUS5.js → message-scroller-DlVS0FW7.js} +89 -16
- package/dist/message-scroller-DlVS0FW7.js.map +1 -0
- package/dist/{property-filter-applied-DI4w1ACS.js → property-filter-applied-C2teL4uw.js} +3 -3
- package/dist/{property-filter-applied-DI4w1ACS.js.map → property-filter-applied-C2teL4uw.js.map} +1 -1
- package/dist/{property-filter-applied-BhxbHAN8.cjs → property-filter-applied-ChK5XtsC.cjs} +3 -3
- package/dist/{property-filter-applied-BhxbHAN8.cjs.map → property-filter-applied-ChK5XtsC.cjs.map} +1 -1
- package/dist/resize/panel-drawer.cjs.js +1 -1
- package/dist/resize/panel-drawer.es.js +1 -1
- package/dist/sankey-chart-Bp-DrL1q.cjs +925 -0
- package/dist/sankey-chart-Bp-DrL1q.cjs.map +1 -0
- package/dist/sankey-chart-zhW_F0Rm.js +915 -0
- package/dist/sankey-chart-zhW_F0Rm.js.map +1 -0
- package/dist/{search-field-block-DCnFZzRK.js → search-field-block-D0PBxCxK.js} +2 -2
- package/dist/{search-field-block-DCnFZzRK.js.map → search-field-block-D0PBxCxK.js.map} +1 -1
- package/dist/{search-field-block-D6TdrHZX.cjs → search-field-block-D4vuLoZI.cjs} +2 -2
- package/dist/{search-field-block-D6TdrHZX.cjs.map → search-field-block-D4vuLoZI.cjs.map} +1 -1
- package/dist/{select-Beo8qQ0e.js → select-B_E0ADD5.js} +2 -2
- package/dist/{select-Beo8qQ0e.js.map → select-B_E0ADD5.js.map} +1 -1
- package/dist/{select-B6ce20XX.cjs → select-OAXqZLkC.cjs} +2 -2
- package/dist/{select-B6ce20XX.cjs.map → select-OAXqZLkC.cjs.map} +1 -1
- package/dist/{select-field-block-svlHplxW.cjs → select-field-block-BN9oU5B5.cjs} +2 -2
- package/dist/{select-field-block-svlHplxW.cjs.map → select-field-block-BN9oU5B5.cjs.map} +1 -1
- package/dist/{select-field-block-DXw3tD0y.js → select-field-block-D1Na8gZW.js} +2 -2
- package/dist/{select-field-block-DXw3tD0y.js.map → select-field-block-D1Na8gZW.js.map} +1 -1
- package/dist/src/domains/traces/hooks/use-entity-names.d.ts +2 -1
- package/dist/src/ds/components/ChatShell/chat-shell.d.ts +9 -6
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-item-classes.d.ts +13 -2
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-link.d.ts +2 -2
- package/dist/src/ds/components/MarkdownRenderer/markdown-renderer.d.ts +3 -1
- package/dist/src/ds/components/SankeyChart/sankey-chart.d.ts +7 -2
- package/dist/src/ds/components/SankeyChart/sankey-portal-tooltip.d.ts +8 -0
- package/dist/src/ds/components/SankeyChart/use-sankey-geometry-transition.d.ts +11 -0
- package/dist/src/ds/components/SankeyChart/use-sankey-hover-tooltip.d.ts +15 -0
- package/dist/src/ds/components/ThreadRail/thread-rail-turns.d.ts +2 -0
- package/dist/src/ee/signals/entity-learning-api.d.ts +13 -0
- package/dist/src/ee/signals/examples-pager.d.ts +7 -0
- package/dist/src/ee/signals/flow-card.d.ts +14 -0
- package/dist/src/ee/signals/hooks/index.d.ts +11 -0
- package/dist/src/ee/signals/hooks/theme-query-guards.d.ts +3 -0
- package/dist/src/ee/signals/hooks/use-entity-learning-progress.d.ts +1 -0
- package/dist/src/ee/signals/hooks/use-noise-examples.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-noise.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-snapshot-playback.d.ts +9 -0
- package/dist/src/ee/signals/hooks/use-theme-detail.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-entities.d.ts +1 -0
- package/dist/src/ee/signals/hooks/use-theme-examples.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-flow.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-flows.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-history.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-paths.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-theme-snapshots.d.ts +2 -0
- package/dist/src/ee/signals/hooks/use-trace-insight.d.ts +1 -0
- package/dist/src/ee/signals/index.d.ts +9 -0
- package/dist/src/ee/signals/lifeline-point.d.ts +8 -0
- package/dist/src/ee/signals/lifeline-row.d.ts +11 -0
- package/dist/src/ee/signals/noise-detail-panel.d.ts +10 -0
- package/dist/src/ee/signals/sankey-signals-data.d.ts +41 -0
- package/dist/src/ee/signals/sankey-signals.d.ts +12 -0
- package/dist/src/ee/signals/signal-delta-column.d.ts +12 -0
- package/dist/src/ee/signals/signal-formatting.d.ts +15 -0
- package/dist/src/ee/signals/signal-lifelines.d.ts +9 -0
- package/dist/src/ee/signals/signals-error-state.d.ts +5 -0
- package/dist/src/ee/signals/signals-loading-skeleton.d.ts +2 -0
- package/dist/src/ee/signals/snapshot-timeline-data.d.ts +12 -0
- package/dist/src/ee/signals/snapshot-timeline.d.ts +25 -0
- package/dist/src/ee/signals/sortable-signal-headers.d.ts +6 -0
- package/dist/src/ee/signals/theme-compare-data.d.ts +24 -0
- package/dist/src/ee/signals/theme-compare-sparkline.d.ts +5 -0
- package/dist/src/ee/signals/theme-compare.d.ts +17 -0
- package/dist/src/ee/signals/theme-detail-panel.d.ts +11 -0
- package/dist/src/ee/signals/theme-drilldown-data.d.ts +10 -0
- package/dist/src/ee/signals/theme-filter-banner.d.ts +8 -0
- package/dist/src/ee/signals/theme-lifelines-data.d.ts +35 -0
- package/dist/src/ee/signals/theme-lifelines.d.ts +17 -0
- package/dist/src/ee/signals/theme-trend-chart.d.ts +6 -0
- package/dist/src/ee/signals/theme-trend.d.ts +17 -0
- package/dist/src/ee/signals/trace-insight-view.d.ts +6 -0
- package/dist/src/ee/signals/trace-intelligence-context.d.ts +10 -0
- package/dist/src/ee/signals/trace-intelligence-explainer.d.ts +2 -0
- package/dist/src/ee/signals/trace-intelligence-provider.d.ts +11 -0
- package/dist/src/ee/signals/types.d.ts +1 -0
- package/dist/src/ee/signals/use-trace-intelligence.d.ts +1 -0
- package/dist/src/ee/signals/view-mode-tab.d.ts +6 -0
- package/dist/src/test/msw-server.d.ts +1 -0
- package/dist/src/test/vitest-setup.d.ts +1 -0
- package/dist/style.css +306 -18
- package/dist/tabs-root-BBPou4QC.js +69 -0
- package/dist/tabs-root-BBPou4QC.js.map +1 -0
- package/dist/tabs-root-VtBc6K2q.cjs +72 -0
- package/dist/tabs-root-VtBc6K2q.cjs.map +1 -0
- package/dist/{tabs-tab-BkUCE-4E.cjs → tabs-tab-Cq4YR31P.cjs} +2 -67
- package/dist/tabs-tab-Cq4YR31P.cjs.map +1 -0
- package/dist/{tabs-tab-DDGltcUc.js → tabs-tab-D5JTAehi.js} +6 -69
- package/dist/tabs-tab-D5JTAehi.js.map +1 -0
- package/dist/{time-picker-mLzcoQMO.js → time-picker-CkqREdQB.js} +2 -2
- package/dist/{time-picker-mLzcoQMO.js.map → time-picker-CkqREdQB.js.map} +1 -1
- package/dist/{time-picker-BOQtPoyD.cjs → time-picker-Dy2oyq8P.cjs} +2 -2
- package/dist/{time-picker-BOQtPoyD.cjs.map → time-picker-Dy2oyq8P.cjs.map} +1 -1
- package/dist/{traces-data-list-DtuaCDES.js → traces-data-list-B3wMvCfk.js} +2 -2
- package/dist/{traces-data-list-DtuaCDES.js.map → traces-data-list-B3wMvCfk.js.map} +1 -1
- package/dist/{traces-data-list-vsvvvEiP.cjs → traces-data-list-pTNo_zbS.cjs} +2 -2
- package/dist/{traces-data-list-vsvvvEiP.cjs.map → traces-data-list-pTNo_zbS.cjs.map} +1 -1
- package/package.json +8 -8
- package/theme.css +6 -8
- package/dist/Button-Bm94fEF2.cjs.map +0 -1
- package/dist/Button-Bx2lFdqb.js.map +0 -1
- package/dist/dropdown-menu-DEFygDZI.js.map +0 -1
- package/dist/dropdown-menu-ppWztidX.cjs.map +0 -1
- package/dist/markdown-renderer-Bi2fWeoF.js.map +0 -1
- package/dist/markdown-renderer-DwfNrhEH.cjs.map +0 -1
- package/dist/message-scroller-BmzjZZNs.cjs.map +0 -1
- package/dist/message-scroller-D5O7sUS5.js.map +0 -1
- package/dist/tabs-tab-BkUCE-4E.cjs.map +0 -1
- package/dist/tabs-tab-DDGltcUc.js.map +0 -1
package/dist/{date-time-range-picker-ue0m5G27.cjs.map → date-time-range-picker-sT6pHDmU.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-time-range-picker-ue0m5G27.cjs","sources":["../src/ds/components/DateTimeRangePicker/date-time-range-picker.tsx"],"sourcesContent":["import { isValid, parse } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { useState } from 'react';\nimport { Button } from '@/ds/components/Button/Button';\nimport type { ButtonProps } from '@/ds/components/Button/Button';\nimport { DatePicker, TimePicker } from '@/ds/components/DateTimePicker';\nimport { DropdownMenu } from '@/ds/components/DropdownMenu/dropdown-menu';\nimport { Popover, PopoverTrigger, PopoverContent } from '@/ds/components/Popover/popover';\nimport { cn } from '@/lib/utils';\n\nexport type DateRangePreset = 'all' | 'last-24h' | 'last-3d' | 'last-7d' | 'last-14d' | 'last-30d' | 'custom';\n\nconst DATE_PRESETS: { value: DateRangePreset; label: string; ms?: number }[] = [\n { value: 'all', label: 'All' },\n { value: 'last-24h', label: 'Last 24 hours', ms: 24 * 60 * 60 * 1000 },\n { value: 'last-3d', label: 'Last 3 days', ms: 3 * 24 * 60 * 60 * 1000 },\n { value: 'last-7d', label: 'Last 7 days', ms: 7 * 24 * 60 * 60 * 1000 },\n { value: 'last-14d', label: 'Last 14 days', ms: 14 * 24 * 60 * 60 * 1000 },\n { value: 'last-30d', label: 'Last 30 days', ms: 30 * 24 * 60 * 60 * 1000 },\n { value: 'custom', label: 'Custom range...' },\n];\n\nfunction buildDateWithTime(date: Date, timeStr: string): Date | null {\n const dateOnly = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n const combined = parse(timeStr, 'h:mm a', dateOnly);\n return isValid(combined) ? combined : null;\n}\n\nexport interface DateTimeRangePickerProps {\n preset?: DateRangePreset;\n onPresetChange?: (preset: DateRangePreset) => void;\n dateFrom?: Date;\n dateTo?: Date;\n onDateChange?: (value: Date | undefined, type: 'from' | 'to') => void;\n disabled?: boolean;\n /** Subset of presets to show. If omitted, all presets are shown. */\n presets?: readonly DateRangePreset[];\n /** Size passed through to the trigger Button. Defaults to 'md'. */\n size?: ButtonProps['size'];\n}\n\nexport function DateTimeRangePicker({\n preset = 'all',\n onPresetChange,\n dateFrom,\n dateTo,\n onDateChange,\n disabled,\n presets,\n size = 'md',\n}: DateTimeRangePickerProps) {\n const visiblePresets = presets ? DATE_PRESETS.filter(p => presets.includes(p.value)) : DATE_PRESETS;\n const fallbackPreset: DateRangePreset = visiblePresets.find(p => p.value !== 'custom')?.value ?? 'all';\n const [customRangeOpen, setCustomRangeOpen] = useState(false);\n const [draftDateFrom, setDraftDateFrom] = useState<Date | undefined>(dateFrom);\n const [draftDateTo, setDraftDateTo] = useState<Date | undefined>(dateTo);\n const [draftTimeFrom, setDraftTimeFrom] = useState('12:00 AM');\n const [draftTimeTo, setDraftTimeTo] = useState('11:59 PM');\n const [customRangeError, setCustomRangeError] = useState<string | undefined>();\n\n const datePresetLabel = DATE_PRESETS.find(p => p.value === preset)?.label ?? 'All';\n\n const handlePresetSelect = (value: DateRangePreset) => {\n onPresetChange?.(value);\n if (value === 'custom') {\n setDraftDateFrom(dateFrom);\n setDraftDateTo(dateTo);\n setDraftTimeFrom('12:00 AM');\n setDraftTimeTo('11:59 PM');\n setCustomRangeOpen(true);\n return;\n }\n const entry = DATE_PRESETS.find(p => p.value === value);\n if (entry?.ms) {\n onDateChange?.(new Date(Date.now() - entry.ms), 'from');\n onDateChange?.(undefined, 'to');\n } else {\n onDateChange?.(undefined, 'from');\n onDateChange?.(undefined, 'to');\n }\n };\n\n const applyCustomRange = () => {\n const fromDate = draftDateFrom ? (buildDateWithTime(draftDateFrom, draftTimeFrom) ?? draftDateFrom) : undefined;\n const toDate = draftDateTo ? (buildDateWithTime(draftDateTo, draftTimeTo) ?? draftDateTo) : undefined;\n if (fromDate && toDate && fromDate.getTime() > toDate.getTime()) {\n setCustomRangeError('Start date/time must be before end date/time');\n return;\n }\n setCustomRangeError(undefined);\n onDateChange?.(fromDate, 'from');\n onDateChange?.(toDate, 'to');\n setCustomRangeOpen(false);\n };\n\n if (preset === 'custom') {\n return (\n <Popover open={customRangeOpen} onOpenChange={setCustomRangeOpen}>\n <PopoverTrigger asChild>\n <Button size={size} disabled={disabled}>\n <CalendarIcon />\n {dateFrom ? dateFrom.toLocaleDateString() : 'Start'} {' \\u2013 '}\n {dateTo ? dateTo.toLocaleDateString() : 'End'}\n </Button>\n </PopoverTrigger>\n <PopoverContent align=\"start\" className={cn('w-auto p-0')}>\n <div className={cn('flex')}>\n <div className={cn('border-r border-border1')}>\n <span className={cn('block px-4 pt-3 text-ui-sm font-medium text-neutral3')}>Start</span>\n <DatePicker\n mode=\"single\"\n selected={draftDateFrom}\n month={draftDateFrom}\n onSelect={setDraftDateFrom}\n disabled={disabled}\n toDate={draftDateTo}\n />\n <TimePicker\n className=\"mx-4 mb-3 w-auto\"\n defaultValue={draftTimeFrom}\n onValueChange={v => {\n if (!disabled) setDraftTimeFrom(v);\n }}\n />\n </div>\n <div>\n <span className={cn('block px-4 pt-3 text-ui-sm font-medium text-neutral3')}>End</span>\n <DatePicker\n mode=\"single\"\n selected={draftDateTo}\n month={draftDateTo}\n onSelect={setDraftDateTo}\n disabled={disabled}\n fromDate={draftDateFrom}\n />\n <TimePicker\n className=\"mx-4 mb-3 w-auto\"\n defaultValue={draftTimeTo}\n onValueChange={v => {\n if (!disabled) setDraftTimeTo(v);\n }}\n />\n </div>\n </div>\n {customRangeError && <p className={cn('px-4 pb-1 text-ui-sm text-red-500')}>{customRangeError}</p>}\n <div className={cn('flex items-center justify-between px-4 pb-3')}>\n <button\n type=\"button\"\n disabled={disabled}\n className={cn(\n 'text-ui-sm text-neutral3 hover:text-neutral4',\n disabled && 'pointer-events-none opacity-50',\n )}\n onClick={() => {\n setCustomRangeError(undefined);\n handlePresetSelect(fallbackPreset);\n }}\n >\n ← Presets\n </button>\n <Button variant=\"primary\" size=\"sm\" onClick={applyCustomRange} disabled={disabled}>\n Apply\n </Button>\n </div>\n </PopoverContent>\n </Popover>\n );\n }\n\n return (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n <Button size={size} disabled={disabled}>\n <CalendarIcon />\n {datePresetLabel}\n </Button>\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {visiblePresets.map(p => (\n <DropdownMenu.Item key={p.value} onSelect={() => handlePresetSelect(p.value)}>\n {p.label}\n </DropdownMenu.Item>\n ))}\n </DropdownMenu.Content>\n </DropdownMenu>\n );\n}\n"],"names":["parse","isValid","useState","jsxs","Popover","jsx","PopoverTrigger","Button","CalendarIcon","PopoverContent","cn","DatePicker","TimePicker","DropdownMenu"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"date-time-range-picker-sT6pHDmU.cjs","sources":["../src/ds/components/DateTimeRangePicker/date-time-range-picker.tsx"],"sourcesContent":["import { isValid, parse } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { useState } from 'react';\nimport { Button } from '@/ds/components/Button/Button';\nimport type { ButtonProps } from '@/ds/components/Button/Button';\nimport { DatePicker, TimePicker } from '@/ds/components/DateTimePicker';\nimport { DropdownMenu } from '@/ds/components/DropdownMenu/dropdown-menu';\nimport { Popover, PopoverTrigger, PopoverContent } from '@/ds/components/Popover/popover';\nimport { cn } from '@/lib/utils';\n\nexport type DateRangePreset = 'all' | 'last-24h' | 'last-3d' | 'last-7d' | 'last-14d' | 'last-30d' | 'custom';\n\nconst DATE_PRESETS: { value: DateRangePreset; label: string; ms?: number }[] = [\n { value: 'all', label: 'All' },\n { value: 'last-24h', label: 'Last 24 hours', ms: 24 * 60 * 60 * 1000 },\n { value: 'last-3d', label: 'Last 3 days', ms: 3 * 24 * 60 * 60 * 1000 },\n { value: 'last-7d', label: 'Last 7 days', ms: 7 * 24 * 60 * 60 * 1000 },\n { value: 'last-14d', label: 'Last 14 days', ms: 14 * 24 * 60 * 60 * 1000 },\n { value: 'last-30d', label: 'Last 30 days', ms: 30 * 24 * 60 * 60 * 1000 },\n { value: 'custom', label: 'Custom range...' },\n];\n\nfunction buildDateWithTime(date: Date, timeStr: string): Date | null {\n const dateOnly = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n const combined = parse(timeStr, 'h:mm a', dateOnly);\n return isValid(combined) ? combined : null;\n}\n\nexport interface DateTimeRangePickerProps {\n preset?: DateRangePreset;\n onPresetChange?: (preset: DateRangePreset) => void;\n dateFrom?: Date;\n dateTo?: Date;\n onDateChange?: (value: Date | undefined, type: 'from' | 'to') => void;\n disabled?: boolean;\n /** Subset of presets to show. If omitted, all presets are shown. */\n presets?: readonly DateRangePreset[];\n /** Size passed through to the trigger Button. Defaults to 'md'. */\n size?: ButtonProps['size'];\n}\n\nexport function DateTimeRangePicker({\n preset = 'all',\n onPresetChange,\n dateFrom,\n dateTo,\n onDateChange,\n disabled,\n presets,\n size = 'md',\n}: DateTimeRangePickerProps) {\n const visiblePresets = presets ? DATE_PRESETS.filter(p => presets.includes(p.value)) : DATE_PRESETS;\n const fallbackPreset: DateRangePreset = visiblePresets.find(p => p.value !== 'custom')?.value ?? 'all';\n const [customRangeOpen, setCustomRangeOpen] = useState(false);\n const [draftDateFrom, setDraftDateFrom] = useState<Date | undefined>(dateFrom);\n const [draftDateTo, setDraftDateTo] = useState<Date | undefined>(dateTo);\n const [draftTimeFrom, setDraftTimeFrom] = useState('12:00 AM');\n const [draftTimeTo, setDraftTimeTo] = useState('11:59 PM');\n const [customRangeError, setCustomRangeError] = useState<string | undefined>();\n\n const datePresetLabel = DATE_PRESETS.find(p => p.value === preset)?.label ?? 'All';\n\n const handlePresetSelect = (value: DateRangePreset) => {\n onPresetChange?.(value);\n if (value === 'custom') {\n setDraftDateFrom(dateFrom);\n setDraftDateTo(dateTo);\n setDraftTimeFrom('12:00 AM');\n setDraftTimeTo('11:59 PM');\n setCustomRangeOpen(true);\n return;\n }\n const entry = DATE_PRESETS.find(p => p.value === value);\n if (entry?.ms) {\n onDateChange?.(new Date(Date.now() - entry.ms), 'from');\n onDateChange?.(undefined, 'to');\n } else {\n onDateChange?.(undefined, 'from');\n onDateChange?.(undefined, 'to');\n }\n };\n\n const applyCustomRange = () => {\n const fromDate = draftDateFrom ? (buildDateWithTime(draftDateFrom, draftTimeFrom) ?? draftDateFrom) : undefined;\n const toDate = draftDateTo ? (buildDateWithTime(draftDateTo, draftTimeTo) ?? draftDateTo) : undefined;\n if (fromDate && toDate && fromDate.getTime() > toDate.getTime()) {\n setCustomRangeError('Start date/time must be before end date/time');\n return;\n }\n setCustomRangeError(undefined);\n onDateChange?.(fromDate, 'from');\n onDateChange?.(toDate, 'to');\n setCustomRangeOpen(false);\n };\n\n if (preset === 'custom') {\n return (\n <Popover open={customRangeOpen} onOpenChange={setCustomRangeOpen}>\n <PopoverTrigger asChild>\n <Button size={size} disabled={disabled}>\n <CalendarIcon />\n {dateFrom ? dateFrom.toLocaleDateString() : 'Start'} {' \\u2013 '}\n {dateTo ? dateTo.toLocaleDateString() : 'End'}\n </Button>\n </PopoverTrigger>\n <PopoverContent align=\"start\" className={cn('w-auto p-0')}>\n <div className={cn('flex')}>\n <div className={cn('border-r border-border1')}>\n <span className={cn('block px-4 pt-3 text-ui-sm font-medium text-neutral3')}>Start</span>\n <DatePicker\n mode=\"single\"\n selected={draftDateFrom}\n month={draftDateFrom}\n onSelect={setDraftDateFrom}\n disabled={disabled}\n toDate={draftDateTo}\n />\n <TimePicker\n className=\"mx-4 mb-3 w-auto\"\n defaultValue={draftTimeFrom}\n onValueChange={v => {\n if (!disabled) setDraftTimeFrom(v);\n }}\n />\n </div>\n <div>\n <span className={cn('block px-4 pt-3 text-ui-sm font-medium text-neutral3')}>End</span>\n <DatePicker\n mode=\"single\"\n selected={draftDateTo}\n month={draftDateTo}\n onSelect={setDraftDateTo}\n disabled={disabled}\n fromDate={draftDateFrom}\n />\n <TimePicker\n className=\"mx-4 mb-3 w-auto\"\n defaultValue={draftTimeTo}\n onValueChange={v => {\n if (!disabled) setDraftTimeTo(v);\n }}\n />\n </div>\n </div>\n {customRangeError && <p className={cn('px-4 pb-1 text-ui-sm text-red-500')}>{customRangeError}</p>}\n <div className={cn('flex items-center justify-between px-4 pb-3')}>\n <button\n type=\"button\"\n disabled={disabled}\n className={cn(\n 'text-ui-sm text-neutral3 hover:text-neutral4',\n disabled && 'pointer-events-none opacity-50',\n )}\n onClick={() => {\n setCustomRangeError(undefined);\n handlePresetSelect(fallbackPreset);\n }}\n >\n ← Presets\n </button>\n <Button variant=\"primary\" size=\"sm\" onClick={applyCustomRange} disabled={disabled}>\n Apply\n </Button>\n </div>\n </PopoverContent>\n </Popover>\n );\n }\n\n return (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n <Button size={size} disabled={disabled}>\n <CalendarIcon />\n {datePresetLabel}\n </Button>\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {visiblePresets.map(p => (\n <DropdownMenu.Item key={p.value} onSelect={() => handlePresetSelect(p.value)}>\n {p.label}\n </DropdownMenu.Item>\n ))}\n </DropdownMenu.Content>\n </DropdownMenu>\n );\n}\n"],"names":["parse","isValid","useState","jsxs","Popover","jsx","PopoverTrigger","Button","CalendarIcon","PopoverContent","cn","DatePicker","TimePicker","DropdownMenu"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ require('./dialog.css');const jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
const dialog = require('@base-ui/react/dialog');
|
|
5
5
|
const lucideReact = require('lucide-react');
|
|
6
6
|
const React = require('react');
|
|
7
|
-
const Button = require('./Button-
|
|
7
|
+
const Button = require('./Button-B4Ixj2aW.cjs');
|
|
8
8
|
const asChild = require('./as-child-Dgr1RHLO.cjs');
|
|
9
9
|
const utils_cn = require('./cn-vA5sWo9W.cjs');
|
|
10
10
|
;/* empty css */
|
|
@@ -104,4 +104,4 @@ exports.DialogOverlay = DialogOverlay;
|
|
|
104
104
|
exports.DialogPortal = DialogPortal;
|
|
105
105
|
exports.DialogTitle = DialogTitle;
|
|
106
106
|
exports.DialogTrigger = DialogTrigger;
|
|
107
|
-
//# sourceMappingURL=dialog-
|
|
107
|
+
//# sourceMappingURL=dialog-5ZYCeKf-.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-
|
|
1
|
+
{"version":3,"file":"dialog-5ZYCeKf-.cjs","sources":["../src/ds/components/Dialog/dialog.tsx"],"sourcesContent":["import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { X } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { asChildRenderProps } from '@/lib/as-child';\nimport { cn } from '@/lib/utils';\n\nimport './dialog.css';\n\nconst Dialog = DialogPrimitive.Root;\n\ntype DialogTriggerProps = DialogPrimitive.Trigger.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DialogTrigger = React.forwardRef<HTMLButtonElement, DialogTriggerProps>(\n ({ asChild, children, ...props }, ref) => {\n return (\n <DialogPrimitive.Trigger ref={ref} {...asChildRenderProps(asChild, children)} {...props}>\n {asChild ? undefined : children}\n </DialogPrimitive.Trigger>\n );\n },\n);\nDialogTrigger.displayName = 'DialogTrigger';\n\nconst DialogPortal = DialogPrimitive.Portal;\n\ntype DialogCloseProps = DialogPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DialogClose = React.forwardRef<HTMLButtonElement, DialogCloseProps>(({ asChild, children, ...props }, ref) => {\n return (\n <DialogPrimitive.Close ref={ref} {...asChildRenderProps(asChild, children)} {...props}>\n {asChild ? undefined : children}\n </DialogPrimitive.Close>\n );\n});\nDialogClose.displayName = 'DialogClose';\n\ntype DialogOverlayProps = Omit<DialogPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogOverlay = React.forwardRef<HTMLDivElement, DialogOverlayProps>(({ className, ...props }, ref) => (\n <DialogPrimitive.Backdrop\n ref={ref}\n className={cn('dialog-overlay-anim fixed inset-0 z-50 bg-overlay backdrop-blur-xs', className)}\n {...props}\n />\n));\nDialogOverlay.displayName = 'DialogOverlay';\n\ntype DialogContentProps = Omit<DialogPrimitive.Popup.Props, 'className'> & {\n className?: string;\n showOverlay?: boolean;\n overlayClassName?: string;\n};\n\nconst DialogContent = React.forwardRef<HTMLDivElement, DialogContentProps>(\n ({ className, children, showOverlay = true, overlayClassName, ...props }, ref) => (\n <DialogPortal>\n {showOverlay && <DialogOverlay className={overlayClassName} />}\n <DialogPrimitive.Popup\n ref={ref}\n data-slot=\"dialog-content\"\n className={cn(\n 'dialog-content-anim',\n 'fixed top-[50%] left-[50%] z-50 grid translate-[-50%]',\n 'w-full max-w-[calc(100%-2rem)] sm:max-w-lg',\n 'rounded-xl border border-border1/40 bg-surface2/96 shadow-dialog backdrop-blur-md',\n 'focus-visible:outline-hidden',\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close\n render={\n <Button variant=\"ghost\" size=\"sm\" className=\"absolute top-3 right-3\" aria-label=\"Close\">\n <X />\n </Button>\n }\n />\n </DialogPrimitive.Popup>\n </DialogPortal>\n ),\n);\nDialogContent.displayName = 'DialogContent';\n\nconst DialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col gap-0.5 px-4 py-3 text-left', className)} {...props} />\n);\nDialogHeader.displayName = 'DialogHeader';\n\nconst DialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col-reverse gap-1.5 px-4 py-2.5 sm:flex-row sm:justify-end', className)} {...props} />\n);\nDialogFooter.displayName = 'DialogFooter';\n\nconst DialogBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('max-h-[50vh] overflow-y-auto px-4 py-3.5', className)} {...props} />\n);\nDialogBody.displayName = 'DialogBody';\n\ntype DialogTitleProps = Omit<DialogPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogTitle = React.forwardRef<HTMLHeadingElement, DialogTitleProps>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title ref={ref} className={cn('text-ui-md font-medium', className)} {...props} />\n));\nDialogTitle.displayName = 'DialogTitle';\n\ntype DialogDescriptionProps = Omit<DialogPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogDescription = React.forwardRef<HTMLParagraphElement, DialogDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DialogPrimitive.Description ref={ref} className={cn('sr-only', className)} {...props} />\n ),\n);\nDialogDescription.displayName = 'DialogDescription';\n\nexport {\n Dialog,\n DialogPortal,\n DialogOverlay,\n DialogTrigger,\n DialogClose,\n DialogContent,\n DialogHeader,\n DialogFooter,\n DialogBody,\n DialogTitle,\n DialogDescription,\n};\n"],"names":["DialogPrimitive","React","asChild","jsx","asChildRenderProps","cn","jsxs","Button","X"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
2
2
|
import { Dialog as Dialog$1 } from '@base-ui/react/dialog';
|
|
3
3
|
import { X } from 'lucide-react';
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import { B as Button } from './Button-
|
|
5
|
+
import { B as Button } from './Button-C-9Pzy-Z.js';
|
|
6
6
|
import { a as asChildRenderProps } from './as-child-N1qMDCr8.js';
|
|
7
7
|
import { c as cn } from './cn-BakJzhuv.js';
|
|
8
8
|
import './dialog.css';/* empty css */
|
|
@@ -73,4 +73,4 @@ const DialogDescription = React.forwardRef(
|
|
|
73
73
|
DialogDescription.displayName = "DialogDescription";
|
|
74
74
|
|
|
75
75
|
export { Dialog as D, DialogBody as a, DialogClose as b, DialogContent as c, DialogDescription as d, DialogFooter as e, DialogHeader as f, DialogOverlay as g, DialogPortal as h, DialogTitle as i, DialogTrigger as j };
|
|
76
|
-
//# sourceMappingURL=dialog-
|
|
76
|
+
//# sourceMappingURL=dialog-DDXW5M21.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-
|
|
1
|
+
{"version":3,"file":"dialog-DDXW5M21.js","sources":["../src/ds/components/Dialog/dialog.tsx"],"sourcesContent":["import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';\nimport { X } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { asChildRenderProps } from '@/lib/as-child';\nimport { cn } from '@/lib/utils';\n\nimport './dialog.css';\n\nconst Dialog = DialogPrimitive.Root;\n\ntype DialogTriggerProps = DialogPrimitive.Trigger.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DialogTrigger = React.forwardRef<HTMLButtonElement, DialogTriggerProps>(\n ({ asChild, children, ...props }, ref) => {\n return (\n <DialogPrimitive.Trigger ref={ref} {...asChildRenderProps(asChild, children)} {...props}>\n {asChild ? undefined : children}\n </DialogPrimitive.Trigger>\n );\n },\n);\nDialogTrigger.displayName = 'DialogTrigger';\n\nconst DialogPortal = DialogPrimitive.Portal;\n\ntype DialogCloseProps = DialogPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DialogClose = React.forwardRef<HTMLButtonElement, DialogCloseProps>(({ asChild, children, ...props }, ref) => {\n return (\n <DialogPrimitive.Close ref={ref} {...asChildRenderProps(asChild, children)} {...props}>\n {asChild ? undefined : children}\n </DialogPrimitive.Close>\n );\n});\nDialogClose.displayName = 'DialogClose';\n\ntype DialogOverlayProps = Omit<DialogPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogOverlay = React.forwardRef<HTMLDivElement, DialogOverlayProps>(({ className, ...props }, ref) => (\n <DialogPrimitive.Backdrop\n ref={ref}\n className={cn('dialog-overlay-anim fixed inset-0 z-50 bg-overlay backdrop-blur-xs', className)}\n {...props}\n />\n));\nDialogOverlay.displayName = 'DialogOverlay';\n\ntype DialogContentProps = Omit<DialogPrimitive.Popup.Props, 'className'> & {\n className?: string;\n showOverlay?: boolean;\n overlayClassName?: string;\n};\n\nconst DialogContent = React.forwardRef<HTMLDivElement, DialogContentProps>(\n ({ className, children, showOverlay = true, overlayClassName, ...props }, ref) => (\n <DialogPortal>\n {showOverlay && <DialogOverlay className={overlayClassName} />}\n <DialogPrimitive.Popup\n ref={ref}\n data-slot=\"dialog-content\"\n className={cn(\n 'dialog-content-anim',\n 'fixed top-[50%] left-[50%] z-50 grid translate-[-50%]',\n 'w-full max-w-[calc(100%-2rem)] sm:max-w-lg',\n 'rounded-xl border border-border1/40 bg-surface2/96 shadow-dialog backdrop-blur-md',\n 'focus-visible:outline-hidden',\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close\n render={\n <Button variant=\"ghost\" size=\"sm\" className=\"absolute top-3 right-3\" aria-label=\"Close\">\n <X />\n </Button>\n }\n />\n </DialogPrimitive.Popup>\n </DialogPortal>\n ),\n);\nDialogContent.displayName = 'DialogContent';\n\nconst DialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col gap-0.5 px-4 py-3 text-left', className)} {...props} />\n);\nDialogHeader.displayName = 'DialogHeader';\n\nconst DialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col-reverse gap-1.5 px-4 py-2.5 sm:flex-row sm:justify-end', className)} {...props} />\n);\nDialogFooter.displayName = 'DialogFooter';\n\nconst DialogBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('max-h-[50vh] overflow-y-auto px-4 py-3.5', className)} {...props} />\n);\nDialogBody.displayName = 'DialogBody';\n\ntype DialogTitleProps = Omit<DialogPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogTitle = React.forwardRef<HTMLHeadingElement, DialogTitleProps>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title ref={ref} className={cn('text-ui-md font-medium', className)} {...props} />\n));\nDialogTitle.displayName = 'DialogTitle';\n\ntype DialogDescriptionProps = Omit<DialogPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DialogDescription = React.forwardRef<HTMLParagraphElement, DialogDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DialogPrimitive.Description ref={ref} className={cn('sr-only', className)} {...props} />\n ),\n);\nDialogDescription.displayName = 'DialogDescription';\n\nexport {\n Dialog,\n DialogPortal,\n DialogOverlay,\n DialogTrigger,\n DialogClose,\n DialogContent,\n DialogHeader,\n DialogFooter,\n DialogBody,\n DialogTitle,\n DialogDescription,\n};\n"],"names":["DialogPrimitive"],"mappings":";;;;;;;;;AAUA,MAAM,SAASA,QAAA,CAAgB;AAO/B,MAAM,gBAAgB,KAAA,CAAM,UAAA;AAAA,EAC1B,CAAC,EAAE,OAAA,EAAS,UAAU,GAAG,KAAA,IAAS,GAAA,KAAQ;AACxC,IAAA,uBACE,GAAA,CAACA,QAAA,CAAgB,OAAA,EAAhB,EAAwB,KAAW,GAAG,kBAAA,CAAmB,OAAA,EAAS,QAAQ,CAAA,EAAI,GAAG,KAAA,EAC/E,QAAA,EAAA,OAAA,GAAU,SAAY,QAAA,EACzB,CAAA;AAAA,EAEJ;AACF;AACA,aAAA,CAAc,WAAA,GAAc,eAAA;AAE5B,MAAM,eAAeA,QAAA,CAAgB;AAOrC,MAAM,WAAA,GAAc,KAAA,CAAM,UAAA,CAAgD,CAAC,EAAE,SAAS,QAAA,EAAU,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAClH,EAAA,uBACE,GAAA,CAACA,QAAA,CAAgB,KAAA,EAAhB,EAAsB,KAAW,GAAG,kBAAA,CAAmB,OAAA,EAAS,QAAQ,CAAA,EAAI,GAAG,KAAA,EAC7E,QAAA,EAAA,OAAA,GAAU,SAAY,QAAA,EACzB,CAAA;AAEJ,CAAC;AACD,WAAA,CAAY,WAAA,GAAc,aAAA;AAM1B,MAAM,aAAA,GAAgB,MAAM,UAAA,CAA+C,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,qBACnG,GAAA;AAAA,EAACA,QAAA,CAAgB,QAAA;AAAA,EAAhB;AAAA,IACC,GAAA;AAAA,IACA,SAAA,EAAW,EAAA,CAAG,oEAAA,EAAsE,SAAS,CAAA;AAAA,IAC5F,GAAG;AAAA;AACN,CACD;AACD,aAAA,CAAc,WAAA,GAAc,eAAA;AAQ5B,MAAM,gBAAgB,KAAA,CAAM,UAAA;AAAA,EAC1B,CAAC,EAAE,SAAA,EAAW,QAAA,EAAU,WAAA,GAAc,IAAA,EAAM,gBAAA,EAAkB,GAAG,KAAA,EAAM,EAAG,GAAA,qBACxE,IAAA,CAAC,YAAA,EAAA,EACE,QAAA,EAAA;AAAA,IAAA,WAAA,oBAAe,GAAA,CAAC,aAAA,EAAA,EAAc,SAAA,EAAW,gBAAA,EAAkB,CAAA;AAAA,oBAC5D,IAAA;AAAA,MAACA,QAAA,CAAgB,KAAA;AAAA,MAAhB;AAAA,QACC,GAAA;AAAA,QACA,WAAA,EAAU,gBAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,qBAAA;AAAA,UACA,uDAAA;AAAA,UACA,4CAAA;AAAA,UACA,mFAAA;AAAA,UACA,8BAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,0BACD,GAAA;AAAA,YAACA,QAAA,CAAgB,KAAA;AAAA,YAAhB;AAAA,cACC,MAAA,kBACE,GAAA,CAAC,MAAA,EAAA,EAAO,OAAA,EAAQ,OAAA,EAAQ,IAAA,EAAK,IAAA,EAAK,SAAA,EAAU,wBAAA,EAAyB,YAAA,EAAW,OAAA,EAC9E,QAAA,kBAAA,GAAA,CAAC,KAAE,CAAA,EACL;AAAA;AAAA;AAEJ;AAAA;AAAA;AACF,GAAA,EACF;AAEJ;AACA,aAAA,CAAc,WAAA,GAAc,eAAA;AAE5B,MAAM,YAAA,GAAe,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,qBAC1C,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,EAAA,CAAG,2CAAA,EAA6C,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAEzF,YAAA,CAAa,WAAA,GAAc,cAAA;AAE3B,MAAM,YAAA,GAAe,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,qBAC1C,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,EAAA,CAAG,sEAAA,EAAwE,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAEpH,YAAA,CAAa,WAAA,GAAc,cAAA;AAE3B,MAAM,UAAA,GAAa,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,qBACxC,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,EAAA,CAAG,0CAAA,EAA4C,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAExF,UAAA,CAAW,WAAA,GAAc,YAAA;AAMzB,MAAM,WAAA,GAAc,MAAM,UAAA,CAAiD,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,qBACnG,GAAA,CAACA,SAAgB,KAAA,EAAhB,EAAsB,KAAU,SAAA,EAAW,EAAA,CAAG,0BAA0B,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CACjG;AACD,WAAA,CAAY,WAAA,GAAc,aAAA;AAM1B,MAAM,oBAAoB,KAAA,CAAM,UAAA;AAAA,EAC9B,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,wBACxB,GAAA,CAACA,QAAA,CAAgB,WAAA,EAAhB,EAA4B,KAAU,SAAA,EAAW,EAAA,CAAG,WAAW,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAE3F;AACA,iBAAA,CAAkB,WAAA,GAAc,mBAAA;;;;"}
|
|
@@ -6,9 +6,9 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
6
6
|
const dateFns = require('date-fns');
|
|
7
7
|
const lucideReact = require('lucide-react');
|
|
8
8
|
const React = require('react');
|
|
9
|
-
const Button = require('../../../Button-
|
|
9
|
+
const Button = require('../../../Button-B4Ixj2aW.cjs');
|
|
10
10
|
const buttonsGroup = require('../../../buttons-group-Dw8Wu4sj.cjs');
|
|
11
|
-
const copyButton = require('../../../copy-button-
|
|
11
|
+
const copyButton = require('../../../copy-button-DwZ3c7D4.cjs');
|
|
12
12
|
const components_DataDetailsPanel = require('../../../components/DataDetailsPanel.cjs.js');
|
|
13
13
|
const utils_cn = require('../../../cn-vA5sWo9W.cjs');
|
|
14
14
|
|
|
@@ -2,9 +2,9 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
|
2
2
|
import { format } from 'date-fns';
|
|
3
3
|
import { ChevronsUpDownIcon, ChevronsDownUpIcon, ArrowUpIcon, ArrowDownIcon, ArrowRightIcon } from 'lucide-react';
|
|
4
4
|
import { useState, Fragment as Fragment$1 } from 'react';
|
|
5
|
-
import { B as Button } from '../../../Button-
|
|
5
|
+
import { B as Button } from '../../../Button-C-9Pzy-Z.js';
|
|
6
6
|
import { B as ButtonsGroup } from '../../../buttons-group-DJh4wnMs.js';
|
|
7
|
-
import { C as CopyButton } from '../../../copy-button-
|
|
7
|
+
import { C as CopyButton } from '../../../copy-button-B1GWIQ-x.js';
|
|
8
8
|
import { DataDetailsPanel } from '../../../components/DataDetailsPanel.es.js';
|
|
9
9
|
import { c as cn } from '../../../cn-BakJzhuv.js';
|
|
10
10
|
|
|
@@ -7,7 +7,7 @@ const lucideReact = require('lucide-react');
|
|
|
7
7
|
const EmptyState = require('../../../EmptyState-sff7IGrD.cjs');
|
|
8
8
|
const ErrorState = require('../../../ErrorState-DvsG3RMz.cjs');
|
|
9
9
|
const PermissionDenied = require('../../../PermissionDenied-Dtre6Wn1.cjs');
|
|
10
|
-
const SessionExpired = require('../../../SessionExpired-
|
|
10
|
+
const SessionExpired = require('../../../SessionExpired-CL4bppLl.cjs');
|
|
11
11
|
const utils_queryUtils = require('../../../utils/query-utils.cjs.js');
|
|
12
12
|
|
|
13
13
|
function LogsErrorContent({ error, resource, errorTitle }) {
|
|
@@ -3,7 +3,7 @@ import { CircleSlashIcon } from 'lucide-react';
|
|
|
3
3
|
import { E as EmptyState } from '../../../EmptyState-BLd-LJOA.js';
|
|
4
4
|
import { E as ErrorState } from '../../../ErrorState-t59EAa55.js';
|
|
5
5
|
import { P as PermissionDenied } from '../../../PermissionDenied-8otNeK_X.js';
|
|
6
|
-
import { S as SessionExpired } from '../../../SessionExpired-
|
|
6
|
+
import { S as SessionExpired } from '../../../SessionExpired-qvMB5AP_.js';
|
|
7
7
|
import { is401UnauthorizedError, is403ForbiddenError, isObservabilityUnavailableError, isUnsupportedObservabilityOperationError } from '../../../utils/query-utils.es.js';
|
|
8
8
|
|
|
9
9
|
function LogsErrorContent({ error, resource, errorTitle }) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
const propertyFilterApplied = require('../../../property-filter-applied-
|
|
6
|
+
const propertyFilterApplied = require('../../../property-filter-applied-ChK5XtsC.cjs');
|
|
7
7
|
const utils_cn = require('../../../cn-vA5sWo9W.cjs');
|
|
8
8
|
|
|
9
9
|
function LogsToolbar({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { P as PropertyFilterApplied, a as PropertyFilterActions } from '../../../property-filter-applied-
|
|
2
|
+
import { P as PropertyFilterApplied, a as PropertyFilterActions } from '../../../property-filter-applied-C2teL4uw.js';
|
|
3
3
|
import { c as cn } from '../../../cn-BakJzhuv.js';
|
|
4
4
|
|
|
5
5
|
function LogsToolbar({
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const dateFns = require('date-fns');
|
|
7
7
|
const lucideReact = require('lucide-react');
|
|
8
|
-
const Button = require('../../../Button-
|
|
8
|
+
const Button = require('../../../Button-B4Ixj2aW.cjs');
|
|
9
9
|
const EmptyState = require('../../../EmptyState-sff7IGrD.cjs');
|
|
10
10
|
|
|
11
11
|
const PRESET_LABELS = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { format } from 'date-fns';
|
|
3
3
|
import { ExternalLinkIcon, CircleSlashIcon } from 'lucide-react';
|
|
4
|
-
import { B as Button } from '../../../Button-
|
|
4
|
+
import { B as Button } from '../../../Button-C-9Pzy-Z.js';
|
|
5
5
|
import { E as EmptyState } from '../../../EmptyState-BLd-LJOA.js';
|
|
6
6
|
|
|
7
7
|
const PRESET_LABELS = {
|
|
@@ -6,7 +6,7 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
6
6
|
const lucideReact = require('lucide-react');
|
|
7
7
|
const React = require('react');
|
|
8
8
|
const recharts = require('recharts');
|
|
9
|
-
const Button = require('../../../Button-
|
|
9
|
+
const Button = require('../../../Button-B4Ixj2aW.cjs');
|
|
10
10
|
const domains_memory_lib_replaySelection = require('../lib/replay-selection.cjs.js');
|
|
11
11
|
const domains_memory_lib_timeline = require('../lib/timeline.cjs.js');
|
|
12
12
|
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
|
2
2
|
import { RotateCcw } from 'lucide-react';
|
|
3
3
|
import { useCallback, useState, useEffect, useMemo, useRef } from 'react';
|
|
4
4
|
import { ResponsiveContainer, ComposedChart, XAxis, YAxis, Tooltip, Area, ReferenceLine, AreaChart, ScatterChart, Scatter } from 'recharts';
|
|
5
|
-
import { B as Button } from '../../../Button-
|
|
5
|
+
import { B as Button } from '../../../Button-C-9Pzy-Z.js';
|
|
6
6
|
import { tToTimestampMs } from '../lib/replay-selection.es.js';
|
|
7
7
|
import { toT, formatTimeDisplay, tToTimestamp } from '../lib/timeline.es.js';
|
|
8
8
|
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const lucideReact = require('lucide-react');
|
|
7
7
|
const React = require('react');
|
|
8
|
-
const Button = require('../../../Button-
|
|
8
|
+
const Button = require('../../../Button-B4Ixj2aW.cjs');
|
|
9
9
|
const skeleton = require('../../../skeleton-C0zXt2_f.cjs');
|
|
10
10
|
const Txt = require('../../../Txt-I5lK8zy7.cjs');
|
|
11
11
|
const icons_MemoryIcon = require('../../../icons/MemoryIcon.cjs.js');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { ArrowLeftIcon } from 'lucide-react';
|
|
3
3
|
import { useState, useMemo, useEffect } from 'react';
|
|
4
|
-
import { B as Button } from '../../../Button-
|
|
4
|
+
import { B as Button } from '../../../Button-C-9Pzy-Z.js';
|
|
5
5
|
import { S as Skeleton } from '../../../skeleton-C5-7V8Ni.js';
|
|
6
6
|
import { T as Txt } from '../../../Txt-Df42XG5p.js';
|
|
7
7
|
import { MemoryIcon } from '../../../icons/MemoryIcon.es.js';
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const lucideReact = require('lucide-react');
|
|
7
|
-
const Button = require('../../../Button-
|
|
7
|
+
const Button = require('../../../Button-B4Ixj2aW.cjs');
|
|
8
8
|
|
|
9
9
|
function OpenInTracesButton({ href, LinkComponent = "a" }) {
|
|
10
10
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { LogsIcon, EyeIcon } from 'lucide-react';
|
|
3
|
-
import { B as Button } from '../../../Button-
|
|
3
|
+
import { B as Button } from '../../../Button-C-9Pzy-Z.js';
|
|
4
4
|
|
|
5
5
|
function OpenInTracesButton({ href, LinkComponent = "a" }) {
|
|
6
6
|
return /* @__PURE__ */ jsx(
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const React = require('react');
|
|
7
|
-
const dateTimeRangePicker = require('../../../date-time-range-picker-
|
|
7
|
+
const dateTimeRangePicker = require('../../../date-time-range-picker-sT6pHDmU.cjs');
|
|
8
8
|
const domains_metrics_hooks_useMetrics = require('../hooks/use-metrics.cjs.js');
|
|
9
9
|
|
|
10
10
|
const METRICS_PRESETS = [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useRef } from 'react';
|
|
3
|
-
import { D as DateTimeRangePicker } from '../../../date-time-range-picker-
|
|
3
|
+
import { D as DateTimeRangePicker } from '../../../date-time-range-picker-BQpZVrH7.js';
|
|
4
4
|
import { useMetrics } from '../hooks/use-metrics.es.js';
|
|
5
5
|
|
|
6
6
|
const METRICS_PRESETS = [
|
|
@@ -7,7 +7,8 @@ const React = require('react');
|
|
|
7
7
|
const metricsCard = require('../../../metrics-card-DmbKNY3U.cjs');
|
|
8
8
|
const metricsLineChart = require('../../../metrics-line-chart-B_0w522y.cjs');
|
|
9
9
|
const tabsContent = require('../../../tabs-content-wBU5qmb6.cjs');
|
|
10
|
-
const
|
|
10
|
+
const tabsRoot = require('../../../tabs-root-VtBc6K2q.cjs');
|
|
11
|
+
const tabsTab = require('../../../tabs-tab-Cq4YR31P.cjs');
|
|
11
12
|
const domains_metrics_components_metricsUtils = require('./metrics-utils.cjs.js');
|
|
12
13
|
|
|
13
14
|
const latencySeries = [
|
|
@@ -72,7 +73,7 @@ function LatencyCardView({ data, isLoading, isError, onPointClick, actions }) {
|
|
|
72
73
|
renderedActions ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Actions, { children: renderedActions }) : null
|
|
73
74
|
] }),
|
|
74
75
|
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Loading, {}) : isError ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Error, { message: "Failed to load latency data" }) : /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Content, { children: !hasData ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.NoData, { message: "No latency data yet" }) : /* @__PURE__ */ jsxRuntime.jsxs(
|
|
75
|
-
|
|
76
|
+
tabsRoot.Tabs,
|
|
76
77
|
{
|
|
77
78
|
value: activeTab,
|
|
78
79
|
onValueChange: (value) => {
|
|
@@ -83,7 +84,7 @@ function LatencyCardView({ data, isLoading, isError, onPointClick, actions }) {
|
|
|
83
84
|
defaultTab: initialTab,
|
|
84
85
|
className: "overflow-visible",
|
|
85
86
|
children: [
|
|
86
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
87
|
+
/* @__PURE__ */ jsxRuntime.jsxs(tabsRoot.TabList, { children: [
|
|
87
88
|
/* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tab, { value: "agents", disabled: !agentsHasData, disabledTooltip: "No agent latency data for this period", children: "Agents" }),
|
|
88
89
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
89
90
|
tabsTab.Tab,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"latency-card-view.cjs.js","sources":["../../../../src/domains/metrics/components/latency-card-view.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { ReactNode } from 'react';\nimport { MetricsCard } from '../../../ds/components/MetricsCard/metrics-card';\nimport { MetricsLineChart } from '../../../ds/components/MetricsLineChart/metrics-line-chart';\nimport { TabContent } from '../../../ds/components/Tabs/tabs-content';\nimport { TabList } from '../../../ds/components/Tabs/tabs-list';\nimport { Tabs } from '../../../ds/components/Tabs/tabs-root';\nimport { Tab } from '../../../ds/components/Tabs/tabs-tab';\nimport type { LatencyPoint } from '../hooks/use-latency-metrics';\nimport { CHART_COLORS } from './metrics-utils';\n\nconst latencySeries = [\n {\n dataKey: 'p50',\n label: 'p50',\n color: CHART_COLORS.blue,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p50 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n {\n dataKey: 'p95',\n label: 'p95',\n color: CHART_COLORS.yellow,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p95 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n];\n\nexport type LatencyTab = 'agents' | 'workflows' | 'tools';\n\nfunction isLatencyTab(value: string): value is LatencyTab {\n return value === 'agents' || value === 'workflows' || value === 'tools';\n}\n\nfunction LatencyChart({ data, onPointClick }: { data: LatencyPoint[]; onPointClick?: (point: LatencyPoint) => void }) {\n if (data.length === 0) {\n return <MetricsCard.NoData message=\"No latency data yet\" />;\n }\n return (\n <MetricsLineChart\n data={data}\n series={latencySeries}\n onPointClick={\n onPointClick\n ? point => {\n const p = point as LatencyPoint;\n if (typeof p?.tsMs === 'number' && Number.isFinite(p.tsMs)) onPointClick(p);\n }\n : undefined\n }\n />\n );\n}\n\nexport interface LatencyCardViewProps {\n data: { agentData: LatencyPoint[]; workflowData: LatencyPoint[]; toolData: LatencyPoint[] } | undefined;\n isLoading: boolean;\n isError: boolean;\n /** Optional drilldown: invoked when a chart node is clicked. Container provides the navigation. */\n onPointClick?: (tab: LatencyTab, point: LatencyPoint) => void;\n /**\n * Optional slot for top-bar action buttons (e.g. \"View in Traces\").\n * Pass a function to receive the active tab so the action can scope itself to the current entity type.\n */\n actions?: ReactNode | ((tab: LatencyTab) => ReactNode);\n}\n\nexport function LatencyCardView({ data, isLoading, isError, onPointClick, actions }: LatencyCardViewProps) {\n const agentsHasData = (data?.agentData.length ?? 0) > 0;\n const workflowsHasData = (data?.workflowData.length ?? 0) > 0;\n const toolsHasData = (data?.toolData.length ?? 0) > 0;\n const tabHasData = {\n agents: agentsHasData,\n workflows: workflowsHasData,\n tools: toolsHasData,\n } as const;\n const initialTab: LatencyTab = agentsHasData\n ? 'agents'\n : workflowsHasData\n ? 'workflows'\n : toolsHasData\n ? 'tools'\n : 'agents';\n const [selectedTab, setSelectedTab] = useState<LatencyTab>('agents');\n const activeTab = tabHasData[selectedTab] ? selectedTab : initialTab;\n const renderedActions = typeof actions === 'function' ? actions(activeTab) : actions;\n const hasData = !!data && (data.agentData.length > 0 || data.workflowData.length > 0 || data.toolData.length > 0);\n const p50Values = data\n ? Object.values(data)\n .filter(Array.isArray)\n .flat()\n .map(d => d.p50)\n .filter((v): v is number => typeof v === 'number')\n : [];\n const avgP50 =\n p50Values.length > 0 ? `${Math.round(p50Values.reduce((s, v) => s + v, 0) / p50Values.length)}ms` : '—';\n\n return (\n <MetricsCard>\n <MetricsCard.TopBar>\n <MetricsCard.TitleAndDescription title=\"Latency\" description=\"Hourly p50 and p95 latency.\" />\n {hasData && <MetricsCard.Summary value={avgP50} label=\"Avg p50\" />}\n {renderedActions ? <MetricsCard.Actions>{renderedActions}</MetricsCard.Actions> : null}\n </MetricsCard.TopBar>\n {isLoading ? (\n <MetricsCard.Loading />\n ) : isError ? (\n <MetricsCard.Error message=\"Failed to load latency data\" />\n ) : (\n <MetricsCard.Content>\n {!hasData ? (\n <MetricsCard.NoData message=\"No latency data yet\" />\n ) : (\n <Tabs\n value={activeTab}\n onValueChange={value => {\n if (isLatencyTab(value) && tabHasData[value]) {\n setSelectedTab(value);\n }\n }}\n defaultTab={initialTab}\n className=\"overflow-visible\"\n >\n <TabList>\n <Tab value=\"agents\" disabled={!agentsHasData} disabledTooltip=\"No agent latency data for this period\">\n Agents\n </Tab>\n <Tab\n value=\"workflows\"\n disabled={!workflowsHasData}\n disabledTooltip=\"No workflow latency data for this period\"\n >\n Workflows\n </Tab>\n <Tab value=\"tools\" disabled={!toolsHasData} disabledTooltip=\"No tool latency data for this period\">\n Tools\n </Tab>\n </TabList>\n <TabContent value=\"agents\">\n <LatencyChart\n data={data.agentData}\n onPointClick={onPointClick ? p => onPointClick('agents', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"workflows\">\n <LatencyChart\n data={data.workflowData}\n onPointClick={onPointClick ? p => onPointClick('workflows', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"tools\">\n <LatencyChart\n data={data.toolData}\n onPointClick={onPointClick ? p => onPointClick('tools', p) : undefined}\n />\n </TabContent>\n </Tabs>\n )}\n </MetricsCard.Content>\n )}\n </MetricsCard>\n );\n}\n"],"names":["CHART_COLORS","jsx","MetricsCard","MetricsLineChart","useState","jsxs","Tabs","TabList","Tab","TabContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"latency-card-view.cjs.js","sources":["../../../../src/domains/metrics/components/latency-card-view.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { ReactNode } from 'react';\nimport { MetricsCard } from '../../../ds/components/MetricsCard/metrics-card';\nimport { MetricsLineChart } from '../../../ds/components/MetricsLineChart/metrics-line-chart';\nimport { TabContent } from '../../../ds/components/Tabs/tabs-content';\nimport { TabList } from '../../../ds/components/Tabs/tabs-list';\nimport { Tabs } from '../../../ds/components/Tabs/tabs-root';\nimport { Tab } from '../../../ds/components/Tabs/tabs-tab';\nimport type { LatencyPoint } from '../hooks/use-latency-metrics';\nimport { CHART_COLORS } from './metrics-utils';\n\nconst latencySeries = [\n {\n dataKey: 'p50',\n label: 'p50',\n color: CHART_COLORS.blue,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p50 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n {\n dataKey: 'p95',\n label: 'p95',\n color: CHART_COLORS.yellow,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p95 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n];\n\nexport type LatencyTab = 'agents' | 'workflows' | 'tools';\n\nfunction isLatencyTab(value: string): value is LatencyTab {\n return value === 'agents' || value === 'workflows' || value === 'tools';\n}\n\nfunction LatencyChart({ data, onPointClick }: { data: LatencyPoint[]; onPointClick?: (point: LatencyPoint) => void }) {\n if (data.length === 0) {\n return <MetricsCard.NoData message=\"No latency data yet\" />;\n }\n return (\n <MetricsLineChart\n data={data}\n series={latencySeries}\n onPointClick={\n onPointClick\n ? point => {\n const p = point as LatencyPoint;\n if (typeof p?.tsMs === 'number' && Number.isFinite(p.tsMs)) onPointClick(p);\n }\n : undefined\n }\n />\n );\n}\n\nexport interface LatencyCardViewProps {\n data: { agentData: LatencyPoint[]; workflowData: LatencyPoint[]; toolData: LatencyPoint[] } | undefined;\n isLoading: boolean;\n isError: boolean;\n /** Optional drilldown: invoked when a chart node is clicked. Container provides the navigation. */\n onPointClick?: (tab: LatencyTab, point: LatencyPoint) => void;\n /**\n * Optional slot for top-bar action buttons (e.g. \"View in Traces\").\n * Pass a function to receive the active tab so the action can scope itself to the current entity type.\n */\n actions?: ReactNode | ((tab: LatencyTab) => ReactNode);\n}\n\nexport function LatencyCardView({ data, isLoading, isError, onPointClick, actions }: LatencyCardViewProps) {\n const agentsHasData = (data?.agentData.length ?? 0) > 0;\n const workflowsHasData = (data?.workflowData.length ?? 0) > 0;\n const toolsHasData = (data?.toolData.length ?? 0) > 0;\n const tabHasData = {\n agents: agentsHasData,\n workflows: workflowsHasData,\n tools: toolsHasData,\n } as const;\n const initialTab: LatencyTab = agentsHasData\n ? 'agents'\n : workflowsHasData\n ? 'workflows'\n : toolsHasData\n ? 'tools'\n : 'agents';\n const [selectedTab, setSelectedTab] = useState<LatencyTab>('agents');\n const activeTab = tabHasData[selectedTab] ? selectedTab : initialTab;\n const renderedActions = typeof actions === 'function' ? actions(activeTab) : actions;\n const hasData = !!data && (data.agentData.length > 0 || data.workflowData.length > 0 || data.toolData.length > 0);\n const p50Values = data\n ? Object.values(data)\n .filter(Array.isArray)\n .flat()\n .map(d => d.p50)\n .filter((v): v is number => typeof v === 'number')\n : [];\n const avgP50 =\n p50Values.length > 0 ? `${Math.round(p50Values.reduce((s, v) => s + v, 0) / p50Values.length)}ms` : '—';\n\n return (\n <MetricsCard>\n <MetricsCard.TopBar>\n <MetricsCard.TitleAndDescription title=\"Latency\" description=\"Hourly p50 and p95 latency.\" />\n {hasData && <MetricsCard.Summary value={avgP50} label=\"Avg p50\" />}\n {renderedActions ? <MetricsCard.Actions>{renderedActions}</MetricsCard.Actions> : null}\n </MetricsCard.TopBar>\n {isLoading ? (\n <MetricsCard.Loading />\n ) : isError ? (\n <MetricsCard.Error message=\"Failed to load latency data\" />\n ) : (\n <MetricsCard.Content>\n {!hasData ? (\n <MetricsCard.NoData message=\"No latency data yet\" />\n ) : (\n <Tabs\n value={activeTab}\n onValueChange={value => {\n if (isLatencyTab(value) && tabHasData[value]) {\n setSelectedTab(value);\n }\n }}\n defaultTab={initialTab}\n className=\"overflow-visible\"\n >\n <TabList>\n <Tab value=\"agents\" disabled={!agentsHasData} disabledTooltip=\"No agent latency data for this period\">\n Agents\n </Tab>\n <Tab\n value=\"workflows\"\n disabled={!workflowsHasData}\n disabledTooltip=\"No workflow latency data for this period\"\n >\n Workflows\n </Tab>\n <Tab value=\"tools\" disabled={!toolsHasData} disabledTooltip=\"No tool latency data for this period\">\n Tools\n </Tab>\n </TabList>\n <TabContent value=\"agents\">\n <LatencyChart\n data={data.agentData}\n onPointClick={onPointClick ? p => onPointClick('agents', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"workflows\">\n <LatencyChart\n data={data.workflowData}\n onPointClick={onPointClick ? p => onPointClick('workflows', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"tools\">\n <LatencyChart\n data={data.toolData}\n onPointClick={onPointClick ? p => onPointClick('tools', p) : undefined}\n />\n </TabContent>\n </Tabs>\n )}\n </MetricsCard.Content>\n )}\n </MetricsCard>\n );\n}\n"],"names":["CHART_COLORS","jsx","MetricsCard","MetricsLineChart","useState","jsxs","Tabs","TabList","Tab","TabContent"],"mappings":"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"}
|
|
@@ -3,7 +3,8 @@ import { useState } from 'react';
|
|
|
3
3
|
import { M as MetricsCard } from '../../../metrics-card-C0lGcxb9.js';
|
|
4
4
|
import { M as MetricsLineChart } from '../../../metrics-line-chart-DudirJsu.js';
|
|
5
5
|
import { T as TabContent } from '../../../tabs-content-XUh680fO.js';
|
|
6
|
-
import {
|
|
6
|
+
import { a as Tabs, T as TabList } from '../../../tabs-root-BBPou4QC.js';
|
|
7
|
+
import { T as Tab } from '../../../tabs-tab-D5JTAehi.js';
|
|
7
8
|
import { CHART_COLORS } from './metrics-utils.es.js';
|
|
8
9
|
|
|
9
10
|
const latencySeries = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"latency-card-view.es.js","sources":["../../../../src/domains/metrics/components/latency-card-view.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { ReactNode } from 'react';\nimport { MetricsCard } from '../../../ds/components/MetricsCard/metrics-card';\nimport { MetricsLineChart } from '../../../ds/components/MetricsLineChart/metrics-line-chart';\nimport { TabContent } from '../../../ds/components/Tabs/tabs-content';\nimport { TabList } from '../../../ds/components/Tabs/tabs-list';\nimport { Tabs } from '../../../ds/components/Tabs/tabs-root';\nimport { Tab } from '../../../ds/components/Tabs/tabs-tab';\nimport type { LatencyPoint } from '../hooks/use-latency-metrics';\nimport { CHART_COLORS } from './metrics-utils';\n\nconst latencySeries = [\n {\n dataKey: 'p50',\n label: 'p50',\n color: CHART_COLORS.blue,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p50 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n {\n dataKey: 'p95',\n label: 'p95',\n color: CHART_COLORS.yellow,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p95 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n];\n\nexport type LatencyTab = 'agents' | 'workflows' | 'tools';\n\nfunction isLatencyTab(value: string): value is LatencyTab {\n return value === 'agents' || value === 'workflows' || value === 'tools';\n}\n\nfunction LatencyChart({ data, onPointClick }: { data: LatencyPoint[]; onPointClick?: (point: LatencyPoint) => void }) {\n if (data.length === 0) {\n return <MetricsCard.NoData message=\"No latency data yet\" />;\n }\n return (\n <MetricsLineChart\n data={data}\n series={latencySeries}\n onPointClick={\n onPointClick\n ? point => {\n const p = point as LatencyPoint;\n if (typeof p?.tsMs === 'number' && Number.isFinite(p.tsMs)) onPointClick(p);\n }\n : undefined\n }\n />\n );\n}\n\nexport interface LatencyCardViewProps {\n data: { agentData: LatencyPoint[]; workflowData: LatencyPoint[]; toolData: LatencyPoint[] } | undefined;\n isLoading: boolean;\n isError: boolean;\n /** Optional drilldown: invoked when a chart node is clicked. Container provides the navigation. */\n onPointClick?: (tab: LatencyTab, point: LatencyPoint) => void;\n /**\n * Optional slot for top-bar action buttons (e.g. \"View in Traces\").\n * Pass a function to receive the active tab so the action can scope itself to the current entity type.\n */\n actions?: ReactNode | ((tab: LatencyTab) => ReactNode);\n}\n\nexport function LatencyCardView({ data, isLoading, isError, onPointClick, actions }: LatencyCardViewProps) {\n const agentsHasData = (data?.agentData.length ?? 0) > 0;\n const workflowsHasData = (data?.workflowData.length ?? 0) > 0;\n const toolsHasData = (data?.toolData.length ?? 0) > 0;\n const tabHasData = {\n agents: agentsHasData,\n workflows: workflowsHasData,\n tools: toolsHasData,\n } as const;\n const initialTab: LatencyTab = agentsHasData\n ? 'agents'\n : workflowsHasData\n ? 'workflows'\n : toolsHasData\n ? 'tools'\n : 'agents';\n const [selectedTab, setSelectedTab] = useState<LatencyTab>('agents');\n const activeTab = tabHasData[selectedTab] ? selectedTab : initialTab;\n const renderedActions = typeof actions === 'function' ? actions(activeTab) : actions;\n const hasData = !!data && (data.agentData.length > 0 || data.workflowData.length > 0 || data.toolData.length > 0);\n const p50Values = data\n ? Object.values(data)\n .filter(Array.isArray)\n .flat()\n .map(d => d.p50)\n .filter((v): v is number => typeof v === 'number')\n : [];\n const avgP50 =\n p50Values.length > 0 ? `${Math.round(p50Values.reduce((s, v) => s + v, 0) / p50Values.length)}ms` : '—';\n\n return (\n <MetricsCard>\n <MetricsCard.TopBar>\n <MetricsCard.TitleAndDescription title=\"Latency\" description=\"Hourly p50 and p95 latency.\" />\n {hasData && <MetricsCard.Summary value={avgP50} label=\"Avg p50\" />}\n {renderedActions ? <MetricsCard.Actions>{renderedActions}</MetricsCard.Actions> : null}\n </MetricsCard.TopBar>\n {isLoading ? (\n <MetricsCard.Loading />\n ) : isError ? (\n <MetricsCard.Error message=\"Failed to load latency data\" />\n ) : (\n <MetricsCard.Content>\n {!hasData ? (\n <MetricsCard.NoData message=\"No latency data yet\" />\n ) : (\n <Tabs\n value={activeTab}\n onValueChange={value => {\n if (isLatencyTab(value) && tabHasData[value]) {\n setSelectedTab(value);\n }\n }}\n defaultTab={initialTab}\n className=\"overflow-visible\"\n >\n <TabList>\n <Tab value=\"agents\" disabled={!agentsHasData} disabledTooltip=\"No agent latency data for this period\">\n Agents\n </Tab>\n <Tab\n value=\"workflows\"\n disabled={!workflowsHasData}\n disabledTooltip=\"No workflow latency data for this period\"\n >\n Workflows\n </Tab>\n <Tab value=\"tools\" disabled={!toolsHasData} disabledTooltip=\"No tool latency data for this period\">\n Tools\n </Tab>\n </TabList>\n <TabContent value=\"agents\">\n <LatencyChart\n data={data.agentData}\n onPointClick={onPointClick ? p => onPointClick('agents', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"workflows\">\n <LatencyChart\n data={data.workflowData}\n onPointClick={onPointClick ? p => onPointClick('workflows', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"tools\">\n <LatencyChart\n data={data.toolData}\n onPointClick={onPointClick ? p => onPointClick('tools', p) : undefined}\n />\n </TabContent>\n </Tabs>\n )}\n </MetricsCard.Content>\n )}\n </MetricsCard>\n );\n}\n"],"names":[],"mappings":";;;;;;;;AAWA,MAAM,aAAA,GAAgB;AAAA,EACpB;AAAA,IACE,OAAA,EAAS,KAAA;AAAA,IACT,KAAA,EAAO,KAAA;AAAA,IACP,OAAO,YAAA,CAAa,IAAA;AAAA,IACpB,SAAA,EAAW,CAAC,IAAA,MAAqC;AAAA,MAC/C,KAAA,EAAO,KAAK,MAAA,GAAS,CAAA,GAAI,GAAG,IAAA,CAAK,KAAA,CAAM,KAAK,MAAA,CAAO,CAAC,GAAG,CAAA,KAAM,CAAA,GAAK,EAAE,GAAA,EAAgB,CAAC,IAAI,IAAA,CAAK,MAAM,CAAC,CAAA,CAAA,GAAK,GAAA;AAAA,MAC1G,MAAA,EAAQ;AAAA,KACV;AAAA,GACF;AAAA,EACA;AAAA,IACE,OAAA,EAAS,KAAA;AAAA,IACT,KAAA,EAAO,KAAA;AAAA,IACP,OAAO,YAAA,CAAa,MAAA;AAAA,IACpB,SAAA,EAAW,CAAC,IAAA,MAAqC;AAAA,MAC/C,KAAA,EAAO,KAAK,MAAA,GAAS,CAAA,GAAI,GAAG,IAAA,CAAK,KAAA,CAAM,KAAK,MAAA,CAAO,CAAC,GAAG,CAAA,KAAM,CAAA,GAAK,EAAE,GAAA,EAAgB,CAAC,IAAI,IAAA,CAAK,MAAM,CAAC,CAAA,CAAA,GAAK,GAAA;AAAA,MAC1G,MAAA,EAAQ;AAAA,KACV;AAAA;AAEJ,CAAA;AAIA,SAAS,aAAa,KAAA,EAAoC;AACxD,EAAA,OAAO,KAAA,KAAU,QAAA,IAAY,KAAA,KAAU,WAAA,IAAe,KAAA,KAAU,OAAA;AAClE;AAEA,SAAS,YAAA,CAAa,EAAE,IAAA,EAAM,YAAA,EAAa,EAA2E;AACpH,EAAA,IAAI,IAAA,CAAK,WAAW,CAAA,EAAG;AACrB,IAAA,uBAAO,GAAA,CAAC,WAAA,CAAY,MAAA,EAAZ,EAAmB,SAAQ,qBAAA,EAAsB,CAAA;AAAA,EAC3D;AACA,EAAA,uBACE,GAAA;AAAA,IAAC,gBAAA;AAAA,IAAA;AAAA,MACC,IAAA;AAAA,MACA,MAAA,EAAQ,aAAA;AAAA,MACR,YAAA,EACE,eACI,CAAA,KAAA,KAAS;AACP,QAAA,MAAM,CAAA,GAAI,KAAA;AACV,QAAA,IAAI,OAAO,CAAA,EAAG,IAAA,KAAS,QAAA,IAAY,MAAA,CAAO,SAAS,CAAA,CAAE,IAAI,CAAA,EAAG,YAAA,CAAa,CAAC,CAAA;AAAA,MAC5E,CAAA,GACA;AAAA;AAAA,GAER;AAEJ;AAeO,SAAS,gBAAgB,EAAE,IAAA,EAAM,WAAW,OAAA,EAAS,YAAA,EAAc,SAAQ,EAAyB;AACzG,EAAA,MAAM,aAAA,GAAA,CAAiB,IAAA,EAAM,SAAA,CAAU,MAAA,IAAU,CAAA,IAAK,CAAA;AACtD,EAAA,MAAM,gBAAA,GAAA,CAAoB,IAAA,EAAM,YAAA,CAAa,MAAA,IAAU,CAAA,IAAK,CAAA;AAC5D,EAAA,MAAM,YAAA,GAAA,CAAgB,IAAA,EAAM,QAAA,CAAS,MAAA,IAAU,CAAA,IAAK,CAAA;AACpD,EAAA,MAAM,UAAA,GAAa;AAAA,IACjB,MAAA,EAAQ,aAAA;AAAA,IACR,SAAA,EAAW,gBAAA;AAAA,IACX,KAAA,EAAO;AAAA,GACT;AACA,EAAA,MAAM,aAAyB,aAAA,GAC3B,QAAA,GACA,gBAAA,GACE,WAAA,GACA,eACE,OAAA,GACA,QAAA;AACR,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAqB,QAAQ,CAAA;AACnE,EAAA,MAAM,SAAA,GAAY,UAAA,CAAW,WAAW,CAAA,GAAI,WAAA,GAAc,UAAA;AAC1D,EAAA,MAAM,kBAAkB,OAAO,OAAA,KAAY,UAAA,GAAa,OAAA,CAAQ,SAAS,CAAA,GAAI,OAAA;AAC7E,EAAA,MAAM,OAAA,GAAU,CAAC,CAAC,IAAA,KAAS,KAAK,SAAA,CAAU,MAAA,GAAS,CAAA,IAAK,IAAA,CAAK,YAAA,CAAa,MAAA,GAAS,CAAA,IAAK,IAAA,CAAK,SAAS,MAAA,GAAS,CAAA,CAAA;AAC/G,EAAA,MAAM,SAAA,GAAY,IAAA,GACd,MAAA,CAAO,MAAA,CAAO,IAAI,EACf,MAAA,CAAO,KAAA,CAAM,OAAO,CAAA,CACpB,IAAA,EAAK,CACL,IAAI,CAAA,CAAA,KAAK,CAAA,CAAE,GAAG,CAAA,CACd,MAAA,CAAO,CAAC,MAAmB,OAAO,CAAA,KAAM,QAAQ,CAAA,GACnD,EAAC;AACL,EAAA,MAAM,SACJ,SAAA,CAAU,MAAA,GAAS,IAAI,CAAA,EAAG,IAAA,CAAK,MAAM,SAAA,CAAU,MAAA,CAAO,CAAC,CAAA,EAAG,CAAA,KAAM,IAAI,CAAA,EAAG,CAAC,IAAI,SAAA,CAAU,MAAM,CAAC,CAAA,EAAA,CAAA,GAAO,GAAA;AAEtG,EAAA,4BACG,WAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,WAAA,CAAY,QAAZ,EACC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,YAAY,mBAAA,EAAZ,EAAgC,KAAA,EAAM,SAAA,EAAU,aAAY,6BAAA,EAA8B,CAAA;AAAA,MAC1F,OAAA,wBAAY,WAAA,CAAY,OAAA,EAAZ,EAAoB,KAAA,EAAO,MAAA,EAAQ,OAAM,SAAA,EAAU,CAAA;AAAA,MAC/D,kCAAkB,GAAA,CAAC,WAAA,CAAY,OAAA,EAAZ,EAAqB,2BAAgB,CAAA,GAAyB;AAAA,KAAA,EACpF,CAAA;AAAA,IACC,SAAA,mBACC,GAAA,CAAC,WAAA,CAAY,OAAA,EAAZ,EAAoB,CAAA,GACnB,OAAA,mBACF,GAAA,CAAC,WAAA,CAAY,KAAA,EAAZ,EAAkB,OAAA,EAAQ,6BAAA,EAA8B,oBAEzD,GAAA,CAAC,WAAA,CAAY,OAAA,EAAZ,EACE,QAAA,EAAA,CAAC,OAAA,mBACA,GAAA,CAAC,WAAA,CAAY,MAAA,EAAZ,EAAmB,OAAA,EAAQ,qBAAA,EAAsB,CAAA,mBAElD,IAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAO,SAAA;AAAA,QACP,eAAe,CAAA,KAAA,KAAS;AACtB,UAAA,IAAI,YAAA,CAAa,KAAK,CAAA,IAAK,UAAA,CAAW,KAAK,CAAA,EAAG;AAC5C,YAAA,cAAA,CAAe,KAAK,CAAA;AAAA,UACtB;AAAA,QACF,CAAA;AAAA,QACA,UAAA,EAAY,UAAA;AAAA,QACZ,SAAA,EAAU,kBAAA;AAAA,QAEV,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,OAAA,EAAA,EACC,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,GAAA,EAAA,EAAI,OAAM,QAAA,EAAS,QAAA,EAAU,CAAC,aAAA,EAAe,eAAA,EAAgB,yCAAwC,QAAA,EAAA,QAAA,EAEtG,CAAA;AAAA,4BACA,GAAA;AAAA,cAAC,GAAA;AAAA,cAAA;AAAA,gBACC,KAAA,EAAM,WAAA;AAAA,gBACN,UAAU,CAAC,gBAAA;AAAA,gBACX,eAAA,EAAgB,0CAAA;AAAA,gBACjB,QAAA,EAAA;AAAA;AAAA,aAED;AAAA,4BACA,GAAA,CAAC,OAAI,KAAA,EAAM,OAAA,EAAQ,UAAU,CAAC,YAAA,EAAc,eAAA,EAAgB,sCAAA,EAAuC,QAAA,EAAA,OAAA,EAEnG;AAAA,WAAA,EACF,CAAA;AAAA,0BACA,GAAA,CAAC,UAAA,EAAA,EAAW,KAAA,EAAM,QAAA,EAChB,QAAA,kBAAA,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,MAAM,IAAA,CAAK,SAAA;AAAA,cACX,cAAc,YAAA,GAAe,CAAA,CAAA,KAAK,YAAA,CAAa,QAAA,EAAU,CAAC,CAAA,GAAI;AAAA;AAAA,WAChE,EACF,CAAA;AAAA,0BACA,GAAA,CAAC,UAAA,EAAA,EAAW,KAAA,EAAM,WAAA,EAChB,QAAA,kBAAA,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,MAAM,IAAA,CAAK,YAAA;AAAA,cACX,cAAc,YAAA,GAAe,CAAA,CAAA,KAAK,YAAA,CAAa,WAAA,EAAa,CAAC,CAAA,GAAI;AAAA;AAAA,WACnE,EACF,CAAA;AAAA,0BACA,GAAA,CAAC,UAAA,EAAA,EAAW,KAAA,EAAM,OAAA,EAChB,QAAA,kBAAA,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,MAAM,IAAA,CAAK,QAAA;AAAA,cACX,cAAc,YAAA,GAAe,CAAA,CAAA,KAAK,YAAA,CAAa,OAAA,EAAS,CAAC,CAAA,GAAI;AAAA;AAAA,WAC/D,EACF;AAAA;AAAA;AAAA,KACF,EAEJ;AAAA,GAAA,EAEJ,CAAA;AAEJ;;;;"}
|
|
1
|
+
{"version":3,"file":"latency-card-view.es.js","sources":["../../../../src/domains/metrics/components/latency-card-view.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { ReactNode } from 'react';\nimport { MetricsCard } from '../../../ds/components/MetricsCard/metrics-card';\nimport { MetricsLineChart } from '../../../ds/components/MetricsLineChart/metrics-line-chart';\nimport { TabContent } from '../../../ds/components/Tabs/tabs-content';\nimport { TabList } from '../../../ds/components/Tabs/tabs-list';\nimport { Tabs } from '../../../ds/components/Tabs/tabs-root';\nimport { Tab } from '../../../ds/components/Tabs/tabs-tab';\nimport type { LatencyPoint } from '../hooks/use-latency-metrics';\nimport { CHART_COLORS } from './metrics-utils';\n\nconst latencySeries = [\n {\n dataKey: 'p50',\n label: 'p50',\n color: CHART_COLORS.blue,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p50 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n {\n dataKey: 'p95',\n label: 'p95',\n color: CHART_COLORS.yellow,\n aggregate: (data: Record<string, unknown>[]) => ({\n value: data.length > 0 ? `${Math.round(data.reduce((s, d) => s + (d.p95 as number), 0) / data.length)}` : '0',\n suffix: 'avg ms',\n }),\n },\n];\n\nexport type LatencyTab = 'agents' | 'workflows' | 'tools';\n\nfunction isLatencyTab(value: string): value is LatencyTab {\n return value === 'agents' || value === 'workflows' || value === 'tools';\n}\n\nfunction LatencyChart({ data, onPointClick }: { data: LatencyPoint[]; onPointClick?: (point: LatencyPoint) => void }) {\n if (data.length === 0) {\n return <MetricsCard.NoData message=\"No latency data yet\" />;\n }\n return (\n <MetricsLineChart\n data={data}\n series={latencySeries}\n onPointClick={\n onPointClick\n ? point => {\n const p = point as LatencyPoint;\n if (typeof p?.tsMs === 'number' && Number.isFinite(p.tsMs)) onPointClick(p);\n }\n : undefined\n }\n />\n );\n}\n\nexport interface LatencyCardViewProps {\n data: { agentData: LatencyPoint[]; workflowData: LatencyPoint[]; toolData: LatencyPoint[] } | undefined;\n isLoading: boolean;\n isError: boolean;\n /** Optional drilldown: invoked when a chart node is clicked. Container provides the navigation. */\n onPointClick?: (tab: LatencyTab, point: LatencyPoint) => void;\n /**\n * Optional slot for top-bar action buttons (e.g. \"View in Traces\").\n * Pass a function to receive the active tab so the action can scope itself to the current entity type.\n */\n actions?: ReactNode | ((tab: LatencyTab) => ReactNode);\n}\n\nexport function LatencyCardView({ data, isLoading, isError, onPointClick, actions }: LatencyCardViewProps) {\n const agentsHasData = (data?.agentData.length ?? 0) > 0;\n const workflowsHasData = (data?.workflowData.length ?? 0) > 0;\n const toolsHasData = (data?.toolData.length ?? 0) > 0;\n const tabHasData = {\n agents: agentsHasData,\n workflows: workflowsHasData,\n tools: toolsHasData,\n } as const;\n const initialTab: LatencyTab = agentsHasData\n ? 'agents'\n : workflowsHasData\n ? 'workflows'\n : toolsHasData\n ? 'tools'\n : 'agents';\n const [selectedTab, setSelectedTab] = useState<LatencyTab>('agents');\n const activeTab = tabHasData[selectedTab] ? selectedTab : initialTab;\n const renderedActions = typeof actions === 'function' ? actions(activeTab) : actions;\n const hasData = !!data && (data.agentData.length > 0 || data.workflowData.length > 0 || data.toolData.length > 0);\n const p50Values = data\n ? Object.values(data)\n .filter(Array.isArray)\n .flat()\n .map(d => d.p50)\n .filter((v): v is number => typeof v === 'number')\n : [];\n const avgP50 =\n p50Values.length > 0 ? `${Math.round(p50Values.reduce((s, v) => s + v, 0) / p50Values.length)}ms` : '—';\n\n return (\n <MetricsCard>\n <MetricsCard.TopBar>\n <MetricsCard.TitleAndDescription title=\"Latency\" description=\"Hourly p50 and p95 latency.\" />\n {hasData && <MetricsCard.Summary value={avgP50} label=\"Avg p50\" />}\n {renderedActions ? <MetricsCard.Actions>{renderedActions}</MetricsCard.Actions> : null}\n </MetricsCard.TopBar>\n {isLoading ? (\n <MetricsCard.Loading />\n ) : isError ? (\n <MetricsCard.Error message=\"Failed to load latency data\" />\n ) : (\n <MetricsCard.Content>\n {!hasData ? (\n <MetricsCard.NoData message=\"No latency data yet\" />\n ) : (\n <Tabs\n value={activeTab}\n onValueChange={value => {\n if (isLatencyTab(value) && tabHasData[value]) {\n setSelectedTab(value);\n }\n }}\n defaultTab={initialTab}\n className=\"overflow-visible\"\n >\n <TabList>\n <Tab value=\"agents\" disabled={!agentsHasData} disabledTooltip=\"No agent latency data for this period\">\n Agents\n </Tab>\n <Tab\n value=\"workflows\"\n disabled={!workflowsHasData}\n disabledTooltip=\"No workflow latency data for this period\"\n >\n Workflows\n </Tab>\n <Tab value=\"tools\" disabled={!toolsHasData} disabledTooltip=\"No tool latency data for this period\">\n Tools\n </Tab>\n </TabList>\n <TabContent value=\"agents\">\n <LatencyChart\n data={data.agentData}\n onPointClick={onPointClick ? p => onPointClick('agents', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"workflows\">\n <LatencyChart\n data={data.workflowData}\n onPointClick={onPointClick ? p => onPointClick('workflows', p) : undefined}\n />\n </TabContent>\n <TabContent value=\"tools\">\n <LatencyChart\n data={data.toolData}\n onPointClick={onPointClick ? p => onPointClick('tools', p) : undefined}\n />\n </TabContent>\n </Tabs>\n )}\n </MetricsCard.Content>\n )}\n </MetricsCard>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,11 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const React = require('react');
|
|
7
|
-
const dataList = require('../../../data-list-
|
|
7
|
+
const dataList = require('../../../data-list-Cnnnx_vD.cjs');
|
|
8
8
|
const metricsCard = require('../../../metrics-card-DmbKNY3U.cjs');
|
|
9
9
|
const tabsContent = require('../../../tabs-content-wBU5qmb6.cjs');
|
|
10
|
-
const
|
|
10
|
+
const tabsRoot = require('../../../tabs-root-VtBc6K2q.cjs');
|
|
11
|
+
const tabsTab = require('../../../tabs-tab-Cq4YR31P.cjs');
|
|
11
12
|
const domains_metrics_components_metricsUtils = require('./metrics-utils.cjs.js');
|
|
12
13
|
|
|
13
14
|
function isMemoryTab(value) {
|
|
@@ -42,7 +43,7 @@ function MemoryCardView({
|
|
|
42
43
|
renderedActions ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Actions, { children: renderedActions }) : null
|
|
43
44
|
] }),
|
|
44
45
|
active.isLoading ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Loading, {}) : active.isError ? /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Error, { message: "Failed to load memory data" }) : /* @__PURE__ */ jsxRuntime.jsx(metricsCard.MetricsCard.Content, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
45
|
-
|
|
46
|
+
tabsRoot.Tabs,
|
|
46
47
|
{
|
|
47
48
|
defaultTab: "threads",
|
|
48
49
|
value: activeTab,
|
|
@@ -51,7 +52,7 @@ function MemoryCardView({
|
|
|
51
52
|
},
|
|
52
53
|
className: "grid h-full grid-rows-[auto_1fr] overflow-y-auto",
|
|
53
54
|
children: [
|
|
54
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
55
|
+
/* @__PURE__ */ jsxRuntime.jsxs(tabsRoot.TabList, { children: [
|
|
55
56
|
/* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tab, { value: "threads", children: "Threads" }),
|
|
56
57
|
/* @__PURE__ */ jsxRuntime.jsx(tabsTab.Tab, { value: "resources", children: "Resources" })
|
|
57
58
|
] }),
|