@mastra/playground-ui 60.0.0 → 60.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -6
- package/dist/{Badge-H8K5WrXg.cjs → Badge-D3EctKQo.cjs} +16 -8
- package/dist/Badge-D3EctKQo.cjs.map +1 -0
- package/dist/{Badge-Q_pCeeGW.js → Badge-DmOqFpXW.js} +16 -8
- package/dist/Badge-DmOqFpXW.js.map +1 -0
- package/dist/{Button-BnmR2HRc.cjs → Button-CXhSUBxN.cjs} +3 -3
- package/dist/Button-CXhSUBxN.cjs.map +1 -0
- package/dist/{Button-C6eUqcPI.js → Button-D43ghVKt.js} +3 -3
- package/dist/Button-D43ghVKt.js.map +1 -0
- package/dist/{EmptyState-CJ5KC4Db.cjs → EmptyState-CuoMGNP0.cjs} +2 -2
- package/dist/EmptyState-CuoMGNP0.cjs.map +1 -0
- package/dist/{EmptyState-CynkaZd1.js → EmptyState-DyyUFpzY.js} +2 -2
- package/dist/EmptyState-DyyUFpzY.js.map +1 -0
- package/dist/{ErrorBoundary-Bb2R5IMR.js → ErrorBoundary-BvwJY6s9.js} +2 -2
- package/dist/{ErrorBoundary-Bb2R5IMR.js.map → ErrorBoundary-BvwJY6s9.js.map} +1 -1
- package/dist/{ErrorBoundary-CKrwONAU.cjs → ErrorBoundary-D7eIMbMr.cjs} +2 -2
- package/dist/{ErrorBoundary-CKrwONAU.cjs.map → ErrorBoundary-D7eIMbMr.cjs.map} +1 -1
- package/dist/{Notice-Ce3r5x-7.js → Notice-B8RIClJD.js} +2 -2
- package/dist/{Notice-Ce3r5x-7.js.map → Notice-B8RIClJD.js.map} +1 -1
- package/dist/{Notice-CEBwitdf.cjs → Notice-C4Tgmtgb.cjs} +2 -2
- package/dist/{Notice-CEBwitdf.cjs.map → Notice-C4Tgmtgb.cjs.map} +1 -1
- package/dist/{activity-Duth8KP_.js → activity-BoXbE4Kz.js} +3 -3
- package/dist/activity-BoXbE4Kz.js.map +1 -0
- package/dist/{activity-8egTNbaI.cjs → activity-CbQG59Oc.cjs} +3 -3
- package/dist/activity-CbQG59Oc.cjs.map +1 -0
- package/dist/{alert-dialog-D1UYVW__.js → alert-dialog-CzRo39mH.js} +3 -3
- package/dist/{alert-dialog-D1UYVW__.js.map → alert-dialog-CzRo39mH.js.map} +1 -1
- package/dist/{alert-dialog-BcOSIOSW.cjs → alert-dialog-DC-Fapxf.cjs} +3 -3
- package/dist/{alert-dialog-BcOSIOSW.cjs.map → alert-dialog-DC-Fapxf.cjs.map} +1 -1
- package/dist/{ask-user-DJXmLJzy.cjs → ask-user-CXu4b7Jw.cjs} +4 -4
- package/dist/ask-user-CXu4b7Jw.cjs.map +1 -0
- package/dist/{ask-user-Crg1O-o6.js → ask-user-Dlz2346n.js} +4 -4
- package/dist/ask-user-Dlz2346n.js.map +1 -0
- package/dist/buttons-group-CoZP3lJt.cjs.map +1 -1
- package/dist/buttons-group-DsZgrZBZ.js.map +1 -1
- package/dist/{code-block-C7A4Hv96.cjs → code-block-BzoMjjtf.cjs} +5 -5
- package/dist/{code-block-C7A4Hv96.cjs.map → code-block-BzoMjjtf.cjs.map} +1 -1
- package/dist/{code-block-C_pvalBv.js → code-block-DY5KsTGY.js} +5 -5
- package/dist/{code-block-C_pvalBv.js.map → code-block-DY5KsTGY.js.map} +1 -1
- package/dist/{code-editor-BXchPl_F.cjs → code-editor-DzQEzQJh.cjs} +5 -5
- package/dist/code-editor-DzQEzQJh.cjs.map +1 -0
- package/dist/{code-editor-Cltwid7c.js → code-editor-IR5UX112.js} +5 -5
- package/dist/code-editor-IR5UX112.js.map +1 -0
- package/dist/{combobox-B_C0cNid.js → combobox-B15qTrWO.js} +4 -4
- package/dist/{combobox-B_C0cNid.js.map → combobox-B15qTrWO.js.map} +1 -1
- package/dist/{combobox-rKV-Lksj.cjs → combobox-DJ0c4o4S.cjs} +4 -4
- package/dist/{combobox-rKV-Lksj.cjs.map → combobox-DJ0c4o4S.cjs.map} +1 -1
- package/dist/{combobox-styles-CLxC7VLA.js → combobox-styles-C2MEEpaG.js} +3 -3
- package/dist/{combobox-styles-CLxC7VLA.js.map → combobox-styles-C2MEEpaG.js.map} +1 -1
- package/dist/{combobox-styles-C4Kq1NFV.cjs → combobox-styles-DLflBH-G.cjs} +3 -3
- package/dist/{combobox-styles-C4Kq1NFV.cjs.map → combobox-styles-DLflBH-G.cjs.map} +1 -1
- package/dist/{command-CpXMoss8.cjs → command-Bm0VcX7X.cjs} +2 -2
- package/dist/{command-CpXMoss8.cjs.map → command-Bm0VcX7X.cjs.map} +1 -1
- package/dist/{command-C6JnofUJ.js → command-DFin7kHN.js} +2 -2
- package/dist/{command-C6JnofUJ.js.map → command-DFin7kHN.js.map} +1 -1
- package/dist/components/AlertDialog.cjs.js +1 -1
- package/dist/components/AlertDialog.es.js +1 -1
- package/dist/components/Badge.cjs.js +1 -1
- package/dist/components/Badge.es.js +1 -1
- package/dist/components/Button.cjs.js +1 -1
- package/dist/components/Button.es.js +2 -2
- 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/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/CollapsibleBox.cjs.js +12 -0
- package/dist/components/CollapsibleBox.cjs.js.map +1 -0
- package/dist/components/CollapsibleBox.d.ts +2 -0
- package/dist/components/CollapsibleBox.es.js +2 -0
- package/dist/components/CollapsibleBox.es.js.map +1 -0
- 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 +1 -1
- package/dist/components/CommandPalette.es.js +1 -1
- package/dist/components/Comment.cjs.js +3 -3
- package/dist/components/Comment.es.js +3 -3
- package/dist/components/CopyButton.cjs.js +1 -1
- package/dist/components/CopyButton.es.js +1 -1
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +2 -2
- package/dist/components/DataDetailsPanel.es.js +2 -2
- package/dist/components/DataList.cjs.js +3 -3
- package/dist/components/DataList.es.js +3 -3
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +1 -1
- package/dist/components/DateRangeTimeline.es.js +1 -1
- package/dist/components/DateTimePicker.cjs.js +3 -3
- package/dist/components/DateTimePicker.es.js +3 -3
- 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 +2 -2
- package/dist/components/DisabledFeatureButton.cjs.js +1 -1
- package/dist/components/DisabledFeatureButton.es.js +1 -1
- package/dist/components/Drawer.cjs.js +1 -1
- package/dist/components/Drawer.es.js +1 -1
- package/dist/components/EmptyState.cjs.js +1 -1
- package/dist/components/EmptyState.es.js +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +5 -5
- package/dist/components/EnvironmentVariablesEditor.es.js +5 -5
- package/dist/components/ErrorBoundary.cjs.js +1 -1
- package/dist/components/ErrorBoundary.es.js +1 -1
- package/dist/components/FileDropBackdrop.cjs.js +1 -1
- package/dist/components/FileDropBackdrop.es.js +1 -1
- package/dist/components/FilterBar.cjs.js +3 -3
- package/dist/components/FilterBar.es.js +4 -4
- package/dist/components/FormFieldBlocks.cjs.js +5 -5
- package/dist/components/FormFieldBlocks.es.js +5 -5
- package/dist/components/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +3 -3
- package/dist/components/JSONSchemaForm.es.js +3 -3
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +1 -1
- package/dist/components/LogsDataList.es.js +1 -1
- package/dist/components/MainSidebar.cjs.js +1 -1
- package/dist/components/MainSidebar.es.js +2 -2
- package/dist/components/MarkdownRenderer.cjs.js +1 -1
- package/dist/components/MarkdownRenderer.es.js +1 -1
- package/dist/components/Message.cjs.js +1 -1
- package/dist/components/Message.es.js +1 -1
- 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/Notice.cjs.js +1 -1
- package/dist/components/Notice.es.js +1 -1
- package/dist/components/PrevNextNav.cjs.js +1 -1
- package/dist/components/PrevNextNav.es.js +1 -1
- package/dist/components/ProductBadge.cjs.js +1 -1
- package/dist/components/ProductBadge.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +3 -3
- package/dist/components/PropertyFilter.es.js +4 -4
- package/dist/components/PullRequestIcon.cjs.js +1 -1
- package/dist/components/PullRequestIcon.cjs.js.map +1 -1
- package/dist/components/PullRequestIcon.es.js +1 -1
- package/dist/components/PullRequestIcon.es.js.map +1 -1
- package/dist/components/RelativeTimestamp.cjs.js +1 -1
- package/dist/components/RelativeTimestamp.es.js +1 -1
- package/dist/components/RuleBuilder.cjs.js +3 -3
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +3 -3
- 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/Section.cjs.js +1 -1
- package/dist/components/Section.es.js +1 -1
- package/dist/components/SegmentedControl.cjs.js +11 -0
- package/dist/components/SegmentedControl.cjs.js.map +1 -0
- package/dist/components/SegmentedControl.d.ts +2 -0
- package/dist/components/SegmentedControl.es.js +2 -0
- package/dist/components/SegmentedControl.es.js.map +1 -0
- package/dist/components/Select.cjs.js +1 -1
- package/dist/components/Select.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +1 -1
- package/dist/components/SideDialog.es.js +1 -1
- package/dist/components/Steps.cjs.js +2 -2
- package/dist/components/Steps.cjs.js.map +1 -1
- package/dist/components/Steps.es.js +2 -2
- 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/ThemeToggle.cjs.js +17 -86
- package/dist/components/ThemeToggle.cjs.js.map +1 -1
- package/dist/components/ThemeToggle.es.js +18 -87
- package/dist/components/ThemeToggle.es.js.map +1 -1
- package/dist/components/ThreadList.cjs.js +1 -1
- package/dist/components/ThreadList.es.js +1 -1
- package/dist/components/TokenBudget.cjs.js +1 -1
- package/dist/components/TokenBudget.es.js +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/Workflow.cjs.js +6 -6
- package/dist/components/Workflow.es.js +6 -6
- package/dist/components/ai/activity.cjs.js +4 -4
- package/dist/components/ai/activity.es.js +4 -4
- package/dist/components/ai/ask-user.cjs.js +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/plan.cjs.js +1 -1
- package/dist/components/ai/plan.es.js +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 +4 -4
- package/dist/components/ai/tool-call.es.js +4 -4
- package/dist/{copy-button-C6nXDjBz.cjs → copy-button-CGkFEDHF.cjs} +2 -2
- package/dist/{copy-button-C6nXDjBz.cjs.map → copy-button-CGkFEDHF.cjs.map} +1 -1
- package/dist/{copy-button-DbmsTUum.js → copy-button-DH8xtrWz.js} +2 -2
- package/dist/{copy-button-DbmsTUum.js.map → copy-button-DH8xtrWz.js.map} +1 -1
- package/dist/{data-code-section-D5b6_jcB.cjs → data-code-section-DWBfkrmO.cjs} +6 -6
- package/dist/data-code-section-DWBfkrmO.cjs.map +1 -0
- package/dist/{data-code-section-Bd2Xnckz.js → data-code-section-It6myyvZ.js} +6 -6
- package/dist/data-code-section-It6myyvZ.js.map +1 -0
- package/dist/{data-list-DL_oFE4j.js → data-list-CyeD_u-6.js} +3 -3
- package/dist/{data-list-DL_oFE4j.js.map → data-list-CyeD_u-6.js.map} +1 -1
- package/dist/{data-list-D8bACyyK.cjs → data-list-Y42KyuI1.cjs} +3 -3
- package/dist/{data-list-D8bACyyK.cjs.map → data-list-Y42KyuI1.cjs.map} +1 -1
- package/dist/{data-list-spacer-_bFe0e2u.cjs → data-list-spacer-BSg2hCx7.cjs} +2 -2
- package/dist/{data-list-spacer-_bFe0e2u.cjs.map → data-list-spacer-BSg2hCx7.cjs.map} +1 -1
- package/dist/{data-list-spacer-CE6-4ZQq.js → data-list-spacer-C8z32twc.js} +2 -2
- package/dist/{data-list-spacer-CE6-4ZQq.js.map → data-list-spacer-C8z32twc.js.map} +1 -1
- package/dist/{data-panel-CjvoI_lx.cjs → data-panel-D7Qk4iwZ.cjs} +3 -3
- package/dist/{data-panel-CjvoI_lx.cjs.map → data-panel-D7Qk4iwZ.cjs.map} +1 -1
- package/dist/{data-panel-42fdcagQ.js → data-panel-DuLf5j8S.js} +3 -3
- package/dist/{data-panel-42fdcagQ.js.map → data-panel-DuLf5j8S.js.map} +1 -1
- package/dist/{date-time-range-picker-C-pSI1u1.js → date-time-range-picker-BDylIIzt.js} +4 -4
- package/dist/{date-time-range-picker-C-pSI1u1.js.map → date-time-range-picker-BDylIIzt.js.map} +1 -1
- package/dist/{date-time-range-picker-BORAuIJM.cjs → date-time-range-picker-UheN070q.cjs} +4 -4
- package/dist/{date-time-range-picker-BORAuIJM.cjs.map → date-time-range-picker-UheN070q.cjs.map} +1 -1
- package/dist/{dialog-cKzR2TXI.js → dialog-Dt5kASkl.js} +2 -2
- package/dist/{dialog-cKzR2TXI.js.map → dialog-Dt5kASkl.js.map} +1 -1
- package/dist/{dialog-action-B3AHq7mU.cjs → dialog-action-C3Tc7ZKI.cjs} +3 -3
- package/dist/{dialog-action-B3AHq7mU.cjs.map → dialog-action-C3Tc7ZKI.cjs.map} +1 -1
- package/dist/{dialog-action-BGmDoI5T.js → dialog-action-CB3h9Z2J.js} +3 -3
- package/dist/{dialog-action-BGmDoI5T.js.map → dialog-action-CB3h9Z2J.js.map} +1 -1
- package/dist/{dialog-DYpOpj9s.cjs → dialog-d_AK1NQD.cjs} +2 -2
- package/dist/{dialog-DYpOpj9s.cjs.map → dialog-d_AK1NQD.cjs.map} +1 -1
- package/dist/domains/auth/components/permission-denied.cjs.js +1 -1
- package/dist/domains/auth/components/permission-denied.es.js +1 -1
- package/dist/domains/auth/components/session-expired.cjs.js +2 -2
- package/dist/domains/auth/components/session-expired.es.js +2 -2
- 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.cjs.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment.es.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +3 -3
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +3 -3
- package/dist/domains/chat/messages/assistant-message-actions.cjs.js +2 -2
- package/dist/domains/chat/messages/assistant-message-actions.es.js +2 -2
- package/dist/domains/chat/messages/dataset-save-action.cjs.js +5 -5
- package/dist/domains/chat/messages/dataset-save-action.es.js +5 -5
- package/dist/domains/chat/messages/message-row.cjs.js +5 -5
- package/dist/domains/chat/messages/message-row.es.js +5 -5
- 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/renderers/message-text.cjs.js +3 -3
- package/dist/domains/chat/messages/renderers/message-text.es.js +3 -3
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +1 -1
- 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/skill-message.cjs.js +3 -3
- package/dist/domains/chat/messages/skill-message.es.js +3 -3
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +2 -2
- package/dist/domains/chat/messages/tripwire-notice.es.js +2 -2
- package/dist/domains/chat/tools/badges/agent-badge-wrapper.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/agent-badge-wrapper.es.js +1 -1
- package/dist/domains/chat/tools/badges/agent-badge.cjs.js +4 -4
- package/dist/domains/chat/tools/badges/agent-badge.es.js +4 -4
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js +3 -3
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +3 -3
- 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 +3 -3
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/file-tree-badge.es.js +3 -3
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +2 -2
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js +2 -2
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +1 -1
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js +3 -3
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.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/chat/tools/badges/tool-badge.cjs.js +4 -4
- package/dist/domains/chat/tools/badges/tool-badge.es.js +4 -4
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +4 -3
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.es.js +4 -3
- package/dist/domains/chat/tools/badges/workflow-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/submit-plan-tool.cjs.js +2 -2
- package/dist/domains/chat/tools/submit-plan-tool.es.js +2 -2
- package/dist/domains/chat/tools/tool-card-kind.cjs.js +5 -1
- package/dist/domains/chat/tools/tool-card-kind.cjs.js.map +1 -1
- package/dist/domains/chat/tools/tool-card-kind.es.js +5 -2
- package/dist/domains/chat/tools/tool-card-kind.es.js.map +1 -1
- package/dist/domains/chat/tools/tool-card.cjs.js +1 -1
- package/dist/domains/chat/tools/tool-card.es.js +1 -1
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js +4 -4
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +4 -4
- package/dist/domains/logs/components/log-data-panel.cjs.js +3 -3
- package/dist/domains/logs/components/log-data-panel.es.js +3 -3
- package/dist/domains/logs/components/logs-error-content.cjs.js +1 -1
- package/dist/domains/logs/components/logs-error-content.es.js +1 -1
- package/dist/domains/logs/components/logs-list-view.cjs.js +1 -1
- package/dist/domains/logs/components/logs-list-view.es.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
- package/dist/domains/logs/components/no-logs-info.cjs.js +2 -2
- package/dist/domains/logs/components/no-logs-info.es.js +2 -2
- package/dist/domains/memory/components/flame-graph.cjs.js +2 -2
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +2 -2
- package/dist/domains/memory/components/flame-graph.es.js.map +1 -1
- package/dist/domains/memory/components/memory-studio-panel.cjs.js +1 -1
- package/dist/domains/memory/components/memory-studio-panel.es.js +1 -1
- package/dist/domains/memory/components/observation-detail-view.cjs.js +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +1 -1
- package/dist/domains/memory/components/thread-context-progress.cjs.js +1 -1
- package/dist/domains/memory/components/thread-context-progress.es.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/metrics/components/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.cjs.js.map +1 -1
- package/dist/domains/metrics/components/latency-card-view.es.js +5 -5
- package/dist/domains/metrics/components/latency-card-view.es.js.map +1 -1
- 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/metrics-utils.cjs.js +1 -1
- package/dist/domains/metrics/components/metrics-utils.cjs.js.map +1 -1
- package/dist/domains/metrics/components/metrics-utils.es.js +1 -1
- package/dist/domains/metrics/components/metrics-utils.es.js.map +1 -1
- 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.cjs.js.map +1 -1
- package/dist/domains/metrics/components/scores-card-view.es.js +6 -6
- package/dist/domains/metrics/components/scores-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +4 -4
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +4 -4
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +4 -4
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +4 -4
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js +4 -4
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.es.js +4 -4
- package/dist/domains/review/components/review-status-badge.cjs.js +1 -1
- package/dist/domains/review/components/review-status-badge.es.js +1 -1
- package/dist/domains/scores/components/score-data-panel.cjs.js +2 -2
- package/dist/domains/scores/components/score-data-panel.es.js +2 -2
- package/dist/domains/scores/components/span-scoring.cjs.js +4 -4
- package/dist/domains/scores/components/span-scoring.es.js +4 -4
- package/dist/domains/scores/components/trace-scores-tab.cjs.js +4 -4
- package/dist/domains/scores/components/trace-scores-tab.es.js +4 -4
- package/dist/domains/traces/components/feedback-thread.cjs.js +3 -3
- package/dist/domains/traces/components/feedback-thread.es.js +3 -3
- package/dist/domains/traces/components/format-trace-thread-messages.cjs.js +31 -9
- package/dist/domains/traces/components/format-trace-thread-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/format-trace-thread-messages.es.js +31 -9
- package/dist/domains/traces/components/format-trace-thread-messages.es.js.map +1 -1
- package/dist/domains/traces/components/no-traces-info.cjs.js +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +6 -6
- package/dist/domains/traces/components/span-data-panel-view.es.js +6 -6
- 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 +2 -2
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +16 -11
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +16 -11
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js +16 -3
- 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 +16 -3
- 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-payload/span-processor-attributes.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-processor-attributes.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-type-legend.cjs.js +1 -1
- package/dist/domains/traces/components/span-type-legend.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +6 -6
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +6 -6
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js +8 -2
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.es.js +9 -3
- package/dist/domains/traces/components/thread-view-by-trace.es.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +5 -5
- package/dist/domains/traces/components/trace-columns-menu.es.js +5 -5
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +6 -6
- package/dist/domains/traces/components/trace-data-panel-view.es.js +6 -6
- package/dist/domains/traces/components/trace-data-panel.cjs.js +2 -2
- package/dist/domains/traces/components/trace-data-panel.es.js +2 -2
- 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-messages-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-messages-panel.es.js +1 -1
- package/dist/domains/traces/components/trace-status-value.cjs.js +1 -1
- package/dist/domains/traces/components/trace-status-value.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-status-value.es.js +1 -1
- package/dist/domains/traces/components/trace-status-value.es.js.map +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.es.js +1 -1
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js +9 -2
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-thread-item-view.es.js +10 -3
- package/dist/domains/traces/components/trace-thread-item-view.es.js.map +1 -1
- package/dist/domains/traces/components/trace-thread-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-thread-panel.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 +1 -1
- package/dist/domains/traces/components/traces-error-content.es.js +1 -1
- package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +1 -1
- package/dist/domains/traces/components/traces-list-mode-toggle.es.js +1 -1
- package/dist/domains/traces/components/traces-list-view.cjs.js +2 -2
- package/dist/domains/traces/components/traces-list-view.es.js +2 -2
- package/dist/domains/traces/hooks/use-trace-query.cjs.js +2 -2
- package/dist/domains/traces/hooks/use-trace-query.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-query.es.js +2 -2
- package/dist/domains/traces/hooks/use-trace-query.es.js.map +1 -1
- package/dist/domains/traces/trace-filters.cjs.js +5 -5
- package/dist/domains/traces/trace-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-filters.es.js +5 -5
- package/dist/domains/traces/trace-filters.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-combobox.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-combobox.es.js +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.es.js +1 -1
- package/dist/domains/workflows/components/workflow-information.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-information.es.js +1 -1
- package/dist/domains/workflows/components/workflow-step-detail.cjs.js +3 -3
- package/dist/domains/workflows/components/workflow-step-detail.es.js +3 -3
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.cjs.js +2 -2
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.es.js +2 -2
- package/dist/domains/workflows/components/workflows-list/workflows-list.cjs.js +3 -3
- package/dist/domains/workflows/components/workflows-list/workflows-list.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js +3 -3
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js +2 -2
- package/dist/domains/workflows/runs/workflow-run-list.es.js +2 -2
- package/dist/domains/workflows/workflow/data/workflow-data-button.cjs.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-button.es.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.cjs.js +4 -4
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.es.js +4 -4
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.es.js.map +1 -1
- package/dist/domains/workflows/workflow/input/workflow-json-input.cjs.js +2 -2
- package/dist/domains/workflows/workflow/input/workflow-json-input.es.js +2 -2
- package/dist/domains/workflows/workflow/input/workflow-processor-input.cjs.js +3 -3
- package/dist/domains/workflows/workflow/input/workflow-processor-input.es.js +3 -3
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.cjs.js +2 -2
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-body-graph.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-body-graph.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-cancel-button.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-cancel-button.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-data-edge.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-data-edge.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-step-controls.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-step-controls.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-boundary.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-graph-inner.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-graph-inner.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-graph-node.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-graph-node.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-input-data.cjs.js +2 -1
- package/dist/domains/workflows/workflow/workflow-input-data.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-input-data.es.js +2 -1
- package/dist/domains/workflows/workflow/workflow-input-data.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-data.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-error.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-error.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-header.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-status.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-status.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-status.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-status.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-step-action-bar.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-step-action-bar.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-suspended-steps.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-suspended-steps.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-time-travel-form.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-time-travel-form.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-form.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-form.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-header.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger-header.es.js +2 -2
- package/dist/domains/workflows/workflow-status-tone.cjs.js +2 -2
- package/dist/domains/workflows/workflow-status-tone.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow-status-tone.es.js +2 -2
- package/dist/domains/workflows/workflow-status-tone.es.js.map +1 -1
- package/dist/{drawer-DXf50w71.js → drawer-BI3B_krl.js} +2 -2
- package/dist/{drawer-DXf50w71.js.map → drawer-BI3B_krl.js.map} +1 -1
- package/dist/{drawer-d81cZiSV.cjs → drawer-DnXudVbm.cjs} +2 -2
- package/dist/{drawer-d81cZiSV.cjs.map → drawer-DnXudVbm.cjs.map} +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.es.js +1 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js +2 -2
- package/dist/ee/signals/components/entity-index-list.es.js +2 -2
- package/dist/ee/signals/components/signals-empty-state.cjs.js +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +4 -4
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +4 -4
- package/dist/ee/signals/examples-pager.cjs.js +1 -1
- package/dist/ee/signals/examples-pager.es.js +1 -1
- package/dist/ee/signals/flow-card.cjs.js +1 -1
- package/dist/ee/signals/flow-card.es.js +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +3 -3
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +3 -3
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +2 -2
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +2 -2
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +5 -5
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +5 -5
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +3 -3
- package/dist/ee/signals/settings/trace-signal-settings.es.js +3 -3
- package/dist/ee/signals/signal-colors.cjs.js +3 -3
- package/dist/ee/signals/signal-colors.cjs.js.map +1 -1
- package/dist/ee/signals/signal-colors.es.js +3 -3
- package/dist/ee/signals/signal-colors.es.js.map +1 -1
- package/dist/ee/signals/signals-error-state.cjs.js +2 -2
- package/dist/ee/signals/signals-error-state.cjs.js.map +1 -1
- package/dist/ee/signals/signals-error-state.es.js +2 -2
- package/dist/ee/signals/signals-error-state.es.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.cjs.js +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +4 -4
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +4 -4
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +4 -4
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +4 -4
- package/dist/ee/signals/trace-insight-view.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/{field-block-DpejZ6U6.js → field-block--PeppIRb.js} +10 -3
- package/dist/field-block--PeppIRb.js.map +1 -0
- package/dist/{field-block-BIDi9Bvc.cjs → field-block-DtaPqBa3.cjs} +10 -3
- package/dist/field-block-DtaPqBa3.cjs.map +1 -0
- package/dist/{field-block-error-msg-B6-wnlAz.cjs → field-block-error-msg-CkhEN6nU.cjs} +2 -2
- package/dist/{field-block-error-msg-B6-wnlAz.cjs.map → field-block-error-msg-CkhEN6nU.cjs.map} +1 -1
- package/dist/{field-block-error-msg-edlaudVx.js → field-block-error-msg-LXwhKzIq.js} +2 -2
- package/dist/{field-block-error-msg-edlaudVx.js.map → field-block-error-msg-LXwhKzIq.js.map} +1 -1
- package/dist/{filter-bar-chip-D4CSm9KP.cjs → filter-bar-chip-CBlHsz4A.cjs} +3 -3
- package/dist/{filter-bar-chip-D4CSm9KP.cjs.map → filter-bar-chip-CBlHsz4A.cjs.map} +1 -1
- package/dist/{filter-bar-chip-BNPOrSrD.js → filter-bar-chip-DFOtEvpW.js} +3 -3
- package/dist/{filter-bar-chip-BNPOrSrD.js.map → filter-bar-chip-DFOtEvpW.js.map} +1 -1
- package/dist/{input-group-B8bnoDrA.js → input-group-0G9ZX_cM.js} +2 -2
- package/dist/{input-group-B8bnoDrA.js.map → input-group-0G9ZX_cM.js.map} +1 -1
- package/dist/{input-group-I8YVM_Ps.cjs → input-group-BRhBfeHC.cjs} +2 -2
- package/dist/{input-group-I8YVM_Ps.cjs.map → input-group-BRhBfeHC.cjs.map} +1 -1
- package/dist/layout/tabbed-container.cjs.js +6 -6
- package/dist/layout/tabbed-container.es.js +6 -6
- package/dist/lib/form/components/array-element-wrapper.cjs.js +2 -2
- package/dist/lib/form/components/array-element-wrapper.cjs.js.map +1 -1
- package/dist/lib/form/components/array-element-wrapper.es.js +2 -2
- package/dist/lib/form/components/array-element-wrapper.es.js.map +1 -1
- package/dist/lib/form/components/array-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/array-wrapper.es.js +1 -1
- package/dist/lib/form/components/boolean-field.cjs.js +1 -1
- package/dist/lib/form/components/boolean-field.es.js +1 -1
- package/dist/lib/form/components/date-field.cjs.js +1 -1
- package/dist/lib/form/components/date-field.es.js +1 -1
- package/dist/lib/form/components/error-message.cjs.js +1 -1
- package/dist/lib/form/components/error-message.es.js +1 -1
- package/dist/lib/form/components/field-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/field-wrapper.es.js +1 -1
- package/dist/lib/form/components/form-submit-row.cjs.js +1 -1
- package/dist/lib/form/components/form-submit-row.es.js +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js.map +1 -1
- package/dist/lib/form/components/object-wrapper.es.js +1 -1
- package/dist/lib/form/components/object-wrapper.es.js.map +1 -1
- package/dist/lib/form/components/record-field.cjs.js +1 -1
- package/dist/lib/form/components/record-field.es.js +1 -1
- package/dist/lib/form/components/select-field.cjs.js +1 -1
- package/dist/lib/form/components/select-field.es.js +1 -1
- package/dist/lib/form/components/submit-button.cjs.js +1 -1
- package/dist/lib/form/components/submit-button.es.js +1 -1
- package/dist/{list-search-DXb7HFX8.cjs → list-search-BzAIj0DB.cjs} +2 -2
- package/dist/{list-search-DXb7HFX8.cjs.map → list-search-BzAIj0DB.cjs.map} +1 -1
- package/dist/{list-search-9l8IEdxZ.js → list-search-DI1DH7vU.js} +2 -2
- package/dist/{list-search-9l8IEdxZ.js.map → list-search-DI1DH7vU.js.map} +1 -1
- package/dist/{logs-data-list-C77r2FOj.js → logs-data-list-ButZV-2H.js} +3 -3
- package/dist/{logs-data-list-C77r2FOj.js.map → logs-data-list-ButZV-2H.js.map} +1 -1
- package/dist/{logs-data-list-CEFyG1Xb.cjs → logs-data-list-CtHern11.cjs} +3 -3
- package/dist/{logs-data-list-CEFyG1Xb.cjs.map → logs-data-list-CtHern11.cjs.map} +1 -1
- package/dist/{main-sidebar-link-active-BNko0jHZ.cjs → main-sidebar-link-active-D8VSuJKx.cjs} +2 -2
- package/dist/{main-sidebar-link-active-BNko0jHZ.cjs.map → main-sidebar-link-active-D8VSuJKx.cjs.map} +1 -1
- package/dist/{main-sidebar-link-active-1_ktyA8Q.js → main-sidebar-link-active-buZAhlHo.js} +2 -2
- package/dist/{main-sidebar-link-active-1_ktyA8Q.js.map → main-sidebar-link-active-buZAhlHo.js.map} +1 -1
- package/dist/{markdown-renderer-CSwjfPaf.cjs → markdown-renderer-CZV6neya.cjs} +3 -3
- package/dist/{markdown-renderer-CSwjfPaf.cjs.map → markdown-renderer-CZV6neya.cjs.map} +1 -1
- package/dist/{markdown-renderer-Bl0V7FCo.js → markdown-renderer-Cy7Iwy1c.js} +3 -3
- package/dist/{markdown-renderer-Bl0V7FCo.js.map → markdown-renderer-Cy7Iwy1c.js.map} +1 -1
- package/dist/{message-copy-button-DP3U-xA-.js → message-copy-button-C_mFZ3Vg.js} +2 -2
- package/dist/{message-copy-button-DP3U-xA-.js.map → message-copy-button-C_mFZ3Vg.js.map} +1 -1
- package/dist/{message-copy-button-ClJBX9qx.cjs → message-copy-button-CqMR2T2t.cjs} +2 -2
- package/dist/{message-copy-button-ClJBX9qx.cjs.map → message-copy-button-CqMR2T2t.cjs.map} +1 -1
- package/dist/{metrics-card-CloSmyRQ.js → metrics-card-C1rTkbcn.js} +3 -3
- package/dist/metrics-card-C1rTkbcn.js.map +1 -0
- package/dist/{metrics-card-HmQJHDNa.cjs → metrics-card-D7J9JDgn.cjs} +3 -3
- package/dist/metrics-card-D7J9JDgn.cjs.map +1 -0
- package/dist/{metrics-kpi-card-CW24YjZp.cjs → metrics-kpi-card-1hbihR2T.cjs} +3 -3
- package/dist/metrics-kpi-card-1hbihR2T.cjs.map +1 -0
- package/dist/{metrics-kpi-card-DLDT28IB.js → metrics-kpi-card-CiB88L41.js} +3 -3
- package/dist/metrics-kpi-card-CiB88L41.js.map +1 -0
- package/dist/new/settings.cjs.js +1 -1
- package/dist/new/settings.es.js +1 -1
- package/dist/new/sidebar.cjs.js +3 -3
- package/dist/new/sidebar.cjs.js.map +1 -1
- package/dist/new/sidebar.es.js +4 -4
- package/dist/new/sidebar.es.js.map +1 -1
- package/dist/{notification-activity-B1_2BPe_.js → notification-activity-CFR_b8eA.js} +4 -4
- package/dist/notification-activity-CFR_b8eA.js.map +1 -0
- package/dist/{notification-activity-BAn2fhYd.cjs → notification-activity-Dk50wcE4.cjs} +4 -4
- package/dist/notification-activity-Dk50wcE4.cjs.map +1 -0
- package/dist/{plan-DJfH1c_u.js → plan-CvTAGIWv.js} +10 -55
- package/dist/plan-CvTAGIWv.js.map +1 -0
- package/dist/{plan-ZKAT5frg.cjs → plan-DsfNN3a0.cjs} +10 -55
- package/dist/plan-DsfNN3a0.cjs.map +1 -0
- package/dist/primitives/menu-item.cjs.js +2 -2
- package/dist/primitives/menu-item.cjs.js.map +1 -1
- package/dist/primitives/menu-item.es.js +2 -2
- 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-D0F0BYMY.cjs → property-filter-applied-Bp2z4KBv.cjs} +2 -2
- package/dist/{property-filter-applied-D0F0BYMY.cjs.map → property-filter-applied-Bp2z4KBv.cjs.map} +1 -1
- package/dist/{property-filter-applied-k0TOa9hf.js → property-filter-applied-C9verwDR.js} +2 -2
- package/dist/{property-filter-applied-k0TOa9hf.js.map → property-filter-applied-C9verwDR.js.map} +1 -1
- package/dist/{reasoning-activity-CO0Ab1Za.cjs → reasoning-activity-BVviIdMe.cjs} +3 -3
- package/dist/{reasoning-activity-CO0Ab1Za.cjs.map → reasoning-activity-BVviIdMe.cjs.map} +1 -1
- package/dist/{reasoning-activity-D3oCzL58.js → reasoning-activity-OM1-hbCV.js} +3 -3
- package/dist/{reasoning-activity-D3oCzL58.js.map → reasoning-activity-OM1-hbCV.js.map} +1 -1
- package/dist/{relative-timestamp-D-IvjsVb.cjs → relative-timestamp-BlmN8Vjn.cjs} +2 -2
- package/dist/{relative-timestamp-D-IvjsVb.cjs.map → relative-timestamp-BlmN8Vjn.cjs.map} +1 -1
- package/dist/{relative-timestamp-wERh5vUE.js → relative-timestamp-Cnp4VeLp.js} +2 -2
- package/dist/{relative-timestamp-wERh5vUE.js.map → relative-timestamp-Cnp4VeLp.js.map} +1 -1
- package/dist/resize/panel-drawer.cjs.js +1 -1
- package/dist/resize/panel-drawer.es.js +1 -1
- package/dist/{sankey-chart-D-xMiO2u.js → sankey-chart-D4Idjtth.js} +2 -2
- package/dist/sankey-chart-D4Idjtth.js.map +1 -0
- package/dist/{sankey-chart-S7iF7d0E.cjs → sankey-chart-DfVMZpz5.cjs} +2 -2
- package/dist/sankey-chart-DfVMZpz5.cjs.map +1 -0
- package/dist/{search-field-block-Cj9lJsYi.js → search-field-block-BPJh5yuW.js} +3 -3
- package/dist/{search-field-block-Cj9lJsYi.js.map → search-field-block-BPJh5yuW.js.map} +1 -1
- package/dist/{search-field-block-B1eqMV8x.cjs → search-field-block-DRa-ZNQj.cjs} +3 -3
- package/dist/{search-field-block-B1eqMV8x.cjs.map → search-field-block-DRa-ZNQj.cjs.map} +1 -1
- package/dist/{section-B5g_0tUo.js → section-BfEsNViI.js} +2 -2
- package/dist/{section-B5g_0tUo.js.map → section-BfEsNViI.js.map} +1 -1
- package/dist/{section-Bbp-NIR9.cjs → section-dBeXxS69.cjs} +2 -2
- package/dist/{section-Bbp-NIR9.cjs.map → section-dBeXxS69.cjs.map} +1 -1
- package/dist/segmented-control--I3IgW21.cjs +157 -0
- package/dist/segmented-control--I3IgW21.cjs.map +1 -0
- package/dist/segmented-control-BxeiypPR.js +135 -0
- package/dist/segmented-control-BxeiypPR.js.map +1 -0
- package/dist/{select-C0ZGSJYa.cjs → select-DBY9LQFQ.cjs} +2 -2
- package/dist/{select-C0ZGSJYa.cjs.map → select-DBY9LQFQ.cjs.map} +1 -1
- package/dist/{select-ch8imm15.js → select-DZeNf-kI.js} +2 -2
- package/dist/{select-ch8imm15.js.map → select-DZeNf-kI.js.map} +1 -1
- package/dist/{select-field-block-_ZUzUs7l.js → select-field-block-C_x9wNpU.js} +3 -3
- package/dist/{select-field-block-_ZUzUs7l.js.map → select-field-block-C_x9wNpU.js.map} +1 -1
- package/dist/{select-field-block-Dy_N3tWv.cjs → select-field-block-D8AMzoQT.cjs} +3 -3
- package/dist/{select-field-block-Dy_N3tWv.cjs.map → select-field-block-D8AMzoQT.cjs.map} +1 -1
- package/dist/{settings-row-2hq9Ww8Z.js → settings-row-C1JZDdz_.js} +4 -4
- package/dist/settings-row-C1JZDdz_.js.map +1 -0
- package/dist/{settings-row-BMRADph-.cjs → settings-row-C7YKfUgY.cjs} +4 -4
- package/dist/settings-row-C7YKfUgY.cjs.map +1 -0
- package/dist/{side-dialog-D2O3Y7GB.js → side-dialog-DCzCcZs6.js} +5 -5
- package/dist/{side-dialog-D2O3Y7GB.js.map → side-dialog-DCzCcZs6.js.map} +1 -1
- package/dist/{side-dialog-7P9aEC4v.cjs → side-dialog-DFnD1498.cjs} +5 -5
- package/dist/{side-dialog-7P9aEC4v.cjs.map → side-dialog-DFnD1498.cjs.map} +1 -1
- package/dist/{signal-activity-1REUU8T_.js → signal-activity-DW2ExjIp.js} +3 -3
- package/dist/{signal-activity-1REUU8T_.js.map → signal-activity-DW2ExjIp.js.map} +1 -1
- package/dist/{signal-activity-4OJb4kp6.cjs → signal-activity-byCTRP86.cjs} +3 -3
- package/dist/{signal-activity-4OJb4kp6.cjs.map → signal-activity-byCTRP86.cjs.map} +1 -1
- package/dist/{span-payload-primitives-CbXrqcs-.cjs → span-payload-primitives-D0mhsndj.cjs} +3 -3
- package/dist/{span-payload-primitives-CbXrqcs-.cjs.map → span-payload-primitives-D0mhsndj.cjs.map} +1 -1
- package/dist/{span-payload-primitives-CEflnpwW.js → span-payload-primitives-DL1Kr0cu.js} +3 -3
- package/dist/{span-payload-primitives-CEflnpwW.js.map → span-payload-primitives-DL1Kr0cu.js.map} +1 -1
- package/dist/src/domains/chat/tools/tool-card-kind.d.ts +2 -0
- package/dist/src/domains/metrics/components/metrics-utils.d.ts +1 -1
- package/dist/src/domains/traces/components/trace-data-panel-view.stories.d.ts +2 -0
- package/dist/src/domains/traces/hooks/use-trace-query.d.ts +1 -1
- package/dist/src/ds/components/Badge/Badge.d.ts +3 -3
- package/dist/src/ds/components/ButtonsGroup/buttons-group.d.ts +1 -0
- package/dist/src/ds/components/ButtonsGroup/buttons-group.stories.d.ts +0 -6
- package/dist/src/ds/components/CollapsibleBox/collapsible-box.d.ts +10 -0
- package/dist/src/ds/components/CollapsibleBox/collapsible-box.stories.d.ts +11 -0
- package/dist/src/ds/components/CollapsibleBox/index.d.ts +2 -0
- package/dist/src/ds/components/CollapsibleBox/use-collapsible-box.d.ts +14 -0
- package/dist/src/ds/components/Combobox/combobox-styles.d.ts +1 -1
- package/dist/src/ds/components/SegmentedControl/index.d.ts +1 -0
- package/dist/src/ds/components/SegmentedControl/segmented-control.d.ts +38 -0
- package/dist/src/ds/components/SegmentedControl/segmented-control.stories.d.ts +11 -0
- package/dist/src/ds/components/ThemeToggle/theme-toggle.d.ts +12 -30
- package/dist/src/ds/components/ThemeToggle/theme-toggle.stories.d.ts +0 -1
- package/dist/src/ds/components/TokenBudget/tones.d.ts +1 -1
- package/dist/src/ds/components/Workflow/cards/workflow-card-badge-utils.d.ts +2 -2
- package/dist/src/ds/components/ai/plan/plan.d.ts +1 -1
- package/dist/src/ds/tokens/colors.d.ts +31 -28
- package/dist/src/lib/colors.d.ts +1 -1
- package/dist/style.css +517 -184
- package/dist/{tabs-content-h2qqD8t-.js → tabs-content-CwbkTutf.js} +2 -2
- package/dist/{tabs-content-h2qqD8t-.js.map → tabs-content-CwbkTutf.js.map} +1 -1
- package/dist/{tabs-content-DQNRMjup.cjs → tabs-content-DnscxcLI.cjs} +2 -2
- package/dist/{tabs-content-DQNRMjup.cjs.map → tabs-content-DnscxcLI.cjs.map} +1 -1
- package/dist/{tabs-root-BqC8X_h6.cjs → tabs-root-C-ePF1y9.cjs} +4 -4
- package/dist/tabs-root-C-ePF1y9.cjs.map +1 -0
- package/dist/{tabs-root-4vL8SHCO.js → tabs-root-lrZZ3KwH.js} +4 -4
- package/dist/tabs-root-lrZZ3KwH.js.map +1 -0
- package/dist/{tabs-tab-lm4xyjtD.cjs → tabs-tab-BmIBFifi.cjs} +2 -2
- package/dist/{tabs-tab-lm4xyjtD.cjs.map → tabs-tab-BmIBFifi.cjs.map} +1 -1
- package/dist/{tabs-tab-7e2as-AV.js → tabs-tab-DoPSW-1s.js} +2 -2
- package/dist/{tabs-tab-7e2as-AV.js.map → tabs-tab-DoPSW-1s.js.map} +1 -1
- package/dist/{text-field-block-DYOWjPgO.cjs → text-field-block-DUntfMPu.cjs} +2 -2
- package/dist/{text-field-block-DYOWjPgO.cjs.map → text-field-block-DUntfMPu.cjs.map} +1 -1
- package/dist/{text-field-block-DJsOk8dJ.js → text-field-block-DZaGiu5D.js} +2 -2
- package/dist/{text-field-block-DJsOk8dJ.js.map → text-field-block-DZaGiu5D.js.map} +1 -1
- package/dist/{textarea-field-block-DqTd31gF.js → textarea-field-block-BscOSlvI.js} +2 -2
- package/dist/{textarea-field-block-DqTd31gF.js.map → textarea-field-block-BscOSlvI.js.map} +1 -1
- package/dist/{textarea-field-block-C5fPL2Hn.cjs → textarea-field-block-CKAhmLrz.cjs} +2 -2
- package/dist/{textarea-field-block-C5fPL2Hn.cjs.map → textarea-field-block-CKAhmLrz.cjs.map} +1 -1
- package/dist/{thread-list-DGI6M6if.js → thread-list-BTpezI4f.js} +2 -2
- package/dist/{thread-list-DGI6M6if.js.map → thread-list-BTpezI4f.js.map} +1 -1
- package/dist/{thread-list-DwASH1Vl.cjs → thread-list-Drcptd4x.cjs} +2 -2
- package/dist/{thread-list-DwASH1Vl.cjs.map → thread-list-Drcptd4x.cjs.map} +1 -1
- package/dist/{time-picker-CfZbLgMm.js → time-picker-BElZALzM.js} +2 -2
- package/dist/{time-picker-CfZbLgMm.js.map → time-picker-BElZALzM.js.map} +1 -1
- package/dist/{time-picker-C0DCPWpR.cjs → time-picker-_QJdolkZ.cjs} +2 -2
- package/dist/{time-picker-C0DCPWpR.cjs.map → time-picker-_QJdolkZ.cjs.map} +1 -1
- package/dist/tokens.cjs.js +31 -28
- package/dist/tokens.cjs.js.map +1 -1
- package/dist/tokens.es.js +31 -28
- package/dist/tokens.es.js.map +1 -1
- package/dist/{tones-DVtXIMPY.js → tones-RD3VjqiN.js} +2 -2
- package/dist/tones-RD3VjqiN.js.map +1 -0
- package/dist/{tones-BRAQR5Yb.cjs → tones-koH7QNLH.cjs} +2 -2
- package/dist/tones-koH7QNLH.cjs.map +1 -0
- package/dist/{tool-approval-xZvYiuBP.js → tool-approval-BNJ6MpnV.js} +3 -3
- package/dist/tool-approval-BNJ6MpnV.js.map +1 -0
- package/dist/{tool-approval-BAER9nxR.cjs → tool-approval-DOPxugSv.cjs} +3 -3
- package/dist/tool-approval-DOPxugSv.cjs.map +1 -0
- package/dist/{tool-call-arguments-D7PMJ6vj.js → tool-call-arguments-B1MghuMZ.js} +3 -3
- package/dist/{tool-call-arguments-D7PMJ6vj.js.map → tool-call-arguments-B1MghuMZ.js.map} +1 -1
- package/dist/{tool-call-arguments-ynBfg2dY.cjs → tool-call-arguments-CQYR65FB.cjs} +3 -3
- package/dist/{tool-call-arguments-ynBfg2dY.cjs.map → tool-call-arguments-CQYR65FB.cjs.map} +1 -1
- package/dist/{tool-call-group-9Dtupqev.cjs → tool-call-group-D_ioE9hT.cjs} +3 -3
- package/dist/tool-call-group-D_ioE9hT.cjs.map +1 -0
- package/dist/{tool-call-group-DJX7eUYY.js → tool-call-group-ZuYxpyDs.js} +3 -3
- package/dist/tool-call-group-ZuYxpyDs.js.map +1 -0
- package/dist/{tool-call-mono-gKG9Ek1m.js → tool-call-mono-CC6uzvhS.js} +2 -2
- package/dist/{tool-call-mono-gKG9Ek1m.js.map → tool-call-mono-CC6uzvhS.js.map} +1 -1
- package/dist/{tool-call-mono-DFSfVZ6E.cjs → tool-call-mono-DXtb4UMm.cjs} +2 -2
- package/dist/{tool-call-mono-DFSfVZ6E.cjs.map → tool-call-mono-DXtb4UMm.cjs.map} +1 -1
- package/dist/{tool-call-output-DEoCE_Xn.js → tool-call-output-COq3kB-f.js} +3 -3
- package/dist/tool-call-output-COq3kB-f.js.map +1 -0
- package/dist/{tool-call-output-Dl4sVfCy.cjs → tool-call-output-ht3k1qLQ.cjs} +3 -3
- package/dist/tool-call-output-ht3k1qLQ.cjs.map +1 -0
- package/dist/{tool-card-DRqhTx-u.cjs → tool-card-BfMA9tub.cjs} +5 -5
- package/dist/tool-card-BfMA9tub.cjs.map +1 -0
- package/dist/{tool-card-BA1YcDoS.js → tool-card-DPrShK-9.js} +5 -5
- package/dist/tool-card-DPrShK-9.js.map +1 -0
- package/dist/{traces-data-list-CU93pUfj.cjs → traces-data-list-BsAYYJ9t.cjs} +4 -4
- package/dist/{traces-data-list-CU93pUfj.cjs.map → traces-data-list-BsAYYJ9t.cjs.map} +1 -1
- package/dist/{traces-data-list-DaedGcID.js → traces-data-list-CnNpGVRN.js} +4 -4
- package/dist/{traces-data-list-DaedGcID.js.map → traces-data-list-CnNpGVRN.js.map} +1 -1
- package/dist/use-collapsible-box-CCvsF_a9.js +54 -0
- package/dist/use-collapsible-box-CCvsF_a9.js.map +1 -0
- package/dist/use-collapsible-box-CbQOkokQ.cjs +58 -0
- package/dist/use-collapsible-box-CbQOkokQ.cjs.map +1 -0
- package/dist/{use-workflow-graph-runtime-D0ODPlNB.cjs → use-workflow-graph-runtime-CIs2HzoP.cjs} +3 -3
- package/dist/{use-workflow-graph-runtime-D0ODPlNB.cjs.map → use-workflow-graph-runtime-CIs2HzoP.cjs.map} +1 -1
- package/dist/{use-workflow-graph-runtime-XL5zreeR.js → use-workflow-graph-runtime-CexS1ECI.js} +3 -3
- package/dist/{use-workflow-graph-runtime-XL5zreeR.js.map → use-workflow-graph-runtime-CexS1ECI.js.map} +1 -1
- package/dist/utils/colors.cjs.js +2 -2
- package/dist/utils/colors.cjs.js.map +1 -1
- package/dist/utils/colors.es.js +2 -2
- package/dist/utils/colors.es.js.map +1 -1
- package/dist/{workflow-code-dialog-content-Iz2Omi1P.js → workflow-code-dialog-content-BQBHzRfZ.js} +3 -3
- package/dist/{workflow-code-dialog-content-Iz2Omi1P.js.map → workflow-code-dialog-content-BQBHzRfZ.js.map} +1 -1
- package/dist/{workflow-code-dialog-content-vLneZlMd.cjs → workflow-code-dialog-content-COlaHWtW.cjs} +3 -3
- package/dist/{workflow-code-dialog-content-vLneZlMd.cjs.map → workflow-code-dialog-content-COlaHWtW.cjs.map} +1 -1
- package/dist/{workflow-condition-card-B0Va5Amx.js → workflow-condition-card-3J-As62x.js} +10 -10
- package/dist/{workflow-condition-card-B0Va5Amx.js.map → workflow-condition-card-3J-As62x.js.map} +1 -1
- package/dist/{workflow-condition-card-CfjhZb0m.cjs → workflow-condition-card-BjEAp0t6.cjs} +10 -10
- package/dist/{workflow-condition-card-CfjhZb0m.cjs.map → workflow-condition-card-BjEAp0t6.cjs.map} +1 -1
- package/dist/{workflow-data-edge-view-o7akvbpB.js → workflow-data-edge-view-BjfKYysc.js} +2 -2
- package/dist/{workflow-data-edge-view-o7akvbpB.js.map → workflow-data-edge-view-BjfKYysc.js.map} +1 -1
- package/dist/{workflow-data-edge-view-DXeWURnc.cjs → workflow-data-edge-view-BvhW_gux.cjs} +2 -2
- package/dist/{workflow-data-edge-view-DXeWURnc.cjs.map → workflow-data-edge-view-BvhW_gux.cjs.map} +1 -1
- package/dist/{workflow-debug-controls-Bcb4vcek.cjs → workflow-debug-controls-VbxiluNZ.cjs} +3 -3
- package/dist/{workflow-debug-controls-Bcb4vcek.cjs.map → workflow-debug-controls-VbxiluNZ.cjs.map} +1 -1
- package/dist/{workflow-debug-controls-DULCFa4s.js → workflow-debug-controls-tty6gLX2.js} +3 -3
- package/dist/{workflow-debug-controls-DULCFa4s.js.map → workflow-debug-controls-tty6gLX2.js.map} +1 -1
- package/dist/{workflow-edge-data-button-CX-eSbSB.cjs → workflow-edge-data-button-BTsPGDpk.cjs} +4 -4
- package/dist/{workflow-edge-data-button-CX-eSbSB.cjs.map → workflow-edge-data-button-BTsPGDpk.cjs.map} +1 -1
- package/dist/{workflow-edge-data-button-BuZzeN2n.js → workflow-edge-data-button-CIP46GJE.js} +4 -4
- package/dist/{workflow-edge-data-button-BuZzeN2n.js.map → workflow-edge-data-button-CIP46GJE.js.map} +1 -1
- package/dist/{workflow-step-action-Cf_XmOwj.js → workflow-step-action-B3coZwPr.js} +3 -3
- package/dist/{workflow-step-action-Cf_XmOwj.js.map → workflow-step-action-B3coZwPr.js.map} +1 -1
- package/dist/{workflow-step-action-JMkWtObA.cjs → workflow-step-action-COOlMQGX.cjs} +3 -3
- package/dist/{workflow-step-action-JMkWtObA.cjs.map → workflow-step-action-COOlMQGX.cjs.map} +1 -1
- package/package.json +9 -9
- package/theme/colors.css +66 -66
- package/theme/data-viz.css +3 -3
- package/theme/status.css +89 -71
- package/theme/surfaces.css +4 -1
- package/dist/Badge-H8K5WrXg.cjs.map +0 -1
- package/dist/Badge-Q_pCeeGW.js.map +0 -1
- package/dist/Button-BnmR2HRc.cjs.map +0 -1
- package/dist/Button-C6eUqcPI.js.map +0 -1
- package/dist/EmptyState-CJ5KC4Db.cjs.map +0 -1
- package/dist/EmptyState-CynkaZd1.js.map +0 -1
- package/dist/activity-8egTNbaI.cjs.map +0 -1
- package/dist/activity-Duth8KP_.js.map +0 -1
- package/dist/ask-user-Crg1O-o6.js.map +0 -1
- package/dist/ask-user-DJXmLJzy.cjs.map +0 -1
- package/dist/code-editor-BXchPl_F.cjs.map +0 -1
- package/dist/code-editor-Cltwid7c.js.map +0 -1
- package/dist/data-code-section-Bd2Xnckz.js.map +0 -1
- package/dist/data-code-section-D5b6_jcB.cjs.map +0 -1
- package/dist/field-block-BIDi9Bvc.cjs.map +0 -1
- package/dist/field-block-DpejZ6U6.js.map +0 -1
- package/dist/metrics-card-CloSmyRQ.js.map +0 -1
- package/dist/metrics-card-HmQJHDNa.cjs.map +0 -1
- package/dist/metrics-kpi-card-CW24YjZp.cjs.map +0 -1
- package/dist/metrics-kpi-card-DLDT28IB.js.map +0 -1
- package/dist/notification-activity-B1_2BPe_.js.map +0 -1
- package/dist/notification-activity-BAn2fhYd.cjs.map +0 -1
- package/dist/plan-DJfH1c_u.js.map +0 -1
- package/dist/plan-ZKAT5frg.cjs.map +0 -1
- package/dist/sankey-chart-D-xMiO2u.js.map +0 -1
- package/dist/sankey-chart-S7iF7d0E.cjs.map +0 -1
- package/dist/settings-row-2hq9Ww8Z.js.map +0 -1
- package/dist/settings-row-BMRADph-.cjs.map +0 -1
- package/dist/tabs-root-4vL8SHCO.js.map +0 -1
- package/dist/tabs-root-BqC8X_h6.cjs.map +0 -1
- package/dist/tones-BRAQR5Yb.cjs.map +0 -1
- package/dist/tones-DVtXIMPY.js.map +0 -1
- package/dist/tool-approval-BAER9nxR.cjs.map +0 -1
- package/dist/tool-approval-xZvYiuBP.js.map +0 -1
- package/dist/tool-call-group-9Dtupqev.cjs.map +0 -1
- package/dist/tool-call-group-DJX7eUYY.js.map +0 -1
- package/dist/tool-call-output-DEoCE_Xn.js.map +0 -1
- package/dist/tool-call-output-Dl4sVfCy.cjs.map +0 -1
- package/dist/tool-card-BA1YcDoS.js.map +0 -1
- package/dist/tool-card-DRqhTx-u.cjs.map +0 -1
|
@@ -11,7 +11,7 @@ import { signalLabel, signalDescription, shareSentence, formatSnapshotDate } fro
|
|
|
11
11
|
import { chronologicalHistoryPoints, themeTrendDirection } from './theme-trend.es.js';
|
|
12
12
|
import { ThemeTrendChart } from './theme-trend-chart.es.js';
|
|
13
13
|
import { TraceInsightView } from './trace-insight-view.es.js';
|
|
14
|
-
import { D as Drawer, d as DrawerContent, g as DrawerHeader, o as DrawerTitle, e as DrawerDescription, b as DrawerBody } from '../../drawer-
|
|
14
|
+
import { D as Drawer, d as DrawerContent, g as DrawerHeader, o as DrawerTitle, e as DrawerDescription, b as DrawerBody } from '../../drawer-BI3B_krl.js';
|
|
15
15
|
import { T as Tooltip, c as TooltipTrigger, a as TooltipContent } from '../../tooltip-DsQPiynb.js';
|
|
16
16
|
import { T as Txt } from '../../Txt-BP1SRHmL.js';
|
|
17
17
|
import { raisedSurfaceStyle } from '../../primitives/raised-surface.es.js';
|
|
@@ -104,7 +104,7 @@ function ThemeDetailPanel({
|
|
|
104
104
|
insightTraceId !== void 0 && /* @__PURE__ */ jsx(TraceInsightView, { traceId: insightTraceId, onBack: () => setInsightTraceId(void 0) }),
|
|
105
105
|
insightTraceId === void 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
106
106
|
detailQuery.isPending && /* @__PURE__ */ jsx(Txt, { tone: "muted", children: "Loading theme details…" }),
|
|
107
|
-
detailQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "text-destructive-
|
|
107
|
+
detailQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "text-destructive-foreground", children: "Unable to load theme details." }),
|
|
108
108
|
detailQuery.data && !detailQuery.data.theme && /* @__PURE__ */ jsxs("section", { children: [
|
|
109
109
|
/* @__PURE__ */ jsx(Txt, { as: "h2", variant: "subheading", tone: "ink", children: "Not present in this snapshot" }),
|
|
110
110
|
/* @__PURE__ */ jsx(Txt, { tone: "muted", className: "mt-2", children: "This theme has no data in the selected snapshot." })
|
|
@@ -143,7 +143,7 @@ function ThemeDetailPanel({
|
|
|
143
143
|
}
|
|
144
144
|
),
|
|
145
145
|
examplesQuery.isPending && /* @__PURE__ */ jsx(Txt, { tone: "muted", className: "mt-3", children: "Loading examples…" }),
|
|
146
|
-
examplesQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "mt-3 text-destructive-
|
|
146
|
+
examplesQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "mt-3 text-destructive-foreground", children: "Unable to load examples." }),
|
|
147
147
|
examplesQuery.data && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
148
148
|
examplesQuery.data.examples.length === 0 ? /* @__PURE__ */ jsx(Txt, { tone: "muted", className: "mt-3", children: "No examples in this snapshot." }) : /* @__PURE__ */ jsx("ul", { className: "mt-3 space-y-3", children: examplesQuery.data.examples.map((example) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
|
|
149
149
|
"button",
|
|
@@ -182,7 +182,7 @@ function ThemeDetailPanel({
|
|
|
182
182
|
}
|
|
183
183
|
),
|
|
184
184
|
historyQuery.isPending && /* @__PURE__ */ jsx(Txt, { tone: "muted", className: "mt-3", children: "Loading trend…" }),
|
|
185
|
-
historyQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "mt-3 text-destructive-
|
|
185
|
+
historyQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "mt-3 text-destructive-foreground", children: "Unable to load the trend." }),
|
|
186
186
|
oldestHistoryPoint !== void 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
187
187
|
/* @__PURE__ */ jsxs(Txt, { tone: "ink", className: "mt-3", children: [
|
|
188
188
|
historyQuery.data?.nextCursor ? `Active since at least ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length}+ snapshots` : `First seen ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length} ${historyPoints.length === 1 ? "snapshot" : "snapshots"}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-detail-panel.es.js","sources":["../../../src/ee/signals/theme-detail-panel.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { EXAMPLES_PAGE_SIZE, ExamplesPager } from './examples-pager';\nimport { useThemeDetail, useThemeExamples, useThemeHistory } from './hooks';\nimport { getSignalColor } from './signal-colors';\nimport { formatSnapshotDate, shareSentence, signalDescription, signalLabel } from './signal-formatting';\nimport type { SelectedTheme, ThemeSelection, ThemeSelectionStats } from './theme-drilldown-data';\nimport { chronologicalHistoryPoints, themeTrendDirection } from './theme-trend';\nimport { ThemeTrendChart } from './theme-trend-chart';\nimport { TraceInsightView } from './trace-insight-view';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport {\n Drawer,\n DrawerBody,\n DrawerContent,\n DrawerDescription,\n DrawerHeader,\n DrawerTitle,\n} from '@/ds/components/Drawer';\nimport { Tooltip, TooltipContent, TooltipTrigger } from '@/ds/components/Tooltip';\nimport { Txt } from '@/ds/components/Txt';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface ThemeDetailPanelProps {\n entityId: string;\n entityType: string;\n snapshotId: string;\n snapshotTotal: number;\n selection: SelectedTheme | undefined;\n filters?: ThemeSelection[];\n filteredStats?: ThemeSelectionStats;\n onClose: () => void;\n}\n\nexport function ThemeDetailPanel({\n entityId,\n entityType,\n snapshotId,\n snapshotTotal,\n selection,\n filters = [],\n filteredStats,\n onClose,\n}: ThemeDetailPanelProps) {\n const { signalCatalog } = useTraceIntelligence();\n const filterKey = filters\n .map(filter => `${filter.signalName}:${filter.kind === 'theme' ? filter.themeId : 'noise'}`)\n .join(',');\n const examplesContextKey = `${snapshotId}:${selection?.signalName ?? ''}:${selection?.themeId ?? ''}:${filterKey}`;\n const [examplesPage, setExamplesPage] = useState(() => ({ contextKey: examplesContextKey, offset: 0 }));\n const examplesOffset = examplesPage.contextKey === examplesContextKey ? examplesPage.offset : 0;\n const [insightTraceId, setInsightTraceId] = useState<string>();\n const detailQuery = useThemeDetail(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotId,\n selection?.themeId,\n );\n const examplesQuery = useThemeExamples(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotId,\n selection?.themeId,\n EXAMPLES_PAGE_SIZE,\n examplesOffset,\n filters,\n );\n const historyQuery = useThemeHistory(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotTotal > 1 ? selection?.themeId : undefined,\n );\n const title = detailQuery.data?.theme?.label ?? selection?.label ?? 'Theme details';\n const signalName = selection?.signalName;\n const signalDisplayLabel = signalName ? signalLabel(signalCatalog, signalName) : undefined;\n const signalDisplayDescription = signalName ? signalDescription(signalCatalog, signalName) : undefined;\n const historyPoints = historyQuery.data ? chronologicalHistoryPoints(historyQuery.data.points) : [];\n const oldestHistoryPoint = historyPoints[0];\n\n return (\n <Drawer\n onOpenChange={open => {\n if (!open) {\n setExamplesPage({ contextKey: '', offset: 0 });\n setInsightTraceId(undefined);\n onClose();\n }\n }}\n open={selection !== undefined}\n overlay=\"none\"\n side=\"right\"\n variant=\"floating\"\n >\n <DrawerContent>\n <DrawerHeader className=\"border-b border-border\">\n {signalName !== undefined && (\n <Txt\n as=\"span\"\n variant=\"column\"\n font=\"mono\"\n className=\"tracking-widest\"\n style={{ color: getSignalColor(signalName) }}\n >\n {signalDisplayDescription ? (\n <Tooltip>\n <TooltipTrigger aria-label={signalDisplayLabel} className=\"cursor-default uppercase\">\n {signalDisplayLabel}\n </TooltipTrigger>\n <TooltipContent>{signalDisplayDescription}</TooltipContent>\n </Tooltip>\n ) : (\n <span className=\"uppercase\">{signalDisplayLabel}</span>\n )}\n </Txt>\n )}\n <DrawerTitle>{title}</DrawerTitle>\n <DrawerDescription className=\"sr-only\">\n Details for the {signalName ?? 'selected'} theme {title}\n </DrawerDescription>\n </DrawerHeader>\n <DrawerBody className=\"grid content-start gap-6 overflow-y-auto p-6\">\n {insightTraceId !== undefined && (\n <TraceInsightView traceId={insightTraceId} onBack={() => setInsightTraceId(undefined)} />\n )}\n {insightTraceId === undefined && (\n <>\n {detailQuery.isPending && <Txt tone=\"muted\">Loading theme details…</Txt>}\n {detailQuery.isError && <Txt className=\"text-destructive-indicator\">Unable to load theme details.</Txt>}\n {detailQuery.data && !detailQuery.data.theme && (\n <section>\n <Txt as=\"h2\" variant=\"subheading\" tone=\"ink\">\n Not present in this snapshot\n </Txt>\n <Txt tone=\"muted\" className=\"mt-2\">\n This theme has no data in the selected snapshot.\n </Txt>\n </section>\n )}\n {detailQuery.data?.theme && (\n <>\n <section aria-labelledby=\"theme-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {detailQuery.data.theme.description ?? 'No description available.'}\n </Txt>\n <Txt tone=\"ink\" font=\"mono\" className=\"mt-3 tabular-nums\">\n {shareSentence(\n filteredStats?.traceCount ?? detailQuery.data.theme.traceCount,\n filteredStats?.stageShare ?? detailQuery.data.theme.coverage,\n )}\n </Txt>\n </section>\n\n <section aria-labelledby=\"theme-examples-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-examples-heading\"\n className=\"tracking-wider uppercase\"\n >\n Examples\n </Txt>\n {examplesQuery.isPending && (\n <Txt tone=\"muted\" className=\"mt-3\">\n Loading examples…\n </Txt>\n )}\n {examplesQuery.isError && (\n <Txt className=\"mt-3 text-destructive-indicator\">Unable to load examples.</Txt>\n )}\n {examplesQuery.data && (\n <>\n {examplesQuery.data.examples.length === 0 ? (\n <Txt tone=\"muted\" className=\"mt-3\">\n No examples in this snapshot.\n </Txt>\n ) : (\n <ul className=\"mt-3 space-y-3\">\n {examplesQuery.data.examples.map(example => (\n <li key={example.traceId}>\n <button\n type=\"button\"\n aria-label={`View trace insight for ${example.signalText}`}\n className={cn(\n raisedSurfaceStyle,\n 'state-layer w-full cursor-pointer rounded-md p-3 text-left text-body text-foreground',\n )}\n onClick={() => setInsightTraceId(example.traceId)}\n >\n {example.signalText}\n </button>\n </li>\n ))}\n </ul>\n )}\n <ExamplesPager\n traceCount={filteredStats?.traceCount ?? detailQuery.data.theme.traceCount}\n offset={examplesOffset}\n onOffsetChange={offset => setExamplesPage({ contextKey: examplesContextKey, offset })}\n />\n </>\n )}\n </section>\n\n {snapshotTotal > 1 && (\n <section aria-labelledby=\"theme-trend-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-trend-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trend\n </Txt>\n {historyQuery.isPending && (\n <Txt tone=\"muted\" className=\"mt-3\">\n Loading trend…\n </Txt>\n )}\n {historyQuery.isError && (\n <Txt className=\"mt-3 text-destructive-indicator\">Unable to load the trend.</Txt>\n )}\n {oldestHistoryPoint !== undefined && (\n <>\n <Txt tone=\"ink\" className=\"mt-3\">\n {/* A nextCursor means older points exist beyond the fetched window,\n so the oldest loaded point is a lower bound, not the true origin. */}\n {historyQuery.data?.nextCursor\n ? `Active since at least ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length}+ snapshots`\n : `First seen ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length} ${historyPoints.length === 1 ? 'snapshot' : 'snapshots'}`}{' '}\n · {themeTrendDirection(historyPoints)}\n </Txt>\n {historyPoints.length >= 2 && (\n <ThemeTrendChart points={historyPoints} signalName={signalName ?? 'goal'} />\n )}\n </>\n )}\n </section>\n )}\n </>\n )}\n </>\n )}\n </DrawerBody>\n </DrawerContent>\n </Drawer>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theme-detail-panel.es.js","sources":["../../../src/ee/signals/theme-detail-panel.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { EXAMPLES_PAGE_SIZE, ExamplesPager } from './examples-pager';\nimport { useThemeDetail, useThemeExamples, useThemeHistory } from './hooks';\nimport { getSignalColor } from './signal-colors';\nimport { formatSnapshotDate, shareSentence, signalDescription, signalLabel } from './signal-formatting';\nimport type { SelectedTheme, ThemeSelection, ThemeSelectionStats } from './theme-drilldown-data';\nimport { chronologicalHistoryPoints, themeTrendDirection } from './theme-trend';\nimport { ThemeTrendChart } from './theme-trend-chart';\nimport { TraceInsightView } from './trace-insight-view';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport {\n Drawer,\n DrawerBody,\n DrawerContent,\n DrawerDescription,\n DrawerHeader,\n DrawerTitle,\n} from '@/ds/components/Drawer';\nimport { Tooltip, TooltipContent, TooltipTrigger } from '@/ds/components/Tooltip';\nimport { Txt } from '@/ds/components/Txt';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface ThemeDetailPanelProps {\n entityId: string;\n entityType: string;\n snapshotId: string;\n snapshotTotal: number;\n selection: SelectedTheme | undefined;\n filters?: ThemeSelection[];\n filteredStats?: ThemeSelectionStats;\n onClose: () => void;\n}\n\nexport function ThemeDetailPanel({\n entityId,\n entityType,\n snapshotId,\n snapshotTotal,\n selection,\n filters = [],\n filteredStats,\n onClose,\n}: ThemeDetailPanelProps) {\n const { signalCatalog } = useTraceIntelligence();\n const filterKey = filters\n .map(filter => `${filter.signalName}:${filter.kind === 'theme' ? filter.themeId : 'noise'}`)\n .join(',');\n const examplesContextKey = `${snapshotId}:${selection?.signalName ?? ''}:${selection?.themeId ?? ''}:${filterKey}`;\n const [examplesPage, setExamplesPage] = useState(() => ({ contextKey: examplesContextKey, offset: 0 }));\n const examplesOffset = examplesPage.contextKey === examplesContextKey ? examplesPage.offset : 0;\n const [insightTraceId, setInsightTraceId] = useState<string>();\n const detailQuery = useThemeDetail(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotId,\n selection?.themeId,\n );\n const examplesQuery = useThemeExamples(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotId,\n selection?.themeId,\n EXAMPLES_PAGE_SIZE,\n examplesOffset,\n filters,\n );\n const historyQuery = useThemeHistory(\n entityId,\n entityType,\n selection?.signalName ?? 'goal',\n snapshotTotal > 1 ? selection?.themeId : undefined,\n );\n const title = detailQuery.data?.theme?.label ?? selection?.label ?? 'Theme details';\n const signalName = selection?.signalName;\n const signalDisplayLabel = signalName ? signalLabel(signalCatalog, signalName) : undefined;\n const signalDisplayDescription = signalName ? signalDescription(signalCatalog, signalName) : undefined;\n const historyPoints = historyQuery.data ? chronologicalHistoryPoints(historyQuery.data.points) : [];\n const oldestHistoryPoint = historyPoints[0];\n\n return (\n <Drawer\n onOpenChange={open => {\n if (!open) {\n setExamplesPage({ contextKey: '', offset: 0 });\n setInsightTraceId(undefined);\n onClose();\n }\n }}\n open={selection !== undefined}\n overlay=\"none\"\n side=\"right\"\n variant=\"floating\"\n >\n <DrawerContent>\n <DrawerHeader className=\"border-b border-border\">\n {signalName !== undefined && (\n <Txt\n as=\"span\"\n variant=\"column\"\n font=\"mono\"\n className=\"tracking-widest\"\n style={{ color: getSignalColor(signalName) }}\n >\n {signalDisplayDescription ? (\n <Tooltip>\n <TooltipTrigger aria-label={signalDisplayLabel} className=\"cursor-default uppercase\">\n {signalDisplayLabel}\n </TooltipTrigger>\n <TooltipContent>{signalDisplayDescription}</TooltipContent>\n </Tooltip>\n ) : (\n <span className=\"uppercase\">{signalDisplayLabel}</span>\n )}\n </Txt>\n )}\n <DrawerTitle>{title}</DrawerTitle>\n <DrawerDescription className=\"sr-only\">\n Details for the {signalName ?? 'selected'} theme {title}\n </DrawerDescription>\n </DrawerHeader>\n <DrawerBody className=\"grid content-start gap-6 overflow-y-auto p-6\">\n {insightTraceId !== undefined && (\n <TraceInsightView traceId={insightTraceId} onBack={() => setInsightTraceId(undefined)} />\n )}\n {insightTraceId === undefined && (\n <>\n {detailQuery.isPending && <Txt tone=\"muted\">Loading theme details…</Txt>}\n {detailQuery.isError && <Txt className=\"text-destructive-foreground\">Unable to load theme details.</Txt>}\n {detailQuery.data && !detailQuery.data.theme && (\n <section>\n <Txt as=\"h2\" variant=\"subheading\" tone=\"ink\">\n Not present in this snapshot\n </Txt>\n <Txt tone=\"muted\" className=\"mt-2\">\n This theme has no data in the selected snapshot.\n </Txt>\n </section>\n )}\n {detailQuery.data?.theme && (\n <>\n <section aria-labelledby=\"theme-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {detailQuery.data.theme.description ?? 'No description available.'}\n </Txt>\n <Txt tone=\"ink\" font=\"mono\" className=\"mt-3 tabular-nums\">\n {shareSentence(\n filteredStats?.traceCount ?? detailQuery.data.theme.traceCount,\n filteredStats?.stageShare ?? detailQuery.data.theme.coverage,\n )}\n </Txt>\n </section>\n\n <section aria-labelledby=\"theme-examples-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-examples-heading\"\n className=\"tracking-wider uppercase\"\n >\n Examples\n </Txt>\n {examplesQuery.isPending && (\n <Txt tone=\"muted\" className=\"mt-3\">\n Loading examples…\n </Txt>\n )}\n {examplesQuery.isError && (\n <Txt className=\"mt-3 text-destructive-foreground\">Unable to load examples.</Txt>\n )}\n {examplesQuery.data && (\n <>\n {examplesQuery.data.examples.length === 0 ? (\n <Txt tone=\"muted\" className=\"mt-3\">\n No examples in this snapshot.\n </Txt>\n ) : (\n <ul className=\"mt-3 space-y-3\">\n {examplesQuery.data.examples.map(example => (\n <li key={example.traceId}>\n <button\n type=\"button\"\n aria-label={`View trace insight for ${example.signalText}`}\n className={cn(\n raisedSurfaceStyle,\n 'state-layer w-full cursor-pointer rounded-md p-3 text-left text-body text-foreground',\n )}\n onClick={() => setInsightTraceId(example.traceId)}\n >\n {example.signalText}\n </button>\n </li>\n ))}\n </ul>\n )}\n <ExamplesPager\n traceCount={filteredStats?.traceCount ?? detailQuery.data.theme.traceCount}\n offset={examplesOffset}\n onOffsetChange={offset => setExamplesPage({ contextKey: examplesContextKey, offset })}\n />\n </>\n )}\n </section>\n\n {snapshotTotal > 1 && (\n <section aria-labelledby=\"theme-trend-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"theme-trend-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trend\n </Txt>\n {historyQuery.isPending && (\n <Txt tone=\"muted\" className=\"mt-3\">\n Loading trend…\n </Txt>\n )}\n {historyQuery.isError && (\n <Txt className=\"mt-3 text-destructive-foreground\">Unable to load the trend.</Txt>\n )}\n {oldestHistoryPoint !== undefined && (\n <>\n <Txt tone=\"ink\" className=\"mt-3\">\n {/* A nextCursor means older points exist beyond the fetched window,\n so the oldest loaded point is a lower bound, not the true origin. */}\n {historyQuery.data?.nextCursor\n ? `Active since at least ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length}+ snapshots`\n : `First seen ${formatSnapshotDate(oldestHistoryPoint.startedAt)} · in ${historyPoints.length} ${historyPoints.length === 1 ? 'snapshot' : 'snapshots'}`}{' '}\n · {themeTrendDirection(historyPoints)}\n </Txt>\n {historyPoints.length >= 2 && (\n <ThemeTrendChart points={historyPoints} signalName={signalName ?? 'goal'} />\n )}\n </>\n )}\n </section>\n )}\n </>\n )}\n </>\n )}\n </DrawerBody>\n </DrawerContent>\n </Drawer>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ const lucideReact = require('lucide-react');
|
|
|
7
7
|
const ee_signals_signalColors = require('./signal-colors.cjs.js');
|
|
8
8
|
const ee_signals_signalFormatting = require('./signal-formatting.cjs.js');
|
|
9
9
|
const ee_signals_useTraceIntelligence = require('./use-trace-intelligence.cjs.js');
|
|
10
|
-
const Button = require('../../Button-
|
|
10
|
+
const Button = require('../../Button-CXhSUBxN.cjs');
|
|
11
11
|
const Txt = require('../../Txt-DPmEpNbp.cjs');
|
|
12
12
|
|
|
13
13
|
function selectionLabel(catalog, selection) {
|
|
@@ -3,7 +3,7 @@ import { X, Eye } from 'lucide-react';
|
|
|
3
3
|
import { getSignalColor } from './signal-colors.es.js';
|
|
4
4
|
import { signalLabel } from './signal-formatting.es.js';
|
|
5
5
|
import { useTraceIntelligence } from './use-trace-intelligence.es.js';
|
|
6
|
-
import { B as Button } from '../../Button-
|
|
6
|
+
import { B as Button } from '../../Button-D43ghVKt.js';
|
|
7
7
|
import { T as Txt } from '../../Txt-BP1SRHmL.js';
|
|
8
8
|
|
|
9
9
|
function selectionLabel(catalog, selection) {
|
|
@@ -8,7 +8,7 @@ require('@tanstack/react-query');
|
|
|
8
8
|
const ee_signals_useTraceIntelligence = require('./use-trace-intelligence.cjs.js');
|
|
9
9
|
const ee_signals_hooks_useTraceInsight = require('./hooks/use-trace-insight.cjs.js');
|
|
10
10
|
const ee_signals_signalFormatting = require('./signal-formatting.cjs.js');
|
|
11
|
-
const Button = require('../../Button-
|
|
11
|
+
const Button = require('../../Button-CXhSUBxN.cjs');
|
|
12
12
|
const Txt = require('../../Txt-DPmEpNbp.cjs');
|
|
13
13
|
const icons_TraceIcon = require('../../icons/TraceIcon.cjs.js');
|
|
14
14
|
const primitives_raisedSurface = require('../../primitives/raised-surface.cjs.js');
|
|
@@ -23,7 +23,7 @@ function TraceInsightView({ traceId, onBack }) {
|
|
|
23
23
|
/* @__PURE__ */ jsxRuntime.jsx(Button.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(icons_TraceIcon.TraceIcon, {}), render: /* @__PURE__ */ jsxRuntime.jsx(LinkComponent, { href: getTraceHref(traceId) }), size: "sm", children: "Open full trace" })
|
|
24
24
|
] }),
|
|
25
25
|
insightQuery.isPending && /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { tone: "muted", children: "Loading trace insight…" }),
|
|
26
|
-
insightQuery.isError && /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { className: "text-destructive-
|
|
26
|
+
insightQuery.isError && /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { className: "text-destructive-foreground", children: "Unable to load the trace insight." }),
|
|
27
27
|
insightQuery.data && /* @__PURE__ */ jsxRuntime.jsx(TraceInsightBody, { insight: insightQuery.data })
|
|
28
28
|
] });
|
|
29
29
|
}
|
|
@@ -50,7 +50,7 @@ function ObservationItem({ observation }) {
|
|
|
50
50
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: `rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? "info"]}`, children: [
|
|
51
51
|
kind !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Txt.Txt, { variant: "meta", tone: "muted", font: "mono", className: "tracking-wider uppercase", children: [
|
|
52
52
|
severity === "problem" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
53
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-destructive-
|
|
53
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-destructive-foreground", children: "problem" }),
|
|
54
54
|
/* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", children: " · " })
|
|
55
55
|
] }),
|
|
56
56
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: kind })
|
|
@@ -79,7 +79,7 @@ function TraceInsightBody({ insight }) {
|
|
|
79
79
|
/* @__PURE__ */ jsxRuntime.jsx("dt", { className: "text-muted-foreground", children: "Current task" }),
|
|
80
80
|
/* @__PURE__ */ jsxRuntime.jsx("dd", { className: "mt-1 text-foreground", children: insight.summary.currentTask })
|
|
81
81
|
] }),
|
|
82
|
-
insight.summary.degenerate === true && /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { className: "mt-4 text-destructive-
|
|
82
|
+
insight.summary.degenerate === true && /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { className: "mt-4 text-destructive-foreground", children: "This trace was flagged as degenerate or looping." }),
|
|
83
83
|
insight.summary.observations.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
84
84
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
85
85
|
Txt.Txt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-insight-view.cjs.js","sources":["../../../src/ee/signals/trace-insight-view.tsx"],"sourcesContent":["import { ChevronLeft } from 'lucide-react';\nimport { useTraceInsight } from './hooks';\nimport { signalLabel } from './signal-formatting';\nimport type { TraceInsightResponse } from './types';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\nimport { TraceIcon } from '@/ds/icons/TraceIcon';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface TraceInsightViewProps {\n traceId: string;\n onBack: () => void;\n}\n\nexport function TraceInsightView({ traceId, onBack }: TraceInsightViewProps) {\n const { LinkComponent, getTraceHref } = useTraceIntelligence();\n const insightQuery = useTraceInsight(traceId);\n\n return (\n <div className=\"grid content-start gap-6\">\n <div className=\"flex items-center justify-between gap-3\">\n <Button icon={<ChevronLeft />} size=\"sm\" onClick={onBack}>\n Back to examples\n </Button>\n <Button icon={<TraceIcon />} render={<LinkComponent href={getTraceHref(traceId)} />} size=\"sm\">\n Open full trace\n </Button>\n </div>\n {insightQuery.isPending && <Txt tone=\"muted\">Loading trace insight…</Txt>}\n {insightQuery.isError && <Txt className=\"text-destructive-indicator\">Unable to load the trace insight.</Txt>}\n {insightQuery.data && <TraceInsightBody insight={insightQuery.data} />}\n </div>\n );\n}\n\ntype ObservationSeverity = 'info' | 'success' | 'problem';\n\ninterface ParsedObservation {\n severity?: ObservationSeverity;\n kind?: string;\n text: string;\n}\n\nfunction isObservationSeverity(value: string): value is ObservationSeverity {\n return value === 'info' || value === 'success' || value === 'problem';\n}\n\n/**\n * Trace summaries prefix each observation with a machine-readable\n * `severity=… | kind=… |` header (see the trace-summary prompt). Strip it for\n * display and keep the parts so the UI can render them as visual cues, the\n * same way the observational-memory views parse their emoji markers out of\n * the raw text.\n */\nfunction parseTraceObservation(observation: string): ParsedObservation {\n const match = observation.match(/^severity=(\\w+)\\s*\\|\\s*kind=(\\w+)\\s*\\|\\s*/);\n if (!match) return { text: observation };\n const [prefix, severity, kind] = match;\n return {\n severity: severity !== undefined && isObservationSeverity(severity) ? severity : undefined,\n kind,\n text: observation.slice(prefix.length),\n };\n}\n\nconst OBSERVATION_SEVERITY_CARD: Record<ObservationSeverity, string> = {\n info: raisedSurfaceStyle,\n success: 'border border-success-edge bg-success-subtle',\n problem: 'border border-destructive-edge bg-destructive-subtle',\n};\n\nfunction ObservationItem({ observation }: { observation: string }) {\n const { severity, kind, text } = parseTraceObservation(observation);\n\n return (\n <li className={`rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? 'info']}`}>\n {kind !== undefined && (\n <Txt variant=\"meta\" tone=\"muted\" font=\"mono\" className=\"tracking-wider uppercase\">\n {severity === 'problem' && (\n <>\n <span className=\"text-destructive-indicator\">problem</span>\n <span aria-hidden=\"true\"> · </span>\n </>\n )}\n <span>{kind}</span>\n </Txt>\n )}\n <p className={`text-foreground ${kind === undefined ? '' : 'mt-1'}`}>{text}</p>\n </li>\n );\n}\n\nfunction TraceInsightBody({ insight }: { insight: TraceInsightResponse }) {\n const { signalCatalog } = useTraceIntelligence();\n return (\n <>\n {insight.summary === undefined ? (\n <Txt tone=\"muted\">No insight available yet for this trace.</Txt>\n ) : (\n <section aria-labelledby=\"trace-insight-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {insight.summary.summary}\n </Txt>\n {insight.summary.currentTask !== undefined && (\n <dl className=\"mt-4 text-body\">\n <dt className=\"text-muted-foreground\">Current task</dt>\n <dd className=\"mt-1 text-foreground\">{insight.summary.currentTask}</dd>\n </dl>\n )}\n {insight.summary.degenerate === true && (\n <Txt className=\"mt-4 text-destructive-indicator\">This trace was flagged as degenerate or looping.</Txt>\n )}\n {insight.summary.observations.length > 0 && (\n <>\n <Txt\n as=\"h3\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-observations-heading\"\n className=\"mt-4 tracking-wider uppercase\"\n >\n Observations\n </Txt>\n <ul aria-labelledby=\"trace-insight-observations-heading\" className=\"mt-3 space-y-2\">\n {insight.summary.observations.map((observation, index) => (\n <ObservationItem key={`${observation}:${index}`} observation={observation} />\n ))}\n </ul>\n </>\n )}\n </section>\n )}\n {insight.signals.length > 0 && (\n <section aria-labelledby=\"trace-insight-signals-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-signals-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace signal summaries\n </Txt>\n <ul className=\"mt-3 space-y-3\">\n {insight.signals.map(signal => (\n <li key={signal.signalName} className={cn(raisedSurfaceStyle, 'rounded-md p-3 text-body')}>\n <p className=\"text-muted-foreground\">{signalLabel(signalCatalog, signal.signalName)}</p>\n <p className=\"mt-1 text-foreground\">{signal.signalText}</p>\n </li>\n ))}\n </ul>\n </section>\n )}\n </>\n );\n}\n"],"names":["useTraceIntelligence","useTraceInsight","jsxs","jsx","Button","ChevronLeft","TraceIcon","Txt","raisedSurfaceStyle","Fragment","cn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace-insight-view.cjs.js","sources":["../../../src/ee/signals/trace-insight-view.tsx"],"sourcesContent":["import { ChevronLeft } from 'lucide-react';\nimport { useTraceInsight } from './hooks';\nimport { signalLabel } from './signal-formatting';\nimport type { TraceInsightResponse } from './types';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\nimport { TraceIcon } from '@/ds/icons/TraceIcon';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface TraceInsightViewProps {\n traceId: string;\n onBack: () => void;\n}\n\nexport function TraceInsightView({ traceId, onBack }: TraceInsightViewProps) {\n const { LinkComponent, getTraceHref } = useTraceIntelligence();\n const insightQuery = useTraceInsight(traceId);\n\n return (\n <div className=\"grid content-start gap-6\">\n <div className=\"flex items-center justify-between gap-3\">\n <Button icon={<ChevronLeft />} size=\"sm\" onClick={onBack}>\n Back to examples\n </Button>\n <Button icon={<TraceIcon />} render={<LinkComponent href={getTraceHref(traceId)} />} size=\"sm\">\n Open full trace\n </Button>\n </div>\n {insightQuery.isPending && <Txt tone=\"muted\">Loading trace insight…</Txt>}\n {insightQuery.isError && <Txt className=\"text-destructive-foreground\">Unable to load the trace insight.</Txt>}\n {insightQuery.data && <TraceInsightBody insight={insightQuery.data} />}\n </div>\n );\n}\n\ntype ObservationSeverity = 'info' | 'success' | 'problem';\n\ninterface ParsedObservation {\n severity?: ObservationSeverity;\n kind?: string;\n text: string;\n}\n\nfunction isObservationSeverity(value: string): value is ObservationSeverity {\n return value === 'info' || value === 'success' || value === 'problem';\n}\n\n/**\n * Trace summaries prefix each observation with a machine-readable\n * `severity=… | kind=… |` header (see the trace-summary prompt). Strip it for\n * display and keep the parts so the UI can render them as visual cues, the\n * same way the observational-memory views parse their emoji markers out of\n * the raw text.\n */\nfunction parseTraceObservation(observation: string): ParsedObservation {\n const match = observation.match(/^severity=(\\w+)\\s*\\|\\s*kind=(\\w+)\\s*\\|\\s*/);\n if (!match) return { text: observation };\n const [prefix, severity, kind] = match;\n return {\n severity: severity !== undefined && isObservationSeverity(severity) ? severity : undefined,\n kind,\n text: observation.slice(prefix.length),\n };\n}\n\nconst OBSERVATION_SEVERITY_CARD: Record<ObservationSeverity, string> = {\n info: raisedSurfaceStyle,\n success: 'border border-success-edge bg-success-subtle',\n problem: 'border border-destructive-edge bg-destructive-subtle',\n};\n\nfunction ObservationItem({ observation }: { observation: string }) {\n const { severity, kind, text } = parseTraceObservation(observation);\n\n return (\n <li className={`rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? 'info']}`}>\n {kind !== undefined && (\n <Txt variant=\"meta\" tone=\"muted\" font=\"mono\" className=\"tracking-wider uppercase\">\n {severity === 'problem' && (\n <>\n <span className=\"text-destructive-foreground\">problem</span>\n <span aria-hidden=\"true\"> · </span>\n </>\n )}\n <span>{kind}</span>\n </Txt>\n )}\n <p className={`text-foreground ${kind === undefined ? '' : 'mt-1'}`}>{text}</p>\n </li>\n );\n}\n\nfunction TraceInsightBody({ insight }: { insight: TraceInsightResponse }) {\n const { signalCatalog } = useTraceIntelligence();\n return (\n <>\n {insight.summary === undefined ? (\n <Txt tone=\"muted\">No insight available yet for this trace.</Txt>\n ) : (\n <section aria-labelledby=\"trace-insight-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {insight.summary.summary}\n </Txt>\n {insight.summary.currentTask !== undefined && (\n <dl className=\"mt-4 text-body\">\n <dt className=\"text-muted-foreground\">Current task</dt>\n <dd className=\"mt-1 text-foreground\">{insight.summary.currentTask}</dd>\n </dl>\n )}\n {insight.summary.degenerate === true && (\n <Txt className=\"mt-4 text-destructive-foreground\">This trace was flagged as degenerate or looping.</Txt>\n )}\n {insight.summary.observations.length > 0 && (\n <>\n <Txt\n as=\"h3\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-observations-heading\"\n className=\"mt-4 tracking-wider uppercase\"\n >\n Observations\n </Txt>\n <ul aria-labelledby=\"trace-insight-observations-heading\" className=\"mt-3 space-y-2\">\n {insight.summary.observations.map((observation, index) => (\n <ObservationItem key={`${observation}:${index}`} observation={observation} />\n ))}\n </ul>\n </>\n )}\n </section>\n )}\n {insight.signals.length > 0 && (\n <section aria-labelledby=\"trace-insight-signals-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-signals-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace signal summaries\n </Txt>\n <ul className=\"mt-3 space-y-3\">\n {insight.signals.map(signal => (\n <li key={signal.signalName} className={cn(raisedSurfaceStyle, 'rounded-md p-3 text-body')}>\n <p className=\"text-muted-foreground\">{signalLabel(signalCatalog, signal.signalName)}</p>\n <p className=\"mt-1 text-foreground\">{signal.signalText}</p>\n </li>\n ))}\n </ul>\n </section>\n )}\n </>\n );\n}\n"],"names":["useTraceIntelligence","useTraceInsight","jsxs","jsx","Button","ChevronLeft","TraceIcon","Txt","raisedSurfaceStyle","Fragment","cn"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import '@tanstack/react-query';
|
|
|
4
4
|
import { useTraceIntelligence } from './use-trace-intelligence.es.js';
|
|
5
5
|
import { useTraceInsight } from './hooks/use-trace-insight.es.js';
|
|
6
6
|
import { signalLabel } from './signal-formatting.es.js';
|
|
7
|
-
import { B as Button } from '../../Button-
|
|
7
|
+
import { B as Button } from '../../Button-D43ghVKt.js';
|
|
8
8
|
import { T as Txt } from '../../Txt-BP1SRHmL.js';
|
|
9
9
|
import { TraceIcon } from '../../icons/TraceIcon.es.js';
|
|
10
10
|
import { raisedSurfaceStyle } from '../../primitives/raised-surface.es.js';
|
|
@@ -19,7 +19,7 @@ function TraceInsightView({ traceId, onBack }) {
|
|
|
19
19
|
/* @__PURE__ */ jsx(Button, { icon: /* @__PURE__ */ jsx(TraceIcon, {}), render: /* @__PURE__ */ jsx(LinkComponent, { href: getTraceHref(traceId) }), size: "sm", children: "Open full trace" })
|
|
20
20
|
] }),
|
|
21
21
|
insightQuery.isPending && /* @__PURE__ */ jsx(Txt, { tone: "muted", children: "Loading trace insight…" }),
|
|
22
|
-
insightQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "text-destructive-
|
|
22
|
+
insightQuery.isError && /* @__PURE__ */ jsx(Txt, { className: "text-destructive-foreground", children: "Unable to load the trace insight." }),
|
|
23
23
|
insightQuery.data && /* @__PURE__ */ jsx(TraceInsightBody, { insight: insightQuery.data })
|
|
24
24
|
] });
|
|
25
25
|
}
|
|
@@ -46,7 +46,7 @@ function ObservationItem({ observation }) {
|
|
|
46
46
|
return /* @__PURE__ */ jsxs("li", { className: `rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? "info"]}`, children: [
|
|
47
47
|
kind !== void 0 && /* @__PURE__ */ jsxs(Txt, { variant: "meta", tone: "muted", font: "mono", className: "tracking-wider uppercase", children: [
|
|
48
48
|
severity === "problem" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
49
|
-
/* @__PURE__ */ jsx("span", { className: "text-destructive-
|
|
49
|
+
/* @__PURE__ */ jsx("span", { className: "text-destructive-foreground", children: "problem" }),
|
|
50
50
|
/* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: " · " })
|
|
51
51
|
] }),
|
|
52
52
|
/* @__PURE__ */ jsx("span", { children: kind })
|
|
@@ -75,7 +75,7 @@ function TraceInsightBody({ insight }) {
|
|
|
75
75
|
/* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "Current task" }),
|
|
76
76
|
/* @__PURE__ */ jsx("dd", { className: "mt-1 text-foreground", children: insight.summary.currentTask })
|
|
77
77
|
] }),
|
|
78
|
-
insight.summary.degenerate === true && /* @__PURE__ */ jsx(Txt, { className: "mt-4 text-destructive-
|
|
78
|
+
insight.summary.degenerate === true && /* @__PURE__ */ jsx(Txt, { className: "mt-4 text-destructive-foreground", children: "This trace was flagged as degenerate or looping." }),
|
|
79
79
|
insight.summary.observations.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
80
80
|
/* @__PURE__ */ jsx(
|
|
81
81
|
Txt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-insight-view.es.js","sources":["../../../src/ee/signals/trace-insight-view.tsx"],"sourcesContent":["import { ChevronLeft } from 'lucide-react';\nimport { useTraceInsight } from './hooks';\nimport { signalLabel } from './signal-formatting';\nimport type { TraceInsightResponse } from './types';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\nimport { TraceIcon } from '@/ds/icons/TraceIcon';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface TraceInsightViewProps {\n traceId: string;\n onBack: () => void;\n}\n\nexport function TraceInsightView({ traceId, onBack }: TraceInsightViewProps) {\n const { LinkComponent, getTraceHref } = useTraceIntelligence();\n const insightQuery = useTraceInsight(traceId);\n\n return (\n <div className=\"grid content-start gap-6\">\n <div className=\"flex items-center justify-between gap-3\">\n <Button icon={<ChevronLeft />} size=\"sm\" onClick={onBack}>\n Back to examples\n </Button>\n <Button icon={<TraceIcon />} render={<LinkComponent href={getTraceHref(traceId)} />} size=\"sm\">\n Open full trace\n </Button>\n </div>\n {insightQuery.isPending && <Txt tone=\"muted\">Loading trace insight…</Txt>}\n {insightQuery.isError && <Txt className=\"text-destructive-indicator\">Unable to load the trace insight.</Txt>}\n {insightQuery.data && <TraceInsightBody insight={insightQuery.data} />}\n </div>\n );\n}\n\ntype ObservationSeverity = 'info' | 'success' | 'problem';\n\ninterface ParsedObservation {\n severity?: ObservationSeverity;\n kind?: string;\n text: string;\n}\n\nfunction isObservationSeverity(value: string): value is ObservationSeverity {\n return value === 'info' || value === 'success' || value === 'problem';\n}\n\n/**\n * Trace summaries prefix each observation with a machine-readable\n * `severity=… | kind=… |` header (see the trace-summary prompt). Strip it for\n * display and keep the parts so the UI can render them as visual cues, the\n * same way the observational-memory views parse their emoji markers out of\n * the raw text.\n */\nfunction parseTraceObservation(observation: string): ParsedObservation {\n const match = observation.match(/^severity=(\\w+)\\s*\\|\\s*kind=(\\w+)\\s*\\|\\s*/);\n if (!match) return { text: observation };\n const [prefix, severity, kind] = match;\n return {\n severity: severity !== undefined && isObservationSeverity(severity) ? severity : undefined,\n kind,\n text: observation.slice(prefix.length),\n };\n}\n\nconst OBSERVATION_SEVERITY_CARD: Record<ObservationSeverity, string> = {\n info: raisedSurfaceStyle,\n success: 'border border-success-edge bg-success-subtle',\n problem: 'border border-destructive-edge bg-destructive-subtle',\n};\n\nfunction ObservationItem({ observation }: { observation: string }) {\n const { severity, kind, text } = parseTraceObservation(observation);\n\n return (\n <li className={`rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? 'info']}`}>\n {kind !== undefined && (\n <Txt variant=\"meta\" tone=\"muted\" font=\"mono\" className=\"tracking-wider uppercase\">\n {severity === 'problem' && (\n <>\n <span className=\"text-destructive-indicator\">problem</span>\n <span aria-hidden=\"true\"> · </span>\n </>\n )}\n <span>{kind}</span>\n </Txt>\n )}\n <p className={`text-foreground ${kind === undefined ? '' : 'mt-1'}`}>{text}</p>\n </li>\n );\n}\n\nfunction TraceInsightBody({ insight }: { insight: TraceInsightResponse }) {\n const { signalCatalog } = useTraceIntelligence();\n return (\n <>\n {insight.summary === undefined ? (\n <Txt tone=\"muted\">No insight available yet for this trace.</Txt>\n ) : (\n <section aria-labelledby=\"trace-insight-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {insight.summary.summary}\n </Txt>\n {insight.summary.currentTask !== undefined && (\n <dl className=\"mt-4 text-body\">\n <dt className=\"text-muted-foreground\">Current task</dt>\n <dd className=\"mt-1 text-foreground\">{insight.summary.currentTask}</dd>\n </dl>\n )}\n {insight.summary.degenerate === true && (\n <Txt className=\"mt-4 text-destructive-indicator\">This trace was flagged as degenerate or looping.</Txt>\n )}\n {insight.summary.observations.length > 0 && (\n <>\n <Txt\n as=\"h3\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-observations-heading\"\n className=\"mt-4 tracking-wider uppercase\"\n >\n Observations\n </Txt>\n <ul aria-labelledby=\"trace-insight-observations-heading\" className=\"mt-3 space-y-2\">\n {insight.summary.observations.map((observation, index) => (\n <ObservationItem key={`${observation}:${index}`} observation={observation} />\n ))}\n </ul>\n </>\n )}\n </section>\n )}\n {insight.signals.length > 0 && (\n <section aria-labelledby=\"trace-insight-signals-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-signals-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace signal summaries\n </Txt>\n <ul className=\"mt-3 space-y-3\">\n {insight.signals.map(signal => (\n <li key={signal.signalName} className={cn(raisedSurfaceStyle, 'rounded-md p-3 text-body')}>\n <p className=\"text-muted-foreground\">{signalLabel(signalCatalog, signal.signalName)}</p>\n <p className=\"mt-1 text-foreground\">{signal.signalText}</p>\n </li>\n ))}\n </ul>\n </section>\n )}\n </>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace-insight-view.es.js","sources":["../../../src/ee/signals/trace-insight-view.tsx"],"sourcesContent":["import { ChevronLeft } from 'lucide-react';\nimport { useTraceInsight } from './hooks';\nimport { signalLabel } from './signal-formatting';\nimport type { TraceInsightResponse } from './types';\nimport { useTraceIntelligence } from './use-trace-intelligence';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\nimport { TraceIcon } from '@/ds/icons/TraceIcon';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/lib/utils';\n\ninterface TraceInsightViewProps {\n traceId: string;\n onBack: () => void;\n}\n\nexport function TraceInsightView({ traceId, onBack }: TraceInsightViewProps) {\n const { LinkComponent, getTraceHref } = useTraceIntelligence();\n const insightQuery = useTraceInsight(traceId);\n\n return (\n <div className=\"grid content-start gap-6\">\n <div className=\"flex items-center justify-between gap-3\">\n <Button icon={<ChevronLeft />} size=\"sm\" onClick={onBack}>\n Back to examples\n </Button>\n <Button icon={<TraceIcon />} render={<LinkComponent href={getTraceHref(traceId)} />} size=\"sm\">\n Open full trace\n </Button>\n </div>\n {insightQuery.isPending && <Txt tone=\"muted\">Loading trace insight…</Txt>}\n {insightQuery.isError && <Txt className=\"text-destructive-foreground\">Unable to load the trace insight.</Txt>}\n {insightQuery.data && <TraceInsightBody insight={insightQuery.data} />}\n </div>\n );\n}\n\ntype ObservationSeverity = 'info' | 'success' | 'problem';\n\ninterface ParsedObservation {\n severity?: ObservationSeverity;\n kind?: string;\n text: string;\n}\n\nfunction isObservationSeverity(value: string): value is ObservationSeverity {\n return value === 'info' || value === 'success' || value === 'problem';\n}\n\n/**\n * Trace summaries prefix each observation with a machine-readable\n * `severity=… | kind=… |` header (see the trace-summary prompt). Strip it for\n * display and keep the parts so the UI can render them as visual cues, the\n * same way the observational-memory views parse their emoji markers out of\n * the raw text.\n */\nfunction parseTraceObservation(observation: string): ParsedObservation {\n const match = observation.match(/^severity=(\\w+)\\s*\\|\\s*kind=(\\w+)\\s*\\|\\s*/);\n if (!match) return { text: observation };\n const [prefix, severity, kind] = match;\n return {\n severity: severity !== undefined && isObservationSeverity(severity) ? severity : undefined,\n kind,\n text: observation.slice(prefix.length),\n };\n}\n\nconst OBSERVATION_SEVERITY_CARD: Record<ObservationSeverity, string> = {\n info: raisedSurfaceStyle,\n success: 'border border-success-edge bg-success-subtle',\n problem: 'border border-destructive-edge bg-destructive-subtle',\n};\n\nfunction ObservationItem({ observation }: { observation: string }) {\n const { severity, kind, text } = parseTraceObservation(observation);\n\n return (\n <li className={`rounded-md p-3 text-body ${OBSERVATION_SEVERITY_CARD[severity ?? 'info']}`}>\n {kind !== undefined && (\n <Txt variant=\"meta\" tone=\"muted\" font=\"mono\" className=\"tracking-wider uppercase\">\n {severity === 'problem' && (\n <>\n <span className=\"text-destructive-foreground\">problem</span>\n <span aria-hidden=\"true\"> · </span>\n </>\n )}\n <span>{kind}</span>\n </Txt>\n )}\n <p className={`text-foreground ${kind === undefined ? '' : 'mt-1'}`}>{text}</p>\n </li>\n );\n}\n\nfunction TraceInsightBody({ insight }: { insight: TraceInsightResponse }) {\n const { signalCatalog } = useTraceIntelligence();\n return (\n <>\n {insight.summary === undefined ? (\n <Txt tone=\"muted\">No insight available yet for this trace.</Txt>\n ) : (\n <section aria-labelledby=\"trace-insight-summary-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-summary-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace summary\n </Txt>\n <Txt tone=\"ink\" className=\"mt-3\">\n {insight.summary.summary}\n </Txt>\n {insight.summary.currentTask !== undefined && (\n <dl className=\"mt-4 text-body\">\n <dt className=\"text-muted-foreground\">Current task</dt>\n <dd className=\"mt-1 text-foreground\">{insight.summary.currentTask}</dd>\n </dl>\n )}\n {insight.summary.degenerate === true && (\n <Txt className=\"mt-4 text-destructive-foreground\">This trace was flagged as degenerate or looping.</Txt>\n )}\n {insight.summary.observations.length > 0 && (\n <>\n <Txt\n as=\"h3\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-observations-heading\"\n className=\"mt-4 tracking-wider uppercase\"\n >\n Observations\n </Txt>\n <ul aria-labelledby=\"trace-insight-observations-heading\" className=\"mt-3 space-y-2\">\n {insight.summary.observations.map((observation, index) => (\n <ObservationItem key={`${observation}:${index}`} observation={observation} />\n ))}\n </ul>\n </>\n )}\n </section>\n )}\n {insight.signals.length > 0 && (\n <section aria-labelledby=\"trace-insight-signals-heading\">\n <Txt\n as=\"h2\"\n variant=\"caption\"\n tone=\"muted\"\n font=\"mono\"\n id=\"trace-insight-signals-heading\"\n className=\"tracking-wider uppercase\"\n >\n Trace signal summaries\n </Txt>\n <ul className=\"mt-3 space-y-3\">\n {insight.signals.map(signal => (\n <li key={signal.signalName} className={cn(raisedSurfaceStyle, 'rounded-md p-3 text-body')}>\n <p className=\"text-muted-foreground\">{signalLabel(signalCatalog, signal.signalName)}</p>\n <p className=\"mt-1 text-foreground\">{signal.signalText}</p>\n </li>\n ))}\n </ul>\n </section>\n )}\n </>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AAgBO,SAAS,gBAAA,CAAiB,EAAE,OAAA,EAAS,MAAA,EAAO,EAA0B;AAC3E,EAAA,MAAM,EAAE,aAAA,EAAe,YAAA,EAAa,GAAI,oBAAA,EAAqB;AAC7D,EAAA,MAAM,YAAA,GAAe,gBAAgB,OAAO,CAAA;AAE5C,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,0BAAA,EACb,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yCAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,MAAA,EAAA,EAAO,sBAAM,GAAA,CAAC,WAAA,EAAA,EAAY,GAAI,IAAA,EAAK,IAAA,EAAK,OAAA,EAAS,MAAA,EAAQ,QAAA,EAAA,kBAAA,EAE1D,CAAA;AAAA,0BACC,MAAA,EAAA,EAAO,IAAA,kBAAM,GAAA,CAAC,SAAA,EAAA,EAAU,GAAI,MAAA,kBAAQ,GAAA,CAAC,aAAA,EAAA,EAAc,IAAA,EAAM,aAAa,OAAO,CAAA,EAAG,CAAA,EAAI,IAAA,EAAK,MAAK,QAAA,EAAA,iBAAA,EAE/F;AAAA,KAAA,EACF,CAAA;AAAA,IACC,aAAa,SAAA,oBAAa,GAAA,CAAC,GAAA,EAAA,EAAI,IAAA,EAAK,SAAQ,QAAA,EAAA,wBAAA,EAAsB,CAAA;AAAA,IAClE,aAAa,OAAA,oBAAW,GAAA,CAAC,GAAA,EAAA,EAAI,SAAA,EAAU,+BAA8B,QAAA,EAAA,mCAAA,EAAiC,CAAA;AAAA,IACtG,aAAa,IAAA,oBAAQ,GAAA,CAAC,gBAAA,EAAA,EAAiB,OAAA,EAAS,aAAa,IAAA,EAAM;AAAA,GAAA,EACtE,CAAA;AAEJ;AAUA,SAAS,sBAAsB,KAAA,EAA6C;AAC1E,EAAA,OAAO,KAAA,KAAU,MAAA,IAAU,KAAA,KAAU,SAAA,IAAa,KAAA,KAAU,SAAA;AAC9D;AASA,SAAS,sBAAsB,WAAA,EAAwC;AACrE,EAAA,MAAM,KAAA,GAAQ,WAAA,CAAY,KAAA,CAAM,2CAA2C,CAAA;AAC3E,EAAA,IAAI,CAAC,KAAA,EAAO,OAAO,EAAE,MAAM,WAAA,EAAY;AACvC,EAAA,MAAM,CAAC,MAAA,EAAQ,QAAA,EAAU,IAAI,CAAA,GAAI,KAAA;AACjC,EAAA,OAAO;AAAA,IACL,UAAU,QAAA,KAAa,MAAA,IAAa,qBAAA,CAAsB,QAAQ,IAAI,QAAA,GAAW,MAAA;AAAA,IACjF,IAAA;AAAA,IACA,IAAA,EAAM,WAAA,CAAY,KAAA,CAAM,MAAA,CAAO,MAAM;AAAA,GACvC;AACF;AAEA,MAAM,yBAAA,GAAiE;AAAA,EACrE,IAAA,EAAM,kBAAA;AAAA,EACN,OAAA,EAAS,8CAAA;AAAA,EACT,OAAA,EAAS;AACX,CAAA;AAEA,SAAS,eAAA,CAAgB,EAAE,WAAA,EAAY,EAA4B;AACjE,EAAA,MAAM,EAAE,QAAA,EAAU,IAAA,EAAM,IAAA,EAAK,GAAI,sBAAsB,WAAW,CAAA;AAElE,EAAA,uBACE,IAAA,CAAC,QAAG,SAAA,EAAW,CAAA,yBAAA,EAA4B,0BAA0B,QAAA,IAAY,MAAM,CAAC,CAAA,CAAA,EACrF,QAAA,EAAA;AAAA,IAAA,IAAA,KAAS,MAAA,oBACR,IAAA,CAAC,GAAA,EAAA,EAAI,OAAA,EAAQ,MAAA,EAAO,MAAK,OAAA,EAAQ,IAAA,EAAK,MAAA,EAAO,SAAA,EAAU,0BAAA,EACpD,QAAA,EAAA;AAAA,MAAA,QAAA,KAAa,6BACZ,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,6BAAA,EAA8B,QAAA,EAAA,SAAA,EAAO,CAAA;AAAA,wBACrD,GAAA,CAAC,MAAA,EAAA,EAAK,aAAA,EAAY,MAAA,EAAO,QAAA,EAAA,KAAA,EAAG;AAAA,OAAA,EAC9B,CAAA;AAAA,sBAEF,GAAA,CAAC,UAAM,QAAA,EAAA,IAAA,EAAK;AAAA,KAAA,EACd,CAAA;AAAA,oBAEF,GAAA,CAAC,OAAE,SAAA,EAAW,CAAA,gBAAA,EAAmB,SAAS,MAAA,GAAY,EAAA,GAAK,MAAM,CAAA,CAAA,EAAK,QAAA,EAAA,IAAA,EAAK;AAAA,GAAA,EAC7E,CAAA;AAEJ;AAEA,SAAS,gBAAA,CAAiB,EAAE,OAAA,EAAQ,EAAsC;AACxE,EAAA,MAAM,EAAE,aAAA,EAAc,GAAI,oBAAA,EAAqB;AAC/C,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,IAAA,OAAA,CAAQ,OAAA,KAAY,MAAA,mBACnB,GAAA,CAAC,GAAA,EAAA,EAAI,IAAA,EAAK,OAAA,EAAQ,QAAA,EAAA,0CAAA,EAAwC,CAAA,mBAE1D,IAAA,CAAC,SAAA,EAAA,EAAQ,iBAAA,EAAgB,+BAAA,EACvB,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,GAAA;AAAA,QAAA;AAAA,UACC,EAAA,EAAG,IAAA;AAAA,UACH,OAAA,EAAQ,SAAA;AAAA,UACR,IAAA,EAAK,OAAA;AAAA,UACL,IAAA,EAAK,MAAA;AAAA,UACL,EAAA,EAAG,+BAAA;AAAA,UACH,SAAA,EAAU,0BAAA;AAAA,UACX,QAAA,EAAA;AAAA;AAAA,OAED;AAAA,sBACA,GAAA,CAAC,OAAI,IAAA,EAAK,KAAA,EAAM,WAAU,MAAA,EACvB,QAAA,EAAA,OAAA,CAAQ,QAAQ,OAAA,EACnB,CAAA;AAAA,MACC,QAAQ,OAAA,CAAQ,WAAA,KAAgB,0BAC/B,IAAA,CAAC,IAAA,EAAA,EAAG,WAAU,gBAAA,EACZ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,uBAAA,EAAwB,QAAA,EAAA,cAAA,EAAY,CAAA;AAAA,4BACjD,IAAA,EAAA,EAAG,SAAA,EAAU,sBAAA,EAAwB,QAAA,EAAA,OAAA,CAAQ,QAAQ,WAAA,EAAY;AAAA,OAAA,EACpE,CAAA;AAAA,MAED,OAAA,CAAQ,QAAQ,UAAA,KAAe,IAAA,wBAC7B,GAAA,EAAA,EAAI,SAAA,EAAU,oCAAmC,QAAA,EAAA,kDAAA,EAAgD,CAAA;AAAA,MAEnG,OAAA,CAAQ,OAAA,CAAQ,YAAA,CAAa,MAAA,GAAS,qBACrC,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAG,IAAA;AAAA,YACH,OAAA,EAAQ,SAAA;AAAA,YACR,IAAA,EAAK,OAAA;AAAA,YACL,IAAA,EAAK,MAAA;AAAA,YACL,EAAA,EAAG,oCAAA;AAAA,YACH,SAAA,EAAU,+BAAA;AAAA,YACX,QAAA,EAAA;AAAA;AAAA,SAED;AAAA,wBACA,GAAA,CAAC,QAAG,iBAAA,EAAgB,oCAAA,EAAqC,WAAU,gBAAA,EAChE,QAAA,EAAA,OAAA,CAAQ,OAAA,CAAQ,YAAA,CAAa,GAAA,CAAI,CAAC,aAAa,KAAA,qBAC9C,GAAA,CAAC,mBAAgD,WAAA,EAAA,EAA3B,CAAA,EAAG,WAAW,CAAA,CAAA,EAAI,KAAK,CAAA,CAA8B,CAC5E,CAAA,EACH;AAAA,OAAA,EACF;AAAA,KAAA,EAEJ,CAAA;AAAA,IAED,QAAQ,OAAA,CAAQ,MAAA,GAAS,qBACxB,IAAA,CAAC,SAAA,EAAA,EAAQ,mBAAgB,+BAAA,EACvB,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,GAAA;AAAA,QAAA;AAAA,UACC,EAAA,EAAG,IAAA;AAAA,UACH,OAAA,EAAQ,SAAA;AAAA,UACR,IAAA,EAAK,OAAA;AAAA,UACL,IAAA,EAAK,MAAA;AAAA,UACL,EAAA,EAAG,+BAAA;AAAA,UACH,SAAA,EAAU,0BAAA;AAAA,UACX,QAAA,EAAA;AAAA;AAAA,OAED;AAAA,sBACA,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,gBAAA,EACX,kBAAQ,OAAA,CAAQ,GAAA,CAAI,CAAA,MAAA,qBACnB,IAAA,CAAC,IAAA,EAAA,EAA2B,SAAA,EAAW,EAAA,CAAG,kBAAA,EAAoB,0BAA0B,CAAA,EACtF,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,OAAE,SAAA,EAAU,uBAAA,EAAyB,sBAAY,aAAA,EAAe,MAAA,CAAO,UAAU,CAAA,EAAE,CAAA;AAAA,wBACpF,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,sBAAA,EAAwB,iBAAO,UAAA,EAAW;AAAA,OAAA,EAAA,EAFhD,MAAA,CAAO,UAGhB,CACD,CAAA,EACH;AAAA,KAAA,EACF;AAAA,GAAA,EAEJ,CAAA;AAEJ;;;;"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
const tabsTab = require('../../tabs-tab-
|
|
6
|
+
const tabsTab = require('../../tabs-tab-BmIBFifi.cjs');
|
|
7
7
|
const Txt = require('../../Txt-DPmEpNbp.cjs');
|
|
8
8
|
const icons_Icon = require('../../icons/Icon.cjs.js');
|
|
9
9
|
|
|
@@ -6,10 +6,10 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
6
6
|
const lucideReact = require('lucide-react');
|
|
7
7
|
const React = require('react');
|
|
8
8
|
const ee_topics_utils = require('../utils.cjs.js');
|
|
9
|
-
const Button = require('../../../Button-
|
|
10
|
-
const dataList = require('../../../data-list-
|
|
9
|
+
const Button = require('../../../Button-CXhSUBxN.cjs');
|
|
10
|
+
const dataList = require('../../../data-list-Y42KyuI1.cjs');
|
|
11
11
|
const useDataListKeyboard = require('../../../use-data-list-keyboard-DF3tLe10.cjs');
|
|
12
|
-
const inputGroup = require('../../../input-group-
|
|
12
|
+
const inputGroup = require('../../../input-group-BRhBfeHC.cjs');
|
|
13
13
|
|
|
14
14
|
function TopicTraceSummaryList({
|
|
15
15
|
traces,
|
|
@@ -2,10 +2,10 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { SearchIcon, ChevronDown } from 'lucide-react';
|
|
3
3
|
import { useState, useMemo } from 'react';
|
|
4
4
|
import { getVisibleTraceSummaries } from '../utils.es.js';
|
|
5
|
-
import { B as Button } from '../../../Button-
|
|
6
|
-
import { D as DataList } from '../../../data-list-
|
|
5
|
+
import { B as Button } from '../../../Button-D43ghVKt.js';
|
|
6
|
+
import { D as DataList } from '../../../data-list-CyeD_u-6.js';
|
|
7
7
|
import { u as useDataListKeyboard } from '../../../use-data-list-keyboard-DFQr4t38.js';
|
|
8
|
-
import { I as InputGroup, a as InputGroupAddon, c as InputGroupInput } from '../../../input-group-
|
|
8
|
+
import { I as InputGroup, a as InputGroupAddon, c as InputGroupInput } from '../../../input-group-0G9ZX_cM.js';
|
|
9
9
|
|
|
10
10
|
function TopicTraceSummaryList({
|
|
11
11
|
traces,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { c as cn } from './cn-65Adrsfj.js';
|
|
3
|
-
import { F as FieldBlockErrorMsg } from './field-block-error-msg-
|
|
3
|
+
import { F as FieldBlockErrorMsg } from './field-block-error-msg-LXwhKzIq.js';
|
|
4
4
|
import { T as Txt } from './Txt-BP1SRHmL.js';
|
|
5
5
|
|
|
6
6
|
function FieldBlockColumn({ children, className }) {
|
|
@@ -36,7 +36,14 @@ function FieldBlockLabel({
|
|
|
36
36
|
children: [
|
|
37
37
|
children,
|
|
38
38
|
required ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
39
|
-
/* @__PURE__ */ jsx(
|
|
39
|
+
/* @__PURE__ */ jsx(
|
|
40
|
+
"span",
|
|
41
|
+
{
|
|
42
|
+
"aria-hidden": true,
|
|
43
|
+
className: cn("ml-0.5", disabled ? "text-muted-foreground" : "text-destructive-foreground"),
|
|
44
|
+
children: "*"
|
|
45
|
+
}
|
|
46
|
+
),
|
|
40
47
|
/* @__PURE__ */ jsx("span", { className: "sr-only", children: " (required)" })
|
|
41
48
|
] }) : null
|
|
42
49
|
]
|
|
@@ -83,4 +90,4 @@ const FieldBlock = Object.assign(
|
|
|
83
90
|
);
|
|
84
91
|
|
|
85
92
|
export { FieldBlock as F };
|
|
86
|
-
//# sourceMappingURL=field-block
|
|
93
|
+
//# sourceMappingURL=field-block--PeppIRb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-block--PeppIRb.js","sources":["../src/ds/components/FormFieldBlocks/block/field-block-column.tsx","../src/ds/components/FormFieldBlocks/block/field-block-help-text.tsx","../src/ds/components/FormFieldBlocks/block/field-block-label.tsx","../src/ds/components/FormFieldBlocks/block/field-block-layout.tsx","../src/ds/components/FormFieldBlocks/block/field-block-message.tsx","../src/ds/components/FormFieldBlocks/block/field-block.tsx"],"sourcesContent":["import { cn } from '@/lib/utils';\n\nexport type FieldBlockColumnProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nexport function FieldBlockColumn({ children, className }: FieldBlockColumnProps) {\n return <div className={cn('grid gap-2 text-foreground', className)}>{children}</div>;\n}\n","import { Txt } from '@/ds/components/Txt';\nexport type FieldBlockHelpTextProps = {\n children?: React.ReactNode;\n};\n\nexport function FieldBlockHelpText({ children }: FieldBlockHelpTextProps) {\n return (\n <Txt variant=\"caption\" tone=\"muted\">\n {children}\n </Txt>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport type FieldBlockLabelProps = {\n children: React.ReactNode;\n name: string;\n htmlFor?: string;\n required?: boolean;\n disabled?: boolean;\n size?: 'default' | 'bigger';\n className?: string;\n};\n\nexport function FieldBlockLabel({\n children,\n name,\n htmlFor = `input-${name}`,\n required,\n disabled = false,\n size = 'default',\n className,\n}: FieldBlockLabelProps) {\n return (\n <label\n htmlFor={htmlFor}\n className={cn(\n 'inline-flex items-center text-label',\n {\n 'text-body': size === 'bigger',\n 'text-foreground': !disabled,\n 'text-muted-foreground': disabled,\n },\n className,\n )}\n >\n {children}\n {required ? (\n <>\n <span\n aria-hidden\n className={cn('ml-0.5', disabled ? 'text-muted-foreground' : 'text-destructive-foreground')}\n >\n *\n </span>\n <span className=\"sr-only\"> (required)</span>\n </>\n ) : null}\n </label>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport type FieldBlockLayoutProps = {\n children: React.ReactNode;\n className?: string;\n layout?: 'vertical' | 'horizontal';\n // Optional prop to specify label column width in horizontal layout\n labelColumnWidth?: string; // e.g., '150px' or '30%'\n};\n\nexport function FieldBlockLayout({\n children,\n className,\n layout = 'vertical',\n labelColumnWidth,\n}: FieldBlockLayoutProps) {\n return (\n <div\n className={cn(\n 'relative grid gap-2 text-foreground',\n {\n 'horizontal-field-block grid-cols-[auto_1fr] items-baseline': layout === 'horizontal',\n },\n className,\n )}\n style={\n layout === 'horizontal' && labelColumnWidth ? { gridTemplateColumns: `${labelColumnWidth} 1fr` } : undefined\n }\n >\n {children}\n </div>\n );\n}\n","import { FieldBlockErrorMsg } from './field-block-error-msg';\nimport { FieldBlockHelpText } from './field-block-help-text';\n\nexport type FieldBlockMessageProps = {\n name: string;\n helpText?: React.ReactNode;\n errorMsg?: React.ReactNode;\n};\n\nexport function FieldBlockMessage({ name, helpText, errorMsg }: FieldBlockMessageProps) {\n return (\n <div className=\"h-[1lh] min-w-0 overflow-hidden text-caption [&>p]:truncate\">\n {errorMsg ? (\n <FieldBlockErrorMsg name={name} className=\"truncate\">\n {errorMsg}\n </FieldBlockErrorMsg>\n ) : helpText ? (\n <FieldBlockHelpText>{helpText}</FieldBlockHelpText>\n ) : null}\n </div>\n );\n}\n","import { FieldBlockColumn } from './field-block-column';\nimport { FieldBlockErrorMsg } from './field-block-error-msg';\nimport { FieldBlockHelpText } from './field-block-help-text';\nimport { FieldBlockLabel } from './field-block-label';\nimport { FieldBlockLayout } from './field-block-layout';\nimport { FieldBlockMessage } from './field-block-message';\n\nexport const FieldBlock = Object.assign(\n {},\n {\n Layout: FieldBlockLayout,\n Column: FieldBlockColumn,\n Label: FieldBlockLabel,\n HelpText: FieldBlockHelpText,\n ErrorMsg: FieldBlockErrorMsg,\n Message: FieldBlockMessage,\n },\n);\n"],"names":[],"mappings":";;;;;AAOO,SAAS,gBAAA,CAAiB,EAAE,QAAA,EAAU,SAAA,EAAU,EAA0B;AAC/E,EAAA,2BAAQ,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,4BAAA,EAA8B,SAAS,GAAI,QAAA,EAAS,CAAA;AAChF;;ACJO,SAAS,kBAAA,CAAmB,EAAE,QAAA,EAAS,EAA4B;AACxE,EAAA,2BACG,GAAA,EAAA,EAAI,OAAA,EAAQ,SAAA,EAAU,IAAA,EAAK,SACzB,QAAA,EACH,CAAA;AAEJ;;ACCO,SAAS,eAAA,CAAgB;AAAA,EAC9B,QAAA;AAAA,EACA,IAAA;AAAA,EACA,OAAA,GAAU,SAAS,IAAI,CAAA,CAAA;AAAA,EACvB,QAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,IAAA,GAAO,SAAA;AAAA,EACP;AACF,CAAA,EAAyB;AACvB,EAAA,uBACE,IAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,qCAAA;AAAA,QACA;AAAA,UACE,aAAa,IAAA,KAAS,QAAA;AAAA,UACtB,mBAAmB,CAAC,QAAA;AAAA,UACpB,uBAAA,EAAyB;AAAA,SAC3B;AAAA,QACA;AAAA,OACF;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,2BACC,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,0BAAA,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,aAAA,EAAW,IAAA;AAAA,cACX,SAAA,EAAW,EAAA,CAAG,QAAA,EAAU,QAAA,GAAW,0BAA0B,6BAA6B,CAAA;AAAA,cAC3F,QAAA,EAAA;AAAA;AAAA,WAED;AAAA,0BACA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,aAAA,EAAW;AAAA,SAAA,EACvC,CAAA,GACE;AAAA;AAAA;AAAA,GACN;AAEJ;;ACtCO,SAAS,gBAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA,GAAS,UAAA;AAAA,EACT;AACF,CAAA,EAA0B;AACxB,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,qCAAA;AAAA,QACA;AAAA,UACE,8DAA8D,MAAA,KAAW;AAAA,SAC3E;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EACE,WAAW,YAAA,IAAgB,gBAAA,GAAmB,EAAE,mBAAA,EAAqB,CAAA,EAAG,gBAAgB,CAAA,IAAA,CAAA,EAAO,GAAI,MAAA;AAAA,MAGpG;AAAA;AAAA,GACH;AAEJ;;ACvBO,SAAS,iBAAA,CAAkB,EAAE,IAAA,EAAM,QAAA,EAAU,UAAS,EAA2B;AACtF,EAAA,2BACG,KAAA,EAAA,EAAI,SAAA,EAAU,6DAAA,EACZ,QAAA,EAAA,QAAA,uBACE,kBAAA,EAAA,EAAmB,IAAA,EAAY,SAAA,EAAU,UAAA,EACvC,oBACH,CAAA,GACE,QAAA,uBACD,kBAAA,EAAA,EAAoB,QAAA,EAAA,QAAA,EAAS,IAC5B,IAAA,EACN,CAAA;AAEJ;;ACdO,MAAM,aAAa,MAAA,CAAO,MAAA;AAAA,EAC/B,EAAC;AAAA,EACD;AAAA,IACE,MAAA,EAAQ,gBAAA;AAAA,IACR,MAAA,EAAQ,gBAAA;AAAA,IACR,KAAA,EAAO,eAAA;AAAA,IACP,QAAA,EAAU,kBAAA;AAAA,IACV,QAAA,EAAU,kBAAA;AAAA,IACV,OAAA,EAAS;AAAA;AAEb;;;;"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
5
|
-
const fieldBlockErrorMsg = require('./field-block-error-msg-
|
|
5
|
+
const fieldBlockErrorMsg = require('./field-block-error-msg-CkhEN6nU.cjs');
|
|
6
6
|
const Txt = require('./Txt-DPmEpNbp.cjs');
|
|
7
7
|
|
|
8
8
|
function FieldBlockColumn({ children, className }) {
|
|
@@ -38,7 +38,14 @@ function FieldBlockLabel({
|
|
|
38
38
|
children: [
|
|
39
39
|
children,
|
|
40
40
|
required ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
41
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
41
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
42
|
+
"span",
|
|
43
|
+
{
|
|
44
|
+
"aria-hidden": true,
|
|
45
|
+
className: utils_cn.cn("ml-0.5", disabled ? "text-muted-foreground" : "text-destructive-foreground"),
|
|
46
|
+
children: "*"
|
|
47
|
+
}
|
|
48
|
+
),
|
|
42
49
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: " (required)" })
|
|
43
50
|
] }) : null
|
|
44
51
|
]
|
|
@@ -85,4 +92,4 @@ const FieldBlock = Object.assign(
|
|
|
85
92
|
);
|
|
86
93
|
|
|
87
94
|
exports.FieldBlock = FieldBlock;
|
|
88
|
-
//# sourceMappingURL=field-block-
|
|
95
|
+
//# sourceMappingURL=field-block-DtaPqBa3.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-block-DtaPqBa3.cjs","sources":["../src/ds/components/FormFieldBlocks/block/field-block-column.tsx","../src/ds/components/FormFieldBlocks/block/field-block-help-text.tsx","../src/ds/components/FormFieldBlocks/block/field-block-label.tsx","../src/ds/components/FormFieldBlocks/block/field-block-layout.tsx","../src/ds/components/FormFieldBlocks/block/field-block-message.tsx","../src/ds/components/FormFieldBlocks/block/field-block.tsx"],"sourcesContent":["import { cn } from '@/lib/utils';\n\nexport type FieldBlockColumnProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nexport function FieldBlockColumn({ children, className }: FieldBlockColumnProps) {\n return <div className={cn('grid gap-2 text-foreground', className)}>{children}</div>;\n}\n","import { Txt } from '@/ds/components/Txt';\nexport type FieldBlockHelpTextProps = {\n children?: React.ReactNode;\n};\n\nexport function FieldBlockHelpText({ children }: FieldBlockHelpTextProps) {\n return (\n <Txt variant=\"caption\" tone=\"muted\">\n {children}\n </Txt>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport type FieldBlockLabelProps = {\n children: React.ReactNode;\n name: string;\n htmlFor?: string;\n required?: boolean;\n disabled?: boolean;\n size?: 'default' | 'bigger';\n className?: string;\n};\n\nexport function FieldBlockLabel({\n children,\n name,\n htmlFor = `input-${name}`,\n required,\n disabled = false,\n size = 'default',\n className,\n}: FieldBlockLabelProps) {\n return (\n <label\n htmlFor={htmlFor}\n className={cn(\n 'inline-flex items-center text-label',\n {\n 'text-body': size === 'bigger',\n 'text-foreground': !disabled,\n 'text-muted-foreground': disabled,\n },\n className,\n )}\n >\n {children}\n {required ? (\n <>\n <span\n aria-hidden\n className={cn('ml-0.5', disabled ? 'text-muted-foreground' : 'text-destructive-foreground')}\n >\n *\n </span>\n <span className=\"sr-only\"> (required)</span>\n </>\n ) : null}\n </label>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport type FieldBlockLayoutProps = {\n children: React.ReactNode;\n className?: string;\n layout?: 'vertical' | 'horizontal';\n // Optional prop to specify label column width in horizontal layout\n labelColumnWidth?: string; // e.g., '150px' or '30%'\n};\n\nexport function FieldBlockLayout({\n children,\n className,\n layout = 'vertical',\n labelColumnWidth,\n}: FieldBlockLayoutProps) {\n return (\n <div\n className={cn(\n 'relative grid gap-2 text-foreground',\n {\n 'horizontal-field-block grid-cols-[auto_1fr] items-baseline': layout === 'horizontal',\n },\n className,\n )}\n style={\n layout === 'horizontal' && labelColumnWidth ? { gridTemplateColumns: `${labelColumnWidth} 1fr` } : undefined\n }\n >\n {children}\n </div>\n );\n}\n","import { FieldBlockErrorMsg } from './field-block-error-msg';\nimport { FieldBlockHelpText } from './field-block-help-text';\n\nexport type FieldBlockMessageProps = {\n name: string;\n helpText?: React.ReactNode;\n errorMsg?: React.ReactNode;\n};\n\nexport function FieldBlockMessage({ name, helpText, errorMsg }: FieldBlockMessageProps) {\n return (\n <div className=\"h-[1lh] min-w-0 overflow-hidden text-caption [&>p]:truncate\">\n {errorMsg ? (\n <FieldBlockErrorMsg name={name} className=\"truncate\">\n {errorMsg}\n </FieldBlockErrorMsg>\n ) : helpText ? (\n <FieldBlockHelpText>{helpText}</FieldBlockHelpText>\n ) : null}\n </div>\n );\n}\n","import { FieldBlockColumn } from './field-block-column';\nimport { FieldBlockErrorMsg } from './field-block-error-msg';\nimport { FieldBlockHelpText } from './field-block-help-text';\nimport { FieldBlockLabel } from './field-block-label';\nimport { FieldBlockLayout } from './field-block-layout';\nimport { FieldBlockMessage } from './field-block-message';\n\nexport const FieldBlock = Object.assign(\n {},\n {\n Layout: FieldBlockLayout,\n Column: FieldBlockColumn,\n Label: FieldBlockLabel,\n HelpText: FieldBlockHelpText,\n ErrorMsg: FieldBlockErrorMsg,\n Message: FieldBlockMessage,\n },\n);\n"],"names":["cn","Txt","jsxs","Fragment","jsx","FieldBlockErrorMsg"],"mappings":";;;;;;;AAOO,SAAS,gBAAA,CAAiB,EAAE,QAAA,EAAU,SAAA,EAAU,EAA0B;AAC/E,EAAA,sCAAQ,KAAA,EAAA,EAAI,SAAA,EAAWA,YAAG,4BAAA,EAA8B,SAAS,GAAI,QAAA,EAAS,CAAA;AAChF;;ACJO,SAAS,kBAAA,CAAmB,EAAE,QAAA,EAAS,EAA4B;AACxE,EAAA,sCACGC,OAAA,EAAA,EAAI,OAAA,EAAQ,SAAA,EAAU,IAAA,EAAK,SACzB,QAAA,EACH,CAAA;AAEJ;;ACCO,SAAS,eAAA,CAAgB;AAAA,EAC9B,QAAA;AAAA,EACA,IAAA;AAAA,EACA,OAAA,GAAU,SAAS,IAAI,CAAA,CAAA;AAAA,EACvB,QAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,IAAA,GAAO,SAAA;AAAA,EACP;AACF,CAAA,EAAyB;AACvB,EAAA,uBACEC,eAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,SAAA,EAAWF,WAAA;AAAA,QACT,qCAAA;AAAA,QACA;AAAA,UACE,aAAa,IAAA,KAAS,QAAA;AAAA,UACtB,mBAAmB,CAAC,QAAA;AAAA,UACpB,uBAAA,EAAyB;AAAA,SAC3B;AAAA,QACA;AAAA,OACF;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,2BACCE,eAAA,CAAAC,mBAAA,EAAA,EACE,QAAA,EAAA;AAAA,0BAAAC,cAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,aAAA,EAAW,IAAA;AAAA,cACX,SAAA,EAAWJ,WAAA,CAAG,QAAA,EAAU,QAAA,GAAW,0BAA0B,6BAA6B,CAAA;AAAA,cAC3F,QAAA,EAAA;AAAA;AAAA,WAED;AAAA,0BACAI,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,aAAA,EAAW;AAAA,SAAA,EACvC,CAAA,GACE;AAAA;AAAA;AAAA,GACN;AAEJ;;ACtCO,SAAS,gBAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA,GAAS,UAAA;AAAA,EACT;AACF,CAAA,EAA0B;AACxB,EAAA,uBACEA,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWJ,WAAA;AAAA,QACT,qCAAA;AAAA,QACA;AAAA,UACE,8DAA8D,MAAA,KAAW;AAAA,SAC3E;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EACE,WAAW,YAAA,IAAgB,gBAAA,GAAmB,EAAE,mBAAA,EAAqB,CAAA,EAAG,gBAAgB,CAAA,IAAA,CAAA,EAAO,GAAI,MAAA;AAAA,MAGpG;AAAA;AAAA,GACH;AAEJ;;ACvBO,SAAS,iBAAA,CAAkB,EAAE,IAAA,EAAM,QAAA,EAAU,UAAS,EAA2B;AACtF,EAAA,sCACG,KAAA,EAAA,EAAI,SAAA,EAAU,6DAAA,EACZ,QAAA,EAAA,QAAA,kCACEK,qCAAA,EAAA,EAAmB,IAAA,EAAY,SAAA,EAAU,UAAA,EACvC,oBACH,CAAA,GACE,QAAA,kCACD,kBAAA,EAAA,EAAoB,QAAA,EAAA,QAAA,EAAS,IAC5B,IAAA,EACN,CAAA;AAEJ;;ACdO,MAAM,aAAa,MAAA,CAAO,MAAA;AAAA,EAC/B,EAAC;AAAA,EACD;AAAA,IACE,MAAA,EAAQ,gBAAA;AAAA,IACR,MAAA,EAAQ,gBAAA;AAAA,IACR,KAAA,EAAO,eAAA;AAAA,IACP,QAAA,EAAU,kBAAA;AAAA,IACV,QAAA,EAAUA,qCAAA;AAAA,IACV,OAAA,EAAS;AAAA;AAEb;;;;"}
|
|
@@ -13,7 +13,7 @@ function FieldBlockErrorMsg({ children, name, className }) {
|
|
|
13
13
|
variant: "caption",
|
|
14
14
|
role: "alert",
|
|
15
15
|
id: name !== void 0 ? `error-${name}` : void 0,
|
|
16
|
-
className: utils_cn.cn("flex gap-1 text-destructive-
|
|
16
|
+
className: utils_cn.cn("flex gap-1 text-destructive-foreground", className),
|
|
17
17
|
children: [
|
|
18
18
|
/* @__PURE__ */ jsxRuntime.jsx(icons_Icon.Icon, { size: "xs", className: "mt-0.75 shrink-0", "aria-hidden": true, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleAlertIcon, {}) }),
|
|
19
19
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children })
|
|
@@ -23,4 +23,4 @@ function FieldBlockErrorMsg({ children, name, className }) {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
exports.FieldBlockErrorMsg = FieldBlockErrorMsg;
|
|
26
|
-
//# sourceMappingURL=field-block-error-msg-
|
|
26
|
+
//# sourceMappingURL=field-block-error-msg-CkhEN6nU.cjs.map
|
package/dist/{field-block-error-msg-B6-wnlAz.cjs.map → field-block-error-msg-CkhEN6nU.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-block-error-msg-
|
|
1
|
+
{"version":3,"file":"field-block-error-msg-CkhEN6nU.cjs","sources":["../src/ds/components/FormFieldBlocks/block/field-block-error-msg.tsx"],"sourcesContent":["import { CircleAlertIcon } from 'lucide-react';\nimport { Txt } from '@/ds/components/Txt';\nimport { Icon } from '@/ds/icons/Icon';\nimport { cn } from '@/lib/utils';\n\nexport type FieldBlockErrorMsgProps = {\n children?: React.ReactNode;\n /**\n * The field this message belongs to, matching the `name` given to `FieldBlock.Label`.\n * Sets a stable `error-<name>` id so the control can point at it with\n * `aria-describedby` and a screen reader reads the message with the field.\n */\n name?: string;\n className?: string;\n};\n\nexport function FieldBlockErrorMsg({ children, name, className }: FieldBlockErrorMsgProps) {\n return (\n <Txt\n variant=\"caption\"\n // `role=\"alert\"` lives here rather than in a wrapper at every call site, so an\n // error announces itself wherever it is used instead of depending on each caller\n // remembering to wrap it.\n role=\"alert\"\n id={name !== undefined ? `error-${name}` : undefined}\n className={cn('flex gap-1 text-destructive-foreground', className)}\n >\n <Icon size=\"xs\" className=\"mt-0.75 shrink-0\" aria-hidden>\n <CircleAlertIcon />\n </Icon>\n <span>{children}</span>\n </Txt>\n );\n}\n"],"names":["jsxs","Txt","cn","jsx","Icon","CircleAlertIcon"],"mappings":";;;;;;;;AAgBO,SAAS,kBAAA,CAAmB,EAAE,QAAA,EAAU,IAAA,EAAM,WAAU,EAA4B;AACzF,EAAA,uBACEA,eAAA;AAAA,IAACC,OAAA;AAAA,IAAA;AAAA,MACC,OAAA,EAAQ,SAAA;AAAA,MAIR,IAAA,EAAK,OAAA;AAAA,MACL,EAAA,EAAI,IAAA,KAAS,MAAA,GAAY,CAAA,MAAA,EAAS,IAAI,CAAA,CAAA,GAAK,MAAA;AAAA,MAC3C,SAAA,EAAWC,WAAA,CAAG,wCAAA,EAA0C,SAAS,CAAA;AAAA,MAEjE,QAAA,EAAA;AAAA,wBAAAC,cAAA,CAACC,eAAA,EAAA,EAAK,MAAK,IAAA,EAAK,SAAA,EAAU,oBAAmB,aAAA,EAAW,IAAA,EACtD,QAAA,kBAAAD,cAAA,CAACE,2BAAA,EAAA,EAAgB,CAAA,EACnB,CAAA;AAAA,wBACAF,cAAA,CAAC,UAAM,QAAA,EAAS;AAAA;AAAA;AAAA,GAClB;AAEJ;;;;"}
|
|
@@ -11,7 +11,7 @@ function FieldBlockErrorMsg({ children, name, className }) {
|
|
|
11
11
|
variant: "caption",
|
|
12
12
|
role: "alert",
|
|
13
13
|
id: name !== void 0 ? `error-${name}` : void 0,
|
|
14
|
-
className: cn("flex gap-1 text-destructive-
|
|
14
|
+
className: cn("flex gap-1 text-destructive-foreground", className),
|
|
15
15
|
children: [
|
|
16
16
|
/* @__PURE__ */ jsx(Icon, { size: "xs", className: "mt-0.75 shrink-0", "aria-hidden": true, children: /* @__PURE__ */ jsx(CircleAlertIcon, {}) }),
|
|
17
17
|
/* @__PURE__ */ jsx("span", { children })
|
|
@@ -21,4 +21,4 @@ function FieldBlockErrorMsg({ children, name, className }) {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export { FieldBlockErrorMsg as F };
|
|
24
|
-
//# sourceMappingURL=field-block-error-msg-
|
|
24
|
+
//# sourceMappingURL=field-block-error-msg-LXwhKzIq.js.map
|
package/dist/{field-block-error-msg-edlaudVx.js.map → field-block-error-msg-LXwhKzIq.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-block-error-msg-
|
|
1
|
+
{"version":3,"file":"field-block-error-msg-LXwhKzIq.js","sources":["../src/ds/components/FormFieldBlocks/block/field-block-error-msg.tsx"],"sourcesContent":["import { CircleAlertIcon } from 'lucide-react';\nimport { Txt } from '@/ds/components/Txt';\nimport { Icon } from '@/ds/icons/Icon';\nimport { cn } from '@/lib/utils';\n\nexport type FieldBlockErrorMsgProps = {\n children?: React.ReactNode;\n /**\n * The field this message belongs to, matching the `name` given to `FieldBlock.Label`.\n * Sets a stable `error-<name>` id so the control can point at it with\n * `aria-describedby` and a screen reader reads the message with the field.\n */\n name?: string;\n className?: string;\n};\n\nexport function FieldBlockErrorMsg({ children, name, className }: FieldBlockErrorMsgProps) {\n return (\n <Txt\n variant=\"caption\"\n // `role=\"alert\"` lives here rather than in a wrapper at every call site, so an\n // error announces itself wherever it is used instead of depending on each caller\n // remembering to wrap it.\n role=\"alert\"\n id={name !== undefined ? `error-${name}` : undefined}\n className={cn('flex gap-1 text-destructive-foreground', className)}\n >\n <Icon size=\"xs\" className=\"mt-0.75 shrink-0\" aria-hidden>\n <CircleAlertIcon />\n </Icon>\n <span>{children}</span>\n </Txt>\n );\n}\n"],"names":[],"mappings":";;;;;;AAgBO,SAAS,kBAAA,CAAmB,EAAE,QAAA,EAAU,IAAA,EAAM,WAAU,EAA4B;AACzF,EAAA,uBACE,IAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,OAAA,EAAQ,SAAA;AAAA,MAIR,IAAA,EAAK,OAAA;AAAA,MACL,EAAA,EAAI,IAAA,KAAS,MAAA,GAAY,CAAA,MAAA,EAAS,IAAI,CAAA,CAAA,GAAK,MAAA;AAAA,MAC3C,SAAA,EAAW,EAAA,CAAG,wCAAA,EAA0C,SAAS,CAAA;AAAA,MAEjE,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,MAAK,IAAA,EAAK,SAAA,EAAU,oBAAmB,aAAA,EAAW,IAAA,EACtD,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,CAAA,EACnB,CAAA;AAAA,wBACA,GAAA,CAAC,UAAM,QAAA,EAAS;AAAA;AAAA;AAAA,GAClB;AAEJ;;;;"}
|
|
@@ -4,12 +4,12 @@ require('./filter-bar-chip.css');const jsxRuntime = require('react/jsx-runtime')
|
|
|
4
4
|
const lucideReact = require('lucide-react');
|
|
5
5
|
const React = require('react');
|
|
6
6
|
const types = require('./types-Ns4ZNp-g.cjs');
|
|
7
|
-
const comboboxStyles = require('./combobox-styles-
|
|
7
|
+
const comboboxStyles = require('./combobox-styles-DLflBH-G.cjs');
|
|
8
8
|
const combobox = require('@base-ui/react/combobox');
|
|
9
9
|
const spinner = require('./spinner-BCpN7LL9.cjs');
|
|
10
10
|
const primitives_fluidMenu = require('./primitives/fluid-menu.cjs.js');
|
|
11
11
|
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
12
|
-
const Button = require('./Button-
|
|
12
|
+
const Button = require('./Button-CXhSUBxN.cjs');
|
|
13
13
|
const kbd = require('./kbd-BptPsKP6.cjs');
|
|
14
14
|
const primitives_controlSize = require('./primitives/control-size.cjs.js');
|
|
15
15
|
const primitives_floating = require('./primitives/floating.cjs.js');
|
|
@@ -1230,4 +1230,4 @@ exports.matchesQueryFilter = matchesQueryFilter;
|
|
|
1230
1230
|
exports.segmentClass = segmentClass;
|
|
1231
1231
|
exports.useFilterBarContext = useFilterBarContext;
|
|
1232
1232
|
exports.useValueStep = useValueStep;
|
|
1233
|
-
//# sourceMappingURL=filter-bar-chip-
|
|
1233
|
+
//# sourceMappingURL=filter-bar-chip-CBlHsz4A.cjs.map
|