@mastra/playground-ui 61.0.0-alpha.6 → 61.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 +59 -0
- package/dist/{Avatar-DchBEEMO.cjs → Avatar-D_L-oAme.cjs} +2 -2
- package/dist/{Avatar-DchBEEMO.cjs.map → Avatar-D_L-oAme.cjs.map} +1 -1
- package/dist/{Avatar-Bg_EZRgZ.js → Avatar-DpRimnsu.js} +2 -2
- package/dist/{Avatar-Bg_EZRgZ.js.map → Avatar-DpRimnsu.js.map} +1 -1
- package/dist/{EmptyState-O089K_US.cjs → EmptyState-B6kP-dEp.cjs} +2 -2
- package/dist/{EmptyState-O089K_US.cjs.map → EmptyState-B6kP-dEp.cjs.map} +1 -1
- package/dist/{EmptyState-BI6cIolY.js → EmptyState-BQww74OL.js} +2 -2
- package/dist/{EmptyState-BI6cIolY.js.map → EmptyState-BQww74OL.js.map} +1 -1
- package/dist/{Header-BHqUw0qH.js → Header-BzSnNlwq.js} +2 -2
- package/dist/{Header-BHqUw0qH.js.map → Header-BzSnNlwq.js.map} +1 -1
- package/dist/{Header-DwcRfQuP.cjs → Header-Cy_BQ2Ht.cjs} +2 -2
- package/dist/{Header-DwcRfQuP.cjs.map → Header-Cy_BQ2Ht.cjs.map} +1 -1
- package/dist/{Notice-D4zc_oTj.cjs → Notice-CjQQjfK7.cjs} +2 -2
- package/dist/{Notice-D4zc_oTj.cjs.map → Notice-CjQQjfK7.cjs.map} +1 -1
- package/dist/{Notice-D4gMAkVI.js → Notice-CmFkTliT.js} +2 -2
- package/dist/{Notice-D4gMAkVI.js.map → Notice-CmFkTliT.js.map} +1 -1
- package/dist/Txt-CuuPO9Ho.js +20 -0
- package/dist/Txt-CuuPO9Ho.js.map +1 -0
- package/dist/Txt-DFPibRb3.cjs +22 -0
- package/dist/Txt-DFPibRb3.cjs.map +1 -0
- package/dist/{activity-ClKZR5_o.cjs → activity-C3F5Z6U2.cjs} +2 -2
- package/dist/{activity-ClKZR5_o.cjs.map → activity-C3F5Z6U2.cjs.map} +1 -1
- package/dist/{activity-D0SefV4r.js → activity-CREOMVXI.js} +2 -2
- package/dist/{activity-D0SefV4r.js.map → activity-CREOMVXI.js.map} +1 -1
- package/dist/{ask-user-DBb0lUh2.cjs → ask-user-BR6s4GTF.cjs} +2 -2
- package/dist/{ask-user-DBb0lUh2.cjs.map → ask-user-BR6s4GTF.cjs.map} +1 -1
- package/dist/{ask-user-CqCUiZRR.js → ask-user-DAm06wBo.js} +2 -2
- package/dist/{ask-user-CqCUiZRR.js.map → ask-user-DAm06wBo.js.map} +1 -1
- package/dist/{attachment-card-BcK3XoCH.cjs → attachment-card-B95kgvBs.cjs} +2 -2
- package/dist/{attachment-card-BcK3XoCH.cjs.map → attachment-card-B95kgvBs.cjs.map} +1 -1
- package/dist/{attachment-card-CbsWWaV5.js → attachment-card-Q-77luib.js} +2 -2
- package/dist/{attachment-card-CbsWWaV5.js.map → attachment-card-Q-77luib.js.map} +1 -1
- package/dist/{code-C8akLzcu.js → code-DAXWNzvf.js} +2 -2
- package/dist/code-DAXWNzvf.js.map +1 -0
- package/dist/{code-D_sH618U.cjs → code-Dcah35Gp.cjs} +2 -2
- package/dist/code-Dcah35Gp.cjs.map +1 -0
- package/dist/{code-block-BMmilLti.js → code-block-Cug9dlAp.js} +4 -4
- package/dist/{code-block-BMmilLti.js.map → code-block-Cug9dlAp.js.map} +1 -1
- package/dist/{code-block-Ipm4Kqvc.cjs → code-block-CxN4T0Xw.cjs} +4 -4
- package/dist/{code-block-Ipm4Kqvc.cjs.map → code-block-CxN4T0Xw.cjs.map} +1 -1
- package/dist/{code-editor-Btr1qm_5.cjs → code-editor-GtjlBrBg.cjs} +9 -8
- package/dist/code-editor-GtjlBrBg.cjs.map +1 -0
- package/dist/{code-editor-DzhYz1fH.js → code-editor-zKwlle-5.js} +9 -8
- package/dist/code-editor-zKwlle-5.js.map +1 -0
- package/dist/{combobox-NPw0vrSa.js → combobox-Dwf4U1CZ.js} +2 -2
- package/dist/{combobox-NPw0vrSa.js.map → combobox-Dwf4U1CZ.js.map} +1 -1
- package/dist/{combobox-BaVFPQ6X.cjs → combobox-anmnqGB0.cjs} +2 -2
- package/dist/{combobox-BaVFPQ6X.cjs.map → combobox-anmnqGB0.cjs.map} +1 -1
- package/dist/{command-D9tAe7E8.cjs → command-CkiAUyOY.cjs} +4 -3
- package/dist/{command-D9tAe7E8.cjs.map → command-CkiAUyOY.cjs.map} +1 -1
- package/dist/{command-DEG5XcoY.js → command-NDEyxdvS.js} +4 -3
- package/dist/{command-DEG5XcoY.js.map → command-NDEyxdvS.js.map} +1 -1
- package/dist/{comment-B1Cf9w4Z.js → comment-CLSjQ6TN.js} +10 -10
- package/dist/comment-CLSjQ6TN.js.map +1 -0
- package/dist/{comment-DnbibTOe.cjs → comment-DNHjp35d.cjs} +10 -10
- package/dist/comment-DNHjp35d.cjs.map +1 -0
- package/dist/components/AttachmentCard.cjs.js +1 -1
- package/dist/components/AttachmentCard.es.js +1 -1
- package/dist/components/Avatar.cjs.js +1 -1
- package/dist/components/Avatar.es.js +1 -1
- package/dist/components/ClampedText.cjs.js +1 -1
- package/dist/components/ClampedText.es.js +1 -1
- package/dist/components/Code.cjs.js +1 -1
- package/dist/components/Code.es.js +1 -1
- package/dist/components/CodeBlock.cjs.js +1 -1
- package/dist/components/CodeBlock.es.js +1 -1
- package/dist/components/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/Combobox.cjs.js +1 -1
- package/dist/components/Combobox.es.js +1 -1
- package/dist/components/Command.cjs.js +1 -1
- package/dist/components/Command.es.js +1 -1
- package/dist/components/CommandPalette.cjs.js +2 -2
- package/dist/components/CommandPalette.es.js +2 -2
- package/dist/components/Comment.cjs.js +2 -2
- package/dist/components/Comment.es.js +3 -3
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +2 -2
- package/dist/components/DataDetailsPanel.es.js +2 -2
- package/dist/components/DataList.cjs.js +6 -5
- package/dist/components/DataList.cjs.js.map +1 -1
- package/dist/components/DataList.es.js +5 -5
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +1 -1
- package/dist/components/DateRangeTimeline.es.js +1 -1
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/EmptyState.cjs.js +1 -1
- package/dist/components/EmptyState.es.js +1 -1
- package/dist/components/Entity.cjs.js +3 -2
- package/dist/components/Entity.cjs.js.map +1 -1
- package/dist/components/Entity.es.js +3 -2
- package/dist/components/Entity.es.js.map +1 -1
- package/dist/components/EntityHeader.cjs.js +1 -1
- package/dist/components/EntityHeader.es.js +1 -1
- package/dist/components/Entry.cjs.js +1 -1
- package/dist/components/Entry.es.js +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +3 -3
- package/dist/components/EnvironmentVariablesEditor.es.js +3 -3
- package/dist/components/FileDropBackdrop.cjs.js +1 -1
- package/dist/components/FileDropBackdrop.es.js +1 -1
- package/dist/components/FilterBar.cjs.js +1 -1
- package/dist/components/FilterBar.es.js +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +1 -1
- package/dist/components/FormFieldBlocks.es.js +1 -1
- package/dist/components/Header.cjs.js +1 -1
- package/dist/components/Header.es.js +1 -1
- package/dist/components/HorizontalBars.cjs.js +1 -1
- package/dist/components/HorizontalBars.es.js +1 -1
- package/dist/components/KeyValueList.cjs.js +1 -1
- package/dist/components/KeyValueList.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 +1 -1
- package/dist/components/MainHeader.es.js +1 -1
- package/dist/components/MarkdownRenderer.cjs.js +1 -1
- package/dist/components/MarkdownRenderer.es.js +1 -1
- package/dist/components/Message.cjs.js +1 -1
- package/dist/components/Message.es.js +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 +1 -1
- package/dist/components/PageLayout.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +2 -2
- package/dist/components/PropertyFilter.es.js +2 -2
- package/dist/components/RuleBuilder.cjs.js +6 -6
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +6 -6
- package/dist/components/RuleBuilder.es.js.map +1 -1
- package/dist/components/SavedViews.cjs.js +1 -1
- package/dist/components/SavedViews.es.js +1 -1
- package/dist/components/ScatterPlotChart.cjs.js +1 -1
- package/dist/components/ScatterPlotChart.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 +1 -1
- package/dist/components/SectionCard.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +1 -1
- package/dist/components/SideDialog.es.js +1 -1
- package/dist/components/Sidebar.cjs.js +1641 -0
- package/dist/components/Sidebar.cjs.js.map +1 -0
- package/dist/components/Sidebar.d.ts +2 -0
- package/dist/components/Sidebar.es.js +1615 -0
- package/dist/components/Sidebar.es.js.map +1 -0
- package/dist/components/StatusIndicators.cjs.js +1 -1
- package/dist/components/StatusIndicators.es.js +1 -1
- package/dist/components/Steps.cjs.js +1 -1
- package/dist/components/Steps.es.js +1 -1
- package/dist/components/Table.cjs.js +1 -1
- package/dist/components/Table.es.js +1 -1
- package/dist/components/Tabs.cjs.js +2 -2
- package/dist/components/Tabs.es.js +2 -2
- package/dist/components/Text.cjs.js +1 -1
- package/dist/components/Text.es.js +1 -1
- package/dist/components/ThinkingLevel.cjs.js +1 -1
- package/dist/components/ThinkingLevel.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 +1 -1
- package/dist/components/ThreadRail.es.js +1 -1
- package/dist/components/TokenBudget.cjs.js +4 -4
- package/dist/components/TokenBudget.cjs.js.map +1 -1
- package/dist/components/TokenBudget.es.js +4 -4
- package/dist/components/TokenBudget.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/Txt.cjs.js +1 -1
- package/dist/components/Txt.es.js +1 -1
- package/dist/components/Workflow.cjs.js +5 -5
- package/dist/components/Workflow.es.js +5 -5
- package/dist/components/ai/activity.cjs.js +4 -4
- package/dist/components/ai/activity.es.js +4 -4
- package/dist/components/ai/ask-user.cjs.js +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/plan.cjs.js +1 -1
- package/dist/components/ai/plan.es.js +1 -1
- package/dist/components/ai/task-list.cjs.js +1 -1
- package/dist/components/ai/task-list.es.js +1 -1
- package/dist/components/ai/tool-approval.cjs.js +2 -1
- package/dist/components/ai/tool-approval.cjs.js.map +1 -1
- package/dist/components/ai/tool-approval.es.js +1 -1
- package/dist/components/ai/tool-call.cjs.js +2 -2
- package/dist/components/ai/tool-call.es.js +2 -2
- package/dist/components/ai/transcript-divider.cjs.js +1 -1
- package/dist/components/ai/transcript-divider.es.js +1 -1
- package/dist/{data-code-section-B5kljGaH.cjs → data-code-section-BNQkWe4H.cjs} +2 -2
- package/dist/{data-code-section-B5kljGaH.cjs.map → data-code-section-BNQkWe4H.cjs.map} +1 -1
- package/dist/{data-code-section-CW9TU70O.js → data-code-section-CU2XLh4d.js} +2 -2
- package/dist/{data-code-section-CW9TU70O.js.map → data-code-section-CU2XLh4d.js.map} +1 -1
- package/dist/{data-list-BHtjZ528.js → data-list-B6DT-u-0.js} +21 -6
- package/dist/data-list-B6DT-u-0.js.map +1 -0
- package/dist/{data-list-TouUI4pb.cjs → data-list-DQgIgmjy.cjs} +20 -5
- package/dist/data-list-DQgIgmjy.cjs.map +1 -0
- package/dist/{data-list-skeleton-BqihjHu8.cjs → data-list-skeleton-DdWv6VN-.cjs} +10 -6
- package/dist/data-list-skeleton-DdWv6VN-.cjs.map +1 -0
- package/dist/{data-list-skeleton-H8Zpph6_.js → data-list-skeleton-DuK0aDVr.js} +10 -7
- package/dist/data-list-skeleton-DuK0aDVr.js.map +1 -0
- package/dist/{data-list-spacer-D7UBH1uv.js → data-list-spacer-C0tMRgfC.js} +2 -2
- package/dist/{data-list-spacer-D7UBH1uv.js.map → data-list-spacer-C0tMRgfC.js.map} +1 -1
- package/dist/{data-list-spacer-CtooAPJP.cjs → data-list-spacer-_GgQY2d4.cjs} +2 -2
- package/dist/{data-list-spacer-CtooAPJP.cjs.map → data-list-spacer-_GgQY2d4.cjs.map} +1 -1
- package/dist/{data-panel-B5flRCQM.js → data-panel-Bzed2B75.js} +3 -3
- package/dist/{data-panel-B5flRCQM.js.map → data-panel-Bzed2B75.js.map} +1 -1
- package/dist/{data-panel-Ckjs7Kwo.cjs → data-panel-b48tWgzs.cjs} +3 -3
- package/dist/{data-panel-Ckjs7Kwo.cjs.map → data-panel-b48tWgzs.cjs.map} +1 -1
- package/dist/{date-time-range-picker-DzPLKJol.js → date-time-range-picker-BqlAiuYW.js} +2 -2
- package/dist/{date-time-range-picker-DzPLKJol.js.map → date-time-range-picker-BqlAiuYW.js.map} +1 -1
- package/dist/{date-time-range-picker-BbX8F_LY.cjs → date-time-range-picker-CvzC4nOt.cjs} +2 -2
- package/dist/{date-time-range-picker-BbX8F_LY.cjs.map → date-time-range-picker-CvzC4nOt.cjs.map} +1 -1
- package/dist/domains/auth/components/permission-denied.cjs.js +1 -1
- package/dist/domains/auth/components/permission-denied.es.js +1 -1
- package/dist/domains/auth/components/session-expired.cjs.js +1 -1
- package/dist/domains/auth/components/session-expired.es.js +1 -1
- package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js +11 -11
- package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js +11 -11
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment-context.cjs.js +10 -0
- package/dist/domains/chat/attachments/composer-attachment-context.cjs.js.map +1 -0
- package/dist/domains/chat/attachments/composer-attachment-context.d.ts +2 -0
- package/dist/domains/chat/attachments/composer-attachment-context.es.js +6 -0
- package/dist/domains/chat/attachments/composer-attachment-context.es.js.map +1 -0
- package/dist/domains/chat/attachments/composer-attachment-entry.cjs.js +35 -0
- package/dist/domains/chat/attachments/composer-attachment-entry.cjs.js.map +1 -0
- package/dist/domains/chat/attachments/composer-attachment-entry.d.ts +2 -0
- package/dist/domains/chat/attachments/composer-attachment-entry.es.js +31 -0
- package/dist/domains/chat/attachments/composer-attachment-entry.es.js.map +1 -0
- package/dist/domains/chat/attachments/composer-attachment-list.cjs.js +4 -3
- package/dist/domains/chat/attachments/composer-attachment-list.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment-list.es.js +4 -3
- package/dist/domains/chat/attachments/composer-attachment-list.es.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment.cjs.js +16 -19
- package/dist/domains/chat/attachments/composer-attachment.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/composer-attachment.es.js +17 -20
- package/dist/domains/chat/attachments/composer-attachment.es.js.map +1 -1
- package/dist/domains/chat/attachments/message-attachment.cjs.js +1 -1
- package/dist/domains/chat/attachments/message-attachment.es.js +1 -1
- package/dist/domains/chat/attachments/message-image-attachment.cjs.js +1 -1
- package/dist/domains/chat/attachments/message-image-attachment.es.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +4 -2
- package/dist/domains/chat/components/badge-wrapper.cjs.js.map +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +4 -2
- 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/components/section-label.cjs.js +1 -1
- package/dist/domains/chat/components/section-label.es.js +1 -1
- package/dist/domains/chat/context/tool-call-context.cjs.js +4 -0
- package/dist/domains/chat/context/tool-call-context.cjs.js.map +1 -1
- package/dist/domains/chat/context/tool-call-context.es.js +4 -1
- package/dist/domains/chat/context/tool-call-context.es.js.map +1 -1
- package/dist/domains/chat/messages/assistant-message-actions.cjs.js +1 -1
- package/dist/domains/chat/messages/assistant-message-actions.es.js +1 -1
- package/dist/domains/chat/messages/dataset-save-action.cjs.js +5 -4
- package/dist/domains/chat/messages/dataset-save-action.cjs.js.map +1 -1
- package/dist/domains/chat/messages/dataset-save-action.es.js +5 -4
- package/dist/domains/chat/messages/dataset-save-action.es.js.map +1 -1
- package/dist/domains/chat/messages/message-row.cjs.js +5 -5
- package/dist/domains/chat/messages/message-row.es.js +5 -5
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.es.js +1 -1
- package/dist/domains/chat/messages/renderers/message-text.cjs.js +2 -2
- package/dist/domains/chat/messages/renderers/message-text.es.js +2 -2
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +1 -1
- package/dist/domains/chat/messages/renderers/status-renderers.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/status-renderers.es.js +1 -1
- package/dist/domains/chat/messages/signal-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/signal-badge.es.js +1 -1
- package/dist/domains/chat/messages/skill-message.cjs.js +3 -3
- package/dist/domains/chat/messages/skill-message.es.js +3 -3
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +16 -8
- package/dist/domains/chat/messages/tripwire-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/tripwire-notice.es.js +16 -8
- 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 +3 -4
- package/dist/domains/chat/tools/badges/agent-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/agent-badge.es.js +3 -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.map +1 -1
- package/dist/domains/chat/tools/badges/awaits-tool-approval.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js +3 -3
- 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 +26 -33
- 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 +21 -28
- 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 +16 -26
- 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 +16 -26
- 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 +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +16 -10
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js +16 -10
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +28 -16
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +28 -16
- package/dist/domains/chat/tools/badges/observation-renderer.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +16 -26
- 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 +16 -26
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-badge.cjs.js +69 -0
- package/dist/domains/chat/tools/badges/tool-approval-badge.cjs.js.map +1 -0
- package/dist/domains/chat/tools/badges/{tool-approval-buttons.d.ts → tool-approval-badge.d.ts} +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-badge.es.js +65 -0
- package/dist/domains/chat/tools/badges/tool-approval-badge.es.js.map +1 -0
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js +21 -21
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-badge.es.js +21 -21
- package/dist/domains/chat/tools/badges/tool-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +13 -17
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.es.js +13 -17
- package/dist/domains/chat/tools/badges/workflow-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workspace-link.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/workspace-link.es.js +1 -1
- package/dist/domains/chat/tools/submit-plan-tool.cjs.js +2 -2
- package/dist/domains/chat/tools/submit-plan-tool.es.js +2 -2
- package/dist/domains/chat/tools/tool-card.cjs.js +1 -1
- package/dist/domains/chat/tools/tool-card.es.js +1 -1
- package/dist/domains/chat.cjs.js +1 -0
- package/dist/domains/chat.cjs.js.map +1 -1
- package/dist/domains/chat.es.js +1 -1
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js +5 -4
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js.map +1 -1
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +5 -4
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js.map +1 -1
- package/dist/domains/logs/components/log-data-panel.cjs.js +2 -2
- package/dist/domains/logs/components/log-data-panel.es.js +2 -2
- 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/no-logs-info.cjs.js +1 -1
- package/dist/domains/logs/components/no-logs-info.es.js +1 -1
- package/dist/domains/mcps/components/mcp-app-tool-result.cjs.js +2 -1
- package/dist/domains/mcps/components/mcp-app-tool-result.cjs.js.map +1 -1
- package/dist/domains/mcps/components/mcp-app-tool-result.es.js +2 -1
- package/dist/domains/mcps/components/mcp-app-tool-result.es.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.cjs.js +7 -7
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +7 -7
- 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 +7 -6
- package/dist/domains/memory/components/observation-detail-view.cjs.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +7 -6
- package/dist/domains/memory/components/observation-detail-view.es.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.cjs.js +4 -3
- package/dist/domains/memory/components/thread-context-progress.cjs.js.map +1 -1
- package/dist/domains/memory/components/thread-context-progress.es.js +4 -3
- package/dist/domains/memory/components/thread-context-progress.es.js.map +1 -1
- package/dist/domains/metrics/components/bar-list.cjs.js +1 -1
- package/dist/domains/metrics/components/bar-list.es.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.es.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/latency-card-view.es.js +5 -5
- package/dist/domains/metrics/components/memory-card-view.cjs.js +4 -4
- package/dist/domains/metrics/components/memory-card-view.es.js +4 -4
- 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 +5 -5
- package/dist/domains/metrics/components/scores-card-view.es.js +5 -5
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +4 -4
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +4 -4
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +5 -5
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +5 -5
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +4 -4
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +4 -4
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js +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/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 +17 -6
- package/dist/domains/scores/components/score-data-panel.cjs.js.map +1 -1
- package/dist/domains/scores/components/score-data-panel.es.js +17 -6
- package/dist/domains/scores/components/score-data-panel.es.js.map +1 -1
- package/dist/domains/scores/components/span-scoring.cjs.js +3 -3
- package/dist/domains/scores/components/span-scoring.es.js +3 -3
- package/dist/domains/scores/components/trace-scores-tab.cjs.js +5 -6
- package/dist/domains/scores/components/trace-scores-tab.cjs.js.map +1 -1
- package/dist/domains/scores/components/trace-scores-tab.es.js +5 -6
- package/dist/domains/scores/components/trace-scores-tab.es.js.map +1 -1
- package/dist/domains/traces/components/feedback-thread.cjs.js +3 -3
- package/dist/domains/traces/components/feedback-thread.es.js +3 -3
- package/dist/domains/traces/components/no-traces-info.cjs.js +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +7 -5
- package/dist/domains/traces/components/span-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.es.js +7 -5
- package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/span-details-view.cjs.js +3 -1
- package/dist/domains/traces/components/span-details-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-details-view.es.js +3 -1
- package/dist/domains/traces/components/span-details-view.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +5 -4
- 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 +5 -4
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js +4 -3
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js +4 -3
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +3 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +3 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-processor-attributes.cjs.js +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 +11 -8
- package/dist/domains/traces/components/span-timeline-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timeline-row.es.js +11 -8
- package/dist/domains/traces/components/span-timeline-row.es.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js +2 -1
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-timing-hover-card.es.js +2 -1
- package/dist/domains/traces/components/span-timing-hover-card.es.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.cjs.js +1 -1
- package/dist/domains/traces/components/span-token-usage.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js +1 -10
- 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 -10
- 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.es.js +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.es.js +1 -1
- package/dist/domains/traces/components/timeline-name-col.cjs.js +11 -7
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +11 -7
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +4 -4
- package/dist/domains/traces/components/timeline-timing-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.es.js +4 -4
- package/dist/domains/traces/components/timeline-timing-col.es.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +2 -2
- package/dist/domains/traces/components/trace-columns-menu.es.js +2 -2
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +11 -5
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.es.js +11 -5
- package/dist/domains/traces/components/trace-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-data-panel.es.js +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-span-panel.cjs.js +2 -0
- package/dist/domains/traces/components/trace-span-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-panel.es.js +2 -0
- package/dist/domains/traces/components/trace-span-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-timeline.cjs.js +6 -2
- package/dist/domains/traces/components/trace-span-timeline.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-timeline.es.js +6 -2
- package/dist/domains/traces/components/trace-span-timeline.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree.cjs.js +1 -1
- package/dist/domains/traces/components/trace-span-tree.es.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +2 -2
- package/dist/domains/traces/components/trace-summary-description.es.js +2 -2
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js +1 -1
- package/dist/domains/traces/components/trace-thread-item-view.es.js +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 +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.es.js +1 -1
- 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-view.cjs.js +6 -15
- package/dist/domains/traces/components/traces-list-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-list-view.es.js +8 -17
- 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/hooks/use-trace-url-state.cjs.js +2 -9
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.es.js +2 -9
- package/dist/domains/traces/hooks/use-trace-url-state.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-combobox.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-combobox.es.js +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.es.js +1 -1
- package/dist/domains/workflows/components/workflow-step-detail.cjs.js +4 -4
- package/dist/domains/workflows/components/workflow-step-detail.es.js +4 -4
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.cjs.js +1 -1
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.es.js +1 -1
- package/dist/domains/workflows/components/workflows-list/workflows-list.cjs.js +5 -5
- 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 +5 -5
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-details.cjs.js +1 -1
- package/dist/domains/workflows/runs/workflow-run-details.es.js +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js +13 -3
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.es.js +13 -3
- package/dist/domains/workflows/runs/workflow-run-list.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 +2 -2
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.es.js +2 -2
- package/dist/domains/workflows/workflow/input/workflow-json-input.cjs.js +1 -1
- package/dist/domains/workflows/workflow/input/workflow-json-input.es.js +1 -1
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.cjs.js +2 -2
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-body-graph.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-body-graph.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-data-edge.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-data-edge.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-step-controls.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-step-controls.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-boundary.cjs.js +10 -3
- package/dist/domains/workflows/workflow/workflow-graph-boundary.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js +10 -3
- 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 +1 -1
- package/dist/domains/workflows/workflow/workflow-input-data.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-data.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-error.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-error.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-run-header.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-status.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-status.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-step-action-bar.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-step-action-bar.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-steps-status.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-steps-status.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-suspended-steps.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-suspended-steps.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-time-travel-form.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-time-travel-form.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js +7 -6
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js +7 -6
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-header.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-header.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger.es.js.map +1 -1
- package/dist/domains/workspace/components/workspace-active-file.cjs.js +2 -2
- package/dist/domains/workspace/components/workspace-active-file.es.js +2 -2
- package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js +18 -13
- package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js.map +1 -1
- package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js +18 -13
- package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js.map +1 -1
- package/dist/domains/workspace/components/workspace-error.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-error.es.js +1 -1
- package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js +2 -2
- package/dist/domains/workspace/components/workspace-markdown-preview.es.js +2 -2
- package/dist/domains/workspace/components/workspace-parts.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-parts.es.js +1 -1
- package/dist/domains/workspace/components/workspace-search.cjs.js +6 -5
- package/dist/domains/workspace/components/workspace-search.cjs.js.map +1 -1
- package/dist/domains/workspace/components/workspace-search.es.js +6 -5
- package/dist/domains/workspace/components/workspace-search.es.js.map +1 -1
- package/dist/domains/workspace/components/workspace-tree.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-tree.es.js +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +8 -7
- 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 +8 -7
- package/dist/ee/signals/components/entity-index-compact-grid.es.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.cjs.js +1 -3
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +1 -3
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.cjs.js +21 -23
- package/dist/ee/signals/components/signals-empty-state.cjs.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +21 -23
- 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 +2 -3
- 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 +2 -3
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
- package/dist/ee/signals/examples-pager.cjs.js +2 -2
- package/dist/ee/signals/examples-pager.cjs.js.map +1 -1
- package/dist/ee/signals/examples-pager.es.js +2 -2
- package/dist/ee/signals/examples-pager.es.js.map +1 -1
- package/dist/ee/signals/flow-card.cjs.js +7 -16
- package/dist/ee/signals/flow-card.cjs.js.map +1 -1
- package/dist/ee/signals/flow-card.es.js +7 -16
- package/dist/ee/signals/flow-card.es.js.map +1 -1
- package/dist/ee/signals/lifeline-point.cjs.js +1 -1
- package/dist/ee/signals/lifeline-point.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-point.es.js +1 -1
- package/dist/ee/signals/lifeline-point.es.js.map +1 -1
- package/dist/ee/signals/lifeline-row.cjs.js +2 -2
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-row.es.js +2 -2
- package/dist/ee/signals/lifeline-row.es.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +8 -29
- package/dist/ee/signals/noise-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +8 -29
- package/dist/ee/signals/noise-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +4 -4
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +4 -4
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +2 -2
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +2 -2
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +5 -5
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js.map +1 -1
- package/dist/ee/signals/settings/trace-signal-settings.es.js +5 -5
- package/dist/ee/signals/settings/trace-signal-settings.es.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.cjs.js +5 -7
- package/dist/ee/signals/signal-delta-column.cjs.js.map +1 -1
- package/dist/ee/signals/signal-delta-column.es.js +5 -7
- package/dist/ee/signals/signal-delta-column.es.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.cjs.js +3 -3
- package/dist/ee/signals/signal-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/signal-lifelines.es.js +3 -3
- package/dist/ee/signals/signal-lifelines.es.js.map +1 -1
- package/dist/ee/signals/signals-error-state.cjs.js +1 -1
- package/dist/ee/signals/signals-error-state.es.js +1 -1
- package/dist/ee/signals/snapshot-timeline.cjs.js +2 -3
- package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +2 -3
- package/dist/ee/signals/snapshot-timeline.es.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js +3 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.es.js +3 -1
- package/dist/ee/signals/sortable-signal-headers.es.js.map +1 -1
- package/dist/ee/signals/theme-compare.cjs.js +1 -3
- package/dist/ee/signals/theme-compare.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare.es.js +1 -3
- package/dist/ee/signals/theme-compare.es.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +9 -43
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +9 -43
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +4 -4
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +4 -4
- package/dist/ee/signals/theme-filter-banner.es.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js +2 -2
- package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.es.js +2 -2
- package/dist/ee/signals/theme-lifelines.es.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.cjs.js +4 -3
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js +4 -3
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +15 -37
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +15 -37
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +3 -4
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +3 -4
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.cjs.js +2 -2
- package/dist/ee/signals/view-mode-tab.es.js +2 -2
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +1 -1
- package/dist/{entity-header-By57lpH8.cjs → entity-header-DB1p5sEk.cjs} +2 -2
- package/dist/{entity-header-By57lpH8.cjs.map → entity-header-DB1p5sEk.cjs.map} +1 -1
- package/dist/{entity-header-DMjzE4Za.js → entity-header-GQT7ZnzW.js} +2 -2
- package/dist/{entity-header-DMjzE4Za.js.map → entity-header-GQT7ZnzW.js.map} +1 -1
- package/dist/{field-error-id-CSvLKtJE.js → field-error-id-B6AEO4lS.js} +2 -2
- package/dist/{field-error-id-CSvLKtJE.js.map → field-error-id-B6AEO4lS.js.map} +1 -1
- package/dist/{field-error-id-4xiCVBJ_.cjs → field-error-id-CFlRpKIz.cjs} +2 -2
- package/dist/{field-error-id-4xiCVBJ_.cjs.map → field-error-id-CFlRpKIz.cjs.map} +1 -1
- package/dist/hooks/use-fluid-hover.cjs.js +44 -30
- package/dist/hooks/use-fluid-hover.cjs.js.map +1 -1
- package/dist/hooks/use-fluid-hover.es.js +44 -31
- package/dist/hooks/use-fluid-hover.es.js.map +1 -1
- package/dist/hooks/use-is-mobile.cjs.js.map +1 -1
- package/dist/hooks/use-is-mobile.es.js.map +1 -1
- package/dist/{horizontal-bars-BdQnhZ5Y.cjs → horizontal-bars-BhYULTsx.cjs} +2 -2
- package/dist/{horizontal-bars-BdQnhZ5Y.cjs.map → horizontal-bars-BhYULTsx.cjs.map} +1 -1
- package/dist/{horizontal-bars-DHX7208F.js → horizontal-bars-ibfbdoX9.js} +2 -2
- package/dist/{horizontal-bars-DHX7208F.js.map → horizontal-bars-ibfbdoX9.js.map} +1 -1
- package/dist/layout/tabbed-container.cjs.js +5 -5
- package/dist/layout/tabbed-container.es.js +5 -5
- package/dist/lib/form/components/array-element-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/array-element-wrapper.es.js +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/error-message.cjs.js +1 -1
- package/dist/lib/form/components/error-message.es.js +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/object-wrapper.es.js +1 -1
- package/dist/lib/form/components/union-field.cjs.js +1 -1
- package/dist/lib/form/components/union-field.es.js +1 -1
- package/dist/{logs-data-list-MakOZmBm.cjs → logs-data-list-CMbvhzUW.cjs} +3 -3
- package/dist/{logs-data-list-MakOZmBm.cjs.map → logs-data-list-CMbvhzUW.cjs.map} +1 -1
- package/dist/{logs-data-list-CdLNnsJm.js → logs-data-list-YNXUjGIB.js} +3 -3
- package/dist/{logs-data-list-CdLNnsJm.js.map → logs-data-list-YNXUjGIB.js.map} +1 -1
- package/dist/{markdown-renderer-BCeiKCA4.cjs → markdown-renderer-4P5RZjlT.cjs} +2 -2
- package/dist/{markdown-renderer-BCeiKCA4.cjs.map → markdown-renderer-4P5RZjlT.cjs.map} +1 -1
- package/dist/{markdown-renderer-CKSEkKch.js → markdown-renderer-DR6SJPyB.js} +2 -2
- package/dist/{markdown-renderer-CKSEkKch.js.map → markdown-renderer-DR6SJPyB.js.map} +1 -1
- package/dist/{message-DGYBEr0X.js → message-16E_OfJr.js} +2 -2
- package/dist/{message-DGYBEr0X.js.map → message-16E_OfJr.js.map} +1 -1
- package/dist/{message-BSjrZWVU.cjs → message-La-BSpBC.cjs} +2 -2
- package/dist/{message-BSjrZWVU.cjs.map → message-La-BSpBC.cjs.map} +1 -1
- package/dist/{metrics-card-B9m1jHwk.cjs → metrics-card-CF0TvQ6M.cjs} +3 -3
- package/dist/{metrics-card-B9m1jHwk.cjs.map → metrics-card-CF0TvQ6M.cjs.map} +1 -1
- package/dist/{metrics-card-BcKVznFk.js → metrics-card-COZt0cRK.js} +3 -3
- package/dist/{metrics-card-BcKVznFk.js.map → metrics-card-COZt0cRK.js.map} +1 -1
- package/dist/{metrics-kpi-card-CLlu5you.cjs → metrics-kpi-card-DU96jUI0.cjs} +2 -2
- package/dist/{metrics-kpi-card-CLlu5you.cjs.map → metrics-kpi-card-DU96jUI0.cjs.map} +1 -1
- package/dist/{metrics-kpi-card-CDeJ3I1-.js → metrics-kpi-card-PJWplcOg.js} +2 -2
- package/dist/{metrics-kpi-card-CDeJ3I1-.js.map → metrics-kpi-card-PJWplcOg.js.map} +1 -1
- package/dist/{metrics-line-chart-R-T_jyeP.cjs → metrics-line-chart-BofHRush.cjs} +2 -2
- package/dist/{metrics-line-chart-R-T_jyeP.cjs.map → metrics-line-chart-BofHRush.cjs.map} +1 -1
- package/dist/{metrics-line-chart-C9_EMuHK.js → metrics-line-chart-C7i--w_F.js} +2 -2
- package/dist/{metrics-line-chart-C9_EMuHK.js.map → metrics-line-chart-C7i--w_F.js.map} +1 -1
- package/dist/{metrics-line-chart-tooltip-BoG8nbkO.cjs → metrics-line-chart-tooltip-BXRdTzZX.cjs} +2 -2
- package/dist/{metrics-line-chart-tooltip-BoG8nbkO.cjs.map → metrics-line-chart-tooltip-BXRdTzZX.cjs.map} +1 -1
- package/dist/{metrics-line-chart-tooltip-C3WAk3DN.js → metrics-line-chart-tooltip-qXjxMRkc.js} +2 -2
- package/dist/{metrics-line-chart-tooltip-C3WAk3DN.js.map → metrics-line-chart-tooltip-qXjxMRkc.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/{notification-activity-BDoleJAA.js → notification-activity-DEzmrUfo.js} +3 -3
- package/dist/{notification-activity-BDoleJAA.js.map → notification-activity-DEzmrUfo.js.map} +1 -1
- package/dist/{notification-activity-C_vZiswj.cjs → notification-activity-DermuFT1.cjs} +3 -3
- package/dist/{notification-activity-C_vZiswj.cjs.map → notification-activity-DermuFT1.cjs.map} +1 -1
- package/dist/{page-header-Dc2KSbnw.cjs → page-header-CLcX--H8.cjs} +14 -14
- package/dist/page-header-CLcX--H8.cjs.map +1 -0
- package/dist/{page-header-D5a7qrVc.js → page-header-pWZXI3lO.js} +14 -14
- package/dist/page-header-pWZXI3lO.js.map +1 -0
- package/dist/{plan-4Udllcyn.cjs → plan-BQh1M96H.cjs} +3 -3
- package/dist/plan-BQh1M96H.cjs.map +1 -0
- package/dist/{plan-CZxw-Q5D.js → plan-cSkdE2Fd.js} +3 -3
- package/dist/plan-cSkdE2Fd.js.map +1 -0
- package/dist/{Txt-DNnvlrBo.cjs → primitives/text.cjs.js} +15 -10
- package/dist/primitives/text.cjs.js.map +1 -0
- package/dist/primitives/text.d.ts +2 -0
- package/dist/{Txt-C3cYJgKU.js → primitives/text.es.js} +13 -10
- package/dist/primitives/text.es.js.map +1 -0
- package/dist/{reasoning-activity-Du19QVGl.js → reasoning-activity-CS-aUa1E.js} +3 -3
- package/dist/{reasoning-activity-Du19QVGl.js.map → reasoning-activity-CS-aUa1E.js.map} +1 -1
- package/dist/{reasoning-activity-Bux9ZUhr.cjs → reasoning-activity-Cfelxr49.cjs} +3 -3
- package/dist/{reasoning-activity-Bux9ZUhr.cjs.map → reasoning-activity-Cfelxr49.cjs.map} +1 -1
- package/dist/{section-C5r-Mtxk.cjs → section-BvTlcV3N.cjs} +2 -2
- package/dist/{section-C5r-Mtxk.cjs.map → section-BvTlcV3N.cjs.map} +1 -1
- package/dist/{section-DYrbH35K.js → section-BvkW-glM.js} +2 -2
- package/dist/{section-DYrbH35K.js.map → section-BvkW-glM.js.map} +1 -1
- package/dist/{side-dialog-yvAvCday.js → side-dialog-BMrmb8Fz.js} +2 -2
- package/dist/{side-dialog-yvAvCday.js.map → side-dialog-BMrmb8Fz.js.map} +1 -1
- package/dist/{side-dialog-CFTgnDXu.cjs → side-dialog-BsMzNpHT.cjs} +2 -2
- package/dist/{side-dialog-CFTgnDXu.cjs.map → side-dialog-BsMzNpHT.cjs.map} +1 -1
- package/dist/{signal-activity-BI-DRdjw.cjs → signal-activity-D4vzi2cB.cjs} +3 -3
- package/dist/{signal-activity-BI-DRdjw.cjs.map → signal-activity-D4vzi2cB.cjs.map} +1 -1
- package/dist/{signal-activity-_ChAbNsW.js → signal-activity-DaC48fkM.js} +3 -3
- package/dist/{signal-activity-_ChAbNsW.js.map → signal-activity-DaC48fkM.js.map} +1 -1
- package/dist/{span-payload-primitives-XWZOfAi-.js → span-payload-primitives-Cniig-k4.js} +7 -6
- package/dist/span-payload-primitives-Cniig-k4.js.map +1 -0
- package/dist/{span-payload-primitives-0b_ow5Rt.cjs → span-payload-primitives-DIyQNNw0.cjs} +7 -6
- package/dist/span-payload-primitives-DIyQNNw0.cjs.map +1 -0
- package/dist/src/domains/chat/attachments/composer-attachment-context.d.ts +1 -0
- package/dist/src/domains/chat/attachments/composer-attachment-entry.d.ts +7 -0
- package/dist/src/domains/chat/attachments/composer-attachment.d.ts +1 -0
- package/dist/src/domains/chat/components/badge-wrapper.d.ts +5 -2
- package/dist/src/domains/chat/context/tool-call-context.d.ts +1 -0
- package/dist/src/domains/chat/stories/composer-attachments.stories.d.ts +3 -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 -2
- package/dist/src/domains/chat/tools/badges/awaits-tool-approval.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/code-mode-badge.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/file-tree-badge.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/sandbox-execution-badge.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/tool-approval-badge.d.ts +19 -0
- package/dist/src/domains/chat/tools/badges/tool-badge.d.ts +2 -2
- package/dist/src/domains/chat/tools/badges/workflow-badge.d.ts +2 -2
- package/dist/src/domains/traces/components/trace-data-panel-view.d.ts +3 -1
- package/dist/src/domains/traces/components/trace-data-panel-view.stories.d.ts +1 -0
- package/dist/src/domains/traces/components/trace-span-panel.d.ts +3 -1
- package/dist/src/ds/components/CodeEditor/code-editor.d.ts +6 -1
- package/dist/src/ds/components/CodeEditor/code-editor.stories.d.ts +1 -0
- package/dist/src/ds/components/Composer/composer.stories.d.ts +0 -1
- package/dist/src/ds/components/DataList/data-list-group.d.ts +4 -0
- package/dist/src/ds/components/DataList/data-list-skeleton.d.ts +9 -0
- package/dist/src/ds/components/DataList/data-list.d.ts +1 -0
- package/dist/src/ds/components/DataList/data-list.stories.d.ts +1 -0
- package/dist/src/ds/components/Sidebar/footer/sidebar-footer-meta.d.ts +7 -0
- package/dist/src/ds/components/Sidebar/footer/sidebar-footer.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/footer/sidebar-meter.d.ts +24 -0
- package/dist/src/ds/components/Sidebar/header/sidebar-brand.d.ts +6 -0
- package/dist/src/ds/components/Sidebar/header/sidebar-command-header.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/header/sidebar-header.d.ts +6 -0
- package/dist/src/ds/components/Sidebar/header/sidebar-search-trigger.d.ts +7 -0
- package/dist/src/ds/components/Sidebar/index.d.ts +20 -0
- package/dist/src/ds/components/{MainSidebar/main-sidebar-link-active.d.ts → Sidebar/nav/sidebar-link-active.d.ts} +2 -2
- package/dist/src/ds/components/Sidebar/nav/sidebar-nav-header.d.ts +13 -0
- package/dist/src/ds/components/{MainSidebar/main-sidebar-nav-item-classes.d.ts → Sidebar/nav/sidebar-nav-item-classes.d.ts} +2 -2
- package/dist/src/ds/components/{MainSidebar/main-sidebar-nav-label.d.ts → Sidebar/nav/sidebar-nav-label.d.ts} +4 -4
- package/dist/src/ds/components/{MainSidebar/main-sidebar-nav-link.d.ts → Sidebar/nav/sidebar-nav-link.d.ts} +9 -9
- package/dist/src/ds/components/Sidebar/nav/sidebar-nav-list.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/nav/sidebar-nav-section.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/nav/sidebar-nav-separator.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/nav/sidebar-nav.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack-context.d.ts +8 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack-page-classes.d.ts +1 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack-root-view.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack-root.d.ts +7 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack-view.d.ts +9 -0
- package/dist/src/ds/components/Sidebar/nav-stack/sidebar-nav-stack.d.ts +10 -0
- package/dist/src/ds/components/{MainSidebar/main-sidebar-context.d.ts → Sidebar/root/sidebar-context.d.ts} +7 -7
- package/dist/src/ds/components/Sidebar/root/sidebar-mobile-trigger.d.ts +5 -0
- package/dist/src/ds/components/Sidebar/root/sidebar-panel.d.ts +6 -0
- package/dist/src/ds/components/{MainSidebar/main-sidebar-provider.d.ts → Sidebar/root/sidebar-provider.d.ts} +5 -5
- package/dist/src/ds/components/Sidebar/root/sidebar-root.d.ts +6 -0
- package/dist/src/ds/components/Sidebar/root/sidebar-trigger.d.ts +3 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-customize-dialog.d.ts +12 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-more-links.d.ts +11 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-optional-link.d.ts +11 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-section-link.d.ts +9 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-sections-content.d.ts +4 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-sections.d.ts +18 -0
- package/dist/src/ds/components/Sidebar/sections/sidebar-visibility.d.ts +19 -0
- package/dist/src/ds/components/{MainSidebar/main-sidebar.stories.d.ts → Sidebar/sidebar-layout.stories.d.ts} +4 -4
- package/dist/src/ds/components/Sidebar/sidebar.d.ts +43 -0
- package/dist/src/ds/{new/sidebar/sidebar-new.stories.d.ts → components/Sidebar/sidebar.stories.d.ts} +3 -3
- package/dist/src/ds/components/Tabs/tabs-list.d.ts +1 -0
- package/dist/src/ds/components/Tabs/tabs.stories.d.ts +6 -0
- package/dist/src/ds/components/Txt/Txt.d.ts +12 -20
- package/dist/src/ds/components/Txt/txt.stories.d.ts +2 -0
- package/dist/src/ds/components/ai/plan/plan.d.ts +2 -2
- package/dist/src/ds/components/ai/tool-approval/index.d.ts +2 -2
- package/dist/src/ds/components/ai/tool-approval/tool-approval.d.ts +11 -4
- package/dist/src/ds/components/ai/tool-approval/tool-approval.stories.d.ts +17 -3
- package/dist/src/ds/components/ai/tool-call/tool-call-arguments.d.ts +2 -1
- package/dist/src/ds/components/ai/tool-call/tool-call-edit.d.ts +2 -1
- package/dist/src/ds/primitives/control-sizes.stories.d.ts +10 -0
- package/dist/src/ds/primitives/text.d.ts +19 -0
- package/dist/src/ds/tokens/fonts.d.ts +1 -1
- package/dist/src/ee/signals/components/signals-empty-state.stories.d.ts +12 -0
- package/dist/src/hooks/use-fluid-hover.d.ts +5 -1
- package/dist/style.css +100 -91
- package/dist/{tabs-list-Tqj36HIL.cjs → tabs-list-BeWntzEw.cjs} +17 -3
- package/dist/tabs-list-BeWntzEw.cjs.map +1 -0
- package/dist/{tabs-list-tLx5fgP0.js → tabs-list-DoSX2xLL.js} +17 -3
- package/dist/tabs-list-DoSX2xLL.js.map +1 -0
- package/dist/tabs-root.css +2 -2
- package/dist/{tabs-tab-ClLIOGiC.js → tabs-tab-BI3hb-HP.js} +3 -4
- package/dist/tabs-tab-BI3hb-HP.js.map +1 -0
- package/dist/{tabs-tab-C-C2vX-D.cjs → tabs-tab-DhLs9bO0.cjs} +3 -4
- package/dist/tabs-tab-DhLs9bO0.cjs.map +1 -0
- package/dist/{text-and-icon-Bo6NLLBl.js → text-and-icon-CsBZ4Gn8.js} +2 -2
- package/dist/{text-and-icon-Bo6NLLBl.js.map → text-and-icon-CsBZ4Gn8.js.map} +1 -1
- package/dist/{text-and-icon-CvakH4YL.cjs → text-and-icon-DB9klVPu.cjs} +2 -2
- package/dist/{text-and-icon-CvakH4YL.cjs.map → text-and-icon-DB9klVPu.cjs.map} +1 -1
- package/dist/{thread-list-DKBwiGfX.cjs → thread-list-BbOI-tHs.cjs} +2 -2
- package/dist/{thread-list-DKBwiGfX.cjs.map → thread-list-BbOI-tHs.cjs.map} +1 -1
- package/dist/{thread-list-D2zSEQWK.js → thread-list-BhqOe2iu.js} +2 -2
- package/dist/{thread-list-D2zSEQWK.js.map → thread-list-BhqOe2iu.js.map} +1 -1
- package/dist/tokens.cjs.js +3 -0
- package/dist/tokens.cjs.js.map +1 -1
- package/dist/tokens.es.js +3 -0
- package/dist/tokens.es.js.map +1 -1
- package/dist/tool-approval-B0DJ3coA.js +71 -0
- package/dist/tool-approval-B0DJ3coA.js.map +1 -0
- package/dist/tool-approval-jNN6UeC7.cjs +75 -0
- package/dist/tool-approval-jNN6UeC7.cjs.map +1 -0
- package/dist/{tool-call-arguments-DEXKbR8d.cjs → tool-call-arguments-Bud9On3h.cjs} +15 -11
- package/dist/tool-call-arguments-Bud9On3h.cjs.map +1 -0
- package/dist/{tool-call-arguments-CufA6H_n.js → tool-call-arguments-DzdVtN4f.js} +15 -11
- package/dist/tool-call-arguments-DzdVtN4f.js.map +1 -0
- package/dist/{tool-call-group-DKCarGYB.js → tool-call-group-Bg9Rg05T.js} +3 -3
- package/dist/{tool-call-group-DKCarGYB.js.map → tool-call-group-Bg9Rg05T.js.map} +1 -1
- package/dist/{tool-call-group-GBF6eQAK.cjs → tool-call-group-xOLcTzb_.cjs} +3 -3
- package/dist/{tool-call-group-GBF6eQAK.cjs.map → tool-call-group-xOLcTzb_.cjs.map} +1 -1
- package/dist/{tool-card-DKNWgEoo.js → tool-card-B5wPeDh_.js} +13 -17
- package/dist/tool-card-B5wPeDh_.js.map +1 -0
- package/dist/{tool-card-CQAEtUhC.cjs → tool-card-CwENsPdZ.cjs} +13 -17
- package/dist/tool-card-CwENsPdZ.cjs.map +1 -0
- package/dist/{traces-data-list-BeWQiNT2.js → traces-data-list-B0xInvZg.js} +4 -4
- package/dist/{traces-data-list-BeWQiNT2.js.map → traces-data-list-B0xInvZg.js.map} +1 -1
- package/dist/{traces-data-list-DDG1BY5u.cjs → traces-data-list-CVLHJtd4.cjs} +4 -4
- package/dist/{traces-data-list-DDG1BY5u.cjs.map → traces-data-list-CVLHJtd4.cjs.map} +1 -1
- package/dist/{transcript-divider-CPIo8NUj.js → transcript-divider-DQbebYHb.js} +2 -2
- package/dist/{transcript-divider-CPIo8NUj.js.map → transcript-divider-DQbebYHb.js.map} +1 -1
- package/dist/{transcript-divider-273Bsdjs.cjs → transcript-divider-fc_PrxES.cjs} +2 -2
- package/dist/{transcript-divider-273Bsdjs.cjs.map → transcript-divider-fc_PrxES.cjs.map} +1 -1
- package/dist/{use-workflow-graph-runtime-r_OOpvSo.cjs → use-workflow-graph-runtime-B4njhsih.cjs} +3 -3
- package/dist/{use-workflow-graph-runtime-r_OOpvSo.cjs.map → use-workflow-graph-runtime-B4njhsih.cjs.map} +1 -1
- package/dist/{use-workflow-graph-runtime-BF_NZEkj.js → use-workflow-graph-runtime-CfRQ3vzM.js} +3 -3
- package/dist/{use-workflow-graph-runtime-BF_NZEkj.js.map → use-workflow-graph-runtime-CfRQ3vzM.js.map} +1 -1
- package/dist/{workflow-code-dialog-content-DyoN3850.cjs → workflow-code-dialog-content-BE9f1Fcf.cjs} +2 -2
- package/dist/{workflow-code-dialog-content-DyoN3850.cjs.map → workflow-code-dialog-content-BE9f1Fcf.cjs.map} +1 -1
- package/dist/{workflow-code-dialog-content-3AcgitHa.js → workflow-code-dialog-content-BZAkw31A.js} +2 -2
- package/dist/{workflow-code-dialog-content-3AcgitHa.js.map → workflow-code-dialog-content-BZAkw31A.js.map} +1 -1
- package/dist/{workflow-condition-card-BCSYogql.js → workflow-condition-card-3YSKAtKw.js} +3 -3
- package/dist/{workflow-condition-card-BCSYogql.js.map → workflow-condition-card-3YSKAtKw.js.map} +1 -1
- package/dist/{workflow-condition-card-Dlo2PaKV.cjs → workflow-condition-card-80XcAvDl.cjs} +3 -3
- package/dist/{workflow-condition-card-Dlo2PaKV.cjs.map → workflow-condition-card-80XcAvDl.cjs.map} +1 -1
- package/dist/{workflow-data-edge-view-CjbBulHe.cjs → workflow-data-edge-view-BoCjUe4t.cjs} +2 -2
- package/dist/{workflow-data-edge-view-CjbBulHe.cjs.map → workflow-data-edge-view-BoCjUe4t.cjs.map} +1 -1
- package/dist/{workflow-data-edge-view-B9uz58wL.js → workflow-data-edge-view-ux68M8gD.js} +2 -2
- package/dist/{workflow-data-edge-view-B9uz58wL.js.map → workflow-data-edge-view-ux68M8gD.js.map} +1 -1
- package/dist/{workflow-debug-controls-BVaX_0Dq.js → workflow-debug-controls-BgyAN-Ke.js} +2 -2
- package/dist/{workflow-debug-controls-BVaX_0Dq.js.map → workflow-debug-controls-BgyAN-Ke.js.map} +1 -1
- package/dist/{workflow-debug-controls-DUNR0Ws0.cjs → workflow-debug-controls-DsAvdRuS.cjs} +2 -2
- package/dist/{workflow-debug-controls-DUNR0Ws0.cjs.map → workflow-debug-controls-DsAvdRuS.cjs.map} +1 -1
- package/dist/{workflow-edge-data-button-DQAzBPfm.cjs → workflow-edge-data-button-BKTN3LQd.cjs} +3 -3
- package/dist/{workflow-edge-data-button-DQAzBPfm.cjs.map → workflow-edge-data-button-BKTN3LQd.cjs.map} +1 -1
- package/dist/{workflow-edge-data-button-BTynlndD.js → workflow-edge-data-button-YegDtxyD.js} +3 -3
- package/dist/{workflow-edge-data-button-BTynlndD.js.map → workflow-edge-data-button-YegDtxyD.js.map} +1 -1
- package/package.json +11 -17
- package/theme/typography.css +16 -0
- package/dist/Txt-C3cYJgKU.js.map +0 -1
- package/dist/Txt-DNnvlrBo.cjs.map +0 -1
- package/dist/code-C8akLzcu.js.map +0 -1
- package/dist/code-D_sH618U.cjs.map +0 -1
- package/dist/code-editor-Btr1qm_5.cjs.map +0 -1
- package/dist/code-editor-DzhYz1fH.js.map +0 -1
- package/dist/comment-B1Cf9w4Z.js.map +0 -1
- package/dist/comment-DnbibTOe.cjs.map +0 -1
- package/dist/components/MainSidebar.cjs.js +0 -133
- package/dist/components/MainSidebar.cjs.js.map +0 -1
- package/dist/components/MainSidebar.d.ts +0 -2
- package/dist/components/MainSidebar.es.js +0 -121
- package/dist/components/MainSidebar.es.js.map +0 -1
- package/dist/data-list-BHtjZ528.js.map +0 -1
- package/dist/data-list-TouUI4pb.cjs.map +0 -1
- package/dist/data-list-skeleton-BqihjHu8.cjs.map +0 -1
- package/dist/data-list-skeleton-H8Zpph6_.js.map +0 -1
- package/dist/domains/chat/tools/badges/tool-approval-buttons.cjs.js +0 -66
- package/dist/domains/chat/tools/badges/tool-approval-buttons.cjs.js.map +0 -1
- package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js +0 -62
- package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js.map +0 -1
- package/dist/main-sidebar-link-active-C9P_WBus.cjs +0 -798
- package/dist/main-sidebar-link-active-C9P_WBus.cjs.map +0 -1
- package/dist/main-sidebar-link-active-JtKNF9hx.js +0 -781
- package/dist/main-sidebar-link-active-JtKNF9hx.js.map +0 -1
- package/dist/new/sidebar.cjs.js +0 -725
- package/dist/new/sidebar.cjs.js.map +0 -1
- package/dist/new/sidebar.d.ts +0 -2
- package/dist/new/sidebar.es.js +0 -705
- package/dist/new/sidebar.es.js.map +0 -1
- package/dist/page-header-D5a7qrVc.js.map +0 -1
- package/dist/page-header-Dc2KSbnw.cjs.map +0 -1
- package/dist/plan-4Udllcyn.cjs.map +0 -1
- package/dist/plan-CZxw-Q5D.js.map +0 -1
- package/dist/span-payload-primitives-0b_ow5Rt.cjs.map +0 -1
- package/dist/span-payload-primitives-XWZOfAi-.js.map +0 -1
- package/dist/src/domains/chat/stories/approvals.stories.d.ts +0 -52
- package/dist/src/domains/chat/tools/badges/tool-approval-buttons.d.ts +0 -14
- package/dist/src/ds/components/MainSidebar/index.d.ts +0 -1
- package/dist/src/ds/components/MainSidebar/main-sidebar-bottom.d.ts +0 -3
- package/dist/src/ds/components/MainSidebar/main-sidebar-mobile-trigger.d.ts +0 -5
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-header.d.ts +0 -11
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-list.d.ts +0 -3
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-section.d.ts +0 -12
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav-separator.d.ts +0 -3
- package/dist/src/ds/components/MainSidebar/main-sidebar-nav.d.ts +0 -3
- package/dist/src/ds/components/MainSidebar/main-sidebar-root.d.ts +0 -6
- package/dist/src/ds/components/MainSidebar/main-sidebar-sections.d.ts +0 -13
- package/dist/src/ds/components/MainSidebar/main-sidebar-trigger.d.ts +0 -3
- package/dist/src/ds/components/MainSidebar/main-sidebar.d.ts +0 -35
- package/dist/src/ds/components/ai/tool-approval/tool-approval-actions.stories.d.ts +0 -44
- package/dist/src/ds/new/sidebar/index.d.ts +0 -15
- package/dist/src/ds/new/sidebar/sidebar-new-brand.d.ts +0 -6
- package/dist/src/ds/new/sidebar/sidebar-new-command-header.d.ts +0 -3
- package/dist/src/ds/new/sidebar/sidebar-new-footer-meta.d.ts +0 -7
- package/dist/src/ds/new/sidebar/sidebar-new-footer.d.ts +0 -3
- package/dist/src/ds/new/sidebar/sidebar-new-header.d.ts +0 -6
- package/dist/src/ds/new/sidebar/sidebar-new-meter.d.ts +0 -24
- package/dist/src/ds/new/sidebar/sidebar-new-more-links.d.ts +0 -10
- package/dist/src/ds/new/sidebar/sidebar-new-nav-header.d.ts +0 -11
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-context.d.ts +0 -8
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-page-classes.d.ts +0 -1
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-root-view.d.ts +0 -3
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-root.d.ts +0 -7
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-view.d.ts +0 -9
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack.d.ts +0 -10
- package/dist/src/ds/new/sidebar/sidebar-new-nav.d.ts +0 -3
- package/dist/src/ds/new/sidebar/sidebar-new-root.d.ts +0 -6
- package/dist/src/ds/new/sidebar/sidebar-new-search-trigger.d.ts +0 -7
- package/dist/src/ds/new/sidebar/sidebar-new-section-link.d.ts +0 -9
- package/dist/src/ds/new/sidebar/sidebar-new-sections.d.ts +0 -12
- package/dist/src/ds/new/sidebar/sidebar-new-trigger.d.ts +0 -3
- package/dist/src/ds/new/sidebar/sidebar-new.d.ts +0 -43
- package/dist/tabs-list-Tqj36HIL.cjs.map +0 -1
- package/dist/tabs-list-tLx5fgP0.js.map +0 -1
- package/dist/tabs-tab-C-C2vX-D.cjs.map +0 -1
- package/dist/tabs-tab-ClLIOGiC.js.map +0 -1
- package/dist/tool-approval-BNJ6MpnV.js +0 -77
- package/dist/tool-approval-BNJ6MpnV.js.map +0 -1
- package/dist/tool-approval-DOPxugSv.cjs +0 -80
- package/dist/tool-approval-DOPxugSv.cjs.map +0 -1
- package/dist/tool-call-arguments-CufA6H_n.js.map +0 -1
- package/dist/tool-call-arguments-DEXKbR8d.cjs.map +0 -1
- package/dist/tool-card-CQAEtUhC.cjs.map +0 -1
- package/dist/tool-card-DKNWgEoo.js.map +0 -1
- /package/dist/{sidebar.css → Sidebar.css} +0 -0
package/dist/{workflow-condition-card-Dlo2PaKV.cjs.map → workflow-condition-card-80XcAvDl.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-condition-card-Dlo2PaKV.cjs","sources":["../src/ds/components/Workflow/cards/workflow-card-kind.ts","../src/ds/components/Workflow/cards/workflow-type-badge.tsx","../src/ds/components/Workflow/cards/workflow-card-badge-utils.ts","../src/ds/components/Workflow/cards/workflow-clock.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-expression.ts","../src/ds/components/Workflow/cards/condition/workflow-condition-source.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-card-view.tsx","../src/ds/components/Workflow/cards/timing/workflow-time-dial.tsx","../src/ds/components/Workflow/cards/timing/workflow-timing.tsx","../src/ds/components/Workflow/cards/step/workflow-step-card-view.tsx","../src/ds/components/Workflow/graph/workflow-boundary-node.tsx","../src/ds/components/Workflow/graph/workflow-camera-duration.ts","../src/ds/components/Workflow/graph/workflow-graph-groups.tsx","../src/ds/components/Workflow/graph/zoom-slider.tsx","../src/ds/components/Workflow/graph/workflow-graph-canvas.tsx","../src/ds/components/Workflow/graph/workflow-node-frame.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-card.tsx"],"sourcesContent":["import {\n ArrowRightLeft,\n Bot,\n Braces,\n CalendarClock,\n GitBranch,\n GitFork,\n Repeat2,\n Timer,\n Workflow,\n Wrench,\n} from 'lucide-react';\nimport type { LucideIcon } from 'lucide-react';\nimport type { WorkflowStepCardViewProps } from '../types';\nimport type { BadgeVariant } from '@/ds/components/Badge';\n\nexport type WorkflowTypeBadgeProps = Pick<\n WorkflowStepCardViewProps,\n 'nodeKind' | 'isForEach' | 'isNestedWorkflowStep' | 'stepGraph' | 'isParallel' | 'mapConfig' | 'date' | 'duration'\n>;\n\nexport function getWorkflowCardBadge(props: WorkflowTypeBadgeProps): {\n label: string;\n Icon: LucideIcon;\n tone: BadgeVariant;\n indicator?: string;\n} {\n if (props.isForEach) return { label: 'For each', tone: 'orange', Icon: Repeat2, indicator: 'foreach' };\n if (props.isNestedWorkflowStep || props.stepGraph)\n return { label: 'Workflow', tone: 'purple', Icon: Workflow, indicator: 'workflow' };\n if (props.isParallel && !props.nodeKind)\n return { label: 'Parallel', tone: 'blue', Icon: GitFork, indicator: 'parallel' };\n if (props.nodeKind === 'map' || props.mapConfig)\n return { label: 'Map', tone: 'orange', Icon: ArrowRightLeft, indicator: 'map' };\n if (props.nodeKind === 'wait-until' || props.date)\n return { label: 'Wait until', tone: 'purple', Icon: CalendarClock, indicator: 'sleep-until' };\n if (props.nodeKind === 'delay' || props.duration !== undefined)\n return { label: 'Delay', tone: 'purple', Icon: Timer, indicator: 'sleep' };\n if (props.nodeKind === 'agent') return { label: 'Agent', tone: 'cyan', Icon: Bot };\n if (props.nodeKind === 'tool') return { label: 'Tool', tone: 'pink', Icon: Wrench };\n if (props.nodeKind === 'classifier') return { label: 'Classifier', tone: 'blue', Icon: GitBranch };\n return { label: 'Step', tone: 'neutral', Icon: Braces };\n}\n","import { getWorkflowCardBadge } from './workflow-card-kind';\nimport type { WorkflowTypeBadgeProps } from './workflow-card-kind';\nimport { Badge } from '@/ds/components/Badge';\n\nexport function WorkflowTypeBadge(props: WorkflowTypeBadgeProps) {\n const { label, Icon, tone } = getWorkflowCardBadge(props);\n return (\n <Badge size=\"xs\" variant={tone} icon={<Icon aria-hidden />}>\n {label}\n </Badge>\n );\n}\n","import {\n CalendarClock,\n Clock,\n CornerDownRight,\n GitBranch,\n Layers,\n List,\n Network,\n PlayCircle,\n RefreshCw,\n Repeat,\n Repeat1,\n Timer,\n Workflow,\n} from 'lucide-react';\nimport type { LucideIcon } from 'lucide-react';\n\nexport const BADGE_COLORS = {\n sleep: 'var(--badge-purple-indicator)',\n forEach: 'var(--badge-orange-indicator)',\n map: 'var(--badge-orange-indicator)',\n parallel: 'var(--badge-blue-indicator)',\n suspend: 'var(--badge-pink-indicator)',\n after: 'var(--badge-cyan-indicator)',\n workflow: 'var(--badge-purple-indicator)',\n when: 'var(--badge-amber-indicator)',\n dountil: 'var(--badge-purple-indicator)',\n dowhile: 'var(--badge-cyan-indicator)',\n until: 'var(--badge-amber-indicator)',\n while: 'var(--badge-green-indicator)',\n if: 'var(--badge-blue-indicator)',\n else: 'var(--muted-foreground)',\n} as const;\n\nexport const BADGE_ICONS = {\n sleep: Timer,\n sleepUntil: CalendarClock,\n forEach: List,\n map: List,\n parallel: Workflow,\n suspend: PlayCircle,\n after: Clock,\n workflow: Layers,\n when: Network,\n dountil: Repeat1,\n dowhile: Repeat,\n until: Timer,\n while: RefreshCw,\n if: GitBranch,\n else: CornerDownRight,\n} as const;\n\nexport interface ConditionIconConfig {\n icon: LucideIcon | undefined;\n color: string | undefined;\n}\n\nexport interface WorkflowCardIndicator {\n id: string;\n label: string;\n icon: LucideIcon;\n color: string;\n}\n\nconst CONDITION_LABELS: Record<string, string> = {\n when: 'When condition',\n dountil: 'Do until condition',\n dowhile: 'Do while condition',\n until: 'Until condition',\n while: 'While condition',\n if: 'If condition',\n else: 'Else condition',\n and: 'And condition',\n or: 'Or condition',\n not: 'Not condition',\n};\n\nexport const getConditionIconAndColor = (type?: string): ConditionIconConfig => {\n switch (type) {\n case 'when':\n return { icon: BADGE_ICONS.when, color: BADGE_COLORS.when };\n case 'dountil':\n return { icon: BADGE_ICONS.dountil, color: BADGE_COLORS.dountil };\n case 'dowhile':\n return { icon: BADGE_ICONS.dowhile, color: BADGE_COLORS.dowhile };\n case 'until':\n return { icon: BADGE_ICONS.until, color: BADGE_COLORS.until };\n case 'while':\n return { icon: BADGE_ICONS.while, color: BADGE_COLORS.while };\n case 'if':\n return { icon: BADGE_ICONS.if, color: BADGE_COLORS.if };\n case 'else':\n return { icon: BADGE_ICONS.else, color: BADGE_COLORS.else };\n case 'and':\n case 'or':\n case 'not':\n return { icon: BADGE_ICONS.when, color: BADGE_COLORS.when };\n default:\n return { icon: undefined, color: undefined };\n }\n};\n\nexport const getConditionIndicator = (type?: string): WorkflowCardIndicator | undefined => {\n const { icon, color } = getConditionIconAndColor(type);\n\n if (!type || !icon || !color) {\n return undefined;\n }\n\n return {\n id: `condition-${type}`,\n label: CONDITION_LABELS[type] ?? `${type} condition`,\n icon,\n color,\n };\n};\n\nexport interface WorkflowNodeBadgeInfo {\n isSleepNode: boolean;\n isForEachNode: boolean;\n isMapNode: boolean;\n isNestedWorkflow: boolean;\n hasSpecialBadge: boolean;\n}\n\nexport interface WorkflowCardBadgesProps {\n duration?: number;\n date?: Date;\n isForEach?: boolean;\n mapConfig?: string;\n canSuspend?: boolean;\n isParallel?: boolean;\n stepGraph?: unknown;\n}\n\nexport const getNodeBadgeInfo = ({\n duration,\n date,\n isForEach,\n mapConfig,\n canSuspend,\n isParallel,\n stepGraph,\n}: WorkflowCardBadgesProps): WorkflowNodeBadgeInfo => {\n const isSleepNode = Boolean(duration || date);\n const isForEachNode = Boolean(isForEach);\n const isMapNode = Boolean(mapConfig && !isForEach);\n const isNestedWorkflow = Boolean(stepGraph);\n const hasSpecialBadge =\n isSleepNode || Boolean(canSuspend || isParallel) || isForEachNode || isMapNode || isNestedWorkflow;\n\n return {\n isSleepNode,\n isForEachNode,\n isMapNode,\n isNestedWorkflow,\n hasSpecialBadge,\n };\n};\n\nexport const getNodeIndicators = (props: WorkflowCardBadgesProps): WorkflowCardIndicator[] => {\n const { isSleepNode, isForEachNode, isMapNode, isNestedWorkflow } = getNodeBadgeInfo(props);\n const indicators: WorkflowCardIndicator[] = [];\n\n if (isSleepNode) {\n indicators.push({\n id: props.date ? 'sleep-until' : 'sleep',\n label: props.date ? 'Sleep until step' : 'Sleep step',\n icon: props.date ? BADGE_ICONS.sleepUntil : BADGE_ICONS.sleep,\n color: BADGE_COLORS.sleep,\n });\n }\n\n if (props.canSuspend) {\n indicators.push({\n id: 'suspend',\n label: 'Suspend/resume step',\n icon: BADGE_ICONS.suspend,\n color: BADGE_COLORS.suspend,\n });\n }\n\n if (props.isParallel) {\n indicators.push({\n id: 'parallel',\n label: 'Parallel step',\n icon: BADGE_ICONS.parallel,\n color: BADGE_COLORS.parallel,\n });\n }\n\n if (isNestedWorkflow) {\n indicators.push({\n id: 'workflow',\n label: 'Nested workflow step',\n icon: BADGE_ICONS.workflow,\n color: BADGE_COLORS.workflow,\n });\n }\n\n if (isForEachNode) {\n indicators.push({\n id: 'foreach',\n label: 'Foreach step',\n icon: BADGE_ICONS.forEach,\n color: BADGE_COLORS.forEach,\n });\n }\n\n if (isMapNode) {\n indicators.push({\n id: 'map',\n label: 'Map step',\n icon: BADGE_ICONS.map,\n color: BADGE_COLORS.map,\n });\n }\n\n return indicators;\n};\n","import { useEffect, useState } from 'react';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDuration } from '@/utils/duration';\n\ninterface WorkflowClockProps {\n startedAt: number;\n endedAt?: number;\n isRunning?: boolean;\n spansSuspension?: boolean;\n}\n\nexport const WorkflowClock = ({ startedAt, endedAt, isRunning = false, spansSuspension }: WorkflowClockProps) => {\n if (isRunning && endedAt === undefined && Number.isFinite(startedAt)) {\n return <RunningWorkflowClock key={startedAt} startedAt={startedAt} spansSuspension={spansSuspension} />;\n }\n return <ElapsedTime startedAt={startedAt} endedAt={endedAt} spansSuspension={spansSuspension} />;\n};\n\nfunction RunningWorkflowClock({ startedAt, spansSuspension }: Omit<WorkflowClockProps, 'isRunning'>) {\n const [time, setTime] = useState(() => Date.now());\n useEffect(() => {\n const interval = setInterval(() => setTime(Date.now()), 100);\n return () => clearInterval(interval);\n }, []);\n return <ElapsedTime startedAt={startedAt} endedAt={time} spansSuspension={spansSuspension} />;\n}\n\nfunction ElapsedTime({ startedAt, endedAt, spansSuspension }: Omit<WorkflowClockProps, 'isRunning'>) {\n const elapsed = endedAt === undefined ? undefined : formatDuration(endedAt - startedAt);\n\n return (\n <Txt\n variant=\"meta\"\n tone=\"muted\"\n font=\"mono\"\n className=\"whitespace-nowrap\"\n title={elapsed && spansSuspension ? 'Includes time spent suspended waiting for input' : undefined}\n >\n {elapsed === undefined ? <span aria-label=\"Timing unavailable\">—</span> : elapsed}\n </Txt>\n );\n}\n","import type { WorkflowCardCondition } from '../../types';\n\nexport function conditionExpression(condition: WorkflowCardCondition) {\n if (condition.fnString !== undefined) return condition.fnString;\n return JSON.stringify({ ref: condition.ref, query: condition.query, conj: condition.conj }, null, 2);\n}\n","import { useEffect, useState } from 'react';\nimport { Code } from '@/ds/components/Code';\nimport { formatTypeScript } from '@/utils/formatting';\n\nconst MAX_FORMATTED_SOURCE_CHARS = 10_000;\n\nexport function WorkflowConditionSource({ source }: { source: string }) {\n if (source.length > MAX_FORMATTED_SOURCE_CHARS) return <Code code={source} />;\n return <FormattedConditionSource key={source} source={source} />;\n}\n\nfunction FormattedConditionSource({ source }: { source: string }) {\n const [formatted, setFormatted] = useState<string>();\n\n useEffect(() => {\n let cancelled = false;\n formatTypeScript(source)\n .then(expression => {\n if (!cancelled) setFormatted(expression.trim());\n })\n .catch(() => undefined);\n return () => {\n cancelled = true;\n };\n }, [source]);\n\n return <Code code={formatted ?? source} lang={formatted === undefined ? undefined : 'typescript'} />;\n}\n","import { Braces } from 'lucide-react';\nimport type { WorkflowConditionCardViewProps } from '../../types';\nimport { getConditionIndicator } from '../workflow-card-badge-utils';\nimport { conditionExpression } from './workflow-condition-expression';\nimport { WorkflowConditionSource } from './workflow-condition-source';\nimport { Badge } from '@/ds/components/Badge';\nimport { Code } from '@/ds/components/Code';\nimport { CopyButton } from '@/ds/components/CopyButton';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\n\nconst surfaceClasses = 'rounded-[calc(var(--radius-xl)-2px)] bg-card text-meta';\n\nexport function WorkflowConditionCardView({\n type,\n conditions,\n previousDisplayStatus,\n actionBar,\n}: WorkflowConditionCardViewProps) {\n const indicator = getConditionIndicator(type);\n const Icon = indicator?.icon ?? Braces;\n const label = indicator?.label.replace(/ condition$/, '') ?? 'Condition';\n const occurrences = new Map<string, number>();\n const sources = conditions.map(condition => {\n const expression = conditionExpression(condition);\n const identity = `${condition.type}:${expression}`;\n const occurrence = occurrences.get(identity) ?? 0;\n occurrences.set(identity, occurrence + 1);\n return { condition, expression, key: `${identity}:${occurrence}` };\n });\n const copyContent =\n conditions.length > 1 ? JSON.stringify(conditions, null, 2) : sources.map(source => source.expression).join('\\n');\n const hasExpression = type !== 'else' && sources.some(({ expression }) => expression.trim().length > 0);\n\n return (\n <div\n className={`${raisedSurfaceStyle} w-[274px] overflow-hidden rounded-xl p-0.5 has-focus-visible:outline-1 has-focus-visible:outline-offset-4 has-focus-visible:outline-border-focus`}\n data-workflow-node\n data-testid=\"workflow-condition-node\"\n data-workflow-step-status={previousDisplayStatus ?? 'idle'}\n >\n <div className=\"flex h-[46px] items-center gap-2 px-2.5 text-meta text-muted-foreground\">\n <Badge size=\"xs\" variant={type === 'else' ? 'neutral' : 'amber'} emphasis=\"subtle\" icon={<Icon aria-hidden />}>\n {label}\n </Badge>\n {hasExpression && (\n <>\n <span className=\"ml-auto\">Expression</span>\n <CopyButton content={copyContent} tooltip=\"Copy expression\" size=\"sm\" className=\"nodrag nopan\" />\n </>\n )}\n </div>\n {hasExpression ? (\n <div\n role=\"region\"\n aria-label=\"Condition details\"\n tabIndex={0}\n className={`${surfaceClasses} nodrag nopan nowheel max-h-55 overflow-auto p-3.5 text-foreground [&_pre]:leading-relaxed [&_pre]:whitespace-pre-wrap`}\n >\n {sources.map(({ condition, expression, key }) => (\n <div key={key}>\n {condition.conj && (\n <Badge size=\"xs\" variant=\"neutral\">\n {condition.conj.toUpperCase()}\n </Badge>\n )}\n {condition.fnString !== undefined ? (\n <WorkflowConditionSource source={condition.fnString} />\n ) : (\n <Code code={expression} />\n )}\n </div>\n ))}\n </div>\n ) : (\n <p className={`${surfaceClasses} p-3 text-muted-foreground`}>\n {type === 'else' ? 'When no other branch matches' : 'Condition expression unavailable'}\n </p>\n )}\n {actionBar && <div className=\"nodrag nopan flex justify-end px-2.5 py-1.5 empty:hidden\">{actionBar}</div>}\n </div>\n );\n}\n","import type { ComponentProps, ReactNode } from 'react';\nimport { cn } from '@/utils/cn';\n\nexport type DurationUnit = 'ms' | 's' | 'min' | 'h';\n\nconst DIAL_CENTER = 58;\nconst CLOCK_TICK_ANGLES = Array.from({ length: 60 }, (_, index) => index * 6);\nconst DURATION_TICK_ANGLES = Array.from({ length: 41 }, (_, index) => -120 + index * 6);\n\nfunction pointAt(angle: number, radius: number) {\n const radians = (angle * Math.PI) / 180;\n return {\n x: DIAL_CENTER + Math.sin(radians) * radius,\n y: DIAL_CENTER - Math.cos(radians) * radius,\n };\n}\n\nfunction DialTick({ angle, major, className, ...props }: ComponentProps<'line'> & { angle: number; major: boolean }) {\n const outer = pointAt(angle, 49);\n const inner = pointAt(angle, major ? 38 : 43);\n return (\n <line\n x1={inner.x}\n y1={inner.y}\n x2={outer.x}\n y2={outer.y}\n className={cn(major ? 'stroke-placeholder' : 'stroke-border-strong', className)}\n {...props}\n />\n );\n}\n\nfunction DialHand({ angle, length }: { angle: number; length: number }) {\n const tip = pointAt(angle, length);\n return (\n <line\n x1={DIAL_CENTER}\n y1={DIAL_CENTER}\n x2={tip.x}\n y2={tip.y}\n className=\"stroke-1.5 stroke-muted-foreground\"\n strokeLinecap=\"round\"\n />\n );\n}\n\nfunction DialFace({ tickAngles, children }: { tickAngles: number[]; children: ReactNode }) {\n return (\n <span className=\"block size-28 shrink-0 text-muted-foreground\" aria-hidden>\n <svg viewBox=\"0 0 116 116\" fill=\"none\" className=\"block size-full overflow-visible\">\n {tickAngles.map((angle, index) => (\n <DialTick key={angle} angle={angle} major={index % 5 === 0} />\n ))}\n {children}\n </svg>\n </span>\n );\n}\n\nexport function ClockDial({ date }: { date: Date }) {\n const minutes = date.getUTCMinutes();\n return (\n <DialFace tickAngles={CLOCK_TICK_ANGLES}>\n <DialHand angle={((date.getUTCHours() % 12) + minutes / 60) * 30} length={26} />\n <DialHand angle={minutes * 6} length={37} />\n <circle cx={DIAL_CENTER} cy={DIAL_CENTER} r={2} fill=\"currentColor\" />\n </DialFace>\n );\n}\n\nexport function DurationDial({ amount, unit }: { amount: number; unit: DurationUnit }) {\n const scale = Math.max({ h: 24, ms: 1000, s: 60, min: 60 }[unit], Math.ceil(amount / 10) * 10);\n return (\n <DialFace tickAngles={DURATION_TICK_ANGLES}>\n <DialTick\n angle={-120 + (amount / scale) * 240}\n major\n className=\"stroke-foreground stroke-2\"\n strokeLinecap=\"round\"\n />\n <text x={DIAL_CENTER} y={94} textAnchor=\"middle\" className=\"fill-muted-foreground font-body text-meta\">\n {scale} {unit}\n </text>\n <text x={DIAL_CENTER} y={106} textAnchor=\"middle\" className=\"fill-placeholder font-body text-meta\">\n scale\n </text>\n </DialFace>\n );\n}\n","import type { ReactNode } from 'react';\nimport type { WorkflowStepCardViewProps } from '../../types';\nimport { ClockDial, DurationDial } from './workflow-time-dial';\nimport type { DurationUnit } from './workflow-time-dial';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDate, formatShortDate } from '@/utils/date-format';\nimport { formatDuration } from '@/utils/duration';\n\nconst captionClasses = 'text-meta tracking-wider whitespace-nowrap text-muted-foreground uppercase';\n\nfunction durationReading(duration: number): { amount: number; unit: DurationUnit } {\n if (duration < 1000) return { amount: duration, unit: 'ms' };\n if (duration < 60000) return { amount: duration / 1000, unit: 's' };\n if (duration < 3600000) return { amount: duration / 60000, unit: 'min' };\n return { amount: duration / 3600000, unit: 'h' };\n}\n\nfunction TimingReading({\n value,\n unit,\n caption,\n dial,\n}: {\n value: string;\n unit?: string;\n caption: string;\n dial: ReactNode;\n}) {\n return (\n <span className=\"mt-1 flex min-h-27 items-center justify-between gap-1 text-foreground\">\n <span className=\"z-10 flex min-w-0 flex-col gap-2\">\n <Txt\n as=\"span\"\n variant=\"display\"\n className=\"flex items-baseline gap-1 leading-none tracking-tighter whitespace-nowrap tabular-nums\"\n >\n {value}\n {unit && <small className=\"text-meta tracking-normal text-muted-foreground\">{unit}</small>}\n </Txt>\n <span className={captionClasses}>{caption}</span>\n </span>\n {dial}\n </span>\n );\n}\n\nexport function WorkflowTiming({ duration, date }: Pick<WorkflowStepCardViewProps, 'duration' | 'date'>) {\n if (date) {\n const scheduled = new Date(date);\n if (!Number.isFinite(scheduled.getTime())) {\n return <span className={captionClasses}>Schedule unavailable</span>;\n }\n return (\n <TimingReading\n value={formatDate(scheduled, 'time', { timeZone: 'UTC' }) ?? ''}\n unit=\"UTC\"\n caption={formatShortDate(scheduled, { timeZone: 'UTC', now: 0 }) ?? ''}\n dial={<ClockDial date={scheduled} />}\n />\n );\n }\n if (duration === undefined) return null;\n if (!Number.isFinite(duration) || duration < 0) {\n return <span className={captionClasses}>Delay unavailable</span>;\n }\n const reading = durationReading(duration);\n return (\n <TimingReading\n value={formatDuration(duration) ?? ''}\n caption=\"Configured delay\"\n dial={<DurationDial {...reading} />}\n />\n );\n}\n","import { ChevronRight } from 'lucide-react';\nimport { useState } from 'react';\nimport type { CSSProperties } from 'react';\nimport type { WorkflowCardDisplayStatus, WorkflowStepCardViewProps } from '../../types';\nimport { WorkflowTiming } from '../timing/workflow-timing';\nimport { getNodeIndicators } from '../workflow-card-badge-utils';\nimport { getWorkflowCardBadge } from '../workflow-card-kind';\nimport { WorkflowClock } from '../workflow-clock';\nimport { WorkflowTypeBadge } from '../workflow-type-badge';\nimport { ActivityWick } from '@/ds/components/Activity';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/ds/components/Collapsible';\nimport { Shimmer } from '@/ds/components/Shimmer';\nimport { Txt } from '@/ds/components/Txt';\nimport { raisedSurfaceStyle, surfaceStateLayerStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/utils/cn';\n\ntype ReportedStatus = NonNullable<WorkflowCardDisplayStatus>;\n\nconst statusLabels = {\n running: 'Running',\n success: 'Completed',\n failed: 'Failed',\n suspended: 'Needs input',\n waiting: 'Waiting',\n paused: 'Paused',\n skipped: 'Skipped',\n canceled: 'Canceled',\n tripwire: 'Tripwire blocked',\n} satisfies Record<ReportedStatus, string>;\n\nconst statusLineClasses: Partial<Record<ReportedStatus, string>> = {\n success: 'after:bg-success-indicator',\n failed: 'after:bg-destructive-indicator',\n tripwire: 'after:bg-warning-indicator',\n waiting: 'after:bg-warning-indicator',\n paused: 'after:bg-warning-indicator',\n skipped: 'after:bg-muted-foreground',\n};\n\nconst footerStatusClasses: Partial<Record<ReportedStatus, string>> = {\n success: 'text-success-indicator',\n failed: 'text-destructive-foreground',\n suspended: 'text-warning-foreground',\n tripwire: 'text-warning-foreground',\n};\n\nconst suspendedWickStyle: CSSProperties & { '--belt-hue': string } = { '--belt-hue': 'var(--warning-indicator)' };\n\nexport function WorkflowStepCardView(props: WorkflowStepCardViewProps) {\n const {\n label,\n description,\n displayStatus,\n stepKey,\n isSelected,\n isWaiting,\n isHovered,\n onHoverChange,\n onSelect,\n isForEach,\n foreachProgress,\n startedAt,\n endedAt,\n actionBar,\n body,\n } = props;\n const [expanded, setExpanded] = useState(props.initiallyOpen ?? false);\n const isRunning = displayStatus === 'running';\n const isSuspended = displayStatus === 'suspended';\n const reportedStatusLabel =\n displayStatus && Object.hasOwn(statusLabels, displayStatus) ? statusLabels[displayStatus] : undefined;\n const statusLabel = displayStatus ? (reportedStatusLabel ?? 'Status unavailable') : 'Not started';\n const kind = getWorkflowCardBadge(props);\n const capabilities = getNodeIndicators(props)\n .filter(indicator => indicator.id !== kind.indicator)\n .map(indicator => indicator.label.replace(/ step$/, ''));\n const hasActivity = isRunning || isSuspended;\n const isStacked = isForEach && !expanded;\n const isBodyExpanded = Boolean(body) && expanded;\n const Summary = onSelect ? 'button' : 'div';\n\n return (\n <div\n className={cn(\n 'relative isolate w-[274px]',\n isBodyExpanded && 'w-172',\n isStacked &&\n 'pb-3 before:absolute before:inset-x-1.5 before:top-2 before:bottom-1.5 before:-z-10 before:rounded-xl before:border before:border-border before:bg-card after:absolute after:inset-x-3 after:top-3.5 after:bottom-0 after:-z-20 after:rounded-xl after:border after:border-border after:bg-card',\n )}\n >\n <Collapsible\n open={expanded}\n onOpenChange={setExpanded}\n className={cn(\n raisedSurfaceStyle,\n 'relative rounded-xl border border-transparent text-foreground transition-[border-color,background-color,box-shadow] [--card-radius:calc(var(--radius-xl)-2px)] motion-reduce:transition-none',\n 'after:pointer-events-none after:absolute after:inset-x-4 after:-top-px after:h-px after:mask-x-from-76%',\n displayStatus && statusLineClasses[displayStatus],\n 'has-focus-visible:outline-1 has-focus-visible:outline-offset-4 has-focus-visible:outline-border-focus',\n isSelected && 'outline-1 outline-offset-4 outline-border-focus',\n isBodyExpanded && 'border-dashed border-muted-foreground/40 shadow-none',\n isWaiting && 'border-info-indicator',\n isHovered && !isSelected && 'bg-muted',\n )}\n data-workflow-node\n data-workflow-step-key={stepKey}\n data-workflow-step-status={displayStatus ?? 'idle'}\n data-workflow-step-active={isSelected || undefined}\n data-workflow-step-waiting={isWaiting || undefined}\n data-workflow-step-hovered={isHovered || undefined}\n data-testid={props.isNestedWorkflowStep ? 'workflow-nested-node' : 'workflow-default-node'}\n onMouseEnter={() => onHoverChange?.(true)}\n onMouseLeave={() => onHoverChange?.(false)}\n >\n <div className=\"m-0.5 overflow-hidden rounded-(--card-radius)\">\n <Summary\n className={cn(\n 'nodrag nopan flex w-full flex-col text-left',\n onSelect && 'group cursor-pointer focus-visible:outline-hidden',\n )}\n type={onSelect ? 'button' : undefined}\n aria-label={onSelect ? `Inspect ${label}` : undefined}\n aria-pressed={onSelect ? Boolean(isSelected) : undefined}\n onClick={onSelect}\n >\n <span className=\"flex items-start justify-between gap-2.5 rounded-(--card-radius) px-3.5 py-3 group-hover:bg-fill-subtle\">\n <Txt as=\"span\" variant=\"column\" tone=\"ink\" className=\"min-w-0 wrap-anywhere\" title={label}>\n <Shimmer active={isRunning}>{label}</Shimmer>\n </Txt>\n <WorkflowTypeBadge {...props} />\n </span>\n <span className=\"flex flex-col gap-2 rounded-t-(--card-radius) bg-card px-3.5 py-3 empty:py-1.5\">\n {description && (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" className=\"wrap-anywhere\">\n {description}\n </Txt>\n )}\n <WorkflowTiming duration={props.duration} date={props.date} />\n {isWaiting && (\n <Txt as=\"span\" variant=\"meta\" className=\"text-info-indicator\">\n Next step in debug\n </Txt>\n )}\n {isForEach && foreachProgress && (\n <Txt as=\"span\" variant=\"meta\" className=\"flex flex-col gap-2 py-1\">\n <span>\n <strong>{foreachProgress.completedCount}</strong> of {foreachProgress.totalCount} items complete\n </span>\n {foreachProgress.totalCount > 0 ? (\n <progress\n className=\"h-1 w-full appearance-none border-0 bg-muted accent-success-indicator [&::-moz-progress-bar]:bg-success-indicator [&::-webkit-progress-bar]:bg-muted [&::-webkit-progress-value]:bg-success-indicator\"\n aria-label={`${label} completed items`}\n value={foreachProgress.completedCount}\n max={foreachProgress.totalCount}\n />\n ) : (\n <span>No items to process</span>\n )}\n </Txt>\n )}\n {capabilities.length > 0 && (\n <Txt as=\"span\" variant=\"meta\" tone=\"muted\">\n {capabilities.join(' · ')}\n </Txt>\n )}\n </span>\n </Summary>\n <div\n className={cn(\n 'nodrag nopan flex min-h-7 items-center justify-between gap-2 bg-card px-3.5 pb-2.5 text-meta text-muted-foreground',\n displayStatus && footerStatusClasses[displayStatus],\n )}\n >\n <span role=\"status\" className={isRunning ? 'sr-only motion-reduce:not-sr-only' : undefined}>\n {statusLabel}\n </span>\n {startedAt !== undefined && (\n <span className=\"ml-auto\">\n <WorkflowClock\n startedAt={startedAt}\n endedAt={endedAt}\n isRunning={isRunning}\n spansSuspension={props.spansSuspension}\n />\n </span>\n )}\n {actionBar}\n </div>\n\n {body && (\n <>\n <CollapsibleTrigger\n className={cn(\n surfaceStateLayerStyle,\n 'nodrag nopan flex min-h-11 w-full items-center justify-between border-t border-border bg-card px-3.5 py-2.5 text-caption focus-visible:outline-hidden',\n )}\n >\n <span>\n {expanded ? 'Collapse' : 'Expand'} {isForEach ? 'loop' : 'workflow'}\n </span>\n <ChevronRight aria-hidden size={14} />\n </CollapsibleTrigger>\n <CollapsibleContent className=\"h-155 overflow-hidden border-t border-dashed border-border\">\n {body}\n </CollapsibleContent>\n </>\n )}\n </div>\n {hasActivity && (\n <ActivityWick\n status={isSuspended ? 'ready' : 'working'}\n aria-hidden\n className=\"before:hidden\"\n style={isSuspended ? suspendedWickStyle : undefined}\n />\n )}\n </Collapsible>\n </div>\n );\n}\n","import { Handle, Position } from '@xyflow/react';\nimport type { NodeProps } from '@xyflow/react';\n\nimport type { WorkflowBoundaryNodeModel } from './types';\nimport { Txt } from '@/ds/components/Txt';\nimport { cn } from '@/utils/cn';\n\nexport const WorkflowBoundaryNode = ({ data }: NodeProps<WorkflowBoundaryNodeModel>) => {\n const isStart = data.boundaryRole === 'start';\n\n return (\n <>\n {!isStart && <Handle type=\"target\" position={Position.Top} style={{ visibility: 'hidden' }} />}\n <div\n data-workflow-boundary-node\n data-testid={`workflow-boundary-${data.boundaryRole}`}\n className={cn(\n 'relative flex h-[38px] w-28 items-center justify-center text-muted-foreground after:absolute after:inset-x-0 after:mask-x-from-60%',\n isStart\n ? 'after:bottom-0 after:h-px after:bg-muted-foreground'\n : 'after:top-0 after:h-1 after:border-y after:border-muted-foreground',\n )}\n >\n <Txt variant=\"meta\">{data.label}</Txt>\n </div>\n {isStart && <Handle type=\"source\" position={Position.Bottom} style={{ visibility: 'hidden' }} />}\n </>\n );\n};\n","export function workflowCameraDuration() {\n return window.matchMedia?.('(prefers-reduced-motion: reduce)').matches ? 0 : 300;\n}\n","import { useViewport } from '@xyflow/react';\nimport type { Node } from '@xyflow/react';\nimport { GitFork } from 'lucide-react';\nimport { Badge } from '@/ds/components/Badge';\n\nexport interface WorkflowGraphGroup {\n id: string;\n label: string;\n description: string;\n nodeIds: string[];\n}\n\nexport function WorkflowGraphGroups({ nodes, groups }: { nodes: Node[]; groups: WorkflowGraphGroup[] }) {\n const { x, y, zoom } = useViewport();\n return (\n <div\n className=\"pointer-events-none absolute inset-0 z-0 origin-top-left\"\n style={{ transform: `translate(${x}px, ${y}px) scale(${zoom})` }}\n >\n {groups.map(group => {\n const members = nodes.flatMap(node => {\n if (!group.nodeIds.includes(node.id) || !node.measured?.width || !node.measured.height) return [];\n return [{ x: node.position.x, y: node.position.y, width: node.measured.width, height: node.measured.height }];\n });\n if (!members.length || members.length !== group.nodeIds.length) return null;\n const left = Math.min(...members.map(node => node.x)) - 20;\n const top = Math.min(...members.map(node => node.y)) - 54;\n const right = Math.max(...members.map(node => node.x + node.width)) + 20;\n const bottom = Math.max(...members.map(node => node.y + node.height)) + 20;\n return (\n <div\n key={group.id}\n className=\"absolute rounded-xl border border-dashed border-muted-foreground/25 bg-muted-foreground/3\"\n style={{ transform: `translate(${left}px, ${top}px)`, width: right - left, height: bottom - top }}\n >\n <div className=\"flex items-center gap-2 px-5 py-4 text-meta text-muted-foreground\">\n <Badge size=\"xs\" variant=\"blue\" emphasis=\"subtle\" icon={<GitFork aria-hidden />}>\n {group.label}\n </Badge>\n <span>{group.description}</span>\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n","import type { PanelProps } from '@xyflow/react';\nimport { Panel, useViewport, useReactFlow, useStore } from '@xyflow/react';\nimport { Maximize, Minus, Plus } from 'lucide-react';\nimport { forwardRef } from 'react';\nimport { workflowCameraDuration } from './workflow-camera-duration';\nimport { Button } from '@/ds/components/Button';\nimport { Slider } from '@/ds/components/Slider';\nimport { cn } from '@/utils/cn';\n\nexport const ZoomSlider = forwardRef<\n HTMLDivElement,\n Omit<PanelProps, 'children'> & { compact?: boolean; onFitView?: () => void }\n>(({ className, compact = false, onFitView, ...props }, ref) => {\n const { zoom } = useViewport();\n const { zoomTo, zoomIn, zoomOut, fitView } = useReactFlow();\n const minZoom = useStore(state => state.minZoom);\n const maxZoom = useStore(state => state.maxZoom);\n\n return (\n <Panel\n ref={ref}\n className={cn(\n 'flex items-center gap-1 rounded-full border border-border bg-background p-1 text-foreground',\n className,\n )}\n {...props}\n >\n <Button\n size=\"icon-sm\"\n tooltip=\"Zoom out\"\n disabled={zoom <= minZoom}\n onClick={() => zoomOut({ duration: workflowCameraDuration() })}\n >\n <Minus />\n </Button>\n {!compact && (\n <Slider\n className=\"w-35\"\n aria-label=\"Canvas zoom\"\n value={[zoom]}\n min={minZoom}\n max={maxZoom}\n step={0.01}\n largeStep={0.25}\n format={{ style: 'percent' }}\n onValueChange={values => {\n const [nextZoom] = values;\n if (nextZoom !== undefined) void zoomTo(nextZoom);\n }}\n />\n )}\n <Button\n size=\"icon-sm\"\n tooltip=\"Zoom in\"\n disabled={zoom >= maxZoom}\n onClick={() => zoomIn({ duration: workflowCameraDuration() })}\n >\n <Plus />\n </Button>\n <Button\n size=\"sm\"\n className=\"min-w-16 tabular-nums\"\n tooltip=\"Reset to actual size (100%)\"\n onClick={() => zoomTo(1, { duration: workflowCameraDuration() })}\n >\n {(100 * zoom).toFixed(0)}%\n </Button>\n <Button\n size=\"icon-sm\"\n tooltip=\"Fit view\"\n onClick={onFitView ?? (() => fitView({ duration: workflowCameraDuration(), maxZoom: 1 }))}\n >\n <Maximize />\n </Button>\n </Panel>\n );\n});\n\nZoomSlider.displayName = 'ZoomSlider';\n","import { Background, BackgroundVariant, ReactFlow, useNodesInitialized, useReactFlow, useStore } from '@xyflow/react';\nimport type { Edge, Node, ReactFlowProps } from '@xyflow/react';\nimport { useContext, useEffect, useId, useRef } from 'react';\nimport { WorkflowCanvasInsetContext, workflowFitOptions } from '../workflow-canvas-inset';\nimport { workflowCameraDuration } from './workflow-camera-duration';\nimport { WorkflowGraphGroups } from './workflow-graph-groups';\nimport type { WorkflowGraphGroup } from './workflow-graph-groups';\nimport { ZoomSlider } from './zoom-slider';\nimport { cn } from '@/utils/cn';\nimport '@xyflow/react/dist/style.css';\n\nexport type { WorkflowGraphGroup } from './workflow-graph-groups';\n\nexport interface WorkflowGraphCanvasProps<NodeType extends Node = Node, EdgeType extends Edge = Edge> extends Pick<\n ReactFlowProps<NodeType, EdgeType>,\n 'nodes' | 'edges' | 'nodeTypes' | 'edgeTypes' | 'onNodesChange' | 'onNodeClick'\n> {\n focusNodeId?: string;\n variant?: 'default' | 'nested' | 'inline';\n groups?: WorkflowGraphGroup[];\n}\n\nexport function WorkflowGraphCanvas<NodeType extends Node, EdgeType extends Edge>({\n nodes,\n edges,\n nodeTypes,\n edgeTypes,\n onNodesChange,\n onNodeClick,\n focusNodeId,\n groups,\n variant = 'default',\n}: WorkflowGraphCanvasProps<NodeType, EdgeType>) {\n const graphRef = useRef<HTMLDivElement>(null);\n const backgroundId = useId();\n const panelInset = useContext(WorkflowCanvasInsetContext);\n const leftInset = variant === 'default' ? panelInset : 0;\n const isInline = variant === 'inline';\n const { getNodes, setCenter, fitView } = useReactFlow<NodeType, EdgeType>();\n const nodesInitialized = useNodesInitialized();\n const canvasWidth = useStore(state => state.width);\n const canvasHeight = useStore(state => state.height);\n const hasCompactZoom = canvasWidth - leftInset < 560;\n const inlineNodeLayout = isInline\n ? JSON.stringify(\n nodes?.map(node => [\n node.id,\n node.position.x,\n node.position.y,\n node.measured?.width ?? node.width,\n node.measured?.height ?? node.height,\n ]),\n )\n : undefined;\n\n useEffect(() => {\n if (!canvasWidth || !canvasHeight || !nodesInitialized) return;\n if (variant === 'default') return;\n void fitView({ ...workflowFitOptions(leftInset, isInline), duration: 0 });\n }, [canvasWidth, canvasHeight, nodesInitialized, inlineNodeLayout, fitView, leftInset, isInline, variant]);\n\n useEffect(() => {\n if (!canvasWidth || !canvasHeight || !nodesInitialized || !focusNodeId) return;\n const focusNode = getNodes().find(node => node.id === focusNodeId);\n if (!focusNode) return;\n if (!graphRef.current?.contains(document.activeElement)) {\n graphRef.current?.focus({ preventScroll: true });\n }\n const width = focusNode.measured?.width ?? focusNode.width ?? 274;\n const height = focusNode.measured?.height ?? focusNode.height ?? 100;\n const duration = workflowCameraDuration();\n const exceedsVisibleWidth = canvasWidth > 0 && width > canvasWidth - leftInset - 80;\n const exceedsVisibleHeight = canvasHeight > 0 && height > canvasHeight - 104;\n if (exceedsVisibleWidth || exceedsVisibleHeight) {\n void fitView({ ...workflowFitOptions(leftInset), nodes: [{ id: focusNode.id }], duration });\n return;\n }\n void setCenter(focusNode.position.x + width / 2 - leftInset / 2, focusNode.position.y + height / 2, {\n duration,\n zoom: 1,\n });\n }, [canvasWidth, canvasHeight, nodesInitialized, focusNodeId, getNodes, setCenter, fitView, leftInset]);\n\n return (\n <div\n ref={graphRef}\n tabIndex={-1}\n data-testid=\"workflow-graph-viewport\"\n className={cn('size-full outline-none', variant === 'nested' ? 'bg-sidebar' : 'bg-background')}\n >\n <ReactFlow\n fitView={variant === 'default'}\n fitViewOptions={workflowFitOptions(leftInset)}\n nodes={nodes}\n edges={edges}\n nodeTypes={nodeTypes}\n edgeTypes={edgeTypes}\n onNodesChange={onNodesChange}\n onNodeClick={onNodeClick}\n nodesDraggable={false}\n nodesConnectable={false}\n elementsSelectable={false}\n deleteKeyCode={null}\n panOnScroll={!isInline}\n panOnDrag={!isInline}\n zoomOnPinch={!isInline}\n zoomOnDoubleClick={!isInline}\n preventScrolling={!isInline}\n proOptions={isInline ? { hideAttribution: true } : undefined}\n zoomOnScroll={false}\n minZoom={0.1}\n maxZoom={4}\n >\n {!isInline && (\n <ZoomSlider\n position=\"top-right\"\n className=\"m-2!\"\n compact={hasCompactZoom}\n onFitView={() => fitView({ ...workflowFitOptions(leftInset), duration: workflowCameraDuration() })}\n />\n )}\n {groups && <WorkflowGraphGroups nodes={nodes ?? []} groups={groups} />}\n {!isInline && <Background id={backgroundId} variant={BackgroundVariant.Dots} gap={12} size={0.5} />}\n </ReactFlow>\n </div>\n );\n}\n","import { Handle, Position } from '@xyflow/react';\nimport type { ReactNode } from 'react';\n\nexport interface WorkflowNodeFrameProps {\n withoutTopHandle?: boolean;\n withoutBottomHandle?: boolean;\n children: ReactNode;\n}\n\nexport function WorkflowNodeFrame({ withoutTopHandle, withoutBottomHandle, children }: WorkflowNodeFrameProps) {\n return (\n <>\n {!withoutTopHandle && <Handle type=\"target\" position={Position.Top} style={{ visibility: 'hidden' }} />}\n <div className=\"nodrag pointer-events-auto\">{children}</div>\n {!withoutBottomHandle && <Handle type=\"source\" position={Position.Bottom} style={{ visibility: 'hidden' }} />}\n </>\n );\n}\n","import type { WorkflowConditionCardViewProps } from '../../types';\nimport { WorkflowConditionCardView } from './workflow-condition-card-view';\n\nexport type WorkflowConditionCardProps = Omit<WorkflowConditionCardViewProps, 'type'>;\n\nexport function WorkflowConditionCard({ conditions, ...props }: WorkflowConditionCardProps) {\n return <WorkflowConditionCardView {...props} type={conditions[0]?.type} conditions={conditions} />;\n}\n"],"names":["Repeat2","Workflow","GitFork","ArrowRightLeft","CalendarClock","Timer","Bot","Wrench","GitBranch","Braces","jsx","Badge","List","PlayCircle","Clock","Layers","Network","Repeat1","Repeat","RefreshCw","CornerDownRight","useState","useEffect","formatDuration","Txt","Code","formatTypeScript","jsxs","raisedSurfaceStyle","Fragment","CopyButton","cn","formatDate","formatShortDate","Collapsible","Shimmer","CollapsibleTrigger","surfaceStateLayerStyle","ChevronRight","CollapsibleContent","ActivityWick","Handle","Position","useViewport","forwardRef","useReactFlow","useStore","Panel","Button","Minus","Slider","Plus","Maximize","useRef","useId","useContext","WorkflowCanvasInsetContext","useNodesInitialized","workflowFitOptions","ReactFlow","Background","BackgroundVariant"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow-condition-card-80XcAvDl.cjs","sources":["../src/ds/components/Workflow/cards/workflow-card-kind.ts","../src/ds/components/Workflow/cards/workflow-type-badge.tsx","../src/ds/components/Workflow/cards/workflow-card-badge-utils.ts","../src/ds/components/Workflow/cards/workflow-clock.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-expression.ts","../src/ds/components/Workflow/cards/condition/workflow-condition-source.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-card-view.tsx","../src/ds/components/Workflow/cards/timing/workflow-time-dial.tsx","../src/ds/components/Workflow/cards/timing/workflow-timing.tsx","../src/ds/components/Workflow/cards/step/workflow-step-card-view.tsx","../src/ds/components/Workflow/graph/workflow-boundary-node.tsx","../src/ds/components/Workflow/graph/workflow-camera-duration.ts","../src/ds/components/Workflow/graph/workflow-graph-groups.tsx","../src/ds/components/Workflow/graph/zoom-slider.tsx","../src/ds/components/Workflow/graph/workflow-graph-canvas.tsx","../src/ds/components/Workflow/graph/workflow-node-frame.tsx","../src/ds/components/Workflow/cards/condition/workflow-condition-card.tsx"],"sourcesContent":["import {\n ArrowRightLeft,\n Bot,\n Braces,\n CalendarClock,\n GitBranch,\n GitFork,\n Repeat2,\n Timer,\n Workflow,\n Wrench,\n} from 'lucide-react';\nimport type { LucideIcon } from 'lucide-react';\nimport type { WorkflowStepCardViewProps } from '../types';\nimport type { BadgeVariant } from '@/ds/components/Badge';\n\nexport type WorkflowTypeBadgeProps = Pick<\n WorkflowStepCardViewProps,\n 'nodeKind' | 'isForEach' | 'isNestedWorkflowStep' | 'stepGraph' | 'isParallel' | 'mapConfig' | 'date' | 'duration'\n>;\n\nexport function getWorkflowCardBadge(props: WorkflowTypeBadgeProps): {\n label: string;\n Icon: LucideIcon;\n tone: BadgeVariant;\n indicator?: string;\n} {\n if (props.isForEach) return { label: 'For each', tone: 'orange', Icon: Repeat2, indicator: 'foreach' };\n if (props.isNestedWorkflowStep || props.stepGraph)\n return { label: 'Workflow', tone: 'purple', Icon: Workflow, indicator: 'workflow' };\n if (props.isParallel && !props.nodeKind)\n return { label: 'Parallel', tone: 'blue', Icon: GitFork, indicator: 'parallel' };\n if (props.nodeKind === 'map' || props.mapConfig)\n return { label: 'Map', tone: 'orange', Icon: ArrowRightLeft, indicator: 'map' };\n if (props.nodeKind === 'wait-until' || props.date)\n return { label: 'Wait until', tone: 'purple', Icon: CalendarClock, indicator: 'sleep-until' };\n if (props.nodeKind === 'delay' || props.duration !== undefined)\n return { label: 'Delay', tone: 'purple', Icon: Timer, indicator: 'sleep' };\n if (props.nodeKind === 'agent') return { label: 'Agent', tone: 'cyan', Icon: Bot };\n if (props.nodeKind === 'tool') return { label: 'Tool', tone: 'pink', Icon: Wrench };\n if (props.nodeKind === 'classifier') return { label: 'Classifier', tone: 'blue', Icon: GitBranch };\n return { label: 'Step', tone: 'neutral', Icon: Braces };\n}\n","import { getWorkflowCardBadge } from './workflow-card-kind';\nimport type { WorkflowTypeBadgeProps } from './workflow-card-kind';\nimport { Badge } from '@/ds/components/Badge';\n\nexport function WorkflowTypeBadge(props: WorkflowTypeBadgeProps) {\n const { label, Icon, tone } = getWorkflowCardBadge(props);\n return (\n <Badge size=\"xs\" variant={tone} icon={<Icon aria-hidden />}>\n {label}\n </Badge>\n );\n}\n","import {\n CalendarClock,\n Clock,\n CornerDownRight,\n GitBranch,\n Layers,\n List,\n Network,\n PlayCircle,\n RefreshCw,\n Repeat,\n Repeat1,\n Timer,\n Workflow,\n} from 'lucide-react';\nimport type { LucideIcon } from 'lucide-react';\n\nexport const BADGE_COLORS = {\n sleep: 'var(--badge-purple-indicator)',\n forEach: 'var(--badge-orange-indicator)',\n map: 'var(--badge-orange-indicator)',\n parallel: 'var(--badge-blue-indicator)',\n suspend: 'var(--badge-pink-indicator)',\n after: 'var(--badge-cyan-indicator)',\n workflow: 'var(--badge-purple-indicator)',\n when: 'var(--badge-amber-indicator)',\n dountil: 'var(--badge-purple-indicator)',\n dowhile: 'var(--badge-cyan-indicator)',\n until: 'var(--badge-amber-indicator)',\n while: 'var(--badge-green-indicator)',\n if: 'var(--badge-blue-indicator)',\n else: 'var(--muted-foreground)',\n} as const;\n\nexport const BADGE_ICONS = {\n sleep: Timer,\n sleepUntil: CalendarClock,\n forEach: List,\n map: List,\n parallel: Workflow,\n suspend: PlayCircle,\n after: Clock,\n workflow: Layers,\n when: Network,\n dountil: Repeat1,\n dowhile: Repeat,\n until: Timer,\n while: RefreshCw,\n if: GitBranch,\n else: CornerDownRight,\n} as const;\n\nexport interface ConditionIconConfig {\n icon: LucideIcon | undefined;\n color: string | undefined;\n}\n\nexport interface WorkflowCardIndicator {\n id: string;\n label: string;\n icon: LucideIcon;\n color: string;\n}\n\nconst CONDITION_LABELS: Record<string, string> = {\n when: 'When condition',\n dountil: 'Do until condition',\n dowhile: 'Do while condition',\n until: 'Until condition',\n while: 'While condition',\n if: 'If condition',\n else: 'Else condition',\n and: 'And condition',\n or: 'Or condition',\n not: 'Not condition',\n};\n\nexport const getConditionIconAndColor = (type?: string): ConditionIconConfig => {\n switch (type) {\n case 'when':\n return { icon: BADGE_ICONS.when, color: BADGE_COLORS.when };\n case 'dountil':\n return { icon: BADGE_ICONS.dountil, color: BADGE_COLORS.dountil };\n case 'dowhile':\n return { icon: BADGE_ICONS.dowhile, color: BADGE_COLORS.dowhile };\n case 'until':\n return { icon: BADGE_ICONS.until, color: BADGE_COLORS.until };\n case 'while':\n return { icon: BADGE_ICONS.while, color: BADGE_COLORS.while };\n case 'if':\n return { icon: BADGE_ICONS.if, color: BADGE_COLORS.if };\n case 'else':\n return { icon: BADGE_ICONS.else, color: BADGE_COLORS.else };\n case 'and':\n case 'or':\n case 'not':\n return { icon: BADGE_ICONS.when, color: BADGE_COLORS.when };\n default:\n return { icon: undefined, color: undefined };\n }\n};\n\nexport const getConditionIndicator = (type?: string): WorkflowCardIndicator | undefined => {\n const { icon, color } = getConditionIconAndColor(type);\n\n if (!type || !icon || !color) {\n return undefined;\n }\n\n return {\n id: `condition-${type}`,\n label: CONDITION_LABELS[type] ?? `${type} condition`,\n icon,\n color,\n };\n};\n\nexport interface WorkflowNodeBadgeInfo {\n isSleepNode: boolean;\n isForEachNode: boolean;\n isMapNode: boolean;\n isNestedWorkflow: boolean;\n hasSpecialBadge: boolean;\n}\n\nexport interface WorkflowCardBadgesProps {\n duration?: number;\n date?: Date;\n isForEach?: boolean;\n mapConfig?: string;\n canSuspend?: boolean;\n isParallel?: boolean;\n stepGraph?: unknown;\n}\n\nexport const getNodeBadgeInfo = ({\n duration,\n date,\n isForEach,\n mapConfig,\n canSuspend,\n isParallel,\n stepGraph,\n}: WorkflowCardBadgesProps): WorkflowNodeBadgeInfo => {\n const isSleepNode = Boolean(duration || date);\n const isForEachNode = Boolean(isForEach);\n const isMapNode = Boolean(mapConfig && !isForEach);\n const isNestedWorkflow = Boolean(stepGraph);\n const hasSpecialBadge =\n isSleepNode || Boolean(canSuspend || isParallel) || isForEachNode || isMapNode || isNestedWorkflow;\n\n return {\n isSleepNode,\n isForEachNode,\n isMapNode,\n isNestedWorkflow,\n hasSpecialBadge,\n };\n};\n\nexport const getNodeIndicators = (props: WorkflowCardBadgesProps): WorkflowCardIndicator[] => {\n const { isSleepNode, isForEachNode, isMapNode, isNestedWorkflow } = getNodeBadgeInfo(props);\n const indicators: WorkflowCardIndicator[] = [];\n\n if (isSleepNode) {\n indicators.push({\n id: props.date ? 'sleep-until' : 'sleep',\n label: props.date ? 'Sleep until step' : 'Sleep step',\n icon: props.date ? BADGE_ICONS.sleepUntil : BADGE_ICONS.sleep,\n color: BADGE_COLORS.sleep,\n });\n }\n\n if (props.canSuspend) {\n indicators.push({\n id: 'suspend',\n label: 'Suspend/resume step',\n icon: BADGE_ICONS.suspend,\n color: BADGE_COLORS.suspend,\n });\n }\n\n if (props.isParallel) {\n indicators.push({\n id: 'parallel',\n label: 'Parallel step',\n icon: BADGE_ICONS.parallel,\n color: BADGE_COLORS.parallel,\n });\n }\n\n if (isNestedWorkflow) {\n indicators.push({\n id: 'workflow',\n label: 'Nested workflow step',\n icon: BADGE_ICONS.workflow,\n color: BADGE_COLORS.workflow,\n });\n }\n\n if (isForEachNode) {\n indicators.push({\n id: 'foreach',\n label: 'Foreach step',\n icon: BADGE_ICONS.forEach,\n color: BADGE_COLORS.forEach,\n });\n }\n\n if (isMapNode) {\n indicators.push({\n id: 'map',\n label: 'Map step',\n icon: BADGE_ICONS.map,\n color: BADGE_COLORS.map,\n });\n }\n\n return indicators;\n};\n","import { useEffect, useState } from 'react';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDuration } from '@/utils/duration';\n\ninterface WorkflowClockProps {\n startedAt: number;\n endedAt?: number;\n isRunning?: boolean;\n spansSuspension?: boolean;\n}\n\nexport const WorkflowClock = ({ startedAt, endedAt, isRunning = false, spansSuspension }: WorkflowClockProps) => {\n if (isRunning && endedAt === undefined && Number.isFinite(startedAt)) {\n return <RunningWorkflowClock key={startedAt} startedAt={startedAt} spansSuspension={spansSuspension} />;\n }\n return <ElapsedTime startedAt={startedAt} endedAt={endedAt} spansSuspension={spansSuspension} />;\n};\n\nfunction RunningWorkflowClock({ startedAt, spansSuspension }: Omit<WorkflowClockProps, 'isRunning'>) {\n const [time, setTime] = useState(() => Date.now());\n useEffect(() => {\n const interval = setInterval(() => setTime(Date.now()), 100);\n return () => clearInterval(interval);\n }, []);\n return <ElapsedTime startedAt={startedAt} endedAt={time} spansSuspension={spansSuspension} />;\n}\n\nfunction ElapsedTime({ startedAt, endedAt, spansSuspension }: Omit<WorkflowClockProps, 'isRunning'>) {\n const elapsed = endedAt === undefined ? undefined : formatDuration(endedAt - startedAt);\n\n return (\n <Txt\n variant=\"meta\"\n tone=\"muted\"\n font=\"mono\"\n className=\"whitespace-nowrap\"\n title={elapsed && spansSuspension ? 'Includes time spent suspended waiting for input' : undefined}\n >\n {elapsed === undefined ? <span aria-label=\"Timing unavailable\">—</span> : elapsed}\n </Txt>\n );\n}\n","import type { WorkflowCardCondition } from '../../types';\n\nexport function conditionExpression(condition: WorkflowCardCondition) {\n if (condition.fnString !== undefined) return condition.fnString;\n return JSON.stringify({ ref: condition.ref, query: condition.query, conj: condition.conj }, null, 2);\n}\n","import { useEffect, useState } from 'react';\nimport { Code } from '@/ds/components/Code';\nimport { formatTypeScript } from '@/utils/formatting';\n\nconst MAX_FORMATTED_SOURCE_CHARS = 10_000;\n\nexport function WorkflowConditionSource({ source }: { source: string }) {\n if (source.length > MAX_FORMATTED_SOURCE_CHARS) return <Code code={source} />;\n return <FormattedConditionSource key={source} source={source} />;\n}\n\nfunction FormattedConditionSource({ source }: { source: string }) {\n const [formatted, setFormatted] = useState<string>();\n\n useEffect(() => {\n let cancelled = false;\n formatTypeScript(source)\n .then(expression => {\n if (!cancelled) setFormatted(expression.trim());\n })\n .catch(() => undefined);\n return () => {\n cancelled = true;\n };\n }, [source]);\n\n return <Code code={formatted ?? source} lang={formatted === undefined ? undefined : 'typescript'} />;\n}\n","import { Braces } from 'lucide-react';\nimport type { WorkflowConditionCardViewProps } from '../../types';\nimport { getConditionIndicator } from '../workflow-card-badge-utils';\nimport { conditionExpression } from './workflow-condition-expression';\nimport { WorkflowConditionSource } from './workflow-condition-source';\nimport { Badge } from '@/ds/components/Badge';\nimport { Code } from '@/ds/components/Code';\nimport { CopyButton } from '@/ds/components/CopyButton';\nimport { raisedSurfaceStyle } from '@/ds/primitives/raised-surface';\n\nconst surfaceClasses = 'rounded-[calc(var(--radius-xl)-2px)] bg-card text-meta';\n\nexport function WorkflowConditionCardView({\n type,\n conditions,\n previousDisplayStatus,\n actionBar,\n}: WorkflowConditionCardViewProps) {\n const indicator = getConditionIndicator(type);\n const Icon = indicator?.icon ?? Braces;\n const label = indicator?.label.replace(/ condition$/, '') ?? 'Condition';\n const occurrences = new Map<string, number>();\n const sources = conditions.map(condition => {\n const expression = conditionExpression(condition);\n const identity = `${condition.type}:${expression}`;\n const occurrence = occurrences.get(identity) ?? 0;\n occurrences.set(identity, occurrence + 1);\n return { condition, expression, key: `${identity}:${occurrence}` };\n });\n const copyContent =\n conditions.length > 1 ? JSON.stringify(conditions, null, 2) : sources.map(source => source.expression).join('\\n');\n const hasExpression = type !== 'else' && sources.some(({ expression }) => expression.trim().length > 0);\n\n return (\n <div\n className={`${raisedSurfaceStyle} w-[274px] overflow-hidden rounded-xl p-0.5 has-focus-visible:outline-1 has-focus-visible:outline-offset-4 has-focus-visible:outline-border-focus`}\n data-workflow-node\n data-testid=\"workflow-condition-node\"\n data-workflow-step-status={previousDisplayStatus ?? 'idle'}\n >\n <div className=\"flex h-[46px] items-center gap-2 px-2.5 text-meta text-muted-foreground\">\n <Badge size=\"xs\" variant={type === 'else' ? 'neutral' : 'amber'} emphasis=\"subtle\" icon={<Icon aria-hidden />}>\n {label}\n </Badge>\n {hasExpression && (\n <>\n <span className=\"ml-auto\">Expression</span>\n <CopyButton content={copyContent} tooltip=\"Copy expression\" size=\"sm\" className=\"nodrag nopan\" />\n </>\n )}\n </div>\n {hasExpression ? (\n <div\n role=\"region\"\n aria-label=\"Condition details\"\n tabIndex={0}\n className={`${surfaceClasses} nodrag nopan nowheel max-h-55 overflow-auto p-3.5 text-foreground [&_pre]:leading-relaxed [&_pre]:whitespace-pre-wrap`}\n >\n {sources.map(({ condition, expression, key }) => (\n <div key={key}>\n {condition.conj && (\n <Badge size=\"xs\" variant=\"neutral\">\n {condition.conj.toUpperCase()}\n </Badge>\n )}\n {condition.fnString !== undefined ? (\n <WorkflowConditionSource source={condition.fnString} />\n ) : (\n <Code code={expression} />\n )}\n </div>\n ))}\n </div>\n ) : (\n <p className={`${surfaceClasses} p-3 text-muted-foreground`}>\n {type === 'else' ? 'When no other branch matches' : 'Condition expression unavailable'}\n </p>\n )}\n {actionBar && <div className=\"nodrag nopan flex justify-end px-2.5 py-1.5 empty:hidden\">{actionBar}</div>}\n </div>\n );\n}\n","import type { ComponentProps, ReactNode } from 'react';\nimport { cn } from '@/utils/cn';\n\nexport type DurationUnit = 'ms' | 's' | 'min' | 'h';\n\nconst DIAL_CENTER = 58;\nconst CLOCK_TICK_ANGLES = Array.from({ length: 60 }, (_, index) => index * 6);\nconst DURATION_TICK_ANGLES = Array.from({ length: 41 }, (_, index) => -120 + index * 6);\n\nfunction pointAt(angle: number, radius: number) {\n const radians = (angle * Math.PI) / 180;\n return {\n x: DIAL_CENTER + Math.sin(radians) * radius,\n y: DIAL_CENTER - Math.cos(radians) * radius,\n };\n}\n\nfunction DialTick({ angle, major, className, ...props }: ComponentProps<'line'> & { angle: number; major: boolean }) {\n const outer = pointAt(angle, 49);\n const inner = pointAt(angle, major ? 38 : 43);\n return (\n <line\n x1={inner.x}\n y1={inner.y}\n x2={outer.x}\n y2={outer.y}\n className={cn(major ? 'stroke-placeholder' : 'stroke-border-strong', className)}\n {...props}\n />\n );\n}\n\nfunction DialHand({ angle, length }: { angle: number; length: number }) {\n const tip = pointAt(angle, length);\n return (\n <line\n x1={DIAL_CENTER}\n y1={DIAL_CENTER}\n x2={tip.x}\n y2={tip.y}\n className=\"stroke-1.5 stroke-muted-foreground\"\n strokeLinecap=\"round\"\n />\n );\n}\n\nfunction DialFace({ tickAngles, children }: { tickAngles: number[]; children: ReactNode }) {\n return (\n <span className=\"block size-28 shrink-0 text-muted-foreground\" aria-hidden>\n <svg viewBox=\"0 0 116 116\" fill=\"none\" className=\"block size-full overflow-visible\">\n {tickAngles.map((angle, index) => (\n <DialTick key={angle} angle={angle} major={index % 5 === 0} />\n ))}\n {children}\n </svg>\n </span>\n );\n}\n\nexport function ClockDial({ date }: { date: Date }) {\n const minutes = date.getUTCMinutes();\n return (\n <DialFace tickAngles={CLOCK_TICK_ANGLES}>\n <DialHand angle={((date.getUTCHours() % 12) + minutes / 60) * 30} length={26} />\n <DialHand angle={minutes * 6} length={37} />\n <circle cx={DIAL_CENTER} cy={DIAL_CENTER} r={2} fill=\"currentColor\" />\n </DialFace>\n );\n}\n\nexport function DurationDial({ amount, unit }: { amount: number; unit: DurationUnit }) {\n const scale = Math.max({ h: 24, ms: 1000, s: 60, min: 60 }[unit], Math.ceil(amount / 10) * 10);\n return (\n <DialFace tickAngles={DURATION_TICK_ANGLES}>\n <DialTick\n angle={-120 + (amount / scale) * 240}\n major\n className=\"stroke-foreground stroke-2\"\n strokeLinecap=\"round\"\n />\n <text x={DIAL_CENTER} y={94} textAnchor=\"middle\" className=\"fill-muted-foreground font-body text-meta\">\n {scale} {unit}\n </text>\n <text x={DIAL_CENTER} y={106} textAnchor=\"middle\" className=\"fill-placeholder font-body text-meta\">\n scale\n </text>\n </DialFace>\n );\n}\n","import type { ReactNode } from 'react';\nimport type { WorkflowStepCardViewProps } from '../../types';\nimport { ClockDial, DurationDial } from './workflow-time-dial';\nimport type { DurationUnit } from './workflow-time-dial';\nimport { Txt } from '@/ds/components/Txt';\nimport { formatDate, formatShortDate } from '@/utils/date-format';\nimport { formatDuration } from '@/utils/duration';\n\nconst captionClasses = 'text-meta tracking-wider whitespace-nowrap text-muted-foreground uppercase';\n\nfunction durationReading(duration: number): { amount: number; unit: DurationUnit } {\n if (duration < 1000) return { amount: duration, unit: 'ms' };\n if (duration < 60000) return { amount: duration / 1000, unit: 's' };\n if (duration < 3600000) return { amount: duration / 60000, unit: 'min' };\n return { amount: duration / 3600000, unit: 'h' };\n}\n\nfunction TimingReading({\n value,\n unit,\n caption,\n dial,\n}: {\n value: string;\n unit?: string;\n caption: string;\n dial: ReactNode;\n}) {\n return (\n <span className=\"mt-1 flex min-h-27 items-center justify-between gap-1 text-foreground\">\n <span className=\"z-10 flex min-w-0 flex-col gap-2\">\n <Txt\n as=\"span\"\n variant=\"display\"\n className=\"flex items-baseline gap-1 leading-none tracking-tighter whitespace-nowrap tabular-nums\"\n >\n {value}\n {unit && <small className=\"text-meta tracking-normal text-muted-foreground\">{unit}</small>}\n </Txt>\n <span className={captionClasses}>{caption}</span>\n </span>\n {dial}\n </span>\n );\n}\n\nexport function WorkflowTiming({ duration, date }: Pick<WorkflowStepCardViewProps, 'duration' | 'date'>) {\n if (date) {\n const scheduled = new Date(date);\n if (!Number.isFinite(scheduled.getTime())) {\n return <span className={captionClasses}>Schedule unavailable</span>;\n }\n return (\n <TimingReading\n value={formatDate(scheduled, 'time', { timeZone: 'UTC' }) ?? ''}\n unit=\"UTC\"\n caption={formatShortDate(scheduled, { timeZone: 'UTC', now: 0 }) ?? ''}\n dial={<ClockDial date={scheduled} />}\n />\n );\n }\n if (duration === undefined) return null;\n if (!Number.isFinite(duration) || duration < 0) {\n return <span className={captionClasses}>Delay unavailable</span>;\n }\n const reading = durationReading(duration);\n return (\n <TimingReading\n value={formatDuration(duration) ?? ''}\n caption=\"Configured delay\"\n dial={<DurationDial {...reading} />}\n />\n );\n}\n","import { ChevronRight } from 'lucide-react';\nimport { useState } from 'react';\nimport type { CSSProperties } from 'react';\nimport type { WorkflowCardDisplayStatus, WorkflowStepCardViewProps } from '../../types';\nimport { WorkflowTiming } from '../timing/workflow-timing';\nimport { getNodeIndicators } from '../workflow-card-badge-utils';\nimport { getWorkflowCardBadge } from '../workflow-card-kind';\nimport { WorkflowClock } from '../workflow-clock';\nimport { WorkflowTypeBadge } from '../workflow-type-badge';\nimport { ActivityWick } from '@/ds/components/Activity';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/ds/components/Collapsible';\nimport { Shimmer } from '@/ds/components/Shimmer';\nimport { Txt } from '@/ds/components/Txt';\nimport { raisedSurfaceStyle, surfaceStateLayerStyle } from '@/ds/primitives/raised-surface';\nimport { cn } from '@/utils/cn';\n\ntype ReportedStatus = NonNullable<WorkflowCardDisplayStatus>;\n\nconst statusLabels = {\n running: 'Running',\n success: 'Completed',\n failed: 'Failed',\n suspended: 'Needs input',\n waiting: 'Waiting',\n paused: 'Paused',\n skipped: 'Skipped',\n canceled: 'Canceled',\n tripwire: 'Tripwire blocked',\n} satisfies Record<ReportedStatus, string>;\n\nconst statusLineClasses: Partial<Record<ReportedStatus, string>> = {\n success: 'after:bg-success-indicator',\n failed: 'after:bg-destructive-indicator',\n tripwire: 'after:bg-warning-indicator',\n waiting: 'after:bg-warning-indicator',\n paused: 'after:bg-warning-indicator',\n skipped: 'after:bg-muted-foreground',\n};\n\nconst footerStatusClasses: Partial<Record<ReportedStatus, string>> = {\n success: 'text-success-indicator',\n failed: 'text-destructive-foreground',\n suspended: 'text-warning-foreground',\n tripwire: 'text-warning-foreground',\n};\n\nconst suspendedWickStyle: CSSProperties & { '--belt-hue': string } = { '--belt-hue': 'var(--warning-indicator)' };\n\nexport function WorkflowStepCardView(props: WorkflowStepCardViewProps) {\n const {\n label,\n description,\n displayStatus,\n stepKey,\n isSelected,\n isWaiting,\n isHovered,\n onHoverChange,\n onSelect,\n isForEach,\n foreachProgress,\n startedAt,\n endedAt,\n actionBar,\n body,\n } = props;\n const [expanded, setExpanded] = useState(props.initiallyOpen ?? false);\n const isRunning = displayStatus === 'running';\n const isSuspended = displayStatus === 'suspended';\n const reportedStatusLabel =\n displayStatus && Object.hasOwn(statusLabels, displayStatus) ? statusLabels[displayStatus] : undefined;\n const statusLabel = displayStatus ? (reportedStatusLabel ?? 'Status unavailable') : 'Not started';\n const kind = getWorkflowCardBadge(props);\n const capabilities = getNodeIndicators(props)\n .filter(indicator => indicator.id !== kind.indicator)\n .map(indicator => indicator.label.replace(/ step$/, ''));\n const hasActivity = isRunning || isSuspended;\n const isStacked = isForEach && !expanded;\n const isBodyExpanded = Boolean(body) && expanded;\n const Summary = onSelect ? 'button' : 'div';\n\n return (\n <div\n className={cn(\n 'relative isolate w-[274px]',\n isBodyExpanded && 'w-172',\n isStacked &&\n 'pb-3 before:absolute before:inset-x-1.5 before:top-2 before:bottom-1.5 before:-z-10 before:rounded-xl before:border before:border-border before:bg-card after:absolute after:inset-x-3 after:top-3.5 after:bottom-0 after:-z-20 after:rounded-xl after:border after:border-border after:bg-card',\n )}\n >\n <Collapsible\n open={expanded}\n onOpenChange={setExpanded}\n className={cn(\n raisedSurfaceStyle,\n 'relative rounded-xl border border-transparent text-foreground transition-[border-color,background-color,box-shadow] [--card-radius:calc(var(--radius-xl)-2px)] motion-reduce:transition-none',\n 'after:pointer-events-none after:absolute after:inset-x-4 after:-top-px after:h-px after:mask-x-from-76%',\n displayStatus && statusLineClasses[displayStatus],\n 'has-focus-visible:outline-1 has-focus-visible:outline-offset-4 has-focus-visible:outline-border-focus',\n isSelected && 'outline-1 outline-offset-4 outline-border-focus',\n isBodyExpanded && 'border-dashed border-muted-foreground/40 shadow-none',\n isWaiting && 'border-info-indicator',\n isHovered && !isSelected && 'bg-muted',\n )}\n data-workflow-node\n data-workflow-step-key={stepKey}\n data-workflow-step-status={displayStatus ?? 'idle'}\n data-workflow-step-active={isSelected || undefined}\n data-workflow-step-waiting={isWaiting || undefined}\n data-workflow-step-hovered={isHovered || undefined}\n data-testid={props.isNestedWorkflowStep ? 'workflow-nested-node' : 'workflow-default-node'}\n onMouseEnter={() => onHoverChange?.(true)}\n onMouseLeave={() => onHoverChange?.(false)}\n >\n <div className=\"m-0.5 overflow-hidden rounded-(--card-radius)\">\n <Summary\n className={cn(\n 'nodrag nopan flex w-full flex-col text-left',\n onSelect && 'group cursor-pointer focus-visible:outline-hidden',\n )}\n type={onSelect ? 'button' : undefined}\n aria-label={onSelect ? `Inspect ${label}` : undefined}\n aria-pressed={onSelect ? Boolean(isSelected) : undefined}\n onClick={onSelect}\n >\n <span className=\"flex items-start justify-between gap-2.5 rounded-(--card-radius) px-3.5 py-3 group-hover:bg-fill-subtle\">\n <Txt as=\"span\" variant=\"column\" tone=\"ink\" className=\"min-w-0 wrap-anywhere\" title={label}>\n <Shimmer active={isRunning}>{label}</Shimmer>\n </Txt>\n <WorkflowTypeBadge {...props} />\n </span>\n <span className=\"flex flex-col gap-2 rounded-t-(--card-radius) bg-card px-3.5 py-3 empty:py-1.5\">\n {description && (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" className=\"wrap-anywhere\">\n {description}\n </Txt>\n )}\n <WorkflowTiming duration={props.duration} date={props.date} />\n {isWaiting && (\n <Txt as=\"span\" variant=\"meta\" className=\"text-info-indicator\">\n Next step in debug\n </Txt>\n )}\n {isForEach && foreachProgress && (\n <Txt as=\"span\" variant=\"meta\" className=\"flex flex-col gap-2 py-1\">\n <span>\n <strong>{foreachProgress.completedCount}</strong> of {foreachProgress.totalCount} items complete\n </span>\n {foreachProgress.totalCount > 0 ? (\n <progress\n className=\"h-1 w-full appearance-none border-0 bg-muted accent-success-indicator [&::-moz-progress-bar]:bg-success-indicator [&::-webkit-progress-bar]:bg-muted [&::-webkit-progress-value]:bg-success-indicator\"\n aria-label={`${label} completed items`}\n value={foreachProgress.completedCount}\n max={foreachProgress.totalCount}\n />\n ) : (\n <span>No items to process</span>\n )}\n </Txt>\n )}\n {capabilities.length > 0 && (\n <Txt as=\"span\" variant=\"meta\" tone=\"muted\">\n {capabilities.join(' · ')}\n </Txt>\n )}\n </span>\n </Summary>\n <div\n className={cn(\n 'nodrag nopan flex min-h-7 items-center justify-between gap-2 bg-card px-3.5 pb-2.5 text-meta text-muted-foreground',\n displayStatus && footerStatusClasses[displayStatus],\n )}\n >\n <span role=\"status\" className={isRunning ? 'sr-only motion-reduce:not-sr-only' : undefined}>\n {statusLabel}\n </span>\n {startedAt !== undefined && (\n <span className=\"ml-auto\">\n <WorkflowClock\n startedAt={startedAt}\n endedAt={endedAt}\n isRunning={isRunning}\n spansSuspension={props.spansSuspension}\n />\n </span>\n )}\n {actionBar}\n </div>\n\n {body && (\n <>\n <CollapsibleTrigger\n className={cn(\n surfaceStateLayerStyle,\n 'nodrag nopan flex min-h-11 w-full items-center justify-between border-t border-border bg-card px-3.5 py-2.5 text-caption focus-visible:outline-hidden',\n )}\n >\n <span>\n {expanded ? 'Collapse' : 'Expand'} {isForEach ? 'loop' : 'workflow'}\n </span>\n <ChevronRight aria-hidden size={14} />\n </CollapsibleTrigger>\n <CollapsibleContent className=\"h-155 overflow-hidden border-t border-dashed border-border\">\n {body}\n </CollapsibleContent>\n </>\n )}\n </div>\n {hasActivity && (\n <ActivityWick\n status={isSuspended ? 'ready' : 'working'}\n aria-hidden\n className=\"before:hidden\"\n style={isSuspended ? suspendedWickStyle : undefined}\n />\n )}\n </Collapsible>\n </div>\n );\n}\n","import { Handle, Position } from '@xyflow/react';\nimport type { NodeProps } from '@xyflow/react';\n\nimport type { WorkflowBoundaryNodeModel } from './types';\nimport { Txt } from '@/ds/components/Txt';\nimport { cn } from '@/utils/cn';\n\nexport const WorkflowBoundaryNode = ({ data }: NodeProps<WorkflowBoundaryNodeModel>) => {\n const isStart = data.boundaryRole === 'start';\n\n return (\n <>\n {!isStart && <Handle type=\"target\" position={Position.Top} style={{ visibility: 'hidden' }} />}\n <div\n data-workflow-boundary-node\n data-testid={`workflow-boundary-${data.boundaryRole}`}\n className={cn(\n 'relative flex h-[38px] w-28 items-center justify-center text-muted-foreground after:absolute after:inset-x-0 after:mask-x-from-60%',\n isStart\n ? 'after:bottom-0 after:h-px after:bg-muted-foreground'\n : 'after:top-0 after:h-1 after:border-y after:border-muted-foreground',\n )}\n >\n <Txt variant=\"meta\">{data.label}</Txt>\n </div>\n {isStart && <Handle type=\"source\" position={Position.Bottom} style={{ visibility: 'hidden' }} />}\n </>\n );\n};\n","export function workflowCameraDuration() {\n return window.matchMedia?.('(prefers-reduced-motion: reduce)').matches ? 0 : 300;\n}\n","import { useViewport } from '@xyflow/react';\nimport type { Node } from '@xyflow/react';\nimport { GitFork } from 'lucide-react';\nimport { Badge } from '@/ds/components/Badge';\n\nexport interface WorkflowGraphGroup {\n id: string;\n label: string;\n description: string;\n nodeIds: string[];\n}\n\nexport function WorkflowGraphGroups({ nodes, groups }: { nodes: Node[]; groups: WorkflowGraphGroup[] }) {\n const { x, y, zoom } = useViewport();\n return (\n <div\n className=\"pointer-events-none absolute inset-0 z-0 origin-top-left\"\n style={{ transform: `translate(${x}px, ${y}px) scale(${zoom})` }}\n >\n {groups.map(group => {\n const members = nodes.flatMap(node => {\n if (!group.nodeIds.includes(node.id) || !node.measured?.width || !node.measured.height) return [];\n return [{ x: node.position.x, y: node.position.y, width: node.measured.width, height: node.measured.height }];\n });\n if (!members.length || members.length !== group.nodeIds.length) return null;\n const left = Math.min(...members.map(node => node.x)) - 20;\n const top = Math.min(...members.map(node => node.y)) - 54;\n const right = Math.max(...members.map(node => node.x + node.width)) + 20;\n const bottom = Math.max(...members.map(node => node.y + node.height)) + 20;\n return (\n <div\n key={group.id}\n className=\"absolute rounded-xl border border-dashed border-muted-foreground/25 bg-muted-foreground/3\"\n style={{ transform: `translate(${left}px, ${top}px)`, width: right - left, height: bottom - top }}\n >\n <div className=\"flex items-center gap-2 px-5 py-4 text-meta text-muted-foreground\">\n <Badge size=\"xs\" variant=\"blue\" emphasis=\"subtle\" icon={<GitFork aria-hidden />}>\n {group.label}\n </Badge>\n <span>{group.description}</span>\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n","import type { PanelProps } from '@xyflow/react';\nimport { Panel, useViewport, useReactFlow, useStore } from '@xyflow/react';\nimport { Maximize, Minus, Plus } from 'lucide-react';\nimport { forwardRef } from 'react';\nimport { workflowCameraDuration } from './workflow-camera-duration';\nimport { Button } from '@/ds/components/Button';\nimport { Slider } from '@/ds/components/Slider';\nimport { cn } from '@/utils/cn';\n\nexport const ZoomSlider = forwardRef<\n HTMLDivElement,\n Omit<PanelProps, 'children'> & { compact?: boolean; onFitView?: () => void }\n>(({ className, compact = false, onFitView, ...props }, ref) => {\n const { zoom } = useViewport();\n const { zoomTo, zoomIn, zoomOut, fitView } = useReactFlow();\n const minZoom = useStore(state => state.minZoom);\n const maxZoom = useStore(state => state.maxZoom);\n\n return (\n <Panel\n ref={ref}\n className={cn(\n 'flex items-center gap-1 rounded-full border border-border bg-background p-1 text-foreground',\n className,\n )}\n {...props}\n >\n <Button\n size=\"icon-sm\"\n tooltip=\"Zoom out\"\n disabled={zoom <= minZoom}\n onClick={() => zoomOut({ duration: workflowCameraDuration() })}\n >\n <Minus />\n </Button>\n {!compact && (\n <Slider\n className=\"w-35\"\n aria-label=\"Canvas zoom\"\n value={[zoom]}\n min={minZoom}\n max={maxZoom}\n step={0.01}\n largeStep={0.25}\n format={{ style: 'percent' }}\n onValueChange={values => {\n const [nextZoom] = values;\n if (nextZoom !== undefined) void zoomTo(nextZoom);\n }}\n />\n )}\n <Button\n size=\"icon-sm\"\n tooltip=\"Zoom in\"\n disabled={zoom >= maxZoom}\n onClick={() => zoomIn({ duration: workflowCameraDuration() })}\n >\n <Plus />\n </Button>\n <Button\n size=\"sm\"\n className=\"min-w-16 tabular-nums\"\n tooltip=\"Reset to actual size (100%)\"\n onClick={() => zoomTo(1, { duration: workflowCameraDuration() })}\n >\n {(100 * zoom).toFixed(0)}%\n </Button>\n <Button\n size=\"icon-sm\"\n tooltip=\"Fit view\"\n onClick={onFitView ?? (() => fitView({ duration: workflowCameraDuration(), maxZoom: 1 }))}\n >\n <Maximize />\n </Button>\n </Panel>\n );\n});\n\nZoomSlider.displayName = 'ZoomSlider';\n","import { Background, BackgroundVariant, ReactFlow, useNodesInitialized, useReactFlow, useStore } from '@xyflow/react';\nimport type { Edge, Node, ReactFlowProps } from '@xyflow/react';\nimport { useContext, useEffect, useId, useRef } from 'react';\nimport { WorkflowCanvasInsetContext, workflowFitOptions } from '../workflow-canvas-inset';\nimport { workflowCameraDuration } from './workflow-camera-duration';\nimport { WorkflowGraphGroups } from './workflow-graph-groups';\nimport type { WorkflowGraphGroup } from './workflow-graph-groups';\nimport { ZoomSlider } from './zoom-slider';\nimport { cn } from '@/utils/cn';\nimport '@xyflow/react/dist/style.css';\n\nexport type { WorkflowGraphGroup } from './workflow-graph-groups';\n\nexport interface WorkflowGraphCanvasProps<NodeType extends Node = Node, EdgeType extends Edge = Edge> extends Pick<\n ReactFlowProps<NodeType, EdgeType>,\n 'nodes' | 'edges' | 'nodeTypes' | 'edgeTypes' | 'onNodesChange' | 'onNodeClick'\n> {\n focusNodeId?: string;\n variant?: 'default' | 'nested' | 'inline';\n groups?: WorkflowGraphGroup[];\n}\n\nexport function WorkflowGraphCanvas<NodeType extends Node, EdgeType extends Edge>({\n nodes,\n edges,\n nodeTypes,\n edgeTypes,\n onNodesChange,\n onNodeClick,\n focusNodeId,\n groups,\n variant = 'default',\n}: WorkflowGraphCanvasProps<NodeType, EdgeType>) {\n const graphRef = useRef<HTMLDivElement>(null);\n const backgroundId = useId();\n const panelInset = useContext(WorkflowCanvasInsetContext);\n const leftInset = variant === 'default' ? panelInset : 0;\n const isInline = variant === 'inline';\n const { getNodes, setCenter, fitView } = useReactFlow<NodeType, EdgeType>();\n const nodesInitialized = useNodesInitialized();\n const canvasWidth = useStore(state => state.width);\n const canvasHeight = useStore(state => state.height);\n const hasCompactZoom = canvasWidth - leftInset < 560;\n const inlineNodeLayout = isInline\n ? JSON.stringify(\n nodes?.map(node => [\n node.id,\n node.position.x,\n node.position.y,\n node.measured?.width ?? node.width,\n node.measured?.height ?? node.height,\n ]),\n )\n : undefined;\n\n useEffect(() => {\n if (!canvasWidth || !canvasHeight || !nodesInitialized) return;\n if (variant === 'default') return;\n void fitView({ ...workflowFitOptions(leftInset, isInline), duration: 0 });\n }, [canvasWidth, canvasHeight, nodesInitialized, inlineNodeLayout, fitView, leftInset, isInline, variant]);\n\n useEffect(() => {\n if (!canvasWidth || !canvasHeight || !nodesInitialized || !focusNodeId) return;\n const focusNode = getNodes().find(node => node.id === focusNodeId);\n if (!focusNode) return;\n if (!graphRef.current?.contains(document.activeElement)) {\n graphRef.current?.focus({ preventScroll: true });\n }\n const width = focusNode.measured?.width ?? focusNode.width ?? 274;\n const height = focusNode.measured?.height ?? focusNode.height ?? 100;\n const duration = workflowCameraDuration();\n const exceedsVisibleWidth = canvasWidth > 0 && width > canvasWidth - leftInset - 80;\n const exceedsVisibleHeight = canvasHeight > 0 && height > canvasHeight - 104;\n if (exceedsVisibleWidth || exceedsVisibleHeight) {\n void fitView({ ...workflowFitOptions(leftInset), nodes: [{ id: focusNode.id }], duration });\n return;\n }\n void setCenter(focusNode.position.x + width / 2 - leftInset / 2, focusNode.position.y + height / 2, {\n duration,\n zoom: 1,\n });\n }, [canvasWidth, canvasHeight, nodesInitialized, focusNodeId, getNodes, setCenter, fitView, leftInset]);\n\n return (\n <div\n ref={graphRef}\n tabIndex={-1}\n data-testid=\"workflow-graph-viewport\"\n className={cn('size-full outline-none', variant === 'nested' ? 'bg-sidebar' : 'bg-background')}\n >\n <ReactFlow\n fitView={variant === 'default'}\n fitViewOptions={workflowFitOptions(leftInset)}\n nodes={nodes}\n edges={edges}\n nodeTypes={nodeTypes}\n edgeTypes={edgeTypes}\n onNodesChange={onNodesChange}\n onNodeClick={onNodeClick}\n nodesDraggable={false}\n nodesConnectable={false}\n elementsSelectable={false}\n deleteKeyCode={null}\n panOnScroll={!isInline}\n panOnDrag={!isInline}\n zoomOnPinch={!isInline}\n zoomOnDoubleClick={!isInline}\n preventScrolling={!isInline}\n proOptions={isInline ? { hideAttribution: true } : undefined}\n zoomOnScroll={false}\n minZoom={0.1}\n maxZoom={4}\n >\n {!isInline && (\n <ZoomSlider\n position=\"top-right\"\n className=\"m-2!\"\n compact={hasCompactZoom}\n onFitView={() => fitView({ ...workflowFitOptions(leftInset), duration: workflowCameraDuration() })}\n />\n )}\n {groups && <WorkflowGraphGroups nodes={nodes ?? []} groups={groups} />}\n {!isInline && <Background id={backgroundId} variant={BackgroundVariant.Dots} gap={12} size={0.5} />}\n </ReactFlow>\n </div>\n );\n}\n","import { Handle, Position } from '@xyflow/react';\nimport type { ReactNode } from 'react';\n\nexport interface WorkflowNodeFrameProps {\n withoutTopHandle?: boolean;\n withoutBottomHandle?: boolean;\n children: ReactNode;\n}\n\nexport function WorkflowNodeFrame({ withoutTopHandle, withoutBottomHandle, children }: WorkflowNodeFrameProps) {\n return (\n <>\n {!withoutTopHandle && <Handle type=\"target\" position={Position.Top} style={{ visibility: 'hidden' }} />}\n <div className=\"nodrag pointer-events-auto\">{children}</div>\n {!withoutBottomHandle && <Handle type=\"source\" position={Position.Bottom} style={{ visibility: 'hidden' }} />}\n </>\n );\n}\n","import type { WorkflowConditionCardViewProps } from '../../types';\nimport { WorkflowConditionCardView } from './workflow-condition-card-view';\n\nexport type WorkflowConditionCardProps = Omit<WorkflowConditionCardViewProps, 'type'>;\n\nexport function WorkflowConditionCard({ conditions, ...props }: WorkflowConditionCardProps) {\n return <WorkflowConditionCardView {...props} type={conditions[0]?.type} conditions={conditions} />;\n}\n"],"names":["Repeat2","Workflow","GitFork","ArrowRightLeft","CalendarClock","Timer","Bot","Wrench","GitBranch","Braces","jsx","Badge","List","PlayCircle","Clock","Layers","Network","Repeat1","Repeat","RefreshCw","CornerDownRight","useState","useEffect","formatDuration","Txt","Code","formatTypeScript","jsxs","raisedSurfaceStyle","Fragment","CopyButton","cn","formatDate","formatShortDate","Collapsible","Shimmer","CollapsibleTrigger","surfaceStateLayerStyle","ChevronRight","CollapsibleContent","ActivityWick","Handle","Position","useViewport","forwardRef","useReactFlow","useStore","Panel","Button","Minus","Slider","Plus","Maximize","useRef","useId","useContext","WorkflowCanvasInsetContext","useNodesInitialized","workflowFitOptions","ReactFlow","Background","BackgroundVariant"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
const jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
const react = require('@xyflow/react');
|
|
5
5
|
const React = require('react');
|
|
6
|
-
const workflowEdgeDataButton = require('./workflow-edge-data-button-
|
|
6
|
+
const workflowEdgeDataButton = require('./workflow-edge-data-button-BKTN3LQd.cjs');
|
|
7
7
|
|
|
8
8
|
function WorkflowDataEdgeView({ output, label, dataControl, ...props }) {
|
|
9
9
|
const source = react.useInternalNode(props.source);
|
|
@@ -74,4 +74,4 @@ function WorkflowDataEdgeView({ output, label, dataControl, ...props }) {
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
exports.WorkflowDataEdgeView = WorkflowDataEdgeView;
|
|
77
|
-
//# sourceMappingURL=workflow-data-edge-view-
|
|
77
|
+
//# sourceMappingURL=workflow-data-edge-view-BoCjUe4t.cjs.map
|
package/dist/{workflow-data-edge-view-CjbBulHe.cjs.map → workflow-data-edge-view-BoCjUe4t.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-data-edge-view-
|
|
1
|
+
{"version":3,"file":"workflow-data-edge-view-BoCjUe4t.cjs","sources":["../src/ds/components/Workflow/graph/workflow-data-edge-view.tsx"],"sourcesContent":["import { BaseEdge, EdgeLabelRenderer, getBezierPath, Position, useInternalNode } from '@xyflow/react';\nimport type { EdgeProps } from '@xyflow/react';\nimport { useId } from 'react';\nimport type { ReactNode } from 'react';\nimport { WorkflowEdgeDataButton } from '../data/workflow-edge-data-button';\nimport type { WorkflowDataEdgeModel } from './types';\n\nexport interface WorkflowDataEdgeViewProps extends EdgeProps<WorkflowDataEdgeModel> {\n output?: unknown;\n label?: string;\n dataControl?: ReactNode;\n}\n\nexport function WorkflowDataEdgeView({ output, label, dataControl, ...props }: WorkflowDataEdgeViewProps) {\n const source = useInternalNode(props.source);\n const target = useInternalNode(props.target);\n const sourceWidth = source?.measured?.width ?? source?.width;\n const sourceHeight = source?.measured?.height ?? source?.height;\n const targetWidth = target?.measured?.width ?? target?.width;\n const hasBottomSource =\n source && sourceWidth !== undefined && sourceHeight !== undefined && props.sourcePosition === Position.Bottom;\n const hasTopTarget = target && targetWidth !== undefined && props.targetPosition === Position.Top;\n // Nested canvases scale DOM handle measurements twice; route in graph coordinates.\n const sourceX = hasBottomSource ? source.internals.positionAbsolute.x + sourceWidth / 2 : props.sourceX;\n const sourceY = hasBottomSource ? source.internals.positionAbsolute.y + sourceHeight : props.sourceY;\n const targetX = hasTopTarget ? target.internals.positionAbsolute.x + targetWidth / 2 : props.targetX;\n const targetY = hasTopTarget ? target.internals.positionAbsolute.y : props.targetY;\n const [edgePath, midpointX, midpointY] = getBezierPath({\n ...props,\n sourceX,\n sourceY,\n targetX,\n targetY,\n });\n const labelPlacement = props.data?.dataLabelPlacement;\n const labelX = labelPlacement === 'source' ? sourceX : midpointX;\n const labelY = labelPlacement === 'source' ? sourceY + Math.min(24, Math.max(0, (targetY - sourceY) / 4)) : midpointY;\n const arrowId = useId();\n const isExecuted = props.data?.edgeStatus === 'success';\n const pathColor = isExecuted ? 'var(--success-indicator)' : 'var(--muted-foreground)';\n\n return (\n <>\n <defs>\n <marker id={arrowId} viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n <path d=\"M1 1 L9 5 L1 9 Z\" fill={pathColor} />\n </marker>\n </defs>\n <BaseEdge\n id={props.id}\n path={edgePath}\n markerEnd={`url(#${arrowId})`}\n style={{\n ...props.style,\n stroke: pathColor,\n strokeWidth: isExecuted ? 2 : 1,\n strokeLinecap: 'round',\n strokeDasharray: isExecuted ? 'none' : '5 6',\n }}\n vectorEffect=\"non-scaling-stroke\"\n data-edge-status={props.data?.edgeStatus ?? 'idle'}\n data-edge-from={props.data?.previousStepId}\n data-edge-to={props.data?.nextStepId}\n />\n {labelPlacement !== 'hidden' && (\n <EdgeLabelRenderer>\n <div\n className=\"nodrag nopan flex items-center justify-center\"\n style={{\n position: 'absolute',\n pointerEvents: 'all',\n transform: `translate(-50%, -50%) translate(${labelX}px, ${labelY}px)`,\n }}\n >\n {dataControl ?? (\n <WorkflowEdgeDataButton\n previousStepId={props.data?.boundaryPayload ? undefined : props.data?.previousStepId}\n output={output}\n label={label}\n />\n )}\n </div>\n </EdgeLabelRenderer>\n )}\n </>\n );\n}\n"],"names":["useInternalNode","Position","getBezierPath","useId","jsxs","Fragment","jsx","BaseEdge","EdgeLabelRenderer","WorkflowEdgeDataButton"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useInternalNode, Position, getBezierPath, BaseEdge, EdgeLabelRenderer } from '@xyflow/react';
|
|
3
3
|
import { useId } from 'react';
|
|
4
|
-
import { W as WorkflowEdgeDataButton } from './workflow-edge-data-button-
|
|
4
|
+
import { W as WorkflowEdgeDataButton } from './workflow-edge-data-button-YegDtxyD.js';
|
|
5
5
|
|
|
6
6
|
function WorkflowDataEdgeView({ output, label, dataControl, ...props }) {
|
|
7
7
|
const source = useInternalNode(props.source);
|
|
@@ -72,4 +72,4 @@ function WorkflowDataEdgeView({ output, label, dataControl, ...props }) {
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
export { WorkflowDataEdgeView as W };
|
|
75
|
-
//# sourceMappingURL=workflow-data-edge-view-
|
|
75
|
+
//# sourceMappingURL=workflow-data-edge-view-ux68M8gD.js.map
|
package/dist/{workflow-data-edge-view-B9uz58wL.js.map → workflow-data-edge-view-ux68M8gD.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-data-edge-view-
|
|
1
|
+
{"version":3,"file":"workflow-data-edge-view-ux68M8gD.js","sources":["../src/ds/components/Workflow/graph/workflow-data-edge-view.tsx"],"sourcesContent":["import { BaseEdge, EdgeLabelRenderer, getBezierPath, Position, useInternalNode } from '@xyflow/react';\nimport type { EdgeProps } from '@xyflow/react';\nimport { useId } from 'react';\nimport type { ReactNode } from 'react';\nimport { WorkflowEdgeDataButton } from '../data/workflow-edge-data-button';\nimport type { WorkflowDataEdgeModel } from './types';\n\nexport interface WorkflowDataEdgeViewProps extends EdgeProps<WorkflowDataEdgeModel> {\n output?: unknown;\n label?: string;\n dataControl?: ReactNode;\n}\n\nexport function WorkflowDataEdgeView({ output, label, dataControl, ...props }: WorkflowDataEdgeViewProps) {\n const source = useInternalNode(props.source);\n const target = useInternalNode(props.target);\n const sourceWidth = source?.measured?.width ?? source?.width;\n const sourceHeight = source?.measured?.height ?? source?.height;\n const targetWidth = target?.measured?.width ?? target?.width;\n const hasBottomSource =\n source && sourceWidth !== undefined && sourceHeight !== undefined && props.sourcePosition === Position.Bottom;\n const hasTopTarget = target && targetWidth !== undefined && props.targetPosition === Position.Top;\n // Nested canvases scale DOM handle measurements twice; route in graph coordinates.\n const sourceX = hasBottomSource ? source.internals.positionAbsolute.x + sourceWidth / 2 : props.sourceX;\n const sourceY = hasBottomSource ? source.internals.positionAbsolute.y + sourceHeight : props.sourceY;\n const targetX = hasTopTarget ? target.internals.positionAbsolute.x + targetWidth / 2 : props.targetX;\n const targetY = hasTopTarget ? target.internals.positionAbsolute.y : props.targetY;\n const [edgePath, midpointX, midpointY] = getBezierPath({\n ...props,\n sourceX,\n sourceY,\n targetX,\n targetY,\n });\n const labelPlacement = props.data?.dataLabelPlacement;\n const labelX = labelPlacement === 'source' ? sourceX : midpointX;\n const labelY = labelPlacement === 'source' ? sourceY + Math.min(24, Math.max(0, (targetY - sourceY) / 4)) : midpointY;\n const arrowId = useId();\n const isExecuted = props.data?.edgeStatus === 'success';\n const pathColor = isExecuted ? 'var(--success-indicator)' : 'var(--muted-foreground)';\n\n return (\n <>\n <defs>\n <marker id={arrowId} viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"5\" markerHeight=\"5\" orient=\"auto\">\n <path d=\"M1 1 L9 5 L1 9 Z\" fill={pathColor} />\n </marker>\n </defs>\n <BaseEdge\n id={props.id}\n path={edgePath}\n markerEnd={`url(#${arrowId})`}\n style={{\n ...props.style,\n stroke: pathColor,\n strokeWidth: isExecuted ? 2 : 1,\n strokeLinecap: 'round',\n strokeDasharray: isExecuted ? 'none' : '5 6',\n }}\n vectorEffect=\"non-scaling-stroke\"\n data-edge-status={props.data?.edgeStatus ?? 'idle'}\n data-edge-from={props.data?.previousStepId}\n data-edge-to={props.data?.nextStepId}\n />\n {labelPlacement !== 'hidden' && (\n <EdgeLabelRenderer>\n <div\n className=\"nodrag nopan flex items-center justify-center\"\n style={{\n position: 'absolute',\n pointerEvents: 'all',\n transform: `translate(-50%, -50%) translate(${labelX}px, ${labelY}px)`,\n }}\n >\n {dataControl ?? (\n <WorkflowEdgeDataButton\n previousStepId={props.data?.boundaryPayload ? undefined : props.data?.previousStepId}\n output={output}\n label={label}\n />\n )}\n </div>\n </EdgeLabelRenderer>\n )}\n </>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { Pause, Loader2, StepForwardIcon, PlayIcon } from 'lucide-react';
|
|
3
3
|
import { B as Badge } from './Badge-DId-8rYY.js';
|
|
4
4
|
import { B as Button } from './Button-D43ghVKt.js';
|
|
5
|
-
import { T as Txt } from './Txt-
|
|
5
|
+
import { T as Txt } from './Txt-CuuPO9Ho.js';
|
|
6
6
|
|
|
7
7
|
function WorkflowDebugControls({
|
|
8
8
|
isStreaming,
|
|
@@ -55,4 +55,4 @@ function WorkflowDebugControls({
|
|
|
55
55
|
}
|
|
56
56
|
|
|
57
57
|
export { WorkflowDebugControls as W };
|
|
58
|
-
//# sourceMappingURL=workflow-debug-controls-
|
|
58
|
+
//# sourceMappingURL=workflow-debug-controls-BgyAN-Ke.js.map
|
package/dist/{workflow-debug-controls-BVaX_0Dq.js.map → workflow-debug-controls-BgyAN-Ke.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-debug-controls-
|
|
1
|
+
{"version":3,"file":"workflow-debug-controls-BgyAN-Ke.js","sources":["../src/ds/components/Workflow/controls/workflow-debug-controls.tsx"],"sourcesContent":["import { Loader2, Pause, PlayIcon, StepForwardIcon } from 'lucide-react';\nimport type { ReactNode } from 'react';\nimport { Badge } from '@/ds/components/Badge';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\n\nexport interface WorkflowDebugControlsProps {\n isStreaming?: boolean;\n canRunNextStep: boolean;\n nextStepLabel?: string;\n disabled?: boolean;\n children?: ReactNode;\n onRunNextStep: () => void;\n onContinueRun: () => void;\n}\n\nexport function WorkflowDebugControls({\n isStreaming,\n canRunNextStep,\n nextStepLabel,\n disabled,\n children,\n onRunNextStep,\n onContinueRun,\n}: WorkflowDebugControlsProps) {\n const nextStepFallback = canRunNextStep ? 'Ready to advance' : 'Next step unavailable';\n const actionsDisabled = !canRunNextStep || isStreaming || disabled;\n\n return (\n <div className=\"flex min-w-0 flex-col gap-3\" data-testid=\"workflow-debug-step-controls\">\n <div className=\"rounded-xl border border-surface-rim bg-background p-3\">\n <div className=\"mb-2 flex flex-wrap items-center justify-between gap-2\">\n <Txt as=\"span\" variant=\"meta\" tone=\"muted\">\n Next step\n </Txt>\n <Badge size=\"sm\" icon={<Pause />} emphasis=\"subtle\">\n Step by step\n </Badge>\n </div>\n <div className=\"text-subheading break-words text-foreground\" aria-live=\"polite\">\n {nextStepLabel || nextStepFallback}\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Button\n type=\"button\"\n variant=\"primary\"\n className=\"min-w-0 flex-1\"\n aria-label=\"Run next step\"\n onClick={onRunNextStep}\n disabled={actionsDisabled}\n icon={isStreaming ? <Loader2 className=\"motion-safe:animate-spin\" /> : <StepForwardIcon />}\n >\n {isStreaming ? 'Running step…' : 'Run next step'}\n </Button>\n\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-md\"\n tooltip=\"Continue full run\"\n onClick={onContinueRun}\n disabled={actionsDisabled}\n >\n <PlayIcon />\n </Button>\n {children}\n </div>\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;;AAgBO,SAAS,qBAAA,CAAsB;AAAA,EACpC,WAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAA+B;AAC7B,EAAA,MAAM,gBAAA,GAAmB,iBAAiB,kBAAA,GAAqB,uBAAA;AAC/D,EAAA,MAAM,eAAA,GAAkB,CAAC,cAAA,IAAkB,WAAA,IAAe,QAAA;AAE1D,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,6BAAA,EAA8B,eAAY,8BAAA,EACvD,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EACb,QAAA,EAAA;AAAA,sBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EACb,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,OAAI,EAAA,EAAG,MAAA,EAAO,SAAQ,MAAA,EAAO,IAAA,EAAK,SAAQ,QAAA,EAAA,WAAA,EAE3C,CAAA;AAAA,wBACA,GAAA,CAAC,KAAA,EAAA,EAAM,IAAA,EAAK,IAAA,EAAK,IAAA,sBAAO,KAAA,EAAA,EAAM,CAAA,EAAI,QAAA,EAAS,QAAA,EAAS,QAAA,EAAA,cAAA,EAEpD;AAAA,OAAA,EACF,CAAA;AAAA,0BACC,KAAA,EAAA,EAAI,SAAA,EAAU,+CAA8C,WAAA,EAAU,QAAA,EACpE,2BAAiB,gBAAA,EACpB;AAAA,KAAA,EACF,CAAA;AAAA,oBACA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,OAAA,EAAQ,SAAA;AAAA,UACR,SAAA,EAAU,gBAAA;AAAA,UACV,YAAA,EAAW,eAAA;AAAA,UACX,OAAA,EAAS,aAAA;AAAA,UACT,QAAA,EAAU,eAAA;AAAA,UACV,IAAA,EAAM,8BAAc,GAAA,CAAC,OAAA,EAAA,EAAQ,WAAU,0BAAA,EAA2B,CAAA,uBAAM,eAAA,EAAA,EAAgB,CAAA;AAAA,UAEvF,wBAAc,eAAA,GAAkB;AAAA;AAAA,OACnC;AAAA,sBAEA,GAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,OAAA,EAAQ,OAAA;AAAA,UACR,IAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAQ,mBAAA;AAAA,UACR,OAAA,EAAS,aAAA;AAAA,UACT,QAAA,EAAU,eAAA;AAAA,UAEV,8BAAC,QAAA,EAAA,EAAS;AAAA;AAAA,OACZ;AAAA,MACC;AAAA,KAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
|
|
@@ -4,7 +4,7 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
const lucideReact = require('lucide-react');
|
|
5
5
|
const Badge = require('./Badge-DB59RxT5.cjs');
|
|
6
6
|
const Button = require('./Button-CXhSUBxN.cjs');
|
|
7
|
-
const Txt = require('./Txt-
|
|
7
|
+
const Txt = require('./Txt-DFPibRb3.cjs');
|
|
8
8
|
|
|
9
9
|
function WorkflowDebugControls({
|
|
10
10
|
isStreaming,
|
|
@@ -57,4 +57,4 @@ function WorkflowDebugControls({
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
exports.WorkflowDebugControls = WorkflowDebugControls;
|
|
60
|
-
//# sourceMappingURL=workflow-debug-controls-
|
|
60
|
+
//# sourceMappingURL=workflow-debug-controls-DsAvdRuS.cjs.map
|
package/dist/{workflow-debug-controls-DUNR0Ws0.cjs.map → workflow-debug-controls-DsAvdRuS.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-debug-controls-
|
|
1
|
+
{"version":3,"file":"workflow-debug-controls-DsAvdRuS.cjs","sources":["../src/ds/components/Workflow/controls/workflow-debug-controls.tsx"],"sourcesContent":["import { Loader2, Pause, PlayIcon, StepForwardIcon } from 'lucide-react';\nimport type { ReactNode } from 'react';\nimport { Badge } from '@/ds/components/Badge';\nimport { Button } from '@/ds/components/Button';\nimport { Txt } from '@/ds/components/Txt';\n\nexport interface WorkflowDebugControlsProps {\n isStreaming?: boolean;\n canRunNextStep: boolean;\n nextStepLabel?: string;\n disabled?: boolean;\n children?: ReactNode;\n onRunNextStep: () => void;\n onContinueRun: () => void;\n}\n\nexport function WorkflowDebugControls({\n isStreaming,\n canRunNextStep,\n nextStepLabel,\n disabled,\n children,\n onRunNextStep,\n onContinueRun,\n}: WorkflowDebugControlsProps) {\n const nextStepFallback = canRunNextStep ? 'Ready to advance' : 'Next step unavailable';\n const actionsDisabled = !canRunNextStep || isStreaming || disabled;\n\n return (\n <div className=\"flex min-w-0 flex-col gap-3\" data-testid=\"workflow-debug-step-controls\">\n <div className=\"rounded-xl border border-surface-rim bg-background p-3\">\n <div className=\"mb-2 flex flex-wrap items-center justify-between gap-2\">\n <Txt as=\"span\" variant=\"meta\" tone=\"muted\">\n Next step\n </Txt>\n <Badge size=\"sm\" icon={<Pause />} emphasis=\"subtle\">\n Step by step\n </Badge>\n </div>\n <div className=\"text-subheading break-words text-foreground\" aria-live=\"polite\">\n {nextStepLabel || nextStepFallback}\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Button\n type=\"button\"\n variant=\"primary\"\n className=\"min-w-0 flex-1\"\n aria-label=\"Run next step\"\n onClick={onRunNextStep}\n disabled={actionsDisabled}\n icon={isStreaming ? <Loader2 className=\"motion-safe:animate-spin\" /> : <StepForwardIcon />}\n >\n {isStreaming ? 'Running step…' : 'Run next step'}\n </Button>\n\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-md\"\n tooltip=\"Continue full run\"\n onClick={onContinueRun}\n disabled={actionsDisabled}\n >\n <PlayIcon />\n </Button>\n {children}\n </div>\n </div>\n );\n}\n"],"names":["jsxs","jsx","Txt","Badge","Pause","Button","Loader2","StepForwardIcon","PlayIcon"],"mappings":";;;;;;;;AAgBO,SAAS,qBAAA,CAAsB;AAAA,EACpC,WAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAA+B;AAC7B,EAAA,MAAM,gBAAA,GAAmB,iBAAiB,kBAAA,GAAqB,uBAAA;AAC/D,EAAA,MAAM,eAAA,GAAkB,CAAC,cAAA,IAAkB,WAAA,IAAe,QAAA;AAE1D,EAAA,uBACEA,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,6BAAA,EAA8B,eAAY,8BAAA,EACvD,QAAA,EAAA;AAAA,oBAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EACb,QAAA,EAAA;AAAA,sBAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EACb,QAAA,EAAA;AAAA,wBAAAC,cAAA,CAACC,WAAI,EAAA,EAAG,MAAA,EAAO,SAAQ,MAAA,EAAO,IAAA,EAAK,SAAQ,QAAA,EAAA,WAAA,EAE3C,CAAA;AAAA,wBACAD,cAAA,CAACE,WAAA,EAAA,EAAM,IAAA,EAAK,IAAA,EAAK,IAAA,iCAAOC,iBAAA,EAAA,EAAM,CAAA,EAAI,QAAA,EAAS,QAAA,EAAS,QAAA,EAAA,cAAA,EAEpD;AAAA,OAAA,EACF,CAAA;AAAA,qCACC,KAAA,EAAA,EAAI,SAAA,EAAU,+CAA8C,WAAA,EAAU,QAAA,EACpE,2BAAiB,gBAAA,EACpB;AAAA,KAAA,EACF,CAAA;AAAA,oBACAJ,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EACb,QAAA,EAAA;AAAA,sBAAAC,cAAA;AAAA,QAACI,aAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,OAAA,EAAQ,SAAA;AAAA,UACR,SAAA,EAAU,gBAAA;AAAA,UACV,YAAA,EAAW,eAAA;AAAA,UACX,OAAA,EAAS,aAAA;AAAA,UACT,QAAA,EAAU,eAAA;AAAA,UACV,IAAA,EAAM,8BAAcJ,cAAA,CAACK,mBAAA,EAAA,EAAQ,WAAU,0BAAA,EAA2B,CAAA,kCAAMC,2BAAA,EAAA,EAAgB,CAAA;AAAA,UAEvF,wBAAc,eAAA,GAAkB;AAAA;AAAA,OACnC;AAAA,sBAEAN,cAAA;AAAA,QAACI,aAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,OAAA,EAAQ,OAAA;AAAA,UACR,IAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAQ,mBAAA;AAAA,UACR,OAAA,EAAS,aAAA;AAAA,UACT,QAAA,EAAU,eAAA;AAAA,UAEV,yCAACG,oBAAA,EAAA,EAAS;AAAA;AAAA,OACZ;AAAA,MACC;AAAA,KAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
|
package/dist/{workflow-edge-data-button-DQAzBPfm.cjs → workflow-edge-data-button-BKTN3LQd.cjs}
RENAMED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
const jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
const lucideReact = require('lucide-react');
|
|
5
5
|
const React = require('react');
|
|
6
|
-
const workflowCodeDialogContent = require('./workflow-code-dialog-content-
|
|
6
|
+
const workflowCodeDialogContent = require('./workflow-code-dialog-content-BE9f1Fcf.cjs');
|
|
7
7
|
const Button = require('./Button-CXhSUBxN.cjs');
|
|
8
8
|
const dialog = require('./dialog-c2AhB8HM.cjs');
|
|
9
|
-
const Txt = require('./Txt-
|
|
9
|
+
const Txt = require('./Txt-DFPibRb3.cjs');
|
|
10
10
|
const primitives_raisedSurface = require('./primitives/raised-surface.cjs.js');
|
|
11
11
|
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
12
12
|
|
|
@@ -51,4 +51,4 @@ const WorkflowEdgeDataButton = ({
|
|
|
51
51
|
};
|
|
52
52
|
|
|
53
53
|
exports.WorkflowEdgeDataButton = WorkflowEdgeDataButton;
|
|
54
|
-
//# sourceMappingURL=workflow-edge-data-button-
|
|
54
|
+
//# sourceMappingURL=workflow-edge-data-button-BKTN3LQd.cjs.map
|