@varo-ui/ai 1.0.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 +249 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +984 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +52 -0
- package/src/agent-stream.ts +284 -0
- package/src/event-channel.ts +49 -0
- package/src/event-parser.ts +159 -0
- package/src/index.ts +8 -0
- package/src/markdown-view.ts +227 -0
- package/src/markdown.ts +58 -0
- package/src/sse.ts +161 -0
- package/src/text-stream.ts +202 -0
- package/src/type-guards.ts +3 -0
- package/src/types.ts +222 -0
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import { GetMarkdownOptions, ParsedNode, ParsedNode as ParsedNode$1 } from "stream-markdown-parser";
|
|
2
|
+
|
|
3
|
+
//#region src/types.d.ts
|
|
4
|
+
type AgentMessageRole = 'assistant' | 'system' | 'user';
|
|
5
|
+
type AgentStreamStatus = 'idle' | 'streaming' | 'waiting' | 'completed' | 'failed' | 'cancelled';
|
|
6
|
+
type AgentPartStatus = 'waiting' | 'running' | 'completed' | 'failed';
|
|
7
|
+
interface AgentMessageStartEvent {
|
|
8
|
+
messageId: string;
|
|
9
|
+
role: AgentMessageRole;
|
|
10
|
+
type: 'message.start';
|
|
11
|
+
}
|
|
12
|
+
interface AgentTextDeltaEvent {
|
|
13
|
+
delta: string;
|
|
14
|
+
messageId: string;
|
|
15
|
+
type: 'text.delta';
|
|
16
|
+
}
|
|
17
|
+
interface AgentMessageEndEvent {
|
|
18
|
+
messageId: string;
|
|
19
|
+
type: 'message.end';
|
|
20
|
+
}
|
|
21
|
+
interface AgentReasoningStartEvent {
|
|
22
|
+
id: string;
|
|
23
|
+
title: string;
|
|
24
|
+
type: 'reasoning.start';
|
|
25
|
+
}
|
|
26
|
+
interface AgentReasoningDeltaEvent {
|
|
27
|
+
delta: string;
|
|
28
|
+
id: string;
|
|
29
|
+
type: 'reasoning.delta';
|
|
30
|
+
}
|
|
31
|
+
interface AgentReasoningEndEvent {
|
|
32
|
+
durationMs?: number;
|
|
33
|
+
id: string;
|
|
34
|
+
type: 'reasoning.end';
|
|
35
|
+
}
|
|
36
|
+
interface AgentToolStartEvent {
|
|
37
|
+
id: string;
|
|
38
|
+
input?: unknown;
|
|
39
|
+
name: string;
|
|
40
|
+
summary?: string;
|
|
41
|
+
type: 'tool.start';
|
|
42
|
+
}
|
|
43
|
+
interface AgentToolUpdateEvent {
|
|
44
|
+
id: string;
|
|
45
|
+
summary?: string;
|
|
46
|
+
type: 'tool.update';
|
|
47
|
+
}
|
|
48
|
+
interface AgentToolResultEvent {
|
|
49
|
+
id: string;
|
|
50
|
+
output?: unknown;
|
|
51
|
+
summary?: string;
|
|
52
|
+
type: 'tool.result';
|
|
53
|
+
}
|
|
54
|
+
interface AgentToolErrorEvent {
|
|
55
|
+
error: string;
|
|
56
|
+
id: string;
|
|
57
|
+
type: 'tool.error';
|
|
58
|
+
}
|
|
59
|
+
interface AgentApprovalRequiredEvent {
|
|
60
|
+
choices?: Array<{
|
|
61
|
+
description?: string;
|
|
62
|
+
disabled?: boolean;
|
|
63
|
+
label: string;
|
|
64
|
+
value: string;
|
|
65
|
+
}>;
|
|
66
|
+
description?: string;
|
|
67
|
+
id: string;
|
|
68
|
+
title: string;
|
|
69
|
+
type: 'approval.required';
|
|
70
|
+
}
|
|
71
|
+
interface AgentApprovalResolvedEvent {
|
|
72
|
+
id: string;
|
|
73
|
+
type: 'approval.resolved';
|
|
74
|
+
value: string;
|
|
75
|
+
}
|
|
76
|
+
interface AgentDataEvent {
|
|
77
|
+
name: string;
|
|
78
|
+
type: 'data';
|
|
79
|
+
value: unknown;
|
|
80
|
+
}
|
|
81
|
+
interface AgentErrorEvent {
|
|
82
|
+
code?: string;
|
|
83
|
+
message: string;
|
|
84
|
+
retryable?: boolean;
|
|
85
|
+
type: 'error';
|
|
86
|
+
}
|
|
87
|
+
interface AgentDoneEvent {
|
|
88
|
+
type: 'done';
|
|
89
|
+
usage?: {
|
|
90
|
+
inputTokens?: number;
|
|
91
|
+
outputTokens?: number;
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
type AgentStreamEvent = AgentMessageStartEvent | AgentTextDeltaEvent | AgentMessageEndEvent | AgentReasoningStartEvent | AgentReasoningDeltaEvent | AgentReasoningEndEvent | AgentToolStartEvent | AgentToolUpdateEvent | AgentToolResultEvent | AgentToolErrorEvent | AgentApprovalRequiredEvent | AgentApprovalResolvedEvent | AgentDataEvent | AgentErrorEvent | AgentDoneEvent;
|
|
95
|
+
interface AgentStreamMessage {
|
|
96
|
+
final: boolean;
|
|
97
|
+
id: string;
|
|
98
|
+
role: AgentMessageRole;
|
|
99
|
+
source: string;
|
|
100
|
+
visible: string;
|
|
101
|
+
}
|
|
102
|
+
interface AgentReasoningPart {
|
|
103
|
+
content: string;
|
|
104
|
+
durationMs?: number;
|
|
105
|
+
id: string;
|
|
106
|
+
status: AgentPartStatus;
|
|
107
|
+
title: string;
|
|
108
|
+
}
|
|
109
|
+
interface AgentToolPart {
|
|
110
|
+
error?: string;
|
|
111
|
+
id: string;
|
|
112
|
+
input?: unknown;
|
|
113
|
+
name: string;
|
|
114
|
+
output?: unknown;
|
|
115
|
+
status: AgentPartStatus;
|
|
116
|
+
summary?: string;
|
|
117
|
+
}
|
|
118
|
+
interface AgentApprovalPart {
|
|
119
|
+
choices: AgentApprovalRequiredEvent['choices'];
|
|
120
|
+
description?: string;
|
|
121
|
+
id: string;
|
|
122
|
+
resolvedValue?: string;
|
|
123
|
+
status: 'waiting' | 'completed';
|
|
124
|
+
title: string;
|
|
125
|
+
}
|
|
126
|
+
interface AgentDataPart {
|
|
127
|
+
name: string;
|
|
128
|
+
value: unknown;
|
|
129
|
+
}
|
|
130
|
+
interface AgentStreamSnapshot {
|
|
131
|
+
approval?: AgentApprovalPart;
|
|
132
|
+
data: AgentDataPart[];
|
|
133
|
+
error?: AgentErrorEvent;
|
|
134
|
+
eventCount: number;
|
|
135
|
+
message?: AgentStreamMessage;
|
|
136
|
+
reasoning: AgentReasoningPart[];
|
|
137
|
+
status: AgentStreamStatus;
|
|
138
|
+
tools: AgentToolPart[];
|
|
139
|
+
usage?: AgentDoneEvent['usage'];
|
|
140
|
+
}
|
|
141
|
+
interface TextStreamSnapshot {
|
|
142
|
+
caughtUp: boolean;
|
|
143
|
+
done: boolean;
|
|
144
|
+
final: boolean;
|
|
145
|
+
paused: boolean;
|
|
146
|
+
pendingChars: number;
|
|
147
|
+
source: string;
|
|
148
|
+
visible: string;
|
|
149
|
+
}
|
|
150
|
+
interface TextStreamOptions {
|
|
151
|
+
catchUpThreshold?: number;
|
|
152
|
+
maxCharsPerCommit?: number;
|
|
153
|
+
maxCharsPerSecond?: number;
|
|
154
|
+
maxCommitFps?: number;
|
|
155
|
+
minCharsPerSecond?: number;
|
|
156
|
+
targetLatencyMs?: number;
|
|
157
|
+
}
|
|
158
|
+
interface TextStreamController {
|
|
159
|
+
destroy: () => void;
|
|
160
|
+
enqueue: (chunk: string) => void;
|
|
161
|
+
finish: (options?: {
|
|
162
|
+
flush?: boolean;
|
|
163
|
+
}) => void;
|
|
164
|
+
flush: () => void;
|
|
165
|
+
getSnapshot: () => TextStreamSnapshot;
|
|
166
|
+
pause: () => void;
|
|
167
|
+
reset: (content?: string) => void;
|
|
168
|
+
resume: () => void;
|
|
169
|
+
subscribe: (listener: () => void) => () => void;
|
|
170
|
+
}
|
|
171
|
+
interface AgentStreamController {
|
|
172
|
+
cancel: (reason?: string) => void;
|
|
173
|
+
connect: (events: AsyncIterable<AgentStreamEvent>) => Promise<AgentStreamSnapshot>;
|
|
174
|
+
destroy: () => void;
|
|
175
|
+
getSnapshot: () => AgentStreamSnapshot;
|
|
176
|
+
push: (event: AgentStreamEvent) => void;
|
|
177
|
+
reset: () => void;
|
|
178
|
+
subscribe: (listener: () => void) => () => void;
|
|
179
|
+
}
|
|
180
|
+
interface AgentEventChannel {
|
|
181
|
+
end: () => void;
|
|
182
|
+
fail: (error: unknown) => void;
|
|
183
|
+
push: (event: AgentStreamEvent) => void;
|
|
184
|
+
source: AsyncIterable<AgentStreamEvent>;
|
|
185
|
+
}
|
|
186
|
+
//#endregion
|
|
187
|
+
//#region src/agent-stream.d.ts
|
|
188
|
+
interface AgentStreamControllerOptions {
|
|
189
|
+
text?: TextStreamOptions;
|
|
190
|
+
}
|
|
191
|
+
declare function createAgentStreamController(options?: AgentStreamControllerOptions): AgentStreamController;
|
|
192
|
+
//#endregion
|
|
193
|
+
//#region src/event-channel.d.ts
|
|
194
|
+
declare function createAgentEventChannel(): AgentEventChannel;
|
|
195
|
+
//#endregion
|
|
196
|
+
//#region src/event-parser.d.ts
|
|
197
|
+
declare function parseAgentStreamEvent(value: unknown): AgentStreamEvent;
|
|
198
|
+
//#endregion
|
|
199
|
+
//#region src/markdown.d.ts
|
|
200
|
+
interface StreamingMarkdownParserOptions {
|
|
201
|
+
customHtmlTags?: readonly string[];
|
|
202
|
+
enableMath?: boolean;
|
|
203
|
+
includeSourceMap?: boolean;
|
|
204
|
+
markdownItOptions?: GetMarkdownOptions['markdownItOptions'];
|
|
205
|
+
validateLink?: (url: string) => boolean;
|
|
206
|
+
}
|
|
207
|
+
interface StreamingMarkdownParser {
|
|
208
|
+
parse: (content: string, options?: {
|
|
209
|
+
final?: boolean;
|
|
210
|
+
}) => ParsedNode$1[];
|
|
211
|
+
reset: () => void;
|
|
212
|
+
}
|
|
213
|
+
declare function createStreamingMarkdownParser(options?: StreamingMarkdownParserOptions): StreamingMarkdownParser;
|
|
214
|
+
//#endregion
|
|
215
|
+
//#region src/markdown-view.d.ts
|
|
216
|
+
type AgentMarkdownNodeKind = 'admonition' | 'blockquote' | 'checkbox' | 'code-block' | 'definition' | 'definition-list' | 'emphasis' | 'footnote' | 'hardbreak' | 'heading' | 'highlight' | 'image' | 'inline-code' | 'insert' | 'link' | 'list' | 'list-item' | 'math-block' | 'math-inline' | 'paragraph' | 'strikethrough' | 'strong' | 'subscript' | 'superscript' | 'table' | 'table-cell' | 'table-row' | 'text' | 'thematic-break';
|
|
217
|
+
interface AgentMarkdownViewNode {
|
|
218
|
+
align?: 'center' | 'left' | 'right';
|
|
219
|
+
alt?: string;
|
|
220
|
+
checked?: boolean;
|
|
221
|
+
children?: AgentMarkdownViewNode[];
|
|
222
|
+
header?: boolean;
|
|
223
|
+
href?: string;
|
|
224
|
+
kind: AgentMarkdownNodeKind;
|
|
225
|
+
language?: string;
|
|
226
|
+
level?: number;
|
|
227
|
+
loading?: boolean;
|
|
228
|
+
ordered?: boolean;
|
|
229
|
+
start?: number;
|
|
230
|
+
text?: string;
|
|
231
|
+
title?: string;
|
|
232
|
+
}
|
|
233
|
+
declare function normalizeMarkdownNode(node: ParsedNode$1): AgentMarkdownViewNode;
|
|
234
|
+
declare function normalizeMarkdownNodes(nodes: ParsedNode$1[]): AgentMarkdownViewNode[];
|
|
235
|
+
//#endregion
|
|
236
|
+
//#region src/sse.d.ts
|
|
237
|
+
interface AgentSseEventSource {
|
|
238
|
+
end: () => void;
|
|
239
|
+
fail: (error: unknown) => void;
|
|
240
|
+
feed: (chunk: string | ArrayBuffer | Uint8Array) => void;
|
|
241
|
+
source: AsyncIterable<AgentStreamEvent>;
|
|
242
|
+
}
|
|
243
|
+
declare function createAgentSseEventSource(): AgentSseEventSource;
|
|
244
|
+
//#endregion
|
|
245
|
+
//#region src/text-stream.d.ts
|
|
246
|
+
declare function createTextStream(options?: TextStreamOptions): TextStreamController;
|
|
247
|
+
//#endregion
|
|
248
|
+
export { AgentApprovalPart, AgentApprovalRequiredEvent, AgentApprovalResolvedEvent, AgentDataEvent, AgentDataPart, AgentDoneEvent, AgentErrorEvent, AgentEventChannel, AgentMarkdownNodeKind, AgentMarkdownViewNode, AgentMessageEndEvent, AgentMessageRole, AgentMessageStartEvent, AgentPartStatus, AgentReasoningDeltaEvent, AgentReasoningEndEvent, AgentReasoningPart, AgentReasoningStartEvent, AgentSseEventSource, AgentStreamController, AgentStreamControllerOptions, AgentStreamEvent, AgentStreamMessage, AgentStreamSnapshot, AgentStreamStatus, AgentTextDeltaEvent, AgentToolErrorEvent, AgentToolPart, AgentToolResultEvent, AgentToolStartEvent, AgentToolUpdateEvent, type ParsedNode, StreamingMarkdownParser, StreamingMarkdownParserOptions, TextStreamController, TextStreamOptions, TextStreamSnapshot, createAgentEventChannel, createAgentSseEventSource, createAgentStreamController, createStreamingMarkdownParser, createTextStream, normalizeMarkdownNode, normalizeMarkdownNodes, parseAgentStreamEvent };
|
|
249
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types.ts","../src/agent-stream.ts","../src/event-channel.ts","../src/event-parser.ts","../src/markdown.ts","../src/markdown-view.ts","../src/sse.ts","../src/text-stream.ts"],"mappings":";;;KAAY,gBAAA;AAAA,KACA,iBAAA;AAAA,KACA,eAAA;AAAA,UAEK,sBAAA;EACf,SAAA;EACA,IAAA,EAAM,gBAAgB;EACtB,IAAA;AAAA;AAAA,UAGe,mBAAA;EACf,KAAA;EACA,SAAA;EACA,IAAA;AAAA;AAAA,UAGe,oBAAA;EACf,SAAA;EACA,IAAI;AAAA;AAAA,UAGW,wBAAA;EACf,EAAA;EACA,KAAA;EACA,IAAA;AAAA;AAAA,UAGe,wBAAA;EACf,KAAA;EACA,EAAA;EACA,IAAA;AAAA;AAAA,UAGe,sBAAA;EACf,UAAA;EACA,EAAA;EACA,IAAA;AAAA;AAAA,UAGe,mBAAA;EACf,EAAA;EACA,KAAA;EACA,IAAA;EACA,OAAA;EACA,IAAA;AAAA;AAAA,UAGe,oBAAA;EACf,EAAA;EACA,OAAA;EACA,IAAA;AAAA;AAAA,UAGe,oBAAA;EACf,EAAA;EACA,MAAA;EACA,OAAA;EACA,IAAA;AAAA;AAAA,UAGe,mBAAA;EACf,KAAA;EACA,EAAA;EACA,IAAA;AAAA;AAAA,UAGe,0BAAA;EACf,OAAA,GAAU,KAAK;IACb,WAAA;IACA,QAAA;IACA,KAAA;IACA,KAAA;EAAA;EAEF,WAAA;EACA,EAAA;EACA,KAAA;EACA,IAAA;AAAA;AAAA,UAGe,0BAAA;EACf,EAAA;EACA,IAAA;EACA,KAAA;AAAA;AAAA,UAGe,cAAA;EACf,IAAA;EACA,IAAA;EACA,KAAA;AAAA;AAAA,UAGe,eAAA;EACf,IAAA;EACA,OAAA;EACA,SAAA;EACA,IAAA;AAAA;AAAA,UAGe,cAAA;EACf,IAAA;EACA,KAAA;IACE,WAAA;IACA,YAAA;EAAA;AAAA;AAAA,KAIQ,gBAAA,GACR,sBAAA,GACA,mBAAA,GACA,oBAAA,GACA,wBAAA,GACA,wBAAA,GACA,sBAAA,GACA,mBAAA,GACA,oBAAA,GACA,oBAAA,GACA,mBAAA,GACA,0BAAA,GACA,0BAAA,GACA,cAAA,GACA,eAAA,GACA,cAAA;AAAA,UAEa,kBAAA;EACf,KAAA;EACA,EAAA;EACA,IAAA,EAAM,gBAAgB;EACtB,MAAA;EACA,OAAA;AAAA;AAAA,UAGe,kBAAA;EACf,OAAA;EACA,UAAA;EACA,EAAA;EACA,MAAA,EAAQ,eAAe;EACvB,KAAA;AAAA;AAAA,UAGe,aAAA;EACf,KAAA;EACA,EAAA;EACA,KAAA;EACA,IAAA;EACA,MAAA;EACA,MAAA,EAAQ,eAAe;EACvB,OAAA;AAAA;AAAA,UAGe,iBAAA;EACf,OAAA,EAAS,0BAA0B;EACnC,WAAA;EACA,EAAA;EACA,aAAA;EACA,MAAA;EACA,KAAA;AAAA;AAAA,UAGe,aAAA;EACf,IAAA;EACA,KAAK;AAAA;AAAA,UAGU,mBAAA;EACf,QAAA,GAAW,iBAAA;EACX,IAAA,EAAM,aAAA;EACN,KAAA,GAAQ,eAAA;EACR,UAAA;EACA,OAAA,GAAU,kBAAA;EACV,SAAA,EAAW,kBAAA;EACX,MAAA,EAAQ,iBAAA;EACR,KAAA,EAAO,aAAA;EACP,KAAA,GAAQ,cAAA;AAAA;AAAA,UAGO,kBAAA;EACf,QAAA;EACA,IAAA;EACA,KAAA;EACA,MAAA;EACA,YAAA;EACA,MAAA;EACA,OAAA;AAAA;AAAA,UAGe,iBAAA;EACf,gBAAA;EACA,iBAAA;EACA,iBAAA;EACA,YAAA;EACA,iBAAA;EACA,eAAA;AAAA;AAAA,UAGe,oBAAA;EACf,OAAA;EACA,OAAA,GAAU,KAAA;EACV,MAAA,GAAS,OAAA;IAAY,KAAA;EAAA;EACrB,KAAA;EACA,WAAA,QAAmB,kBAAkB;EACrC,KAAA;EACA,KAAA,GAAQ,OAAA;EACR,MAAA;EACA,SAAA,GAAY,QAAA;AAAA;AAAA,UAGG,qBAAA;EACf,MAAA,GAAS,MAAA;EACT,OAAA,GAAU,MAAA,EAAQ,aAAA,CAAc,gBAAA,MAAsB,OAAA,CAAQ,mBAAA;EAC9D,OAAA;EACA,WAAA,QAAmB,mBAAA;EACnB,IAAA,GAAO,KAAA,EAAO,gBAAA;EACd,KAAA;EACA,SAAA,GAAY,QAAA;AAAA;AAAA,UAGG,iBAAA;EACf,GAAA;EACA,IAAA,GAAO,KAAA;EACP,IAAA,GAAO,KAAA,EAAO,gBAAA;EACd,MAAA,EAAQ,aAAA,CAAc,gBAAA;AAAA;;;UChNP,4BAAA;EACf,IAAA,GAAO,iBAAiB;AAAA;AAAA,iBAaV,2BAAA,CACd,OAAA,GAAS,4BAAA,GACR,qBAAqB;;;iBC1BR,uBAAA,IAA2B,iBAAiB;;;iBCgD5C,qBAAA,CAAsB,KAAA,YAAiB,gBAAgB;;;UC1CtD,8BAAA;EACf,cAAA;EACA,UAAA;EACA,gBAAA;EACA,iBAAA,GAAoB,kBAAkB;EACtC,YAAA,IAAgB,GAAA;AAAA;AAAA,UAGD,uBAAA;EACf,KAAA,GAAQ,OAAA,UAAiB,OAAA;IAAY,KAAA;EAAA,MAAsB,YAAU;EACrE,KAAA;AAAA;AAAA,iBAKc,6BAAA,CACd,OAAA,GAAS,8BAAA,GACR,uBAAuB;;;KCtBd,qBAAA;AAAA,UA+BK,qBAAA;EACf,KAAA;EACA,GAAA;EACA,OAAA;EACA,QAAA,GAAW,qBAAA;EACX,MAAA;EACA,IAAA;EACA,IAAA,EAAM,qBAAqB;EAC3B,QAAA;EACA,KAAA;EACA,OAAA;EACA,OAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;AAAA;AAAA,iBA4Cc,qBAAA,CAAsB,IAAA,EAAM,YAAA,GAAa,qBAAqB;AAAA,iBAoI9D,sBAAA,CAAuB,KAAA,EAAO,YAAA,KAAe,qBAAqB;;;UC5NjE,mBAAA;EACf,GAAA;EACA,IAAA,GAAO,KAAA;EACP,IAAA,GAAO,KAAA,WAAgB,WAAA,GAAc,UAAA;EACrC,MAAA,EAAQ,aAAA,CAAc,gBAAA;AAAA;AAAA,iBAiFR,yBAAA,IAA6B,mBAAmB;;;iBC+FhD,gBAAA,CAAiB,OAAA,GAAS,iBAAA,GAAyB,oBAAoB"}
|