@copilotkit/web-inspector 1.56.5 → 1.57.0-canary.1778078321

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
@@ -1,9 +1,230 @@
1
1
  import * as lit from "lit";
2
- import { LitElement } from "lit";
3
- import { CopilotKitCore } from "@copilotkit/core";
2
+ import { LitElement, TemplateResult } from "lit";
3
+ import { CopilotKitCore, ɵThread } from "@copilotkit/core";
4
4
 
5
5
  //#region src/index.d.ts
6
6
  declare const WEB_INSPECTOR_TAG: "cpk-web-inspector";
7
+ interface ApiAgentEvent {
8
+ type: string;
9
+ timestamp: string | number;
10
+ payload: Record<string, unknown>;
11
+ }
12
+ declare class ɵCpkThreadDetails extends LitElement {
13
+ static properties: {
14
+ threadId: {
15
+ attribute: boolean;
16
+ };
17
+ thread: {
18
+ attribute: boolean;
19
+ };
20
+ runtimeUrl: {
21
+ attribute: boolean;
22
+ };
23
+ headers: {
24
+ attribute: boolean;
25
+ };
26
+ agentStateInput: {
27
+ attribute: boolean;
28
+ };
29
+ agentEventsInput: {
30
+ attribute: boolean;
31
+ };
32
+ liveMessageVersion: {
33
+ attribute: boolean;
34
+ };
35
+ _tab: {
36
+ state: boolean;
37
+ };
38
+ _conversation: {
39
+ state: boolean;
40
+ };
41
+ _fetchedEvents: {
42
+ state: boolean;
43
+ };
44
+ _fetchedState: {
45
+ state: boolean;
46
+ };
47
+ _loadingMessages: {
48
+ state: boolean;
49
+ };
50
+ _loadingEvents: {
51
+ state: boolean;
52
+ };
53
+ _loadingState: {
54
+ state: boolean;
55
+ };
56
+ _messagesError: {
57
+ state: boolean;
58
+ };
59
+ _eventsError: {
60
+ state: boolean;
61
+ };
62
+ _stateError: {
63
+ state: boolean;
64
+ };
65
+ _expandedTools: {
66
+ state: boolean;
67
+ };
68
+ _expandedMessages: {
69
+ state: boolean;
70
+ };
71
+ _showDetailPanel: {
72
+ state: boolean;
73
+ };
74
+ _detailPanelWidth: {
75
+ state: boolean;
76
+ };
77
+ _eventsNotAvailable: {
78
+ state: boolean;
79
+ };
80
+ _stateNotAvailable: {
81
+ state: boolean;
82
+ };
83
+ _panelInitializing: {
84
+ state: boolean;
85
+ };
86
+ _activatedTabs: {
87
+ state: boolean;
88
+ };
89
+ };
90
+ threadId: string | null;
91
+ thread: ɵThread | null;
92
+ runtimeUrl: string;
93
+ headers: Record<string, string>;
94
+ agentStateInput: Record<string, unknown> | null;
95
+ agentEventsInput: ApiAgentEvent[];
96
+ /**
97
+ * Monotonic per-thread counter the parent inspector ticks every time the
98
+ * agent currently running on this thread emits a message change. When this
99
+ * prop changes for the same `threadId`, we re-fetch `/threads/:id/messages`
100
+ * so the conversation view reflects live streaming output.
101
+ */
102
+ liveMessageVersion: number;
103
+ private _tab;
104
+ private _conversation;
105
+ private _fetchedEvents;
106
+ private _fetchedState;
107
+ private _loadingMessages;
108
+ private _loadingEvents;
109
+ private _loadingState;
110
+ private _messagesError;
111
+ private _eventsError;
112
+ private _stateError;
113
+ private _expandedTools;
114
+ private _expandedMessages;
115
+ private _showDetailPanel;
116
+ private _detailPanelWidth;
117
+ /** True when the /events endpoint returned 501 — don't fall back to live data. */
118
+ private _eventsNotAvailable;
119
+ /** True when the /state endpoint returned 501 — don't fall back to live data. */
120
+ private _stateNotAvailable;
121
+ /**
122
+ * Briefly true after a tab switch so the active-tab highlight + a generic
123
+ * "Loading…" placeholder paint before the heavy per-tab render runs. Without
124
+ * this, large event/conversation lists block the next paint and the user
125
+ * sees the click as unresponsive for seconds.
126
+ */
127
+ private _panelInitializing;
128
+ /**
129
+ * Tabs that have been opened at least once for the current thread. Once a
130
+ * tab is activated, its rendered DOM stays mounted (we hide inactive tabs
131
+ * via display:none) so flipping back to it is just a CSS swap rather than
132
+ * tearing down and rebuilding the entire panel from scratch. Without this,
133
+ * switching back to AG-UI Events on a thread with hundreds of events
134
+ * triggers a multi-second DOM-creation pass each time.
135
+ *
136
+ * Reset to {"conversation"} when the selected thread changes.
137
+ */
138
+ private _activatedTabs;
139
+ /**
140
+ * Memoized per-panel templates keyed by the inputs they render from.
141
+ * When the underlying data hasn't changed (same `_conversation` /
142
+ * `_fetchedState` / events array reference, plus expand-state for the
143
+ * conversation panel), we return the previously built TemplateResult.
144
+ * Lit then sees "same template, same values" and skips the diff entirely,
145
+ * so re-rendering on tab switch is near-zero work even when the panel
146
+ * content is large. The key is an opaque tuple compared element-wise by
147
+ * reference; if any element flips, the cache misses and rebuilds.
148
+ */
149
+ private _panelTplCache;
150
+ /**
151
+ * Tracks whether we've fetched events for the current thread yet. Events
152
+ * fetch lazily on first sub-tab click so a large response's JSON.parse
153
+ * doesn't block the main thread when the user only ever cares about the
154
+ * conversation.
155
+ */
156
+ private _eventsFetched;
157
+ /**
158
+ * Tracks whether we've fetched state for the current thread yet. Same
159
+ * lazy-load reasoning as `_eventsFetched`.
160
+ */
161
+ private _stateFetched;
162
+ private _lastFetchedThreadId;
163
+ private _lastSeenLiveMessageVersion;
164
+ private _messagesAbort;
165
+ private _eventsAbort;
166
+ private _stateAbort;
167
+ private _dividerResizing;
168
+ private _dividerPointerId;
169
+ private _dividerStartX;
170
+ private _dividerStartWidth;
171
+ static readonly COLLAPSE_THRESHOLD = 800;
172
+ private static readonly TAB_LIST;
173
+ private renderTabContent;
174
+ private activateTab;
175
+ private maybeFetchTabData;
176
+ static styles: lit.CSSResult;
177
+ updated(_changed: Map<string, unknown>): void;
178
+ /**
179
+ * Fetch the canonical conversation for `threadId` from the runtime.
180
+ *
181
+ * `silent` is true for live re-fetches triggered by `liveMessageVersion`
182
+ * bumps during streaming. In that mode we never toggle the loading state
183
+ * (which would flash "Loading messages…" between every message) and we
184
+ * keep the previous conversation on transient errors instead of blanking
185
+ * it. Initial threadId-change fetches use the default (`silent=false`)
186
+ * so users see an explicit loading indicator on first load.
187
+ */
188
+ private fetchMessages;
189
+ private fetchEvents;
190
+ private fetchState;
191
+ private mapMessages;
192
+ private mapApiEvents;
193
+ private get renderItems();
194
+ private get activityCounts();
195
+ private get duration();
196
+ private toggleToolExpand;
197
+ private toggleMessageExpand;
198
+ private get activeEvents();
199
+ private get activeState();
200
+ private hasRenderableState;
201
+ private shortId;
202
+ private fmtTime;
203
+ private onDetailDividerDown;
204
+ private onDetailDividerMove;
205
+ private onDetailDividerUp;
206
+ render(): TemplateResult<1>;
207
+ private renderConversation;
208
+ /**
209
+ * Memoize the rendered TemplateResult for `slot` keyed by tuple
210
+ * element-wise reference equality. The hot path for tab switches: when
211
+ * the underlying data hasn't changed, return the previously built
212
+ * TemplateResult so Lit's diff short-circuits. Each panel's `key` is
213
+ * the tuple of inputs the template reads — pass everything the template
214
+ * depends on, or the cache will return stale output when those inputs
215
+ * change without the listed key flipping.
216
+ */
217
+ private cachedPanelTpl;
218
+ private renderRenderItem;
219
+ private renderBubble;
220
+ private renderToolBlock;
221
+ private renderToolGroup;
222
+ private renderGenerativeUI;
223
+ private renderState;
224
+ private renderEvents;
225
+ private renderPanelToggle;
226
+ private renderDetailPanel;
227
+ }
7
228
  declare class WebInspectorElement extends LitElement {
8
229
  static properties: {
9
230
  readonly core: {
@@ -23,6 +244,7 @@ declare class WebInspectorElement extends LitElement {
23
244
  private agentSubscriptions;
24
245
  private agentEvents;
25
246
  private agentMessages;
247
+ private liveMessageVersion;
26
248
  private agentStates;
27
249
  private flattenedEvents;
28
250
  private eventCounter;
@@ -36,6 +258,17 @@ declare class WebInspectorElement extends LitElement {
36
258
  private draggedDuringInteraction;
37
259
  private ignoreNextButtonClick;
38
260
  private selectedMenu;
261
+ private selectedThreadId;
262
+ private threadListWidth;
263
+ private threadDividerResizing;
264
+ private threadDividerPointerId;
265
+ private threadDividerStartX;
266
+ private threadDividerStartWidth;
267
+ private _threads;
268
+ private _threadStoreSubscriptions;
269
+ private _threadsByAgent;
270
+ private _threadsErrorByAgent;
271
+ private _ownedThreadStores;
39
272
  private contextMenuOpen;
40
273
  private dockMode;
41
274
  private previousBodyMargins;
@@ -48,15 +281,16 @@ declare class WebInspectorElement extends LitElement {
48
281
  private toolSignature;
49
282
  private eventFilterText;
50
283
  private eventTypeFilter;
51
- private announcementMarkdown;
284
+ private evtColWidths;
285
+ private _evtColResize;
52
286
  private announcementHtml;
53
287
  private announcementTimestamp;
54
288
  private announcementPreviewText;
55
289
  private hasUnseenAnnouncement;
56
290
  private announcementLoaded;
57
- private announcementLoadError;
58
291
  private announcementPromise;
59
292
  private showAnnouncementPreview;
293
+ private announcementExpanded;
60
294
  get core(): CopilotKitCore | null;
61
295
  set core(value: CopilotKitCore | null);
62
296
  private readonly contextState;
@@ -65,7 +299,15 @@ declare class WebInspectorElement extends LitElement {
65
299
  private resizeStart;
66
300
  private resizeInitialSize;
67
301
  private isResizing;
68
- private readonly menuItems;
302
+ private readonly customTabIcons;
303
+ private get menuItems();
304
+ private subscribeToThreadStore;
305
+ private autoSelectLatestThread;
306
+ private teardownThreadStoreSubscriptions;
307
+ private ensureOwnedThreadStore;
308
+ private refreshOwnedThreadStore;
309
+ private removeOwnedThreadStore;
310
+ private teardownOwnedThreadStores;
69
311
  private attachToCore;
70
312
  private detachFromCore;
71
313
  private teardownAgentSubscriptions;
@@ -74,6 +316,7 @@ declare class WebInspectorElement extends LitElement {
74
316
  private tryAutoAttachCore;
75
317
  private subscribeToAgent;
76
318
  private unsubscribeFromAgent;
319
+ private mapMessagesToConversation;
77
320
  private recordAgentEvent;
78
321
  private syncAgentMessages;
79
322
  private syncAgentState;
@@ -94,9 +337,10 @@ declare class WebInspectorElement extends LitElement {
94
337
  private copyToClipboard;
95
338
  static styles: lit.CSSResult[];
96
339
  connectedCallback(): void;
340
+ private ensureBrandFonts;
97
341
  disconnectedCallback(): void;
98
342
  firstUpdated(): void;
99
- render(): lit.TemplateResult<1>;
343
+ render(): TemplateResult<1>;
100
344
  private renderButton;
101
345
  private renderWindow;
102
346
  private hydrateStateFromStorageEarly;
@@ -154,14 +398,20 @@ declare class WebInspectorElement extends LitElement {
154
398
  private expandedTools;
155
399
  private expandedContextItems;
156
400
  private copiedContextItems;
157
- private getSelectedMenu;
158
401
  private renderCoreWarningBanner;
159
402
  private getCoreStatusSummary;
160
403
  private renderMainContent;
404
+ private handleThreadDividerPointerDown;
405
+ private handleThreadDividerPointerMove;
406
+ private handleThreadDividerPointerUp;
407
+ private renderThreadsView;
161
408
  private renderEventsTable;
162
409
  private handleEventFilterInput;
163
410
  private handleEventTypeChange;
164
411
  private resetEventFilters;
412
+ private _onEvtColResizeStart;
413
+ private _onEvtColResizeMove;
414
+ private _onEvtColResizeEnd;
165
415
  private handleClearEvents;
166
416
  private exportEvents;
167
417
  private renderAgentsView;
@@ -184,13 +434,17 @@ declare class WebInspectorElement extends LitElement {
184
434
  private toggleContextExpansion;
185
435
  private handleGlobalPointerDown;
186
436
  private toggleRowExpansion;
187
- private renderAnnouncementPanel;
437
+ private renderAnnouncementBanner;
188
438
  private ensureAnnouncementLoading;
189
439
  private renderAnnouncementPreview;
190
440
  private handleAnnouncementPreviewClick;
191
441
  private handleDismissAnnouncement;
192
442
  private fetchAnnouncement;
193
443
  private convertMarkdownToHtml;
444
+ private copyResetTimeouts;
445
+ private encodeBase64;
446
+ private decodeBase64;
447
+ private handleAnnouncementContentClick;
194
448
  private appendRefParam;
195
449
  private escapeHtmlAttr;
196
450
  private loadStoredAnnouncementTimestamp;
@@ -202,7 +456,7 @@ declare global {
202
456
  interface HTMLElementTagNameMap {
203
457
  "cpk-web-inspector": WebInspectorElement;
204
458
  }
205
- } //# sourceMappingURL=index.d.ts.map
459
+ }
206
460
  //#endregion
207
- export { WEB_INSPECTOR_TAG, WebInspectorElement, defineWebInspector };
461
+ export { WEB_INSPECTOR_TAG, WebInspectorElement, defineWebInspector, ɵCpkThreadDetails };
208
462
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.ts"],"mappings":"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"}