@mastra/playground-ui 56.0.0-alpha.8 → 56.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/README.md +4 -16
- package/dist/Badge-BEeYtjmv.cjs +125 -0
- package/dist/Badge-BEeYtjmv.cjs.map +1 -0
- package/dist/Badge-TD55_qZJ.js +123 -0
- package/dist/Badge-TD55_qZJ.js.map +1 -0
- package/dist/Button-CVewl8nT.cjs +202 -0
- package/dist/Button-CVewl8nT.cjs.map +1 -0
- package/dist/Button-cWcBEd-G.js +198 -0
- package/dist/Button-cWcBEd-G.js.map +1 -0
- package/dist/Card-D0kFp9j9.cjs +101 -0
- package/dist/Card-D0kFp9j9.cjs.map +1 -0
- package/dist/Card-DEvGFj-Z.js +74 -0
- package/dist/Card-DEvGFj-Z.js.map +1 -0
- package/dist/CommandPalette.css +9 -10
- package/dist/EmptyState-CdRjFB06.cjs +33 -0
- package/dist/EmptyState-CdRjFB06.cjs.map +1 -0
- package/dist/EmptyState-UWXhBp5U.js +31 -0
- package/dist/EmptyState-UWXhBp5U.js.map +1 -0
- package/dist/ErrorState-B3uTRAEd.cjs +16 -0
- package/dist/ErrorState-B3uTRAEd.cjs.map +1 -0
- package/dist/ErrorState-DqRx8Dw_.js +14 -0
- package/dist/ErrorState-DqRx8Dw_.js.map +1 -0
- package/dist/Notice-Ah-84yi6.js +89 -0
- package/dist/Notice-Ah-84yi6.js.map +1 -0
- package/dist/Notice-Cjti0e0j.cjs +91 -0
- package/dist/Notice-Cjti0e0j.cjs.map +1 -0
- package/dist/PermissionDenied-B6TSGolC.js +22 -0
- package/dist/PermissionDenied-B6TSGolC.js.map +1 -0
- package/dist/PermissionDenied-Dz5qXpQj.cjs +24 -0
- package/dist/PermissionDenied-Dz5qXpQj.cjs.map +1 -0
- package/dist/SessionExpired-Bq5LcsDu.js +45 -0
- package/dist/SessionExpired-Bq5LcsDu.js.map +1 -0
- package/dist/SessionExpired-CF0BGNo_.cjs +47 -0
- package/dist/SessionExpired-CF0BGNo_.cjs.map +1 -0
- package/dist/Txt-B4-2nLaI.cjs +38 -0
- package/dist/Txt-B4-2nLaI.cjs.map +1 -0
- package/dist/Txt-DTh3Pa_a.js +36 -0
- package/dist/Txt-DTh3Pa_a.js.map +1 -0
- package/dist/activity-B8TfxRNU.js +49 -0
- package/dist/activity-B8TfxRNU.js.map +1 -0
- package/dist/activity-BYMLNb0G.cjs +52 -0
- package/dist/activity-BYMLNb0G.cjs.map +1 -0
- package/dist/activity.css +1 -1
- package/dist/arrival-BWQZUZFQ.cjs +22 -0
- package/dist/arrival-BWQZUZFQ.cjs.map +1 -0
- package/dist/arrival-RmSek4Iq.js +19 -0
- package/dist/arrival-RmSek4Iq.js.map +1 -0
- package/dist/ask-user-CS2e6Re4.cjs +147 -0
- package/dist/ask-user-CS2e6Re4.cjs.map +1 -0
- package/dist/ask-user-gS3Y1bCc.js +138 -0
- package/dist/ask-user-gS3Y1bCc.js.map +1 -0
- package/dist/buttons-group-BiLEV_Ak.cjs +101 -0
- package/dist/buttons-group-BiLEV_Ak.cjs.map +1 -0
- package/dist/buttons-group-CaA7KAWf.js +78 -0
- package/dist/buttons-group-CaA7KAWf.js.map +1 -0
- package/dist/buttons-group.css +135 -0
- package/dist/chart-tooltip-84fl_3Wc.js +17 -0
- package/dist/chart-tooltip-84fl_3Wc.js.map +1 -0
- package/dist/chart-tooltip-DX6vs_Tc.cjs +19 -0
- package/dist/chart-tooltip-DX6vs_Tc.cjs.map +1 -0
- package/dist/chat-notification-4OuPNhtu.js +107 -0
- package/dist/chat-notification-4OuPNhtu.js.map +1 -0
- package/dist/chat-notification-CPrlBwP_.cjs +111 -0
- package/dist/chat-notification-CPrlBwP_.cjs.map +1 -0
- package/dist/chat-signal-B_T2DSzo.cjs +42 -0
- package/dist/chat-signal-B_T2DSzo.cjs.map +1 -0
- package/dist/chat-signal-CG5-vy21.js +40 -0
- package/dist/chat-signal-CG5-vy21.js.map +1 -0
- package/dist/checkbox-CI8JtZKS.cjs +100 -0
- package/dist/checkbox-CI8JtZKS.cjs.map +1 -0
- package/dist/checkbox-CQedzgsi.js +79 -0
- package/dist/checkbox-CQedzgsi.js.map +1 -0
- package/dist/cn-65Adrsfj.js +3286 -0
- package/dist/cn-65Adrsfj.js.map +1 -0
- package/dist/cn-DG0X1KEP.cjs +3289 -0
- package/dist/cn-DG0X1KEP.cjs.map +1 -0
- package/dist/code-block-CSqjpBvb.js +86 -0
- package/dist/code-block-CSqjpBvb.js.map +1 -0
- package/dist/code-block-Cd4u7Bo9.cjs +88 -0
- package/dist/code-block-Cd4u7Bo9.cjs.map +1 -0
- package/dist/code-diff-C5uY-3Hz.js +145 -0
- package/dist/code-diff-C5uY-3Hz.js.map +1 -0
- package/dist/code-diff-DBtbPe9D.cjs +147 -0
- package/dist/code-diff-DBtbPe9D.cjs.map +1 -0
- package/dist/code-editor-DgY7d8kg.cjs +494 -0
- package/dist/code-editor-DgY7d8kg.cjs.map +1 -0
- package/dist/code-editor-vCt7l9Bl.js +486 -0
- package/dist/code-editor-vCt7l9Bl.js.map +1 -0
- package/dist/collapsible-B2uUy8w5.js +57 -0
- package/dist/collapsible-B2uUy8w5.js.map +1 -0
- package/dist/collapsible-BvrI6XnN.cjs +61 -0
- package/dist/collapsible-BvrI6XnN.cjs.map +1 -0
- package/dist/combobox-BWM3VH-n.cjs +203 -0
- package/dist/combobox-BWM3VH-n.cjs.map +1 -0
- package/dist/combobox-D7xJFZuO.js +182 -0
- package/dist/combobox-D7xJFZuO.js.map +1 -0
- package/dist/combobox-styles-CRebmeht.js +94 -0
- package/dist/combobox-styles-CRebmeht.js.map +1 -0
- package/dist/combobox-styles-DYlNNjKC.cjs +98 -0
- package/dist/combobox-styles-DYlNNjKC.cjs.map +1 -0
- package/dist/command-DuT06mTw.cjs +211 -0
- package/dist/command-DuT06mTw.cjs.map +1 -0
- package/dist/command-jRiL1vXM.js +182 -0
- package/dist/command-jRiL1vXM.js.map +1 -0
- package/dist/components/Activity.cjs.js +1 -1
- package/dist/components/Activity.es.js +1 -1
- package/dist/components/AlertDialog.cjs.js +16 -7
- package/dist/components/AlertDialog.cjs.js.map +1 -1
- package/dist/components/AlertDialog.es.js +16 -7
- package/dist/components/AlertDialog.es.js.map +1 -1
- package/dist/components/Arrival.cjs.js +1 -1
- package/dist/components/Arrival.es.js +1 -1
- package/dist/components/Avatar.cjs.js +9 -8
- package/dist/components/Avatar.cjs.js.map +1 -1
- package/dist/components/Avatar.es.js +10 -9
- package/dist/components/Avatar.es.js.map +1 -1
- package/dist/components/Badge.cjs.js +1 -1
- package/dist/components/Badge.es.js +1 -1
- package/dist/components/BrandLoader.cjs.js +2 -2
- package/dist/components/BrandLoader.cjs.js.map +1 -1
- package/dist/components/BrandLoader.es.js +2 -2
- package/dist/components/BrandLoader.es.js.map +1 -1
- package/dist/components/Breadcrumb.cjs.js +8 -7
- package/dist/components/Breadcrumb.cjs.js.map +1 -1
- package/dist/components/Breadcrumb.es.js +9 -8
- package/dist/components/Breadcrumb.es.js.map +1 -1
- package/dist/components/Button.cjs.js +2 -2
- package/dist/components/Button.es.js +3 -3
- package/dist/components/ButtonsGroup.cjs.js +1 -2
- package/dist/components/ButtonsGroup.cjs.js.map +1 -1
- package/dist/components/ButtonsGroup.es.js +1 -1
- package/dist/components/Card.cjs.js +1 -1
- package/dist/components/Card.es.js +1 -1
- package/dist/components/ChartTooltip.cjs.js +10 -0
- package/dist/components/ChartTooltip.cjs.js.map +1 -0
- package/dist/components/ChartTooltip.d.ts +2 -0
- package/dist/components/ChartTooltip.es.js +2 -0
- package/dist/components/ChartTooltip.es.js.map +1 -0
- package/dist/components/ChatShell.cjs.js +4 -4
- package/dist/components/ChatShell.cjs.js.map +1 -1
- package/dist/components/ChatShell.es.js +4 -4
- package/dist/components/ChatShell.es.js.map +1 -1
- package/dist/components/Checkbox.cjs.js +1 -1
- package/dist/components/Checkbox.es.js +1 -1
- package/dist/components/ClampedText.cjs.js +4 -4
- package/dist/components/ClampedText.cjs.js.map +1 -1
- package/dist/components/ClampedText.es.js +4 -4
- package/dist/components/ClampedText.es.js.map +1 -1
- package/dist/components/CodeBlock.cjs.js +1 -1
- package/dist/components/CodeBlock.es.js +1 -1
- package/dist/components/CodeDiff.cjs.js +1 -1
- package/dist/components/CodeDiff.es.js +1 -1
- package/dist/components/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/Collapsible.cjs.js +1 -1
- package/dist/components/Collapsible.es.js +1 -1
- package/dist/components/Columns.cjs.js +4 -4
- package/dist/components/Columns.cjs.js.map +1 -1
- package/dist/components/Columns.es.js +4 -4
- package/dist/components/Columns.es.js.map +1 -1
- package/dist/components/Combobox.cjs.js +2 -2
- package/dist/components/Combobox.es.js +2 -2
- package/dist/components/Command.cjs.js +1 -1
- package/dist/components/Command.es.js +1 -1
- package/dist/components/CommandPalette.cjs.js +51 -24
- package/dist/components/CommandPalette.cjs.js.map +1 -1
- package/dist/components/CommandPalette.es.js +51 -24
- package/dist/components/CommandPalette.es.js.map +1 -1
- package/dist/components/Comment.cjs.js +40 -36
- package/dist/components/Comment.cjs.js.map +1 -1
- package/dist/components/Comment.es.js +41 -37
- package/dist/components/Comment.es.js.map +1 -1
- package/dist/components/Composer.cjs.js +8 -8
- package/dist/components/Composer.cjs.js.map +1 -1
- package/dist/components/Composer.es.js +8 -8
- package/dist/components/Composer.es.js.map +1 -1
- package/dist/components/ContextMenu.cjs.js +2 -2
- package/dist/components/ContextMenu.cjs.js.map +1 -1
- package/dist/components/ContextMenu.es.js +2 -2
- package/dist/components/ContextMenu.es.js.map +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 +46 -30
- package/dist/components/DataDetailsPanel.cjs.js.map +1 -1
- package/dist/components/DataDetailsPanel.es.js +46 -30
- package/dist/components/DataDetailsPanel.es.js.map +1 -1
- package/dist/components/DataFilter.cjs.js +5 -5
- package/dist/components/DataFilter.cjs.js.map +1 -1
- package/dist/components/DataFilter.es.js +5 -5
- package/dist/components/DataFilter.es.js.map +1 -1
- package/dist/components/DataKeysAndValues.cjs.js +1 -1
- package/dist/components/DataKeysAndValues.es.js +1 -1
- package/dist/components/DataList.cjs.js +11 -10
- package/dist/components/DataList.cjs.js.map +1 -1
- package/dist/components/DataList.es.js +11 -10
- package/dist/components/DataList.es.js.map +1 -1
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +25 -22
- package/dist/components/DateRangeTimeline.cjs.js.map +1 -1
- package/dist/components/DateRangeTimeline.es.js +25 -22
- package/dist/components/DateRangeTimeline.es.js.map +1 -1
- package/dist/components/DateTimePicker.cjs.js +10 -23
- package/dist/components/DateTimePicker.cjs.js.map +1 -1
- package/dist/components/DateTimePicker.es.js +11 -24
- package/dist/components/DateTimePicker.es.js.map +1 -1
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/Dialog.cjs.js +4 -4
- package/dist/components/Dialog.cjs.js.map +1 -1
- package/dist/components/Dialog.es.js +5 -5
- package/dist/components/Dialog.es.js.map +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/EmptyState.cjs.js +1 -1
- package/dist/components/EmptyState.es.js +1 -1
- package/dist/components/Entity.cjs.js +9 -7
- package/dist/components/Entity.cjs.js.map +1 -1
- package/dist/components/Entity.es.js +9 -7
- package/dist/components/Entity.es.js.map +1 -1
- package/dist/components/EntityHeader.cjs.js +4 -4
- package/dist/components/EntityHeader.cjs.js.map +1 -1
- package/dist/components/EntityHeader.es.js +4 -4
- package/dist/components/EntityHeader.es.js.map +1 -1
- package/dist/components/Entry.cjs.js +2 -2
- package/dist/components/Entry.cjs.js.map +1 -1
- package/dist/components/Entry.es.js +2 -2
- package/dist/components/Entry.es.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +21 -18
- package/dist/components/EnvironmentVariablesEditor.cjs.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.es.js +21 -18
- package/dist/components/EnvironmentVariablesEditor.es.js.map +1 -1
- package/dist/components/ErrorBoundary.cjs.js +10 -9
- package/dist/components/ErrorBoundary.cjs.js.map +1 -1
- package/dist/components/ErrorBoundary.es.js +10 -9
- package/dist/components/ErrorBoundary.es.js.map +1 -1
- package/dist/components/ErrorState.cjs.js +1 -1
- package/dist/components/ErrorState.es.js +1 -1
- package/dist/components/FilterBar.cjs.js +224 -226
- package/dist/components/FilterBar.cjs.js.map +1 -1
- package/dist/components/FilterBar.es.js +228 -230
- package/dist/components/FilterBar.es.js.map +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +52 -5
- package/dist/components/FormFieldBlocks.cjs.js.map +1 -1
- package/dist/components/FormFieldBlocks.es.js +54 -8
- package/dist/components/FormFieldBlocks.es.js.map +1 -1
- package/dist/components/Header.cjs.js +4 -4
- package/dist/components/Header.cjs.js.map +1 -1
- package/dist/components/Header.es.js +4 -4
- package/dist/components/Header.es.js.map +1 -1
- package/dist/components/HorizontalBars.cjs.js +1 -1
- package/dist/components/HorizontalBars.es.js +1 -1
- package/dist/components/HoverCard.cjs.js +1 -1
- package/dist/components/HoverCard.es.js +1 -1
- package/dist/components/Input.cjs.js +1 -1
- package/dist/components/Input.es.js +1 -1
- package/dist/components/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/IntegrationDialog.cjs.js +9 -10
- package/dist/components/IntegrationDialog.cjs.js.map +1 -1
- package/dist/components/IntegrationDialog.es.js +9 -10
- package/dist/components/IntegrationDialog.es.js.map +1 -1
- package/dist/components/ItemList.cjs.js +33 -24
- package/dist/components/ItemList.cjs.js.map +1 -1
- package/dist/components/ItemList.es.js +33 -24
- package/dist/components/ItemList.es.js.map +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +14 -14
- package/dist/components/JSONSchemaForm.cjs.js.map +1 -1
- package/dist/components/JSONSchemaForm.es.js +14 -14
- package/dist/components/JSONSchemaForm.es.js.map +1 -1
- package/dist/components/Kbd.cjs.js +1 -1
- package/dist/components/Kbd.es.js +1 -1
- package/dist/components/KeyValueList.cjs.js +11 -11
- package/dist/components/KeyValueList.cjs.js.map +1 -1
- package/dist/components/KeyValueList.es.js +11 -11
- package/dist/components/KeyValueList.es.js.map +1 -1
- package/dist/components/Label.cjs.js +1 -1
- package/dist/components/Label.es.js +1 -1
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/Logo.cjs.js +2 -2
- package/dist/components/Logo.cjs.js.map +1 -1
- package/dist/components/Logo.es.js +2 -2
- package/dist/components/Logo.es.js.map +1 -1
- package/dist/components/LogsDataList.cjs.js +2 -4
- package/dist/components/LogsDataList.cjs.js.map +1 -1
- package/dist/components/LogsDataList.es.js +2 -4
- package/dist/components/LogsDataList.es.js.map +1 -1
- package/dist/components/MainContent.cjs.js +1 -1
- package/dist/components/MainContent.es.js +1 -1
- package/dist/components/MainHeader.cjs.js +18 -16
- package/dist/components/MainHeader.cjs.js.map +1 -1
- package/dist/components/MainHeader.es.js +18 -16
- package/dist/components/MainHeader.es.js.map +1 -1
- package/dist/components/MainSidebar.cjs.js +3 -3
- package/dist/components/MainSidebar.cjs.js.map +1 -1
- package/dist/components/MainSidebar.es.js +4 -4
- 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/Message.cjs.js +3 -3
- package/dist/components/Message.cjs.js.map +1 -1
- package/dist/components/Message.es.js +4 -4
- package/dist/components/Message.es.js.map +1 -1
- package/dist/components/MessageScroller.cjs.js +1 -1
- package/dist/components/MessageScroller.es.js +1 -1
- package/dist/components/MetricsCard.cjs.js +1 -1
- package/dist/components/MetricsCard.es.js +1 -1
- package/dist/components/MetricsFlexGrid.cjs.js +1 -1
- package/dist/components/MetricsFlexGrid.es.js +1 -1
- package/dist/components/MetricsKpiCard.cjs.js +1 -1
- package/dist/components/MetricsKpiCard.es.js +1 -1
- package/dist/components/MetricsLineChart.cjs.js +1 -1
- package/dist/components/MetricsLineChart.es.js +1 -1
- package/dist/components/Notice.cjs.js +1 -1
- package/dist/components/Notice.es.js +1 -1
- package/dist/components/PageHeader.cjs.js +1 -1
- package/dist/components/PageHeader.es.js +1 -1
- package/dist/components/PageLayout.cjs.js +2 -2
- package/dist/components/PageLayout.es.js +2 -2
- package/dist/components/PendingIndicator.cjs.js +2 -2
- package/dist/components/PendingIndicator.cjs.js.map +1 -1
- package/dist/components/PendingIndicator.es.js +2 -2
- package/dist/components/PendingIndicator.es.js.map +1 -1
- package/dist/components/PermissionDenied.cjs.js +1 -1
- package/dist/components/PermissionDenied.es.js +1 -1
- package/dist/components/Popover.cjs.js +1 -1
- package/dist/components/Popover.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 +19 -15
- package/dist/components/PropertyFilter.cjs.js.map +1 -1
- package/dist/components/PropertyFilter.es.js +20 -16
- package/dist/components/PropertyFilter.es.js.map +1 -1
- package/dist/components/PullRequestIcon.cjs.js +2 -2
- package/dist/components/PullRequestIcon.cjs.js.map +1 -1
- package/dist/components/PullRequestIcon.es.js +2 -2
- package/dist/components/PullRequestIcon.es.js.map +1 -1
- package/dist/components/RadioGroup.cjs.js +3 -18
- package/dist/components/RadioGroup.cjs.js.map +1 -1
- package/dist/components/RadioGroup.es.js +3 -18
- package/dist/components/RadioGroup.es.js.map +1 -1
- package/dist/components/RuleBuilder.cjs.js +37 -24
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +37 -24
- package/dist/components/RuleBuilder.es.js.map +1 -1
- package/dist/components/SankeyChart.cjs.js +1 -1
- package/dist/components/SankeyChart.es.js +1 -1
- package/dist/components/ScatterPlotChart.cjs.js +23 -16
- package/dist/components/ScatterPlotChart.cjs.js.map +1 -1
- package/dist/components/ScatterPlotChart.es.js +21 -14
- package/dist/components/ScatterPlotChart.es.js.map +1 -1
- package/dist/components/ScrollArea.cjs.js +1 -1
- package/dist/components/ScrollArea.es.js +1 -1
- package/dist/components/Section.cjs.js +1 -1
- package/dist/components/Section.es.js +1 -1
- package/dist/components/SectionCard.cjs.js +5 -16
- package/dist/components/SectionCard.cjs.js.map +1 -1
- package/dist/components/SectionCard.es.js +5 -16
- package/dist/components/SectionCard.es.js.map +1 -1
- package/dist/components/Sections.cjs.js +1 -1
- package/dist/components/Sections.es.js +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/SettingsLayout.cjs.js +1 -1
- package/dist/components/SettingsLayout.es.js +1 -1
- package/dist/components/SettingsRow.cjs.js +1 -1
- package/dist/components/SettingsRow.es.js +1 -1
- package/dist/components/Shimmer.cjs.js +1 -1
- package/dist/components/Shimmer.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +31 -27
- package/dist/components/SideDialog.cjs.js.map +1 -1
- package/dist/components/SideDialog.es.js +31 -27
- package/dist/components/SideDialog.es.js.map +1 -1
- package/dist/components/Skeleton.cjs.js +1 -1
- package/dist/components/Skeleton.es.js +1 -1
- package/dist/components/Slider.cjs.js +1 -1
- package/dist/components/Slider.es.js +1 -1
- package/dist/components/Spinner.cjs.js +1 -1
- package/dist/components/Spinner.es.js +1 -1
- package/dist/components/StatusIndicators.cjs.js +11 -11
- package/dist/components/StatusIndicators.cjs.js.map +1 -1
- package/dist/components/StatusIndicators.es.js +11 -11
- package/dist/components/StatusIndicators.es.js.map +1 -1
- package/dist/components/Steps.cjs.js +19 -21
- package/dist/components/Steps.cjs.js.map +1 -1
- package/dist/components/Steps.es.js +19 -21
- package/dist/components/Steps.es.js.map +1 -1
- package/dist/components/Switch.cjs.js +1 -1
- package/dist/components/Switch.es.js +1 -1
- package/dist/components/Table.cjs.js +15 -15
- package/dist/components/Table.cjs.js.map +1 -1
- package/dist/components/Table.es.js +15 -15
- package/dist/components/Table.es.js.map +1 -1
- package/dist/components/Tabs.cjs.js +3 -3
- package/dist/components/Tabs.es.js +3 -3
- package/dist/components/Text.cjs.js +1 -1
- package/dist/components/Text.es.js +1 -1
- package/dist/components/Textarea.cjs.js +1 -1
- package/dist/components/Textarea.es.js +1 -1
- package/dist/components/ThemeToggle.cjs.js +8 -6
- package/dist/components/ThemeToggle.cjs.js.map +1 -1
- package/dist/components/ThemeToggle.es.js +8 -6
- package/dist/components/ThemeToggle.es.js.map +1 -1
- package/dist/components/ThreadList.cjs.js +8 -7
- package/dist/components/ThreadList.cjs.js.map +1 -1
- package/dist/components/ThreadList.es.js +8 -7
- package/dist/components/ThreadList.es.js.map +1 -1
- package/dist/components/ThreadRail.cjs.js +1 -1
- package/dist/components/ThreadRail.es.js +1 -1
- package/dist/components/Toaster.cjs.js +1 -1
- package/dist/components/Toaster.es.js +1 -1
- package/dist/components/TokenBudget.cjs.js +9 -9
- package/dist/components/TokenBudget.cjs.js.map +1 -1
- package/dist/components/TokenBudget.es.js +9 -9
- package/dist/components/TokenBudget.es.js.map +1 -1
- package/dist/components/Tooltip.cjs.js +1 -1
- package/dist/components/Tooltip.es.js +1 -1
- package/dist/components/Tree.cjs.js +12 -12
- package/dist/components/Tree.cjs.js.map +1 -1
- package/dist/components/Tree.es.js +12 -12
- package/dist/components/Tree.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +4 -4
- package/dist/components/Truncate.es.js +4 -4
- package/dist/components/Txt.cjs.js +1 -1
- package/dist/components/Txt.es.js +1 -1
- package/dist/components/Workflow.cjs.js +114 -83
- package/dist/components/Workflow.cjs.js.map +1 -1
- package/dist/components/Workflow.es.js +114 -83
- package/dist/components/Workflow.es.js.map +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/chat-event.cjs.js +9 -9
- package/dist/components/ai/chat-event.cjs.js.map +1 -1
- package/dist/components/ai/chat-event.es.js +10 -10
- package/dist/components/ai/chat-event.es.js.map +1 -1
- package/dist/components/ai/plan.cjs.js +16 -15
- package/dist/components/ai/plan.cjs.js.map +1 -1
- package/dist/components/ai/plan.es.js +16 -15
- package/dist/components/ai/plan.es.js.map +1 -1
- package/dist/components/ai/task-list.cjs.js +15 -14
- package/dist/components/ai/task-list.cjs.js.map +1 -1
- package/dist/components/ai/task-list.es.js +15 -14
- package/dist/components/ai/task-list.es.js.map +1 -1
- package/dist/components/ai/tool-approval.cjs.js +1 -1
- package/dist/components/ai/tool-approval.es.js +1 -1
- package/dist/components/ai/tool-call.cjs.js +15 -15
- package/dist/components/ai/tool-call.cjs.js.map +1 -1
- package/dist/components/ai/tool-call.es.js +16 -16
- package/dist/components/ai/tool-call.es.js.map +1 -1
- package/dist/components/fluid-hover-highlight.cjs.js +1 -1
- package/dist/components/fluid-hover-highlight.es.js +1 -1
- package/dist/composer-BUoRnMDd.cjs +156 -0
- package/dist/composer-BUoRnMDd.cjs.map +1 -0
- package/dist/composer-CEL1glw7.js +148 -0
- package/dist/composer-CEL1glw7.js.map +1 -0
- package/dist/composer.css +6 -6
- package/dist/copy-button-2cwdZ3dW.js +36 -0
- package/dist/copy-button-2cwdZ3dW.js.map +1 -0
- package/dist/copy-button-BbDBpBMl.cjs +38 -0
- package/dist/copy-button-BbDBpBMl.cjs.map +1 -0
- package/dist/data-code-section-DKz9Okaz.js +367 -0
- package/dist/data-code-section-DKz9Okaz.js.map +1 -0
- package/dist/data-code-section-qujvEc6j.cjs +369 -0
- package/dist/data-code-section-qujvEc6j.cjs.map +1 -0
- package/dist/data-keys-and-values-4pYpSbqS.cjs +126 -0
- package/dist/data-keys-and-values-4pYpSbqS.cjs.map +1 -0
- package/dist/data-keys-and-values-j0NVKPOl.js +124 -0
- package/dist/data-keys-and-values-j0NVKPOl.js.map +1 -0
- package/dist/data-list-CypPKOQ_.cjs +125 -0
- package/dist/data-list-CypPKOQ_.cjs.map +1 -0
- package/dist/data-list-DnSdaRES.js +121 -0
- package/dist/data-list-DnSdaRES.js.map +1 -0
- package/dist/data-list-skeleton-ADXw-opu.cjs +38 -0
- package/dist/data-list-skeleton-ADXw-opu.cjs.map +1 -0
- package/dist/data-list-skeleton-D7-glFuk.js +36 -0
- package/dist/data-list-skeleton-D7-glFuk.js.map +1 -0
- package/dist/data-list-spacer-DRHNUeeP.js +200 -0
- package/dist/data-list-spacer-DRHNUeeP.js.map +1 -0
- package/dist/data-list-spacer-EWo65MrK.cjs +209 -0
- package/dist/data-list-spacer-EWo65MrK.cjs.map +1 -0
- package/dist/data-list-top-DLwt_Sv-.js +367 -0
- package/dist/data-list-top-DLwt_Sv-.js.map +1 -0
- package/dist/data-list-top-RK_yX6z8.cjs +392 -0
- package/dist/data-list-top-RK_yX6z8.cjs.map +1 -0
- package/dist/data-panel-CWZJKBeW.cjs +270 -0
- package/dist/data-panel-CWZJKBeW.cjs.map +1 -0
- package/dist/data-panel-CWjgS1Gh.js +250 -0
- package/dist/data-panel-CWjgS1Gh.js.map +1 -0
- package/dist/data-panel-section-heading-CXD1skJD.js +21 -0
- package/dist/data-panel-section-heading-CXD1skJD.js.map +1 -0
- package/dist/data-panel-section-heading-V86Awzqg.cjs +23 -0
- package/dist/data-panel-section-heading-V86Awzqg.cjs.map +1 -0
- package/dist/date-picker-DgWTsiJ7.js +53 -0
- package/dist/date-picker-DgWTsiJ7.js.map +1 -0
- package/dist/date-picker-dRZF8frf.cjs +55 -0
- package/dist/date-picker-dRZF8frf.cjs.map +1 -0
- package/dist/date-time-range-picker-BcjLbkGu.js +178 -0
- package/dist/date-time-range-picker-BcjLbkGu.js.map +1 -0
- package/dist/date-time-range-picker-C6hjZswK.cjs +180 -0
- package/dist/date-time-range-picker-C6hjZswK.cjs.map +1 -0
- package/dist/dialog-DRpMek34.js +246 -0
- package/dist/dialog-DRpMek34.js.map +1 -0
- package/dist/dialog-Dm33cZqt.cjs +280 -0
- package/dist/dialog-Dm33cZqt.cjs.map +1 -0
- package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js +2 -2
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment-list.cjs.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment-list.es.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment.cjs.js +5 -4
- package/dist/domains/chat/attachments/composer-attachment.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment.es.js +5 -4
- package/dist/domains/chat/attachments/composer-attachment.es.js.map +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +2 -2
- package/dist/domains/chat/components/badge-wrapper.es.js +2 -2
- package/dist/domains/chat/components/loading-badge.cjs.js +3 -3
- package/dist/domains/chat/components/loading-badge.cjs.js.map +1 -1
- package/dist/domains/chat/components/loading-badge.es.js +3 -3
- package/dist/domains/chat/components/loading-badge.es.js.map +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +9 -9
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +9 -9
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js.map +1 -1
- package/dist/domains/chat/components/section-label.cjs.js +2 -2
- package/dist/domains/chat/components/section-label.cjs.js.map +1 -1
- package/dist/domains/chat/components/section-label.es.js +2 -2
- package/dist/domains/chat/components/section-label.es.js.map +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.es.js +1 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.cjs.js +6 -5
- package/dist/domains/chat/messages/reasoning-streaming-line.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js +6 -5
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js.map +1 -1
- package/dist/domains/chat/messages/reasoning.cjs.js +8 -29
- package/dist/domains/chat/messages/reasoning.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning.es.js +9 -30
- package/dist/domains/chat/messages/reasoning.es.js.map +1 -1
- package/dist/domains/chat/messages/renderers/message-text.cjs.js +4 -4
- package/dist/domains/chat/messages/renderers/message-text.es.js +4 -4
- package/dist/domains/chat/messages/renderers/status-renderers.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/status-renderers.es.js +1 -1
- package/dist/domains/chat/messages/signal-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/signal-badge.es.js +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js +7 -7
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js.map +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +7 -7
- package/dist/domains/chat/messages/system-reminder-badge.es.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +4 -4
- package/dist/domains/chat/messages/tripwire-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.es.js +4 -4
- package/dist/domains/chat/messages/tripwire-notice.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +5 -5
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js +5 -5
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +36 -36
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +36 -36
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +14 -14
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +14 -14
- package/dist/domains/chat/tools/badges/observation-renderer.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-buttons.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js +1 -1
- package/dist/domains/logs/components/log-details-view.cjs.js +11 -11
- package/dist/domains/logs/components/log-details-view.cjs.js.map +1 -1
- package/dist/domains/logs/components/log-details-view.es.js +11 -11
- package/dist/domains/logs/components/log-details-view.es.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.cjs.js +4 -4
- package/dist/domains/logs/components/logs-error-content.es.js +4 -4
- package/dist/domains/logs/components/logs-layout.cjs.js +1 -1
- package/dist/domains/logs/components/logs-layout.es.js +1 -1
- package/dist/domains/logs/components/logs-list-view.cjs.js +6 -4
- package/dist/domains/logs/components/logs-list-view.cjs.js.map +1 -1
- package/dist/domains/logs/components/logs-list-view.es.js +6 -4
- package/dist/domains/logs/components/logs-list-view.es.js.map +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js +2 -2
- package/dist/domains/logs/components/logs-toolbar.es.js +2 -2
- package/dist/domains/logs/components/no-logs-info.cjs.js +2 -2
- package/dist/domains/logs/components/no-logs-info.es.js +2 -2
- package/dist/domains/logs/hooks/use-logs-filter-persistence.cjs.js +1 -1
- package/dist/domains/logs/hooks/use-logs-filter-persistence.es.js +1 -1
- package/dist/domains/logs/hooks/use-logs.cjs.js +7 -3
- package/dist/domains/logs/hooks/use-logs.cjs.js.map +1 -1
- package/dist/domains/logs/hooks/use-logs.es.js +7 -3
- package/dist/domains/logs/hooks/use-logs.es.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.cjs.js +24 -23
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +24 -23
- package/dist/domains/memory/components/flame-graph.es.js.map +1 -1
- package/dist/domains/memory/components/memory-studio-panel.cjs.js +7 -7
- package/dist/domains/memory/components/memory-studio-panel.cjs.js.map +1 -1
- package/dist/domains/memory/components/memory-studio-panel.es.js +7 -7
- package/dist/domains/memory/components/memory-studio-panel.es.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.cjs.js +29 -29
- package/dist/domains/memory/components/observation-detail-view.cjs.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +29 -29
- package/dist/domains/memory/components/observation-detail-view.es.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.cjs.js +5 -5
- package/dist/domains/memory/components/thread-context-progress.cjs.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.es.js +5 -5
- package/dist/domains/memory/components/thread-context-progress.es.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.cjs.js +10 -10
- package/dist/domains/metrics/components/bar-list.cjs.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.es.js +10 -10
- package/dist/domains/metrics/components/bar-list.es.js.map +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/kpi-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.es.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/latency-card-view.es.js +5 -5
- package/dist/domains/metrics/components/memory-card-view.cjs.js +7 -7
- package/dist/domains/metrics/components/memory-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/memory-card-view.es.js +7 -7
- package/dist/domains/metrics/components/memory-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/metrics-utils.cjs.js +8 -11
- package/dist/domains/metrics/components/metrics-utils.cjs.js.map +1 -1
- package/dist/domains/metrics/components/metrics-utils.es.js +8 -11
- package/dist/domains/metrics/components/metrics-utils.es.js.map +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +3 -3
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +3 -3
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/scores-card-view.cjs.js +7 -7
- package/dist/domains/metrics/components/scores-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/scores-card-view.es.js +7 -7
- 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 +5 -5
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +5 -5
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +5 -5
- 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 +11 -11
- package/dist/domains/traces/components/shared.cjs.js.map +1 -1
- package/dist/domains/traces/components/shared.es.js +11 -11
- package/dist/domains/traces/components/shared.es.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +8 -8
- package/dist/domains/traces/components/span-data-panel-view.es.js +8 -8
- package/dist/domains/traces/components/span-details-view.cjs.js +1 -1
- package/dist/domains/traces/components/span-details-view.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +4 -4
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +4 -4
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +6 -15
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +6 -15
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js +4 -2
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js +4 -2
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js +7 -7
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js +7 -7
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +2 -2
- package/dist/domains/traces/components/span-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/span-summary-description.es.js +1 -1
- package/dist/domains/traces/components/span-timeline-row.cjs.js +9 -9
- package/dist/domains/traces/components/span-timeline-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timeline-row.es.js +9 -9
- package/dist/domains/traces/components/span-timeline-row.es.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js +5 -5
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.es.js +5 -5
- package/dist/domains/traces/components/span-timing-hover-card.es.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.cjs.js +40 -46
- package/dist/domains/traces/components/span-token-usage.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.es.js +40 -46
- package/dist/domains/traces/components/span-token-usage.es.js.map +1 -1
- package/dist/domains/traces/components/span-type-legend.cjs.js +1 -1
- package/dist/domains/traces/components/span-type-legend.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +7 -7
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +7 -7
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.cjs.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.es.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-root.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.cjs.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.es.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.cjs.js +9 -12
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +9 -12
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.cjs.js +3 -3
- package/dist/domains/traces/components/timeline-structure-sign.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.es.js +3 -3
- package/dist/domains/traces/components/timeline-structure-sign.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +7 -7
- package/dist/domains/traces/components/timeline-timing-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.es.js +7 -7
- package/dist/domains/traces/components/timeline-timing-col.es.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +52 -22
- package/dist/domains/traces/components/trace-columns-menu.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.es.js +54 -24
- package/dist/domains/traces/components/trace-columns-menu.es.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +17 -18
- 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 +17 -18
- package/dist/domains/traces/components/trace-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
- package/dist/domains/traces/components/trace-id-button.es.js +1 -1
- package/dist/domains/traces/components/trace-keys-and-values.cjs.js +2 -2
- package/dist/domains/traces/components/trace-keys-and-values.es.js +2 -2
- package/dist/domains/traces/components/trace-span-timeline.cjs.js +1 -1
- package/dist/domains/traces/components/trace-span-timeline.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-timeline.es.js +1 -1
- package/dist/domains/traces/components/trace-span-timeline.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree-skeleton.cjs.js +2 -2
- package/dist/domains/traces/components/trace-span-tree-skeleton.es.js +2 -2
- package/dist/domains/traces/components/trace-span-tree.cjs.js +1 -1
- package/dist/domains/traces/components/trace-span-tree.es.js +1 -1
- package/dist/domains/traces/components/trace-status-value.cjs.js +2 -2
- package/dist/domains/traces/components/trace-status-value.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-status-value.es.js +2 -2
- package/dist/domains/traces/components/trace-status-value.es.js.map +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.es.js +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js +5 -12
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.es.js +5 -12
- package/dist/domains/traces/components/trace-time-range-chip.es.js.map +1 -1
- package/dist/domains/traces/components/traces-error-content.cjs.js +3 -3
- package/dist/domains/traces/components/traces-error-content.es.js +3 -3
- 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-adapter.cjs.js +6 -1
- package/dist/domains/traces/components/traces-list-view-adapter.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view-adapter.es.js +6 -1
- package/dist/domains/traces/components/traces-list-view-adapter.es.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view.cjs.js +69 -9
- package/dist/domains/traces/components/traces-list-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view.es.js +70 -10
- package/dist/domains/traces/components/traces-list-view.es.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +4 -6
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js +4 -6
- package/dist/domains/traces/components/traces-page-skeleton.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-download-trace-json.cjs.js +1 -1
- package/dist/domains/traces/hooks/use-download-trace-json.es.js +1 -1
- package/dist/domains/traces/hooks/use-trace-column-preferences.cjs.js +13 -0
- package/dist/domains/traces/hooks/use-trace-column-preferences.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-column-preferences.es.js +13 -0
- package/dist/domains/traces/hooks/use-trace-column-preferences.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-metadata-filter-fields.cjs.js +11 -13
- package/dist/domains/traces/hooks/use-trace-metadata-filter-fields.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-metadata-filter-fields.es.js +11 -14
- package/dist/domains/traces/hooks/use-trace-metadata-filter-fields.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-query.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-query.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js +1 -5
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.es.js +2 -6
- package/dist/domains/traces/hooks/use-trace-url-state.es.js.map +1 -1
- package/dist/domains/traces/trace-filters.cjs.js +172 -43
- package/dist/domains/traces/trace-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-filters.es.js +172 -46
- package/dist/domains/traces/trace-filters.es.js.map +1 -1
- package/dist/domains/traces/trace-list-columns.cjs.js +42 -6
- package/dist/domains/traces/trace-list-columns.cjs.js.map +1 -1
- package/dist/domains/traces/trace-list-columns.es.js +39 -7
- package/dist/domains/traces/trace-list-columns.es.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.cjs.js +113 -28
- package/dist/domains/traces/trace-query-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.es.js +110 -29
- package/dist/domains/traces/trace-query-filters.es.js.map +1 -1
- package/dist/domains/traces.cjs.js +7 -0
- package/dist/domains/traces.cjs.js.map +1 -1
- package/dist/domains/traces.es.js +2 -2
- package/dist/drawer-BL5shtHH.cjs +369 -0
- package/dist/drawer-BL5shtHH.cjs.map +1 -0
- package/dist/drawer-Bv2DRY8E.js +329 -0
- package/dist/drawer-Bv2DRY8E.js.map +1 -0
- package/dist/drawer.css +10 -0
- package/dist/dropdown-menu-DL0MzjEb.js +222 -0
- package/dist/dropdown-menu-DL0MzjEb.js.map +1 -0
- package/dist/dropdown-menu-DNRCA4Gj.cjs +243 -0
- package/dist/dropdown-menu-DNRCA4Gj.cjs.map +1 -0
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +11 -12
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.es.js +11 -12
- package/dist/ee/signals/components/entity-index-compact-grid.es.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js +2 -4
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +2 -4
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.cjs.js +53 -48
- package/dist/ee/signals/components/signals-empty-state.cjs.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +53 -48
- package/dist/ee/signals/components/signals-empty-state.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +2 -2
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +2 -2
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +12 -13
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +12 -13
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
- package/dist/ee/signals/examples-pager.cjs.js +2 -2
- package/dist/ee/signals/examples-pager.cjs.js.map +1 -1
- package/dist/ee/signals/examples-pager.es.js +2 -2
- package/dist/ee/signals/examples-pager.es.js.map +1 -1
- package/dist/ee/signals/flow-card.cjs.js +7 -7
- package/dist/ee/signals/flow-card.cjs.js.map +1 -1
- package/dist/ee/signals/flow-card.es.js +7 -7
- package/dist/ee/signals/flow-card.es.js.map +1 -1
- package/dist/ee/signals/lifeline-point.cjs.js +3 -2
- package/dist/ee/signals/lifeline-point.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-point.es.js +3 -2
- package/dist/ee/signals/lifeline-point.es.js.map +1 -1
- package/dist/ee/signals/lifeline-row.cjs.js +11 -4
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-row.es.js +11 -4
- package/dist/ee/signals/lifeline-row.es.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +31 -12
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +31 -12
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +5 -5
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +5 -5
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +29 -19
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +29 -19
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +16 -16
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.es.js +16 -16
- package/dist/ee/signals/settings/trace-signal-settings.es.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.cjs.js +8 -8
- package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.es.js +8 -8
- package/dist/ee/signals/signal-delta-column.es.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.cjs.js +3 -3
- package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.es.js +3 -3
- package/dist/ee/signals/signal-lifelines.es.js.map +1 -1
- package/dist/ee/signals/signals-error-state.cjs.js +4 -4
- package/dist/ee/signals/signals-error-state.cjs.js.map +1 -1
- package/dist/ee/signals/signals-error-state.es.js +4 -4
- package/dist/ee/signals/signals-error-state.es.js.map +1 -1
- package/dist/ee/signals/signals-loading-skeleton.cjs.js +2 -2
- package/dist/ee/signals/signals-loading-skeleton.cjs.js.map +1 -1
- package/dist/ee/signals/signals-loading-skeleton.es.js +2 -2
- package/dist/ee/signals/signals-loading-skeleton.es.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.cjs.js +5 -5
- package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +5 -5
- package/dist/ee/signals/snapshot-timeline.es.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js +12 -4
- package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.es.js +12 -4
- package/dist/ee/signals/sortable-signal-headers.es.js.map +1 -1
- package/dist/ee/signals/theme-compare-sparkline.cjs.js +1 -1
- package/dist/ee/signals/theme-compare-sparkline.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare-sparkline.es.js +1 -1
- package/dist/ee/signals/theme-compare-sparkline.es.js.map +1 -1
- package/dist/ee/signals/theme-compare.cjs.js +5 -5
- package/dist/ee/signals/theme-compare.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare.es.js +5 -5
- package/dist/ee/signals/theme-compare.es.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +25 -20
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +25 -20
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +3 -3
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +3 -3
- package/dist/ee/signals/theme-filter-banner.es.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.es.js +1 -1
- package/dist/ee/signals/theme-lifelines.es.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.cjs.js +2 -2
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js +2 -2
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +23 -21
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +23 -21
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +11 -8
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +11 -8
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.cjs.js +4 -4
- package/dist/ee/signals/view-mode-tab.cjs.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.es.js +4 -4
- package/dist/ee/signals/view-mode-tab.es.js.map +1 -1
- package/dist/ee/topics/components/topic-trace-details-panel.cjs.js +1 -1
- package/dist/ee/topics/components/topic-trace-details-panel.es.js +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +4 -4
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js.map +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +4 -4
- package/dist/ee/topics/components/topic-trace-summary-list.es.js.map +1 -1
- package/dist/ee/topics/components/topics-layout.cjs.js +2 -2
- package/dist/ee/topics/components/topics-layout.cjs.js.map +1 -1
- package/dist/ee/topics/components/topics-layout.es.js +2 -2
- package/dist/ee/topics/components/topics-layout.es.js.map +1 -1
- package/dist/field-block-DWkbNcsV.js +96 -0
- package/dist/field-block-DWkbNcsV.js.map +1 -0
- package/dist/field-block-Dy1IaWbv.cjs +98 -0
- package/dist/field-block-Dy1IaWbv.cjs.map +1 -0
- package/dist/filter-bar-chip-BxI0NgEz.cjs +1000 -0
- package/dist/filter-bar-chip-BxI0NgEz.cjs.map +1 -0
- package/dist/filter-bar-chip-C-JxWUU8.js +984 -0
- package/dist/filter-bar-chip-C-JxWUU8.js.map +1 -0
- package/dist/filter-bar-chip.css +131 -0
- package/dist/hooks/use-copy-to-clipboard.cjs.js +1 -1
- package/dist/hooks/use-copy-to-clipboard.es.js +1 -1
- package/dist/horizontal-bars-CksEKcCE.js +139 -0
- package/dist/horizontal-bars-CksEKcCE.js.map +1 -0
- package/dist/horizontal-bars-nyWGmQ7g.cjs +141 -0
- package/dist/horizontal-bars-nyWGmQ7g.cjs.map +1 -0
- package/dist/hover-card-Ch5smNcf.js +71 -0
- package/dist/hover-card-Ch5smNcf.js.map +1 -0
- package/dist/hover-card-DdHnkGcs.cjs +94 -0
- package/dist/hover-card-DdHnkGcs.cjs.map +1 -0
- package/dist/icons/Icon.cjs.js +9 -8
- package/dist/icons/Icon.cjs.js.map +1 -1
- package/dist/icons/Icon.es.js +9 -9
- package/dist/icons/Icon.es.js.map +1 -1
- package/dist/index-C-fBJhpb.cjs +47 -0
- package/dist/index-C-fBJhpb.cjs.map +1 -0
- package/dist/index-Dubp6Qv4.js +45 -0
- package/dist/index-Dubp6Qv4.js.map +1 -0
- package/dist/input-B1RysHyq.js +68 -0
- package/dist/input-B1RysHyq.js.map +1 -0
- package/dist/input-CDLMprJS.cjs +89 -0
- package/dist/input-CDLMprJS.cjs.map +1 -0
- package/dist/input-group-BEdHivvy.js +194 -0
- package/dist/input-group-BEdHivvy.js.map +1 -0
- package/dist/input-group-CvWwK1Vz.cjs +220 -0
- package/dist/input-group-CvWwK1Vz.cjs.map +1 -0
- package/dist/kbd-B-Z2sNvK.cjs +29 -0
- package/dist/kbd-B-Z2sNvK.cjs.map +1 -0
- package/dist/kbd-CINtikLh.js +27 -0
- package/dist/kbd-CINtikLh.js.map +1 -0
- package/dist/label-DfAhywj_.cjs +39 -0
- package/dist/label-DfAhywj_.cjs.map +1 -0
- package/dist/label-Dxsz0dFs.js +18 -0
- package/dist/label-Dxsz0dFs.js.map +1 -0
- package/dist/layout/tabbed-container.cjs.js +10 -10
- package/dist/layout/tabbed-container.cjs.js.map +1 -1
- package/dist/layout/tabbed-container.es.js +10 -10
- package/dist/layout/tabbed-container.es.js.map +1 -1
- package/dist/list-search-BTW0Neuc.js +69 -0
- package/dist/list-search-BTW0Neuc.js.map +1 -0
- package/dist/list-search-vyxsZMAK.cjs +71 -0
- package/dist/list-search-vyxsZMAK.cjs.map +1 -0
- package/dist/logs-data-list-BSHJPGi6.cjs +83 -0
- package/dist/logs-data-list-BSHJPGi6.cjs.map +1 -0
- package/dist/logs-data-list-CG-UgC_x.js +81 -0
- package/dist/logs-data-list-CG-UgC_x.js.map +1 -0
- package/dist/main-sidebar-link-active-CmDoiX6g.js +786 -0
- package/dist/main-sidebar-link-active-CmDoiX6g.js.map +1 -0
- package/dist/main-sidebar-link-active-DbCvKZy2.cjs +803 -0
- package/dist/main-sidebar-link-active-DbCvKZy2.cjs.map +1 -0
- package/dist/markdown-renderer-B0gTm_Ea.js +408 -0
- package/dist/markdown-renderer-B0gTm_Ea.js.map +1 -0
- package/dist/markdown-renderer-D8qYAU7K.cjs +410 -0
- package/dist/markdown-renderer-D8qYAU7K.cjs.map +1 -0
- package/dist/markdown-renderer.css +20 -20
- package/dist/message-BrwbcLPi.js +62 -0
- package/dist/message-BrwbcLPi.js.map +1 -0
- package/dist/message-CszposMZ.cjs +66 -0
- package/dist/message-CszposMZ.cjs.map +1 -0
- package/dist/message-scroller-c22pIucB.cjs +860 -0
- package/dist/message-scroller-c22pIucB.cjs.map +1 -0
- package/dist/message-scroller-v1kQVq2v.js +834 -0
- package/dist/message-scroller-v1kQVq2v.js.map +1 -0
- package/dist/metrics-card-BUJxiwec.cjs +95 -0
- package/dist/metrics-card-BUJxiwec.cjs.map +1 -0
- package/dist/metrics-card-BlBt1WHw.js +93 -0
- package/dist/metrics-card-BlBt1WHw.js.map +1 -0
- package/dist/metrics-kpi-card-CBSNmtc5.js +77 -0
- package/dist/metrics-kpi-card-CBSNmtc5.js.map +1 -0
- package/dist/metrics-kpi-card-CgqmNcEC.cjs +79 -0
- package/dist/metrics-kpi-card-CgqmNcEC.cjs.map +1 -0
- package/dist/metrics-line-chart-B_sP3eiL.cjs +114 -0
- package/dist/metrics-line-chart-B_sP3eiL.cjs.map +1 -0
- package/dist/metrics-line-chart-DHyrDPkJ.js +111 -0
- package/dist/metrics-line-chart-DHyrDPkJ.js.map +1 -0
- package/dist/new/layout/app-shell.cjs.js +4 -2
- package/dist/new/layout/app-shell.cjs.js.map +1 -1
- package/dist/new/layout/app-shell.es.js +4 -2
- package/dist/new/layout/app-shell.es.js.map +1 -1
- package/dist/new/layout/page-header.cjs.js +1 -1
- package/dist/new/layout/page-header.es.js +1 -1
- package/dist/new/layout/page-shell.cjs.js +2 -2
- package/dist/new/layout/page-shell.es.js +2 -2
- package/dist/new/settings.cjs.js +9 -19
- package/dist/new/settings.cjs.js.map +1 -1
- package/dist/new/settings.es.js +9 -19
- package/dist/new/settings.es.js.map +1 -1
- package/dist/new/sidebar.cjs.js +22 -27
- package/dist/new/sidebar.cjs.js.map +1 -1
- package/dist/new/sidebar.es.js +23 -28
- package/dist/new/sidebar.es.js.map +1 -1
- package/dist/no-data-page-layout-DcVPjj-J.js +9 -0
- package/dist/no-data-page-layout-DcVPjj-J.js.map +1 -0
- package/dist/no-data-page-layout-Drzbg_w8.cjs +11 -0
- package/dist/no-data-page-layout-Drzbg_w8.cjs.map +1 -0
- package/dist/page-header-BBlPmW-T.cjs +118 -0
- package/dist/page-header-BBlPmW-T.cjs.map +1 -0
- package/dist/page-header-BIoUf7MA.js +116 -0
- package/dist/page-header-BIoUf7MA.js.map +1 -0
- package/dist/page-layout-C9ifD9Q8.cjs +99 -0
- package/dist/page-layout-C9ifD9Q8.cjs.map +1 -0
- package/dist/page-layout-xcM8IR-B.js +97 -0
- package/dist/page-layout-xcM8IR-B.js.map +1 -0
- package/dist/popover-Dg70UGyn.js +99 -0
- package/dist/popover-Dg70UGyn.js.map +1 -0
- package/dist/popover-lBqKiPtp.cjs +123 -0
- package/dist/popover-lBqKiPtp.cjs.map +1 -0
- package/dist/primitives/control-size.cjs.js +10 -19
- package/dist/primitives/control-size.cjs.js.map +1 -1
- package/dist/primitives/control-size.es.js +11 -19
- package/dist/primitives/control-size.es.js.map +1 -1
- package/dist/primitives/fluid-menu.cjs.js +27 -10
- package/dist/primitives/fluid-menu.cjs.js.map +1 -1
- package/dist/primitives/fluid-menu.es.js +27 -10
- package/dist/primitives/fluid-menu.es.js.map +1 -1
- package/dist/primitives/form-element.cjs.js +11 -11
- package/dist/primitives/form-element.cjs.js.map +1 -1
- package/dist/primitives/form-element.es.js +11 -9
- package/dist/primitives/form-element.es.js.map +1 -1
- package/dist/primitives/menu-item.cjs.js +17 -11
- package/dist/primitives/menu-item.cjs.js.map +1 -1
- package/dist/primitives/menu-item.es.js +17 -11
- package/dist/primitives/menu-item.es.js.map +1 -1
- package/dist/primitives/raised-surface.cjs.js +16 -0
- package/dist/primitives/raised-surface.cjs.js.map +1 -0
- package/dist/primitives/raised-surface.d.ts +2 -0
- package/dist/primitives/raised-surface.es.js +8 -0
- package/dist/primitives/raised-surface.es.js.map +1 -0
- package/dist/primitives/resize-handle-indicator.cjs.js +4 -4
- package/dist/primitives/resize-handle-indicator.cjs.js.map +1 -1
- package/dist/primitives/resize-handle-indicator.es.js +4 -4
- package/dist/primitives/resize-handle-indicator.es.js.map +1 -1
- package/dist/primitives/selection-control.cjs.js +22 -0
- package/dist/primitives/selection-control.cjs.js.map +1 -0
- package/dist/primitives/selection-control.d.ts +2 -0
- package/dist/primitives/selection-control.es.js +18 -0
- package/dist/primitives/selection-control.es.js.map +1 -0
- package/dist/primitives/transitions.cjs.js +2 -0
- package/dist/primitives/transitions.cjs.js.map +1 -1
- package/dist/primitives/transitions.es.js +2 -1
- package/dist/primitives/transitions.es.js.map +1 -1
- package/dist/primitives/trigger-button.cjs.js +2 -2
- package/dist/primitives/trigger-button.es.js +2 -2
- package/dist/primitives/typography.cjs.js +10 -0
- package/dist/primitives/typography.cjs.js.map +1 -0
- package/dist/primitives/typography.d.ts +2 -0
- package/dist/primitives/typography.es.js +5 -0
- package/dist/primitives/typography.es.js.map +1 -0
- package/dist/property-filter-applied-BBiUbtr0.js +343 -0
- package/dist/property-filter-applied-BBiUbtr0.js.map +1 -0
- package/dist/property-filter-applied-BmxCPe2d.cjs +347 -0
- package/dist/property-filter-applied-BmxCPe2d.cjs.map +1 -0
- package/dist/resize/collapsible-panel.cjs.js +4 -4
- package/dist/resize/collapsible-panel.cjs.js.map +1 -1
- package/dist/resize/collapsible-panel.es.js +4 -4
- package/dist/resize/collapsible-panel.es.js.map +1 -1
- package/dist/resize/panel-drawer.cjs.js +2 -2
- package/dist/resize/panel-drawer.es.js +2 -2
- package/dist/resize/panel-group.cjs.js +1 -1
- package/dist/resize/panel-group.es.js +1 -1
- package/dist/resize/panel-icon-button.cjs.js +6 -3
- package/dist/resize/panel-icon-button.cjs.js.map +1 -1
- package/dist/resize/panel-icon-button.es.js +6 -3
- package/dist/resize/panel-icon-button.es.js.map +1 -1
- package/dist/resize/separator.cjs.js +2 -2
- package/dist/resize/separator.cjs.js.map +1 -1
- package/dist/resize/separator.es.js +2 -2
- package/dist/resize/separator.es.js.map +1 -1
- package/dist/sankey-chart-Bcm9jMhe.cjs +926 -0
- package/dist/sankey-chart-Bcm9jMhe.cjs.map +1 -0
- package/dist/sankey-chart-CqngN2lw.js +916 -0
- package/dist/sankey-chart-CqngN2lw.js.map +1 -0
- package/dist/scroll-area-CdQ_5bLm.js +227 -0
- package/dist/scroll-area-CdQ_5bLm.js.map +1 -0
- package/dist/scroll-area-Qjf7e0Ik.cjs +249 -0
- package/dist/scroll-area-Qjf7e0Ik.cjs.map +1 -0
- package/dist/search-field-block-B5vUVTpl.js +125 -0
- package/dist/search-field-block-B5vUVTpl.js.map +1 -0
- package/dist/search-field-block-D0PUUCAE.cjs +127 -0
- package/dist/search-field-block-D0PUUCAE.cjs.map +1 -0
- package/dist/section-B9OLuEq3.js +111 -0
- package/dist/section-B9OLuEq3.js.map +1 -0
- package/dist/section-CTihfzmc.cjs +115 -0
- package/dist/section-CTihfzmc.cjs.map +1 -0
- package/dist/select--DXpTg0O.js +139 -0
- package/dist/select--DXpTg0O.js.map +1 -0
- package/dist/select-7ACAVdGX.cjs +165 -0
- package/dist/select-7ACAVdGX.cjs.map +1 -0
- package/dist/select-field-block-Bu7UXI2H.js +59 -0
- package/dist/select-field-block-Bu7UXI2H.js.map +1 -0
- package/dist/select-field-block-W2u2WmN3.cjs +61 -0
- package/dist/select-field-block-W2u2WmN3.cjs.map +1 -0
- package/dist/settings-container-3_Yu2aCY.cjs +33 -0
- package/dist/settings-container-3_Yu2aCY.cjs.map +1 -0
- package/dist/settings-container-T53heJKd.js +30 -0
- package/dist/settings-container-T53heJKd.js.map +1 -0
- package/dist/settings-layout-C80s-D31.js +47 -0
- package/dist/settings-layout-C80s-D31.js.map +1 -0
- package/dist/settings-layout-NP_1dC-e.cjs +49 -0
- package/dist/settings-layout-NP_1dC-e.cjs.map +1 -0
- package/dist/settings-row-B2IekRyH.js +83 -0
- package/dist/settings-row-B2IekRyH.js.map +1 -0
- package/dist/settings-row-BoAuUUuH.cjs +86 -0
- package/dist/settings-row-BoAuUUuH.cjs.map +1 -0
- package/dist/shimmer-BN7Dzm37.js +23 -0
- package/dist/shimmer-BN7Dzm37.js.map +1 -0
- package/dist/shimmer-DbSkqomT.cjs +25 -0
- package/dist/shimmer-DbSkqomT.cjs.map +1 -0
- package/dist/skeleton-BsRAXyh5.js +23 -0
- package/dist/skeleton-BsRAXyh5.js.map +1 -0
- package/dist/skeleton-cXUjPrq9.cjs +25 -0
- package/dist/skeleton-cXUjPrq9.cjs.map +1 -0
- package/dist/slider-C-Fda4HC.cjs +97 -0
- package/dist/slider-C-Fda4HC.cjs.map +1 -0
- package/dist/slider-MM3K0Pyv.js +95 -0
- package/dist/slider-MM3K0Pyv.js.map +1 -0
- package/dist/sort/sort-by.cjs.js +44 -0
- package/dist/sort/sort-by.cjs.js.map +1 -0
- package/dist/sort/sort-by.d.ts +2 -0
- package/dist/sort/sort-by.es.js +39 -0
- package/dist/sort/sort-by.es.js.map +1 -0
- package/dist/sort/use-url-sort.cjs.js +52 -0
- package/dist/sort/use-url-sort.cjs.js.map +1 -0
- package/dist/sort/use-url-sort.d.ts +2 -0
- package/dist/sort/use-url-sort.es.js +45 -0
- package/dist/sort/use-url-sort.es.js.map +1 -0
- package/dist/span-payload-primitives-DnRsP93D.cjs +75 -0
- package/dist/span-payload-primitives-DnRsP93D.cjs.map +1 -0
- package/dist/span-payload-primitives-sbxk4CHC.js +68 -0
- package/dist/span-payload-primitives-sbxk4CHC.js.map +1 -0
- package/dist/spinner-CqP-NaB2.cjs +53 -0
- package/dist/spinner-CqP-NaB2.cjs.map +1 -0
- package/dist/spinner-D2C2DYw8.js +51 -0
- package/dist/spinner-D2C2DYw8.js.map +1 -0
- package/dist/src/domains/logs/components/logs-list-view.d.ts +5 -1
- package/dist/src/domains/logs/hooks/use-logs.d.ts +2 -0
- package/dist/src/domains/metrics/components/metrics-utils.d.ts +8 -11
- package/dist/src/domains/traces/components/span-timing-hover-card.d.ts +0 -1
- package/dist/src/domains/traces/components/trace-columns-menu.d.ts +6 -2
- package/dist/src/domains/traces/components/trace-time-range-chip.stories.d.ts +7 -0
- package/dist/src/domains/traces/components/traces-list-view.d.ts +11 -2
- package/dist/src/domains/traces/hooks/use-trace-column-preferences.d.ts +3 -1
- package/dist/src/domains/traces/hooks/use-trace-metadata-filter-fields.d.ts +4 -1
- package/dist/src/domains/traces/hooks/use-trace-query.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-spans.d.ts +16 -16
- package/dist/src/domains/traces/hooks/use-trace-url-state.d.ts +4 -5
- package/dist/src/domains/traces/trace-filters.d.ts +32 -10
- package/dist/src/domains/traces/trace-list-columns.d.ts +11 -2
- package/dist/src/domains/traces/trace-query-filters.d.ts +20 -2
- package/dist/src/ds/components/Button/Button.d.ts +1 -1
- package/dist/src/ds/components/ButtonsGroup/buttons-group.d.ts +1 -10
- package/dist/src/ds/components/ButtonsGroup/buttons-group.stories.d.ts +14 -3
- package/dist/src/ds/components/Card/Card.d.ts +3 -5
- package/dist/src/ds/components/Card/card.stories.d.ts +1 -1
- package/dist/src/ds/components/ChartTooltip/chart-tooltip.d.ts +11 -0
- package/dist/src/ds/components/ChartTooltip/index.d.ts +1 -0
- package/dist/src/ds/components/ChatShell/chat-shell.d.ts +4 -2
- package/dist/src/ds/components/Combobox/combobox-styles.d.ts +4 -7
- package/dist/src/ds/components/Combobox/combobox.d.ts +3 -0
- package/dist/src/ds/components/Combobox/combobox.stories.d.ts +1 -0
- package/dist/src/ds/components/DataKeysAndValues/shared.d.ts +1 -1
- package/dist/src/ds/components/DataList/ScoresDataList/scores-data-list.d.ts +2 -0
- package/dist/src/ds/components/DataList/TracesDataList/traces-data-list-cells.d.ts +2 -3
- package/dist/src/ds/components/DataList/TracesDataList/traces-data-list.d.ts +4 -2
- package/dist/src/ds/components/DataList/data-list-cells.d.ts +2 -2
- package/dist/src/ds/components/DataList/data-list-root.d.ts +3 -2
- package/dist/src/ds/components/DataList/data-list-sortable-top-cell.d.ts +6 -6
- package/dist/src/ds/components/DataList/data-list.d.ts +3 -2
- package/dist/src/ds/components/DataList/data-list.stories.d.ts +5 -0
- package/dist/src/ds/components/DataList/shared.d.ts +13 -4
- package/dist/src/ds/components/DataPanel/data-panel-root.d.ts +2 -1
- package/dist/src/ds/components/Dialog/dialog-context.d.ts +3 -4
- package/dist/src/ds/components/FilterBar/filter-bar-chip.d.ts +10 -1
- package/dist/src/ds/components/FilterBar/filter-bar-context.d.ts +16 -3
- package/dist/src/ds/components/FilterBar/filter-bar.d.ts +19 -3
- package/dist/src/ds/components/FilterBar/index.d.ts +2 -2
- package/dist/src/ds/components/FilterBar/types.d.ts +22 -0
- package/dist/src/ds/components/FormFieldBlocks/block/field-block-label.d.ts +3 -1
- package/dist/src/ds/components/FormFieldBlocks/block/field-block-message.d.ts +6 -0
- package/dist/src/ds/components/FormFieldBlocks/block/field-block.d.ts +2 -0
- package/dist/src/ds/components/FormFieldBlocks/fields/search-field-block.d.ts +1 -2
- package/dist/src/ds/components/FormFieldBlocks/fields/textarea-field-block.d.ts +15 -0
- package/dist/src/ds/components/FormFieldBlocks/index.d.ts +1 -0
- package/dist/src/ds/components/HoverCard/hover-card.d.ts +0 -21
- package/dist/src/ds/components/HoverCard/hover-card.stories.d.ts +1 -0
- package/dist/src/ds/components/Input/input.d.ts +4 -4
- package/dist/src/ds/components/Input/input.stories.d.ts +0 -1
- package/dist/src/ds/components/InputGroup/input-group.d.ts +2 -12
- package/dist/src/ds/components/InputGroup/input-group.stories.d.ts +1 -1
- package/dist/src/ds/components/Kbd/kbd.d.ts +1 -2
- package/dist/src/ds/components/Kbd/kbd.stories.d.ts +1 -2
- package/dist/src/ds/components/ListSearch/list-search.d.ts +1 -2
- package/dist/src/ds/components/LogsDataList/logs-data-list.d.ts +2 -0
- package/dist/src/ds/components/MainHeader/main-header-title.d.ts +1 -2
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-item-classes.d.ts +1 -1
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-link.d.ts +1 -0
- package/dist/src/ds/components/Tabs/tabs-list.d.ts +3 -14
- package/dist/src/ds/components/Textarea/textarea.d.ts +4 -4
- package/dist/src/ds/components/ThemeToggle/theme-toggle.d.ts +2 -2
- package/dist/src/ds/components/Txt/Txt.d.ts +8 -15
- package/dist/src/ds/components/Txt/txt.stories.d.ts +6 -17
- package/dist/src/ds/components/Workflow/cards/workflow-clock.d.ts +2 -1
- package/dist/src/ds/components/Workflow/types.d.ts +1 -0
- package/dist/src/ds/icons/Icon.d.ts +3 -1
- package/dist/src/ds/new/layout/page-header/page-header-title.d.ts +1 -3
- package/dist/src/ds/new/layout/page-header/page-header.d.ts +1 -1
- package/dist/src/ds/new/layout/page-header/page-header.stories.d.ts +1 -9
- package/dist/src/ds/primitives/control-size.d.ts +1 -2
- package/dist/src/ds/primitives/fluid-menu.d.ts +9 -6
- package/dist/src/ds/primitives/form-element.d.ts +5 -7
- package/dist/src/ds/primitives/menu-item.d.ts +3 -3
- package/dist/src/ds/primitives/raised-surface.d.ts +50 -0
- package/dist/src/ds/primitives/selection-control.d.ts +1 -0
- package/dist/src/ds/primitives/transitions.d.ts +1 -0
- package/dist/src/ds/primitives/typography.d.ts +11 -0
- package/dist/src/ds/tokens/animations.d.ts +6 -7
- package/dist/src/ds/tokens/colors.d.ts +63 -18
- package/dist/src/ds/tokens/elevation-foundations.stories.d.ts +5 -0
- package/dist/src/ds/tokens/fonts.d.ts +3 -25
- package/dist/src/ds/tokens/foundations-layout.d.ts +29 -0
- package/dist/src/ds/tokens/index.d.ts +0 -1
- package/dist/src/ds/tokens/motion-foundations.stories.d.ts +5 -0
- package/dist/src/ds/tokens/shadows.d.ts +3 -13
- package/dist/src/ds/tokens/shape-foundations.stories.d.ts +5 -0
- package/dist/src/ds/tokens/sizes.d.ts +7 -8
- package/dist/src/ds/tokens/status-foundations.stories.d.ts +5 -0
- package/dist/src/ds/tokens/surface-foundations.stories.d.ts +5 -0
- package/dist/src/ds/tokens/utilities-foundations.stories.d.ts +5 -0
- package/dist/src/lib/sort/sort-by.d.ts +16 -0
- package/dist/src/lib/sort/use-url-sort.d.ts +24 -0
- package/dist/src/utils/duration.d.ts +1 -0
- package/dist/style.css +2235 -3169
- package/dist/switch-6125Oajw.cjs +124 -0
- package/dist/switch-6125Oajw.cjs.map +1 -0
- package/dist/switch-CE9jTpUG.js +103 -0
- package/dist/switch-CE9jTpUG.js.map +1 -0
- package/dist/tabbed-container.css +15 -15
- package/dist/tabs-content-Bz6CZuv9.cjs +37 -0
- package/dist/tabs-content-Bz6CZuv9.cjs.map +1 -0
- package/dist/tabs-content-CKC4kIpH.js +35 -0
- package/dist/tabs-content-CKC4kIpH.js.map +1 -0
- package/dist/tabs-root-C5ABfm1F.cjs +315 -0
- package/dist/tabs-root-C5ABfm1F.cjs.map +1 -0
- package/dist/tabs-root-CcEQrwTM.js +312 -0
- package/dist/tabs-root-CcEQrwTM.js.map +1 -0
- package/dist/tabs-root.css +18 -31
- package/dist/tabs-tab-BycF4dvx.js +103 -0
- package/dist/tabs-tab-BycF4dvx.js.map +1 -0
- package/dist/tabs-tab-DA466DbX.cjs +107 -0
- package/dist/tabs-tab-DA466DbX.cjs.map +1 -0
- package/dist/text-field-block--EUJKlY_.js +56 -0
- package/dist/text-field-block--EUJKlY_.js.map +1 -0
- package/dist/text-field-block-BLpLWmu8.cjs +58 -0
- package/dist/text-field-block-BLpLWmu8.cjs.map +1 -0
- package/dist/textarea-5b6XcMrq.cjs +79 -0
- package/dist/textarea-5b6XcMrq.cjs.map +1 -0
- package/dist/textarea-DdnzLrI9.js +58 -0
- package/dist/textarea-DdnzLrI9.js.map +1 -0
- package/dist/thread-rail-b-8RHNX_.cjs +343 -0
- package/dist/thread-rail-b-8RHNX_.cjs.map +1 -0
- package/dist/thread-rail-vsR5C0j4.js +322 -0
- package/dist/thread-rail-vsR5C0j4.js.map +1 -0
- package/dist/time-picker-DVt1ZUsS.js +76 -0
- package/dist/time-picker-DVt1ZUsS.js.map +1 -0
- package/dist/time-picker-Dlm-C-n4.cjs +78 -0
- package/dist/time-picker-Dlm-C-n4.cjs.map +1 -0
- package/dist/toast-c5kCpyWt.js +52 -0
- package/dist/toast-c5kCpyWt.js.map +1 -0
- package/dist/toast-nm-fM7BR.cjs +55 -0
- package/dist/toast-nm-fM7BR.cjs.map +1 -0
- package/dist/toast.css +12 -12
- package/dist/tokens.cjs.js +153 -22
- package/dist/tokens.cjs.js.map +1 -1
- package/dist/tokens.es.js +144 -11
- package/dist/tokens.es.js.map +1 -1
- package/dist/tool-approval-DB82iiRa.js +66 -0
- package/dist/tool-approval-DB82iiRa.js.map +1 -0
- package/dist/tool-approval-Dys524ty.cjs +69 -0
- package/dist/tool-approval-Dys524ty.cjs.map +1 -0
- package/dist/tool-call-CMRvRE-v.cjs +197 -0
- package/dist/tool-call-CMRvRE-v.cjs.map +1 -0
- package/dist/tool-call-K147tCug.js +182 -0
- package/dist/tool-call-K147tCug.js.map +1 -0
- package/dist/tooltip-BrDiP0RI.js +114 -0
- package/dist/tooltip-BrDiP0RI.js.map +1 -0
- package/dist/tooltip-FvWL16Xn.cjs +138 -0
- package/dist/tooltip-FvWL16Xn.cjs.map +1 -0
- package/dist/traces-data-list-B3q_cy6c.cjs +97 -0
- package/dist/traces-data-list-B3q_cy6c.cjs.map +1 -0
- package/dist/traces-data-list-CDNE9P8W.js +95 -0
- package/dist/traces-data-list-CDNE9P8W.js.map +1 -0
- package/dist/use-text-highlight.css +1 -1
- package/dist/utils/cn.cjs.js +1 -1
- package/dist/utils/cn.es.js +1 -1
- package/dist/utils/duration.cjs.js +22 -0
- package/dist/utils/duration.cjs.js.map +1 -0
- package/dist/utils/duration.d.ts +2 -0
- package/dist/utils/duration.es.js +18 -0
- package/dist/utils/duration.es.js.map +1 -0
- package/dist/utils/toast.cjs.js +1 -1
- package/dist/utils/toast.es.js +1 -1
- package/package.json +19 -10
- package/theme/colors.css +155 -0
- package/theme/data-viz.css +59 -0
- package/theme/motion.css +38 -0
- package/theme/scale.css +42 -0
- package/theme/status.css +96 -0
- package/theme/surfaces.css +201 -0
- package/theme/typography.css +74 -0
- package/theme.css +53 -571
- package/dist/Badge-BCwBpIc7.js +0 -123
- package/dist/Badge-BCwBpIc7.js.map +0 -1
- package/dist/Badge-RWi6V_JT.cjs +0 -125
- package/dist/Badge-RWi6V_JT.cjs.map +0 -1
- package/dist/Button-C2dx_QZN.cjs +0 -207
- package/dist/Button-C2dx_QZN.cjs.map +0 -1
- package/dist/Button-DS6O6fvU.js +0 -203
- package/dist/Button-DS6O6fvU.js.map +0 -1
- package/dist/Card-CnxuKKaz.js +0 -96
- package/dist/Card-CnxuKKaz.js.map +0 -1
- package/dist/Card-DC9rlxXj.cjs +0 -123
- package/dist/Card-DC9rlxXj.cjs.map +0 -1
- package/dist/EmptyState-CDM5htkF.js +0 -31
- package/dist/EmptyState-CDM5htkF.js.map +0 -1
- package/dist/EmptyState-_TZefNk_.cjs +0 -33
- package/dist/EmptyState-_TZefNk_.cjs.map +0 -1
- package/dist/ErrorState-DvsG3RMz.cjs +0 -16
- package/dist/ErrorState-DvsG3RMz.cjs.map +0 -1
- package/dist/ErrorState-t59EAa55.js +0 -14
- package/dist/ErrorState-t59EAa55.js.map +0 -1
- package/dist/Notice-Cq7m_mxe.cjs +0 -91
- package/dist/Notice-Cq7m_mxe.cjs.map +0 -1
- package/dist/Notice-DEqr19sI.js +0 -89
- package/dist/Notice-DEqr19sI.js.map +0 -1
- package/dist/PermissionDenied-BCHmzPYk.cjs +0 -24
- package/dist/PermissionDenied-BCHmzPYk.cjs.map +0 -1
- package/dist/PermissionDenied-lLDk9Zpw.js +0 -22
- package/dist/PermissionDenied-lLDk9Zpw.js.map +0 -1
- package/dist/SessionExpired-B4qMlVNC.cjs +0 -47
- package/dist/SessionExpired-B4qMlVNC.cjs.map +0 -1
- package/dist/SessionExpired-OS-dhsdb.js +0 -45
- package/dist/SessionExpired-OS-dhsdb.js.map +0 -1
- package/dist/Txt-C7rZCmrg.cjs +0 -30
- package/dist/Txt-C7rZCmrg.cjs.map +0 -1
- package/dist/Txt-hyo2FKuO.js +0 -28
- package/dist/Txt-hyo2FKuO.js.map +0 -1
- package/dist/activity-1GW2mu-d.cjs +0 -52
- package/dist/activity-1GW2mu-d.cjs.map +0 -1
- package/dist/activity-BiQKEDt0.js +0 -49
- package/dist/activity-BiQKEDt0.js.map +0 -1
- package/dist/arrival-CormfVRZ.cjs +0 -22
- package/dist/arrival-CormfVRZ.cjs.map +0 -1
- package/dist/arrival-DPVjCnNy.js +0 -19
- package/dist/arrival-DPVjCnNy.js.map +0 -1
- package/dist/ask-user-DCWLWOBI.js +0 -137
- package/dist/ask-user-DCWLWOBI.js.map +0 -1
- package/dist/ask-user-Dw64_A-5.cjs +0 -146
- package/dist/ask-user-Dw64_A-5.cjs.map +0 -1
- package/dist/buttons-group-t7AODlO9.js +0 -162
- package/dist/buttons-group-t7AODlO9.js.map +0 -1
- package/dist/buttons-group-yLVV4nzz.cjs +0 -186
- package/dist/buttons-group-yLVV4nzz.cjs.map +0 -1
- package/dist/chat-notification-DMwUG6M1.cjs +0 -111
- package/dist/chat-notification-DMwUG6M1.cjs.map +0 -1
- package/dist/chat-notification-DyBAfleZ.js +0 -107
- package/dist/chat-notification-DyBAfleZ.js.map +0 -1
- package/dist/chat-signal-D-8_rCn0.cjs +0 -42
- package/dist/chat-signal-D-8_rCn0.cjs.map +0 -1
- package/dist/chat-signal-JGIN9unj.js +0 -40
- package/dist/chat-signal-JGIN9unj.js.map +0 -1
- package/dist/checkbox-BHOqsV3k.js +0 -89
- package/dist/checkbox-BHOqsV3k.js.map +0 -1
- package/dist/checkbox-DXapLh4O.cjs +0 -110
- package/dist/checkbox-DXapLh4O.cjs.map +0 -1
- package/dist/cn-BuHW7Wrt.cjs +0 -3294
- package/dist/cn-BuHW7Wrt.cjs.map +0 -1
- package/dist/cn-C6s2yXwM.js +0 -3291
- package/dist/cn-C6s2yXwM.js.map +0 -1
- package/dist/code-block-BBG-Zv3I.js +0 -86
- package/dist/code-block-BBG-Zv3I.js.map +0 -1
- package/dist/code-block-DgK__blB.cjs +0 -88
- package/dist/code-block-DgK__blB.cjs.map +0 -1
- package/dist/code-diff-CRzg0c6L.js +0 -142
- package/dist/code-diff-CRzg0c6L.js.map +0 -1
- package/dist/code-diff-pMNj9cR8.cjs +0 -144
- package/dist/code-diff-pMNj9cR8.cjs.map +0 -1
- package/dist/code-editor-CQqV40K3.js +0 -478
- package/dist/code-editor-CQqV40K3.js.map +0 -1
- package/dist/code-editor-e1JSppW0.cjs +0 -486
- package/dist/code-editor-e1JSppW0.cjs.map +0 -1
- package/dist/collapsible-C2RuZzc7.js +0 -57
- package/dist/collapsible-C2RuZzc7.js.map +0 -1
- package/dist/collapsible-C3x1n6sF.cjs +0 -61
- package/dist/collapsible-C3x1n6sF.cjs.map +0 -1
- package/dist/combobox-CQ2Ri2LC.js +0 -175
- package/dist/combobox-CQ2Ri2LC.js.map +0 -1
- package/dist/combobox-F3WprWVx.cjs +0 -196
- package/dist/combobox-F3WprWVx.cjs.map +0 -1
- package/dist/combobox-styles-1C3D0JLL.cjs +0 -98
- package/dist/combobox-styles-1C3D0JLL.cjs.map +0 -1
- package/dist/combobox-styles-BMerfYPX.js +0 -94
- package/dist/combobox-styles-BMerfYPX.js.map +0 -1
- package/dist/command-CuuMEoIB.cjs +0 -211
- package/dist/command-CuuMEoIB.cjs.map +0 -1
- package/dist/command-rJ4b4Z2h.js +0 -182
- package/dist/command-rJ4b4Z2h.js.map +0 -1
- package/dist/components/DashboardCard.cjs.js +0 -10
- package/dist/components/DashboardCard.cjs.js.map +0 -1
- package/dist/components/DashboardCard.d.ts +0 -2
- package/dist/components/DashboardCard.es.js +0 -2
- package/dist/components/DashboardCard.es.js.map +0 -1
- package/dist/composer-C6kIcVEJ.cjs +0 -156
- package/dist/composer-C6kIcVEJ.cjs.map +0 -1
- package/dist/composer-Dz769593.js +0 -148
- package/dist/composer-Dz769593.js.map +0 -1
- package/dist/copy-button-CmQxxSUq.cjs +0 -38
- package/dist/copy-button-CmQxxSUq.cjs.map +0 -1
- package/dist/copy-button-DIeDskPU.js +0 -36
- package/dist/copy-button-DIeDskPU.js.map +0 -1
- package/dist/dashboard-card-B4VOm5Js.cjs +0 -11
- package/dist/dashboard-card-B4VOm5Js.cjs.map +0 -1
- package/dist/dashboard-card-quQYRrRH.js +0 -9
- package/dist/dashboard-card-quQYRrRH.js.map +0 -1
- package/dist/data-code-section-BHQOAbuZ.js +0 -348
- package/dist/data-code-section-BHQOAbuZ.js.map +0 -1
- package/dist/data-code-section-Dsn6ZqE0.cjs +0 -350
- package/dist/data-code-section-Dsn6ZqE0.cjs.map +0 -1
- package/dist/data-keys-and-values-BxSKCdWQ.js +0 -122
- package/dist/data-keys-and-values-BxSKCdWQ.js.map +0 -1
- package/dist/data-keys-and-values-CPUfobZS.cjs +0 -124
- package/dist/data-keys-and-values-CPUfobZS.cjs.map +0 -1
- package/dist/data-list-B9td5YXY.cjs +0 -184
- package/dist/data-list-B9td5YXY.cjs.map +0 -1
- package/dist/data-list-IQ0BjiGx.js +0 -180
- package/dist/data-list-IQ0BjiGx.js.map +0 -1
- package/dist/data-list-skeleton-CFaGBKDb.cjs +0 -38
- package/dist/data-list-skeleton-CFaGBKDb.cjs.map +0 -1
- package/dist/data-list-skeleton-CQQydcpj.js +0 -36
- package/dist/data-list-skeleton-CQQydcpj.js.map +0 -1
- package/dist/data-list-spacer-DWoUNPpA.js +0 -138
- package/dist/data-list-spacer-DWoUNPpA.js.map +0 -1
- package/dist/data-list-spacer-psBnZOCX.cjs +0 -146
- package/dist/data-list-spacer-psBnZOCX.cjs.map +0 -1
- package/dist/data-list-top-CkwvYUWw.cjs +0 -375
- package/dist/data-list-top-CkwvYUWw.cjs.map +0 -1
- package/dist/data-list-top-DbUnE1J9.js +0 -350
- package/dist/data-list-top-DbUnE1J9.js.map +0 -1
- package/dist/data-panel-BhJ8Lp_j.cjs +0 -269
- package/dist/data-panel-BhJ8Lp_j.cjs.map +0 -1
- package/dist/data-panel-D2JtbyKg.js +0 -249
- package/dist/data-panel-D2JtbyKg.js.map +0 -1
- package/dist/data-panel-section-heading-BoMxMKSA.cjs +0 -23
- package/dist/data-panel-section-heading-BoMxMKSA.cjs.map +0 -1
- package/dist/data-panel-section-heading-UzIDRnta.js +0 -21
- package/dist/data-panel-section-heading-UzIDRnta.js.map +0 -1
- package/dist/date-picker-DiZ0FOvY.cjs +0 -48
- package/dist/date-picker-DiZ0FOvY.cjs.map +0 -1
- package/dist/date-picker-jDmdtRTR.js +0 -46
- package/dist/date-picker-jDmdtRTR.js.map +0 -1
- package/dist/date-time-range-picker-BotnQ9HS.js +0 -164
- package/dist/date-time-range-picker-BotnQ9HS.js.map +0 -1
- package/dist/date-time-range-picker-eyfOf4v-.cjs +0 -166
- package/dist/date-time-range-picker-eyfOf4v-.cjs.map +0 -1
- package/dist/dialog-B3DNnoZ3.cjs +0 -276
- package/dist/dialog-B3DNnoZ3.cjs.map +0 -1
- package/dist/dialog-C60a4DWO.js +0 -242
- package/dist/dialog-C60a4DWO.js.map +0 -1
- package/dist/drawer-CEufBgtb.cjs +0 -367
- package/dist/drawer-CEufBgtb.cjs.map +0 -1
- package/dist/drawer-DgGxK4oq.js +0 -327
- package/dist/drawer-DgGxK4oq.js.map +0 -1
- package/dist/dropdown-menu-B3nTlFnz.js +0 -222
- package/dist/dropdown-menu-B3nTlFnz.js.map +0 -1
- package/dist/dropdown-menu-DfX8T0jb.cjs +0 -243
- package/dist/dropdown-menu-DfX8T0jb.cjs.map +0 -1
- package/dist/field-block-An2PO2_X.cjs +0 -93
- package/dist/field-block-An2PO2_X.cjs.map +0 -1
- package/dist/field-block-CQkD13nw.js +0 -91
- package/dist/field-block-CQkD13nw.js.map +0 -1
- package/dist/filter-bar-chip-BR7Xnpeo.cjs +0 -868
- package/dist/filter-bar-chip-BR7Xnpeo.cjs.map +0 -1
- package/dist/filter-bar-chip-DyITaBNj.js +0 -853
- package/dist/filter-bar-chip-DyITaBNj.js.map +0 -1
- package/dist/fonts-BD38FYaQ.js +0 -51
- package/dist/fonts-BD38FYaQ.js.map +0 -1
- package/dist/fonts-DxgDxyKF.cjs +0 -56
- package/dist/fonts-DxgDxyKF.cjs.map +0 -1
- package/dist/horizontal-bars-D1992rbt.cjs +0 -141
- package/dist/horizontal-bars-D1992rbt.cjs.map +0 -1
- package/dist/horizontal-bars-lhqUch51.js +0 -139
- package/dist/horizontal-bars-lhqUch51.js.map +0 -1
- package/dist/hover-card-BSj1EgQs.cjs +0 -91
- package/dist/hover-card-BSj1EgQs.cjs.map +0 -1
- package/dist/hover-card-Cmh0QRP8.js +0 -68
- package/dist/hover-card-Cmh0QRP8.js.map +0 -1
- package/dist/index-Cp3ZQQze.js +0 -45
- package/dist/index-Cp3ZQQze.js.map +0 -1
- package/dist/index-gbqoNdVM.cjs +0 -47
- package/dist/index-gbqoNdVM.cjs.map +0 -1
- package/dist/input-XEcMP_LL.cjs +0 -99
- package/dist/input-XEcMP_LL.cjs.map +0 -1
- package/dist/input-group-D_1g2L_v.cjs +0 -243
- package/dist/input-group-D_1g2L_v.cjs.map +0 -1
- package/dist/input-group-rn0r72y5.js +0 -217
- package/dist/input-group-rn0r72y5.js.map +0 -1
- package/dist/input-kU7nI6V5.js +0 -78
- package/dist/input-kU7nI6V5.js.map +0 -1
- package/dist/kbd-DjjBBIZN.cjs +0 -34
- package/dist/kbd-DjjBBIZN.cjs.map +0 -1
- package/dist/kbd-H5Qu573u.js +0 -32
- package/dist/kbd-H5Qu573u.js.map +0 -1
- package/dist/label-DxQoIwES.cjs +0 -34
- package/dist/label-DxQoIwES.cjs.map +0 -1
- package/dist/label-NULyP-1Q.js +0 -13
- package/dist/label-NULyP-1Q.js.map +0 -1
- package/dist/list-search-Cg5Y90E8.js +0 -71
- package/dist/list-search-Cg5Y90E8.js.map +0 -1
- package/dist/list-search-DISXdbOP.cjs +0 -73
- package/dist/list-search-DISXdbOP.cjs.map +0 -1
- package/dist/logs-data-list-B1FY1A2A.cjs +0 -82
- package/dist/logs-data-list-B1FY1A2A.cjs.map +0 -1
- package/dist/logs-data-list-DZz_YVd2.js +0 -80
- package/dist/logs-data-list-DZz_YVd2.js.map +0 -1
- package/dist/main-sidebar-link-active-Bzw7LY7r.cjs +0 -787
- package/dist/main-sidebar-link-active-Bzw7LY7r.cjs.map +0 -1
- package/dist/main-sidebar-link-active-D1iR9bHo.js +0 -770
- package/dist/main-sidebar-link-active-D1iR9bHo.js.map +0 -1
- package/dist/markdown-renderer-CUQHtRlL.cjs +0 -410
- package/dist/markdown-renderer-CUQHtRlL.cjs.map +0 -1
- package/dist/markdown-renderer-SVeQ5Uo_.js +0 -408
- package/dist/markdown-renderer-SVeQ5Uo_.js.map +0 -1
- package/dist/message-B-28p4Zs.cjs +0 -66
- package/dist/message-B-28p4Zs.cjs.map +0 -1
- package/dist/message-DGZPjxsh.js +0 -62
- package/dist/message-DGZPjxsh.js.map +0 -1
- package/dist/message-scroller-SYgTcpaD.cjs +0 -857
- package/dist/message-scroller-SYgTcpaD.cjs.map +0 -1
- package/dist/message-scroller-ViAipPK4.js +0 -831
- package/dist/message-scroller-ViAipPK4.js.map +0 -1
- package/dist/metrics-card-CM9jj-UN.cjs +0 -95
- package/dist/metrics-card-CM9jj-UN.cjs.map +0 -1
- package/dist/metrics-card-ClpFsCSt.js +0 -93
- package/dist/metrics-card-ClpFsCSt.js.map +0 -1
- package/dist/metrics-kpi-card-CoVZRI52.cjs +0 -79
- package/dist/metrics-kpi-card-CoVZRI52.cjs.map +0 -1
- package/dist/metrics-kpi-card-D-ct3JAY.js +0 -77
- package/dist/metrics-kpi-card-D-ct3JAY.js.map +0 -1
- package/dist/metrics-line-chart-DPcqXCDT.cjs +0 -114
- package/dist/metrics-line-chart-DPcqXCDT.cjs.map +0 -1
- package/dist/metrics-line-chart-M3JTf2J8.js +0 -111
- package/dist/metrics-line-chart-M3JTf2J8.js.map +0 -1
- package/dist/new-theme.css +0 -39
- package/dist/no-data-page-layout-COzOm-mS.js +0 -9
- package/dist/no-data-page-layout-COzOm-mS.js.map +0 -1
- package/dist/no-data-page-layout-yCjhZq99.cjs +0 -11
- package/dist/no-data-page-layout-yCjhZq99.cjs.map +0 -1
- package/dist/page-header-DyAd0Uof.cjs +0 -125
- package/dist/page-header-DyAd0Uof.cjs.map +0 -1
- package/dist/page-header-DymTqQgq.js +0 -123
- package/dist/page-header-DymTqQgq.js.map +0 -1
- package/dist/page-layout-B_JUSRkD.js +0 -97
- package/dist/page-layout-B_JUSRkD.js.map +0 -1
- package/dist/page-layout-DXFMbJi3.cjs +0 -99
- package/dist/page-layout-DXFMbJi3.cjs.map +0 -1
- package/dist/popover-CGB4qBAn.cjs +0 -121
- package/dist/popover-CGB4qBAn.cjs.map +0 -1
- package/dist/popover-lj-OpKKH.js +0 -97
- package/dist/popover-lj-OpKKH.js.map +0 -1
- package/dist/property-filter-applied-CZu-Jwsx.js +0 -344
- package/dist/property-filter-applied-CZu-Jwsx.js.map +0 -1
- package/dist/property-filter-applied-DZz8aSoU.cjs +0 -348
- package/dist/property-filter-applied-DZz8aSoU.cjs.map +0 -1
- package/dist/sankey-chart-GiDY0WBV.js +0 -916
- package/dist/sankey-chart-GiDY0WBV.js.map +0 -1
- package/dist/sankey-chart-QibH6Vg1.cjs +0 -926
- package/dist/sankey-chart-QibH6Vg1.cjs.map +0 -1
- package/dist/scroll-area-ByrWkkO_.js +0 -223
- package/dist/scroll-area-ByrWkkO_.js.map +0 -1
- package/dist/scroll-area-l6Yx-88I.cjs +0 -245
- package/dist/scroll-area-l6Yx-88I.cjs.map +0 -1
- package/dist/search-field-block-jfMFV7AD.cjs +0 -125
- package/dist/search-field-block-jfMFV7AD.cjs.map +0 -1
- package/dist/search-field-block-zF_99MJ5.js +0 -123
- package/dist/search-field-block-zF_99MJ5.js.map +0 -1
- package/dist/section-DOZSptHn.cjs +0 -115
- package/dist/section-DOZSptHn.cjs.map +0 -1
- package/dist/section-fFFmNxVc.js +0 -111
- package/dist/section-fFFmNxVc.js.map +0 -1
- package/dist/select-31jx2l9F.cjs +0 -164
- package/dist/select-31jx2l9F.cjs.map +0 -1
- package/dist/select-bphXR9c4.js +0 -138
- package/dist/select-bphXR9c4.js.map +0 -1
- package/dist/select-field-block-BAZKc6ck.cjs +0 -59
- package/dist/select-field-block-BAZKc6ck.cjs.map +0 -1
- package/dist/select-field-block-BEs3cCRJ.js +0 -57
- package/dist/select-field-block-BEs3cCRJ.js.map +0 -1
- package/dist/settings-container-B5YhEzjS.js +0 -27
- package/dist/settings-container-B5YhEzjS.js.map +0 -1
- package/dist/settings-container-Dxb59YvM.cjs +0 -30
- package/dist/settings-container-Dxb59YvM.cjs.map +0 -1
- package/dist/settings-layout-CTnDZ_fr.js +0 -55
- package/dist/settings-layout-CTnDZ_fr.js.map +0 -1
- package/dist/settings-layout-DRrl-EBq.cjs +0 -57
- package/dist/settings-layout-DRrl-EBq.cjs.map +0 -1
- package/dist/settings-row-Dsu9uRdl.cjs +0 -88
- package/dist/settings-row-Dsu9uRdl.cjs.map +0 -1
- package/dist/settings-row-PB5zne3m.js +0 -85
- package/dist/settings-row-PB5zne3m.js.map +0 -1
- package/dist/shimmer-CmCazK2A.cjs +0 -25
- package/dist/shimmer-CmCazK2A.cjs.map +0 -1
- package/dist/shimmer-rej-NkeN.js +0 -23
- package/dist/shimmer-rej-NkeN.js.map +0 -1
- package/dist/skeleton-BpMg6F4M.js +0 -23
- package/dist/skeleton-BpMg6F4M.js.map +0 -1
- package/dist/skeleton-gdUQjWPU.cjs +0 -25
- package/dist/skeleton-gdUQjWPU.cjs.map +0 -1
- package/dist/slider-DXQNsGXe.js +0 -95
- package/dist/slider-DXQNsGXe.js.map +0 -1
- package/dist/slider-Kco52AqT.cjs +0 -97
- package/dist/slider-Kco52AqT.cjs.map +0 -1
- package/dist/spacings-C8KU7k6E.cjs +0 -182
- package/dist/spacings-C8KU7k6E.cjs.map +0 -1
- package/dist/spacings-Doib6y6Q.js +0 -174
- package/dist/spacings-Doib6y6Q.js.map +0 -1
- package/dist/span-payload-primitives-DknOcv6v.cjs +0 -75
- package/dist/span-payload-primitives-DknOcv6v.cjs.map +0 -1
- package/dist/span-payload-primitives-_TUMqise.js +0 -68
- package/dist/span-payload-primitives-_TUMqise.js.map +0 -1
- package/dist/spinner-SvnJqdcS.js +0 -51
- package/dist/spinner-SvnJqdcS.js.map +0 -1
- package/dist/spinner-cX-ypfV2.cjs +0 -53
- package/dist/spinner-cX-ypfV2.cjs.map +0 -1
- package/dist/src/ds/components/DashboardCard/dashboard-card.d.ts +0 -6
- package/dist/src/ds/components/DashboardCard/dashboard-card.stories.d.ts +0 -9
- package/dist/src/ds/components/DashboardCard/index.d.ts +0 -1
- package/dist/src/ds/components/FilterBar/filter-bar-draft-chip.d.ts +0 -11
- package/dist/src/ds/components/PageHeader/page-header-description.d.ts +0 -5
- package/dist/src/ds/components/PageHeader/page-header-root.d.ts +0 -22
- package/dist/src/ds/components/PageHeader/page-header-title.d.ts +0 -6
- package/dist/src/ds/components/PageHeader/page-header.d.ts +0 -2
- package/dist/src/ds/tokens/spacings.d.ts +0 -38
- package/dist/src/ds/tokens/tokens.stories.d.ts +0 -12
- package/dist/switch-CkEdGkeB.cjs +0 -125
- package/dist/switch-CkEdGkeB.cjs.map +0 -1
- package/dist/switch-CkHq0TIf.js +0 -104
- package/dist/switch-CkHq0TIf.js.map +0 -1
- package/dist/tabs-content-CRKte85r.cjs +0 -37
- package/dist/tabs-content-CRKte85r.cjs.map +0 -1
- package/dist/tabs-content-Drm6Y6Ul.js +0 -35
- package/dist/tabs-content-Drm6Y6Ul.js.map +0 -1
- package/dist/tabs-root-DcnvZuD4.cjs +0 -328
- package/dist/tabs-root-DcnvZuD4.cjs.map +0 -1
- package/dist/tabs-root-yY2eNDS2.js +0 -325
- package/dist/tabs-root-yY2eNDS2.js.map +0 -1
- package/dist/tabs-tab-CgMaandp.js +0 -103
- package/dist/tabs-tab-CgMaandp.js.map +0 -1
- package/dist/tabs-tab-tRgFBx85.cjs +0 -107
- package/dist/tabs-tab-tRgFBx85.cjs.map +0 -1
- package/dist/text-field-block-aRttm8yP.js +0 -55
- package/dist/text-field-block-aRttm8yP.js.map +0 -1
- package/dist/text-field-block-hN70Jj6a.cjs +0 -57
- package/dist/text-field-block-hN70Jj6a.cjs.map +0 -1
- package/dist/textarea-BmR73nqC.js +0 -70
- package/dist/textarea-BmR73nqC.js.map +0 -1
- package/dist/textarea-C7vLvn3E.cjs +0 -91
- package/dist/textarea-C7vLvn3E.cjs.map +0 -1
- package/dist/thread-rail-BvhuZLav.cjs +0 -334
- package/dist/thread-rail-BvhuZLav.cjs.map +0 -1
- package/dist/thread-rail-CPAHjoV1.js +0 -313
- package/dist/thread-rail-CPAHjoV1.js.map +0 -1
- package/dist/time-picker-BlY3xqrQ.cjs +0 -78
- package/dist/time-picker-BlY3xqrQ.cjs.map +0 -1
- package/dist/time-picker-Dce_kGwY.js +0 -76
- package/dist/time-picker-Dce_kGwY.js.map +0 -1
- package/dist/toast-CTMSqE4M.js +0 -52
- package/dist/toast-CTMSqE4M.js.map +0 -1
- package/dist/toast-CwH7p9gV.cjs +0 -55
- package/dist/toast-CwH7p9gV.cjs.map +0 -1
- package/dist/tool-approval-BMPAEwt_.js +0 -66
- package/dist/tool-approval-BMPAEwt_.js.map +0 -1
- package/dist/tool-approval-CYO2CYZz.cjs +0 -69
- package/dist/tool-approval-CYO2CYZz.cjs.map +0 -1
- package/dist/tool-call-98H2-r5p.js +0 -181
- package/dist/tool-call-98H2-r5p.js.map +0 -1
- package/dist/tool-call-CAzilpXy.cjs +0 -196
- package/dist/tool-call-CAzilpXy.cjs.map +0 -1
- package/dist/tooltip-QuS0KEbc.js +0 -113
- package/dist/tooltip-QuS0KEbc.js.map +0 -1
- package/dist/tooltip-_cda-a7s.cjs +0 -137
- package/dist/tooltip-_cda-a7s.cjs.map +0 -1
- package/dist/traces-data-list-Bl1BUIiq.js +0 -85
- package/dist/traces-data-list-Bl1BUIiq.js.map +0 -1
- package/dist/traces-data-list-CmBQDfnG.cjs +0 -87
- package/dist/traces-data-list-CmBQDfnG.cjs.map +0 -1
- package/new-theme.css +0 -39
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traces-page-skeleton.cjs.js","sources":["../../../../src/domains/traces/components/traces-page-skeleton.tsx"],"sourcesContent":["import { buildTraceListColumns, DEFAULT_TRACE_COLUMN_PREFERENCES } from '../trace-list-columns';\nimport type { TraceColumnPreferences } from '../trace-list-columns';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { Skeleton } from '@/ds/components/Skeleton';\n\nexport type TracesPageSkeletonProps = {\n columnPreferences?: TraceColumnPreferences;\n};\n\n/**\n * Page-level placeholder shown while filter-field discovery is pending: a toolbar-height\n * bar stands in for the FilterBar and the usual list skeleton for the trace rows.\n */\nexport function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES }: TracesPageSkeletonProps) {\n const columns = buildTraceListColumns(columnPreferences);\n return (\n <div\n className=\"flex h-full min-h-0 flex-col gap-2\"\n role=\"status\"\n aria-label=\"Loading traces\"\n data-testid=\"traces-page-skeleton\"\n >\n <div className=\"flex items-center gap-2\">\n <Skeleton className=\"h-
|
|
1
|
+
{"version":3,"file":"traces-page-skeleton.cjs.js","sources":["../../../../src/domains/traces/components/traces-page-skeleton.tsx"],"sourcesContent":["import { buildTraceListColumns, DEFAULT_TRACE_COLUMN_PREFERENCES } from '../trace-list-columns';\nimport type { TraceColumnPreferences } from '../trace-list-columns';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { Skeleton } from '@/ds/components/Skeleton';\n\nexport type TracesPageSkeletonProps = {\n columnPreferences?: TraceColumnPreferences;\n};\n\n/**\n * Page-level placeholder shown while filter-field discovery is pending: a toolbar-height\n * bar stands in for the FilterBar and the usual list skeleton for the trace rows.\n */\nexport function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES }: TracesPageSkeletonProps) {\n const columns = buildTraceListColumns(columnPreferences);\n return (\n <div\n className=\"flex h-full min-h-0 flex-col gap-2\"\n role=\"status\"\n aria-label=\"Loading traces\"\n data-testid=\"traces-page-skeleton\"\n >\n <div className=\"flex items-center gap-2\">\n <Skeleton className=\"h-control-md min-w-64 flex-1\" />\n <Skeleton className=\"h-control-md w-28\" />\n </div>\n <DataListSkeleton columns={columns} fit=\"container\" />\n </div>\n );\n}\n"],"names":["DEFAULT_TRACE_COLUMN_PREFERENCES","buildTraceListColumns","jsxs","jsx","Skeleton","DataListSkeleton"],"mappings":";;;;;;;;;AAaO,SAAS,kBAAA,CAAmB,EAAE,iBAAA,GAAoBA,gEAAA,EAAiC,EAA4B;AACpH,EAAA,MAAM,OAAA,GAAUC,sDAAsB,iBAAiB,CAAA;AACvD,EAAA,uBACEC,eAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAU,oCAAA;AAAA,MACV,IAAA,EAAK,QAAA;AAAA,MACL,YAAA,EAAW,gBAAA;AAAA,MACX,aAAA,EAAY,sBAAA;AAAA,MAEZ,QAAA,EAAA;AAAA,wBAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,0BAAAC,cAAA,CAACC,iBAAA,EAAA,EAAS,WAAU,8BAAA,EAA+B,CAAA;AAAA,0BACnDD,cAAA,CAACC,iBAAA,EAAA,EAAS,SAAA,EAAU,mBAAA,EAAoB;AAAA,SAAA,EAC1C,CAAA;AAAA,wBACAD,cAAA,CAACE,iCAAA,EAAA,EAAiB,OAAA,EAAkB,GAAA,EAAI,WAAA,EAAY;AAAA;AAAA;AAAA,GACtD;AAEJ;;;;"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { buildTraceListColumns, DEFAULT_TRACE_COLUMN_PREFERENCES } from '../trace-list-columns.es.js';
|
|
3
|
-
import { D as DataListSkeleton } from '../../../data-list-skeleton-
|
|
4
|
-
import '
|
|
5
|
-
import '../../../keyboard/keyboard-shortcuts-context.es.js';
|
|
6
|
-
import { S as Skeleton } from '../../../skeleton-BpMg6F4M.js';
|
|
3
|
+
import { D as DataListSkeleton } from '../../../data-list-skeleton-D7-glFuk.js';
|
|
4
|
+
import { S as Skeleton } from '../../../skeleton-BsRAXyh5.js';
|
|
7
5
|
|
|
8
6
|
function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES }) {
|
|
9
7
|
const columns = buildTraceListColumns(columnPreferences);
|
|
@@ -16,8 +14,8 @@ function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENC
|
|
|
16
14
|
"data-testid": "traces-page-skeleton",
|
|
17
15
|
children: [
|
|
18
16
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
19
|
-
/* @__PURE__ */ jsx(Skeleton, { className: "h-
|
|
20
|
-
/* @__PURE__ */ jsx(Skeleton, { className: "h-
|
|
17
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-control-md min-w-64 flex-1" }),
|
|
18
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-control-md w-28" })
|
|
21
19
|
] }),
|
|
22
20
|
/* @__PURE__ */ jsx(DataListSkeleton, { columns, fit: "container" })
|
|
23
21
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traces-page-skeleton.es.js","sources":["../../../../src/domains/traces/components/traces-page-skeleton.tsx"],"sourcesContent":["import { buildTraceListColumns, DEFAULT_TRACE_COLUMN_PREFERENCES } from '../trace-list-columns';\nimport type { TraceColumnPreferences } from '../trace-list-columns';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { Skeleton } from '@/ds/components/Skeleton';\n\nexport type TracesPageSkeletonProps = {\n columnPreferences?: TraceColumnPreferences;\n};\n\n/**\n * Page-level placeholder shown while filter-field discovery is pending: a toolbar-height\n * bar stands in for the FilterBar and the usual list skeleton for the trace rows.\n */\nexport function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES }: TracesPageSkeletonProps) {\n const columns = buildTraceListColumns(columnPreferences);\n return (\n <div\n className=\"flex h-full min-h-0 flex-col gap-2\"\n role=\"status\"\n aria-label=\"Loading traces\"\n data-testid=\"traces-page-skeleton\"\n >\n <div className=\"flex items-center gap-2\">\n <Skeleton className=\"h-
|
|
1
|
+
{"version":3,"file":"traces-page-skeleton.es.js","sources":["../../../../src/domains/traces/components/traces-page-skeleton.tsx"],"sourcesContent":["import { buildTraceListColumns, DEFAULT_TRACE_COLUMN_PREFERENCES } from '../trace-list-columns';\nimport type { TraceColumnPreferences } from '../trace-list-columns';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { Skeleton } from '@/ds/components/Skeleton';\n\nexport type TracesPageSkeletonProps = {\n columnPreferences?: TraceColumnPreferences;\n};\n\n/**\n * Page-level placeholder shown while filter-field discovery is pending: a toolbar-height\n * bar stands in for the FilterBar and the usual list skeleton for the trace rows.\n */\nexport function TracesPageSkeleton({ columnPreferences = DEFAULT_TRACE_COLUMN_PREFERENCES }: TracesPageSkeletonProps) {\n const columns = buildTraceListColumns(columnPreferences);\n return (\n <div\n className=\"flex h-full min-h-0 flex-col gap-2\"\n role=\"status\"\n aria-label=\"Loading traces\"\n data-testid=\"traces-page-skeleton\"\n >\n <div className=\"flex items-center gap-2\">\n <Skeleton className=\"h-control-md min-w-64 flex-1\" />\n <Skeleton className=\"h-control-md w-28\" />\n </div>\n <DataListSkeleton columns={columns} fit=\"container\" />\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;AAaO,SAAS,kBAAA,CAAmB,EAAE,iBAAA,GAAoB,gCAAA,EAAiC,EAA4B;AACpH,EAAA,MAAM,OAAA,GAAU,sBAAsB,iBAAiB,CAAA;AACvD,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAU,oCAAA;AAAA,MACV,IAAA,EAAK,QAAA;AAAA,MACL,YAAA,EAAW,gBAAA;AAAA,MACX,aAAA,EAAY,sBAAA;AAAA,MAEZ,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,QAAA,EAAA,EAAS,WAAU,8BAAA,EAA+B,CAAA;AAAA,0BACnD,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,mBAAA,EAAoB;AAAA,SAAA,EAC1C,CAAA;AAAA,wBACA,GAAA,CAAC,gBAAA,EAAA,EAAiB,OAAA,EAAkB,GAAA,EAAI,WAAA,EAAY;AAAA;AAAA;AAAA,GACtD;AAEJ;;;;"}
|
|
@@ -6,7 +6,7 @@ const react = require('@mastra/react');
|
|
|
6
6
|
const reactQuery = require('@tanstack/react-query');
|
|
7
7
|
const React = require('react');
|
|
8
8
|
const domains_traces_hooks_useTraceSpans = require('./use-trace-spans.cjs.js');
|
|
9
|
-
const toast = require('../../../toast-
|
|
9
|
+
const toast = require('../../../toast-nm-fM7BR.cjs');
|
|
10
10
|
const downloadJson = require('../../../downloadJson-PWUDbzkB.cjs');
|
|
11
11
|
|
|
12
12
|
function useDownloadTraceJson() {
|
|
@@ -2,7 +2,7 @@ import { useMastraClient } from '@mastra/react';
|
|
|
2
2
|
import { useQueryClient } from '@tanstack/react-query';
|
|
3
3
|
import { useState } from 'react';
|
|
4
4
|
import { traceSpansQueryOptions } from './use-trace-spans.es.js';
|
|
5
|
-
import { t as toast } from '../../../toast-
|
|
5
|
+
import { t as toast } from '../../../toast-c5kCpyWt.js';
|
|
6
6
|
import { d as downloadJson } from '../../../downloadJson-DuPoMa_6.js';
|
|
7
7
|
|
|
8
8
|
function useDownloadTraceJson() {
|
|
@@ -66,10 +66,23 @@ function useTraceColumnPreferences() {
|
|
|
66
66
|
metadataKeys: current.metadataKeys.filter((metadataKey) => metadataKey !== key)
|
|
67
67
|
}));
|
|
68
68
|
};
|
|
69
|
+
const addCustomColumn = (field) => {
|
|
70
|
+
commit(
|
|
71
|
+
(current) => current.customColumns.includes(field) ? current : { ...current, customColumns: [...current.customColumns, field] }
|
|
72
|
+
);
|
|
73
|
+
};
|
|
74
|
+
const removeCustomColumn = (field) => {
|
|
75
|
+
commit((current) => ({
|
|
76
|
+
...current,
|
|
77
|
+
customColumns: current.customColumns.filter((customColumn) => customColumn !== field)
|
|
78
|
+
}));
|
|
79
|
+
};
|
|
69
80
|
const resetColumns = () => commit(() => domains_traces_traceListColumns.DEFAULT_TRACE_COLUMN_PREFERENCES);
|
|
70
81
|
return {
|
|
71
82
|
preferences,
|
|
72
83
|
toggleColumn,
|
|
84
|
+
addCustomColumn,
|
|
85
|
+
removeCustomColumn,
|
|
73
86
|
addMetadataColumn,
|
|
74
87
|
removeMetadataColumn,
|
|
75
88
|
resetColumns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-column-preferences.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-column-preferences.ts"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { useEffect, useState } from 'react';\nimport {\n DEFAULT_TRACE_COLUMN_PREFERENCES,\n parseTraceColumnPreferences,\n serializeTraceColumnPreferences,\n} from '../trace-list-columns';\nimport type { TraceColumnPreferences, TraceOptionalColumn } from '../trace-list-columns';\n\nfunction readPreferences(storageKey: string): TraceColumnPreferences {\n if (typeof window === 'undefined') return DEFAULT_TRACE_COLUMN_PREFERENCES;\n\n try {\n return parseTraceColumnPreferences(window.localStorage.getItem(storageKey) ?? undefined);\n } catch {\n return DEFAULT_TRACE_COLUMN_PREFERENCES;\n }\n}\n\nfunction writePreferences(storageKey: string, preferences: TraceColumnPreferences): void {\n if (typeof window === 'undefined') return;\n\n try {\n window.localStorage.setItem(storageKey, serializeTraceColumnPreferences(preferences));\n } catch {\n // Storage can be unavailable in private browsing or full. The in-memory\n // selection still works for the current visit.\n }\n}\n\nexport function useTraceColumnPreferences() {\n const client = useMastraClient();\n const projectUrl =\n client.options.baseUrl || (typeof window === 'undefined' ? 'local' : window.location.origin || 'local');\n const apiPrefix = client.options.apiPrefix ?? '/api';\n const storageKey = `mastra:traces:columns:${projectUrl}:${apiPrefix}`;\n const [state, setState] = useState(() => ({\n storageKey,\n preferences: readPreferences(storageKey),\n shouldPersist: false,\n }));\n const preferences = state.storageKey === storageKey ? state.preferences : readPreferences(storageKey);\n\n useEffect(() => {\n if (state.storageKey === storageKey && state.shouldPersist) {\n writePreferences(storageKey, state.preferences);\n }\n }, [state, storageKey]);\n\n const commit = (update: (current: TraceColumnPreferences) => TraceColumnPreferences) => {\n setState(current => {\n const currentPreferences = current.storageKey === storageKey ? current.preferences : readPreferences(storageKey);\n const nextPreferences = update(currentPreferences);\n return { storageKey, preferences: nextPreferences, shouldPersist: true };\n });\n };\n\n const toggleColumn = (column: TraceOptionalColumn) => {\n commit(current => {\n const isVisible = current.visibleColumns.includes(column);\n return {\n ...current,\n visibleColumns: isVisible\n ? current.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...current.visibleColumns, column],\n };\n });\n };\n\n const addMetadataColumn = (key: string) => {\n const normalizedKey = key.trim();\n if (!normalizedKey) return;\n commit(current =>\n current.metadataKeys.includes(normalizedKey)\n ? current\n : { ...current, metadataKeys: [...current.metadataKeys, normalizedKey] },\n );\n };\n\n const removeMetadataColumn = (key: string) => {\n commit(current => ({\n ...current,\n metadataKeys: current.metadataKeys.filter(metadataKey => metadataKey !== key),\n }));\n };\n\n const resetColumns = () => commit(() => DEFAULT_TRACE_COLUMN_PREFERENCES);\n\n return {\n preferences,\n toggleColumn,\n addMetadataColumn,\n removeMetadataColumn,\n resetColumns,\n };\n}\n"],"names":["DEFAULT_TRACE_COLUMN_PREFERENCES","parseTraceColumnPreferences","serializeTraceColumnPreferences","useMastraClient","useState","useEffect"],"mappings":";;;;;;;;AASA,SAAS,gBAAgB,UAAA,EAA4C;AACnE,EAAA,IAAI,OAAO,MAAA,KAAW,WAAA,EAAa,OAAOA,gEAAA;AAE1C,EAAA,IAAI;AACF,IAAA,OAAOC,4DAA4B,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAU,KAAK,KAAA,CAAS,CAAA;AAAA,EACzF,CAAA,CAAA,MAAQ;AACN,IAAA,OAAOD,gEAAA;AAAA,EACT;AACF;AAEA,SAAS,gBAAA,CAAiB,YAAoB,WAAA,EAA2C;AACvF,EAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AAEnC,EAAA,IAAI;AACF,IAAA,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAA,EAAYE,+DAAA,CAAgC,WAAW,CAAC,CAAA;AAAA,EACtF,CAAA,CAAA,MAAQ;AAAA,EAGR;AACF;AAEO,SAAS,yBAAA,GAA4B;AAC1C,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAC/B,EAAA,MAAM,UAAA,GACJ,MAAA,CAAO,OAAA,CAAQ,OAAA,KAAY,OAAO,WAAW,WAAA,GAAc,OAAA,GAAU,MAAA,CAAO,QAAA,CAAS,MAAA,IAAU,OAAA,CAAA;AACjG,EAAA,MAAM,SAAA,GAAY,MAAA,CAAO,OAAA,CAAQ,SAAA,IAAa,MAAA;AAC9C,EAAA,MAAM,UAAA,GAAa,CAAA,sBAAA,EAAyB,UAAU,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA;AACnE,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAIC,eAAS,OAAO;AAAA,IACxC,UAAA;AAAA,IACA,WAAA,EAAa,gBAAgB,UAAU,CAAA;AAAA,IACvC,aAAA,EAAe;AAAA,GACjB,CAAE,CAAA;AACF,EAAA,MAAM,cAAc,KAAA,CAAM,UAAA,KAAe,aAAa,KAAA,CAAM,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAEpG,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,KAAA,CAAM,UAAA,KAAe,UAAA,IAAc,KAAA,CAAM,aAAA,EAAe;AAC1D,MAAA,gBAAA,CAAiB,UAAA,EAAY,MAAM,WAAW,CAAA;AAAA,IAChD;AAAA,EACF,CAAA,EAAG,CAAC,KAAA,EAAO,UAAU,CAAC,CAAA;AAEtB,EAAA,MAAM,MAAA,GAAS,CAAC,MAAA,KAAwE;AACtF,IAAA,QAAA,CAAS,CAAA,OAAA,KAAW;AAClB,MAAA,MAAM,qBAAqB,OAAA,CAAQ,UAAA,KAAe,aAAa,OAAA,CAAQ,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAC/G,MAAA,MAAM,eAAA,GAAkB,OAAO,kBAAkB,CAAA;AACjD,MAAA,OAAO,EAAE,UAAA,EAAY,WAAA,EAAa,eAAA,EAAiB,eAAe,IAAA,EAAK;AAAA,IACzE,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,CAAC,MAAA,KAAgC;AACpD,IAAA,MAAA,CAAO,CAAA,OAAA,KAAW;AAChB,MAAA,MAAM,SAAA,GAAY,OAAA,CAAQ,cAAA,CAAe,QAAA,CAAS,MAAM,CAAA;AACxD,MAAA,OAAO;AAAA,QACL,GAAG,OAAA;AAAA,QACH,cAAA,EAAgB,SAAA,GACZ,OAAA,CAAQ,cAAA,CAAe,MAAA,CAAO,CAAA,aAAA,KAAiB,aAAA,KAAkB,MAAM,CAAA,GACvE,CAAC,GAAG,OAAA,CAAQ,gBAAgB,MAAM;AAAA,OACxC;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,iBAAA,GAAoB,CAAC,GAAA,KAAgB;AACzC,IAAA,MAAM,aAAA,GAAgB,IAAI,IAAA,EAAK;AAC/B,IAAA,IAAI,CAAC,aAAA,EAAe;AACpB,IAAA,MAAA;AAAA,MAAO,aACL,OAAA,CAAQ,YAAA,CAAa,QAAA,CAAS,aAAa,IACvC,OAAA,GACA,EAAE,GAAG,OAAA,EAAS,cAAc,CAAC,GAAG,OAAA,CAAQ,YAAA,EAAc,aAAa,CAAA;AAAE,KAC3E;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,oBAAA,GAAuB,CAAC,GAAA,KAAgB;AAC5C,IAAA,MAAA,CAAO,CAAA,OAAA,MAAY;AAAA,MACjB,GAAG,OAAA;AAAA,MACH,cAAc,OAAA,CAAQ,YAAA,CAAa,MAAA,CAAO,CAAA,WAAA,KAAe,gBAAgB,GAAG;AAAA,KAC9E,CAAE,CAAA;AAAA,EACJ,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,MAAM,MAAA,CAAO,MAAML,gEAAgC,CAAA;AAExE,EAAA,OAAO;AAAA,IACL,WAAA;AAAA,IACA,YAAA;AAAA,IACA,iBAAA;AAAA,IACA,oBAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
|
1
|
+
{"version":3,"file":"use-trace-column-preferences.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-column-preferences.ts"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { useEffect, useState } from 'react';\nimport {\n DEFAULT_TRACE_COLUMN_PREFERENCES,\n parseTraceColumnPreferences,\n serializeTraceColumnPreferences,\n} from '../trace-list-columns';\nimport type { TraceColumnPreferences, TraceCustomColumn, TraceOptionalColumn } from '../trace-list-columns';\n\nfunction readPreferences(storageKey: string): TraceColumnPreferences {\n if (typeof window === 'undefined') return DEFAULT_TRACE_COLUMN_PREFERENCES;\n\n try {\n return parseTraceColumnPreferences(window.localStorage.getItem(storageKey) ?? undefined);\n } catch {\n return DEFAULT_TRACE_COLUMN_PREFERENCES;\n }\n}\n\nfunction writePreferences(storageKey: string, preferences: TraceColumnPreferences): void {\n if (typeof window === 'undefined') return;\n\n try {\n window.localStorage.setItem(storageKey, serializeTraceColumnPreferences(preferences));\n } catch {\n // Storage can be unavailable in private browsing or full. The in-memory\n // selection still works for the current visit.\n }\n}\n\nexport function useTraceColumnPreferences() {\n const client = useMastraClient();\n const projectUrl =\n client.options.baseUrl || (typeof window === 'undefined' ? 'local' : window.location.origin || 'local');\n const apiPrefix = client.options.apiPrefix ?? '/api';\n const storageKey = `mastra:traces:columns:${projectUrl}:${apiPrefix}`;\n const [state, setState] = useState(() => ({\n storageKey,\n preferences: readPreferences(storageKey),\n shouldPersist: false,\n }));\n const preferences = state.storageKey === storageKey ? state.preferences : readPreferences(storageKey);\n\n useEffect(() => {\n if (state.storageKey === storageKey && state.shouldPersist) {\n writePreferences(storageKey, state.preferences);\n }\n }, [state, storageKey]);\n\n const commit = (update: (current: TraceColumnPreferences) => TraceColumnPreferences) => {\n setState(current => {\n const currentPreferences = current.storageKey === storageKey ? current.preferences : readPreferences(storageKey);\n const nextPreferences = update(currentPreferences);\n return { storageKey, preferences: nextPreferences, shouldPersist: true };\n });\n };\n\n const toggleColumn = (column: TraceOptionalColumn) => {\n commit(current => {\n const isVisible = current.visibleColumns.includes(column);\n return {\n ...current,\n visibleColumns: isVisible\n ? current.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...current.visibleColumns, column],\n };\n });\n };\n\n const addMetadataColumn = (key: string) => {\n const normalizedKey = key.trim();\n if (!normalizedKey) return;\n commit(current =>\n current.metadataKeys.includes(normalizedKey)\n ? current\n : { ...current, metadataKeys: [...current.metadataKeys, normalizedKey] },\n );\n };\n\n const removeMetadataColumn = (key: string) => {\n commit(current => ({\n ...current,\n metadataKeys: current.metadataKeys.filter(metadataKey => metadataKey !== key),\n }));\n };\n\n const addCustomColumn = (field: TraceCustomColumn) => {\n commit(current =>\n current.customColumns.includes(field)\n ? current\n : { ...current, customColumns: [...current.customColumns, field] },\n );\n };\n\n const removeCustomColumn = (field: TraceCustomColumn) => {\n commit(current => ({\n ...current,\n customColumns: current.customColumns.filter(customColumn => customColumn !== field),\n }));\n };\n\n const resetColumns = () => commit(() => DEFAULT_TRACE_COLUMN_PREFERENCES);\n\n return {\n preferences,\n toggleColumn,\n addCustomColumn,\n removeCustomColumn,\n addMetadataColumn,\n removeMetadataColumn,\n resetColumns,\n };\n}\n"],"names":["DEFAULT_TRACE_COLUMN_PREFERENCES","parseTraceColumnPreferences","serializeTraceColumnPreferences","useMastraClient","useState","useEffect"],"mappings":";;;;;;;;AASA,SAAS,gBAAgB,UAAA,EAA4C;AACnE,EAAA,IAAI,OAAO,MAAA,KAAW,WAAA,EAAa,OAAOA,gEAAA;AAE1C,EAAA,IAAI;AACF,IAAA,OAAOC,4DAA4B,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAU,KAAK,KAAA,CAAS,CAAA;AAAA,EACzF,CAAA,CAAA,MAAQ;AACN,IAAA,OAAOD,gEAAA;AAAA,EACT;AACF;AAEA,SAAS,gBAAA,CAAiB,YAAoB,WAAA,EAA2C;AACvF,EAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AAEnC,EAAA,IAAI;AACF,IAAA,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAA,EAAYE,+DAAA,CAAgC,WAAW,CAAC,CAAA;AAAA,EACtF,CAAA,CAAA,MAAQ;AAAA,EAGR;AACF;AAEO,SAAS,yBAAA,GAA4B;AAC1C,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAC/B,EAAA,MAAM,UAAA,GACJ,MAAA,CAAO,OAAA,CAAQ,OAAA,KAAY,OAAO,WAAW,WAAA,GAAc,OAAA,GAAU,MAAA,CAAO,QAAA,CAAS,MAAA,IAAU,OAAA,CAAA;AACjG,EAAA,MAAM,SAAA,GAAY,MAAA,CAAO,OAAA,CAAQ,SAAA,IAAa,MAAA;AAC9C,EAAA,MAAM,UAAA,GAAa,CAAA,sBAAA,EAAyB,UAAU,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA;AACnE,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAIC,eAAS,OAAO;AAAA,IACxC,UAAA;AAAA,IACA,WAAA,EAAa,gBAAgB,UAAU,CAAA;AAAA,IACvC,aAAA,EAAe;AAAA,GACjB,CAAE,CAAA;AACF,EAAA,MAAM,cAAc,KAAA,CAAM,UAAA,KAAe,aAAa,KAAA,CAAM,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAEpG,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,KAAA,CAAM,UAAA,KAAe,UAAA,IAAc,KAAA,CAAM,aAAA,EAAe;AAC1D,MAAA,gBAAA,CAAiB,UAAA,EAAY,MAAM,WAAW,CAAA;AAAA,IAChD;AAAA,EACF,CAAA,EAAG,CAAC,KAAA,EAAO,UAAU,CAAC,CAAA;AAEtB,EAAA,MAAM,MAAA,GAAS,CAAC,MAAA,KAAwE;AACtF,IAAA,QAAA,CAAS,CAAA,OAAA,KAAW;AAClB,MAAA,MAAM,qBAAqB,OAAA,CAAQ,UAAA,KAAe,aAAa,OAAA,CAAQ,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAC/G,MAAA,MAAM,eAAA,GAAkB,OAAO,kBAAkB,CAAA;AACjD,MAAA,OAAO,EAAE,UAAA,EAAY,WAAA,EAAa,eAAA,EAAiB,eAAe,IAAA,EAAK;AAAA,IACzE,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,CAAC,MAAA,KAAgC;AACpD,IAAA,MAAA,CAAO,CAAA,OAAA,KAAW;AAChB,MAAA,MAAM,SAAA,GAAY,OAAA,CAAQ,cAAA,CAAe,QAAA,CAAS,MAAM,CAAA;AACxD,MAAA,OAAO;AAAA,QACL,GAAG,OAAA;AAAA,QACH,cAAA,EAAgB,SAAA,GACZ,OAAA,CAAQ,cAAA,CAAe,MAAA,CAAO,CAAA,aAAA,KAAiB,aAAA,KAAkB,MAAM,CAAA,GACvE,CAAC,GAAG,OAAA,CAAQ,gBAAgB,MAAM;AAAA,OACxC;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,iBAAA,GAAoB,CAAC,GAAA,KAAgB;AACzC,IAAA,MAAM,aAAA,GAAgB,IAAI,IAAA,EAAK;AAC/B,IAAA,IAAI,CAAC,aAAA,EAAe;AACpB,IAAA,MAAA;AAAA,MAAO,aACL,OAAA,CAAQ,YAAA,CAAa,QAAA,CAAS,aAAa,IACvC,OAAA,GACA,EAAE,GAAG,OAAA,EAAS,cAAc,CAAC,GAAG,OAAA,CAAQ,YAAA,EAAc,aAAa,CAAA;AAAE,KAC3E;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,oBAAA,GAAuB,CAAC,GAAA,KAAgB;AAC5C,IAAA,MAAA,CAAO,CAAA,OAAA,MAAY;AAAA,MACjB,GAAG,OAAA;AAAA,MACH,cAAc,OAAA,CAAQ,YAAA,CAAa,MAAA,CAAO,CAAA,WAAA,KAAe,gBAAgB,GAAG;AAAA,KAC9E,CAAE,CAAA;AAAA,EACJ,CAAA;AAEA,EAAA,MAAM,eAAA,GAAkB,CAAC,KAAA,KAA6B;AACpD,IAAA,MAAA;AAAA,MAAO,aACL,OAAA,CAAQ,aAAA,CAAc,QAAA,CAAS,KAAK,IAChC,OAAA,GACA,EAAE,GAAG,OAAA,EAAS,eAAe,CAAC,GAAG,OAAA,CAAQ,aAAA,EAAe,KAAK,CAAA;AAAE,KACrE;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,kBAAA,GAAqB,CAAC,KAAA,KAA6B;AACvD,IAAA,MAAA,CAAO,CAAA,OAAA,MAAY;AAAA,MACjB,GAAG,OAAA;AAAA,MACH,eAAe,OAAA,CAAQ,aAAA,CAAc,MAAA,CAAO,CAAA,YAAA,KAAgB,iBAAiB,KAAK;AAAA,KACpF,CAAE,CAAA;AAAA,EACJ,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,MAAM,MAAA,CAAO,MAAML,gEAAgC,CAAA;AAExE,EAAA,OAAO;AAAA,IACL,WAAA;AAAA,IACA,YAAA;AAAA,IACA,eAAA;AAAA,IACA,kBAAA;AAAA,IACA,iBAAA;AAAA,IACA,oBAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
|
@@ -62,10 +62,23 @@ function useTraceColumnPreferences() {
|
|
|
62
62
|
metadataKeys: current.metadataKeys.filter((metadataKey) => metadataKey !== key)
|
|
63
63
|
}));
|
|
64
64
|
};
|
|
65
|
+
const addCustomColumn = (field) => {
|
|
66
|
+
commit(
|
|
67
|
+
(current) => current.customColumns.includes(field) ? current : { ...current, customColumns: [...current.customColumns, field] }
|
|
68
|
+
);
|
|
69
|
+
};
|
|
70
|
+
const removeCustomColumn = (field) => {
|
|
71
|
+
commit((current) => ({
|
|
72
|
+
...current,
|
|
73
|
+
customColumns: current.customColumns.filter((customColumn) => customColumn !== field)
|
|
74
|
+
}));
|
|
75
|
+
};
|
|
65
76
|
const resetColumns = () => commit(() => DEFAULT_TRACE_COLUMN_PREFERENCES);
|
|
66
77
|
return {
|
|
67
78
|
preferences,
|
|
68
79
|
toggleColumn,
|
|
80
|
+
addCustomColumn,
|
|
81
|
+
removeCustomColumn,
|
|
69
82
|
addMetadataColumn,
|
|
70
83
|
removeMetadataColumn,
|
|
71
84
|
resetColumns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-column-preferences.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-column-preferences.ts"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { useEffect, useState } from 'react';\nimport {\n DEFAULT_TRACE_COLUMN_PREFERENCES,\n parseTraceColumnPreferences,\n serializeTraceColumnPreferences,\n} from '../trace-list-columns';\nimport type { TraceColumnPreferences, TraceOptionalColumn } from '../trace-list-columns';\n\nfunction readPreferences(storageKey: string): TraceColumnPreferences {\n if (typeof window === 'undefined') return DEFAULT_TRACE_COLUMN_PREFERENCES;\n\n try {\n return parseTraceColumnPreferences(window.localStorage.getItem(storageKey) ?? undefined);\n } catch {\n return DEFAULT_TRACE_COLUMN_PREFERENCES;\n }\n}\n\nfunction writePreferences(storageKey: string, preferences: TraceColumnPreferences): void {\n if (typeof window === 'undefined') return;\n\n try {\n window.localStorage.setItem(storageKey, serializeTraceColumnPreferences(preferences));\n } catch {\n // Storage can be unavailable in private browsing or full. The in-memory\n // selection still works for the current visit.\n }\n}\n\nexport function useTraceColumnPreferences() {\n const client = useMastraClient();\n const projectUrl =\n client.options.baseUrl || (typeof window === 'undefined' ? 'local' : window.location.origin || 'local');\n const apiPrefix = client.options.apiPrefix ?? '/api';\n const storageKey = `mastra:traces:columns:${projectUrl}:${apiPrefix}`;\n const [state, setState] = useState(() => ({\n storageKey,\n preferences: readPreferences(storageKey),\n shouldPersist: false,\n }));\n const preferences = state.storageKey === storageKey ? state.preferences : readPreferences(storageKey);\n\n useEffect(() => {\n if (state.storageKey === storageKey && state.shouldPersist) {\n writePreferences(storageKey, state.preferences);\n }\n }, [state, storageKey]);\n\n const commit = (update: (current: TraceColumnPreferences) => TraceColumnPreferences) => {\n setState(current => {\n const currentPreferences = current.storageKey === storageKey ? current.preferences : readPreferences(storageKey);\n const nextPreferences = update(currentPreferences);\n return { storageKey, preferences: nextPreferences, shouldPersist: true };\n });\n };\n\n const toggleColumn = (column: TraceOptionalColumn) => {\n commit(current => {\n const isVisible = current.visibleColumns.includes(column);\n return {\n ...current,\n visibleColumns: isVisible\n ? current.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...current.visibleColumns, column],\n };\n });\n };\n\n const addMetadataColumn = (key: string) => {\n const normalizedKey = key.trim();\n if (!normalizedKey) return;\n commit(current =>\n current.metadataKeys.includes(normalizedKey)\n ? current\n : { ...current, metadataKeys: [...current.metadataKeys, normalizedKey] },\n );\n };\n\n const removeMetadataColumn = (key: string) => {\n commit(current => ({\n ...current,\n metadataKeys: current.metadataKeys.filter(metadataKey => metadataKey !== key),\n }));\n };\n\n const resetColumns = () => commit(() => DEFAULT_TRACE_COLUMN_PREFERENCES);\n\n return {\n preferences,\n toggleColumn,\n addMetadataColumn,\n removeMetadataColumn,\n resetColumns,\n };\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-trace-column-preferences.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-column-preferences.ts"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { useEffect, useState } from 'react';\nimport {\n DEFAULT_TRACE_COLUMN_PREFERENCES,\n parseTraceColumnPreferences,\n serializeTraceColumnPreferences,\n} from '../trace-list-columns';\nimport type { TraceColumnPreferences, TraceCustomColumn, TraceOptionalColumn } from '../trace-list-columns';\n\nfunction readPreferences(storageKey: string): TraceColumnPreferences {\n if (typeof window === 'undefined') return DEFAULT_TRACE_COLUMN_PREFERENCES;\n\n try {\n return parseTraceColumnPreferences(window.localStorage.getItem(storageKey) ?? undefined);\n } catch {\n return DEFAULT_TRACE_COLUMN_PREFERENCES;\n }\n}\n\nfunction writePreferences(storageKey: string, preferences: TraceColumnPreferences): void {\n if (typeof window === 'undefined') return;\n\n try {\n window.localStorage.setItem(storageKey, serializeTraceColumnPreferences(preferences));\n } catch {\n // Storage can be unavailable in private browsing or full. The in-memory\n // selection still works for the current visit.\n }\n}\n\nexport function useTraceColumnPreferences() {\n const client = useMastraClient();\n const projectUrl =\n client.options.baseUrl || (typeof window === 'undefined' ? 'local' : window.location.origin || 'local');\n const apiPrefix = client.options.apiPrefix ?? '/api';\n const storageKey = `mastra:traces:columns:${projectUrl}:${apiPrefix}`;\n const [state, setState] = useState(() => ({\n storageKey,\n preferences: readPreferences(storageKey),\n shouldPersist: false,\n }));\n const preferences = state.storageKey === storageKey ? state.preferences : readPreferences(storageKey);\n\n useEffect(() => {\n if (state.storageKey === storageKey && state.shouldPersist) {\n writePreferences(storageKey, state.preferences);\n }\n }, [state, storageKey]);\n\n const commit = (update: (current: TraceColumnPreferences) => TraceColumnPreferences) => {\n setState(current => {\n const currentPreferences = current.storageKey === storageKey ? current.preferences : readPreferences(storageKey);\n const nextPreferences = update(currentPreferences);\n return { storageKey, preferences: nextPreferences, shouldPersist: true };\n });\n };\n\n const toggleColumn = (column: TraceOptionalColumn) => {\n commit(current => {\n const isVisible = current.visibleColumns.includes(column);\n return {\n ...current,\n visibleColumns: isVisible\n ? current.visibleColumns.filter(visibleColumn => visibleColumn !== column)\n : [...current.visibleColumns, column],\n };\n });\n };\n\n const addMetadataColumn = (key: string) => {\n const normalizedKey = key.trim();\n if (!normalizedKey) return;\n commit(current =>\n current.metadataKeys.includes(normalizedKey)\n ? current\n : { ...current, metadataKeys: [...current.metadataKeys, normalizedKey] },\n );\n };\n\n const removeMetadataColumn = (key: string) => {\n commit(current => ({\n ...current,\n metadataKeys: current.metadataKeys.filter(metadataKey => metadataKey !== key),\n }));\n };\n\n const addCustomColumn = (field: TraceCustomColumn) => {\n commit(current =>\n current.customColumns.includes(field)\n ? current\n : { ...current, customColumns: [...current.customColumns, field] },\n );\n };\n\n const removeCustomColumn = (field: TraceCustomColumn) => {\n commit(current => ({\n ...current,\n customColumns: current.customColumns.filter(customColumn => customColumn !== field),\n }));\n };\n\n const resetColumns = () => commit(() => DEFAULT_TRACE_COLUMN_PREFERENCES);\n\n return {\n preferences,\n toggleColumn,\n addCustomColumn,\n removeCustomColumn,\n addMetadataColumn,\n removeMetadataColumn,\n resetColumns,\n };\n}\n"],"names":[],"mappings":";;;;AASA,SAAS,gBAAgB,UAAA,EAA4C;AACnE,EAAA,IAAI,OAAO,MAAA,KAAW,WAAA,EAAa,OAAO,gCAAA;AAE1C,EAAA,IAAI;AACF,IAAA,OAAO,4BAA4B,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAU,KAAK,KAAA,CAAS,CAAA;AAAA,EACzF,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,gCAAA;AAAA,EACT;AACF;AAEA,SAAS,gBAAA,CAAiB,YAAoB,WAAA,EAA2C;AACvF,EAAA,IAAI,OAAO,WAAW,WAAA,EAAa;AAEnC,EAAA,IAAI;AACF,IAAA,MAAA,CAAO,YAAA,CAAa,OAAA,CAAQ,UAAA,EAAY,+BAAA,CAAgC,WAAW,CAAC,CAAA;AAAA,EACtF,CAAA,CAAA,MAAQ;AAAA,EAGR;AACF;AAEO,SAAS,yBAAA,GAA4B;AAC1C,EAAA,MAAM,SAAS,eAAA,EAAgB;AAC/B,EAAA,MAAM,UAAA,GACJ,MAAA,CAAO,OAAA,CAAQ,OAAA,KAAY,OAAO,WAAW,WAAA,GAAc,OAAA,GAAU,MAAA,CAAO,QAAA,CAAS,MAAA,IAAU,OAAA,CAAA;AACjG,EAAA,MAAM,SAAA,GAAY,MAAA,CAAO,OAAA,CAAQ,SAAA,IAAa,MAAA;AAC9C,EAAA,MAAM,UAAA,GAAa,CAAA,sBAAA,EAAyB,UAAU,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA;AACnE,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,SAAS,OAAO;AAAA,IACxC,UAAA;AAAA,IACA,WAAA,EAAa,gBAAgB,UAAU,CAAA;AAAA,IACvC,aAAA,EAAe;AAAA,GACjB,CAAE,CAAA;AACF,EAAA,MAAM,cAAc,KAAA,CAAM,UAAA,KAAe,aAAa,KAAA,CAAM,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAEpG,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,KAAA,CAAM,UAAA,KAAe,UAAA,IAAc,KAAA,CAAM,aAAA,EAAe;AAC1D,MAAA,gBAAA,CAAiB,UAAA,EAAY,MAAM,WAAW,CAAA;AAAA,IAChD;AAAA,EACF,CAAA,EAAG,CAAC,KAAA,EAAO,UAAU,CAAC,CAAA;AAEtB,EAAA,MAAM,MAAA,GAAS,CAAC,MAAA,KAAwE;AACtF,IAAA,QAAA,CAAS,CAAA,OAAA,KAAW;AAClB,MAAA,MAAM,qBAAqB,OAAA,CAAQ,UAAA,KAAe,aAAa,OAAA,CAAQ,WAAA,GAAc,gBAAgB,UAAU,CAAA;AAC/G,MAAA,MAAM,eAAA,GAAkB,OAAO,kBAAkB,CAAA;AACjD,MAAA,OAAO,EAAE,UAAA,EAAY,WAAA,EAAa,eAAA,EAAiB,eAAe,IAAA,EAAK;AAAA,IACzE,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,CAAC,MAAA,KAAgC;AACpD,IAAA,MAAA,CAAO,CAAA,OAAA,KAAW;AAChB,MAAA,MAAM,SAAA,GAAY,OAAA,CAAQ,cAAA,CAAe,QAAA,CAAS,MAAM,CAAA;AACxD,MAAA,OAAO;AAAA,QACL,GAAG,OAAA;AAAA,QACH,cAAA,EAAgB,SAAA,GACZ,OAAA,CAAQ,cAAA,CAAe,MAAA,CAAO,CAAA,aAAA,KAAiB,aAAA,KAAkB,MAAM,CAAA,GACvE,CAAC,GAAG,OAAA,CAAQ,gBAAgB,MAAM;AAAA,OACxC;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAA;AAEA,EAAA,MAAM,iBAAA,GAAoB,CAAC,GAAA,KAAgB;AACzC,IAAA,MAAM,aAAA,GAAgB,IAAI,IAAA,EAAK;AAC/B,IAAA,IAAI,CAAC,aAAA,EAAe;AACpB,IAAA,MAAA;AAAA,MAAO,aACL,OAAA,CAAQ,YAAA,CAAa,QAAA,CAAS,aAAa,IACvC,OAAA,GACA,EAAE,GAAG,OAAA,EAAS,cAAc,CAAC,GAAG,OAAA,CAAQ,YAAA,EAAc,aAAa,CAAA;AAAE,KAC3E;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,oBAAA,GAAuB,CAAC,GAAA,KAAgB;AAC5C,IAAA,MAAA,CAAO,CAAA,OAAA,MAAY;AAAA,MACjB,GAAG,OAAA;AAAA,MACH,cAAc,OAAA,CAAQ,YAAA,CAAa,MAAA,CAAO,CAAA,WAAA,KAAe,gBAAgB,GAAG;AAAA,KAC9E,CAAE,CAAA;AAAA,EACJ,CAAA;AAEA,EAAA,MAAM,eAAA,GAAkB,CAAC,KAAA,KAA6B;AACpD,IAAA,MAAA;AAAA,MAAO,aACL,OAAA,CAAQ,aAAA,CAAc,QAAA,CAAS,KAAK,IAChC,OAAA,GACA,EAAE,GAAG,OAAA,EAAS,eAAe,CAAC,GAAG,OAAA,CAAQ,aAAA,EAAe,KAAK,CAAA;AAAE,KACrE;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,kBAAA,GAAqB,CAAC,KAAA,KAA6B;AACvD,IAAA,MAAA,CAAO,CAAA,OAAA,MAAY;AAAA,MACjB,GAAG,OAAA;AAAA,MACH,eAAe,OAAA,CAAQ,aAAA,CAAc,MAAA,CAAO,CAAA,YAAA,KAAgB,iBAAiB,KAAK;AAAA,KACpF,CAAE,CAAA;AAAA,EACJ,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,MAAM,MAAA,CAAO,MAAM,gCAAgC,CAAA;AAExE,EAAA,OAAO;AAAA,IACL,WAAA;AAAA,IACA,YAAA;AAAA,IACA,eAAA;AAAA,IACA,kBAAA;AAAA,IACA,iBAAA;AAAA,IACA,oBAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
|
@@ -17,6 +17,15 @@ const EMPTY_FIELDS = {
|
|
|
17
17
|
const TRACE_QUERY_DISCOVERY_UNSUPPORTED = "TRACE_QUERY_DISCOVERY_UNSUPPORTED";
|
|
18
18
|
const isDiscoveryUnsupportedError = (error) => error instanceof clientJs.MastraClientError && typeof error.body === "object" && error.body !== null && error.body.code === TRACE_QUERY_DISCOVERY_UNSUPPORTED;
|
|
19
19
|
const traceQueryFieldsQueryKey = (timeRange) => ["trace-query-fields", timeRange.from, timeRange.to];
|
|
20
|
+
const createTraceQueryValuesResolver = (client, timeRange, predicateScope, path) => {
|
|
21
|
+
return async ({ query: search, signal }) => {
|
|
22
|
+
const { values } = await client.getTraceQueryValues(
|
|
23
|
+
{ timeRange, predicateScope, path, search: search.trim() || void 0, limit: DISCOVERY_LIMIT },
|
|
24
|
+
{ signal }
|
|
25
|
+
);
|
|
26
|
+
return values.map(({ value }) => ({ value }));
|
|
27
|
+
};
|
|
28
|
+
};
|
|
20
29
|
const useTraceMetadataFilterFields = ({
|
|
21
30
|
timeRange,
|
|
22
31
|
enabled = true
|
|
@@ -46,25 +55,14 @@ const useTraceMetadataFilterFields = ({
|
|
|
46
55
|
const fields = React.useMemo(
|
|
47
56
|
() => (observedFields ?? []).map((field) => ({
|
|
48
57
|
path: field.path,
|
|
49
|
-
suggestions:
|
|
50
|
-
const { values } = await client.getTraceQueryValues(
|
|
51
|
-
{
|
|
52
|
-
timeRange,
|
|
53
|
-
predicateScope: "trace",
|
|
54
|
-
path: field.path,
|
|
55
|
-
search: search.trim() || void 0,
|
|
56
|
-
limit: DISCOVERY_LIMIT
|
|
57
|
-
},
|
|
58
|
-
{ signal }
|
|
59
|
-
);
|
|
60
|
-
return values.map(({ value }) => ({ value }));
|
|
61
|
-
}
|
|
58
|
+
suggestions: createTraceQueryValuesResolver(client, timeRange, "trace", field.path)
|
|
62
59
|
})),
|
|
63
60
|
[observedFields, client, timeRange]
|
|
64
61
|
);
|
|
65
62
|
return { fields, isLoading: query.isLoading, error: query.error };
|
|
66
63
|
};
|
|
67
64
|
|
|
65
|
+
exports.createTraceQueryValuesResolver = createTraceQueryValuesResolver;
|
|
68
66
|
exports.traceQueryFieldsQueryKey = traceQueryFieldsQueryKey;
|
|
69
67
|
exports.useTraceMetadataFilterFields = useTraceMetadataFilterFields;
|
|
70
68
|
//# sourceMappingURL=use-trace-metadata-filter-fields.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-metadata-filter-fields.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-metadata-filter-fields.ts"],"sourcesContent":["import { MastraClientError } from '@mastra/client-js';\nimport type {
|
|
1
|
+
{"version":3,"file":"use-trace-metadata-filter-fields.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-metadata-filter-fields.ts"],"sourcesContent":["import { MastraClientError } from '@mastra/client-js';\nimport type {\n GetTraceQueryFieldsArgs,\n GetTraceQueryFieldsResponse,\n GetTraceQueryValuesArgs,\n MastraClient,\n} from '@mastra/client-js';\nimport { useMastraClient } from '@mastra/react';\nimport { keepPreviousData, useQuery } from '@tanstack/react-query';\nimport { useMemo } from 'react';\nimport { DISCOVERY_STALE_TIME } from './discovery-cache';\nimport type { FilterBarSuggestionsResolver } from '@/ds/components/FilterBar/types';\n\nexport type TraceQueryDiscoveryTimeRange = GetTraceQueryFieldsArgs['timeRange'];\n\nexport type TraceMetadataFilterField = {\n /** `metadata.<key>` — doubles as the filter bar field id. */\n path: string;\n suggestions: FilterBarSuggestionsResolver;\n};\n\n// Server caps discovery limits at 100 (TRACE_QUERY_DISCOVERY_MAX_LIMIT).\nconst DISCOVERY_LIMIT = 100;\n\nconst EMPTY_FIELDS: GetTraceQueryFieldsResponse = {\n canonicalFields: [],\n observedFields: [],\n observedFieldsTruncated: false,\n};\n\nconst TRACE_QUERY_DISCOVERY_UNSUPPORTED = 'TRACE_QUERY_DISCOVERY_UNSUPPORTED';\n\nconst isDiscoveryUnsupportedError = (error: unknown) =>\n error instanceof MastraClientError &&\n typeof error.body === 'object' &&\n error.body !== null &&\n (error.body as { code?: unknown }).code === TRACE_QUERY_DISCOVERY_UNSUPPORTED;\n\nexport const traceQueryFieldsQueryKey = (timeRange: TraceQueryDiscoveryTimeRange) =>\n ['trace-query-fields', timeRange.from, timeRange.to] as const;\n\n/** Lazy FilterBar suggestions resolver backed by the value-discovery endpoint for one\n * `predicateScope` + `path`. FilterBar owns debounce/abort; this only fetches. */\nexport const createTraceQueryValuesResolver = (\n client: MastraClient,\n timeRange: TraceQueryDiscoveryTimeRange,\n predicateScope: GetTraceQueryValuesArgs['predicateScope'],\n path: string,\n): FilterBarSuggestionsResolver => {\n return async ({ query: search, signal }) => {\n const { values } = await client.getTraceQueryValues(\n { timeRange, predicateScope, path, search: search.trim() || undefined, limit: DISCOVERY_LIMIT },\n { signal },\n );\n return values.map(({ value }) => ({ value }));\n };\n};\n\n/**\n * Discovers the `metadata.*` fields observed on traces in the given time range and returns\n * them as filter bar fields, each with a lazy `suggestions` resolver that fetches the field's\n * values when the user opens the value step (FilterBar owns debounce/abort).\n *\n * Resolves to an empty field list when the server or store does not support discovery\n * (`TRACE_QUERY_DISCOVERY_UNSUPPORTED`) so callers never stay blocked.\n */\nexport const useTraceMetadataFilterFields = ({\n timeRange,\n enabled = true,\n}: {\n timeRange: TraceQueryDiscoveryTimeRange;\n enabled?: boolean;\n}) => {\n const client = useMastraClient();\n\n const query = useQuery({\n queryKey: traceQueryFieldsQueryKey(timeRange),\n queryFn: async ({ signal }) => {\n try {\n return await client.getTraceQueryFields(\n { timeRange, predicateScope: 'trace', limit: DISCOVERY_LIMIT },\n { signal },\n );\n } catch (error) {\n if (isDiscoveryUnsupportedError(error)) return EMPTY_FIELDS;\n throw error;\n }\n },\n enabled,\n retry: false,\n staleTime: DISCOVERY_STALE_TIME,\n // Changing the time range must not tear down the filter bar behind a skeleton;\n // keep the previous field list until the new range resolves.\n placeholderData: keepPreviousData,\n });\n\n const observedFields = query.data?.observedFields;\n\n const fields = useMemo<TraceMetadataFilterField[]>(\n () =>\n (observedFields ?? []).map(field => ({\n path: field.path,\n suggestions: createTraceQueryValuesResolver(client, timeRange, 'trace', field.path),\n })),\n [observedFields, client, timeRange],\n );\n\n return { fields, isLoading: query.isLoading, error: query.error };\n};\n"],"names":["MastraClientError","useMastraClient","useQuery","DISCOVERY_STALE_TIME","keepPreviousData","useMemo"],"mappings":";;;;;;;;;;AAsBA,MAAM,eAAA,GAAkB,GAAA;AAExB,MAAM,YAAA,GAA4C;AAAA,EAChD,iBAAiB,EAAC;AAAA,EAClB,gBAAgB,EAAC;AAAA,EACjB,uBAAA,EAAyB;AAC3B,CAAA;AAEA,MAAM,iCAAA,GAAoC,mCAAA;AAE1C,MAAM,2BAAA,GAA8B,CAAC,KAAA,KACnC,KAAA,YAAiBA,8BACjB,OAAO,KAAA,CAAM,IAAA,KAAS,QAAA,IACtB,KAAA,CAAM,IAAA,KAAS,IAAA,IACd,KAAA,CAAM,KAA4B,IAAA,KAAS,iCAAA;AAEvC,MAAM,wBAAA,GAA2B,CAAC,SAAA,KACvC,CAAC,sBAAsB,SAAA,CAAU,IAAA,EAAM,UAAU,EAAE;AAI9C,MAAM,8BAAA,GAAiC,CAC5C,MAAA,EACA,SAAA,EACA,gBACA,IAAA,KACiC;AACjC,EAAA,OAAO,OAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,QAAO,KAAM;AAC1C,IAAA,MAAM,EAAE,MAAA,EAAO,GAAI,MAAM,MAAA,CAAO,mBAAA;AAAA,MAC9B,EAAE,SAAA,EAAW,cAAA,EAAgB,IAAA,EAAM,MAAA,EAAQ,OAAO,IAAA,EAAK,IAAK,MAAA,EAAW,KAAA,EAAO,eAAA,EAAgB;AAAA,MAC9F,EAAE,MAAA;AAAO,KACX;AACA,IAAA,OAAO,MAAA,CAAO,IAAI,CAAC,EAAE,OAAM,MAAO,EAAE,OAAM,CAAE,CAAA;AAAA,EAC9C,CAAA;AACF;AAUO,MAAM,+BAA+B,CAAC;AAAA,EAC3C,SAAA;AAAA,EACA,OAAA,GAAU;AACZ,CAAA,KAGM;AACJ,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAE/B,EAAA,MAAM,QAAQC,mBAAA,CAAS;AAAA,IACrB,QAAA,EAAU,yBAAyB,SAAS,CAAA;AAAA,IAC5C,OAAA,EAAS,OAAO,EAAE,MAAA,EAAO,KAAM;AAC7B,MAAA,IAAI;AACF,QAAA,OAAO,MAAM,MAAA,CAAO,mBAAA;AAAA,UAClB,EAAE,SAAA,EAAW,cAAA,EAAgB,OAAA,EAAS,OAAO,eAAA,EAAgB;AAAA,UAC7D,EAAE,MAAA;AAAO,SACX;AAAA,MACF,SAAS,KAAA,EAAO;AACd,QAAA,IAAI,2BAAA,CAA4B,KAAK,CAAA,EAAG,OAAO,YAAA;AAC/C,QAAA,MAAM,KAAA;AAAA,MACR;AAAA,IACF,CAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA,EAAO,KAAA;AAAA,IACP,SAAA,EAAWC,wDAAA;AAAA;AAAA;AAAA,IAGX,eAAA,EAAiBC;AAAA,GAClB,CAAA;AAED,EAAA,MAAM,cAAA,GAAiB,MAAM,IAAA,EAAM,cAAA;AAEnC,EAAA,MAAM,MAAA,GAASC,aAAA;AAAA,IACb,MAAA,CACG,cAAA,IAAkB,EAAC,EAAG,IAAI,CAAA,KAAA,MAAU;AAAA,MACnC,MAAM,KAAA,CAAM,IAAA;AAAA,MACZ,aAAa,8BAAA,CAA+B,MAAA,EAAQ,SAAA,EAAW,OAAA,EAAS,MAAM,IAAI;AAAA,KACpF,CAAE,CAAA;AAAA,IACJ,CAAC,cAAA,EAAgB,MAAA,EAAQ,SAAS;AAAA,GACpC;AAEA,EAAA,OAAO,EAAE,MAAA,EAAQ,SAAA,EAAW,MAAM,SAAA,EAAW,KAAA,EAAO,MAAM,KAAA,EAAM;AAClE;;;;;;"}
|
|
@@ -13,6 +13,15 @@ const EMPTY_FIELDS = {
|
|
|
13
13
|
const TRACE_QUERY_DISCOVERY_UNSUPPORTED = "TRACE_QUERY_DISCOVERY_UNSUPPORTED";
|
|
14
14
|
const isDiscoveryUnsupportedError = (error) => error instanceof MastraClientError && typeof error.body === "object" && error.body !== null && error.body.code === TRACE_QUERY_DISCOVERY_UNSUPPORTED;
|
|
15
15
|
const traceQueryFieldsQueryKey = (timeRange) => ["trace-query-fields", timeRange.from, timeRange.to];
|
|
16
|
+
const createTraceQueryValuesResolver = (client, timeRange, predicateScope, path) => {
|
|
17
|
+
return async ({ query: search, signal }) => {
|
|
18
|
+
const { values } = await client.getTraceQueryValues(
|
|
19
|
+
{ timeRange, predicateScope, path, search: search.trim() || void 0, limit: DISCOVERY_LIMIT },
|
|
20
|
+
{ signal }
|
|
21
|
+
);
|
|
22
|
+
return values.map(({ value }) => ({ value }));
|
|
23
|
+
};
|
|
24
|
+
};
|
|
16
25
|
const useTraceMetadataFilterFields = ({
|
|
17
26
|
timeRange,
|
|
18
27
|
enabled = true
|
|
@@ -42,24 +51,12 @@ const useTraceMetadataFilterFields = ({
|
|
|
42
51
|
const fields = useMemo(
|
|
43
52
|
() => (observedFields ?? []).map((field) => ({
|
|
44
53
|
path: field.path,
|
|
45
|
-
suggestions:
|
|
46
|
-
const { values } = await client.getTraceQueryValues(
|
|
47
|
-
{
|
|
48
|
-
timeRange,
|
|
49
|
-
predicateScope: "trace",
|
|
50
|
-
path: field.path,
|
|
51
|
-
search: search.trim() || void 0,
|
|
52
|
-
limit: DISCOVERY_LIMIT
|
|
53
|
-
},
|
|
54
|
-
{ signal }
|
|
55
|
-
);
|
|
56
|
-
return values.map(({ value }) => ({ value }));
|
|
57
|
-
}
|
|
54
|
+
suggestions: createTraceQueryValuesResolver(client, timeRange, "trace", field.path)
|
|
58
55
|
})),
|
|
59
56
|
[observedFields, client, timeRange]
|
|
60
57
|
);
|
|
61
58
|
return { fields, isLoading: query.isLoading, error: query.error };
|
|
62
59
|
};
|
|
63
60
|
|
|
64
|
-
export { traceQueryFieldsQueryKey, useTraceMetadataFilterFields };
|
|
61
|
+
export { createTraceQueryValuesResolver, traceQueryFieldsQueryKey, useTraceMetadataFilterFields };
|
|
65
62
|
//# sourceMappingURL=use-trace-metadata-filter-fields.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-metadata-filter-fields.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-metadata-filter-fields.ts"],"sourcesContent":["import { MastraClientError } from '@mastra/client-js';\nimport type {
|
|
1
|
+
{"version":3,"file":"use-trace-metadata-filter-fields.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-metadata-filter-fields.ts"],"sourcesContent":["import { MastraClientError } from '@mastra/client-js';\nimport type {\n GetTraceQueryFieldsArgs,\n GetTraceQueryFieldsResponse,\n GetTraceQueryValuesArgs,\n MastraClient,\n} from '@mastra/client-js';\nimport { useMastraClient } from '@mastra/react';\nimport { keepPreviousData, useQuery } from '@tanstack/react-query';\nimport { useMemo } from 'react';\nimport { DISCOVERY_STALE_TIME } from './discovery-cache';\nimport type { FilterBarSuggestionsResolver } from '@/ds/components/FilterBar/types';\n\nexport type TraceQueryDiscoveryTimeRange = GetTraceQueryFieldsArgs['timeRange'];\n\nexport type TraceMetadataFilterField = {\n /** `metadata.<key>` — doubles as the filter bar field id. */\n path: string;\n suggestions: FilterBarSuggestionsResolver;\n};\n\n// Server caps discovery limits at 100 (TRACE_QUERY_DISCOVERY_MAX_LIMIT).\nconst DISCOVERY_LIMIT = 100;\n\nconst EMPTY_FIELDS: GetTraceQueryFieldsResponse = {\n canonicalFields: [],\n observedFields: [],\n observedFieldsTruncated: false,\n};\n\nconst TRACE_QUERY_DISCOVERY_UNSUPPORTED = 'TRACE_QUERY_DISCOVERY_UNSUPPORTED';\n\nconst isDiscoveryUnsupportedError = (error: unknown) =>\n error instanceof MastraClientError &&\n typeof error.body === 'object' &&\n error.body !== null &&\n (error.body as { code?: unknown }).code === TRACE_QUERY_DISCOVERY_UNSUPPORTED;\n\nexport const traceQueryFieldsQueryKey = (timeRange: TraceQueryDiscoveryTimeRange) =>\n ['trace-query-fields', timeRange.from, timeRange.to] as const;\n\n/** Lazy FilterBar suggestions resolver backed by the value-discovery endpoint for one\n * `predicateScope` + `path`. FilterBar owns debounce/abort; this only fetches. */\nexport const createTraceQueryValuesResolver = (\n client: MastraClient,\n timeRange: TraceQueryDiscoveryTimeRange,\n predicateScope: GetTraceQueryValuesArgs['predicateScope'],\n path: string,\n): FilterBarSuggestionsResolver => {\n return async ({ query: search, signal }) => {\n const { values } = await client.getTraceQueryValues(\n { timeRange, predicateScope, path, search: search.trim() || undefined, limit: DISCOVERY_LIMIT },\n { signal },\n );\n return values.map(({ value }) => ({ value }));\n };\n};\n\n/**\n * Discovers the `metadata.*` fields observed on traces in the given time range and returns\n * them as filter bar fields, each with a lazy `suggestions` resolver that fetches the field's\n * values when the user opens the value step (FilterBar owns debounce/abort).\n *\n * Resolves to an empty field list when the server or store does not support discovery\n * (`TRACE_QUERY_DISCOVERY_UNSUPPORTED`) so callers never stay blocked.\n */\nexport const useTraceMetadataFilterFields = ({\n timeRange,\n enabled = true,\n}: {\n timeRange: TraceQueryDiscoveryTimeRange;\n enabled?: boolean;\n}) => {\n const client = useMastraClient();\n\n const query = useQuery({\n queryKey: traceQueryFieldsQueryKey(timeRange),\n queryFn: async ({ signal }) => {\n try {\n return await client.getTraceQueryFields(\n { timeRange, predicateScope: 'trace', limit: DISCOVERY_LIMIT },\n { signal },\n );\n } catch (error) {\n if (isDiscoveryUnsupportedError(error)) return EMPTY_FIELDS;\n throw error;\n }\n },\n enabled,\n retry: false,\n staleTime: DISCOVERY_STALE_TIME,\n // Changing the time range must not tear down the filter bar behind a skeleton;\n // keep the previous field list until the new range resolves.\n placeholderData: keepPreviousData,\n });\n\n const observedFields = query.data?.observedFields;\n\n const fields = useMemo<TraceMetadataFilterField[]>(\n () =>\n (observedFields ?? []).map(field => ({\n path: field.path,\n suggestions: createTraceQueryValuesResolver(client, timeRange, 'trace', field.path),\n })),\n [observedFields, client, timeRange],\n );\n\n return { fields, isLoading: query.isLoading, error: query.error };\n};\n"],"names":[],"mappings":";;;;;;AAsBA,MAAM,eAAA,GAAkB,GAAA;AAExB,MAAM,YAAA,GAA4C;AAAA,EAChD,iBAAiB,EAAC;AAAA,EAClB,gBAAgB,EAAC;AAAA,EACjB,uBAAA,EAAyB;AAC3B,CAAA;AAEA,MAAM,iCAAA,GAAoC,mCAAA;AAE1C,MAAM,2BAAA,GAA8B,CAAC,KAAA,KACnC,KAAA,YAAiB,qBACjB,OAAO,KAAA,CAAM,IAAA,KAAS,QAAA,IACtB,KAAA,CAAM,IAAA,KAAS,IAAA,IACd,KAAA,CAAM,KAA4B,IAAA,KAAS,iCAAA;AAEvC,MAAM,wBAAA,GAA2B,CAAC,SAAA,KACvC,CAAC,sBAAsB,SAAA,CAAU,IAAA,EAAM,UAAU,EAAE;AAI9C,MAAM,8BAAA,GAAiC,CAC5C,MAAA,EACA,SAAA,EACA,gBACA,IAAA,KACiC;AACjC,EAAA,OAAO,OAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,QAAO,KAAM;AAC1C,IAAA,MAAM,EAAE,MAAA,EAAO,GAAI,MAAM,MAAA,CAAO,mBAAA;AAAA,MAC9B,EAAE,SAAA,EAAW,cAAA,EAAgB,IAAA,EAAM,MAAA,EAAQ,OAAO,IAAA,EAAK,IAAK,MAAA,EAAW,KAAA,EAAO,eAAA,EAAgB;AAAA,MAC9F,EAAE,MAAA;AAAO,KACX;AACA,IAAA,OAAO,MAAA,CAAO,IAAI,CAAC,EAAE,OAAM,MAAO,EAAE,OAAM,CAAE,CAAA;AAAA,EAC9C,CAAA;AACF;AAUO,MAAM,+BAA+B,CAAC;AAAA,EAC3C,SAAA;AAAA,EACA,OAAA,GAAU;AACZ,CAAA,KAGM;AACJ,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,QAAQ,QAAA,CAAS;AAAA,IACrB,QAAA,EAAU,yBAAyB,SAAS,CAAA;AAAA,IAC5C,OAAA,EAAS,OAAO,EAAE,MAAA,EAAO,KAAM;AAC7B,MAAA,IAAI;AACF,QAAA,OAAO,MAAM,MAAA,CAAO,mBAAA;AAAA,UAClB,EAAE,SAAA,EAAW,cAAA,EAAgB,OAAA,EAAS,OAAO,eAAA,EAAgB;AAAA,UAC7D,EAAE,MAAA;AAAO,SACX;AAAA,MACF,SAAS,KAAA,EAAO;AACd,QAAA,IAAI,2BAAA,CAA4B,KAAK,CAAA,EAAG,OAAO,YAAA;AAC/C,QAAA,MAAM,KAAA;AAAA,MACR;AAAA,IACF,CAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA,EAAO,KAAA;AAAA,IACP,SAAA,EAAW,oBAAA;AAAA;AAAA;AAAA,IAGX,eAAA,EAAiB;AAAA,GAClB,CAAA;AAED,EAAA,MAAM,cAAA,GAAiB,MAAM,IAAA,EAAM,cAAA;AAEnC,EAAA,MAAM,MAAA,GAAS,OAAA;AAAA,IACb,MAAA,CACG,cAAA,IAAkB,EAAC,EAAG,IAAI,CAAA,KAAA,MAAU;AAAA,MACnC,MAAM,KAAA,CAAM,IAAA;AAAA,MACZ,aAAa,8BAAA,CAA+B,MAAA,EAAQ,SAAA,EAAW,OAAA,EAAS,MAAM,IAAI;AAAA,KACpF,CAAE,CAAA;AAAA,IACJ,CAAC,cAAA,EAAgB,MAAA,EAAQ,SAAS;AAAA,GACpC;AAEA,EAAA,OAAO,EAAE,MAAA,EAAQ,SAAA,EAAW,MAAM,SAAA,EAAW,KAAA,EAAO,MAAM,KAAA,EAAM;AAClE;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-query.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-query.ts"],"sourcesContent":["import { MastraClient } from '@mastra/client-js';\nimport type {
|
|
1
|
+
{"version":3,"file":"use-trace-query.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-query.ts"],"sourcesContent":["import { MastraClient } from '@mastra/client-js';\nimport type { QueryTracesKeysetInput } from '@mastra/client-js';\nimport { useMastraClient } from '@mastra/react';\nimport { keepPreviousData, skipToken, useInfiniteQuery } from '@tanstack/react-query';\nimport { useEffect } from 'react';\nimport { useInView } from '@/hooks/use-in-view';\n\nexport const TRACE_QUERY_PER_PAGE = 25;\n\ntype TraceQueryResponse = Awaited<ReturnType<MastraClient['queryTraces']>>;\ntype TraceQueryCursorResponse = Extract<TraceQueryResponse, { page: { next: string | null } }>;\ntype TraceQueryTrace = TraceQueryResponse['traces'][number];\n\nexport type TraceQueryArgs = Omit<QueryTracesKeysetInput, 'page' | 'pagination'>;\n\nexport interface UseTraceQueryArgs {\n query: TraceQueryArgs | undefined;\n limit?: number;\n enabled?: boolean;\n refetchInterval?: number | false;\n refetchOnWindowFocus?: boolean;\n}\n\nexport interface UseTraceQueryReturn {\n data: TraceQueryTrace[] | undefined;\n hasNextPage: boolean;\n isFetchingNextPage: boolean;\n fetchNextPage: () => void;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n fetchStatus: 'idle' | 'fetching' | 'paused';\n isError: boolean;\n error: Error | null;\n refetch: () => void;\n setEndOfListElement: (node: HTMLDivElement | null) => void;\n}\n\nexport function getTraceQueryNextPageParam(lastPage: TraceQueryCursorResponse | undefined): string | undefined {\n return lastPage?.page.next ?? undefined;\n}\n\nexport function selectTraceQueryTraces(data: { pages: TraceQueryCursorResponse[] }): TraceQueryTrace[] {\n const seen = new Set<string>();\n return data.pages.flatMap(page =>\n page.traces.filter(trace => {\n if (seen.has(trace.traceId)) return false;\n seen.add(trace.traceId);\n return true;\n }),\n );\n}\n\n/** Queries traces with cursor pagination and viewport-driven loading. */\nexport function useTraceQuery({\n query,\n limit = TRACE_QUERY_PER_PAGE,\n enabled = true,\n refetchInterval,\n refetchOnWindowFocus,\n}: UseTraceQueryArgs): UseTraceQueryReturn {\n const client = useMastraClient();\n const { inView, setRef: setEndOfListElement } = useInView();\n const result = useInfiniteQuery<\n TraceQueryCursorResponse,\n Error,\n TraceQueryTrace[],\n readonly unknown[],\n string | undefined\n >({\n queryKey: ['trace-query', query, limit] as const,\n queryFn: query\n ? async ({ pageParam }) => {\n // Capability failures must reach the fallback without the SDK retrying 501 responses.\n const queryClient = new MastraClient({ ...client.options, retries: 0 });\n const response = await queryClient.queryTraces({ ...query, page: { limit, after: pageParam ?? null } });\n if ('page' in response) return response;\n throw new Error('Expected a cursor-paginated trace query response');\n }\n : skipToken,\n initialPageParam: undefined,\n getNextPageParam: getTraceQueryNextPageParam,\n select: selectTraceQueryTraces,\n retry: false,\n placeholderData: keepPreviousData,\n refetchInterval,\n refetchOnWindowFocus,\n enabled,\n });\n const {\n data,\n hasNextPage,\n isFetchingNextPage,\n fetchNextPage,\n isLoading,\n isFetching,\n isRefetching,\n fetchStatus,\n isError,\n error,\n refetch,\n isFetchNextPageError,\n } = result;\n\n useEffect(() => {\n if (enabled && inView && hasNextPage && !isFetching && !isFetchNextPageError) {\n void fetchNextPage();\n }\n }, [enabled, inView, hasNextPage, isFetching, isFetchNextPageError, fetchNextPage]);\n\n return {\n data,\n hasNextPage,\n isFetchingNextPage,\n fetchNextPage,\n isLoading,\n isFetching,\n isRefetching,\n fetchStatus,\n isError,\n error,\n refetch,\n setEndOfListElement,\n };\n}\n"],"names":["useMastraClient","useInView","useInfiniteQuery","MastraClient","skipToken","keepPreviousData","useEffect"],"mappings":";;;;;;;;;;AAOO,MAAM,oBAAA,GAAuB;AA+B7B,SAAS,2BAA2B,QAAA,EAAoE;AAC7G,EAAA,OAAO,QAAA,EAAU,KAAK,IAAA,IAAQ,MAAA;AAChC;AAEO,SAAS,uBAAuB,IAAA,EAAgE;AACrG,EAAA,MAAM,IAAA,uBAAW,GAAA,EAAY;AAC7B,EAAA,OAAO,KAAK,KAAA,CAAM,OAAA;AAAA,IAAQ,CAAA,IAAA,KACxB,IAAA,CAAK,MAAA,CAAO,MAAA,CAAO,CAAA,KAAA,KAAS;AAC1B,MAAA,IAAI,IAAA,CAAK,GAAA,CAAI,KAAA,CAAM,OAAO,GAAG,OAAO,KAAA;AACpC,MAAA,IAAA,CAAK,GAAA,CAAI,MAAM,OAAO,CAAA;AACtB,MAAA,OAAO,IAAA;AAAA,IACT,CAAC;AAAA,GACH;AACF;AAGO,SAAS,aAAA,CAAc;AAAA,EAC5B,KAAA;AAAA,EACA,KAAA,GAAQ,oBAAA;AAAA,EACR,OAAA,GAAU,IAAA;AAAA,EACV,eAAA;AAAA,EACA;AACF,CAAA,EAA2C;AACzC,EAAA,MAAM,SAASA,qBAAA,EAAgB;AAC/B,EAAA,MAAM,EAAE,MAAA,EAAQ,MAAA,EAAQ,mBAAA,KAAwBC,yBAAA,EAAU;AAC1D,EAAA,MAAM,SAASC,2BAAA,CAMb;AAAA,IACA,QAAA,EAAU,CAAC,aAAA,EAAe,KAAA,EAAO,KAAK,CAAA;AAAA,IACtC,OAAA,EAAS,KAAA,GACL,OAAO,EAAE,WAAU,KAAM;AAEvB,MAAA,MAAM,WAAA,GAAc,IAAIC,qBAAA,CAAa,EAAE,GAAG,MAAA,CAAO,OAAA,EAAS,OAAA,EAAS,CAAA,EAAG,CAAA;AACtE,MAAA,MAAM,QAAA,GAAW,MAAM,WAAA,CAAY,WAAA,CAAY,EAAE,GAAG,KAAA,EAAO,IAAA,EAAM,EAAE,KAAA,EAAO,KAAA,EAAO,SAAA,IAAa,IAAA,IAAQ,CAAA;AACtG,MAAA,IAAI,MAAA,IAAU,UAAU,OAAO,QAAA;AAC/B,MAAA,MAAM,IAAI,MAAM,kDAAkD,CAAA;AAAA,IACpE,CAAA,GACAC,oBAAA;AAAA,IACJ,gBAAA,EAAkB,MAAA;AAAA,IAClB,gBAAA,EAAkB,0BAAA;AAAA,IAClB,MAAA,EAAQ,sBAAA;AAAA,IACR,KAAA,EAAO,KAAA;AAAA,IACP,eAAA,EAAiBC,2BAAA;AAAA,IACjB,eAAA;AAAA,IACA,oBAAA;AAAA,IACA;AAAA,GACD,CAAA;AACD,EAAA,MAAM;AAAA,IACJ,IAAA;AAAA,IACA,WAAA;AAAA,IACA,kBAAA;AAAA,IACA,aAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA;AAAA,GACF,GAAI,MAAA;AAEJ,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,WAAW,MAAA,IAAU,WAAA,IAAe,CAAC,UAAA,IAAc,CAAC,oBAAA,EAAsB;AAC5E,MAAA,KAAK,aAAA,EAAc;AAAA,IACrB;AAAA,EACF,CAAA,EAAG,CAAC,OAAA,EAAS,MAAA,EAAQ,aAAa,UAAA,EAAY,oBAAA,EAAsB,aAAa,CAAC,CAAA;AAElF,EAAA,OAAO;AAAA,IACL,IAAA;AAAA,IACA,WAAA;AAAA,IACA,kBAAA;AAAA,IACA,aAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA;AAAA,GACF;AACF;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-query.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-query.ts"],"sourcesContent":["import { MastraClient } from '@mastra/client-js';\nimport type {
|
|
1
|
+
{"version":3,"file":"use-trace-query.es.js","sources":["../../../../src/domains/traces/hooks/use-trace-query.ts"],"sourcesContent":["import { MastraClient } from '@mastra/client-js';\nimport type { QueryTracesKeysetInput } from '@mastra/client-js';\nimport { useMastraClient } from '@mastra/react';\nimport { keepPreviousData, skipToken, useInfiniteQuery } from '@tanstack/react-query';\nimport { useEffect } from 'react';\nimport { useInView } from '@/hooks/use-in-view';\n\nexport const TRACE_QUERY_PER_PAGE = 25;\n\ntype TraceQueryResponse = Awaited<ReturnType<MastraClient['queryTraces']>>;\ntype TraceQueryCursorResponse = Extract<TraceQueryResponse, { page: { next: string | null } }>;\ntype TraceQueryTrace = TraceQueryResponse['traces'][number];\n\nexport type TraceQueryArgs = Omit<QueryTracesKeysetInput, 'page' | 'pagination'>;\n\nexport interface UseTraceQueryArgs {\n query: TraceQueryArgs | undefined;\n limit?: number;\n enabled?: boolean;\n refetchInterval?: number | false;\n refetchOnWindowFocus?: boolean;\n}\n\nexport interface UseTraceQueryReturn {\n data: TraceQueryTrace[] | undefined;\n hasNextPage: boolean;\n isFetchingNextPage: boolean;\n fetchNextPage: () => void;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n fetchStatus: 'idle' | 'fetching' | 'paused';\n isError: boolean;\n error: Error | null;\n refetch: () => void;\n setEndOfListElement: (node: HTMLDivElement | null) => void;\n}\n\nexport function getTraceQueryNextPageParam(lastPage: TraceQueryCursorResponse | undefined): string | undefined {\n return lastPage?.page.next ?? undefined;\n}\n\nexport function selectTraceQueryTraces(data: { pages: TraceQueryCursorResponse[] }): TraceQueryTrace[] {\n const seen = new Set<string>();\n return data.pages.flatMap(page =>\n page.traces.filter(trace => {\n if (seen.has(trace.traceId)) return false;\n seen.add(trace.traceId);\n return true;\n }),\n );\n}\n\n/** Queries traces with cursor pagination and viewport-driven loading. */\nexport function useTraceQuery({\n query,\n limit = TRACE_QUERY_PER_PAGE,\n enabled = true,\n refetchInterval,\n refetchOnWindowFocus,\n}: UseTraceQueryArgs): UseTraceQueryReturn {\n const client = useMastraClient();\n const { inView, setRef: setEndOfListElement } = useInView();\n const result = useInfiniteQuery<\n TraceQueryCursorResponse,\n Error,\n TraceQueryTrace[],\n readonly unknown[],\n string | undefined\n >({\n queryKey: ['trace-query', query, limit] as const,\n queryFn: query\n ? async ({ pageParam }) => {\n // Capability failures must reach the fallback without the SDK retrying 501 responses.\n const queryClient = new MastraClient({ ...client.options, retries: 0 });\n const response = await queryClient.queryTraces({ ...query, page: { limit, after: pageParam ?? null } });\n if ('page' in response) return response;\n throw new Error('Expected a cursor-paginated trace query response');\n }\n : skipToken,\n initialPageParam: undefined,\n getNextPageParam: getTraceQueryNextPageParam,\n select: selectTraceQueryTraces,\n retry: false,\n placeholderData: keepPreviousData,\n refetchInterval,\n refetchOnWindowFocus,\n enabled,\n });\n const {\n data,\n hasNextPage,\n isFetchingNextPage,\n fetchNextPage,\n isLoading,\n isFetching,\n isRefetching,\n fetchStatus,\n isError,\n error,\n refetch,\n isFetchNextPageError,\n } = result;\n\n useEffect(() => {\n if (enabled && inView && hasNextPage && !isFetching && !isFetchNextPageError) {\n void fetchNextPage();\n }\n }, [enabled, inView, hasNextPage, isFetching, isFetchNextPageError, fetchNextPage]);\n\n return {\n data,\n hasNextPage,\n isFetchingNextPage,\n fetchNextPage,\n isLoading,\n isFetching,\n isRefetching,\n fetchStatus,\n isError,\n error,\n refetch,\n setEndOfListElement,\n };\n}\n"],"names":[],"mappings":";;;;;;AAOO,MAAM,oBAAA,GAAuB;AA+B7B,SAAS,2BAA2B,QAAA,EAAoE;AAC7G,EAAA,OAAO,QAAA,EAAU,KAAK,IAAA,IAAQ,MAAA;AAChC;AAEO,SAAS,uBAAuB,IAAA,EAAgE;AACrG,EAAA,MAAM,IAAA,uBAAW,GAAA,EAAY;AAC7B,EAAA,OAAO,KAAK,KAAA,CAAM,OAAA;AAAA,IAAQ,CAAA,IAAA,KACxB,IAAA,CAAK,MAAA,CAAO,MAAA,CAAO,CAAA,KAAA,KAAS;AAC1B,MAAA,IAAI,IAAA,CAAK,GAAA,CAAI,KAAA,CAAM,OAAO,GAAG,OAAO,KAAA;AACpC,MAAA,IAAA,CAAK,GAAA,CAAI,MAAM,OAAO,CAAA;AACtB,MAAA,OAAO,IAAA;AAAA,IACT,CAAC;AAAA,GACH;AACF;AAGO,SAAS,aAAA,CAAc;AAAA,EAC5B,KAAA;AAAA,EACA,KAAA,GAAQ,oBAAA;AAAA,EACR,OAAA,GAAU,IAAA;AAAA,EACV,eAAA;AAAA,EACA;AACF,CAAA,EAA2C;AACzC,EAAA,MAAM,SAAS,eAAA,EAAgB;AAC/B,EAAA,MAAM,EAAE,MAAA,EAAQ,MAAA,EAAQ,mBAAA,KAAwB,SAAA,EAAU;AAC1D,EAAA,MAAM,SAAS,gBAAA,CAMb;AAAA,IACA,QAAA,EAAU,CAAC,aAAA,EAAe,KAAA,EAAO,KAAK,CAAA;AAAA,IACtC,OAAA,EAAS,KAAA,GACL,OAAO,EAAE,WAAU,KAAM;AAEvB,MAAA,MAAM,WAAA,GAAc,IAAI,YAAA,CAAa,EAAE,GAAG,MAAA,CAAO,OAAA,EAAS,OAAA,EAAS,CAAA,EAAG,CAAA;AACtE,MAAA,MAAM,QAAA,GAAW,MAAM,WAAA,CAAY,WAAA,CAAY,EAAE,GAAG,KAAA,EAAO,IAAA,EAAM,EAAE,KAAA,EAAO,KAAA,EAAO,SAAA,IAAa,IAAA,IAAQ,CAAA;AACtG,MAAA,IAAI,MAAA,IAAU,UAAU,OAAO,QAAA;AAC/B,MAAA,MAAM,IAAI,MAAM,kDAAkD,CAAA;AAAA,IACpE,CAAA,GACA,SAAA;AAAA,IACJ,gBAAA,EAAkB,MAAA;AAAA,IAClB,gBAAA,EAAkB,0BAAA;AAAA,IAClB,MAAA,EAAQ,sBAAA;AAAA,IACR,KAAA,EAAO,KAAA;AAAA,IACP,eAAA,EAAiB,gBAAA;AAAA,IACjB,eAAA;AAAA,IACA,oBAAA;AAAA,IACA;AAAA,GACD,CAAA;AACD,EAAA,MAAM;AAAA,IACJ,IAAA;AAAA,IACA,WAAA;AAAA,IACA,kBAAA;AAAA,IACA,aAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA;AAAA,GACF,GAAI,MAAA;AAEJ,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,WAAW,MAAA,IAAU,WAAA,IAAe,CAAC,UAAA,IAAc,CAAC,oBAAA,EAAsB;AAC5E,MAAA,KAAK,aAAA,EAAc;AAAA,IACrB;AAAA,EACF,CAAA,EAAG,CAAC,OAAA,EAAS,MAAA,EAAQ,aAAa,UAAA,EAAY,oBAAA,EAAsB,aAAa,CAAC,CAAA;AAElF,EAAA,OAAO;AAAA,IACL,IAAA;AAAA,IACA,WAAA;AAAA,IACA,kBAAA;AAAA,IACA,aAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
|
@@ -329,11 +329,7 @@ function useTraceUrlState(searchParams, setSearchParams, options) {
|
|
|
329
329
|
(prev) => {
|
|
330
330
|
const next = new URLSearchParams(prev);
|
|
331
331
|
next.delete(domains_traces_traceFilters.TRACE_LIST_MODE_PARAM);
|
|
332
|
-
|
|
333
|
-
next.delete(domains_traces_traceFilters.TRACE_STATUS_PARAM);
|
|
334
|
-
for (const fieldId of domains_traces_traceFilters.TRACE_PROPERTY_FILTER_FIELD_IDS) {
|
|
335
|
-
next.delete(domains_traces_traceFilters.TRACE_PROPERTY_FILTER_PARAM_BY_FIELD[fieldId]);
|
|
336
|
-
}
|
|
332
|
+
domains_traces_traceFilters.applyTracePropertyFilterTokens(next, []);
|
|
337
333
|
clearSelectionParams(next);
|
|
338
334
|
return next;
|
|
339
335
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-trace-url-state.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-url-state.tsx"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport type { TraceSpanView } from '../components/trace-data-panel-view';\nimport type { SpanTab, TraceDatePreset } from '../index';\nimport {\n ROOT_ENTITY_TYPE_OPTIONS,\n TRACE_ANCHOR_SPAN_ID_PARAM,\n TRACE_DATE_FROM_PARAM,\n TRACE_DATE_PRESET_PARAM,\n TRACE_DATE_PRESET_VALUES,\n TRACE_DATE_TO_PARAM,\n TRACE_PROPERTY_FILTER_FIELD_IDS,\n TRACE_LIST_MODE_PARAM,\n TRACE_LIST_MODE_VALUES,\n TRACE_PROPERTY_FILTER_PARAM_BY_FIELD,\n TRACE_ROOT_ENTITY_TYPE_PARAM,\n TRACE_STATUS_PARAM,\n TRACE_STATUS_VALUES,\n applyTracePropertyFilterTokens,\n getTracePropertyFilterTokens,\n} from '../trace-filters';\nimport type { EntityOptions, TraceListMode, TraceStatusFilter } from '../trace-filters';\nimport type { PropertyFilterToken } from '@/ds/components/PropertyFilter/types';\n\nconst TRACE_ID_PARAM = 'traceId';\nconst SPAN_ID_PARAM = 'spanId';\nconst TAB_PARAM = 'tab';\nconst SPAN_VIEW_PARAM = 'spanView';\nconst SCORE_ID_PARAM = 'scoreId';\nconst HIGHLIGHT_SPAN_IDS_PARAM = 'highlightSpanIds';\n\nconst DAY_MS = 24 * 60 * 60 * 1000;\nconst PRESET_MS: Partial<Record<TraceDatePreset, number>> = {\n 'last-24h': DAY_MS,\n 'last-3d': 3 * DAY_MS,\n 'last-7d': 7 * DAY_MS,\n 'last-14d': 14 * DAY_MS,\n 'last-30d': 30 * DAY_MS,\n};\n\n/** Mutates `params` in place to drop the featured trace/span/tab/score selection.\n * Used whenever a filter changes — selection no longer makes sense in the new result set. */\nfunction clearSelectionParams(params: URLSearchParams) {\n params.delete(TRACE_ID_PARAM);\n params.delete(SPAN_ID_PARAM);\n params.delete(TRACE_ANCHOR_SPAN_ID_PARAM);\n params.delete(TAB_PARAM);\n params.delete(SCORE_ID_PARAM);\n params.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n}\n\n/** Minimal interface compatible with react-router's `setSearchParams`. */\nexport type SetURLSearchParamsLike = (\n next: URLSearchParams | ((prev: URLSearchParams) => URLSearchParams),\n options?: { replace?: boolean; preventScrollReset?: boolean; state?: unknown },\n) => void;\n\nexport interface UseTraceUrlStateOptions {\n /** Called after `handleRemoveAll` clears all filter URL params. Use this to reset page-local\n * UI state (e.g. a \"group by thread\" toggle) without wrapping the handler. */\n onRemoveAll?: () => void;\n}\n\nexport interface UseTraceUrlStateResult {\n // Raw search params passed through for convenience\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParamsLike;\n\n // Date state (derived from URL)\n datePreset: TraceDatePreset;\n selectedDateFrom: Date | undefined;\n selectedDateTo: Date | undefined;\n /** Synchronously-updated ref of the latest preset. Used to ignore onDateChange callbacks\n * the date picker fires after a non-custom preset switch. */\n datePresetRef: React.MutableRefObject<TraceDatePreset>;\n\n // Selection state (derived from URL)\n traceIdParam: string | undefined;\n spanIdParam: string | undefined;\n /** Branch-mode only: the anchor span that defines the displayed subtree. Stable while the\n * user navigates between spans inside the panel (which only changes `spanIdParam`). */\n anchorSpanIdParam: string | undefined;\n spanTabParam: SpanTab | undefined;\n /** Which view the trace column shows; `tree` is the default and is not written to the URL. */\n spanViewParam: TraceSpanView;\n scoreIdParam: string | undefined;\n /** Span ids featured in the timeline (e.g. the spans behind a reconstructed message). Empty when unset. */\n highlightSpanIdsParam: string[];\n\n // Filter state (derived from URL)\n listMode: TraceListMode;\n selectedEntityOption: EntityOptions | undefined;\n selectedStatus: TraceStatusFilter | undefined;\n filterTokens: PropertyFilterToken[];\n\n // URL-modifying handlers\n /**\n * Selects a row. In traces mode pass just `traceId` (and optionally a `spanId` for an\n * initial span selection in the panel). In branches mode also pass `anchorSpanId` — the\n * branch identity, kept stable while the user navigates between spans inside the panel.\n * Branch rows are identified by (traceId, anchorSpanId); trace rows by traceId alone.\n */\n handleTraceClick: (traceId: string, spanId?: string, anchorSpanId?: string) => void;\n /** Convenience: clears the featured trace selection. Equivalent to `handleTraceClick('')`. */\n handleTraceClose: () => void;\n handleSpanChange: (spanId: string | null) => void;\n /** Convenience: clears the featured span selection. Equivalent to `handleSpanChange(null)`. */\n handleSpanClose: () => void;\n handleSpanTabChange: (tab: SpanTab) => void;\n handleSpanViewChange: (view: TraceSpanView) => void;\n /** Selects a span AND switches its panel tab in a single URL update. Use when both must change\n * from one interaction (e.g. \"Evaluate Trace\"). Calling `handleSpanChange` + `handleSpanTabChange`\n * separately races: each functional `setSearchParams` updater reads the same pre-update\n * `searchParams` snapshot, so the second navigation overwrites the first (last write wins) and one\n * of the two changes is lost on the first click. */\n handleSpanChangeWithTab: (spanId: string, tab: SpanTab) => void;\n handleScoreChange: (scoreId: string | null) => void;\n /** Features `spanIds` in the timeline and selects the first one. An empty array clears the highlight. */\n handleHighlightSpans: (spanIds: string[]) => void;\n /** Switches the list view between traces and branches. Clears the current selection. */\n handleListModeChange: (mode: TraceListMode) => void;\n handleFilterTokensChange: (nextTokens: PropertyFilterToken[]) => void;\n handleDateChange: (value: Date | undefined, type: 'from' | 'to') => void;\n /** Writes both ends of a custom range in one URL update (two `handleDateChange` calls in the\n * same tick would clobber each other through react-router's closure-bound setter). */\n handleDateRangeChange: (from: Date | undefined, to: Date | undefined) => void;\n handleDatePresetChange: (preset: TraceDatePreset) => void;\n handleRemoveAll: () => void;\n\n /** Lower-level helper used by `handleClear`: writes a token set and clears the trace/span selection. */\n applyFilterTokens: (tokens: PropertyFilterToken[]) => void;\n}\n\n/**\n * Owns all URL-derived state and URL-modifying handlers for the traces page. Routing-agnostic —\n * pass `searchParams` and `setSearchParams` from whichever router the consumer uses.\n *\n * Stays focused on URL state: localStorage save/restore, filter discovery, and the error-view\n * short-circuit are intentionally NOT part of this hook so consumers can swap them independently.\n */\nexport function useTraceUrlState(\n searchParams: URLSearchParams,\n setSearchParams: SetURLSearchParamsLike,\n options?: UseTraceUrlStateOptions,\n): UseTraceUrlStateResult {\n const { onRemoveAll } = options ?? {};\n const datePreset = useMemo<TraceDatePreset>(() => {\n const value = searchParams.get(TRACE_DATE_PRESET_PARAM);\n return value && value !== 'all' && TRACE_DATE_PRESET_VALUES.has(value as TraceDatePreset)\n ? (value as TraceDatePreset)\n : 'last-7d';\n }, [searchParams]);\n\n const dateFromParamRaw = searchParams.get(TRACE_DATE_FROM_PARAM);\n const dateToParamRaw = searchParams.get(TRACE_DATE_TO_PARAM);\n\n const selectedDateFrom = useMemo(() => {\n if (datePreset === 'custom') {\n if (!dateFromParamRaw) return undefined;\n const parsed = new Date(dateFromParamRaw);\n return Number.isNaN(parsed.getTime()) ? undefined : parsed;\n }\n // 'all' has no entry in PRESET_MS, so it falls out as an open-ended window.\n const ms = PRESET_MS[datePreset];\n return ms ? new Date(Date.now() - ms) : undefined;\n }, [datePreset, dateFromParamRaw]);\n\n const selectedDateTo = useMemo(() => {\n if (datePreset !== 'custom' || !dateToParamRaw) return undefined;\n const parsed = new Date(dateToParamRaw);\n return Number.isNaN(parsed.getTime()) ? undefined : parsed;\n }, [datePreset, dateToParamRaw]);\n\n // Track the latest preset synchronously so onDateChange callbacks that follow\n // a non-custom preset switch can be ignored (router setSearchParams captures\n // searchParams in its closure, so multiple synchronous calls would otherwise\n // clobber each other).\n const datePresetRef = useRef(datePreset);\n datePresetRef.current = datePreset;\n\n const traceIdParam = searchParams.get(TRACE_ID_PARAM) || undefined;\n const spanIdParam = searchParams.get(SPAN_ID_PARAM) || undefined;\n /** Branch-mode only: identifies which branch (anchor span) the panel is viewing. Stays put\n * while the user navigates between spans inside the panel (which only changes spanIdParam). */\n const anchorSpanIdParam = searchParams.get(TRACE_ANCHOR_SPAN_ID_PARAM) || undefined;\n const tabParam = searchParams.get(TAB_PARAM);\n const spanTabParam: SpanTab | undefined =\n tabParam === 'feedback' ? 'feedback' : tabParam === 'details' ? 'details' : undefined;\n const spanViewParam: TraceSpanView = searchParams.get(SPAN_VIEW_PARAM) === 'timeline' ? 'timeline' : 'tree';\n const scoreIdParam = searchParams.get(SCORE_ID_PARAM) || undefined;\n const highlightSpanIdsRaw = searchParams.get(HIGHLIGHT_SPAN_IDS_PARAM);\n const highlightSpanIdsParam = useMemo(\n () => (highlightSpanIdsRaw ? highlightSpanIdsRaw.split(',').filter(Boolean) : []),\n [highlightSpanIdsRaw],\n );\n\n const listMode = useMemo<TraceListMode>(() => {\n const value = searchParams.get(TRACE_LIST_MODE_PARAM);\n return value && TRACE_LIST_MODE_VALUES.has(value as TraceListMode) ? (value as TraceListMode) : 'traces';\n }, [searchParams]);\n const selectedEntityOption = useMemo(\n () => ROOT_ENTITY_TYPE_OPTIONS.find(option => option.entityType === searchParams.get(TRACE_ROOT_ENTITY_TYPE_PARAM)),\n [searchParams],\n );\n const selectedStatus = useMemo<TraceStatusFilter | undefined>(() => {\n const value = searchParams.get(TRACE_STATUS_PARAM);\n return value && TRACE_STATUS_VALUES.has(value as TraceStatusFilter) ? (value as TraceStatusFilter) : undefined;\n }, [searchParams]);\n const filterTokens = useMemo(() => getTracePropertyFilterTokens(searchParams), [searchParams]);\n\n const handleTraceClick = useCallback(\n (traceId: string, spanId?: string, anchorSpanId?: string) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (traceId) {\n next.set(TRACE_ID_PARAM, traceId);\n } else {\n next.delete(TRACE_ID_PARAM);\n }\n if (spanId) {\n next.set(SPAN_ID_PARAM, spanId);\n } else {\n next.delete(SPAN_ID_PARAM);\n }\n if (anchorSpanId) {\n next.set(TRACE_ANCHOR_SPAN_ID_PARAM, anchorSpanId);\n } else {\n next.delete(TRACE_ANCHOR_SPAN_ID_PARAM);\n }\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n next.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleTraceClose = useCallback(() => handleTraceClick(''), [handleTraceClick]);\n\n const handleSpanChange = useCallback(\n (spanId: string | null) => {\n const currentSpanId = searchParams.get(SPAN_ID_PARAM) || null;\n if (spanId === currentSpanId) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (spanId) {\n next.set(SPAN_ID_PARAM, spanId);\n } else {\n next.delete(SPAN_ID_PARAM);\n }\n // Tab + score are per-span; they'd point at the previous span's context otherwise.\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleSpanClose = useCallback(() => handleSpanChange(null), [handleSpanChange]);\n\n const handleSpanViewChange = useCallback(\n (view: TraceSpanView) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (view === 'timeline') {\n next.set(SPAN_VIEW_PARAM, view);\n } else {\n next.delete(SPAN_VIEW_PARAM);\n }\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleSpanTabChange = useCallback(\n (tab: SpanTab) => {\n const currentTab = searchParams.get(TAB_PARAM) || null;\n if (tab === currentTab) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (tab && tab !== 'details') {\n next.set(TAB_PARAM, tab);\n } else {\n next.delete(TAB_PARAM);\n }\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleSpanChangeWithTab = useCallback(\n (spanId: string, tab: SpanTab) => {\n const nextTab = tab && tab !== 'details' ? tab : null;\n // No-op guard (same pattern as the sibling handlers): skip the navigation only when span,\n // tab AND score are already exactly what this call would produce.\n const isNoOp =\n spanId === (searchParams.get(SPAN_ID_PARAM) || null) &&\n nextTab === (searchParams.get(TAB_PARAM) || null) &&\n !searchParams.get(SCORE_ID_PARAM);\n if (isNoOp) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n next.set(SPAN_ID_PARAM, spanId);\n if (nextTab) {\n next.set(TAB_PARAM, nextTab);\n } else {\n next.delete(TAB_PARAM);\n }\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleScoreChange = useCallback(\n (scoreId: string | null) => {\n const currentScoreId = searchParams.get(SCORE_ID_PARAM) || null;\n if (scoreId === currentScoreId) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (scoreId) {\n next.set(SCORE_ID_PARAM, scoreId);\n } else {\n next.delete(SCORE_ID_PARAM);\n }\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleHighlightSpans = useCallback(\n (spanIds: string[]) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n const [firstSpanId] = spanIds;\n if (!firstSpanId) {\n next.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n return next;\n }\n next.set(HIGHLIGHT_SPAN_IDS_PARAM, spanIds.join(','));\n // Open the detail panel on the first highlighted span.\n next.set(SPAN_ID_PARAM, firstSpanId);\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const applyFilterTokens = useCallback(\n (tokens: PropertyFilterToken[]) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n // applyTracePropertyFilterTokens wipes all filter params (including\n // rootEntityType / status) and re-adds them in `nextTokens` order so\n // URL insertion order == filter creation order.\n applyTracePropertyFilterTokens(next, tokens);\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleFilterTokensChange = applyFilterTokens;\n\n // Only relevant for 'custom' — the picker also fires onDateChange after a\n // non-custom preset switch, which we ignore to avoid racing URL updates.\n const handleDateChange = useCallback(\n (value: Date | undefined, type: 'from' | 'to') => {\n if (datePresetRef.current !== 'custom') return;\n const param = type === 'from' ? TRACE_DATE_FROM_PARAM : TRACE_DATE_TO_PARAM;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (value) {\n next.set(param, value.toISOString());\n } else {\n next.delete(param);\n }\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleDateRangeChange = useCallback(\n (from: Date | undefined, to: Date | undefined) => {\n if (datePresetRef.current !== 'custom') return;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (from) next.set(TRACE_DATE_FROM_PARAM, from.toISOString());\n else next.delete(TRACE_DATE_FROM_PARAM);\n if (to) next.set(TRACE_DATE_TO_PARAM, to.toISOString());\n else next.delete(TRACE_DATE_TO_PARAM);\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleDatePresetChange = useCallback(\n (preset: TraceDatePreset) => {\n // Update ref synchronously so any onDateChange fired by the picker in the\n // same tick (for non-custom presets) sees the new value and skips.\n datePresetRef.current = preset;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (preset === 'last-7d') {\n // Default — clear all date params.\n next.delete(TRACE_DATE_PRESET_PARAM);\n next.delete(TRACE_DATE_FROM_PARAM);\n next.delete(TRACE_DATE_TO_PARAM);\n } else if (preset === 'custom') {\n next.set(TRACE_DATE_PRESET_PARAM, 'custom');\n // Keep existing dateFrom/dateTo for the user to adjust.\n } else {\n // `last-*` or 'all' — only the preset is stored; dates are derived.\n next.set(TRACE_DATE_PRESET_PARAM, preset);\n next.delete(TRACE_DATE_FROM_PARAM);\n next.delete(TRACE_DATE_TO_PARAM);\n }\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleListModeChange = useCallback(\n (mode: TraceListMode) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (mode === 'traces') {\n next.delete(TRACE_LIST_MODE_PARAM);\n } else {\n next.set(TRACE_LIST_MODE_PARAM, mode);\n }\n // Clear selection: rows from the previous mode don't map cleanly to the new mode.\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleRemoveAll = useCallback(() => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n next.delete(TRACE_LIST_MODE_PARAM);\n next.delete(TRACE_ROOT_ENTITY_TYPE_PARAM);\n next.delete(TRACE_STATUS_PARAM);\n for (const fieldId of TRACE_PROPERTY_FILTER_FIELD_IDS) {\n next.delete(TRACE_PROPERTY_FILTER_PARAM_BY_FIELD[fieldId]);\n }\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n onRemoveAll?.();\n }, [setSearchParams, onRemoveAll]);\n\n return {\n searchParams,\n setSearchParams,\n datePreset,\n selectedDateFrom,\n selectedDateTo,\n datePresetRef,\n traceIdParam,\n spanIdParam,\n anchorSpanIdParam,\n spanTabParam,\n spanViewParam,\n scoreIdParam,\n highlightSpanIdsParam,\n listMode,\n selectedEntityOption,\n selectedStatus,\n filterTokens,\n handleTraceClick,\n handleTraceClose,\n handleSpanChange,\n handleSpanClose,\n handleSpanTabChange,\n handleSpanViewChange,\n handleSpanChangeWithTab,\n handleScoreChange,\n handleHighlightSpans,\n handleListModeChange,\n handleFilterTokensChange,\n handleDateChange,\n handleDateRangeChange,\n handleDatePresetChange,\n handleRemoveAll,\n applyFilterTokens,\n };\n}\n"],"names":["TRACE_ANCHOR_SPAN_ID_PARAM","useMemo","TRACE_DATE_PRESET_PARAM","TRACE_DATE_PRESET_VALUES","TRACE_DATE_FROM_PARAM","TRACE_DATE_TO_PARAM","useRef","TRACE_LIST_MODE_PARAM","TRACE_LIST_MODE_VALUES","ROOT_ENTITY_TYPE_OPTIONS","TRACE_ROOT_ENTITY_TYPE_PARAM","TRACE_STATUS_PARAM","TRACE_STATUS_VALUES","getTracePropertyFilterTokens","useCallback","applyTracePropertyFilterTokens","TRACE_PROPERTY_FILTER_FIELD_IDS","TRACE_PROPERTY_FILTER_PARAM_BY_FIELD"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-trace-url-state.cjs.js","sources":["../../../../src/domains/traces/hooks/use-trace-url-state.tsx"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport type { TraceSpanView } from '../components/trace-data-panel-view';\nimport type { SpanTab, TraceDatePreset } from '../index';\nimport {\n ROOT_ENTITY_TYPE_OPTIONS,\n TRACE_ANCHOR_SPAN_ID_PARAM,\n TRACE_DATE_FROM_PARAM,\n TRACE_DATE_PRESET_PARAM,\n TRACE_DATE_PRESET_VALUES,\n TRACE_DATE_TO_PARAM,\n TRACE_LIST_MODE_PARAM,\n TRACE_LIST_MODE_VALUES,\n TRACE_ROOT_ENTITY_TYPE_PARAM,\n TRACE_STATUS_PARAM,\n TRACE_STATUS_VALUES,\n applyTracePropertyFilterTokens,\n getTracePropertyFilterTokens,\n} from '../trace-filters';\nimport type { EntityOptions, TraceFilterToken, TraceListMode, TraceStatusFilter } from '../trace-filters';\n\nconst TRACE_ID_PARAM = 'traceId';\nconst SPAN_ID_PARAM = 'spanId';\nconst TAB_PARAM = 'tab';\nconst SPAN_VIEW_PARAM = 'spanView';\nconst SCORE_ID_PARAM = 'scoreId';\nconst HIGHLIGHT_SPAN_IDS_PARAM = 'highlightSpanIds';\n\nconst DAY_MS = 24 * 60 * 60 * 1000;\nconst PRESET_MS: Partial<Record<TraceDatePreset, number>> = {\n 'last-24h': DAY_MS,\n 'last-3d': 3 * DAY_MS,\n 'last-7d': 7 * DAY_MS,\n 'last-14d': 14 * DAY_MS,\n 'last-30d': 30 * DAY_MS,\n};\n\n/** Mutates `params` in place to drop the featured trace/span/tab/score selection.\n * Used whenever a filter changes — selection no longer makes sense in the new result set. */\nfunction clearSelectionParams(params: URLSearchParams) {\n params.delete(TRACE_ID_PARAM);\n params.delete(SPAN_ID_PARAM);\n params.delete(TRACE_ANCHOR_SPAN_ID_PARAM);\n params.delete(TAB_PARAM);\n params.delete(SCORE_ID_PARAM);\n params.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n}\n\n/** Minimal interface compatible with react-router's `setSearchParams`. */\nexport type SetURLSearchParamsLike = (\n next: URLSearchParams | ((prev: URLSearchParams) => URLSearchParams),\n options?: { replace?: boolean; preventScrollReset?: boolean; state?: unknown },\n) => void;\n\nexport interface UseTraceUrlStateOptions {\n /** Called after `handleRemoveAll` clears all filter URL params. Use this to reset page-local\n * UI state (e.g. a \"group by thread\" toggle) without wrapping the handler. */\n onRemoveAll?: () => void;\n}\n\nexport interface UseTraceUrlStateResult {\n // Raw search params passed through for convenience\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParamsLike;\n\n // Date state (derived from URL)\n datePreset: TraceDatePreset;\n selectedDateFrom: Date | undefined;\n selectedDateTo: Date | undefined;\n /** Synchronously-updated ref of the latest preset. Used to ignore onDateChange callbacks\n * the date picker fires after a non-custom preset switch. */\n datePresetRef: React.MutableRefObject<TraceDatePreset>;\n\n // Selection state (derived from URL)\n traceIdParam: string | undefined;\n spanIdParam: string | undefined;\n /** Branch-mode only: the anchor span that defines the displayed subtree. Stable while the\n * user navigates between spans inside the panel (which only changes `spanIdParam`). */\n anchorSpanIdParam: string | undefined;\n spanTabParam: SpanTab | undefined;\n /** Which view the trace column shows; `tree` is the default and is not written to the URL. */\n spanViewParam: TraceSpanView;\n scoreIdParam: string | undefined;\n /** Span ids featured in the timeline (e.g. the spans behind a reconstructed message). Empty when unset. */\n highlightSpanIdsParam: string[];\n\n // Filter state (derived from URL)\n listMode: TraceListMode;\n selectedEntityOption: EntityOptions | undefined;\n selectedStatus: TraceStatusFilter | undefined;\n filterTokens: TraceFilterToken[];\n\n // URL-modifying handlers\n /**\n * Selects a row. In traces mode pass just `traceId` (and optionally a `spanId` for an\n * initial span selection in the panel). In branches mode also pass `anchorSpanId` — the\n * branch identity, kept stable while the user navigates between spans inside the panel.\n * Branch rows are identified by (traceId, anchorSpanId); trace rows by traceId alone.\n */\n handleTraceClick: (traceId: string, spanId?: string, anchorSpanId?: string) => void;\n /** Convenience: clears the featured trace selection. Equivalent to `handleTraceClick('')`. */\n handleTraceClose: () => void;\n handleSpanChange: (spanId: string | null) => void;\n /** Convenience: clears the featured span selection. Equivalent to `handleSpanChange(null)`. */\n handleSpanClose: () => void;\n handleSpanTabChange: (tab: SpanTab) => void;\n handleSpanViewChange: (view: TraceSpanView) => void;\n /** Selects a span AND switches its panel tab in a single URL update. Use when both must change\n * from one interaction (e.g. \"Evaluate Trace\"). Calling `handleSpanChange` + `handleSpanTabChange`\n * separately races: each functional `setSearchParams` updater reads the same pre-update\n * `searchParams` snapshot, so the second navigation overwrites the first (last write wins) and one\n * of the two changes is lost on the first click. */\n handleSpanChangeWithTab: (spanId: string, tab: SpanTab) => void;\n handleScoreChange: (scoreId: string | null) => void;\n /** Features `spanIds` in the timeline and selects the first one. An empty array clears the highlight. */\n handleHighlightSpans: (spanIds: string[]) => void;\n /** Switches the list view between traces and branches. Clears the current selection. */\n handleListModeChange: (mode: TraceListMode) => void;\n handleFilterTokensChange: (nextTokens: TraceFilterToken[]) => void;\n handleDateChange: (value: Date | undefined, type: 'from' | 'to') => void;\n /** Writes both ends of a custom range in one URL update (two `handleDateChange` calls in the\n * same tick would clobber each other through react-router's closure-bound setter). */\n handleDateRangeChange: (from: Date | undefined, to: Date | undefined) => void;\n handleDatePresetChange: (preset: TraceDatePreset) => void;\n handleRemoveAll: () => void;\n\n /** Lower-level helper used by `handleClear`: writes a token set and clears the trace/span selection. */\n applyFilterTokens: (tokens: TraceFilterToken[]) => void;\n}\n\n/**\n * Owns all URL-derived state and URL-modifying handlers for the traces page. Routing-agnostic —\n * pass `searchParams` and `setSearchParams` from whichever router the consumer uses.\n *\n * Stays focused on URL state: localStorage save/restore, filter discovery, and the error-view\n * short-circuit are intentionally NOT part of this hook so consumers can swap them independently.\n */\nexport function useTraceUrlState(\n searchParams: URLSearchParams,\n setSearchParams: SetURLSearchParamsLike,\n options?: UseTraceUrlStateOptions,\n): UseTraceUrlStateResult {\n const { onRemoveAll } = options ?? {};\n const datePreset = useMemo<TraceDatePreset>(() => {\n const value = searchParams.get(TRACE_DATE_PRESET_PARAM);\n return value && value !== 'all' && TRACE_DATE_PRESET_VALUES.has(value as TraceDatePreset)\n ? (value as TraceDatePreset)\n : 'last-7d';\n }, [searchParams]);\n\n const dateFromParamRaw = searchParams.get(TRACE_DATE_FROM_PARAM);\n const dateToParamRaw = searchParams.get(TRACE_DATE_TO_PARAM);\n\n const selectedDateFrom = useMemo(() => {\n if (datePreset === 'custom') {\n if (!dateFromParamRaw) return undefined;\n const parsed = new Date(dateFromParamRaw);\n return Number.isNaN(parsed.getTime()) ? undefined : parsed;\n }\n // 'all' has no entry in PRESET_MS, so it falls out as an open-ended window.\n const ms = PRESET_MS[datePreset];\n return ms ? new Date(Date.now() - ms) : undefined;\n }, [datePreset, dateFromParamRaw]);\n\n const selectedDateTo = useMemo(() => {\n if (datePreset !== 'custom' || !dateToParamRaw) return undefined;\n const parsed = new Date(dateToParamRaw);\n return Number.isNaN(parsed.getTime()) ? undefined : parsed;\n }, [datePreset, dateToParamRaw]);\n\n // Track the latest preset synchronously so onDateChange callbacks that follow\n // a non-custom preset switch can be ignored (router setSearchParams captures\n // searchParams in its closure, so multiple synchronous calls would otherwise\n // clobber each other).\n const datePresetRef = useRef(datePreset);\n datePresetRef.current = datePreset;\n\n const traceIdParam = searchParams.get(TRACE_ID_PARAM) || undefined;\n const spanIdParam = searchParams.get(SPAN_ID_PARAM) || undefined;\n /** Branch-mode only: identifies which branch (anchor span) the panel is viewing. Stays put\n * while the user navigates between spans inside the panel (which only changes spanIdParam). */\n const anchorSpanIdParam = searchParams.get(TRACE_ANCHOR_SPAN_ID_PARAM) || undefined;\n const tabParam = searchParams.get(TAB_PARAM);\n const spanTabParam: SpanTab | undefined =\n tabParam === 'feedback' ? 'feedback' : tabParam === 'details' ? 'details' : undefined;\n const spanViewParam: TraceSpanView = searchParams.get(SPAN_VIEW_PARAM) === 'timeline' ? 'timeline' : 'tree';\n const scoreIdParam = searchParams.get(SCORE_ID_PARAM) || undefined;\n const highlightSpanIdsRaw = searchParams.get(HIGHLIGHT_SPAN_IDS_PARAM);\n const highlightSpanIdsParam = useMemo(\n () => (highlightSpanIdsRaw ? highlightSpanIdsRaw.split(',').filter(Boolean) : []),\n [highlightSpanIdsRaw],\n );\n\n const listMode = useMemo<TraceListMode>(() => {\n const value = searchParams.get(TRACE_LIST_MODE_PARAM);\n return value && TRACE_LIST_MODE_VALUES.has(value as TraceListMode) ? (value as TraceListMode) : 'traces';\n }, [searchParams]);\n const selectedEntityOption = useMemo(\n () => ROOT_ENTITY_TYPE_OPTIONS.find(option => option.entityType === searchParams.get(TRACE_ROOT_ENTITY_TYPE_PARAM)),\n [searchParams],\n );\n const selectedStatus = useMemo<TraceStatusFilter | undefined>(() => {\n const value = searchParams.get(TRACE_STATUS_PARAM);\n return value && TRACE_STATUS_VALUES.has(value as TraceStatusFilter) ? (value as TraceStatusFilter) : undefined;\n }, [searchParams]);\n const filterTokens = useMemo(() => getTracePropertyFilterTokens(searchParams), [searchParams]);\n\n const handleTraceClick = useCallback(\n (traceId: string, spanId?: string, anchorSpanId?: string) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (traceId) {\n next.set(TRACE_ID_PARAM, traceId);\n } else {\n next.delete(TRACE_ID_PARAM);\n }\n if (spanId) {\n next.set(SPAN_ID_PARAM, spanId);\n } else {\n next.delete(SPAN_ID_PARAM);\n }\n if (anchorSpanId) {\n next.set(TRACE_ANCHOR_SPAN_ID_PARAM, anchorSpanId);\n } else {\n next.delete(TRACE_ANCHOR_SPAN_ID_PARAM);\n }\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n next.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleTraceClose = useCallback(() => handleTraceClick(''), [handleTraceClick]);\n\n const handleSpanChange = useCallback(\n (spanId: string | null) => {\n const currentSpanId = searchParams.get(SPAN_ID_PARAM) || null;\n if (spanId === currentSpanId) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (spanId) {\n next.set(SPAN_ID_PARAM, spanId);\n } else {\n next.delete(SPAN_ID_PARAM);\n }\n // Tab + score are per-span; they'd point at the previous span's context otherwise.\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleSpanClose = useCallback(() => handleSpanChange(null), [handleSpanChange]);\n\n const handleSpanViewChange = useCallback(\n (view: TraceSpanView) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (view === 'timeline') {\n next.set(SPAN_VIEW_PARAM, view);\n } else {\n next.delete(SPAN_VIEW_PARAM);\n }\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleSpanTabChange = useCallback(\n (tab: SpanTab) => {\n const currentTab = searchParams.get(TAB_PARAM) || null;\n if (tab === currentTab) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (tab && tab !== 'details') {\n next.set(TAB_PARAM, tab);\n } else {\n next.delete(TAB_PARAM);\n }\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleSpanChangeWithTab = useCallback(\n (spanId: string, tab: SpanTab) => {\n const nextTab = tab && tab !== 'details' ? tab : null;\n // No-op guard (same pattern as the sibling handlers): skip the navigation only when span,\n // tab AND score are already exactly what this call would produce.\n const isNoOp =\n spanId === (searchParams.get(SPAN_ID_PARAM) || null) &&\n nextTab === (searchParams.get(TAB_PARAM) || null) &&\n !searchParams.get(SCORE_ID_PARAM);\n if (isNoOp) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n next.set(SPAN_ID_PARAM, spanId);\n if (nextTab) {\n next.set(TAB_PARAM, nextTab);\n } else {\n next.delete(TAB_PARAM);\n }\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleScoreChange = useCallback(\n (scoreId: string | null) => {\n const currentScoreId = searchParams.get(SCORE_ID_PARAM) || null;\n if (scoreId === currentScoreId) return;\n\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (scoreId) {\n next.set(SCORE_ID_PARAM, scoreId);\n } else {\n next.delete(SCORE_ID_PARAM);\n }\n return next;\n },\n { replace: true },\n );\n },\n [searchParams, setSearchParams],\n );\n\n const handleHighlightSpans = useCallback(\n (spanIds: string[]) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n const [firstSpanId] = spanIds;\n if (!firstSpanId) {\n next.delete(HIGHLIGHT_SPAN_IDS_PARAM);\n return next;\n }\n next.set(HIGHLIGHT_SPAN_IDS_PARAM, spanIds.join(','));\n // Open the detail panel on the first highlighted span.\n next.set(SPAN_ID_PARAM, firstSpanId);\n next.delete(TAB_PARAM);\n next.delete(SCORE_ID_PARAM);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const applyFilterTokens = useCallback(\n (tokens: TraceFilterToken[]) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n // applyTracePropertyFilterTokens wipes all filter params (including\n // rootEntityType / status) and re-adds them in `nextTokens` order so\n // URL insertion order == filter creation order.\n applyTracePropertyFilterTokens(next, tokens);\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleFilterTokensChange = applyFilterTokens;\n\n // Only relevant for 'custom' — the picker also fires onDateChange after a\n // non-custom preset switch, which we ignore to avoid racing URL updates.\n const handleDateChange = useCallback(\n (value: Date | undefined, type: 'from' | 'to') => {\n if (datePresetRef.current !== 'custom') return;\n const param = type === 'from' ? TRACE_DATE_FROM_PARAM : TRACE_DATE_TO_PARAM;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (value) {\n next.set(param, value.toISOString());\n } else {\n next.delete(param);\n }\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleDateRangeChange = useCallback(\n (from: Date | undefined, to: Date | undefined) => {\n if (datePresetRef.current !== 'custom') return;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (from) next.set(TRACE_DATE_FROM_PARAM, from.toISOString());\n else next.delete(TRACE_DATE_FROM_PARAM);\n if (to) next.set(TRACE_DATE_TO_PARAM, to.toISOString());\n else next.delete(TRACE_DATE_TO_PARAM);\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleDatePresetChange = useCallback(\n (preset: TraceDatePreset) => {\n // Update ref synchronously so any onDateChange fired by the picker in the\n // same tick (for non-custom presets) sees the new value and skips.\n datePresetRef.current = preset;\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (preset === 'last-7d') {\n // Default — clear all date params.\n next.delete(TRACE_DATE_PRESET_PARAM);\n next.delete(TRACE_DATE_FROM_PARAM);\n next.delete(TRACE_DATE_TO_PARAM);\n } else if (preset === 'custom') {\n next.set(TRACE_DATE_PRESET_PARAM, 'custom');\n // Keep existing dateFrom/dateTo for the user to adjust.\n } else {\n // `last-*` or 'all' — only the preset is stored; dates are derived.\n next.set(TRACE_DATE_PRESET_PARAM, preset);\n next.delete(TRACE_DATE_FROM_PARAM);\n next.delete(TRACE_DATE_TO_PARAM);\n }\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleListModeChange = useCallback(\n (mode: TraceListMode) => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n if (mode === 'traces') {\n next.delete(TRACE_LIST_MODE_PARAM);\n } else {\n next.set(TRACE_LIST_MODE_PARAM, mode);\n }\n // Clear selection: rows from the previous mode don't map cleanly to the new mode.\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n },\n [setSearchParams],\n );\n\n const handleRemoveAll = useCallback(() => {\n setSearchParams(\n prev => {\n const next = new URLSearchParams(prev);\n next.delete(TRACE_LIST_MODE_PARAM);\n // Wipes rootEntityType/status, every filter* param, their `.op` siblings and metadata params.\n applyTracePropertyFilterTokens(next, []);\n clearSelectionParams(next);\n return next;\n },\n { replace: true },\n );\n onRemoveAll?.();\n }, [setSearchParams, onRemoveAll]);\n\n return {\n searchParams,\n setSearchParams,\n datePreset,\n selectedDateFrom,\n selectedDateTo,\n datePresetRef,\n traceIdParam,\n spanIdParam,\n anchorSpanIdParam,\n spanTabParam,\n spanViewParam,\n scoreIdParam,\n highlightSpanIdsParam,\n listMode,\n selectedEntityOption,\n selectedStatus,\n filterTokens,\n handleTraceClick,\n handleTraceClose,\n handleSpanChange,\n handleSpanClose,\n handleSpanTabChange,\n handleSpanViewChange,\n handleSpanChangeWithTab,\n handleScoreChange,\n handleHighlightSpans,\n handleListModeChange,\n handleFilterTokensChange,\n handleDateChange,\n handleDateRangeChange,\n handleDatePresetChange,\n handleRemoveAll,\n applyFilterTokens,\n };\n}\n"],"names":["TRACE_ANCHOR_SPAN_ID_PARAM","useMemo","TRACE_DATE_PRESET_PARAM","TRACE_DATE_PRESET_VALUES","TRACE_DATE_FROM_PARAM","TRACE_DATE_TO_PARAM","useRef","TRACE_LIST_MODE_PARAM","TRACE_LIST_MODE_VALUES","ROOT_ENTITY_TYPE_OPTIONS","TRACE_ROOT_ENTITY_TYPE_PARAM","TRACE_STATUS_PARAM","TRACE_STATUS_VALUES","getTracePropertyFilterTokens","useCallback","applyTracePropertyFilterTokens"],"mappings":"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"}
|