@mastra/playground-ui 61.0.0-alpha.1 → 61.0.0-alpha.2

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.
Files changed (170) hide show
  1. package/dist/{code-BeWhOFT4.js → code-C8akLzcu.js} +12 -9
  2. package/dist/code-C8akLzcu.js.map +1 -0
  3. package/dist/{code-B-x-9sJ1.cjs → code-D_sH618U.cjs} +12 -9
  4. package/dist/code-D_sH618U.cjs.map +1 -0
  5. package/dist/{code-block-C04dJD3G.js → code-block-CXZNO_qi.js} +2 -2
  6. package/dist/{code-block-C04dJD3G.js.map → code-block-CXZNO_qi.js.map} +1 -1
  7. package/dist/{code-block-CMI2oLXm.cjs → code-block-z2hVcNq7.cjs} +2 -2
  8. package/dist/{code-block-CMI2oLXm.cjs.map → code-block-z2hVcNq7.cjs.map} +1 -1
  9. package/dist/components/ChatShell.cjs.js +6 -5
  10. package/dist/components/ChatShell.cjs.js.map +1 -1
  11. package/dist/components/ChatShell.es.js +6 -5
  12. package/dist/components/ChatShell.es.js.map +1 -1
  13. package/dist/components/Code.cjs.js +1 -1
  14. package/dist/components/Code.es.js +1 -1
  15. package/dist/components/CodeBlock.cjs.js +1 -1
  16. package/dist/components/CodeBlock.es.js +1 -1
  17. package/dist/components/DataCodeSection.cjs.js +1 -1
  18. package/dist/components/DataCodeSection.es.js +1 -1
  19. package/dist/components/DataDetailsPanel.cjs.js +1 -1
  20. package/dist/components/DataDetailsPanel.es.js +1 -1
  21. package/dist/components/DataPanel.cjs.js +1 -1
  22. package/dist/components/DataPanel.es.js +1 -1
  23. package/dist/components/MarkdownRenderer.cjs.js +1 -1
  24. package/dist/components/MarkdownRenderer.es.js +1 -1
  25. package/dist/components/MessageScroller.cjs.js +1 -1
  26. package/dist/components/MessageScroller.es.js +1 -1
  27. package/dist/components/Workflow.cjs.js +1 -1
  28. package/dist/components/Workflow.es.js +1 -1
  29. package/dist/components/ai/activity.cjs.js +1 -1
  30. package/dist/components/ai/activity.es.js +1 -1
  31. package/dist/components/ai/plan.cjs.js +1 -1
  32. package/dist/components/ai/plan.es.js +1 -1
  33. package/dist/components/ai/tool-call.cjs.js +1 -1
  34. package/dist/components/ai/tool-call.es.js +1 -1
  35. package/dist/{data-code-section-DIj4CMvD.cjs → data-code-section-BK0bftM-.cjs} +2 -2
  36. package/dist/{data-code-section-DIj4CMvD.cjs.map → data-code-section-BK0bftM-.cjs.map} +1 -1
  37. package/dist/{data-code-section-K-2Bj1zO.js → data-code-section-yMYmVciV.js} +2 -2
  38. package/dist/{data-code-section-K-2Bj1zO.js.map → data-code-section-yMYmVciV.js.map} +1 -1
  39. package/dist/{data-panel-CKvpHRUM.js → data-panel-GT4fMXR0.js} +2 -2
  40. package/dist/{data-panel-CKvpHRUM.js.map → data-panel-GT4fMXR0.js.map} +1 -1
  41. package/dist/{data-panel-YCvno_Di.cjs → data-panel-mzQKwVkT.cjs} +2 -2
  42. package/dist/{data-panel-YCvno_Di.cjs.map → data-panel-mzQKwVkT.cjs.map} +1 -1
  43. package/dist/domains/chat/messages/renderers/message-text.cjs.js +1 -1
  44. package/dist/domains/chat/messages/renderers/message-text.es.js +1 -1
  45. package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js +1 -1
  46. package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +1 -1
  47. package/dist/domains/chat/messages/skill-message.cjs.js +1 -1
  48. package/dist/domains/chat/messages/skill-message.es.js +1 -1
  49. package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +1 -1
  50. package/dist/domains/chat/tools/badges/code-mode-badge.es.js +1 -1
  51. package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +1 -1
  52. package/dist/domains/chat/tools/badges/file-tree-badge.es.js +1 -1
  53. package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +1 -1
  54. package/dist/domains/chat/tools/badges/observation-marker-details.es.js +1 -1
  55. package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +1 -1
  56. package/dist/domains/chat/tools/badges/observation-renderer.es.js +1 -1
  57. package/dist/domains/chat/tools/badges/tool-badge.cjs.js +1 -1
  58. package/dist/domains/chat/tools/badges/tool-badge.es.js +1 -1
  59. package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +1 -0
  60. package/dist/domains/chat/tools/badges/workflow-badge.cjs.js.map +1 -1
  61. package/dist/domains/chat/tools/badges/workflow-badge.es.js +1 -0
  62. package/dist/domains/chat/tools/badges/workflow-badge.es.js.map +1 -1
  63. package/dist/domains/chat/tools/submit-plan-tool.cjs.js +1 -1
  64. package/dist/domains/chat/tools/submit-plan-tool.es.js +1 -1
  65. package/dist/domains/logs/components/log-data-panel.cjs.js +1 -1
  66. package/dist/domains/logs/components/log-data-panel.es.js +1 -1
  67. package/dist/domains/scores/components/score-data-panel.cjs.js +1 -1
  68. package/dist/domains/scores/components/score-data-panel.es.js +1 -1
  69. package/dist/domains/traces/components/span-data-panel-view.cjs.js +2 -2
  70. package/dist/domains/traces/components/span-data-panel-view.es.js +2 -2
  71. package/dist/domains/traces/components/span-details-view.cjs.js +1 -1
  72. package/dist/domains/traces/components/span-details-view.es.js +1 -1
  73. package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +1 -1
  74. package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +1 -1
  75. package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +1 -1
  76. package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +1 -1
  77. package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +2 -2
  78. package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +2 -2
  79. package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js +1 -1
  80. package/dist/domains/traces/components/span-payload/span-payload-json.es.js +1 -1
  81. package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +2 -2
  82. package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +2 -2
  83. package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +2 -2
  84. package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +2 -2
  85. package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +1 -1
  86. package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +1 -1
  87. package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +1 -1
  88. package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +1 -1
  89. package/dist/domains/traces/components/span-payload/span-processor-attributes.cjs.js +1 -1
  90. package/dist/domains/traces/components/span-payload/span-processor-attributes.es.js +1 -1
  91. package/dist/domains/traces/components/span-summary-description.cjs.js +1 -1
  92. package/dist/domains/traces/components/span-summary-description.es.js +1 -1
  93. package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +1 -1
  94. package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +1 -1
  95. package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js +1 -1
  96. package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js +1 -1
  97. package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js +1 -1
  98. package/dist/domains/traces/components/thread-trace/thread-trace-root.es.js +1 -1
  99. package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js +1 -1
  100. package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js +1 -1
  101. package/dist/domains/traces/components/trace-data-panel-view.cjs.js +1 -1
  102. package/dist/domains/traces/components/trace-data-panel-view.es.js +1 -1
  103. package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
  104. package/dist/domains/traces/components/trace-id-button.es.js +1 -1
  105. package/dist/domains/traces/components/trace-summary-description.cjs.js +1 -1
  106. package/dist/domains/traces/components/trace-summary-description.es.js +1 -1
  107. package/dist/domains/traces/components/trace-thread-panel.cjs.js +1 -1
  108. package/dist/domains/traces/components/trace-thread-panel.es.js +1 -1
  109. package/dist/domains/workflows/components/workflow-step-detail.cjs.js +2 -2
  110. package/dist/domains/workflows/components/workflow-step-detail.es.js +2 -2
  111. package/dist/domains/workflows/workflow/use-workflow-graph-runtime.cjs.js +2 -2
  112. package/dist/domains/workflows/workflow/use-workflow-graph-runtime.es.js +2 -2
  113. package/dist/domains/workflows/workflow/workflow-body-graph.cjs.js +1 -1
  114. package/dist/domains/workflows/workflow/workflow-body-graph.es.js +1 -1
  115. package/dist/domains/workflows/workflow/workflow-graph-inner.cjs.js +2 -2
  116. package/dist/domains/workflows/workflow/workflow-graph-inner.es.js +2 -2
  117. package/dist/domains/workflows/workflow/workflow-graph-node.cjs.js +2 -2
  118. package/dist/domains/workflows/workflow/workflow-graph-node.es.js +2 -2
  119. package/dist/domains/workflows/workflow/workflow-input-data.cjs.js +1 -0
  120. package/dist/domains/workflows/workflow/workflow-input-data.cjs.js.map +1 -1
  121. package/dist/domains/workflows/workflow/workflow-input-data.es.js +1 -0
  122. package/dist/domains/workflows/workflow/workflow-input-data.es.js.map +1 -1
  123. package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js +2 -2
  124. package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +2 -2
  125. package/dist/domains/workspace/components/workspace-active-file.cjs.js +1 -1
  126. package/dist/domains/workspace/components/workspace-active-file.es.js +1 -1
  127. package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js +1 -1
  128. package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js +1 -1
  129. package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js +2 -2
  130. package/dist/domains/workspace/components/workspace-markdown-preview.es.js +2 -2
  131. package/dist/{markdown-renderer-DRo-Hcuu.cjs → markdown-renderer-4iyMU2Cm.cjs} +2 -2
  132. package/dist/{markdown-renderer-DRo-Hcuu.cjs.map → markdown-renderer-4iyMU2Cm.cjs.map} +1 -1
  133. package/dist/{markdown-renderer-XfWPF-B7.js → markdown-renderer-B3Pf1uW9.js} +2 -2
  134. package/dist/{markdown-renderer-XfWPF-B7.js.map → markdown-renderer-B3Pf1uW9.js.map} +1 -1
  135. package/dist/{message-scroller-E05PLPmT.cjs → message-scroller-D-_KN9Fv.cjs} +3 -1
  136. package/dist/message-scroller-D-_KN9Fv.cjs.map +1 -0
  137. package/dist/{message-scroller-CiFr8MwT.js → message-scroller-WWaQ-XU_.js} +3 -1
  138. package/dist/message-scroller-WWaQ-XU_.js.map +1 -0
  139. package/dist/{plan-BBf7ONr7.cjs → plan-D49plJdQ.cjs} +2 -2
  140. package/dist/{plan-BBf7ONr7.cjs.map → plan-D49plJdQ.cjs.map} +1 -1
  141. package/dist/{plan-BgvXKTEM.js → plan-DvkySMRk.js} +2 -2
  142. package/dist/{plan-BgvXKTEM.js.map → plan-DvkySMRk.js.map} +1 -1
  143. package/dist/{reasoning-activity-Dc6VbiMr.cjs → reasoning-activity-COiiln9U.cjs} +2 -2
  144. package/dist/{reasoning-activity-Dc6VbiMr.cjs.map → reasoning-activity-COiiln9U.cjs.map} +1 -1
  145. package/dist/{reasoning-activity-DTmKCDZ-.js → reasoning-activity-r7B4_j4d.js} +2 -2
  146. package/dist/{reasoning-activity-DTmKCDZ-.js.map → reasoning-activity-r7B4_j4d.js.map} +1 -1
  147. package/dist/{span-payload-primitives-188dDV5s.js → span-payload-primitives-DceLKTQK.js} +2 -2
  148. package/dist/{span-payload-primitives-188dDV5s.js.map → span-payload-primitives-DceLKTQK.js.map} +1 -1
  149. package/dist/{span-payload-primitives-DrKJXIc3.cjs → span-payload-primitives-DqeZJkw3.cjs} +2 -2
  150. package/dist/{span-payload-primitives-DrKJXIc3.cjs.map → span-payload-primitives-DqeZJkw3.cjs.map} +1 -1
  151. package/dist/src/ds/components/ChatShell/chat-shell.d.ts +13 -8
  152. package/dist/src/ds/components/Code/code.d.ts +1 -1
  153. package/dist/style.css +30 -6
  154. package/dist/{tool-call-arguments-Cm5qfywz.js → tool-call-arguments-DQv3oaEC.js} +3 -3
  155. package/dist/{tool-call-arguments-Cm5qfywz.js.map → tool-call-arguments-DQv3oaEC.js.map} +1 -1
  156. package/dist/{tool-call-arguments-cML2FFBk.cjs → tool-call-arguments-DdO3E60i.cjs} +3 -3
  157. package/dist/{tool-call-arguments-cML2FFBk.cjs.map → tool-call-arguments-DdO3E60i.cjs.map} +1 -1
  158. package/dist/{use-workflow-graph-runtime-IZ-er4hs.js → use-workflow-graph-runtime-BF_NZEkj.js} +2 -2
  159. package/dist/{use-workflow-graph-runtime-IZ-er4hs.js.map → use-workflow-graph-runtime-BF_NZEkj.js.map} +1 -1
  160. package/dist/{use-workflow-graph-runtime-t17K6Hkf.cjs → use-workflow-graph-runtime-r_OOpvSo.cjs} +2 -2
  161. package/dist/{use-workflow-graph-runtime-t17K6Hkf.cjs.map → use-workflow-graph-runtime-r_OOpvSo.cjs.map} +1 -1
  162. package/dist/{workflow-condition-card-CLyskv_B.js → workflow-condition-card-BCSYogql.js} +2 -2
  163. package/dist/{workflow-condition-card-CLyskv_B.js.map → workflow-condition-card-BCSYogql.js.map} +1 -1
  164. package/dist/{workflow-condition-card-B_oDiQ6I.cjs → workflow-condition-card-Dlo2PaKV.cjs} +2 -2
  165. package/dist/{workflow-condition-card-B_oDiQ6I.cjs.map → workflow-condition-card-Dlo2PaKV.cjs.map} +1 -1
  166. package/package.json +9 -9
  167. package/dist/code-B-x-9sJ1.cjs.map +0 -1
  168. package/dist/code-BeWhOFT4.js.map +0 -1
  169. package/dist/message-scroller-CiFr8MwT.js.map +0 -1
  170. package/dist/message-scroller-E05PLPmT.cjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { getReasoningContent } from '../reasoning-content.es.js';
