@mastra/playground-ui 68.0.0 → 69.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +80 -8
- package/dist/AgentIndicator-Dnv_1hvF.js +1995 -0
- package/dist/AgentIndicator-Dnv_1hvF.js.map +1 -0
- package/dist/AgentIndicator-zCokR2zb.cjs +2012 -0
- package/dist/AgentIndicator-zCokR2zb.cjs.map +1 -0
- package/dist/{AttachmentCard-DbGp7TYl.js → AttachmentCard-Bt3-QAxJ.js} +3 -3
- package/dist/{AttachmentCard-DbGp7TYl.js.map → AttachmentCard-Bt3-QAxJ.js.map} +1 -1
- package/dist/{AttachmentCard-CciBqu7E.cjs → AttachmentCard-BycDEelL.cjs} +3 -3
- package/dist/{AttachmentCard-CciBqu7E.cjs.map → AttachmentCard-BycDEelL.cjs.map} +1 -1
- package/dist/{Avatar-Dj8aP7OI.js → Avatar-DOoEXudh.js} +3 -3
- package/dist/{Avatar-Dj8aP7OI.js.map → Avatar-DOoEXudh.js.map} +1 -1
- package/dist/{Avatar-Iiqjad9K.cjs → Avatar-Dxpc0YUx.cjs} +3 -3
- package/dist/{Avatar-Iiqjad9K.cjs.map → Avatar-Dxpc0YUx.cjs.map} +1 -1
- package/dist/{Badge-aVu5iGAF.js → Badge-C7NnqmMx.js} +3 -3
- package/dist/{Badge-aVu5iGAF.js.map → Badge-C7NnqmMx.js.map} +1 -1
- package/dist/{Badge-DZ6r6bcw.cjs → Badge-DqaMg7Gy.cjs} +3 -3
- package/dist/{Badge-DZ6r6bcw.cjs.map → Badge-DqaMg7Gy.cjs.map} +1 -1
- package/dist/{Button-DLcMcuUL.cjs → Button-BfICfyxD.cjs} +5 -5
- package/dist/Button-BfICfyxD.cjs.map +1 -0
- package/dist/{Button-CLXTbAY8.js → Button-Bi7aXd_G.js} +5 -5
- package/dist/Button-Bi7aXd_G.js.map +1 -0
- package/dist/{Card-C6iEBgVq.cjs → Card-C9oCXvxU.cjs} +3 -3
- package/dist/{Card-C6iEBgVq.cjs.map → Card-C9oCXvxU.cjs.map} +1 -1
- package/dist/{Card-LU1aWO7U.js → Card-ClDoUQNb.js} +3 -3
- package/dist/{Card-LU1aWO7U.js.map → Card-ClDoUQNb.js.map} +1 -1
- package/dist/{CodeEditor-CLzs0yVc.cjs → CodeEditor-DHIDfP5g.cjs} +8 -8
- package/dist/{CodeEditor-CLzs0yVc.cjs.map → CodeEditor-DHIDfP5g.cjs.map} +1 -1
- package/dist/{CodeEditor-COnz9c6B.js → CodeEditor-ZoBu3Gjw.js} +8 -8
- package/dist/{CodeEditor-COnz9c6B.js.map → CodeEditor-ZoBu3Gjw.js.map} +1 -1
- package/dist/{Comment-0n98b_f_.js → Comment-2q9SomE2.js} +5 -5
- package/dist/{Comment-0n98b_f_.js.map → Comment-2q9SomE2.js.map} +1 -1
- package/dist/{Comment-Cg0f7eLa.cjs → Comment-rQxuMDQv.cjs} +6 -6
- package/dist/{Comment-Cg0f7eLa.cjs.map → Comment-rQxuMDQv.cjs.map} +1 -1
- package/dist/{Composer-D1gF-0jZ.js → Composer-bVE8qK52.js} +19 -14
- package/dist/Composer-bVE8qK52.js.map +1 -0
- package/dist/{Composer-BcueJvdX.cjs → Composer-u1K6edoZ.cjs} +18 -13
- package/dist/Composer-u1K6edoZ.cjs.map +1 -0
- package/dist/{DataCodeSection-CFxXsQWH.cjs → DataCodeSection-7SvRJj6f.cjs} +8 -8
- package/dist/{DataCodeSection-CFxXsQWH.cjs.map → DataCodeSection-7SvRJj6f.cjs.map} +1 -1
- package/dist/{DataCodeSection-PY9XEg2C.js → DataCodeSection-CTodi9wg.js} +8 -8
- package/dist/{DataCodeSection-PY9XEg2C.js.map → DataCodeSection-CTodi9wg.js.map} +1 -1
- package/dist/{DataDetailsPanel-DiyjEXqK.cjs → DataDetailsPanel-BDoD6pxx.cjs} +7 -7
- package/dist/{DataDetailsPanel-DiyjEXqK.cjs.map → DataDetailsPanel-BDoD6pxx.cjs.map} +1 -1
- package/dist/{DataDetailsPanel-CohEKPm4.js → DataDetailsPanel-BU05psHL.js} +7 -7
- package/dist/{DataDetailsPanel-CohEKPm4.js.map → DataDetailsPanel-BU05psHL.js.map} +1 -1
- package/dist/{DataKeysAndValues-PwOmGxyp.js → DataKeysAndValues-B56je3sK.js} +2 -2
- package/dist/{DataKeysAndValues-PwOmGxyp.js.map → DataKeysAndValues-B56je3sK.js.map} +1 -1
- package/dist/{DataKeysAndValues-DsH6AbAo.cjs → DataKeysAndValues-BbKeVxrQ.cjs} +2 -2
- package/dist/{DataKeysAndValues-DsH6AbAo.cjs.map → DataKeysAndValues-BbKeVxrQ.cjs.map} +1 -1
- package/dist/{DataList-CUhRQAv6.js → DataList-B7ho6PrJ.js} +8 -8
- package/dist/{DataList-CUhRQAv6.js.map → DataList-B7ho6PrJ.js.map} +1 -1
- package/dist/{DataList-Cj0mfk19.cjs → DataList-DTIdllb-.cjs} +8 -8
- package/dist/{DataList-Cj0mfk19.cjs.map → DataList-DTIdllb-.cjs.map} +1 -1
- package/dist/{DataPanel-Coc9h35I.cjs → DataPanel-BRRAvWYQ.cjs} +10 -10
- package/dist/{DataPanel-Coc9h35I.cjs.map → DataPanel-BRRAvWYQ.cjs.map} +1 -1
- package/dist/{DataPanel-IgB9D5PO.js → DataPanel-pVr5LVaK.js} +10 -10
- package/dist/{DataPanel-IgB9D5PO.js.map → DataPanel-pVr5LVaK.js.map} +1 -1
- package/dist/{Dialog-BvWF9HE-.cjs → Dialog-Duy3M1ny.cjs} +3 -3
- package/dist/{Dialog-BvWF9HE-.cjs.map → Dialog-Duy3M1ny.cjs.map} +1 -1
- package/dist/{Dialog-DaWtxwd9.js → Dialog-OBPu3rl2.js} +3 -3
- package/dist/{Dialog-DaWtxwd9.js.map → Dialog-OBPu3rl2.js.map} +1 -1
- package/dist/{EmptyState-DxDHlYqD.cjs → EmptyState-Dc-sP95H.cjs} +2 -2
- package/dist/{EmptyState-DxDHlYqD.cjs.map → EmptyState-Dc-sP95H.cjs.map} +1 -1
- package/dist/{EmptyState-P-Gy898T.js → EmptyState-i88y1x75.js} +2 -2
- package/dist/{EmptyState-P-Gy898T.js.map → EmptyState-i88y1x75.js.map} +1 -1
- package/dist/{ErrorBoundary-B5GjmA6V.cjs → ErrorBoundary-Bwoum0sT.cjs} +3 -3
- package/dist/{ErrorBoundary-B5GjmA6V.cjs.map → ErrorBoundary-Bwoum0sT.cjs.map} +1 -1
- package/dist/{ErrorBoundary-Cat3KU86.js → ErrorBoundary-BzmaWe2y.js} +3 -3
- package/dist/{ErrorBoundary-Cat3KU86.js.map → ErrorBoundary-BzmaWe2y.js.map} +1 -1
- package/dist/{FilterBar-PSQ1OwqH.js → FilterBar-Kmn6gMgO.js} +14 -15
- package/dist/FilterBar-Kmn6gMgO.js.map +1 -0
- package/dist/{FilterBar-BSP2UTjc.cjs → FilterBar-jBz6yaNu.cjs} +13 -14
- package/dist/FilterBar-jBz6yaNu.cjs.map +1 -0
- package/dist/{LogsDataList-BI2C5OJz.js → LogsDataList-Cdo_U0Ei.js} +5 -5
- package/dist/{LogsDataList-BI2C5OJz.js.map → LogsDataList-Cdo_U0Ei.js.map} +1 -1
- package/dist/{LogsDataList-CCIfUPGo.cjs → LogsDataList-z0Y2X8P5.cjs} +5 -5
- package/dist/{LogsDataList-CCIfUPGo.cjs.map → LogsDataList-z0Y2X8P5.cjs.map} +1 -1
- package/dist/{MarkdownRenderer-y65WGBhC.cjs → MarkdownRenderer-CUYpmuPh.cjs} +6 -6
- package/dist/{MarkdownRenderer-y65WGBhC.cjs.map → MarkdownRenderer-CUYpmuPh.cjs.map} +1 -1
- package/dist/{MarkdownRenderer-CI30RqdB.js → MarkdownRenderer-CY8LGt-l.js} +6 -6
- package/dist/{MarkdownRenderer-CI30RqdB.js.map → MarkdownRenderer-CY8LGt-l.js.map} +1 -1
- package/dist/MarkdownRenderer.css +77 -6
- package/dist/{Message-jj56lxNL.cjs → Message-CgO_SxI4.cjs} +20 -9
- package/dist/Message-CgO_SxI4.cjs.map +1 -0
- package/dist/{Message-CWzi5F_Q.js → Message-DnnCoSef.js} +20 -9
- package/dist/{Message-CWzi5F_Q.js.map → Message-DnnCoSef.js.map} +1 -1
- package/dist/{MessageScroller-CGsfTd1Z.cjs → MessageScroller-D-mK1uuu.cjs} +50 -26
- package/dist/MessageScroller-D-mK1uuu.cjs.map +1 -0
- package/dist/{MessageScroller-DvaKlm4O.js → MessageScroller-nV_zBF3H.js} +50 -26
- package/dist/MessageScroller-nV_zBF3H.js.map +1 -0
- package/dist/Metadata-5GJlO4GU.cjs +32 -0
- package/dist/Metadata-5GJlO4GU.cjs.map +1 -0
- package/dist/Metadata-DlVgmRTA.js +27 -0
- package/dist/Metadata-DlVgmRTA.js.map +1 -0
- package/dist/{MetricsCard-BEwiS7Pe.cjs → MetricsCard-DojbLiEx.cjs} +19 -6
- package/dist/MetricsCard-DojbLiEx.cjs.map +1 -0
- package/dist/{MetricsCard-ua6C6b8a.js → MetricsCard-kAqSCPPe.js} +20 -7
- package/dist/MetricsCard-kAqSCPPe.js.map +1 -0
- package/dist/{MetricsKpiCard-OHbAElTl.js → MetricsKpiCard-1blTbzUs.js} +6 -6
- package/dist/{MetricsKpiCard-OHbAElTl.js.map → MetricsKpiCard-1blTbzUs.js.map} +1 -1
- package/dist/{MetricsKpiCard-By_-sagx.cjs → MetricsKpiCard-C_9GvRAp.cjs} +6 -6
- package/dist/{MetricsKpiCard-By_-sagx.cjs.map → MetricsKpiCard-C_9GvRAp.cjs.map} +1 -1
- package/dist/{MetricsLineChart-4SwxBbQx.js → MetricsLineChart-4w5lpH63.js} +3 -3
- package/dist/{MetricsLineChart-4SwxBbQx.js.map → MetricsLineChart-4w5lpH63.js.map} +1 -1
- package/dist/{MetricsLineChart-tZxsauau.cjs → MetricsLineChart-BnY9JKzc.cjs} +3 -3
- package/dist/{MetricsLineChart-tZxsauau.cjs.map → MetricsLineChart-BnY9JKzc.cjs.map} +1 -1
- package/dist/{MetricsStackedBarChart-D2QyS4-z.js → MetricsStackedBarChart-Bmk0OjYp.js} +7 -7
- package/dist/{MetricsStackedBarChart-D2QyS4-z.js.map → MetricsStackedBarChart-Bmk0OjYp.js.map} +1 -1
- package/dist/{MetricsStackedBarChart-CDLE76IB.cjs → MetricsStackedBarChart-CJQF99sc.cjs} +7 -7
- package/dist/{MetricsStackedBarChart-CDLE76IB.cjs.map → MetricsStackedBarChart-CJQF99sc.cjs.map} +1 -1
- package/dist/{MetricsTable-BSl81oNe.cjs → MetricsTable-CvMoo2vg.cjs} +3 -3
- package/dist/{MetricsTable-BSl81oNe.cjs.map → MetricsTable-CvMoo2vg.cjs.map} +1 -1
- package/dist/{MetricsTable-DID6LRoP.js → MetricsTable-DIjbD5Xk.js} +3 -3
- package/dist/{MetricsTable-DID6LRoP.js.map → MetricsTable-DIjbD5Xk.js.map} +1 -1
- package/dist/{Notice-JZ7SW7q6.cjs → Notice-B_KjMmA6.cjs} +3 -3
- package/dist/{Notice-JZ7SW7q6.cjs.map → Notice-B_KjMmA6.cjs.map} +1 -1
- package/dist/{Notice-C-8oOZZF.js → Notice-OSlG42lD.js} +2 -2
- package/dist/{Notice-C-8oOZZF.js.map → Notice-OSlG42lD.js.map} +1 -1
- package/dist/{PageLayout-DFRzcnkf.cjs → PageLayout-C0Fo3ZQC.cjs} +3 -3
- package/dist/{PageLayout-DFRzcnkf.cjs.map → PageLayout-C0Fo3ZQC.cjs.map} +1 -1
- package/dist/{PageLayout-CyM_Op3c.js → PageLayout-DLll7ZwB.js} +3 -3
- package/dist/{PageLayout-CyM_Op3c.js.map → PageLayout-DLll7ZwB.js.map} +1 -1
- package/dist/{SankeyChart-E68mYEs2.js → SankeyChart-lkM5cpOC.js} +3 -3
- package/dist/{SankeyChart-E68mYEs2.js.map → SankeyChart-lkM5cpOC.js.map} +1 -1
- package/dist/{SankeyChart-DHeJ45KN.cjs → SankeyChart-m50vrsBS.cjs} +3 -3
- package/dist/{SankeyChart-DHeJ45KN.cjs.map → SankeyChart-m50vrsBS.cjs.map} +1 -1
- package/dist/{Section-CyGQZR7U.cjs → Section-B8MIbDDs.cjs} +3 -3
- package/dist/{Section-CyGQZR7U.cjs.map → Section-B8MIbDDs.cjs.map} +1 -1
- package/dist/{Section-CWFQ8jNS.js → Section-C9Fgv-IF.js} +3 -3
- package/dist/{Section-CWFQ8jNS.js.map → Section-C9Fgv-IF.js.map} +1 -1
- package/dist/{ShareBar-3Z5np-NY.cjs → ShareBar-DERy_egz.cjs} +2 -2
- package/dist/{ShareBar-3Z5np-NY.cjs.map → ShareBar-DERy_egz.cjs.map} +1 -1
- package/dist/{ShareBar-D6dWWl4C.js → ShareBar-KrzzdcyI.js} +2 -2
- package/dist/{ShareBar-D6dWWl4C.js.map → ShareBar-KrzzdcyI.js.map} +1 -1
- package/dist/{Tree-BplQcY8u.cjs → Tree-Caz4FTCU.cjs} +3 -3
- package/dist/{Tree-BplQcY8u.cjs.map → Tree-Caz4FTCU.cjs.map} +1 -1
- package/dist/{Tree-CoLkeBCL.js → Tree-od43gLMO.js} +3 -3
- package/dist/{Tree-CoLkeBCL.js.map → Tree-od43gLMO.js.map} +1 -1
- package/dist/{Txt-BM6TVV_c.js → Txt-5efBsb2p.js} +2 -2
- package/dist/{Txt-BM6TVV_c.js.map → Txt-5efBsb2p.js.map} +1 -1
- package/dist/{Txt-BnoSqxKE.cjs → Txt-_00wWxTd.cjs} +2 -2
- package/dist/{Txt-BnoSqxKE.cjs.map → Txt-_00wWxTd.cjs.map} +1 -1
- package/dist/{Workflow-DSWQ-ROz.cjs → Workflow-XR5L-3cJ.cjs} +15 -14
- package/dist/Workflow-XR5L-3cJ.cjs.map +1 -0
- package/dist/{Workflow-C3SlEdP-.js → Workflow-mIbUYdv0.js} +15 -14
- package/dist/Workflow-mIbUYdv0.js.map +1 -0
- package/dist/{activity-CcQZeDYi.cjs → activity-BprmG6yH.cjs} +10 -10
- package/dist/activity-BprmG6yH.cjs.map +1 -0
- package/dist/{activity-C8Ql81WM.js → activity-ClFChYfl.js} +10 -10
- package/dist/activity-ClFChYfl.js.map +1 -0
- package/dist/annotations.css +8 -0
- package/dist/{ask-user-DPznrqGO.js → ask-user-D4ezQ6pt.js} +5 -5
- package/dist/{ask-user-DPznrqGO.js.map → ask-user-D4ezQ6pt.js.map} +1 -1
- package/dist/{ask-user-C1p2PEYe.cjs → ask-user-DcnUNMM5.cjs} +5 -5
- package/dist/{ask-user-C1p2PEYe.cjs.map → ask-user-DcnUNMM5.cjs.map} +1 -1
- package/dist/{buttons-group-DkFlnMiL.js → buttons-group-DA_wORqQ.js} +2 -2
- package/dist/{buttons-group-DkFlnMiL.js.map → buttons-group-DA_wORqQ.js.map} +1 -1
- package/dist/{buttons-group-Dc6R7YSs.cjs → buttons-group-DM6_Kohs.cjs} +2 -2
- package/dist/{buttons-group-Dc6R7YSs.cjs.map → buttons-group-DM6_Kohs.cjs.map} +1 -1
- package/dist/chat-shell-context-0m1GVhS7.js +16 -0
- package/dist/chat-shell-context-0m1GVhS7.js.map +1 -0
- package/dist/chat-shell-context-ONCslAGn.cjs +39 -0
- package/dist/chat-shell-context-ONCslAGn.cjs.map +1 -0
- package/dist/{clear-filters-button-CNrRuHOY.js → clear-filters-button-C79dzuzA.js} +2 -2
- package/dist/{clear-filters-button-CNrRuHOY.js.map → clear-filters-button-C79dzuzA.js.map} +1 -1
- package/dist/{clear-filters-button-Buc973vw.cjs → clear-filters-button-CCO-y7kt.cjs} +2 -2
- package/dist/{clear-filters-button-Buc973vw.cjs.map → clear-filters-button-CCO-y7kt.cjs.map} +1 -1
- package/dist/{combobox-DIT_6xiG.cjs → combobox-i723LxeC.cjs} +33 -29
- package/dist/combobox-i723LxeC.cjs.map +1 -0
- package/dist/{combobox-D21no8t5.js → combobox-lbSxWRMl.js} +33 -29
- package/dist/combobox-lbSxWRMl.js.map +1 -0
- package/dist/{combobox-parts-C4phOq4t.cjs → combobox-parts-BeNqgCbj.cjs} +27 -12
- package/dist/combobox-parts-BeNqgCbj.cjs.map +1 -0
- package/dist/{combobox-parts-D90ir0Py.js → combobox-parts-C9o4UfH_.js} +22 -13
- package/dist/combobox-parts-C9o4UfH_.js.map +1 -0
- package/dist/components/AgentIndicator.cjs.js +1 -1
- package/dist/components/AgentIndicator.es.js +1 -1
- package/dist/components/AlertDialog.cjs.js +2 -2
- package/dist/components/AlertDialog.es.js +2 -2
- package/dist/components/AttachmentCard.cjs.js +1 -1
- package/dist/components/AttachmentCard.es.js +1 -1
- package/dist/components/Avatar.cjs.js +1 -1
- package/dist/components/Avatar.es.js +1 -1
- package/dist/components/Badge.cjs.js +1 -1
- package/dist/components/Badge.es.js +1 -1
- package/dist/components/Breadcrumb.cjs.js +6 -5
- package/dist/components/Breadcrumb.cjs.js.map +1 -1
- package/dist/components/Breadcrumb.es.js +6 -5
- package/dist/components/Breadcrumb.es.js.map +1 -1
- package/dist/components/Button.cjs.js +2 -2
- package/dist/components/Button.es.js +2 -2
- package/dist/components/ButtonsGroup.cjs.js +1 -1
- package/dist/components/ButtonsGroup.es.js +1 -1
- package/dist/components/Card.cjs.js +1 -1
- package/dist/components/Card.es.js +1 -1
- package/dist/components/ChartSkeleton.cjs.js +2 -2
- package/dist/components/ChartSkeleton.es.js +2 -2
- package/dist/components/ChartTooltip.cjs.js +1 -1
- package/dist/components/ChartTooltip.es.js +1 -1
- package/dist/components/ChatShell.cjs.js +33 -9
- package/dist/components/ChatShell.cjs.js.map +1 -1
- package/dist/components/ChatShell.es.js +33 -9
- package/dist/components/ChatShell.es.js.map +1 -1
- package/dist/components/Checkbox.cjs.js +1 -1
- package/dist/components/Checkbox.es.js +1 -1
- package/dist/components/ClampedText.cjs.js +3 -3
- package/dist/components/ClampedText.es.js +3 -3
- package/dist/components/ClearFiltersButton.cjs.js +1 -1
- package/dist/components/ClearFiltersButton.es.js +1 -1
- package/dist/components/CodeBlock.cjs.js +5 -5
- package/dist/components/CodeBlock.es.js +5 -5
- package/dist/components/CodeDiff.cjs.js +3 -3
- package/dist/components/CodeDiff.es.js +2 -2
- package/dist/components/CodeEditor.cjs.js +1 -1
- package/dist/components/CodeEditor.es.js +1 -1
- package/dist/components/Collapsible.cjs.js +1 -1
- package/dist/components/Collapsible.es.js +1 -1
- package/dist/components/CollapsibleBox.cjs.js +1 -1
- package/dist/components/CollapsibleBox.es.js +1 -1
- package/dist/components/Combobox.cjs.js +2 -2
- package/dist/components/Combobox.es.js +2 -2
- package/dist/components/Command.cjs.js +5 -5
- package/dist/components/Command.es.js +5 -5
- package/dist/components/CommandPalette.cjs.js +7 -7
- package/dist/components/CommandPalette.cjs.js.map +1 -1
- package/dist/components/CommandPalette.es.js +7 -7
- package/dist/components/CommandPalette.es.js.map +1 -1
- package/dist/components/Comment.cjs.js +1 -1
- package/dist/components/Comment.es.js +1 -1
- package/dist/components/CompactNumber.cjs.js +2 -2
- package/dist/components/CompactNumber.es.js +2 -2
- package/dist/components/Composer.cjs.js +1 -1
- package/dist/components/Composer.es.js +1 -1
- package/dist/components/ContextMenu.cjs.js +1 -1
- package/dist/components/ContextMenu.es.js +1 -1
- package/dist/components/CopyButton.cjs.js +1 -1
- package/dist/components/CopyButton.es.js +1 -1
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +1 -1
- package/dist/components/DataDetailsPanel.es.js +1 -1
- package/dist/components/DataKeysAndValues.cjs.js +1 -1
- package/dist/components/DataKeysAndValues.es.js +1 -1
- package/dist/components/DataList.cjs.js +3 -3
- package/dist/components/DataList.es.js +3 -3
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateRangeTimeline.cjs.js +9 -9
- package/dist/components/DateRangeTimeline.cjs.js.map +1 -1
- package/dist/components/DateRangeTimeline.es.js +9 -9
- package/dist/components/DateRangeTimeline.es.js.map +1 -1
- package/dist/components/DateTimePicker.cjs.js +75 -142
- package/dist/components/DateTimePicker.cjs.js.map +1 -1
- package/dist/components/DateTimePicker.es.js +79 -146
- package/dist/components/DateTimePicker.es.js.map +1 -1
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/Dialog.cjs.js +1 -1
- package/dist/components/Dialog.es.js +1 -1
- package/dist/components/DiffStat.cjs.js +1 -1
- package/dist/components/DiffStat.es.js +1 -1
- package/dist/components/DisabledFeatureButton.cjs.js +3 -3
- package/dist/components/DisabledFeatureButton.es.js +3 -3
- package/dist/components/DisclosureChevron.cjs.js +1 -1
- package/dist/components/DisclosureChevron.es.js +1 -1
- package/dist/components/Drawer.cjs.js +2 -2
- package/dist/components/Drawer.es.js +2 -2
- package/dist/components/DropdownMenu.cjs.js +1 -1
- package/dist/components/DropdownMenu.es.js +1 -1
- package/dist/components/EmptyState.cjs.js +1 -1
- package/dist/components/EmptyState.es.js +1 -1
- package/dist/components/Entity.cjs.js +3 -3
- package/dist/components/Entity.es.js +3 -3
- package/dist/components/EntityHeader.cjs.js +2 -2
- package/dist/components/EntityHeader.es.js +2 -2
- package/dist/components/Entry.cjs.js +1 -1
- package/dist/components/Entry.es.js +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +6 -6
- package/dist/components/EnvironmentVariablesEditor.es.js +6 -6
- package/dist/components/ErrorBoundary.cjs.js +1 -1
- package/dist/components/ErrorBoundary.es.js +1 -1
- package/dist/components/Field.cjs.js +2 -2
- package/dist/components/Field.es.js +2 -2
- 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 +3 -3
- package/dist/components/FormFieldBlocks.cjs.js +5 -5
- package/dist/components/FormFieldBlocks.es.js +6 -6
- package/dist/components/Header.cjs.js +1 -1
- package/dist/components/Header.es.js +1 -1
- package/dist/components/HoverCard.cjs.js +1 -1
- package/dist/components/HoverCard.es.js +1 -1
- package/dist/components/Input.cjs.js +1 -1
- package/dist/components/Input.es.js +1 -1
- package/dist/components/InputGroup.cjs.js +1 -1
- package/dist/components/InputGroup.es.js +1 -1
- package/dist/components/InputNumber.cjs.js +3 -3
- package/dist/components/InputNumber.es.js +3 -3
- package/dist/components/JSONSchemaForm.cjs.js +4 -4
- package/dist/components/JSONSchemaForm.es.js +4 -4
- package/dist/components/Kbd.cjs.js +1 -1
- package/dist/components/Kbd.es.js +1 -1
- package/dist/components/KeyValueList.cjs.js +2 -2
- package/dist/components/KeyValueList.es.js +2 -2
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +2 -2
- package/dist/components/LogsDataList.es.js +2 -2
- 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 +1 -1
- package/dist/components/MessageScroller.cjs.js +1 -1
- package/dist/components/MessageScroller.es.js +1 -1
- package/dist/components/Metadata.cjs.js +3 -0
- package/dist/components/Metadata.d.ts +1 -0
- package/dist/components/Metadata.es.js +1 -0
- package/dist/components/Meter.cjs.js +3 -3
- package/dist/components/Meter.es.js +3 -3
- 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 +1 -1
- package/dist/components/MetricsLineChart.es.js +1 -1
- package/dist/components/MetricsStackedBarChart.cjs.js +1 -1
- package/dist/components/MetricsStackedBarChart.es.js +1 -1
- package/dist/components/MetricsTable.cjs.js +1 -1
- package/dist/components/MetricsTable.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/Popover.cjs.js +1 -1
- package/dist/components/Popover.es.js +1 -1
- package/dist/components/PrevNextNav.cjs.js +1 -1
- package/dist/components/PrevNextNav.es.js +1 -1
- package/dist/components/ProductAvatar.cjs.js +2 -2
- package/dist/components/ProductAvatar.es.js +2 -2
- package/dist/components/ProductBadge.cjs.js +2 -2
- package/dist/components/ProductBadge.es.js +2 -2
- package/dist/components/PropertyFilter.cjs.js +9 -9
- package/dist/components/PropertyFilter.cjs.js.map +1 -1
- package/dist/components/PropertyFilter.es.js +9 -9
- package/dist/components/PropertyFilter.es.js.map +1 -1
- package/dist/components/RadioGroup.cjs.js +1 -1
- package/dist/components/RadioGroup.es.js +1 -1
- package/dist/components/RelativeTimestamp.cjs.js +6 -30
- package/dist/components/RelativeTimestamp.cjs.js.map +1 -1
- package/dist/components/RelativeTimestamp.es.js +7 -31
- package/dist/components/RelativeTimestamp.es.js.map +1 -1
- package/dist/components/RuleBuilder.cjs.js +22 -22
- package/dist/components/RuleBuilder.cjs.js.map +1 -1
- package/dist/components/RuleBuilder.es.js +5 -5
- package/dist/components/SankeyChart.cjs.js +1 -1
- package/dist/components/SankeyChart.es.js +1 -1
- package/dist/components/SavedViews.cjs.js +9 -9
- package/dist/components/SavedViews.es.js +9 -9
- package/dist/components/ScatterPlotChart.cjs.js +2 -2
- package/dist/components/ScatterPlotChart.es.js +2 -2
- package/dist/components/ScrollArea.cjs.js +1 -1
- package/dist/components/ScrollArea.es.js +1 -1
- package/dist/components/SearchInput.cjs.js +2 -2
- package/dist/components/SearchInput.es.js +2 -2
- 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/SegmentedControl.cjs.js +3 -3
- package/dist/components/SegmentedControl.es.js +3 -3
- package/dist/components/Select.cjs.js +1 -1
- package/dist/components/Select.es.js +1 -1
- package/dist/components/ShareBar.cjs.js +1 -1
- package/dist/components/ShareBar.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +8 -8
- package/dist/components/SideDialog.es.js +8 -8
- package/dist/components/Sidebar.cjs.js +14 -14
- package/dist/components/Sidebar.cjs.js.map +1 -1
- package/dist/components/Sidebar.es.js +15 -15
- package/dist/components/Sidebar.es.js.map +1 -1
- package/dist/components/Skeleton.cjs.js +1 -1
- package/dist/components/Skeleton.es.js +1 -1
- package/dist/components/Spinner.cjs.js +1 -1
- package/dist/components/Spinner.es.js +1 -1
- package/dist/components/StatusIndicators.cjs.js +3 -3
- package/dist/components/StatusIndicators.es.js +3 -3
- package/dist/components/Steps.cjs.js +73 -3
- package/dist/components/Steps.cjs.js.map +1 -1
- package/dist/components/Steps.es.js +73 -4
- package/dist/components/Steps.es.js.map +1 -1
- package/dist/components/Switch.cjs.js +2 -2
- package/dist/components/Switch.es.js +2 -2
- package/dist/components/Table.cjs.js +4 -4
- package/dist/components/Table.es.js +4 -4
- package/dist/components/Tabs.cjs.js +2 -2
- package/dist/components/Tabs.es.js +2 -2
- package/dist/components/Text.cjs.js +1 -1
- package/dist/components/Text.es.js +1 -1
- package/dist/components/Textarea.cjs.js +2 -2
- package/dist/components/Textarea.es.js +2 -2
- package/dist/components/ThinkingLevel.cjs.js +5 -5
- package/dist/components/ThinkingLevel.cjs.js.map +1 -1
- package/dist/components/ThinkingLevel.es.js +5 -5
- package/dist/components/ThinkingLevel.es.js.map +1 -1
- package/dist/components/ThreadList.cjs.js +2 -2
- package/dist/components/ThreadList.es.js +2 -2
- package/dist/components/ThreadRail.cjs.js +8 -8
- package/dist/components/ThreadRail.cjs.js.map +1 -1
- package/dist/components/ThreadRail.es.js +8 -8
- package/dist/components/ThreadRail.es.js.map +1 -1
- package/dist/components/Toaster.cjs.js +4 -4
- package/dist/components/Toaster.es.js +3 -3
- package/dist/components/TokenBudget.cjs.js +3 -3
- package/dist/components/TokenBudget.es.js +2 -2
- package/dist/components/Tooltip.cjs.js +2 -2
- package/dist/components/Tooltip.es.js +2 -2
- package/dist/components/Tree.cjs.js +1 -1
- package/dist/components/Tree.es.js +1 -1
- package/dist/components/Truncate.cjs.js +3 -3
- package/dist/components/Truncate.es.js +3 -3
- package/dist/components/Txt.cjs.js +1 -1
- package/dist/components/Txt.es.js +1 -1
- package/dist/components/Workflow.cjs.js +1 -1
- package/dist/components/Workflow.es.js +1 -1
- package/dist/components/ai/activity.cjs.js +1 -1
- package/dist/components/ai/activity.es.js +1 -1
- package/dist/components/ai/annotations.cjs.js +836 -0
- package/dist/components/ai/annotations.cjs.js.map +1 -0
- package/dist/components/ai/annotations.d.ts +1 -0
- package/dist/components/ai/annotations.es.js +831 -0
- package/dist/components/ai/annotations.es.js.map +1 -0
- package/dist/components/ai/ask-user.cjs.js +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/plan.cjs.js +6 -6
- package/dist/components/ai/plan.es.js +6 -6
- package/dist/components/ai/task-list.cjs.js +4 -4
- package/dist/components/ai/task-list.cjs.js.map +1 -1
- package/dist/components/ai/task-list.es.js +4 -4
- package/dist/components/ai/task-list.es.js.map +1 -1
- package/dist/components/ai/tool-approval.cjs.js +1 -1
- package/dist/components/ai/tool-approval.es.js +1 -1
- package/dist/components/ai/tool-call.cjs.js +7 -2
- package/dist/components/ai/tool-call.es.js +3 -3
- package/dist/components/ai/transcript-divider.cjs.js +1 -1
- package/dist/components/ai/transcript-divider.es.js +1 -1
- package/dist/{context-menu-Dv0NU0oM.js → context-menu-6_Kcs8kj.js} +3 -3
- package/dist/{context-menu-Dv0NU0oM.js.map → context-menu-6_Kcs8kj.js.map} +1 -1
- package/dist/{context-menu-DTFPCyae.cjs → context-menu-DwB7u7fB.cjs} +3 -3
- package/dist/{context-menu-DTFPCyae.cjs.map → context-menu-DwB7u7fB.cjs.map} +1 -1
- package/dist/{copy-button-BXrbevLn.js → copy-button-B-_Z6N6y.js} +2 -2
- package/dist/{copy-button-BXrbevLn.js.map → copy-button-B-_Z6N6y.js.map} +1 -1
- package/dist/{copy-button-DJAQ6_3o.cjs → copy-button-DuEUYvS2.cjs} +2 -2
- package/dist/{copy-button-DJAQ6_3o.cjs.map → copy-button-DuEUYvS2.cjs.map} +1 -1
- package/dist/{data-list-C4Vmq5HA.cjs → data-list-072hHK9L.cjs} +7 -7
- package/dist/{data-list-C4Vmq5HA.cjs.map → data-list-072hHK9L.cjs.map} +1 -1
- package/dist/{data-list-DHCOoLmj.js → data-list-GzbzPmYR.js} +7 -7
- package/dist/{data-list-DHCOoLmj.js.map → data-list-GzbzPmYR.js.map} +1 -1
- package/dist/{date-time-range-picker-CWGjoR3j.cjs → date-time-range-picker-Bq-8IPtS.cjs} +141 -112
- package/dist/date-time-range-picker-Bq-8IPtS.cjs.map +1 -0
- package/dist/{date-time-range-picker-CdSiXwB4.js → date-time-range-picker-DdNgKD87.js} +144 -115
- package/dist/date-time-range-picker-DdNgKD87.js.map +1 -0
- 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 +3 -3
- package/dist/domains/auth/components/session-expired.es.js +3 -3
- package/dist/domains/chat/activity/activity-stretch-line.cjs.js +2 -2
- package/dist/domains/chat/activity/activity-stretch-line.es.js +2 -2
- package/dist/domains/chat/activity/components/activity-fold.cjs.js +54 -58
- package/dist/domains/chat/activity/components/activity-fold.cjs.js.map +1 -1
- package/dist/domains/chat/activity/components/activity-fold.es.js +54 -58
- package/dist/domains/chat/activity/components/activity-fold.es.js.map +1 -1
- package/dist/domains/chat/activity/components/calls-panel.cjs.js +2 -2
- package/dist/domains/chat/activity/components/calls-panel.es.js +2 -2
- package/dist/domains/chat/activity/components/stretch-content.cjs.js +2 -2
- package/dist/domains/chat/activity/components/stretch-content.es.js +2 -2
- package/dist/domains/chat/activity/components/stretch-thought.cjs.js +1 -1
- package/dist/domains/chat/activity/components/stretch-thought.es.js +1 -1
- package/dist/domains/chat/activity/model/activity-segments.cjs.js +1 -1
- package/dist/domains/chat/activity/model/activity-segments.es.js +1 -1
- package/dist/domains/chat/activity/model/activity-words.cjs.js +7 -11
- package/dist/domains/chat/activity/model/activity-words.cjs.js.map +1 -1
- package/dist/domains/chat/activity/model/activity-words.es.js +8 -11
- package/dist/domains/chat/activity/model/activity-words.es.js.map +1 -1
- package/dist/domains/chat/activity.cjs.js +2 -5
- package/dist/domains/chat/activity.es.js +4 -5
- package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js +3 -3
- package/dist/domains/chat/attachments/attachment-preview-dialog.es.js +3 -3
- package/dist/domains/chat/attachments/composer-attachment-entry.cjs.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment-entry.es.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment-list.cjs.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment-list.es.js +2 -2
- package/dist/domains/chat/attachments/composer-attachment.cjs.js +4 -4
- package/dist/domains/chat/attachments/composer-attachment.es.js +4 -4
- package/dist/domains/chat/attachments/message-attachment.cjs.js +2 -2
- package/dist/domains/chat/attachments/message-attachment.es.js +2 -2
- package/dist/domains/chat/attachments/message-image-attachment.cjs.js +2 -2
- package/dist/domains/chat/attachments/message-image-attachment.cjs.js.map +1 -1
- package/dist/domains/chat/attachments/message-image-attachment.es.js +2 -2
- package/dist/domains/chat/attachments/message-image-attachment.es.js.map +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +2 -2
- package/dist/domains/chat/components/badge-wrapper.es.js +2 -2
- package/dist/domains/chat/components/loading-badge.cjs.js +2 -2
- package/dist/domains/chat/components/loading-badge.es.js +2 -2
- package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +4 -4
- package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +4 -4
- package/dist/domains/chat/components/section-label.cjs.js +1 -1
- package/dist/domains/chat/components/section-label.es.js +1 -1
- package/dist/domains/chat/context/chat-context.cjs.js +2 -0
- package/dist/domains/chat/context/chat-context.cjs.js.map +1 -1
- package/dist/domains/chat/context/chat-context.es.js +2 -1
- package/dist/domains/chat/context/chat-context.es.js.map +1 -1
- package/dist/domains/chat/knowledge/knowledge-links.cjs.js +1 -1
- package/dist/domains/chat/knowledge/knowledge-links.es.js +1 -1
- package/dist/domains/chat/knowledge/pinned-knowledge.cjs.js +3 -3
- package/dist/domains/chat/knowledge/pinned-knowledge.es.js +3 -3
- package/dist/domains/chat/knowledge.cjs.js +1 -1
- package/dist/domains/chat/knowledge.es.js +1 -1
- package/dist/domains/chat/messages/assistant-message-actions.cjs.js +2 -2
- package/dist/domains/chat/messages/assistant-message-actions.es.js +2 -2
- package/dist/domains/chat/messages/dataset-save-action.cjs.js +10 -10
- package/dist/domains/chat/messages/dataset-save-action.es.js +11 -11
- package/dist/domains/chat/messages/message-row.cjs.js +20 -20
- package/dist/domains/chat/messages/message-row.cjs.js.map +1 -1
- package/dist/domains/chat/messages/message-row.es.js +20 -20
- package/dist/domains/chat/messages/message-row.es.js.map +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js +5 -5
- package/dist/domains/chat/messages/notification-signal-notice.cjs.js.map +1 -1
- package/dist/domains/chat/messages/notification-signal-notice.es.js +5 -5
- package/dist/domains/chat/messages/notification-signal-notice.es.js.map +1 -1
- package/dist/domains/chat/messages/reasoning-content.cjs.js +1 -1
- package/dist/domains/chat/messages/reasoning-content.es.js +1 -1
- package/dist/domains/chat/messages/renderers/data-part-renderer.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/data-part-renderer.es.js +1 -1
- package/dist/domains/chat/messages/renderers/message-text.cjs.js +5 -5
- package/dist/domains/chat/messages/renderers/message-text.es.js +5 -5
- 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/renderers/user-file-part-renderer.cjs.js +1 -1
- package/dist/domains/chat/messages/renderers/user-file-part-renderer.es.js +1 -1
- package/dist/domains/chat/messages/signal-badge.cjs.js +5 -5
- package/dist/domains/chat/messages/signal-badge.es.js +5 -5
- package/dist/domains/chat/messages/skill-message.cjs.js +4 -4
- package/dist/domains/chat/messages/skill-message.es.js +4 -4
- 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 +4 -4
- package/dist/domains/chat/messages/tripwire-notice.es.js +4 -4
- package/dist/domains/chat/tools/badges/agent-badge-wrapper.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/agent-badge-wrapper.es.js +1 -1
- package/dist/domains/chat/tools/badges/agent-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/agent-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.cjs.js +5 -5
- package/dist/domains/chat/tools/badges/background-task-metadata-dialog.es.js +5 -5
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +7 -6
- package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js +7 -6
- package/dist/domains/chat/tools/badges/code-mode-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/file-tree-badge.cjs.js +5 -5
- package/dist/domains/chat/tools/badges/file-tree-badge.es.js +5 -5
- package/dist/domains/chat/tools/badges/knowledge-body-range.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/knowledge-body-range.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/knowledge-body-range.es.js +2 -2
- package/dist/domains/chat/tools/badges/knowledge-body-range.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/knowledge-tool-badge.cjs.js +34 -28
- package/dist/domains/chat/tools/badges/knowledge-tool-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/knowledge-tool-badge.es.js +34 -28
- package/dist/domains/chat/tools/badges/knowledge-tool-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/mcp-task-chip.cjs.js +28 -24
- package/dist/domains/chat/tools/badges/mcp-task-chip.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/mcp-task-chip.es.js +28 -24
- package/dist/domains/chat/tools/badges/mcp-task-chip.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +4 -4
- package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +4 -4
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js +8 -7
- package/dist/domains/chat/tools/badges/observation-marker-details.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js +8 -7
- package/dist/domains/chat/tools/badges/observation-marker-details.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +3 -3
- package/dist/domains/chat/tools/badges/observation-renderer.es.js +3 -3
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js +25 -34
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js +27 -36
- package/dist/domains/chat/tools/badges/sandbox-execution-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-badge.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/tool-approval-badge.es.js +1 -1
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js +19 -26
- package/dist/domains/chat/tools/badges/tool-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/tool-badge.es.js +19 -26
- package/dist/domains/chat/tools/badges/tool-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js +12 -10
- package/dist/domains/chat/tools/badges/workflow-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/workflow-badge.es.js +12 -10
- package/dist/domains/chat/tools/badges/workflow-badge.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workspace-data-parts.cjs.js +13 -0
- package/dist/domains/chat/tools/badges/workspace-data-parts.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/workspace-data-parts.es.js +13 -1
- package/dist/domains/chat/tools/badges/workspace-data-parts.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/workspace-link.cjs.js +1 -1
- package/dist/domains/chat/tools/badges/workspace-link.es.js +1 -1
- package/dist/domains/chat/tools/connect-prompt-tool.cjs.js +8 -8
- package/dist/domains/chat/tools/connect-prompt-tool.es.js +8 -8
- package/dist/domains/chat/tools/mcp-input-request-tool.cjs.js +5 -5
- package/dist/domains/chat/tools/mcp-input-request-tool.es.js +5 -5
- package/dist/domains/chat/tools/submit-plan-tool.cjs.js +4 -4
- package/dist/domains/chat/tools/submit-plan-tool.es.js +4 -4
- package/dist/domains/chat/tools/tool-card-kind.cjs.js +10 -5
- package/dist/domains/chat/tools/tool-card-kind.cjs.js.map +1 -1
- package/dist/domains/chat/tools/tool-card-kind.es.js +10 -5
- package/dist/domains/chat/tools/tool-card-kind.es.js.map +1 -1
- package/dist/domains/chat/tools/tool-card.cjs.js +1 -1
- package/dist/domains/chat/tools/tool-card.es.js +1 -1
- package/dist/domains/chat/tools/tool-groups.cjs.js +2 -2
- package/dist/domains/chat/tools/tool-groups.es.js +2 -2
- package/dist/domains/chat.cjs.js +6 -5
- package/dist/domains/chat.es.js +6 -6
- package/dist/domains/connect.cjs.js +1 -1
- package/dist/domains/connect.es.js +1 -1
- package/dist/domains/dashboards/components/dashboard-grid.cjs.js +11 -8
- package/dist/domains/dashboards/components/dashboard-grid.cjs.js.map +1 -1
- package/dist/domains/dashboards/components/dashboard-grid.es.js +11 -8
- package/dist/domains/dashboards/components/dashboard-grid.es.js.map +1 -1
- package/dist/domains/dashboards/components/dashboard-renderer.cjs.js +18 -7
- package/dist/domains/dashboards/components/dashboard-renderer.cjs.js.map +1 -1
- package/dist/domains/dashboards/components/dashboard-renderer.es.js +18 -7
- package/dist/domains/dashboards/components/dashboard-renderer.es.js.map +1 -1
- package/dist/domains/dashboards/components/widget-chrome.cjs.js +1 -1
- package/dist/domains/dashboards/components/widget-chrome.es.js +1 -1
- package/dist/domains/dashboards/components/widget-controls.cjs.js +16 -1
- package/dist/domains/dashboards/components/widget-controls.cjs.js.map +1 -1
- package/dist/domains/dashboards/components/widget-controls.es.js +16 -2
- package/dist/domains/dashboards/components/widget-controls.es.js.map +1 -1
- package/dist/domains/dashboards/components/widget-error.cjs.js +6 -3
- package/dist/domains/dashboards/components/widget-error.cjs.js.map +1 -1
- package/dist/domains/dashboards/components/widget-error.es.js +6 -3
- package/dist/domains/dashboards/components/widget-error.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/kpis/kpis-widget.cjs.js +18 -4
- package/dist/domains/dashboards/kinds/kpis/kpis-widget.cjs.js.map +1 -1
- package/dist/domains/dashboards/kinds/kpis/kpis-widget.es.js +19 -5
- package/dist/domains/dashboards/kinds/kpis/kpis-widget.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/kpis.cjs.js +1 -1
- package/dist/domains/dashboards/kinds/kpis.es.js +1 -1
- package/dist/domains/dashboards/kinds/scores/scores-widget.cjs.js +18 -9
- package/dist/domains/dashboards/kinds/scores/scores-widget.cjs.js.map +1 -1
- package/dist/domains/dashboards/kinds/scores/scores-widget.es.js +18 -9
- package/dist/domains/dashboards/kinds/scores/scores-widget.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/table/table-cells.cjs.js +1 -1
- package/dist/domains/dashboards/kinds/table/table-cells.es.js +1 -1
- package/dist/domains/dashboards/kinds/table/table-tabs.cjs.js +12 -5
- package/dist/domains/dashboards/kinds/table/table-tabs.cjs.js.map +1 -1
- package/dist/domains/dashboards/kinds/table/table-tabs.es.js +12 -5
- package/dist/domains/dashboards/kinds/table/table-tabs.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/table/table-view.cjs.js +7 -7
- package/dist/domains/dashboards/kinds/table/table-view.es.js +7 -7
- package/dist/domains/dashboards/kinds/table/table-widget.cjs.js +5 -2
- package/dist/domains/dashboards/kinds/table/table-widget.cjs.js.map +1 -1
- package/dist/domains/dashboards/kinds/table/table-widget.es.js +5 -2
- package/dist/domains/dashboards/kinds/table/table-widget.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/table.cjs.js +1 -1
- package/dist/domains/dashboards/kinds/table.es.js +1 -1
- package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.cjs.js +21 -14
- package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.cjs.js.map +1 -1
- package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.es.js +22 -15
- package/dist/domains/dashboards/kinds/timeseries/timeseries-widget.es.js.map +1 -1
- package/dist/domains/dashboards/kinds/timeseries.cjs.js +1 -1
- package/dist/domains/dashboards/kinds/timeseries.es.js +1 -1
- package/dist/domains/dashboards/lib/chrome.cjs.js.map +1 -1
- package/dist/domains/dashboards/lib/chrome.es.js.map +1 -1
- package/dist/domains/dashboards/lib/format.cjs.js +1 -1
- package/dist/domains/dashboards/lib/format.es.js +1 -1
- package/dist/domains/dashboards/lib/pin-actions.cjs.js +16 -0
- package/dist/domains/dashboards/lib/pin-actions.cjs.js.map +1 -0
- package/dist/domains/dashboards/lib/pin-actions.d.ts +1 -0
- package/dist/domains/dashboards/lib/pin-actions.es.js +15 -0
- package/dist/domains/dashboards/lib/pin-actions.es.js.map +1 -0
- package/dist/domains/dashboards/lib/requests.cjs.js +2 -2
- package/dist/domains/dashboards/lib/requests.es.js +2 -2
- package/dist/domains/dashboards/widget-kind.cjs.js.map +1 -1
- package/dist/domains/dashboards/widget-kind.es.js.map +1 -1
- package/dist/domains/dashboards.cjs.js +11 -10
- package/dist/domains/dashboards.es.js +11 -11
- package/dist/domains/datasets/components/add-dataset-item-dialog/add-dataset-item-dialog.cjs.js +11 -11
- package/dist/domains/datasets/components/add-dataset-item-dialog/add-dataset-item-dialog.es.js +11 -11
- package/dist/domains/datasets/components/add-dataset-item-dialog/dataset-picker.cjs.js +3 -3
- package/dist/domains/datasets/components/add-dataset-item-dialog/dataset-picker.es.js +3 -3
- package/dist/domains/datasets/components/add-dataset-item-dialog/trajectory-editor.cjs.js +6 -6
- package/dist/domains/datasets/components/add-dataset-item-dialog/trajectory-editor.es.js +6 -6
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js +7 -7
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +7 -7
- package/dist/domains/knowledge/components/KnowledgePageCard.cjs.js +3 -2
- package/dist/domains/knowledge/components/KnowledgePageCard.cjs.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageCard.es.js +3 -2
- package/dist/domains/knowledge/components/KnowledgePageCard.es.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageDetail.cjs.js +11 -16
- package/dist/domains/knowledge/components/KnowledgePageDetail.cjs.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageDetail.es.js +11 -16
- package/dist/domains/knowledge/components/KnowledgePageDetail.es.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageExplorer.cjs.js +5 -5
- package/dist/domains/knowledge/components/KnowledgePageExplorer.es.js +5 -5
- package/dist/domains/knowledge/components/KnowledgePageGraph.cjs.js +11 -10
- package/dist/domains/knowledge/components/KnowledgePageGraph.cjs.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageGraph.es.js +10 -9
- package/dist/domains/knowledge/components/KnowledgePageGraph.es.js.map +1 -1
- package/dist/domains/knowledge/components/KnowledgePageTree.cjs.js +1 -1
- package/dist/domains/knowledge/components/KnowledgePageTree.es.js +1 -1
- package/dist/domains/llm/models-dev-logo-slugs.cjs.js +230 -0
- package/dist/domains/llm/models-dev-logo-slugs.cjs.js.map +1 -0
- package/dist/domains/llm/models-dev-logo-slugs.d.ts +1 -0
- package/dist/domains/llm/models-dev-logo-slugs.es.js +229 -0
- package/dist/domains/llm/models-dev-logo-slugs.es.js.map +1 -0
- package/dist/domains/llm/provider-logo-monogram.cjs.js +37 -0
- package/dist/domains/llm/provider-logo-monogram.cjs.js.map +1 -0
- package/dist/domains/llm/provider-logo-monogram.d.ts +1 -0
- package/dist/domains/llm/provider-logo-monogram.es.js +36 -0
- package/dist/domains/llm/provider-logo-monogram.es.js.map +1 -0
- package/dist/domains/llm/provider-logo.cjs.js +46 -17
- package/dist/domains/llm/provider-logo.cjs.js.map +1 -1
- package/dist/domains/llm/provider-logo.es.js +46 -17
- package/dist/domains/llm/provider-logo.es.js.map +1 -1
- package/dist/domains/llm/provider-map-icon.cjs.js +1 -1
- package/dist/domains/llm/provider-map-icon.es.js +1 -1
- package/dist/domains/llm.cjs.js +1 -1
- package/dist/domains/llm.es.js +1 -1
- package/dist/domains/logs/components/log-data-panel.cjs.js +11 -7
- package/dist/domains/logs/components/log-data-panel.cjs.js.map +1 -1
- package/dist/domains/logs/components/log-data-panel.es.js +11 -7
- package/dist/domains/logs/components/log-data-panel.es.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.cjs.js +1 -1
- package/dist/domains/logs/components/logs-error-content.es.js +1 -1
- package/dist/domains/logs/components/logs-list-view.cjs.js +2 -2
- package/dist/domains/logs/components/logs-list-view.es.js +2 -2
- package/dist/domains/logs/components/logs-saved-views.cjs.js +1 -1
- package/dist/domains/logs/components/logs-saved-views.es.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
- package/dist/domains/logs/components/no-logs-info.cjs.js +3 -3
- package/dist/domains/logs/components/no-logs-info.cjs.js.map +1 -1
- package/dist/domains/logs/components/no-logs-info.es.js +3 -3
- package/dist/domains/logs/components/no-logs-info.es.js.map +1 -1
- package/dist/domains/logs/hooks/use-logs-filter-persistence.cjs.js +1 -1
- package/dist/domains/logs/hooks/use-logs-filter-persistence.es.js +1 -1
- package/dist/domains/logs.cjs.js +2 -2
- package/dist/domains/logs.es.js +2 -2
- package/dist/domains/mcps/components/mcp-app-tool-result.cjs.js +7 -8
- package/dist/domains/mcps/components/mcp-app-tool-result.cjs.js.map +1 -1
- package/dist/domains/mcps/components/mcp-app-tool-result.es.js +6 -7
- package/dist/domains/mcps/components/mcp-app-tool-result.es.js.map +1 -1
- package/dist/domains/mcps/components/mcp-app-viewer.cjs.js +2 -108
- package/dist/domains/mcps/components/mcp-app-viewer.es.js +1 -108
- package/dist/domains/mcps/hooks/use-mcp-app-tool-call.cjs.js +36 -0
- package/dist/domains/mcps/hooks/use-mcp-app-tool-call.cjs.js.map +1 -0
- package/dist/domains/mcps/hooks/use-mcp-app-tool-call.d.ts +1 -0
- package/dist/domains/mcps/hooks/use-mcp-app-tool-call.es.js +35 -0
- package/dist/domains/mcps/hooks/use-mcp-app-tool-call.es.js.map +1 -0
- package/dist/domains/memory/components/flame-graph.cjs.js +4 -4
- package/dist/domains/memory/components/flame-graph.es.js +4 -4
- package/dist/domains/memory/components/memory-studio-panel.cjs.js +6 -6
- package/dist/domains/memory/components/memory-studio-panel.es.js +6 -6
- package/dist/domains/memory/components/observation-detail-view.cjs.js +6 -6
- package/dist/domains/memory/components/observation-detail-view.es.js +6 -6
- package/dist/domains/memory/components/thread-context-progress.cjs.js +2 -2
- package/dist/domains/memory/components/thread-context-progress.es.js +2 -2
- package/dist/domains/memory/components.cjs.js +1 -1
- package/dist/domains/memory/components.es.js +1 -1
- package/dist/domains/metrics/components/agent-runs-card.cjs.js +7 -7
- package/dist/domains/metrics/components/agent-runs-card.es.js +7 -7
- package/dist/domains/metrics/components/breakdown/breakdown-entity-tab.cjs.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-entity-tab.es.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-figure.cjs.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-figure.es.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-models-tab.cjs.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-models-tab.es.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-row-mark.cjs.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-row-mark.es.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-row-name.cjs.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-row-name.es.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-tab-body.cjs.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-tab-body.es.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-table.cjs.js +8 -8
- package/dist/domains/metrics/components/breakdown/breakdown-table.es.js +8 -8
- package/dist/domains/metrics/components/breakdown/breakdown-text.cjs.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-text.es.js +1 -1
- package/dist/domains/metrics/components/breakdown/breakdown-trace-tab.cjs.js +2 -2
- package/dist/domains/metrics/components/breakdown/breakdown-trace-tab.es.js +2 -2
- package/dist/domains/metrics/components/breakdown-card.cjs.js +4 -4
- package/dist/domains/metrics/components/breakdown-card.es.js +4 -4
- package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
- package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
- package/dist/domains/metrics/components/chart-area.cjs.js +1 -1
- package/dist/domains/metrics/components/chart-area.es.js +1 -1
- package/dist/domains/metrics/components/chart-card-error.cjs.js +2 -2
- package/dist/domains/metrics/components/chart-card-error.es.js +2 -2
- package/dist/domains/metrics/components/chart-card.cjs.js +21 -5
- package/dist/domains/metrics/components/chart-card.cjs.js.map +1 -1
- package/dist/domains/metrics/components/chart-card.es.js +21 -5
- package/dist/domains/metrics/components/chart-card.es.js.map +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/distinct-ids/distinct-ids-chart.cjs.js +5 -5
- package/dist/domains/metrics/components/distinct-ids/distinct-ids-chart.es.js +5 -5
- package/dist/domains/metrics/components/failure-rate-card.cjs.js +7 -7
- package/dist/domains/metrics/components/failure-rate-card.es.js +7 -7
- package/dist/domains/metrics/components/kpi-card.cjs.js +1 -1
- package/dist/domains/metrics/components/kpi-card.cjs.js.map +1 -1
- package/dist/domains/metrics/components/kpi-card.es.js +1 -1
- package/dist/domains/metrics/components/kpi-card.es.js.map +1 -1
- package/dist/domains/metrics/components/latency-card.cjs.js +7 -7
- package/dist/domains/metrics/components/latency-card.es.js +7 -7
- package/dist/domains/metrics/components/metrics-time-range-chip.cjs.js +2 -2
- package/dist/domains/metrics/components/metrics-time-range-chip.es.js +2 -2
- package/dist/domains/metrics/components/scores-card.cjs.js +4 -4
- package/dist/domains/metrics/components/scores-card.es.js +4 -4
- package/dist/domains/metrics/components/token-usage-card.cjs.js +8 -8
- package/dist/domains/metrics/components/token-usage-card.es.js +8 -8
- package/dist/domains/metrics/components/trace-aggregate-card.cjs.js +1 -1
- package/dist/domains/metrics/components/trace-aggregate-card.es.js +1 -1
- package/dist/domains/metrics/components/trace-volume-card.cjs.js +4 -4
- package/dist/domains/metrics/components/trace-volume-card.es.js +4 -4
- package/dist/domains/metrics/components/usage-card.cjs.js +5 -5
- package/dist/domains/metrics/components/usage-card.es.js +5 -5
- package/dist/domains/metrics/components.cjs.js +9 -9
- package/dist/domains/metrics/components.es.js +9 -9
- package/dist/domains/metrics/drilldown.cjs.js +1 -1
- package/dist/domains/metrics/drilldown.es.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-activity.cjs.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-activity.es.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-latency.cjs.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-latency.es.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-scores.cjs.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-scores.es.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-span-aggregate.cjs.js +2 -2
- package/dist/domains/metrics/hooks/use-metrics-span-aggregate.es.js +2 -2
- package/dist/domains/metrics/hooks/use-metrics-trace-aggregate.cjs.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics-trace-aggregate.es.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics.cjs.js +1 -1
- package/dist/domains/metrics/hooks/use-metrics.es.js +1 -1
- package/dist/domains/metrics/hooks.cjs.js +5 -5
- package/dist/domains/metrics/hooks.es.js +5 -5
- package/dist/domains/metrics/lib/breakdown-table.cjs.js +2 -2
- package/dist/domains/metrics/lib/breakdown-table.es.js +2 -2
- package/dist/domains/metrics/lib/series-colors.cjs.js +279 -0
- package/dist/domains/metrics/lib/series-colors.cjs.js.map +1 -0
- package/dist/domains/metrics/lib/series-colors.d.ts +1 -0
- package/dist/domains/metrics/lib/series-colors.es.js +272 -0
- package/dist/domains/metrics/lib/series-colors.es.js.map +1 -0
- package/dist/domains/metrics/lib.cjs.js +9 -3
- package/dist/domains/metrics/lib.es.js +5 -4
- package/dist/domains/metrics.cjs.js +7 -1
- package/dist/domains/metrics.es.js +3 -2
- package/dist/domains/observability/components/observability-capability-gate.cjs.js +3 -3
- package/dist/domains/observability/components/observability-capability-gate.es.js +3 -3
- package/dist/domains/observability/components/observability-histogram.cjs.js +5 -5
- package/dist/domains/observability/components/observability-histogram.cjs.js.map +1 -1
- package/dist/domains/observability/components/observability-histogram.es.js +5 -5
- package/dist/domains/observability/components/observability-histogram.es.js.map +1 -1
- package/dist/domains/observability/components/observability-page-layout.cjs.js +2 -2
- package/dist/domains/observability/components/observability-page-layout.es.js +2 -2
- package/dist/domains/observability/hooks/use-observability-list-filters.cjs.js +3 -3
- package/dist/domains/observability/hooks/use-observability-list-filters.es.js +3 -3
- package/dist/domains/observability/observability-list-url-state.cjs.js +1 -1
- package/dist/domains/observability/observability-list-url-state.es.js +1 -1
- package/dist/domains/observability/saved-view-state.cjs.js +3 -3
- package/dist/domains/observability/saved-view-state.es.js +3 -3
- package/dist/domains/observability/saved-views/observability-saved-views.cjs.js +1 -1
- package/dist/domains/observability/saved-views/observability-saved-views.es.js +1 -1
- package/dist/domains/observability/saved-views/use-hosted-saved-views.cjs.js +1 -1
- package/dist/domains/observability/saved-views/use-hosted-saved-views.es.js +1 -1
- package/dist/domains/observability/saved-views.cjs.js +2 -2
- package/dist/domains/observability/saved-views.es.js +2 -2
- package/dist/domains/observability.cjs.js +6 -6
- package/dist/domains/observability.es.js +6 -6
- 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 +7 -7
- package/dist/domains/scores/components/score-data-panel.cjs.js.map +1 -1
- package/dist/domains/scores/components/score-data-panel.es.js +7 -7
- package/dist/domains/scores/components/score-data-panel.es.js.map +1 -1
- package/dist/domains/scores/components/span-scoring.cjs.js +4 -4
- package/dist/domains/scores/components/span-scoring.es.js +4 -4
- package/dist/domains/scores/components/trace-scores-list.cjs.js +5 -5
- package/dist/domains/scores/components/trace-scores-list.es.js +5 -5
- package/dist/domains/scores/components/trace-scores-tab.cjs.js +15 -19
- package/dist/domains/scores/components/trace-scores-tab.cjs.js.map +1 -1
- package/dist/domains/scores/components/trace-scores-tab.es.js +15 -19
- package/dist/domains/scores/components/trace-scores-tab.es.js.map +1 -1
- package/dist/domains/scores/components.cjs.js +1 -1
- package/dist/domains/scores/components.es.js +1 -1
- package/dist/domains/skills/skill-simple-form.cjs.js +4 -4
- package/dist/domains/skills/skill-simple-form.es.js +4 -4
- package/dist/domains/spans/components/spans-explorer-body.cjs.js +6 -6
- package/dist/domains/spans/components/spans-explorer-body.es.js +7 -7
- package/dist/domains/spans/components/spans-filter-bar.cjs.js +3 -3
- package/dist/domains/spans/components/spans-filter-bar.es.js +3 -3
- package/dist/domains/spans/hooks/use-spans-filter-bar.cjs.js +2 -2
- package/dist/domains/spans/hooks/use-spans-filter-bar.es.js +2 -2
- package/dist/domains/spans/hooks/use-spans-list-source.cjs.js +1 -1
- package/dist/domains/spans/hooks/use-spans-list-source.es.js +1 -1
- package/dist/domains/spans/hooks.cjs.js +1 -1
- package/dist/domains/spans/hooks.es.js +1 -1
- package/dist/domains/threads/components/threads-explorer-body.cjs.js +6 -6
- package/dist/domains/threads/components/threads-explorer-body.es.js +7 -7
- package/dist/domains/threads/components/threads-filter-bar.cjs.js +3 -3
- package/dist/domains/threads/components/threads-filter-bar.es.js +3 -3
- package/dist/domains/threads/hooks/use-threads-filter-bar.cjs.js +2 -2
- package/dist/domains/threads/hooks/use-threads-filter-bar.es.js +2 -2
- package/dist/domains/threads/hooks/use-threads-list-source.cjs.js +1 -1
- package/dist/domains/threads/hooks/use-threads-list-source.es.js +1 -1
- package/dist/domains/threads/hooks.cjs.js +1 -1
- package/dist/domains/threads/hooks.es.js +1 -1
- package/dist/domains/traces/components/columns-menu/columns-menu.cjs.js +1 -1
- package/dist/domains/traces/components/columns-menu/columns-menu.es.js +2 -2
- package/dist/domains/traces/components/feedback-thread.cjs.js +9 -9
- package/dist/domains/traces/components/feedback-thread.es.js +9 -9
- package/dist/domains/traces/components/format-trace-thread-messages.cjs.js +1 -1
- package/dist/domains/traces/components/format-trace-thread-messages.es.js +1 -1
- package/dist/domains/traces/components/no-traces-info.cjs.js +2 -2
- package/dist/domains/traces/components/no-traces-info.cjs.js.map +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +2 -2
- package/dist/domains/traces/components/no-traces-info.es.js.map +1 -1
- package/dist/domains/traces/components/shared.cjs.js +3 -3
- package/dist/domains/traces/components/shared.es.js +3 -3
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +23 -23
- 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 +23 -23
- package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/span-details-view.cjs.js +3 -3
- package/dist/domains/traces/components/span-details-view.es.js +3 -3
- package/dist/domains/traces/components/span-outcome.cjs.js +1 -1
- package/dist/domains/traces/components/span-outcome.es.js +1 -1
- package/dist/domains/traces/components/span-outcome.utils.cjs.js +3 -3
- package/dist/domains/traces/components/span-outcome.utils.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-outcome.utils.es.js +3 -3
- package/dist/domains/traces/components/span-outcome.utils.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +5 -5
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +5 -5
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +4 -4
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +4 -4
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +7 -7
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +7 -7
- package/dist/domains/traces/components/span-payload/span-payload-attachment.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-attachment.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-json.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-json.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +14 -9
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +14 -9
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js.map +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-processor.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-processor.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-payload-registry.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-registry.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-section.cjs.js +7 -7
- package/dist/domains/traces/components/span-payload/span-payload-section.es.js +7 -7
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +1 -1
- 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-payload/span-processor-mutations.cjs.js +3 -3
- package/dist/domains/traces/components/span-payload/span-processor-mutations.es.js +3 -3
- package/dist/domains/traces/components/span-payload/span-signal-details.cjs.js +4 -4
- package/dist/domains/traces/components/span-payload/span-signal-details.es.js +4 -4
- package/dist/domains/traces/components/span-payload/span-tools-section.cjs.js +6 -6
- package/dist/domains/traces/components/span-payload/span-tools-section.es.js +6 -6
- package/dist/domains/traces/components/span-payload.cjs.js +4 -4
- package/dist/domains/traces/components/span-payload.es.js +4 -4
- package/dist/domains/traces/components/span-prompt-changes.cjs.js +17 -10
- package/dist/domains/traces/components/span-prompt-changes.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-prompt-changes.es.js +17 -10
- package/dist/domains/traces/components/span-prompt-changes.es.js.map +1 -1
- package/dist/domains/traces/components/span-rows.cjs.js +1 -1
- package/dist/domains/traces/components/span-rows.es.js +1 -1
- package/dist/domains/traces/components/span-summary-description.cjs.js +3 -3
- package/dist/domains/traces/components/span-summary-description.es.js +3 -3
- package/dist/domains/traces/components/span-timeline-row.cjs.js +10 -10
- package/dist/domains/traces/components/span-timeline-row.es.js +10 -10
- package/dist/domains/traces/components/span-timing-hover-card.cjs.js +3 -3
- package/dist/domains/traces/components/span-timing-hover-card.es.js +3 -3
- package/dist/domains/traces/components/span-token-usage.cjs.js +2 -2
- package/dist/domains/traces/components/span-token-usage.es.js +2 -2
- package/dist/domains/traces/components/span-token-usage.utils.cjs.js +2 -2
- package/dist/domains/traces/components/span-token-usage.utils.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-token-usage.utils.es.js +2 -2
- package/dist/domains/traces/components/span-token-usage.utils.es.js.map +1 -1
- package/dist/domains/traces/components/span-type-badge.cjs.js +1 -1
- package/dist/domains/traces/components/span-type-badge.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-list.cjs.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-list.es.js +2 -2
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +4 -4
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +4 -4
- package/dist/domains/traces/components/thread-trace/thread-trace-root.cjs.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-root.es.js +3 -3
- package/dist/domains/traces/components/thread-trace/thread-trace-row.cjs.js +5 -5
- package/dist/domains/traces/components/thread-trace/thread-trace-row.es.js +5 -5
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-span-panel.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.cjs.js +6 -6
- package/dist/domains/traces/components/thread-trace/thread-trace-spans.es.js +6 -6
- package/dist/domains/traces/components/thread-trace.cjs.js +3 -3
- package/dist/domains/traces/components/thread-trace.es.js +3 -3
- package/dist/domains/traces/components/thread-view-by-trace.cjs.js +7 -7
- package/dist/domains/traces/components/thread-view-by-trace.es.js +7 -7
- package/dist/domains/traces/components/thread-view-skeleton.cjs.js +5 -5
- package/dist/domains/traces/components/thread-view-skeleton.es.js +5 -5
- package/dist/domains/traces/components/timeline-name-col.cjs.js +6 -6
- package/dist/domains/traces/components/timeline-name-col.es.js +6 -6
- package/dist/domains/traces/components/timeline-timing-col.cjs.js +4 -4
- package/dist/domains/traces/components/timeline-timing-col.es.js +4 -4
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +5 -5
- package/dist/domains/traces/components/trace-columns-menu.es.js +5 -5
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +13 -13
- package/dist/domains/traces/components/trace-data-panel-view.es.js +13 -13
- package/dist/domains/traces/components/trace-data-panel.cjs.js +2 -2
- package/dist/domains/traces/components/trace-data-panel.es.js +2 -2
- package/dist/domains/traces/components/trace-details-view.cjs.js +3 -3
- package/dist/domains/traces/components/trace-details-view.es.js +3 -3
- package/dist/domains/traces/components/trace-error-cell.cjs.js +2 -2
- package/dist/domains/traces/components/trace-error-cell.es.js +2 -2
- package/dist/domains/traces/components/trace-error-summary.cjs.js +2 -2
- package/dist/domains/traces/components/trace-error-summary.es.js +2 -2
- package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
- package/dist/domains/traces/components/trace-id-button.es.js +1 -1
- package/dist/domains/traces/components/trace-messages-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-messages-panel.es.js +1 -1
- package/dist/domains/traces/components/trace-messages-skeleton.cjs.js +1 -1
- package/dist/domains/traces/components/trace-messages-skeleton.es.js +1 -1
- package/dist/domains/traces/components/trace-span-panel.cjs.js +3 -3
- package/dist/domains/traces/components/trace-span-panel.es.js +3 -3
- package/dist/domains/traces/components/trace-span-timeline-markers.cjs.js +6 -6
- package/dist/domains/traces/components/trace-span-timeline-markers.es.js +6 -6
- package/dist/domains/traces/components/trace-span-timeline.cjs.js +5 -5
- package/dist/domains/traces/components/trace-span-timeline.es.js +5 -5
- package/dist/domains/traces/components/trace-span-tree-skeleton.cjs.js +2 -2
- package/dist/domains/traces/components/trace-span-tree-skeleton.es.js +2 -2
- package/dist/domains/traces/components/trace-span-tree.cjs.js +2 -2
- package/dist/domains/traces/components/trace-span-tree.es.js +2 -2
- package/dist/domains/traces/components/trace-status-value.cjs.js +1 -1
- package/dist/domains/traces/components/trace-status-value.es.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +5 -5
- package/dist/domains/traces/components/trace-summary-description.es.js +5 -5
- package/dist/domains/traces/components/trace-thread-item-view.cjs.js +5 -5
- package/dist/domains/traces/components/trace-thread-item-view.es.js +5 -5
- package/dist/domains/traces/components/trace-thread-panel.cjs.js +1 -1
- package/dist/domains/traces/components/trace-thread-panel.es.js +1 -1
- package/dist/domains/traces/components/trace-timeline.cjs.js +1 -1
- package/dist/domains/traces/components/trace-timeline.es.js +1 -1
- package/dist/domains/traces/components/traces-error-content.cjs.js +2 -2
- package/dist/domains/traces/components/traces-error-content.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-body.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-body.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-columns-menu.cjs.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-columns-menu.es.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-columns-provider.cjs.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-columns-provider.es.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-filter-bar.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.cjs.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-histogram.es.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-layout.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-layout.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-list-provider.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-list.cjs.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-list.es.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.cjs.js +6 -6
- package/dist/domains/traces/components/traces-explorer/traces-explorer-panel.es.js +6 -6
- package/dist/domains/traces/components/traces-explorer/traces-explorer-root.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/traces-explorer-root.es.js +3 -3
- package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.cjs.js +1 -1
- package/dist/domains/traces/components/traces-explorer/traces-explorer-saved-views.es.js +1 -1
- package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.cjs.js +2 -2
- package/dist/domains/traces/components/traces-explorer/use-traces-filter-bar.es.js +2 -2
- package/dist/domains/traces/components/traces-explorer.cjs.js +4 -4
- package/dist/domains/traces/components/traces-explorer.es.js +4 -4
- package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +2 -2
- package/dist/domains/traces/components/traces-list-mode-toggle.es.js +2 -2
- package/dist/domains/traces/components/traces-list-view.cjs.js +10 -10
- package/dist/domains/traces/components/traces-list-view.es.js +10 -10
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +2 -2
- package/dist/domains/traces/components/traces-page-skeleton.es.js +2 -2
- package/dist/domains/traces/components/traces-spans-switch.cjs.js +3 -3
- package/dist/domains/traces/components/traces-spans-switch.es.js +3 -3
- package/dist/domains/traces/components.cjs.js +15 -15
- package/dist/domains/traces/components.es.js +15 -15
- package/dist/domains/traces/hooks/use-download-trace-json.cjs.js +1 -1
- package/dist/domains/traces/hooks/use-download-trace-json.es.js +1 -1
- package/dist/domains/traces/hooks/use-traces-list-source.cjs.js +1 -1
- package/dist/domains/traces/hooks/use-traces-list-source.es.js +1 -1
- package/dist/domains/traces/hooks.cjs.js +4 -4
- package/dist/domains/traces/hooks.es.js +4 -4
- package/dist/domains/traces/utils/span-utils.cjs.js +2 -2
- package/dist/domains/traces/utils/span-utils.cjs.js.map +1 -1
- package/dist/domains/traces/utils/span-utils.es.js +2 -2
- package/dist/domains/traces/utils/span-utils.es.js.map +1 -1
- package/dist/domains/traces/utils.cjs.js +2 -2
- package/dist/domains/traces/utils.es.js +2 -2
- package/dist/domains/traces.cjs.js +2 -2
- package/dist/domains/traces.es.js +2 -2
- package/dist/domains/workflows/components/workflow-combobox.cjs.js +4 -3
- package/dist/domains/workflows/components/workflow-combobox.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-combobox.es.js +4 -3
- package/dist/domains/workflows/components/workflow-combobox.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.cjs.js +6 -6
- package/dist/domains/workflows/components/workflow-entity-header.cjs.js.map +1 -1
- package/dist/domains/workflows/components/workflow-entity-header.es.js +6 -6
- package/dist/domains/workflows/components/workflow-entity-header.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-information.cjs.js +10 -10
- package/dist/domains/workflows/components/workflow-information.es.js +10 -10
- package/dist/domains/workflows/components/workflow-layout.cjs.js +3 -3
- package/dist/domains/workflows/components/workflow-layout.es.js +2 -2
- package/dist/domains/workflows/components/workflow-run-status-icon.cjs.js +3 -3
- package/dist/domains/workflows/components/workflow-run-status-icon.es.js +3 -3
- package/dist/domains/workflows/components/workflow-step-detail.cjs.js +4 -4
- package/dist/domains/workflows/components/workflow-step-detail.es.js +4 -4
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.cjs.js +2 -2
- package/dist/domains/workflows/components/workflows-list/no-workflows-info.es.js +2 -2
- package/dist/domains/workflows/components/workflows-list/workflows-list.cjs.js +11 -11
- package/dist/domains/workflows/components/workflows-list/workflows-list.es.js +11 -11
- package/dist/domains/workflows/context/playground-workflow-run-provider.cjs.js +1 -1
- package/dist/domains/workflows/context/playground-workflow-run-provider.es.js +1 -1
- package/dist/domains/workflows/context/use-stream-for-run.cjs.js +1 -1
- package/dist/domains/workflows/context/use-stream-for-run.es.js +1 -1
- package/dist/domains/workflows/context/workflow-run-provider.cjs.js +1 -1
- package/dist/domains/workflows/context/workflow-run-provider.es.js +1 -1
- package/dist/domains/workflows/runs/workflow-run-details.cjs.js +2 -2
- package/dist/domains/workflows/runs/workflow-run-details.es.js +2 -2
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js +26 -21
- package/dist/domains/workflows/runs/workflow-run-list.cjs.js.map +1 -1
- package/dist/domains/workflows/runs/workflow-run-list.es.js +26 -21
- package/dist/domains/workflows/runs/workflow-run-list.es.js.map +1 -1
- package/dist/domains/workflows/workflow/data/use-workflow-data.cjs.js +1 -1
- package/dist/domains/workflows/workflow/data/use-workflow-data.es.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-button.cjs.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-button.es.js +1 -1
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.cjs.js +5 -5
- package/dist/domains/workflows/workflow/data/workflow-data-inspector.es.js +5 -5
- 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 +8 -8
- package/dist/domains/workflows/workflow/input/workflow-processor-input.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/input/workflow-processor-input.es.js +8 -8
- package/dist/domains/workflows/workflow/input/workflow-processor-input.es.js.map +1 -1
- package/dist/domains/workflows/workflow/use-workflow-graph-nodes.cjs.js +1 -1
- package/dist/domains/workflows/workflow/use-workflow-graph-nodes.es.js +1 -1
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.cjs.js +1 -1
- package/dist/domains/workflows/workflow/use-workflow-graph-runtime.es.js +1 -1
- package/dist/domains/workflows/workflow/use-workflow-trigger.cjs.js +3 -3
- package/dist/domains/workflows/workflow/use-workflow-trigger.es.js +3 -3
- package/dist/domains/workflows/workflow/utils.cjs.js +2 -2
- package/dist/domains/workflows/workflow/utils.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-body-graph.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-body-graph.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-cancel-button.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-cancel-button.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-card.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-card.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-data-edge.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-data-edge.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-debug-mode-switch.cjs.js +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 +6 -6
- package/dist/domains/workflows/workflow/workflow-graph-boundary.es.js +6 -6
- package/dist/domains/workflows/workflow/workflow-graph-groups.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-groups.cjs.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-groups.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-groups.es.js.map +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-inner.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-graph-inner.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-graph-layout.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-layout.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-node.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph-node.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-graph.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-graph.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-input-data.cjs.js +6 -6
- package/dist/domains/workflows/workflow/workflow-input-data.es.js +6 -6
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-input-type-toggle.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-map-config-dialog.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-nested-graph.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-nested-graph.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-data.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-data.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-run-error.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-error.es.js +1 -1
- package/dist/domains/workflows/workflow/workflow-run-header.cjs.js +6 -6
- package/dist/domains/workflows/workflow/workflow-run-header.es.js +6 -6
- package/dist/domains/workflows/workflow/workflow-status.cjs.js +7 -7
- package/dist/domains/workflows/workflow/workflow-status.es.js +7 -7
- package/dist/domains/workflows/workflow/workflow-step-action-bar.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-step-action-bar.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-step-node-utils.cjs.js +1 -1
- package/dist/domains/workflows/workflow/workflow-step-node-utils.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 +10 -10
- package/dist/domains/workflows/workflow/workflow-suspended-steps.es.js +10 -10
- package/dist/domains/workflows/workflow/workflow-time-travel-form.cjs.js +12 -12
- package/dist/domains/workflows/workflow/workflow-time-travel-form.es.js +12 -12
- package/dist/domains/workflows/workflow/workflow-timeline-row.cjs.js +4 -4
- package/dist/domains/workflows/workflow/workflow-timeline-row.es.js +4 -4
- package/dist/domains/workflows/workflow/workflow-timeline.cjs.js +9 -9
- package/dist/domains/workflows/workflow/workflow-timeline.es.js +9 -9
- package/dist/domains/workflows/workflow/workflow-trigger-form.cjs.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger-form.es.js +2 -2
- package/dist/domains/workflows/workflow/workflow-trigger-header.cjs.js +3 -3
- package/dist/domains/workflows/workflow/workflow-trigger-header.es.js +3 -3
- package/dist/domains/workflows/workflow/workflow-trigger.cjs.js +5 -5
- package/dist/domains/workflows/workflow/workflow-trigger.es.js +5 -5
- package/dist/domains/workflows.cjs.js +4 -4
- package/dist/domains/workflows.es.js +4 -4
- package/dist/domains/workspace/components/mount-icon.cjs.js +1 -1
- package/dist/domains/workspace/components/mount-icon.es.js +1 -1
- package/dist/domains/workspace/components/workspace-active-file.cjs.js +4 -4
- package/dist/domains/workspace/components/workspace-active-file.es.js +4 -4
- package/dist/domains/workspace/components/workspace-add-skill-dialog.cjs.js +10 -10
- package/dist/domains/workspace/components/workspace-add-skill-dialog.es.js +10 -10
- package/dist/domains/workspace/components/workspace-add-skill.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-add-skill.es.js +1 -1
- package/dist/domains/workspace/components/workspace-context.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-context.es.js +1 -1
- package/dist/domains/workspace/components/workspace-create-directory.cjs.js +4 -4
- package/dist/domains/workspace/components/workspace-create-directory.es.js +4 -4
- package/dist/domains/workspace/components/workspace-error.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-error.es.js +1 -1
- package/dist/domains/workspace/components/workspace-markdown-preview.cjs.js +2 -2
- package/dist/domains/workspace/components/workspace-markdown-preview.es.js +2 -2
- package/dist/domains/workspace/components/workspace-parts.cjs.js +5 -5
- package/dist/domains/workspace/components/workspace-parts.es.js +5 -5
- package/dist/domains/workspace/components/workspace-search.cjs.js +17 -20
- package/dist/domains/workspace/components/workspace-search.cjs.js.map +1 -1
- package/dist/domains/workspace/components/workspace-search.es.js +18 -21
- package/dist/domains/workspace/components/workspace-search.es.js.map +1 -1
- package/dist/domains/workspace/components/workspace-tree-view.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace-tree-view.es.js +1 -1
- package/dist/domains/workspace/components/workspace-tree.cjs.js +11 -11
- package/dist/domains/workspace/components/workspace-tree.cjs.js.map +1 -1
- package/dist/domains/workspace/components/workspace-tree.es.js +11 -11
- package/dist/domains/workspace/components/workspace-tree.es.js.map +1 -1
- package/dist/domains/workspace/components/workspace.cjs.js +1 -1
- package/dist/domains/workspace/components/workspace.es.js +1 -1
- package/dist/domains/workspace.cjs.js +3 -3
- package/dist/domains/workspace.es.js +3 -3
- package/dist/{dropdown-menu-B4jY3J9e.js → dropdown-menu-DKoWI8kD.js} +2 -2
- package/dist/{dropdown-menu-B4jY3J9e.js.map → dropdown-menu-DKoWI8kD.js.map} +1 -1
- package/dist/{dropdown-menu-BETTTPBB.cjs → dropdown-menu-Dx-jCOIv.cjs} +2 -2
- package/dist/{dropdown-menu-BETTTPBB.cjs.map → dropdown-menu-Dx-jCOIv.cjs.map} +1 -1
- package/dist/ee/signals/components/entity-index-compact-grid.cjs.js +4 -4
- package/dist/ee/signals/components/entity-index-compact-grid.es.js +4 -4
- package/dist/ee/signals/components/entity-index-list.cjs.js +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +1 -1
- package/dist/ee/signals/components/entity-index-status.cjs.js +2 -2
- package/dist/ee/signals/components/entity-index-status.es.js +2 -2
- package/dist/ee/signals/components/signals-empty-state.cjs.js +12 -21
- package/dist/ee/signals/components/signals-empty-state.cjs.js.map +1 -1
- package/dist/ee/signals/components/signals-empty-state.es.js +12 -21
- package/dist/ee/signals/components/signals-empty-state.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +5 -5
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +5 -5
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +13 -13
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +14 -14
- package/dist/ee/signals/examples-pager.cjs.js +2 -2
- package/dist/ee/signals/examples-pager.es.js +2 -2
- package/dist/ee/signals/flow-card.cjs.js +4 -4
- package/dist/ee/signals/flow-card.es.js +4 -4
- package/dist/ee/signals/lifeline-point.cjs.js +2 -2
- package/dist/ee/signals/lifeline-point.es.js +2 -2
- package/dist/ee/signals/lifeline-row.cjs.js +6 -6
- package/dist/ee/signals/lifeline-row.cjs.js.map +1 -1
- package/dist/ee/signals/lifeline-row.es.js +6 -6
- package/dist/ee/signals/lifeline-row.es.js.map +1 -1
- package/dist/ee/signals/noise-detail-panel.cjs.js +6 -6
- package/dist/ee/signals/noise-detail-panel.es.js +6 -6
- package/dist/ee/signals/sankey-signals-data.cjs.js +9 -5
- package/dist/ee/signals/sankey-signals-data.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals-data.es.js +9 -5
- package/dist/ee/signals/sankey-signals-data.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +21 -12
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +21 -12
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +4 -4
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +4 -4
- package/dist/ee/signals/settings/trace-signal-settings.cjs.js +7 -7
- package/dist/ee/signals/settings/trace-signal-settings.es.js +7 -7
- package/dist/ee/signals/signal-delta-column.cjs.js +3 -3
- package/dist/ee/signals/signal-delta-column.es.js +3 -3
- package/dist/ee/signals/signal-lifelines.cjs.js +5 -5
- package/dist/ee/signals/signal-lifelines.es.js +5 -5
- package/dist/ee/signals/signals-error-state.cjs.js +2 -2
- package/dist/ee/signals/signals-error-state.es.js +2 -2
- package/dist/ee/signals/snapshot-summary.cjs.js +15 -0
- package/dist/ee/signals/snapshot-summary.cjs.js.map +1 -0
- package/dist/ee/signals/snapshot-summary.d.ts +1 -0
- package/dist/ee/signals/snapshot-summary.es.js +14 -0
- package/dist/ee/signals/snapshot-summary.es.js.map +1 -0
- package/dist/ee/signals/snapshot-timeline.cjs.js +4 -4
- package/dist/ee/signals/snapshot-timeline.cjs.js.map +1 -1
- package/dist/ee/signals/snapshot-timeline.es.js +4 -4
- package/dist/ee/signals/snapshot-timeline.es.js.map +1 -1
- package/dist/ee/signals/sortable-signal-headers.cjs.js +6 -6
- package/dist/ee/signals/sortable-signal-headers.es.js +6 -6
- package/dist/ee/signals/theme-compare.cjs.js +15 -7
- package/dist/ee/signals/theme-compare.cjs.js.map +1 -1
- package/dist/ee/signals/theme-compare.es.js +15 -7
- package/dist/ee/signals/theme-compare.es.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.cjs.js +13 -17
- package/dist/ee/signals/theme-detail-panel.cjs.js.map +1 -1
- package/dist/ee/signals/theme-detail-panel.es.js +13 -17
- package/dist/ee/signals/theme-detail-panel.es.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.cjs.js +7 -7
- package/dist/ee/signals/theme-filter-banner.cjs.js.map +1 -1
- package/dist/ee/signals/theme-filter-banner.es.js +7 -7
- package/dist/ee/signals/theme-filter-banner.es.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.cjs.js +8 -5
- package/dist/ee/signals/theme-lifelines.cjs.js.map +1 -1
- package/dist/ee/signals/theme-lifelines.es.js +8 -5
- package/dist/ee/signals/theme-lifelines.es.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.cjs.js +3 -3
- package/dist/ee/signals/theme-trend-chart.cjs.js.map +1 -1
- package/dist/ee/signals/theme-trend-chart.es.js +3 -3
- package/dist/ee/signals/theme-trend-chart.es.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.cjs.js +11 -13
- package/dist/ee/signals/trace-insight-view.cjs.js.map +1 -1
- package/dist/ee/signals/trace-insight-view.es.js +11 -13
- package/dist/ee/signals/trace-insight-view.es.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js +10 -15
- package/dist/ee/signals/trace-intelligence-explainer.cjs.js.map +1 -1
- package/dist/ee/signals/trace-intelligence-explainer.es.js +10 -15
- package/dist/ee/signals/trace-intelligence-explainer.es.js.map +1 -1
- package/dist/ee/signals/view-mode-tab.cjs.js +2 -2
- package/dist/ee/signals/view-mode-tab.es.js +2 -2
- package/dist/ee/signals.cjs.js +5 -5
- package/dist/ee/signals.es.js +5 -5
- package/dist/ee/topics/components/topic-trace-details-panel.cjs.js +1 -1
- package/dist/ee/topics/components/topic-trace-details-panel.es.js +1 -1
- package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +4 -4
- package/dist/ee/topics/components/topic-trace-summary-list.es.js +4 -4
- package/dist/ee/topics/components/topics-layout.cjs.js +1 -1
- package/dist/ee/topics/components/topics-layout.es.js +1 -1
- package/dist/{field-error-id-DBSuJ3HM.js → field-error-id-6ZynvsRO.js} +2 -2
- package/dist/{field-error-id-DBSuJ3HM.js.map → field-error-id-6ZynvsRO.js.map} +1 -1
- package/dist/{field-error-id-nGAF0330.cjs → field-error-id-VimPQI_b.cjs} +2 -2
- package/dist/{field-error-id-nGAF0330.cjs.map → field-error-id-VimPQI_b.cjs.map} +1 -1
- package/dist/{filter-bar-chip-Cg-UbIwP.cjs → filter-bar-chip-DFsbUZ-V.cjs} +10 -10
- package/dist/{filter-bar-chip-Cg-UbIwP.cjs.map → filter-bar-chip-DFsbUZ-V.cjs.map} +1 -1
- package/dist/{filter-bar-chip-CABeKrtf.js → filter-bar-chip-NBtfDca9.js} +11 -11
- package/dist/{filter-bar-chip-CABeKrtf.js.map → filter-bar-chip-NBtfDca9.js.map} +1 -1
- package/dist/{filter-bar-time-range-qlV8p7hp.js → filter-bar-time-range-D9SnzR2J.js} +3 -3
- package/dist/{filter-bar-time-range-qlV8p7hp.js.map → filter-bar-time-range-D9SnzR2J.js.map} +1 -1
- package/dist/{filter-bar-time-range-zdM024JD.cjs → filter-bar-time-range-DlVNjw43.cjs} +3 -3
- package/dist/{filter-bar-time-range-zdM024JD.cjs.map → filter-bar-time-range-DlVNjw43.cjs.map} +1 -1
- package/dist/hooks/use-clock.cjs.js +34 -0
- package/dist/hooks/use-clock.cjs.js.map +1 -0
- package/dist/hooks/use-clock.d.ts +1 -0
- package/dist/hooks/use-clock.es.js +33 -0
- package/dist/hooks/use-clock.es.js.map +1 -0
- package/dist/hooks/use-copy-to-clipboard.cjs.js +1 -1
- package/dist/hooks/use-copy-to-clipboard.es.js +1 -1
- package/dist/hooks/use-text-highlight.cjs.js +3 -5
- package/dist/hooks/use-text-highlight.cjs.js.map +1 -1
- package/dist/hooks/use-text-highlight.es.js +1 -3
- package/dist/hooks/use-text-highlight.es.js.map +1 -1
- package/dist/icons/ByteDanceIcon.cjs.js +37 -0
- package/dist/icons/ByteDanceIcon.cjs.js.map +1 -0
- package/dist/icons/ByteDanceIcon.d.ts +1 -0
- package/dist/icons/ByteDanceIcon.es.js +34 -0
- package/dist/icons/ByteDanceIcon.es.js.map +1 -0
- package/dist/icons/CohereBrandIcon.cjs.js +34 -0
- package/dist/icons/CohereBrandIcon.cjs.js.map +1 -0
- package/dist/icons/CohereBrandIcon.d.ts +1 -0
- package/dist/icons/CohereBrandIcon.es.js +31 -0
- package/dist/icons/CohereBrandIcon.es.js.map +1 -0
- package/dist/icons/FireworksIcon.cjs.js +22 -0
- package/dist/icons/FireworksIcon.cjs.js.map +1 -0
- package/dist/icons/FireworksIcon.d.ts +1 -0
- package/dist/icons/FireworksIcon.es.js +19 -0
- package/dist/icons/FireworksIcon.es.js.map +1 -0
- package/dist/icons/Icon.cjs.js +1 -1
- package/dist/icons/Icon.es.js +1 -1
- package/dist/icons/LongCatIcon.cjs.js +22 -0
- package/dist/icons/LongCatIcon.cjs.js.map +1 -0
- package/dist/icons/LongCatIcon.d.ts +1 -0
- package/dist/icons/LongCatIcon.es.js +19 -0
- package/dist/icons/LongCatIcon.es.js.map +1 -0
- package/dist/icons/MicrosoftIcon.cjs.js +34 -0
- package/dist/icons/MicrosoftIcon.cjs.js.map +1 -0
- package/dist/icons/MicrosoftIcon.d.ts +1 -0
- package/dist/icons/MicrosoftIcon.es.js +31 -0
- package/dist/icons/MicrosoftIcon.es.js.map +1 -0
- package/dist/icons/MorphIcon.cjs.js +20 -0
- package/dist/icons/MorphIcon.cjs.js.map +1 -0
- package/dist/icons/MorphIcon.d.ts +1 -0
- package/dist/icons/MorphIcon.es.js +17 -0
- package/dist/icons/MorphIcon.es.js.map +1 -0
- package/dist/icons/NousResearchIcon.cjs.js +19 -0
- package/dist/icons/NousResearchIcon.cjs.js.map +1 -0
- package/dist/icons/NousResearchIcon.d.ts +1 -0
- package/dist/icons/NousResearchIcon.es.js +16 -0
- package/dist/icons/NousResearchIcon.es.js.map +1 -0
- package/dist/icons/NovaIcon.cjs.js +41 -0
- package/dist/icons/NovaIcon.cjs.js.map +1 -0
- package/dist/icons/NovaIcon.d.ts +1 -0
- package/dist/icons/NovaIcon.es.js +38 -0
- package/dist/icons/NovaIcon.es.js.map +1 -0
- package/dist/icons/PerplexityIcon.cjs.js +21 -0
- package/dist/icons/PerplexityIcon.cjs.js.map +1 -0
- package/dist/icons/PerplexityIcon.d.ts +1 -0
- package/dist/icons/PerplexityIcon.es.js +18 -0
- package/dist/icons/PerplexityIcon.es.js.map +1 -0
- package/dist/icons/SakanaIcon.cjs.js +20 -0
- package/dist/icons/SakanaIcon.cjs.js.map +1 -0
- package/dist/icons/SakanaIcon.d.ts +1 -0
- package/dist/icons/SakanaIcon.es.js +17 -0
- package/dist/icons/SakanaIcon.es.js.map +1 -0
- package/dist/icons/StepFunIcon.cjs.js +35 -0
- package/dist/icons/StepFunIcon.cjs.js.map +1 -0
- package/dist/icons/StepFunIcon.d.ts +1 -0
- package/dist/icons/StepFunIcon.es.js +32 -0
- package/dist/icons/StepFunIcon.es.js.map +1 -0
- package/dist/icons/TencentIcon.cjs.js +21 -0
- package/dist/icons/TencentIcon.cjs.js.map +1 -0
- package/dist/icons/TencentIcon.d.ts +1 -0
- package/dist/icons/TencentIcon.es.js +18 -0
- package/dist/icons/TencentIcon.es.js.map +1 -0
- package/dist/icons/UpstageIcon.cjs.js +36 -0
- package/dist/icons/UpstageIcon.cjs.js.map +1 -0
- package/dist/icons/UpstageIcon.d.ts +1 -0
- package/dist/icons/UpstageIcon.es.js +33 -0
- package/dist/icons/UpstageIcon.es.js.map +1 -0
- package/dist/{input-2hRXcZIu.cjs → input-BpnUsQSt.cjs} +4 -4
- package/dist/{input-2hRXcZIu.cjs.map → input-BpnUsQSt.cjs.map} +1 -1
- package/dist/{input-0l1uzOBZ.js → input-Cyit5ZSc.js} +4 -4
- package/dist/{input-0l1uzOBZ.js.map → input-Cyit5ZSc.js.map} +1 -1
- package/dist/{input-group-DVJLZDBL.cjs → input-group-DBCilXjT.cjs} +4 -4
- package/dist/{input-group-DVJLZDBL.cjs.map → input-group-DBCilXjT.cjs.map} +1 -1
- package/dist/{input-group-QKKV_ouF.js → input-group-NV4ZzKOk.js} +4 -4
- package/dist/{input-group-QKKV_ouF.js.map → input-group-NV4ZzKOk.js.map} +1 -1
- package/dist/layout/tabbed-container.cjs.js +1 -1
- package/dist/layout/tabbed-container.es.js +1 -1
- package/dist/lib/form/auto-form.cjs.js +1 -1
- package/dist/lib/form/auto-form.es.js +1 -1
- package/dist/lib/form/components/array-element-wrapper.cjs.js +4 -4
- package/dist/lib/form/components/array-element-wrapper.es.js +4 -4
- package/dist/lib/form/components/array-wrapper.cjs.js +2 -2
- package/dist/lib/form/components/array-wrapper.es.js +2 -2
- package/dist/lib/form/components/boolean-field.cjs.js +1 -1
- package/dist/lib/form/components/boolean-field.es.js +1 -1
- package/dist/lib/form/components/date-field.cjs.js +5 -5
- package/dist/lib/form/components/date-field.es.js +5 -5
- 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/form-submit-row.cjs.js +2 -2
- package/dist/lib/form/components/form-submit-row.es.js +2 -2
- package/dist/lib/form/components/number-field.cjs.js +1 -1
- package/dist/lib/form/components/number-field.es.js +1 -1
- package/dist/lib/form/components/object-wrapper.cjs.js +3 -3
- package/dist/lib/form/components/object-wrapper.es.js +3 -3
- package/dist/lib/form/components/record-field.cjs.js +2 -2
- package/dist/lib/form/components/record-field.es.js +2 -2
- 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/string-field.cjs.js +1 -1
- package/dist/lib/form/components/string-field.es.js +1 -1
- package/dist/lib/form/components/submit-button.cjs.js +1 -1
- package/dist/lib/form/components/submit-button.es.js +1 -1
- package/dist/lib/form/components/union-field.cjs.js +1 -1
- package/dist/lib/form/components/union-field.es.js +1 -1
- package/dist/lib/form/dynamic-form.cjs.js +2 -2
- package/dist/lib/form/dynamic-form.es.js +2 -2
- package/dist/{list-search-CkhsTFdG.js → list-search-DUcIMJTk.js} +2 -2
- package/dist/{list-search-CkhsTFdG.js.map → list-search-DUcIMJTk.js.map} +1 -1
- package/dist/{list-search-BtRno5As.cjs → list-search-yF02rvZt.cjs} +2 -2
- package/dist/{list-search-BtRno5As.cjs.map → list-search-yF02rvZt.cjs.map} +1 -1
- package/dist/mcp-app-viewer-BV7FI498.js +2051 -0
- package/dist/mcp-app-viewer-BV7FI498.js.map +1 -0
- package/dist/mcp-app-viewer-M3-pqAlo.cjs +2058 -0
- package/dist/mcp-app-viewer-M3-pqAlo.cjs.map +1 -0
- package/dist/new/layout/page-header.cjs.js +1 -1
- package/dist/new/layout/page-header.es.js +1 -1
- package/dist/new/settings.cjs.js +1 -1
- package/dist/new/settings.es.js +1 -1
- package/dist/{observability-saved-views-CjKTEp1V.js → observability-saved-views-Ch53fh5_.js} +9 -9
- package/dist/{observability-saved-views-CjKTEp1V.js.map → observability-saved-views-Ch53fh5_.js.map} +1 -1
- package/dist/{observability-saved-views-Daizz4tU.cjs → observability-saved-views-DgABvgat.cjs} +9 -9
- package/dist/{observability-saved-views-Daizz4tU.cjs.map → observability-saved-views-DgABvgat.cjs.map} +1 -1
- package/dist/{page-header-BykBsHUy.js → page-header-Maytcmgh.js} +3 -3
- package/dist/{page-header-BB6yjtce.cjs.map → page-header-Maytcmgh.js.map} +1 -1
- package/dist/{page-header-BB6yjtce.cjs → page-header-pZCts_WC.cjs} +3 -3
- package/dist/page-header-pZCts_WC.cjs.map +1 -0
- package/dist/{popover-CzHvTPk2.js → popover-BpMi52Tb.js} +3 -3
- package/dist/{popover-CzHvTPk2.js.map → popover-BpMi52Tb.js.map} +1 -1
- package/dist/{popover-BJqa6Hz6.cjs → popover-D9AfJmla.cjs} +3 -3
- package/dist/{popover-BJqa6Hz6.cjs.map → popover-D9AfJmla.cjs.map} +1 -1
- package/dist/primitives/chart-frame.cjs.js +2 -2
- package/dist/primitives/chart-frame.es.js +2 -2
- package/dist/primitives/chart-time-tick.cjs.js +2 -2
- package/dist/primitives/chart-time-tick.es.js +2 -2
- package/dist/primitives/charts/drag-selection.cjs.js +1 -1
- package/dist/primitives/charts/drag-selection.es.js +1 -1
- package/dist/primitives/menu-item.cjs.js +2 -2
- package/dist/primitives/menu-item.es.js +2 -2
- package/dist/primitives/menu-scroll-area.cjs.js +1 -1
- package/dist/primitives/menu-scroll-area.es.js +1 -1
- package/dist/primitives/resize-handle-indicator.cjs.js +1 -1
- package/dist/primitives/resize-handle-indicator.es.js +1 -1
- package/dist/primitives/trigger-button.cjs.js +2 -2
- package/dist/primitives/trigger-button.es.js +2 -2
- package/dist/{property-filter-applied--U5EZdaA.js → property-filter-applied-DoxQHG09.js} +8 -8
- package/dist/{property-filter-applied--U5EZdaA.js.map → property-filter-applied-DoxQHG09.js.map} +1 -1
- package/dist/{property-filter-applied-BkkIObRq.cjs → property-filter-applied-DuyL4S_K.cjs} +8 -8
- package/dist/{property-filter-applied-BkkIObRq.cjs.map → property-filter-applied-DuyL4S_K.cjs.map} +1 -1
- package/dist/resize/collapsible-panel.cjs.js +4 -4
- package/dist/resize/collapsible-panel.cjs.js.map +1 -1
- package/dist/resize/collapsible-panel.es.js +4 -4
- package/dist/resize/collapsible-panel.es.js.map +1 -1
- package/dist/resize/panel-drawer.cjs.js +3 -3
- package/dist/resize/panel-drawer.es.js +3 -3
- package/dist/resize/panel-icon-button.cjs.js +1 -2
- package/dist/resize/panel-icon-button.cjs.js.map +1 -1
- package/dist/resize/panel-icon-button.es.js +1 -1
- package/dist/resize/separator.cjs.js +1 -1
- package/dist/resize/separator.es.js +1 -1
- package/dist/{scroll-area-C226l0v0.js → scroll-area-9-S7wfSs.js} +2 -2
- package/dist/{scroll-area-C226l0v0.js.map → scroll-area-9-S7wfSs.js.map} +1 -1
- package/dist/{scroll-area-BP4gPZ4G.cjs → scroll-area-BU_TorPW.cjs} +2 -2
- package/dist/{scroll-area-BP4gPZ4G.cjs.map → scroll-area-BU_TorPW.cjs.map} +1 -1
- package/dist/{select-Dg8L5ROX.cjs → select-CeukeSn_.cjs} +5 -5
- package/dist/{select-Dg8L5ROX.cjs.map → select-CeukeSn_.cjs.map} +1 -1
- package/dist/{select-BdIZEdcy.js → select-dNX9If-s.js} +5 -5
- package/dist/{select-BdIZEdcy.js.map → select-dNX9If-s.js.map} +1 -1
- package/dist/{settings-BaUeaO96.js → settings-BEw_bg12.js} +2 -2
- package/dist/{settings-BaUeaO96.js.map → settings-BEw_bg12.js.map} +1 -1
- package/dist/{settings-CUVqhBbf.cjs → settings-Bminohri.cjs} +2 -2
- package/dist/{settings-CUVqhBbf.cjs.map → settings-Bminohri.cjs.map} +1 -1
- package/dist/{span-payload-primitives-CKKIAVPJ.js → span-payload-primitives-BKkRpVVO.js} +12 -12
- package/dist/{span-payload-primitives-CKKIAVPJ.js.map → span-payload-primitives-BKkRpVVO.js.map} +1 -1
- package/dist/{span-payload-primitives-D4tHWN2W.cjs → span-payload-primitives-D2NWznGy.cjs} +12 -12
- package/dist/{span-payload-primitives-D4tHWN2W.cjs.map → span-payload-primitives-D2NWznGy.cjs.map} +1 -1
- package/dist/{spinner-CnLgLj9R.js → spinner-B9ykw74u.js} +2 -2
- package/dist/{spinner-CnLgLj9R.js.map → spinner-B9ykw74u.js.map} +1 -1
- package/dist/{spinner-C8ZxiA5C.cjs → spinner-oS6q4pwx.cjs} +3 -3
- package/dist/{spinner-C8ZxiA5C.cjs.map → spinner-oS6q4pwx.cjs.map} +1 -1
- package/dist/src/domains/chat/activity/index.d.ts +1 -3
- package/dist/src/domains/chat/activity/model/activity-members.d.ts +1 -2
- package/dist/src/domains/chat/activity/model/activity-words.d.ts +1 -2
- package/dist/src/domains/chat/context/chat-context.d.ts +9 -0
- package/dist/src/domains/chat/tools/badges/knowledge-tool-badge.d.ts +2 -1
- package/dist/src/domains/chat/tools/badges/mcp-task-chip.d.ts +1 -1
- package/dist/src/domains/chat/tools/badges/workspace-data-parts.d.ts +6 -0
- package/dist/src/domains/chat/tools/tool-card-kind.d.ts +12 -2
- package/dist/src/domains/dashboards/components/dashboard-grid.d.ts +4 -1
- package/dist/src/domains/dashboards/components/dashboard-renderer.d.ts +22 -2
- package/dist/src/domains/dashboards/components/widget-controls.d.ts +3 -0
- package/dist/src/domains/dashboards/components/widget-error.d.ts +7 -2
- package/dist/src/domains/dashboards/index.d.ts +2 -2
- package/dist/src/domains/dashboards/kinds/kpis/kpis-widget.d.ts +1 -1
- package/dist/src/domains/dashboards/kinds/scores/scores-widget.d.ts +1 -1
- package/dist/src/domains/dashboards/lib/chrome.d.ts +5 -2
- package/dist/src/domains/dashboards/lib/pin-actions.d.ts +7 -0
- package/dist/src/domains/dashboards/widget-kind.d.ts +13 -0
- package/dist/src/domains/llm/models-dev-logo-slugs.d.ts +1 -0
- package/dist/src/domains/llm/provider-logo-monogram.d.ts +8 -0
- package/dist/src/domains/llm/provider-logo.d.ts +0 -4
- package/dist/src/domains/mcps/components/mcp-app-tool-result.d.ts +2 -1
- package/dist/src/domains/mcps/components/mcp-app-viewer.d.ts +7 -2
- package/dist/src/domains/mcps/hooks/use-mcp-app-tool-call.d.ts +5 -0
- package/dist/src/domains/metrics/components/chart-card.d.ts +6 -2
- package/dist/src/domains/metrics/components/kpi-card.d.ts +2 -1
- package/dist/src/domains/metrics/lib/index.d.ts +1 -0
- package/dist/src/domains/metrics/lib/series-colors.d.ts +39 -0
- package/dist/src/domains/traces/components/span-token-usage.utils.d.ts +1 -1
- package/dist/src/domains/workflows/components/workflow-combobox.d.ts +2 -1
- package/dist/src/ds/components/AgentIndicator/paint.d.ts +6 -2
- package/dist/src/ds/components/AgentIndicator/poses/coordination.d.ts +7 -0
- package/dist/src/ds/components/AgentIndicator/poses/documents.d.ts +2 -0
- package/dist/src/ds/components/AgentIndicator/poses/files.d.ts +5 -0
- package/dist/src/ds/components/AgentIndicator/poses/interface.d.ts +8 -0
- package/dist/src/ds/components/AgentIndicator/poses/knowledge-actions.d.ts +6 -0
- package/dist/src/ds/components/AgentIndicator/poses/knowledge.d.ts +2 -0
- package/dist/src/ds/components/AgentIndicator/poses/skills.d.ts +4 -0
- package/dist/src/ds/components/AgentIndicator/poses/terminal.d.ts +4 -0
- package/dist/src/ds/components/AgentIndicator/poses/thinking.d.ts +2 -0
- package/dist/src/ds/components/AgentIndicator/poses.d.ts +1 -1
- package/dist/src/ds/components/AgentIndicator/shapes.d.ts +7 -1
- package/dist/src/ds/components/Breadcrumb/crumb-switcher.d.ts +1 -0
- package/dist/src/ds/components/ChatShell/chat-shell-context.d.ts +9 -0
- package/dist/src/ds/components/ChatShell/chat-shell.d.ts +5 -0
- package/dist/src/ds/components/ChatShell/index.d.ts +2 -1
- package/dist/src/ds/components/Combobox/combobox-parts.d.ts +2 -1
- package/dist/src/ds/components/Combobox/combobox-styles.d.ts +9 -4
- package/dist/src/ds/components/Combobox/combobox.d.ts +4 -2
- package/dist/src/ds/components/CommandPalette/command-palette.d.ts +1 -1
- package/dist/src/ds/components/DateTimePicker/date-picker.d.ts +6 -1
- package/dist/src/ds/components/DateTimePicker/index.d.ts +0 -1
- package/dist/src/ds/components/DateTimeRangePicker/custom-range-editor.d.ts +3 -2
- package/dist/src/ds/components/Message/message-timestamp.d.ts +1 -0
- package/dist/src/ds/components/MessageScroller/message-scroller-context.d.ts +3 -2
- package/dist/src/ds/components/MessageScroller/message-scroller-geometry.d.ts +1 -1
- package/dist/src/ds/components/MessageScroller/message-scroller-hooks.d.ts +2 -8
- package/dist/src/ds/components/MessageScroller/message-scroller-visibility-store.d.ts +8 -0
- package/dist/src/ds/components/Metadata/index.d.ts +2 -0
- package/dist/src/ds/components/Metadata/metadata.d.ts +10 -0
- package/dist/src/ds/components/MetricsCard/index.d.ts +1 -0
- package/dist/src/ds/components/MetricsCard/metrics-card-drag-handle.d.ts +12 -0
- package/dist/src/ds/components/MetricsCard/metrics-card.d.ts +2 -0
- package/dist/src/ds/components/Steps/index.d.ts +1 -0
- package/dist/src/ds/components/Steps/step.d.ts +13 -0
- package/dist/src/ds/components/Steps/steps-context.d.ts +2 -0
- package/dist/src/ds/components/Steps/steps-root.d.ts +18 -0
- package/dist/src/ds/components/Steps/steps.d.ts +7 -0
- package/dist/src/ds/components/ai/annotations/annotatable-selection.d.ts +25 -0
- package/dist/src/ds/components/ai/annotations/annotation-comment-card.d.ts +11 -0
- package/dist/src/ds/components/ai/annotations/annotation-comment-popover.d.ts +15 -0
- package/dist/src/ds/components/ai/annotations/annotation-highlights.d.ts +1 -0
- package/dist/src/ds/components/ai/annotations/annotation-marker.d.ts +13 -0
- package/dist/src/ds/components/ai/annotations/annotation-markers.d.ts +9 -0
- package/dist/src/ds/components/ai/annotations/annotation-number.d.ts +4 -0
- package/dist/src/ds/components/ai/annotations/annotation-selection-toolbar.d.ts +7 -0
- package/dist/src/ds/components/ai/annotations/chat-annotations.d.ts +27 -0
- package/dist/src/ds/components/ai/annotations/composer-annotation-list.d.ts +6 -0
- package/dist/src/ds/components/ai/annotations/composer-annotations.d.ts +5 -0
- package/dist/src/ds/components/ai/annotations/format-annotated-message.d.ts +11 -0
- package/dist/src/ds/components/ai/annotations/index.d.ts +5 -0
- package/dist/src/ds/components/ai/annotations/transcript-annotations.d.ts +6 -0
- package/dist/src/ds/components/ai/annotations/use-annotation-placement.d.ts +11 -0
- package/dist/src/ds/components/ai/annotations/use-annotation-selection.d.ts +12 -0
- package/dist/src/ds/components/ai/tool-call/index.d.ts +3 -0
- package/dist/src/ds/components/ai/tool-call/tool-call-body.d.ts +6 -0
- package/dist/src/ds/components/ai/tool-call/tool-call-exit-status.d.ts +11 -0
- package/dist/src/ds/components/ai/tool-call/tool-call-output.d.ts +1 -2
- package/dist/src/ds/components/ai/tool-call/tool-call-view.d.ts +17 -0
- package/dist/src/ds/components/ai/tool-call/tool-phrases.d.ts +127 -138
- package/dist/src/ds/components/ai/tool-call/tool-presentation.d.ts +2 -0
- package/dist/src/ds/components/ai/tool-call/tool-styles.d.ts +10 -0
- package/dist/src/ds/components/ai/transcript-divider/transcript-divider.d.ts +2 -2
- package/dist/src/ds/icons/ByteDanceIcon.d.ts +2 -0
- package/dist/src/ds/icons/CohereBrandIcon.d.ts +2 -0
- package/dist/src/ds/icons/FireworksIcon.d.ts +2 -0
- package/dist/src/ds/icons/LongCatIcon.d.ts +2 -0
- package/dist/src/ds/icons/MicrosoftIcon.d.ts +2 -0
- package/dist/src/ds/icons/MorphIcon.d.ts +2 -0
- package/dist/src/ds/icons/NousResearchIcon.d.ts +2 -0
- package/dist/src/ds/icons/NovaIcon.d.ts +2 -0
- package/dist/src/ds/icons/PerplexityIcon.d.ts +2 -0
- package/dist/src/ds/icons/SakanaIcon.d.ts +2 -0
- package/dist/src/ds/icons/StepFunIcon.d.ts +2 -0
- package/dist/src/ds/icons/TencentIcon.d.ts +2 -0
- package/dist/src/ds/icons/UpstageIcon.d.ts +2 -0
- package/dist/src/ds/icons/index.d.ts +13 -0
- package/dist/src/ds/tokens/colors.d.ts +12 -0
- package/dist/src/ee/signals/sankey-signals-data.d.ts +2 -2
- package/dist/src/ee/signals/snapshot-summary.d.ts +7 -0
- package/dist/src/ee/signals/snapshot-timeline.d.ts +2 -1
- package/dist/src/hooks/use-clock.d.ts +5 -0
- package/dist/src/lib/resize/collapsible-panel.d.ts +5 -3
- package/dist/src/lib/string.d.ts +1 -0
- package/dist/{string-CNKDIc_4.js → string-CA5M0mj_.js} +5 -2
- package/dist/{string-CNKDIc_4.js.map → string-CA5M0mj_.js.map} +1 -1
- package/dist/{string-DdJJdCv2.cjs → string-EyTazW-F.cjs} +10 -1
- package/dist/{string-DdJJdCv2.cjs.map → string-EyTazW-F.cjs.map} +1 -1
- package/dist/style.css +321 -144
- package/dist/{tabbed-container-B4lCBgRP.cjs → tabbed-container-Bhfi-DWr.cjs} +9 -9
- package/dist/{tabbed-container-B4lCBgRP.cjs.map → tabbed-container-Bhfi-DWr.cjs.map} +1 -1
- package/dist/{tabbed-container-DI1GI1Qv.js → tabbed-container-DOkHshha.js} +8 -8
- package/dist/{tabbed-container-DI1GI1Qv.js.map → tabbed-container-DOkHshha.js.map} +1 -1
- package/dist/{tabs-content-CmXe5ML0.cjs → tabs-content-BACwMrMG.cjs} +3 -3
- package/dist/{tabs-content-CmXe5ML0.cjs.map → tabs-content-BACwMrMG.cjs.map} +1 -1
- package/dist/{tabs-content-D__B9hd-.js → tabs-content-DwU_eA-a.js} +3 -3
- package/dist/{tabs-content-D__B9hd-.js.map → tabs-content-DwU_eA-a.js.map} +1 -1
- package/dist/{tabs-tab-CYTZevdV.js → tabs-tab-BHs639jL.js} +4 -4
- package/dist/{tabs-tab-CYTZevdV.js.map → tabs-tab-BHs639jL.js.map} +1 -1
- package/dist/{tabs-tab-DGwfHVDr.cjs → tabs-tab-CANh2eAD.cjs} +4 -4
- package/dist/{tabs-tab-DGwfHVDr.cjs.map → tabs-tab-CANh2eAD.cjs.map} +1 -1
- package/dist/{toast-api-D_rrRhNG.js → toast-api-Cak5N8pT.js} +2 -2
- package/dist/{toast-api-D_rrRhNG.js.map → toast-api-Cak5N8pT.js.map} +1 -1
- package/dist/{toast-api-qtkOucy2.cjs → toast-api-DDcGCbIw.cjs} +2 -2
- package/dist/{toast-api-qtkOucy2.cjs.map → toast-api-DDcGCbIw.cjs.map} +1 -1
- package/dist/tokens.cjs.js +12 -0
- package/dist/tokens.cjs.js.map +1 -1
- package/dist/tokens.es.js +12 -0
- package/dist/tokens.es.js.map +1 -1
- package/dist/{tool-approval-CJvPDL7D.cjs → tool-approval-CguPaikn.cjs} +7 -7
- package/dist/{tool-approval-CJvPDL7D.cjs.map → tool-approval-CguPaikn.cjs.map} +1 -1
- package/dist/{tool-approval-DyN11vFA.js → tool-approval-Cjz0yAzw.js} +7 -7
- package/dist/{tool-approval-DyN11vFA.js.map → tool-approval-Cjz0yAzw.js.map} +1 -1
- package/dist/tool-call-BqDI9mrY.cjs +600 -0
- package/dist/tool-call-BqDI9mrY.cjs.map +1 -0
- package/dist/tool-call-ChJKYCfu.js +505 -0
- package/dist/tool-call-ChJKYCfu.js.map +1 -0
- package/dist/{tool-card-BOLXeKIp.cjs → tool-card-Dg4VOYV6.cjs} +24 -15
- package/dist/tool-card-Dg4VOYV6.cjs.map +1 -0
- package/dist/{tool-card-HZ5bm7ue.js → tool-card-GSiCfxMz.js} +25 -16
- package/dist/tool-card-GSiCfxMz.js.map +1 -0
- package/dist/tool-presentation-C2bYQ7gB.js +874 -0
- package/dist/tool-presentation-C2bYQ7gB.js.map +1 -0
- package/dist/tool-presentation-DPp9h-n2.cjs +915 -0
- package/dist/tool-presentation-DPp9h-n2.cjs.map +1 -0
- package/dist/{tooltip-BiRLT3Th.cjs → tooltip-BsExuMO8.cjs} +2 -2
- package/dist/{tooltip-BiRLT3Th.cjs.map → tooltip-BsExuMO8.cjs.map} +1 -1
- package/dist/{tooltip-HzcLyGtV.js → tooltip-DJcze2VZ.js} +2 -2
- package/dist/{tooltip-HzcLyGtV.js.map → tooltip-DJcze2VZ.js.map} +1 -1
- package/dist/{transcript-divider-CvdgElIC.js → transcript-divider-DM2HkdeO.js} +5 -11
- package/dist/transcript-divider-DM2HkdeO.js.map +1 -0
- package/dist/{transcript-divider-CQ6sc3nt.cjs → transcript-divider-DroC3feH.cjs} +4 -10
- package/dist/transcript-divider-DroC3feH.cjs.map +1 -0
- package/dist/{use-workflow-graph-runtime-BKNhOKsH.js → use-workflow-graph-runtime-B3VUuhUE.js} +12 -12
- package/dist/{use-workflow-graph-runtime-BKNhOKsH.js.map → use-workflow-graph-runtime-B3VUuhUE.js.map} +1 -1
- package/dist/{use-workflow-graph-runtime-DYao-08R.cjs → use-workflow-graph-runtime-BfCL6nd4.cjs} +12 -12
- package/dist/{use-workflow-graph-runtime-DYao-08R.cjs.map → use-workflow-graph-runtime-BfCL6nd4.cjs.map} +1 -1
- package/dist/utils/string.cjs.js +2 -1
- package/dist/utils/string.es.js +1 -1
- package/dist/utils/toast.cjs.js +1 -1
- package/dist/utils/toast.es.js +1 -1
- package/oxlint/copy-rules.d.ts +4 -0
- package/oxlint/copy-rules.js +29 -0
- package/oxlint/copy-sources.js +223 -0
- package/oxlint/index.d.ts +5 -0
- package/oxlint/index.js +17 -0
- package/package.json +13 -10
- package/theme/data-viz.css +33 -0
- package/dist/AgentIndicator-Bs2S8AWJ.js +0 -847
- package/dist/AgentIndicator-Bs2S8AWJ.js.map +0 -1
- package/dist/AgentIndicator-to30W73z.cjs +0 -864
- package/dist/AgentIndicator-to30W73z.cjs.map +0 -1
- package/dist/Button-CLXTbAY8.js.map +0 -1
- package/dist/Button-DLcMcuUL.cjs.map +0 -1
- package/dist/Composer-BcueJvdX.cjs.map +0 -1
- package/dist/Composer-D1gF-0jZ.js.map +0 -1
- package/dist/FilterBar-BSP2UTjc.cjs.map +0 -1
- package/dist/FilterBar-PSQ1OwqH.js.map +0 -1
- package/dist/Message-jj56lxNL.cjs.map +0 -1
- package/dist/MessageScroller-CGsfTd1Z.cjs.map +0 -1
- package/dist/MessageScroller-DvaKlm4O.js.map +0 -1
- package/dist/MetricsCard-BEwiS7Pe.cjs.map +0 -1
- package/dist/MetricsCard-ua6C6b8a.js.map +0 -1
- package/dist/Workflow-C3SlEdP-.js.map +0 -1
- package/dist/Workflow-DSWQ-ROz.cjs.map +0 -1
- package/dist/activity-C8Ql81WM.js.map +0 -1
- package/dist/activity-CcQZeDYi.cjs.map +0 -1
- package/dist/combobox-D21no8t5.js.map +0 -1
- package/dist/combobox-DIT_6xiG.cjs.map +0 -1
- package/dist/combobox-parts-C4phOq4t.cjs.map +0 -1
- package/dist/combobox-parts-D90ir0Py.js.map +0 -1
- package/dist/date-time-range-picker-CWGjoR3j.cjs.map +0 -1
- package/dist/date-time-range-picker-CdSiXwB4.js.map +0 -1
- package/dist/domains/chat/activity/components/activity-timed-trigger.cjs.js +0 -29
- package/dist/domains/chat/activity/components/activity-timed-trigger.cjs.js.map +0 -1
- package/dist/domains/chat/activity/components/activity-timed-trigger.d.ts +0 -1
- package/dist/domains/chat/activity/components/activity-timed-trigger.es.js +0 -28
- package/dist/domains/chat/activity/components/activity-timed-trigger.es.js.map +0 -1
- package/dist/domains/mcps/components/mcp-app-viewer.cjs.js.map +0 -1
- package/dist/domains/mcps/components/mcp-app-viewer.es.js.map +0 -1
- package/dist/page-header-BykBsHUy.js.map +0 -1
- package/dist/src/domains/chat/activity/components/activity-timed-trigger.d.ts +0 -9
- package/dist/src/ds/components/DateTimePicker/time-picker.d.ts +0 -7
- package/dist/tool-call-DBn14X-3.cjs +0 -497
- package/dist/tool-call-DBn14X-3.cjs.map +0 -1
- package/dist/tool-call-Dsj43lvJ.js +0 -426
- package/dist/tool-call-Dsj43lvJ.js.map +0 -1
- package/dist/tool-card-BOLXeKIp.cjs.map +0 -1
- package/dist/tool-card-HZ5bm7ue.js.map +0 -1
- package/dist/tool-presentation-CvibOP1J.js +0 -256
- package/dist/tool-presentation-CvibOP1J.js.map +0 -1
- package/dist/tool-presentation-D6nzVruN.cjs +0 -291
- package/dist/tool-presentation-D6nzVruN.cjs.map +0 -1
- package/dist/transcript-divider-CQ6sc3nt.cjs.map +0 -1
- package/dist/transcript-divider-CvdgElIC.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnowledgePageDetail.cjs.js","names":["Txt","createContext","useContext","KNOWLEDGE_REF_PROPERTY","remarkKnowledgeLinks","Badge","knowledgePageRefIndex","parseRecordSegments","useRef","useMemo","ChevronRight","Pin","MarkdownRenderer"],"sources":["../../../../src/domains/knowledge/components/KnowledgePageDetail.tsx"],"sourcesContent":["import { ChevronRight, Pin } from 'lucide-react';\nimport { createContext, useContext, useEffect, useMemo, useRef } from 'react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport type { Components, ExtraProps } from 'react-markdown';\n\nimport { knowledgePageRefIndex } from '../lib/pageRefs';\nimport type { KnowledgePageRefIndex } from '../lib/pageRefs';\nimport { parseRecordSegments } from '../lib/recordText';\nimport { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from '../lib/remarkKnowledgeLinks';\nimport type {\n KnowledgeActivityAction,\n KnowledgePageActivityPayload,\n KnowledgeNotePayload,\n KnowledgePagePayload,\n KnowledgePinPayload,\n} from '../pageTypes';\n\nimport { Badge } from '@/ds/components/Badge';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt';\n\nconst ACTIVITY_LABELS: Record<KnowledgeActivityAction, string> = {\n 'scope-created': 'Scope created',\n 'page-created': 'Page created',\n 'page-updated': 'Page edited',\n 'page-moved': 'Page moved',\n 'page-merged': 'Page merged',\n 'page-deleted': 'Page deleted',\n 'note-added': 'Note added',\n 'note-restamped': 'Note restamped',\n 'note-removed': 'Note removed',\n 'note-restored': 'Note restored',\n 'pin-added': 'Pinned',\n 'pin-removed': 'Unpinned',\n};\n\nfunction formatWhen(iso: string): string {\n const date = new Date(iso);\n return Number.isNaN(date.getTime())\n ? iso\n : date.toLocaleString(undefined, { dateStyle: 'medium', timeStyle: 'short' });\n}\n\nconst RELATIVE_STEPS: Array<[Intl.RelativeTimeFormatUnit, number]> = [\n ['second', 60],\n ['minute', 60],\n ['hour', 24],\n ['day', 7],\n ['week', 4.35],\n ['month', 12],\n ['year', Infinity],\n];\n\n/** \"3 minutes ago\", with the exact time left to a tooltip. */\nfunction formatAgo(iso: string, now = Date.now()): string {\n const time = new Date(iso).getTime();\n if (Number.isNaN(time)) return iso;\n let value = (time - now) / 1000;\n const format = new Intl.RelativeTimeFormat(undefined, { numeric: 'auto' });\n for (const [unit, size] of RELATIVE_STEPS) {\n if (Math.abs(value) < size) return format.format(Math.round(value), unit);\n value /= size;\n }\n return formatWhen(iso);\n}\n\nfunction When({ iso }: { iso: string }) {\n return (\n <time dateTime={iso} title={formatWhen(iso)}>\n {formatAgo(iso)}\n </time>\n );\n}\n\n/** A small round mark with the author's initial, tinted per author so a page's writers tell apart. */\nfunction AuthorMark({ author }: { author: string }) {\n const name = author.includes(':') ? author.slice(author.indexOf(':') + 1) : author;\n let hash = 0;\n for (const char of author) hash = (hash * 31 + char.charCodeAt(0)) | 0;\n const hues = ['--chart-blue', '--chart-purple', '--chart-green', '--chart-orange', '--chart-pink'];\n const hue = hues[Math.abs(hash) % hues.length];\n return (\n <span\n aria-hidden\n className=\"flex size-6 shrink-0 items-center justify-center rounded-full border border-border\"\n style={{ background: `color-mix(in oklab, var(${hue}) 28%, var(--card))` }}\n >\n <Txt as=\"span\" variant=\"meta\" tone=\"ink\">\n {(name.trim()[0] ?? '?').toUpperCase()}\n </Txt>\n </span>\n );\n}\n\n/**\n * The page's address: its home scope, then the keys from that scope down to it\n * (`org:acme#policies/refund`). Null when a page on the way has no key.\n */\nfunction knowledgePagePath(page: KnowledgePagePayload, ancestors: KnowledgePagePayload[]): string | null {\n if (page.isScope) return page.address ?? null;\n const scope = ancestors.find(candidate => candidate.id === page.scopeId);\n if (!scope?.address) return null;\n const below = ancestors.slice(ancestors.indexOf(scope) + 1).filter(candidate => !candidate.isScope);\n const keys = [...below, page].map(candidate => candidate.key);\n if (keys.some(key => !key)) return null;\n return `${scope.address}#${keys.join('/')}`;\n}\n\nconst BodyLinks = createContext<{\n index: KnowledgePageRefIndex;\n onPageClick: (page: KnowledgePagePayload) => void;\n} | null>(null);\n\n/**\n * A `[[ref]]` from a page body: the page's name as a link when a loaded page answers to the ref, the ref\n * itself in a quiet style when none does. Every other `<span>` the markdown makes passes through.\n */\nfunction BodySpan({ node, ...props }: ComponentProps<'span'> & ExtraProps) {\n const links = useContext(BodyLinks);\n const ref = node?.properties[KNOWLEDGE_REF_PROPERTY];\n if (typeof ref !== 'string' || !links) return <span {...props} />;\n const target = links.index.resolve(ref);\n return target ? (\n <button\n type=\"button\"\n data-testid=\"knowledge-body-link\"\n title={ref}\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => links.onPageClick(target)}\n >\n {target.name}\n </button>\n ) : (\n <span\n data-testid=\"knowledge-body-link-unresolved\"\n title=\"No loaded page has this address\"\n className=\"rounded border border-dashed border-border px-1 text-muted-foreground\"\n >\n {ref}\n </span>\n );\n}\n\nconst BODY_REMARK_PLUGINS = [remarkKnowledgeLinks];\nconst BODY_COMPONENTS: Components = { span: BodySpan };\n\nfunction Section({ label, count, children }: { label: string; count?: number; children: ReactNode }) {\n return (\n <section aria-label={label} className=\"flex flex-col gap-3\">\n <div className=\"flex items-center gap-2 border-b border-border pb-2\">\n <Txt as=\"h3\" variant=\"eyebrow\" tone=\"muted\" className=\"uppercase\">\n {label}\n </Txt>\n {count !== undefined ? (\n <Badge variant=\"neutral\" size=\"xs\">\n {count}\n </Badge>\n ) : null}\n </div>\n {children}\n </section>\n );\n}\n\nfunction PageLink({\n page,\n onPageClick,\n}: {\n page: KnowledgePagePayload;\n onPageClick: (page: KnowledgePagePayload) => void;\n}) {\n return (\n <button\n type=\"button\"\n className=\"text-left font-medium text-info-indicator hover:underline\"\n onClick={() => onPageClick(page)}\n >\n {page.name}\n </button>\n );\n}\n\nconst refIndexes = new WeakMap<ReadonlyMap<string, KnowledgePagePayload>, KnowledgePageRefIndex>();\n\n/** One ref index per loaded-pages map, shared by every note drawn from it. */\nfunction loadedRefIndex(pagesById: ReadonlyMap<string, KnowledgePagePayload>): KnowledgePageRefIndex {\n let index = refIndexes.get(pagesById);\n if (!index) refIndexes.set(pagesById, (index = knowledgePageRefIndex(pagesById.values())));\n return index;\n}\n\n/** One note: who wrote it and when, its text with `[[mentions]]` linked when the page is known, and the scopes it is stamped to. */\nexport function KnowledgeNoteItem({\n note,\n pagesById,\n onPageClick,\n highlighted,\n itemRef,\n showPage,\n compact,\n}: {\n note: KnowledgeNotePayload;\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n highlighted?: boolean;\n itemRef?: (element: HTMLLIElement | null) => void;\n /** Name the page the note sits on, for notes listed away from it. */\n showPage?: boolean;\n /** A tighter layout for popups. */\n compact?: boolean;\n}) {\n const refIndex = loadedRefIndex(pagesById);\n // Only a page the server resolved the mention to is linked, however the ref is written.\n const mentionTarget = (ref: string) => {\n const target = refIndex.resolve(ref);\n return target && note.mentions.includes(target.id) ? target : undefined;\n };\n const scopeLabel = (id: string) => {\n const scopePage = pagesById.get(id);\n return scopePage?.address ?? scopePage?.name ?? id;\n };\n const onPage = showPage ? pagesById.get(note.pageId) : undefined;\n return (\n <li\n ref={itemRef}\n data-highlighted={highlighted || undefined}\n className={`flex gap-3 rounded-lg border border-border bg-card ${compact ? 'p-2' : 'p-3'}`}\n style={highlighted ? { borderColor: 'var(--chart-blue)', boxShadow: '0 0 0 1px var(--chart-blue)' } : undefined}\n >\n {compact ? null : <AuthorMark author={note.provenance.author} />}\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n <Txt as=\"span\" variant=\"label\" tone=\"ink\">\n {note.provenance.author}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <When iso={note.updatedAt} />\n </Txt>\n {onPage ? (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n on <PageLink page={onPage} onPageClick={onPageClick} />\n </Txt>\n ) : null}\n </div>\n <p className=\"text-ui-md break-words text-foreground\">\n {parseRecordSegments(note.text).map((segment, index) => {\n if (segment.type === 'text') return <span key={index}>{segment.value}</span>;\n const target = mentionTarget(segment.value);\n return target ? (\n <button\n key={index}\n type=\"button\"\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => onPageClick(target)}\n >\n {segment.value}\n </button>\n ) : (\n <span key={index} className=\"font-medium\">\n {segment.value}\n </span>\n );\n })}\n </p>\n {note.stampScopeIds.length > 0 ? (\n <div className=\"flex flex-wrap gap-1\" aria-label=\"Stamped to\">\n {note.stampScopeIds.map(id => (\n <Badge key={id} variant=\"neutral\" size=\"xs\">\n {scopeLabel(id)}\n </Badge>\n ))}\n </div>\n ) : null}\n </div>\n </li>\n );\n}\n\n/**\n * The selected page as a page: where it sits, its body as markdown, its child\n * pages, its notes (each with the scopes it is stamped to and who wrote it),\n * the notes elsewhere that mention it, and its recent activity. Bodies are\n * agent-written, so they render through {@link MarkdownRenderer}, which escapes\n * raw HTML and drops unsafe link schemes.\n *\n * Paged lists take a `…More` slot the host fills with the next page's loader.\n */\nexport function KnowledgePageDetail({\n page,\n notes,\n pin,\n pagesById,\n onPageClick,\n highlightMentionOf,\n ancestors = [],\n mentionedBy = [],\n notesMore,\n childPages,\n activity,\n}: {\n page: KnowledgePagePayload;\n notes: KnowledgeNotePayload[];\n pin?: KnowledgePinPayload;\n /** Loaded pages, for scope names and mention links. */\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n /** Marks the notes that mention this page, e.g. after a mention line in the graph was clicked. */\n highlightMentionOf?: string;\n /** Readable ancestors, root first: a breadcrumb and the page's path. */\n ancestors?: KnowledgePagePayload[];\n /** Notes on other pages that mention this one. */\n mentionedBy?: KnowledgeNotePayload[];\n /** Rendered after the notes: the host's loader for the next page of notes. */\n notesMore?: ReactNode;\n /** The page's children, when the host can list them. */\n childPages?: ReactNode;\n activity?: KnowledgePageActivityPayload[];\n}) {\n const firstHighlighted = useRef<HTMLLIElement | null>(null);\n useEffect(() => {\n firstHighlighted.current?.scrollIntoView?.({ block: 'nearest' });\n }, [highlightMentionOf, notes]);\n let highlightRefSet = false;\n const scope = page.isScope\n ? page\n : (ancestors.find(candidate => candidate.id === page.scopeId) ?? pagesById.get(page.scopeId));\n const path = knowledgePagePath(page, ancestors);\n\n const kind = page.isScope ? (page.displayLabel ?? 'Scope') : 'Page';\n const refIndex = useMemo(\n () => knowledgePageRefIndex([...pagesById.values(), ...ancestors, page]),\n [pagesById, ancestors, page],\n );\n const bodyLinks = useMemo(() => ({ index: refIndex, onPageClick }), [refIndex, onPageClick]);\n\n return (\n <article aria-label={page.name} className=\"flex min-h-0 flex-col overflow-y-auto\">\n <header className=\"flex flex-col gap-3 border-b border-border bg-fill-subtle px-6 pt-5 pb-4\">\n {ancestors.length > 0 ? (\n <nav aria-label=\"Breadcrumb\">\n <ol className=\"flex flex-wrap items-center gap-1\">\n {ancestors.map(ancestor => (\n <li key={ancestor.id} className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n className=\"text-ui-sm rounded px-1 py-0.5 text-muted-foreground hover:bg-fill hover:text-foreground\"\n onClick={() => onPageClick(ancestor)}\n >\n {ancestor.name}\n </button>\n <ChevronRight size={12} className=\"text-muted-foreground\" aria-hidden />\n </li>\n ))}\n </ol>\n </nav>\n ) : null}\n <div className=\"flex flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant={page.isScope ? 'info' : 'neutral'} size=\"sm\">\n {kind}\n </Badge>\n {page.isScope ? null : (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n in {scope?.address ?? scope?.name ?? page.scopeId}\n </Txt>\n )}\n {pin ? (\n <Badge variant=\"warning\" size=\"sm\" icon={<Pin size={10} aria-hidden />}>\n {pin.audience.length > 0 ? `Pinned for ${pin.audience.join(', ')}` : 'Pinned'}\n </Badge>\n ) : null}\n </div>\n <Txt as=\"h2\" variant=\"title\" className=\"break-words\">\n {page.name}\n </Txt>\n {page.description ? (\n <Txt variant=\"body\" tone=\"muted\">\n {page.description}\n </Txt>\n ) : null}\n </div>\n <dl className=\"flex flex-wrap items-center gap-x-4 gap-y-1\">\n {page.isScope && page.address ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Address</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\">\n {page.address}\n </Txt>\n </dd>\n </div>\n ) : null}\n {path && !page.isScope ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Path</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\" data-testid=\"knowledge-page-path\">\n {path}\n </Txt>\n </dd>\n </div>\n ) : null}\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Version</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" data-testid=\"knowledge-page-version\">\n Version {page.version} · updated <When iso={page.updatedAt} /> by {page.updatedBy.author}\n </Txt>\n </dd>\n </div>\n </dl>\n </header>\n\n <div className=\"grid gap-8 p-6 xl:grid-cols-[minmax(0,1fr)_18rem]\">\n <div className=\"flex min-w-0 flex-col gap-8\">\n {page.body ? (\n <div data-testid=\"knowledge-page-body\" className=\"max-w-3xl\">\n <BodyLinks.Provider value={bodyLinks}>\n <MarkdownRenderer remarkPlugins={BODY_REMARK_PLUGINS} components={BODY_COMPONENTS}>\n {page.body}\n </MarkdownRenderer>\n </BodyLinks.Provider>\n </div>\n ) : (\n <Txt variant=\"body\" tone=\"muted\" className=\"italic\">\n This {page.isScope ? 'scope' : 'page'} has no body yet.\n </Txt>\n )}\n\n <Section label=\"Notes\" count={notesMore ? undefined : notes.length}>\n {notes.length === 0 ? (\n <Txt variant=\"body\" tone=\"muted\">\n No notes on this page.\n </Txt>\n ) : (\n <ul className=\"flex flex-col gap-2\">\n {notes.map(note => {\n const highlighted = !!highlightMentionOf && note.mentions.includes(highlightMentionOf);\n const takeRef = highlighted && !highlightRefSet;\n if (takeRef) highlightRefSet = true;\n return (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n highlighted={highlighted}\n itemRef={\n takeRef\n ? element => {\n firstHighlighted.current = element;\n }\n : undefined\n }\n />\n );\n })}\n </ul>\n )}\n {notesMore}\n </Section>\n </div>\n\n <aside className=\"flex min-w-0 flex-col gap-8\">\n {childPages ? <Section label=\"Pages\">{childPages}</Section> : null}\n\n {mentionedBy.length > 0 ? (\n <Section label=\"Mentioned in\" count={mentionedBy.length}>\n <ul className=\"flex flex-col gap-2\">\n {mentionedBy.map(note => (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n showPage\n compact\n />\n ))}\n </ul>\n </Section>\n ) : null}\n\n {activity && activity.length > 0 ? (\n <Section label=\"Activity\">\n <ol className=\"relative flex flex-col gap-3 border-l border-border pl-4\">\n {activity.map(event => (\n <li key={event.id} className=\"relative flex flex-col\">\n <span\n aria-hidden\n className=\"absolute top-1.5 -left-5 size-2 rounded-full border border-border bg-card\"\n />\n <Txt as=\"span\" variant=\"body-sm\" tone=\"ink\">\n {ACTIVITY_LABELS[event.action] ?? event.action}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n {event.provenance.author} · <When iso={event.createdAt} />\n </Txt>\n </li>\n ))}\n </ol>\n </Section>\n ) : null}\n </aside>\n </div>\n </article>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KnowledgePageDetail.cjs.js","names":["Txt","createContext","useContext","KNOWLEDGE_REF_PROPERTY","remarkKnowledgeLinks","Badge","knowledgePageRefIndex","parseRecordSegments","useRef","useMemo","ChevronRight","Pin","Metadata","MarkdownRenderer"],"sources":["../../../../src/domains/knowledge/components/KnowledgePageDetail.tsx"],"sourcesContent":["import { ChevronRight, Pin } from 'lucide-react';\nimport { createContext, useContext, useEffect, useMemo, useRef } from 'react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport type { Components, ExtraProps } from 'react-markdown';\n\nimport { knowledgePageRefIndex } from '../lib/pageRefs';\nimport type { KnowledgePageRefIndex } from '../lib/pageRefs';\nimport { parseRecordSegments } from '../lib/recordText';\nimport { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from '../lib/remarkKnowledgeLinks';\nimport type {\n KnowledgeActivityAction,\n KnowledgePageActivityPayload,\n KnowledgeNotePayload,\n KnowledgePagePayload,\n KnowledgePinPayload,\n} from '../pageTypes';\n\nimport { Badge } from '@/ds/components/Badge';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Metadata } from '@/ds/components/Metadata';\nimport { Txt } from '@/ds/components/Txt';\n\nconst ACTIVITY_LABELS: Record<KnowledgeActivityAction, string> = {\n 'scope-created': 'Scope created',\n 'page-created': 'Page created',\n 'page-updated': 'Page edited',\n 'page-moved': 'Page moved',\n 'page-merged': 'Page merged',\n 'page-deleted': 'Page deleted',\n 'note-added': 'Note added',\n 'note-restamped': 'Note restamped',\n 'note-removed': 'Note removed',\n 'note-restored': 'Note restored',\n 'pin-added': 'Pinned',\n 'pin-removed': 'Unpinned',\n};\n\nfunction formatWhen(iso: string): string {\n const date = new Date(iso);\n return Number.isNaN(date.getTime())\n ? iso\n : date.toLocaleString(undefined, { dateStyle: 'medium', timeStyle: 'short' });\n}\n\nconst RELATIVE_STEPS: Array<[Intl.RelativeTimeFormatUnit, number]> = [\n ['second', 60],\n ['minute', 60],\n ['hour', 24],\n ['day', 7],\n ['week', 4.35],\n ['month', 12],\n ['year', Infinity],\n];\n\n/** \"3 minutes ago\", with the exact time left to a tooltip. */\nfunction formatAgo(iso: string, now = Date.now()): string {\n const time = new Date(iso).getTime();\n if (Number.isNaN(time)) return iso;\n let value = (time - now) / 1000;\n const format = new Intl.RelativeTimeFormat(undefined, { numeric: 'auto' });\n for (const [unit, size] of RELATIVE_STEPS) {\n if (Math.abs(value) < size) return format.format(Math.round(value), unit);\n value /= size;\n }\n return formatWhen(iso);\n}\n\nfunction When({ iso }: { iso: string }) {\n return (\n <time dateTime={iso} title={formatWhen(iso)}>\n {formatAgo(iso)}\n </time>\n );\n}\n\n/** A small round mark with the author's initial, tinted per author so a page's writers tell apart. */\nfunction AuthorMark({ author }: { author: string }) {\n const name = author.includes(':') ? author.slice(author.indexOf(':') + 1) : author;\n let hash = 0;\n for (const char of author) hash = (hash * 31 + char.charCodeAt(0)) | 0;\n const hues = ['--chart-blue', '--chart-purple', '--chart-green', '--chart-orange', '--chart-pink'];\n const hue = hues[Math.abs(hash) % hues.length];\n return (\n <span\n aria-hidden\n className=\"flex size-6 shrink-0 items-center justify-center rounded-full border border-border\"\n style={{ background: `color-mix(in oklab, var(${hue}) 28%, var(--card))` }}\n >\n <Txt as=\"span\" variant=\"meta\" tone=\"ink\">\n {(name.trim()[0] ?? '?').toUpperCase()}\n </Txt>\n </span>\n );\n}\n\n/**\n * The page's address: its home scope, then the keys from that scope down to it\n * (`org:acme#policies/refund`). Null when a page on the way has no key.\n */\nfunction knowledgePagePath(page: KnowledgePagePayload, ancestors: KnowledgePagePayload[]): string | null {\n if (page.isScope) return page.address ?? null;\n const scope = ancestors.find(candidate => candidate.id === page.scopeId);\n if (!scope?.address) return null;\n const below = ancestors.slice(ancestors.indexOf(scope) + 1).filter(candidate => !candidate.isScope);\n const keys = [...below, page].map(candidate => candidate.key);\n if (keys.some(key => !key)) return null;\n return `${scope.address}#${keys.join('/')}`;\n}\n\nconst BodyLinks = createContext<{\n index: KnowledgePageRefIndex;\n onPageClick: (page: KnowledgePagePayload) => void;\n} | null>(null);\n\n/**\n * A `[[ref]]` from a page body: the page's name as a link when a loaded page answers to the ref, the ref\n * itself in a quiet style when none does. Every other `<span>` the markdown makes passes through.\n */\nfunction BodySpan({ node, ...props }: ComponentProps<'span'> & ExtraProps) {\n const links = useContext(BodyLinks);\n const ref = node?.properties[KNOWLEDGE_REF_PROPERTY];\n if (typeof ref !== 'string' || !links) return <span {...props} />;\n const target = links.index.resolve(ref);\n return target ? (\n <button\n type=\"button\"\n data-testid=\"knowledge-body-link\"\n title={ref}\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => links.onPageClick(target)}\n >\n {target.name}\n </button>\n ) : (\n <span\n data-testid=\"knowledge-body-link-unresolved\"\n title=\"No loaded page has this address\"\n className=\"rounded border border-dashed border-border px-1 text-muted-foreground\"\n >\n {ref}\n </span>\n );\n}\n\nconst BODY_REMARK_PLUGINS = [remarkKnowledgeLinks];\nconst BODY_COMPONENTS: Components = { span: BodySpan };\n\nfunction Section({ label, count, children }: { label: string; count?: number; children: ReactNode }) {\n return (\n <section aria-label={label} className=\"flex flex-col gap-3\">\n <div className=\"flex items-center gap-2 border-b border-border pb-2\">\n <Txt as=\"h3\" variant=\"eyebrow\" tone=\"muted\" className=\"uppercase\">\n {label}\n </Txt>\n {count !== undefined ? (\n <Badge variant=\"neutral\" size=\"xs\">\n {count}\n </Badge>\n ) : null}\n </div>\n {children}\n </section>\n );\n}\n\nfunction PageLink({\n page,\n onPageClick,\n}: {\n page: KnowledgePagePayload;\n onPageClick: (page: KnowledgePagePayload) => void;\n}) {\n return (\n <button\n type=\"button\"\n className=\"text-left font-medium text-info-indicator hover:underline\"\n onClick={() => onPageClick(page)}\n >\n {page.name}\n </button>\n );\n}\n\nconst refIndexes = new WeakMap<ReadonlyMap<string, KnowledgePagePayload>, KnowledgePageRefIndex>();\n\n/** One ref index per loaded-pages map, shared by every note drawn from it. */\nfunction loadedRefIndex(pagesById: ReadonlyMap<string, KnowledgePagePayload>): KnowledgePageRefIndex {\n let index = refIndexes.get(pagesById);\n if (!index) refIndexes.set(pagesById, (index = knowledgePageRefIndex(pagesById.values())));\n return index;\n}\n\n/** One note: who wrote it and when, its text with `[[mentions]]` linked when the page is known, and the scopes it is stamped to. */\nexport function KnowledgeNoteItem({\n note,\n pagesById,\n onPageClick,\n highlighted,\n itemRef,\n showPage,\n compact,\n}: {\n note: KnowledgeNotePayload;\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n highlighted?: boolean;\n itemRef?: (element: HTMLLIElement | null) => void;\n /** Name the page the note sits on, for notes listed away from it. */\n showPage?: boolean;\n /** A tighter layout for popups. */\n compact?: boolean;\n}) {\n const refIndex = loadedRefIndex(pagesById);\n // Only a page the server resolved the mention to is linked, however the ref is written.\n const mentionTarget = (ref: string) => {\n const target = refIndex.resolve(ref);\n return target && note.mentions.includes(target.id) ? target : undefined;\n };\n const scopeLabel = (id: string) => {\n const scopePage = pagesById.get(id);\n return scopePage?.address ?? scopePage?.name ?? id;\n };\n const onPage = showPage ? pagesById.get(note.pageId) : undefined;\n return (\n <li\n ref={itemRef}\n data-highlighted={highlighted || undefined}\n className={`flex gap-3 rounded-lg border border-border bg-card ${compact ? 'p-2' : 'p-3'}`}\n style={highlighted ? { borderColor: 'var(--chart-blue)', boxShadow: '0 0 0 1px var(--chart-blue)' } : undefined}\n >\n {compact ? null : <AuthorMark author={note.provenance.author} />}\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n <Txt as=\"span\" variant=\"label\" tone=\"ink\">\n {note.provenance.author}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <When iso={note.updatedAt} />\n </Txt>\n {onPage ? (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n on <PageLink page={onPage} onPageClick={onPageClick} />\n </Txt>\n ) : null}\n </div>\n <p className=\"text-ui-md break-words text-foreground\">\n {parseRecordSegments(note.text).map((segment, index) => {\n if (segment.type === 'text') return <span key={index}>{segment.value}</span>;\n const target = mentionTarget(segment.value);\n return target ? (\n <button\n key={index}\n type=\"button\"\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => onPageClick(target)}\n >\n {segment.value}\n </button>\n ) : (\n <span key={index} className=\"font-medium\">\n {segment.value}\n </span>\n );\n })}\n </p>\n {note.stampScopeIds.length > 0 ? (\n <div className=\"flex flex-wrap gap-1\" aria-label=\"Stamped to\">\n {note.stampScopeIds.map(id => (\n <Badge key={id} variant=\"neutral\" size=\"xs\">\n {scopeLabel(id)}\n </Badge>\n ))}\n </div>\n ) : null}\n </div>\n </li>\n );\n}\n\n/**\n * The selected page as a page: where it sits, its body as markdown, its child\n * pages, its notes (each with the scopes it is stamped to and who wrote it),\n * the notes elsewhere that mention it, and its recent activity. Bodies are\n * agent-written, so they render through {@link MarkdownRenderer}, which escapes\n * raw HTML and drops unsafe link schemes.\n *\n * Paged lists take a `…More` slot the host fills with the next page's loader.\n */\nexport function KnowledgePageDetail({\n page,\n notes,\n pin,\n pagesById,\n onPageClick,\n highlightMentionOf,\n ancestors = [],\n mentionedBy = [],\n notesMore,\n childPages,\n activity,\n}: {\n page: KnowledgePagePayload;\n notes: KnowledgeNotePayload[];\n pin?: KnowledgePinPayload;\n /** Loaded pages, for scope names and mention links. */\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n /** Marks the notes that mention this page, e.g. after a mention line in the graph was clicked. */\n highlightMentionOf?: string;\n /** Readable ancestors, root first: a breadcrumb and the page's path. */\n ancestors?: KnowledgePagePayload[];\n /** Notes on other pages that mention this one. */\n mentionedBy?: KnowledgeNotePayload[];\n /** Rendered after the notes: the host's loader for the next page of notes. */\n notesMore?: ReactNode;\n /** The page's children, when the host can list them. */\n childPages?: ReactNode;\n activity?: KnowledgePageActivityPayload[];\n}) {\n const firstHighlighted = useRef<HTMLLIElement | null>(null);\n useEffect(() => {\n firstHighlighted.current?.scrollIntoView?.({ block: 'nearest' });\n }, [highlightMentionOf, notes]);\n let highlightRefSet = false;\n const scope = page.isScope\n ? page\n : (ancestors.find(candidate => candidate.id === page.scopeId) ?? pagesById.get(page.scopeId));\n const path = knowledgePagePath(page, ancestors);\n\n const kind = page.isScope ? (page.displayLabel ?? 'Scope') : 'Page';\n const refIndex = useMemo(\n () => knowledgePageRefIndex([...pagesById.values(), ...ancestors, page]),\n [pagesById, ancestors, page],\n );\n const bodyLinks = useMemo(() => ({ index: refIndex, onPageClick }), [refIndex, onPageClick]);\n\n return (\n <article aria-label={page.name} className=\"flex min-h-0 flex-col overflow-y-auto\">\n <header className=\"flex flex-col gap-3 border-b border-border bg-fill-subtle px-6 pt-5 pb-4\">\n {ancestors.length > 0 ? (\n <nav aria-label=\"Breadcrumb\">\n <ol className=\"flex flex-wrap items-center gap-1\">\n {ancestors.map(ancestor => (\n <li key={ancestor.id} className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n className=\"text-ui-sm rounded px-1 py-0.5 text-muted-foreground hover:bg-fill hover:text-foreground\"\n onClick={() => onPageClick(ancestor)}\n >\n {ancestor.name}\n </button>\n <ChevronRight size={12} className=\"text-muted-foreground\" aria-hidden />\n </li>\n ))}\n </ol>\n </nav>\n ) : null}\n <div className=\"flex flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant={page.isScope ? 'info' : 'neutral'} size=\"sm\">\n {kind}\n </Badge>\n {page.isScope ? null : (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n in {scope?.address ?? scope?.name ?? page.scopeId}\n </Txt>\n )}\n {pin ? (\n <Badge variant=\"warning\" size=\"sm\" icon={<Pin size={10} aria-hidden />}>\n {pin.audience.length > 0 ? `Pinned for ${pin.audience.join(', ')}` : 'Pinned'}\n </Badge>\n ) : null}\n </div>\n <Txt as=\"h2\" variant=\"title\" className=\"break-words\">\n {page.name}\n </Txt>\n {page.description ? (\n <Txt variant=\"body\" tone=\"muted\">\n {page.description}\n </Txt>\n ) : null}\n </div>\n <dl className=\"flex flex-wrap items-center gap-x-4 gap-y-1\">\n {page.isScope && page.address ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Address</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\">\n {page.address}\n </Txt>\n </dd>\n </div>\n ) : null}\n {path && !page.isScope ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Path</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\" data-testid=\"knowledge-page-path\">\n {path}\n </Txt>\n </dd>\n </div>\n ) : null}\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Version</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" data-testid=\"knowledge-page-version\">\n <Metadata>\n <Metadata.Item>Version {page.version}</Metadata.Item>\n <Metadata.Item>\n Updated <When iso={page.updatedAt} /> by {page.updatedBy.author}\n </Metadata.Item>\n </Metadata>\n </Txt>\n </dd>\n </div>\n </dl>\n </header>\n\n <div className=\"grid gap-8 p-6 xl:grid-cols-[minmax(0,1fr)_18rem]\">\n <div className=\"flex min-w-0 flex-col gap-8\">\n {page.body ? (\n <div data-testid=\"knowledge-page-body\" className=\"max-w-3xl\">\n <BodyLinks.Provider value={bodyLinks}>\n <MarkdownRenderer remarkPlugins={BODY_REMARK_PLUGINS} components={BODY_COMPONENTS}>\n {page.body}\n </MarkdownRenderer>\n </BodyLinks.Provider>\n </div>\n ) : (\n <Txt variant=\"body\" tone=\"muted\" className=\"italic\">\n This {page.isScope ? 'scope' : 'page'} has no body yet.\n </Txt>\n )}\n\n <Section label=\"Notes\" count={notesMore ? undefined : notes.length}>\n {notes.length === 0 ? (\n <Txt variant=\"body\" tone=\"muted\">\n No notes on this page.\n </Txt>\n ) : (\n <ul className=\"flex flex-col gap-2\">\n {notes.map(note => {\n const highlighted = !!highlightMentionOf && note.mentions.includes(highlightMentionOf);\n const takeRef = highlighted && !highlightRefSet;\n if (takeRef) highlightRefSet = true;\n return (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n highlighted={highlighted}\n itemRef={\n takeRef\n ? element => {\n firstHighlighted.current = element;\n }\n : undefined\n }\n />\n );\n })}\n </ul>\n )}\n {notesMore}\n </Section>\n </div>\n\n <aside className=\"flex min-w-0 flex-col gap-8\">\n {childPages ? <Section label=\"Pages\">{childPages}</Section> : null}\n\n {mentionedBy.length > 0 ? (\n <Section label=\"Mentioned in\" count={mentionedBy.length}>\n <ul className=\"flex flex-col gap-2\">\n {mentionedBy.map(note => (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n showPage\n compact\n />\n ))}\n </ul>\n </Section>\n ) : null}\n\n {activity && activity.length > 0 ? (\n <Section label=\"Activity\">\n <ol className=\"relative flex flex-col gap-3 border-l border-border pl-4\">\n {activity.map(event => (\n <li key={event.id} className=\"relative flex flex-col\">\n <span\n aria-hidden\n className=\"absolute top-1.5 -left-5 size-2 rounded-full border border-border bg-card\"\n />\n <Txt as=\"span\" variant=\"body-sm\" tone=\"ink\">\n {ACTIVITY_LABELS[event.action] ?? event.action}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <Metadata>\n <Metadata.Item>{event.provenance.author}</Metadata.Item>\n <Metadata.Item>\n <When iso={event.createdAt} />\n </Metadata.Item>\n </Metadata>\n </Txt>\n </li>\n ))}\n </ol>\n </Section>\n ) : null}\n </aside>\n </div>\n </article>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { t as Txt } from "../../../Txt-BM6TVV_c.js";
|
|
2
|
-
import { t as Badge } from "../../../Badge-aVu5iGAF.js";
|
|
3
|
-
import { t as MarkdownRenderer } from "../../../MarkdownRenderer-CI30RqdB.js";
|
|
4
|
-
import { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from "../lib/remarkKnowledgeLinks.es.js";
|
|
5
1
|
import { knowledgePageRefIndex } from "../lib/pageRefs.es.js";
|
|
6
2
|
import { parseRecordSegments } from "../lib/recordText.es.js";
|
|
3
|
+
import { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from "../lib/remarkKnowledgeLinks.es.js";
|
|
4
|
+
import { t as Badge } from "../../../Badge-C7NnqmMx.js";
|
|
5
|
+
import { t as MarkdownRenderer } from "../../../MarkdownRenderer-CY8LGt-l.js";
|
|
6
|
+
import { t as Metadata } from "../../../Metadata-DlVgmRTA.js";
|
|
7
|
+
import { t as Txt } from "../../../Txt-5efBsb2p.js";
|
|
7
8
|
import { createContext, useContext, useEffect, useMemo, useRef } from "react";
|
|
8
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
10
|
import { ChevronRight, Pin } from "lucide-react";
|
|
@@ -365,19 +366,17 @@ function KnowledgePageDetail({ page, notes, pin, pagesById, onPageClick, highlig
|
|
|
365
366
|
children: [/* @__PURE__ */ jsx("dt", {
|
|
366
367
|
className: "sr-only",
|
|
367
368
|
children: "Version"
|
|
368
|
-
}), /* @__PURE__ */ jsx("dd", { children: /* @__PURE__ */
|
|
369
|
+
}), /* @__PURE__ */ jsx("dd", { children: /* @__PURE__ */ jsx(Txt, {
|
|
369
370
|
as: "span",
|
|
370
371
|
variant: "caption",
|
|
371
372
|
tone: "muted",
|
|
372
373
|
"data-testid": "knowledge-page-version",
|
|
373
|
-
children: [
|
|
374
|
-
"
|
|
375
|
-
page.version,
|
|
376
|
-
" · updated ",
|
|
374
|
+
children: /* @__PURE__ */ jsxs(Metadata, { children: [/* @__PURE__ */ jsxs(Metadata.Item, { children: ["Version ", page.version] }), /* @__PURE__ */ jsxs(Metadata.Item, { children: [
|
|
375
|
+
"Updated ",
|
|
377
376
|
/* @__PURE__ */ jsx(When, { iso: page.updatedAt }),
|
|
378
377
|
" by ",
|
|
379
378
|
page.updatedBy.author
|
|
380
|
-
]
|
|
379
|
+
] })] })
|
|
381
380
|
}) })]
|
|
382
381
|
})
|
|
383
382
|
]
|
|
@@ -470,15 +469,11 @@ function KnowledgePageDetail({ page, notes, pin, pagesById, onPageClick, highlig
|
|
|
470
469
|
tone: "ink",
|
|
471
470
|
children: ACTIVITY_LABELS[event.action] ?? event.action
|
|
472
471
|
}),
|
|
473
|
-
/* @__PURE__ */
|
|
472
|
+
/* @__PURE__ */ jsx(Txt, {
|
|
474
473
|
as: "span",
|
|
475
474
|
variant: "caption",
|
|
476
475
|
tone: "muted",
|
|
477
|
-
children: [
|
|
478
|
-
event.provenance.author,
|
|
479
|
-
" · ",
|
|
480
|
-
/* @__PURE__ */ jsx(When, { iso: event.createdAt })
|
|
481
|
-
]
|
|
476
|
+
children: /* @__PURE__ */ jsxs(Metadata, { children: [/* @__PURE__ */ jsx(Metadata.Item, { children: event.provenance.author }), /* @__PURE__ */ jsx(Metadata.Item, { children: /* @__PURE__ */ jsx(When, { iso: event.createdAt }) })] })
|
|
482
477
|
})
|
|
483
478
|
]
|
|
484
479
|
}, event.id))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnowledgePageDetail.es.js","names":[],"sources":["../../../../src/domains/knowledge/components/KnowledgePageDetail.tsx"],"sourcesContent":["import { ChevronRight, Pin } from 'lucide-react';\nimport { createContext, useContext, useEffect, useMemo, useRef } from 'react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport type { Components, ExtraProps } from 'react-markdown';\n\nimport { knowledgePageRefIndex } from '../lib/pageRefs';\nimport type { KnowledgePageRefIndex } from '../lib/pageRefs';\nimport { parseRecordSegments } from '../lib/recordText';\nimport { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from '../lib/remarkKnowledgeLinks';\nimport type {\n KnowledgeActivityAction,\n KnowledgePageActivityPayload,\n KnowledgeNotePayload,\n KnowledgePagePayload,\n KnowledgePinPayload,\n} from '../pageTypes';\n\nimport { Badge } from '@/ds/components/Badge';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Txt } from '@/ds/components/Txt';\n\nconst ACTIVITY_LABELS: Record<KnowledgeActivityAction, string> = {\n 'scope-created': 'Scope created',\n 'page-created': 'Page created',\n 'page-updated': 'Page edited',\n 'page-moved': 'Page moved',\n 'page-merged': 'Page merged',\n 'page-deleted': 'Page deleted',\n 'note-added': 'Note added',\n 'note-restamped': 'Note restamped',\n 'note-removed': 'Note removed',\n 'note-restored': 'Note restored',\n 'pin-added': 'Pinned',\n 'pin-removed': 'Unpinned',\n};\n\nfunction formatWhen(iso: string): string {\n const date = new Date(iso);\n return Number.isNaN(date.getTime())\n ? iso\n : date.toLocaleString(undefined, { dateStyle: 'medium', timeStyle: 'short' });\n}\n\nconst RELATIVE_STEPS: Array<[Intl.RelativeTimeFormatUnit, number]> = [\n ['second', 60],\n ['minute', 60],\n ['hour', 24],\n ['day', 7],\n ['week', 4.35],\n ['month', 12],\n ['year', Infinity],\n];\n\n/** \"3 minutes ago\", with the exact time left to a tooltip. */\nfunction formatAgo(iso: string, now = Date.now()): string {\n const time = new Date(iso).getTime();\n if (Number.isNaN(time)) return iso;\n let value = (time - now) / 1000;\n const format = new Intl.RelativeTimeFormat(undefined, { numeric: 'auto' });\n for (const [unit, size] of RELATIVE_STEPS) {\n if (Math.abs(value) < size) return format.format(Math.round(value), unit);\n value /= size;\n }\n return formatWhen(iso);\n}\n\nfunction When({ iso }: { iso: string }) {\n return (\n <time dateTime={iso} title={formatWhen(iso)}>\n {formatAgo(iso)}\n </time>\n );\n}\n\n/** A small round mark with the author's initial, tinted per author so a page's writers tell apart. */\nfunction AuthorMark({ author }: { author: string }) {\n const name = author.includes(':') ? author.slice(author.indexOf(':') + 1) : author;\n let hash = 0;\n for (const char of author) hash = (hash * 31 + char.charCodeAt(0)) | 0;\n const hues = ['--chart-blue', '--chart-purple', '--chart-green', '--chart-orange', '--chart-pink'];\n const hue = hues[Math.abs(hash) % hues.length];\n return (\n <span\n aria-hidden\n className=\"flex size-6 shrink-0 items-center justify-center rounded-full border border-border\"\n style={{ background: `color-mix(in oklab, var(${hue}) 28%, var(--card))` }}\n >\n <Txt as=\"span\" variant=\"meta\" tone=\"ink\">\n {(name.trim()[0] ?? '?').toUpperCase()}\n </Txt>\n </span>\n );\n}\n\n/**\n * The page's address: its home scope, then the keys from that scope down to it\n * (`org:acme#policies/refund`). Null when a page on the way has no key.\n */\nfunction knowledgePagePath(page: KnowledgePagePayload, ancestors: KnowledgePagePayload[]): string | null {\n if (page.isScope) return page.address ?? null;\n const scope = ancestors.find(candidate => candidate.id === page.scopeId);\n if (!scope?.address) return null;\n const below = ancestors.slice(ancestors.indexOf(scope) + 1).filter(candidate => !candidate.isScope);\n const keys = [...below, page].map(candidate => candidate.key);\n if (keys.some(key => !key)) return null;\n return `${scope.address}#${keys.join('/')}`;\n}\n\nconst BodyLinks = createContext<{\n index: KnowledgePageRefIndex;\n onPageClick: (page: KnowledgePagePayload) => void;\n} | null>(null);\n\n/**\n * A `[[ref]]` from a page body: the page's name as a link when a loaded page answers to the ref, the ref\n * itself in a quiet style when none does. Every other `<span>` the markdown makes passes through.\n */\nfunction BodySpan({ node, ...props }: ComponentProps<'span'> & ExtraProps) {\n const links = useContext(BodyLinks);\n const ref = node?.properties[KNOWLEDGE_REF_PROPERTY];\n if (typeof ref !== 'string' || !links) return <span {...props} />;\n const target = links.index.resolve(ref);\n return target ? (\n <button\n type=\"button\"\n data-testid=\"knowledge-body-link\"\n title={ref}\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => links.onPageClick(target)}\n >\n {target.name}\n </button>\n ) : (\n <span\n data-testid=\"knowledge-body-link-unresolved\"\n title=\"No loaded page has this address\"\n className=\"rounded border border-dashed border-border px-1 text-muted-foreground\"\n >\n {ref}\n </span>\n );\n}\n\nconst BODY_REMARK_PLUGINS = [remarkKnowledgeLinks];\nconst BODY_COMPONENTS: Components = { span: BodySpan };\n\nfunction Section({ label, count, children }: { label: string; count?: number; children: ReactNode }) {\n return (\n <section aria-label={label} className=\"flex flex-col gap-3\">\n <div className=\"flex items-center gap-2 border-b border-border pb-2\">\n <Txt as=\"h3\" variant=\"eyebrow\" tone=\"muted\" className=\"uppercase\">\n {label}\n </Txt>\n {count !== undefined ? (\n <Badge variant=\"neutral\" size=\"xs\">\n {count}\n </Badge>\n ) : null}\n </div>\n {children}\n </section>\n );\n}\n\nfunction PageLink({\n page,\n onPageClick,\n}: {\n page: KnowledgePagePayload;\n onPageClick: (page: KnowledgePagePayload) => void;\n}) {\n return (\n <button\n type=\"button\"\n className=\"text-left font-medium text-info-indicator hover:underline\"\n onClick={() => onPageClick(page)}\n >\n {page.name}\n </button>\n );\n}\n\nconst refIndexes = new WeakMap<ReadonlyMap<string, KnowledgePagePayload>, KnowledgePageRefIndex>();\n\n/** One ref index per loaded-pages map, shared by every note drawn from it. */\nfunction loadedRefIndex(pagesById: ReadonlyMap<string, KnowledgePagePayload>): KnowledgePageRefIndex {\n let index = refIndexes.get(pagesById);\n if (!index) refIndexes.set(pagesById, (index = knowledgePageRefIndex(pagesById.values())));\n return index;\n}\n\n/** One note: who wrote it and when, its text with `[[mentions]]` linked when the page is known, and the scopes it is stamped to. */\nexport function KnowledgeNoteItem({\n note,\n pagesById,\n onPageClick,\n highlighted,\n itemRef,\n showPage,\n compact,\n}: {\n note: KnowledgeNotePayload;\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n highlighted?: boolean;\n itemRef?: (element: HTMLLIElement | null) => void;\n /** Name the page the note sits on, for notes listed away from it. */\n showPage?: boolean;\n /** A tighter layout for popups. */\n compact?: boolean;\n}) {\n const refIndex = loadedRefIndex(pagesById);\n // Only a page the server resolved the mention to is linked, however the ref is written.\n const mentionTarget = (ref: string) => {\n const target = refIndex.resolve(ref);\n return target && note.mentions.includes(target.id) ? target : undefined;\n };\n const scopeLabel = (id: string) => {\n const scopePage = pagesById.get(id);\n return scopePage?.address ?? scopePage?.name ?? id;\n };\n const onPage = showPage ? pagesById.get(note.pageId) : undefined;\n return (\n <li\n ref={itemRef}\n data-highlighted={highlighted || undefined}\n className={`flex gap-3 rounded-lg border border-border bg-card ${compact ? 'p-2' : 'p-3'}`}\n style={highlighted ? { borderColor: 'var(--chart-blue)', boxShadow: '0 0 0 1px var(--chart-blue)' } : undefined}\n >\n {compact ? null : <AuthorMark author={note.provenance.author} />}\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n <Txt as=\"span\" variant=\"label\" tone=\"ink\">\n {note.provenance.author}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <When iso={note.updatedAt} />\n </Txt>\n {onPage ? (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n on <PageLink page={onPage} onPageClick={onPageClick} />\n </Txt>\n ) : null}\n </div>\n <p className=\"text-ui-md break-words text-foreground\">\n {parseRecordSegments(note.text).map((segment, index) => {\n if (segment.type === 'text') return <span key={index}>{segment.value}</span>;\n const target = mentionTarget(segment.value);\n return target ? (\n <button\n key={index}\n type=\"button\"\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => onPageClick(target)}\n >\n {segment.value}\n </button>\n ) : (\n <span key={index} className=\"font-medium\">\n {segment.value}\n </span>\n );\n })}\n </p>\n {note.stampScopeIds.length > 0 ? (\n <div className=\"flex flex-wrap gap-1\" aria-label=\"Stamped to\">\n {note.stampScopeIds.map(id => (\n <Badge key={id} variant=\"neutral\" size=\"xs\">\n {scopeLabel(id)}\n </Badge>\n ))}\n </div>\n ) : null}\n </div>\n </li>\n );\n}\n\n/**\n * The selected page as a page: where it sits, its body as markdown, its child\n * pages, its notes (each with the scopes it is stamped to and who wrote it),\n * the notes elsewhere that mention it, and its recent activity. Bodies are\n * agent-written, so they render through {@link MarkdownRenderer}, which escapes\n * raw HTML and drops unsafe link schemes.\n *\n * Paged lists take a `…More` slot the host fills with the next page's loader.\n */\nexport function KnowledgePageDetail({\n page,\n notes,\n pin,\n pagesById,\n onPageClick,\n highlightMentionOf,\n ancestors = [],\n mentionedBy = [],\n notesMore,\n childPages,\n activity,\n}: {\n page: KnowledgePagePayload;\n notes: KnowledgeNotePayload[];\n pin?: KnowledgePinPayload;\n /** Loaded pages, for scope names and mention links. */\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n /** Marks the notes that mention this page, e.g. after a mention line in the graph was clicked. */\n highlightMentionOf?: string;\n /** Readable ancestors, root first: a breadcrumb and the page's path. */\n ancestors?: KnowledgePagePayload[];\n /** Notes on other pages that mention this one. */\n mentionedBy?: KnowledgeNotePayload[];\n /** Rendered after the notes: the host's loader for the next page of notes. */\n notesMore?: ReactNode;\n /** The page's children, when the host can list them. */\n childPages?: ReactNode;\n activity?: KnowledgePageActivityPayload[];\n}) {\n const firstHighlighted = useRef<HTMLLIElement | null>(null);\n useEffect(() => {\n firstHighlighted.current?.scrollIntoView?.({ block: 'nearest' });\n }, [highlightMentionOf, notes]);\n let highlightRefSet = false;\n const scope = page.isScope\n ? page\n : (ancestors.find(candidate => candidate.id === page.scopeId) ?? pagesById.get(page.scopeId));\n const path = knowledgePagePath(page, ancestors);\n\n const kind = page.isScope ? (page.displayLabel ?? 'Scope') : 'Page';\n const refIndex = useMemo(\n () => knowledgePageRefIndex([...pagesById.values(), ...ancestors, page]),\n [pagesById, ancestors, page],\n );\n const bodyLinks = useMemo(() => ({ index: refIndex, onPageClick }), [refIndex, onPageClick]);\n\n return (\n <article aria-label={page.name} className=\"flex min-h-0 flex-col overflow-y-auto\">\n <header className=\"flex flex-col gap-3 border-b border-border bg-fill-subtle px-6 pt-5 pb-4\">\n {ancestors.length > 0 ? (\n <nav aria-label=\"Breadcrumb\">\n <ol className=\"flex flex-wrap items-center gap-1\">\n {ancestors.map(ancestor => (\n <li key={ancestor.id} className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n className=\"text-ui-sm rounded px-1 py-0.5 text-muted-foreground hover:bg-fill hover:text-foreground\"\n onClick={() => onPageClick(ancestor)}\n >\n {ancestor.name}\n </button>\n <ChevronRight size={12} className=\"text-muted-foreground\" aria-hidden />\n </li>\n ))}\n </ol>\n </nav>\n ) : null}\n <div className=\"flex flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant={page.isScope ? 'info' : 'neutral'} size=\"sm\">\n {kind}\n </Badge>\n {page.isScope ? null : (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n in {scope?.address ?? scope?.name ?? page.scopeId}\n </Txt>\n )}\n {pin ? (\n <Badge variant=\"warning\" size=\"sm\" icon={<Pin size={10} aria-hidden />}>\n {pin.audience.length > 0 ? `Pinned for ${pin.audience.join(', ')}` : 'Pinned'}\n </Badge>\n ) : null}\n </div>\n <Txt as=\"h2\" variant=\"title\" className=\"break-words\">\n {page.name}\n </Txt>\n {page.description ? (\n <Txt variant=\"body\" tone=\"muted\">\n {page.description}\n </Txt>\n ) : null}\n </div>\n <dl className=\"flex flex-wrap items-center gap-x-4 gap-y-1\">\n {page.isScope && page.address ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Address</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\">\n {page.address}\n </Txt>\n </dd>\n </div>\n ) : null}\n {path && !page.isScope ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Path</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\" data-testid=\"knowledge-page-path\">\n {path}\n </Txt>\n </dd>\n </div>\n ) : null}\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Version</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" data-testid=\"knowledge-page-version\">\n Version {page.version} · updated <When iso={page.updatedAt} /> by {page.updatedBy.author}\n </Txt>\n </dd>\n </div>\n </dl>\n </header>\n\n <div className=\"grid gap-8 p-6 xl:grid-cols-[minmax(0,1fr)_18rem]\">\n <div className=\"flex min-w-0 flex-col gap-8\">\n {page.body ? (\n <div data-testid=\"knowledge-page-body\" className=\"max-w-3xl\">\n <BodyLinks.Provider value={bodyLinks}>\n <MarkdownRenderer remarkPlugins={BODY_REMARK_PLUGINS} components={BODY_COMPONENTS}>\n {page.body}\n </MarkdownRenderer>\n </BodyLinks.Provider>\n </div>\n ) : (\n <Txt variant=\"body\" tone=\"muted\" className=\"italic\">\n This {page.isScope ? 'scope' : 'page'} has no body yet.\n </Txt>\n )}\n\n <Section label=\"Notes\" count={notesMore ? undefined : notes.length}>\n {notes.length === 0 ? (\n <Txt variant=\"body\" tone=\"muted\">\n No notes on this page.\n </Txt>\n ) : (\n <ul className=\"flex flex-col gap-2\">\n {notes.map(note => {\n const highlighted = !!highlightMentionOf && note.mentions.includes(highlightMentionOf);\n const takeRef = highlighted && !highlightRefSet;\n if (takeRef) highlightRefSet = true;\n return (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n highlighted={highlighted}\n itemRef={\n takeRef\n ? element => {\n firstHighlighted.current = element;\n }\n : undefined\n }\n />\n );\n })}\n </ul>\n )}\n {notesMore}\n </Section>\n </div>\n\n <aside className=\"flex min-w-0 flex-col gap-8\">\n {childPages ? <Section label=\"Pages\">{childPages}</Section> : null}\n\n {mentionedBy.length > 0 ? (\n <Section label=\"Mentioned in\" count={mentionedBy.length}>\n <ul className=\"flex flex-col gap-2\">\n {mentionedBy.map(note => (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n showPage\n compact\n />\n ))}\n </ul>\n </Section>\n ) : null}\n\n {activity && activity.length > 0 ? (\n <Section label=\"Activity\">\n <ol className=\"relative flex flex-col gap-3 border-l border-border pl-4\">\n {activity.map(event => (\n <li key={event.id} className=\"relative flex flex-col\">\n <span\n aria-hidden\n className=\"absolute top-1.5 -left-5 size-2 rounded-full border border-border bg-card\"\n />\n <Txt as=\"span\" variant=\"body-sm\" tone=\"ink\">\n {ACTIVITY_LABELS[event.action] ?? event.action}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n {event.provenance.author} · <When iso={event.createdAt} />\n </Txt>\n </li>\n ))}\n </ol>\n </Section>\n ) : null}\n </aside>\n </div>\n </article>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KnowledgePageDetail.es.js","names":[],"sources":["../../../../src/domains/knowledge/components/KnowledgePageDetail.tsx"],"sourcesContent":["import { ChevronRight, Pin } from 'lucide-react';\nimport { createContext, useContext, useEffect, useMemo, useRef } from 'react';\nimport type { ComponentProps, ReactNode } from 'react';\nimport type { Components, ExtraProps } from 'react-markdown';\n\nimport { knowledgePageRefIndex } from '../lib/pageRefs';\nimport type { KnowledgePageRefIndex } from '../lib/pageRefs';\nimport { parseRecordSegments } from '../lib/recordText';\nimport { KNOWLEDGE_REF_PROPERTY, remarkKnowledgeLinks } from '../lib/remarkKnowledgeLinks';\nimport type {\n KnowledgeActivityAction,\n KnowledgePageActivityPayload,\n KnowledgeNotePayload,\n KnowledgePagePayload,\n KnowledgePinPayload,\n} from '../pageTypes';\n\nimport { Badge } from '@/ds/components/Badge';\nimport { MarkdownRenderer } from '@/ds/components/MarkdownRenderer';\nimport { Metadata } from '@/ds/components/Metadata';\nimport { Txt } from '@/ds/components/Txt';\n\nconst ACTIVITY_LABELS: Record<KnowledgeActivityAction, string> = {\n 'scope-created': 'Scope created',\n 'page-created': 'Page created',\n 'page-updated': 'Page edited',\n 'page-moved': 'Page moved',\n 'page-merged': 'Page merged',\n 'page-deleted': 'Page deleted',\n 'note-added': 'Note added',\n 'note-restamped': 'Note restamped',\n 'note-removed': 'Note removed',\n 'note-restored': 'Note restored',\n 'pin-added': 'Pinned',\n 'pin-removed': 'Unpinned',\n};\n\nfunction formatWhen(iso: string): string {\n const date = new Date(iso);\n return Number.isNaN(date.getTime())\n ? iso\n : date.toLocaleString(undefined, { dateStyle: 'medium', timeStyle: 'short' });\n}\n\nconst RELATIVE_STEPS: Array<[Intl.RelativeTimeFormatUnit, number]> = [\n ['second', 60],\n ['minute', 60],\n ['hour', 24],\n ['day', 7],\n ['week', 4.35],\n ['month', 12],\n ['year', Infinity],\n];\n\n/** \"3 minutes ago\", with the exact time left to a tooltip. */\nfunction formatAgo(iso: string, now = Date.now()): string {\n const time = new Date(iso).getTime();\n if (Number.isNaN(time)) return iso;\n let value = (time - now) / 1000;\n const format = new Intl.RelativeTimeFormat(undefined, { numeric: 'auto' });\n for (const [unit, size] of RELATIVE_STEPS) {\n if (Math.abs(value) < size) return format.format(Math.round(value), unit);\n value /= size;\n }\n return formatWhen(iso);\n}\n\nfunction When({ iso }: { iso: string }) {\n return (\n <time dateTime={iso} title={formatWhen(iso)}>\n {formatAgo(iso)}\n </time>\n );\n}\n\n/** A small round mark with the author's initial, tinted per author so a page's writers tell apart. */\nfunction AuthorMark({ author }: { author: string }) {\n const name = author.includes(':') ? author.slice(author.indexOf(':') + 1) : author;\n let hash = 0;\n for (const char of author) hash = (hash * 31 + char.charCodeAt(0)) | 0;\n const hues = ['--chart-blue', '--chart-purple', '--chart-green', '--chart-orange', '--chart-pink'];\n const hue = hues[Math.abs(hash) % hues.length];\n return (\n <span\n aria-hidden\n className=\"flex size-6 shrink-0 items-center justify-center rounded-full border border-border\"\n style={{ background: `color-mix(in oklab, var(${hue}) 28%, var(--card))` }}\n >\n <Txt as=\"span\" variant=\"meta\" tone=\"ink\">\n {(name.trim()[0] ?? '?').toUpperCase()}\n </Txt>\n </span>\n );\n}\n\n/**\n * The page's address: its home scope, then the keys from that scope down to it\n * (`org:acme#policies/refund`). Null when a page on the way has no key.\n */\nfunction knowledgePagePath(page: KnowledgePagePayload, ancestors: KnowledgePagePayload[]): string | null {\n if (page.isScope) return page.address ?? null;\n const scope = ancestors.find(candidate => candidate.id === page.scopeId);\n if (!scope?.address) return null;\n const below = ancestors.slice(ancestors.indexOf(scope) + 1).filter(candidate => !candidate.isScope);\n const keys = [...below, page].map(candidate => candidate.key);\n if (keys.some(key => !key)) return null;\n return `${scope.address}#${keys.join('/')}`;\n}\n\nconst BodyLinks = createContext<{\n index: KnowledgePageRefIndex;\n onPageClick: (page: KnowledgePagePayload) => void;\n} | null>(null);\n\n/**\n * A `[[ref]]` from a page body: the page's name as a link when a loaded page answers to the ref, the ref\n * itself in a quiet style when none does. Every other `<span>` the markdown makes passes through.\n */\nfunction BodySpan({ node, ...props }: ComponentProps<'span'> & ExtraProps) {\n const links = useContext(BodyLinks);\n const ref = node?.properties[KNOWLEDGE_REF_PROPERTY];\n if (typeof ref !== 'string' || !links) return <span {...props} />;\n const target = links.index.resolve(ref);\n return target ? (\n <button\n type=\"button\"\n data-testid=\"knowledge-body-link\"\n title={ref}\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => links.onPageClick(target)}\n >\n {target.name}\n </button>\n ) : (\n <span\n data-testid=\"knowledge-body-link-unresolved\"\n title=\"No loaded page has this address\"\n className=\"rounded border border-dashed border-border px-1 text-muted-foreground\"\n >\n {ref}\n </span>\n );\n}\n\nconst BODY_REMARK_PLUGINS = [remarkKnowledgeLinks];\nconst BODY_COMPONENTS: Components = { span: BodySpan };\n\nfunction Section({ label, count, children }: { label: string; count?: number; children: ReactNode }) {\n return (\n <section aria-label={label} className=\"flex flex-col gap-3\">\n <div className=\"flex items-center gap-2 border-b border-border pb-2\">\n <Txt as=\"h3\" variant=\"eyebrow\" tone=\"muted\" className=\"uppercase\">\n {label}\n </Txt>\n {count !== undefined ? (\n <Badge variant=\"neutral\" size=\"xs\">\n {count}\n </Badge>\n ) : null}\n </div>\n {children}\n </section>\n );\n}\n\nfunction PageLink({\n page,\n onPageClick,\n}: {\n page: KnowledgePagePayload;\n onPageClick: (page: KnowledgePagePayload) => void;\n}) {\n return (\n <button\n type=\"button\"\n className=\"text-left font-medium text-info-indicator hover:underline\"\n onClick={() => onPageClick(page)}\n >\n {page.name}\n </button>\n );\n}\n\nconst refIndexes = new WeakMap<ReadonlyMap<string, KnowledgePagePayload>, KnowledgePageRefIndex>();\n\n/** One ref index per loaded-pages map, shared by every note drawn from it. */\nfunction loadedRefIndex(pagesById: ReadonlyMap<string, KnowledgePagePayload>): KnowledgePageRefIndex {\n let index = refIndexes.get(pagesById);\n if (!index) refIndexes.set(pagesById, (index = knowledgePageRefIndex(pagesById.values())));\n return index;\n}\n\n/** One note: who wrote it and when, its text with `[[mentions]]` linked when the page is known, and the scopes it is stamped to. */\nexport function KnowledgeNoteItem({\n note,\n pagesById,\n onPageClick,\n highlighted,\n itemRef,\n showPage,\n compact,\n}: {\n note: KnowledgeNotePayload;\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n highlighted?: boolean;\n itemRef?: (element: HTMLLIElement | null) => void;\n /** Name the page the note sits on, for notes listed away from it. */\n showPage?: boolean;\n /** A tighter layout for popups. */\n compact?: boolean;\n}) {\n const refIndex = loadedRefIndex(pagesById);\n // Only a page the server resolved the mention to is linked, however the ref is written.\n const mentionTarget = (ref: string) => {\n const target = refIndex.resolve(ref);\n return target && note.mentions.includes(target.id) ? target : undefined;\n };\n const scopeLabel = (id: string) => {\n const scopePage = pagesById.get(id);\n return scopePage?.address ?? scopePage?.name ?? id;\n };\n const onPage = showPage ? pagesById.get(note.pageId) : undefined;\n return (\n <li\n ref={itemRef}\n data-highlighted={highlighted || undefined}\n className={`flex gap-3 rounded-lg border border-border bg-card ${compact ? 'p-2' : 'p-3'}`}\n style={highlighted ? { borderColor: 'var(--chart-blue)', boxShadow: '0 0 0 1px var(--chart-blue)' } : undefined}\n >\n {compact ? null : <AuthorMark author={note.provenance.author} />}\n <div className=\"flex min-w-0 flex-1 flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-baseline gap-x-2 gap-y-0.5\">\n <Txt as=\"span\" variant=\"label\" tone=\"ink\">\n {note.provenance.author}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <When iso={note.updatedAt} />\n </Txt>\n {onPage ? (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n on <PageLink page={onPage} onPageClick={onPageClick} />\n </Txt>\n ) : null}\n </div>\n <p className=\"text-ui-md break-words text-foreground\">\n {parseRecordSegments(note.text).map((segment, index) => {\n if (segment.type === 'text') return <span key={index}>{segment.value}</span>;\n const target = mentionTarget(segment.value);\n return target ? (\n <button\n key={index}\n type=\"button\"\n className=\"rounded bg-badge-blue-subtle px-1 font-medium text-badge-blue-foreground hover:underline\"\n onClick={() => onPageClick(target)}\n >\n {segment.value}\n </button>\n ) : (\n <span key={index} className=\"font-medium\">\n {segment.value}\n </span>\n );\n })}\n </p>\n {note.stampScopeIds.length > 0 ? (\n <div className=\"flex flex-wrap gap-1\" aria-label=\"Stamped to\">\n {note.stampScopeIds.map(id => (\n <Badge key={id} variant=\"neutral\" size=\"xs\">\n {scopeLabel(id)}\n </Badge>\n ))}\n </div>\n ) : null}\n </div>\n </li>\n );\n}\n\n/**\n * The selected page as a page: where it sits, its body as markdown, its child\n * pages, its notes (each with the scopes it is stamped to and who wrote it),\n * the notes elsewhere that mention it, and its recent activity. Bodies are\n * agent-written, so they render through {@link MarkdownRenderer}, which escapes\n * raw HTML and drops unsafe link schemes.\n *\n * Paged lists take a `…More` slot the host fills with the next page's loader.\n */\nexport function KnowledgePageDetail({\n page,\n notes,\n pin,\n pagesById,\n onPageClick,\n highlightMentionOf,\n ancestors = [],\n mentionedBy = [],\n notesMore,\n childPages,\n activity,\n}: {\n page: KnowledgePagePayload;\n notes: KnowledgeNotePayload[];\n pin?: KnowledgePinPayload;\n /** Loaded pages, for scope names and mention links. */\n pagesById: ReadonlyMap<string, KnowledgePagePayload>;\n onPageClick: (page: KnowledgePagePayload) => void;\n /** Marks the notes that mention this page, e.g. after a mention line in the graph was clicked. */\n highlightMentionOf?: string;\n /** Readable ancestors, root first: a breadcrumb and the page's path. */\n ancestors?: KnowledgePagePayload[];\n /** Notes on other pages that mention this one. */\n mentionedBy?: KnowledgeNotePayload[];\n /** Rendered after the notes: the host's loader for the next page of notes. */\n notesMore?: ReactNode;\n /** The page's children, when the host can list them. */\n childPages?: ReactNode;\n activity?: KnowledgePageActivityPayload[];\n}) {\n const firstHighlighted = useRef<HTMLLIElement | null>(null);\n useEffect(() => {\n firstHighlighted.current?.scrollIntoView?.({ block: 'nearest' });\n }, [highlightMentionOf, notes]);\n let highlightRefSet = false;\n const scope = page.isScope\n ? page\n : (ancestors.find(candidate => candidate.id === page.scopeId) ?? pagesById.get(page.scopeId));\n const path = knowledgePagePath(page, ancestors);\n\n const kind = page.isScope ? (page.displayLabel ?? 'Scope') : 'Page';\n const refIndex = useMemo(\n () => knowledgePageRefIndex([...pagesById.values(), ...ancestors, page]),\n [pagesById, ancestors, page],\n );\n const bodyLinks = useMemo(() => ({ index: refIndex, onPageClick }), [refIndex, onPageClick]);\n\n return (\n <article aria-label={page.name} className=\"flex min-h-0 flex-col overflow-y-auto\">\n <header className=\"flex flex-col gap-3 border-b border-border bg-fill-subtle px-6 pt-5 pb-4\">\n {ancestors.length > 0 ? (\n <nav aria-label=\"Breadcrumb\">\n <ol className=\"flex flex-wrap items-center gap-1\">\n {ancestors.map(ancestor => (\n <li key={ancestor.id} className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n className=\"text-ui-sm rounded px-1 py-0.5 text-muted-foreground hover:bg-fill hover:text-foreground\"\n onClick={() => onPageClick(ancestor)}\n >\n {ancestor.name}\n </button>\n <ChevronRight size={12} className=\"text-muted-foreground\" aria-hidden />\n </li>\n ))}\n </ol>\n </nav>\n ) : null}\n <div className=\"flex flex-col gap-1.5\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant={page.isScope ? 'info' : 'neutral'} size=\"sm\">\n {kind}\n </Badge>\n {page.isScope ? null : (\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n in {scope?.address ?? scope?.name ?? page.scopeId}\n </Txt>\n )}\n {pin ? (\n <Badge variant=\"warning\" size=\"sm\" icon={<Pin size={10} aria-hidden />}>\n {pin.audience.length > 0 ? `Pinned for ${pin.audience.join(', ')}` : 'Pinned'}\n </Badge>\n ) : null}\n </div>\n <Txt as=\"h2\" variant=\"title\" className=\"break-words\">\n {page.name}\n </Txt>\n {page.description ? (\n <Txt variant=\"body\" tone=\"muted\">\n {page.description}\n </Txt>\n ) : null}\n </div>\n <dl className=\"flex flex-wrap items-center gap-x-4 gap-y-1\">\n {page.isScope && page.address ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Address</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\">\n {page.address}\n </Txt>\n </dd>\n </div>\n ) : null}\n {path && !page.isScope ? (\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Path</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" font=\"mono\" data-testid=\"knowledge-page-path\">\n {path}\n </Txt>\n </dd>\n </div>\n ) : null}\n <div className=\"flex items-center gap-1.5\">\n <dt className=\"sr-only\">Version</dt>\n <dd>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\" data-testid=\"knowledge-page-version\">\n <Metadata>\n <Metadata.Item>Version {page.version}</Metadata.Item>\n <Metadata.Item>\n Updated <When iso={page.updatedAt} /> by {page.updatedBy.author}\n </Metadata.Item>\n </Metadata>\n </Txt>\n </dd>\n </div>\n </dl>\n </header>\n\n <div className=\"grid gap-8 p-6 xl:grid-cols-[minmax(0,1fr)_18rem]\">\n <div className=\"flex min-w-0 flex-col gap-8\">\n {page.body ? (\n <div data-testid=\"knowledge-page-body\" className=\"max-w-3xl\">\n <BodyLinks.Provider value={bodyLinks}>\n <MarkdownRenderer remarkPlugins={BODY_REMARK_PLUGINS} components={BODY_COMPONENTS}>\n {page.body}\n </MarkdownRenderer>\n </BodyLinks.Provider>\n </div>\n ) : (\n <Txt variant=\"body\" tone=\"muted\" className=\"italic\">\n This {page.isScope ? 'scope' : 'page'} has no body yet.\n </Txt>\n )}\n\n <Section label=\"Notes\" count={notesMore ? undefined : notes.length}>\n {notes.length === 0 ? (\n <Txt variant=\"body\" tone=\"muted\">\n No notes on this page.\n </Txt>\n ) : (\n <ul className=\"flex flex-col gap-2\">\n {notes.map(note => {\n const highlighted = !!highlightMentionOf && note.mentions.includes(highlightMentionOf);\n const takeRef = highlighted && !highlightRefSet;\n if (takeRef) highlightRefSet = true;\n return (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n highlighted={highlighted}\n itemRef={\n takeRef\n ? element => {\n firstHighlighted.current = element;\n }\n : undefined\n }\n />\n );\n })}\n </ul>\n )}\n {notesMore}\n </Section>\n </div>\n\n <aside className=\"flex min-w-0 flex-col gap-8\">\n {childPages ? <Section label=\"Pages\">{childPages}</Section> : null}\n\n {mentionedBy.length > 0 ? (\n <Section label=\"Mentioned in\" count={mentionedBy.length}>\n <ul className=\"flex flex-col gap-2\">\n {mentionedBy.map(note => (\n <KnowledgeNoteItem\n key={note.id}\n note={note}\n pagesById={pagesById}\n onPageClick={onPageClick}\n showPage\n compact\n />\n ))}\n </ul>\n </Section>\n ) : null}\n\n {activity && activity.length > 0 ? (\n <Section label=\"Activity\">\n <ol className=\"relative flex flex-col gap-3 border-l border-border pl-4\">\n {activity.map(event => (\n <li key={event.id} className=\"relative flex flex-col\">\n <span\n aria-hidden\n className=\"absolute top-1.5 -left-5 size-2 rounded-full border border-border bg-card\"\n />\n <Txt as=\"span\" variant=\"body-sm\" tone=\"ink\">\n {ACTIVITY_LABELS[event.action] ?? event.action}\n </Txt>\n <Txt as=\"span\" variant=\"caption\" tone=\"muted\">\n <Metadata>\n <Metadata.Item>{event.provenance.author}</Metadata.Item>\n <Metadata.Item>\n <When iso={event.createdAt} />\n </Metadata.Item>\n </Metadata>\n </Txt>\n </li>\n ))}\n </ol>\n </Section>\n ) : null}\n </aside>\n </div>\n </article>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_Txt = require("../../../Txt-BnoSqxKE.cjs");
|
|
3
|
-
const require_EmptyState = require("../../../EmptyState-DxDHlYqD.cjs");
|
|
4
|
-
const require_hooks_use_is_mobile = require("../../../hooks/use-is-mobile.cjs.js");
|
|
5
|
-
const require_domains_knowledge_lib_pageRefs = require("../lib/pageRefs.cjs.js");
|
|
6
|
-
const require_domains_knowledge_components_KnowledgePageDetail = require("./KnowledgePageDetail.cjs.js");
|
|
7
2
|
const require_domains_knowledge_lib_graphShape = require("../lib/graphShape.cjs.js");
|
|
3
|
+
const require_domains_knowledge_lib_pageRefs = require("../lib/pageRefs.cjs.js");
|
|
8
4
|
const require_domains_knowledge_lib_popupPlacement = require("../lib/popupPlacement.cjs.js");
|
|
9
5
|
const require_domains_knowledge_lib_useStableWhile = require("../lib/useStableWhile.cjs.js");
|
|
6
|
+
const require_domains_knowledge_components_KnowledgePageDetail = require("./KnowledgePageDetail.cjs.js");
|
|
10
7
|
const require_domains_knowledge_components_KnowledgePageGraph = require("./KnowledgePageGraph.cjs.js");
|
|
11
8
|
const require_domains_knowledge_components_KnowledgePageTree = require("./KnowledgePageTree.cjs.js");
|
|
9
|
+
const require_EmptyState = require("../../../EmptyState-Dc-sP95H.cjs");
|
|
10
|
+
const require_Txt = require("../../../Txt-_00wWxTd.cjs");
|
|
11
|
+
const require_hooks_use_is_mobile = require("../../../hooks/use-is-mobile.cjs.js");
|
|
12
12
|
let react = require("react");
|
|
13
13
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
14
14
|
let lucide_react = require("lucide-react");
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { t as Txt } from "../../../Txt-BM6TVV_c.js";
|
|
2
|
-
import { n as EmptyState } from "../../../EmptyState-P-Gy898T.js";
|
|
3
|
-
import { useIsMobile } from "../../../hooks/use-is-mobile.es.js";
|
|
4
|
-
import { bodyLinkEdges, bodyLinkRefs, knowledgePageRefIndex } from "../lib/pageRefs.es.js";
|
|
5
|
-
import { KnowledgeNoteItem, KnowledgePageDetail } from "./KnowledgePageDetail.es.js";
|
|
6
1
|
import { isChildPlaceholder, isRestCircle, isScopeGroup, lazyGraph } from "../lib/graphShape.es.js";
|
|
2
|
+
import { bodyLinkEdges, bodyLinkRefs, knowledgePageRefIndex } from "../lib/pageRefs.es.js";
|
|
7
3
|
import { mentionPopupPlacement } from "../lib/popupPlacement.es.js";
|
|
8
4
|
import { useStableWhile } from "../lib/useStableWhile.es.js";
|
|
5
|
+
import { KnowledgeNoteItem, KnowledgePageDetail } from "./KnowledgePageDetail.es.js";
|
|
9
6
|
import { KnowledgePageGraph } from "./KnowledgePageGraph.es.js";
|
|
10
7
|
import { KnowledgePageTree } from "./KnowledgePageTree.es.js";
|
|
8
|
+
import { n as EmptyState } from "../../../EmptyState-i88y1x75.js";
|
|
9
|
+
import { t as Txt } from "../../../Txt-5efBsb2p.js";
|
|
10
|
+
import { useIsMobile } from "../../../hooks/use-is-mobile.es.js";
|
|
11
11
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
12
12
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { ArrowLeft, Hash, Link2, X } from "lucide-react";
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
require('../../../KnowledgePageGraph.css');const
|
|
3
|
-
const require_domains_knowledge_lib_linkCountsText = require("../lib/linkCountsText.cjs.js");
|
|
4
|
-
const require_domains_knowledge_components_KnowledgePageCard = require("./KnowledgePageCard.cjs.js");
|
|
5
|
-
const require_domains_knowledge_lib_pageTree = require("../lib/pageTree.cjs.js");
|
|
6
|
-
const require_domains_knowledge_lib_graphShape = require("../lib/graphShape.cjs.js");
|
|
7
|
-
const require_domains_knowledge_lib_circleText = require("../lib/circleText.cjs.js");
|
|
8
|
-
const require_domains_knowledge_lib_useLeavingNodes = require("../lib/useLeavingNodes.cjs.js");
|
|
2
|
+
require('../../../KnowledgePageGraph.css');const require_domains_knowledge_lib_circleText = require("../lib/circleText.cjs.js");
|
|
9
3
|
const require_domains_knowledge_lib_fitViewport = require("../lib/fitViewport.cjs.js");
|
|
4
|
+
const require_domains_knowledge_lib_graphShape = require("../lib/graphShape.cjs.js");
|
|
10
5
|
const require_domains_knowledge_lib_layout = require("../lib/layout.cjs.js");
|
|
6
|
+
const require_domains_knowledge_lib_linkCountsText = require("../lib/linkCountsText.cjs.js");
|
|
11
7
|
const require_domains_knowledge_lib_pageAddress = require("../lib/pageAddress.cjs.js");
|
|
12
8
|
const require_domains_knowledge_lib_pageGraph = require("../lib/pageGraph.cjs.js");
|
|
9
|
+
const require_domains_knowledge_lib_pageTree = require("../lib/pageTree.cjs.js");
|
|
13
10
|
const require_domains_knowledge_lib_tooltipSide = require("../lib/tooltipSide.cjs.js");
|
|
11
|
+
const require_domains_knowledge_lib_useLeavingNodes = require("../lib/useLeavingNodes.cjs.js");
|
|
12
|
+
const require_domains_knowledge_components_KnowledgePageCard = require("./KnowledgePageCard.cjs.js");
|
|
13
|
+
const require_Metadata = require("../../../Metadata-5GJlO4GU.cjs");
|
|
14
|
+
const require_Txt = require("../../../Txt-_00wWxTd.cjs");
|
|
14
15
|
let react = require("react");
|
|
15
16
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
16
17
|
let lucide_react = require("lucide-react");
|
|
@@ -214,7 +215,7 @@ function DotNode({ data }) {
|
|
|
214
215
|
hint ?? path,
|
|
215
216
|
children,
|
|
216
217
|
linkText
|
|
217
|
-
].filter(Boolean).join("
|
|
218
|
+
].filter(Boolean).join(", ");
|
|
218
219
|
(0, react.useLayoutEffect)(() => {
|
|
219
220
|
const dot = dotRef.current;
|
|
220
221
|
const tip = tipRef.current;
|
|
@@ -298,7 +299,7 @@ function DotNode({ data }) {
|
|
|
298
299
|
as: "span",
|
|
299
300
|
variant: "meta",
|
|
300
301
|
tone: "muted",
|
|
301
|
-
children: group
|
|
302
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Metadata.Metadata, { children: [group && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Metadata.Metadata.Item, { children: path }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Metadata.Metadata.Item, { children: hint })] })
|
|
302
303
|
})] }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_domains_knowledge_components_KnowledgePageCard.KnowledgePageCard, {
|
|
303
304
|
name: page.name,
|
|
304
305
|
kind,
|
|
@@ -345,7 +346,7 @@ function PageNodeComponent({ data }) {
|
|
|
345
346
|
width: size,
|
|
346
347
|
height: size
|
|
347
348
|
},
|
|
348
|
-
title: placeholder ? `${kind}
|
|
349
|
+
title: placeholder ? `${kind}: ${page.address}. Nothing written to it yet.` : rest ? `Show ${Math.min(12, page.childCount ?? 12)} more of ${page.childCount ?? "the rest"}` : group ? `${page.name}: click to show them` : page.isScope && page.address ? `${kind}: ${page.address}` : data.links && data.links.in + data.links.out > 0 ? `${page.name}: ${require_domains_knowledge_lib_linkCountsText.linkCountsText(data.links, data.notShown)}` : page.name,
|
|
349
350
|
children: [
|
|
350
351
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
351
352
|
className: `knowledge-circle flex size-full flex-col items-center justify-center gap-0.5 overflow-hidden rounded-full border-2 text-center shadow-raised ${rest ? "hover:border-foreground" : ""}`,
|