agentic-ui-libs 1.0.0-beta.9 → 1.1.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/assets/agentic-ui-libs.css +12431 -0
  2. package/dist/features/debug-logs/components/DebugCard.d.ts.map +1 -1
  3. package/dist/features/debug-logs/index.d.ts +2 -1
  4. package/dist/features/debug-logs/index.d.ts.map +1 -1
  5. package/dist/features/md-editor/MDEditor.d.ts.map +1 -1
  6. package/dist/features/md-editor/components/AIRefinePanel.d.ts.map +1 -1
  7. package/dist/features/md-editor/components/SlashMenu.d.ts.map +1 -1
  8. package/dist/features/md-editor/utils/markdown.d.ts.map +1 -1
  9. package/dist/features/tracing/components/GenerationsList.d.ts +13 -0
  10. package/dist/features/tracing/components/GenerationsList.d.ts.map +1 -0
  11. package/dist/features/tracing/components/SessionsList.d.ts +12 -0
  12. package/dist/features/tracing/components/SessionsList.d.ts.map +1 -0
  13. package/dist/features/tracing/components/TracesList.d.ts +12 -0
  14. package/dist/features/tracing/components/TracesList.d.ts.map +1 -0
  15. package/dist/features/tracing/components/detail/DetailPage.d.ts +15 -0
  16. package/dist/features/tracing/components/detail/DetailPage.d.ts.map +1 -0
  17. package/dist/features/tracing/components/detail/NodeDetailPanel.d.ts +13 -0
  18. package/dist/features/tracing/components/detail/NodeDetailPanel.d.ts.map +1 -0
  19. package/dist/features/tracing/components/detail/ObservationNode.d.ts +9 -0
  20. package/dist/features/tracing/components/detail/ObservationNode.d.ts.map +1 -0
  21. package/dist/features/tracing/components/detail/TraceTree.d.ts +9 -0
  22. package/dist/features/tracing/components/detail/TraceTree.d.ts.map +1 -0
  23. package/dist/features/tracing/components/detail/config/index.d.ts +5 -0
  24. package/dist/features/tracing/components/detail/config/index.d.ts.map +1 -0
  25. package/dist/features/tracing/components/detail/config/observationFilterConfig.d.ts +41 -0
  26. package/dist/features/tracing/components/detail/config/observationFilterConfig.d.ts.map +1 -0
  27. package/dist/features/tracing/components/detail/index.d.ts +14 -0
  28. package/dist/features/tracing/components/detail/index.d.ts.map +1 -0
  29. package/dist/features/tracing/components/detail/services/DetailPageService.d.ts +119 -0
  30. package/dist/features/tracing/components/detail/services/DetailPageService.d.ts.map +1 -0
  31. package/dist/features/tracing/components/detail/services/index.d.ts +5 -0
  32. package/dist/features/tracing/components/detail/services/index.d.ts.map +1 -0
  33. package/dist/features/tracing/components/detail/types.d.ts +216 -0
  34. package/dist/features/tracing/components/detail/types.d.ts.map +1 -0
  35. package/dist/features/tracing/components/shared/ColumnCustomization.d.ts +14 -0
  36. package/dist/features/tracing/components/shared/ColumnCustomization.d.ts.map +1 -0
  37. package/dist/features/tracing/components/shared/EmptyState.d.ts +15 -0
  38. package/dist/features/tracing/components/shared/EmptyState.d.ts.map +1 -0
  39. package/dist/features/tracing/components/shared/FilterPanel.d.ts +13 -0
  40. package/dist/features/tracing/components/shared/FilterPanel.d.ts.map +1 -0
  41. package/dist/features/tracing/components/shared/LoadingSpinner.d.ts +11 -0
  42. package/dist/features/tracing/components/shared/LoadingSpinner.d.ts.map +1 -0
  43. package/dist/features/tracing/components/shared/TokenBreakdownTooltip.d.ts +18 -0
  44. package/dist/features/tracing/components/shared/TokenBreakdownTooltip.d.ts.map +1 -0
  45. package/dist/features/tracing/components/shared/TracingListHeader.d.ts +32 -0
  46. package/dist/features/tracing/components/shared/TracingListHeader.d.ts.map +1 -0
  47. package/dist/features/tracing/components/shared/TracingTable.d.ts +9 -0
  48. package/dist/features/tracing/components/shared/TracingTable.d.ts.map +1 -0
  49. package/dist/features/tracing/components/shared/index.d.ts +14 -0
  50. package/dist/features/tracing/components/shared/index.d.ts.map +1 -0
  51. package/dist/features/tracing/components/shared/skeletons/NodeDetailSkeleton.d.ts +12 -0
  52. package/dist/features/tracing/components/shared/skeletons/NodeDetailSkeleton.d.ts.map +1 -0
  53. package/dist/features/tracing/components/shared/skeletons/TableSkeleton.d.ts +13 -0
  54. package/dist/features/tracing/components/shared/skeletons/TableSkeleton.d.ts.map +1 -0
  55. package/dist/features/tracing/components/shared/skeletons/TreeSkeleton.d.ts +24 -0
  56. package/dist/features/tracing/components/shared/skeletons/TreeSkeleton.d.ts.map +1 -0
  57. package/dist/features/tracing/components/shared/skeletons/index.d.ts +8 -0
  58. package/dist/features/tracing/components/shared/skeletons/index.d.ts.map +1 -0
  59. package/dist/features/tracing/contexts/EnvironmentContext.d.ts +50 -0
  60. package/dist/features/tracing/contexts/EnvironmentContext.d.ts.map +1 -0
  61. package/dist/features/tracing/contexts/index.d.ts +6 -0
  62. package/dist/features/tracing/contexts/index.d.ts.map +1 -0
  63. package/dist/features/tracing/index.d.ts +22 -0
  64. package/dist/features/tracing/index.d.ts.map +1 -0
  65. package/dist/features/tracing/mocks/index.d.ts +6 -0
  66. package/dist/features/tracing/mocks/index.d.ts.map +1 -0
  67. package/dist/features/tracing/mocks/mockData.d.ts +12 -0
  68. package/dist/features/tracing/mocks/mockData.d.ts.map +1 -0
  69. package/dist/features/tracing/services/ObservationTreeBuilder.d.ts +51 -0
  70. package/dist/features/tracing/services/ObservationTreeBuilder.d.ts.map +1 -0
  71. package/dist/features/tracing/services/TraceTreeService.d.ts +105 -0
  72. package/dist/features/tracing/services/TraceTreeService.d.ts.map +1 -0
  73. package/dist/features/tracing/services/TracingApiService.d.ts +139 -0
  74. package/dist/features/tracing/services/TracingApiService.d.ts.map +1 -0
  75. package/dist/features/tracing/services/TracingUtils.d.ts +164 -0
  76. package/dist/features/tracing/services/TracingUtils.d.ts.map +1 -0
  77. package/dist/features/tracing/services/index.d.ts +10 -0
  78. package/dist/features/tracing/services/index.d.ts.map +1 -0
  79. package/dist/features/tracing/types.d.ts +545 -0
  80. package/dist/features/tracing/types.d.ts.map +1 -0
  81. package/dist/features/tracing/utils/index.d.ts +7 -0
  82. package/dist/features/tracing/utils/index.d.ts.map +1 -0
  83. package/dist/features/tracing/utils/observationIconUtils.d.ts +19 -0
  84. package/dist/features/tracing/utils/observationIconUtils.d.ts.map +1 -0
  85. package/dist/features/tracing/utils/staticApidata.d.ts +1 -0
  86. package/dist/features/tracing/utils/staticApidata.d.ts.map +1 -0
  87. package/dist/index.angular.d.ts +32 -0
  88. package/dist/index.angular.d.ts.map +1 -0
  89. package/dist/index.d.ts +1 -1
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +79899 -7309
  92. package/dist/shared/ui/CodeEditor.d.ts +15 -0
  93. package/dist/shared/ui/CodeEditor.d.ts.map +1 -1
  94. package/dist/shared/ui/DataViewer.d.ts +30 -0
  95. package/dist/shared/ui/DataViewer.d.ts.map +1 -0
  96. package/dist/shared/ui/IconPreview.d.ts.map +1 -1
  97. package/dist/shared/ui/Modal.d.ts +16 -0
  98. package/dist/shared/ui/Modal.d.ts.map +1 -0
  99. package/dist/shared/ui/Select.d.ts +2 -0
  100. package/dist/shared/ui/Select.d.ts.map +1 -1
  101. package/dist/shared/ui/daterangepicker.d.ts +4 -2
  102. package/dist/shared/ui/daterangepicker.d.ts.map +1 -1
  103. package/dist/shared/ui/index.d.ts +4 -0
  104. package/dist/shared/ui/index.d.ts.map +1 -1
  105. package/dist/ui-libs.umd.js +80065 -7475
  106. package/package.json +33 -21
  107. package/dist/assets/style.css +0 -4170
  108. package/dist/features/debug-logs/components/DataViewer.d.ts +0 -18
  109. package/dist/features/debug-logs/components/DataViewer.d.ts.map +0 -1
  110. package/dist/features/prompt-editor/PromptEditor.d.ts +0 -14
  111. package/dist/features/prompt-editor/PromptEditor.d.ts.map +0 -1
  112. package/dist/features/prompt-editor/RefinePanel.d.ts +0 -41
  113. package/dist/features/prompt-editor/RefinePanel.d.ts.map +0 -1
  114. package/dist/features/prompt-editor/components/AddToolbar.d.ts +0 -8
  115. package/dist/features/prompt-editor/components/AddToolbar.d.ts.map +0 -1
  116. package/dist/features/prompt-editor/components/ChatMessage.d.ts +0 -13
  117. package/dist/features/prompt-editor/components/ChatMessage.d.ts.map +0 -1
  118. package/dist/features/prompt-editor/components/CodeEditor.d.ts +0 -8
  119. package/dist/features/prompt-editor/components/CodeEditor.d.ts.map +0 -1
  120. package/dist/features/prompt-editor/components/ContentBlock.d.ts +0 -23
  121. package/dist/features/prompt-editor/components/ContentBlock.d.ts.map +0 -1
  122. package/dist/features/prompt-editor/components/EditableContent.d.ts +0 -16
  123. package/dist/features/prompt-editor/components/EditableContent.d.ts.map +0 -1
  124. package/dist/features/prompt-editor/components/FormattingToolbar.d.ts +0 -10
  125. package/dist/features/prompt-editor/components/FormattingToolbar.d.ts.map +0 -1
  126. package/dist/features/prompt-editor/components/Header.d.ts +0 -2
  127. package/dist/features/prompt-editor/components/Header.d.ts.map +0 -1
  128. package/dist/features/prompt-editor/components/InsertMenu.d.ts +0 -14
  129. package/dist/features/prompt-editor/components/InsertMenu.d.ts.map +0 -1
  130. package/dist/features/prompt-editor/components/RefineDropdown.d.ts +0 -14
  131. package/dist/features/prompt-editor/components/RefineDropdown.d.ts.map +0 -1
  132. package/dist/features/prompt-editor/components/Section.d.ts +0 -27
  133. package/dist/features/prompt-editor/components/Section.d.ts.map +0 -1
  134. package/dist/features/prompt-editor/components/SectionHeader.d.ts +0 -15
  135. package/dist/features/prompt-editor/components/SectionHeader.d.ts.map +0 -1
  136. package/dist/features/prompt-editor/components/icons.d.ts +0 -16
  137. package/dist/features/prompt-editor/components/icons.d.ts.map +0 -1
  138. package/dist/features/prompt-editor/data/insertableItems.d.ts +0 -17
  139. package/dist/features/prompt-editor/data/insertableItems.d.ts.map +0 -1
  140. package/dist/features/prompt-editor/index.d.ts +0 -19
  141. package/dist/features/prompt-editor/index.d.ts.map +0 -1
  142. package/dist/features/prompt-editor/services/EditorUtils.d.ts +0 -48
  143. package/dist/features/prompt-editor/services/EditorUtils.d.ts.map +0 -1
  144. package/dist/features/prompt-editor/services/PromptApiService.d.ts +0 -22
  145. package/dist/features/prompt-editor/services/PromptApiService.d.ts.map +0 -1
  146. package/dist/features/prompt-editor/types.d.ts +0 -102
  147. package/dist/features/prompt-editor/types.d.ts.map +0 -1
