@agentmark-ai/ui-components 0.3.5 → 0.4.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/dist/index.d.mts CHANGED
@@ -17,6 +17,222 @@ import { FormControlProps } from '@mui/material/FormControl';
17
17
  import { SliderProps } from '@mui/material';
18
18
  import { FormControlLabelProps } from '@mui/material/FormControlLabel';
19
19
 
20
+ /**
21
+ * Experiment Types
22
+ *
23
+ * Type definitions for experiment UI components.
24
+ * These types are the canonical source — the dashboard re-exports them.
25
+ */
26
+ /** Score on a single experiment item */
27
+ interface ExperimentItemScore {
28
+ name: string;
29
+ score: number;
30
+ label: string;
31
+ reason: string;
32
+ }
33
+ /** Summary for list views (from analytics) */
34
+ interface ExperimentSummary {
35
+ id: string;
36
+ name: string;
37
+ datasetPath: string;
38
+ promptName: string;
39
+ start: string;
40
+ end: string;
41
+ itemCount: number;
42
+ avgLatencyMs: number;
43
+ totalCost: number;
44
+ totalTokens: number;
45
+ avgScore: number | null;
46
+ }
47
+ /** Single item in experiment */
48
+ interface ExperimentItemSummary {
49
+ traceId: string;
50
+ itemName: string;
51
+ expectedOutput: string;
52
+ input: string;
53
+ output: string;
54
+ latencyMs: number;
55
+ cost: number;
56
+ tokens: number;
57
+ model: string;
58
+ scores: ExperimentItemScore[];
59
+ }
60
+ /** Full detail with all items */
61
+ interface ExperimentDetail extends ExperimentSummary {
62
+ items: ExperimentItemSummary[];
63
+ }
64
+ /** Data for one experiment's version of a dataset item in the comparison */
65
+ interface ComparisonItemData {
66
+ traceId: string;
67
+ output: string;
68
+ input: string;
69
+ expectedOutput: string;
70
+ latencyMs: number;
71
+ cost: number;
72
+ tokens: number;
73
+ model: string;
74
+ scores: ExperimentItemScore[];
75
+ }
76
+ /** Score difference between baseline and comparison experiment for a specific score name */
77
+ interface ScoreDelta {
78
+ scoreName: string;
79
+ baselineValue: number;
80
+ comparisonValue: number;
81
+ delta: number;
82
+ status: 'improved' | 'regressed' | 'unchanged';
83
+ }
84
+ /** One row in the comparison table */
85
+ interface ComparisonRow {
86
+ itemName: string;
87
+ experiments: Record<string, ComparisonItemData | null>;
88
+ scoreDeltas: ScoreDelta[];
89
+ }
90
+ /** Summary statistics for the comparison */
91
+ interface ComparisonSummary {
92
+ totalItems: number;
93
+ overlappingItems: number;
94
+ improved: number;
95
+ regressed: number;
96
+ unchanged: number;
97
+ unscored: number;
98
+ }
99
+ /** A segment of a word-level diff output */
100
+ interface DiffSegment {
101
+ value: string;
102
+ added?: boolean;
103
+ removed?: boolean;
104
+ }
105
+ /** Sort options for the comparison table */
106
+ type ComparisonSortMode = 'item-name' | 'regressions-first' | 'improvements-first' | 'delta-abs';
107
+
108
+ interface ExperimentDetailViewProps {
109
+ experiment: ExperimentDetail | null;
110
+ isLoading: boolean;
111
+ t: (key: string) => string;
112
+ onTraceClick?: (traceId: string) => void;
113
+ chartsSlot?: React.ReactNode;
114
+ headerSlot?: React.ReactNode;
115
+ }
116
+ declare const ExperimentDetailView: ({ experiment, isLoading, t, onTraceClick, chartsSlot, headerSlot, }: ExperimentDetailViewProps) => react_jsx_runtime.JSX.Element;
117
+
118
+ interface ExperimentSummaryCardProps {
119
+ experiment: ExperimentSummary;
120
+ t: (key: string) => string;
121
+ }
122
+ declare const ExperimentSummaryCard: ({ experiment, t, }: ExperimentSummaryCardProps) => react_jsx_runtime.JSX.Element;
123
+
124
+ interface ExperimentItemsTableProps {
125
+ items: ExperimentItemSummary[];
126
+ t: (key: string) => string;
127
+ onTraceClick?: (traceId: string) => void;
128
+ }
129
+ declare const ExperimentItemsTable: ({ items, t, onTraceClick }: ExperimentItemsTableProps) => react_jsx_runtime.JSX.Element;
130
+
131
+ interface ExperimentComparisonProps {
132
+ rows: ComparisonRow[];
133
+ experimentNames: Record<string, string>;
134
+ experimentIds: string[];
135
+ summary: ComparisonSummary | null;
136
+ isLoading: boolean;
137
+ t: (key: string) => string;
138
+ headerSlot?: React.ReactNode;
139
+ }
140
+ declare const ExperimentComparison: ({ rows, experimentNames, experimentIds, summary, isLoading, t, headerSlot, }: ExperimentComparisonProps) => react_jsx_runtime.JSX.Element;
141
+
142
+ interface ComparisonTableProps {
143
+ rows: ComparisonRow[];
144
+ experimentNames: Record<string, string>;
145
+ experimentIds: string[];
146
+ sortMode: ComparisonSortMode;
147
+ onSortModeChange: (mode: ComparisonSortMode) => void;
148
+ t: (key: string) => string;
149
+ }
150
+ declare const ComparisonTable: ({ rows, experimentNames, experimentIds, sortMode, onSortModeChange, t, }: ComparisonTableProps) => react_jsx_runtime.JSX.Element;
151
+
152
+ /**
153
+ * ComparisonDiffView Component
154
+ *
155
+ * Renders an inline word-level text diff between two experiment outputs.
156
+ */
157
+ interface ComparisonDiffViewProps {
158
+ baselineOutput: string;
159
+ comparisonOutput: string;
160
+ baselineName: string;
161
+ comparisonName: string;
162
+ t: (key: string) => string;
163
+ }
164
+ declare function ComparisonDiffView({ baselineOutput, comparisonOutput, baselineName, comparisonName, t, }: ComparisonDiffViewProps): react_jsx_runtime.JSX.Element;
165
+
166
+ interface ComparisonSummaryBannerProps {
167
+ summary: ComparisonSummary;
168
+ t: (key: string) => string;
169
+ }
170
+ declare const ComparisonSummaryBanner: ({ summary, t, }: ComparisonSummaryBannerProps) => react_jsx_runtime.JSX.Element;
171
+
172
+ /**
173
+ * Comparison Utilities
174
+ *
175
+ * Pure utility functions for experiment comparison logic.
176
+ * No side effects — all functions are deterministic and testable.
177
+ */
178
+
179
+ /**
180
+ * Maps an ExperimentItemSummary to ComparisonItemData.
181
+ */
182
+ declare function toComparisonItemData(item: ExperimentItemSummary): ComparisonItemData;
183
+ /**
184
+ * Computes score deltas between baseline and comparison experiment items.
185
+ */
186
+ declare function computeScoreDeltas(baselineScores: ExperimentItemScore[], comparisonScores: ExperimentItemScore[]): ScoreDelta[];
187
+ /**
188
+ * Builds comparison rows from an array of experiment details.
189
+ */
190
+ declare function buildComparisonRows(experiments: ExperimentDetail[]): ComparisonRow[];
191
+ /**
192
+ * Computes summary statistics for a set of comparison rows.
193
+ */
194
+ declare function computeComparisonSummary(rows: ComparisonRow[], experimentIds: string[]): ComparisonSummary;
195
+ /**
196
+ * Returns a new array of comparison rows sorted by the given mode.
197
+ */
198
+ declare function sortComparisonRows(rows: ComparisonRow[], mode: ComparisonSortMode): ComparisonRow[];
199
+
200
+ /**
201
+ * ExperimentEmptyState Component
202
+ *
203
+ * Displayed when there are no experiments to show.
204
+ */
205
+ interface ExperimentEmptyStateProps {
206
+ t: (key: string) => string;
207
+ docsUrl?: string;
208
+ }
209
+ declare const ExperimentEmptyState: ({ t, docsUrl }: ExperimentEmptyStateProps) => react_jsx_runtime.JSX.Element;
210
+
211
+ interface ExperimentsFilterOptions {
212
+ promptNames: string[];
213
+ datasetPaths: string[];
214
+ }
215
+ interface ExperimentsListProps {
216
+ experiments: ExperimentSummary[];
217
+ total: number;
218
+ isLoading: boolean;
219
+ error?: Error | null;
220
+ filterOptions: ExperimentsFilterOptions;
221
+ promptNameFilter: string | null;
222
+ onPromptNameFilterChange: (value: string | null) => void;
223
+ datasetPathFilter: string | null;
224
+ onDatasetPathFilterChange: (value: string | null) => void;
225
+ onExperimentClick: (experimentId: string) => void;
226
+ onCompare?: (experimentIds: string[]) => void;
227
+ onPageChange?: (page: number, rowsPerPage: number) => void;
228
+ onSelectionChange?: (selectedExperiments: ExperimentSummary[]) => void;
229
+ t: (key: string) => string;
230
+ actionsSlot?: React.ReactNode;
231
+ chartsSlot?: React.ReactNode;
232
+ emptyStateDocsUrl?: string;
233
+ }
234
+ declare const ExperimentsList: ({ experiments, total, isLoading, error, filterOptions, promptNameFilter, onPromptNameFilterChange, datasetPathFilter, onDatasetPathFilterChange, onExperimentClick, onCompare, onPageChange, onSelectionChange, t, actionsSlot, chartsSlot, emptyStateDocsUrl, }: ExperimentsListProps) => react_jsx_runtime.JSX.Element;
235
+
20
236
  type Request = {
21
237
  id: string;
22
238
  tenant_id: string;
@@ -228,6 +444,7 @@ interface Trace {
228
444
  tokens: string;
229
445
  start: string;
230
446
  end: string;
447
+ spanCount: number;
231
448
  }
232
449
 
233
450
  interface TraceListItemProps {
@@ -302,8 +519,8 @@ declare function getBranchColor(branchFamily: string, theme: Theme): string;
302
519
  declare function calculateBranchFamilies(nodes: Node[], edges: Edge[]): Map<string, string>;
303
520
 
304
521
  declare const NODE_DIMENSIONS: {
305
- readonly width: 160;
306
- readonly height: 60;
522
+ readonly width: 220;
523
+ readonly height: 80;
307
524
  };
308
525
  interface LayoutResult {
309
526
  nodes: Node[];
@@ -1050,4 +1267,4 @@ declare function JsonEditor({ defaultValue, onChange, value, }: {
1050
1267
  value?: string;
1051
1268
  }): react_jsx_runtime.JSX.Element;
1052
1269
 
1053
- export { AddAnnotationDialog, AddAnnotations, AttributesTab, AttributesViewer, DataGrid, EmptyContent, EvaluationList, EvaluationProvider, EvaluationTab, FormProvider, Iconify, InputOutputTab, JsonEditor, type LLMPrompt, type LLMText, Label, type LabelColor, type LabelProps, type LabelVariant, type LayoutResult, NODE_DIMENSIONS, type NodeGroup, type NodeTypeStyle, OutputDisplay, PromptList, RHFJsonEditor, RHFMultiSelect, RHFSelect, RHFSlider, RHFSwitch, RHFTextField, type Request, RequestTable, type RequestTableProps, Requests, type ScoreData, type Session, type SessionData, SessionsList, type SessionsListProps, type SpanData, type SpanForGrouping, SpanInfoContent, SpanInfoHeader, SpanInfoProvider, SpanInfoTabs, SpanInfoTitle, TIMELINE_CONSTANTS, TableEmptyRows, TableHeadCustom, TablePaginationCustom, type TableProps, TableSelectedAction, TableSkeleton, TimelineBar, type TimelineBarLayout, type TimelineBarProps, TimelineErrorBoundary, TimelineLegend, type TimelineLegendProps, type TimelineMetrics, TimelineRuler, type TimelineRulerProps, type TimelineRulerTick, TimelineTooltip, type TimelineTooltipProps, type TimelineViewState, type Trace, type TraceData, TraceDrawer, TraceDrawerCloseButton, TraceDrawerContainer, TraceDrawerContent, type TraceDrawerContextValue, TraceDrawerHeader, TraceDrawerMain, TraceDrawerProvider, type TraceDrawerProviderProps, TraceDrawerSidebar, TraceDrawerSidebarSectionResizer, TraceDrawerSubtitle, TraceDrawerTitle, TraceGraphCanvas, type TraceGraphCanvasProps, TraceInfoSkeleton, TraceLabel, type TraceListContextValue, TraceListItem, TraceListProvider, TraceTimeline, type TraceTimelineProps, TraceTree, TraceTreeItem, type TraceViewType, TracesList, type TracesListProps, type UseTimelineLayoutResult, type UseTimelineZoomResult, type WorkflowNodeType, applyDagreLayout, calculateBranchFamilies, computeTimelineLayout, formatDuration, getBranchColor, getDisplayName, getNodeTypeStyle, groupSpansByKey, hasChildSpans, inferNodeType, makeGroupKey, useEvaluationContext, useSpanInfoContext, useTable, useTimelineLayout, useTimelineViewPreference, useTimelineZoom, useTraceDrawer, useTraceDrawerContext, useTraceListContext };
1270
+ export { AddAnnotationDialog, AddAnnotations, AttributesTab, AttributesViewer, ComparisonDiffView, type ComparisonDiffViewProps, type ComparisonItemData, type ComparisonRow, type ComparisonSortMode, type ComparisonSummary, ComparisonSummaryBanner, type ComparisonSummaryBannerProps, ComparisonTable, type ComparisonTableProps, DataGrid, type DiffSegment, EmptyContent, EvaluationList, EvaluationProvider, EvaluationTab, ExperimentComparison, type ExperimentComparisonProps, type ExperimentDetail, ExperimentDetailView, type ExperimentDetailViewProps, ExperimentEmptyState, type ExperimentEmptyStateProps, type ExperimentItemScore, type ExperimentItemSummary, ExperimentItemsTable, type ExperimentItemsTableProps, type ExperimentSummary, ExperimentSummaryCard, type ExperimentSummaryCardProps, type ExperimentsFilterOptions, ExperimentsList, type ExperimentsListProps, FormProvider, Iconify, InputOutputTab, JsonEditor, type LLMPrompt, type LLMText, Label, type LabelColor, type LabelProps, type LabelVariant, type LayoutResult, NODE_DIMENSIONS, type NodeGroup, type NodeTypeStyle, OutputDisplay, PromptList, RHFJsonEditor, RHFMultiSelect, RHFSelect, RHFSlider, RHFSwitch, RHFTextField, type Request, RequestTable, type RequestTableProps, Requests, type ScoreData, type ScoreDelta, type Session, type SessionData, SessionsList, type SessionsListProps, type SpanData, type SpanForGrouping, SpanInfoContent, SpanInfoHeader, SpanInfoProvider, SpanInfoTabs, SpanInfoTitle, TIMELINE_CONSTANTS, TableEmptyRows, TableHeadCustom, TablePaginationCustom, type TableProps, TableSelectedAction, TableSkeleton, TimelineBar, type TimelineBarLayout, type TimelineBarProps, TimelineErrorBoundary, TimelineLegend, type TimelineLegendProps, type TimelineMetrics, TimelineRuler, type TimelineRulerProps, type TimelineRulerTick, TimelineTooltip, type TimelineTooltipProps, type TimelineViewState, type Trace, type TraceData, TraceDrawer, TraceDrawerCloseButton, TraceDrawerContainer, TraceDrawerContent, type TraceDrawerContextValue, TraceDrawerHeader, TraceDrawerMain, TraceDrawerProvider, type TraceDrawerProviderProps, TraceDrawerSidebar, TraceDrawerSidebarSectionResizer, TraceDrawerSubtitle, TraceDrawerTitle, TraceGraphCanvas, type TraceGraphCanvasProps, TraceInfoSkeleton, TraceLabel, type TraceListContextValue, TraceListItem, TraceListProvider, TraceTimeline, type TraceTimelineProps, TraceTree, TraceTreeItem, type TraceViewType, TracesList, type TracesListProps, type UseTimelineLayoutResult, type UseTimelineZoomResult, type WorkflowNodeType, applyDagreLayout, buildComparisonRows, calculateBranchFamilies, computeComparisonSummary, computeScoreDeltas, computeTimelineLayout, formatDuration, getBranchColor, getDisplayName, getNodeTypeStyle, groupSpansByKey, hasChildSpans, inferNodeType, makeGroupKey, sortComparisonRows, toComparisonItemData, useEvaluationContext, useSpanInfoContext, useTable, useTimelineLayout, useTimelineViewPreference, useTimelineZoom, useTraceDrawer, useTraceDrawerContext, useTraceListContext };
package/dist/index.d.ts CHANGED
@@ -17,6 +17,222 @@ import { FormControlProps } from '@mui/material/FormControl';
17
17
  import { SliderProps } from '@mui/material';
18
18
  import { FormControlLabelProps } from '@mui/material/FormControlLabel';
19
19
 
20
+ /**
21
+ * Experiment Types
22
+ *
23
+ * Type definitions for experiment UI components.
24
+ * These types are the canonical source — the dashboard re-exports them.
25
+ */
26
+ /** Score on a single experiment item */
27
+ interface ExperimentItemScore {
28
+ name: string;
29
+ score: number;
30
+ label: string;
31
+ reason: string;
32
+ }
33
+ /** Summary for list views (from analytics) */
34
+ interface ExperimentSummary {
35
+ id: string;
36
+ name: string;
37
+ datasetPath: string;
38
+ promptName: string;
39
+ start: string;
40
+ end: string;
41
+ itemCount: number;
42
+ avgLatencyMs: number;
43
+ totalCost: number;
44
+ totalTokens: number;
45
+ avgScore: number | null;
46
+ }
47
+ /** Single item in experiment */
48
+ interface ExperimentItemSummary {
49
+ traceId: string;
50
+ itemName: string;
51
+ expectedOutput: string;
52
+ input: string;
53
+ output: string;
54
+ latencyMs: number;
55
+ cost: number;
56
+ tokens: number;
57
+ model: string;
58
+ scores: ExperimentItemScore[];
59
+ }
60
+ /** Full detail with all items */
61
+ interface ExperimentDetail extends ExperimentSummary {
62
+ items: ExperimentItemSummary[];
63
+ }
64
+ /** Data for one experiment's version of a dataset item in the comparison */
65
+ interface ComparisonItemData {
66
+ traceId: string;
67
+ output: string;
68
+ input: string;
69
+ expectedOutput: string;
70
+ latencyMs: number;
71
+ cost: number;
72
+ tokens: number;
73
+ model: string;
74
+ scores: ExperimentItemScore[];
75
+ }
76
+ /** Score difference between baseline and comparison experiment for a specific score name */
77
+ interface ScoreDelta {
78
+ scoreName: string;
79
+ baselineValue: number;
80
+ comparisonValue: number;
81
+ delta: number;
82
+ status: 'improved' | 'regressed' | 'unchanged';
83
+ }
84
+ /** One row in the comparison table */
85
+ interface ComparisonRow {
86
+ itemName: string;
87
+ experiments: Record<string, ComparisonItemData | null>;
88
+ scoreDeltas: ScoreDelta[];
89
+ }
90
+ /** Summary statistics for the comparison */
91
+ interface ComparisonSummary {
92
+ totalItems: number;
93
+ overlappingItems: number;
94
+ improved: number;
95
+ regressed: number;
96
+ unchanged: number;
97
+ unscored: number;
98
+ }
99
+ /** A segment of a word-level diff output */
100
+ interface DiffSegment {
101
+ value: string;
102
+ added?: boolean;
103
+ removed?: boolean;
104
+ }
105
+ /** Sort options for the comparison table */
106
+ type ComparisonSortMode = 'item-name' | 'regressions-first' | 'improvements-first' | 'delta-abs';
107
+
108
+ interface ExperimentDetailViewProps {
109
+ experiment: ExperimentDetail | null;
110
+ isLoading: boolean;
111
+ t: (key: string) => string;
112
+ onTraceClick?: (traceId: string) => void;
113
+ chartsSlot?: React.ReactNode;
114
+ headerSlot?: React.ReactNode;
115
+ }
116
+ declare const ExperimentDetailView: ({ experiment, isLoading, t, onTraceClick, chartsSlot, headerSlot, }: ExperimentDetailViewProps) => react_jsx_runtime.JSX.Element;
117
+
118
+ interface ExperimentSummaryCardProps {
119
+ experiment: ExperimentSummary;
120
+ t: (key: string) => string;
121
+ }
122
+ declare const ExperimentSummaryCard: ({ experiment, t, }: ExperimentSummaryCardProps) => react_jsx_runtime.JSX.Element;
123
+
124
+ interface ExperimentItemsTableProps {
125
+ items: ExperimentItemSummary[];
126
+ t: (key: string) => string;
127
+ onTraceClick?: (traceId: string) => void;
128
+ }
129
+ declare const ExperimentItemsTable: ({ items, t, onTraceClick }: ExperimentItemsTableProps) => react_jsx_runtime.JSX.Element;
130
+
131
+ interface ExperimentComparisonProps {
132
+ rows: ComparisonRow[];
133
+ experimentNames: Record<string, string>;
134
+ experimentIds: string[];
135
+ summary: ComparisonSummary | null;
136
+ isLoading: boolean;
137
+ t: (key: string) => string;
138
+ headerSlot?: React.ReactNode;
139
+ }
140
+ declare const ExperimentComparison: ({ rows, experimentNames, experimentIds, summary, isLoading, t, headerSlot, }: ExperimentComparisonProps) => react_jsx_runtime.JSX.Element;
141
+
142
+ interface ComparisonTableProps {
143
+ rows: ComparisonRow[];
144
+ experimentNames: Record<string, string>;
145
+ experimentIds: string[];
146
+ sortMode: ComparisonSortMode;
147
+ onSortModeChange: (mode: ComparisonSortMode) => void;
148
+ t: (key: string) => string;
149
+ }
150
+ declare const ComparisonTable: ({ rows, experimentNames, experimentIds, sortMode, onSortModeChange, t, }: ComparisonTableProps) => react_jsx_runtime.JSX.Element;
151
+
152
+ /**
153
+ * ComparisonDiffView Component
154
+ *
155
+ * Renders an inline word-level text diff between two experiment outputs.
156
+ */
157
+ interface ComparisonDiffViewProps {
158
+ baselineOutput: string;
159
+ comparisonOutput: string;
160
+ baselineName: string;
161
+ comparisonName: string;
162
+ t: (key: string) => string;
163
+ }
164
+ declare function ComparisonDiffView({ baselineOutput, comparisonOutput, baselineName, comparisonName, t, }: ComparisonDiffViewProps): react_jsx_runtime.JSX.Element;
165
+
166
+ interface ComparisonSummaryBannerProps {
167
+ summary: ComparisonSummary;
168
+ t: (key: string) => string;
169
+ }
170
+ declare const ComparisonSummaryBanner: ({ summary, t, }: ComparisonSummaryBannerProps) => react_jsx_runtime.JSX.Element;
171
+
172
+ /**
173
+ * Comparison Utilities
174
+ *
175
+ * Pure utility functions for experiment comparison logic.
176
+ * No side effects — all functions are deterministic and testable.
177
+ */
178
+
179
+ /**
180
+ * Maps an ExperimentItemSummary to ComparisonItemData.
181
+ */
182
+ declare function toComparisonItemData(item: ExperimentItemSummary): ComparisonItemData;
183
+ /**
184
+ * Computes score deltas between baseline and comparison experiment items.
185
+ */
186
+ declare function computeScoreDeltas(baselineScores: ExperimentItemScore[], comparisonScores: ExperimentItemScore[]): ScoreDelta[];
187
+ /**
188
+ * Builds comparison rows from an array of experiment details.
189
+ */
190
+ declare function buildComparisonRows(experiments: ExperimentDetail[]): ComparisonRow[];
191
+ /**
192
+ * Computes summary statistics for a set of comparison rows.
193
+ */
194
+ declare function computeComparisonSummary(rows: ComparisonRow[], experimentIds: string[]): ComparisonSummary;
195
+ /**
196
+ * Returns a new array of comparison rows sorted by the given mode.
197
+ */
198
+ declare function sortComparisonRows(rows: ComparisonRow[], mode: ComparisonSortMode): ComparisonRow[];
199
+
200
+ /**
201
+ * ExperimentEmptyState Component
202
+ *
203
+ * Displayed when there are no experiments to show.
204
+ */
205
+ interface ExperimentEmptyStateProps {
206
+ t: (key: string) => string;
207
+ docsUrl?: string;
208
+ }
209
+ declare const ExperimentEmptyState: ({ t, docsUrl }: ExperimentEmptyStateProps) => react_jsx_runtime.JSX.Element;
210
+
211
+ interface ExperimentsFilterOptions {
212
+ promptNames: string[];
213
+ datasetPaths: string[];
214
+ }
215
+ interface ExperimentsListProps {
216
+ experiments: ExperimentSummary[];
217
+ total: number;
218
+ isLoading: boolean;
219
+ error?: Error | null;
220
+ filterOptions: ExperimentsFilterOptions;
221
+ promptNameFilter: string | null;
222
+ onPromptNameFilterChange: (value: string | null) => void;
223
+ datasetPathFilter: string | null;
224
+ onDatasetPathFilterChange: (value: string | null) => void;
225
+ onExperimentClick: (experimentId: string) => void;
226
+ onCompare?: (experimentIds: string[]) => void;
227
+ onPageChange?: (page: number, rowsPerPage: number) => void;
228
+ onSelectionChange?: (selectedExperiments: ExperimentSummary[]) => void;
229
+ t: (key: string) => string;
230
+ actionsSlot?: React.ReactNode;
231
+ chartsSlot?: React.ReactNode;
232
+ emptyStateDocsUrl?: string;
233
+ }
234
+ declare const ExperimentsList: ({ experiments, total, isLoading, error, filterOptions, promptNameFilter, onPromptNameFilterChange, datasetPathFilter, onDatasetPathFilterChange, onExperimentClick, onCompare, onPageChange, onSelectionChange, t, actionsSlot, chartsSlot, emptyStateDocsUrl, }: ExperimentsListProps) => react_jsx_runtime.JSX.Element;
235
+
20
236
  type Request = {
21
237
  id: string;
22
238
  tenant_id: string;
@@ -228,6 +444,7 @@ interface Trace {
228
444
  tokens: string;
229
445
  start: string;
230
446
  end: string;
447
+ spanCount: number;
231
448
  }
232
449
 
233
450
  interface TraceListItemProps {
@@ -302,8 +519,8 @@ declare function getBranchColor(branchFamily: string, theme: Theme): string;
302
519
  declare function calculateBranchFamilies(nodes: Node[], edges: Edge[]): Map<string, string>;
303
520
 
304
521
  declare const NODE_DIMENSIONS: {
305
- readonly width: 160;
306
- readonly height: 60;
522
+ readonly width: 220;
523
+ readonly height: 80;
307
524
  };
308
525
  interface LayoutResult {
309
526
  nodes: Node[];
@@ -1050,4 +1267,4 @@ declare function JsonEditor({ defaultValue, onChange, value, }: {
1050
1267
  value?: string;
1051
1268
  }): react_jsx_runtime.JSX.Element;
1052
1269
 
1053
- export { AddAnnotationDialog, AddAnnotations, AttributesTab, AttributesViewer, DataGrid, EmptyContent, EvaluationList, EvaluationProvider, EvaluationTab, FormProvider, Iconify, InputOutputTab, JsonEditor, type LLMPrompt, type LLMText, Label, type LabelColor, type LabelProps, type LabelVariant, type LayoutResult, NODE_DIMENSIONS, type NodeGroup, type NodeTypeStyle, OutputDisplay, PromptList, RHFJsonEditor, RHFMultiSelect, RHFSelect, RHFSlider, RHFSwitch, RHFTextField, type Request, RequestTable, type RequestTableProps, Requests, type ScoreData, type Session, type SessionData, SessionsList, type SessionsListProps, type SpanData, type SpanForGrouping, SpanInfoContent, SpanInfoHeader, SpanInfoProvider, SpanInfoTabs, SpanInfoTitle, TIMELINE_CONSTANTS, TableEmptyRows, TableHeadCustom, TablePaginationCustom, type TableProps, TableSelectedAction, TableSkeleton, TimelineBar, type TimelineBarLayout, type TimelineBarProps, TimelineErrorBoundary, TimelineLegend, type TimelineLegendProps, type TimelineMetrics, TimelineRuler, type TimelineRulerProps, type TimelineRulerTick, TimelineTooltip, type TimelineTooltipProps, type TimelineViewState, type Trace, type TraceData, TraceDrawer, TraceDrawerCloseButton, TraceDrawerContainer, TraceDrawerContent, type TraceDrawerContextValue, TraceDrawerHeader, TraceDrawerMain, TraceDrawerProvider, type TraceDrawerProviderProps, TraceDrawerSidebar, TraceDrawerSidebarSectionResizer, TraceDrawerSubtitle, TraceDrawerTitle, TraceGraphCanvas, type TraceGraphCanvasProps, TraceInfoSkeleton, TraceLabel, type TraceListContextValue, TraceListItem, TraceListProvider, TraceTimeline, type TraceTimelineProps, TraceTree, TraceTreeItem, type TraceViewType, TracesList, type TracesListProps, type UseTimelineLayoutResult, type UseTimelineZoomResult, type WorkflowNodeType, applyDagreLayout, calculateBranchFamilies, computeTimelineLayout, formatDuration, getBranchColor, getDisplayName, getNodeTypeStyle, groupSpansByKey, hasChildSpans, inferNodeType, makeGroupKey, useEvaluationContext, useSpanInfoContext, useTable, useTimelineLayout, useTimelineViewPreference, useTimelineZoom, useTraceDrawer, useTraceDrawerContext, useTraceListContext };
1270
+ export { AddAnnotationDialog, AddAnnotations, AttributesTab, AttributesViewer, ComparisonDiffView, type ComparisonDiffViewProps, type ComparisonItemData, type ComparisonRow, type ComparisonSortMode, type ComparisonSummary, ComparisonSummaryBanner, type ComparisonSummaryBannerProps, ComparisonTable, type ComparisonTableProps, DataGrid, type DiffSegment, EmptyContent, EvaluationList, EvaluationProvider, EvaluationTab, ExperimentComparison, type ExperimentComparisonProps, type ExperimentDetail, ExperimentDetailView, type ExperimentDetailViewProps, ExperimentEmptyState, type ExperimentEmptyStateProps, type ExperimentItemScore, type ExperimentItemSummary, ExperimentItemsTable, type ExperimentItemsTableProps, type ExperimentSummary, ExperimentSummaryCard, type ExperimentSummaryCardProps, type ExperimentsFilterOptions, ExperimentsList, type ExperimentsListProps, FormProvider, Iconify, InputOutputTab, JsonEditor, type LLMPrompt, type LLMText, Label, type LabelColor, type LabelProps, type LabelVariant, type LayoutResult, NODE_DIMENSIONS, type NodeGroup, type NodeTypeStyle, OutputDisplay, PromptList, RHFJsonEditor, RHFMultiSelect, RHFSelect, RHFSlider, RHFSwitch, RHFTextField, type Request, RequestTable, type RequestTableProps, Requests, type ScoreData, type ScoreDelta, type Session, type SessionData, SessionsList, type SessionsListProps, type SpanData, type SpanForGrouping, SpanInfoContent, SpanInfoHeader, SpanInfoProvider, SpanInfoTabs, SpanInfoTitle, TIMELINE_CONSTANTS, TableEmptyRows, TableHeadCustom, TablePaginationCustom, type TableProps, TableSelectedAction, TableSkeleton, TimelineBar, type TimelineBarLayout, type TimelineBarProps, TimelineErrorBoundary, TimelineLegend, type TimelineLegendProps, type TimelineMetrics, TimelineRuler, type TimelineRulerProps, type TimelineRulerTick, TimelineTooltip, type TimelineTooltipProps, type TimelineViewState, type Trace, type TraceData, TraceDrawer, TraceDrawerCloseButton, TraceDrawerContainer, TraceDrawerContent, type TraceDrawerContextValue, TraceDrawerHeader, TraceDrawerMain, TraceDrawerProvider, type TraceDrawerProviderProps, TraceDrawerSidebar, TraceDrawerSidebarSectionResizer, TraceDrawerSubtitle, TraceDrawerTitle, TraceGraphCanvas, type TraceGraphCanvasProps, TraceInfoSkeleton, TraceLabel, type TraceListContextValue, TraceListItem, TraceListProvider, TraceTimeline, type TraceTimelineProps, TraceTree, TraceTreeItem, type TraceViewType, TracesList, type TracesListProps, type UseTimelineLayoutResult, type UseTimelineZoomResult, type WorkflowNodeType, applyDagreLayout, buildComparisonRows, calculateBranchFamilies, computeComparisonSummary, computeScoreDeltas, computeTimelineLayout, formatDuration, getBranchColor, getDisplayName, getNodeTypeStyle, groupSpansByKey, hasChildSpans, inferNodeType, makeGroupKey, sortComparisonRows, toComparisonItemData, useEvaluationContext, useSpanInfoContext, useTable, useTimelineLayout, useTimelineViewPreference, useTimelineZoom, useTraceDrawer, useTraceDrawerContext, useTraceListContext };