@mastra/playground-ui 60.0.0-alpha.8 → 60.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +83 -1
- package/dist/Badge-H8K5WrXg.cjs +162 -0
- package/dist/Badge-H8K5WrXg.cjs.map +1 -0
- package/dist/Badge-Q_pCeeGW.js +160 -0
- package/dist/Badge-Q_pCeeGW.js.map +1 -0
- package/dist/Button-BnmR2HRc.cjs +208 -0
- package/dist/Button-BnmR2HRc.cjs.map +1 -0
- package/dist/Button-C6eUqcPI.js +204 -0
- package/dist/Button-C6eUqcPI.js.map +1 -0
- package/dist/Card-BQsKHkyB.cjs +101 -0
- package/dist/Card-BQsKHkyB.cjs.map +1 -0
- package/dist/Card-DVy0QS4m.js +74 -0
- package/dist/Card-DVy0QS4m.js.map +1 -0
- package/dist/CodeDiff.css +14 -0
- package/dist/CommandPalette.css +16 -12
- package/dist/EmptyState-CJ5KC4Db.cjs +49 -0
- package/dist/EmptyState-CJ5KC4Db.cjs.map +1 -0
- package/dist/EmptyState-CynkaZd1.js +47 -0
- package/dist/EmptyState-CynkaZd1.js.map +1 -0
- package/dist/ErrorBoundary-Bb2R5IMR.js +162 -0
- package/dist/ErrorBoundary-Bb2R5IMR.js.map +1 -0
- package/dist/ErrorBoundary-CKrwONAU.cjs +183 -0
- package/dist/ErrorBoundary-CKrwONAU.cjs.map +1 -0
- package/dist/Notice-CEBwitdf.cjs +92 -0
- package/dist/Notice-CEBwitdf.cjs.map +1 -0
- package/dist/Notice-Ce3r5x-7.js +90 -0
- package/dist/Notice-Ce3r5x-7.js.map +1 -0
- package/dist/ProductBadge.css +3 -0
- package/dist/ProductIcon-BtyRYlaH.js +40 -0
- package/dist/ProductIcon-BtyRYlaH.js.map +1 -0
- package/dist/ProductIcon-hkExeSRM.cjs +42 -0
- package/dist/ProductIcon-hkExeSRM.cjs.map +1 -0
- package/dist/PullRequestIcon.css +2 -2
- package/dist/TokenBudget.css +2 -6
- package/dist/activity-8egTNbaI.cjs +241 -0
- package/dist/activity-8egTNbaI.cjs.map +1 -0
- package/dist/activity-Duth8KP_.js +226 -0
- package/dist/activity-Duth8KP_.js.map +1 -0
- package/dist/activity.css +3 -3
- package/dist/alert-dialog-BcOSIOSW.cjs +55 -0
- package/dist/alert-dialog-BcOSIOSW.cjs.map +1 -0
- package/dist/alert-dialog-D1UYVW__.js +53 -0
- package/dist/alert-dialog-D1UYVW__.js.map +1 -0
- package/dist/ansi-Cq_bKF5J.js +11 -0
- package/dist/ansi-Cq_bKF5J.js.map +1 -0
- package/dist/ansi-fAtbeDQN.cjs +14 -0
- package/dist/ansi-fAtbeDQN.cjs.map +1 -0
- package/dist/ask-user-Crg1O-o6.js +206 -0
- package/dist/ask-user-Crg1O-o6.js.map +1 -0
- package/dist/ask-user-DJXmLJzy.cjs +216 -0
- package/dist/ask-user-DJXmLJzy.cjs.map +1 -0
- package/dist/buttons-group.css +4 -14
- package/dist/code-block-C7A4Hv96.cjs +88 -0
- package/dist/code-block-C7A4Hv96.cjs.map +1 -0
- package/dist/code-block-C_pvalBv.js +86 -0
- package/dist/code-block-C_pvalBv.js.map +1 -0
- package/dist/code-editor-BXchPl_F.cjs +495 -0
- package/dist/code-editor-BXchPl_F.cjs.map +1 -0
- package/dist/code-editor-Cltwid7c.js +487 -0
- package/dist/code-editor-Cltwid7c.js.map +1 -0
- package/dist/collapsible-BNUn4644.js +57 -0
- package/dist/collapsible-BNUn4644.js.map +1 -0
- package/dist/collapsible-jfzzU7Gp.cjs +61 -0
- package/dist/collapsible-jfzzU7Gp.cjs.map +1 -0
- package/dist/combobox-B_C0cNid.js +191 -0
- package/dist/combobox-B_C0cNid.js.map +1 -0
- package/dist/combobox-rKV-Lksj.cjs +212 -0
- package/dist/combobox-rKV-Lksj.cjs.map +1 -0
- package/dist/combobox-styles-C4Kq1NFV.cjs +97 -0
- package/dist/combobox-styles-C4Kq1NFV.cjs.map +1 -0
- package/dist/combobox-styles-CLxC7VLA.js +93 -0
- package/dist/combobox-styles-CLxC7VLA.js.map +1 -0
- package/dist/command-C6JnofUJ.js +185 -0
- package/dist/command-C6JnofUJ.js.map +1 -0
- package/dist/command-CpXMoss8.cjs +214 -0
- package/dist/command-CpXMoss8.cjs.map +1 -0
- package/dist/comment-DKWkzdMj.js +202 -0
- package/dist/comment-DKWkzdMj.js.map +1 -0
- package/dist/comment-DWY6D0pZ.cjs +214 -0
- package/dist/comment-DWY6D0pZ.cjs.map +1 -0
- 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 +3 -12
- package/dist/components/Button.cjs.js.map +1 -1
- package/dist/components/Button.es.js +3 -12
- package/dist/components/Button.es.js.map +1 -1
- package/dist/components/Card.cjs.js +1 -1
- package/dist/components/Card.es.js +1 -1
- package/dist/components/ChatShell.cjs.js +1 -1
- package/dist/components/ChatShell.es.js +1 -1
- package/dist/components/ClampedText.cjs.js +1 -1
- package/dist/components/ClampedText.es.js +1 -1
- package/dist/components/CodeBlock.cjs.js +1 -1
- package/dist/components/CodeBlock.es.js +1 -1
- package/dist/components/CodeDiff.cjs.js +49 -3
- package/dist/components/CodeDiff.cjs.js.map +1 -1
- package/dist/components/CodeDiff.es.js +51 -1
- package/dist/components/CodeDiff.es.js.map +1 -1
- package/dist/components/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/Collapsible.cjs.js +1 -1
- package/dist/components/Collapsible.es.js +1 -1
- package/dist/components/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 +39 -15
- package/dist/components/CommandPalette.cjs.js.map +1 -1
- package/dist/components/CommandPalette.es.js +39 -15
- package/dist/components/CommandPalette.es.js.map +1 -1
- package/dist/components/Comment.cjs.js +6 -5
- package/dist/components/Comment.cjs.js.map +1 -1
- package/dist/components/Comment.es.js +7 -6
- package/dist/components/Comment.es.js.map +1 -1
- package/dist/components/Composer.cjs.js +4 -4
- package/dist/components/Composer.cjs.js.map +1 -1
- package/dist/components/Composer.es.js +4 -4
- package/dist/components/Composer.es.js.map +1 -1
- package/dist/components/CopyButton.cjs.js +1 -1
- package/dist/components/CopyButton.es.js +1 -1
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +5 -10
- package/dist/components/DataDetailsPanel.cjs.js.map +1 -1
- package/dist/components/DataDetailsPanel.es.js +5 -10
- package/dist/components/DataDetailsPanel.es.js.map +1 -1
- package/dist/components/DataKeysAndValues.cjs.js +1 -1
- package/dist/components/DataKeysAndValues.es.js +1 -1
- package/dist/components/DataList.cjs.js +31 -8
- package/dist/components/DataList.cjs.js.map +1 -1
- package/dist/components/DataList.es.js +31 -8
- package/dist/components/DataList.es.js.map +1 -1
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +5 -3
- package/dist/components/DateRangeTimeline.cjs.js.map +1 -1
- package/dist/components/DateRangeTimeline.es.js +5 -3
- package/dist/components/DateRangeTimeline.es.js.map +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 +11 -10
- package/dist/components/EnvironmentVariablesEditor.cjs.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.es.js +11 -10
- package/dist/components/EnvironmentVariablesEditor.es.js.map +1 -1
- 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 +8 -8
- package/dist/components/FilterBar.cjs.js.map +1 -1
- package/dist/components/FilterBar.es.js +9 -9
- package/dist/components/FilterBar.es.js.map +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +5 -5
- package/dist/components/FormFieldBlocks.es.js +5 -5
- package/dist/components/HorizontalBars.cjs.js +1 -1
- package/dist/components/HorizontalBars.es.js +1 -1
- package/dist/components/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +3 -3
- package/dist/components/JSONSchemaForm.es.js +3 -3
- package/dist/components/KeyValueList.cjs.js +2 -1
- package/dist/components/KeyValueList.cjs.js.map +1 -1
- package/dist/components/KeyValueList.es.js +2 -1
- package/dist/components/KeyValueList.es.js.map +1 -1
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +2 -4
- package/dist/components/LogsDataList.cjs.js.map +1 -1
- package/dist/components/LogsDataList.es.js +2 -4
- package/dist/components/LogsDataList.es.js.map +1 -1
- package/dist/components/MainHeader.cjs.js +22 -20
- package/dist/components/MainHeader.cjs.js.map +1 -1
- package/dist/components/MainHeader.es.js +22 -20
- package/dist/components/MainHeader.es.js.map +1 -1
- package/dist/components/MainSidebar.cjs.js +125 -11
- package/dist/components/MainSidebar.cjs.js.map +1 -1
- package/dist/components/MainSidebar.es.js +120 -1
- package/dist/components/MainSidebar.es.js.map +1 -1
- package/dist/components/MarkdownRenderer.cjs.js +1 -1
- package/dist/components/MarkdownRenderer.es.js +1 -1
- package/dist/components/Message.cjs.js +2 -2
- package/dist/components/Message.es.js +3 -3
- package/dist/components/MessageScroller.cjs.js +1 -1
- package/dist/components/MessageScroller.es.js +2 -2
- package/dist/components/MetricsCard.cjs.js +1 -1
- package/dist/components/MetricsCard.es.js +1 -1
- package/dist/components/MetricsKpiCard.cjs.js +1 -1
- package/dist/components/MetricsKpiCard.es.js +1 -1
- package/dist/components/MetricsLineChart.cjs.js +2 -2
- package/dist/components/MetricsLineChart.es.js +2 -2
- package/dist/components/MetricsStackedBarChart.cjs.js +1 -1
- package/dist/components/MetricsStackedBarChart.es.js +1 -1
- package/dist/components/Notice.cjs.js +1 -1
- package/dist/components/Notice.es.js +1 -1
- package/dist/components/PageHeader.cjs.js +1 -1
- package/dist/components/PageHeader.es.js +1 -1
- package/dist/components/PageLayout.cjs.js +2 -2
- package/dist/components/PageLayout.cjs.js.map +1 -1
- package/dist/components/PageLayout.es.js +2 -2
- package/dist/components/PageLayout.es.js.map +1 -1
- package/dist/components/PrevNextNav.cjs.js +1 -1
- package/dist/components/PrevNextNav.es.js +1 -1
- package/dist/components/ProductAvatar.cjs.js +28 -0
- package/dist/components/ProductAvatar.cjs.js.map +1 -0
- package/dist/components/ProductAvatar.d.ts +2 -0
- package/dist/components/ProductAvatar.es.js +24 -0
- package/dist/components/ProductAvatar.es.js.map +1 -0
- package/dist/components/ProductBadge.cjs.js +25 -0
- package/dist/components/ProductBadge.cjs.js.map +1 -0
- package/dist/components/ProductBadge.d.ts +2 -0
- package/dist/components/ProductBadge.es.js +21 -0
- package/dist/components/ProductBadge.es.js.map +1 -0
- package/dist/components/PropertyFilter.cjs.js +5 -4
- package/dist/components/PropertyFilter.cjs.js.map +1 -1
- package/dist/components/PropertyFilter.es.js +6 -5
- package/dist/components/PropertyFilter.es.js.map +1 -1
- package/dist/components/PullRequestIcon.cjs.js +2 -2
- package/dist/components/PullRequestIcon.cjs.js.map +1 -1
- package/dist/components/PullRequestIcon.es.js +2 -2
- package/dist/components/PullRequestIcon.es.js.map +1 -1
- package/dist/components/RelativeTimestamp.cjs.js +1 -1
- package/dist/components/RelativeTimestamp.es.js +1 -1
- package/dist/components/RuleBuilder.cjs.js +5 -4
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +5 -4
- package/dist/components/RuleBuilder.es.js.map +1 -1
- package/dist/components/SankeyChart.cjs.js +3 -6
- package/dist/components/SankeyChart.cjs.js.map +1 -1
- package/dist/components/SankeyChart.es.js +1 -2
- package/dist/components/SankeyChart.es.js.map +1 -1
- package/dist/components/ScatterPlotChart.cjs.js +4 -3
- package/dist/components/ScatterPlotChart.cjs.js.map +1 -1
- package/dist/components/ScatterPlotChart.es.js +4 -3
- package/dist/components/ScatterPlotChart.es.js.map +1 -1
- package/dist/components/ScrollArea.cjs.js +2 -1
- package/dist/components/ScrollArea.cjs.js.map +1 -1
- package/dist/components/ScrollArea.es.js +1 -1
- package/dist/components/Section.cjs.js +1 -1
- package/dist/components/Section.es.js +1 -1
- package/dist/components/SectionCard.cjs.js +14 -25
- package/dist/components/SectionCard.cjs.js.map +1 -1
- package/dist/components/SectionCard.es.js +14 -25
- package/dist/components/SectionCard.es.js.map +1 -1
- 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/Slider.cjs.js +1 -1
- package/dist/components/Slider.es.js +1 -1
- package/dist/components/StatusIndicators.cjs.js +12 -23
- package/dist/components/StatusIndicators.cjs.js.map +1 -1
- package/dist/components/StatusIndicators.es.js +12 -23
- package/dist/components/StatusIndicators.es.js.map +1 -1
- package/dist/components/Steps.cjs.js +17 -33
- package/dist/components/Steps.cjs.js.map +1 -1
- package/dist/components/Steps.es.js +17 -33
- package/dist/components/Steps.es.js.map +1 -1
- package/dist/components/Switch.cjs.js +1 -1
- package/dist/components/Switch.es.js +1 -1
- package/dist/components/Table.cjs.js +3 -2
- package/dist/components/Table.cjs.js.map +1 -1
- package/dist/components/Table.es.js +3 -2
- package/dist/components/Table.es.js.map +1 -1
- package/dist/components/Tabs.cjs.js +3 -3
- package/dist/components/Tabs.es.js +3 -3
- package/dist/components/Text.cjs.js +1 -1
- package/dist/components/Text.es.js +1 -1
- package/dist/components/ThreadList.cjs.js +1 -1
- package/dist/components/ThreadList.es.js +1 -1
- package/dist/components/ThreadRail.cjs.js +440 -6
- package/dist/components/ThreadRail.cjs.js.map +1 -1
- package/dist/components/ThreadRail.es.js +418 -3
- package/dist/components/ThreadRail.es.js.map +1 -1
- package/dist/components/TokenBudget.cjs.js +4 -3
- package/dist/components/TokenBudget.cjs.js.map +1 -1
- package/dist/components/TokenBudget.es.js +4 -3
- package/dist/components/TokenBudget.es.js.map +1 -1
- package/dist/components/Tree.cjs.js +2 -2
- package/dist/components/Tree.cjs.js.map +1 -1
- package/dist/components/Tree.es.js +2 -2
- package/dist/components/Tree.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/Workflow.cjs.js +6 -6
- package/dist/components/Workflow.es.js +6 -6
- package/dist/components/ai/activity.cjs.js +31 -0
- package/dist/components/ai/activity.cjs.js.map +1 -0
- package/dist/components/ai/activity.d.ts +2 -0
- package/dist/components/ai/activity.es.js +6 -0
- package/dist/components/ai/activity.es.js.map +1 -0
- 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/task-list.cjs.js +17 -19
- package/dist/components/ai/task-list.cjs.js.map +1 -1
- package/dist/components/ai/task-list.es.js +17 -19
- package/dist/components/ai/task-list.es.js.map +1 -1
- package/dist/components/ai/tool-approval.cjs.js +1 -1
- package/dist/components/ai/tool-approval.es.js +1 -1
- package/dist/components/ai/tool-call.cjs.js +15 -23
- package/dist/components/ai/tool-call.cjs.js.map +1 -1
- package/dist/components/ai/tool-call.es.js +6 -4
- package/dist/components/ai/tool-call.es.js.map +1 -1
- package/dist/components/ai/transcript-divider.cjs.js +18 -0
- package/dist/components/ai/transcript-divider.cjs.js.map +1 -0
- package/dist/components/ai/transcript-divider.d.ts +2 -0
- package/dist/components/ai/transcript-divider.es.js +14 -0
- package/dist/components/ai/transcript-divider.es.js.map +1 -0
- package/dist/composer-DyoM0j2m.cjs +156 -0
- package/dist/composer-DyoM0j2m.cjs.map +1 -0
- package/dist/composer-eMyX1lBH.js +148 -0
- package/dist/composer-eMyX1lBH.js.map +1 -0
- package/dist/composer.css +8 -8
- package/dist/copy-button-C6nXDjBz.cjs +38 -0
- package/dist/copy-button-C6nXDjBz.cjs.map +1 -0
- package/dist/copy-button-DbmsTUum.js +36 -0
- package/dist/copy-button-DbmsTUum.js.map +1 -0
- package/dist/data-code-section-Bd2Xnckz.js +188 -0
- package/dist/data-code-section-Bd2Xnckz.js.map +1 -0
- package/dist/data-code-section-D5b6_jcB.cjs +190 -0
- package/dist/data-code-section-D5b6_jcB.cjs.map +1 -0
- package/dist/data-keys-and-values-DiRlIt-N.js +107 -0
- package/dist/data-keys-and-values-DiRlIt-N.js.map +1 -0
- package/dist/data-keys-and-values-DnpdW8zx.cjs +109 -0
- package/dist/data-keys-and-values-DnpdW8zx.cjs.map +1 -0
- package/dist/data-list-D8bACyyK.cjs +126 -0
- package/dist/data-list-D8bACyyK.cjs.map +1 -0
- package/dist/data-list-DL_oFE4j.js +122 -0
- package/dist/data-list-DL_oFE4j.js.map +1 -0
- package/dist/data-list-skeleton-BXPfL0s7.cjs +38 -0
- package/dist/data-list-skeleton-BXPfL0s7.cjs.map +1 -0
- package/dist/data-list-skeleton-Bk9LI0J0.js +36 -0
- package/dist/data-list-skeleton-Bk9LI0J0.js.map +1 -0
- package/dist/data-list-spacer-CE6-4ZQq.js +202 -0
- package/dist/data-list-spacer-CE6-4ZQq.js.map +1 -0
- package/dist/data-list-spacer-_bFe0e2u.cjs +211 -0
- package/dist/data-list-spacer-_bFe0e2u.cjs.map +1 -0
- package/dist/data-list-top-C-pLBax7.cjs +381 -0
- package/dist/data-list-top-C-pLBax7.cjs.map +1 -0
- package/dist/data-list-top-DheFgb0M.js +356 -0
- package/dist/data-list-top-DheFgb0M.js.map +1 -0
- package/dist/data-panel-42fdcagQ.js +251 -0
- package/dist/data-panel-42fdcagQ.js.map +1 -0
- package/dist/data-panel-CjvoI_lx.cjs +271 -0
- package/dist/data-panel-CjvoI_lx.cjs.map +1 -0
- package/dist/date-time-range-picker-BORAuIJM.cjs +181 -0
- package/dist/date-time-range-picker-BORAuIJM.cjs.map +1 -0
- package/dist/date-time-range-picker-C-pSI1u1.js +179 -0
- package/dist/date-time-range-picker-C-pSI1u1.js.map +1 -0
- package/dist/dialog-DYpOpj9s.cjs +215 -0
- package/dist/dialog-DYpOpj9s.cjs.map +1 -0
- package/dist/dialog-action-B3AHq7mU.cjs +189 -0
- package/dist/dialog-action-B3AHq7mU.cjs.map +1 -0
- package/dist/dialog-action-BGmDoI5T.js +187 -0
- package/dist/dialog-action-BGmDoI5T.js.map +1 -0
- package/dist/dialog-cKzR2TXI.js +178 -0
- package/dist/dialog-cKzR2TXI.js.map +1 -0
- package/dist/dialog.css +29 -53
- 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 +14 -29
- package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js +14 -29
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment-list.cjs.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment-list.es.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment.cjs.js +1 -1
- package/dist/domains/chat/attachments/composer-attachment.es.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +9 -15
- package/dist/domains/chat/components/badge-wrapper.cjs.js.map +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +9 -15
- package/dist/domains/chat/components/badge-wrapper.es.js.map +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +4 -4
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +4 -4
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js.map +1 -1
- package/dist/domains/chat/context/dataset-save-context-value.cjs.js +14 -0
- package/dist/domains/chat/context/dataset-save-context-value.cjs.js.map +1 -0
- package/dist/domains/chat/context/dataset-save-context-value.d.ts +2 -0
- package/dist/domains/chat/context/dataset-save-context-value.es.js +9 -0
- package/dist/domains/chat/context/dataset-save-context-value.es.js.map +1 -0
- package/dist/domains/chat/context/dataset-save-context.cjs.js +2 -7
- package/dist/domains/chat/context/dataset-save-context.cjs.js.map +1 -1
- package/dist/domains/chat/context/dataset-save-context.es.js +2 -6
- package/dist/domains/chat/context/dataset-save-context.es.js.map +1 -1
- package/dist/domains/chat/messages/assistant-message-actions.cjs.js +3 -3
- package/dist/domains/chat/messages/assistant-message-actions.es.js +3 -3
- package/dist/domains/chat/messages/dataset-save-action.cjs.js +14 -23
- package/dist/domains/chat/messages/dataset-save-action.cjs.js.map +1 -1
- package/dist/domains/chat/messages/dataset-save-action.es.js +12 -21
- package/dist/domains/chat/messages/dataset-save-action.es.js.map +1 -1
- package/dist/domains/chat/messages/message-row.cjs.js +25 -8
- package/dist/domains/chat/messages/message-row.cjs.js.map +1 -1
- package/dist/domains/chat/messages/message-row.es.js +25 -8
- package/dist/domains/chat/messages/message-row.es.js.map +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js +2 -3
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.es.js +2 -3
- package/dist/domains/chat/messages/notification-signal-notice.es.js.map +1 -1
- package/dist/domains/chat/messages/reasoning-content.cjs.js +8 -5
- package/dist/domains/chat/messages/reasoning-content.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning-content.es.js +8 -5
- package/dist/domains/chat/messages/reasoning-content.es.js.map +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 +2 -2
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +2 -2
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js.map +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/renderers/user-text-part-renderer.cjs.js +6 -0
- package/dist/domains/chat/messages/renderers/user-text-part-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/messages/renderers/user-text-part-renderer.es.js +6 -0
- package/dist/domains/chat/messages/renderers/user-text-part-renderer.es.js.map +1 -1
- package/dist/domains/chat/messages/signal-badge.cjs.js +5 -8
- package/dist/domains/chat/messages/signal-badge.cjs.js.map +1 -1
- package/dist/domains/chat/messages/signal-badge.es.js +5 -8
- package/dist/domains/chat/messages/signal-badge.es.js.map +1 -1
- package/dist/domains/chat/messages/skill-activation.cjs.js +29 -0
- package/dist/domains/chat/messages/skill-activation.cjs.js.map +1 -0
- package/dist/domains/chat/messages/skill-activation.d.ts +2 -0
- package/dist/domains/chat/messages/skill-activation.es.js +25 -0
- package/dist/domains/chat/messages/skill-activation.es.js.map +1 -0
- package/dist/domains/chat/messages/skill-message.cjs.js +33 -0
- package/dist/domains/chat/messages/skill-message.cjs.js.map +1 -0
- package/dist/domains/chat/messages/skill-message.d.ts +2 -0
- package/dist/domains/chat/messages/skill-message.es.js +29 -0
- package/dist/domains/chat/messages/skill-message.es.js.map +1 -0
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js +10 -22
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js.map +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +12 -24
- package/dist/domains/chat/messages/system-reminder-badge.es.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +4 -4
- package/dist/domains/chat/messages/tripwire-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.es.js +4 -4
- package/dist/domains/chat/messages/tripwire-notice.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/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 +5 -4
- package/dist/domains/chat/tools/badges/agent-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/agent-badge.es.js +5 -4
- package/dist/domains/chat/tools/badges/agent-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/awaits-tool-approval.cjs.js +10 -0
- package/dist/domains/chat/tools/badges/awaits-tool-approval.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/awaits-tool-approval.d.ts +2 -0
- package/dist/domains/chat/tools/badges/awaits-tool-approval.es.js +6 -0
- package/dist/domains/chat/tools/badges/awaits-tool-approval.es.js.map +1 -0
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js +4 -4
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js +4 -4
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +5 -5
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js +5 -5
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +66 -120
- package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/file-tree-badge.es.js +68 -122
- package/dist/domains/chat/tools/badges/file-tree-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +128 -493
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +131 -496
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +70 -0
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/observation-marker-details.d.ts +2 -0
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js +64 -0
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js.map +1 -0
- package/dist/domains/chat/tools/badges/observation-marker-format.cjs.js +29 -0
- package/dist/domains/chat/tools/badges/observation-marker-format.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/observation-marker-format.d.ts +2 -0
- package/dist/domains/chat/tools/badges/observation-marker-format.es.js +22 -0
- package/dist/domains/chat/tools/badges/observation-marker-format.es.js.map +1 -0
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +6 -20
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +6 -20
- package/dist/domains/chat/tools/badges/observation-renderer.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +89 -163
- 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 +91 -165
- 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 +16 -17
- package/dist/domains/chat/tools/badges/tool-approval-buttons.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js +16 -17
- package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js +15 -11
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-badge.es.js +14 -10
- package/dist/domains/chat/tools/badges/tool-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +13 -11
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.es.js +12 -10
- package/dist/domains/chat/tools/badges/workflow-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workspace-data-parts.cjs.js +28 -0
- package/dist/domains/chat/tools/badges/workspace-data-parts.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/workspace-data-parts.d.ts +2 -0
- package/dist/domains/chat/tools/badges/workspace-data-parts.es.js +22 -0
- package/dist/domains/chat/tools/badges/workspace-data-parts.es.js.map +1 -0
- package/dist/domains/chat/tools/badges/workspace-link.cjs.js +25 -0
- package/dist/domains/chat/tools/badges/workspace-link.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/workspace-link.d.ts +2 -0
- package/dist/domains/chat/tools/badges/workspace-link.es.js +21 -0
- package/dist/domains/chat/tools/badges/workspace-link.es.js.map +1 -0
- package/dist/domains/chat/tools/submit-plan-tool.cjs.js +123 -35
- package/dist/domains/chat/tools/submit-plan-tool.cjs.js.map +1 -1
- package/dist/domains/chat/tools/submit-plan-tool.es.js +124 -36
- package/dist/domains/chat/tools/submit-plan-tool.es.js.map +1 -1
- package/dist/domains/chat/tools/tool-card-kind.cjs.js +1 -1
- package/dist/domains/chat/tools/tool-card-kind.cjs.js.map +1 -1
- package/dist/domains/chat/tools/tool-card-kind.es.js +1 -1
- 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/chat.cjs.js +2 -1
- package/dist/domains/chat.cjs.js.map +1 -1
- package/dist/domains/chat.es.js +2 -1
- package/dist/domains/chat.es.js.map +1 -1
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js +5 -5
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +5 -5
- package/dist/domains/logs/components/log-data-panel.cjs.js +7 -6
- package/dist/domains/logs/components/log-data-panel.cjs.js.map +1 -1
- package/dist/domains/logs/components/log-data-panel.es.js +7 -6
- package/dist/domains/logs/components/log-data-panel.es.js.map +1 -1
- 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 +2 -2
- package/dist/domains/logs/components/logs-list-view.es.js +2 -2
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.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 +13 -21
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +13 -21
- 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 +27 -53
- package/dist/domains/memory/components/observation-detail-view.cjs.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +27 -53
- package/dist/domains/memory/components/observation-detail-view.es.js.map +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/memory/lib/observation-priority.cjs.js +40 -0
- package/dist/domains/memory/lib/observation-priority.cjs.js.map +1 -0
- package/dist/domains/memory/lib/observation-priority.d.ts +2 -0
- package/dist/domains/memory/lib/observation-priority.es.js +35 -0
- package/dist/domains/memory/lib/observation-priority.es.js.map +1 -0
- package/dist/domains/metrics/components/bar-list.cjs.js +26 -9
- package/dist/domains/metrics/components/bar-list.cjs.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.es.js +26 -9
- package/dist/domains/metrics/components/bar-list.es.js.map +1 -1
- package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.es.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.cjs.js +6 -6
- package/dist/domains/metrics/components/latency-card-view.es.js +6 -6
- package/dist/domains/metrics/components/memory-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/memory-card-view.es.js +5 -5
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +2 -2
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +2 -2
- package/dist/domains/metrics/components/scores-card-view.cjs.js +6 -6
- package/dist/domains/metrics/components/scores-card-view.es.js +6 -6
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +6 -6
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +6 -6
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +5 -5
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js +7 -6
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js.map +1 -1
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.es.js +7 -6
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.es.js.map +1 -1
- package/dist/domains/observability/components/trace-as-item-dialog.cjs.js +1 -1
- package/dist/domains/observability/components/trace-as-item-dialog.es.js +1 -1
- package/dist/domains/request-context/components/request-context-label.cjs.js +1 -5
- package/dist/domains/request-context/components/request-context-label.cjs.js.map +1 -1
- package/dist/domains/request-context/components/request-context-label.es.js +2 -6
- package/dist/domains/request-context/components/request-context-label.es.js.map +1 -1
- package/dist/domains/review/components/review-status-badge.cjs.js +3 -3
- package/dist/domains/review/components/review-status-badge.cjs.js.map +1 -1
- package/dist/domains/review/components/review-status-badge.es.js +3 -3
- package/dist/domains/review/components/review-status-badge.es.js.map +1 -1
- package/dist/domains/scores/components/score-as-item-dialog.cjs.js +1 -1
- package/dist/domains/scores/components/score-as-item-dialog.es.js +1 -1
- package/dist/domains/scores/components/score-data-panel.cjs.js +5 -5
- package/dist/domains/scores/components/score-data-panel.cjs.js.map +1 -1
- package/dist/domains/scores/components/score-data-panel.es.js +5 -5
- package/dist/domains/scores/components/score-data-panel.es.js.map +1 -1
- package/dist/domains/scores/components/span-scoring.cjs.js +5 -5
- package/dist/domains/scores/components/span-scoring.es.js +5 -5
- package/dist/domains/scores/components/trace-scores-tab.cjs.js +9 -9
- package/dist/domains/scores/components/trace-scores-tab.cjs.js.map +1 -1
- package/dist/domains/scores/components/trace-scores-tab.es.js +9 -9
- package/dist/domains/scores/components/trace-scores-tab.es.js.map +1 -1
- package/dist/domains/traces/components/feedback-thread.cjs.js +4 -4
- package/dist/domains/traces/components/feedback-thread.es.js +4 -4
- package/dist/domains/traces/components/format-trace-thread-messages.cjs.js +69 -4
- 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 +69 -4
- 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/shared.cjs.js +11 -11
- package/dist/domains/traces/components/shared.cjs.js.map +1 -1
- package/dist/domains/traces/components/shared.es.js +11 -11
- package/dist/domains/traces/components/shared.es.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +7 -7
- package/dist/domains/traces/components/span-data-panel-view.es.js +7 -7
- package/dist/domains/traces/components/span-details-view.cjs.js +1 -1
- package/dist/domains/traces/components/span-details-view.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +6 -6
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +6 -6
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +4 -4
- 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 +4 -4
- 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 +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-processor-attributes.cjs.js +5 -5
- package/dist/domains/traces/components/span-payload/span-processor-attributes.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-processor-attributes.es.js +5 -5
- package/dist/domains/traces/components/span-payload/span-processor-attributes.es.js.map +1 -1
- package/dist/domains/traces/components/span-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/span-summary-description.es.js +1 -1
- package/dist/domains/traces/components/span-timeline-row.cjs.js +3 -2
- package/dist/domains/traces/components/span-timeline-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timeline-row.es.js +3 -2
- package/dist/domains/traces/components/span-timeline-row.es.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.es.js +1 -1
- package/dist/domains/traces/components/span-token-usage.cjs.js +9 -8
- package/dist/domains/traces/components/span-token-usage.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.es.js +9 -8
- package/dist/domains/traces/components/span-token-usage.es.js.map +1 -1
- package/dist/domains/traces/components/span-type-legend.cjs.js +2 -2
- package/dist/domains/traces/components/span-type-legend.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-type-legend.es.js +2 -2
- package/dist/domains/traces/components/span-type-legend.es.js.map +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-list.cjs.js +10 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js +10 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js.map +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-root.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-root.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-root.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.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-trace.cjs.js +0 -2
- package/dist/domains/traces/components/thread-trace.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace.es.js +0 -2
- package/dist/domains/traces/components/thread-trace.es.js.map +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js +5 -16
- 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 +5 -16
- package/dist/domains/traces/components/thread-view-by-trace.es.js.map +1 -1
- package/dist/domains/traces/components/thread-view-skeleton.cjs.js +2 -2
- package/dist/domains/traces/components/thread-view-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-view-skeleton.es.js +2 -2
- package/dist/domains/traces/components/thread-view-skeleton.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.cjs.js +5 -3
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +5 -3
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +9 -7
- package/dist/domains/traces/components/trace-columns-menu.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.es.js +10 -8
- package/dist/domains/traces/components/trace-columns-menu.es.js.map +1 -1
- 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 +3 -4
- package/dist/domains/traces/components/trace-data-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel.es.js +3 -4
- package/dist/domains/traces/components/trace-data-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
- package/dist/domains/traces/components/trace-id-button.es.js +1 -1
- package/dist/domains/traces/components/trace-messages-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-messages-panel.es.js +1 -1
- package/dist/domains/traces/components/trace-span-panel.cjs.js +5 -5
- package/dist/domains/traces/components/trace-span-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-panel.es.js +5 -5
- package/dist/domains/traces/components/trace-span-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-status-value.cjs.js +2 -2
- package/dist/domains/traces/components/trace-status-value.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-status-value.es.js +2 -2
- package/dist/domains/traces/components/trace-status-value.es.js.map +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.es.js +1 -1
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js +2 -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 +2 -2
- 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 +5 -4
- package/dist/domains/traces/components/traces-list-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view.es.js +5 -4
- package/dist/domains/traces/components/traces-list-view.es.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +1 -3
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js +1 -3
- package/dist/domains/traces/components/traces-page-skeleton.es.js.map +1 -1
- package/dist/domains/traces/trace-filters.cjs.js +30 -31
- package/dist/domains/traces/trace-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-filters.es.js +31 -32
- 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 +4 -2
- package/dist/domains/workflows/components/workflow-entity-header.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.es.js +4 -2
- package/dist/domains/workflows/components/workflow-entity-header.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-information.cjs.js +4 -5
- package/dist/domains/workflows/components/workflow-information.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-information.es.js +4 -5
- package/dist/domains/workflows/components/workflow-information.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-layout.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-layout.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-layout.es.js +1 -1
- package/dist/domains/workflows/components/workflow-layout.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-run-status-icon.cjs.js +9 -7
- package/dist/domains/workflows/components/workflow-run-status-icon.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-run-status-icon.es.js +9 -7
- package/dist/domains/workflows/components/workflow-run-status-icon.es.js.map +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 +30 -19
- 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 +30 -19
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js +9 -8
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.es.js +9 -8
- package/dist/domains/workflows/runs/workflow-run-list.es.js.map +1 -1
- package/dist/domains/workflows/utils/nested-workflows.cjs.js +1 -1
- package/dist/domains/workflows/utils/nested-workflows.cjs.js.map +1 -1
- package/dist/domains/workflows/utils/nested-workflows.es.js +1 -1
- package/dist/domains/workflows/utils/nested-workflows.es.js.map +1 -1
- 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 +5 -5
- 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 +5 -5
- 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/utils.cjs.js +1 -1
- package/dist/domains/workflows/workflow/utils.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/utils.es.js +1 -1
- package/dist/domains/workflows/workflow/utils.es.js.map +1 -1
- 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-mode-switch.cjs.js +3 -2
- package/dist/domains/workflows/workflow/workflow-debug-mode-switch.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-mode-switch.es.js +3 -2
- package/dist/domains/workflows/workflow/workflow-debug-mode-switch.es.js.map +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 +8 -7
- package/dist/domains/workflows/workflow/workflow-graph-boundary.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js +8 -7
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js.map +1 -1
- 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 -3
- package/dist/domains/workflows/workflow/workflow-input-data.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-input-data.es.js +2 -3
- package/dist/domains/workflows/workflow/workflow-input-data.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.cjs.js +8 -11
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.es.js +8 -11
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js +4 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +4 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js +5 -5
- package/dist/domains/workflows/workflow/workflow-run-data.es.js +5 -5
- 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 +25 -12
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.es.js +25 -12
- package/dist/domains/workflows/workflow/workflow-run-header.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-status.cjs.js +10 -7
- package/dist/domains/workflows/workflow/workflow-status.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-status.es.js +10 -7
- package/dist/domains/workflows/workflow/workflow-status.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-step-action-bar.cjs.js +36 -55
- package/dist/domains/workflows/workflow/workflow-step-action-bar.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-step-action-bar.es.js +36 -55
- package/dist/domains/workflows/workflow/workflow-step-action-bar.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-suspended-steps.cjs.js +5 -5
- package/dist/domains/workflows/workflow/workflow-suspended-steps.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-suspended-steps.es.js +5 -5
- package/dist/domains/workflows/workflow/workflow-suspended-steps.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-time-travel-form.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-time-travel-form.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js +25 -21
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js +25 -21
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js +4 -3
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.es.js +4 -3
- package/dist/domains/workflows/workflow/workflow-timeline.es.js.map +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/workflow-trigger.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger.es.js +1 -1
- package/dist/domains/workflows/workflow-status-tone.cjs.js +35 -0
- package/dist/domains/workflows/workflow-status-tone.cjs.js.map +1 -0
- package/dist/domains/workflows/workflow-status-tone.d.ts +2 -0
- package/dist/domains/workflows/workflow-status-tone.es.js +29 -0
- package/dist/domains/workflows/workflow-status-tone.es.js.map +1 -0
- package/dist/drawer-DXf50w71.js +327 -0
- package/dist/drawer-DXf50w71.js.map +1 -0
- package/dist/drawer-d81cZiSV.cjs +365 -0
- package/dist/drawer-d81cZiSV.cjs.map +1 -0
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +6 -5
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.es.js +6 -5
- package/dist/ee/signals/components/entity-index-compact-grid.es.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js +3 -5
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +3 -5
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.cjs.js +46 -48
- package/dist/ee/signals/components/signals-empty-state.cjs.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +47 -49
- package/dist/ee/signals/components/signals-empty-state.es.js.map +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 +5 -6
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +5 -6
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
- package/dist/ee/signals/examples-pager.cjs.js +3 -2
- package/dist/ee/signals/examples-pager.cjs.js.map +1 -1
- package/dist/ee/signals/examples-pager.es.js +3 -2
- package/dist/ee/signals/examples-pager.es.js.map +1 -1
- package/dist/ee/signals/flow-card.cjs.js +10 -5
- package/dist/ee/signals/flow-card.cjs.js.map +1 -1
- package/dist/ee/signals/flow-card.es.js +11 -6
- package/dist/ee/signals/flow-card.es.js.map +1 -1
- package/dist/ee/signals/lifeline-point.cjs.js +7 -2
- package/dist/ee/signals/lifeline-point.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-point.es.js +7 -2
- package/dist/ee/signals/lifeline-point.es.js.map +1 -1
- package/dist/ee/signals/lifeline-row.cjs.js +10 -13
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-row.es.js +10 -13
- package/dist/ee/signals/lifeline-row.es.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +21 -12
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +21 -12
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +5 -4
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +5 -4
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +10 -21
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +10 -21
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +12 -11
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.es.js +12 -11
- package/dist/ee/signals/settings/trace-signal-settings.es.js.map +1 -1
- package/dist/ee/signals/signal-colors.cjs.js +36 -32
- package/dist/ee/signals/signal-colors.cjs.js.map +1 -1
- package/dist/ee/signals/signal-colors.es.js +34 -31
- package/dist/ee/signals/signal-colors.es.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.cjs.js +11 -8
- package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.es.js +12 -9
- package/dist/ee/signals/signal-delta-column.es.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.cjs.js +4 -5
- package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.es.js +5 -6
- package/dist/ee/signals/signal-lifelines.es.js.map +1 -1
- package/dist/ee/signals/signals-error-state.cjs.js +5 -4
- package/dist/ee/signals/signals-error-state.cjs.js.map +1 -1
- package/dist/ee/signals/signals-error-state.es.js +5 -4
- package/dist/ee/signals/signals-error-state.es.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.cjs.js +12 -7
- package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +12 -7
- package/dist/ee/signals/snapshot-timeline.es.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js +1 -2
- package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.es.js +2 -3
- package/dist/ee/signals/sortable-signal-headers.es.js.map +1 -1
- package/dist/ee/signals/theme-compare-sparkline.cjs.js +1 -1
- package/dist/ee/signals/theme-compare-sparkline.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare-sparkline.es.js +1 -1
- package/dist/ee/signals/theme-compare-sparkline.es.js.map +1 -1
- package/dist/ee/signals/theme-compare.cjs.js +24 -5
- package/dist/ee/signals/theme-compare.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare.es.js +24 -5
- package/dist/ee/signals/theme-compare.es.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +39 -30
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +40 -31
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +9 -7
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +10 -8
- package/dist/ee/signals/theme-filter-banner.es.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js +2 -1
- package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.es.js +2 -1
- package/dist/ee/signals/theme-lifelines.es.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.cjs.js +5 -5
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js +5 -5
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +29 -16
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +29 -16
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +7 -4
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +8 -5
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.cjs.js +1 -1
- package/dist/ee/signals/view-mode-tab.es.js +1 -1
- package/dist/ee/signals.cjs.js +3 -2
- package/dist/ee/signals.cjs.js.map +1 -1
- package/dist/ee/signals.es.js +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +3 -3
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +3 -3
- package/dist/ee/topics/utils.cjs.js +3 -10
- package/dist/ee/topics/utils.cjs.js.map +1 -1
- package/dist/ee/topics/utils.es.js +3 -10
- package/dist/ee/topics/utils.es.js.map +1 -1
- package/dist/field-block-BIDi9Bvc.cjs +88 -0
- package/dist/field-block-BIDi9Bvc.cjs.map +1 -0
- package/dist/field-block-DpejZ6U6.js +86 -0
- package/dist/field-block-DpejZ6U6.js.map +1 -0
- package/dist/field-block-error-msg-B6-wnlAz.cjs +26 -0
- package/dist/field-block-error-msg-B6-wnlAz.cjs.map +1 -0
- package/dist/field-block-error-msg-edlaudVx.js +24 -0
- package/dist/field-block-error-msg-edlaudVx.js.map +1 -0
- package/dist/filter-bar-chip-BNPOrSrD.js +1211 -0
- package/dist/filter-bar-chip-BNPOrSrD.js.map +1 -0
- package/dist/filter-bar-chip-D4CSm9KP.cjs +1233 -0
- package/dist/filter-bar-chip-D4CSm9KP.cjs.map +1 -0
- package/dist/filter-bar-chip.css +1 -6
- package/dist/horizontal-bars-BSRESJsp.js +158 -0
- package/dist/horizontal-bars-BSRESJsp.js.map +1 -0
- package/dist/horizontal-bars-DRD7JkHL.cjs +160 -0
- package/dist/horizontal-bars-DRD7JkHL.cjs.map +1 -0
- package/dist/input-group-B8bnoDrA.js +196 -0
- package/dist/input-group-B8bnoDrA.js.map +1 -0
- package/dist/input-group-I8YVM_Ps.cjs +222 -0
- package/dist/input-group-I8YVM_Ps.cjs.map +1 -0
- package/dist/layout/tabbed-container.cjs.js +8 -7
- package/dist/layout/tabbed-container.cjs.js.map +1 -1
- package/dist/layout/tabbed-container.es.js +8 -7
- package/dist/layout/tabbed-container.es.js.map +1 -1
- package/dist/lib/form/components/array-element-wrapper.cjs.js +5 -4
- package/dist/lib/form/components/array-element-wrapper.cjs.js.map +1 -1
- package/dist/lib/form/components/array-element-wrapper.es.js +5 -4
- 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 +3 -3
- package/dist/lib/form/components/date-field.cjs.js.map +1 -1
- package/dist/lib/form/components/date-field.es.js +3 -3
- package/dist/lib/form/components/date-field.es.js.map +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/number-field.cjs.js +1 -1
- package/dist/lib/form/components/number-field.cjs.js.map +1 -1
- package/dist/lib/form/components/number-field.es.js +1 -1
- package/dist/lib/form/components/number-field.es.js.map +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js +3 -2
- package/dist/lib/form/components/object-wrapper.cjs.js.map +1 -1
- package/dist/lib/form/components/object-wrapper.es.js +3 -2
- 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 +2 -2
- package/dist/lib/form/components/select-field.cjs.js.map +1 -1
- package/dist/lib/form/components/select-field.es.js +2 -2
- package/dist/lib/form/components/select-field.es.js.map +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/lib/framework.cjs.js.map +1 -1
- package/dist/lib/framework.es.js.map +1 -1
- package/dist/list-search-9l8IEdxZ.js +69 -0
- package/dist/list-search-9l8IEdxZ.js.map +1 -0
- package/dist/list-search-DXb7HFX8.cjs +71 -0
- package/dist/list-search-DXb7HFX8.cjs.map +1 -0
- package/dist/logs-data-list-C77r2FOj.js +82 -0
- package/dist/logs-data-list-C77r2FOj.js.map +1 -0
- package/dist/logs-data-list-CEFyG1Xb.cjs +84 -0
- package/dist/logs-data-list-CEFyG1Xb.cjs.map +1 -0
- package/dist/main-sidebar-link-active-1_ktyA8Q.js +777 -0
- package/dist/main-sidebar-link-active-1_ktyA8Q.js.map +1 -0
- package/dist/main-sidebar-link-active-BNko0jHZ.cjs +794 -0
- package/dist/main-sidebar-link-active-BNko0jHZ.cjs.map +1 -0
- package/dist/markdown-renderer-Bl0V7FCo.js +407 -0
- package/dist/markdown-renderer-Bl0V7FCo.js.map +1 -0
- package/dist/markdown-renderer-CSwjfPaf.cjs +409 -0
- package/dist/markdown-renderer-CSwjfPaf.cjs.map +1 -0
- package/dist/markdown-renderer.css +3 -3
- package/dist/merge-refs-BLbKe138.cjs +20 -0
- package/dist/merge-refs-BLbKe138.cjs.map +1 -0
- package/dist/merge-refs-DA1xt2OQ.js +18 -0
- package/dist/merge-refs-DA1xt2OQ.js.map +1 -0
- package/dist/message-C1c5oZE7.cjs +67 -0
- package/dist/message-C1c5oZE7.cjs.map +1 -0
- package/dist/message-C7hocqft.js +63 -0
- package/dist/message-C7hocqft.js.map +1 -0
- package/dist/message-copy-button-ClJBX9qx.cjs +11 -0
- package/dist/message-copy-button-ClJBX9qx.cjs.map +1 -0
- package/dist/message-copy-button-DP3U-xA-.js +9 -0
- package/dist/message-copy-button-DP3U-xA-.js.map +1 -0
- package/dist/message-preview-4Fmotm9o.cjs +14 -0
- package/dist/message-preview-4Fmotm9o.cjs.map +1 -0
- package/dist/message-preview-BnmthmiK.js +11 -0
- package/dist/message-preview-BnmthmiK.js.map +1 -0
- package/dist/message-scroller-CiFr8MwT.js +825 -0
- package/dist/message-scroller-CiFr8MwT.js.map +1 -0
- package/dist/message-scroller-E05PLPmT.cjs +851 -0
- package/dist/message-scroller-E05PLPmT.cjs.map +1 -0
- package/dist/message-scroller-context-BF1Qo4vC.js +23 -0
- package/dist/message-scroller-context-BF1Qo4vC.js.map +1 -0
- package/dist/message-scroller-hooks-BEeE1WE6.js +46 -0
- package/dist/message-scroller-hooks-BEeE1WE6.js.map +1 -0
- package/dist/metrics-card-CloSmyRQ.js +94 -0
- package/dist/metrics-card-CloSmyRQ.js.map +1 -0
- package/dist/metrics-card-HmQJHDNa.cjs +96 -0
- package/dist/metrics-card-HmQJHDNa.cjs.map +1 -0
- package/dist/metrics-kpi-card-CW24YjZp.cjs +107 -0
- package/dist/metrics-kpi-card-CW24YjZp.cjs.map +1 -0
- package/dist/metrics-kpi-card-DLDT28IB.js +105 -0
- package/dist/metrics-kpi-card-DLDT28IB.js.map +1 -0
- package/dist/metrics-line-chart-C3UMBQ38.js +102 -0
- package/dist/metrics-line-chart-C3UMBQ38.js.map +1 -0
- package/dist/metrics-line-chart-CjJxBbM-.cjs +104 -0
- package/dist/metrics-line-chart-CjJxBbM-.cjs.map +1 -0
- package/dist/metrics-line-chart-tooltip-DiXCgpik.cjs +54 -0
- package/dist/metrics-line-chart-tooltip-DiXCgpik.cjs.map +1 -0
- package/dist/metrics-line-chart-tooltip-mZXPH1yH.js +51 -0
- package/dist/metrics-line-chart-tooltip-mZXPH1yH.js.map +1 -0
- package/dist/new/layout/app-shell.cjs.js +3 -2
- package/dist/new/layout/app-shell.cjs.js.map +1 -1
- package/dist/new/layout/app-shell.es.js +3 -2
- package/dist/new/layout/app-shell.es.js.map +1 -1
- package/dist/new/layout/page-header.cjs.js +1 -1
- package/dist/new/layout/page-header.es.js +1 -1
- package/dist/new/settings.cjs.js +1 -1
- package/dist/new/settings.es.js +1 -1
- package/dist/new/sidebar.cjs.js +129 -74
- package/dist/new/sidebar.cjs.js.map +1 -1
- package/dist/new/sidebar.es.js +103 -48
- package/dist/new/sidebar.es.js.map +1 -1
- package/dist/notification-activity-B1_2BPe_.js +72 -0
- package/dist/notification-activity-B1_2BPe_.js.map +1 -0
- package/dist/notification-activity-BAn2fhYd.cjs +74 -0
- package/dist/notification-activity-BAn2fhYd.cjs.map +1 -0
- package/dist/page-header-C1WiOrTE.cjs +142 -0
- package/dist/page-header-C1WiOrTE.cjs.map +1 -0
- package/dist/page-header-DIS8V2TK.js +140 -0
- package/dist/page-header-DIS8V2TK.js.map +1 -0
- package/dist/page-header.css +19 -0
- package/dist/plan-DJfH1c_u.js +189 -0
- package/dist/plan-DJfH1c_u.js.map +1 -0
- package/dist/plan-ZKAT5frg.cjs +206 -0
- package/dist/plan-ZKAT5frg.cjs.map +1 -0
- package/dist/primitives/form-element.cjs.js +6 -5
- package/dist/primitives/form-element.cjs.js.map +1 -1
- package/dist/primitives/form-element.es.js +6 -6
- package/dist/primitives/form-element.es.js.map +1 -1
- package/dist/primitives/menu-item.cjs.js +3 -3
- package/dist/primitives/menu-item.cjs.js.map +1 -1
- package/dist/primitives/menu-item.es.js +3 -3
- package/dist/primitives/menu-item.es.js.map +1 -1
- package/dist/primitives/raised-surface.cjs.js +3 -3
- package/dist/primitives/raised-surface.cjs.js.map +1 -1
- package/dist/primitives/raised-surface.es.js +3 -3
- package/dist/primitives/raised-surface.es.js.map +1 -1
- package/dist/primitives/selection-control.cjs.js +2 -2
- package/dist/primitives/selection-control.cjs.js.map +1 -1
- package/dist/primitives/selection-control.es.js +3 -3
- package/dist/primitives/selection-control.es.js.map +1 -1
- package/dist/primitives/transitions.cjs.js +6 -8
- package/dist/primitives/transitions.cjs.js.map +1 -1
- package/dist/primitives/transitions.es.js +5 -9
- package/dist/primitives/transitions.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/product-identity-CAQoXS5p.cjs +31 -0
- package/dist/product-identity-CAQoXS5p.cjs.map +1 -0
- package/dist/product-identity-DwNTealD.js +27 -0
- package/dist/product-identity-DwNTealD.js.map +1 -0
- package/dist/property-filter-applied-D0F0BYMY.cjs +341 -0
- package/dist/property-filter-applied-D0F0BYMY.cjs.map +1 -0
- package/dist/property-filter-applied-k0TOa9hf.js +337 -0
- package/dist/property-filter-applied-k0TOa9hf.js.map +1 -0
- package/dist/reasoning-activity-CO0Ab1Za.cjs +34 -0
- package/dist/reasoning-activity-CO0Ab1Za.cjs.map +1 -0
- package/dist/reasoning-activity-D3oCzL58.js +32 -0
- package/dist/reasoning-activity-D3oCzL58.js.map +1 -0
- package/dist/reasoning-visibility-B9rA0AIj.js +6 -0
- package/dist/reasoning-visibility-B9rA0AIj.js.map +1 -0
- package/dist/reasoning-visibility-DXho4jGC.cjs +8 -0
- package/dist/reasoning-visibility-DXho4jGC.cjs.map +1 -0
- package/dist/relative-timestamp-D-IvjsVb.cjs +120 -0
- package/dist/relative-timestamp-D-IvjsVb.cjs.map +1 -0
- package/dist/relative-timestamp-wERh5vUE.js +118 -0
- package/dist/relative-timestamp-wERh5vUE.js.map +1 -0
- package/dist/resize/panel-drawer.cjs.js +1 -1
- package/dist/resize/panel-drawer.es.js +1 -1
- package/dist/resize/panel-icon-button.cjs.js +1 -1
- package/dist/resize/panel-icon-button.cjs.js.map +1 -1
- package/dist/resize/panel-icon-button.es.js +1 -1
- package/dist/resize/panel-icon-button.es.js.map +1 -1
- package/dist/resize/separator.cjs.js +3 -3
- package/dist/resize/separator.cjs.js.map +1 -1
- package/dist/resize/separator.es.js +3 -3
- package/dist/resize/separator.es.js.map +1 -1
- package/dist/sankey-chart-D-xMiO2u.js +938 -0
- package/dist/sankey-chart-D-xMiO2u.js.map +1 -0
- package/dist/sankey-chart-S7iF7d0E.cjs +950 -0
- package/dist/sankey-chart-S7iF7d0E.cjs.map +1 -0
- package/dist/scroll-area-CEuf7Omb.cjs +264 -0
- package/dist/scroll-area-CEuf7Omb.cjs.map +1 -0
- package/dist/scroll-area-Ds-fJn5M.js +241 -0
- package/dist/scroll-area-Ds-fJn5M.js.map +1 -0
- package/dist/search-field-block-B1eqMV8x.cjs +127 -0
- package/dist/search-field-block-B1eqMV8x.cjs.map +1 -0
- package/dist/search-field-block-Cj9lJsYi.js +125 -0
- package/dist/search-field-block-Cj9lJsYi.js.map +1 -0
- package/dist/section-B5g_0tUo.js +113 -0
- package/dist/section-B5g_0tUo.js.map +1 -0
- package/dist/section-Bbp-NIR9.cjs +117 -0
- package/dist/section-Bbp-NIR9.cjs.map +1 -0
- package/dist/select-C0ZGSJYa.cjs +164 -0
- package/dist/select-C0ZGSJYa.cjs.map +1 -0
- package/dist/select-ch8imm15.js +138 -0
- package/dist/select-ch8imm15.js.map +1 -0
- package/dist/select-field-block-Dy_N3tWv.cjs +61 -0
- package/dist/select-field-block-Dy_N3tWv.cjs.map +1 -0
- package/dist/select-field-block-_ZUzUs7l.js +59 -0
- package/dist/select-field-block-_ZUzUs7l.js.map +1 -0
- package/dist/settings-row-2hq9Ww8Z.js +124 -0
- package/dist/settings-row-2hq9Ww8Z.js.map +1 -0
- package/dist/settings-row-BMRADph-.cjs +129 -0
- package/dist/settings-row-BMRADph-.cjs.map +1 -0
- package/dist/shimmer.css +1 -1
- package/dist/side-dialog-7P9aEC4v.cjs +294 -0
- package/dist/side-dialog-7P9aEC4v.cjs.map +1 -0
- package/dist/side-dialog-D2O3Y7GB.js +274 -0
- package/dist/side-dialog-D2O3Y7GB.js.map +1 -0
- package/dist/sidebar.css +7 -0
- package/dist/signal-activity-1REUU8T_.js +44 -0
- package/dist/signal-activity-1REUU8T_.js.map +1 -0
- package/dist/signal-activity-4OJb4kp6.cjs +46 -0
- package/dist/signal-activity-4OJb4kp6.cjs.map +1 -0
- package/dist/slider-D9dd_fVN.js +95 -0
- package/dist/slider-D9dd_fVN.js.map +1 -0
- package/dist/slider-T_BIZUV0.cjs +97 -0
- package/dist/slider-T_BIZUV0.cjs.map +1 -0
- package/dist/span-payload-primitives-CEflnpwW.js +70 -0
- package/dist/span-payload-primitives-CEflnpwW.js.map +1 -0
- package/dist/span-payload-primitives-CbXrqcs-.cjs +77 -0
- package/dist/span-payload-primitives-CbXrqcs-.cjs.map +1 -0
- package/dist/src/domains/capabilities/hooks/use-observability-capabilities.d.ts +1 -0
- package/dist/src/domains/chat/components/badge-wrapper.d.ts +3 -3
- package/dist/src/domains/chat/context/dataset-save-context-value.d.ts +12 -0
- package/dist/src/domains/chat/context/dataset-save-context.d.ts +3 -12
- package/dist/src/domains/chat/index.d.ts +2 -0
- package/dist/src/domains/chat/messages/reasoning-content.d.ts +2 -2
- package/dist/src/domains/chat/messages/skill-activation.d.ts +8 -0
- package/dist/src/domains/chat/messages/skill-message.d.ts +4 -0
- package/dist/src/domains/chat/tools/badges/agent-badge-wrapper.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/agent-badge.d.ts +2 -4
- package/dist/src/domains/chat/tools/badges/awaits-tool-approval.d.ts +4 -0
- package/dist/src/domains/chat/tools/badges/file-tree-badge.d.ts +4 -2
- package/dist/src/domains/chat/tools/badges/observation-marker-badge.d.ts +4 -13
- package/dist/src/domains/chat/tools/badges/observation-marker-details.d.ts +22 -0
- package/dist/src/domains/chat/tools/badges/observation-marker-format.d.ts +4 -0
- package/dist/src/domains/chat/tools/badges/sandbox-execution-badge.d.ts +4 -2
- package/dist/src/domains/chat/tools/badges/tool-badge.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/workspace-data-parts.d.ts +20 -0
- package/dist/src/domains/chat/tools/badges/workspace-link.d.ts +7 -0
- package/dist/src/domains/chat/tools/submit-plan-tool.d.ts +2 -1
- package/dist/src/domains/chat/tools/tool-card-kind.d.ts +2 -2
- package/dist/src/domains/memory/lib/observation-priority.d.ts +33 -0
- package/dist/src/domains/traces/components/thread-trace/index.d.ts +0 -4
- package/dist/src/domains/traces/components/trace-data-panel-view.stories.d.ts +1 -1
- package/dist/src/domains/workflows/components/workflow-layout.d.ts +1 -1
- package/dist/src/domains/workflows/utils/nested-workflows.d.ts +3 -3
- package/dist/src/domains/workflows/workflow-status-tone.d.ts +16 -0
- package/dist/src/ds/components/AlertDialog/alert-dialog.d.ts +15 -42
- package/dist/src/ds/components/Badge/Badge.d.ts +71 -21
- package/dist/src/ds/components/Badge/badge.stories.d.ts +10 -4
- package/dist/src/ds/components/CodeDiff/code-diff.d.ts +13 -3
- package/dist/src/ds/components/CodeDiff/code-diff.stories.d.ts +3 -0
- package/dist/src/ds/components/Combobox/combobox-styles.d.ts +1 -1
- package/dist/src/ds/components/Command/command.d.ts +3 -2
- package/dist/src/ds/components/DataList/data-list-root.d.ts +1 -1
- package/dist/src/ds/components/DataList/shared.d.ts +3 -3
- package/dist/src/ds/components/Dialog/dialog-action.d.ts +13 -2
- package/dist/src/ds/components/Dialog/dialog-confirmation.stories.d.ts +63 -0
- package/dist/src/ds/components/Dialog/dialog-context.d.ts +0 -2
- package/dist/src/ds/components/Dialog/dialog-shell.d.ts +3 -0
- package/dist/src/ds/components/Dialog/dialog.d.ts +20 -26
- package/dist/src/ds/components/Dialog/dialog.stories.d.ts +49 -7
- package/dist/src/ds/components/Dialog/index.d.ts +1 -1
- package/dist/src/ds/components/Entity/entity.stories.d.ts +0 -1
- package/dist/src/ds/components/ProductAvatar/ProductAvatar.d.ts +6 -0
- package/dist/src/ds/components/ProductAvatar/ProductIcon.d.ts +4 -0
- package/dist/src/ds/components/ProductAvatar/index.d.ts +3 -0
- package/dist/src/ds/components/ProductAvatar/product-avatar.stories.d.ts +19 -0
- package/dist/src/ds/components/ProductAvatar/product-identity.d.ts +11 -0
- package/dist/src/ds/components/ProductAvatar/products.stories.d.ts +7 -0
- package/dist/src/ds/components/ProductBadge/ProductBadge.d.ts +6 -0
- package/dist/src/ds/components/ProductBadge/index.d.ts +2 -0
- package/dist/src/ds/components/ProductBadge/product-badge.stories.d.ts +18 -0
- package/dist/src/ds/components/SankeyChart/index.d.ts +1 -1
- package/dist/src/ds/components/SankeyChart/sankey-chart.d.ts +3 -1
- package/dist/src/ds/components/SankeyChart/sankey-chart.stories.d.ts +1 -0
- package/dist/src/ds/components/SankeyChart/sankey-context.d.ts +3 -3
- package/dist/src/ds/components/SankeyChart/sankeyColor.d.ts +2 -6
- package/dist/src/ds/components/ScrollArea/scroll-area.d.ts +24 -44
- package/dist/src/ds/components/ScrollArea/scroll-area.stories.d.ts +1 -0
- package/dist/src/ds/components/Tabs/tabs-list.d.ts +1 -1
- package/dist/src/ds/components/ThreadList/thread-list.d.ts +3 -1
- package/dist/src/ds/components/ThreadList/thread-list.stories.d.ts +1 -0
- package/dist/src/ds/components/TokenBudget/tones.d.ts +3 -3
- package/dist/src/ds/components/Workflow/cards/workflow-card-badge-utils.d.ts +14 -14
- package/dist/src/ds/components/ai/activity/activity.d.ts +53 -0
- package/dist/src/ds/components/ai/activity/activity.stories.d.ts +337 -0
- package/dist/src/ds/components/ai/activity/index.d.ts +5 -0
- package/dist/src/ds/components/ai/activity/presets/message-preview.d.ts +2 -0
- package/dist/src/ds/components/ai/activity/presets/notification-activity.d.ts +16 -0
- package/dist/src/ds/components/ai/activity/presets/presets.stories.d.ts +40 -0
- package/dist/src/ds/components/ai/activity/presets/reasoning-activity.d.ts +5 -0
- package/dist/src/ds/components/ai/activity/presets/reasoning-activity.stories.d.ts +22 -0
- package/dist/src/ds/components/ai/activity/presets/reasoning-visibility.d.ts +6 -0
- package/dist/src/ds/components/ai/activity/presets/signal-activity.d.ts +9 -0
- package/dist/src/ds/components/ai/plan/plan.d.ts +2 -2
- package/dist/src/ds/components/ai/tool-call/index.d.ts +1 -1
- package/dist/src/ds/components/ai/tool-call/tool-call-arguments.d.ts +3 -6
- package/dist/src/ds/components/ai/tool-call/tool-call-group.d.ts +2 -2
- package/dist/src/ds/components/ai/tool-call/tool-call-mono.d.ts +10 -0
- package/dist/src/ds/components/ai/tool-call/tool-call-presentation.stories.d.ts +4 -4
- package/dist/src/ds/components/ai/tool-call/tool-presentation.d.ts +9 -1
- package/dist/src/ds/components/ai/transcript-divider/index.d.ts +2 -0
- package/dist/src/ds/components/ai/transcript-divider/stories/transcript-divider.stories.d.ts +25 -0
- package/dist/src/ds/components/ai/transcript-divider/transcript-divider.d.ts +5 -0
- package/dist/src/ds/new/layout/page-header/page-header-eyebrow.d.ts +3 -0
- package/dist/src/ds/new/layout/page-header/page-header-root.d.ts +2 -7
- package/dist/src/ds/new/layout/page-header/page-header.d.ts +3 -0
- package/dist/src/ds/new/layout/page-header/page-header.stories.d.ts +4 -2
- package/dist/src/ds/new/sidebar/sidebar-new-header.d.ts +6 -3
- package/dist/src/ds/new/sidebar/sidebar-new-root.d.ts +2 -1
- package/dist/src/ds/new/sidebar/sidebar-new.stories.d.ts +1 -0
- package/dist/src/ds/primitives/form-element.d.ts +3 -2
- package/dist/src/ds/primitives/transitions.d.ts +3 -6
- package/dist/src/ds/tokens/color-foundations.stories.d.ts +20 -4
- package/dist/src/ds/tokens/colors.d.ts +279 -49
- package/dist/src/ds/tokens/foundations-layout.d.ts +0 -1
- package/dist/src/ds/tokens/shadows.d.ts +0 -1
- package/dist/src/ee/signals/lifeline-row.d.ts +1 -2
- package/dist/src/ee/signals/signal-colors.d.ts +3 -7
- package/dist/src/ee/signals/theme-trend-chart.d.ts +2 -2
- package/dist/src/lib/colors.d.ts +11 -5
- package/dist/src/lib/framework.d.ts +4 -1
- package/dist/src/lib/merge-refs.d.ts +2 -0
- package/dist/style.css +1376 -2092
- package/dist/switch-88fWFfVz.js +104 -0
- package/dist/switch-88fWFfVz.js.map +1 -0
- package/dist/switch-Swt75_Sb.cjs +125 -0
- package/dist/switch-Swt75_Sb.cjs.map +1 -0
- package/dist/tabbed-container.css +1 -1
- package/dist/tabs-content-DQNRMjup.cjs +37 -0
- package/dist/tabs-content-DQNRMjup.cjs.map +1 -0
- package/dist/tabs-content-h2qqD8t-.js +35 -0
- package/dist/tabs-content-h2qqD8t-.js.map +1 -0
- package/dist/tabs-root-4vL8SHCO.js +315 -0
- package/dist/tabs-root-4vL8SHCO.js.map +1 -0
- package/dist/tabs-root-BqC8X_h6.cjs +318 -0
- package/dist/tabs-root-BqC8X_h6.cjs.map +1 -0
- package/dist/tabs-root.css +1 -1
- package/dist/tabs-tab-7e2as-AV.js +103 -0
- package/dist/tabs-tab-7e2as-AV.js.map +1 -0
- package/dist/tabs-tab-lm4xyjtD.cjs +107 -0
- package/dist/tabs-tab-lm4xyjtD.cjs.map +1 -0
- package/dist/text-and-icon-4eVhfmbb.cjs +25 -0
- package/dist/text-and-icon-4eVhfmbb.cjs.map +1 -0
- package/dist/text-and-icon-CuBm-Wjm.js +23 -0
- package/dist/text-and-icon-CuBm-Wjm.js.map +1 -0
- package/dist/text-field-block-DJsOk8dJ.js +56 -0
- package/dist/text-field-block-DJsOk8dJ.js.map +1 -0
- package/dist/text-field-block-DYOWjPgO.cjs +58 -0
- package/dist/text-field-block-DYOWjPgO.cjs.map +1 -0
- package/dist/textarea-field-block-C5fPL2Hn.cjs +54 -0
- package/dist/textarea-field-block-C5fPL2Hn.cjs.map +1 -0
- package/dist/textarea-field-block-DqTd31gF.js +52 -0
- package/dist/textarea-field-block-DqTd31gF.js.map +1 -0
- package/dist/thread-list-DGI6M6if.js +74 -0
- package/dist/thread-list-DGI6M6if.js.map +1 -0
- package/dist/thread-list-DwASH1Vl.cjs +81 -0
- package/dist/thread-list-DwASH1Vl.cjs.map +1 -0
- package/dist/time-picker-C0DCPWpR.cjs +78 -0
- package/dist/time-picker-C0DCPWpR.cjs.map +1 -0
- package/dist/time-picker-CfZbLgMm.js +76 -0
- package/dist/time-picker-CfZbLgMm.js.map +1 -0
- package/dist/toast.css +23 -28
- package/dist/tokens.cjs.js +291 -62
- package/dist/tokens.cjs.js.map +1 -1
- package/dist/tokens.es.js +291 -62
- package/dist/tokens.es.js.map +1 -1
- package/dist/tones-BRAQR5Yb.cjs +19 -0
- package/dist/tones-BRAQR5Yb.cjs.map +1 -0
- package/dist/tones-DVtXIMPY.js +16 -0
- package/dist/tones-DVtXIMPY.js.map +1 -0
- package/dist/tool-approval-BAER9nxR.cjs +80 -0
- package/dist/tool-approval-BAER9nxR.cjs.map +1 -0
- package/dist/tool-approval-xZvYiuBP.js +77 -0
- package/dist/tool-approval-xZvYiuBP.js.map +1 -0
- package/dist/tool-call-arguments-D7PMJ6vj.js +74 -0
- package/dist/tool-call-arguments-D7PMJ6vj.js.map +1 -0
- package/dist/tool-call-arguments-ynBfg2dY.cjs +77 -0
- package/dist/tool-call-arguments-ynBfg2dY.cjs.map +1 -0
- package/dist/tool-call-group-9Dtupqev.cjs +64 -0
- package/dist/tool-call-group-9Dtupqev.cjs.map +1 -0
- package/dist/tool-call-group-DJX7eUYY.js +62 -0
- package/dist/tool-call-group-DJX7eUYY.js.map +1 -0
- package/dist/tool-call-mono-DFSfVZ6E.cjs +36 -0
- package/dist/tool-call-mono-DFSfVZ6E.cjs.map +1 -0
- package/dist/tool-call-mono-gKG9Ek1m.js +33 -0
- package/dist/tool-call-mono-gKG9Ek1m.js.map +1 -0
- package/dist/tool-call-output-DEoCE_Xn.js +18 -0
- package/dist/tool-call-output-DEoCE_Xn.js.map +1 -0
- package/dist/tool-call-output-Dl4sVfCy.cjs +20 -0
- package/dist/tool-call-output-Dl4sVfCy.cjs.map +1 -0
- package/dist/tool-card-BA1YcDoS.js +417 -0
- package/dist/tool-card-BA1YcDoS.js.map +1 -0
- package/dist/tool-card-DRqhTx-u.cjs +422 -0
- package/dist/tool-card-DRqhTx-u.cjs.map +1 -0
- package/dist/tool-presentation-BXAo24Ir.js +100 -0
- package/dist/tool-presentation-BXAo24Ir.js.map +1 -0
- package/dist/tool-presentation-WLS6d1ws.cjs +107 -0
- package/dist/tool-presentation-WLS6d1ws.cjs.map +1 -0
- package/dist/traces-data-list-CU93pUfj.cjs +98 -0
- package/dist/traces-data-list-CU93pUfj.cjs.map +1 -0
- package/dist/traces-data-list-DaedGcID.js +96 -0
- package/dist/traces-data-list-DaedGcID.js.map +1 -0
- package/dist/use-text-highlight.css +6 -6
- package/dist/use-workflow-graph-runtime-D0ODPlNB.cjs +302 -0
- package/dist/use-workflow-graph-runtime-D0ODPlNB.cjs.map +1 -0
- package/dist/use-workflow-graph-runtime-XL5zreeR.js +297 -0
- package/dist/use-workflow-graph-runtime-XL5zreeR.js.map +1 -0
- package/dist/utils/colors.cjs.js +30 -14
- package/dist/utils/colors.cjs.js.map +1 -1
- package/dist/utils/colors.es.js +25 -12
- package/dist/utils/colors.es.js.map +1 -1
- package/dist/workflow-code-dialog-content-Iz2Omi1P.js +52 -0
- package/dist/workflow-code-dialog-content-Iz2Omi1P.js.map +1 -0
- package/dist/workflow-code-dialog-content-vLneZlMd.cjs +54 -0
- package/dist/workflow-code-dialog-content-vLneZlMd.cjs.map +1 -0
- package/dist/workflow-condition-card-B0Va5Amx.js +894 -0
- package/dist/workflow-condition-card-B0Va5Amx.js.map +1 -0
- package/dist/workflow-condition-card-CfjhZb0m.cjs +909 -0
- package/dist/workflow-condition-card-CfjhZb0m.cjs.map +1 -0
- package/dist/workflow-data-edge-view-DXeWURnc.cjs +77 -0
- package/dist/workflow-data-edge-view-DXeWURnc.cjs.map +1 -0
- package/dist/workflow-data-edge-view-o7akvbpB.js +75 -0
- package/dist/workflow-data-edge-view-o7akvbpB.js.map +1 -0
- package/dist/workflow-debug-controls-Bcb4vcek.cjs +60 -0
- package/dist/workflow-debug-controls-Bcb4vcek.cjs.map +1 -0
- package/dist/workflow-debug-controls-DULCFa4s.js +58 -0
- package/dist/workflow-debug-controls-DULCFa4s.js.map +1 -0
- package/dist/workflow-edge-data-button-BuZzeN2n.js +52 -0
- package/dist/workflow-edge-data-button-BuZzeN2n.js.map +1 -0
- package/dist/workflow-edge-data-button-CX-eSbSB.cjs +54 -0
- package/dist/workflow-edge-data-button-CX-eSbSB.cjs.map +1 -0
- package/dist/workflow-step-action-Cf_XmOwj.js +49 -0
- package/dist/workflow-step-action-Cf_XmOwj.js.map +1 -0
- package/dist/workflow-step-action-JMkWtObA.cjs +52 -0
- package/dist/workflow-step-action-JMkWtObA.cjs.map +1 -0
- package/package.json +11 -10
- package/theme/colors.css +367 -88
- package/theme/data-viz.css +77 -49
- package/theme/status.css +240 -84
- package/theme/surfaces.css +12 -13
- package/theme.css +3 -31
- package/dist/Badge-Bzn8Z-_I.js +0 -123
- package/dist/Badge-Bzn8Z-_I.js.map +0 -1
- package/dist/Badge-DFNxcz-r.cjs +0 -125
- package/dist/Badge-DFNxcz-r.cjs.map +0 -1
- package/dist/Button-BY9qlu8K.js +0 -200
- package/dist/Button-BY9qlu8K.js.map +0 -1
- package/dist/Button-CIwF6NHM.cjs +0 -204
- package/dist/Button-CIwF6NHM.cjs.map +0 -1
- package/dist/Card-BbwF20OW.cjs +0 -101
- package/dist/Card-BbwF20OW.cjs.map +0 -1
- package/dist/Card-DmT57Pve.js +0 -74
- package/dist/Card-DmT57Pve.js.map +0 -1
- package/dist/EmptyState-BOAT0jz8.cjs +0 -48
- package/dist/EmptyState-BOAT0jz8.cjs.map +0 -1
- package/dist/EmptyState-CkuPLncF.js +0 -46
- package/dist/EmptyState-CkuPLncF.js.map +0 -1
- package/dist/ErrorBoundary-B1D06D4e.cjs +0 -183
- package/dist/ErrorBoundary-B1D06D4e.cjs.map +0 -1
- package/dist/ErrorBoundary-D0kDb8Hn.js +0 -162
- package/dist/ErrorBoundary-D0kDb8Hn.js.map +0 -1
- package/dist/Notice-BiV6N8--.cjs +0 -91
- package/dist/Notice-BiV6N8--.cjs.map +0 -1
- package/dist/Notice-BmoN4qOw.js +0 -89
- package/dist/Notice-BmoN4qOw.js.map +0 -1
- package/dist/alert-dialog-izDBJ9YK.js +0 -107
- package/dist/alert-dialog-izDBJ9YK.js.map +0 -1
- package/dist/alert-dialog-mki13KEg.cjs +0 -128
- package/dist/alert-dialog-mki13KEg.cjs.map +0 -1
- package/dist/ask-user-CHG9S-yu.js +0 -206
- package/dist/ask-user-CHG9S-yu.js.map +0 -1
- package/dist/ask-user-CcFc15CY.cjs +0 -216
- package/dist/ask-user-CcFc15CY.cjs.map +0 -1
- package/dist/chat-notification-DtN7obXx.js +0 -107
- package/dist/chat-notification-DtN7obXx.js.map +0 -1
- package/dist/chat-notification-_JPCcwQQ.cjs +0 -111
- package/dist/chat-notification-_JPCcwQQ.cjs.map +0 -1
- package/dist/chat-signal-BE07bB83.cjs +0 -42
- package/dist/chat-signal-BE07bB83.cjs.map +0 -1
- package/dist/chat-signal-CQBY0aLn.js +0 -40
- package/dist/chat-signal-CQBY0aLn.js.map +0 -1
- package/dist/code-block-C6-5zM_o.cjs +0 -88
- package/dist/code-block-C6-5zM_o.cjs.map +0 -1
- package/dist/code-block-D-skg1p_.js +0 -86
- package/dist/code-block-D-skg1p_.js.map +0 -1
- package/dist/code-diff-BgmXIX2v.js +0 -145
- package/dist/code-diff-BgmXIX2v.js.map +0 -1
- package/dist/code-diff-yR3Gan2m.cjs +0 -147
- package/dist/code-diff-yR3Gan2m.cjs.map +0 -1
- package/dist/code-editor-By2dTBXC.cjs +0 -495
- package/dist/code-editor-By2dTBXC.cjs.map +0 -1
- package/dist/code-editor-F12uuTDl.js +0 -487
- package/dist/code-editor-F12uuTDl.js.map +0 -1
- package/dist/collapsible-BFSJouuI.cjs +0 -61
- package/dist/collapsible-BFSJouuI.cjs.map +0 -1
- package/dist/collapsible-DhhP5p1j.js +0 -57
- package/dist/collapsible-DhhP5p1j.js.map +0 -1
- package/dist/combobox-Bel2EaKX.js +0 -191
- package/dist/combobox-Bel2EaKX.js.map +0 -1
- package/dist/combobox-CJBXDMDk.cjs +0 -212
- package/dist/combobox-CJBXDMDk.cjs.map +0 -1
- package/dist/combobox-styles-BIiOaOkk.cjs +0 -97
- package/dist/combobox-styles-BIiOaOkk.cjs.map +0 -1
- package/dist/combobox-styles-DQ8EVIcc.js +0 -93
- package/dist/combobox-styles-DQ8EVIcc.js.map +0 -1
- package/dist/command-Cxdxr3on.js +0 -182
- package/dist/command-Cxdxr3on.js.map +0 -1
- package/dist/command-DCZJIsbf.cjs +0 -211
- package/dist/command-DCZJIsbf.cjs.map +0 -1
- package/dist/comment-C2XwbnAP.cjs +0 -214
- package/dist/comment-C2XwbnAP.cjs.map +0 -1
- package/dist/comment-DivGawYy.js +0 -202
- package/dist/comment-DivGawYy.js.map +0 -1
- package/dist/components/ai/chat-event.cjs.js +0 -42
- package/dist/components/ai/chat-event.cjs.js.map +0 -1
- package/dist/components/ai/chat-event.d.ts +0 -2
- package/dist/components/ai/chat-event.es.js +0 -36
- package/dist/components/ai/chat-event.es.js.map +0 -1
- package/dist/composer-B_Err196.cjs +0 -156
- package/dist/composer-B_Err196.cjs.map +0 -1
- package/dist/composer-DJGAoBcn.js +0 -148
- package/dist/composer-DJGAoBcn.js.map +0 -1
- package/dist/copy-button-1PyYnSGS.cjs +0 -38
- package/dist/copy-button-1PyYnSGS.cjs.map +0 -1
- package/dist/copy-button-u3gk4RoJ.js +0 -36
- package/dist/copy-button-u3gk4RoJ.js.map +0 -1
- package/dist/data-code-section-DJYrPSas.cjs +0 -201
- package/dist/data-code-section-DJYrPSas.cjs.map +0 -1
- package/dist/data-code-section-kJ4tC12g.js +0 -199
- package/dist/data-code-section-kJ4tC12g.js.map +0 -1
- package/dist/data-keys-and-values-OR8KkBEc.cjs +0 -109
- package/dist/data-keys-and-values-OR8KkBEc.cjs.map +0 -1
- package/dist/data-keys-and-values-uWBaTX6Y.js +0 -107
- package/dist/data-keys-and-values-uWBaTX6Y.js.map +0 -1
- package/dist/data-list-DEKEzLzK.cjs +0 -125
- package/dist/data-list-DEKEzLzK.cjs.map +0 -1
- package/dist/data-list-skeleton-COqiIiMk.js +0 -36
- package/dist/data-list-skeleton-COqiIiMk.js.map +0 -1
- package/dist/data-list-skeleton-xdEctGVs.cjs +0 -38
- package/dist/data-list-skeleton-xdEctGVs.cjs.map +0 -1
- package/dist/data-list-spacer-CcY4Md1u.js +0 -200
- package/dist/data-list-spacer-CcY4Md1u.js.map +0 -1
- package/dist/data-list-spacer-Duvki6d9.cjs +0 -209
- package/dist/data-list-spacer-Duvki6d9.cjs.map +0 -1
- package/dist/data-list-top-C3SvVMNH.js +0 -357
- package/dist/data-list-top-C3SvVMNH.js.map +0 -1
- package/dist/data-list-top-CbWpkCBc.cjs +0 -382
- package/dist/data-list-top-CbWpkCBc.cjs.map +0 -1
- package/dist/data-list-u1TC5cbd.js +0 -121
- package/dist/data-list-u1TC5cbd.js.map +0 -1
- package/dist/data-panel-D2kZv9vY.cjs +0 -270
- package/dist/data-panel-D2kZv9vY.cjs.map +0 -1
- package/dist/data-panel-DzzwYYxO.js +0 -250
- package/dist/data-panel-DzzwYYxO.js.map +0 -1
- package/dist/date-time-range-picker-B3L39JoT.cjs +0 -180
- package/dist/date-time-range-picker-B3L39JoT.cjs.map +0 -1
- package/dist/date-time-range-picker-CVAK6Nas.js +0 -178
- package/dist/date-time-range-picker-CVAK6Nas.js.map +0 -1
- package/dist/dialog-75R05iBY.cjs +0 -29
- package/dist/dialog-75R05iBY.cjs.map +0 -1
- package/dist/dialog-BpW3qHc1.js +0 -8
- package/dist/dialog-BpW3qHc1.js.map +0 -1
- package/dist/dialog-CDg8uu4t.cjs +0 -280
- package/dist/dialog-CDg8uu4t.cjs.map +0 -1
- package/dist/dialog-CZBP5xw9.js +0 -246
- package/dist/dialog-CZBP5xw9.js.map +0 -1
- package/dist/dialog-action-BmUMDvL5.cjs +0 -185
- package/dist/dialog-action-BmUMDvL5.cjs.map +0 -1
- package/dist/dialog-action-DF5s1_r9.js +0 -183
- package/dist/dialog-action-DF5s1_r9.js.map +0 -1
- package/dist/domains/chat/messages/notification-signal-notice-variant.cjs.js +0 -19
- package/dist/domains/chat/messages/notification-signal-notice-variant.cjs.js.map +0 -1
- package/dist/domains/chat/messages/notification-signal-notice-variant.d.ts +0 -2
- package/dist/domains/chat/messages/notification-signal-notice-variant.es.js +0 -15
- package/dist/domains/chat/messages/notification-signal-notice-variant.es.js.map +0 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.cjs.js +0 -25
- package/dist/domains/chat/messages/reasoning-streaming-line.cjs.js.map +0 -1
- package/dist/domains/chat/messages/reasoning-streaming-line.d.ts +0 -2
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js +0 -21
- package/dist/domains/chat/messages/reasoning-streaming-line.es.js.map +0 -1
- package/dist/domains/chat/messages/reasoning.cjs.js +0 -27
- package/dist/domains/chat/messages/reasoning.cjs.js.map +0 -1
- package/dist/domains/chat/messages/reasoning.d.ts +0 -2
- package/dist/domains/chat/messages/reasoning.es.js +0 -23
- package/dist/domains/chat/messages/reasoning.es.js.map +0 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.cjs.js +0 -35
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.cjs.js.map +0 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.d.ts +0 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.es.js +0 -31
- package/dist/domains/traces/components/thread-trace/thread-trace-rail.es.js.map +0 -1
- package/dist/domains/traces/hooks/use-thread-rail-turns.cjs.js +0 -26
- package/dist/domains/traces/hooks/use-thread-rail-turns.cjs.js.map +0 -1
- package/dist/domains/traces/hooks/use-thread-rail-turns.d.ts +0 -2
- package/dist/domains/traces/hooks/use-thread-rail-turns.es.js +0 -21
- package/dist/domains/traces/hooks/use-thread-rail-turns.es.js.map +0 -1
- package/dist/drawer-C1VyTeuX.js +0 -327
- package/dist/drawer-C1VyTeuX.js.map +0 -1
- package/dist/drawer-tUWEluOi.cjs +0 -365
- package/dist/drawer-tUWEluOi.cjs.map +0 -1
- package/dist/field-block-BG5E7u9v.cjs +0 -87
- package/dist/field-block-BG5E7u9v.cjs.map +0 -1
- package/dist/field-block-BRLwud-v.js +0 -85
- package/dist/field-block-BRLwud-v.js.map +0 -1
- package/dist/field-block-error-msg-Y0fi0HUC.js +0 -22
- package/dist/field-block-error-msg-Y0fi0HUC.js.map +0 -1
- package/dist/field-block-error-msg-oudJz2Hx.cjs +0 -24
- package/dist/field-block-error-msg-oudJz2Hx.cjs.map +0 -1
- package/dist/filter-bar-chip-BgrXebUP.cjs +0 -1233
- package/dist/filter-bar-chip-BgrXebUP.cjs.map +0 -1
- package/dist/filter-bar-chip-Dp-MJ5gB.js +0 -1211
- package/dist/filter-bar-chip-Dp-MJ5gB.js.map +0 -1
- package/dist/horizontal-bars-43dr_F8j.cjs +0 -141
- package/dist/horizontal-bars-43dr_F8j.cjs.map +0 -1
- package/dist/horizontal-bars-DsTY4Y1M.js +0 -139
- package/dist/horizontal-bars-DsTY4Y1M.js.map +0 -1
- package/dist/input-group-CMFu6PUv.js +0 -196
- package/dist/input-group-CMFu6PUv.js.map +0 -1
- package/dist/input-group-mWZK0Lpw.cjs +0 -222
- package/dist/input-group-mWZK0Lpw.cjs.map +0 -1
- package/dist/list-search-BXoac6o3.js +0 -69
- package/dist/list-search-BXoac6o3.js.map +0 -1
- package/dist/list-search-Cuv2Y2J_.cjs +0 -71
- package/dist/list-search-Cuv2Y2J_.cjs.map +0 -1
- package/dist/logs-data-list-CHKSTiQb.js +0 -81
- package/dist/logs-data-list-CHKSTiQb.js.map +0 -1
- package/dist/logs-data-list-D-_gGvS8.cjs +0 -83
- package/dist/logs-data-list-D-_gGvS8.cjs.map +0 -1
- package/dist/main-sidebar-CIiWGCgI.js +0 -898
- package/dist/main-sidebar-CIiWGCgI.js.map +0 -1
- package/dist/main-sidebar-CV19jNRC.cjs +0 -916
- package/dist/main-sidebar-CV19jNRC.cjs.map +0 -1
- package/dist/markdown-renderer-DLehCdpz.cjs +0 -409
- package/dist/markdown-renderer-DLehCdpz.cjs.map +0 -1
- package/dist/markdown-renderer-DdD4LqK4.js +0 -407
- package/dist/markdown-renderer-DdD4LqK4.js.map +0 -1
- package/dist/message-D9b33Pf_.cjs +0 -66
- package/dist/message-D9b33Pf_.cjs.map +0 -1
- package/dist/message-DRb9nopu.js +0 -62
- package/dist/message-DRb9nopu.js.map +0 -1
- package/dist/message-copy-button-B7wrqavw.cjs +0 -11
- package/dist/message-copy-button-B7wrqavw.cjs.map +0 -1
- package/dist/message-copy-button-DyrD6I3O.js +0 -9
- package/dist/message-copy-button-DyrD6I3O.js.map +0 -1
- package/dist/message-scroller-c22pIucB.cjs +0 -860
- package/dist/message-scroller-c22pIucB.cjs.map +0 -1
- package/dist/message-scroller-context-DFynTlSh.js +0 -23
- package/dist/message-scroller-context-DFynTlSh.js.map +0 -1
- package/dist/message-scroller-hooks-BLilySMj.js +0 -46
- package/dist/message-scroller-hooks-BLilySMj.js.map +0 -1
- package/dist/message-scroller-v1kQVq2v.js +0 -834
- package/dist/message-scroller-v1kQVq2v.js.map +0 -1
- package/dist/metrics-card-C2RTi5Ew.js +0 -93
- package/dist/metrics-card-C2RTi5Ew.js.map +0 -1
- package/dist/metrics-card-DzcVJTAN.cjs +0 -95
- package/dist/metrics-card-DzcVJTAN.cjs.map +0 -1
- package/dist/metrics-kpi-card-BVCuXeDa.js +0 -94
- package/dist/metrics-kpi-card-BVCuXeDa.js.map +0 -1
- package/dist/metrics-kpi-card-DoIeHfv6.cjs +0 -96
- package/dist/metrics-kpi-card-DoIeHfv6.cjs.map +0 -1
- package/dist/metrics-line-chart-CwvP8dUo.js +0 -102
- package/dist/metrics-line-chart-CwvP8dUo.js.map +0 -1
- package/dist/metrics-line-chart-kz8QgD9q.cjs +0 -104
- package/dist/metrics-line-chart-kz8QgD9q.cjs.map +0 -1
- package/dist/metrics-line-chart-tooltip-Bp7Giyp9.js +0 -50
- package/dist/metrics-line-chart-tooltip-Bp7Giyp9.js.map +0 -1
- package/dist/metrics-line-chart-tooltip-Dp34Hg6w.cjs +0 -53
- package/dist/metrics-line-chart-tooltip-Dp34Hg6w.cjs.map +0 -1
- package/dist/page-header-BGyZw13s.js +0 -115
- package/dist/page-header-BGyZw13s.js.map +0 -1
- package/dist/page-header-CqvBk1wE.cjs +0 -117
- package/dist/page-header-CqvBk1wE.cjs.map +0 -1
- package/dist/plan--c77t-qX.cjs +0 -206
- package/dist/plan--c77t-qX.cjs.map +0 -1
- package/dist/plan-fhKsQQAW.js +0 -189
- package/dist/plan-fhKsQQAW.js.map +0 -1
- package/dist/property-filter-applied-D9ic9S7S.js +0 -337
- package/dist/property-filter-applied-D9ic9S7S.js.map +0 -1
- package/dist/property-filter-applied-FrNNM2Aa.cjs +0 -341
- package/dist/property-filter-applied-FrNNM2Aa.cjs.map +0 -1
- package/dist/relative-timestamp-BqGyFlxW.cjs +0 -120
- package/dist/relative-timestamp-BqGyFlxW.cjs.map +0 -1
- package/dist/relative-timestamp-DXBeY2hD.js +0 -118
- package/dist/relative-timestamp-DXBeY2hD.js.map +0 -1
- package/dist/sankey-chart-C1e0nRc3.cjs +0 -926
- package/dist/sankey-chart-C1e0nRc3.cjs.map +0 -1
- package/dist/sankey-chart-jvMXKzud.js +0 -916
- package/dist/sankey-chart-jvMXKzud.js.map +0 -1
- package/dist/sankeyColor-BoMbAWtq.js +0 -48
- package/dist/sankeyColor-BoMbAWtq.js.map +0 -1
- package/dist/sankeyColor-DHE7ggh8.cjs +0 -53
- package/dist/sankeyColor-DHE7ggh8.cjs.map +0 -1
- package/dist/scroll-area-BzOyuS8Y.cjs +0 -249
- package/dist/scroll-area-BzOyuS8Y.cjs.map +0 -1
- package/dist/scroll-area-DyTZoISq.js +0 -227
- package/dist/scroll-area-DyTZoISq.js.map +0 -1
- package/dist/search-field-block-Bcgo08Vu.cjs +0 -127
- package/dist/search-field-block-Bcgo08Vu.cjs.map +0 -1
- package/dist/search-field-block-ClMMuCq0.js +0 -125
- package/dist/search-field-block-ClMMuCq0.js.map +0 -1
- package/dist/section-9Aqb0bt8.js +0 -110
- package/dist/section-9Aqb0bt8.js.map +0 -1
- package/dist/section-DkqPjf8E.cjs +0 -114
- package/dist/section-DkqPjf8E.cjs.map +0 -1
- package/dist/select-B_xxIbdq.js +0 -138
- package/dist/select-B_xxIbdq.js.map +0 -1
- package/dist/select-C2IbXjKQ.cjs +0 -164
- package/dist/select-C2IbXjKQ.cjs.map +0 -1
- package/dist/select-field-block-Bkt0eE15.js +0 -59
- package/dist/select-field-block-Bkt0eE15.js.map +0 -1
- package/dist/select-field-block-X1b2lzJ-.cjs +0 -61
- package/dist/select-field-block-X1b2lzJ-.cjs.map +0 -1
- package/dist/settings-row-DYEDiq6R.js +0 -117
- package/dist/settings-row-DYEDiq6R.js.map +0 -1
- package/dist/settings-row-DrVBY0qS.cjs +0 -122
- package/dist/settings-row-DrVBY0qS.cjs.map +0 -1
- package/dist/side-dialog-2JVgN0vs.cjs +0 -294
- package/dist/side-dialog-2JVgN0vs.cjs.map +0 -1
- package/dist/side-dialog-BCREZ1dF.js +0 -274
- package/dist/side-dialog-BCREZ1dF.js.map +0 -1
- package/dist/signals-empty-state.css +0 -54
- package/dist/slider-C-Fda4HC.cjs +0 -97
- package/dist/slider-C-Fda4HC.cjs.map +0 -1
- package/dist/slider-MM3K0Pyv.js +0 -95
- package/dist/slider-MM3K0Pyv.js.map +0 -1
- package/dist/span-payload-primitives-CDE-brSn.js +0 -68
- package/dist/span-payload-primitives-CDE-brSn.js.map +0 -1
- package/dist/span-payload-primitives-CcRvL12M.cjs +0 -75
- package/dist/span-payload-primitives-CcRvL12M.cjs.map +0 -1
- package/dist/src/domains/chat/messages/notification-signal-notice-variant.d.ts +0 -1
- package/dist/src/domains/chat/messages/reasoning-streaming-line.d.ts +0 -4
- package/dist/src/domains/chat/messages/reasoning.d.ts +0 -8
- package/dist/src/domains/chat/stories/reasoning.stories.d.ts +0 -21
- package/dist/src/domains/chat/stories/signals.stories.d.ts +0 -17
- package/dist/src/domains/chat/stories/system-reminders.stories.d.ts +0 -15
- package/dist/src/domains/traces/components/thread-trace/thread-trace-rail.d.ts +0 -9
- package/dist/src/domains/traces/hooks/use-thread-rail-turns.d.ts +0 -8
- package/dist/src/ds/components/Dialog/dialog-new-variant.stories.d.ts +0 -64
- package/dist/src/ds/components/ai/chat-event/chat-event-preview.d.ts +0 -1
- package/dist/src/ds/components/ai/chat-event/chat-event.d.ts +0 -14
- package/dist/src/ds/components/ai/chat-event/chat-notification.d.ts +0 -17
- package/dist/src/ds/components/ai/chat-event/chat-signal.d.ts +0 -9
- package/dist/src/ds/components/ai/chat-event/chat-skill.d.ts +0 -7
- package/dist/src/ds/components/ai/chat-event/chat-time-gap.d.ts +0 -3
- package/dist/src/ds/components/ai/chat-event/index.d.ts +0 -7
- package/dist/src/ds/components/ai/chat-event/notification-variant.d.ts +0 -2
- package/dist/src/ds/components/ai/chat-event/stories/notification.stories.d.ts +0 -59
- package/dist/src/ds/components/ai/chat-event/stories/signal.stories.d.ts +0 -46
- package/dist/src/ds/components/ai/chat-event/stories/skill.stories.d.ts +0 -29
- package/dist/src/ds/components/ai/chat-event/stories/time-gap.stories.d.ts +0 -16
- package/dist/src/ds/components/ai/tool-call/tool-call.d.ts +0 -47
- package/dist/src/ds/components/ai/tool-call/tool-call.stories.d.ts +0 -9
- package/dist/src/lib/as-child.d.ts +0 -22
- package/dist/switch-6125Oajw.cjs +0 -124
- package/dist/switch-6125Oajw.cjs.map +0 -1
- package/dist/switch-CE9jTpUG.js +0 -103
- package/dist/switch-CE9jTpUG.js.map +0 -1
- package/dist/tabs-content-C3x4OoZ_.js +0 -35
- package/dist/tabs-content-C3x4OoZ_.js.map +0 -1
- package/dist/tabs-content-DKELc1lK.cjs +0 -37
- package/dist/tabs-content-DKELc1lK.cjs.map +0 -1
- package/dist/tabs-root-5s72GhmI.cjs +0 -315
- package/dist/tabs-root-5s72GhmI.cjs.map +0 -1
- package/dist/tabs-root-Dh-McKbO.js +0 -312
- package/dist/tabs-root-Dh-McKbO.js.map +0 -1
- package/dist/tabs-tab-BDdO7sWN.js +0 -103
- package/dist/tabs-tab-BDdO7sWN.js.map +0 -1
- package/dist/tabs-tab-BzurlE52.cjs +0 -107
- package/dist/tabs-tab-BzurlE52.cjs.map +0 -1
- package/dist/text-and-icon-BcHVl157.cjs +0 -21
- package/dist/text-and-icon-BcHVl157.cjs.map +0 -1
- package/dist/text-and-icon-wzPA3yr_.js +0 -19
- package/dist/text-and-icon-wzPA3yr_.js.map +0 -1
- package/dist/text-field-block-BCOCO1W2.cjs +0 -58
- package/dist/text-field-block-BCOCO1W2.cjs.map +0 -1
- package/dist/text-field-block-yNMK8lM0.js +0 -56
- package/dist/text-field-block-yNMK8lM0.js.map +0 -1
- package/dist/textarea-field-block-CQOWTloR.js +0 -52
- package/dist/textarea-field-block-CQOWTloR.js.map +0 -1
- package/dist/textarea-field-block-DlV3zmOi.cjs +0 -54
- package/dist/textarea-field-block-DlV3zmOi.cjs.map +0 -1
- package/dist/thread-list-D7x7cggy.js +0 -72
- package/dist/thread-list-D7x7cggy.js.map +0 -1
- package/dist/thread-list-RfLw5JAn.cjs +0 -79
- package/dist/thread-list-RfLw5JAn.cjs.map +0 -1
- package/dist/thread-rail-BVpfkSyT.cjs +0 -343
- package/dist/thread-rail-BVpfkSyT.cjs.map +0 -1
- package/dist/thread-rail-DV89nFnn.js +0 -322
- package/dist/thread-rail-DV89nFnn.js.map +0 -1
- package/dist/thread-rail-turns-Co78M03v.cjs +0 -100
- package/dist/thread-rail-turns-Co78M03v.cjs.map +0 -1
- package/dist/thread-rail-turns-DmOL1kzt.js +0 -96
- package/dist/thread-rail-turns-DmOL1kzt.js.map +0 -1
- package/dist/time-picker-CkP8lNtI.js +0 -76
- package/dist/time-picker-CkP8lNtI.js.map +0 -1
- package/dist/time-picker-WCUzLJ-U.cjs +0 -78
- package/dist/time-picker-WCUzLJ-U.cjs.map +0 -1
- package/dist/tones-BGChDydJ.cjs +0 -19
- package/dist/tones-BGChDydJ.cjs.map +0 -1
- package/dist/tones-CzIKDKD-.js +0 -16
- package/dist/tones-CzIKDKD-.js.map +0 -1
- package/dist/tool-approval-D4_2Gc8e.cjs +0 -69
- package/dist/tool-approval-D4_2Gc8e.cjs.map +0 -1
- package/dist/tool-approval-gmDi8ZMB.js +0 -66
- package/dist/tool-approval-gmDi8ZMB.js.map +0 -1
- package/dist/tool-call-B0BQizdj.js +0 -185
- package/dist/tool-call-B0BQizdj.js.map +0 -1
- package/dist/tool-call-DELhfAdn.cjs +0 -200
- package/dist/tool-call-DELhfAdn.cjs.map +0 -1
- package/dist/tool-call-group-BfKO02wG.js +0 -62
- package/dist/tool-call-group-BfKO02wG.js.map +0 -1
- package/dist/tool-call-group-vZw3eZ_G.cjs +0 -64
- package/dist/tool-call-group-vZw3eZ_G.cjs.map +0 -1
- package/dist/tool-call-output-BFkL6RFA.cjs +0 -101
- package/dist/tool-call-output-BFkL6RFA.cjs.map +0 -1
- package/dist/tool-call-output-ChJk9-Za.js +0 -95
- package/dist/tool-call-output-ChJk9-Za.js.map +0 -1
- package/dist/tool-card-CBDOgK2M.cjs +0 -430
- package/dist/tool-card-CBDOgK2M.cjs.map +0 -1
- package/dist/tool-card-LAvGC99j.js +0 -425
- package/dist/tool-card-LAvGC99j.js.map +0 -1
- package/dist/tool-presentation-C7aizVF5.js +0 -90
- package/dist/tool-presentation-C7aizVF5.js.map +0 -1
- package/dist/tool-presentation-CupoLbdM.cjs +0 -95
- package/dist/tool-presentation-CupoLbdM.cjs.map +0 -1
- package/dist/traces-data-list-DjYZ6I61.js +0 -95
- package/dist/traces-data-list-DjYZ6I61.js.map +0 -1
- package/dist/traces-data-list-wzaZ6SKO.cjs +0 -97
- package/dist/traces-data-list-wzaZ6SKO.cjs.map +0 -1
- package/dist/use-workflow-graph-runtime-Bb0Hogzq.js +0 -297
- package/dist/use-workflow-graph-runtime-Bb0Hogzq.js.map +0 -1
- package/dist/use-workflow-graph-runtime-BsBMVYQ7.cjs +0 -302
- package/dist/use-workflow-graph-runtime-BsBMVYQ7.cjs.map +0 -1
- package/dist/workflow-code-dialog-content-BcT4gT_3.js +0 -52
- package/dist/workflow-code-dialog-content-BcT4gT_3.js.map +0 -1
- package/dist/workflow-code-dialog-content-Bw7nXZzf.cjs +0 -54
- package/dist/workflow-code-dialog-content-Bw7nXZzf.cjs.map +0 -1
- package/dist/workflow-condition-card-BMgzF6ef.cjs +0 -901
- package/dist/workflow-condition-card-BMgzF6ef.cjs.map +0 -1
- package/dist/workflow-condition-card-Ch_oHojN.js +0 -886
- package/dist/workflow-condition-card-Ch_oHojN.js.map +0 -1
- package/dist/workflow-data-edge-view-BgzJznv3.cjs +0 -77
- package/dist/workflow-data-edge-view-BgzJznv3.cjs.map +0 -1
- package/dist/workflow-data-edge-view-BhmhXi0X.js +0 -75
- package/dist/workflow-data-edge-view-BhmhXi0X.js.map +0 -1
- package/dist/workflow-debug-controls-CyeClKLl.cjs +0 -59
- package/dist/workflow-debug-controls-CyeClKLl.cjs.map +0 -1
- package/dist/workflow-debug-controls-DTG9uMPM.js +0 -57
- package/dist/workflow-debug-controls-DTG9uMPM.js.map +0 -1
- package/dist/workflow-edge-data-button-CfGM-0WO.cjs +0 -54
- package/dist/workflow-edge-data-button-CfGM-0WO.cjs.map +0 -1
- package/dist/workflow-edge-data-button-DAm2Y2eu.js +0 -52
- package/dist/workflow-edge-data-button-DAm2Y2eu.js.map +0 -1
- package/dist/workflow-step-action-CXafz2Ie.cjs +0 -52
- package/dist/workflow-step-action-CXafz2Ie.cjs.map +0 -1
- package/dist/workflow-step-action-DQaryuQe.js +0 -49
- package/dist/workflow-step-action-DQaryuQe.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observation-marker-badge.es.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-badge.tsx"],"sourcesContent":["import { Brain, XCircle, Loader2, ChevronDown, ChevronRight, Unplug, Eye } from 'lucide-react';\nimport { useState, useEffect } from 'react';\nimport { ObservationRenderer } from './observation-renderer';\nimport { Badge } from '@/ds/components/Badge';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt/Txt';\nimport { Icon } from '@/ds/icons/Icon';\nimport { cn } from '@/utils/cn';\nimport { formatDuration } from '@/utils/duration';\n\nexport interface OmMarkerData {\n observedAt?: string;\n completedAt?: string;\n failedAt?: string;\n startedAt?: string;\n tokensObserved?: number;\n tokensToObserve?: number;\n observationTokens?: number;\n observations?: string;\n currentTask?: string;\n suggestedResponse?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n durationMs?: number;\n error?: string;\n recordId?: string;\n cycleId?: string;\n threadId?: string;\n threadIds?: string[];\n operationType?: 'observation' | 'reflection';\n _state?: 'loading' | 'complete' | 'failed' | 'buffering' | 'buffering-complete' | 'buffering-failed' | 'activated';\n // Activation-specific fields\n chunksActivated?: number;\n tokensActivated?: number;\n messagesActivated?: number;\n config?: {\n scope?: string;\n messageTokens?: number;\n observationTokens?: number;\n };\n // Buffering-specific fields\n tokensToBuffer?: number;\n tokensBuffered?: number;\n bufferedTokens?: number;\n}\n\nexport interface ObservationMarkerBadgeProps {\n toolName: string;\n args: Record<string, unknown>;\n metadata?: {\n mode?: string;\n omData?: OmMarkerData;\n };\n}\n\n/**\n * Format token count for display (e.g., 7234 -> \"7.2k\", 234 -> \"234\")\n */\nconst formatTokens = (tokens: number): string => {\n if (tokens >= 1000) {\n return `${(tokens / 1000).toFixed(1)}k`;\n }\n return String(Math.round(tokens));\n};\n\nconst hasExtractedValue = (value: unknown) => value !== undefined && value !== null && value !== '';\n\nconst getExtractedValueEntries = (values?: Record<string, unknown>) => {\n return Object.entries(values ?? {}).filter(([, value]) => hasExtractedValue(value));\n};\n\nconst formatExtractedValue = (value: unknown): string => {\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean') return String(value);\n\n try {\n return JSON.stringify(value, null, 2) ?? String(value);\n } catch {\n return String(value);\n }\n};\n\nconst isStructuredExtractedValue = (value: unknown) => typeof value === 'object' && value !== null;\n\nconst ObservationIcon = ({ className }: { className?: string }) => <Eye className={className} />;\n\nconst MarkerPill = ({\n children,\n icon,\n expanded,\n onClick,\n className,\n}: {\n children: React.ReactNode;\n icon: React.ReactNode;\n expanded?: boolean;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n className?: string;\n}) => {\n const content = (\n <>\n {onClick && (\n <Icon>\n <ChevronDown className={cn('transition-all', expanded ? 'rotate-0' : '-rotate-90')} />\n </Icon>\n )}\n <Badge icon={icon}>{children}</Badge>\n </>\n );\n\n if (!onClick) {\n return <div className={cn('inline-flex items-center gap-2', className)}>{content}</div>;\n }\n\n return (\n <button onClick={onClick} className={cn('inline-flex items-center gap-2', className)} type=\"button\">\n {content}\n </button>\n );\n};\n\nconst ExtractedValuesPanel = ({\n extractedValues,\n extractionFailures,\n isExpanded,\n onToggle,\n}: {\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n isExpanded: boolean;\n onToggle: () => void;\n}) => {\n const entries = getExtractedValueEntries(extractedValues);\n const failures = extractionFailures ?? [];\n\n if (entries.length === 0 && failures.length === 0) return null;\n\n return (\n <div className=\"mt-2 border-t border-border pt-2\">\n <button\n onClick={onToggle}\n className=\"flex items-center gap-1 text-meta tracking-wide text-foreground uppercase transition-opacity hover:opacity-80\"\n >\n {isExpanded ? <ChevronDown className=\"size-2.5\" /> : <ChevronRight className=\"size-2.5\" />}\n Extractions ({entries.length}){failures.length > 0 ? ` · ${failures.length} failed` : ''}\n </button>\n {isExpanded && (\n <div className=\"mt-1 space-y-2\">\n {entries.map(([slug, value]) => (\n <div key={slug} className=\"rounded border border-border bg-fill-subtle p-2\">\n <div className=\"text-meta tracking-wide text-foreground/70 uppercase\">{slug}</div>\n {isStructuredExtractedValue(value) ? (\n <pre className=\"mt-1 max-h-40 overflow-auto text-caption break-words whitespace-pre-wrap text-foreground/80\">\n {formatExtractedValue(value)}\n </pre>\n ) : (\n <div className=\"mt-1 [&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta\">\n <MarkdownRenderer className=\"text-caption text-foreground/80\">\n {formatExtractedValue(value)}\n </MarkdownRenderer>\n </div>\n )}\n </div>\n ))}\n {failures.map(failure => (\n <div key={failure.slug} className=\"rounded border border-red-500/20 bg-red-500/5 p-2 text-red-700\">\n <div className=\"text-meta tracking-wide uppercase\">{failure.slug}</div>\n <div className=\"mt-1 text-caption\">{failure.error}</div>\n </div>\n ))}\n </div>\n )}\n </div>\n );\n};\n\n/**\n * Renders an inline badge for OM observation markers.\n * These are converted from data-om-* parts to tool-call format for assistant-ui compatibility.\n *\n * The badge includes a `data-om-badge` attribute with the cycleId so that\n * the BracketOverlay can find it via DOM queries for positioning bracket lines.\n */\nexport const ObservationMarkerBadge = ({ toolName, args, metadata }: ObservationMarkerBadgeProps) => {\n const omData = (metadata?.omData || args) as OmMarkerData;\n const cycleId = omData.cycleId || '';\n\n // Use the _state field set during part merging, or fallback to detecting from data\n const state =\n omData._state ||\n (omData.failedAt\n ? 'failed'\n : omData.completedAt\n ? 'complete'\n : (omData as any).disconnectedAt\n ? 'disconnected'\n : 'loading');\n\n const isStart = state === 'loading';\n const isEnd = state === 'complete';\n const isFailed = state === 'failed';\n const isDisconnected = state === 'disconnected';\n const isBuffering = state === 'buffering';\n const isBufferingComplete = state === 'buffering-complete';\n const isBufferingFailed = state === 'buffering-failed';\n const isActivated = state === 'activated';\n const isReflection = omData.operationType === 'reflection';\n const hasExtractionContent =\n getExtractedValueEntries(omData.extractedValues).length > 0 || (omData.extractionFailures?.length ?? 0) > 0;\n const shouldAutoExpand = (isFailed && isReflection) || hasExtractionContent;\n\n // Failed reflections and extraction-bearing markers should expand by default to draw attention to new details.\n const [isExpanded, setIsExpanded] = useState(shouldAutoExpand);\n\n // Auto-expand when completion details arrive after the marker was mounted during loading.\n useEffect(() => {\n if (shouldAutoExpand) {\n setIsExpanded(true);\n }\n }, [shouldAutoExpand]);\n const [isObservationsExpanded, setIsObservationsExpanded] = useState(true);\n const [isTaskExpanded, setIsTaskExpanded] = useState(false);\n const [isResponseExpanded, setIsResponseExpanded] = useState(false);\n const [isExtractedExpanded, setIsExtractedExpanded] = useState(false);\n\n // Colors - same scheme for both observation and reflection\n const bgColor = 'bg-blue-500/10';\n const textColor = 'text-blue-600';\n const completeBgColor = 'bg-green-500/10';\n const completeTextColor = 'text-green-600';\n const completeHoverBgColor = 'hover:bg-green-500/20';\n // Same colors for expanded state\n const expandedBgColor = 'bg-green-500/5';\n const expandedBorderColor = 'border-green-500/10';\n const labelColor = 'text-green-600';\n const bufferExpandedBgColor = 'bg-background';\n const bufferExpandedBorderColor = 'border-border-1';\n const actionLabel = isReflection ? 'Reflecting' : 'Observing';\n const completedLabel = isReflection ? 'Reflected' : 'Observed';\n\n // Render based on marker type\n if (isStart) {\n const tokensToObserve = omData.tokensToObserve;\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div\n className={`inline-flex items-center gap-1.5 rounded-md px-2 py-1 ${bgColor} ${textColor} my-1 text-column`}\n >\n <Loader2 className=\"size-3 animate-spin\" />\n {isReflection ? <Brain className=\"size-3\" /> : <ObservationIcon className=\"size-3\" />}\n <span>\n {actionLabel}\n {tokensToObserve ? ` ~${formatTokens(tokensToObserve)} tokens` : '...'}\n </span>\n </div>\n </div>\n );\n }\n\n if (isEnd) {\n const tokensObserved = omData.tokensObserved;\n const observationTokens = omData.observationTokens;\n const observations = omData.observations;\n const currentTask = omData.currentTask;\n const suggestedResponse = omData.suggestedResponse;\n const extractedValues = omData.extractedValues;\n const extractionFailures = omData.extractionFailures;\n const durationMs = omData.durationMs;\n const compressionRatio =\n tokensObserved && observationTokens && observationTokens > 0\n ? Math.round(tokensObserved / observationTokens)\n : null;\n\n const handleToggle = (e: React.MouseEvent) => {\n // Prevent scroll jump by preserving scroll position\n const scrollContainer = e.currentTarget.closest('[data-radix-scroll-area-viewport]') || document.documentElement;\n const scrollTop = scrollContainer.scrollTop;\n setIsExpanded(!isExpanded);\n // Restore scroll position after React updates\n requestAnimationFrame(() => {\n scrollContainer.scrollTop = scrollTop;\n });\n };\n\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div className=\"my-1\">\n <button\n onClick={handleToggle}\n className={`inline-flex items-center gap-1.5 rounded-md px-2 py-1 ${completeBgColor} ${completeTextColor} text-column ${completeHoverBgColor} cursor-pointer`}\n >\n {isExpanded ? <ChevronDown className=\"size-3\" /> : <ChevronRight className=\"size-3\" />}\n {isReflection ? <Brain className=\"size-3\" /> : <ObservationIcon className=\"size-3\" />}\n <span>\n {completedLabel} {tokensObserved ? formatTokens(tokensObserved) : '?'}→\n {observationTokens ? formatTokens(observationTokens) : '?'} tokens\n {compressionRatio ? ` (-${compressionRatio}x)` : ''}\n </span>\n </button>\n {isExpanded && (\n <div\n className={`mt-1 ml-6 rounded-md p-2 ${expandedBgColor} space-y-1.5 border text-caption ${expandedBorderColor}`}\n >\n {/* Stats row - all green */}\n <div className={`flex gap-4 text-caption ${labelColor}`}>\n {tokensObserved && <span>Input: {formatTokens(tokensObserved)}</span>}\n {observationTokens && <span>Output: {formatTokens(observationTokens)}</span>}\n {compressionRatio && compressionRatio > 1 && <span>Compression: {compressionRatio}x</span>}\n {durationMs && (\n <span>\n Duration:{' '}\n <Txt as=\"span\" variant=\"caption\" font=\"mono\">\n {formatDuration(durationMs)}\n </Txt>\n </span>\n )}\n </div>\n {observations && (\n <div className=\"mt-1 border-t border-border pt-1\">\n {/* If there's no currentTask or suggestedResponse, show observations directly without collapsible wrapper */}\n {!currentTask && !suggestedResponse ? (\n <ObservationRenderer observations={observations} maxHeight=\"500px\" />\n ) : (\n <>\n <button\n onClick={() => setIsObservationsExpanded(!isObservationsExpanded)}\n className=\"flex items-center gap-1 text-meta tracking-wide text-foreground uppercase transition-opacity hover:opacity-80\"\n >\n {isObservationsExpanded ? (\n <ChevronDown className=\"size-2.5\" />\n ) : (\n <ChevronRight className=\"size-2.5\" />\n )}\n {isReflection ? 'Reflections' : 'Observations'}\n </button>\n {isObservationsExpanded && (\n <div className=\"mt-1\">\n <ObservationRenderer observations={observations} maxHeight=\"500px\" />\n </div>\n )}\n </>\n )}\n </div>\n )}\n {currentTask && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <button\n onClick={() => setIsTaskExpanded(!isTaskExpanded)}\n className=\"flex items-center gap-1 text-meta tracking-wide text-foreground uppercase transition-opacity hover:opacity-80\"\n >\n {isTaskExpanded ? <ChevronDown className=\"size-2.5\" /> : <ChevronRight className=\"size-2.5\" />}\n Current Task\n </button>\n {isTaskExpanded && (\n <div className=\"mt-1 [&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta\">\n <MarkdownRenderer className=\"text-caption text-foreground\">{currentTask}</MarkdownRenderer>\n </div>\n )}\n </div>\n )}\n {suggestedResponse && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <button\n onClick={() => setIsResponseExpanded(!isResponseExpanded)}\n className=\"flex items-center gap-1 text-meta tracking-wide text-foreground uppercase transition-opacity hover:opacity-80\"\n >\n {isResponseExpanded ? <ChevronDown className=\"size-2.5\" /> : <ChevronRight className=\"size-2.5\" />}\n Suggested Response\n </button>\n {isResponseExpanded && (\n <div className=\"mt-1 italic [&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta\">\n <MarkdownRenderer className=\"text-caption text-foreground/80\">\n {suggestedResponse}\n </MarkdownRenderer>\n </div>\n )}\n </div>\n )}\n <ExtractedValuesPanel\n extractedValues={extractedValues}\n extractionFailures={extractionFailures}\n isExpanded={isExtractedExpanded}\n onToggle={() => setIsExtractedExpanded(!isExtractedExpanded)}\n />\n </div>\n )}\n </div>\n </div>\n );\n }\n\n if (isDisconnected) {\n const disconnectedLabel = isReflection ? 'Reflection interrupted' : 'Observation interrupted';\n const tokensToObserve = omData.tokensToObserve;\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div className=\"my-1 inline-flex items-center gap-1.5 rounded-md bg-yellow-500/10 px-2 py-1 text-column text-yellow-600\">\n <Unplug className=\"size-3\" />\n <span>\n {disconnectedLabel}\n {tokensToObserve ? ` (~${formatTokens(tokensToObserve)} tokens)` : ''}\n </span>\n </div>\n </div>\n );\n }\n\n if (isFailed) {\n const error = omData.error;\n const failedLabel = isReflection ? 'Reflection failed' : 'Observation failed';\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div className=\"my-1\">\n <button\n onClick={() => setIsExpanded(!isExpanded)}\n className=\"inline-flex cursor-pointer items-center gap-1.5 rounded-md bg-red-500/10 px-2 py-1 text-column text-red-600 hover:bg-red-500/20\"\n >\n {isExpanded ? <ChevronDown className=\"size-3\" /> : <ChevronRight className=\"size-3\" />}\n <XCircle className=\"size-3\" />\n <span>{failedLabel}</span>\n </button>\n\n {isExpanded && error && (\n <div className=\"mt-1 ml-4 rounded-md border border-red-500/10 bg-red-500/5 p-2 text-caption text-red-700\">\n <span className=\"text-column\">Error:</span> {error}\n </div>\n )}\n </div>\n </div>\n );\n }\n\n // Async buffering states - non-blocking background observation/reflection\n if (isBuffering) {\n const tokensToBuffer = omData.tokensToBuffer;\n const bufferingLabel = isReflection ? 'Buffering reflection' : 'Buffering observations';\n return (\n <div\n className=\"mt-2 mb-8\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <MarkerPill icon={<Loader2 className=\"animate-spin text-accent6\" />}>\n {bufferingLabel}\n {tokensToBuffer ? ` ~${formatTokens(tokensToBuffer)} tokens` : '...'}\n </MarkerPill>\n </div>\n );\n }\n\n if (isBufferingComplete) {\n const tokensBuffered = omData.tokensBuffered;\n const bufferedTokens = omData.bufferedTokens;\n const { observations, extractedValues, extractionFailures } = omData;\n const bufferedLabel = isReflection ? 'Buffered reflection' : 'Buffered observations';\n const compressionRatio =\n tokensBuffered && bufferedTokens && bufferedTokens > 0 ? Math.round(tokensBuffered / bufferedTokens) : null;\n\n const handleToggle = (e: React.MouseEvent) => {\n const scrollContainer = e.currentTarget.closest('[data-radix-scroll-area-viewport]') || document.documentElement;\n const scrollTop = scrollContainer.scrollTop;\n setIsExpanded(!isExpanded);\n requestAnimationFrame(() => {\n scrollContainer.scrollTop = scrollTop;\n });\n };\n\n return (\n <div\n className=\"mt-2 mb-8\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div>\n <MarkerPill expanded={isExpanded} onClick={handleToggle} icon={<ObservationIcon className=\"text-accent6\" />}>\n {bufferedLabel} {tokensBuffered ? formatTokens(tokensBuffered) : '?'}→\n {bufferedTokens ? formatTokens(bufferedTokens) : '?'} tokens\n {compressionRatio ? ` (-${compressionRatio}x)` : ''}\n </MarkerPill>\n\n {isExpanded && (\n <div\n className={`mt-2 ml-6 rounded-lg ${bufferExpandedBgColor} space-y-2 border p-4 text-caption ${bufferExpandedBorderColor}`}\n >\n {observations && <ObservationRenderer observations={observations} maxHeight=\"240px\" />}\n <ExtractedValuesPanel\n extractedValues={extractedValues}\n extractionFailures={extractionFailures}\n isExpanded={isExtractedExpanded}\n onToggle={() => setIsExtractedExpanded(!isExtractedExpanded)}\n />\n </div>\n )}\n </div>\n </div>\n );\n }\n\n if (isBufferingFailed) {\n const error = omData.error;\n const failedLabel = isReflection ? 'Buffered reflection failed' : 'Buffered observation failed';\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div className=\"my-1\">\n <button\n onClick={() => setIsExpanded(!isExpanded)}\n className=\"inline-flex cursor-pointer items-center gap-1.5 rounded-md border border-dashed border-red-400/40 bg-red-500/10 px-2 py-1 text-column text-red-600 hover:bg-red-500/20\"\n >\n {isExpanded ? <ChevronDown className=\"size-3\" /> : <ChevronRight className=\"size-3\" />}\n <XCircle className=\"size-3\" />\n <span>{failedLabel}</span>\n </button>\n\n {isExpanded && error && (\n <div className=\"mt-1 ml-4 rounded-md border border-red-500/10 bg-red-500/5 p-2 text-caption text-red-700\">\n <span className=\"text-column\">Error:</span> {error}\n </div>\n )}\n </div>\n </div>\n );\n }\n\n // Activation state - buffered observations have been activated into active observations\n // Styled to match sync observation/reflection markers (green scheme with Brain icon)\n if (isActivated) {\n const tokensActivated = omData.tokensActivated ?? 0;\n const observationTokens = omData.observationTokens ?? 0;\n const { observations } = omData;\n const activatedLabel = isReflection ? 'Reflected' : 'Observed';\n const compressionRatio =\n tokensActivated && observationTokens && observationTokens > 0\n ? Math.round(tokensActivated / observationTokens)\n : null;\n\n const handleToggle = (e: React.MouseEvent) => {\n const scrollContainer = e.currentTarget.closest('[data-radix-scroll-area-viewport]') || document.documentElement;\n const scrollTop = scrollContainer.scrollTop;\n setIsExpanded(!isExpanded);\n requestAnimationFrame(() => {\n scrollContainer.scrollTop = scrollTop;\n });\n };\n\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n data-om-no-highlight=\"true\"\n >\n <div className=\"my-1\">\n <button\n onClick={handleToggle}\n className={`inline-flex items-center gap-1.5 rounded-md px-2 py-1 ${completeBgColor} ${completeTextColor} text-column ${completeHoverBgColor} cursor-pointer`}\n >\n {isExpanded ? <ChevronDown className=\"size-3\" /> : <ChevronRight className=\"size-3\" />}\n {isReflection ? <Brain className=\"size-3\" /> : <ObservationIcon className=\"size-3\" />}\n <span>\n {activatedLabel} {tokensActivated ? formatTokens(tokensActivated) : '?'}→\n {observationTokens ? formatTokens(observationTokens) : '?'} tokens\n {compressionRatio ? ` (-${compressionRatio}x)` : ''}\n </span>\n </button>\n {isExpanded && (\n <div\n className={`mt-1 ml-6 rounded-md p-2 ${expandedBgColor} space-y-1.5 border text-caption ${expandedBorderColor}`}\n >\n {/* Stats row */}\n <div className={`flex gap-4 text-caption ${labelColor}`}>\n {tokensActivated > 0 && <span>Input: {formatTokens(tokensActivated)}</span>}\n {observationTokens > 0 && <span>Output: {formatTokens(observationTokens)}</span>}\n {compressionRatio && compressionRatio > 1 && <span>Compression: {compressionRatio}x</span>}\n </div>\n {observations && (\n <div className=\"mt-1 border-t border-border pt-1\">\n <ObservationRenderer observations={observations} maxHeight=\"500px\" />\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n );\n }\n\n // Unknown marker type - render generic\n return (\n <div\n className=\"mb-3\"\n data-om-badge={cycleId}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n >\n <div className=\"my-1 inline-flex items-center gap-1.5 rounded-md bg-fill px-2 py-1 text-column text-muted-foreground\">\n <Brain className=\"size-3\" />\n <span>{toolName}</span>\n </div>\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;AA0DA,MAAM,YAAA,GAAe,CAAC,MAAA,KAA2B;AAC/C,EAAA,IAAI,UAAU,GAAA,EAAM;AAClB,IAAA,OAAO,CAAA,EAAA,CAAI,MAAA,GAAS,GAAA,EAAM,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,CAAA;AAAA,EACtC;AACA,EAAA,OAAO,MAAA,CAAO,IAAA,CAAK,KAAA,CAAM,MAAM,CAAC,CAAA;AAClC,CAAA;AAEA,MAAM,oBAAoB,CAAC,KAAA,KAAmB,UAAU,MAAA,IAAa,KAAA,KAAU,QAAQ,KAAA,KAAU,EAAA;AAEjG,MAAM,wBAAA,GAA2B,CAAC,MAAA,KAAqC;AACrE,EAAA,OAAO,MAAA,CAAO,OAAA,CAAQ,MAAA,IAAU,EAAE,CAAA,CAAE,MAAA,CAAO,CAAC,GAAG,KAAK,CAAA,KAAM,iBAAA,CAAkB,KAAK,CAAC,CAAA;AACpF,CAAA;AAEA,MAAM,oBAAA,GAAuB,CAAC,KAAA,KAA2B;AACvD,EAAA,IAAI,OAAO,KAAA,KAAU,QAAA,EAAU,OAAO,KAAA;AACtC,EAAA,IAAI,OAAO,UAAU,QAAA,IAAY,OAAO,UAAU,SAAA,EAAW,OAAO,OAAO,KAAK,CAAA;AAEhF,EAAA,IAAI;AACF,IAAA,OAAO,KAAK,SAAA,CAAU,KAAA,EAAO,MAAM,CAAC,CAAA,IAAK,OAAO,KAAK,CAAA;AAAA,EACvD,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,OAAO,KAAK,CAAA;AAAA,EACrB;AACF,CAAA;AAEA,MAAM,6BAA6B,CAAC,KAAA,KAAmB,OAAO,KAAA,KAAU,YAAY,KAAA,KAAU,IAAA;AAE9F,MAAM,kBAAkB,CAAC,EAAE,WAAU,qBAA8B,GAAA,CAAC,OAAI,SAAA,EAAsB,CAAA;AAE9F,MAAM,aAAa,CAAC;AAAA,EAClB,QAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA;AACF,CAAA,KAMM;AACJ,EAAA,MAAM,0BACJ,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,IAAA,OAAA,oBACC,GAAA,CAAC,IAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAW,EAAA,CAAG,gBAAA,EAAkB,QAAA,GAAW,UAAA,GAAa,YAAY,CAAA,EAAG,CAAA,EACtF,CAAA;AAAA,oBAEF,GAAA,CAAC,KAAA,EAAA,EAAM,IAAA,EAAa,QAAA,EAAS;AAAA,GAAA,EAC/B,CAAA;AAGF,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,2BAAQ,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,gCAAA,EAAkC,SAAS,GAAI,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,EACnF;AAEA,EAAA,uBACE,GAAA,CAAC,QAAA,EAAA,EAAO,OAAA,EAAkB,SAAA,EAAW,EAAA,CAAG,kCAAkC,SAAS,CAAA,EAAG,IAAA,EAAK,QAAA,EACxF,QAAA,EAAA,OAAA,EACH,CAAA;AAEJ,CAAA;AAEA,MAAM,uBAAuB,CAAC;AAAA,EAC5B,eAAA;AAAA,EACA,kBAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF,CAAA,KAKM;AACJ,EAAA,MAAM,OAAA,GAAU,yBAAyB,eAAe,CAAA;AACxD,EAAA,MAAM,QAAA,GAAW,sBAAsB,EAAC;AAExC,EAAA,IAAI,QAAQ,MAAA,KAAW,CAAA,IAAK,QAAA,CAAS,MAAA,KAAW,GAAG,OAAO,IAAA;AAE1D,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EACb,QAAA,EAAA;AAAA,oBAAA,IAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,OAAA,EAAS,QAAA;AAAA,QACT,SAAA,EAAU,+GAAA;AAAA,QAET,QAAA,EAAA;AAAA,UAAA,UAAA,mBAAa,GAAA,CAAC,eAAY,SAAA,EAAU,UAAA,EAAW,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,UAAA,EAAW,CAAA;AAAA,UAAG,eAAA;AAAA,UAC7E,OAAA,CAAQ,MAAA;AAAA,UAAO,GAAA;AAAA,UAAE,SAAS,MAAA,GAAS,CAAA,GAAI,CAAA,GAAA,EAAM,QAAA,CAAS,MAAM,CAAA,OAAA,CAAA,GAAY;AAAA;AAAA;AAAA,KACxF;AAAA,IACC,UAAA,oBACC,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,gBAAA,EACZ,QAAA,EAAA;AAAA,MAAA,OAAA,CAAQ,GAAA,CAAI,CAAC,CAAC,IAAA,EAAM,KAAK,CAAA,qBACxB,IAAA,CAAC,KAAA,EAAA,EAAe,SAAA,EAAU,iDAAA,EACxB,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,sDAAA,EAAwD,QAAA,EAAA,IAAA,EAAK,CAAA;AAAA,QAC3E,0BAAA,CAA2B,KAAK,CAAA,mBAC/B,GAAA,CAAC,SAAI,SAAA,EAAU,6FAAA,EACZ,QAAA,EAAA,oBAAA,CAAqB,KAAK,CAAA,EAC7B,CAAA,uBAEC,KAAA,EAAA,EAAI,SAAA,EAAU,2FACb,QAAA,kBAAA,GAAA,CAAC,gBAAA,EAAA,EAAiB,WAAU,iCAAA,EACzB,QAAA,EAAA,oBAAA,CAAqB,KAAK,CAAA,EAC7B,CAAA,EACF;AAAA,OAAA,EAAA,EAXM,IAaV,CACD,CAAA;AAAA,MACA,SAAS,GAAA,CAAI,CAAA,OAAA,qBACZ,IAAA,CAAC,KAAA,EAAA,EAAuB,WAAU,gEAAA,EAChC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mCAAA,EAAqC,QAAA,EAAA,OAAA,CAAQ,IAAA,EAAK,CAAA;AAAA,wBACjE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mBAAA,EAAqB,kBAAQ,KAAA,EAAM;AAAA,OAAA,EAAA,EAF1C,OAAA,CAAQ,IAGlB,CACD;AAAA,KAAA,EACH;AAAA,GAAA,EAEJ,CAAA;AAEJ,CAAA;AASO,MAAM,yBAAyB,CAAC,EAAE,QAAA,EAAU,IAAA,EAAM,UAAS,KAAmC;AACnG,EAAA,MAAM,MAAA,GAAU,UAAU,MAAA,IAAU,IAAA;AACpC,EAAA,MAAM,OAAA,GAAU,OAAO,OAAA,IAAW,EAAA;AAGlC,EAAA,MAAM,KAAA,GACJ,MAAA,CAAO,MAAA,KACN,MAAA,CAAO,QAAA,GACJ,QAAA,GACA,MAAA,CAAO,WAAA,GACL,UAAA,GACC,MAAA,CAAe,cAAA,GACd,cAAA,GACA,SAAA,CAAA;AAEV,EAAA,MAAM,UAAU,KAAA,KAAU,SAAA;AAC1B,EAAA,MAAM,QAAQ,KAAA,KAAU,UAAA;AACxB,EAAA,MAAM,WAAW,KAAA,KAAU,QAAA;AAC3B,EAAA,MAAM,iBAAiB,KAAA,KAAU,cAAA;AACjC,EAAA,MAAM,cAAc,KAAA,KAAU,WAAA;AAC9B,EAAA,MAAM,sBAAsB,KAAA,KAAU,oBAAA;AACtC,EAAA,MAAM,oBAAoB,KAAA,KAAU,kBAAA;AACpC,EAAA,MAAM,cAAc,KAAA,KAAU,WAAA;AAC9B,EAAA,MAAM,YAAA,GAAe,OAAO,aAAA,KAAkB,YAAA;AAC9C,EAAA,MAAM,oBAAA,GACJ,wBAAA,CAAyB,MAAA,CAAO,eAAe,CAAA,CAAE,SAAS,CAAA,IAAA,CAAM,MAAA,CAAO,kBAAA,EAAoB,MAAA,IAAU,CAAA,IAAK,CAAA;AAC5G,EAAA,MAAM,gBAAA,GAAoB,YAAY,YAAA,IAAiB,oBAAA;AAGvD,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAS,gBAAgB,CAAA;AAG7D,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,gBAAA,EAAkB;AACpB,MAAA,aAAA,CAAc,IAAI,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,gBAAgB,CAAC,CAAA;AACrB,EAAA,MAAM,CAAC,sBAAA,EAAwB,yBAAyB,CAAA,GAAI,SAAS,IAAI,CAAA;AACzE,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,SAAS,KAAK,CAAA;AAC1D,EAAA,MAAM,CAAC,kBAAA,EAAoB,qBAAqB,CAAA,GAAI,SAAS,KAAK,CAAA;AAClE,EAAA,MAAM,CAAC,mBAAA,EAAqB,sBAAsB,CAAA,GAAI,SAAS,KAAK,CAAA;AAGpE,EAAA,MAAM,OAAA,GAAU,gBAAA;AAChB,EAAA,MAAM,SAAA,GAAY,eAAA;AAClB,EAAA,MAAM,eAAA,GAAkB,iBAAA;AACxB,EAAA,MAAM,iBAAA,GAAoB,gBAAA;AAC1B,EAAA,MAAM,oBAAA,GAAuB,uBAAA;AAE7B,EAAA,MAAM,eAAA,GAAkB,gBAAA;AACxB,EAAA,MAAM,mBAAA,GAAsB,qBAAA;AAC5B,EAAA,MAAM,UAAA,GAAa,gBAAA;AACnB,EAAA,MAAM,qBAAA,GAAwB,eAAA;AAC9B,EAAA,MAAM,yBAAA,GAA4B,iBAAA;AAClC,EAAA,MAAM,WAAA,GAAc,eAAe,YAAA,GAAe,WAAA;AAClD,EAAA,MAAM,cAAA,GAAiB,eAAe,WAAA,GAAc,UAAA;AAGpD,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,MAAM,kBAAkB,MAAA,CAAO,eAAA;AAC/B,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,QAAA,kBAAA,IAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,CAAA,sDAAA,EAAyD,OAAO,CAAA,CAAA,EAAI,SAAS,CAAA,iBAAA,CAAA;AAAA,YAExF,QAAA,EAAA;AAAA,8BAAA,GAAA,CAAC,OAAA,EAAA,EAAQ,WAAU,qBAAA,EAAsB,CAAA;AAAA,cACxC,YAAA,uBAAgB,KAAA,EAAA,EAAM,SAAA,EAAU,UAAS,CAAA,mBAAK,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,mCAClF,MAAA,EAAA,EACE,QAAA,EAAA;AAAA,gBAAA,WAAA;AAAA,gBACA,eAAA,GAAkB,CAAA,EAAA,EAAK,YAAA,CAAa,eAAe,CAAC,CAAA,OAAA,CAAA,GAAY;AAAA,eAAA,EACnE;AAAA;AAAA;AAAA;AACF;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,EAAO;AACT,IAAA,MAAM,iBAAiB,MAAA,CAAO,cAAA;AAC9B,IAAA,MAAM,oBAAoB,MAAA,CAAO,iBAAA;AACjC,IAAA,MAAM,eAAe,MAAA,CAAO,YAAA;AAC5B,IAAA,MAAM,cAAc,MAAA,CAAO,WAAA;AAC3B,IAAA,MAAM,oBAAoB,MAAA,CAAO,iBAAA;AACjC,IAAA,MAAM,kBAAkB,MAAA,CAAO,eAAA;AAC/B,IAAA,MAAM,qBAAqB,MAAA,CAAO,kBAAA;AAClC,IAAA,MAAM,aAAa,MAAA,CAAO,UAAA;AAC1B,IAAA,MAAM,gBAAA,GACJ,kBAAkB,iBAAA,IAAqB,iBAAA,GAAoB,IACvD,IAAA,CAAK,KAAA,CAAM,cAAA,GAAiB,iBAAiB,CAAA,GAC7C,IAAA;AAEN,IAAA,MAAM,YAAA,GAAe,CAAC,CAAA,KAAwB;AAE5C,MAAA,MAAM,kBAAkB,CAAA,CAAE,aAAA,CAAc,OAAA,CAAQ,mCAAmC,KAAK,QAAA,CAAS,eAAA;AACjG,MAAA,MAAM,YAAY,eAAA,CAAgB,SAAA;AAClC,MAAA,aAAA,CAAc,CAAC,UAAU,CAAA;AAEzB,MAAA,qBAAA,CAAsB,MAAM;AAC1B,QAAA,eAAA,CAAgB,SAAA,GAAY,SAAA;AAAA,MAC9B,CAAC,CAAA;AAAA,IACH,CAAA;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,QAAA,EAAA;AAAA,0BAAA,IAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAS,YAAA;AAAA,cACT,WAAW,CAAA,sDAAA,EAAyD,eAAe,CAAA,CAAA,EAAI,iBAAiB,gBAAgB,oBAAoB,CAAA,eAAA,CAAA;AAAA,cAE3I,QAAA,EAAA;AAAA,gBAAA,UAAA,mBAAa,GAAA,CAAC,eAAY,SAAA,EAAU,QAAA,EAAS,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,QAAA,EAAS,CAAA;AAAA,gBACnF,YAAA,uBAAgB,KAAA,EAAA,EAAM,SAAA,EAAU,UAAS,CAAA,mBAAK,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,qCAClF,MAAA,EAAA,EACE,QAAA,EAAA;AAAA,kBAAA,cAAA;AAAA,kBAAe,GAAA;AAAA,kBAAE,cAAA,GAAiB,YAAA,CAAa,cAAc,CAAA,GAAI,GAAA;AAAA,kBAAI,GAAA;AAAA,kBACrE,iBAAA,GAAoB,YAAA,CAAa,iBAAiB,CAAA,GAAI,GAAA;AAAA,kBAAI,SAAA;AAAA,kBAC1D,gBAAA,GAAmB,CAAA,GAAA,EAAM,gBAAgB,CAAA,EAAA,CAAA,GAAO;AAAA,iBAAA,EACnD;AAAA;AAAA;AAAA,WACF;AAAA,UACC,UAAA,oBACC,IAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,CAAA,yBAAA,EAA4B,eAAe,CAAA,iCAAA,EAAoC,mBAAmB,CAAA,CAAA;AAAA,cAG7G,QAAA,EAAA;AAAA,gCAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,CAAA,wBAAA,EAA2B,UAAU,CAAA,CAAA,EAClD,QAAA,EAAA;AAAA,kBAAA,cAAA,yBAAmB,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,SAAA;AAAA,oBAAQ,aAAa,cAAc;AAAA,mBAAA,EAAE,CAAA;AAAA,kBAC7D,iBAAA,yBAAsB,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,UAAA;AAAA,oBAAS,aAAa,iBAAiB;AAAA,mBAAA,EAAE,CAAA;AAAA,kBACpE,gBAAA,IAAoB,gBAAA,GAAmB,CAAA,oBAAK,IAAA,CAAC,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,eAAA;AAAA,oBAAc,gBAAA;AAAA,oBAAiB;AAAA,mBAAA,EAAC,CAAA;AAAA,kBAClF,UAAA,yBACE,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,WAAA;AAAA,oBACM,GAAA;AAAA,oCACV,GAAA,CAAC,GAAA,EAAA,EAAI,EAAA,EAAG,MAAA,EAAO,OAAA,EAAQ,WAAU,IAAA,EAAK,MAAA,EACnC,QAAA,EAAA,cAAA,CAAe,UAAU,CAAA,EAC5B;AAAA,mBAAA,EACF;AAAA,iBAAA,EAEJ,CAAA;AAAA,gBACC,YAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,oCAEZ,QAAA,EAAA,CAAC,WAAA,IAAe,CAAC,iBAAA,uBACf,mBAAA,EAAA,EAAoB,YAAA,EAA4B,SAAA,EAAU,OAAA,EAAQ,oBAEnE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,kCAAA,IAAA;AAAA,oBAAC,QAAA;AAAA,oBAAA;AAAA,sBACC,OAAA,EAAS,MAAM,yBAAA,CAA0B,CAAC,sBAAsB,CAAA;AAAA,sBAChE,SAAA,EAAU,+GAAA;AAAA,sBAET,QAAA,EAAA;AAAA,wBAAA,sBAAA,mBACC,GAAA,CAAC,eAAY,SAAA,EAAU,UAAA,EAAW,oBAElC,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,UAAA,EAAW,CAAA;AAAA,wBAEpC,eAAe,aAAA,GAAgB;AAAA;AAAA;AAAA,mBAClC;AAAA,kBACC,sBAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,8BAAC,mBAAA,EAAA,EAAoB,YAAA,EAA4B,SAAA,EAAU,OAAA,EAAQ,CAAA,EACrE;AAAA,iBAAA,EAEJ,CAAA,EAEJ,CAAA;AAAA,gBAED,WAAA,oBACC,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EACb,QAAA,EAAA;AAAA,kCAAA,IAAA;AAAA,oBAAC,QAAA;AAAA,oBAAA;AAAA,sBACC,OAAA,EAAS,MAAM,iBAAA,CAAkB,CAAC,cAAc,CAAA;AAAA,sBAChD,SAAA,EAAU,+GAAA;AAAA,sBAET,QAAA,EAAA;AAAA,wBAAA,cAAA,mBAAiB,GAAA,CAAC,eAAY,SAAA,EAAU,UAAA,EAAW,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,UAAA,EAAW,CAAA;AAAA,wBAAG;AAAA;AAAA;AAAA,mBAEjG;AAAA,kBACC,cAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yFAAA,EACb,8BAAC,gBAAA,EAAA,EAAiB,SAAA,EAAU,8BAAA,EAAgC,QAAA,EAAA,WAAA,EAAY,CAAA,EAC1E;AAAA,iBAAA,EAEJ,CAAA;AAAA,gBAED,iBAAA,oBACC,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EACb,QAAA,EAAA;AAAA,kCAAA,IAAA;AAAA,oBAAC,QAAA;AAAA,oBAAA;AAAA,sBACC,OAAA,EAAS,MAAM,qBAAA,CAAsB,CAAC,kBAAkB,CAAA;AAAA,sBACxD,SAAA,EAAU,+GAAA;AAAA,sBAET,QAAA,EAAA;AAAA,wBAAA,kBAAA,mBAAqB,GAAA,CAAC,eAAY,SAAA,EAAU,UAAA,EAAW,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,UAAA,EAAW,CAAA;AAAA,wBAAG;AAAA;AAAA;AAAA,mBAErG;AAAA,kBACC,kBAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,gGAAA,EACb,8BAAC,gBAAA,EAAA,EAAiB,SAAA,EAAU,iCAAA,EACzB,QAAA,EAAA,iBAAA,EACH,CAAA,EACF;AAAA,iBAAA,EAEJ,CAAA;AAAA,gCAEF,GAAA;AAAA,kBAAC,oBAAA;AAAA,kBAAA;AAAA,oBACC,eAAA;AAAA,oBACA,kBAAA;AAAA,oBACA,UAAA,EAAY,mBAAA;AAAA,oBACZ,QAAA,EAAU,MAAM,sBAAA,CAAuB,CAAC,mBAAmB;AAAA;AAAA;AAC7D;AAAA;AAAA;AACF,SAAA,EAEJ;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,IAAI,cAAA,EAAgB;AAClB,IAAA,MAAM,iBAAA,GAAoB,eAAe,wBAAA,GAA2B,yBAAA;AACpE,IAAA,MAAM,kBAAkB,MAAA,CAAO,eAAA;AAC/B,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yGAAA,EACb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,MAAA,EAAA,EAAO,WAAU,QAAA,EAAS,CAAA;AAAA,+BAC1B,MAAA,EAAA,EACE,QAAA,EAAA;AAAA,YAAA,iBAAA;AAAA,YACA,eAAA,GAAkB,CAAA,GAAA,EAAM,YAAA,CAAa,eAAe,CAAC,CAAA,QAAA,CAAA,GAAa;AAAA,WAAA,EACrE;AAAA,SAAA,EACF;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,MAAM,QAAQ,MAAA,CAAO,KAAA;AACrB,IAAA,MAAM,WAAA,GAAc,eAAe,mBAAA,GAAsB,oBAAA;AACzD,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,QAAA,EAAA;AAAA,0BAAA,IAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAS,MAAM,aAAA,CAAc,CAAC,UAAU,CAAA;AAAA,cACxC,SAAA,EAAU,iIAAA;AAAA,cAET,QAAA,EAAA;AAAA,gBAAA,UAAA,mBAAa,GAAA,CAAC,eAAY,SAAA,EAAU,QAAA,EAAS,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,QAAA,EAAS,CAAA;AAAA,gCACpF,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,gCAC5B,GAAA,CAAC,UAAM,QAAA,EAAA,WAAA,EAAY;AAAA;AAAA;AAAA,WACrB;AAAA,UAEC,UAAA,IAAc,KAAA,oBACb,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,0FAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,aAAA,EAAc,QAAA,EAAA,QAAA,EAAM,CAAA;AAAA,YAAO,GAAA;AAAA,YAAE;AAAA,WAAA,EAC/C;AAAA,SAAA,EAEJ;AAAA;AAAA,KACF;AAAA,EAEJ;AAGA,EAAA,IAAI,WAAA,EAAa;AACf,IAAA,MAAM,iBAAiB,MAAA,CAAO,cAAA;AAC9B,IAAA,MAAM,cAAA,GAAiB,eAAe,sBAAA,GAAyB,wBAAA;AAC/D,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,WAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,+BAAC,UAAA,EAAA,EAAW,IAAA,sBAAO,OAAA,EAAA,EAAQ,SAAA,EAAU,6BAA4B,CAAA,EAC9D,QAAA,EAAA;AAAA,UAAA,cAAA;AAAA,UACA,cAAA,GAAiB,CAAA,EAAA,EAAK,YAAA,CAAa,cAAc,CAAC,CAAA,OAAA,CAAA,GAAY;AAAA,SAAA,EACjE;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,IAAI,mBAAA,EAAqB;AACvB,IAAA,MAAM,iBAAiB,MAAA,CAAO,cAAA;AAC9B,IAAA,MAAM,iBAAiB,MAAA,CAAO,cAAA;AAC9B,IAAA,MAAM,EAAE,YAAA,EAAc,eAAA,EAAiB,kBAAA,EAAmB,GAAI,MAAA;AAC9D,IAAA,MAAM,aAAA,GAAgB,eAAe,qBAAA,GAAwB,uBAAA;AAC7D,IAAA,MAAM,gBAAA,GACJ,kBAAkB,cAAA,IAAkB,cAAA,GAAiB,IAAI,IAAA,CAAK,KAAA,CAAM,cAAA,GAAiB,cAAc,CAAA,GAAI,IAAA;AAEzG,IAAA,MAAM,YAAA,GAAe,CAAC,CAAA,KAAwB;AAC5C,MAAA,MAAM,kBAAkB,CAAA,CAAE,aAAA,CAAc,OAAA,CAAQ,mCAAmC,KAAK,QAAA,CAAS,eAAA;AACjG,MAAA,MAAM,YAAY,eAAA,CAAgB,SAAA;AAClC,MAAA,aAAA,CAAc,CAAC,UAAU,CAAA;AACzB,MAAA,qBAAA,CAAsB,MAAM;AAC1B,QAAA,eAAA,CAAgB,SAAA,GAAY,SAAA;AAAA,MAC9B,CAAC,CAAA;AAAA,IACH,CAAA;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,WAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,+BAAC,KAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,UAAA,EAAA,EAAW,QAAA,EAAU,UAAA,EAAY,OAAA,EAAS,YAAA,EAAc,sBAAM,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,cAAA,EAAe,CAAA,EACtG,QAAA,EAAA;AAAA,YAAA,aAAA;AAAA,YAAc,GAAA;AAAA,YAAE,cAAA,GAAiB,YAAA,CAAa,cAAc,CAAA,GAAI,GAAA;AAAA,YAAI,GAAA;AAAA,YACpE,cAAA,GAAiB,YAAA,CAAa,cAAc,CAAA,GAAI,GAAA;AAAA,YAAI,SAAA;AAAA,YACpD,gBAAA,GAAmB,CAAA,GAAA,EAAM,gBAAgB,CAAA,EAAA,CAAA,GAAO;AAAA,WAAA,EACnD,CAAA;AAAA,UAEC,UAAA,oBACC,IAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,CAAA,qBAAA,EAAwB,qBAAqB,CAAA,mCAAA,EAAsC,yBAAyB,CAAA,CAAA;AAAA,cAEtH,QAAA,EAAA;AAAA,gBAAA,YAAA,oBAAgB,GAAA,CAAC,mBAAA,EAAA,EAAoB,YAAA,EAA4B,SAAA,EAAU,OAAA,EAAQ,CAAA;AAAA,gCACpF,GAAA;AAAA,kBAAC,oBAAA;AAAA,kBAAA;AAAA,oBACC,eAAA;AAAA,oBACA,kBAAA;AAAA,oBACA,UAAA,EAAY,mBAAA;AAAA,oBACZ,QAAA,EAAU,MAAM,sBAAA,CAAuB,CAAC,mBAAmB;AAAA;AAAA;AAC7D;AAAA;AAAA;AACF,SAAA,EAEJ;AAAA;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,IAAI,iBAAA,EAAmB;AACrB,IAAA,MAAM,QAAQ,MAAA,CAAO,KAAA;AACrB,IAAA,MAAM,WAAA,GAAc,eAAe,4BAAA,GAA+B,6BAAA;AAClE,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAE5C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,QAAA,EAAA;AAAA,0BAAA,IAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAS,MAAM,aAAA,CAAc,CAAC,UAAU,CAAA;AAAA,cACxC,SAAA,EAAU,wKAAA;AAAA,cAET,QAAA,EAAA;AAAA,gBAAA,UAAA,mBAAa,GAAA,CAAC,eAAY,SAAA,EAAU,QAAA,EAAS,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,QAAA,EAAS,CAAA;AAAA,gCACpF,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,gCAC5B,GAAA,CAAC,UAAM,QAAA,EAAA,WAAA,EAAY;AAAA;AAAA;AAAA,WACrB;AAAA,UAEC,UAAA,IAAc,KAAA,oBACb,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,0FAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,aAAA,EAAc,QAAA,EAAA,QAAA,EAAM,CAAA;AAAA,YAAO,GAAA;AAAA,YAAE;AAAA,WAAA,EAC/C;AAAA,SAAA,EAEJ;AAAA;AAAA,KACF;AAAA,EAEJ;AAIA,EAAA,IAAI,WAAA,EAAa;AACf,IAAA,MAAM,eAAA,GAAkB,OAAO,eAAA,IAAmB,CAAA;AAClD,IAAA,MAAM,iBAAA,GAAoB,OAAO,iBAAA,IAAqB,CAAA;AACtD,IAAA,MAAM,EAAE,cAAa,GAAI,MAAA;AACzB,IAAA,MAAM,cAAA,GAAiB,eAAe,WAAA,GAAc,UAAA;AACpD,IAAA,MAAM,gBAAA,GACJ,mBAAmB,iBAAA,IAAqB,iBAAA,GAAoB,IACxD,IAAA,CAAK,KAAA,CAAM,eAAA,GAAkB,iBAAiB,CAAA,GAC9C,IAAA;AAEN,IAAA,MAAM,YAAA,GAAe,CAAC,CAAA,KAAwB;AAC5C,MAAA,MAAM,kBAAkB,CAAA,CAAE,aAAA,CAAc,OAAA,CAAQ,mCAAmC,KAAK,QAAA,CAAS,eAAA;AACjG,MAAA,MAAM,YAAY,eAAA,CAAgB,SAAA;AAClC,MAAA,aAAA,CAAc,CAAC,UAAU,CAAA;AACzB,MAAA,qBAAA,CAAsB,MAAM;AAC1B,QAAA,eAAA,CAAgB,SAAA,GAAY,SAAA;AAAA,MAC9B,CAAC,CAAA;AAAA,IACH,CAAA;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,MAAA;AAAA,QACV,eAAA,EAAe,OAAA;AAAA,QACf,eAAA,EAAe,KAAA;AAAA,QACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,QAC5C,sBAAA,EAAqB,MAAA;AAAA,QAErB,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,QAAA,EAAA;AAAA,0BAAA,IAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAS,YAAA;AAAA,cACT,WAAW,CAAA,sDAAA,EAAyD,eAAe,CAAA,CAAA,EAAI,iBAAiB,gBAAgB,oBAAoB,CAAA,eAAA,CAAA;AAAA,cAE3I,QAAA,EAAA;AAAA,gBAAA,UAAA,mBAAa,GAAA,CAAC,eAAY,SAAA,EAAU,QAAA,EAAS,oBAAK,GAAA,CAAC,YAAA,EAAA,EAAa,WAAU,QAAA,EAAS,CAAA;AAAA,gBACnF,YAAA,uBAAgB,KAAA,EAAA,EAAM,SAAA,EAAU,UAAS,CAAA,mBAAK,GAAA,CAAC,eAAA,EAAA,EAAgB,SAAA,EAAU,QAAA,EAAS,CAAA;AAAA,qCAClF,MAAA,EAAA,EACE,QAAA,EAAA;AAAA,kBAAA,cAAA;AAAA,kBAAe,GAAA;AAAA,kBAAE,eAAA,GAAkB,YAAA,CAAa,eAAe,CAAA,GAAI,GAAA;AAAA,kBAAI,GAAA;AAAA,kBACvE,iBAAA,GAAoB,YAAA,CAAa,iBAAiB,CAAA,GAAI,GAAA;AAAA,kBAAI,SAAA;AAAA,kBAC1D,gBAAA,GAAmB,CAAA,GAAA,EAAM,gBAAgB,CAAA,EAAA,CAAA,GAAO;AAAA,iBAAA,EACnD;AAAA;AAAA;AAAA,WACF;AAAA,UACC,UAAA,oBACC,IAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,CAAA,yBAAA,EAA4B,eAAe,CAAA,iCAAA,EAAoC,mBAAmB,CAAA,CAAA;AAAA,cAG7G,QAAA,EAAA;AAAA,gCAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,CAAA,wBAAA,EAA2B,UAAU,CAAA,CAAA,EAClD,QAAA,EAAA;AAAA,kBAAA,eAAA,GAAkB,CAAA,yBAAM,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,SAAA;AAAA,oBAAQ,aAAa,eAAe;AAAA,mBAAA,EAAE,CAAA;AAAA,kBACnE,iBAAA,GAAoB,CAAA,oBAAK,IAAA,CAAC,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,UAAA;AAAA,oBAAS,aAAa,iBAAiB;AAAA,mBAAA,EAAE,CAAA;AAAA,kBACxE,gBAAA,IAAoB,gBAAA,GAAmB,CAAA,oBAAK,IAAA,CAAC,MAAA,EAAA,EAAK,QAAA,EAAA;AAAA,oBAAA,eAAA;AAAA,oBAAc,gBAAA;AAAA,oBAAiB;AAAA,mBAAA,EAAC;AAAA,iBAAA,EACrF,CAAA;AAAA,gBACC,YAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EACb,8BAAC,mBAAA,EAAA,EAAoB,YAAA,EAA4B,SAAA,EAAU,OAAA,EAAQ,CAAA,EACrE;AAAA;AAAA;AAAA;AAEJ,SAAA,EAEJ;AAAA;AAAA,KACF;AAAA,EAEJ;AAGA,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAU,MAAA;AAAA,MACV,eAAA,EAAe,OAAA;AAAA,MACf,eAAA,EAAe,KAAA;AAAA,MACf,cAAA,EAAc,eAAe,YAAA,GAAe,aAAA;AAAA,MAE5C,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,sGAAA,EACb,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,KAAA,EAAA,EAAM,WAAU,QAAA,EAAS,CAAA;AAAA,wBAC1B,GAAA,CAAC,UAAM,QAAA,EAAA,QAAA,EAAS;AAAA,OAAA,EAClB;AAAA;AAAA,GACF;AAEJ;;;;"}
|
|
1
|
+
{"version":3,"file":"observation-marker-badge.es.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-badge.tsx"],"sourcesContent":["import { Brain, Eye, Unplug } from 'lucide-react';\nimport { useState } from 'react';\nimport type { ReactNode } from 'react';\nimport { Extractions, ObservationSections, ObservationStats } from './observation-marker-details';\nimport { compressionRatio, extractedValueEntries, formatTokens } from './observation-marker-format';\nimport { Activity, ActivityContent, ActivityHeadline, ActivityTrigger } from '@/ds/components/ai/activity';\nimport type { ActivityStatus } from '@/ds/components/ai/activity';\nimport { ToolCallOutput } from '@/ds/components/ai/tool-call';\n\nexport interface OmMarkerData {\n observedAt?: string;\n completedAt?: string;\n failedAt?: string;\n disconnectedAt?: string;\n startedAt?: string;\n tokensObserved?: number;\n tokensToObserve?: number;\n observationTokens?: number;\n observations?: string;\n currentTask?: string;\n suggestedResponse?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n durationMs?: number;\n error?: string;\n recordId?: string;\n cycleId?: string;\n threadId?: string;\n threadIds?: string[];\n operationType?: 'observation' | 'reflection';\n _state?: 'loading' | 'complete' | 'failed' | 'buffering' | 'buffering-complete' | 'buffering-failed' | 'activated';\n chunksActivated?: number;\n tokensActivated?: number;\n messagesActivated?: number;\n config?: {\n scope?: string;\n messageTokens?: number;\n observationTokens?: number;\n };\n tokensToBuffer?: number;\n tokensBuffered?: number;\n bufferedTokens?: number;\n}\n\ntype MarkerState = NonNullable<OmMarkerData['_state']> | 'disconnected';\n\ninterface MarkerLine {\n icon: ReactNode;\n label: string;\n detail?: string;\n status: ActivityStatus;\n body?: ReactNode;\n}\n\nexport interface ObservationMarkerBadgeProps {\n toolName: string;\n omData: OmMarkerData;\n}\n\nfunction markerState(omData: OmMarkerData): MarkerState {\n if (omData._state) return omData._state;\n if (omData.failedAt) return 'failed';\n if (omData.completedAt) return 'complete';\n if (omData.disconnectedAt) return 'disconnected';\n return 'loading';\n}\n\nfunction tokenFlow(inputTokens?: number, outputTokens?: number): string {\n const ratio = compressionRatio(inputTokens, outputTokens);\n const input = inputTokens ? formatTokens(inputTokens) : '?';\n const output = outputTokens ? formatTokens(outputTokens) : '?';\n return `${input}→${output} tokens${ratio ? ` (-${ratio}x)` : ''}`;\n}\n\nfunction pendingTokens(tokens?: number): string | undefined {\n return tokens ? `~${formatTokens(tokens)} tokens` : undefined;\n}\n\nfunction markerLine(toolName: string, state: MarkerState, omData: OmMarkerData): MarkerLine {\n const isReflection = omData.operationType === 'reflection';\n const icon = isReflection ? <Brain /> : <Eye />;\n const doneLabel = isReflection ? 'Reflected' : 'Observed';\n const errorBody = omData.error ? <ToolCallOutput text={omData.error} error /> : undefined;\n\n switch (state) {\n case 'loading':\n return {\n icon,\n label: isReflection ? 'Reflecting' : 'Observing',\n detail: pendingTokens(omData.tokensToObserve),\n status: 'running',\n };\n case 'complete':\n return {\n icon,\n label: doneLabel,\n detail: tokenFlow(omData.tokensObserved, omData.observationTokens),\n status: 'idle',\n body: (\n <>\n <ObservationStats\n inputTokens={omData.tokensObserved}\n outputTokens={omData.observationTokens}\n durationMs={omData.durationMs}\n />\n <ObservationSections\n observations={omData.observations}\n isReflection={isReflection}\n maxHeight=\"500px\"\n currentTask={omData.currentTask}\n suggestedResponse={omData.suggestedResponse}\n />\n <Extractions extractedValues={omData.extractedValues} extractionFailures={omData.extractionFailures} />\n </>\n ),\n };\n case 'disconnected':\n return {\n icon: <Unplug />,\n label: isReflection ? 'Reflection interrupted' : 'Observation interrupted',\n detail: pendingTokens(omData.tokensToObserve),\n status: 'idle',\n };\n case 'failed':\n return {\n icon,\n label: isReflection ? 'Reflection' : 'Observation',\n status: 'error',\n body: errorBody,\n };\n case 'buffering':\n return {\n icon,\n label: isReflection ? 'Buffering reflection' : 'Buffering observations',\n detail: pendingTokens(omData.tokensToBuffer),\n status: 'running',\n };\n case 'buffering-complete':\n return {\n icon,\n label: isReflection ? 'Buffered reflection' : 'Buffered observations',\n detail: tokenFlow(omData.tokensBuffered, omData.bufferedTokens),\n status: 'idle',\n body: (\n <>\n <ObservationSections observations={omData.observations} isReflection={isReflection} maxHeight=\"240px\" />\n <Extractions extractedValues={omData.extractedValues} extractionFailures={omData.extractionFailures} />\n </>\n ),\n };\n case 'buffering-failed':\n return {\n icon,\n label: isReflection ? 'Buffered reflection' : 'Buffered observations',\n status: 'error',\n body: errorBody,\n };\n case 'activated':\n return {\n icon,\n label: doneLabel,\n detail: tokenFlow(omData.tokensActivated, omData.observationTokens),\n status: 'idle',\n body: (\n <>\n <ObservationStats inputTokens={omData.tokensActivated} outputTokens={omData.observationTokens} />\n <ObservationSections observations={omData.observations} isReflection={isReflection} maxHeight=\"500px\" />\n </>\n ),\n };\n default:\n return { icon: <Brain />, label: toolName, status: 'idle' };\n }\n}\n\n/** `data-om-*` attributes let the thread's bracket overlay find each marker in the DOM. */\nexport const ObservationMarkerBadge = ({ toolName, omData }: ObservationMarkerBadgeProps) => {\n const state = markerState(omData);\n const isReflection = omData.operationType === 'reflection';\n const { icon, label, detail, status, body } = markerLine(toolName, state, omData);\n const hasExtractions =\n extractedValueEntries(omData.extractedValues).length > 0 || (omData.extractionFailures?.length ?? 0) > 0;\n const opensItself = (state === 'failed' && isReflection) || hasExtractions;\n const [openedByUser, setOpenedByUser] = useState<boolean>();\n const [openedItselfBefore, setOpenedItselfBefore] = useState(opensItself);\n if (opensItself !== openedItselfBefore) {\n setOpenedItselfBefore(opensItself);\n if (opensItself) setOpenedByUser(undefined);\n }\n\n return (\n <Activity\n open={openedByUser ?? opensItself}\n onOpenChange={setOpenedByUser}\n foldable={Boolean(body)}\n status={status}\n aria-label={label}\n data-om-badge={omData.cycleId ?? ''}\n data-om-state={state}\n data-om-type={isReflection ? 'reflection' : 'observation'}\n data-om-no-highlight={state === 'activated' ? 'true' : undefined}\n >\n <ActivityTrigger>\n <ActivityHeadline icon={icon} label={label} detail={detail} detailFont=\"sans\" />\n </ActivityTrigger>\n {body && <ActivityContent>{body}</ActivityContent>}\n </Activity>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
const lucideReact = require('lucide-react');
|
|
7
|
+
const domains_chat_tools_badges_observationMarkerFormat = require('./observation-marker-format.cjs.js');
|
|
8
|
+
const domains_chat_tools_badges_observationRenderer = require('./observation-renderer.cjs.js');
|
|
9
|
+
const activity = require('../../../../activity-8egTNbaI.cjs');
|
|
10
|
+
const markdownRenderer = require('../../../../markdown-renderer-CSwjfPaf.cjs');
|
|
11
|
+
const Txt = require('../../../../Txt-DPmEpNbp.cjs');
|
|
12
|
+
const utils_duration = require('../../../../utils/duration.cjs.js');
|
|
13
|
+
|
|
14
|
+
const markdownCode = "[&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta";
|
|
15
|
+
const ObservationStats = ({ inputTokens, outputTokens, durationMs }) => {
|
|
16
|
+
const ratio = domains_chat_tools_badges_observationMarkerFormat.compressionRatio(inputTokens, outputTokens);
|
|
17
|
+
const stats = [
|
|
18
|
+
inputTokens ? `Input: ${domains_chat_tools_badges_observationMarkerFormat.formatTokens(inputTokens)}` : void 0,
|
|
19
|
+
outputTokens ? `Output: ${domains_chat_tools_badges_observationMarkerFormat.formatTokens(outputTokens)}` : void 0,
|
|
20
|
+
ratio && ratio > 1 ? `Compression: ${ratio}x` : void 0,
|
|
21
|
+
durationMs ? `Duration: ${utils_duration.formatDuration(durationMs)}` : void 0
|
|
22
|
+
].filter(Boolean);
|
|
23
|
+
if (stats.length === 0) return null;
|
|
24
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "p", variant: "meta", tone: "muted", className: "tabular-nums", children: stats.join(" · ") });
|
|
25
|
+
};
|
|
26
|
+
const ObservationSections = ({
|
|
27
|
+
observations,
|
|
28
|
+
isReflection,
|
|
29
|
+
maxHeight,
|
|
30
|
+
currentTask,
|
|
31
|
+
suggestedResponse
|
|
32
|
+
}) => {
|
|
33
|
+
const hasSideSections = Boolean(currentTask || suggestedResponse);
|
|
34
|
+
const observationsLabel = isReflection ? "Reflections" : "Observations";
|
|
35
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
36
|
+
observations && (hasSideSections ? /* @__PURE__ */ jsxRuntime.jsx(activity.ActivityItem, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ScrollText, {}), label: observationsLabel, "aria-label": observationsLabel, defaultOpen: true, children: /* @__PURE__ */ jsxRuntime.jsx(domains_chat_tools_badges_observationRenderer.ObservationRenderer, { observations, maxHeight }) }) : /* @__PURE__ */ jsxRuntime.jsx(domains_chat_tools_badges_observationRenderer.ObservationRenderer, { observations, maxHeight })),
|
|
37
|
+
currentTask && /* @__PURE__ */ jsxRuntime.jsx(activity.ActivityItem, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ListTodo, {}), label: "Current task", "aria-label": "Current task", children: /* @__PURE__ */ jsxRuntime.jsx(markdownRenderer.MarkdownRenderer, { className: `text-caption text-foreground ${markdownCode}`, children: currentTask }) }),
|
|
38
|
+
suggestedResponse && /* @__PURE__ */ jsxRuntime.jsx(activity.ActivityItem, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageSquareReply, {}), label: "Suggested response", "aria-label": "Suggested response", children: /* @__PURE__ */ jsxRuntime.jsx(markdownRenderer.MarkdownRenderer, { className: `text-caption text-foreground/80 italic ${markdownCode}`, children: suggestedResponse }) })
|
|
39
|
+
] });
|
|
40
|
+
};
|
|
41
|
+
const Extractions = ({ extractedValues, extractionFailures = [] }) => {
|
|
42
|
+
const entries = domains_chat_tools_badges_observationMarkerFormat.extractedValueEntries(extractedValues);
|
|
43
|
+
if (entries.length === 0 && extractionFailures.length === 0) return null;
|
|
44
|
+
const detail = [
|
|
45
|
+
`${entries.length} extracted`,
|
|
46
|
+
extractionFailures.length > 0 ? `${extractionFailures.length} failed` : void 0
|
|
47
|
+
].filter(Boolean).join(" · ");
|
|
48
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(activity.ActivityItem, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Braces, {}), label: "Extractions", detail, detailFont: "sans", "aria-label": "Extractions", children: [
|
|
49
|
+
entries.map(([slug, value]) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-md border border-border bg-fill-subtle p-2", children: [
|
|
50
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "div", variant: "meta", tone: "muted", className: "tracking-wide uppercase", children: slug }),
|
|
51
|
+
typeof value === "object" && value !== null ? /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "mt-1 max-h-40 overflow-auto text-caption break-words whitespace-pre-wrap text-foreground/80", children: domains_chat_tools_badges_observationMarkerFormat.formatExtractedValue(value) }) : /* @__PURE__ */ jsxRuntime.jsx(markdownRenderer.MarkdownRenderer, { className: `mt-1 text-caption text-foreground/80 ${markdownCode}`, children: domains_chat_tools_badges_observationMarkerFormat.formatExtractedValue(value) })
|
|
52
|
+
] }, slug)),
|
|
53
|
+
extractionFailures.map((failure) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
54
|
+
"div",
|
|
55
|
+
{
|
|
56
|
+
className: "rounded-md border border-destructive-edge bg-destructive-subtle p-2 text-destructive-subtle-foreground",
|
|
57
|
+
children: [
|
|
58
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "div", variant: "meta", className: "tracking-wide uppercase", children: failure.slug }),
|
|
59
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "div", variant: "caption", className: "mt-1", children: failure.error })
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
failure.slug
|
|
63
|
+
))
|
|
64
|
+
] });
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
exports.Extractions = Extractions;
|
|
68
|
+
exports.ObservationSections = ObservationSections;
|
|
69
|
+
exports.ObservationStats = ObservationStats;
|
|
70
|
+
//# sourceMappingURL=observation-marker-details.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-marker-details.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-details.tsx"],"sourcesContent":["import { Braces, ListTodo, MessageSquareReply, ScrollText } from 'lucide-react';\nimport {\n compressionRatio,\n extractedValueEntries,\n formatExtractedValue,\n formatTokens,\n} from './observation-marker-format';\nimport { ObservationRenderer } from './observation-renderer';\nimport { ActivityItem } from '@/ds/components/ai/activity';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDuration } from '@/utils/duration';\n\nconst markdownCode = '[&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta';\n\nexport interface ObservationStatsProps {\n inputTokens?: number;\n outputTokens?: number;\n durationMs?: number;\n}\n\nexport const ObservationStats = ({ inputTokens, outputTokens, durationMs }: ObservationStatsProps) => {\n const ratio = compressionRatio(inputTokens, outputTokens);\n const stats = [\n inputTokens ? `Input: ${formatTokens(inputTokens)}` : undefined,\n outputTokens ? `Output: ${formatTokens(outputTokens)}` : undefined,\n ratio && ratio > 1 ? `Compression: ${ratio}x` : undefined,\n durationMs ? `Duration: ${formatDuration(durationMs)}` : undefined,\n ].filter(Boolean);\n\n if (stats.length === 0) return null;\n\n return (\n <Txt as=\"p\" variant=\"meta\" tone=\"muted\" className=\"tabular-nums\">\n {stats.join(' · ')}\n </Txt>\n );\n};\n\nexport interface ObservationSectionsProps {\n observations?: string;\n isReflection: boolean;\n maxHeight: string;\n currentTask?: string;\n suggestedResponse?: string;\n}\n\nexport const ObservationSections = ({\n observations,\n isReflection,\n maxHeight,\n currentTask,\n suggestedResponse,\n}: ObservationSectionsProps) => {\n const hasSideSections = Boolean(currentTask || suggestedResponse);\n const observationsLabel = isReflection ? 'Reflections' : 'Observations';\n\n return (\n <>\n {observations &&\n (hasSideSections ? (\n <ActivityItem icon={<ScrollText />} label={observationsLabel} aria-label={observationsLabel} defaultOpen>\n <ObservationRenderer observations={observations} maxHeight={maxHeight} />\n </ActivityItem>\n ) : (\n <ObservationRenderer observations={observations} maxHeight={maxHeight} />\n ))}\n {currentTask && (\n <ActivityItem icon={<ListTodo />} label=\"Current task\" aria-label=\"Current task\">\n <MarkdownRenderer className={`text-caption text-foreground ${markdownCode}`}>{currentTask}</MarkdownRenderer>\n </ActivityItem>\n )}\n {suggestedResponse && (\n <ActivityItem icon={<MessageSquareReply />} label=\"Suggested response\" aria-label=\"Suggested response\">\n <MarkdownRenderer className={`text-caption text-foreground/80 italic ${markdownCode}`}>\n {suggestedResponse}\n </MarkdownRenderer>\n </ActivityItem>\n )}\n </>\n );\n};\n\nexport interface ExtractionsProps {\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\nexport const Extractions = ({ extractedValues, extractionFailures = [] }: ExtractionsProps) => {\n const entries = extractedValueEntries(extractedValues);\n if (entries.length === 0 && extractionFailures.length === 0) return null;\n\n const detail = [\n `${entries.length} extracted`,\n extractionFailures.length > 0 ? `${extractionFailures.length} failed` : undefined,\n ]\n .filter(Boolean)\n .join(' · ');\n\n return (\n <ActivityItem icon={<Braces />} label=\"Extractions\" detail={detail} detailFont=\"sans\" aria-label=\"Extractions\">\n {entries.map(([slug, value]) => (\n <div key={slug} className=\"rounded-md border border-border bg-fill-subtle p-2\">\n <Txt as=\"div\" variant=\"meta\" tone=\"muted\" className=\"tracking-wide uppercase\">\n {slug}\n </Txt>\n {typeof value === 'object' && value !== null ? (\n <pre className=\"mt-1 max-h-40 overflow-auto text-caption break-words whitespace-pre-wrap text-foreground/80\">\n {formatExtractedValue(value)}\n </pre>\n ) : (\n <MarkdownRenderer className={`mt-1 text-caption text-foreground/80 ${markdownCode}`}>\n {formatExtractedValue(value)}\n </MarkdownRenderer>\n )}\n </div>\n ))}\n {extractionFailures.map(failure => (\n <div\n key={failure.slug}\n className=\"rounded-md border border-destructive-edge bg-destructive-subtle p-2 text-destructive-subtle-foreground\"\n >\n <Txt as=\"div\" variant=\"meta\" className=\"tracking-wide uppercase\">\n {failure.slug}\n </Txt>\n <Txt as=\"div\" variant=\"caption\" className=\"mt-1\">\n {failure.error}\n </Txt>\n </div>\n ))}\n </ActivityItem>\n );\n};\n"],"names":["compressionRatio","formatTokens","formatDuration","jsx","Txt","jsxs","Fragment","ActivityItem","ScrollText","ObservationRenderer","ListTodo","MarkdownRenderer","MessageSquareReply","extractedValueEntries","Braces","formatExtractedValue"],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { ScrollText, ListTodo, MessageSquareReply, Braces } from 'lucide-react';
|
|
3
|
+
import { formatTokens, extractedValueEntries, formatExtractedValue, compressionRatio } from './observation-marker-format.es.js';
|
|
4
|
+
import { ObservationRenderer } from './observation-renderer.es.js';
|
|
5
|
+
import { g as ActivityItem } from '../../../../activity-Duth8KP_.js';
|
|
6
|
+
import { M as MarkdownRenderer } from '../../../../markdown-renderer-Bl0V7FCo.js';
|
|
7
|
+
import { T as Txt } from '../../../../Txt-BP1SRHmL.js';
|
|
8
|
+
import { formatDuration } from '../../../../utils/duration.es.js';
|
|
9
|
+
|
|
10
|
+
const markdownCode = "[&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta";
|
|
11
|
+
const ObservationStats = ({ inputTokens, outputTokens, durationMs }) => {
|
|
12
|
+
const ratio = compressionRatio(inputTokens, outputTokens);
|
|
13
|
+
const stats = [
|
|
14
|
+
inputTokens ? `Input: ${formatTokens(inputTokens)}` : void 0,
|
|
15
|
+
outputTokens ? `Output: ${formatTokens(outputTokens)}` : void 0,
|
|
16
|
+
ratio && ratio > 1 ? `Compression: ${ratio}x` : void 0,
|
|
17
|
+
durationMs ? `Duration: ${formatDuration(durationMs)}` : void 0
|
|
18
|
+
].filter(Boolean);
|
|
19
|
+
if (stats.length === 0) return null;
|
|
20
|
+
return /* @__PURE__ */ jsx(Txt, { as: "p", variant: "meta", tone: "muted", className: "tabular-nums", children: stats.join(" · ") });
|
|
21
|
+
};
|
|
22
|
+
const ObservationSections = ({
|
|
23
|
+
observations,
|
|
24
|
+
isReflection,
|
|
25
|
+
maxHeight,
|
|
26
|
+
currentTask,
|
|
27
|
+
suggestedResponse
|
|
28
|
+
}) => {
|
|
29
|
+
const hasSideSections = Boolean(currentTask || suggestedResponse);
|
|
30
|
+
const observationsLabel = isReflection ? "Reflections" : "Observations";
|
|
31
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
32
|
+
observations && (hasSideSections ? /* @__PURE__ */ jsx(ActivityItem, { icon: /* @__PURE__ */ jsx(ScrollText, {}), label: observationsLabel, "aria-label": observationsLabel, defaultOpen: true, children: /* @__PURE__ */ jsx(ObservationRenderer, { observations, maxHeight }) }) : /* @__PURE__ */ jsx(ObservationRenderer, { observations, maxHeight })),
|
|
33
|
+
currentTask && /* @__PURE__ */ jsx(ActivityItem, { icon: /* @__PURE__ */ jsx(ListTodo, {}), label: "Current task", "aria-label": "Current task", children: /* @__PURE__ */ jsx(MarkdownRenderer, { className: `text-caption text-foreground ${markdownCode}`, children: currentTask }) }),
|
|
34
|
+
suggestedResponse && /* @__PURE__ */ jsx(ActivityItem, { icon: /* @__PURE__ */ jsx(MessageSquareReply, {}), label: "Suggested response", "aria-label": "Suggested response", children: /* @__PURE__ */ jsx(MarkdownRenderer, { className: `text-caption text-foreground/80 italic ${markdownCode}`, children: suggestedResponse }) })
|
|
35
|
+
] });
|
|
36
|
+
};
|
|
37
|
+
const Extractions = ({ extractedValues, extractionFailures = [] }) => {
|
|
38
|
+
const entries = extractedValueEntries(extractedValues);
|
|
39
|
+
if (entries.length === 0 && extractionFailures.length === 0) return null;
|
|
40
|
+
const detail = [
|
|
41
|
+
`${entries.length} extracted`,
|
|
42
|
+
extractionFailures.length > 0 ? `${extractionFailures.length} failed` : void 0
|
|
43
|
+
].filter(Boolean).join(" · ");
|
|
44
|
+
return /* @__PURE__ */ jsxs(ActivityItem, { icon: /* @__PURE__ */ jsx(Braces, {}), label: "Extractions", detail, detailFont: "sans", "aria-label": "Extractions", children: [
|
|
45
|
+
entries.map(([slug, value]) => /* @__PURE__ */ jsxs("div", { className: "rounded-md border border-border bg-fill-subtle p-2", children: [
|
|
46
|
+
/* @__PURE__ */ jsx(Txt, { as: "div", variant: "meta", tone: "muted", className: "tracking-wide uppercase", children: slug }),
|
|
47
|
+
typeof value === "object" && value !== null ? /* @__PURE__ */ jsx("pre", { className: "mt-1 max-h-40 overflow-auto text-caption break-words whitespace-pre-wrap text-foreground/80", children: formatExtractedValue(value) }) : /* @__PURE__ */ jsx(MarkdownRenderer, { className: `mt-1 text-caption text-foreground/80 ${markdownCode}`, children: formatExtractedValue(value) })
|
|
48
|
+
] }, slug)),
|
|
49
|
+
extractionFailures.map((failure) => /* @__PURE__ */ jsxs(
|
|
50
|
+
"div",
|
|
51
|
+
{
|
|
52
|
+
className: "rounded-md border border-destructive-edge bg-destructive-subtle p-2 text-destructive-subtle-foreground",
|
|
53
|
+
children: [
|
|
54
|
+
/* @__PURE__ */ jsx(Txt, { as: "div", variant: "meta", className: "tracking-wide uppercase", children: failure.slug }),
|
|
55
|
+
/* @__PURE__ */ jsx(Txt, { as: "div", variant: "caption", className: "mt-1", children: failure.error })
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
failure.slug
|
|
59
|
+
))
|
|
60
|
+
] });
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export { Extractions, ObservationSections, ObservationStats };
|
|
64
|
+
//# sourceMappingURL=observation-marker-details.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-marker-details.es.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-details.tsx"],"sourcesContent":["import { Braces, ListTodo, MessageSquareReply, ScrollText } from 'lucide-react';\nimport {\n compressionRatio,\n extractedValueEntries,\n formatExtractedValue,\n formatTokens,\n} from './observation-marker-format';\nimport { ObservationRenderer } from './observation-renderer';\nimport { ActivityItem } from '@/ds/components/ai/activity';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDuration } from '@/utils/duration';\n\nconst markdownCode = '[&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta';\n\nexport interface ObservationStatsProps {\n inputTokens?: number;\n outputTokens?: number;\n durationMs?: number;\n}\n\nexport const ObservationStats = ({ inputTokens, outputTokens, durationMs }: ObservationStatsProps) => {\n const ratio = compressionRatio(inputTokens, outputTokens);\n const stats = [\n inputTokens ? `Input: ${formatTokens(inputTokens)}` : undefined,\n outputTokens ? `Output: ${formatTokens(outputTokens)}` : undefined,\n ratio && ratio > 1 ? `Compression: ${ratio}x` : undefined,\n durationMs ? `Duration: ${formatDuration(durationMs)}` : undefined,\n ].filter(Boolean);\n\n if (stats.length === 0) return null;\n\n return (\n <Txt as=\"p\" variant=\"meta\" tone=\"muted\" className=\"tabular-nums\">\n {stats.join(' · ')}\n </Txt>\n );\n};\n\nexport interface ObservationSectionsProps {\n observations?: string;\n isReflection: boolean;\n maxHeight: string;\n currentTask?: string;\n suggestedResponse?: string;\n}\n\nexport const ObservationSections = ({\n observations,\n isReflection,\n maxHeight,\n currentTask,\n suggestedResponse,\n}: ObservationSectionsProps) => {\n const hasSideSections = Boolean(currentTask || suggestedResponse);\n const observationsLabel = isReflection ? 'Reflections' : 'Observations';\n\n return (\n <>\n {observations &&\n (hasSideSections ? (\n <ActivityItem icon={<ScrollText />} label={observationsLabel} aria-label={observationsLabel} defaultOpen>\n <ObservationRenderer observations={observations} maxHeight={maxHeight} />\n </ActivityItem>\n ) : (\n <ObservationRenderer observations={observations} maxHeight={maxHeight} />\n ))}\n {currentTask && (\n <ActivityItem icon={<ListTodo />} label=\"Current task\" aria-label=\"Current task\">\n <MarkdownRenderer className={`text-caption text-foreground ${markdownCode}`}>{currentTask}</MarkdownRenderer>\n </ActivityItem>\n )}\n {suggestedResponse && (\n <ActivityItem icon={<MessageSquareReply />} label=\"Suggested response\" aria-label=\"Suggested response\">\n <MarkdownRenderer className={`text-caption text-foreground/80 italic ${markdownCode}`}>\n {suggestedResponse}\n </MarkdownRenderer>\n </ActivityItem>\n )}\n </>\n );\n};\n\nexport interface ExtractionsProps {\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\nexport const Extractions = ({ extractedValues, extractionFailures = [] }: ExtractionsProps) => {\n const entries = extractedValueEntries(extractedValues);\n if (entries.length === 0 && extractionFailures.length === 0) return null;\n\n const detail = [\n `${entries.length} extracted`,\n extractionFailures.length > 0 ? `${extractionFailures.length} failed` : undefined,\n ]\n .filter(Boolean)\n .join(' · ');\n\n return (\n <ActivityItem icon={<Braces />} label=\"Extractions\" detail={detail} detailFont=\"sans\" aria-label=\"Extractions\">\n {entries.map(([slug, value]) => (\n <div key={slug} className=\"rounded-md border border-border bg-fill-subtle p-2\">\n <Txt as=\"div\" variant=\"meta\" tone=\"muted\" className=\"tracking-wide uppercase\">\n {slug}\n </Txt>\n {typeof value === 'object' && value !== null ? (\n <pre className=\"mt-1 max-h-40 overflow-auto text-caption break-words whitespace-pre-wrap text-foreground/80\">\n {formatExtractedValue(value)}\n </pre>\n ) : (\n <MarkdownRenderer className={`mt-1 text-caption text-foreground/80 ${markdownCode}`}>\n {formatExtractedValue(value)}\n </MarkdownRenderer>\n )}\n </div>\n ))}\n {extractionFailures.map(failure => (\n <div\n key={failure.slug}\n className=\"rounded-md border border-destructive-edge bg-destructive-subtle p-2 text-destructive-subtle-foreground\"\n >\n <Txt as=\"div\" variant=\"meta\" className=\"tracking-wide uppercase\">\n {failure.slug}\n </Txt>\n <Txt as=\"div\" variant=\"caption\" className=\"mt-1\">\n {failure.error}\n </Txt>\n </div>\n ))}\n </ActivityItem>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
function formatTokens(tokens) {
|
|
6
|
+
return tokens >= 1e3 ? `${(tokens / 1e3).toFixed(1)}k` : String(Math.round(tokens));
|
|
7
|
+
}
|
|
8
|
+
function compressionRatio(inputTokens, outputTokens) {
|
|
9
|
+
return inputTokens && outputTokens ? Math.round(inputTokens / outputTokens) : void 0;
|
|
10
|
+
}
|
|
11
|
+
const hasExtractedValue = (value) => value !== void 0 && value !== null && value !== "";
|
|
12
|
+
function extractedValueEntries(values) {
|
|
13
|
+
return Object.entries(values ?? {}).filter(([, value]) => hasExtractedValue(value));
|
|
14
|
+
}
|
|
15
|
+
function formatExtractedValue(value) {
|
|
16
|
+
if (typeof value === "string") return value;
|
|
17
|
+
if (typeof value === "number" || typeof value === "boolean") return String(value);
|
|
18
|
+
try {
|
|
19
|
+
return JSON.stringify(value, null, 2) ?? String(value);
|
|
20
|
+
} catch {
|
|
21
|
+
return String(value);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
exports.compressionRatio = compressionRatio;
|
|
26
|
+
exports.extractedValueEntries = extractedValueEntries;
|
|
27
|
+
exports.formatExtractedValue = formatExtractedValue;
|
|
28
|
+
exports.formatTokens = formatTokens;
|
|
29
|
+
//# sourceMappingURL=observation-marker-format.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-marker-format.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-format.ts"],"sourcesContent":["export function formatTokens(tokens: number): string {\n return tokens >= 1000 ? `${(tokens / 1000).toFixed(1)}k` : String(Math.round(tokens));\n}\n\nexport function compressionRatio(inputTokens?: number, outputTokens?: number): number | undefined {\n return inputTokens && outputTokens ? Math.round(inputTokens / outputTokens) : undefined;\n}\n\nconst hasExtractedValue = (value: unknown) => value !== undefined && value !== null && value !== '';\n\nexport function extractedValueEntries(values?: Record<string, unknown>): Array<[string, unknown]> {\n return Object.entries(values ?? {}).filter(([, value]) => hasExtractedValue(value));\n}\n\nexport function formatExtractedValue(value: unknown): string {\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean') return String(value);\n try {\n return JSON.stringify(value, null, 2) ?? String(value);\n } catch {\n return String(value);\n }\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,aAAa,MAAA,EAAwB;AACnD,EAAA,OAAO,MAAA,IAAU,GAAA,GAAO,CAAA,EAAA,CAAI,MAAA,GAAS,GAAA,EAAM,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,CAAA,GAAM,MAAA,CAAO,IAAA,CAAK,KAAA,CAAM,MAAM,CAAC,CAAA;AACtF;AAEO,SAAS,gBAAA,CAAiB,aAAsB,YAAA,EAA2C;AAChG,EAAA,OAAO,eAAe,YAAA,GAAe,IAAA,CAAK,KAAA,CAAM,WAAA,GAAc,YAAY,CAAA,GAAI,MAAA;AAChF;AAEA,MAAM,oBAAoB,CAAC,KAAA,KAAmB,UAAU,MAAA,IAAa,KAAA,KAAU,QAAQ,KAAA,KAAU,EAAA;AAE1F,SAAS,sBAAsB,MAAA,EAA4D;AAChG,EAAA,OAAO,MAAA,CAAO,OAAA,CAAQ,MAAA,IAAU,EAAE,CAAA,CAAE,MAAA,CAAO,CAAC,GAAG,KAAK,CAAA,KAAM,iBAAA,CAAkB,KAAK,CAAC,CAAA;AACpF;AAEO,SAAS,qBAAqB,KAAA,EAAwB;AAC3D,EAAA,IAAI,OAAO,KAAA,KAAU,QAAA,EAAU,OAAO,KAAA;AACtC,EAAA,IAAI,OAAO,UAAU,QAAA,IAAY,OAAO,UAAU,SAAA,EAAW,OAAO,OAAO,KAAK,CAAA;AAChF,EAAA,IAAI;AACF,IAAA,OAAO,KAAK,SAAA,CAAU,KAAA,EAAO,MAAM,CAAC,CAAA,IAAK,OAAO,KAAK,CAAA;AAAA,EACvD,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,OAAO,KAAK,CAAA;AAAA,EACrB;AACF;;;;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
function formatTokens(tokens) {
|
|
2
|
+
return tokens >= 1e3 ? `${(tokens / 1e3).toFixed(1)}k` : String(Math.round(tokens));
|
|
3
|
+
}
|
|
4
|
+
function compressionRatio(inputTokens, outputTokens) {
|
|
5
|
+
return inputTokens && outputTokens ? Math.round(inputTokens / outputTokens) : void 0;
|
|
6
|
+
}
|
|
7
|
+
const hasExtractedValue = (value) => value !== void 0 && value !== null && value !== "";
|
|
8
|
+
function extractedValueEntries(values) {
|
|
9
|
+
return Object.entries(values ?? {}).filter(([, value]) => hasExtractedValue(value));
|
|
10
|
+
}
|
|
11
|
+
function formatExtractedValue(value) {
|
|
12
|
+
if (typeof value === "string") return value;
|
|
13
|
+
if (typeof value === "number" || typeof value === "boolean") return String(value);
|
|
14
|
+
try {
|
|
15
|
+
return JSON.stringify(value, null, 2) ?? String(value);
|
|
16
|
+
} catch {
|
|
17
|
+
return String(value);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { compressionRatio, extractedValueEntries, formatExtractedValue, formatTokens };
|
|
22
|
+
//# sourceMappingURL=observation-marker-format.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-marker-format.es.js","sources":["../../../../../src/domains/chat/tools/badges/observation-marker-format.ts"],"sourcesContent":["export function formatTokens(tokens: number): string {\n return tokens >= 1000 ? `${(tokens / 1000).toFixed(1)}k` : String(Math.round(tokens));\n}\n\nexport function compressionRatio(inputTokens?: number, outputTokens?: number): number | undefined {\n return inputTokens && outputTokens ? Math.round(inputTokens / outputTokens) : undefined;\n}\n\nconst hasExtractedValue = (value: unknown) => value !== undefined && value !== null && value !== '';\n\nexport function extractedValueEntries(values?: Record<string, unknown>): Array<[string, unknown]> {\n return Object.entries(values ?? {}).filter(([, value]) => hasExtractedValue(value));\n}\n\nexport function formatExtractedValue(value: unknown): string {\n if (typeof value === 'string') return value;\n if (typeof value === 'number' || typeof value === 'boolean') return String(value);\n try {\n return JSON.stringify(value, null, 2) ?? String(value);\n } catch {\n return String(value);\n }\n}\n"],"names":[],"mappings":"AAAO,SAAS,aAAa,MAAA,EAAwB;AACnD,EAAA,OAAO,MAAA,IAAU,GAAA,GAAO,CAAA,EAAA,CAAI,MAAA,GAAS,GAAA,EAAM,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,CAAA,GAAM,MAAA,CAAO,IAAA,CAAK,KAAA,CAAM,MAAM,CAAC,CAAA;AACtF;AAEO,SAAS,gBAAA,CAAiB,aAAsB,YAAA,EAA2C;AAChG,EAAA,OAAO,eAAe,YAAA,GAAe,IAAA,CAAK,KAAA,CAAM,WAAA,GAAc,YAAY,CAAA,GAAI,MAAA;AAChF;AAEA,MAAM,oBAAoB,CAAC,KAAA,KAAmB,UAAU,MAAA,IAAa,KAAA,KAAU,QAAQ,KAAA,KAAU,EAAA;AAE1F,SAAS,sBAAsB,MAAA,EAA4D;AAChG,EAAA,OAAO,MAAA,CAAO,OAAA,CAAQ,MAAA,IAAU,EAAE,CAAA,CAAE,MAAA,CAAO,CAAC,GAAG,KAAK,CAAA,KAAM,iBAAA,CAAkB,KAAK,CAAC,CAAA;AACpF;AAEO,SAAS,qBAAqB,KAAA,EAAwB;AAC3D,EAAA,IAAI,OAAO,KAAA,KAAU,QAAA,EAAU,OAAO,KAAA;AACtC,EAAA,IAAI,OAAO,UAAU,QAAA,IAAY,OAAO,UAAU,SAAA,EAAW,OAAO,OAAO,KAAK,CAAA;AAChF,EAAA,IAAI;AACF,IAAA,OAAO,KAAK,SAAA,CAAU,KAAA,EAAO,MAAM,CAAC,CAAA,IAAK,OAAO,KAAK,CAAA;AAAA,EACvD,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,OAAO,KAAK,CAAA;AAAA,EACrB;AACF;;;;"}
|
|
@@ -4,25 +4,11 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const React = require('react');
|
|
7
|
-
const
|
|
7
|
+
const domains_memory_lib_observationPriority = require('../../../memory/lib/observation-priority.cjs.js');
|
|
8
|
+
const markdownRenderer = require('../../../../markdown-renderer-CSwjfPaf.cjs');
|
|
8
9
|
const Txt = require('../../../../Txt-DPmEpNbp.cjs');
|
|
9
10
|
const utils_cn = require('../../../../cn-DG0X1KEP.cjs');
|
|
10
11
|
|
|
11
|
-
const PRIORITY_COLORS = {
|
|
12
|
-
"🔴": "text-foreground",
|
|
13
|
-
"🟡": "text-foreground",
|
|
14
|
-
"🟢": "text-foreground"
|
|
15
|
-
};
|
|
16
|
-
const PRIORITY_BG = {
|
|
17
|
-
"🔴": "bg-purple-500/15",
|
|
18
|
-
"🟡": "bg-blue-500/15",
|
|
19
|
-
"🟢": "bg-green-500/15"
|
|
20
|
-
};
|
|
21
|
-
const PRIORITY_BORDER = {
|
|
22
|
-
"🔴": "border-l-purple-500",
|
|
23
|
-
"🟡": "border-l-blue-500",
|
|
24
|
-
"🟢": "border-l-green-500"
|
|
25
|
-
};
|
|
26
12
|
function parseObservationLine(line, isNested = false) {
|
|
27
13
|
const trimmed = line.trim();
|
|
28
14
|
if (!trimmed) return null;
|
|
@@ -144,9 +130,9 @@ function ObservationItem({
|
|
|
144
130
|
observation,
|
|
145
131
|
useInheritedTextColor
|
|
146
132
|
}) {
|
|
147
|
-
const priorityColor = useInheritedTextColor ? "" : observation.priority ?
|
|
148
|
-
const bgColor = useInheritedTextColor ? "" : observation.priority ?
|
|
149
|
-
const borderColor = observation.priority ?
|
|
133
|
+
const priorityColor = useInheritedTextColor ? "" : observation.priority ? "text-foreground" : "text-muted-foreground";
|
|
134
|
+
const bgColor = useInheritedTextColor ? "" : observation.priority ? domains_memory_lib_observationPriority.observationPriorityTone[domains_memory_lib_observationPriority.observationPriorityByEmoji[observation.priority]].fill : "";
|
|
135
|
+
const borderColor = observation.priority ? domains_memory_lib_observationPriority.observationPriorityTone[domains_memory_lib_observationPriority.observationPriorityByEmoji[observation.priority]].accentBorder : "border-l-transparent";
|
|
150
136
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: utils_cn.cn("py-0.5", observation.isNested && "ml-4 border-l border-border/50 pl-2"), children: [
|
|
151
137
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
152
138
|
"div",
|
|
@@ -159,7 +145,7 @@ function ObservationItem({
|
|
|
159
145
|
),
|
|
160
146
|
children: [
|
|
161
147
|
observation.isNested && /* @__PURE__ */ jsxRuntime.jsx("span", { className: utils_cn.cn("shrink-0", useInheritedTextColor ? "opacity-60" : "text-muted-foreground"), children: "→" }),
|
|
162
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 [&_code]:rounded [&_code]:bg-
|
|
148
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 [&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta", children: /* @__PURE__ */ jsxRuntime.jsx(markdownRenderer.MarkdownRenderer, { className: priorityColor, children: observation.content }) }),
|
|
163
149
|
observation.time && /* @__PURE__ */ jsxRuntime.jsx(
|
|
164
150
|
Txt.Txt,
|
|
165
151
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observation-renderer.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/observation-renderer.tsx"],"sourcesContent":["'use client';\n\nimport { useMemo } from 'react';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt/Txt';\nimport { cn } from '@/utils/cn';\n\n// Priority emoji to color mapping\n// P1 (🔴) = highest priority = purple theme\n// P2 (🟡) = medium priority = blue theme\n// P3 (🟢) = lower priority = green theme\nconst PRIORITY_COLORS = {\n '🔴': 'text-foreground',\n '🟡': 'text-foreground',\n '🟢': 'text-foreground',\n} as const;\n\n// Dark backgrounds for all priorities\nconst PRIORITY_BG = {\n '🔴': 'bg-purple-500/15',\n '🟡': 'bg-blue-500/15',\n '🟢': 'bg-green-500/15',\n} as const;\n\n// Full color left border accent\nconst PRIORITY_BORDER = {\n '🔴': 'border-l-purple-500',\n '🟡': 'border-l-blue-500',\n '🟢': 'border-l-green-500',\n} as const;\n\ntype Priority = keyof typeof PRIORITY_COLORS;\n\ninterface ParsedObservation {\n priority: Priority | null;\n time: string | null;\n content: string;\n children: ParsedObservation[];\n isNested: boolean;\n}\n\ninterface ParsedDateBlock {\n date: string;\n relativeTime?: string; // e.g., \"(3 days ago)\"\n observations: ParsedObservation[];\n}\n\ninterface ParsedThread {\n threadId: string;\n dateBlocks: ParsedDateBlock[];\n}\n\ninterface ParsedObservations {\n threads: ParsedThread[];\n currentTask?: string;\n suggestedResponse?: string;\n}\n\n/**\n * Parse a single observation line\n */\nfunction parseObservationLine(line: string, isNested: boolean = false): ParsedObservation | null {\n // Match: * 🔴 (14:30) Content or * -> nested content\n const trimmed = line.trim();\n\n if (!trimmed) return null;\n\n // Check for nested arrow format: * -> content\n if (trimmed.startsWith('* ->') || trimmed.startsWith('->')) {\n const content = trimmed.replace(/^\\*?\\s*->\\s*/, '');\n return {\n priority: null,\n time: null,\n content,\n children: [],\n isNested: true,\n };\n }\n\n // Check for indented dash list item: - content (used as sub-items)\n if (isNested && trimmed.startsWith('-')) {\n const content = trimmed.replace(/^-\\s*/, '');\n if (!content) return null;\n return {\n priority: null,\n time: null,\n content,\n children: [],\n isNested: true,\n };\n }\n\n // Check for standard format: * 🔴 (14:30) Content\n const match = trimmed.match(/^\\*\\s*(🔴|🟡|🟢)?\\s*(?:\\((\\d{1,2}:\\d{2})\\))?\\s*(.+)$/);\n\n if (match) {\n const [, priority, time, content] = match;\n return {\n priority: (priority as Priority) || null,\n time: time || null,\n content: (content ?? '').trim(),\n children: [],\n isNested,\n };\n }\n\n // Fallback for lines that don't match the pattern\n if (trimmed.startsWith('*')) {\n return {\n priority: null,\n time: null,\n content: trimmed.replace(/^\\*\\s*/, ''),\n children: [],\n isNested,\n };\n }\n\n return null;\n}\n\n/**\n * Parse the raw observations string into structured data\n */\nfunction parseObservations(raw: string): ParsedObservations {\n const result: ParsedObservations = {\n threads: [],\n };\n\n // Extract current-task if present\n const currentTaskMatch = raw.match(/<current-task>\\s*([\\s\\S]*?)\\s*<\\/current-task>/);\n if (currentTaskMatch) {\n result.currentTask = (currentTaskMatch[1] ?? '').trim();\n }\n\n // Extract suggested-response if present\n const suggestedMatch = raw.match(/<suggested-response>\\s*([\\s\\S]*?)\\s*<\\/suggested-response>/);\n if (suggestedMatch) {\n result.suggestedResponse = (suggestedMatch[1] ?? '').trim();\n }\n\n // Extract observations content\n const observationsMatch = raw.match(/<observations>\\s*([\\s\\S]*?)\\s*<\\/observations>/);\n const observationsContent = observationsMatch?.[1] ?? raw;\n\n // Split by thread headers if present\n const threadSections = observationsContent.split(/(?=Thread [a-f0-9]+:)/i);\n\n for (const section of threadSections) {\n const trimmedSection = section.trim();\n if (!trimmedSection) continue;\n\n // Check for thread header\n const threadMatch = trimmedSection.match(/^Thread ([a-f0-9]+):/i);\n const threadId = threadMatch?.[1] ?? 'default';\n const content = threadMatch ? trimmedSection.replace(/^Thread [a-f0-9]+:\\s*/i, '') : trimmedSection;\n\n const thread: ParsedThread = {\n threadId,\n dateBlocks: [],\n };\n\n // Split by date headers\n const lines = content.split('\\n');\n let currentDateBlock: ParsedDateBlock | null = null;\n let lastObservation: ParsedObservation | null = null;\n\n for (const line of lines) {\n const trimmedLine = line.trim();\n\n // Check for date header: \"Date: Dec 4, 2025\" or \"Date: Dec 4, 2025 (3 days ago)\"\n const dateMatch = trimmedLine.match(/^Date:\\s*(.+?)(?:\\s*\\(([^)]+)\\))?$/);\n if (dateMatch) {\n if (currentDateBlock) {\n thread.dateBlocks.push(currentDateBlock);\n }\n currentDateBlock = {\n date: (dateMatch[1] ?? '').trim(),\n relativeTime: dateMatch[2]?.trim(),\n observations: [],\n };\n lastObservation = null;\n continue;\n }\n\n // Check indentation for nested observations\n const indentMatch = line.match(/^(\\s*)/);\n const indent = indentMatch?.[1]?.length ?? 0;\n const isNested =\n indent >= 2 && (trimmedLine.startsWith('* ->') || trimmedLine.startsWith('->') || trimmedLine.startsWith('-'));\n\n const observation = parseObservationLine(trimmedLine, isNested);\n\n if (observation) {\n if (!currentDateBlock) {\n // Create a default date block if none exists\n currentDateBlock = {\n date: 'Recent',\n observations: [],\n };\n }\n\n if (observation.isNested && lastObservation) {\n // Add as child of last observation\n lastObservation.children.push(observation);\n } else {\n currentDateBlock.observations.push(observation);\n lastObservation = observation;\n }\n }\n }\n\n if (currentDateBlock) {\n thread.dateBlocks.push(currentDateBlock);\n }\n\n if (thread.dateBlocks.length > 0) {\n result.threads.push(thread);\n }\n }\n\n return result;\n}\n\n/**\n * Render a single observation\n */\nfunction ObservationItem({\n observation,\n useInheritedTextColor,\n}: {\n observation: ParsedObservation;\n useInheritedTextColor?: boolean;\n}) {\n // When useInheritedTextColor is true, don't apply priority colors - inherit from parent\n const priorityColor = useInheritedTextColor\n ? ''\n : observation.priority\n ? PRIORITY_COLORS[observation.priority]\n : 'text-muted-foreground';\n const bgColor = useInheritedTextColor ? '' : observation.priority ? PRIORITY_BG[observation.priority] : '';\n\n // Get a subtle left border color based on priority (using blue shades for visual hierarchy)\n const borderColor = observation.priority ? PRIORITY_BORDER[observation.priority] : 'border-l-transparent';\n\n return (\n <div className={cn('py-0.5', observation.isNested && 'ml-4 border-l border-border/50 pl-2')}>\n <div\n className={cn(\n 'flex items-start gap-1.5 text-caption',\n bgColor && 'rounded px-1.5 py-0.5',\n bgColor,\n !observation.isNested && observation.priority && `border-l-2 ${borderColor} pl-1.5`,\n )}\n >\n {observation.isNested && (\n <span className={cn('shrink-0', useInheritedTextColor ? 'opacity-60' : 'text-muted-foreground')}>→</span>\n )}\n <span className=\"flex-1 [&_code]:rounded [&_code]:bg-black/10 [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta\">\n <MarkdownRenderer className={priorityColor}>{observation.content}</MarkdownRenderer>\n </span>\n {observation.time && (\n <Txt\n as=\"span\"\n variant=\"meta\"\n font=\"mono\"\n tone={useInheritedTextColor ? undefined : 'muted'}\n className={cn('ml-2 shrink-0', useInheritedTextColor && 'opacity-60')}\n >\n {observation.time}\n </Txt>\n )}\n </div>\n {observation.children.length > 0 && (\n <div className=\"mt-0.5\">\n {observation.children.map((child, i) => (\n <ObservationItem key={i} observation={child} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n )}\n </div>\n );\n}\n\n/**\n * Render a date block\n */\nfunction DateBlock({ block, useInheritedTextColor }: { block: ParsedDateBlock; useInheritedTextColor?: boolean }) {\n return (\n <div className=\"mb-2\">\n <div\n className={cn(\n 'sticky top-0 mb-1 flex items-center gap-2 py-1 backdrop-blur-sm',\n useInheritedTextColor ? 'bg-transparent' : 'bg-background/95',\n )}\n >\n <span className={cn('text-column', useInheritedTextColor ? 'opacity-80' : 'text-foreground')}>\n {block.date}\n </span>\n {block.relativeTime && (\n <span className={cn('text-meta', useInheritedTextColor ? 'opacity-60' : 'text-muted-foreground')}>\n ({block.relativeTime})\n </span>\n )}\n </div>\n <div className=\"space-y-0\">\n {block.observations.map((obs, i) => (\n <ObservationItem key={i} observation={obs} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n </div>\n );\n}\n\n/**\n * Render a thread section\n */\nfunction ThreadSection({\n thread,\n showThreadId,\n useInheritedTextColor,\n}: {\n thread: ParsedThread;\n showThreadId: boolean;\n useInheritedTextColor?: boolean;\n}) {\n return (\n <div className=\"mb-3\">\n {showThreadId && thread.threadId !== 'default' && (\n <div\n className={cn(\n 'mb-1 inline-block rounded px-1 py-0.5 text-meta',\n useInheritedTextColor ? 'bg-current/10 opacity-60' : 'bg-muted/50 text-muted-foreground',\n )}\n >\n Thread{' '}\n <Txt as=\"span\" variant=\"meta\" font=\"mono\">\n {thread.threadId}\n </Txt>\n </div>\n )}\n {thread.dateBlocks.map((block, i) => (\n <DateBlock key={i} block={block} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n );\n}\n\nexport interface ObservationRendererProps {\n observations: string;\n className?: string;\n maxHeight?: string;\n showCurrentTask?: boolean;\n showSuggestedResponse?: boolean;\n /** If true, observations inherit text color from parent instead of using priority colors */\n useInheritedTextColor?: boolean;\n}\n\n/**\n * Renders raw observation text with proper formatting\n */\nexport function ObservationRenderer({\n observations,\n className,\n maxHeight,\n showCurrentTask = false,\n showSuggestedResponse = false,\n useInheritedTextColor = false,\n}: ObservationRendererProps) {\n const parsed = useMemo(() => parseObservations(observations), [observations]);\n\n const hasMultipleThreads =\n parsed.threads.length > 1 || (parsed.threads.length === 1 && parsed.threads[0]?.threadId !== 'default');\n\n if (parsed.threads.length === 0 && !parsed.currentTask && !parsed.suggestedResponse) {\n return <div className={cn('text-caption text-muted-foreground italic', className)}>No observations</div>;\n }\n\n return (\n <div className={cn('overflow-hidden text-body', className)}>\n <div\n className={cn('wrap-break-word', maxHeight && 'overflow-y-auto pr-1')}\n style={maxHeight ? { maxHeight } : undefined}\n >\n {parsed.threads.map((thread, i) => (\n <ThreadSection\n key={thread.threadId + i}\n thread={thread}\n showThreadId={hasMultipleThreads}\n useInheritedTextColor={useInheritedTextColor}\n />\n ))}\n </div>\n\n {showCurrentTask && parsed.currentTask && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <div className=\"mb-1 text-meta tracking-wide text-muted-foreground uppercase\">Current Task</div>\n <div className=\"text-caption whitespace-pre-wrap text-foreground\">{parsed.currentTask}</div>\n </div>\n )}\n\n {showSuggestedResponse && parsed.suggestedResponse && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <div className=\"mb-1 text-meta tracking-wide text-muted-foreground uppercase\">Suggested Response</div>\n <div className=\"text-caption whitespace-pre-wrap text-foreground/80 italic\">{parsed.suggestedResponse}</div>\n </div>\n )}\n </div>\n );\n}\n\nexport default ObservationRenderer;\n"],"names":["jsxs","cn","jsx","MarkdownRenderer","Txt","useMemo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"observation-renderer.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/observation-renderer.tsx"],"sourcesContent":["'use client';\n\nimport { useMemo } from 'react';\nimport { observationPriorityByEmoji, observationPriorityTone } from '@/domains/memory/lib/observation-priority';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt/Txt';\nimport { cn } from '@/utils/cn';\n\ntype Priority = '🔴' | '🟡' | '🟢';\n\ninterface ParsedObservation {\n priority: Priority | null;\n time: string | null;\n content: string;\n children: ParsedObservation[];\n isNested: boolean;\n}\n\ninterface ParsedDateBlock {\n date: string;\n relativeTime?: string; // e.g., \"(3 days ago)\"\n observations: ParsedObservation[];\n}\n\ninterface ParsedThread {\n threadId: string;\n dateBlocks: ParsedDateBlock[];\n}\n\ninterface ParsedObservations {\n threads: ParsedThread[];\n currentTask?: string;\n suggestedResponse?: string;\n}\n\n/**\n * Parse a single observation line\n */\nfunction parseObservationLine(line: string, isNested: boolean = false): ParsedObservation | null {\n // Match: * 🔴 (14:30) Content or * -> nested content\n const trimmed = line.trim();\n\n if (!trimmed) return null;\n\n // Check for nested arrow format: * -> content\n if (trimmed.startsWith('* ->') || trimmed.startsWith('->')) {\n const content = trimmed.replace(/^\\*?\\s*->\\s*/, '');\n return {\n priority: null,\n time: null,\n content,\n children: [],\n isNested: true,\n };\n }\n\n // Check for indented dash list item: - content (used as sub-items)\n if (isNested && trimmed.startsWith('-')) {\n const content = trimmed.replace(/^-\\s*/, '');\n if (!content) return null;\n return {\n priority: null,\n time: null,\n content,\n children: [],\n isNested: true,\n };\n }\n\n // Check for standard format: * 🔴 (14:30) Content\n const match = trimmed.match(/^\\*\\s*(🔴|🟡|🟢)?\\s*(?:\\((\\d{1,2}:\\d{2})\\))?\\s*(.+)$/);\n\n if (match) {\n const [, priority, time, content] = match;\n return {\n priority: (priority as Priority) || null,\n time: time || null,\n content: (content ?? '').trim(),\n children: [],\n isNested,\n };\n }\n\n // Fallback for lines that don't match the pattern\n if (trimmed.startsWith('*')) {\n return {\n priority: null,\n time: null,\n content: trimmed.replace(/^\\*\\s*/, ''),\n children: [],\n isNested,\n };\n }\n\n return null;\n}\n\n/**\n * Parse the raw observations string into structured data\n */\nfunction parseObservations(raw: string): ParsedObservations {\n const result: ParsedObservations = {\n threads: [],\n };\n\n // Extract current-task if present\n const currentTaskMatch = raw.match(/<current-task>\\s*([\\s\\S]*?)\\s*<\\/current-task>/);\n if (currentTaskMatch) {\n result.currentTask = (currentTaskMatch[1] ?? '').trim();\n }\n\n // Extract suggested-response if present\n const suggestedMatch = raw.match(/<suggested-response>\\s*([\\s\\S]*?)\\s*<\\/suggested-response>/);\n if (suggestedMatch) {\n result.suggestedResponse = (suggestedMatch[1] ?? '').trim();\n }\n\n // Extract observations content\n const observationsMatch = raw.match(/<observations>\\s*([\\s\\S]*?)\\s*<\\/observations>/);\n const observationsContent = observationsMatch?.[1] ?? raw;\n\n // Split by thread headers if present\n const threadSections = observationsContent.split(/(?=Thread [a-f0-9]+:)/i);\n\n for (const section of threadSections) {\n const trimmedSection = section.trim();\n if (!trimmedSection) continue;\n\n // Check for thread header\n const threadMatch = trimmedSection.match(/^Thread ([a-f0-9]+):/i);\n const threadId = threadMatch?.[1] ?? 'default';\n const content = threadMatch ? trimmedSection.replace(/^Thread [a-f0-9]+:\\s*/i, '') : trimmedSection;\n\n const thread: ParsedThread = {\n threadId,\n dateBlocks: [],\n };\n\n // Split by date headers\n const lines = content.split('\\n');\n let currentDateBlock: ParsedDateBlock | null = null;\n let lastObservation: ParsedObservation | null = null;\n\n for (const line of lines) {\n const trimmedLine = line.trim();\n\n // Check for date header: \"Date: Dec 4, 2025\" or \"Date: Dec 4, 2025 (3 days ago)\"\n const dateMatch = trimmedLine.match(/^Date:\\s*(.+?)(?:\\s*\\(([^)]+)\\))?$/);\n if (dateMatch) {\n if (currentDateBlock) {\n thread.dateBlocks.push(currentDateBlock);\n }\n currentDateBlock = {\n date: (dateMatch[1] ?? '').trim(),\n relativeTime: dateMatch[2]?.trim(),\n observations: [],\n };\n lastObservation = null;\n continue;\n }\n\n // Check indentation for nested observations\n const indentMatch = line.match(/^(\\s*)/);\n const indent = indentMatch?.[1]?.length ?? 0;\n const isNested =\n indent >= 2 && (trimmedLine.startsWith('* ->') || trimmedLine.startsWith('->') || trimmedLine.startsWith('-'));\n\n const observation = parseObservationLine(trimmedLine, isNested);\n\n if (observation) {\n if (!currentDateBlock) {\n // Create a default date block if none exists\n currentDateBlock = {\n date: 'Recent',\n observations: [],\n };\n }\n\n if (observation.isNested && lastObservation) {\n // Add as child of last observation\n lastObservation.children.push(observation);\n } else {\n currentDateBlock.observations.push(observation);\n lastObservation = observation;\n }\n }\n }\n\n if (currentDateBlock) {\n thread.dateBlocks.push(currentDateBlock);\n }\n\n if (thread.dateBlocks.length > 0) {\n result.threads.push(thread);\n }\n }\n\n return result;\n}\n\n/**\n * Render a single observation\n */\nfunction ObservationItem({\n observation,\n useInheritedTextColor,\n}: {\n observation: ParsedObservation;\n useInheritedTextColor?: boolean;\n}) {\n // When useInheritedTextColor is true, don't apply priority colors - inherit from parent\n const priorityColor = useInheritedTextColor ? '' : observation.priority ? 'text-foreground' : 'text-muted-foreground';\n const bgColor = useInheritedTextColor\n ? ''\n : observation.priority\n ? observationPriorityTone[observationPriorityByEmoji[observation.priority]].fill\n : '';\n\n const borderColor = observation.priority\n ? observationPriorityTone[observationPriorityByEmoji[observation.priority]].accentBorder\n : 'border-l-transparent';\n\n return (\n <div className={cn('py-0.5', observation.isNested && 'ml-4 border-l border-border/50 pl-2')}>\n <div\n className={cn(\n 'flex items-start gap-1.5 text-caption',\n bgColor && 'rounded px-1.5 py-0.5',\n bgColor,\n !observation.isNested && observation.priority && `border-l-2 ${borderColor} pl-1.5`,\n )}\n >\n {observation.isNested && (\n <span className={cn('shrink-0', useInheritedTextColor ? 'opacity-60' : 'text-muted-foreground')}>→</span>\n )}\n <span className=\"flex-1 [&_code]:rounded [&_code]:bg-fill [&_code]:px-1 [&_code]:py-0.5 [&_code]:text-meta\">\n <MarkdownRenderer className={priorityColor}>{observation.content}</MarkdownRenderer>\n </span>\n {observation.time && (\n <Txt\n as=\"span\"\n variant=\"meta\"\n font=\"mono\"\n tone={useInheritedTextColor ? undefined : 'muted'}\n className={cn('ml-2 shrink-0', useInheritedTextColor && 'opacity-60')}\n >\n {observation.time}\n </Txt>\n )}\n </div>\n {observation.children.length > 0 && (\n <div className=\"mt-0.5\">\n {observation.children.map((child, i) => (\n <ObservationItem key={i} observation={child} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n )}\n </div>\n );\n}\n\n/**\n * Render a date block\n */\nfunction DateBlock({ block, useInheritedTextColor }: { block: ParsedDateBlock; useInheritedTextColor?: boolean }) {\n return (\n <div className=\"mb-2\">\n <div\n className={cn(\n 'sticky top-0 mb-1 flex items-center gap-2 py-1 backdrop-blur-sm',\n useInheritedTextColor ? 'bg-transparent' : 'bg-background/95',\n )}\n >\n <span className={cn('text-column', useInheritedTextColor ? 'opacity-80' : 'text-foreground')}>\n {block.date}\n </span>\n {block.relativeTime && (\n <span className={cn('text-meta', useInheritedTextColor ? 'opacity-60' : 'text-muted-foreground')}>\n ({block.relativeTime})\n </span>\n )}\n </div>\n <div className=\"space-y-0\">\n {block.observations.map((obs, i) => (\n <ObservationItem key={i} observation={obs} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n </div>\n );\n}\n\n/**\n * Render a thread section\n */\nfunction ThreadSection({\n thread,\n showThreadId,\n useInheritedTextColor,\n}: {\n thread: ParsedThread;\n showThreadId: boolean;\n useInheritedTextColor?: boolean;\n}) {\n return (\n <div className=\"mb-3\">\n {showThreadId && thread.threadId !== 'default' && (\n <div\n className={cn(\n 'mb-1 inline-block rounded px-1 py-0.5 text-meta',\n useInheritedTextColor ? 'bg-current/10 opacity-60' : 'bg-muted/50 text-muted-foreground',\n )}\n >\n Thread{' '}\n <Txt as=\"span\" variant=\"meta\" font=\"mono\">\n {thread.threadId}\n </Txt>\n </div>\n )}\n {thread.dateBlocks.map((block, i) => (\n <DateBlock key={i} block={block} useInheritedTextColor={useInheritedTextColor} />\n ))}\n </div>\n );\n}\n\nexport interface ObservationRendererProps {\n observations: string;\n className?: string;\n maxHeight?: string;\n showCurrentTask?: boolean;\n showSuggestedResponse?: boolean;\n /** If true, observations inherit text color from parent instead of using priority colors */\n useInheritedTextColor?: boolean;\n}\n\n/**\n * Renders raw observation text with proper formatting\n */\nexport function ObservationRenderer({\n observations,\n className,\n maxHeight,\n showCurrentTask = false,\n showSuggestedResponse = false,\n useInheritedTextColor = false,\n}: ObservationRendererProps) {\n const parsed = useMemo(() => parseObservations(observations), [observations]);\n\n const hasMultipleThreads =\n parsed.threads.length > 1 || (parsed.threads.length === 1 && parsed.threads[0]?.threadId !== 'default');\n\n if (parsed.threads.length === 0 && !parsed.currentTask && !parsed.suggestedResponse) {\n return <div className={cn('text-caption text-muted-foreground italic', className)}>No observations</div>;\n }\n\n return (\n <div className={cn('overflow-hidden text-body', className)}>\n <div\n className={cn('wrap-break-word', maxHeight && 'overflow-y-auto pr-1')}\n style={maxHeight ? { maxHeight } : undefined}\n >\n {parsed.threads.map((thread, i) => (\n <ThreadSection\n key={thread.threadId + i}\n thread={thread}\n showThreadId={hasMultipleThreads}\n useInheritedTextColor={useInheritedTextColor}\n />\n ))}\n </div>\n\n {showCurrentTask && parsed.currentTask && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <div className=\"mb-1 text-meta tracking-wide text-muted-foreground uppercase\">Current Task</div>\n <div className=\"text-caption whitespace-pre-wrap text-foreground\">{parsed.currentTask}</div>\n </div>\n )}\n\n {showSuggestedResponse && parsed.suggestedResponse && (\n <div className=\"mt-2 border-t border-border pt-2\">\n <div className=\"mb-1 text-meta tracking-wide text-muted-foreground uppercase\">Suggested Response</div>\n <div className=\"text-caption whitespace-pre-wrap text-foreground/80 italic\">{parsed.suggestedResponse}</div>\n </div>\n )}\n </div>\n );\n}\n\nexport default ObservationRenderer;\n"],"names":["observationPriorityTone","observationPriorityByEmoji","jsxs","cn","jsx","MarkdownRenderer","Txt","useMemo"],"mappings":"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"}
|