@@ -0,0 +1,15 @@
1
+ /**
2
+ * EmptyState Component
3
+ * Displays empty state UI for sessions/traces lists
4
+ */
5
+ interface EmptyStateProps {
6
+ icon?: 'search' | 'filter';
7
+ title: string;
8
+ description: string;
9
+ actionLabel?: string;
10
+ onAction?: () => void;
11
+ className?: string;
12
+ }
13
+ export declare function EmptyState(props: EmptyStateProps): import("react/jsx-runtime").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=EmptyState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/EmptyState.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CAgChD"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * FilterPanel Component
3
+ * Advanced filter UI matching Langfuse/koretracing filter builder UX
4
+ *
5
+ * Key behaviors:
6
+ * - Auto-adds an empty editable filter row when opened with no filters
7
+ * - Uses "wip" (work-in-progress) filter state for incomplete filters
8
+ * - Only applies valid/complete filters to parent state
9
+ * - Discards incomplete filters when closing/canceling
10
+ */
11
+ import { FilterPanelProps } from '../../types';
12
+ export declare function FilterPanel(props: FilterPanelProps): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=FilterPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterPanel.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/FilterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,gBAAgB,EAA0B,MAAM,aAAa,CAAC;AAwBvE,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CA0WlD"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * LoadingSpinner Component
3
+ * Displays loading state for tracing components
4
+ */
5
+ interface LoadingSpinnerProps {
6
+ message?: string;
7
+ className?: string;
8
+ }
9
+ export declare function LoadingSpinner(props: LoadingSpinnerProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=LoadingSpinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/LoadingSpinner.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,UAAU,mBAAmB;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CASxD"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * TokenBreakdownTooltip Component
3
+ * Shows token breakdown on hover
4
+ */
5
+ import React from 'react';
6
+ import { TokenBreakdown } from '../../types';
7
+ interface TokenBreakdownTooltipProps {
8
+ tokens: TokenBreakdown;
9
+ cost?: {
10
+ input: string | number;
11
+ output: string | number;
12
+ total: string | number;
13
+ };
14
+ children: React.ReactNode;
15
+ }
16
+ export declare function TokenBreakdownTooltip(props: TokenBreakdownTooltipProps): import("react/jsx-runtime").JSX.Element;
17
+ export {};
18
+ //# sourceMappingURL=TokenBreakdownTooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenBreakdownTooltip.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/TokenBreakdownTooltip.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,UAAU,0BAA0B;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,2CA4DtE"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * TracingListHeader Component
3
+ * Reusable header component for SessionsList, TracesList, and GenerationsList
4
+ * Supports advanced search with Full Text / IDs mode selector (like koretracing)
5
+ */
6
+ import { DateRange } from '@/shared/types';
7
+ import { Filter, SearchConfig } from '../../types';
8
+ export interface TracingListHeaderProps {
9
+ title: string;
10
+ description: string;
11
+ /** Search configuration - if provided, enables advanced search with type selector */
12
+ searchConfig?: SearchConfig;
13
+ /** Simple search - for backward compatibility (use searchConfig for new implementations) */
14
+ searchPlaceholder?: string;
15
+ searchValue?: string;
16
+ onSearchChange?: (value: string) => void;
17
+ showSearch?: boolean;
18
+ timeRange: string | DateRange;
19
+ timeRangePresetLabel?: string | null;
20
+ onTimeRangeChange: (value: string | DateRange, presetLabel?: string | null) => void;
21
+ filters: Filter[];
22
+ onFiltersClick: () => void;
23
+ onExportClick?: () => void;
24
+ exportDisabled?: boolean;
25
+ showExport?: boolean;
26
+ onModifyColumnsClick?: () => void;
27
+ showModifyColumns?: boolean;
28
+ onClearFilters?: () => void;
29
+ onRemoveFilter?: (index: number) => void;
30
+ }
31
+ export declare function TracingListHeader(props: TracingListHeaderProps): import("react/jsx-runtime").JSX.Element;
32
+ //# sourceMappingURL=TracingListHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TracingListHeader.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/TracingListHeader.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAqB,MAAM,aAAa,CAAC;AAGtE,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,4FAA4F;IAC5F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACpF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,2CAyO9D"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * TracingTable Component
3
+ * Reusable AG Grid wrapper with Tailwind styling for sessions and traces
4
+ */
5
+ import { TracingTableProps } from '../../types';
6
+ export declare function TracingTable<T = unknown>(props: TracingTableProps<T> & {
7
+ hasInitiallyLoaded?: boolean;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=TracingTable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TracingTable.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/TracingTable.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,iBAAiB,EAAa,MAAM,aAAa,CAAC;AAI3D,wBAAgB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAE,2CAkNvG"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Shared Components - Barrel Export
3
+ * Reusable UI components for the tracing feature
4
+ */
5
+ export { EmptyState } from './EmptyState';
6
+ export { LoadingSpinner } from './LoadingSpinner';
7
+ export { TokenBreakdownTooltip } from './TokenBreakdownTooltip';
8
+ export { TableSkeleton, TreeSkeleton, NodeDetailSkeleton } from './skeletons';
9
+ export { TracingTable } from './TracingTable';
10
+ export { TracingListHeader } from './TracingListHeader';
11
+ export type { TracingListHeaderProps } from './TracingListHeader';
12
+ export { ColumnCustomization } from './ColumnCustomization';
13
+ export { FilterPanel } from './FilterPanel';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/tracing/components/shared/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAGlE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * NodeDetailSkeleton Component
3
+ * Skeleton loader for the Node Detail panel (right side of detail page)
4
+ * Matches the Figma design with Summary, Input, Action, and Code Editor sections
5
+ */
6
+ interface NodeDetailSkeletonProps {
7
+ showFullSummary?: boolean;
8
+ className?: string;
9
+ }
10
+ export declare function NodeDetailSkeleton({ showFullSummary, className }: NodeDetailSkeletonProps): import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=NodeDetailSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeDetailSkeleton.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tracing/components/shared/skeletons/NodeDetailSkeleton.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,UAAU,uBAAuB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA0BD,wBAAgB,kBAAkB,CAAC,EACjC,eAAsB,EACtB,SAAc,EACf,EAAE,uBAAuB,2CAoGzB"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * TableSkeleton Component
3
+ * Skeleton loader for AG Grid tables in Sessions, Traces, and Generations lists
4
+ * Matches the design system with shimmer animation
5
+ */
6
+ interface TableSkeletonProps {
7
+ rows?: number;
8
+ columns?: number;
9
+ className?: string;
10
+ }
11
+ export declare function TableSkeleton({ rows, columns, className }: TableSkeletonProps): import("react/jsx-runtime").JSX.Element;
12
+ export {};
13
+ //# sourceMappingURL=TableSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSkeleton.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tracing/components/shared/skeletons/TableSkeleton.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD,wBAAgB,aAAa,CAAC,EAAE,IAAS,EAAE,OAAW,EAAE,SAAc,EAAE,EAAE,kBAAkB,2CAmD3F"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * TreeSkeleton Component
3
+ * Skeleton loader for the Trace Tree panel (left side of detail page)
4
+ * Matches the Figma design with USER MESSAGE, observation tree, and APP RESPONSE sections
5
+ *
6
+ * Supports two modes:
7
+ * - Expanded (isExpanded=true): Shows USER MESSAGE + observation tree + APP RESPONSE
8
+ * - Collapsed (isExpanded=false): Shows only USER MESSAGE + APP RESPONSE (no observation tree)
9
+ */
10
+ interface TreeSkeletonProps {
11
+ /** Number of trace skeletons to show */
12
+ traceCount?: number;
13
+ /** Number of observation skeletons per trace (when expanded) */
14
+ observationsPerTrace?: number;
15
+ /** Additional CSS classes */
16
+ className?: string;
17
+ /** Whether to show as expanded (with observations) or collapsed */
18
+ isExpanded?: boolean;
19
+ /** Whether to show trace ID footer for each trace (session mode) */
20
+ showTraceId?: boolean;
21
+ }
22
+ export declare function TreeSkeleton({ traceCount, observationsPerTrace, className, isExpanded, showTraceId, }: TreeSkeletonProps): import("react/jsx-runtime").JSX.Element;
23
+ export {};
24
+ //# sourceMappingURL=TreeSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeSkeleton.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tracing/components/shared/skeletons/TreeSkeleton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,UAAU,iBAAiB;IACzB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oEAAoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAgHD,wBAAgB,YAAY,CAAC,EAC3B,UAAc,EACd,oBAAwB,EACxB,SAAc,EACd,UAAiB,EACjB,WAAkB,GACnB,EAAE,iBAAiB,2CAcnB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Skeleton Components - Barrel Export
3
+ * Skeleton loaders for tracing feature components
4
+ */
5
+ export { TableSkeleton } from './TableSkeleton';
6
+ export { TreeSkeleton } from './TreeSkeleton';
7
+ export { NodeDetailSkeleton } from './NodeDetailSkeleton';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tracing/components/shared/skeletons/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Environment Context
3
+ * Provides environment data and name resolution for tracing components
4
+ */
5
+ import { ReactNode } from 'react';
6
+ import { Environment } from '../../../shared/types';
7
+ import { TracingApiConfig } from '../types';
8
+ /**
9
+ * Environment context value interface
10
+ */
11
+ interface EnvironmentContextValue {
12
+ /** List of environments fetched from the API */
13
+ environments: Environment[];
14
+ /** Loading state for environments */
15
+ loading: boolean;
16
+ /** Error state if fetch failed */
17
+ error: string | null;
18
+ /** Resolve environment ID to display name */
19
+ resolveEnvironmentName: (envId: string | null | undefined) => string;
20
+ /** Refresh environments from API */
21
+ refreshEnvironments: () => Promise<void>;
22
+ }
23
+ /**
24
+ * Environment provider props
25
+ */
26
+ interface EnvironmentProviderProps {
27
+ /** API configuration for fetching environments */
28
+ apiConfig: TracingApiConfig;
29
+ /** Child components */
30
+ children: ReactNode;
31
+ }
32
+ declare const EnvironmentContext: import("react").Context<EnvironmentContextValue>;
33
+ /**
34
+ * Environment Provider Component
35
+ * Fetches and caches environments, provides name resolution
36
+ */
37
+ export declare function EnvironmentProvider({ apiConfig, children }: EnvironmentProviderProps): JSX.Element;
38
+ /**
39
+ * Hook to access environment context
40
+ * @returns Environment context value
41
+ */
42
+ export declare function useEnvironment(): EnvironmentContextValue;
43
+ /**
44
+ * Utility function to resolve environment name without context
45
+ * Use this when you have the environments array directly
46
+ */
47
+ export declare function resolveEnvironmentNameUtil(envId: string | null | undefined, environments: Environment[]): string;
48
+ export { EnvironmentContext };
49
+ export type { EnvironmentContextValue, EnvironmentProviderProps };
50
+ //# sourceMappingURL=EnvironmentContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentContext.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/contexts/EnvironmentContext.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAwE,SAAS,EAAE,MAAM,OAAO,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C;;GAEG;AACH,UAAU,uBAAuB;IAC/B,gDAAgD;IAChD,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,6CAA6C;IAC7C,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,KAAK,MAAM,CAAC;IACrE,oCAAoC;IACpC,mBAAmB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC,kDAAkD;IAClD,SAAS,EAAE,gBAAgB,CAAC;IAC5B,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAGD,QAAA,MAAM,kBAAkB,kDAMtB,CAAC;AAMH;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,wBAAwB,GAAG,GAAG,CAAC,OAAO,CAqGlG;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,uBAAuB,CAQxD;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAahH;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Contexts barrel export
3
+ */
4
+ export { EnvironmentContext, EnvironmentProvider, useEnvironment, resolveEnvironmentNameUtil, } from './EnvironmentContext';
5
+ export type { EnvironmentContextValue, EnvironmentProviderProps, } from './EnvironmentContext';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/contexts/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Tracing Feature Exports
3
+ * Public API for the tracing and observability feature
4
+ */
5
+ export { SessionsList } from './components/SessionsList';
6
+ export { TracesList } from './components/TracesList';
7
+ export { GenerationsList } from './components/GenerationsList';
8
+ export { DetailPage, TraceTree, ObservationNode, NodeDetailPanel, TraceTreeService, DetailPageService, createDetailPageService, observationFilterConfig, LLM_MODELS, DEFAULT_BATCH_SIZE, } from './components/detail';
9
+ export type { DetailPageProps, DetailPageMode, InitialSessionData, TraceTreeProps, ObservationNodeProps, NodeDetailPanelProps, TraceData, SessionData, SessionDetailData, TraceDetailData, ObservationData as DetailObservationData, ObservationTreeNode as DetailObservationTreeNode, ObservationLevelType, } from './components/detail';
10
+ export { TracingTable, FilterPanel, EmptyState, LoadingSpinner, TokenBreakdownTooltip, ColumnCustomization, TracingListHeader, TableSkeleton, TreeSkeleton, NodeDetailSkeleton, } from './components/shared';
11
+ export type { TracingListHeaderProps } from './components/shared';
12
+ export { TracingApiService } from './services/TracingApiService';
13
+ export { TracingUtils } from './services/TracingUtils';
14
+ export { buildObservationTree, flattenObservationTree, findObservationNode, getDescendantIds, calculateNodeMetrics, } from './services/ObservationTreeBuilder';
15
+ export type { ObservationTreeNode } from './services/ObservationTreeBuilder';
16
+ export { getObservationIconProps } from './utils/observationIconUtils';
17
+ export type { ObservationIconProps } from './utils/observationIconUtils';
18
+ export { EnvironmentContext, EnvironmentProvider, useEnvironment, resolveEnvironmentNameUtil, } from './contexts';
19
+ export type { EnvironmentContextValue, EnvironmentProviderProps, } from './contexts';
20
+ export { getMockSession, getMockTrace, getMockObservations } from './mocks/mockData';
21
+ export type { TracingApiConfig, Session, Trace, Observation, Score, Generation, Filter, FilterOperator, FilterType, OrderBy, PaginationParams, TimestampFilter, SessionsAllRequest, SessionsAllResponse, SessionsCountResponse, SessionMetricsResponse, SessionByIdRequest, SessionByIdResponse, TracesAllRequest, TracesAllResponse, TraceByIdRequest, TraceByIdResponse, GenerationsAllRequest, GenerationsAllResponse, GenerationsCountResponse, FilterOptionsRequest, FilterOptionsResponse, ScoreKeysRequest, ScoreKeysResponse, SessionsListProps, TracesListProps, GenerationsListProps, TracingTableProps, FilterPanelProps, ColumnDef, CellRendererParams, ValueFormatterParams, ValueGetterParams, FilterColumn, TimeRangeOption, DateRange, TimeRangeState, TracingState, TokenBreakdown, CostBreakdown, SessionMetrics, TraceMetrics, ExportOptions, TracingEventHandlers, TracingFeatureFlags, } from './types';
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/tracing/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAK/D,OAAO,EACL,UAAU,EACV,SAAS,EACT,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,UAAU,EACV,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,eAAe,IAAI,qBAAqB,EACxC,mBAAmB,IAAI,yBAAyB,EAChD,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EACL,YAAY,EACZ,WAAW,EACX,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EAEjB,aAAa,EACb,YAAY,EACZ,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAKlE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAK7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAKzE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAKrF,YAAY,EAEV,gBAAgB,EAChB,OAAO,EACP,KAAK,EACL,WAAW,EACX,KAAK,EACL,UAAU,EAEV,MAAM,EACN,cAAc,EACd,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,eAAe,EAEf,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EAEjB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAEhB,SAAS,EACT,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,EAEZ,eAAe,EACf,SAAS,EACT,cAAc,EAEd,YAAY,EAEZ,cAAc,EACd,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Mock Data - Barrel Export
3
+ * Mock data for development and testing
4
+ */
5
+ export { getMockSession, getMockTrace, getMockObservations } from './mockData';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/mocks/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Mock data for development and testing of detail components
3
+ * Contains sample session with multiple traces and hierarchical observations
4
+ */
5
+ import { SessionData, TraceData, ObservationData } from '../components/detail/types';
6
+ export declare const mockTrace1: TraceData;
7
+ export declare const mockTrace2: TraceData;
8
+ export declare const mockSession: SessionData;
9
+ export declare const getMockSession: () => SessionData;
10
+ export declare const getMockTrace: (traceId?: string) => TraceData;
11
+ export declare const getMockObservations: (traceId: string) => ObservationData[];
12
+ //# sourceMappingURL=mockData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockData.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/mocks/mockData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AA4NrF,eAAO,MAAM,UAAU,EAAE,SAaxB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,SAaxB,CAAC;AAMF,eAAO,MAAM,WAAW,EAAE,WAMzB,CAAC;AAMF,eAAO,MAAM,cAAc,QAAO,WAA0B,CAAC;AAC7D,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,KAAG,SAG/C,CAAC;AACF,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,KAAG,eAAe,EAGpE,CAAC"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * ObservationTreeBuilder
3
+ * Utility for building hierarchical tree structures from flat observation arrays
4
+ * using parentObservationId relationships
5
+ */
6
+ import { Observation } from '../types';
7
+ /**
8
+ * Tree node structure for observations with children
9
+ */
10
+ export interface ObservationTreeNode {
11
+ observation: Observation;
12
+ children: ObservationTreeNode[];
13
+ level: number;
14
+ isExpanded?: boolean;
15
+ }
16
+ /**
17
+ * Build a hierarchical tree structure from a flat array of observations
18
+ * @param observations - Flat array of observations with parentObservationId references
19
+ * @returns Array of root observation nodes (observations without parents)
20
+ */
21
+ export declare function buildObservationTree(observations: Observation[]): ObservationTreeNode[];
22
+ /**
23
+ * Flatten a tree structure back to an array (useful for searching/filtering)
24
+ * @param treeNodes - Root nodes of the tree
25
+ * @returns Flat array of all observations in the tree
26
+ */
27
+ export declare function flattenObservationTree(treeNodes: ObservationTreeNode[]): Observation[];
28
+ /**
29
+ * Find a node in the tree by observation ID
30
+ * @param treeNodes - Root nodes of the tree
31
+ * @param observationId - ID of the observation to find
32
+ * @returns The tree node if found, null otherwise
33
+ */
34
+ export declare function findObservationNode(treeNodes: ObservationTreeNode[], observationId: string): ObservationTreeNode | null;
35
+ /**
36
+ * Get all descendant observation IDs for a given node
37
+ * @param node - The tree node
38
+ * @returns Array of observation IDs (including the node itself)
39
+ */
40
+ export declare function getDescendantIds(node: ObservationTreeNode): string[];
41
+ /**
42
+ * Calculate aggregated metrics for a tree node (including all descendants)
43
+ * @param node - The tree node
44
+ * @returns Aggregated metrics (tokens, cost, duration)
45
+ */
46
+ export declare function calculateNodeMetrics(node: ObservationTreeNode): {
47
+ totalTokens: number;
48
+ totalCost: number;
49
+ totalDuration: number;
50
+ };
51
+ //# sourceMappingURL=ObservationTreeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObservationTreeBuilder.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/services/ObservationTreeBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,mBAAmB,EAAE,CAyDvF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,mBAAmB,EAAE,GAAG,WAAW,EAAE,CAUtF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,mBAAmB,EAAE,EAChC,aAAa,EAAE,MAAM,GACpB,mBAAmB,GAAG,IAAI,CAkB5B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAMpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,GAAG;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,CAyCA"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * TraceTreeService
3
+ * Service for building and manipulating observation trees
4
+ * Handles tree construction, node lookup, and metrics calculation
5
+ */
6
+ import { ObservationData, ObservationTreeNode, TraceData } from '../components/detail/types';
7
+ export declare class TraceTreeService {
8
+ /**
9
+ * Build a hierarchical tree from a flat list of observations
10
+ * Observations with parentObservationId are nested under their parent
11
+ */
12
+ static buildObservationTree(observations: ObservationData[]): ObservationTreeNode[];
13
+ /**
14
+ * Flatten a tree back to a list of observations
15
+ */
16
+ static flattenTree(tree: ObservationTreeNode[]): ObservationData[];
17
+ /**
18
+ * Find a node in the tree by observation ID
19
+ */
20
+ static findNode(tree: ObservationTreeNode[], nodeId: string): ObservationTreeNode | null;
21
+ /**
22
+ * Get all ancestor IDs for a node (for expanding path to selected node)
23
+ */
24
+ static getAncestorIds(observations: ObservationData[], nodeId: string): string[];
25
+ /**
26
+ * Calculate duration from startTime and endTime
27
+ */
28
+ static calculateDuration(startTime: string, endTime?: string): number;
29
+ /**
30
+ * Format duration in human-readable format
31
+ */
32
+ static formatDuration(ms: number): string;
33
+ /**
34
+ * Format token count
35
+ */
36
+ static formatTokens(tokens: number | undefined): string;
37
+ /**
38
+ * Format cost
39
+ */
40
+ static formatCost(cost: string | number | undefined): string;
41
+ /**
42
+ * Format date/time
43
+ */
44
+ static formatDateTime(dateStr: string): string;
45
+ /**
46
+ * Extract user message from trace input
47
+ */
48
+ static extractUserMessage(input: unknown): string;
49
+ /**
50
+ * Extract app response from trace output
51
+ */
52
+ static extractAppResponse(output: unknown): string;
53
+ /**
54
+ * Calculate trace metrics from observations
55
+ */
56
+ static calculateTraceMetrics(trace: TraceData, observations: ObservationData[]): {
57
+ totalTokens: number;
58
+ totalCost: number;
59
+ latency: number;
60
+ };
61
+ /**
62
+ * Find the first GENERATION (LLM call) observation in the tree
63
+ * Returns the observation and all ancestor IDs needed to expand to show it
64
+ */
65
+ static findFirstGeneration(observations: ObservationData[]): {
66
+ observation: ObservationData | null;
67
+ ancestorIds: string[];
68
+ };
69
+ /**
70
+ * Get the first root observation and its ID
71
+ * Used for auto-expanding the first observation
72
+ */
73
+ static getFirstObservation(observations: ObservationData[]): ObservationData | null;
74
+ /**
75
+ * Get IDs that should be expanded to show the first LLM call
76
+ * This includes the first observation and all ancestors of the first GENERATION
77
+ */
78
+ static getAutoExpandIds(observations: ObservationData[]): Set<string>;
79
+ /**
80
+ * Truncate string with ellipsis
81
+ */
82
+ static truncate(str: string, maxLength: number): string;
83
+ /**
84
+ * Pretty print JSON
85
+ */
86
+ static prettyJSON(value: unknown): string;
87
+ /**
88
+ * Parse a value that might be a JSON string into its proper type
89
+ * Handles: JSON strings → objects/arrays, already-parsed values, plain strings
90
+ * Also handles double-stringified JSON (tries up to 2 levels of parsing)
91
+ * Example: '"{\"key\":\"value\"}"' → {key: "value"}
92
+ */
93
+ static parseJsonField(value: unknown): unknown;
94
+ /**
95
+ * Normalize observation data by parsing JSON string fields
96
+ * Ensures input, output, and metadata are properly parsed
97
+ * Use this for both API responses and parent data
98
+ */
99
+ static normalizeObservationData<T extends {
100
+ input?: unknown;
101
+ output?: unknown;
102
+ metadata?: unknown;
103
+ }>(data: T): T;
104
+ }
105
+ //# sourceMappingURL=TraceTreeService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TraceTreeService.d.ts","sourceRoot":"","sources":["../../../../src/features/tracing/services/TraceTreeService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE7F,qBAAa,gBAAgB;IAC3B;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,mBAAmB,EAAE;IAoFnF;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE;IAclE;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAaxF;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAiBhF;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAKrE;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAazC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;IAQvD;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM;IAU5D;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAY9C;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAiBjD;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM;IAiBlD;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG;QAC/E,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB;IA2BD;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG;QAC3D,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;QACpC,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;IAeD;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,eAAe,GAAG,IAAI;IAiBnF;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;IAgBrE;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAMvD;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAazC;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IA8B9C;;;;OAIG;IACH,MAAM,CAAC,wBAAwB,CAAC,CAAC,SAAS;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EACjG,IAAI,EAAE,CAAC,GACN,CAAC;CAUL"}