@mastra/playground-ui 60.2.0 → 61.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/dist/{Avatar-bHcyExU7.js → Avatar-Bg_EZRgZ.js} +2 -2
- package/dist/{Avatar-bHcyExU7.js.map → Avatar-Bg_EZRgZ.js.map} +1 -1
- package/dist/{Avatar-B3PwGdWv.cjs → Avatar-DchBEEMO.cjs} +2 -2
- package/dist/{Avatar-B3PwGdWv.cjs.map → Avatar-DchBEEMO.cjs.map} +1 -1
- package/dist/{Badge-D3EctKQo.cjs → Badge-DB59RxT5.cjs} +3 -3
- package/dist/Badge-DB59RxT5.cjs.map +1 -0
- package/dist/{Badge-DmOqFpXW.js → Badge-DId-8rYY.js} +3 -3
- package/dist/Badge-DId-8rYY.js.map +1 -0
- package/dist/{EmptyState-DyyUFpzY.js → EmptyState-DGzBN0Ix.js} +2 -2
- package/dist/{EmptyState-DyyUFpzY.js.map → EmptyState-DGzBN0Ix.js.map} +1 -1
- package/dist/{EmptyState-CuoMGNP0.cjs → EmptyState-DvSib3QC.cjs} +2 -2
- package/dist/{EmptyState-CuoMGNP0.cjs.map → EmptyState-DvSib3QC.cjs.map} +1 -1
- package/dist/{Header-hTHhO02b.js → Header-BXl3AZgO.js} +2 -2
- package/dist/{Header-hTHhO02b.js.map → Header-BXl3AZgO.js.map} +1 -1
- package/dist/{Header-y51Sfo3G.cjs → Header-W3PBmXia.cjs} +2 -2
- package/dist/{Header-y51Sfo3G.cjs.map → Header-W3PBmXia.cjs.map} +1 -1
- package/dist/{Notice-B8RIClJD.js → Notice-D4gMAkVI.js} +2 -2
- package/dist/{Notice-B8RIClJD.js.map → Notice-D4gMAkVI.js.map} +1 -1
- package/dist/{Notice-C4Tgmtgb.cjs → Notice-D4zc_oTj.cjs} +2 -2
- package/dist/{Notice-C4Tgmtgb.cjs.map → Notice-D4zc_oTj.cjs.map} +1 -1
- package/dist/{Txt-BP1SRHmL.js → Txt-C3cYJgKU.js} +4 -1
- package/dist/Txt-C3cYJgKU.js.map +1 -0
- package/dist/{Txt-DPmEpNbp.cjs → Txt-DNnvlrBo.cjs} +4 -1
- package/dist/Txt-DNnvlrBo.cjs.map +1 -0
- package/dist/{activity-CbQG59Oc.cjs → activity-ClKZR5_o.cjs} +2 -2
- package/dist/{activity-CbQG59Oc.cjs.map → activity-ClKZR5_o.cjs.map} +1 -1
- package/dist/{activity-BoXbE4Kz.js → activity-D0SefV4r.js} +2 -2
- package/dist/{activity-BoXbE4Kz.js.map → activity-D0SefV4r.js.map} +1 -1
- package/dist/{ask-user-DE8TaPhb.js → ask-user-CqCUiZRR.js} +4 -4
- package/dist/{ask-user-DE8TaPhb.js.map → ask-user-CqCUiZRR.js.map} +1 -1
- package/dist/{ask-user-XYY0fUoI.cjs → ask-user-DBb0lUh2.cjs} +4 -4
- package/dist/{ask-user-XYY0fUoI.cjs.map → ask-user-DBb0lUh2.cjs.map} +1 -1
- package/dist/buttons-group.css +1 -1
- package/dist/{code-block-Bnz7Pq0Q.js → code-block-C04dJD3G.js} +5 -4
- package/dist/{code-block-Bnz7Pq0Q.js.map → code-block-C04dJD3G.js.map} +1 -1
- package/dist/{code-block-C3DbSINk.cjs → code-block-CMI2oLXm.cjs} +6 -5
- package/dist/{code-block-C3DbSINk.cjs.map → code-block-CMI2oLXm.cjs.map} +1 -1
- package/dist/collapsible-box-DW-y0Oi1.js +67 -0
- package/dist/collapsible-box-DW-y0Oi1.js.map +1 -0
- package/dist/collapsible-box-DdUueeh6.cjs +69 -0
- package/dist/collapsible-box-DdUueeh6.cjs.map +1 -0
- package/dist/{combobox-RzEkcOuu.cjs → combobox-DPpiBLWV.cjs} +3 -3
- package/dist/{combobox-RzEkcOuu.cjs.map → combobox-DPpiBLWV.cjs.map} +1 -1
- package/dist/{combobox-DKFPbNMB.js → combobox-DoJgbq9N.js} +3 -3
- package/dist/{combobox-DKFPbNMB.js.map → combobox-DoJgbq9N.js.map} +1 -1
- package/dist/{combobox-styles-mbcWlNZQ.js → combobox-styles-BuHYzri9.js} +3 -3
- package/dist/combobox-styles-BuHYzri9.js.map +1 -0
- package/dist/{combobox-styles-qL3FSgmU.cjs → combobox-styles-zdW4cHSq.cjs} +3 -3
- package/dist/combobox-styles-zdW4cHSq.cjs.map +1 -0
- package/dist/{command-DFin7kHN.js → command-CXPbrw66.js} +7 -4
- package/dist/command-CXPbrw66.js.map +1 -0
- package/dist/{command-Bm0VcX7X.cjs → command-DD3WIrQX.cjs} +7 -4
- package/dist/command-DD3WIrQX.cjs.map +1 -0
- package/dist/{comment-DKWkzdMj.js → comment-B1Cf9w4Z.js} +2 -2
- package/dist/{comment-DKWkzdMj.js.map → comment-B1Cf9w4Z.js.map} +1 -1
- package/dist/{comment-DWY6D0pZ.cjs → comment-DnbibTOe.cjs} +2 -2
- package/dist/{comment-DWY6D0pZ.cjs.map → comment-DnbibTOe.cjs.map} +1 -1
- package/dist/components/Avatar.cjs.js +1 -1
- package/dist/components/Avatar.es.js +1 -1
- package/dist/components/Badge.cjs.js +1 -1
- package/dist/components/Badge.es.js +1 -1
- package/dist/components/ClampedText.cjs.js +1 -1
- package/dist/components/ClampedText.es.js +1 -1
- package/dist/components/CodeBlock.cjs.js +1 -1
- package/dist/components/CodeBlock.es.js +1 -1
- package/dist/components/CollapsibleBox.cjs.js +3 -2
- package/dist/components/CollapsibleBox.cjs.js.map +1 -1
- package/dist/components/CollapsibleBox.es.js +2 -1
- package/dist/components/CollapsibleBox.es.js.map +1 -1
- package/dist/components/Combobox.cjs.js +2 -2
- package/dist/components/Combobox.es.js +2 -2
- package/dist/components/Command.cjs.js +1 -1
- package/dist/components/Command.es.js +1 -1
- package/dist/components/CommandPalette.cjs.js +2 -2
- package/dist/components/CommandPalette.es.js +2 -2
- package/dist/components/Comment.cjs.js +4 -4
- package/dist/components/Comment.es.js +5 -5
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +1 -1
- package/dist/components/DataDetailsPanel.es.js +1 -1
- package/dist/components/DataList.cjs.js +4 -4
- package/dist/components/DataList.es.js +4 -4
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +1 -1
- package/dist/components/DateRangeTimeline.es.js +1 -1
- package/dist/components/DateTimePicker.cjs.js +2 -2
- package/dist/components/DateTimePicker.es.js +2 -2
- 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 +1 -1
- package/dist/components/Entity.es.js +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 +5 -5
- package/dist/components/EnvironmentVariablesEditor.es.js +5 -5
- package/dist/components/Field.cjs.js +1 -1
- package/dist/components/Field.es.js +1 -1
- package/dist/components/FileDropBackdrop.cjs.js +1 -1
- package/dist/components/FileDropBackdrop.es.js +1 -1
- package/dist/components/FilterBar.cjs.js +3 -3
- package/dist/components/FilterBar.es.js +4 -4
- package/dist/components/FormFieldBlocks.cjs.js +2 -2
- package/dist/components/FormFieldBlocks.es.js +2 -2
- 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/InputGroup.cjs.js +3 -1
- package/dist/components/InputGroup.cjs.js.map +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/InputNumber.cjs.js +95 -0
- package/dist/components/InputNumber.cjs.js.map +1 -0
- package/dist/components/InputNumber.d.ts +2 -0
- package/dist/components/InputNumber.es.js +68 -0
- package/dist/components/InputNumber.es.js.map +1 -0
- package/dist/components/JSONSchemaForm.cjs.js +2 -2
- package/dist/components/JSONSchemaForm.es.js +2 -2
- package/dist/components/KeyValueList.cjs.js +1 -1
- package/dist/components/KeyValueList.es.js +1 -1
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +3 -1
- package/dist/components/LogsDataList.cjs.js.map +1 -1
- package/dist/components/LogsDataList.es.js +3 -1
- 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/ProductBadge.cjs.js +1 -1
- package/dist/components/ProductBadge.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +3 -3
- package/dist/components/PropertyFilter.es.js +3 -3
- package/dist/components/RelativeTimestamp.cjs.js +1 -1
- package/dist/components/RelativeTimestamp.es.js +1 -1
- package/dist/components/RuleBuilder.cjs.js +2 -2
- package/dist/components/RuleBuilder.es.js +2 -2
- package/dist/components/ScatterPlotChart.cjs.js +1 -1
- package/dist/components/ScatterPlotChart.es.js +1 -1
- package/dist/components/SearchInput.cjs.js +1 -1
- package/dist/components/SearchInput.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/Select.cjs.js +1 -1
- package/dist/components/Select.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +1 -1
- package/dist/components/SideDialog.es.js +1 -1
- package/dist/components/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 +5 -4
- package/dist/components/Tabs.cjs.js.map +1 -1
- package/dist/components/Tabs.es.js +4 -3
- package/dist/components/Tabs.es.js.map +1 -1
- package/dist/components/Text.cjs.js +1 -1
- package/dist/components/Text.es.js +1 -1
- package/dist/components/ThinkingLevel.cjs.js +230 -0
- package/dist/components/ThinkingLevel.cjs.js.map +1 -0
- package/dist/components/ThinkingLevel.d.ts +2 -0
- package/dist/components/ThinkingLevel.es.js +223 -0
- package/dist/components/ThinkingLevel.es.js.map +1 -0
- 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 +1 -1
- package/dist/components/TokenBudget.es.js +1 -1
- package/dist/components/Tree.cjs.js +2 -487
- package/dist/components/Tree.cjs.js.map +1 -1
- package/dist/components/Tree.es.js +1 -471
- package/dist/components/Tree.es.js.map +1 -1
- package/dist/components/Truncate.cjs.js +1 -1
- package/dist/components/Truncate.es.js +1 -1
- package/dist/components/Txt.cjs.js +1 -1
- package/dist/components/Txt.es.js +1 -1
- package/dist/components/Workflow.cjs.js +4 -4
- package/dist/components/Workflow.es.js +4 -4
- 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-call.cjs.js +2 -2
- package/dist/components/ai/tool-call.es.js +2 -2
- package/dist/components/ai/transcript-divider.cjs.js +3 -11
- package/dist/components/ai/transcript-divider.cjs.js.map +1 -1
- package/dist/components/ai/transcript-divider.es.js +1 -13
- package/dist/components/ai/transcript-divider.es.js.map +1 -1
- package/dist/{data-code-section-Ds79F6W-.cjs → data-code-section-DIj4CMvD.cjs} +2 -2
- package/dist/{data-code-section-Ds79F6W-.cjs.map → data-code-section-DIj4CMvD.cjs.map} +1 -1
- package/dist/{data-code-section-DFxE6ckH.js → data-code-section-K-2Bj1zO.js} +2 -2
- package/dist/{data-code-section-DFxE6ckH.js.map → data-code-section-K-2Bj1zO.js.map} +1 -1
- package/dist/{data-list-CEIYm7FY.js → data-list-DdsyfT8B.js} +3 -3
- package/dist/{data-list-CEIYm7FY.js.map → data-list-DdsyfT8B.js.map} +1 -1
- package/dist/{data-list-Bqf-fhMx.cjs → data-list-DoKc-wSe.cjs} +3 -3
- package/dist/{data-list-Bqf-fhMx.cjs.map → data-list-DoKc-wSe.cjs.map} +1 -1
- package/dist/{data-list-spacer-BH2DjRdk.js → data-list-spacer-7QVTcgIS.js} +2 -2
- package/dist/{data-list-spacer-BH2DjRdk.js.map → data-list-spacer-7QVTcgIS.js.map} +1 -1
- package/dist/{data-list-spacer-DFvaAEqo.cjs → data-list-spacer-CD4hD-As.cjs} +2 -2
- package/dist/{data-list-spacer-DFvaAEqo.cjs.map → data-list-spacer-CD4hD-As.cjs.map} +1 -1
- package/dist/{data-panel-CbomKGJt.js → data-panel-CKvpHRUM.js} +4 -4
- package/dist/data-panel-CKvpHRUM.js.map +1 -0
- package/dist/{data-panel-o-QLWuFV.cjs → data-panel-YCvno_Di.cjs} +4 -4
- package/dist/data-panel-YCvno_Di.cjs.map +1 -0
- package/dist/{date-time-range-picker-Bb-CGVEL.cjs → date-time-range-picker-BbX8F_LY.cjs} +4 -4
- package/dist/{date-time-range-picker-Bb-CGVEL.cjs.map → date-time-range-picker-BbX8F_LY.cjs.map} +1 -1
- package/dist/{date-time-range-picker-B1zYIQTC.js → date-time-range-picker-DzPLKJol.js} +4 -4
- package/dist/{date-time-range-picker-B1zYIQTC.js.map → date-time-range-picker-DzPLKJol.js.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/components/badge-wrapper.cjs.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +1 -1
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +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/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 +2 -2
- package/dist/domains/chat/messages/dataset-save-action.es.js +2 -2
- package/dist/domains/chat/messages/message-row.cjs.js +4 -4
- package/dist/domains/chat/messages/message-row.es.js +4 -4
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.es.js +1 -1
- package/dist/domains/chat/messages/renderers/message-text.cjs.js +3 -3
- package/dist/domains/chat/messages/renderers/message-text.es.js +3 -3
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/reasoning-part-renderer.es.js +1 -1
- package/dist/domains/chat/messages/renderers/status-renderers.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/status-renderers.es.js +1 -1
- package/dist/domains/chat/messages/signal-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/signal-badge.es.js +1 -1
- package/dist/domains/chat/messages/skill-message.cjs.js +3 -3
- package/dist/domains/chat/messages/skill-message.es.js +3 -3
- package/dist/domains/chat/messages/system-reminder-badge.cjs.js +1 -1
- package/dist/domains/chat/messages/system-reminder-badge.es.js +1 -1
- package/dist/domains/chat/messages/tripwire-notice.cjs.js +2 -2
- package/dist/domains/chat/messages/tripwire-notice.es.js +2 -2
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/file-tree-badge.es.js +3 -3
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +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 +3 -3
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js +3 -3
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +2 -2
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js +2 -2
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/tool-badge.es.js +2 -2
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.es.js +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/datasets/components/save-as-dataset-item-dialog.cjs.js +4 -4
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +4 -4
- package/dist/domains/logs/components/log-data-panel.cjs.js +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 +1 -1
- package/dist/domains/logs/components/logs-list-view.es.js +1 -1
- 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/memory/components/flame-graph.cjs.js +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +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 +3 -3
- package/dist/domains/memory/components/observation-detail-view.es.js +3 -3
- 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 +8 -7
- package/dist/domains/metrics/components/latency-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/latency-card-view.es.js +7 -6
- package/dist/domains/metrics/components/latency-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/memory-card-view.cjs.js +7 -6
- package/dist/domains/metrics/components/memory-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/memory-card-view.es.js +6 -5
- package/dist/domains/metrics/components/memory-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +2 -2
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +2 -2
- package/dist/domains/metrics/components/scores-card-view.cjs.js +8 -7
- package/dist/domains/metrics/components/scores-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/scores-card-view.es.js +7 -6
- package/dist/domains/metrics/components/scores-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +7 -6
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +6 -5
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +8 -7
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +7 -6
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js.map +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +7 -6
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js.map +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +6 -5
- package/dist/domains/metrics/components/traces-volume-card-view.es.js.map +1 -1
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js +4 -4
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.es.js +4 -4
- package/dist/domains/observability/components/trace-as-item-dialog.cjs.js +1 -1
- package/dist/domains/observability/components/trace-as-item-dialog.es.js +1 -1
- package/dist/domains/request-context/components/request-context-label.cjs.js +1 -1
- package/dist/domains/request-context/components/request-context-label.es.js +1 -1
- package/dist/domains/review/components/review-status-badge.cjs.js +1 -1
- package/dist/domains/review/components/review-status-badge.es.js +1 -1
- package/dist/domains/scores/components/score-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 +1 -1
- package/dist/domains/scores/components/score-data-panel.es.js +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 -4
- package/dist/domains/scores/components/trace-scores-tab.cjs.js.map +1 -1
- package/dist/domains/scores/components/trace-scores-tab.es.js +5 -4
- package/dist/domains/scores/components/trace-scores-tab.es.js.map +1 -1
- package/dist/domains/traces/components/feedback-thread.cjs.js +4 -4
- package/dist/domains/traces/components/feedback-thread.es.js +4 -4
- package/dist/domains/traces/components/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 +20 -15
- 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 +19 -14
- package/dist/domains/traces/components/span-data-panel-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 +3 -3
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-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 +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js +3 -2
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js +2 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-processor-attributes.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-processor-attributes.es.js +3 -3
- 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 +1 -1
- package/dist/domains/traces/components/span-timeline-row.es.js +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/span-type-legend.cjs.js +1 -1
- package/dist/domains/traces/components/span-type-legend.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +5 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +5 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js +3 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js +3 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +8 -16
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +8 -15
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js +2 -15
- 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 +2 -15
- 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 +26 -4
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js +26 -6
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.cjs.js +29 -24
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.es.js +30 -25
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js +45 -45
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js +47 -47
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace.cjs.js +2 -1
- package/dist/domains/traces/components/thread-trace.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-trace.es.js +4 -3
- package/dist/domains/traces/components/thread-trace.es.js.map +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js +43 -24
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-view-by-trace.es.js +46 -27
- package/dist/domains/traces/components/thread-view-by-trace.es.js.map +1 -1
- package/dist/domains/traces/components/thread-view-skeleton.cjs.js +28 -13
- package/dist/domains/traces/components/thread-view-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/thread-view-skeleton.es.js +28 -13
- package/dist/domains/traces/components/thread-view-skeleton.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.cjs.js +5 -5
- package/dist/domains/traces/components/timeline-name-col.cjs.js.map +1 -1
- package/dist/domains/traces/components/timeline-name-col.es.js +5 -5
- package/dist/domains/traces/components/timeline-name-col.es.js.map +1 -1
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +1 -1
- package/dist/domains/traces/components/timeline-timing-col.es.js +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +3 -3
- package/dist/domains/traces/components/trace-columns-menu.es.js +3 -3
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +72 -50
- 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 +72 -50
- 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-messages-panel.cjs.js +2 -16
- package/dist/domains/traces/components/trace-messages-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-messages-panel.es.js +3 -17
- package/dist/domains/traces/components/trace-messages-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-messages-skeleton.cjs.js +18 -15
- package/dist/domains/traces/components/trace-messages-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-messages-skeleton.es.js +18 -15
- package/dist/domains/traces/components/trace-messages-skeleton.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-panel.cjs.js +77 -66
- package/dist/domains/traces/components/trace-span-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-panel.es.js +78 -67
- package/dist/domains/traces/components/trace-span-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree-skeleton.cjs.js +11 -13
- package/dist/domains/traces/components/trace-span-tree-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree-skeleton.es.js +11 -13
- package/dist/domains/traces/components/trace-span-tree-skeleton.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 +2 -2
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-thread-item-view.es.js +2 -2
- package/dist/domains/traces/components/trace-thread-item-view.es.js.map +1 -1
- package/dist/domains/traces/components/trace-thread-panel.cjs.js +32 -21
- package/dist/domains/traces/components/trace-thread-panel.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-thread-panel.es.js +32 -21
- package/dist/domains/traces/components/trace-thread-panel.es.js.map +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js +2 -2
- package/dist/domains/traces/components/trace-time-range-chip.es.js +2 -2
- package/dist/domains/traces/components/traces-error-content.cjs.js +1 -1
- package/dist/domains/traces/components/traces-error-content.es.js +1 -1
- package/dist/domains/traces/components/traces-list-view.cjs.js +3 -3
- package/dist/domains/traces/components/traces-list-view.es.js +3 -3
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +2 -0
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js +2 -0
- package/dist/domains/traces/components/traces-page-skeleton.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-branch.cjs.js +0 -3
- package/dist/domains/traces/hooks/use-branch.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-branch.es.js +0 -3
- package/dist/domains/traces/hooks/use-branch.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-light-spans.cjs.js +0 -3
- package/dist/domains/traces/hooks/use-trace-light-spans.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-light-spans.es.js +0 -3
- package/dist/domains/traces/hooks/use-trace-light-spans.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-or-branch-spans.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-or-branch-spans.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-query.cjs.js +2 -0
- package/dist/domains/traces/hooks/use-trace-query.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-query.es.js +2 -0
- package/dist/domains/traces/hooks/use-trace-query.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-search.cjs.js +7 -2
- package/dist/domains/traces/hooks/use-trace-search.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-search.es.js +7 -2
- package/dist/domains/traces/hooks/use-trace-search.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-spans.cjs.js +1 -5
- package/dist/domains/traces/hooks/use-trace-spans.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-spans.es.js +1 -5
- package/dist/domains/traces/hooks/use-trace-spans.es.js.map +1 -1
- package/dist/domains/traces/utils/to-searchable-spans.cjs.js +0 -5
- package/dist/domains/traces/utils/to-searchable-spans.cjs.js.map +1 -1
- package/dist/domains/traces/utils/to-searchable-spans.es.js +1 -5
- package/dist/domains/traces/utils/to-searchable-spans.es.js.map +1 -1
- package/dist/domains/traces/utils.cjs.js +0 -1
- package/dist/domains/traces/utils.cjs.js.map +1 -1
- package/dist/domains/traces/utils.es.js +1 -1
- package/dist/domains/traces.cjs.js +0 -1
- package/dist/domains/traces.cjs.js.map +1 -1
- package/dist/domains/traces.es.js +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 +2 -2
- package/dist/domains/workflows/components/workflow-entity-header.es.js +2 -2
- package/dist/domains/workflows/components/workflow-step-detail.cjs.js +3 -3
- package/dist/domains/workflows/components/workflow-step-detail.es.js +3 -3
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.cjs.js +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 +3 -3
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js +3 -3
- 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 +2 -2
- package/dist/domains/workflows/runs/workflow-run-list.es.js +2 -2
- package/dist/domains/workflows/workflow/data/workflow-data-button.cjs.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-button.es.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.cjs.js +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/input/workflow-processor-input.cjs.js +2 -2
- package/dist/domains/workflows/workflow/input/workflow-processor-input.es.js +2 -2
- 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-mode-switch.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-mode-switch.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 +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js +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-nested-graph.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js +6 -5
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-run-data.es.js +5 -4
- package/dist/domains/workflows/workflow/workflow-run-data.es.js.map +1 -1
- 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 +3 -3
- package/dist/domains/workflows/workflow/workflow-run-header.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-status.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-status.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 +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-timeline.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger-header.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger-header.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-trigger.es.js +1 -1
- package/dist/domains/workspace/components/frontmatter.cjs.js +13 -0
- package/dist/domains/workspace/components/frontmatter.cjs.js.map +1 -0
- package/dist/domains/workspace/components/frontmatter.d.ts +2 -0
- package/dist/domains/workspace/components/frontmatter.es.js +9 -0
- package/dist/domains/workspace/components/frontmatter.es.js.map +1 -0
- package/dist/domains/workspace/components/mount-icon.cjs.js +42 -0
- package/dist/domains/workspace/components/mount-icon.cjs.js.map +1 -0
- package/dist/domains/workspace/components/mount-icon.d.ts +2 -0
- package/dist/domains/workspace/components/mount-icon.es.js +38 -0
- package/dist/domains/workspace/components/mount-icon.es.js.map +1 -0
- package/dist/domains/workspace/components/use-workspace-context.cjs.js +16 -0
- package/dist/domains/workspace/components/use-workspace-context.cjs.js.map +1 -0
- package/dist/domains/workspace/components/use-workspace-context.d.ts +2 -0
- package/dist/domains/workspace/components/use-workspace-context.es.js +11 -0
- package/dist/domains/workspace/components/use-workspace-context.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-active-file.cjs.js +72 -0
- package/dist/domains/workspace/components/workspace-active-file.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-active-file.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-active-file.es.js +67 -0
- package/dist/domains/workspace/components/workspace-active-file.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js +282 -0
- package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-add-skill-dialog.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js +278 -0
- package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-add-skill.cjs.js +48 -0
- package/dist/domains/workspace/components/workspace-add-skill.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-add-skill.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-add-skill.es.js +44 -0
- package/dist/domains/workspace/components/workspace-add-skill.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-context.cjs.js +88 -0
- package/dist/domains/workspace/components/workspace-context.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-context.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-context.es.js +84 -0
- package/dist/domains/workspace/components/workspace-context.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-create-directory.cjs.js +68 -0
- package/dist/domains/workspace/components/workspace-create-directory.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-create-directory.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-create-directory.es.js +64 -0
- package/dist/domains/workspace/components/workspace-create-directory.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-error.cjs.js +26 -0
- package/dist/domains/workspace/components/workspace-error.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-error.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-error.es.js +22 -0
- package/dist/domains/workspace/components/workspace-error.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js +27 -0
- package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-markdown-preview.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-markdown-preview.es.js +23 -0
- package/dist/domains/workspace/components/workspace-markdown-preview.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-parts.cjs.js +94 -0
- package/dist/domains/workspace/components/workspace-parts.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-parts.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-parts.es.js +84 -0
- package/dist/domains/workspace/components/workspace-parts.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-search.cjs.js +117 -0
- package/dist/domains/workspace/components/workspace-search.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-search.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-search.es.js +111 -0
- package/dist/domains/workspace/components/workspace-search.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-tree-view.cjs.js +34 -0
- package/dist/domains/workspace/components/workspace-tree-view.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-tree-view.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-tree-view.es.js +30 -0
- package/dist/domains/workspace/components/workspace-tree-view.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace-tree.cjs.js +245 -0
- package/dist/domains/workspace/components/workspace-tree.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace-tree.d.ts +2 -0
- package/dist/domains/workspace/components/workspace-tree.es.js +241 -0
- package/dist/domains/workspace/components/workspace-tree.es.js.map +1 -0
- package/dist/domains/workspace/components/workspace.cjs.js +25 -0
- package/dist/domains/workspace/components/workspace.cjs.js.map +1 -0
- package/dist/domains/workspace/components/workspace.d.ts +2 -0
- package/dist/domains/workspace/components/workspace.es.js +21 -0
- package/dist/domains/workspace/components/workspace.es.js.map +1 -0
- package/dist/domains/workspace/file-type.cjs.js +25 -0
- package/dist/domains/workspace/file-type.cjs.js.map +1 -0
- package/dist/domains/workspace/file-type.d.ts +2 -0
- package/dist/domains/workspace/file-type.es.js +17 -0
- package/dist/domains/workspace/file-type.es.js.map +1 -0
- package/dist/domains/workspace/hooks/use-skills-sh.cjs.js +72 -0
- package/dist/domains/workspace/hooks/use-skills-sh.cjs.js.map +1 -0
- package/dist/domains/workspace/hooks/use-skills-sh.d.ts +2 -0
- package/dist/domains/workspace/hooks/use-skills-sh.es.js +65 -0
- package/dist/domains/workspace/hooks/use-skills-sh.es.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-directory.cjs.js +21 -0
- package/dist/domains/workspace/hooks/use-workspace-directory.cjs.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-directory.d.ts +2 -0
- package/dist/domains/workspace/hooks/use-workspace-directory.es.js +16 -0
- package/dist/domains/workspace/hooks/use-workspace-directory.es.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-file-content.cjs.js +22 -0
- package/dist/domains/workspace/hooks/use-workspace-file-content.cjs.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-file-content.d.ts +2 -0
- package/dist/domains/workspace/hooks/use-workspace-file-content.es.js +18 -0
- package/dist/domains/workspace/hooks/use-workspace-file-content.es.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-search.cjs.js +53 -0
- package/dist/domains/workspace/hooks/use-workspace-search.cjs.js.map +1 -0
- package/dist/domains/workspace/hooks/use-workspace-search.d.ts +2 -0
- package/dist/domains/workspace/hooks/use-workspace-search.es.js +49 -0
- package/dist/domains/workspace/hooks/use-workspace-search.es.js.map +1 -0
- package/dist/domains/workspace/path.cjs.js +17 -0
- package/dist/domains/workspace/path.cjs.js.map +1 -0
- package/dist/domains/workspace/path.d.ts +2 -0
- package/dist/domains/workspace/path.es.js +10 -0
- package/dist/domains/workspace/path.es.js.map +1 -0
- package/dist/domains/workspace.cjs.js +24 -0
- package/dist/domains/workspace.cjs.js.map +1 -0
- package/dist/domains/workspace.d.ts +2 -0
- package/dist/domains/workspace.es.js +9 -0
- package/dist/domains/workspace.es.js.map +1 -0
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +2 -2
- package/dist/ee/signals/components/entity-index-compact-grid.es.js +2 -2
- package/dist/ee/signals/components/entity-index-list.cjs.js +4 -2
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +4 -2
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.cjs.js +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +4 -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 +4 -3
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
- package/dist/ee/signals/examples-pager.cjs.js +1 -1
- package/dist/ee/signals/examples-pager.es.js +1 -1
- package/dist/ee/signals/flow-card.cjs.js +1 -1
- package/dist/ee/signals/flow-card.es.js +1 -1
- package/dist/ee/signals/lifeline-row.cjs.js +1 -1
- package/dist/ee/signals/lifeline-row.es.js +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +1 -1
- package/dist/ee/signals/noise-detail-panel.es.js +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +4 -3
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +3 -2
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +3 -3
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +3 -3
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +3 -3
- package/dist/ee/signals/settings/trace-signal-settings.es.js +3 -3
- package/dist/ee/signals/signal-delta-column.cjs.js +1 -1
- package/dist/ee/signals/signal-delta-column.es.js +1 -1
- package/dist/ee/signals/signal-lifelines.cjs.js +1 -1
- package/dist/ee/signals/signal-lifelines.es.js +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 +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +1 -1
- package/dist/ee/signals/theme-compare.cjs.js +1 -1
- package/dist/ee/signals/theme-compare.es.js +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js +1 -1
- package/dist/ee/signals/theme-lifelines.es.js +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +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-details-panel.cjs.js +2 -1
- package/dist/ee/topics/components/topic-trace-details-panel.cjs.js.map +1 -1
- package/dist/ee/topics/components/topic-trace-details-panel.es.js +2 -1
- package/dist/ee/topics/components/topic-trace-details-panel.es.js.map +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +2 -2
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +2 -2
- package/dist/{entity-header-DEjkHoqj.cjs → entity-header-By57lpH8.cjs} +2 -2
- package/dist/{entity-header-DEjkHoqj.cjs.map → entity-header-By57lpH8.cjs.map} +1 -1
- package/dist/{entity-header-9qzr-3xQ.js → entity-header-DMjzE4Za.js} +2 -2
- package/dist/{entity-header-9qzr-3xQ.js.map → entity-header-DMjzE4Za.js.map} +1 -1
- package/dist/{field-BtvEQ68O.js → field-BiMIiq2Y.js} +3 -3
- package/dist/field-BiMIiq2Y.js.map +1 -0
- package/dist/{field-ip9xiOVa.cjs → field-BkeKcz_6.cjs} +3 -3
- package/dist/field-BkeKcz_6.cjs.map +1 -0
- package/dist/{field-error-id-4DYu4KZ2.cjs → field-error-id-4xiCVBJ_.cjs} +5 -5
- package/dist/field-error-id-4xiCVBJ_.cjs.map +1 -0
- package/dist/{field-error-id-BSQLcfHo.js → field-error-id-CSvLKtJE.js} +5 -5
- package/dist/field-error-id-CSvLKtJE.js.map +1 -0
- package/dist/{filter-bar-chip-Dmboyu1t.js → filter-bar-chip-CRejLco-.js} +2 -2
- package/dist/{filter-bar-chip-Dmboyu1t.js.map → filter-bar-chip-CRejLco-.js.map} +1 -1
- package/dist/{filter-bar-chip-BsWm7SQr.cjs → filter-bar-chip-Cr7kUN9G.cjs} +2 -2
- package/dist/{filter-bar-chip-BsWm7SQr.cjs.map → filter-bar-chip-Cr7kUN9G.cjs.map} +1 -1
- package/dist/hooks/use-fluid-hover.cjs.js +11 -0
- package/dist/hooks/use-fluid-hover.cjs.js.map +1 -1
- package/dist/hooks/use-fluid-hover.es.js +11 -0
- package/dist/hooks/use-fluid-hover.es.js.map +1 -1
- package/dist/{horizontal-bars-BSRESJsp.js → horizontal-bars-BL-GHeFh.js} +2 -2
- package/dist/{horizontal-bars-BSRESJsp.js.map → horizontal-bars-BL-GHeFh.js.map} +1 -1
- package/dist/{horizontal-bars-DRD7JkHL.cjs → horizontal-bars-D-rFCRbH.cjs} +2 -2
- package/dist/{horizontal-bars-DRD7JkHL.cjs.map → horizontal-bars-D-rFCRbH.cjs.map} +1 -1
- package/dist/icons/FileIcon.cjs.js +18 -0
- package/dist/icons/FileIcon.cjs.js.map +1 -0
- package/dist/icons/FileIcon.d.ts +2 -0
- package/dist/icons/FileIcon.es.js +14 -0
- package/dist/icons/FileIcon.es.js.map +1 -0
- package/dist/icons/SearchIcon.cjs.js +18 -0
- package/dist/icons/SearchIcon.cjs.js.map +1 -0
- package/dist/icons/SearchIcon.d.ts +2 -0
- package/dist/icons/SearchIcon.es.js +14 -0
- package/dist/icons/SearchIcon.es.js.map +1 -0
- package/dist/icons/TrashIcon.cjs.js +18 -0
- package/dist/icons/TrashIcon.cjs.js.map +1 -0
- package/dist/icons/TrashIcon.d.ts +2 -0
- package/dist/icons/TrashIcon.es.js +14 -0
- package/dist/icons/TrashIcon.es.js.map +1 -0
- package/dist/{input-group-wzirc-1k.js → input-group-D1XvzgI2.js} +10 -7
- package/dist/input-group-D1XvzgI2.js.map +1 -0
- package/dist/{input-group-BgCXLSRV.cjs → input-group-DBRe9V5t.cjs} +11 -6
- package/dist/input-group-DBRe9V5t.cjs.map +1 -0
- package/dist/layout/tabbed-container.cjs.js +11 -9
- package/dist/layout/tabbed-container.cjs.js.map +1 -1
- package/dist/layout/tabbed-container.es.js +9 -7
- package/dist/layout/tabbed-container.es.js.map +1 -1
- 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/boolean-field.cjs.js +1 -1
- package/dist/lib/form/components/boolean-field.es.js +1 -1
- package/dist/lib/form/components/error-message.cjs.js +1 -1
- package/dist/lib/form/components/error-message.es.js +1 -1
- package/dist/lib/form/components/field-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/field-wrapper.es.js +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js +1 -1
- package/dist/lib/form/components/object-wrapper.es.js +1 -1
- package/dist/lib/form/components/select-field.cjs.js +1 -1
- package/dist/lib/form/components/select-field.es.js +1 -1
- package/dist/lib/form/components/union-field.cjs.js +1 -1
- package/dist/lib/form/components/union-field.es.js +1 -1
- package/dist/{list-search-CTGQJCh1.cjs → list-search-CCHN2OMB.cjs} +2 -2
- package/dist/{list-search-CTGQJCh1.cjs.map → list-search-CCHN2OMB.cjs.map} +1 -1
- package/dist/{list-search-CmOCmTwL.js → list-search-DcACBmNB.js} +2 -2
- package/dist/{list-search-CmOCmTwL.js.map → list-search-DcACBmNB.js.map} +1 -1
- package/dist/{logs-data-list-B9CAqAHD.cjs → logs-data-list-BITdSK12.cjs} +4 -4
- package/dist/{logs-data-list-B9CAqAHD.cjs.map → logs-data-list-BITdSK12.cjs.map} +1 -1
- package/dist/{logs-data-list-DfzdzgXB.js → logs-data-list-PlH4_hgq.js} +4 -4
- package/dist/{logs-data-list-DfzdzgXB.js.map → logs-data-list-PlH4_hgq.js.map} +1 -1
- package/dist/{markdown-renderer-DPwN7Vtm.cjs → markdown-renderer-DRo-Hcuu.cjs} +2 -2
- package/dist/{markdown-renderer-DPwN7Vtm.cjs.map → markdown-renderer-DRo-Hcuu.cjs.map} +1 -1
- package/dist/{markdown-renderer-zvB6a8uj.js → markdown-renderer-XfWPF-B7.js} +2 -2
- package/dist/{markdown-renderer-zvB6a8uj.js.map → markdown-renderer-XfWPF-B7.js.map} +1 -1
- package/dist/{message-C1c5oZE7.cjs → message-DGDmsmOT.cjs} +2 -2
- package/dist/{message-C1c5oZE7.cjs.map → message-DGDmsmOT.cjs.map} +1 -1
- package/dist/{message-C7hocqft.js → message-DoxVrgBX.js} +2 -2
- package/dist/{message-C7hocqft.js.map → message-DoxVrgBX.js.map} +1 -1
- package/dist/{metrics-card-C1rTkbcn.js → metrics-card-DFEWxFkJ.js} +3 -3
- package/dist/{metrics-card-C1rTkbcn.js.map → metrics-card-DFEWxFkJ.js.map} +1 -1
- package/dist/{metrics-card-D7J9JDgn.cjs → metrics-card-xX9SHUpB.cjs} +3 -3
- package/dist/{metrics-card-D7J9JDgn.cjs.map → metrics-card-xX9SHUpB.cjs.map} +1 -1
- package/dist/{metrics-kpi-card-1hbihR2T.cjs → metrics-kpi-card-9L0j_oGY.cjs} +5 -14
- package/dist/metrics-kpi-card-9L0j_oGY.cjs.map +1 -0
- package/dist/{metrics-kpi-card-CiB88L41.js → metrics-kpi-card-DxcLqbDU.js} +5 -14
- package/dist/metrics-kpi-card-DxcLqbDU.js.map +1 -0
- package/dist/{metrics-line-chart-C3UMBQ38.js → metrics-line-chart-C9_EMuHK.js} +2 -2
- package/dist/{metrics-line-chart-C3UMBQ38.js.map → metrics-line-chart-C9_EMuHK.js.map} +1 -1
- package/dist/{metrics-line-chart-CjJxBbM-.cjs → metrics-line-chart-R-T_jyeP.cjs} +2 -2
- package/dist/{metrics-line-chart-CjJxBbM-.cjs.map → metrics-line-chart-R-T_jyeP.cjs.map} +1 -1
- package/dist/{metrics-line-chart-tooltip-DiXCgpik.cjs → metrics-line-chart-tooltip-BoG8nbkO.cjs} +2 -2
- package/dist/{metrics-line-chart-tooltip-DiXCgpik.cjs.map → metrics-line-chart-tooltip-BoG8nbkO.cjs.map} +1 -1
- package/dist/{metrics-line-chart-tooltip-mZXPH1yH.js → metrics-line-chart-tooltip-C3WAk3DN.js} +2 -2
- package/dist/{metrics-line-chart-tooltip-mZXPH1yH.js.map → metrics-line-chart-tooltip-C3WAk3DN.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 +2 -2
- package/dist/new/settings.es.js +2 -2
- package/dist/new/sidebar.cjs.js +1 -1
- package/dist/new/sidebar.es.js +1 -1
- package/dist/{notification-activity-CFR_b8eA.js → notification-activity-BDoleJAA.js} +4 -4
- package/dist/{notification-activity-CFR_b8eA.js.map → notification-activity-BDoleJAA.js.map} +1 -1
- package/dist/{notification-activity-Dk50wcE4.cjs → notification-activity-C_vZiswj.cjs} +4 -4
- package/dist/{notification-activity-Dk50wcE4.cjs.map → notification-activity-C_vZiswj.cjs.map} +1 -1
- package/dist/{page-header-DIS8V2TK.js → page-header-D5a7qrVc.js} +2 -2
- package/dist/{page-header-DIS8V2TK.js.map → page-header-D5a7qrVc.js.map} +1 -1
- package/dist/{page-header-C1WiOrTE.cjs → page-header-Dc2KSbnw.cjs} +2 -2
- package/dist/{page-header-C1WiOrTE.cjs.map → page-header-Dc2KSbnw.cjs.map} +1 -1
- package/dist/{plan-D8rM4i4S.cjs → plan-BBf7ONr7.cjs} +7 -6
- package/dist/{plan-D8rM4i4S.cjs.map → plan-BBf7ONr7.cjs.map} +1 -1
- package/dist/{plan-BtOryfz5.js → plan-BgvXKTEM.js} +6 -5
- package/dist/{plan-BtOryfz5.js.map → plan-BgvXKTEM.js.map} +1 -1
- package/dist/primitives/form-element.cjs.js +1 -1
- package/dist/primitives/form-element.cjs.js.map +1 -1
- package/dist/primitives/form-element.es.js +1 -1
- package/dist/primitives/form-element.es.js.map +1 -1
- package/dist/{reasoning-activity-6VkIbDT4.js → reasoning-activity-DTmKCDZ-.js} +3 -3
- package/dist/{reasoning-activity-6VkIbDT4.js.map → reasoning-activity-DTmKCDZ-.js.map} +1 -1
- package/dist/{reasoning-activity-DaXMgyr3.cjs → reasoning-activity-Dc6VbiMr.cjs} +3 -3
- package/dist/{reasoning-activity-DaXMgyr3.cjs.map → reasoning-activity-Dc6VbiMr.cjs.map} +1 -1
- package/dist/{relative-timestamp-BlmN8Vjn.cjs → relative-timestamp-Nnwtw7Rp.cjs} +2 -2
- package/dist/{relative-timestamp-BlmN8Vjn.cjs.map → relative-timestamp-Nnwtw7Rp.cjs.map} +1 -1
- package/dist/{relative-timestamp-Cnp4VeLp.js → relative-timestamp-Rn8mAobA.js} +2 -2
- package/dist/{relative-timestamp-Cnp4VeLp.js.map → relative-timestamp-Rn8mAobA.js.map} +1 -1
- package/dist/resize/panel-group.cjs.js +14 -2
- package/dist/resize/panel-group.cjs.js.map +1 -1
- package/dist/resize/panel-group.es.js +14 -2
- package/dist/resize/panel-group.es.js.map +1 -1
- package/dist/{search-input-BKXiYeed.js → search-input-63Y1_wgA.js} +3 -3
- package/dist/{search-input-BKXiYeed.js.map → search-input-63Y1_wgA.js.map} +1 -1
- package/dist/{search-input-T0orZ7Jf.cjs → search-input-CBhT3N4z.cjs} +3 -3
- package/dist/{search-input-T0orZ7Jf.cjs.map → search-input-CBhT3N4z.cjs.map} +1 -1
- package/dist/{section-Byml9qxH.cjs → section-C5r-Mtxk.cjs} +3 -3
- package/dist/{section-Byml9qxH.cjs.map → section-C5r-Mtxk.cjs.map} +1 -1
- package/dist/{section-DTooysg2.js → section-DYrbH35K.js} +3 -3
- package/dist/{section-DTooysg2.js.map → section-DYrbH35K.js.map} +1 -1
- package/dist/{select--ArpXYDc.js → select-CWxcmE3F.js} +2 -2
- package/dist/select-CWxcmE3F.js.map +1 -0
- package/dist/{select-DJQYAVcm.cjs → select-KV77JIvp.cjs} +2 -2
- package/dist/select-KV77JIvp.cjs.map +1 -0
- package/dist/{settings-row-B0jGFpVw.js → settings-row-Dc6ECXjj.js} +2 -2
- package/dist/{settings-row-B0jGFpVw.js.map → settings-row-Dc6ECXjj.js.map} +1 -1
- package/dist/{settings-row-Dt4WnnRf.cjs → settings-row-UPZXTcx1.cjs} +2 -2
- package/dist/{settings-row-Dt4WnnRf.cjs.map → settings-row-UPZXTcx1.cjs.map} +1 -1
- package/dist/{side-dialog-lQUx6B_M.cjs → side-dialog-CFTgnDXu.cjs} +2 -2
- package/dist/{side-dialog-lQUx6B_M.cjs.map → side-dialog-CFTgnDXu.cjs.map} +1 -1
- package/dist/{side-dialog-DZJc85m3.js → side-dialog-yvAvCday.js} +2 -2
- package/dist/{side-dialog-DZJc85m3.js.map → side-dialog-yvAvCday.js.map} +1 -1
- package/dist/{signal-activity-byCTRP86.cjs → signal-activity-BI-DRdjw.cjs} +4 -4
- package/dist/{signal-activity-byCTRP86.cjs.map → signal-activity-BI-DRdjw.cjs.map} +1 -1
- package/dist/{signal-activity-DW2ExjIp.js → signal-activity-_ChAbNsW.js} +4 -4
- package/dist/{signal-activity-DW2ExjIp.js.map → signal-activity-_ChAbNsW.js.map} +1 -1
- package/dist/{span-payload-primitives-CGamdu2t.js → span-payload-primitives-188dDV5s.js} +3 -3
- package/dist/{span-payload-primitives-CGamdu2t.js.map → span-payload-primitives-188dDV5s.js.map} +1 -1
- package/dist/{span-payload-primitives-SkL3U9hR.cjs → span-payload-primitives-DrKJXIc3.cjs} +3 -3
- package/dist/{span-payload-primitives-SkL3U9hR.cjs.map → span-payload-primitives-DrKJXIc3.cjs.map} +1 -1
- package/dist/src/domains/traces/components/span-data-panel-view.d.ts +3 -1
- package/dist/src/domains/traces/components/thread-trace/index.d.ts +23 -20
- package/dist/src/domains/traces/components/thread-trace/thread-trace-details.d.ts +1 -1
- package/dist/src/domains/traces/components/thread-trace/thread-trace-messages.d.ts +5 -15
- package/dist/src/domains/traces/components/thread-trace/thread-trace-root.d.ts +2 -2
- package/dist/src/domains/traces/components/thread-trace/thread-trace-row.d.ts +17 -2
- package/dist/src/domains/traces/components/thread-trace/thread-trace-span-panel.d.ts +3 -3
- package/dist/src/domains/traces/components/thread-trace/thread-trace-spans.d.ts +3 -4
- package/dist/src/domains/traces/components/thread-view-skeleton.d.ts +10 -4
- package/dist/src/domains/traces/components/trace-data-panel-view.d.ts +10 -3
- package/dist/src/domains/traces/components/trace-data-panel-view.stories.d.ts +7 -5
- package/dist/src/domains/traces/components/trace-messages-panel.d.ts +2 -10
- package/dist/src/domains/traces/components/trace-messages-skeleton.d.ts +9 -6
- package/dist/src/domains/traces/components/trace-span-panel.d.ts +1 -1
- package/dist/src/domains/traces/components/trace-span-tree-skeleton.d.ts +4 -6
- package/dist/src/domains/traces/components/trace-thread-panel.d.ts +7 -5
- package/dist/src/domains/traces/hooks/use-branch.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-light-spans.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-or-branch-spans.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-query.d.ts +2 -0
- package/dist/src/domains/traces/hooks/use-trace-search.d.ts +11 -8
- package/dist/src/domains/traces/hooks/use-trace-spans.d.ts +1 -7
- package/dist/src/domains/traces/hooks/use-traces-list-source.d.ts +1 -0
- package/dist/src/domains/traces/utils/index.d.ts +1 -1
- package/dist/src/domains/traces/utils/to-searchable-spans.d.ts +2 -26
- package/dist/src/domains/workspace/components/frontmatter.d.ts +4 -0
- package/dist/src/domains/workspace/components/mount-icon.d.ts +6 -0
- package/dist/src/domains/workspace/components/use-workspace-context.d.ts +32 -0
- package/dist/src/domains/workspace/components/workspace-active-file.d.ts +13 -0
- package/dist/src/domains/workspace/components/workspace-add-skill-dialog.d.ts +39 -0
- package/dist/src/domains/workspace/components/workspace-add-skill.d.ts +10 -0
- package/dist/src/domains/workspace/components/workspace-context.d.ts +28 -0
- package/dist/src/domains/workspace/components/workspace-create-directory.d.ts +4 -0
- package/dist/src/domains/workspace/components/workspace-error.d.ts +5 -0
- package/dist/src/domains/workspace/components/workspace-markdown-preview.d.ts +4 -0
- package/dist/src/domains/workspace/components/workspace-parts.d.ts +25 -0
- package/dist/src/domains/workspace/components/workspace-search.d.ts +5 -0
- package/dist/src/domains/workspace/components/workspace-tree-view.d.ts +32 -0
- package/dist/src/domains/workspace/components/workspace-tree.d.ts +1 -0
- package/dist/src/domains/workspace/components/workspace.d.ts +18 -0
- package/dist/src/domains/workspace/file-type.d.ts +6 -0
- package/dist/src/domains/workspace/hooks/use-skills-sh.d.ts +51 -0
- package/dist/src/domains/workspace/hooks/use-workspace-directory.d.ts +17 -0
- package/dist/src/domains/workspace/hooks/use-workspace-file-content.d.ts +8 -0
- package/dist/src/domains/workspace/hooks/use-workspace-search.d.ts +11 -0
- package/dist/src/domains/workspace/index.d.ts +14 -0
- package/dist/src/domains/workspace/path.d.ts +6 -0
- package/dist/src/ds/components/Button/button.stories.d.ts +1 -0
- package/dist/src/ds/components/CollapsibleBox/collapsible-box.d.ts +5 -2
- package/dist/src/ds/components/CollapsibleBox/collapsible-box.stories.d.ts +1 -0
- package/dist/src/ds/components/Combobox/combobox-styles.d.ts +1 -1
- package/dist/src/ds/components/Command/command.stories.d.ts +1 -0
- package/dist/src/ds/components/InputGroup/input-group.d.ts +2 -0
- package/dist/src/ds/components/InputGroup/input-group.stories.d.ts +0 -1
- package/dist/src/ds/components/InputNumber/index.d.ts +1 -0
- package/dist/src/ds/components/InputNumber/input-number.d.ts +26 -0
- package/dist/src/ds/components/InputNumber/input-number.stories.d.ts +11 -0
- package/dist/src/ds/components/Tabs/tabs-context.d.ts +0 -1
- package/dist/src/ds/components/Tabs/tabs-list.d.ts +0 -7
- package/dist/src/ds/components/Tabs/tabs-root.d.ts +1 -1
- package/dist/src/ds/components/Tabs/tabs-tab.d.ts +3 -1
- package/dist/src/ds/components/Tabs/tabs.stories.d.ts +0 -1
- package/dist/src/ds/components/ThinkingLevel/index.d.ts +4 -0
- package/dist/src/ds/components/ThinkingLevel/thinking-level-picker.d.ts +17 -0
- package/dist/src/ds/components/ThinkingLevel/thinking-level-ramp.d.ts +9 -0
- package/dist/src/ds/components/ThinkingLevel/thinking-level-slider.d.ts +13 -0
- package/dist/src/ds/components/ThinkingLevel/thinking-level.stories.d.ts +14 -0
- package/dist/src/ds/components/ThinkingLevel/use-thinking-level-stop.d.ts +29 -0
- package/dist/src/ds/components/ai/transcript-divider/stories/transcript-divider.stories.d.ts +3 -0
- package/dist/src/ds/components/ai/transcript-divider/transcript-divider.d.ts +6 -1
- package/dist/src/ds/icons/FileIcon.d.ts +2 -0
- package/dist/src/ds/icons/SearchIcon.d.ts +2 -0
- package/dist/src/ds/icons/TrashIcon.d.ts +2 -0
- package/dist/src/ds/icons/index.d.ts +3 -0
- package/dist/src/ds/layout/tabbed-container/tabbed-container-root.d.ts +2 -1
- package/dist/src/ds/tokens/fonts.d.ts +1 -1
- package/dist/src/lib/resize/panel-group.d.ts +3 -1
- package/dist/style.css +270 -121
- package/dist/{tabs-content-DnscxcLI.cjs → tabs-content-DfH1hhpU.cjs} +3 -3
- package/dist/{tabs-content-DnscxcLI.cjs.map → tabs-content-DfH1hhpU.cjs.map} +1 -1
- package/dist/{tabs-content-CwbkTutf.js → tabs-content-OWF8un_n.js} +2 -2
- package/dist/{tabs-content-CwbkTutf.js.map → tabs-content-OWF8un_n.js.map} +1 -1
- package/dist/tabs-context-Cbuw7i0u.js +7 -0
- package/dist/tabs-context-Cbuw7i0u.js.map +1 -0
- package/dist/tabs-context-pnspPkI-.cjs +10 -0
- package/dist/tabs-context-pnspPkI-.cjs.map +1 -0
- package/dist/{tabs-root-C-ePF1y9.cjs → tabs-list-Tqj36HIL.cjs} +10 -43
- package/dist/tabs-list-Tqj36HIL.cjs.map +1 -0
- package/dist/{tabs-root-lrZZ3KwH.js → tabs-list-tLx5fgP0.js} +12 -44
- package/dist/tabs-list-tLx5fgP0.js.map +1 -0
- package/dist/tabs-root-BbzhUZl4.js +40 -0
- package/dist/tabs-root-BbzhUZl4.js.map +1 -0
- package/dist/tabs-root-Hkt7A6oq.cjs +42 -0
- package/dist/tabs-root-Hkt7A6oq.cjs.map +1 -0
- package/dist/tabs-root.css +0 -70
- package/dist/{tabs-tab-BmIBFifi.cjs → tabs-tab-C-C2vX-D.cjs} +10 -7
- package/dist/tabs-tab-C-C2vX-D.cjs.map +1 -0
- package/dist/{tabs-tab-DoPSW-1s.js → tabs-tab-ClLIOGiC.js} +11 -6
- package/dist/tabs-tab-ClLIOGiC.js.map +1 -0
- package/dist/{text-and-icon-CuBm-Wjm.js → text-and-icon-Bo6NLLBl.js} +2 -2
- package/dist/{text-and-icon-CuBm-Wjm.js.map → text-and-icon-Bo6NLLBl.js.map} +1 -1
- package/dist/{text-and-icon-4eVhfmbb.cjs → text-and-icon-CvakH4YL.cjs} +2 -2
- package/dist/{text-and-icon-4eVhfmbb.cjs.map → text-and-icon-CvakH4YL.cjs.map} +1 -1
- package/dist/{thread-list-BTpezI4f.js → thread-list-D2zSEQWK.js} +2 -2
- package/dist/{thread-list-BTpezI4f.js.map → thread-list-D2zSEQWK.js.map} +1 -1
- package/dist/{thread-list-Drcptd4x.cjs → thread-list-DKBwiGfX.cjs} +2 -2
- package/dist/{thread-list-Drcptd4x.cjs.map → thread-list-DKBwiGfX.cjs.map} +1 -1
- package/dist/{time-picker-KE48KlpH.cjs → time-picker-Uz05Y0qU.cjs} +2 -2
- package/dist/{time-picker-KE48KlpH.cjs.map → time-picker-Uz05Y0qU.cjs.map} +1 -1
- package/dist/{time-picker-DRSAkFuj.js → time-picker-eQkyOP4X.js} +2 -2
- package/dist/{time-picker-DRSAkFuj.js.map → time-picker-eQkyOP4X.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-call-arguments-CtUKj7IB.js → tool-call-arguments-Cm5qfywz.js} +2 -2
- package/dist/{tool-call-arguments-CtUKj7IB.js.map → tool-call-arguments-Cm5qfywz.js.map} +1 -1
- package/dist/{tool-call-arguments-BemKsB9v.cjs → tool-call-arguments-cML2FFBk.cjs} +2 -2
- package/dist/{tool-call-arguments-BemKsB9v.cjs.map → tool-call-arguments-cML2FFBk.cjs.map} +1 -1
- package/dist/{tool-call-group-D_ioE9hT.cjs → tool-call-group-CALHT0zr.cjs} +3 -3
- package/dist/{tool-call-group-D_ioE9hT.cjs.map → tool-call-group-CALHT0zr.cjs.map} +1 -1
- package/dist/{tool-call-group-ZuYxpyDs.js → tool-call-group-UoMplOy2.js} +3 -3
- package/dist/{tool-call-group-ZuYxpyDs.js.map → tool-call-group-UoMplOy2.js.map} +1 -1
- package/dist/{traces-data-list-Dd8vMPQK.cjs → traces-data-list-D-wz-Je3.cjs} +5 -5
- package/dist/{traces-data-list-Dd8vMPQK.cjs.map → traces-data-list-D-wz-Je3.cjs.map} +1 -1
- package/dist/{traces-data-list-Fvl8mlih.js → traces-data-list-DmCgejAx.js} +5 -5
- package/dist/{traces-data-list-Fvl8mlih.js.map → traces-data-list-DmCgejAx.js.map} +1 -1
- package/dist/transcript-divider-273Bsdjs.cjs +30 -0
- package/dist/transcript-divider-273Bsdjs.cjs.map +1 -0
- package/dist/transcript-divider-CPIo8NUj.js +28 -0
- package/dist/transcript-divider-CPIo8NUj.js.map +1 -0
- package/dist/tree-DOVwqiSm.cjs +493 -0
- package/dist/tree-DOVwqiSm.cjs.map +1 -0
- package/dist/tree-DixCN7B0.js +472 -0
- package/dist/tree-DixCN7B0.js.map +1 -0
- package/dist/use-collapsible-box-B0t2_SvP.js +20 -0
- package/dist/use-collapsible-box-B0t2_SvP.js.map +1 -0
- package/dist/use-collapsible-box-BI80L4h_.cjs +23 -0
- package/dist/use-collapsible-box-BI80L4h_.cjs.map +1 -0
- package/dist/{use-workflow-graph-runtime-JQwLwNBD.js → use-workflow-graph-runtime-IZ-er4hs.js} +4 -4
- package/dist/{use-workflow-graph-runtime-JQwLwNBD.js.map → use-workflow-graph-runtime-IZ-er4hs.js.map} +1 -1
- package/dist/{use-workflow-graph-runtime-BNAtEa06.cjs → use-workflow-graph-runtime-t17K6Hkf.cjs} +4 -4
- package/dist/{use-workflow-graph-runtime-BNAtEa06.cjs.map → use-workflow-graph-runtime-t17K6Hkf.cjs.map} +1 -1
- package/dist/{workflow-condition-card-BjEAp0t6.cjs → workflow-condition-card-B_oDiQ6I.cjs} +3 -3
- package/dist/{workflow-condition-card-BjEAp0t6.cjs.map → workflow-condition-card-B_oDiQ6I.cjs.map} +1 -1
- package/dist/{workflow-condition-card-3J-As62x.js → workflow-condition-card-CLyskv_B.js} +3 -3
- package/dist/{workflow-condition-card-3J-As62x.js.map → workflow-condition-card-CLyskv_B.js.map} +1 -1
- package/dist/{workflow-data-edge-view-C4nbA2Fa.js → workflow-data-edge-view-JmkSlDp1.js} +2 -2
- package/dist/{workflow-data-edge-view-C4nbA2Fa.js.map → workflow-data-edge-view-JmkSlDp1.js.map} +1 -1
- package/dist/{workflow-data-edge-view-aHAZkZOH.cjs → workflow-data-edge-view-aNTgHQUk.cjs} +2 -2
- package/dist/{workflow-data-edge-view-aHAZkZOH.cjs.map → workflow-data-edge-view-aNTgHQUk.cjs.map} +1 -1
- package/dist/{workflow-debug-controls-tty6gLX2.js → workflow-debug-controls-CQc8ljAI.js} +3 -3
- package/dist/{workflow-debug-controls-tty6gLX2.js.map → workflow-debug-controls-CQc8ljAI.js.map} +1 -1
- package/dist/{workflow-debug-controls-VbxiluNZ.cjs → workflow-debug-controls-WXT05idC.cjs} +3 -3
- package/dist/{workflow-debug-controls-VbxiluNZ.cjs.map → workflow-debug-controls-WXT05idC.cjs.map} +1 -1
- package/dist/{workflow-edge-data-button-2aIkzgev.js → workflow-edge-data-button-B7bM7UqW.js} +2 -2
- package/dist/{workflow-edge-data-button-2aIkzgev.js.map → workflow-edge-data-button-B7bM7UqW.js.map} +1 -1
- package/dist/{workflow-edge-data-button-BFNO-TRL.cjs → workflow-edge-data-button-CHoNrfef.cjs} +2 -2
- package/dist/{workflow-edge-data-button-BFNO-TRL.cjs.map → workflow-edge-data-button-CHoNrfef.cjs.map} +1 -1
- package/package.json +10 -10
- package/theme/colors.css +1 -1
- package/theme/typography.css +19 -2
- package/dist/Badge-D3EctKQo.cjs.map +0 -1
- package/dist/Badge-DmOqFpXW.js.map +0 -1
- package/dist/Txt-BP1SRHmL.js.map +0 -1
- package/dist/Txt-DPmEpNbp.cjs.map +0 -1
- package/dist/combobox-styles-mbcWlNZQ.js.map +0 -1
- package/dist/combobox-styles-qL3FSgmU.cjs.map +0 -1
- package/dist/command-Bm0VcX7X.cjs.map +0 -1
- package/dist/command-DFin7kHN.js.map +0 -1
- package/dist/data-panel-CbomKGJt.js.map +0 -1
- package/dist/data-panel-o-QLWuFV.cjs.map +0 -1
- package/dist/field-BtvEQ68O.js.map +0 -1
- package/dist/field-error-id-4DYu4KZ2.cjs.map +0 -1
- package/dist/field-error-id-BSQLcfHo.js.map +0 -1
- package/dist/field-ip9xiOVa.cjs.map +0 -1
- package/dist/input-group-BgCXLSRV.cjs.map +0 -1
- package/dist/input-group-wzirc-1k.js.map +0 -1
- package/dist/metrics-kpi-card-1hbihR2T.cjs.map +0 -1
- package/dist/metrics-kpi-card-CiB88L41.js.map +0 -1
- package/dist/select--ArpXYDc.js.map +0 -1
- package/dist/select-DJQYAVcm.cjs.map +0 -1
- package/dist/tabs-root-C-ePF1y9.cjs.map +0 -1
- package/dist/tabs-root-lrZZ3KwH.js.map +0 -1
- package/dist/tabs-tab-BmIBFifi.cjs.map +0 -1
- package/dist/tabs-tab-DoPSW-1s.js.map +0 -1
- package/dist/use-collapsible-box-CCvsF_a9.js +0 -54
- package/dist/use-collapsible-box-CCvsF_a9.js.map +0 -1
- package/dist/use-collapsible-box-CbQOkokQ.cjs +0 -58
- package/dist/use-collapsible-box-CbQOkokQ.cjs.map +0 -1
|
@@ -3,13 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
const lucideReact = require('lucide-react');
|
|
6
7
|
const domains_traces_components_spanDataPanelView = require('./span-data-panel-view.cjs.js');
|
|
7
8
|
const domains_traces_components_traceDataPanel = require('./trace-data-panel.cjs.js');
|
|
8
9
|
const domains_traces_components_traceMessagesPanel = require('./trace-messages-panel.cjs.js');
|
|
9
10
|
const domains_traces_components_traceThreadContext = require('./trace-thread-context.cjs.js');
|
|
10
11
|
const domains_traces_components_traceThreadPanel = require('./trace-thread-panel.cjs.js');
|
|
11
12
|
const domains_traces_hooks_useSpanDetail = require('../hooks/use-span-detail.cjs.js');
|
|
13
|
+
const domains_traces_hooks_useThreadHasOtherTraces = require('../hooks/use-thread-has-other-traces.cjs.js');
|
|
12
14
|
const domains_traces_hooks_useTraceSpanNavigation = require('../hooks/use-trace-span-navigation.cjs.js');
|
|
15
|
+
const Button = require('../../../Button-CXhSUBxN.cjs');
|
|
13
16
|
const lib_framework = require('../../../lib/framework.cjs.js');
|
|
14
17
|
|
|
15
18
|
function getEntityHref(paths, entityType, entityId) {
|
|
@@ -64,78 +67,86 @@ function TraceSpanPanel({
|
|
|
64
67
|
const rootSpan = anchorSpanId ? spans?.find((s) => s.spanId === anchorSpanId) : spans?.find((s) => s.parentSpanId == null);
|
|
65
68
|
const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);
|
|
66
69
|
const threadId = domains_traces_components_traceThreadContext.getTraceThreadId(rootSpan, anchorSpanId);
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
+
const hasMessagesPanel = !!(traceId && showPartialThread && threadId);
|
|
71
|
+
const hasOtherTraces = domains_traces_hooks_useThreadHasOtherTraces.useThreadHasOtherTraces(hasMessagesPanel ? threadId : void 0);
|
|
72
|
+
const showFullThreadAction = hasMessagesPanel && hasOtherTraces && !!onFullThreadOpenChange;
|
|
73
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
74
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
75
|
+
domains_traces_components_traceDataPanel.TraceDataPanel,
|
|
70
76
|
{
|
|
77
|
+
traceId,
|
|
78
|
+
spans,
|
|
79
|
+
anchorSpanId,
|
|
80
|
+
entityHref,
|
|
81
|
+
usage,
|
|
82
|
+
isLoading: isLoadingSpans,
|
|
83
|
+
onClose,
|
|
84
|
+
onSpanSelect,
|
|
85
|
+
onSaveAsDatasetItem,
|
|
86
|
+
onAddTraceMocksToItem,
|
|
87
|
+
initialSpanId: initialSpanId ?? selectedSpanId,
|
|
88
|
+
onPrevious,
|
|
89
|
+
onNext,
|
|
90
|
+
placement: "traces-list",
|
|
91
|
+
LinkComponent: Link,
|
|
92
|
+
traceHref,
|
|
93
|
+
size,
|
|
94
|
+
depth,
|
|
95
|
+
headerSlot,
|
|
71
96
|
title,
|
|
72
|
-
|
|
97
|
+
showUnavailableFeaturesMsg,
|
|
98
|
+
spanView,
|
|
99
|
+
onSpanViewChange,
|
|
100
|
+
feedbackTabBadge,
|
|
101
|
+
feedbackTabSlot,
|
|
102
|
+
featuredSpanIds,
|
|
103
|
+
messagesPanelSlot: hasMessagesPanel ? /* @__PURE__ */ jsxRuntime.jsx(domains_traces_components_traceMessagesPanel.TraceMessagesPanel, { traceId, onHighlightSpans }) : void 0,
|
|
104
|
+
sideHeaderActions: showFullThreadAction ? ({ compact }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
105
|
+
Button.Button,
|
|
106
|
+
{
|
|
107
|
+
tooltip: compact ? "Open full thread" : void 0,
|
|
108
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessagesSquareIcon, {}),
|
|
109
|
+
variant: "ghost",
|
|
110
|
+
size: "sm",
|
|
111
|
+
className: "@max-[501px]:w-control-sm @max-[501px]:rounded-full @max-[501px]:px-0 @max-[501px]:[&>[data-slot=button-icon]]:ml-0",
|
|
112
|
+
onClick: () => onFullThreadOpenChange(true),
|
|
113
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "@max-[501px]:sr-only", children: "Open full thread" })
|
|
114
|
+
}
|
|
115
|
+
) : void 0,
|
|
116
|
+
scoresTabBadge,
|
|
117
|
+
scoresTabSlot,
|
|
118
|
+
spanPanelSlot: traceId && selectedSpanId ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
119
|
+
domains_traces_components_spanDataPanelView.SpanDataPanelView,
|
|
120
|
+
{
|
|
121
|
+
traceId,
|
|
122
|
+
spanId: selectedSpanId,
|
|
123
|
+
span: spanDetailData?.span,
|
|
124
|
+
isAnchor: anchorSpanId ? selectedSpanId === anchorSpanId : void 0,
|
|
125
|
+
isLoading: isLoadingSpanDetail,
|
|
126
|
+
onPrevious: handlePreviousSpan,
|
|
127
|
+
onNext: handleNextSpan,
|
|
128
|
+
onClose: () => onSpanSelect(void 0),
|
|
129
|
+
activeTab: spanActiveTab,
|
|
130
|
+
onTabChange: onSpanTabChange,
|
|
131
|
+
feedbackTabBadge: spanFeedbackTabBadge,
|
|
132
|
+
feedbackTabSlot: spanFeedbackTabSlot
|
|
133
|
+
}
|
|
134
|
+
) : null
|
|
135
|
+
}
|
|
136
|
+
),
|
|
137
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
138
|
+
domains_traces_components_traceThreadPanel.TraceThreadPanel,
|
|
139
|
+
{
|
|
140
|
+
open: !!(traceId && isFullThreadOpen && threadId),
|
|
141
|
+
depth: depth && depth > 1 ? 3 : 2,
|
|
142
|
+
threadId: threadId ?? "",
|
|
73
143
|
onOpenScore,
|
|
74
144
|
withQueryTrace,
|
|
75
145
|
withFeedback,
|
|
76
|
-
|
|
77
|
-
onClose
|
|
146
|
+
onClose: () => onFullThreadOpenChange?.(false)
|
|
78
147
|
}
|
|
79
|
-
)
|
|
80
|
-
}
|
|
81
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
82
|
-
domains_traces_components_traceDataPanel.TraceDataPanel,
|
|
83
|
-
{
|
|
84
|
-
traceId,
|
|
85
|
-
spans,
|
|
86
|
-
anchorSpanId,
|
|
87
|
-
entityHref,
|
|
88
|
-
usage,
|
|
89
|
-
isLoading: isLoadingSpans,
|
|
90
|
-
onClose,
|
|
91
|
-
onSpanSelect,
|
|
92
|
-
onSaveAsDatasetItem,
|
|
93
|
-
onAddTraceMocksToItem,
|
|
94
|
-
initialSpanId: initialSpanId ?? selectedSpanId,
|
|
95
|
-
onPrevious,
|
|
96
|
-
onNext,
|
|
97
|
-
placement: "traces-list",
|
|
98
|
-
LinkComponent: Link,
|
|
99
|
-
traceHref,
|
|
100
|
-
size,
|
|
101
|
-
depth,
|
|
102
|
-
headerSlot,
|
|
103
|
-
title,
|
|
104
|
-
showUnavailableFeaturesMsg,
|
|
105
|
-
spanView,
|
|
106
|
-
onSpanViewChange,
|
|
107
|
-
feedbackTabBadge,
|
|
108
|
-
feedbackTabSlot,
|
|
109
|
-
featuredSpanIds,
|
|
110
|
-
messagesPanelSlot: traceId && showPartialThread && threadId ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
111
|
-
domains_traces_components_traceMessagesPanel.TraceMessagesPanel,
|
|
112
|
-
{
|
|
113
|
-
traceId,
|
|
114
|
-
threadId,
|
|
115
|
-
onViewFullThread: onFullThreadOpenChange ? () => onFullThreadOpenChange(true) : void 0,
|
|
116
|
-
onHighlightSpans
|
|
117
|
-
}
|
|
118
|
-
) : void 0,
|
|
119
|
-
scoresTabBadge,
|
|
120
|
-
scoresTabSlot,
|
|
121
|
-
spanPanelSlot: traceId && selectedSpanId ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
122
|
-
domains_traces_components_spanDataPanelView.SpanDataPanelView,
|
|
123
|
-
{
|
|
124
|
-
traceId,
|
|
125
|
-
spanId: selectedSpanId,
|
|
126
|
-
span: spanDetailData?.span,
|
|
127
|
-
isAnchor: anchorSpanId ? selectedSpanId === anchorSpanId : void 0,
|
|
128
|
-
isLoading: isLoadingSpanDetail,
|
|
129
|
-
onPrevious: handlePreviousSpan,
|
|
130
|
-
onNext: handleNextSpan,
|
|
131
|
-
activeTab: spanActiveTab,
|
|
132
|
-
onTabChange: onSpanTabChange,
|
|
133
|
-
feedbackTabBadge: spanFeedbackTabBadge,
|
|
134
|
-
feedbackTabSlot: spanFeedbackTabSlot
|
|
135
|
-
}
|
|
136
|
-
) : null
|
|
137
|
-
}
|
|
138
|
-
);
|
|
148
|
+
)
|
|
149
|
+
] });
|
|
139
150
|
}
|
|
140
151
|
|
|
141
152
|
exports.TraceSpanPanel = TraceSpanPanel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-span-panel.cjs.js","sources":["../../../../src/domains/traces/components/trace-span-panel.tsx"],"sourcesContent":["import type { ComponentProps, ReactNode } from 'react';\nimport { SpanDataPanelView } from '@/domains/traces/components/span-data-panel-view';\nimport { TraceDataPanel } from '@/domains/traces/components/trace-data-panel';\nimport type { TraceDataPanelView } from '@/domains/traces/components/trace-data-panel-view';\nimport { TraceMessagesPanel } from '@/domains/traces/components/trace-messages-panel';\nimport { getTraceThreadId } from '@/domains/traces/components/trace-thread-context';\nimport { TraceThreadPanel } from '@/domains/traces/components/trace-thread-panel';\nimport { useSpanDetail } from '@/domains/traces/hooks/use-span-detail';\nimport { useTraceSpanNavigation } from '@/domains/traces/hooks/use-trace-span-navigation';\nimport { useLinkComponent } from '@/lib/framework';\nimport type { LinkComponentPaths } from '@/lib/framework';\n\ntype TraceDataPanelViewProps = ComponentProps<typeof TraceDataPanelView>;\n\nfunction getEntityHref(\n paths: LinkComponentPaths,\n entityType: string | null | undefined,\n entityId: string | null | undefined,\n) {\n if (!entityId || !entityType) return undefined;\n const normalizedEntityType = entityType.toLowerCase();\n if (normalizedEntityType.includes('workflow')) return paths.workflowLink(entityId) || undefined;\n if (normalizedEntityType.includes('agent')) return paths.agentLink(entityId) || undefined;\n return undefined;\n}\ntype SpanDataPanelViewProps = ComponentProps<typeof SpanDataPanelView>;\n\nexport interface TraceSpanPanelProps {\n /** Keep the panel mounted and pass `undefined` to close it, so the drawer animates out. */\n traceId?: string;\n /** Spans returned by `useTraceOrBranchSpans` — the page owns the fetch, the panel renders it. */\n spans: TraceDataPanelViewProps['spans'];\n isLoadingSpans: boolean;\n /** Controlled span selection (URL state on the traces page, local state in the chat aside). */\n selectedSpanId: string | null;\n onSpanSelect: (spanId: string | undefined) => void;\n onClose: () => void;\n\n // Trace-panel pass-through.\n anchorSpanId?: string;\n initialSpanId?: string | null;\n onPrevious?: () => void;\n onNext?: () => void;\n onSaveAsDatasetItem?: TraceDataPanelViewProps['onSaveAsDatasetItem'];\n onAddTraceMocksToItem?: TraceDataPanelViewProps['onAddTraceMocksToItem'];\n feedbackTabBadge?: ReactNode;\n feedbackTabSlot?: TraceDataPanelViewProps['feedbackTabSlot'];\n /** Enables the \"Messages\" column (reconstructed turn) when the displayed root is a complete agent trace with a thread id. */\n showPartialThread?: boolean;\n /** Span ids featured in the timeline (non-featured spans are faded). */\n featuredSpanIds?: string[];\n /** Called with the span ids behind a reconstructed message when the user asks to highlight them. */\n onHighlightSpans?: (spanIds: string[]) => void;\n /** When true, the whole panel shows the trace's thread (every turn) instead of the trace timeline. */\n isFullThreadOpen?: boolean;\n /** Enables the in-place \"Open full thread\" swap; without it the action falls back to a link. */\n onFullThreadOpenChange?: (open: boolean) => void;\n /** Full-thread view: lists through the trace-query API; `false` falls back to `listTracesLight`. */\n withQueryTrace: boolean;\n /** Full-thread view: shows the per-trace Feedback tab. */\n withFeedback: boolean;\n /** Full-thread view: opens a score of one of the thread's traces (the app owns routing). */\n onOpenScore: (traceId: string, scoreId: string) => void;\n scoresTabBadge?: ReactNode;\n scoresTabSlot?: TraceDataPanelViewProps['scoresTabSlot'];\n usage?: TraceDataPanelViewProps['usage'];\n traceHref?: string;\n /** Drawer width; defaults to `wide`. */\n size?: TraceDataPanelViewProps['size'];\n /** Sibling-drawer elevation (see `DataPanel`). */\n depth?: TraceDataPanelViewProps['depth'];\n /** Rendered inside the drawer above the trace header (e.g. feedback context). */\n headerSlot?: ReactNode;\n /** Accessible drawer name; defaults to the trace id. */\n title?: string;\n showUnavailableFeaturesMsg?: TraceDataPanelViewProps['showUnavailableFeaturesMsg'];\n spanView?: TraceDataPanelViewProps['spanView'];\n onSpanViewChange?: TraceDataPanelViewProps['onSpanViewChange'];\n\n // Span-panel pass-through.\n spanActiveTab?: string;\n onSpanTabChange?: (tab: string) => void;\n spanFeedbackTabBadge?: ReactNode;\n spanFeedbackTabSlot?: SpanDataPanelViewProps['feedbackTabSlot'];\n}\n\n/**\n * Shared trace → span drilldown drawer: `TraceDataPanel` with a nested `SpanDataPanelView`.\n * Encapsulates the span-detail fetch and prev/next span navigation that the traces page\n * and the agent chat traces aside used to duplicate.\n */\nexport function TraceSpanPanel({\n traceId,\n spans,\n isLoadingSpans,\n selectedSpanId,\n onSpanSelect,\n onClose,\n anchorSpanId,\n initialSpanId,\n onPrevious,\n onNext,\n onSaveAsDatasetItem,\n onAddTraceMocksToItem,\n feedbackTabBadge,\n feedbackTabSlot,\n showPartialThread,\n featuredSpanIds,\n onHighlightSpans,\n isFullThreadOpen,\n onFullThreadOpenChange,\n withQueryTrace,\n withFeedback,\n onOpenScore,\n scoresTabBadge,\n scoresTabSlot,\n usage,\n traceHref,\n size,\n depth,\n headerSlot,\n title,\n showUnavailableFeaturesMsg,\n spanView,\n onSpanViewChange,\n spanActiveTab,\n onSpanTabChange,\n spanFeedbackTabBadge,\n spanFeedbackTabSlot,\n}: TraceSpanPanelProps) {\n const { data: spanDetailData, isLoading: isLoadingSpanDetail } = useSpanDetail(traceId, selectedSpanId ?? '');\n const { handlePreviousSpan, handleNextSpan } = useTraceSpanNavigation(spans, selectedSpanId, onSpanSelect);\n const { Link, paths } = useLinkComponent();\n\n // The trace summary links the entity to its page; the app's link provider owns the routes.\n const rootSpan = anchorSpanId\n ? spans?.find(s => s.spanId === anchorSpanId)\n : spans?.find(s => s.parentSpanId == null);\n const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);\n const threadId = getTraceThreadId(rootSpan, anchorSpanId);\n\n if (traceId && isFullThreadOpen && threadId) {\n return (\n <TraceThreadPanel\n title={title}\n threadId={threadId}\n onOpenScore={onOpenScore}\n withQueryTrace={withQueryTrace}\n withFeedback={withFeedback}\n onBack={() => onFullThreadOpenChange?.(false)}\n onClose={onClose}\n />\n );\n }\n\n return (\n <TraceDataPanel\n traceId={traceId}\n spans={spans}\n anchorSpanId={anchorSpanId}\n entityHref={entityHref}\n usage={usage}\n isLoading={isLoadingSpans}\n onClose={onClose}\n onSpanSelect={onSpanSelect}\n onSaveAsDatasetItem={onSaveAsDatasetItem}\n onAddTraceMocksToItem={onAddTraceMocksToItem}\n initialSpanId={initialSpanId ?? selectedSpanId}\n onPrevious={onPrevious}\n onNext={onNext}\n placement=\"traces-list\"\n LinkComponent={Link}\n traceHref={traceHref}\n size={size}\n depth={depth}\n headerSlot={headerSlot}\n title={title}\n showUnavailableFeaturesMsg={showUnavailableFeaturesMsg}\n spanView={spanView}\n onSpanViewChange={onSpanViewChange}\n feedbackTabBadge={feedbackTabBadge}\n feedbackTabSlot={feedbackTabSlot}\n featuredSpanIds={featuredSpanIds}\n messagesPanelSlot={\n traceId && showPartialThread && threadId ? (\n <TraceMessagesPanel\n traceId={traceId}\n threadId={threadId}\n onViewFullThread={onFullThreadOpenChange ? () => onFullThreadOpenChange(true) : undefined}\n onHighlightSpans={onHighlightSpans}\n />\n ) : undefined\n }\n scoresTabBadge={scoresTabBadge}\n scoresTabSlot={scoresTabSlot}\n spanPanelSlot={\n traceId && selectedSpanId ? (\n <SpanDataPanelView\n traceId={traceId}\n spanId={selectedSpanId}\n span={spanDetailData?.span}\n isAnchor={anchorSpanId ? selectedSpanId === anchorSpanId : undefined}\n isLoading={isLoadingSpanDetail}\n onPrevious={handlePreviousSpan}\n onNext={handleNextSpan}\n activeTab={spanActiveTab}\n onTabChange={onSpanTabChange}\n feedbackTabBadge={spanFeedbackTabBadge}\n feedbackTabSlot={spanFeedbackTabSlot}\n />\n ) : null\n }\n />\n );\n}\n"],"names":["useSpanDetail","useTraceSpanNavigation","useLinkComponent","getTraceThreadId","jsx","TraceThreadPanel","TraceDataPanel","TraceMessagesPanel","SpanDataPanelView"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace-span-panel.cjs.js","sources":["../../../../src/domains/traces/components/trace-span-panel.tsx"],"sourcesContent":["import { MessagesSquareIcon } from 'lucide-react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport { SpanDataPanelView } from '@/domains/traces/components/span-data-panel-view';\nimport { TraceDataPanel } from '@/domains/traces/components/trace-data-panel';\nimport type { TraceDataPanelView } from '@/domains/traces/components/trace-data-panel-view';\nimport { TraceMessagesPanel } from '@/domains/traces/components/trace-messages-panel';\nimport { getTraceThreadId } from '@/domains/traces/components/trace-thread-context';\nimport { TraceThreadPanel } from '@/domains/traces/components/trace-thread-panel';\nimport { useSpanDetail } from '@/domains/traces/hooks/use-span-detail';\nimport { useThreadHasOtherTraces } from '@/domains/traces/hooks/use-thread-has-other-traces';\nimport { useTraceSpanNavigation } from '@/domains/traces/hooks/use-trace-span-navigation';\nimport { Button } from '@/ds/components/Button';\nimport { useLinkComponent } from '@/lib/framework';\nimport type { LinkComponentPaths } from '@/lib/framework';\n\ntype TraceDataPanelViewProps = ComponentProps<typeof TraceDataPanelView>;\n\nfunction getEntityHref(\n paths: LinkComponentPaths,\n entityType: string | null | undefined,\n entityId: string | null | undefined,\n) {\n if (!entityId || !entityType) return undefined;\n const normalizedEntityType = entityType.toLowerCase();\n if (normalizedEntityType.includes('workflow')) return paths.workflowLink(entityId) || undefined;\n if (normalizedEntityType.includes('agent')) return paths.agentLink(entityId) || undefined;\n return undefined;\n}\ntype SpanDataPanelViewProps = ComponentProps<typeof SpanDataPanelView>;\n\nexport interface TraceSpanPanelProps {\n /** Keep the panel mounted and pass `undefined` to close it, so the drawer animates out. */\n traceId?: string;\n /** Spans returned by `useTraceOrBranchSpans` — the page owns the fetch, the panel renders it. */\n spans: TraceDataPanelViewProps['spans'];\n isLoadingSpans: boolean;\n /** Controlled span selection (URL state on the traces page, local state in the chat aside). */\n selectedSpanId: string | null;\n onSpanSelect: (spanId: string | undefined) => void;\n onClose: () => void;\n\n // Trace-panel pass-through.\n anchorSpanId?: string;\n initialSpanId?: string | null;\n onPrevious?: () => void;\n onNext?: () => void;\n onSaveAsDatasetItem?: TraceDataPanelViewProps['onSaveAsDatasetItem'];\n onAddTraceMocksToItem?: TraceDataPanelViewProps['onAddTraceMocksToItem'];\n feedbackTabBadge?: ReactNode;\n feedbackTabSlot?: TraceDataPanelViewProps['feedbackTabSlot'];\n /** Enables the \"Messages\" column (reconstructed turn) when the displayed root is a complete agent trace with a thread id. */\n showPartialThread?: boolean;\n /** Span ids featured in the timeline (non-featured spans are faded). */\n featuredSpanIds?: string[];\n /** Called with the span ids behind a reconstructed message when the user asks to highlight them. */\n onHighlightSpans?: (spanIds: string[]) => void;\n /** When true, opens the trace's thread (every turn) in a stacked drawer above the trace panel. */\n isFullThreadOpen?: boolean;\n /** Enables the in-place \"Open full thread\" swap; without it the action falls back to a link. */\n onFullThreadOpenChange?: (open: boolean) => void;\n /** Full-thread view: lists through the trace-query API; `false` falls back to `listTracesLight`. */\n withQueryTrace: boolean;\n /** Full-thread view: shows the per-trace Feedback tab. */\n withFeedback: boolean;\n /** Full-thread view: opens a score of one of the thread's traces (the app owns routing). */\n onOpenScore: (traceId: string, scoreId: string) => void;\n scoresTabBadge?: ReactNode;\n scoresTabSlot?: TraceDataPanelViewProps['scoresTabSlot'];\n usage?: TraceDataPanelViewProps['usage'];\n traceHref?: string;\n /** Drawer width; defaults to `wide`. */\n size?: TraceDataPanelViewProps['size'];\n /** Sibling-drawer elevation (see `DataPanel`). */\n depth?: TraceDataPanelViewProps['depth'];\n /** Rendered inside the drawer above the trace header (e.g. feedback context). */\n headerSlot?: ReactNode;\n /** Accessible drawer name; defaults to the trace id. */\n title?: string;\n showUnavailableFeaturesMsg?: TraceDataPanelViewProps['showUnavailableFeaturesMsg'];\n spanView?: TraceDataPanelViewProps['spanView'];\n onSpanViewChange?: TraceDataPanelViewProps['onSpanViewChange'];\n\n // Span-panel pass-through.\n spanActiveTab?: string;\n onSpanTabChange?: (tab: string) => void;\n spanFeedbackTabBadge?: ReactNode;\n spanFeedbackTabSlot?: SpanDataPanelViewProps['feedbackTabSlot'];\n}\n\n/**\n * Shared trace → span drilldown drawer: `TraceDataPanel` with a nested `SpanDataPanelView`.\n * Encapsulates the span-detail fetch and prev/next span navigation that the traces page\n * and the agent chat traces aside used to duplicate.\n */\nexport function TraceSpanPanel({\n traceId,\n spans,\n isLoadingSpans,\n selectedSpanId,\n onSpanSelect,\n onClose,\n anchorSpanId,\n initialSpanId,\n onPrevious,\n onNext,\n onSaveAsDatasetItem,\n onAddTraceMocksToItem,\n feedbackTabBadge,\n feedbackTabSlot,\n showPartialThread,\n featuredSpanIds,\n onHighlightSpans,\n isFullThreadOpen,\n onFullThreadOpenChange,\n withQueryTrace,\n withFeedback,\n onOpenScore,\n scoresTabBadge,\n scoresTabSlot,\n usage,\n traceHref,\n size,\n depth,\n headerSlot,\n title,\n showUnavailableFeaturesMsg,\n spanView,\n onSpanViewChange,\n spanActiveTab,\n onSpanTabChange,\n spanFeedbackTabBadge,\n spanFeedbackTabSlot,\n}: TraceSpanPanelProps) {\n const { data: spanDetailData, isLoading: isLoadingSpanDetail } = useSpanDetail(traceId, selectedSpanId ?? '');\n const { handlePreviousSpan, handleNextSpan } = useTraceSpanNavigation(spans, selectedSpanId, onSpanSelect);\n const { Link, paths } = useLinkComponent();\n\n // The trace summary links the entity to its page; the app's link provider owns the routes.\n const rootSpan = anchorSpanId\n ? spans?.find(s => s.spanId === anchorSpanId)\n : spans?.find(s => s.parentSpanId == null);\n const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);\n const threadId = getTraceThreadId(rootSpan, anchorSpanId);\n const hasMessagesPanel = !!(traceId && showPartialThread && threadId);\n // A single-trace thread would show exactly what the Messages column already shows.\n const hasOtherTraces = useThreadHasOtherTraces(hasMessagesPanel ? threadId : undefined);\n const showFullThreadAction = hasMessagesPanel && hasOtherTraces && !!onFullThreadOpenChange;\n\n return (\n <>\n <TraceDataPanel\n traceId={traceId}\n spans={spans}\n anchorSpanId={anchorSpanId}\n entityHref={entityHref}\n usage={usage}\n isLoading={isLoadingSpans}\n onClose={onClose}\n onSpanSelect={onSpanSelect}\n onSaveAsDatasetItem={onSaveAsDatasetItem}\n onAddTraceMocksToItem={onAddTraceMocksToItem}\n initialSpanId={initialSpanId ?? selectedSpanId}\n onPrevious={onPrevious}\n onNext={onNext}\n placement=\"traces-list\"\n LinkComponent={Link}\n traceHref={traceHref}\n size={size}\n depth={depth}\n headerSlot={headerSlot}\n title={title}\n showUnavailableFeaturesMsg={showUnavailableFeaturesMsg}\n spanView={spanView}\n onSpanViewChange={onSpanViewChange}\n feedbackTabBadge={feedbackTabBadge}\n feedbackTabSlot={feedbackTabSlot}\n featuredSpanIds={featuredSpanIds}\n messagesPanelSlot={\n hasMessagesPanel ? <TraceMessagesPanel traceId={traceId} onHighlightSpans={onHighlightSpans} /> : undefined\n }\n sideHeaderActions={\n showFullThreadAction\n ? ({ compact }) => (\n <Button\n tooltip={compact ? 'Open full thread' : undefined}\n icon={<MessagesSquareIcon />}\n variant=\"ghost\"\n size=\"sm\"\n // At a side column of 500px or less, collapse to a round icon button; the label stays for screen readers.\n className=\"@max-[501px]:w-control-sm @max-[501px]:rounded-full @max-[501px]:px-0 @max-[501px]:[&>[data-slot=button-icon]]:ml-0\"\n onClick={() => onFullThreadOpenChange(true)}\n >\n <span className=\"@max-[501px]:sr-only\">Open full thread</span>\n </Button>\n )\n : undefined\n }\n scoresTabBadge={scoresTabBadge}\n scoresTabSlot={scoresTabSlot}\n spanPanelSlot={\n traceId && selectedSpanId ? (\n <SpanDataPanelView\n traceId={traceId}\n spanId={selectedSpanId}\n span={spanDetailData?.span}\n isAnchor={anchorSpanId ? selectedSpanId === anchorSpanId : undefined}\n isLoading={isLoadingSpanDetail}\n onPrevious={handlePreviousSpan}\n onNext={handleNextSpan}\n onClose={() => onSpanSelect(undefined)}\n activeTab={spanActiveTab}\n onTabChange={onSpanTabChange}\n feedbackTabBadge={spanFeedbackTabBadge}\n feedbackTabSlot={spanFeedbackTabSlot}\n />\n ) : null\n }\n />\n {/* Rendered after the trace panel: DataPanel stacking follows DOM order. */}\n <TraceThreadPanel\n open={!!(traceId && isFullThreadOpen && threadId)}\n depth={depth && depth > 1 ? 3 : 2}\n threadId={threadId ?? ''}\n onOpenScore={onOpenScore}\n withQueryTrace={withQueryTrace}\n withFeedback={withFeedback}\n onClose={() => onFullThreadOpenChange?.(false)}\n />\n </>\n );\n}\n"],"names":["useSpanDetail","useTraceSpanNavigation","useLinkComponent","getTraceThreadId","useThreadHasOtherTraces","jsxs","Fragment","jsx","TraceDataPanel","TraceMessagesPanel","Button","MessagesSquareIcon","SpanDataPanelView","TraceThreadPanel"],"mappings":"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"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { jsx } from 'react/jsx-runtime';
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { MessagesSquareIcon } from 'lucide-react';
|
|
2
3
|
import { SpanDataPanelView } from './span-data-panel-view.es.js';
|
|
3
4
|
import { TraceDataPanel } from './trace-data-panel.es.js';
|
|
4
5
|
import { TraceMessagesPanel } from './trace-messages-panel.es.js';
|
|
5
6
|
import { getTraceThreadId } from './trace-thread-context.es.js';
|
|
6
7
|
import { TraceThreadPanel } from './trace-thread-panel.es.js';
|
|
7
8
|
import { useSpanDetail } from '../hooks/use-span-detail.es.js';
|
|
9
|
+
import { useThreadHasOtherTraces } from '../hooks/use-thread-has-other-traces.es.js';
|
|
8
10
|
import { useTraceSpanNavigation } from '../hooks/use-trace-span-navigation.es.js';
|
|
11
|
+
import { B as Button } from '../../../Button-D43ghVKt.js';
|
|
9
12
|
import { useLinkComponent } from '../../../lib/framework.es.js';
|
|
10
13
|
|
|
11
14
|
function getEntityHref(paths, entityType, entityId) {
|
|
@@ -60,78 +63,86 @@ function TraceSpanPanel({
|
|
|
60
63
|
const rootSpan = anchorSpanId ? spans?.find((s) => s.spanId === anchorSpanId) : spans?.find((s) => s.parentSpanId == null);
|
|
61
64
|
const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);
|
|
62
65
|
const threadId = getTraceThreadId(rootSpan, anchorSpanId);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
+
const hasMessagesPanel = !!(traceId && showPartialThread && threadId);
|
|
67
|
+
const hasOtherTraces = useThreadHasOtherTraces(hasMessagesPanel ? threadId : void 0);
|
|
68
|
+
const showFullThreadAction = hasMessagesPanel && hasOtherTraces && !!onFullThreadOpenChange;
|
|
69
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
70
|
+
/* @__PURE__ */ jsx(
|
|
71
|
+
TraceDataPanel,
|
|
66
72
|
{
|
|
73
|
+
traceId,
|
|
74
|
+
spans,
|
|
75
|
+
anchorSpanId,
|
|
76
|
+
entityHref,
|
|
77
|
+
usage,
|
|
78
|
+
isLoading: isLoadingSpans,
|
|
79
|
+
onClose,
|
|
80
|
+
onSpanSelect,
|
|
81
|
+
onSaveAsDatasetItem,
|
|
82
|
+
onAddTraceMocksToItem,
|
|
83
|
+
initialSpanId: initialSpanId ?? selectedSpanId,
|
|
84
|
+
onPrevious,
|
|
85
|
+
onNext,
|
|
86
|
+
placement: "traces-list",
|
|
87
|
+
LinkComponent: Link,
|
|
88
|
+
traceHref,
|
|
89
|
+
size,
|
|
90
|
+
depth,
|
|
91
|
+
headerSlot,
|
|
67
92
|
title,
|
|
68
|
-
|
|
93
|
+
showUnavailableFeaturesMsg,
|
|
94
|
+
spanView,
|
|
95
|
+
onSpanViewChange,
|
|
96
|
+
feedbackTabBadge,
|
|
97
|
+
feedbackTabSlot,
|
|
98
|
+
featuredSpanIds,
|
|
99
|
+
messagesPanelSlot: hasMessagesPanel ? /* @__PURE__ */ jsx(TraceMessagesPanel, { traceId, onHighlightSpans }) : void 0,
|
|
100
|
+
sideHeaderActions: showFullThreadAction ? ({ compact }) => /* @__PURE__ */ jsx(
|
|
101
|
+
Button,
|
|
102
|
+
{
|
|
103
|
+
tooltip: compact ? "Open full thread" : void 0,
|
|
104
|
+
icon: /* @__PURE__ */ jsx(MessagesSquareIcon, {}),
|
|
105
|
+
variant: "ghost",
|
|
106
|
+
size: "sm",
|
|
107
|
+
className: "@max-[501px]:w-control-sm @max-[501px]:rounded-full @max-[501px]:px-0 @max-[501px]:[&>[data-slot=button-icon]]:ml-0",
|
|
108
|
+
onClick: () => onFullThreadOpenChange(true),
|
|
109
|
+
children: /* @__PURE__ */ jsx("span", { className: "@max-[501px]:sr-only", children: "Open full thread" })
|
|
110
|
+
}
|
|
111
|
+
) : void 0,
|
|
112
|
+
scoresTabBadge,
|
|
113
|
+
scoresTabSlot,
|
|
114
|
+
spanPanelSlot: traceId && selectedSpanId ? /* @__PURE__ */ jsx(
|
|
115
|
+
SpanDataPanelView,
|
|
116
|
+
{
|
|
117
|
+
traceId,
|
|
118
|
+
spanId: selectedSpanId,
|
|
119
|
+
span: spanDetailData?.span,
|
|
120
|
+
isAnchor: anchorSpanId ? selectedSpanId === anchorSpanId : void 0,
|
|
121
|
+
isLoading: isLoadingSpanDetail,
|
|
122
|
+
onPrevious: handlePreviousSpan,
|
|
123
|
+
onNext: handleNextSpan,
|
|
124
|
+
onClose: () => onSpanSelect(void 0),
|
|
125
|
+
activeTab: spanActiveTab,
|
|
126
|
+
onTabChange: onSpanTabChange,
|
|
127
|
+
feedbackTabBadge: spanFeedbackTabBadge,
|
|
128
|
+
feedbackTabSlot: spanFeedbackTabSlot
|
|
129
|
+
}
|
|
130
|
+
) : null
|
|
131
|
+
}
|
|
132
|
+
),
|
|
133
|
+
/* @__PURE__ */ jsx(
|
|
134
|
+
TraceThreadPanel,
|
|
135
|
+
{
|
|
136
|
+
open: !!(traceId && isFullThreadOpen && threadId),
|
|
137
|
+
depth: depth && depth > 1 ? 3 : 2,
|
|
138
|
+
threadId: threadId ?? "",
|
|
69
139
|
onOpenScore,
|
|
70
140
|
withQueryTrace,
|
|
71
141
|
withFeedback,
|
|
72
|
-
|
|
73
|
-
onClose
|
|
142
|
+
onClose: () => onFullThreadOpenChange?.(false)
|
|
74
143
|
}
|
|
75
|
-
)
|
|
76
|
-
}
|
|
77
|
-
return /* @__PURE__ */ jsx(
|
|
78
|
-
TraceDataPanel,
|
|
79
|
-
{
|
|
80
|
-
traceId,
|
|
81
|
-
spans,
|
|
82
|
-
anchorSpanId,
|
|
83
|
-
entityHref,
|
|
84
|
-
usage,
|
|
85
|
-
isLoading: isLoadingSpans,
|
|
86
|
-
onClose,
|
|
87
|
-
onSpanSelect,
|
|
88
|
-
onSaveAsDatasetItem,
|
|
89
|
-
onAddTraceMocksToItem,
|
|
90
|
-
initialSpanId: initialSpanId ?? selectedSpanId,
|
|
91
|
-
onPrevious,
|
|
92
|
-
onNext,
|
|
93
|
-
placement: "traces-list",
|
|
94
|
-
LinkComponent: Link,
|
|
95
|
-
traceHref,
|
|
96
|
-
size,
|
|
97
|
-
depth,
|
|
98
|
-
headerSlot,
|
|
99
|
-
title,
|
|
100
|
-
showUnavailableFeaturesMsg,
|
|
101
|
-
spanView,
|
|
102
|
-
onSpanViewChange,
|
|
103
|
-
feedbackTabBadge,
|
|
104
|
-
feedbackTabSlot,
|
|
105
|
-
featuredSpanIds,
|
|
106
|
-
messagesPanelSlot: traceId && showPartialThread && threadId ? /* @__PURE__ */ jsx(
|
|
107
|
-
TraceMessagesPanel,
|
|
108
|
-
{
|
|
109
|
-
traceId,
|
|
110
|
-
threadId,
|
|
111
|
-
onViewFullThread: onFullThreadOpenChange ? () => onFullThreadOpenChange(true) : void 0,
|
|
112
|
-
onHighlightSpans
|
|
113
|
-
}
|
|
114
|
-
) : void 0,
|
|
115
|
-
scoresTabBadge,
|
|
116
|
-
scoresTabSlot,
|
|
117
|
-
spanPanelSlot: traceId && selectedSpanId ? /* @__PURE__ */ jsx(
|
|
118
|
-
SpanDataPanelView,
|
|
119
|
-
{
|
|
120
|
-
traceId,
|
|
121
|
-
spanId: selectedSpanId,
|
|
122
|
-
span: spanDetailData?.span,
|
|
123
|
-
isAnchor: anchorSpanId ? selectedSpanId === anchorSpanId : void 0,
|
|
124
|
-
isLoading: isLoadingSpanDetail,
|
|
125
|
-
onPrevious: handlePreviousSpan,
|
|
126
|
-
onNext: handleNextSpan,
|
|
127
|
-
activeTab: spanActiveTab,
|
|
128
|
-
onTabChange: onSpanTabChange,
|
|
129
|
-
feedbackTabBadge: spanFeedbackTabBadge,
|
|
130
|
-
feedbackTabSlot: spanFeedbackTabSlot
|
|
131
|
-
}
|
|
132
|
-
) : null
|
|
133
|
-
}
|
|
134
|
-
);
|
|
144
|
+
)
|
|
145
|
+
] });
|
|
135
146
|
}
|
|
136
147
|
|
|
137
148
|
export { TraceSpanPanel };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-span-panel.es.js","sources":["../../../../src/domains/traces/components/trace-span-panel.tsx"],"sourcesContent":["import type { ComponentProps, ReactNode } from 'react';\nimport { SpanDataPanelView } from '@/domains/traces/components/span-data-panel-view';\nimport { TraceDataPanel } from '@/domains/traces/components/trace-data-panel';\nimport type { TraceDataPanelView } from '@/domains/traces/components/trace-data-panel-view';\nimport { TraceMessagesPanel } from '@/domains/traces/components/trace-messages-panel';\nimport { getTraceThreadId } from '@/domains/traces/components/trace-thread-context';\nimport { TraceThreadPanel } from '@/domains/traces/components/trace-thread-panel';\nimport { useSpanDetail } from '@/domains/traces/hooks/use-span-detail';\nimport { useTraceSpanNavigation } from '@/domains/traces/hooks/use-trace-span-navigation';\nimport { useLinkComponent } from '@/lib/framework';\nimport type { LinkComponentPaths } from '@/lib/framework';\n\ntype TraceDataPanelViewProps = ComponentProps<typeof TraceDataPanelView>;\n\nfunction getEntityHref(\n paths: LinkComponentPaths,\n entityType: string | null | undefined,\n entityId: string | null | undefined,\n) {\n if (!entityId || !entityType) return undefined;\n const normalizedEntityType = entityType.toLowerCase();\n if (normalizedEntityType.includes('workflow')) return paths.workflowLink(entityId) || undefined;\n if (normalizedEntityType.includes('agent')) return paths.agentLink(entityId) || undefined;\n return undefined;\n}\ntype SpanDataPanelViewProps = ComponentProps<typeof SpanDataPanelView>;\n\nexport interface TraceSpanPanelProps {\n /** Keep the panel mounted and pass `undefined` to close it, so the drawer animates out. */\n traceId?: string;\n /** Spans returned by `useTraceOrBranchSpans` — the page owns the fetch, the panel renders it. */\n spans: TraceDataPanelViewProps['spans'];\n isLoadingSpans: boolean;\n /** Controlled span selection (URL state on the traces page, local state in the chat aside). */\n selectedSpanId: string | null;\n onSpanSelect: (spanId: string | undefined) => void;\n onClose: () => void;\n\n // Trace-panel pass-through.\n anchorSpanId?: string;\n initialSpanId?: string | null;\n onPrevious?: () => void;\n onNext?: () => void;\n onSaveAsDatasetItem?: TraceDataPanelViewProps['onSaveAsDatasetItem'];\n onAddTraceMocksToItem?: TraceDataPanelViewProps['onAddTraceMocksToItem'];\n feedbackTabBadge?: ReactNode;\n feedbackTabSlot?: TraceDataPanelViewProps['feedbackTabSlot'];\n /** Enables the \"Messages\" column (reconstructed turn) when the displayed root is a complete agent trace with a thread id. */\n showPartialThread?: boolean;\n /** Span ids featured in the timeline (non-featured spans are faded). */\n featuredSpanIds?: string[];\n /** Called with the span ids behind a reconstructed message when the user asks to highlight them. */\n onHighlightSpans?: (spanIds: string[]) => void;\n /** When true, the whole panel shows the trace's thread (every turn) instead of the trace timeline. */\n isFullThreadOpen?: boolean;\n /** Enables the in-place \"Open full thread\" swap; without it the action falls back to a link. */\n onFullThreadOpenChange?: (open: boolean) => void;\n /** Full-thread view: lists through the trace-query API; `false` falls back to `listTracesLight`. */\n withQueryTrace: boolean;\n /** Full-thread view: shows the per-trace Feedback tab. */\n withFeedback: boolean;\n /** Full-thread view: opens a score of one of the thread's traces (the app owns routing). */\n onOpenScore: (traceId: string, scoreId: string) => void;\n scoresTabBadge?: ReactNode;\n scoresTabSlot?: TraceDataPanelViewProps['scoresTabSlot'];\n usage?: TraceDataPanelViewProps['usage'];\n traceHref?: string;\n /** Drawer width; defaults to `wide`. */\n size?: TraceDataPanelViewProps['size'];\n /** Sibling-drawer elevation (see `DataPanel`). */\n depth?: TraceDataPanelViewProps['depth'];\n /** Rendered inside the drawer above the trace header (e.g. feedback context). */\n headerSlot?: ReactNode;\n /** Accessible drawer name; defaults to the trace id. */\n title?: string;\n showUnavailableFeaturesMsg?: TraceDataPanelViewProps['showUnavailableFeaturesMsg'];\n spanView?: TraceDataPanelViewProps['spanView'];\n onSpanViewChange?: TraceDataPanelViewProps['onSpanViewChange'];\n\n // Span-panel pass-through.\n spanActiveTab?: string;\n onSpanTabChange?: (tab: string) => void;\n spanFeedbackTabBadge?: ReactNode;\n spanFeedbackTabSlot?: SpanDataPanelViewProps['feedbackTabSlot'];\n}\n\n/**\n * Shared trace → span drilldown drawer: `TraceDataPanel` with a nested `SpanDataPanelView`.\n * Encapsulates the span-detail fetch and prev/next span navigation that the traces page\n * and the agent chat traces aside used to duplicate.\n */\nexport function TraceSpanPanel({\n traceId,\n spans,\n isLoadingSpans,\n selectedSpanId,\n onSpanSelect,\n onClose,\n anchorSpanId,\n initialSpanId,\n onPrevious,\n onNext,\n onSaveAsDatasetItem,\n onAddTraceMocksToItem,\n feedbackTabBadge,\n feedbackTabSlot,\n showPartialThread,\n featuredSpanIds,\n onHighlightSpans,\n isFullThreadOpen,\n onFullThreadOpenChange,\n withQueryTrace,\n withFeedback,\n onOpenScore,\n scoresTabBadge,\n scoresTabSlot,\n usage,\n traceHref,\n size,\n depth,\n headerSlot,\n title,\n showUnavailableFeaturesMsg,\n spanView,\n onSpanViewChange,\n spanActiveTab,\n onSpanTabChange,\n spanFeedbackTabBadge,\n spanFeedbackTabSlot,\n}: TraceSpanPanelProps) {\n const { data: spanDetailData, isLoading: isLoadingSpanDetail } = useSpanDetail(traceId, selectedSpanId ?? '');\n const { handlePreviousSpan, handleNextSpan } = useTraceSpanNavigation(spans, selectedSpanId, onSpanSelect);\n const { Link, paths } = useLinkComponent();\n\n // The trace summary links the entity to its page; the app's link provider owns the routes.\n const rootSpan = anchorSpanId\n ? spans?.find(s => s.spanId === anchorSpanId)\n : spans?.find(s => s.parentSpanId == null);\n const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);\n const threadId = getTraceThreadId(rootSpan, anchorSpanId);\n\n if (traceId && isFullThreadOpen && threadId) {\n return (\n <TraceThreadPanel\n title={title}\n threadId={threadId}\n onOpenScore={onOpenScore}\n withQueryTrace={withQueryTrace}\n withFeedback={withFeedback}\n onBack={() => onFullThreadOpenChange?.(false)}\n onClose={onClose}\n />\n );\n }\n\n return (\n <TraceDataPanel\n traceId={traceId}\n spans={spans}\n anchorSpanId={anchorSpanId}\n entityHref={entityHref}\n usage={usage}\n isLoading={isLoadingSpans}\n onClose={onClose}\n onSpanSelect={onSpanSelect}\n onSaveAsDatasetItem={onSaveAsDatasetItem}\n onAddTraceMocksToItem={onAddTraceMocksToItem}\n initialSpanId={initialSpanId ?? selectedSpanId}\n onPrevious={onPrevious}\n onNext={onNext}\n placement=\"traces-list\"\n LinkComponent={Link}\n traceHref={traceHref}\n size={size}\n depth={depth}\n headerSlot={headerSlot}\n title={title}\n showUnavailableFeaturesMsg={showUnavailableFeaturesMsg}\n spanView={spanView}\n onSpanViewChange={onSpanViewChange}\n feedbackTabBadge={feedbackTabBadge}\n feedbackTabSlot={feedbackTabSlot}\n featuredSpanIds={featuredSpanIds}\n messagesPanelSlot={\n traceId && showPartialThread && threadId ? (\n <TraceMessagesPanel\n traceId={traceId}\n threadId={threadId}\n onViewFullThread={onFullThreadOpenChange ? () => onFullThreadOpenChange(true) : undefined}\n onHighlightSpans={onHighlightSpans}\n />\n ) : undefined\n }\n scoresTabBadge={scoresTabBadge}\n scoresTabSlot={scoresTabSlot}\n spanPanelSlot={\n traceId && selectedSpanId ? (\n <SpanDataPanelView\n traceId={traceId}\n spanId={selectedSpanId}\n span={spanDetailData?.span}\n isAnchor={anchorSpanId ? selectedSpanId === anchorSpanId : undefined}\n isLoading={isLoadingSpanDetail}\n onPrevious={handlePreviousSpan}\n onNext={handleNextSpan}\n activeTab={spanActiveTab}\n onTabChange={onSpanTabChange}\n feedbackTabBadge={spanFeedbackTabBadge}\n feedbackTabSlot={spanFeedbackTabSlot}\n />\n ) : null\n }\n />\n );\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace-span-panel.es.js","sources":["../../../../src/domains/traces/components/trace-span-panel.tsx"],"sourcesContent":["import { MessagesSquareIcon } from 'lucide-react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport { SpanDataPanelView } from '@/domains/traces/components/span-data-panel-view';\nimport { TraceDataPanel } from '@/domains/traces/components/trace-data-panel';\nimport type { TraceDataPanelView } from '@/domains/traces/components/trace-data-panel-view';\nimport { TraceMessagesPanel } from '@/domains/traces/components/trace-messages-panel';\nimport { getTraceThreadId } from '@/domains/traces/components/trace-thread-context';\nimport { TraceThreadPanel } from '@/domains/traces/components/trace-thread-panel';\nimport { useSpanDetail } from '@/domains/traces/hooks/use-span-detail';\nimport { useThreadHasOtherTraces } from '@/domains/traces/hooks/use-thread-has-other-traces';\nimport { useTraceSpanNavigation } from '@/domains/traces/hooks/use-trace-span-navigation';\nimport { Button } from '@/ds/components/Button';\nimport { useLinkComponent } from '@/lib/framework';\nimport type { LinkComponentPaths } from '@/lib/framework';\n\ntype TraceDataPanelViewProps = ComponentProps<typeof TraceDataPanelView>;\n\nfunction getEntityHref(\n paths: LinkComponentPaths,\n entityType: string | null | undefined,\n entityId: string | null | undefined,\n) {\n if (!entityId || !entityType) return undefined;\n const normalizedEntityType = entityType.toLowerCase();\n if (normalizedEntityType.includes('workflow')) return paths.workflowLink(entityId) || undefined;\n if (normalizedEntityType.includes('agent')) return paths.agentLink(entityId) || undefined;\n return undefined;\n}\ntype SpanDataPanelViewProps = ComponentProps<typeof SpanDataPanelView>;\n\nexport interface TraceSpanPanelProps {\n /** Keep the panel mounted and pass `undefined` to close it, so the drawer animates out. */\n traceId?: string;\n /** Spans returned by `useTraceOrBranchSpans` — the page owns the fetch, the panel renders it. */\n spans: TraceDataPanelViewProps['spans'];\n isLoadingSpans: boolean;\n /** Controlled span selection (URL state on the traces page, local state in the chat aside). */\n selectedSpanId: string | null;\n onSpanSelect: (spanId: string | undefined) => void;\n onClose: () => void;\n\n // Trace-panel pass-through.\n anchorSpanId?: string;\n initialSpanId?: string | null;\n onPrevious?: () => void;\n onNext?: () => void;\n onSaveAsDatasetItem?: TraceDataPanelViewProps['onSaveAsDatasetItem'];\n onAddTraceMocksToItem?: TraceDataPanelViewProps['onAddTraceMocksToItem'];\n feedbackTabBadge?: ReactNode;\n feedbackTabSlot?: TraceDataPanelViewProps['feedbackTabSlot'];\n /** Enables the \"Messages\" column (reconstructed turn) when the displayed root is a complete agent trace with a thread id. */\n showPartialThread?: boolean;\n /** Span ids featured in the timeline (non-featured spans are faded). */\n featuredSpanIds?: string[];\n /** Called with the span ids behind a reconstructed message when the user asks to highlight them. */\n onHighlightSpans?: (spanIds: string[]) => void;\n /** When true, opens the trace's thread (every turn) in a stacked drawer above the trace panel. */\n isFullThreadOpen?: boolean;\n /** Enables the in-place \"Open full thread\" swap; without it the action falls back to a link. */\n onFullThreadOpenChange?: (open: boolean) => void;\n /** Full-thread view: lists through the trace-query API; `false` falls back to `listTracesLight`. */\n withQueryTrace: boolean;\n /** Full-thread view: shows the per-trace Feedback tab. */\n withFeedback: boolean;\n /** Full-thread view: opens a score of one of the thread's traces (the app owns routing). */\n onOpenScore: (traceId: string, scoreId: string) => void;\n scoresTabBadge?: ReactNode;\n scoresTabSlot?: TraceDataPanelViewProps['scoresTabSlot'];\n usage?: TraceDataPanelViewProps['usage'];\n traceHref?: string;\n /** Drawer width; defaults to `wide`. */\n size?: TraceDataPanelViewProps['size'];\n /** Sibling-drawer elevation (see `DataPanel`). */\n depth?: TraceDataPanelViewProps['depth'];\n /** Rendered inside the drawer above the trace header (e.g. feedback context). */\n headerSlot?: ReactNode;\n /** Accessible drawer name; defaults to the trace id. */\n title?: string;\n showUnavailableFeaturesMsg?: TraceDataPanelViewProps['showUnavailableFeaturesMsg'];\n spanView?: TraceDataPanelViewProps['spanView'];\n onSpanViewChange?: TraceDataPanelViewProps['onSpanViewChange'];\n\n // Span-panel pass-through.\n spanActiveTab?: string;\n onSpanTabChange?: (tab: string) => void;\n spanFeedbackTabBadge?: ReactNode;\n spanFeedbackTabSlot?: SpanDataPanelViewProps['feedbackTabSlot'];\n}\n\n/**\n * Shared trace → span drilldown drawer: `TraceDataPanel` with a nested `SpanDataPanelView`.\n * Encapsulates the span-detail fetch and prev/next span navigation that the traces page\n * and the agent chat traces aside used to duplicate.\n */\nexport function TraceSpanPanel({\n traceId,\n spans,\n isLoadingSpans,\n selectedSpanId,\n onSpanSelect,\n onClose,\n anchorSpanId,\n initialSpanId,\n onPrevious,\n onNext,\n onSaveAsDatasetItem,\n onAddTraceMocksToItem,\n feedbackTabBadge,\n feedbackTabSlot,\n showPartialThread,\n featuredSpanIds,\n onHighlightSpans,\n isFullThreadOpen,\n onFullThreadOpenChange,\n withQueryTrace,\n withFeedback,\n onOpenScore,\n scoresTabBadge,\n scoresTabSlot,\n usage,\n traceHref,\n size,\n depth,\n headerSlot,\n title,\n showUnavailableFeaturesMsg,\n spanView,\n onSpanViewChange,\n spanActiveTab,\n onSpanTabChange,\n spanFeedbackTabBadge,\n spanFeedbackTabSlot,\n}: TraceSpanPanelProps) {\n const { data: spanDetailData, isLoading: isLoadingSpanDetail } = useSpanDetail(traceId, selectedSpanId ?? '');\n const { handlePreviousSpan, handleNextSpan } = useTraceSpanNavigation(spans, selectedSpanId, onSpanSelect);\n const { Link, paths } = useLinkComponent();\n\n // The trace summary links the entity to its page; the app's link provider owns the routes.\n const rootSpan = anchorSpanId\n ? spans?.find(s => s.spanId === anchorSpanId)\n : spans?.find(s => s.parentSpanId == null);\n const entityHref = getEntityHref(paths, rootSpan?.entityType, rootSpan?.entityId);\n const threadId = getTraceThreadId(rootSpan, anchorSpanId);\n const hasMessagesPanel = !!(traceId && showPartialThread && threadId);\n // A single-trace thread would show exactly what the Messages column already shows.\n const hasOtherTraces = useThreadHasOtherTraces(hasMessagesPanel ? threadId : undefined);\n const showFullThreadAction = hasMessagesPanel && hasOtherTraces && !!onFullThreadOpenChange;\n\n return (\n <>\n <TraceDataPanel\n traceId={traceId}\n spans={spans}\n anchorSpanId={anchorSpanId}\n entityHref={entityHref}\n usage={usage}\n isLoading={isLoadingSpans}\n onClose={onClose}\n onSpanSelect={onSpanSelect}\n onSaveAsDatasetItem={onSaveAsDatasetItem}\n onAddTraceMocksToItem={onAddTraceMocksToItem}\n initialSpanId={initialSpanId ?? selectedSpanId}\n onPrevious={onPrevious}\n onNext={onNext}\n placement=\"traces-list\"\n LinkComponent={Link}\n traceHref={traceHref}\n size={size}\n depth={depth}\n headerSlot={headerSlot}\n title={title}\n showUnavailableFeaturesMsg={showUnavailableFeaturesMsg}\n spanView={spanView}\n onSpanViewChange={onSpanViewChange}\n feedbackTabBadge={feedbackTabBadge}\n feedbackTabSlot={feedbackTabSlot}\n featuredSpanIds={featuredSpanIds}\n messagesPanelSlot={\n hasMessagesPanel ? <TraceMessagesPanel traceId={traceId} onHighlightSpans={onHighlightSpans} /> : undefined\n }\n sideHeaderActions={\n showFullThreadAction\n ? ({ compact }) => (\n <Button\n tooltip={compact ? 'Open full thread' : undefined}\n icon={<MessagesSquareIcon />}\n variant=\"ghost\"\n size=\"sm\"\n // At a side column of 500px or less, collapse to a round icon button; the label stays for screen readers.\n className=\"@max-[501px]:w-control-sm @max-[501px]:rounded-full @max-[501px]:px-0 @max-[501px]:[&>[data-slot=button-icon]]:ml-0\"\n onClick={() => onFullThreadOpenChange(true)}\n >\n <span className=\"@max-[501px]:sr-only\">Open full thread</span>\n </Button>\n )\n : undefined\n }\n scoresTabBadge={scoresTabBadge}\n scoresTabSlot={scoresTabSlot}\n spanPanelSlot={\n traceId && selectedSpanId ? (\n <SpanDataPanelView\n traceId={traceId}\n spanId={selectedSpanId}\n span={spanDetailData?.span}\n isAnchor={anchorSpanId ? selectedSpanId === anchorSpanId : undefined}\n isLoading={isLoadingSpanDetail}\n onPrevious={handlePreviousSpan}\n onNext={handleNextSpan}\n onClose={() => onSpanSelect(undefined)}\n activeTab={spanActiveTab}\n onTabChange={onSpanTabChange}\n feedbackTabBadge={spanFeedbackTabBadge}\n feedbackTabSlot={spanFeedbackTabSlot}\n />\n ) : null\n }\n />\n {/* Rendered after the trace panel: DataPanel stacking follows DOM order. */}\n <TraceThreadPanel\n open={!!(traceId && isFullThreadOpen && threadId)}\n depth={depth && depth > 1 ? 3 : 2}\n threadId={threadId ?? ''}\n onOpenScore={onOpenScore}\n withQueryTrace={withQueryTrace}\n withFeedback={withFeedback}\n onClose={() => onFullThreadOpenChange?.(false)}\n />\n </>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAiBA,SAAS,aAAA,CACP,KAAA,EACA,UAAA,EACA,QAAA,EACA;AACA,EAAA,IAAI,CAAC,QAAA,IAAY,CAAC,UAAA,EAAY,OAAO,MAAA;AACrC,EAAA,MAAM,oBAAA,GAAuB,WAAW,WAAA,EAAY;AACpD,EAAA,IAAI,oBAAA,CAAqB,SAAS,UAAU,CAAA,SAAU,KAAA,CAAM,YAAA,CAAa,QAAQ,CAAA,IAAK,MAAA;AACtF,EAAA,IAAI,oBAAA,CAAqB,SAAS,OAAO,CAAA,SAAU,KAAA,CAAM,SAAA,CAAU,QAAQ,CAAA,IAAK,MAAA;AAChF,EAAA,OAAO,MAAA;AACT;AAmEO,SAAS,cAAA,CAAe;AAAA,EAC7B,OAAA;AAAA,EACA,KAAA;AAAA,EACA,cAAA;AAAA,EACA,cAAA;AAAA,EACA,YAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,mBAAA;AAAA,EACA,qBAAA;AAAA,EACA,gBAAA;AAAA,EACA,eAAA;AAAA,EACA,iBAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,cAAA;AAAA,EACA,YAAA;AAAA,EACA,WAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,KAAA;AAAA,EACA,0BAAA;AAAA,EACA,QAAA;AAAA,EACA,gBAAA;AAAA,EACA,aAAA;AAAA,EACA,eAAA;AAAA,EACA,oBAAA;AAAA,EACA;AACF,CAAA,EAAwB;AACtB,EAAA,MAAM,EAAE,MAAM,cAAA,EAAgB,SAAA,EAAW,qBAAoB,GAAI,aAAA,CAAc,OAAA,EAAS,cAAA,IAAkB,EAAE,CAAA;AAC5G,EAAA,MAAM,EAAE,kBAAA,EAAoB,cAAA,KAAmB,sBAAA,CAAuB,KAAA,EAAO,gBAAgB,YAAY,CAAA;AACzG,EAAA,MAAM,EAAE,IAAA,EAAM,KAAA,EAAM,GAAI,gBAAA,EAAiB;AAGzC,EAAA,MAAM,QAAA,GAAW,YAAA,GACb,KAAA,EAAO,IAAA,CAAK,OAAK,CAAA,CAAE,MAAA,KAAW,YAAY,CAAA,GAC1C,KAAA,EAAO,IAAA,CAAK,CAAA,CAAA,KAAK,CAAA,CAAE,gBAAgB,IAAI,CAAA;AAC3C,EAAA,MAAM,aAAa,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,UAAA,EAAY,UAAU,QAAQ,CAAA;AAChF,EAAA,MAAM,QAAA,GAAW,gBAAA,CAAiB,QAAA,EAAU,YAAY,CAAA;AACxD,EAAA,MAAM,gBAAA,GAAmB,CAAC,EAAE,OAAA,IAAW,iBAAA,IAAqB,QAAA,CAAA;AAE5D,EAAA,MAAM,cAAA,GAAiB,uBAAA,CAAwB,gBAAA,GAAmB,QAAA,GAAW,MAAS,CAAA;AACtF,EAAA,MAAM,oBAAA,GAAuB,gBAAA,IAAoB,cAAA,IAAkB,CAAC,CAAC,sBAAA;AAErE,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,cAAA;AAAA,MAAA;AAAA,QACC,OAAA;AAAA,QACA,KAAA;AAAA,QACA,YAAA;AAAA,QACA,UAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA,EAAW,cAAA;AAAA,QACX,OAAA;AAAA,QACA,YAAA;AAAA,QACA,mBAAA;AAAA,QACA,qBAAA;AAAA,QACA,eAAe,aAAA,IAAiB,cAAA;AAAA,QAChC,UAAA;AAAA,QACA,MAAA;AAAA,QACA,SAAA,EAAU,aAAA;AAAA,QACV,aAAA,EAAe,IAAA;AAAA,QACf,SAAA;AAAA,QACA,IAAA;AAAA,QACA,KAAA;AAAA,QACA,UAAA;AAAA,QACA,KAAA;AAAA,QACA,0BAAA;AAAA,QACA,QAAA;AAAA,QACA,gBAAA;AAAA,QACA,gBAAA;AAAA,QACA,eAAA;AAAA,QACA,eAAA;AAAA,QACA,mBACE,gBAAA,mBAAmB,GAAA,CAAC,kBAAA,EAAA,EAAmB,OAAA,EAAkB,kBAAoC,CAAA,GAAK,MAAA;AAAA,QAEpG,iBAAA,EACE,oBAAA,GACI,CAAC,EAAE,SAAQ,qBACT,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,OAAA,EAAS,UAAU,kBAAA,GAAqB,MAAA;AAAA,YACxC,IAAA,sBAAO,kBAAA,EAAA,EAAmB,CAAA;AAAA,YAC1B,OAAA,EAAQ,OAAA;AAAA,YACR,IAAA,EAAK,IAAA;AAAA,YAEL,SAAA,EAAU,qHAAA;AAAA,YACV,OAAA,EAAS,MAAM,sBAAA,CAAuB,IAAI,CAAA;AAAA,YAE1C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,sBAAA,EAAuB,QAAA,EAAA,kBAAA,EAAgB;AAAA;AAAA,SACzD,GAEF,MAAA;AAAA,QAEN,cAAA;AAAA,QACA,aAAA;AAAA,QACA,aAAA,EACE,WAAW,cAAA,mBACT,GAAA;AAAA,UAAC,iBAAA;AAAA,UAAA;AAAA,YACC,OAAA;AAAA,YACA,MAAA,EAAQ,cAAA;AAAA,YACR,MAAM,cAAA,EAAgB,IAAA;AAAA,YACtB,QAAA,EAAU,YAAA,GAAe,cAAA,KAAmB,YAAA,GAAe,MAAA;AAAA,YAC3D,SAAA,EAAW,mBAAA;AAAA,YACX,UAAA,EAAY,kBAAA;AAAA,YACZ,MAAA,EAAQ,cAAA;AAAA,YACR,OAAA,EAAS,MAAM,YAAA,CAAa,MAAS,CAAA;AAAA,YACrC,SAAA,EAAW,aAAA;AAAA,YACX,WAAA,EAAa,eAAA;AAAA,YACb,gBAAA,EAAkB,oBAAA;AAAA,YAClB,eAAA,EAAiB;AAAA;AAAA,SACnB,GACE;AAAA;AAAA,KAER;AAAA,oBAEA,GAAA;AAAA,MAAC,gBAAA;AAAA,MAAA;AAAA,QACC,IAAA,EAAM,CAAC,EAAE,OAAA,IAAW,gBAAA,IAAoB,QAAA,CAAA;AAAA,QACxC,KAAA,EAAO,KAAA,IAAS,KAAA,GAAQ,CAAA,GAAI,CAAA,GAAI,CAAA;AAAA,QAChC,UAAU,QAAA,IAAY,EAAA;AAAA,QACtB,WAAA;AAAA,QACA,cAAA;AAAA,QACA,YAAA;AAAA,QACA,OAAA,EAAS,MAAM,sBAAA,GAAyB,KAAK;AAAA;AAAA;AAC/C,GAAA,EACF,CAAA;AAEJ;;;;"}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
4
4
|
|
|
5
5
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
const skeleton = require('../../../skeleton-cXUjPrq9.cjs');
|
|
7
|
-
const primitives_controlSize = require('../../../primitives/control-size.cjs.js');
|
|
8
7
|
const utils_cn = require('../../../cn-DG0X1KEP.cjs');
|
|
9
8
|
|
|
10
9
|
const ROWS = [
|
|
@@ -17,19 +16,18 @@ const ROWS = [
|
|
|
17
16
|
[2, "30%"],
|
|
18
17
|
[1, "65%"]
|
|
19
18
|
];
|
|
20
|
-
|
|
19
|
+
const LEGEND_WIDTHS = ["w-14", "w-12", "w-16"];
|
|
20
|
+
function TraceSpanTreeSkeleton({ className }) {
|
|
21
21
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { role: "status", "aria-label": "Loading spans", className: utils_cn.cn("flex flex-col", className), children: [
|
|
22
|
-
|
|
23
|
-
/* @__PURE__ */ jsxRuntime.
|
|
24
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
25
|
-
/* @__PURE__ */ jsxRuntime.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
/* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: "h-3", style: { width } }),
|
|
32
|
-
/* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: "ml-auto h-2.5 w-10 shrink-0" })
|
|
22
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "span-type-legend-skeleton", className: "flex flex-wrap items-center gap-1.5 py-3", children: LEGEND_WIDTHS.map((width) => /* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: utils_cn.cn("h-5 rounded-full", width) }, width)) }),
|
|
23
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid gap-y-px pb-1", children: ROWS.map(([depth, width], idx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-8 items-stretch", style: { paddingLeft: `${depth}rem` }, children: [
|
|
24
|
+
depth > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-2 shrink-0" }),
|
|
25
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-1 items-start gap-1.5 px-2 py-1", children: [
|
|
26
|
+
/* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: "mt-[5px] size-2 shrink-0 rounded-full" }),
|
|
27
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
28
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-[18px] items-center", children: /* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: "h-3", style: { width } }) }),
|
|
29
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-4 items-center", children: /* @__PURE__ */ jsxRuntime.jsx(skeleton.Skeleton, { className: "h-2.5 w-10" }) })
|
|
30
|
+
] })
|
|
33
31
|
] }),
|
|
34
32
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-8 shrink-0" })
|
|
35
33
|
] }, idx)) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-span-tree-skeleton.cjs.js","sources":["../../../../src/domains/traces/components/trace-span-tree-skeleton.tsx"],"sourcesContent":["import { Skeleton } from '@/ds/components/Skeleton';\nimport {
|
|
1
|
+
{"version":3,"file":"trace-span-tree-skeleton.cjs.js","sources":["../../../../src/domains/traces/components/trace-span-tree-skeleton.tsx"],"sourcesContent":["import { Skeleton } from '@/ds/components/Skeleton';\nimport { cn } from '@/lib/utils';\n\n/** `[depth, name width]` per row: a root span, then a couple of nested levels, like a typical agent run. */\nconst ROWS: Array<[number, string]> = [\n [0, '55%'],\n [1, '40%'],\n [1, '60%'],\n [2, '35%'],\n [2, '50%'],\n [1, '45%'],\n [2, '30%'],\n [1, '65%'],\n];\n\nconst LEGEND_WIDTHS = ['w-14', 'w-12', 'w-16'];\n\nexport interface TraceSpanTreeSkeletonProps {\n className?: string;\n}\n\n/**\n * Same boxes as the resolved tree — the `SpanTypeLegend` pills, then one `TimelineNameCol` row per span\n * (structure sign for children, top-aligned dot, caption name stacked over the meta duration, `w-8` toggle slot) —\n * so nothing jumps when the spans land.\n */\nexport function TraceSpanTreeSkeleton({ className }: TraceSpanTreeSkeletonProps) {\n return (\n <div role=\"status\" aria-label=\"Loading spans\" className={cn('flex flex-col', className)}>\n <div data-slot=\"span-type-legend-skeleton\" className=\"flex flex-wrap items-center gap-1.5 py-3\">\n {LEGEND_WIDTHS.map(width => (\n <Skeleton key={width} className={cn('h-5 rounded-full', width)} />\n ))}\n </div>\n <div className=\"grid gap-y-px pb-1\">\n {ROWS.map(([depth, width], idx) => (\n <div key={idx} className=\"flex min-h-8 items-stretch\" style={{ paddingLeft: `${depth}rem` }}>\n {depth > 0 && <div className=\"w-2 shrink-0\" />}\n <div className=\"flex min-w-0 flex-1 items-start gap-1.5 px-2 py-1\">\n <Skeleton className=\"mt-[5px] size-2 shrink-0 rounded-full\" />\n <div className=\"flex min-w-0 flex-1 flex-col\">\n {/* Line boxes of the caption name (18px) and meta duration (16px). */}\n <div className=\"flex h-[18px] items-center\">\n <Skeleton className=\"h-3\" style={{ width }} />\n </div>\n <div className=\"flex h-4 items-center\">\n <Skeleton className=\"h-2.5 w-10\" />\n </div>\n </div>\n </div>\n <div className=\"w-8 shrink-0\" />\n </div>\n ))}\n </div>\n </div>\n );\n}\n"],"names":["jsxs","cn","jsx","Skeleton"],"mappings":";;;;;;;;AAIA,MAAM,IAAA,GAAgC;AAAA,EACpC,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK;AACX,CAAA;AAEA,MAAM,aAAA,GAAgB,CAAC,MAAA,EAAQ,MAAA,EAAQ,MAAM,CAAA;AAWtC,SAAS,qBAAA,CAAsB,EAAE,SAAA,EAAU,EAA+B;AAC/E,EAAA,uBACEA,eAAA,CAAC,KAAA,EAAA,EAAI,IAAA,EAAK,QAAA,EAAS,YAAA,EAAW,iBAAgB,SAAA,EAAWC,WAAA,CAAG,eAAA,EAAiB,SAAS,CAAA,EACpF,QAAA,EAAA;AAAA,oBAAAC,cAAA,CAAC,SAAI,WAAA,EAAU,2BAAA,EAA4B,SAAA,EAAU,0CAAA,EAClD,wBAAc,GAAA,CAAI,CAAA,KAAA,qBACjBA,cAAA,CAACC,iBAAA,EAAA,EAAqB,WAAWF,WAAA,CAAG,kBAAA,EAAoB,KAAK,CAAA,EAAA,EAA9C,KAAiD,CACjE,CAAA,EACH,CAAA;AAAA,oBACAC,cAAA,CAAC,SAAI,SAAA,EAAU,oBAAA,EACZ,eAAK,GAAA,CAAI,CAAC,CAAC,KAAA,EAAO,KAAK,CAAA,EAAG,wBACzBF,eAAA,CAAC,KAAA,EAAA,EAAc,WAAU,4BAAA,EAA6B,KAAA,EAAO,EAAE,WAAA,EAAa,CAAA,EAAG,KAAK,CAAA,GAAA,CAAA,EAAM,EACvF,QAAA,EAAA;AAAA,MAAA,KAAA,GAAQ,CAAA,oBAAKE,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,cAAA,EAAe,CAAA;AAAA,sBAC5CF,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mDAAA,EACb,QAAA,EAAA;AAAA,wBAAAE,cAAA,CAACC,iBAAA,EAAA,EAAS,WAAU,uCAAA,EAAwC,CAAA;AAAA,wBAC5DH,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,8BAAA,EAEb,QAAA,EAAA;AAAA,0BAAAE,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACb,QAAA,kBAAAA,cAAA,CAACC,iBAAA,EAAA,EAAS,SAAA,EAAU,KAAA,EAAM,KAAA,EAAO,EAAE,KAAA,EAAM,EAAG,CAAA,EAC9C,CAAA;AAAA,0BACAD,cAAA,CAAC,SAAI,SAAA,EAAU,uBAAA,EACb,yCAACC,iBAAA,EAAA,EAAS,SAAA,EAAU,cAAa,CAAA,EACnC;AAAA,SAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,sBACAD,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,cAAA,EAAe;AAAA,KAAA,EAAA,EAdtB,GAeV,CACD,CAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { S as Skeleton } from '../../../skeleton-BsRAXyh5.js';
|
|
3
|
-
import { controlSizeClasses } from '../../../primitives/control-size.es.js';
|
|
4
3
|
import { c as cn } from '../../../cn-65Adrsfj.js';
|
|
5
4
|
|
|
6
5
|
const ROWS = [
|
|
@@ -13,19 +12,18 @@ const ROWS = [
|
|
|
13
12
|
[2, "30%"],
|
|
14
13
|
[1, "65%"]
|
|
15
14
|
];
|
|
16
|
-
|
|
15
|
+
const LEGEND_WIDTHS = ["w-14", "w-12", "w-16"];
|
|
16
|
+
function TraceSpanTreeSkeleton({ className }) {
|
|
17
17
|
return /* @__PURE__ */ jsxs("div", { role: "status", "aria-label": "Loading spans", className: cn("flex flex-col", className), children: [
|
|
18
|
-
|
|
19
|
-
/* @__PURE__ */
|
|
20
|
-
/* @__PURE__ */ jsx(
|
|
21
|
-
/* @__PURE__ */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
/* @__PURE__ */ jsx(Skeleton, { className: "h-3", style: { width } }),
|
|
28
|
-
/* @__PURE__ */ jsx(Skeleton, { className: "ml-auto h-2.5 w-10 shrink-0" })
|
|
18
|
+
/* @__PURE__ */ jsx("div", { "data-slot": "span-type-legend-skeleton", className: "flex flex-wrap items-center gap-1.5 py-3", children: LEGEND_WIDTHS.map((width) => /* @__PURE__ */ jsx(Skeleton, { className: cn("h-5 rounded-full", width) }, width)) }),
|
|
19
|
+
/* @__PURE__ */ jsx("div", { className: "grid gap-y-px pb-1", children: ROWS.map(([depth, width], idx) => /* @__PURE__ */ jsxs("div", { className: "flex min-h-8 items-stretch", style: { paddingLeft: `${depth}rem` }, children: [
|
|
20
|
+
depth > 0 && /* @__PURE__ */ jsx("div", { className: "w-2 shrink-0" }),
|
|
21
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 items-start gap-1.5 px-2 py-1", children: [
|
|
22
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "mt-[5px] size-2 shrink-0 rounded-full" }),
|
|
23
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
24
|
+
/* @__PURE__ */ jsx("div", { className: "flex h-[18px] items-center", children: /* @__PURE__ */ jsx(Skeleton, { className: "h-3", style: { width } }) }),
|
|
25
|
+
/* @__PURE__ */ jsx("div", { className: "flex h-4 items-center", children: /* @__PURE__ */ jsx(Skeleton, { className: "h-2.5 w-10" }) })
|
|
26
|
+
] })
|
|
29
27
|
] }),
|
|
30
28
|
/* @__PURE__ */ jsx("div", { className: "w-8 shrink-0" })
|
|
31
29
|
] }, idx)) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-span-tree-skeleton.es.js","sources":["../../../../src/domains/traces/components/trace-span-tree-skeleton.tsx"],"sourcesContent":["import { Skeleton } from '@/ds/components/Skeleton';\nimport {
|
|
1
|
+
{"version":3,"file":"trace-span-tree-skeleton.es.js","sources":["../../../../src/domains/traces/components/trace-span-tree-skeleton.tsx"],"sourcesContent":["import { Skeleton } from '@/ds/components/Skeleton';\nimport { cn } from '@/lib/utils';\n\n/** `[depth, name width]` per row: a root span, then a couple of nested levels, like a typical agent run. */\nconst ROWS: Array<[number, string]> = [\n [0, '55%'],\n [1, '40%'],\n [1, '60%'],\n [2, '35%'],\n [2, '50%'],\n [1, '45%'],\n [2, '30%'],\n [1, '65%'],\n];\n\nconst LEGEND_WIDTHS = ['w-14', 'w-12', 'w-16'];\n\nexport interface TraceSpanTreeSkeletonProps {\n className?: string;\n}\n\n/**\n * Same boxes as the resolved tree — the `SpanTypeLegend` pills, then one `TimelineNameCol` row per span\n * (structure sign for children, top-aligned dot, caption name stacked over the meta duration, `w-8` toggle slot) —\n * so nothing jumps when the spans land.\n */\nexport function TraceSpanTreeSkeleton({ className }: TraceSpanTreeSkeletonProps) {\n return (\n <div role=\"status\" aria-label=\"Loading spans\" className={cn('flex flex-col', className)}>\n <div data-slot=\"span-type-legend-skeleton\" className=\"flex flex-wrap items-center gap-1.5 py-3\">\n {LEGEND_WIDTHS.map(width => (\n <Skeleton key={width} className={cn('h-5 rounded-full', width)} />\n ))}\n </div>\n <div className=\"grid gap-y-px pb-1\">\n {ROWS.map(([depth, width], idx) => (\n <div key={idx} className=\"flex min-h-8 items-stretch\" style={{ paddingLeft: `${depth}rem` }}>\n {depth > 0 && <div className=\"w-2 shrink-0\" />}\n <div className=\"flex min-w-0 flex-1 items-start gap-1.5 px-2 py-1\">\n <Skeleton className=\"mt-[5px] size-2 shrink-0 rounded-full\" />\n <div className=\"flex min-w-0 flex-1 flex-col\">\n {/* Line boxes of the caption name (18px) and meta duration (16px). */}\n <div className=\"flex h-[18px] items-center\">\n <Skeleton className=\"h-3\" style={{ width }} />\n </div>\n <div className=\"flex h-4 items-center\">\n <Skeleton className=\"h-2.5 w-10\" />\n </div>\n </div>\n </div>\n <div className=\"w-8 shrink-0\" />\n </div>\n ))}\n </div>\n </div>\n );\n}\n"],"names":[],"mappings":";;;;AAIA,MAAM,IAAA,GAAgC;AAAA,EACpC,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK,CAAA;AAAA,EACT,CAAC,GAAG,KAAK;AACX,CAAA;AAEA,MAAM,aAAA,GAAgB,CAAC,MAAA,EAAQ,MAAA,EAAQ,MAAM,CAAA;AAWtC,SAAS,qBAAA,CAAsB,EAAE,SAAA,EAAU,EAA+B;AAC/E,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,IAAA,EAAK,QAAA,EAAS,YAAA,EAAW,iBAAgB,SAAA,EAAW,EAAA,CAAG,eAAA,EAAiB,SAAS,CAAA,EACpF,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,SAAI,WAAA,EAAU,2BAAA,EAA4B,SAAA,EAAU,0CAAA,EAClD,wBAAc,GAAA,CAAI,CAAA,KAAA,qBACjB,GAAA,CAAC,QAAA,EAAA,EAAqB,WAAW,EAAA,CAAG,kBAAA,EAAoB,KAAK,CAAA,EAAA,EAA9C,KAAiD,CACjE,CAAA,EACH,CAAA;AAAA,oBACA,GAAA,CAAC,SAAI,SAAA,EAAU,oBAAA,EACZ,eAAK,GAAA,CAAI,CAAC,CAAC,KAAA,EAAO,KAAK,CAAA,EAAG,wBACzB,IAAA,CAAC,KAAA,EAAA,EAAc,WAAU,4BAAA,EAA6B,KAAA,EAAO,EAAE,WAAA,EAAa,CAAA,EAAG,KAAK,CAAA,GAAA,CAAA,EAAM,EACvF,QAAA,EAAA;AAAA,MAAA,KAAA,GAAQ,CAAA,oBAAK,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,cAAA,EAAe,CAAA;AAAA,sBAC5C,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mDAAA,EACb,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,WAAU,uCAAA,EAAwC,CAAA;AAAA,wBAC5D,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,8BAAA,EAEb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACb,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,KAAA,EAAM,KAAA,EAAO,EAAE,KAAA,EAAM,EAAG,CAAA,EAC9C,CAAA;AAAA,0BACA,GAAA,CAAC,SAAI,SAAA,EAAU,uBAAA,EACb,8BAAC,QAAA,EAAA,EAAS,SAAA,EAAU,cAAa,CAAA,EACnC;AAAA,SAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,sBACA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,cAAA,EAAe;AAAA,KAAA,EAAA,EAdtB,GAeV,CACD,CAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
|
|
@@ -7,7 +7,7 @@ const domains_traces_components_spanRows = require('./span-rows.cjs.js');
|
|
|
7
7
|
const domains_traces_components_spanTreeRow = require('./span-tree-row.cjs.js');
|
|
8
8
|
const domains_traces_components_spanTypeLegend = require('./span-type-legend.cjs.js');
|
|
9
9
|
const domains_traces_components_traceSpanTreeSkeleton = require('./trace-span-tree-skeleton.cjs.js');
|
|
10
|
-
const Txt = require('../../../Txt-
|
|
10
|
+
const Txt = require('../../../Txt-DNnvlrBo.cjs');
|
|
11
11
|
const utils_cn = require('../../../cn-DG0X1KEP.cjs');
|
|
12
12
|
const utils_duration = require('../../../utils/duration.cjs.js');
|
|
13
13
|
|
|
@@ -3,7 +3,7 @@ import { SpanRows } from './span-rows.es.js';
|
|
|
3
3
|
import { SpanTreeRow } from './span-tree-row.es.js';
|
|
4
4
|
import { SpanTypeLegend } from './span-type-legend.es.js';
|
|
5
5
|
import { TraceSpanTreeSkeleton } from './trace-span-tree-skeleton.es.js';
|
|
6
|
-
import { T as Txt } from '../../../Txt-
|
|
6
|
+
import { T as Txt } from '../../../Txt-C3cYJgKU.js';
|
|
7
7
|
import { c as cn } from '../../../cn-65Adrsfj.js';
|
|
8
8
|
import { formatDurationPrecise } from '../../../utils/duration.es.js';
|
|
9
9
|
|