3
- import { R as ReasoningActivity } from '../../../../reasoning-activity-DTmKCDZ-.js';
3
+ import { R as ReasoningActivity } from '../../../../reasoning-activity-r7B4_j4d.js';
4
4
 
5
5
  const ReasoningPartRenderer = ({ part, defaultOpen }) => {
6
6
  const content = getReasoningContent(part);
@@ -6,7 +6,7 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const lucideReact = require('lucide-react');
7
7
  const activity = require('../../../activity-ClKZR5_o.cjs');
8
8
  const signalActivity = require('../../../signal-activity-BI-DRdjw.cjs');
9
- const markdownRenderer = require('../../../markdown-renderer-DRo-Hcuu.cjs');
9
+ const markdownRenderer = require('../../../markdown-renderer-4iyMU2Cm.cjs');
10
10
  const scrollArea = require('../../../scroll-area-CEuf7Omb.cjs');
11
11
 
12
12
  function SkillMessage({ activation }) {
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { BookOpen } from 'lucide-react';
3
3
  import { g as ActivityItem } from '../../../activity-D0SefV4r.js';
4
4
  import { S as SignalActivity } from '../../../signal-activity-_ChAbNsW.js';
5
- import { M as MarkdownRenderer } from '../../../markdown-renderer-XfWPF-B7.js';
5
+ import { M as MarkdownRenderer } from '../../../markdown-renderer-B3Pf1uW9.js';
6
6
  import { S as ScrollArea } from '../../../scroll-area-Ds-fJn5M.js';
7
7
 
8
8
  function SkillMessage({ activation }) {
@@ -7,7 +7,7 @@ const React = require('react');
7
7
  const domains_chat_components_badgeWrapper = require('../../components/badge-wrapper.cjs.js');
8
8
  const domains_chat_components_sectionLabel = require('../../components/section-label.cjs.js');
9
9
  const domains_chat_tools_badges_toolApprovalButtons = require('./tool-approval-buttons.cjs.js');
10
- const codeBlock = require('../../../../code-block-CMI2oLXm.cjs');
10
+ const codeBlock = require('../../../../code-block-z2hVcNq7.cjs');
11
11
  const codeEditor = require('../../../../code-editor-Btr1qm_5.cjs');
12
12
  const icons_ToolCoinIcon = require('../../../../icons/ToolCoinIcon.cjs.js');
13
13
  const utils_formatting = require('../../../../utils/formatting.cjs.js');
@@ -3,7 +3,7 @@ import { useState, useEffect } from 'react';
3
3
  import { BadgeWrapper } from '../../components/badge-wrapper.es.js';
4
4
  import { SectionLabel } from '../../components/section-label.es.js';
5
5
  import { ToolApprovalButtons } from './tool-approval-buttons.es.js';
6
- import { C as CodeBlock } from '../../../../code-block-C04dJD3G.js';
6
+ import { C as CodeBlock } from '../../../../code-block-CXZNO_qi.js';
7
7
  import { C as CodeEditor } from '../../../../code-editor-DzhYz1fH.js';
8
8
  import { ToolCoinIcon } from '../../../../icons/ToolCoinIcon.es.js';
9
9
  import { formatTypeScript } from '../../../../utils/formatting.es.js';
@@ -10,7 +10,7 @@ const domains_chat_components_badgeWrapper = require('../../components/badge-wra
10
10
  const domains_chat_tools_badges_awaitsToolApproval = require('./awaits-tool-approval.cjs.js');
11
11
  const domains_chat_tools_badges_toolApprovalButtons = require('./tool-approval-buttons.cjs.js');
12
12
  const activity = require('../../../../activity-ClKZR5_o.cjs');
13
- const toolCallArguments = require('../../../../tool-call-arguments-cML2FFBk.cjs');
13
+ const toolCallArguments = require('../../../../tool-call-arguments-DdO3E60i.cjs');
14
14
  const toolCallOutput = require('../../../../tool-call-output-ht3k1qLQ.cjs');
15
15
  const toolPresentation = require('../../../../tool-presentation-WLS6d1ws.cjs');
16
16
  const Txt = require('../../../../Txt-DNnvlrBo.cjs');
@@ -6,7 +6,7 @@ import { BadgeWrapper } from '../../components/badge-wrapper.es.js';
6
6
  import { awaitsToolApproval } from './awaits-tool-approval.es.js';
7
7
  import { ToolApprovalButtons } from './tool-approval-buttons.es.js';
8
8
  import { e as ActivityHeadline } from '../../../../activity-D0SefV4r.js';
9
- import { T as ToolCallArguments } from '../../../../tool-call-arguments-Cm5qfywz.js';
9
+ import { T as ToolCallArguments } from '../../../../tool-call-arguments-DQv3oaEC.js';
10
10
  import { T as ToolCallOutput } from '../../../../tool-call-output-COq3kB-f.js';
11
11
  import { p as presentTool } from '../../../../tool-presentation-BXAo24Ir.js';
12
12
  import { T as Txt } from '../../../../Txt-C3cYJgKU.js';
@@ -7,7 +7,7 @@ const lucideReact = require('lucide-react');
7
7
  const domains_chat_tools_badges_observationMarkerFormat = require('./observation-marker-format.cjs.js');
8
8
  const domains_chat_tools_badges_observationRenderer = require('./observation-renderer.cjs.js');
9
9
  const activity = require('../../../../activity-ClKZR5_o.cjs');
10
- const markdownRenderer = require('../../../../markdown-renderer-DRo-Hcuu.cjs');
10
+ const markdownRenderer = require('../../../../markdown-renderer-4iyMU2Cm.cjs');
11
11
  const Txt = require('../../../../Txt-DNnvlrBo.cjs');
12
12
  const utils_duration = require('../../../../utils/duration.cjs.js');
13
13
 
@@ -3,7 +3,7 @@ import { ScrollText, ListTodo, MessageSquareReply, Braces } from 'lucide-react';
3
3
  import { formatTokens, extractedValueEntries, formatExtractedValue, compressionRatio } from './observation-marker-format.es.js';
4
4
  import { ObservationRenderer } from './observation-renderer.es.js';
5
5
  import { g as ActivityItem } from '../../../../activity-D0SefV4r.js';
6
- import { M as MarkdownRenderer } from '../../../../markdown-renderer-XfWPF-B7.js';
6
+ import { M as MarkdownRenderer } from '../../../../markdown-renderer-B3Pf1uW9.js';
7
7
  import { T as Txt } from '../../../../Txt-C3cYJgKU.js';
8
8
  import { formatDuration } from '../../../../utils/duration.es.js';
9
9
 
@@ -5,7 +5,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const React = require('react');
7
7
  const domains_memory_lib_observationPriority = require('../../../memory/lib/observation-priority.cjs.js');
8
- const markdownRenderer = require('../../../../markdown-renderer-DRo-Hcuu.cjs');
8
+ const markdownRenderer = require('../../../../markdown-renderer-4iyMU2Cm.cjs');
9
9
  const Txt = require('../../../../Txt-DNnvlrBo.cjs');
10
10
  const utils_cn = require('../../../../cn-DG0X1KEP.cjs');
11
11
 
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { useMemo } from 'react';
3
3
  import { observationPriorityTone, observationPriorityByEmoji } from '../../../memory/lib/observation-priority.es.js';
4
- import { M as MarkdownRenderer } from '../../../../markdown-renderer-XfWPF-B7.js';
4
+ import { M as MarkdownRenderer } from '../../../../markdown-renderer-B3Pf1uW9.js';
5
5
  import { T as Txt } from '../../../../Txt-C3cYJgKU.js';
6
6
  import { c as cn } from '../../../../cn-65Adrsfj.js';
7
7
 
@@ -11,7 +11,7 @@ const domains_chat_tools_badges_awaitsToolApproval = require('./awaits-tool-appr
11
11
  const domains_chat_tools_badges_toolApprovalButtons = require('./tool-approval-buttons.cjs.js');
12
12
  const activity = require('../../../../activity-ClKZR5_o.cjs');
13
13
  const ansi = require('../../../../ansi-fAtbeDQN.cjs');
14
- const toolCallArguments = require('../../../../tool-call-arguments-cML2FFBk.cjs');
14
+ const toolCallArguments = require('../../../../tool-call-arguments-DdO3E60i.cjs');
15
15
  const toolCallOutput = require('../../../../tool-call-output-ht3k1qLQ.cjs');
16
16
  const toolPresentation = require('../../../../tool-presentation-WLS6d1ws.cjs');
17
17
  const codeEditor = require('../../../../code-editor-Btr1qm_5.cjs');
@@ -7,7 +7,7 @@ import { awaitsToolApproval } from './awaits-tool-approval.es.js';
7
7
  import { ToolApprovalButtons } from './tool-approval-buttons.es.js';
8
8
  import { e as ActivityHeadline } from '../../../../activity-D0SefV4r.js';
9
9
  import { s as stripSerializedAnsi } from '../../../../ansi-Cq_bKF5J.js';
10
- import { T as ToolCallArguments } from '../../../../tool-call-arguments-Cm5qfywz.js';
10
+ import { T as ToolCallArguments } from '../../../../tool-call-arguments-DQv3oaEC.js';
11
11
  import { T as ToolCallOutput } from '../../../../tool-call-output-COq3kB-f.js';
12
12
  import { p as presentTool, s as stringifyToolValue, h as hasToolArguments } from '../../../../tool-presentation-BXAo24Ir.js';
13
13
  import { C as CodeEditor } from '../../../../code-editor-DzhYz1fH.js';
@@ -34,6 +34,7 @@ require('react-hook-form');
34
34
  require('../../../../lib/form/field-context.cjs.js');
35
35
  require('../../../../lib/form/utils.cjs.js');
36
36
  require('date-fns');
37
+ require('../../../../popover-lBqKiPtp.cjs');
37
38
  require('@autoform/core');
38
39
  require('@autoform/react');
39
40
  require('@lukeed/uuid');
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-badge.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/workflow-badge.tsx"],"sourcesContent":["import type { GetWorkflowResponse } from '@mastra/client-js';\nimport { Eye } from 'lucide-react';\nimport { useContext, useEffect } from 'react';\nimport { BackgroundTaskMetadataDialogTrigger } from './background-task-metadata-dialog';\nimport type { MessageMetadata } from '@/domains/chat';\n\nimport { BadgeWrapper } from '@/domains/chat/components/badge-wrapper';\nimport { LoadingBadge } from '@/domains/chat/components/loading-badge';\nimport { NetworkChoiceMetadataDialogTrigger } from '@/domains/chat/components/network-choice-metadata-dialog';\nimport { SectionLabel } from '@/domains/chat/components/section-label';\nimport { awaitsToolApproval } from '@/domains/chat/tools/badges/awaits-tool-approval';\nimport type { ToolApprovalButtonsProps } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { ToolApprovalButtons } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { useEntityRequestContext } from '@/domains/request-context/hooks/use-entity-request-context';\nimport {\n WorkflowGraph,\n WorkflowRunContext,\n WorkflowSelectedStepProvider,\n WorkflowStepDetailProvider,\n useWorkflowStepDetail,\n} from '@/domains/workflows';\nimport { WorkflowStepDetailContent } from '@/domains/workflows/components/workflow-step-detail';\nimport { PlaygroundWorkflowRunProvider } from '@/domains/workflows/context/playground-workflow-run-provider';\nimport type { WorkflowRunStreamResult } from '@/domains/workflows/context/workflow-run-context';\nimport { useWorkflow } from '@/domains/workflows/hooks/use-workflow';\nimport { ToolCallMono } from '@/ds/components/ai/tool-call';\nimport { Button } from '@/ds/components/Button';\nimport { CodeEditor } from '@/ds/components/CodeEditor';\nimport { WorkflowIcon } from '@/ds/icons/WorkflowIcon';\nimport { useLinkComponent } from '@/lib/framework';\n\nexport interface WorkflowBadgeProps extends Omit<ToolApprovalButtonsProps, 'toolCalled'> {\n workflowId: string;\n result?: any;\n isStreaming?: boolean;\n metadata?: MessageMetadata;\n suspendPayload?: any;\n toolCalled?: boolean;\n}\n\nexport const WorkflowBadge = ({\n result,\n workflowId,\n isStreaming,\n metadata,\n toolCallId,\n toolApprovalMetadata,\n suspendPayload,\n toolName,\n isNetwork,\n toolCalled,\n}: WorkflowBadgeProps) => {\n const { runId, status } = result || {};\n const { data: workflow, isLoading: isWorkflowLoading } = useWorkflow(\n workflowId,\n useEntityRequestContext('workflow', workflowId)[0],\n );\n const routingDecision = metadata?.mode === 'network' ? metadata.routingDecision : undefined;\n const selectionReason =\n metadata?.mode === 'network' ? (routingDecision?.selectionReason ?? metadata.selectionReason) : undefined;\n const agentNetworkInput = metadata?.mode === 'network' ? (routingDecision ?? metadata.agentInput) : undefined;\n\n const bgEntry =\n (metadata?.mode === 'stream' || metadata?.mode === 'generate') && metadata?.backgroundTasks\n ? metadata.backgroundTasks[toolCallId]\n : undefined;\n\n let suspendPayloadSlot =\n typeof suspendPayload === 'string' ? (\n <ToolCallMono copyText={suspendPayload} className=\"text-muted-foreground\">\n {suspendPayload}\n </ToolCallMono>\n ) : (\n <CodeEditor data={suspendPayload} data-testid=\"tool-suspend-payload\" />\n );\n\n if (isWorkflowLoading || !workflow) return <LoadingBadge />;\n\n const toolCalledOrFinished = toolCalled ?? !!status;\n const showsRun = isStreaming || Boolean(runId);\n const hasBody =\n showsRun ||\n Boolean(suspendPayload) ||\n awaitsToolApproval({ toolApprovalMetadata, toolCalled: toolCalledOrFinished });\n\n return (\n <BadgeWrapper\n data-testid=\"workflow-badge\"\n icon={<WorkflowIcon className=\"text-span-workflow\" />}\n title={workflow.name}\n initialCollapsed={false}\n extraInfo={\n metadata?.mode === 'network' ? (\n <NetworkChoiceMetadataDialogTrigger\n selectionReason={selectionReason ?? ''}\n input={agentNetworkInput as string | Record<string, unknown> | undefined}\n />\n ) : bgEntry?.taskId && bgEntry?.startedAt ? (\n <BackgroundTaskMetadataDialogTrigger backgroundTask={bgEntry} />\n ) : null\n }\n >\n {hasBody && (\n <>\n {!isStreaming && runId && (\n <PlaygroundWorkflowRunProvider workflowId={workflowId} initialRunId={runId} withoutTimeTravel>\n <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />\n </PlaygroundWorkflowRunProvider>\n )}\n\n {isStreaming && <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />}\n\n {suspendPayloadSlot !== undefined && suspendPayload && (\n <div>\n <SectionLabel>Workflow suspend payload</SectionLabel>\n {suspendPayloadSlot}\n </div>\n )}\n\n <ToolApprovalButtons\n toolCalled={toolCalledOrFinished}\n toolCallId={toolCallId}\n toolApprovalMetadata={toolApprovalMetadata}\n toolName={toolName}\n isNetwork={isNetwork}\n isGenerateMode={metadata?.mode === 'generate'}\n />\n </>\n )}\n </BadgeWrapper>\n );\n};\n\ninterface WorkflowBadgeExtendedProps {\n workflowId: string;\n runId?: string;\n workflow: GetWorkflowResponse;\n}\n\nconst WorkflowBadgeExtended = ({ workflowId, workflow, runId }: WorkflowBadgeExtendedProps) => {\n const requestContext = useEntityRequestContext('workflow', workflowId)[0];\n const { Link } = useLinkComponent();\n const { isLoadingRunExecutionResult } = useContext(WorkflowRunContext);\n\n return (\n <>\n <div className=\"flex items-center gap-2 pb-2\">\n <Button icon={<WorkflowIcon />} render={<Link href={`/workflows/${workflowId}/graph`} />}>\n Go to workflow\n </Button>\n {runId && (\n <Button icon={<Eye />} render={<Link href={`/workflows/${workflowId}/graph/${runId}`} />}>\n See run\n </Button>\n )}\n </div>\n\n <WorkflowSelectedStepProvider>\n <WorkflowStepDetailProvider>\n <div className=\"h-[60vh] w-full overflow-hidden rounded-md\">\n <WorkflowGraph\n workflowId={workflowId}\n workflow={workflow}\n isLoading={isLoadingRunExecutionResult}\n requestContext={requestContext}\n />\n </div>\n <WorkflowBadgeStepDetail requestContext={requestContext} />\n </WorkflowStepDetailProvider>\n </WorkflowSelectedStepProvider>\n </>\n );\n};\n\nconst WorkflowBadgeStepDetail = ({ requestContext }: { requestContext: Record<string, any> }) => {\n const { stepDetail } = useWorkflowStepDetail();\n if (!stepDetail) return null;\n return (\n <div className=\"mt-2 flex max-h-[60vh] flex-col overflow-hidden rounded-md border border-border bg-background\">\n <WorkflowStepDetailContent requestContext={requestContext} />\n </div>\n );\n};\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport const useWorkflowStream = (workflowFullState?: WorkflowRunStreamResult) => {\n const { setResult } = useContext(WorkflowRunContext);\n\n useEffect(() => {\n if (!workflowFullState) return;\n setResult(workflowFullState);\n }, [workflowFullState, setResult]);\n};\n"],"names":["useWorkflow","useEntityRequestContext","jsx","ToolCallMono","CodeEditor","LoadingBadge","awaitsToolApproval","BadgeWrapper","WorkflowIcon","NetworkChoiceMetadataDialogTrigger","BackgroundTaskMetadataDialogTrigger","jsxs","Fragment","PlaygroundWorkflowRunProvider","SectionLabel","ToolApprovalButtons","useLinkComponent","useContext","WorkflowRunContext","Button","Eye","WorkflowSelectedStepProvider","WorkflowStepDetailProvider","WorkflowGraph","useWorkflowStepDetail","WorkflowStepDetailContent","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"workflow-badge.cjs.js","sources":["../../../../../src/domains/chat/tools/badges/workflow-badge.tsx"],"sourcesContent":["import type { GetWorkflowResponse } from '@mastra/client-js';\nimport { Eye } from 'lucide-react';\nimport { useContext, useEffect } from 'react';\nimport { BackgroundTaskMetadataDialogTrigger } from './background-task-metadata-dialog';\nimport type { MessageMetadata } from '@/domains/chat';\n\nimport { BadgeWrapper } from '@/domains/chat/components/badge-wrapper';\nimport { LoadingBadge } from '@/domains/chat/components/loading-badge';\nimport { NetworkChoiceMetadataDialogTrigger } from '@/domains/chat/components/network-choice-metadata-dialog';\nimport { SectionLabel } from '@/domains/chat/components/section-label';\nimport { awaitsToolApproval } from '@/domains/chat/tools/badges/awaits-tool-approval';\nimport type { ToolApprovalButtonsProps } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { ToolApprovalButtons } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { useEntityRequestContext } from '@/domains/request-context/hooks/use-entity-request-context';\nimport {\n WorkflowGraph,\n WorkflowRunContext,\n WorkflowSelectedStepProvider,\n WorkflowStepDetailProvider,\n useWorkflowStepDetail,\n} from '@/domains/workflows';\nimport { WorkflowStepDetailContent } from '@/domains/workflows/components/workflow-step-detail';\nimport { PlaygroundWorkflowRunProvider } from '@/domains/workflows/context/playground-workflow-run-provider';\nimport type { WorkflowRunStreamResult } from '@/domains/workflows/context/workflow-run-context';\nimport { useWorkflow } from '@/domains/workflows/hooks/use-workflow';\nimport { ToolCallMono } from '@/ds/components/ai/tool-call';\nimport { Button } from '@/ds/components/Button';\nimport { CodeEditor } from '@/ds/components/CodeEditor';\nimport { WorkflowIcon } from '@/ds/icons/WorkflowIcon';\nimport { useLinkComponent } from '@/lib/framework';\n\nexport interface WorkflowBadgeProps extends Omit<ToolApprovalButtonsProps, 'toolCalled'> {\n workflowId: string;\n result?: any;\n isStreaming?: boolean;\n metadata?: MessageMetadata;\n suspendPayload?: any;\n toolCalled?: boolean;\n}\n\nexport const WorkflowBadge = ({\n result,\n workflowId,\n isStreaming,\n metadata,\n toolCallId,\n toolApprovalMetadata,\n suspendPayload,\n toolName,\n isNetwork,\n toolCalled,\n}: WorkflowBadgeProps) => {\n const { runId, status } = result || {};\n const { data: workflow, isLoading: isWorkflowLoading } = useWorkflow(\n workflowId,\n useEntityRequestContext('workflow', workflowId)[0],\n );\n const routingDecision = metadata?.mode === 'network' ? metadata.routingDecision : undefined;\n const selectionReason =\n metadata?.mode === 'network' ? (routingDecision?.selectionReason ?? metadata.selectionReason) : undefined;\n const agentNetworkInput = metadata?.mode === 'network' ? (routingDecision ?? metadata.agentInput) : undefined;\n\n const bgEntry =\n (metadata?.mode === 'stream' || metadata?.mode === 'generate') && metadata?.backgroundTasks\n ? metadata.backgroundTasks[toolCallId]\n : undefined;\n\n let suspendPayloadSlot =\n typeof suspendPayload === 'string' ? (\n <ToolCallMono copyText={suspendPayload} className=\"text-muted-foreground\">\n {suspendPayload}\n </ToolCallMono>\n ) : (\n <CodeEditor data={suspendPayload} data-testid=\"tool-suspend-payload\" />\n );\n\n if (isWorkflowLoading || !workflow) return <LoadingBadge />;\n\n const toolCalledOrFinished = toolCalled ?? !!status;\n const showsRun = isStreaming || Boolean(runId);\n const hasBody =\n showsRun ||\n Boolean(suspendPayload) ||\n awaitsToolApproval({ toolApprovalMetadata, toolCalled: toolCalledOrFinished });\n\n return (\n <BadgeWrapper\n data-testid=\"workflow-badge\"\n icon={<WorkflowIcon className=\"text-span-workflow\" />}\n title={workflow.name}\n initialCollapsed={false}\n extraInfo={\n metadata?.mode === 'network' ? (\n <NetworkChoiceMetadataDialogTrigger\n selectionReason={selectionReason ?? ''}\n input={agentNetworkInput as string | Record<string, unknown> | undefined}\n />\n ) : bgEntry?.taskId && bgEntry?.startedAt ? (\n <BackgroundTaskMetadataDialogTrigger backgroundTask={bgEntry} />\n ) : null\n }\n >\n {hasBody && (\n <>\n {!isStreaming && runId && (\n <PlaygroundWorkflowRunProvider workflowId={workflowId} initialRunId={runId} withoutTimeTravel>\n <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />\n </PlaygroundWorkflowRunProvider>\n )}\n\n {isStreaming && <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />}\n\n {suspendPayloadSlot !== undefined && suspendPayload && (\n <div>\n <SectionLabel>Workflow suspend payload</SectionLabel>\n {suspendPayloadSlot}\n </div>\n )}\n\n <ToolApprovalButtons\n toolCalled={toolCalledOrFinished}\n toolCallId={toolCallId}\n toolApprovalMetadata={toolApprovalMetadata}\n toolName={toolName}\n isNetwork={isNetwork}\n isGenerateMode={metadata?.mode === 'generate'}\n />\n </>\n )}\n </BadgeWrapper>\n );\n};\n\ninterface WorkflowBadgeExtendedProps {\n workflowId: string;\n runId?: string;\n workflow: GetWorkflowResponse;\n}\n\nconst WorkflowBadgeExtended = ({ workflowId, workflow, runId }: WorkflowBadgeExtendedProps) => {\n const requestContext = useEntityRequestContext('workflow', workflowId)[0];\n const { Link } = useLinkComponent();\n const { isLoadingRunExecutionResult } = useContext(WorkflowRunContext);\n\n return (\n <>\n <div className=\"flex items-center gap-2 pb-2\">\n <Button icon={<WorkflowIcon />} render={<Link href={`/workflows/${workflowId}/graph`} />}>\n Go to workflow\n </Button>\n {runId && (\n <Button icon={<Eye />} render={<Link href={`/workflows/${workflowId}/graph/${runId}`} />}>\n See run\n </Button>\n )}\n </div>\n\n <WorkflowSelectedStepProvider>\n <WorkflowStepDetailProvider>\n <div className=\"h-[60vh] w-full overflow-hidden rounded-md\">\n <WorkflowGraph\n workflowId={workflowId}\n workflow={workflow}\n isLoading={isLoadingRunExecutionResult}\n requestContext={requestContext}\n />\n </div>\n <WorkflowBadgeStepDetail requestContext={requestContext} />\n </WorkflowStepDetailProvider>\n </WorkflowSelectedStepProvider>\n </>\n );\n};\n\nconst WorkflowBadgeStepDetail = ({ requestContext }: { requestContext: Record<string, any> }) => {\n const { stepDetail } = useWorkflowStepDetail();\n if (!stepDetail) return null;\n return (\n <div className=\"mt-2 flex max-h-[60vh] flex-col overflow-hidden rounded-md border border-border bg-background\">\n <WorkflowStepDetailContent requestContext={requestContext} />\n </div>\n );\n};\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport const useWorkflowStream = (workflowFullState?: WorkflowRunStreamResult) => {\n const { setResult } = useContext(WorkflowRunContext);\n\n useEffect(() => {\n if (!workflowFullState) return;\n setResult(workflowFullState);\n }, [workflowFullState, setResult]);\n};\n"],"names":["useWorkflow","useEntityRequestContext","jsx","ToolCallMono","CodeEditor","LoadingBadge","awaitsToolApproval","BadgeWrapper","WorkflowIcon","NetworkChoiceMetadataDialogTrigger","BackgroundTaskMetadataDialogTrigger","jsxs","Fragment","PlaygroundWorkflowRunProvider","SectionLabel","ToolApprovalButtons","useLinkComponent","useContext","WorkflowRunContext","Button","Eye","WorkflowSelectedStepProvider","WorkflowStepDetailProvider","WorkflowGraph","useWorkflowStepDetail","WorkflowStepDetailContent","useEffect"],"mappings":"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"}
@@ -30,6 +30,7 @@ import 'react-hook-form';
30
30
  import '../../../../lib/form/field-context.es.js';
31
31
  import '../../../../lib/form/utils.es.js';
32
32
  import 'date-fns';
33
+ import '../../../../popover-Dg70UGyn.js';
33
34
  import '@autoform/core';
34
35
  import '@autoform/react';
35
36
  import '@lukeed/uuid';
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-badge.es.js","sources":["../../../../../src/domains/chat/tools/badges/workflow-badge.tsx"],"sourcesContent":["import type { GetWorkflowResponse } from '@mastra/client-js';\nimport { Eye } from 'lucide-react';\nimport { useContext, useEffect } from 'react';\nimport { BackgroundTaskMetadataDialogTrigger } from './background-task-metadata-dialog';\nimport type { MessageMetadata } from '@/domains/chat';\n\nimport { BadgeWrapper } from '@/domains/chat/components/badge-wrapper';\nimport { LoadingBadge } from '@/domains/chat/components/loading-badge';\nimport { NetworkChoiceMetadataDialogTrigger } from '@/domains/chat/components/network-choice-metadata-dialog';\nimport { SectionLabel } from '@/domains/chat/components/section-label';\nimport { awaitsToolApproval } from '@/domains/chat/tools/badges/awaits-tool-approval';\nimport type { ToolApprovalButtonsProps } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { ToolApprovalButtons } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { useEntityRequestContext } from '@/domains/request-context/hooks/use-entity-request-context';\nimport {\n WorkflowGraph,\n WorkflowRunContext,\n WorkflowSelectedStepProvider,\n WorkflowStepDetailProvider,\n useWorkflowStepDetail,\n} from '@/domains/workflows';\nimport { WorkflowStepDetailContent } from '@/domains/workflows/components/workflow-step-detail';\nimport { PlaygroundWorkflowRunProvider } from '@/domains/workflows/context/playground-workflow-run-provider';\nimport type { WorkflowRunStreamResult } from '@/domains/workflows/context/workflow-run-context';\nimport { useWorkflow } from '@/domains/workflows/hooks/use-workflow';\nimport { ToolCallMono } from '@/ds/components/ai/tool-call';\nimport { Button } from '@/ds/components/Button';\nimport { CodeEditor } from '@/ds/components/CodeEditor';\nimport { WorkflowIcon } from '@/ds/icons/WorkflowIcon';\nimport { useLinkComponent } from '@/lib/framework';\n\nexport interface WorkflowBadgeProps extends Omit<ToolApprovalButtonsProps, 'toolCalled'> {\n workflowId: string;\n result?: any;\n isStreaming?: boolean;\n metadata?: MessageMetadata;\n suspendPayload?: any;\n toolCalled?: boolean;\n}\n\nexport const WorkflowBadge = ({\n result,\n workflowId,\n isStreaming,\n metadata,\n toolCallId,\n toolApprovalMetadata,\n suspendPayload,\n toolName,\n isNetwork,\n toolCalled,\n}: WorkflowBadgeProps) => {\n const { runId, status } = result || {};\n const { data: workflow, isLoading: isWorkflowLoading } = useWorkflow(\n workflowId,\n useEntityRequestContext('workflow', workflowId)[0],\n );\n const routingDecision = metadata?.mode === 'network' ? metadata.routingDecision : undefined;\n const selectionReason =\n metadata?.mode === 'network' ? (routingDecision?.selectionReason ?? metadata.selectionReason) : undefined;\n const agentNetworkInput = metadata?.mode === 'network' ? (routingDecision ?? metadata.agentInput) : undefined;\n\n const bgEntry =\n (metadata?.mode === 'stream' || metadata?.mode === 'generate') && metadata?.backgroundTasks\n ? metadata.backgroundTasks[toolCallId]\n : undefined;\n\n let suspendPayloadSlot =\n typeof suspendPayload === 'string' ? (\n <ToolCallMono copyText={suspendPayload} className=\"text-muted-foreground\">\n {suspendPayload}\n </ToolCallMono>\n ) : (\n <CodeEditor data={suspendPayload} data-testid=\"tool-suspend-payload\" />\n );\n\n if (isWorkflowLoading || !workflow) return <LoadingBadge />;\n\n const toolCalledOrFinished = toolCalled ?? !!status;\n const showsRun = isStreaming || Boolean(runId);\n const hasBody =\n showsRun ||\n Boolean(suspendPayload) ||\n awaitsToolApproval({ toolApprovalMetadata, toolCalled: toolCalledOrFinished });\n\n return (\n <BadgeWrapper\n data-testid=\"workflow-badge\"\n icon={<WorkflowIcon className=\"text-span-workflow\" />}\n title={workflow.name}\n initialCollapsed={false}\n extraInfo={\n metadata?.mode === 'network' ? (\n <NetworkChoiceMetadataDialogTrigger\n selectionReason={selectionReason ?? ''}\n input={agentNetworkInput as string | Record<string, unknown> | undefined}\n />\n ) : bgEntry?.taskId && bgEntry?.startedAt ? (\n <BackgroundTaskMetadataDialogTrigger backgroundTask={bgEntry} />\n ) : null\n }\n >\n {hasBody && (\n <>\n {!isStreaming && runId && (\n <PlaygroundWorkflowRunProvider workflowId={workflowId} initialRunId={runId} withoutTimeTravel>\n <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />\n </PlaygroundWorkflowRunProvider>\n )}\n\n {isStreaming && <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />}\n\n {suspendPayloadSlot !== undefined && suspendPayload && (\n <div>\n <SectionLabel>Workflow suspend payload</SectionLabel>\n {suspendPayloadSlot}\n </div>\n )}\n\n <ToolApprovalButtons\n toolCalled={toolCalledOrFinished}\n toolCallId={toolCallId}\n toolApprovalMetadata={toolApprovalMetadata}\n toolName={toolName}\n isNetwork={isNetwork}\n isGenerateMode={metadata?.mode === 'generate'}\n />\n </>\n )}\n </BadgeWrapper>\n );\n};\n\ninterface WorkflowBadgeExtendedProps {\n workflowId: string;\n runId?: string;\n workflow: GetWorkflowResponse;\n}\n\nconst WorkflowBadgeExtended = ({ workflowId, workflow, runId }: WorkflowBadgeExtendedProps) => {\n const requestContext = useEntityRequestContext('workflow', workflowId)[0];\n const { Link } = useLinkComponent();\n const { isLoadingRunExecutionResult } = useContext(WorkflowRunContext);\n\n return (\n <>\n <div className=\"flex items-center gap-2 pb-2\">\n <Button icon={<WorkflowIcon />} render={<Link href={`/workflows/${workflowId}/graph`} />}>\n Go to workflow\n </Button>\n {runId && (\n <Button icon={<Eye />} render={<Link href={`/workflows/${workflowId}/graph/${runId}`} />}>\n See run\n </Button>\n )}\n </div>\n\n <WorkflowSelectedStepProvider>\n <WorkflowStepDetailProvider>\n <div className=\"h-[60vh] w-full overflow-hidden rounded-md\">\n <WorkflowGraph\n workflowId={workflowId}\n workflow={workflow}\n isLoading={isLoadingRunExecutionResult}\n requestContext={requestContext}\n />\n </div>\n <WorkflowBadgeStepDetail requestContext={requestContext} />\n </WorkflowStepDetailProvider>\n </WorkflowSelectedStepProvider>\n </>\n );\n};\n\nconst WorkflowBadgeStepDetail = ({ requestContext }: { requestContext: Record<string, any> }) => {\n const { stepDetail } = useWorkflowStepDetail();\n if (!stepDetail) return null;\n return (\n <div className=\"mt-2 flex max-h-[60vh] flex-col overflow-hidden rounded-md border border-border bg-background\">\n <WorkflowStepDetailContent requestContext={requestContext} />\n </div>\n );\n};\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport const useWorkflowStream = (workflowFullState?: WorkflowRunStreamResult) => {\n const { setResult } = useContext(WorkflowRunContext);\n\n useEffect(() => {\n if (!workflowFullState) return;\n setResult(workflowFullState);\n }, [workflowFullState, setResult]);\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-badge.es.js","sources":["../../../../../src/domains/chat/tools/badges/workflow-badge.tsx"],"sourcesContent":["import type { GetWorkflowResponse } from '@mastra/client-js';\nimport { Eye } from 'lucide-react';\nimport { useContext, useEffect } from 'react';\nimport { BackgroundTaskMetadataDialogTrigger } from './background-task-metadata-dialog';\nimport type { MessageMetadata } from '@/domains/chat';\n\nimport { BadgeWrapper } from '@/domains/chat/components/badge-wrapper';\nimport { LoadingBadge } from '@/domains/chat/components/loading-badge';\nimport { NetworkChoiceMetadataDialogTrigger } from '@/domains/chat/components/network-choice-metadata-dialog';\nimport { SectionLabel } from '@/domains/chat/components/section-label';\nimport { awaitsToolApproval } from '@/domains/chat/tools/badges/awaits-tool-approval';\nimport type { ToolApprovalButtonsProps } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { ToolApprovalButtons } from '@/domains/chat/tools/badges/tool-approval-buttons';\nimport { useEntityRequestContext } from '@/domains/request-context/hooks/use-entity-request-context';\nimport {\n WorkflowGraph,\n WorkflowRunContext,\n WorkflowSelectedStepProvider,\n WorkflowStepDetailProvider,\n useWorkflowStepDetail,\n} from '@/domains/workflows';\nimport { WorkflowStepDetailContent } from '@/domains/workflows/components/workflow-step-detail';\nimport { PlaygroundWorkflowRunProvider } from '@/domains/workflows/context/playground-workflow-run-provider';\nimport type { WorkflowRunStreamResult } from '@/domains/workflows/context/workflow-run-context';\nimport { useWorkflow } from '@/domains/workflows/hooks/use-workflow';\nimport { ToolCallMono } from '@/ds/components/ai/tool-call';\nimport { Button } from '@/ds/components/Button';\nimport { CodeEditor } from '@/ds/components/CodeEditor';\nimport { WorkflowIcon } from '@/ds/icons/WorkflowIcon';\nimport { useLinkComponent } from '@/lib/framework';\n\nexport interface WorkflowBadgeProps extends Omit<ToolApprovalButtonsProps, 'toolCalled'> {\n workflowId: string;\n result?: any;\n isStreaming?: boolean;\n metadata?: MessageMetadata;\n suspendPayload?: any;\n toolCalled?: boolean;\n}\n\nexport const WorkflowBadge = ({\n result,\n workflowId,\n isStreaming,\n metadata,\n toolCallId,\n toolApprovalMetadata,\n suspendPayload,\n toolName,\n isNetwork,\n toolCalled,\n}: WorkflowBadgeProps) => {\n const { runId, status } = result || {};\n const { data: workflow, isLoading: isWorkflowLoading } = useWorkflow(\n workflowId,\n useEntityRequestContext('workflow', workflowId)[0],\n );\n const routingDecision = metadata?.mode === 'network' ? metadata.routingDecision : undefined;\n const selectionReason =\n metadata?.mode === 'network' ? (routingDecision?.selectionReason ?? metadata.selectionReason) : undefined;\n const agentNetworkInput = metadata?.mode === 'network' ? (routingDecision ?? metadata.agentInput) : undefined;\n\n const bgEntry =\n (metadata?.mode === 'stream' || metadata?.mode === 'generate') && metadata?.backgroundTasks\n ? metadata.backgroundTasks[toolCallId]\n : undefined;\n\n let suspendPayloadSlot =\n typeof suspendPayload === 'string' ? (\n <ToolCallMono copyText={suspendPayload} className=\"text-muted-foreground\">\n {suspendPayload}\n </ToolCallMono>\n ) : (\n <CodeEditor data={suspendPayload} data-testid=\"tool-suspend-payload\" />\n );\n\n if (isWorkflowLoading || !workflow) return <LoadingBadge />;\n\n const toolCalledOrFinished = toolCalled ?? !!status;\n const showsRun = isStreaming || Boolean(runId);\n const hasBody =\n showsRun ||\n Boolean(suspendPayload) ||\n awaitsToolApproval({ toolApprovalMetadata, toolCalled: toolCalledOrFinished });\n\n return (\n <BadgeWrapper\n data-testid=\"workflow-badge\"\n icon={<WorkflowIcon className=\"text-span-workflow\" />}\n title={workflow.name}\n initialCollapsed={false}\n extraInfo={\n metadata?.mode === 'network' ? (\n <NetworkChoiceMetadataDialogTrigger\n selectionReason={selectionReason ?? ''}\n input={agentNetworkInput as string | Record<string, unknown> | undefined}\n />\n ) : bgEntry?.taskId && bgEntry?.startedAt ? (\n <BackgroundTaskMetadataDialogTrigger backgroundTask={bgEntry} />\n ) : null\n }\n >\n {hasBody && (\n <>\n {!isStreaming && runId && (\n <PlaygroundWorkflowRunProvider workflowId={workflowId} initialRunId={runId} withoutTimeTravel>\n <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />\n </PlaygroundWorkflowRunProvider>\n )}\n\n {isStreaming && <WorkflowBadgeExtended workflowId={workflowId} workflow={workflow} runId={runId} />}\n\n {suspendPayloadSlot !== undefined && suspendPayload && (\n <div>\n <SectionLabel>Workflow suspend payload</SectionLabel>\n {suspendPayloadSlot}\n </div>\n )}\n\n <ToolApprovalButtons\n toolCalled={toolCalledOrFinished}\n toolCallId={toolCallId}\n toolApprovalMetadata={toolApprovalMetadata}\n toolName={toolName}\n isNetwork={isNetwork}\n isGenerateMode={metadata?.mode === 'generate'}\n />\n </>\n )}\n </BadgeWrapper>\n );\n};\n\ninterface WorkflowBadgeExtendedProps {\n workflowId: string;\n runId?: string;\n workflow: GetWorkflowResponse;\n}\n\nconst WorkflowBadgeExtended = ({ workflowId, workflow, runId }: WorkflowBadgeExtendedProps) => {\n const requestContext = useEntityRequestContext('workflow', workflowId)[0];\n const { Link } = useLinkComponent();\n const { isLoadingRunExecutionResult } = useContext(WorkflowRunContext);\n\n return (\n <>\n <div className=\"flex items-center gap-2 pb-2\">\n <Button icon={<WorkflowIcon />} render={<Link href={`/workflows/${workflowId}/graph`} />}>\n Go to workflow\n </Button>\n {runId && (\n <Button icon={<Eye />} render={<Link href={`/workflows/${workflowId}/graph/${runId}`} />}>\n See run\n </Button>\n )}\n </div>\n\n <WorkflowSelectedStepProvider>\n <WorkflowStepDetailProvider>\n <div className=\"h-[60vh] w-full overflow-hidden rounded-md\">\n <WorkflowGraph\n workflowId={workflowId}\n workflow={workflow}\n isLoading={isLoadingRunExecutionResult}\n requestContext={requestContext}\n />\n </div>\n <WorkflowBadgeStepDetail requestContext={requestContext} />\n </WorkflowStepDetailProvider>\n </WorkflowSelectedStepProvider>\n </>\n );\n};\n\nconst WorkflowBadgeStepDetail = ({ requestContext }: { requestContext: Record<string, any> }) => {\n const { stepDetail } = useWorkflowStepDetail();\n if (!stepDetail) return null;\n return (\n <div className=\"mt-2 flex max-h-[60vh] flex-col overflow-hidden rounded-md border border-border bg-background\">\n <WorkflowStepDetailContent requestContext={requestContext} />\n </div>\n );\n};\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport const useWorkflowStream = (workflowFullState?: WorkflowRunStreamResult) => {\n const { setResult } = useContext(WorkflowRunContext);\n\n useEffect(() => {\n if (!workflowFullState) return;\n setResult(workflowFullState);\n }, [workflowFullState, setResult]);\n};\n"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ const lucideReact = require('lucide-react');
7
7
  const React = require('react');
8
8
  const domains_agents_hooks_useAgentPlan = require('../../agents/hooks/use-agent-plan.cjs.js');
9
9
  const domains_chat_context_toolCallContext = require('../context/tool-call-context.cjs.js');
10
- const plan = require('../../../plan-BBf7ONr7.cjs');
10
+ const plan = require('../../../plan-D49plJdQ.cjs');
11
11
  const Button = require('../../../Button-CXhSUBxN.cjs');
12
12
  const skeleton = require('../../../skeleton-cXUjPrq9.cjs');
13
13
  const textarea = require('../../../textarea-DNV5Gs9A.cjs');
@@ -3,7 +3,7 @@ import { X, MessageSquareText, Check } from 'lucide-react';
3
3
  import { useState } from 'react';
4
4
  import { useAgentPlan } from '../../agents/hooks/use-agent-plan.es.js';
5
5
  import { useToolCall } from '../context/tool-call-context.es.js';
6
- import { P as Plan, h as PlanHeader, k as PlanLabel, i as PlanHeaderActions, e as PlanCopyButton, b as PlanBody, j as PlanIntro, o as PlanTitle, m as PlanPath, l as PlanMain, c as PlanContent, f as PlanExpandButton, n as PlanStatus } from '../../../plan-BgvXKTEM.js';
6
+ import { P as Plan, h as PlanHeader, k as PlanLabel, i as PlanHeaderActions, e as PlanCopyButton, b as PlanBody, j as PlanIntro, o as PlanTitle, m as PlanPath, l as PlanMain, c as PlanContent, f as PlanExpandButton, n as PlanStatus } from '../../../plan-DvkySMRk.js';
7
7
  import { B as Button } from '../../../Button-D43ghVKt.js';
8
8
  import { S as Skeleton } from '../../../skeleton-BsRAXyh5.js';
9
9
  import { T as Textarea } from '../../../textarea-CxPNKg2q.js';
@@ -9,7 +9,7 @@ const Button = require('../../../Button-CXhSUBxN.cjs');
9
9
  const buttonsGroup = require('../../../buttons-group-CoZP3lJt.cjs');
10
10
  const copyButton = require('../../../copy-button-CGkFEDHF.cjs');
11
11
  const dataKeysAndValues = require('../../../data-keys-and-values-DnpdW8zx.cjs');
12
- const dataPanel = require('../../../data-panel-YCvno_Di.cjs');
12
+ const dataPanel = require('../../../data-panel-mzQKwVkT.cjs');
13
13
  const Txt = require('../../../Txt-DNnvlrBo.cjs');
14
14
  const utils_dateFormat = require('../../../utils/date-format.cjs.js');
15
15
 
@@ -5,7 +5,7 @@ import { B as Button } from '../../../Button-D43ghVKt.js';
5
5
  import { B as ButtonsGroup } from '../../../buttons-group-DsZgrZBZ.js';
6
6
  import { C as CopyButton } from '../../../copy-button-DH8xtrWz.js';
7
7
  import { D as DataKeysAndValues } from '../../../data-keys-and-values-DiRlIt-N.js';
8
- import { D as DataPanel } from '../../../data-panel-CKvpHRUM.js';
8
+ import { D as DataPanel } from '../../../data-panel-GT4fMXR0.js';
9
9
  import { T as Txt } from '../../../Txt-C3cYJgKU.js';
10
10
  import { formatTimestampPrecise } from '../../../utils/date-format.es.js';
11
11
 
@@ -8,7 +8,7 @@ const React = require('react');
8
8
  const domains_scores_components_scoreAsItemDialog = require('./score-as-item-dialog.cjs.js');
9
9
  const Button = require('../../../Button-CXhSUBxN.cjs');
10
10
  const dataKeysAndValues = require('../../../data-keys-and-values-DnpdW8zx.cjs');
11
- const dataPanel = require('../../../data-panel-YCvno_Di.cjs');
11
+ const dataPanel = require('../../../data-panel-mzQKwVkT.cjs');
12
12
  const lib_framework = require('../../../lib/framework.cjs.js');
13
13
  const utils_cn = require('../../../cn-DG0X1KEP.cjs');
14
14
  const utils_dateFormat = require('../../../utils/date-format.cjs.js');
@@ -4,7 +4,7 @@ import { useState } from 'react';
4
4
  import { ScoreAsItemDialog } from './score-as-item-dialog.es.js';
5
5
  import { B as Button } from '../../../Button-D43ghVKt.js';
6
6
  import { D as DataKeysAndValues } from '../../../data-keys-and-values-DiRlIt-N.js';
7
- import { D as DataPanel } from '../../../data-panel-CKvpHRUM.js';
7
+ import { D as DataPanel } from '../../../data-panel-GT4fMXR0.js';
8
8
  import { useLinkComponent } from '../../../lib/framework.es.js';
9
9
  import { c as cn } from '../../../cn-65Adrsfj.js';
10
10
  import { formatTimestampPrecise } from '../../../utils/date-format.es.js';
@@ -10,7 +10,7 @@ const domains_traces_components_spanPayload_spanInputRenderers = require('./span
10
10
  const domains_traces_components_spanPayload_spanOutputRenderers = require('./span-payload/span-output-renderers.cjs.js');
11
11
  const domains_traces_components_spanPayload_spanErrorRenderer = require('./span-payload/span-error-renderer.cjs.js');
12
12
  const domains_traces_components_spanPayload_spanPayloadSection = require('./span-payload/span-payload-section.cjs.js');
13
- require('../../../code-B-x-9sJ1.cjs');
13
+ require('../../../code-D_sH618U.cjs');
14
14
  const utils_cn = require('../../../cn-DG0X1KEP.cjs');
15
15
  require('react');
16
16
  require('../../../Button-CXhSUBxN.cjs');
@@ -22,7 +22,7 @@ const domains_traces_components_spanSummaryDescription = require('./span-summary
22
22
  const domains_traces_components_spanTokenUsage = require('./span-token-usage.cjs.js');
23
23
  const domains_traces_components_traceIdButton = require('./trace-id-button.cjs.js');
24
24
  const dataKeysAndValues = require('../../../data-keys-and-values-DnpdW8zx.cjs');
25
- const dataPanel = require('../../../data-panel-YCvno_Di.cjs');
25
+ const dataPanel = require('../../../data-panel-mzQKwVkT.cjs');
26
26
  const Notice = require('../../../Notice-D4zc_oTj.cjs');
27
27
  const tabsRoot = require('../../../tabs-root-Hkt7A6oq.cjs');
28
28
  const tabsList = require('../../../tabs-list-Tqj36HIL.cjs');
@@ -6,7 +6,7 @@ import { SpanInputRenderer } from './span-payload/span-input-renderers.es.js';
6
6
  import { SpanOutputRenderer } from './span-payload/span-output-renderers.es.js';
7
7
  import { SpanErrorRenderer } from './span-payload/span-error-renderer.es.js';
8
8
  import { SpanPayloadSection } from './span-payload/span-payload-section.es.js';
9
- import '../../../code-BeWhOFT4.js';
9
+ import '../../../code-C8akLzcu.js';
10
10
  import { c as cn } from '../../../cn-65Adrsfj.js';
11
11
  import 'react';
12
12
  import '../../../Button-D43ghVKt.js';
@@ -18,7 +18,7 @@ import { SpanSummaryDescription } from './span-summary-description.es.js';
18
18
  import { SpanTokenUsage } from './span-token-usage.es.js';
19
19
  import { TraceIdButton } from './trace-id-button.es.js';
20
20
  import { D as DataKeysAndValues } from '../../../data-keys-and-values-DiRlIt-N.js';
21
- import { D as DataPanel } from '../../../data-panel-CKvpHRUM.js';
21
+ import { D as DataPanel } from '../../../data-panel-GT4fMXR0.js';
22
22
  import { N as Notice } from '../../../Notice-D4gMAkVI.js';
23
23
  import { T as Tabs } from '../../../tabs-root-BbzhUZl4.js';
24
24
  import { T as TabList } from '../../../tabs-list-tLx5fgP0.js';
@@ -9,7 +9,7 @@ const domains_traces_components_spanPayload_spanInputRenderers = require('./span
9
9
  const domains_traces_components_spanPayload_spanOutputRenderers = require('./span-payload/span-output-renderers.cjs.js');
10
10
  const domains_traces_components_spanPayload_spanErrorRenderer = require('./span-payload/span-error-renderer.cjs.js');
11
11
  const domains_traces_components_spanPayload_spanPayloadSection = require('./span-payload/span-payload-section.cjs.js');
12
- require('../../../code-B-x-9sJ1.cjs');
12
+ require('../../../code-D_sH618U.cjs');
13
13
  require('react');
14
14
  require('../../../Button-CXhSUBxN.cjs');
15
15
  require('../../chat/context/chat-context.cjs.js');
@@ -5,7 +5,7 @@ import { SpanInputRenderer } from './span-payload/span-input-renderers.es.js';
5
5
  import { SpanOutputRenderer } from './span-payload/span-output-renderers.es.js';
6
6
  import { SpanErrorRenderer } from './span-payload/span-error-renderer.es.js';
7
7
  import { SpanPayloadSection } from './span-payload/span-payload-section.es.js';
8
- import '../../../code-BeWhOFT4.js';
8
+ import '../../../code-C8akLzcu.js';
9
9
  import 'react';
10
10
  import '../../../Button-D43ghVKt.js';
11
11
  import '../../chat/context/chat-context.es.js';
@@ -5,7 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const observability = require('@mastra/core/observability');
7
7
  const domains_traces_components_spanPayload_spanPayloadJson = require('./span-payload-json.cjs.js');
8
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
8
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
9
9
  const domains_traces_components_spanPayload_spanPayloadRegistry = require('./span-payload-registry.cjs.js');
10
10
  const dataKeysAndValues = require('../../../../data-keys-and-values-DnpdW8zx.cjs');
11
11
  const Notice = require('../../../../Notice-D4zc_oTj.cjs');
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { describeSpanError } from '@mastra/core/observability';
3
3
  import { SpanPayloadJson } from './span-payload-json.es.js';
4
- import { c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-188dDV5s.js';
4
+ import { c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-DceLKTQK.js';
5
5
  import { asCoreSpan } from './span-payload-registry.es.js';
6
6
  import { D as DataKeysAndValues } from '../../../../data-keys-and-values-DiRlIt-N.js';
7
7
  import { N as Notice } from '../../../../Notice-D4gMAkVI.js';
@@ -6,7 +6,7 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const observability = require('@mastra/core/observability');
7
7
  const domains_traces_components_spanPayload_spanPayloadJson = require('./span-payload-json.cjs.js');
8
8
  const domains_traces_components_spanPayload_spanPayloadMessages = require('./span-payload-messages.cjs.js');
9
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
9
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
10
10
  const domains_traces_components_spanPayload_spanPayloadProcessor = require('./span-payload-processor.cjs.js');
11
11
  const domains_traces_components_spanPayload_spanPayloadRegistry = require('./span-payload-registry.cjs.js');
12
12
  const Card = require('../../../../Card-BQsKHkyB.cjs');
@@ -2,7 +2,7 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { describeSpanInput } from '@mastra/core/observability';
3
3
  import { SpanPayloadJson } from './span-payload-json.es.js';
4
4
  import { SpanPayloadMessages } from './span-payload-messages.es.js';
5
- import { S as SpanPayloadField, a as SpanPayloadMarkdown } from '../../../../span-payload-primitives-188dDV5s.js';
5
+ import { S as SpanPayloadField, a as SpanPayloadMarkdown } from '../../../../span-payload-primitives-DceLKTQK.js';
6
6
  import { SpanPayloadProcessor } from './span-payload-processor.es.js';
7
7
  import { asCoreSpan, pickRenderer } from './span-payload-registry.es.js';
8
8
  import { C as Card, a as CardContent } from '../../../../Card-DVy0QS4m.js';
@@ -6,10 +6,10 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const observability = require('@mastra/core/observability');
7
7
  const domains_traces_components_spanPayload_spanPayloadAttachment = require('./span-payload-attachment.cjs.js');
8
8
  const domains_traces_components_spanPayload_spanPayloadJson = require('./span-payload-json.cjs.js');
9
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
9
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
10
10
  const domains_traces_components_spanPayload_spanPayloadProcessor = require('./span-payload-processor.cjs.js');
11
11
  const domains_traces_components_spanPayload_spanPayloadRegistry = require('./span-payload-registry.cjs.js');
12
- const reasoningActivity = require('../../../../reasoning-activity-Dc6VbiMr.cjs');
12
+ const reasoningActivity = require('../../../../reasoning-activity-COiiln9U.cjs');
13
13
  const Card = require('../../../../Card-BQsKHkyB.cjs');
14
14
  const dataKeysAndValues = require('../../../../data-keys-and-values-DnpdW8zx.cjs');
15
15
  const inlineCode = require('../../../../inline-code-CSwG-x8D.cjs');
@@ -2,10 +2,10 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { describeSpanOutput } from '@mastra/core/observability';
3
3
  import { SpanPayloadAttachment } from './span-payload-attachment.es.js';
4
4
  import { SpanPayloadJson } from './span-payload-json.es.js';
5
- import { a as SpanPayloadMarkdown, S as SpanPayloadField, b as SpanPayloadToolCalls, c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-188dDV5s.js';
5
+ import { a as SpanPayloadMarkdown, S as SpanPayloadField, b as SpanPayloadToolCalls, c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-DceLKTQK.js';
6
6
  import { SpanPayloadProcessor } from './span-payload-processor.es.js';
7
7
  import { asCoreSpan, pickRenderer, hasItems } from './span-payload-registry.es.js';
8
- import { R as ReasoningActivity } from '../../../../reasoning-activity-DTmKCDZ-.js';
8
+ import { R as ReasoningActivity } from '../../../../reasoning-activity-r7B4_j4d.js';
9
9
  import { C as Card, a as CardContent } from '../../../../Card-DVy0QS4m.js';
10
10
  import { D as DataKeysAndValues } from '../../../../data-keys-and-values-DiRlIt-N.js';
11
11
  import { I as InlineCode } from '../../../../inline-code-BW6W121s.js';
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
- const code = require('../../../../code-B-x-9sJ1.cjs');
6
+ const code = require('../../../../code-D_sH618U.cjs');
7
7
  const primitives_raisedSurface = require('../../../../primitives/raised-surface.cjs.js');
8
8
  const utils_cn = require('../../../../cn-DG0X1KEP.cjs');
9
9
 
@@ -1,5 +1,5 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { C as Code } from '../../../../code-BeWhOFT4.js';
2
+ import { C as Code } from '../../../../code-C8akLzcu.js';
3
3
  import { raisedSurfaceStyle } from '../../../../primitives/raised-surface.es.js';
4
4
  import { c as cn } from '../../../../cn-65Adrsfj.js';
5
5
 
@@ -5,8 +5,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const domains_traces_components_spanPayload_spanPayloadAttachment = require('./span-payload-attachment.cjs.js');
7
7
  const domains_traces_components_spanPayload_spanPayloadJson = require('./span-payload-json.cjs.js');
8
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
9
- const reasoningActivity = require('../../../../reasoning-activity-Dc6VbiMr.cjs');
8
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
9
+ const reasoningActivity = require('../../../../reasoning-activity-COiiln9U.cjs');
10
10
  const message = require('../../../../message-DGDmsmOT.cjs');
11
11
 
12
12
  const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
@@ -1,8 +1,8 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { SpanPayloadAttachment } from './span-payload-attachment.es.js';
3
3
  import { SpanPayloadJson } from './span-payload-json.es.js';
4
- import { d as SpanPayloadLabel, a as SpanPayloadMarkdown, e as SpanPayloadTool } from '../../../../span-payload-primitives-188dDV5s.js';
5
- import { R as ReasoningActivity } from '../../../../reasoning-activity-DTmKCDZ-.js';
4
+ import { d as SpanPayloadLabel, a as SpanPayloadMarkdown, e as SpanPayloadTool } from '../../../../span-payload-primitives-DceLKTQK.js';
5
+ import { R as ReasoningActivity } from '../../../../reasoning-activity-r7B4_j4d.js';
6
6
  import { a as Message } from '../../../../message-DoxVrgBX.js';
7
7
 
8
8
  const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
@@ -4,9 +4,9 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  require('react/jsx-runtime');
6
6
  require('lucide-react');
7
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
7
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
8
8
  require('../../../../collapsible-jfzzU7Gp.cjs');
9
- require('../../../../markdown-renderer-DRo-Hcuu.cjs');
9
+ require('../../../../markdown-renderer-4iyMU2Cm.cjs');
10
10
 
11
11
 
12
12
 
@@ -1,6 +1,6 @@
1
1
  import 'react/jsx-runtime';
2
2
  import 'lucide-react';
3
- export { c as SpanPayloadCollapsible, S as SpanPayloadField, d as SpanPayloadLabel, a as SpanPayloadMarkdown, b as SpanPayloadToolCalls } from '../../../../span-payload-primitives-188dDV5s.js';
3
+ export { c as SpanPayloadCollapsible, S as SpanPayloadField, d as SpanPayloadLabel, a as SpanPayloadMarkdown, b as SpanPayloadToolCalls } from '../../../../span-payload-primitives-DceLKTQK.js';
4
4
  import '../../../../collapsible-BNUn4644.js';
5
- import '../../../../markdown-renderer-XfWPF-B7.js';
5
+ import '../../../../markdown-renderer-B3Pf1uW9.js';
6
6
  //# sourceMappingURL=span-payload-primitives.es.js.map
@@ -6,7 +6,7 @@ const jsxRuntime = require('react/jsx-runtime');
6
6
  const React = require('react');
7
7
  const domains_traces_components_spanPayload_spanPayloadJson = require('./span-payload-json.cjs.js');
8
8
  const domains_traces_components_spanPayload_spanPayloadMessages = require('./span-payload-messages.cjs.js');
9
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
9
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
10
10
  const domains_traces_components_spanPayload_spanPayloadRegistry = require('./span-payload-registry.cjs.js');
11
11
  const dataKeysAndValues = require('../../../../data-keys-and-values-DnpdW8zx.cjs');
12
12
 
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Fragment } from 'react';
3
3
  import { SpanPayloadJson } from './span-payload-json.es.js';
4
4
  import { SpanPayloadMessages } from './span-payload-messages.es.js';
5
- import { S as SpanPayloadField, b as SpanPayloadToolCalls, a as SpanPayloadMarkdown, c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-188dDV5s.js';
5
+ import { S as SpanPayloadField, b as SpanPayloadToolCalls, a as SpanPayloadMarkdown, c as SpanPayloadCollapsible } from '../../../../span-payload-primitives-DceLKTQK.js';
6
6
  import { hasItems } from './span-payload-registry.es.js';
7
7
  import { D as DataKeysAndValues } from '../../../../data-keys-and-values-DiRlIt-N.js';
8
8
 
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  require('react/jsx-runtime');
6
6
  require('./span-payload-json.cjs.js');
7
- const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DrKJXIc3.cjs');
7
+ const domains_traces_components_spanPayload_spanPayloadTool = require('../../../../span-payload-primitives-DqeZJkw3.cjs');
8
8
  require('../../../chat/components/badge-wrapper.cjs.js');
9
9
  require('../../../../activity-ClKZR5_o.cjs');
10
10
  require('../../../../tool-presentation-WLS6d1ws.cjs');