@mastra/playground-ui 56.0.0 → 57.0.0-alpha.1
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/dist/{Button-CVewl8nT.cjs → Button-C0DBEBcJ.cjs} +12 -5
- package/dist/Button-C0DBEBcJ.cjs.map +1 -0
- package/dist/{Button-cWcBEd-G.js → Button-C9cvaVFG.js} +13 -6
- package/dist/Button-C9cvaVFG.js.map +1 -0
- package/dist/{Card-DEvGFj-Z.js → Card-B_buJ5yF.js} +3 -3
- package/dist/{Card-DEvGFj-Z.js.map → Card-B_buJ5yF.js.map} +1 -1
- package/dist/{Card-D0kFp9j9.cjs → Card-DwGasv0K.cjs} +3 -3
- package/dist/{Card-D0kFp9j9.cjs.map → Card-DwGasv0K.cjs.map} +1 -1
- package/dist/{EmptyState-UWXhBp5U.js → EmptyState-B6cyZw6m.js} +12 -6
- package/dist/EmptyState-B6cyZw6m.js.map +1 -0
- package/dist/{EmptyState-CdRjFB06.cjs → EmptyState-DiSP6UIy.cjs} +12 -6
- package/dist/EmptyState-DiSP6UIy.cjs.map +1 -0
- package/dist/ErrorState-B0839u-q.cjs +21 -0
- package/dist/ErrorState-B0839u-q.cjs.map +1 -0
- package/dist/ErrorState-HyRJdaA2.js +19 -0
- package/dist/ErrorState-HyRJdaA2.js.map +1 -0
- package/dist/Header-BVnFQlzE.js +31 -0
- package/dist/Header-BVnFQlzE.js.map +1 -0
- package/dist/Header-CGjhJ0nQ.cjs +36 -0
- package/dist/Header-CGjhJ0nQ.cjs.map +1 -0
- package/dist/{Notice-Cjti0e0j.cjs → Notice-CoFjo8O6.cjs} +3 -3
- package/dist/{Notice-Cjti0e0j.cjs.map → Notice-CoFjo8O6.cjs.map} +1 -1
- package/dist/{Notice-Ah-84yi6.js → Notice-DUdQkUqH.js} +3 -3
- package/dist/{Notice-Ah-84yi6.js.map → Notice-DUdQkUqH.js.map} +1 -1
- package/dist/{PermissionDenied-B6TSGolC.js → PermissionDenied-CTqnE57B.js} +11 -6
- package/dist/PermissionDenied-CTqnE57B.js.map +1 -0
- package/dist/{PermissionDenied-Dz5qXpQj.cjs → PermissionDenied-fdVmTjjf.cjs} +11 -6
- package/dist/PermissionDenied-fdVmTjjf.cjs.map +1 -0
- package/dist/{SessionExpired-CF0BGNo_.cjs → SessionExpired-CFGTqnU5.cjs} +5 -6
- package/dist/SessionExpired-CFGTqnU5.cjs.map +1 -0
- package/dist/{SessionExpired-Bq5LcsDu.js → SessionExpired-COK6flhT.js} +5 -6
- package/dist/SessionExpired-COK6flhT.js.map +1 -0
- package/dist/ask-user-3fufbFt8.cjs +216 -0
- package/dist/ask-user-3fufbFt8.cjs.map +1 -0
- package/dist/ask-user-CvCMHkhI.js +206 -0
- package/dist/ask-user-CvCMHkhI.js.map +1 -0
- package/dist/buttons-group-CoZP3lJt.cjs +59 -0
- package/dist/buttons-group-CoZP3lJt.cjs.map +1 -0
- package/dist/buttons-group-DsZgrZBZ.js +37 -0
- package/dist/buttons-group-DsZgrZBZ.js.map +1 -0
- package/dist/buttons-group.css +113 -22
- package/dist/{chat-notification-4OuPNhtu.js → chat-notification-BM24QnK9.js} +7 -7
- package/dist/{chat-notification-4OuPNhtu.js.map → chat-notification-BM24QnK9.js.map} +1 -1
- package/dist/{chat-notification-CPrlBwP_.cjs → chat-notification-CQlc3Z3y.cjs} +7 -7
- package/dist/{chat-notification-CPrlBwP_.cjs.map → chat-notification-CQlc3Z3y.cjs.map} +1 -1
- package/dist/{chat-signal-CG5-vy21.js → chat-signal-5gAZo10e.js} +6 -6
- package/dist/{chat-signal-CG5-vy21.js.map → chat-signal-5gAZo10e.js.map} +1 -1
- package/dist/{chat-signal-B_T2DSzo.cjs → chat-signal-CUkeTh1i.cjs} +6 -6
- package/dist/{chat-signal-B_T2DSzo.cjs.map → chat-signal-CUkeTh1i.cjs.map} +1 -1
- package/dist/{code-block-Cd4u7Bo9.cjs → code-block-D2q4w1t-.cjs} +10 -10
- package/dist/{code-block-Cd4u7Bo9.cjs.map → code-block-D2q4w1t-.cjs.map} +1 -1
- package/dist/{code-block-CSqjpBvb.js → code-block-D3BWud_S.js} +10 -10
- package/dist/{code-block-CSqjpBvb.js.map → code-block-D3BWud_S.js.map} +1 -1
- package/dist/{code-diff-C5uY-3Hz.js → code-diff-BHZTS4Zh.js} +2 -2
- package/dist/{code-diff-C5uY-3Hz.js.map → code-diff-BHZTS4Zh.js.map} +1 -1
- package/dist/{code-diff-DBtbPe9D.cjs → code-diff-CG8veSa-.cjs} +2 -2
- package/dist/{code-diff-DBtbPe9D.cjs.map → code-diff-CG8veSa-.cjs.map} +1 -1
- package/dist/{code-editor-vCt7l9Bl.js → code-editor-7wJJDE9d.js} +2 -2
- package/dist/{code-editor-vCt7l9Bl.js.map → code-editor-7wJJDE9d.js.map} +1 -1
- package/dist/{code-editor-DgY7d8kg.cjs → code-editor-Ce1FXyFV.cjs} +2 -2
- package/dist/{code-editor-DgY7d8kg.cjs.map → code-editor-Ce1FXyFV.cjs.map} +1 -1
- package/dist/{collapsible-BvrI6XnN.cjs → collapsible-BFSJouuI.cjs} +2 -2
- package/dist/{collapsible-BvrI6XnN.cjs.map → collapsible-BFSJouuI.cjs.map} +1 -1
- package/dist/{collapsible-B2uUy8w5.js → collapsible-DhhP5p1j.js} +2 -2
- package/dist/{collapsible-B2uUy8w5.js.map → collapsible-DhhP5p1j.js.map} +1 -1
- package/dist/{combobox-D7xJFZuO.js → combobox-CV-Ue388.js} +5 -5
- package/dist/combobox-CV-Ue388.js.map +1 -0
- package/dist/{combobox-BWM3VH-n.cjs → combobox-Dw3W6EHS.cjs} +6 -6
- package/dist/combobox-Dw3W6EHS.cjs.map +1 -0
- package/dist/{combobox-styles-CRebmeht.js → combobox-styles-Dgc_Jp-E.js} +3 -6
- package/dist/combobox-styles-Dgc_Jp-E.js.map +1 -0
- package/dist/{combobox-styles-DYlNNjKC.cjs → combobox-styles-ExU7SMb7.cjs} +3 -6
- package/dist/combobox-styles-ExU7SMb7.cjs.map +1 -0
- package/dist/{command-DuT06mTw.cjs → command-BJrGchxZ.cjs} +6 -6
- package/dist/{command-DuT06mTw.cjs.map → command-BJrGchxZ.cjs.map} +1 -1
- package/dist/{command-jRiL1vXM.js → command-kHnYspgO.js} +6 -6
- package/dist/{command-jRiL1vXM.js.map → command-kHnYspgO.js.map} +1 -1
- package/dist/components/ActionRow.cjs.js +38 -0
- package/dist/components/ActionRow.cjs.js.map +1 -0
- package/dist/components/ActionRow.d.ts +2 -0
- package/dist/components/ActionRow.es.js +34 -0
- package/dist/components/ActionRow.es.js.map +1 -0
- package/dist/components/AlertDialog.cjs.js +1 -1
- package/dist/components/AlertDialog.es.js +1 -1
- package/dist/components/Breadcrumb.cjs.js +1 -1
- package/dist/components/Breadcrumb.cjs.js.map +1 -1
- package/dist/components/Breadcrumb.es.js +1 -1
- 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/ClampedText.cjs.js +1 -1
- package/dist/components/ClampedText.es.js +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 +1 -1
- package/dist/components/Columns.es.js +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 +12 -12
- package/dist/components/CommandPalette.cjs.js.map +1 -1
- package/dist/components/CommandPalette.es.js +12 -12
- package/dist/components/CommandPalette.es.js.map +1 -1
- package/dist/components/Comment.cjs.js +6 -7
- package/dist/components/Comment.cjs.js.map +1 -1
- package/dist/components/Comment.es.js +5 -6
- package/dist/components/Comment.es.js.map +1 -1
- package/dist/components/Composer.cjs.js +6 -6
- package/dist/components/Composer.cjs.js.map +1 -1
- package/dist/components/Composer.es.js +6 -6
- package/dist/components/Composer.es.js.map +1 -1
- package/dist/components/ContextMenu.cjs.js +1 -6
- package/dist/components/ContextMenu.cjs.js.map +1 -1
- package/dist/components/ContextMenu.es.js +1 -6
- 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 +10 -11
- package/dist/components/DataDetailsPanel.cjs.js.map +1 -1
- package/dist/components/DataDetailsPanel.es.js +10 -11
- package/dist/components/DataDetailsPanel.es.js.map +1 -1
- package/dist/components/DataFilter.cjs.js +2 -2
- package/dist/components/DataFilter.es.js +2 -2
- package/dist/components/DataKeysAndValues.cjs.js +1 -1
- package/dist/components/DataKeysAndValues.es.js +1 -1
- package/dist/components/DataList.cjs.js +8 -8
- package/dist/components/DataList.cjs.js.map +1 -1
- package/dist/components/DataList.es.js +8 -8
- 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 +6 -6
- package/dist/components/DateRangeTimeline.cjs.js.map +1 -1
- package/dist/components/DateRangeTimeline.es.js +6 -6
- package/dist/components/DateRangeTimeline.es.js.map +1 -1
- package/dist/components/DateTimePicker.cjs.js +4 -4
- package/dist/components/DateTimePicker.cjs.js.map +1 -1
- package/dist/components/DateTimePicker.es.js +4 -4
- 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 +2 -2
- package/dist/components/Dialog.es.js +3 -3
- 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/EntityHeader.cjs.js +1 -1
- package/dist/components/EntityHeader.cjs.js.map +1 -1
- package/dist/components/EntityHeader.es.js +1 -1
- package/dist/components/EntityHeader.es.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +15 -16
- package/dist/components/EnvironmentVariablesEditor.cjs.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.es.js +9 -10
- package/dist/components/EnvironmentVariablesEditor.es.js.map +1 -1
- package/dist/components/ErrorBoundary.cjs.js +3 -3
- package/dist/components/ErrorBoundary.cjs.js.map +1 -1
- package/dist/components/ErrorBoundary.es.js +3 -3
- 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 +495 -43
- package/dist/components/FilterBar.cjs.js.map +1 -1
- package/dist/components/FilterBar.es.js +495 -47
- package/dist/components/FilterBar.es.js.map +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +11 -12
- package/dist/components/FormFieldBlocks.cjs.js.map +1 -1
- package/dist/components/FormFieldBlocks.es.js +4 -5
- package/dist/components/FormFieldBlocks.es.js.map +1 -1
- package/dist/components/Header.cjs.js +6 -31
- package/dist/components/Header.cjs.js.map +1 -1
- package/dist/components/Header.es.js +1 -30
- 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/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/IntegrationDialog.cjs.js +6 -6
- package/dist/components/IntegrationDialog.cjs.js.map +1 -1
- package/dist/components/IntegrationDialog.es.js +6 -6
- package/dist/components/IntegrationDialog.es.js.map +1 -1
- package/dist/components/ItemList.cjs.js +4 -4
- package/dist/components/ItemList.cjs.js.map +1 -1
- package/dist/components/ItemList.es.js +4 -4
- package/dist/components/ItemList.es.js.map +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +3 -3
- package/dist/components/JSONSchemaForm.es.js +3 -3
- package/dist/components/Kbd.cjs.js +1 -1
- package/dist/components/Kbd.es.js +1 -1
- package/dist/components/KeyValueList.cjs.js +1 -1
- package/dist/components/KeyValueList.es.js +1 -1
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +4 -2
- package/dist/components/LogsDataList.cjs.js.map +1 -1
- package/dist/components/LogsDataList.es.js +4 -2
- package/dist/components/LogsDataList.es.js.map +1 -1
- package/dist/components/MainHeader.cjs.js +3 -3
- package/dist/components/MainHeader.cjs.js.map +1 -1
- package/dist/components/MainHeader.es.js +3 -3
- package/dist/components/MainHeader.es.js.map +1 -1
- package/dist/components/MainSidebar.cjs.js +11 -125
- package/dist/components/MainSidebar.cjs.js.map +1 -1
- package/dist/components/MainSidebar.es.js +1 -120
- 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 +2 -2
- package/dist/components/Message.es.js +3 -3
- package/dist/components/MetricsCard.cjs.js +1 -1
- package/dist/components/MetricsCard.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 +30 -8
- package/dist/components/PageLayout.cjs.js.map +1 -1
- package/dist/components/PageLayout.es.js +32 -3
- package/dist/components/PageLayout.es.js.map +1 -1
- package/dist/components/PendingIndicator.cjs.js +1 -1
- package/dist/components/PendingIndicator.cjs.js.map +1 -1
- package/dist/components/PendingIndicator.es.js +1 -1
- 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/PrevNextNav.cjs.js +1 -1
- package/dist/components/PrevNextNav.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +18 -19
- package/dist/components/PropertyFilter.cjs.js.map +1 -1
- package/dist/components/PropertyFilter.es.js +21 -22
- package/dist/components/PropertyFilter.es.js.map +1 -1
- package/dist/components/RadioGroup.cjs.js +3 -56
- package/dist/components/RadioGroup.cjs.js.map +1 -1
- package/dist/components/RadioGroup.es.js +1 -39
- package/dist/components/RadioGroup.es.js.map +1 -1
- package/dist/components/RuleBuilder.cjs.js +10 -10
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +10 -10
- 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 +2 -2
- package/dist/components/ScatterPlotChart.cjs.js.map +1 -1
- package/dist/components/ScatterPlotChart.es.js +2 -2
- 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/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/SideDialog.cjs.js +17 -10
- package/dist/components/SideDialog.cjs.js.map +1 -1
- package/dist/components/SideDialog.es.js +17 -10
- package/dist/components/SideDialog.es.js.map +1 -1
- package/dist/components/Spinner.cjs.js +1 -1
- package/dist/components/Spinner.es.js +1 -1
- package/dist/components/StatusIndicators.cjs.js +3 -3
- package/dist/components/StatusIndicators.cjs.js.map +1 -1
- package/dist/components/StatusIndicators.es.js +3 -3
- package/dist/components/StatusIndicators.es.js.map +1 -1
- package/dist/components/Steps.cjs.js +3 -3
- package/dist/components/Steps.cjs.js.map +1 -1
- package/dist/components/Steps.es.js +3 -3
- package/dist/components/Steps.es.js.map +1 -1
- package/dist/components/Tabs.cjs.js +3 -3
- package/dist/components/Tabs.es.js +3 -3
- package/dist/components/ThreadList.cjs.js +2 -2
- package/dist/components/ThreadList.cjs.js.map +1 -1
- package/dist/components/ThreadList.es.js +2 -2
- 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/TokenBudget.cjs.js +1 -1
- package/dist/components/TokenBudget.cjs.js.map +1 -1
- package/dist/components/TokenBudget.es.js +1 -1
- package/dist/components/TokenBudget.es.js.map +1 -1
- package/dist/components/Tree.cjs.js +3 -3
- package/dist/components/Tree.cjs.js.map +1 -1
- package/dist/components/Tree.es.js +3 -3
- package/dist/components/Tree.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/Workflow.cjs.js +36 -36
- package/dist/components/Workflow.cjs.js.map +1 -1
- package/dist/components/Workflow.es.js +36 -36
- package/dist/components/Workflow.es.js.map +1 -1
- package/dist/components/ai/ask-user.cjs.js +4 -3
- package/dist/components/ai/ask-user.cjs.js.map +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/chat-event.cjs.js +6 -6
- package/dist/components/ai/chat-event.cjs.js.map +1 -1
- package/dist/components/ai/chat-event.es.js +7 -7
- package/dist/components/ai/chat-event.es.js.map +1 -1
- package/dist/components/ai/plan.cjs.js +2 -2
- package/dist/components/ai/plan.es.js +2 -2
- package/dist/components/ai/task-list.cjs.js +7 -7
- package/dist/components/ai/task-list.cjs.js.map +1 -1
- package/dist/components/ai/task-list.es.js +7 -7
- 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 +8 -8
- package/dist/components/ai/tool-call.cjs.js.map +1 -1
- package/dist/components/ai/tool-call.es.js +9 -9
- package/dist/components/ai/tool-call.es.js.map +1 -1
- package/dist/components/fluid-hover-highlight.cjs.js +13 -35
- package/dist/components/fluid-hover-highlight.cjs.js.map +1 -1
- package/dist/components/fluid-hover-highlight.es.js +14 -33
- package/dist/components/fluid-hover-highlight.es.js.map +1 -1
- package/dist/{composer-BUoRnMDd.cjs → composer-B_Err196.cjs} +6 -6
- package/dist/{composer-BUoRnMDd.cjs.map → composer-B_Err196.cjs.map} +1 -1
- package/dist/{composer-CEL1glw7.js → composer-DJGAoBcn.js} +6 -6
- package/dist/{composer-CEL1glw7.js.map → composer-DJGAoBcn.js.map} +1 -1
- package/dist/{copy-button-BbDBpBMl.cjs → copy-button-C5dMlWsW.cjs} +2 -2
- package/dist/{copy-button-BbDBpBMl.cjs.map → copy-button-C5dMlWsW.cjs.map} +1 -1
- package/dist/{copy-button-2cwdZ3dW.js → copy-button-C6RswD_D.js} +2 -2
- package/dist/{copy-button-2cwdZ3dW.js.map → copy-button-C6RswD_D.js.map} +1 -1
- package/dist/{data-code-section-qujvEc6j.cjs → data-code-section-B-y2WPBl.cjs} +17 -19
- package/dist/data-code-section-B-y2WPBl.cjs.map +1 -0
- package/dist/{data-code-section-DKz9Okaz.js → data-code-section-DcocgDAN.js} +17 -19
- package/dist/data-code-section-DcocgDAN.js.map +1 -0
- package/dist/{data-keys-and-values-4pYpSbqS.cjs → data-keys-and-values-BduKvvC5.cjs} +2 -2
- package/dist/{data-keys-and-values-4pYpSbqS.cjs.map → data-keys-and-values-BduKvvC5.cjs.map} +1 -1
- package/dist/{data-keys-and-values-j0NVKPOl.js → data-keys-and-values-DhC4U4Yl.js} +2 -2
- package/dist/{data-keys-and-values-j0NVKPOl.js.map → data-keys-and-values-DhC4U4Yl.js.map} +1 -1
- package/dist/{data-list-DnSdaRES.js → data-list-gN4SP7a8.js} +5 -5
- package/dist/{data-list-DnSdaRES.js.map → data-list-gN4SP7a8.js.map} +1 -1
- package/dist/{data-list-skeleton-ADXw-opu.cjs → data-list-skeleton-DYG2LLri.cjs} +2 -2
- package/dist/{data-list-skeleton-ADXw-opu.cjs.map → data-list-skeleton-DYG2LLri.cjs.map} +1 -1
- package/dist/{data-list-skeleton-D7-glFuk.js → data-list-skeleton-PXHovGLv.js} +2 -2
- package/dist/{data-list-skeleton-D7-glFuk.js.map → data-list-skeleton-PXHovGLv.js.map} +1 -1
- package/dist/{data-list-spacer-DRHNUeeP.js → data-list-spacer-D-AQzTYw.js} +3 -3
- package/dist/{data-list-spacer-DRHNUeeP.js.map → data-list-spacer-D-AQzTYw.js.map} +1 -1
- package/dist/{data-list-spacer-EWo65MrK.cjs → data-list-spacer-MpuBsXjL.cjs} +3 -3
- package/dist/{data-list-spacer-EWo65MrK.cjs.map → data-list-spacer-MpuBsXjL.cjs.map} +1 -1
- package/dist/{data-list-top-DLwt_Sv-.js → data-list-top-BTeM7hI4.js} +5 -5
- package/dist/{data-list-top-DLwt_Sv-.js.map → data-list-top-BTeM7hI4.js.map} +1 -1
- package/dist/{data-list-top-RK_yX6z8.cjs → data-list-top-DDux1Eu4.cjs} +5 -5
- package/dist/{data-list-top-RK_yX6z8.cjs.map → data-list-top-DDux1Eu4.cjs.map} +1 -1
- package/dist/{data-list-CypPKOQ_.cjs → data-list-yJm-3f2w.cjs} +5 -5
- package/dist/{data-list-CypPKOQ_.cjs.map → data-list-yJm-3f2w.cjs.map} +1 -1
- package/dist/{data-panel-CWZJKBeW.cjs → data-panel-CM3N_4M7.cjs} +9 -9
- package/dist/{data-panel-CWZJKBeW.cjs.map → data-panel-CM3N_4M7.cjs.map} +1 -1
- package/dist/{data-panel-CWjgS1Gh.js → data-panel-D3UfzCoE.js} +9 -9
- package/dist/{data-panel-CWjgS1Gh.js.map → data-panel-D3UfzCoE.js.map} +1 -1
- package/dist/{date-time-range-picker-C6hjZswK.cjs → date-time-range-picker-2Pkg-FoU.cjs} +6 -7
- package/dist/{date-time-range-picker-C6hjZswK.cjs.map → date-time-range-picker-2Pkg-FoU.cjs.map} +1 -1
- package/dist/{date-time-range-picker-BcjLbkGu.js → date-time-range-picker-DHg-fuV3.js} +5 -6
- package/dist/{date-time-range-picker-BcjLbkGu.js.map → date-time-range-picker-DHg-fuV3.js.map} +1 -1
- package/dist/{dialog-Dm33cZqt.cjs → dialog-Cyj59QsZ.cjs} +3 -3
- package/dist/{dialog-Dm33cZqt.cjs.map → dialog-Cyj59QsZ.cjs.map} +1 -1
- package/dist/{dialog-DRpMek34.js → dialog-D8fuBETk.js} +3 -3
- package/dist/{dialog-DRpMek34.js.map → dialog-D8fuBETk.js.map} +1 -1
- 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 +1 -1
- package/dist/domains/chat/attachments/composer-attachment-list.es.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment.cjs.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment.es.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +2 -2
- package/dist/domains/chat/components/badge-wrapper.cjs.js.map +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +2 -2
- package/dist/domains/chat/components/badge-wrapper.es.js.map +1 -1
- package/dist/domains/chat/components/loading-badge.cjs.js +1 -1
- package/dist/domains/chat/components/loading-badge.es.js +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +4 -4
- 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 +4 -4
- package/dist/domains/chat/components/network-choice-metadata-dialog.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 +1 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js +1 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js.map +1 -1
- package/dist/domains/chat/messages/reasoning.cjs.js +4 -4
- package/dist/domains/chat/messages/reasoning.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning.es.js +4 -4
- package/dist/domains/chat/messages/reasoning.es.js.map +1 -1
- package/dist/domains/chat/messages/renderers/message-text.cjs.js +2 -2
- package/dist/domains/chat/messages/renderers/message-text.es.js +2 -2
- 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 +6 -6
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js.map +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +6 -6
- package/dist/domains/chat/messages/system-reminder-badge.es.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +3 -3
- package/dist/domains/chat/messages/tripwire-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.es.js +3 -3
- package/dist/domains/chat/messages/tripwire-notice.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +2 -2
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js.map +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 +29 -29
- 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 +29 -29
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +11 -11
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +11 -11
- 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 +10 -12
- package/dist/domains/logs/components/log-details-view.cjs.js.map +1 -1
- package/dist/domains/logs/components/log-details-view.es.js +10 -12
- package/dist/domains/logs/components/log-details-view.es.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.cjs.js +4 -7
- package/dist/domains/logs/components/logs-error-content.cjs.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.es.js +4 -7
- package/dist/domains/logs/components/logs-error-content.es.js.map +1 -1
- package/dist/domains/logs/components/logs-list-view.cjs.js +2 -2
- package/dist/domains/logs/components/logs-list-view.es.js +2 -2
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js.map +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js.map +1 -1
- package/dist/domains/logs/components/no-logs-info.cjs.js +6 -6
- package/dist/domains/logs/components/no-logs-info.cjs.js.map +1 -1
- package/dist/domains/logs/components/no-logs-info.es.js +7 -7
- package/dist/domains/logs/components/no-logs-info.es.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.cjs.js +19 -19
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +19 -19
- package/dist/domains/memory/components/flame-graph.es.js.map +1 -1
- package/dist/domains/memory/components/memory-studio-panel.cjs.js +4 -4
- package/dist/domains/memory/components/memory-studio-panel.cjs.js.map +1 -1
- package/dist/domains/memory/components/memory-studio-panel.es.js +4 -4
- package/dist/domains/memory/components/memory-studio-panel.es.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.cjs.js +17 -18
- package/dist/domains/memory/components/observation-detail-view.cjs.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +17 -18
- package/dist/domains/memory/components/observation-detail-view.es.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.cjs.js +3 -3
- package/dist/domains/memory/components/thread-context-progress.cjs.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.es.js +3 -3
- package/dist/domains/memory/components/thread-context-progress.es.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.cjs.js +9 -9
- package/dist/domains/metrics/components/bar-list.cjs.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.es.js +9 -9
- 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 +5 -5
- package/dist/domains/metrics/components/memory-card-view.es.js +5 -5
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +2 -2
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +2 -2
- package/dist/domains/metrics/components/scores-card-view.cjs.js +6 -6
- package/dist/domains/metrics/components/scores-card-view.es.js +6 -6
- 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 +2 -3
- package/dist/domains/traces/components/no-traces-info.cjs.js.map +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +2 -3
- package/dist/domains/traces/components/no-traces-info.es.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +7 -7
- package/dist/domains/traces/components/span-data-panel-view.es.js +7 -7
- 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 +3 -3
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +4 -4
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +4 -4
- 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 +4 -6
- 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 +4 -6
- 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 +4 -4
- package/dist/domains/traces/components/span-timeline-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timeline-row.es.js +4 -4
- package/dist/domains/traces/components/span-timeline-row.es.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js +2 -2
- package/dist/domains/traces/components/span-timing-hover-card.es.js +2 -2
- package/dist/domains/traces/components/span-token-usage.cjs.js +5 -5
- package/dist/domains/traces/components/span-token-usage.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.es.js +5 -5
- package/dist/domains/traces/components/span-token-usage.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +2 -2
- 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 +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +4 -4
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +4 -4
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js +2 -2
- 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 +2 -2
- 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 +2 -2
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +2 -2
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.cjs.js +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.es.js +1 -1
- package/dist/domains/traces/components/timeline-structure-sign.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +2 -2
- package/dist/domains/traces/components/timeline-timing-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.es.js +2 -2
- package/dist/domains/traces/components/timeline-timing-col.es.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +8 -8
- package/dist/domains/traces/components/trace-columns-menu.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.es.js +6 -6
- package/dist/domains/traces/components/trace-columns-menu.es.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +11 -13
- 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 +11 -13
- 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 +1 -1
- package/dist/domains/traces/components/trace-keys-and-values.es.js +1 -1
- 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-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 +2 -2
- package/dist/domains/traces/components/trace-time-range-chip.es.js +2 -2
- package/dist/domains/traces/components/traces-error-content.cjs.js +3 -3
- package/dist/domains/traces/components/traces-error-content.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-error-content.es.js +3 -3
- package/dist/domains/traces/components/traces-error-content.es.js.map +1 -1
- package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +2 -2
- package/dist/domains/traces/components/traces-list-mode-toggle.es.js +2 -2
- package/dist/domains/traces/components/traces-list-view.cjs.js +5 -5
- package/dist/domains/traces/components/traces-list-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view.es.js +5 -5
- package/dist/domains/traces/components/traces-list-view.es.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +3 -1
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js +3 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js +4 -2
- 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 +5 -3
- package/dist/domains/traces/hooks/use-trace-url-state.es.js.map +1 -1
- package/dist/domains/traces/trace-filters.cjs.js +92 -11
- package/dist/domains/traces/trace-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-filters.es.js +87 -13
- package/dist/domains/traces/trace-filters.es.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.cjs.js +76 -45
- package/dist/domains/traces/trace-query-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.es.js +76 -46
- 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 → drawer-9eoZbmRK.cjs} +5 -5
- package/dist/{drawer-BL5shtHH.cjs.map → drawer-9eoZbmRK.cjs.map} +1 -1
- package/dist/{drawer-Bv2DRY8E.js → drawer-DnfOugYZ.js} +5 -5
- package/dist/{drawer-Bv2DRY8E.js.map → drawer-DnfOugYZ.js.map} +1 -1
- package/dist/{dropdown-menu-DL0MzjEb.js → dropdown-menu-DpEn6HwK.js} +2 -7
- package/dist/dropdown-menu-DpEn6HwK.js.map +1 -0
- package/dist/{dropdown-menu-DNRCA4Gj.cjs → dropdown-menu-j2y37TL5.cjs} +2 -7
- package/dist/dropdown-menu-j2y37TL5.cjs.map +1 -0
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +4 -4
- 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 +4 -4
- package/dist/ee/signals/components/entity-index-compact-grid.es.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js +3 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +3 -1
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.cjs.js +34 -34
- package/dist/ee/signals/components/signals-empty-state.cjs.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +34 -34
- package/dist/ee/signals/components/signals-empty-state.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +5 -7
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +5 -7
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +15 -17
- 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 +16 -18
- 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 +6 -6
- package/dist/ee/signals/flow-card.cjs.js.map +1 -1
- package/dist/ee/signals/flow-card.es.js +6 -6
- package/dist/ee/signals/flow-card.es.js.map +1 -1
- package/dist/ee/signals/lifeline-row.cjs.js +4 -4
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-row.es.js +4 -4
- package/dist/ee/signals/lifeline-row.es.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +12 -12
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +12 -12
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +6 -6
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +6 -6
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +13 -14
- 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 +6 -7
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +9 -9
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.es.js +9 -9
- package/dist/ee/signals/settings/trace-signal-settings.es.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.cjs.js +7 -7
- package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.es.js +7 -7
- package/dist/ee/signals/signal-delta-column.es.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.cjs.js +2 -2
- package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.es.js +2 -2
- package/dist/ee/signals/signal-lifelines.es.js.map +1 -1
- package/dist/ee/signals/signals-error-state.cjs.js +3 -3
- package/dist/ee/signals/signals-error-state.cjs.js.map +1 -1
- package/dist/ee/signals/signals-error-state.es.js +3 -3
- package/dist/ee/signals/signals-error-state.es.js.map +1 -1
- package/dist/ee/signals/signals-loading-skeleton.cjs.js +1 -1
- package/dist/ee/signals/signals-loading-skeleton.cjs.js.map +1 -1
- package/dist/ee/signals/signals-loading-skeleton.es.js +1 -1
- 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 +1 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.es.js +1 -1
- 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 +18 -18
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +18 -18
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +2 -2
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +2 -2
- 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 +1 -1
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +12 -12
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +12 -12
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +2 -2
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +2 -2
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.cjs.js +1 -1
- package/dist/ee/signals/view-mode-tab.es.js +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +3 -3
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +3 -3
- package/dist/ee/topics/components/topics-layout.cjs.js +3 -3
- package/dist/ee/topics/components/topics-layout.cjs.js.map +1 -1
- package/dist/ee/topics/components/topics-layout.es.js +3 -3
- package/dist/ee/topics/components/topics-layout.es.js.map +1 -1
- package/dist/{field-block-Dy1IaWbv.cjs → field-error-id-6EfqmQ4C.cjs} +5 -2
- package/dist/field-error-id-6EfqmQ4C.cjs.map +1 -0
- package/dist/{field-block-DWkbNcsV.js → field-error-id-DyWx33Fu.js} +5 -3
- package/dist/field-error-id-DyWx33Fu.js.map +1 -0
- package/dist/{filter-bar-chip-BxI0NgEz.cjs → filter-bar-chip-D8O9jpCW.cjs} +300 -69
- package/dist/filter-bar-chip-D8O9jpCW.cjs.map +1 -0
- package/dist/{filter-bar-chip-C-JxWUU8.js → filter-bar-chip-DMhUPTt8.js} +297 -71
- package/dist/filter-bar-chip-DMhUPTt8.js.map +1 -0
- package/dist/filter-bar-chip.css +33 -1
- package/dist/hooks/use-fluid-hover.cjs.js +15 -9
- package/dist/hooks/use-fluid-hover.cjs.js.map +1 -1
- package/dist/hooks/use-fluid-hover.es.js +15 -9
- package/dist/hooks/use-fluid-hover.es.js.map +1 -1
- package/dist/{horizontal-bars-nyWGmQ7g.cjs → horizontal-bars-BkVi2dEb.cjs} +7 -7
- package/dist/{horizontal-bars-nyWGmQ7g.cjs.map → horizontal-bars-BkVi2dEb.cjs.map} +1 -1
- package/dist/{horizontal-bars-CksEKcCE.js → horizontal-bars-nTOFylzc.js} +7 -7
- package/dist/{horizontal-bars-CksEKcCE.js.map → horizontal-bars-nTOFylzc.js.map} +1 -1
- package/dist/{hover-card-Ch5smNcf.js → hover-card-B1-n3amu.js} +3 -3
- package/dist/{hover-card-Ch5smNcf.js.map → hover-card-B1-n3amu.js.map} +1 -1
- package/dist/{hover-card-DdHnkGcs.cjs → hover-card-DVfZ2INZ.cjs} +3 -3
- package/dist/{hover-card-DdHnkGcs.cjs.map → hover-card-DVfZ2INZ.cjs.map} +1 -1
- package/dist/icons/Icon.cjs.js +1 -1
- package/dist/icons/Icon.cjs.js.map +1 -1
- package/dist/icons/Icon.es.js +1 -1
- package/dist/icons/Icon.es.js.map +1 -1
- package/dist/{input-group-CvWwK1Vz.cjs → input-group-2yWKRuq9.cjs} +7 -5
- package/dist/input-group-2yWKRuq9.cjs.map +1 -0
- package/dist/{input-group-BEdHivvy.js → input-group-Czviwtvr.js} +8 -6
- package/dist/input-group-Czviwtvr.js.map +1 -0
- package/dist/{kbd-CINtikLh.js → kbd-BDVTQHD_.js} +2 -2
- package/dist/{kbd-CINtikLh.js.map → kbd-BDVTQHD_.js.map} +1 -1
- package/dist/{kbd-B-Z2sNvK.cjs → kbd-BptPsKP6.cjs} +2 -2
- package/dist/{kbd-B-Z2sNvK.cjs.map → kbd-BptPsKP6.cjs.map} +1 -1
- package/dist/layout/tabbed-container.cjs.js +6 -6
- package/dist/layout/tabbed-container.es.js +6 -6
- package/dist/{list-search-BTW0Neuc.js → list-search-Jm6SLN0g.js} +2 -2
- package/dist/{list-search-BTW0Neuc.js.map → list-search-Jm6SLN0g.js.map} +1 -1
- package/dist/{list-search-vyxsZMAK.cjs → list-search-s3DRIfz6.cjs} +2 -2
- package/dist/{list-search-vyxsZMAK.cjs.map → list-search-s3DRIfz6.cjs.map} +1 -1
- package/dist/{logs-data-list-BSHJPGi6.cjs → logs-data-list-C5tjRtkQ.cjs} +5 -5
- package/dist/{logs-data-list-BSHJPGi6.cjs.map → logs-data-list-C5tjRtkQ.cjs.map} +1 -1
- package/dist/{logs-data-list-CG-UgC_x.js → logs-data-list-Cl3abARp.js} +5 -5
- package/dist/{logs-data-list-CG-UgC_x.js.map → logs-data-list-Cl3abARp.js.map} +1 -1
- package/dist/{main-sidebar-link-active-DbCvKZy2.cjs → main-sidebar-BsEmFpKN.cjs} +122 -9
- package/dist/main-sidebar-BsEmFpKN.cjs.map +1 -0
- package/dist/{main-sidebar-link-active-CmDoiX6g.js → main-sidebar-C5PU7zgc.js} +123 -11
- package/dist/main-sidebar-C5PU7zgc.js.map +1 -0
- package/dist/{markdown-renderer-D8qYAU7K.cjs → markdown-renderer-C74wABzc.cjs} +6 -7
- package/dist/markdown-renderer-C74wABzc.cjs.map +1 -0
- package/dist/{markdown-renderer-B0gTm_Ea.js → markdown-renderer-DZAcPOxC.js} +6 -7
- package/dist/markdown-renderer-DZAcPOxC.js.map +1 -0
- package/dist/{message-BrwbcLPi.js → message-Cs8NW-MR.js} +2 -2
- package/dist/{message-BrwbcLPi.js.map → message-Cs8NW-MR.js.map} +1 -1
- package/dist/{message-CszposMZ.cjs → message-D9b33Pf_.cjs} +2 -2
- package/dist/{message-CszposMZ.cjs.map → message-D9b33Pf_.cjs.map} +1 -1
- package/dist/{metrics-card-BUJxiwec.cjs → metrics-card-BdWGPlnt.cjs} +8 -8
- package/dist/metrics-card-BdWGPlnt.cjs.map +1 -0
- package/dist/{metrics-card-BlBt1WHw.js → metrics-card-C5znWn69.js} +8 -8
- package/dist/metrics-card-C5znWn69.js.map +1 -0
- package/dist/{metrics-kpi-card-CBSNmtc5.js → metrics-kpi-card-CinKYTBn.js} +4 -4
- package/dist/{metrics-kpi-card-CBSNmtc5.js.map → metrics-kpi-card-CinKYTBn.js.map} +1 -1
- package/dist/{metrics-kpi-card-CgqmNcEC.cjs → metrics-kpi-card-HU17WRTT.cjs} +4 -4
- package/dist/{metrics-kpi-card-CgqmNcEC.cjs.map → metrics-kpi-card-HU17WRTT.cjs.map} +1 -1
- package/dist/{metrics-line-chart-B_sP3eiL.cjs → metrics-line-chart-0FR3SYSt.cjs} +3 -3
- package/dist/{metrics-line-chart-B_sP3eiL.cjs.map → metrics-line-chart-0FR3SYSt.cjs.map} +1 -1
- package/dist/{metrics-line-chart-DHyrDPkJ.js → metrics-line-chart-knlgw8bV.js} +3 -3
- package/dist/{metrics-line-chart-DHyrDPkJ.js.map → metrics-line-chart-knlgw8bV.js.map} +1 -1
- package/dist/new/layout/app-shell.cjs.js +23 -28
- package/dist/new/layout/app-shell.cjs.js.map +1 -1
- package/dist/new/layout/app-shell.es.js +23 -28
- 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/settings.cjs.js +1 -1
- package/dist/new/settings.es.js +1 -1
- package/dist/new/sidebar.cjs.js +40 -40
- package/dist/new/sidebar.cjs.js.map +1 -1
- package/dist/new/sidebar.es.js +10 -10
- package/dist/new/sidebar.es.js.map +1 -1
- package/dist/{page-header-BIoUf7MA.js → page-header-CSigVThQ.js} +2 -2
- package/dist/{page-header-BIoUf7MA.js.map → page-header-CSigVThQ.js.map} +1 -1
- package/dist/{page-header-BBlPmW-T.cjs → page-header-DzEEkOca.cjs} +2 -2
- package/dist/{page-header-BBlPmW-T.cjs.map → page-header-DzEEkOca.cjs.map} +1 -1
- package/dist/primitives/control-size.cjs.js +24 -2
- package/dist/primitives/control-size.cjs.js.map +1 -1
- package/dist/primitives/control-size.es.js +5 -3
- package/dist/primitives/control-size.es.js.map +1 -1
- package/dist/primitives/fluid-menu.cjs.js +30 -18
- package/dist/primitives/fluid-menu.cjs.js.map +1 -1
- package/dist/primitives/fluid-menu.es.js +30 -18
- package/dist/primitives/fluid-menu.es.js.map +1 -1
- package/dist/primitives/form-element.cjs.js +4 -4
- package/dist/primitives/form-element.cjs.js.map +1 -1
- package/dist/primitives/form-element.es.js +4 -3
- package/dist/primitives/form-element.es.js.map +1 -1
- package/dist/primitives/menu-item.cjs.js +7 -4
- package/dist/primitives/menu-item.cjs.js.map +1 -1
- package/dist/primitives/menu-item.es.js +7 -4
- package/dist/primitives/menu-item.es.js.map +1 -1
- package/dist/primitives/trigger-button.cjs.js +1 -1
- package/dist/primitives/trigger-button.es.js +1 -1
- package/dist/{property-filter-applied-BBiUbtr0.js → property-filter-applied-C15IJHLs.js} +30 -36
- package/dist/property-filter-applied-C15IJHLs.js.map +1 -0
- package/dist/{property-filter-applied-BmxCPe2d.cjs → property-filter-applied-DtSjGypB.cjs} +30 -36
- package/dist/property-filter-applied-DtSjGypB.cjs.map +1 -0
- package/dist/radio-group-BdEPWGzi.cjs +62 -0
- package/dist/radio-group-BdEPWGzi.cjs.map +1 -0
- package/dist/radio-group-CFZXUXZ5.js +40 -0
- package/dist/radio-group-CFZXUXZ5.js.map +1 -0
- package/dist/resize/collapsible-panel.cjs.js +1 -1
- package/dist/resize/collapsible-panel.es.js +1 -1
- package/dist/resize/panel-drawer.cjs.js +1 -1
- package/dist/resize/panel-drawer.es.js +1 -1
- package/dist/{sankey-chart-Bcm9jMhe.cjs → sankey-chart-C1e0nRc3.cjs} +4 -4
- package/dist/{sankey-chart-Bcm9jMhe.cjs.map → sankey-chart-C1e0nRc3.cjs.map} +1 -1
- package/dist/{sankey-chart-CqngN2lw.js → sankey-chart-jvMXKzud.js} +4 -4
- package/dist/{sankey-chart-CqngN2lw.js.map → sankey-chart-jvMXKzud.js.map} +1 -1
- package/dist/{scroll-area-Qjf7e0Ik.cjs → scroll-area-BzOyuS8Y.cjs} +2 -2
- package/dist/{scroll-area-Qjf7e0Ik.cjs.map → scroll-area-BzOyuS8Y.cjs.map} +1 -1
- package/dist/{scroll-area-CdQ_5bLm.js → scroll-area-DyTZoISq.js} +2 -2
- package/dist/{scroll-area-CdQ_5bLm.js.map → scroll-area-DyTZoISq.js.map} +1 -1
- package/dist/{search-field-block-D0PUUCAE.cjs → search-field-block-ChXCuPrB.cjs} +9 -10
- package/dist/{search-field-block-D0PUUCAE.cjs.map → search-field-block-ChXCuPrB.cjs.map} +1 -1
- package/dist/{search-field-block-B5vUVTpl.js → search-field-block-nVeIkFXN.js} +3 -4
- package/dist/{search-field-block-B5vUVTpl.js.map → search-field-block-nVeIkFXN.js.map} +1 -1
- package/dist/{select--DXpTg0O.js → select-CDIt5aab.js} +3 -6
- package/dist/select-CDIt5aab.js.map +1 -0
- package/dist/{select-7ACAVdGX.cjs → select-CH5XO18L.cjs} +3 -6
- package/dist/select-CH5XO18L.cjs.map +1 -0
- package/dist/{select-field-block-Bu7UXI2H.js → select-field-block-BtjE0P5d.js} +3 -4
- package/dist/{select-field-block-Bu7UXI2H.js.map → select-field-block-BtjE0P5d.js.map} +1 -1
- package/dist/{select-field-block-W2u2WmN3.cjs → select-field-block-CpzMTsP6.cjs} +9 -10
- package/dist/{select-field-block-W2u2WmN3.cjs.map → select-field-block-CpzMTsP6.cjs.map} +1 -1
- package/dist/{settings-layout-NP_1dC-e.cjs → settings-layout-BGvMSClL.cjs} +2 -2
- package/dist/{settings-layout-NP_1dC-e.cjs.map → settings-layout-BGvMSClL.cjs.map} +1 -1
- package/dist/{settings-layout-C80s-D31.js → settings-layout-DA-JWqW3.js} +2 -2
- package/dist/{settings-layout-C80s-D31.js.map → settings-layout-DA-JWqW3.js.map} +1 -1
- package/dist/{span-payload-primitives-DnRsP93D.cjs → span-payload-primitives-70wznWZl.cjs} +6 -6
- package/dist/{span-payload-primitives-DnRsP93D.cjs.map → span-payload-primitives-70wznWZl.cjs.map} +1 -1
- package/dist/{span-payload-primitives-sbxk4CHC.js → span-payload-primitives-BvoMauDb.js} +6 -6
- package/dist/{span-payload-primitives-sbxk4CHC.js.map → span-payload-primitives-BvoMauDb.js.map} +1 -1
- package/dist/{spinner-CqP-NaB2.cjs → spinner-BCpN7LL9.cjs} +9 -3
- package/dist/spinner-BCpN7LL9.cjs.map +1 -0
- package/dist/{spinner-D2C2DYw8.js → spinner-ylbE0TJA.js} +9 -3
- package/dist/spinner-ylbE0TJA.js.map +1 -0
- package/dist/src/components/fluid-hover-highlight.d.ts +4 -58
- package/dist/src/domains/traces/components/traces-error-content.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-url-state.d.ts +5 -3
- package/dist/src/domains/traces/trace-filters.d.ts +19 -4
- package/dist/src/domains/traces/trace-query-filters.d.ts +13 -1
- package/dist/src/ds/components/ActionRow/action-row.d.ts +9 -0
- package/dist/src/ds/components/ActionRow/action-row.stories.d.ts +8 -0
- package/dist/src/ds/components/ActionRow/index.d.ts +5 -0
- package/dist/src/ds/components/Badge/badge.stories.d.ts +0 -1
- package/dist/src/ds/components/ButtonsGroup/buttons-group.d.ts +11 -11
- package/dist/src/ds/components/ButtonsGroup/buttons-group.stories.d.ts +17 -7
- package/dist/src/ds/components/EmptyState/EmptyState.d.ts +8 -2
- package/dist/src/ds/components/EmptyState/empty-state.stories.d.ts +1 -0
- package/dist/src/ds/components/ErrorState/ErrorState.d.ts +3 -1
- package/dist/src/ds/components/ErrorState/error-state.stories.d.ts +1 -0
- package/dist/src/ds/components/FilterBar/filter-bar-advanced-chip.d.ts +10 -0
- package/dist/src/ds/components/FilterBar/filter-bar-context.d.ts +46 -9
- package/dist/src/ds/components/FilterBar/filter-bar-group-editor.d.ts +25 -0
- package/dist/src/ds/components/FilterBar/filter-bar-input.d.ts +8 -1
- package/dist/src/ds/components/FilterBar/filter-bar-option-list.d.ts +5 -0
- package/dist/src/ds/components/FilterBar/filter-bar-tree.d.ts +36 -0
- package/dist/src/ds/components/FilterBar/filter-bar.d.ts +28 -7
- package/dist/src/ds/components/FilterBar/filter-bar.stories.d.ts +3 -0
- package/dist/src/ds/components/FilterBar/index.d.ts +6 -1
- package/dist/src/ds/components/FilterBar/types.d.ts +36 -0
- package/dist/src/ds/components/FilterBar/use-settle-on-leave.d.ts +2 -0
- package/dist/src/ds/components/PageLayout/index.d.ts +1 -2
- package/dist/src/ds/components/PageLayout/page-layout.d.ts +13 -11
- package/dist/src/ds/components/PageLayout/page-layout.stories.d.ts +1 -2
- package/dist/src/ds/components/PermissionDenied/PermissionDenied.d.ts +3 -1
- package/dist/src/ds/components/PermissionDenied/permission-denied.stories.d.ts +1 -0
- package/dist/src/ds/components/SessionExpired/SessionExpired.d.ts +3 -1
- package/dist/src/ds/components/SessionExpired/session-expired.stories.d.ts +1 -0
- package/dist/src/ds/components/Spinner/spinner.d.ts +6 -3
- package/dist/src/ds/components/Spinner/spinner.stories.d.ts +1 -0
- package/dist/src/ds/components/ai/ask-user/ask-user.d.ts +13 -8
- package/dist/src/ds/new/layout/app-shell/app-shell.d.ts +2 -8
- package/dist/src/ds/new/layout/app-shell/app-shell.stories.d.ts +0 -1
- package/dist/src/ds/primitives/control-size.d.ts +3 -1
- package/dist/src/ds/primitives/fluid-menu.d.ts +8 -3
- package/dist/src/ds/primitives/form-element.d.ts +1 -2
- package/dist/src/hooks/use-fluid-hover.d.ts +7 -2
- package/dist/style.css +83 -120
- package/dist/{tabs-content-CKC4kIpH.js → tabs-content-BeFlc4E_.js} +2 -2
- package/dist/{tabs-content-CKC4kIpH.js.map → tabs-content-BeFlc4E_.js.map} +1 -1
- package/dist/{tabs-content-Bz6CZuv9.cjs → tabs-content-Cdu6HP8U.cjs} +2 -2
- package/dist/{tabs-content-Bz6CZuv9.cjs.map → tabs-content-Cdu6HP8U.cjs.map} +1 -1
- package/dist/{tabs-root-C5ABfm1F.cjs → tabs-root-BiV8irc3.cjs} +4 -4
- package/dist/{tabs-root-C5ABfm1F.cjs.map → tabs-root-BiV8irc3.cjs.map} +1 -1
- package/dist/{tabs-root-CcEQrwTM.js → tabs-root-CJ3GkDzi.js} +4 -4
- package/dist/{tabs-root-CcEQrwTM.js.map → tabs-root-CJ3GkDzi.js.map} +1 -1
- package/dist/{tabs-tab-BycF4dvx.js → tabs-tab-CoSCf5Ku.js} +2 -2
- package/dist/{tabs-tab-BycF4dvx.js.map → tabs-tab-CoSCf5Ku.js.map} +1 -1
- package/dist/{tabs-tab-DA466DbX.cjs → tabs-tab-J91Szy3Q.cjs} +2 -2
- package/dist/{tabs-tab-DA466DbX.cjs.map → tabs-tab-J91Szy3Q.cjs.map} +1 -1
- package/dist/{text-field-block-BLpLWmu8.cjs → text-field-block-BmWGMw3a.cjs} +8 -9
- package/dist/{text-field-block-BLpLWmu8.cjs.map → text-field-block-BmWGMw3a.cjs.map} +1 -1
- package/dist/{text-field-block--EUJKlY_.js → text-field-block-Cihf0IRw.js} +2 -3
- package/dist/{text-field-block--EUJKlY_.js.map → text-field-block-Cihf0IRw.js.map} +1 -1
- package/dist/{thread-rail-b-8RHNX_.cjs → thread-rail-BVpfkSyT.cjs} +6 -6
- package/dist/{thread-rail-b-8RHNX_.cjs.map → thread-rail-BVpfkSyT.cjs.map} +1 -1
- package/dist/{thread-rail-vsR5C0j4.js → thread-rail-DV89nFnn.js} +6 -6
- package/dist/{thread-rail-vsR5C0j4.js.map → thread-rail-DV89nFnn.js.map} +1 -1
- package/dist/{time-picker-Dlm-C-n4.cjs → time-picker-DXuXFGa-.cjs} +2 -2
- package/dist/{time-picker-Dlm-C-n4.cjs.map → time-picker-DXuXFGa-.cjs.map} +1 -1
- package/dist/{time-picker-DVt1ZUsS.js → time-picker-vFozGRyK.js} +2 -2
- package/dist/{time-picker-DVt1ZUsS.js.map → time-picker-vFozGRyK.js.map} +1 -1
- package/dist/{tool-approval-DB82iiRa.js → tool-approval-C11ECt4s.js} +5 -5
- package/dist/{tool-approval-DB82iiRa.js.map → tool-approval-C11ECt4s.js.map} +1 -1
- package/dist/{tool-approval-Dys524ty.cjs → tool-approval-DODxfqk7.cjs} +5 -5
- package/dist/{tool-approval-Dys524ty.cjs.map → tool-approval-DODxfqk7.cjs.map} +1 -1
- package/dist/{tool-call-K147tCug.js → tool-call-BjAGFbH-.js} +5 -5
- package/dist/{tool-call-K147tCug.js.map → tool-call-BjAGFbH-.js.map} +1 -1
- package/dist/{tool-call-CMRvRE-v.cjs → tool-call-CNBGnCmO.cjs} +5 -5
- package/dist/{tool-call-CMRvRE-v.cjs.map → tool-call-CNBGnCmO.cjs.map} +1 -1
- package/dist/{traces-data-list-CDNE9P8W.js → traces-data-list-BhKK8-wa.js} +7 -7
- package/dist/{traces-data-list-CDNE9P8W.js.map → traces-data-list-BhKK8-wa.js.map} +1 -1
- package/dist/{traces-data-list-B3q_cy6c.cjs → traces-data-list-D58cw23x.cjs} +7 -7
- package/dist/{traces-data-list-B3q_cy6c.cjs.map → traces-data-list-D58cw23x.cjs.map} +1 -1
- package/dist/types-CIPrYAzY.js +9 -0
- package/dist/types-CIPrYAzY.js.map +1 -0
- package/dist/types-Ns4ZNp-g.cjs +12 -0
- package/dist/types-Ns4ZNp-g.cjs.map +1 -0
- package/package.json +6 -7
- package/theme/surfaces.css +2 -2
- package/dist/Button-CVewl8nT.cjs.map +0 -1
- package/dist/Button-cWcBEd-G.js.map +0 -1
- package/dist/EmptyState-CdRjFB06.cjs.map +0 -1
- package/dist/EmptyState-UWXhBp5U.js.map +0 -1
- package/dist/ErrorState-B3uTRAEd.cjs +0 -16
- package/dist/ErrorState-B3uTRAEd.cjs.map +0 -1
- package/dist/ErrorState-DqRx8Dw_.js +0 -14
- package/dist/ErrorState-DqRx8Dw_.js.map +0 -1
- package/dist/PermissionDenied-B6TSGolC.js.map +0 -1
- package/dist/PermissionDenied-Dz5qXpQj.cjs.map +0 -1
- package/dist/SessionExpired-Bq5LcsDu.js.map +0 -1
- package/dist/SessionExpired-CF0BGNo_.cjs.map +0 -1
- package/dist/ask-user-CS2e6Re4.cjs +0 -147
- package/dist/ask-user-CS2e6Re4.cjs.map +0 -1
- package/dist/ask-user-gS3Y1bCc.js +0 -138
- package/dist/ask-user-gS3Y1bCc.js.map +0 -1
- package/dist/buttons-group-BiLEV_Ak.cjs +0 -101
- package/dist/buttons-group-BiLEV_Ak.cjs.map +0 -1
- package/dist/buttons-group-CaA7KAWf.js +0 -78
- package/dist/buttons-group-CaA7KAWf.js.map +0 -1
- package/dist/combobox-BWM3VH-n.cjs.map +0 -1
- package/dist/combobox-D7xJFZuO.js.map +0 -1
- package/dist/combobox-styles-CRebmeht.js.map +0 -1
- package/dist/combobox-styles-DYlNNjKC.cjs.map +0 -1
- package/dist/components/MainContent.cjs.js +0 -81
- package/dist/components/MainContent.cjs.js.map +0 -1
- package/dist/components/MainContent.d.ts +0 -2
- package/dist/components/MainContent.es.js +0 -75
- package/dist/components/MainContent.es.js.map +0 -1
- package/dist/data-code-section-DKz9Okaz.js.map +0 -1
- package/dist/data-code-section-qujvEc6j.cjs.map +0 -1
- package/dist/dropdown-menu-DL0MzjEb.js.map +0 -1
- package/dist/dropdown-menu-DNRCA4Gj.cjs.map +0 -1
- package/dist/field-block-DWkbNcsV.js.map +0 -1
- package/dist/field-block-Dy1IaWbv.cjs.map +0 -1
- package/dist/field-error-id-B3Z2Zu5y.cjs +0 -6
- package/dist/field-error-id-B3Z2Zu5y.cjs.map +0 -1
- package/dist/field-error-id-D3yg1nBh.js +0 -4
- package/dist/field-error-id-D3yg1nBh.js.map +0 -1
- package/dist/filter-bar-chip-BxI0NgEz.cjs.map +0 -1
- package/dist/filter-bar-chip-C-JxWUU8.js.map +0 -1
- package/dist/input-group-BEdHivvy.js.map +0 -1
- package/dist/input-group-CvWwK1Vz.cjs.map +0 -1
- package/dist/lib/springs.cjs.js +0 -32
- package/dist/lib/springs.cjs.js.map +0 -1
- package/dist/lib/springs.d.ts +0 -2
- package/dist/lib/springs.es.js +0 -27
- package/dist/lib/springs.es.js.map +0 -1
- package/dist/main-sidebar-link-active-CmDoiX6g.js.map +0 -1
- package/dist/main-sidebar-link-active-DbCvKZy2.cjs.map +0 -1
- package/dist/markdown-renderer-B0gTm_Ea.js.map +0 -1
- package/dist/markdown-renderer-D8qYAU7K.cjs.map +0 -1
- package/dist/metrics-card-BUJxiwec.cjs.map +0 -1
- package/dist/metrics-card-BlBt1WHw.js.map +0 -1
- package/dist/new/layout/page-shell.cjs.js +0 -34
- package/dist/new/layout/page-shell.cjs.js.map +0 -1
- package/dist/new/layout/page-shell.d.ts +0 -2
- package/dist/new/layout/page-shell.es.js +0 -30
- package/dist/new/layout/page-shell.es.js.map +0 -1
- package/dist/no-data-page-layout-DcVPjj-J.js +0 -9
- package/dist/no-data-page-layout-DcVPjj-J.js.map +0 -1
- package/dist/no-data-page-layout-Drzbg_w8.cjs +0 -11
- package/dist/no-data-page-layout-Drzbg_w8.cjs.map +0 -1
- package/dist/page-heading-context-D3yjYoJE.js +0 -9
- package/dist/page-heading-context-D3yjYoJE.js.map +0 -1
- package/dist/page-heading-context-Du-CpxAx.cjs +0 -12
- package/dist/page-heading-context-Du-CpxAx.cjs.map +0 -1
- package/dist/page-layout-C9ifD9Q8.cjs +0 -99
- package/dist/page-layout-C9ifD9Q8.cjs.map +0 -1
- package/dist/page-layout-xcM8IR-B.js +0 -97
- package/dist/page-layout-xcM8IR-B.js.map +0 -1
- package/dist/property-filter-applied-BBiUbtr0.js.map +0 -1
- package/dist/property-filter-applied-BmxCPe2d.cjs.map +0 -1
- package/dist/select--DXpTg0O.js.map +0 -1
- package/dist/select-7ACAVdGX.cjs.map +0 -1
- package/dist/spinner-CqP-NaB2.cjs.map +0 -1
- package/dist/spinner-D2C2DYw8.js.map +0 -1
- package/dist/src/ds/components/MainContent/index.d.ts +0 -1
- package/dist/src/ds/components/MainContent/main-content.d.ts +0 -21
- package/dist/src/ds/components/MainContent/main-content.stories.d.ts +0 -10
- package/dist/src/ds/components/PageLayout/no-data-page-layout.d.ts +0 -6
- package/dist/src/ds/components/PageLayout/page-heading-context.d.ts +0 -2
- package/dist/src/ds/components/PageLayout/page-layout-column.d.ts +0 -5
- package/dist/src/ds/components/PageLayout/page-layout-main-area.d.ts +0 -7
- package/dist/src/ds/components/PageLayout/page-layout-root.d.ts +0 -7
- package/dist/src/ds/components/PageLayout/page-layout-row.d.ts +0 -11
- package/dist/src/ds/components/PageLayout/page-layout-top-area.d.ts +0 -5
- package/dist/src/ds/new/layout/page-shell/index.d.ts +0 -1
- package/dist/src/ds/new/layout/page-shell/page-shell.d.ts +0 -24
- package/dist/src/ds/new/layout/page-shell/page-shell.stories.d.ts +0 -63
- package/dist/src/lib/springs.d.ts +0 -31
|
@@ -21,6 +21,7 @@ const TRACE_FILTER_OPERATOR_IDS = [
|
|
|
21
21
|
"lte"
|
|
22
22
|
];
|
|
23
23
|
const isTraceFilterOperatorId = (value) => TRACE_FILTER_OPERATOR_IDS.includes(value);
|
|
24
|
+
const isTraceFilterGroup = (node) => "nodes" in node;
|
|
24
25
|
const TRACE_FILTER_OPERATOR_TO_QUERY_OP = {
|
|
25
26
|
is: "eq",
|
|
26
27
|
isNot: "ne",
|
|
@@ -76,55 +77,54 @@ function scalarPredicate(op, path, values) {
|
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
|
-
function
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
80
|
+
function tokenToTraceQueryPredicate(token) {
|
|
81
|
+
if (TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS.has(token.fieldId)) return void 0;
|
|
82
|
+
const operatorId = token.operatorId ?? "is";
|
|
83
|
+
const isPresence = operatorId === "exists" || operatorId === "notExists";
|
|
84
|
+
const rawValues = (Array.isArray(token.value) ? token.value : [token.value]).filter(
|
|
85
|
+
(value) => typeof value === "string" && Boolean(value.trim()) && value !== "Any"
|
|
86
|
+
);
|
|
87
|
+
if (!rawValues.length && !isPresence) return void 0;
|
|
88
|
+
let fieldId = token.fieldId;
|
|
89
|
+
let values = rawValues;
|
|
90
|
+
if (fieldId.startsWith("metadata.")) {
|
|
91
|
+
if (fieldId.length === "metadata.".length) return void 0;
|
|
92
|
+
} else if (fieldId === "rootEntityType" || fieldId === "entityType") {
|
|
93
|
+
fieldId = "entityType";
|
|
94
|
+
} else if (fieldId === "status") {
|
|
95
|
+
values = rawValues.filter((value) => value !== "running");
|
|
96
|
+
if (!values.length && !isPresence) return void 0;
|
|
97
|
+
} else if (TRACE_QUERY_NUMERIC_FIELD_IDS.has(fieldId)) {
|
|
98
|
+
values = rawValues.map(Number).filter((value) => !Number.isNaN(value));
|
|
99
|
+
if (!values.length && !isPresence) return void 0;
|
|
100
|
+
}
|
|
101
|
+
const { scope, path } = resolveTraceQueryPath(fieldId);
|
|
102
|
+
const isMetadata = fieldId.startsWith("metadata.");
|
|
103
|
+
if (!scope && !isMetadata && !TRACE_QUERY_TRACE_FIELD_IDS.has(fieldId)) return void 0;
|
|
104
|
+
if (scope && isNegativeOperator(operatorId)) {
|
|
105
|
+
const positive = scalarPredicate(NEGATIVE_TO_POSITIVE[operatorId], path, values);
|
|
106
|
+
return positive ? { predicate: { [scope]: { none: positive } } } : void 0;
|
|
107
|
+
}
|
|
108
|
+
const predicate = scalarPredicate(operatorId, path, values);
|
|
109
|
+
if (!predicate) return void 0;
|
|
110
|
+
if (scope) return { scope, predicate };
|
|
111
|
+
if ((operatorId === "isNot" || operatorId === "notIn") && (isMetadata || TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS.has(fieldId))) {
|
|
112
|
+
return { predicate: { op: "or", args: [predicate, { op: "notExists", path }] } };
|
|
113
|
+
}
|
|
114
|
+
return { predicate };
|
|
115
|
+
}
|
|
116
|
+
function predicatesForTokens(tokens, { mergeRelated }) {
|
|
87
117
|
const args = [];
|
|
88
118
|
const related = { spans: [], scores: [], feedback: [] };
|
|
89
|
-
if (rootEntityType) args.push({ op: "eq", left: { path: "entityType" }, right: { literal: rootEntityType } });
|
|
90
|
-
if (status && status !== "running") args.push({ op: "eq", left: { path: "status" }, right: { literal: status } });
|
|
91
119
|
for (const token of tokens) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
if (!rawValues.length && !isPresence) continue;
|
|
99
|
-
let fieldId = token.fieldId;
|
|
100
|
-
let values = rawValues;
|
|
101
|
-
if (fieldId.startsWith("metadata.")) {
|
|
102
|
-
if (fieldId.length === "metadata.".length) continue;
|
|
103
|
-
} else if (fieldId === "rootEntityType" || fieldId === "entityType") {
|
|
104
|
-
fieldId = "entityType";
|
|
105
|
-
} else if (fieldId === "status") {
|
|
106
|
-
values = rawValues.filter((value) => value !== "running");
|
|
107
|
-
if (!values.length && !isPresence) continue;
|
|
108
|
-
} else if (TRACE_QUERY_NUMERIC_FIELD_IDS.has(fieldId)) {
|
|
109
|
-
values = rawValues.map(Number).filter((value) => !Number.isNaN(value));
|
|
110
|
-
if (!values.length && !isPresence) continue;
|
|
111
|
-
}
|
|
112
|
-
const { scope, path } = resolveTraceQueryPath(fieldId);
|
|
113
|
-
const isMetadata = fieldId.startsWith("metadata.");
|
|
114
|
-
if (!scope && !isMetadata && !TRACE_QUERY_TRACE_FIELD_IDS.has(fieldId)) continue;
|
|
115
|
-
if (scope && isNegativeOperator(operatorId)) {
|
|
116
|
-
const positive = scalarPredicate(NEGATIVE_TO_POSITIVE[operatorId], path, values);
|
|
117
|
-
if (positive) args.push({ [scope]: { none: positive } });
|
|
118
|
-
continue;
|
|
119
|
-
}
|
|
120
|
-
const predicate = scalarPredicate(operatorId, path, values);
|
|
121
|
-
if (!predicate) continue;
|
|
122
|
-
if (scope) {
|
|
123
|
-
related[scope].push(predicate);
|
|
124
|
-
} else if ((operatorId === "isNot" || operatorId === "notIn") && (isMetadata || TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS.has(fieldId))) {
|
|
125
|
-
args.push({ op: "or", args: [predicate, { op: "notExists", path }] });
|
|
120
|
+
const result = tokenToTraceQueryPredicate(token);
|
|
121
|
+
if (!result) continue;
|
|
122
|
+
if (!("scope" in result)) {
|
|
123
|
+
args.push(result.predicate);
|
|
124
|
+
} else if (mergeRelated) {
|
|
125
|
+
related[result.scope].push(result.predicate);
|
|
126
126
|
} else {
|
|
127
|
-
args.push(predicate);
|
|
127
|
+
args.push({ [result.scope]: { some: result.predicate } });
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
for (const scope of TRACE_QUERY_RELATED_SCOPES) {
|
|
@@ -133,6 +133,36 @@ function buildTraceQueryRequest({
|
|
|
133
133
|
const some = rest.length ? { op: "and", args: [first, ...rest] } : first;
|
|
134
134
|
args.push({ [scope]: { some } });
|
|
135
135
|
}
|
|
136
|
+
return args;
|
|
137
|
+
}
|
|
138
|
+
function groupToTraceQueryPredicate(group) {
|
|
139
|
+
const tokens = group.nodes.filter((node) => !isTraceFilterGroup(node));
|
|
140
|
+
const args = predicatesForTokens(tokens, { mergeRelated: group.logic === "and" });
|
|
141
|
+
for (const node of group.nodes) {
|
|
142
|
+
if (!isTraceFilterGroup(node)) continue;
|
|
143
|
+
const predicate = groupToTraceQueryPredicate(node);
|
|
144
|
+
if (predicate) args.push(predicate);
|
|
145
|
+
}
|
|
146
|
+
if (args.length === 0) return void 0;
|
|
147
|
+
return args.length === 1 ? args[0] : { op: group.logic, args };
|
|
148
|
+
}
|
|
149
|
+
function buildTraceQueryRequest({
|
|
150
|
+
rootEntityType,
|
|
151
|
+
status,
|
|
152
|
+
dateFrom,
|
|
153
|
+
dateTo,
|
|
154
|
+
tokens,
|
|
155
|
+
groups = [],
|
|
156
|
+
now
|
|
157
|
+
}) {
|
|
158
|
+
const args = [];
|
|
159
|
+
if (rootEntityType) args.push({ op: "eq", left: { path: "entityType" }, right: { literal: rootEntityType } });
|
|
160
|
+
if (status && status !== "running") args.push({ op: "eq", left: { path: "status" }, right: { literal: status } });
|
|
161
|
+
args.push(...predicatesForTokens(tokens, { mergeRelated: true }));
|
|
162
|
+
for (const group of groups) {
|
|
163
|
+
const predicate = groupToTraceQueryPredicate(group);
|
|
164
|
+
if (predicate) args.push(predicate);
|
|
165
|
+
}
|
|
136
166
|
return {
|
|
137
167
|
timeRange: {
|
|
138
168
|
from: (dateFrom ?? new Date(now.getTime() - 7 * 24 * 60 * 60 * 1e3)).toISOString(),
|
|
@@ -150,5 +180,5 @@ function clampTraceDiscoveryTimeRange(timeRange) {
|
|
|
150
180
|
return { from: new Date(minFrom).toISOString(), to: timeRange.to };
|
|
151
181
|
}
|
|
152
182
|
|
|
153
|
-
export { TRACE_FILTER_OPERATOR_IDS, TRACE_QUERY_DISCOVERY_MAX_RANGE_MS, TRACE_QUERY_NUMERIC_FIELD_IDS, TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, buildTraceQueryRequest, clampTraceDiscoveryTimeRange, isTraceFilterOperatorId };
|
|
183
|
+
export { TRACE_FILTER_OPERATOR_IDS, TRACE_QUERY_DISCOVERY_MAX_RANGE_MS, TRACE_QUERY_NUMERIC_FIELD_IDS, TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, buildTraceQueryRequest, clampTraceDiscoveryTimeRange, isTraceFilterGroup, isTraceFilterOperatorId };
|
|
154
184
|
//# sourceMappingURL=trace-query-filters.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-query-filters.es.js","sources":["../../../src/domains/traces/trace-query-filters.ts"],"sourcesContent":["import type { QueryTracesInput } from '@mastra/client-js';\nimport type { TraceQueryPredicate, TraceQueryScalarPredicate } from '@mastra/core/storage';\nimport type { buildTraceListFilters, TraceStatusFilter } from './trace-filters';\nimport type { PropertyFilterToken } from '@/ds/components/PropertyFilter/types';\n\nexport const TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS = new Set([\n 'tags',\n 'runId',\n 'sessionId',\n 'requestId',\n 'userId',\n 'organizationId',\n 'serviceName',\n 'experimentId',\n]);\n\nexport const TRACE_FILTER_OPERATOR_IDS = [\n 'is',\n 'isNot',\n 'in',\n 'notIn',\n 'exists',\n 'notExists',\n 'gt',\n 'gte',\n 'lt',\n 'lte',\n] as const;\nexport type TraceFilterOperatorId = (typeof TRACE_FILTER_OPERATOR_IDS)[number];\n\nexport const isTraceFilterOperatorId = (value: string): value is TraceFilterOperatorId =>\n (TRACE_FILTER_OPERATOR_IDS as readonly string[]).includes(value);\n\n/** A trace filter chip: `operatorId` defaults to `is` (equality / set membership). */\nexport type TraceFilterToken = PropertyFilterToken & { operatorId?: TraceFilterOperatorId };\n\nconst TRACE_FILTER_OPERATOR_TO_QUERY_OP = {\n is: 'eq',\n isNot: 'ne',\n in: 'in',\n notIn: 'notIn',\n exists: 'exists',\n notExists: 'notExists',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n} as const satisfies Record<TraceFilterOperatorId, TraceQueryScalarPredicate['op']>;\n\n/** Fields whose values must be sent as numbers. Non-numeric input is dropped. */\nexport const TRACE_QUERY_NUMERIC_FIELD_IDS = new Set(['spans.durationMs', 'scores.score', 'feedback.value']);\n\nconst TRACE_QUERY_TRACE_FIELD_IDS = new Set([\n 'entityType',\n 'status',\n 'entityName',\n 'environment',\n 'traceId',\n 'threadId',\n 'resourceId',\n]);\n\n/** Trace-level fields that may be unset. \"is not X\" on these must also keep traces\n * where the field is missing, so the predicate is `or[ne, notExists]`. */\nexport const TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS = new Set(['threadId', 'resourceId', 'environment']);\n\n/** Negative operators are expressed as `none(<positive>)` on related collections. */\nconst NEGATIVE_TO_POSITIVE = { isNot: 'is', notIn: 'in', notExists: 'exists' } as const satisfies Partial<\n Record<TraceFilterOperatorId, TraceFilterOperatorId>\n>;\ntype NegativeOperatorId = keyof typeof NEGATIVE_TO_POSITIVE;\nconst isNegativeOperator = (op: TraceFilterOperatorId): op is NegativeOperatorId => op in NEGATIVE_TO_POSITIVE;\n\nconst TRACE_QUERY_RELATED_SCOPES = ['spans', 'scores', 'feedback'] as const;\nexport type TraceQueryRelatedScope = (typeof TRACE_QUERY_RELATED_SCOPES)[number];\n\n/** Split a field id into its related scope (`spans.` / `scores.` / `feedback.`) and\n * the path inside that scope. Trace-level fields have no scope. `entityId` is the\n * legacy id for `spans.entityId`. */\nfunction resolveTraceQueryPath(fieldId: string): { scope?: TraceQueryRelatedScope; path: string } {\n if (fieldId === 'entityId') return { scope: 'spans', path: 'entityId' };\n for (const scope of TRACE_QUERY_RELATED_SCOPES) {\n if (fieldId.startsWith(`${scope}.`) && fieldId.length > scope.length + 1) {\n return { scope, path: fieldId.slice(scope.length + 1) };\n }\n }\n return { path: fieldId };\n}\n\nfunction scalarPredicate(\n op: TraceFilterOperatorId,\n path: string,\n values: (string | number)[],\n): TraceQueryScalarPredicate | undefined {\n const queryOp = TRACE_FILTER_OPERATOR_TO_QUERY_OP[op];\n switch (queryOp) {\n case 'exists':\n case 'notExists':\n return { op: queryOp, path };\n case 'in':\n case 'notIn':\n return values.length ? { op: queryOp, value: { path }, set: values } : undefined;\n default: {\n if (!values.length) return undefined;\n // `is` with several values is set membership; `isNot` with several is exclusion.\n if (values.length > 1) {\n if (queryOp === 'eq') return { op: 'in', value: { path }, set: values };\n if (queryOp === 'ne') return { op: 'notIn', value: { path }, set: values };\n }\n const [literal] = values;\n return literal === undefined ? undefined : { op: queryOp, left: { path }, right: { literal } };\n }\n }\n}\n\nexport function buildTraceQueryRequest({\n rootEntityType,\n status,\n dateFrom,\n dateTo,\n tokens,\n now,\n}: Omit<Parameters<typeof buildTraceListFilters>[0], 'tokens' | 'status'> & {\n status?: TraceStatusFilter;\n tokens: TraceFilterToken[];\n now: Date;\n}): Pick<QueryTracesInput, 'timeRange' | 'where'> {\n const args: TraceQueryPredicate[] = [];\n const related: Record<TraceQueryRelatedScope, TraceQueryScalarPredicate[]> = { spans: [], scores: [], feedback: [] };\n\n if (rootEntityType) args.push({ op: 'eq', left: { path: 'entityType' }, right: { literal: rootEntityType } });\n if (status && status !== 'running') args.push({ op: 'eq', left: { path: 'status' }, right: { literal: status } });\n\n for (const token of tokens) {\n if (TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS.has(token.fieldId)) continue;\n const operatorId = token.operatorId ?? 'is';\n const isPresence = operatorId === 'exists' || operatorId === 'notExists';\n\n const rawValues = (Array.isArray(token.value) ? token.value : [token.value]).filter(\n (value): value is string => typeof value === 'string' && Boolean(value.trim()) && value !== 'Any',\n );\n if (!rawValues.length && !isPresence) continue;\n\n let fieldId = token.fieldId;\n let values: (string | number)[] = rawValues;\n // Discovered metadata fields: the field id is already the predicate path (`metadata.<key>`).\n if (fieldId.startsWith('metadata.')) {\n if (fieldId.length === 'metadata.'.length) continue;\n } else if (fieldId === 'rootEntityType' || fieldId === 'entityType') {\n fieldId = 'entityType';\n } else if (fieldId === 'status') {\n values = rawValues.filter(value => value !== 'running');\n if (!values.length && !isPresence) continue;\n } else if (TRACE_QUERY_NUMERIC_FIELD_IDS.has(fieldId)) {\n values = rawValues.map(Number).filter(value => !Number.isNaN(value));\n if (!values.length && !isPresence) continue;\n }\n\n const { scope, path } = resolveTraceQueryPath(fieldId);\n const isMetadata = fieldId.startsWith('metadata.');\n if (!scope && !isMetadata && !TRACE_QUERY_TRACE_FIELD_IDS.has(fieldId)) continue;\n\n if (scope && isNegativeOperator(operatorId)) {\n // `some(model ne X)` matches any trace with one span that differs; the user\n // means \"no span with model X\", which is `none(model eq X)`.\n const positive = scalarPredicate(NEGATIVE_TO_POSITIVE[operatorId], path, values);\n if (positive) args.push({ [scope]: { none: positive } } as TraceQueryPredicate);\n continue;\n }\n\n const predicate = scalarPredicate(operatorId, path, values);\n if (!predicate) continue;\n if (scope) {\n related[scope].push(predicate);\n } else if (\n (operatorId === 'isNot' || operatorId === 'notIn') &&\n (isMetadata || TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS.has(fieldId))\n ) {\n args.push({ op: 'or', args: [predicate, { op: 'notExists', path }] });\n } else {\n args.push(predicate);\n }\n }\n\n // Tokens on the same related collection must match the same row (e.g. scorer X\n // AND score < 0.6), so they are merged into a single `some` predicate.\n for (const scope of TRACE_QUERY_RELATED_SCOPES) {\n const [first, ...rest] = related[scope];\n if (!first) continue;\n const some = rest.length ? { op: 'and' as const, args: [first, ...rest] } : first;\n args.push({ [scope]: { some } } as TraceQueryPredicate);\n }\n\n return {\n timeRange: {\n from: (dateFrom ?? new Date(now.getTime() - 7 * 24 * 60 * 60 * 1000)).toISOString(),\n to: (dateTo ?? now).toISOString(),\n },\n ...(args.length ? { where: { op: 'and' as const, args } } : {}),\n };\n}\n\nexport const TRACE_QUERY_DISCOVERY_MAX_RANGE_MS = 31 * 24 * 60 * 60 * 1000;\n\n/** Discovery endpoints reject ranges wider than 31 days (and `from >= to`); clamp\n * the page's selected range so wide custom ranges still get field suggestions\n * for the most recent window. */\nexport function clampTraceDiscoveryTimeRange(timeRange: { from: string; to: string }): { from: string; to: string } {\n const to = new Date(timeRange.to).getTime();\n const from = new Date(timeRange.from).getTime();\n const minFrom = to - TRACE_QUERY_DISCOVERY_MAX_RANGE_MS;\n if (from >= minFrom && from < to) return timeRange;\n return { from: new Date(minFrom).toISOString(), to: timeRange.to };\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace-query-filters.es.js","sources":["../../../src/domains/traces/trace-query-filters.ts"],"sourcesContent":["import type { QueryTracesInput } from '@mastra/client-js';\nimport type { TraceQueryPredicate, TraceQueryScalarPredicate } from '@mastra/core/storage';\nimport type { buildTraceListFilters, TraceStatusFilter } from './trace-filters';\nimport type { PropertyFilterToken } from '@/ds/components/PropertyFilter/types';\n\nexport const TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS = new Set([\n 'tags',\n 'runId',\n 'sessionId',\n 'requestId',\n 'userId',\n 'organizationId',\n 'serviceName',\n 'experimentId',\n]);\n\nexport const TRACE_FILTER_OPERATOR_IDS = [\n 'is',\n 'isNot',\n 'in',\n 'notIn',\n 'exists',\n 'notExists',\n 'gt',\n 'gte',\n 'lt',\n 'lte',\n] as const;\nexport type TraceFilterOperatorId = (typeof TRACE_FILTER_OPERATOR_IDS)[number];\n\nexport const isTraceFilterOperatorId = (value: string): value is TraceFilterOperatorId =>\n (TRACE_FILTER_OPERATOR_IDS as readonly string[]).includes(value);\n\n/** A trace filter chip: `operatorId` defaults to `is` (equality / set membership). */\nexport type TraceFilterToken = PropertyFilterToken & {\n operatorId?: TraceFilterOperatorId;\n /** Only set for tokens inside a group: a group may hold several tokens on the same field. */\n id?: string;\n};\n\nexport type TraceFilterLogic = 'and' | 'or';\n\n/** An advanced filter: a nested boolean combination of tokens. */\nexport type TraceFilterGroup = { id: string; logic: TraceFilterLogic; nodes: TraceFilterNode[] };\nexport type TraceFilterNode = TraceFilterToken | TraceFilterGroup;\n\nexport const isTraceFilterGroup = (node: TraceFilterNode): node is TraceFilterGroup => 'nodes' in node;\n\nconst TRACE_FILTER_OPERATOR_TO_QUERY_OP = {\n is: 'eq',\n isNot: 'ne',\n in: 'in',\n notIn: 'notIn',\n exists: 'exists',\n notExists: 'notExists',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n} as const satisfies Record<TraceFilterOperatorId, TraceQueryScalarPredicate['op']>;\n\n/** Fields whose values must be sent as numbers. Non-numeric input is dropped. */\nexport const TRACE_QUERY_NUMERIC_FIELD_IDS = new Set(['spans.durationMs', 'scores.score', 'feedback.value']);\n\nconst TRACE_QUERY_TRACE_FIELD_IDS = new Set([\n 'entityType',\n 'status',\n 'entityName',\n 'environment',\n 'traceId',\n 'threadId',\n 'resourceId',\n]);\n\n/** Trace-level fields that may be unset. \"is not X\" on these must also keep traces\n * where the field is missing, so the predicate is `or[ne, notExists]`. */\nexport const TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS = new Set(['threadId', 'resourceId', 'environment']);\n\n/** Negative operators are expressed as `none(<positive>)` on related collections. */\nconst NEGATIVE_TO_POSITIVE = { isNot: 'is', notIn: 'in', notExists: 'exists' } as const satisfies Partial<\n Record<TraceFilterOperatorId, TraceFilterOperatorId>\n>;\ntype NegativeOperatorId = keyof typeof NEGATIVE_TO_POSITIVE;\nconst isNegativeOperator = (op: TraceFilterOperatorId): op is NegativeOperatorId => op in NEGATIVE_TO_POSITIVE;\n\nconst TRACE_QUERY_RELATED_SCOPES = ['spans', 'scores', 'feedback'] as const;\nexport type TraceQueryRelatedScope = (typeof TRACE_QUERY_RELATED_SCOPES)[number];\n\n/** Split a field id into its related scope (`spans.` / `scores.` / `feedback.`) and\n * the path inside that scope. Trace-level fields have no scope. `entityId` is the\n * legacy id for `spans.entityId`. */\nfunction resolveTraceQueryPath(fieldId: string): { scope?: TraceQueryRelatedScope; path: string } {\n if (fieldId === 'entityId') return { scope: 'spans', path: 'entityId' };\n for (const scope of TRACE_QUERY_RELATED_SCOPES) {\n if (fieldId.startsWith(`${scope}.`) && fieldId.length > scope.length + 1) {\n return { scope, path: fieldId.slice(scope.length + 1) };\n }\n }\n return { path: fieldId };\n}\n\nfunction scalarPredicate(\n op: TraceFilterOperatorId,\n path: string,\n values: (string | number)[],\n): TraceQueryScalarPredicate | undefined {\n const queryOp = TRACE_FILTER_OPERATOR_TO_QUERY_OP[op];\n switch (queryOp) {\n case 'exists':\n case 'notExists':\n return { op: queryOp, path };\n case 'in':\n case 'notIn':\n return values.length ? { op: queryOp, value: { path }, set: values } : undefined;\n default: {\n if (!values.length) return undefined;\n // `is` with several values is set membership; `isNot` with several is exclusion.\n if (values.length > 1) {\n if (queryOp === 'eq') return { op: 'in', value: { path }, set: values };\n if (queryOp === 'ne') return { op: 'notIn', value: { path }, set: values };\n }\n const [literal] = values;\n return literal === undefined ? undefined : { op: queryOp, left: { path }, right: { literal } };\n }\n }\n}\n\ntype TokenPredicate =\n | { predicate: TraceQueryPredicate }\n /** A positive predicate on a related row; the caller decides how to wrap it in `some`. */\n | { scope: TraceQueryRelatedScope; predicate: TraceQueryScalarPredicate };\n\nfunction tokenToTraceQueryPredicate(token: TraceFilterToken): TokenPredicate | undefined {\n if (TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS.has(token.fieldId)) return undefined;\n const operatorId = token.operatorId ?? 'is';\n const isPresence = operatorId === 'exists' || operatorId === 'notExists';\n\n const rawValues = (Array.isArray(token.value) ? token.value : [token.value]).filter(\n (value): value is string => typeof value === 'string' && Boolean(value.trim()) && value !== 'Any',\n );\n if (!rawValues.length && !isPresence) return undefined;\n\n let fieldId = token.fieldId;\n let values: (string | number)[] = rawValues;\n // Discovered metadata fields: the field id is already the predicate path (`metadata.<key>`).\n if (fieldId.startsWith('metadata.')) {\n if (fieldId.length === 'metadata.'.length) return undefined;\n } else if (fieldId === 'rootEntityType' || fieldId === 'entityType') {\n fieldId = 'entityType';\n } else if (fieldId === 'status') {\n values = rawValues.filter(value => value !== 'running');\n if (!values.length && !isPresence) return undefined;\n } else if (TRACE_QUERY_NUMERIC_FIELD_IDS.has(fieldId)) {\n values = rawValues.map(Number).filter(value => !Number.isNaN(value));\n if (!values.length && !isPresence) return undefined;\n }\n\n const { scope, path } = resolveTraceQueryPath(fieldId);\n const isMetadata = fieldId.startsWith('metadata.');\n if (!scope && !isMetadata && !TRACE_QUERY_TRACE_FIELD_IDS.has(fieldId)) return undefined;\n\n if (scope && isNegativeOperator(operatorId)) {\n // `some(model ne X)` matches any trace with one span that differs; the user\n // means \"no span with model X\", which is `none(model eq X)`.\n const positive = scalarPredicate(NEGATIVE_TO_POSITIVE[operatorId], path, values);\n return positive ? { predicate: { [scope]: { none: positive } } as TraceQueryPredicate } : undefined;\n }\n\n const predicate = scalarPredicate(operatorId, path, values);\n if (!predicate) return undefined;\n if (scope) return { scope, predicate };\n if (\n (operatorId === 'isNot' || operatorId === 'notIn') &&\n (isMetadata || TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS.has(fieldId))\n ) {\n return { predicate: { op: 'or', args: [predicate, { op: 'notExists', path }] } };\n }\n return { predicate };\n}\n\n/** Convert tokens to predicates. With `mergeRelated`, tokens on the same related\n * collection must match the same row (e.g. scorer X AND score < 0.6), so they are\n * merged into a single `some`. Inside an `or` group each token stands alone. */\nfunction predicatesForTokens(tokens: TraceFilterToken[], { mergeRelated }: { mergeRelated: boolean }) {\n const args: TraceQueryPredicate[] = [];\n const related: Record<TraceQueryRelatedScope, TraceQueryScalarPredicate[]> = { spans: [], scores: [], feedback: [] };\n\n for (const token of tokens) {\n const result = tokenToTraceQueryPredicate(token);\n if (!result) continue;\n if (!('scope' in result)) {\n args.push(result.predicate);\n } else if (mergeRelated) {\n related[result.scope].push(result.predicate);\n } else {\n args.push({ [result.scope]: { some: result.predicate } } as TraceQueryPredicate);\n }\n }\n\n for (const scope of TRACE_QUERY_RELATED_SCOPES) {\n const [first, ...rest] = related[scope];\n if (!first) continue;\n const some = rest.length ? { op: 'and' as const, args: [first, ...rest] } : first;\n args.push({ [scope]: { some } } as TraceQueryPredicate);\n }\n\n return args;\n}\n\nfunction groupToTraceQueryPredicate(group: TraceFilterGroup): TraceQueryPredicate | undefined {\n const tokens = group.nodes.filter((node): node is TraceFilterToken => !isTraceFilterGroup(node));\n const args = predicatesForTokens(tokens, { mergeRelated: group.logic === 'and' });\n for (const node of group.nodes) {\n if (!isTraceFilterGroup(node)) continue;\n const predicate = groupToTraceQueryPredicate(node);\n if (predicate) args.push(predicate);\n }\n if (args.length === 0) return undefined;\n return args.length === 1 ? args[0] : { op: group.logic, args };\n}\n\nexport function buildTraceQueryRequest({\n rootEntityType,\n status,\n dateFrom,\n dateTo,\n tokens,\n groups = [],\n now,\n}: Omit<Parameters<typeof buildTraceListFilters>[0], 'tokens' | 'status'> & {\n status?: TraceStatusFilter;\n tokens: TraceFilterToken[];\n groups?: TraceFilterGroup[];\n now: Date;\n}): Pick<QueryTracesInput, 'timeRange' | 'where'> {\n const args: TraceQueryPredicate[] = [];\n\n if (rootEntityType) args.push({ op: 'eq', left: { path: 'entityType' }, right: { literal: rootEntityType } });\n if (status && status !== 'running') args.push({ op: 'eq', left: { path: 'status' }, right: { literal: status } });\n\n args.push(...predicatesForTokens(tokens, { mergeRelated: true }));\n\n for (const group of groups) {\n const predicate = groupToTraceQueryPredicate(group);\n if (predicate) args.push(predicate);\n }\n\n return {\n timeRange: {\n from: (dateFrom ?? new Date(now.getTime() - 7 * 24 * 60 * 60 * 1000)).toISOString(),\n to: (dateTo ?? now).toISOString(),\n },\n ...(args.length ? { where: { op: 'and' as const, args } } : {}),\n };\n}\n\nexport const TRACE_QUERY_DISCOVERY_MAX_RANGE_MS = 31 * 24 * 60 * 60 * 1000;\n\n/** Discovery endpoints reject ranges wider than 31 days (and `from >= to`); clamp\n * the page's selected range so wide custom ranges still get field suggestions\n * for the most recent window. */\nexport function clampTraceDiscoveryTimeRange(timeRange: { from: string; to: string }): { from: string; to: string } {\n const to = new Date(timeRange.to).getTime();\n const from = new Date(timeRange.from).getTime();\n const minFrom = to - TRACE_QUERY_DISCOVERY_MAX_RANGE_MS;\n if (from >= minFrom && from < to) return timeRange;\n return { from: new Date(minFrom).toISOString(), to: timeRange.to };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -142,6 +142,7 @@ exports.TRACE_DATE_PRESET_PARAM = domains_traces_traceFilters.TRACE_DATE_PRESET_
|
|
|
142
142
|
exports.TRACE_DATE_PRESET_VALUES = domains_traces_traceFilters.TRACE_DATE_PRESET_VALUES;
|
|
143
143
|
exports.TRACE_DATE_TO_PARAM = domains_traces_traceFilters.TRACE_DATE_TO_PARAM;
|
|
144
144
|
exports.TRACE_FILTER_BAR_OPERATORS = domains_traces_traceFilters.TRACE_FILTER_BAR_OPERATORS;
|
|
145
|
+
exports.TRACE_FILTER_GROUP_PARAM = domains_traces_traceFilters.TRACE_FILTER_GROUP_PARAM;
|
|
145
146
|
exports.TRACE_FILTER_OPERATOR_PARAM_SUFFIX = domains_traces_traceFilters.TRACE_FILTER_OPERATOR_PARAM_SUFFIX;
|
|
146
147
|
exports.TRACE_LIST_MODE_OPTIONS = domains_traces_traceFilters.TRACE_LIST_MODE_OPTIONS;
|
|
147
148
|
exports.TRACE_LIST_MODE_PARAM = domains_traces_traceFilters.TRACE_LIST_MODE_PARAM;
|
|
@@ -159,19 +160,24 @@ exports.applyTracePropertyFilterTokens = domains_traces_traceFilters.applyTraceP
|
|
|
159
160
|
exports.buildTraceListFilters = domains_traces_traceFilters.buildTraceListFilters;
|
|
160
161
|
exports.clearSavedTraceFilters = domains_traces_traceFilters.clearSavedTraceFilters;
|
|
161
162
|
exports.createTraceFilterBarFields = domains_traces_traceFilters.createTraceFilterBarFields;
|
|
163
|
+
exports.filterBarExpressionToTraceFilters = domains_traces_traceFilters.filterBarExpressionToTraceFilters;
|
|
162
164
|
exports.filterBarItemsToTraceTokens = domains_traces_traceFilters.filterBarItemsToTraceTokens;
|
|
163
165
|
exports.getPreservedTraceFilterParams = domains_traces_traceFilters.getPreservedTraceFilterParams;
|
|
166
|
+
exports.getTraceFilterGroups = domains_traces_traceFilters.getTraceFilterGroups;
|
|
164
167
|
exports.getTracePropertyFilterTokens = domains_traces_traceFilters.getTracePropertyFilterTokens;
|
|
165
168
|
exports.hasAnyTraceFilterParams = domains_traces_traceFilters.hasAnyTraceFilterParams;
|
|
166
169
|
exports.isTraceMetadataFieldId = domains_traces_traceFilters.isTraceMetadataFieldId;
|
|
167
170
|
exports.loadTraceFiltersFromStorage = domains_traces_traceFilters.loadTraceFiltersFromStorage;
|
|
168
171
|
exports.metadataFieldIdToParam = domains_traces_traceFilters.metadataFieldIdToParam;
|
|
169
172
|
exports.metadataParamToFieldId = domains_traces_traceFilters.metadataParamToFieldId;
|
|
173
|
+
exports.parseTraceFilterGroupParam = domains_traces_traceFilters.parseTraceFilterGroupParam;
|
|
170
174
|
exports.saveTraceFiltersToStorage = domains_traces_traceFilters.saveTraceFiltersToStorage;
|
|
175
|
+
exports.serializeTraceFilterGroup = domains_traces_traceFilters.serializeTraceFilterGroup;
|
|
171
176
|
exports.traceFilterFieldColor = domains_traces_traceFilters.traceFilterFieldColor;
|
|
172
177
|
exports.traceFilterFieldIcon = domains_traces_traceFilters.traceFilterFieldIcon;
|
|
173
178
|
exports.traceFilterOperatorParam = domains_traces_traceFilters.traceFilterOperatorParam;
|
|
174
179
|
exports.traceFilterTokenOperator = domains_traces_traceFilters.traceFilterTokenOperator;
|
|
180
|
+
exports.traceFiltersToFilterBarExpression = domains_traces_traceFilters.traceFiltersToFilterBarExpression;
|
|
175
181
|
exports.traceTokensToFilterBarItems = domains_traces_traceFilters.traceTokensToFilterBarItems;
|
|
176
182
|
exports.TRACE_FILTER_OPERATOR_IDS = domains_traces_traceQueryFilters.TRACE_FILTER_OPERATOR_IDS;
|
|
177
183
|
exports.TRACE_QUERY_DISCOVERY_MAX_RANGE_MS = domains_traces_traceQueryFilters.TRACE_QUERY_DISCOVERY_MAX_RANGE_MS;
|
|
@@ -180,6 +186,7 @@ exports.TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS = domains_traces_traceQueryFilters.
|
|
|
180
186
|
exports.TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS = domains_traces_traceQueryFilters.TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS;
|
|
181
187
|
exports.buildTraceQueryRequest = domains_traces_traceQueryFilters.buildTraceQueryRequest;
|
|
182
188
|
exports.clampTraceDiscoveryTimeRange = domains_traces_traceQueryFilters.clampTraceDiscoveryTimeRange;
|
|
189
|
+
exports.isTraceFilterGroup = domains_traces_traceQueryFilters.isTraceFilterGroup;
|
|
183
190
|
exports.isTraceFilterOperatorId = domains_traces_traceQueryFilters.isTraceFilterOperatorId;
|
|
184
191
|
exports.CONTEXT_FIELD_IDS = domains_traces_types.CONTEXT_FIELD_IDS;
|
|
185
192
|
exports.THREAD_TRACE_MESSAGES_TAB = domains_traces_components_threadTrace_threadTraceRow.THREAD_TRACE_MESSAGES_TAB;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traces.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"traces.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -56,8 +56,8 @@ export { flattenToSearchText } from './traces/utils/flatten-to-search-text.es.js
|
|
|
56
56
|
export { selectSearchableSpans, toSearchableSpans } from './traces/utils/to-searchable-spans.es.js';
|
|
57
57
|
export { getSpanTimingLayout } from './traces/utils/span-timing.es.js';
|
|
58
58
|
export { formatSpanDuration, getInputPreview, getTokenLimitMessage, isTokenLimitExceeded } from './traces/utils/span-utils.es.js';
|
|
59
|
-
export { DEFAULT_TRACE_FILTERS_STORAGE_KEY, ROOT_ENTITY_TYPES, ROOT_ENTITY_TYPE_OPTIONS, TRACE_ANCHOR_SPAN_ID_PARAM, TRACE_DATE_FROM_PARAM, TRACE_DATE_PRESET_PARAM, TRACE_DATE_PRESET_VALUES, TRACE_DATE_TO_PARAM, TRACE_FILTER_BAR_OPERATORS, TRACE_FILTER_OPERATOR_PARAM_SUFFIX, TRACE_LIST_MODE_OPTIONS, TRACE_LIST_MODE_PARAM, TRACE_LIST_MODE_VALUES, TRACE_METADATA_FILTER_FIELD_PREFIX, TRACE_METADATA_FILTER_PARAM_PREFIX, TRACE_PROPERTY_FILTER_FIELD_IDS, TRACE_PROPERTY_FILTER_PARAM_BY_FIELD, TRACE_ROOT_ENTITY_TYPE_PARAM, TRACE_STATUS_OPTIONS, TRACE_STATUS_PARAM, TRACE_STATUS_VALUES, TRACE_SYNTHETIC_FILTER_FIELD_IDS, applyTracePropertyFilterTokens, buildTraceListFilters, clearSavedTraceFilters, createTraceFilterBarFields, filterBarItemsToTraceTokens, getPreservedTraceFilterParams, getTracePropertyFilterTokens, hasAnyTraceFilterParams, isTraceMetadataFieldId, loadTraceFiltersFromStorage, metadataFieldIdToParam, metadataParamToFieldId, saveTraceFiltersToStorage, traceFilterFieldColor, traceFilterFieldIcon, traceFilterOperatorParam, traceFilterTokenOperator, traceTokensToFilterBarItems } from './traces/trace-filters.es.js';
|
|
60
|
-
export { TRACE_FILTER_OPERATOR_IDS, TRACE_QUERY_DISCOVERY_MAX_RANGE_MS, TRACE_QUERY_NUMERIC_FIELD_IDS, TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, buildTraceQueryRequest, clampTraceDiscoveryTimeRange, isTraceFilterOperatorId } from './traces/trace-query-filters.es.js';
|
|
59
|
+
export { DEFAULT_TRACE_FILTERS_STORAGE_KEY, ROOT_ENTITY_TYPES, ROOT_ENTITY_TYPE_OPTIONS, TRACE_ANCHOR_SPAN_ID_PARAM, TRACE_DATE_FROM_PARAM, TRACE_DATE_PRESET_PARAM, TRACE_DATE_PRESET_VALUES, TRACE_DATE_TO_PARAM, TRACE_FILTER_BAR_OPERATORS, TRACE_FILTER_GROUP_PARAM, TRACE_FILTER_OPERATOR_PARAM_SUFFIX, TRACE_LIST_MODE_OPTIONS, TRACE_LIST_MODE_PARAM, TRACE_LIST_MODE_VALUES, TRACE_METADATA_FILTER_FIELD_PREFIX, TRACE_METADATA_FILTER_PARAM_PREFIX, TRACE_PROPERTY_FILTER_FIELD_IDS, TRACE_PROPERTY_FILTER_PARAM_BY_FIELD, TRACE_ROOT_ENTITY_TYPE_PARAM, TRACE_STATUS_OPTIONS, TRACE_STATUS_PARAM, TRACE_STATUS_VALUES, TRACE_SYNTHETIC_FILTER_FIELD_IDS, applyTracePropertyFilterTokens, buildTraceListFilters, clearSavedTraceFilters, createTraceFilterBarFields, filterBarExpressionToTraceFilters, filterBarItemsToTraceTokens, getPreservedTraceFilterParams, getTraceFilterGroups, getTracePropertyFilterTokens, hasAnyTraceFilterParams, isTraceMetadataFieldId, loadTraceFiltersFromStorage, metadataFieldIdToParam, metadataParamToFieldId, parseTraceFilterGroupParam, saveTraceFiltersToStorage, serializeTraceFilterGroup, traceFilterFieldColor, traceFilterFieldIcon, traceFilterOperatorParam, traceFilterTokenOperator, traceFiltersToFilterBarExpression, traceTokensToFilterBarItems } from './traces/trace-filters.es.js';
|
|
60
|
+
export { TRACE_FILTER_OPERATOR_IDS, TRACE_QUERY_DISCOVERY_MAX_RANGE_MS, TRACE_QUERY_NUMERIC_FIELD_IDS, TRACE_QUERY_OPTIONAL_TRACE_FIELD_IDS, TRACE_QUERY_UNSUPPORTED_FILTER_FIELDS, buildTraceQueryRequest, clampTraceDiscoveryTimeRange, isTraceFilterGroup, isTraceFilterOperatorId } from './traces/trace-query-filters.es.js';
|
|
61
61
|
export { CONTEXT_FIELD_IDS } from './traces/types.es.js';
|
|
62
62
|
export { THREAD_TRACE_MESSAGES_TAB } from './traces/components/thread-trace/thread-trace-row.es.js';
|
|
63
63
|
export { useThreadTrace } from './traces/components/thread-trace/thread-trace-context.es.js';
|
|
@@ -5,7 +5,7 @@ const drawer = require('@base-ui/react/drawer');
|
|
|
5
5
|
const index = require('./index-C-fBJhpb.cjs');
|
|
6
6
|
const lucideReact = require('lucide-react');
|
|
7
7
|
const React = require('react');
|
|
8
|
-
const Button = require('./Button-
|
|
8
|
+
const Button = require('./Button-C0DBEBcJ.cjs');
|
|
9
9
|
const primitives_raisedSurface = require('./primitives/raised-surface.cjs.js');
|
|
10
10
|
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
11
11
|
;/* empty css */
|
|
@@ -108,12 +108,12 @@ const drawerPopupVariants = index.cva(
|
|
|
108
108
|
{
|
|
109
109
|
side: "bottom",
|
|
110
110
|
variant: "default",
|
|
111
|
-
className: "h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full
|
|
111
|
+
className: "-mb-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-t-xl border-x border-t pb-12"
|
|
112
112
|
},
|
|
113
113
|
{
|
|
114
114
|
side: "top",
|
|
115
115
|
variant: "default",
|
|
116
|
-
className: "h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full
|
|
116
|
+
className: "-mt-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-b-xl border-x border-b pt-12"
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
side: "left",
|
|
@@ -292,7 +292,7 @@ const DrawerFloatingSideHandle = ({ side, variant }) => {
|
|
|
292
292
|
"absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden",
|
|
293
293
|
side === "right" ? "-left-2" : "-right-2"
|
|
294
294
|
),
|
|
295
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
295
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-10 w-1 rounded-full bg-border-strong" })
|
|
296
296
|
}
|
|
297
297
|
);
|
|
298
298
|
};
|
|
@@ -366,4 +366,4 @@ exports.DrawerTrigger = DrawerTrigger;
|
|
|
366
366
|
exports.DrawerViewport = DrawerViewport;
|
|
367
367
|
exports.createDrawerHandle = createDrawerHandle;
|
|
368
368
|
exports.useDrawerSide = useDrawerSide;
|
|
369
|
-
//# sourceMappingURL=drawer-
|
|
369
|
+
//# sourceMappingURL=drawer-9eoZbmRK.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer-BL5shtHH.cjs","sources":["../src/ds/components/Drawer/drawer.tsx"],"sourcesContent":["import { Drawer as DrawerPrimitive } from '@base-ui/react/drawer';\nimport { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { overlaySurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\n// Swipe/stack transforms live in drawer.css — unreadable as Tailwind arbitrary values.\nimport './drawer.css';\n\nexport type DrawerSide = 'top' | 'right' | 'bottom' | 'left';\n\nconst drawerBackdropVariants = cva('drawer-backdrop fixed inset-0 z-50', {\n variants: {\n overlay: {\n visible: 'bg-scrim backdrop-blur-xs',\n transparent: 'bg-transparent',\n none: 'hidden',\n },\n },\n defaultVariants: {\n overlay: 'visible',\n },\n});\n\nconst drawerViewportVariants = cva('fixed z-50 flex', {\n variants: {\n side: {\n top: 'items-start justify-center',\n bottom: 'items-end justify-center',\n left: 'items-stretch justify-start',\n right: 'items-stretch justify-end',\n },\n layout: {\n default: 'inset-0',\n floating: 'p-2 sm:p-3',\n floatingOverlay: 'inset-0 p-2 sm:p-3',\n },\n },\n compoundVariants: [\n {\n side: 'right',\n layout: 'floating',\n className: 'inset-y-0 right-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'left',\n layout: 'floating',\n className: 'inset-y-0 left-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'bottom',\n layout: 'floating',\n className: 'inset-x-0 bottom-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n {\n side: 'top',\n layout: 'floating',\n className: 'inset-x-0 top-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n layout: 'default',\n },\n});\n\n// `drawer-popup` hooks into drawer.css for swipe/stack transforms; `::after` dims under nested drawers.\nconst drawerPopupVariants = cva(\n cn(\n 'drawer-popup group/popup relative z-50 box-border flex [touch-action:auto] flex-col overflow-y-auto overscroll-contain will-change-transform outline-none',\n 'text-foreground',\n overlaySurfaceStyle,\n 'data-[swiping]:select-none',\n \"after:pointer-events-none after:absolute after:inset-0 after:bg-transparent after:transition-[background-color] after:duration-[450ms] after:content-['']\",\n 'data-[nested-drawer-open]:after:bg-black/25',\n ),\n {\n variants: {\n side: {\n bottom: '',\n top: '',\n left: '',\n right: '',\n },\n variant: {\n default: '',\n floating: 'drawer-popup-floating pointer-events-auto rounded-lg border',\n },\n },\n compoundVariants: [\n {\n side: 'bottom',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mb-12 pb-12 rounded-t-xl border-x border-t',\n },\n {\n side: 'top',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mt-12 pt-12 rounded-b-xl border-x border-b',\n },\n {\n side: 'left',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-r-xl border-y border-r',\n },\n {\n side: 'right',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-l-xl border-y border-l',\n },\n {\n side: ['left', 'right'],\n variant: 'floating',\n className:\n 'h-[calc(100dvh-1.5rem)] w-[32rem] max-w-[calc(100vw-1.5rem)] sm:h-[calc(100dvh-2rem)] sm:max-w-[calc(100vw-2rem)]',\n },\n {\n side: ['top', 'bottom'],\n variant: 'floating',\n className:\n 'max-h-[calc(85dvh-1.5rem)] w-[calc(100vw-1.5rem)] sm:max-h-[calc(85dvh-2rem)] sm:w-[calc(100vw-2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n variant: 'default',\n },\n },\n);\n\ntype DrawerBackdropVariantsProps = VariantProps<typeof drawerBackdropVariants>;\ntype DrawerViewportClassVariantsProps = VariantProps<typeof drawerViewportVariants>;\ntype DrawerPopupVariantsProps = VariantProps<typeof drawerPopupVariants>;\nexport type DrawerVariant = NonNullable<DrawerPopupVariantsProps['variant']>;\ntype DrawerViewportLayout = NonNullable<DrawerViewportClassVariantsProps['layout']>;\ntype DrawerViewportVariantsProps = Pick<DrawerViewportClassVariantsProps, 'side'> & {\n variant?: DrawerVariant;\n};\nexport type DrawerOverlay = 'auto' | NonNullable<DrawerBackdropVariantsProps['overlay']>;\n\n// `side` = anchor edge; Base UI's `swipeDirection` = dismissal gesture (bottom sheet swipes `down`).\nconst sideToSwipeDirection: Record<DrawerSide, 'up' | 'down' | 'left' | 'right'> = {\n top: 'up',\n bottom: 'down',\n left: 'left',\n right: 'right',\n};\n\ntype DrawerContextValue = {\n side: DrawerSide;\n variant: DrawerVariant;\n resolvedOverlay: NonNullable<DrawerBackdropVariantsProps['overlay']>;\n};\n\nconst resolveDrawerOverlay = (\n overlay: DrawerOverlay,\n variant: DrawerVariant,\n): NonNullable<DrawerBackdropVariantsProps['overlay']> => {\n if (overlay !== 'auto') {\n return overlay;\n }\n\n return variant === 'floating' ? 'none' : 'visible';\n};\n\nconst DrawerContext = React.createContext<DrawerContextValue>({\n side: 'bottom',\n variant: 'default',\n resolvedOverlay: 'visible',\n});\n\nconst useDrawerContext = () => React.useContext(DrawerContext);\n\nexport const useDrawerSide = () => useDrawerContext().side;\n\nconst resolveDrawerViewportLayout = (\n variant: DrawerVariant,\n overlay: NonNullable<DrawerBackdropVariantsProps['overlay']>,\n): DrawerViewportLayout => {\n if (variant !== 'floating') {\n return 'default';\n }\n\n return overlay === 'none' ? 'floating' : 'floatingOverlay';\n};\n\nexport type DrawerProps<Payload = unknown> = Omit<DrawerPrimitive.Root.Props<Payload>, 'swipeDirection'> & {\n /** Edge the drawer is anchored to. Defaults to `bottom`. */\n side?: DrawerSide;\n /** Visual treatment for the drawer panel. Defaults to `default`. */\n variant?: DrawerVariant;\n /** Backdrop behavior. `auto` renders a visible backdrop for default drawers and no backdrop for floating drawers. */\n overlay?: DrawerOverlay;\n};\n\nfunction Drawer<Payload = unknown>({\n side = 'bottom',\n variant = 'default',\n overlay = 'auto',\n modal,\n disablePointerDismissal,\n children,\n ...props\n}: DrawerProps<Payload>) {\n const resolvedOverlay = resolveDrawerOverlay(overlay, variant);\n const resolvedModal = modal ?? (resolvedOverlay === 'none' ? false : undefined);\n const resolvedDisablePointerDismissal = disablePointerDismissal ?? (resolvedOverlay === 'none' ? true : undefined);\n const contextValue = React.useMemo<DrawerContextValue>(\n () => ({ side, variant, resolvedOverlay }),\n [side, variant, resolvedOverlay],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <DrawerPrimitive.Root\n swipeDirection={sideToSwipeDirection[side]}\n modal={resolvedModal}\n disablePointerDismissal={resolvedDisablePointerDismissal}\n {...props}\n >\n {children}\n </DrawerPrimitive.Root>\n </DrawerContext.Provider>\n );\n}\nDrawer.displayName = 'Drawer';\n\n// Generic (not `forwardRef`) so `handle` / `payload` stay type-safe on detached triggers.\ntype DrawerTriggerProps<Payload = unknown> = DrawerPrimitive.Trigger.Props<Payload> & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nfunction DrawerTrigger<Payload = unknown>({ asChild, children, ...props }: DrawerTriggerProps<Payload>) {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Trigger {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Trigger>\n );\n}\nDrawerTrigger.displayName = 'DrawerTrigger';\n\ntype DrawerCloseProps = DrawerPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DrawerClose = React.forwardRef<HTMLButtonElement, DrawerCloseProps>(({ asChild, children, ...props }, ref) => {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Close ref={ref} {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Close>\n );\n});\nDrawerClose.displayName = 'DrawerClose';\n\nconst DrawerPortal = DrawerPrimitive.Portal;\nconst DrawerProvider = DrawerPrimitive.Provider;\nconst DrawerIndent = DrawerPrimitive.Indent;\nconst DrawerIndentBackground = DrawerPrimitive.IndentBackground;\nconst DrawerSwipeArea = DrawerPrimitive.SwipeArea;\nconst createDrawerHandle = DrawerPrimitive.createHandle;\n// Inner region where pointer drags select text / scroll instead of swiping the drawer closed.\nconst DrawerInteractive = DrawerPrimitive.Content;\n\ntype DrawerBackdropProps = Omit<DrawerPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n} & DrawerBackdropVariantsProps;\n\n// The `drawer-backdrop` class (drawer.css) fades the overlay with the swipe gesture.\nconst DrawerBackdrop = React.forwardRef<HTMLDivElement, DrawerBackdropProps>(\n ({ className, overlay, ...props }, ref) => {\n const { resolvedOverlay } = useDrawerContext();\n const resolvedBackdropOverlay = overlay ?? resolvedOverlay;\n\n return (\n <DrawerPrimitive.Backdrop\n ref={ref}\n data-slot=\"drawer-backdrop\"\n data-overlay={resolvedBackdropOverlay}\n className={cn(drawerBackdropVariants({ overlay: resolvedBackdropOverlay }), className)}\n {...props}\n />\n );\n },\n);\nDrawerBackdrop.displayName = 'DrawerBackdrop';\n\ntype DrawerViewportProps = Omit<DrawerPrimitive.Viewport.Props, 'className'> & {\n className?: string;\n} & DrawerViewportVariantsProps;\n\n// Keep the viewport pointer-interactive: Base UI wires native drag-to-dismiss to it.\n// Floating drawers without an overlay constrain the viewport so the page behind stays interactive.\n// Floating drawers with an overlay keep a full-screen viewport so overlay-start drags stay native.\nconst DrawerViewport = React.forwardRef<HTMLDivElement, DrawerViewportProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n const layout = resolveDrawerViewportLayout(resolvedVariant, context.resolvedOverlay);\n\n return (\n <DrawerPrimitive.Viewport\n ref={ref}\n data-slot=\"drawer-viewport\"\n data-variant={resolvedVariant}\n className={cn(drawerViewportVariants({ side: resolvedSide, layout }), className)}\n {...props}\n />\n );\n },\n);\nDrawerViewport.displayName = 'DrawerViewport';\n\ntype DrawerPopupProps = Omit<DrawerPrimitive.Popup.Props, 'className'> & {\n className?: string;\n} & DrawerPopupVariantsProps;\n\nconst DrawerPopup = React.forwardRef<HTMLDivElement, DrawerPopupProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n\n return (\n <DrawerPrimitive.Popup\n ref={ref}\n data-slot=\"drawer-popup\"\n data-variant={resolvedVariant}\n className={cn(drawerPopupVariants({ side: resolvedSide, variant: resolvedVariant }), className)}\n {...props}\n />\n );\n },\n);\nDrawerPopup.displayName = 'DrawerPopup';\n\n// Inner-content fade while a nested drawer covers the parent. Off the popup itself so border/shadow stay crisp.\nconst nestedFadeClass = cn(\n 'transition-opacity duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] motion-reduce:duration-0',\n 'group-data-[nested-drawer-open]/popup:opacity-0',\n);\n\nconst DrawerHandleBar = () => (\n <div\n aria-hidden\n data-slot=\"drawer-handle\"\n className={cn('mx-auto my-2 h-1 w-12 shrink-0 rounded-full bg-muted', nestedFadeClass)}\n />\n);\nDrawerHandleBar.displayName = 'DrawerHandleBar';\n\ntype DrawerFloatingSideHandleProps = {\n side: DrawerSide;\n variant: DrawerVariant;\n};\n\nconst DrawerFloatingSideHandle = ({ side, variant }: DrawerFloatingSideHandleProps) => {\n if (variant !== 'floating' || (side !== 'left' && side !== 'right')) {\n return null;\n }\n\n return (\n <div\n aria-hidden\n data-slot=\"drawer-side-handle\"\n className={cn(\n 'absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden',\n side === 'right' ? '-left-2' : '-right-2',\n )}\n >\n <div className=\"bg-border-strong h-10 w-1 rounded-full\" />\n </div>\n );\n};\nDrawerFloatingSideHandle.displayName = 'DrawerFloatingSideHandle';\n\ntype DrawerContentProps = Omit<DrawerPrimitive.Popup.Props, 'className' | 'children'> & {\n className?: string;\n children?: React.ReactNode;\n /** Shows the built-in top-right close button. Defaults to `true`. */\n showCloseButton?: boolean;\n} & Pick<DrawerPopupVariantsProps, 'variant'>;\n\n// Opinionated bundle: Portal + Backdrop + Viewport + Popup, with handle on top/bottom sheets.\n// Drop to the primitives for non-modal pages, custom portal targets, or chrome outside the popup.\nconst DrawerContent = React.forwardRef<HTMLDivElement, DrawerContentProps>(\n ({ className, children, variant, showCloseButton = true, ...props }, ref) => {\n const { side, variant: contextVariant, resolvedOverlay } = useDrawerContext();\n const resolvedVariant = variant ?? contextVariant;\n const showHandle = side === 'top' || side === 'bottom';\n\n return (\n <DrawerPortal>\n {resolvedOverlay !== 'none' && <DrawerBackdrop />}\n <DrawerViewport variant={resolvedVariant}>\n <DrawerPopup ref={ref} variant={resolvedVariant} className={className} {...props}>\n {showHandle && side === 'bottom' && <DrawerHandleBar />}\n <DrawerFloatingSideHandle side={side} variant={resolvedVariant} />\n <div data-slot=\"drawer-content\" className={cn('relative flex min-h-0 flex-1 flex-col', nestedFadeClass)}>\n {showCloseButton && <DrawerDefaultCloseButton />}\n {children}\n </div>\n {showHandle && side === 'top' && <DrawerHandleBar />}\n </DrawerPopup>\n </DrawerViewport>\n </DrawerPortal>\n );\n },\n);\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerDefaultCloseButton = () => (\n <DrawerClose asChild>\n <Button type=\"button\" variant=\"ghost\" size=\"icon-sm\" className=\"absolute top-3 right-3 z-10\" aria-label=\"Close\">\n <XIcon />\n </Button>\n </DrawerClose>\n);\nDrawerDefaultCloseButton.displayName = 'DrawerDefaultCloseButton';\n\nconst DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-header\"\n className={cn('flex flex-col gap-0.5 px-3 py-2.5 pr-12 text-left', className)}\n {...props}\n />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex flex-col-reverse gap-1.5 px-3 py-2.5 sm:flex-row sm:justify-end', className)}\n {...props}\n />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div data-slot=\"drawer-body\" className={cn('flex-1 px-3 py-2.5', className)} {...props} />\n);\nDrawerBody.displayName = 'DrawerBody';\n\ntype DrawerTitleProps = Omit<DrawerPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerTitle = React.forwardRef<HTMLHeadingElement, DrawerTitleProps>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title ref={ref} className={cn('text-subheading text-foreground', className)} {...props} />\n));\nDrawerTitle.displayName = 'DrawerTitle';\n\ntype DrawerDescriptionProps = Omit<DrawerPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerDescription = React.forwardRef<HTMLParagraphElement, DrawerDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DrawerPrimitive.Description ref={ref} className={cn('text-caption text-muted-foreground', className)} {...props} />\n ),\n);\nDrawerDescription.displayName = 'DrawerDescription';\n\nexport {\n Drawer,\n DrawerTrigger,\n DrawerClose,\n DrawerPortal,\n DrawerBackdrop,\n DrawerViewport,\n DrawerPopup,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerBody,\n DrawerTitle,\n DrawerDescription,\n DrawerProvider,\n DrawerIndent,\n DrawerIndentBackground,\n DrawerSwipeArea,\n DrawerInteractive,\n createDrawerHandle,\n};\n\nexport type {\n DrawerTriggerProps,\n DrawerCloseProps,\n DrawerBackdropProps,\n DrawerViewportProps,\n DrawerPopupProps,\n DrawerContentProps,\n DrawerTitleProps,\n DrawerDescriptionProps,\n};\n"],"names":["cva","cn","overlaySurfaceStyle","React","jsx","DrawerPrimitive","jsxs","Button","XIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"drawer-9eoZbmRK.cjs","sources":["../src/ds/components/Drawer/drawer.tsx"],"sourcesContent":["import { Drawer as DrawerPrimitive } from '@base-ui/react/drawer';\nimport { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { overlaySurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\n// Swipe/stack transforms live in drawer.css — unreadable as Tailwind arbitrary values.\nimport './drawer.css';\n\nexport type DrawerSide = 'top' | 'right' | 'bottom' | 'left';\n\nconst drawerBackdropVariants = cva('drawer-backdrop fixed inset-0 z-50', {\n variants: {\n overlay: {\n visible: 'bg-scrim backdrop-blur-xs',\n transparent: 'bg-transparent',\n none: 'hidden',\n },\n },\n defaultVariants: {\n overlay: 'visible',\n },\n});\n\nconst drawerViewportVariants = cva('fixed z-50 flex', {\n variants: {\n side: {\n top: 'items-start justify-center',\n bottom: 'items-end justify-center',\n left: 'items-stretch justify-start',\n right: 'items-stretch justify-end',\n },\n layout: {\n default: 'inset-0',\n floating: 'p-2 sm:p-3',\n floatingOverlay: 'inset-0 p-2 sm:p-3',\n },\n },\n compoundVariants: [\n {\n side: 'right',\n layout: 'floating',\n className: 'inset-y-0 right-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'left',\n layout: 'floating',\n className: 'inset-y-0 left-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'bottom',\n layout: 'floating',\n className: 'inset-x-0 bottom-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n {\n side: 'top',\n layout: 'floating',\n className: 'inset-x-0 top-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n layout: 'default',\n },\n});\n\n// `drawer-popup` hooks into drawer.css for swipe/stack transforms; `::after` dims under nested drawers.\nconst drawerPopupVariants = cva(\n cn(\n 'drawer-popup group/popup relative z-50 box-border flex [touch-action:auto] flex-col overflow-y-auto overscroll-contain will-change-transform outline-none',\n 'text-foreground',\n overlaySurfaceStyle,\n 'data-[swiping]:select-none',\n \"after:pointer-events-none after:absolute after:inset-0 after:bg-transparent after:transition-[background-color] after:duration-[450ms] after:content-['']\",\n 'data-[nested-drawer-open]:after:bg-black/25',\n ),\n {\n variants: {\n side: {\n bottom: '',\n top: '',\n left: '',\n right: '',\n },\n variant: {\n default: '',\n floating: 'drawer-popup-floating pointer-events-auto rounded-lg border',\n },\n },\n compoundVariants: [\n {\n side: 'bottom',\n variant: 'default',\n className:\n '-mb-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-t-xl border-x border-t pb-12',\n },\n {\n side: 'top',\n variant: 'default',\n className:\n '-mt-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-b-xl border-x border-b pt-12',\n },\n {\n side: 'left',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-r-xl border-y border-r',\n },\n {\n side: 'right',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-l-xl border-y border-l',\n },\n {\n side: ['left', 'right'],\n variant: 'floating',\n className:\n 'h-[calc(100dvh-1.5rem)] w-[32rem] max-w-[calc(100vw-1.5rem)] sm:h-[calc(100dvh-2rem)] sm:max-w-[calc(100vw-2rem)]',\n },\n {\n side: ['top', 'bottom'],\n variant: 'floating',\n className:\n 'max-h-[calc(85dvh-1.5rem)] w-[calc(100vw-1.5rem)] sm:max-h-[calc(85dvh-2rem)] sm:w-[calc(100vw-2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n variant: 'default',\n },\n },\n);\n\ntype DrawerBackdropVariantsProps = VariantProps<typeof drawerBackdropVariants>;\ntype DrawerViewportClassVariantsProps = VariantProps<typeof drawerViewportVariants>;\ntype DrawerPopupVariantsProps = VariantProps<typeof drawerPopupVariants>;\nexport type DrawerVariant = NonNullable<DrawerPopupVariantsProps['variant']>;\ntype DrawerViewportLayout = NonNullable<DrawerViewportClassVariantsProps['layout']>;\ntype DrawerViewportVariantsProps = Pick<DrawerViewportClassVariantsProps, 'side'> & {\n variant?: DrawerVariant;\n};\nexport type DrawerOverlay = 'auto' | NonNullable<DrawerBackdropVariantsProps['overlay']>;\n\n// `side` = anchor edge; Base UI's `swipeDirection` = dismissal gesture (bottom sheet swipes `down`).\nconst sideToSwipeDirection: Record<DrawerSide, 'up' | 'down' | 'left' | 'right'> = {\n top: 'up',\n bottom: 'down',\n left: 'left',\n right: 'right',\n};\n\ntype DrawerContextValue = {\n side: DrawerSide;\n variant: DrawerVariant;\n resolvedOverlay: NonNullable<DrawerBackdropVariantsProps['overlay']>;\n};\n\nconst resolveDrawerOverlay = (\n overlay: DrawerOverlay,\n variant: DrawerVariant,\n): NonNullable<DrawerBackdropVariantsProps['overlay']> => {\n if (overlay !== 'auto') {\n return overlay;\n }\n\n return variant === 'floating' ? 'none' : 'visible';\n};\n\nconst DrawerContext = React.createContext<DrawerContextValue>({\n side: 'bottom',\n variant: 'default',\n resolvedOverlay: 'visible',\n});\n\nconst useDrawerContext = () => React.useContext(DrawerContext);\n\nexport const useDrawerSide = () => useDrawerContext().side;\n\nconst resolveDrawerViewportLayout = (\n variant: DrawerVariant,\n overlay: NonNullable<DrawerBackdropVariantsProps['overlay']>,\n): DrawerViewportLayout => {\n if (variant !== 'floating') {\n return 'default';\n }\n\n return overlay === 'none' ? 'floating' : 'floatingOverlay';\n};\n\nexport type DrawerProps<Payload = unknown> = Omit<DrawerPrimitive.Root.Props<Payload>, 'swipeDirection'> & {\n /** Edge the drawer is anchored to. Defaults to `bottom`. */\n side?: DrawerSide;\n /** Visual treatment for the drawer panel. Defaults to `default`. */\n variant?: DrawerVariant;\n /** Backdrop behavior. `auto` renders a visible backdrop for default drawers and no backdrop for floating drawers. */\n overlay?: DrawerOverlay;\n};\n\nfunction Drawer<Payload = unknown>({\n side = 'bottom',\n variant = 'default',\n overlay = 'auto',\n modal,\n disablePointerDismissal,\n children,\n ...props\n}: DrawerProps<Payload>) {\n const resolvedOverlay = resolveDrawerOverlay(overlay, variant);\n const resolvedModal = modal ?? (resolvedOverlay === 'none' ? false : undefined);\n const resolvedDisablePointerDismissal = disablePointerDismissal ?? (resolvedOverlay === 'none' ? true : undefined);\n const contextValue = React.useMemo<DrawerContextValue>(\n () => ({ side, variant, resolvedOverlay }),\n [side, variant, resolvedOverlay],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <DrawerPrimitive.Root\n swipeDirection={sideToSwipeDirection[side]}\n modal={resolvedModal}\n disablePointerDismissal={resolvedDisablePointerDismissal}\n {...props}\n >\n {children}\n </DrawerPrimitive.Root>\n </DrawerContext.Provider>\n );\n}\nDrawer.displayName = 'Drawer';\n\n// Generic (not `forwardRef`) so `handle` / `payload` stay type-safe on detached triggers.\ntype DrawerTriggerProps<Payload = unknown> = DrawerPrimitive.Trigger.Props<Payload> & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nfunction DrawerTrigger<Payload = unknown>({ asChild, children, ...props }: DrawerTriggerProps<Payload>) {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Trigger {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Trigger>\n );\n}\nDrawerTrigger.displayName = 'DrawerTrigger';\n\ntype DrawerCloseProps = DrawerPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DrawerClose = React.forwardRef<HTMLButtonElement, DrawerCloseProps>(({ asChild, children, ...props }, ref) => {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Close ref={ref} {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Close>\n );\n});\nDrawerClose.displayName = 'DrawerClose';\n\nconst DrawerPortal = DrawerPrimitive.Portal;\nconst DrawerProvider = DrawerPrimitive.Provider;\nconst DrawerIndent = DrawerPrimitive.Indent;\nconst DrawerIndentBackground = DrawerPrimitive.IndentBackground;\nconst DrawerSwipeArea = DrawerPrimitive.SwipeArea;\nconst createDrawerHandle = DrawerPrimitive.createHandle;\n// Inner region where pointer drags select text / scroll instead of swiping the drawer closed.\nconst DrawerInteractive = DrawerPrimitive.Content;\n\ntype DrawerBackdropProps = Omit<DrawerPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n} & DrawerBackdropVariantsProps;\n\n// The `drawer-backdrop` class (drawer.css) fades the overlay with the swipe gesture.\nconst DrawerBackdrop = React.forwardRef<HTMLDivElement, DrawerBackdropProps>(\n ({ className, overlay, ...props }, ref) => {\n const { resolvedOverlay } = useDrawerContext();\n const resolvedBackdropOverlay = overlay ?? resolvedOverlay;\n\n return (\n <DrawerPrimitive.Backdrop\n ref={ref}\n data-slot=\"drawer-backdrop\"\n data-overlay={resolvedBackdropOverlay}\n className={cn(drawerBackdropVariants({ overlay: resolvedBackdropOverlay }), className)}\n {...props}\n />\n );\n },\n);\nDrawerBackdrop.displayName = 'DrawerBackdrop';\n\ntype DrawerViewportProps = Omit<DrawerPrimitive.Viewport.Props, 'className'> & {\n className?: string;\n} & DrawerViewportVariantsProps;\n\n// Keep the viewport pointer-interactive: Base UI wires native drag-to-dismiss to it.\n// Floating drawers without an overlay constrain the viewport so the page behind stays interactive.\n// Floating drawers with an overlay keep a full-screen viewport so overlay-start drags stay native.\nconst DrawerViewport = React.forwardRef<HTMLDivElement, DrawerViewportProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n const layout = resolveDrawerViewportLayout(resolvedVariant, context.resolvedOverlay);\n\n return (\n <DrawerPrimitive.Viewport\n ref={ref}\n data-slot=\"drawer-viewport\"\n data-variant={resolvedVariant}\n className={cn(drawerViewportVariants({ side: resolvedSide, layout }), className)}\n {...props}\n />\n );\n },\n);\nDrawerViewport.displayName = 'DrawerViewport';\n\ntype DrawerPopupProps = Omit<DrawerPrimitive.Popup.Props, 'className'> & {\n className?: string;\n} & DrawerPopupVariantsProps;\n\nconst DrawerPopup = React.forwardRef<HTMLDivElement, DrawerPopupProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n\n return (\n <DrawerPrimitive.Popup\n ref={ref}\n data-slot=\"drawer-popup\"\n data-variant={resolvedVariant}\n className={cn(drawerPopupVariants({ side: resolvedSide, variant: resolvedVariant }), className)}\n {...props}\n />\n );\n },\n);\nDrawerPopup.displayName = 'DrawerPopup';\n\n// Inner-content fade while a nested drawer covers the parent. Off the popup itself so border/shadow stay crisp.\nconst nestedFadeClass = cn(\n 'transition-opacity duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] motion-reduce:duration-0',\n 'group-data-[nested-drawer-open]/popup:opacity-0',\n);\n\nconst DrawerHandleBar = () => (\n <div\n aria-hidden\n data-slot=\"drawer-handle\"\n className={cn('mx-auto my-2 h-1 w-12 shrink-0 rounded-full bg-muted', nestedFadeClass)}\n />\n);\nDrawerHandleBar.displayName = 'DrawerHandleBar';\n\ntype DrawerFloatingSideHandleProps = {\n side: DrawerSide;\n variant: DrawerVariant;\n};\n\nconst DrawerFloatingSideHandle = ({ side, variant }: DrawerFloatingSideHandleProps) => {\n if (variant !== 'floating' || (side !== 'left' && side !== 'right')) {\n return null;\n }\n\n return (\n <div\n aria-hidden\n data-slot=\"drawer-side-handle\"\n className={cn(\n 'absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden',\n side === 'right' ? '-left-2' : '-right-2',\n )}\n >\n <div className=\"h-10 w-1 rounded-full bg-border-strong\" />\n </div>\n );\n};\nDrawerFloatingSideHandle.displayName = 'DrawerFloatingSideHandle';\n\ntype DrawerContentProps = Omit<DrawerPrimitive.Popup.Props, 'className' | 'children'> & {\n className?: string;\n children?: React.ReactNode;\n /** Shows the built-in top-right close button. Defaults to `true`. */\n showCloseButton?: boolean;\n} & Pick<DrawerPopupVariantsProps, 'variant'>;\n\n// Opinionated bundle: Portal + Backdrop + Viewport + Popup, with handle on top/bottom sheets.\n// Drop to the primitives for non-modal pages, custom portal targets, or chrome outside the popup.\nconst DrawerContent = React.forwardRef<HTMLDivElement, DrawerContentProps>(\n ({ className, children, variant, showCloseButton = true, ...props }, ref) => {\n const { side, variant: contextVariant, resolvedOverlay } = useDrawerContext();\n const resolvedVariant = variant ?? contextVariant;\n const showHandle = side === 'top' || side === 'bottom';\n\n return (\n <DrawerPortal>\n {resolvedOverlay !== 'none' && <DrawerBackdrop />}\n <DrawerViewport variant={resolvedVariant}>\n <DrawerPopup ref={ref} variant={resolvedVariant} className={className} {...props}>\n {showHandle && side === 'bottom' && <DrawerHandleBar />}\n <DrawerFloatingSideHandle side={side} variant={resolvedVariant} />\n <div data-slot=\"drawer-content\" className={cn('relative flex min-h-0 flex-1 flex-col', nestedFadeClass)}>\n {showCloseButton && <DrawerDefaultCloseButton />}\n {children}\n </div>\n {showHandle && side === 'top' && <DrawerHandleBar />}\n </DrawerPopup>\n </DrawerViewport>\n </DrawerPortal>\n );\n },\n);\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerDefaultCloseButton = () => (\n <DrawerClose asChild>\n <Button type=\"button\" variant=\"ghost\" size=\"icon-sm\" className=\"absolute top-3 right-3 z-10\" aria-label=\"Close\">\n <XIcon />\n </Button>\n </DrawerClose>\n);\nDrawerDefaultCloseButton.displayName = 'DrawerDefaultCloseButton';\n\nconst DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-header\"\n className={cn('flex flex-col gap-0.5 px-3 py-2.5 pr-12 text-left', className)}\n {...props}\n />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex flex-col-reverse gap-1.5 px-3 py-2.5 sm:flex-row sm:justify-end', className)}\n {...props}\n />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div data-slot=\"drawer-body\" className={cn('flex-1 px-3 py-2.5', className)} {...props} />\n);\nDrawerBody.displayName = 'DrawerBody';\n\ntype DrawerTitleProps = Omit<DrawerPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerTitle = React.forwardRef<HTMLHeadingElement, DrawerTitleProps>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title ref={ref} className={cn('text-subheading text-foreground', className)} {...props} />\n));\nDrawerTitle.displayName = 'DrawerTitle';\n\ntype DrawerDescriptionProps = Omit<DrawerPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerDescription = React.forwardRef<HTMLParagraphElement, DrawerDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DrawerPrimitive.Description ref={ref} className={cn('text-caption text-muted-foreground', className)} {...props} />\n ),\n);\nDrawerDescription.displayName = 'DrawerDescription';\n\nexport {\n Drawer,\n DrawerTrigger,\n DrawerClose,\n DrawerPortal,\n DrawerBackdrop,\n DrawerViewport,\n DrawerPopup,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerBody,\n DrawerTitle,\n DrawerDescription,\n DrawerProvider,\n DrawerIndent,\n DrawerIndentBackground,\n DrawerSwipeArea,\n DrawerInteractive,\n createDrawerHandle,\n};\n\nexport type {\n DrawerTriggerProps,\n DrawerCloseProps,\n DrawerBackdropProps,\n DrawerViewportProps,\n DrawerPopupProps,\n DrawerContentProps,\n DrawerTitleProps,\n DrawerDescriptionProps,\n};\n"],"names":["cva","cn","overlaySurfaceStyle","React","jsx","DrawerPrimitive","jsxs","Button","XIcon"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Drawer as Drawer$1 } from '@base-ui/react/drawer';
|
|
|
3
3
|
import { c as cva } from './index-Dubp6Qv4.js';
|
|
4
4
|
import { XIcon } from 'lucide-react';
|
|
5
5
|
import * as React from 'react';
|
|
6
|
-
import { B as Button } from './Button-
|
|
6
|
+
import { B as Button } from './Button-C9cvaVFG.js';
|
|
7
7
|
import { overlaySurfaceStyle } from './primitives/raised-surface.es.js';
|
|
8
8
|
import { c as cn } from './cn-65Adrsfj.js';
|
|
9
9
|
import './drawer.css';/* empty css */
|
|
@@ -87,12 +87,12 @@ const drawerPopupVariants = cva(
|
|
|
87
87
|
{
|
|
88
88
|
side: "bottom",
|
|
89
89
|
variant: "default",
|
|
90
|
-
className: "h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full
|
|
90
|
+
className: "-mb-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-t-xl border-x border-t pb-12"
|
|
91
91
|
},
|
|
92
92
|
{
|
|
93
93
|
side: "top",
|
|
94
94
|
variant: "default",
|
|
95
|
-
className: "h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full
|
|
95
|
+
className: "-mt-12 h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full rounded-b-xl border-x border-b pt-12"
|
|
96
96
|
},
|
|
97
97
|
{
|
|
98
98
|
side: "left",
|
|
@@ -271,7 +271,7 @@ const DrawerFloatingSideHandle = ({ side, variant }) => {
|
|
|
271
271
|
"absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden",
|
|
272
272
|
side === "right" ? "-left-2" : "-right-2"
|
|
273
273
|
),
|
|
274
|
-
children: /* @__PURE__ */ jsx("div", { className: "
|
|
274
|
+
children: /* @__PURE__ */ jsx("div", { className: "h-10 w-1 rounded-full bg-border-strong" })
|
|
275
275
|
}
|
|
276
276
|
);
|
|
277
277
|
};
|
|
@@ -326,4 +326,4 @@ const DrawerDescription = React.forwardRef(
|
|
|
326
326
|
DrawerDescription.displayName = "DrawerDescription";
|
|
327
327
|
|
|
328
328
|
export { Drawer as D, DrawerBackdrop as a, DrawerBody as b, DrawerClose as c, DrawerContent as d, DrawerDescription as e, DrawerFooter as f, DrawerHeader as g, DrawerIndent as h, DrawerIndentBackground as i, DrawerInteractive as j, DrawerPopup as k, DrawerPortal as l, DrawerProvider as m, DrawerSwipeArea as n, DrawerTitle as o, DrawerTrigger as p, DrawerViewport as q, createDrawerHandle as r, useDrawerSide as u };
|
|
329
|
-
//# sourceMappingURL=drawer-
|
|
329
|
+
//# sourceMappingURL=drawer-DnfOugYZ.js.map
|