openai 4.53.2 → 4.54.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/CHANGELOG.md +21 -0
- package/README.md +2 -2
- package/index.d.mts +4 -0
- package/index.d.ts +4 -0
- package/index.d.ts.map +1 -1
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/index.mjs +1 -0
- package/index.mjs.map +1 -1
- package/lib/AbstractChatCompletionRunner.d.ts +6 -61
- package/lib/AbstractChatCompletionRunner.d.ts.map +1 -1
- package/lib/AbstractChatCompletionRunner.js +5 -185
- package/lib/AbstractChatCompletionRunner.js.map +1 -1
- package/lib/AbstractChatCompletionRunner.mjs +6 -186
- package/lib/AbstractChatCompletionRunner.mjs.map +1 -1
- package/lib/AssistantStream.d.ts +8 -4
- package/lib/AssistantStream.d.ts.map +1 -1
- package/lib/AssistantStream.js +14 -2
- package/lib/AssistantStream.js.map +1 -1
- package/lib/AssistantStream.mjs +14 -2
- package/lib/AssistantStream.mjs.map +1 -1
- package/lib/ChatCompletionRunner.d.ts +1 -1
- package/lib/ChatCompletionRunner.d.ts.map +1 -1
- package/lib/ChatCompletionRunner.js.map +1 -1
- package/lib/ChatCompletionRunner.mjs.map +1 -1
- package/lib/ChatCompletionStream.d.ts +1 -1
- package/lib/ChatCompletionStream.d.ts.map +1 -1
- package/lib/ChatCompletionStream.js.map +1 -1
- package/lib/ChatCompletionStream.mjs.map +1 -1
- package/lib/EventStream.d.ts +63 -0
- package/lib/EventStream.d.ts.map +1 -0
- package/lib/EventStream.js +200 -0
- package/lib/EventStream.js.map +1 -0
- package/lib/EventStream.mjs +196 -0
- package/lib/EventStream.mjs.map +1 -0
- package/package.json +1 -1
- package/resources/audio/audio.d.ts +4 -0
- package/resources/audio/audio.d.ts.map +1 -1
- package/resources/audio/audio.js.map +1 -1
- package/resources/audio/audio.mjs.map +1 -1
- package/resources/audio/index.d.ts +2 -2
- package/resources/audio/index.d.ts.map +1 -1
- package/resources/audio/index.js.map +1 -1
- package/resources/audio/index.mjs.map +1 -1
- package/resources/audio/speech.d.ts +3 -1
- package/resources/audio/speech.d.ts.map +1 -1
- package/resources/audio/speech.js.map +1 -1
- package/resources/audio/speech.mjs.map +1 -1
- package/resources/audio/transcriptions.d.ts +2 -1
- package/resources/audio/transcriptions.d.ts.map +1 -1
- package/resources/audio/transcriptions.js.map +1 -1
- package/resources/audio/transcriptions.mjs.map +1 -1
- package/resources/audio/translations.d.ts +2 -1
- package/resources/audio/translations.d.ts.map +1 -1
- package/resources/audio/translations.js.map +1 -1
- package/resources/audio/translations.mjs.map +1 -1
- package/resources/beta/assistants.d.ts +2 -1
- package/resources/beta/assistants.d.ts.map +1 -1
- package/resources/beta/assistants.js.map +1 -1
- package/resources/beta/assistants.mjs.map +1 -1
- package/resources/beta/threads/runs/runs.d.ts +2 -1
- package/resources/beta/threads/runs/runs.d.ts.map +1 -1
- package/resources/beta/threads/runs/runs.js.map +1 -1
- package/resources/beta/threads/runs/runs.mjs.map +1 -1
- package/resources/beta/threads/threads.d.ts +2 -1
- package/resources/beta/threads/threads.d.ts.map +1 -1
- package/resources/beta/threads/threads.js.map +1 -1
- package/resources/beta/threads/threads.mjs.map +1 -1
- package/resources/images.d.ts +5 -3
- package/resources/images.d.ts.map +1 -1
- package/resources/images.js.map +1 -1
- package/resources/images.mjs.map +1 -1
- package/resources/index.d.ts +3 -3
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/moderations.d.ts +3 -1
- package/resources/moderations.d.ts.map +1 -1
- package/resources/moderations.js.map +1 -1
- package/resources/moderations.mjs.map +1 -1
- package/src/index.ts +4 -0
- package/src/lib/AbstractChatCompletionRunner.ts +16 -239
- package/src/lib/AssistantStream.ts +43 -15
- package/src/lib/ChatCompletionRunner.ts +1 -1
- package/src/lib/ChatCompletionStream.ts +2 -2
- package/src/lib/{AbstractAssistantStreamRunner.ts → EventStream.ts} +37 -138
- package/src/resources/audio/audio.ts +5 -0
- package/src/resources/audio/index.ts +2 -2
- package/src/resources/audio/speech.ts +4 -1
- package/src/resources/audio/transcriptions.ts +2 -1
- package/src/resources/audio/translations.ts +2 -1
- package/src/resources/beta/assistants.ts +2 -24
- package/src/resources/beta/threads/runs/runs.ts +2 -25
- package/src/resources/beta/threads/threads.ts +2 -25
- package/src/resources/images.ts +6 -3
- package/src/resources/index.ts +9 -2
- package/src/resources/moderations.ts +4 -1
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
- package/lib/AbstractAssistantStreamRunner.d.ts +0 -74
- package/lib/AbstractAssistantStreamRunner.d.ts.map +0 -1
- package/lib/AbstractAssistantStreamRunner.js +0 -246
- package/lib/AbstractAssistantStreamRunner.js.map +0 -1
- package/lib/AbstractAssistantStreamRunner.mjs +0 -242
- package/lib/AbstractAssistantStreamRunner.mjs.map +0 -1
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import * as Core from 'openai/core';
|
|
3
|
-
import { APIUserAbortError, OpenAIError } from 'openai/error';
|
|
4
|
-
import { Run, RunSubmitToolOutputsParamsBase } from 'openai/resources/beta/threads/runs/runs';
|
|
5
|
-
import { RunCreateParamsBase, Runs } from 'openai/resources/beta/threads/runs/runs';
|
|
6
|
-
import { ThreadCreateAndRunParamsBase, Threads } from 'openai/resources/beta/threads/threads';
|
|
7
|
-
export declare abstract class AbstractAssistantStreamRunner<Events extends CustomEvents<any> = AbstractAssistantRunnerEvents> {
|
|
8
|
-
#private;
|
|
9
|
-
controller: AbortController;
|
|
10
|
-
constructor();
|
|
11
|
-
protected _run(executor: () => Promise<any>): void;
|
|
12
|
-
protected _addRun(run: Run): Run;
|
|
13
|
-
protected _connected(): void;
|
|
14
|
-
get ended(): boolean;
|
|
15
|
-
get errored(): boolean;
|
|
16
|
-
get aborted(): boolean;
|
|
17
|
-
abort(): void;
|
|
18
|
-
/**
|
|
19
|
-
* Adds the listener function to the end of the listeners array for the event.
|
|
20
|
-
* No checks are made to see if the listener has already been added. Multiple calls passing
|
|
21
|
-
* the same combination of event and listener will result in the listener being added, and
|
|
22
|
-
* called, multiple times.
|
|
23
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
24
|
-
*/
|
|
25
|
-
on<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this;
|
|
26
|
-
/**
|
|
27
|
-
* Removes the specified listener from the listener array for the event.
|
|
28
|
-
* off() will remove, at most, one instance of a listener from the listener array. If any single
|
|
29
|
-
* listener has been added multiple times to the listener array for the specified event, then
|
|
30
|
-
* off() must be called multiple times to remove each instance.
|
|
31
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
32
|
-
*/
|
|
33
|
-
off<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this;
|
|
34
|
-
/**
|
|
35
|
-
* Adds a one-time listener function for the event. The next time the event is triggered,
|
|
36
|
-
* this listener is removed and then invoked.
|
|
37
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
38
|
-
*/
|
|
39
|
-
once<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this;
|
|
40
|
-
/**
|
|
41
|
-
* This is similar to `.once()`, but returns a Promise that resolves the next time
|
|
42
|
-
* the event is triggered, instead of calling a listener callback.
|
|
43
|
-
* @returns a Promise that resolves the next time given event is triggered,
|
|
44
|
-
* or rejects if an error is emitted. (If you request the 'error' event,
|
|
45
|
-
* returns a promise that resolves with the error).
|
|
46
|
-
*
|
|
47
|
-
* Example:
|
|
48
|
-
*
|
|
49
|
-
* const message = await stream.emitted('message') // rejects if the stream errors
|
|
50
|
-
*/
|
|
51
|
-
emitted<Event extends keyof Events>(event: Event): Promise<EventParameters<Events, Event> extends [infer Param] ? Param : EventParameters<Events, Event> extends [] ? void : EventParameters<Events, Event>>;
|
|
52
|
-
done(): Promise<void>;
|
|
53
|
-
protected _emit<Event extends keyof Events>(event: Event, ...args: EventParameters<Events, Event>): void;
|
|
54
|
-
protected _threadAssistantStream(body: ThreadCreateAndRunParamsBase, thread: Threads, options?: Core.RequestOptions): Promise<Run>;
|
|
55
|
-
protected _runAssistantStream(threadId: string, runs: Runs, params: RunCreateParamsBase, options?: Core.RequestOptions): Promise<Run>;
|
|
56
|
-
protected _runToolAssistantStream(threadId: string, runId: string, runs: Runs, params: RunSubmitToolOutputsParamsBase, options?: Core.RequestOptions): Promise<Run>;
|
|
57
|
-
protected _createThreadAssistantStream(thread: Threads, body: ThreadCreateAndRunParamsBase, options?: Core.RequestOptions): Promise<Run>;
|
|
58
|
-
protected _createToolAssistantStream(run: Runs, threadId: string, runId: string, params: RunSubmitToolOutputsParamsBase, options?: Core.RequestOptions): Promise<Run>;
|
|
59
|
-
protected _createAssistantStream(run: Runs, threadId: string, params: RunCreateParamsBase, options?: Core.RequestOptions): Promise<Run>;
|
|
60
|
-
}
|
|
61
|
-
type CustomEvents<Event extends string> = {
|
|
62
|
-
[k in Event]: k extends keyof AbstractAssistantRunnerEvents ? AbstractAssistantRunnerEvents[k] : (...args: any[]) => void;
|
|
63
|
-
};
|
|
64
|
-
type ListenerForEvent<Events extends CustomEvents<any>, Event extends keyof Events> = Event extends (keyof AbstractAssistantRunnerEvents) ? AbstractAssistantRunnerEvents[Event] : Events[Event];
|
|
65
|
-
type EventParameters<Events extends CustomEvents<any>, Event extends keyof Events> = Parameters<ListenerForEvent<Events, Event>>;
|
|
66
|
-
export interface AbstractAssistantRunnerEvents {
|
|
67
|
-
connect: () => void;
|
|
68
|
-
run: (run: Run) => void;
|
|
69
|
-
error: (error: OpenAIError) => void;
|
|
70
|
-
abort: (error: APIUserAbortError) => void;
|
|
71
|
-
end: () => void;
|
|
72
|
-
}
|
|
73
|
-
export {};
|
|
74
|
-
//# sourceMappingURL=AbstractAssistantStreamRunner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractAssistantStreamRunner.d.ts","sourceRoot":"","sources":["../src/lib/AbstractAssistantStreamRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
-
};
|
|
8
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
-
};
|
|
13
|
-
var _AbstractAssistantStreamRunner_connectedPromise, _AbstractAssistantStreamRunner_resolveConnectedPromise, _AbstractAssistantStreamRunner_rejectConnectedPromise, _AbstractAssistantStreamRunner_endPromise, _AbstractAssistantStreamRunner_resolveEndPromise, _AbstractAssistantStreamRunner_rejectEndPromise, _AbstractAssistantStreamRunner_listeners, _AbstractAssistantStreamRunner_ended, _AbstractAssistantStreamRunner_errored, _AbstractAssistantStreamRunner_aborted, _AbstractAssistantStreamRunner_catchingPromiseCreated, _AbstractAssistantStreamRunner_handleError;
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.AbstractAssistantStreamRunner = void 0;
|
|
16
|
-
const error_1 = require("openai/error");
|
|
17
|
-
class AbstractAssistantStreamRunner {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.controller = new AbortController();
|
|
20
|
-
_AbstractAssistantStreamRunner_connectedPromise.set(this, void 0);
|
|
21
|
-
_AbstractAssistantStreamRunner_resolveConnectedPromise.set(this, () => { });
|
|
22
|
-
_AbstractAssistantStreamRunner_rejectConnectedPromise.set(this, () => { });
|
|
23
|
-
_AbstractAssistantStreamRunner_endPromise.set(this, void 0);
|
|
24
|
-
_AbstractAssistantStreamRunner_resolveEndPromise.set(this, () => { });
|
|
25
|
-
_AbstractAssistantStreamRunner_rejectEndPromise.set(this, () => { });
|
|
26
|
-
_AbstractAssistantStreamRunner_listeners.set(this, {});
|
|
27
|
-
_AbstractAssistantStreamRunner_ended.set(this, false);
|
|
28
|
-
_AbstractAssistantStreamRunner_errored.set(this, false);
|
|
29
|
-
_AbstractAssistantStreamRunner_aborted.set(this, false);
|
|
30
|
-
_AbstractAssistantStreamRunner_catchingPromiseCreated.set(this, false);
|
|
31
|
-
_AbstractAssistantStreamRunner_handleError.set(this, (error) => {
|
|
32
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_errored, true, "f");
|
|
33
|
-
if (error instanceof Error && error.name === 'AbortError') {
|
|
34
|
-
error = new error_1.APIUserAbortError();
|
|
35
|
-
}
|
|
36
|
-
if (error instanceof error_1.APIUserAbortError) {
|
|
37
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_aborted, true, "f");
|
|
38
|
-
return this._emit('abort', error);
|
|
39
|
-
}
|
|
40
|
-
if (error instanceof error_1.OpenAIError) {
|
|
41
|
-
return this._emit('error', error);
|
|
42
|
-
}
|
|
43
|
-
if (error instanceof Error) {
|
|
44
|
-
const openAIError = new error_1.OpenAIError(error.message);
|
|
45
|
-
// @ts-ignore
|
|
46
|
-
openAIError.cause = error;
|
|
47
|
-
return this._emit('error', openAIError);
|
|
48
|
-
}
|
|
49
|
-
return this._emit('error', new error_1.OpenAIError(String(error)));
|
|
50
|
-
});
|
|
51
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_connectedPromise, new Promise((resolve, reject) => {
|
|
52
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_resolveConnectedPromise, resolve, "f");
|
|
53
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, reject, "f");
|
|
54
|
-
}), "f");
|
|
55
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_endPromise, new Promise((resolve, reject) => {
|
|
56
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_resolveEndPromise, resolve, "f");
|
|
57
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_rejectEndPromise, reject, "f");
|
|
58
|
-
}), "f");
|
|
59
|
-
// Don't let these promises cause unhandled rejection errors.
|
|
60
|
-
// we will manually cause an unhandled rejection error later
|
|
61
|
-
// if the user hasn't registered any error listener or called
|
|
62
|
-
// any promise-returning method.
|
|
63
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_connectedPromise, "f").catch(() => { });
|
|
64
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_endPromise, "f").catch(() => { });
|
|
65
|
-
}
|
|
66
|
-
_run(executor) {
|
|
67
|
-
// Unfortunately if we call `executor()` immediately we get runtime errors about
|
|
68
|
-
// references to `this` before the `super()` constructor call returns.
|
|
69
|
-
setTimeout(() => {
|
|
70
|
-
executor().then(() => {
|
|
71
|
-
// this._emitFinal();
|
|
72
|
-
this._emit('end');
|
|
73
|
-
}, __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_handleError, "f"));
|
|
74
|
-
}, 0);
|
|
75
|
-
}
|
|
76
|
-
_addRun(run) {
|
|
77
|
-
return run;
|
|
78
|
-
}
|
|
79
|
-
_connected() {
|
|
80
|
-
if (this.ended)
|
|
81
|
-
return;
|
|
82
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_resolveConnectedPromise, "f").call(this);
|
|
83
|
-
this._emit('connect');
|
|
84
|
-
}
|
|
85
|
-
get ended() {
|
|
86
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_ended, "f");
|
|
87
|
-
}
|
|
88
|
-
get errored() {
|
|
89
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_errored, "f");
|
|
90
|
-
}
|
|
91
|
-
get aborted() {
|
|
92
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_aborted, "f");
|
|
93
|
-
}
|
|
94
|
-
abort() {
|
|
95
|
-
this.controller.abort();
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Adds the listener function to the end of the listeners array for the event.
|
|
99
|
-
* No checks are made to see if the listener has already been added. Multiple calls passing
|
|
100
|
-
* the same combination of event and listener will result in the listener being added, and
|
|
101
|
-
* called, multiple times.
|
|
102
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
103
|
-
*/
|
|
104
|
-
on(event, listener) {
|
|
105
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] || (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = []);
|
|
106
|
-
listeners.push({ listener });
|
|
107
|
-
return this;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Removes the specified listener from the listener array for the event.
|
|
111
|
-
* off() will remove, at most, one instance of a listener from the listener array. If any single
|
|
112
|
-
* listener has been added multiple times to the listener array for the specified event, then
|
|
113
|
-
* off() must be called multiple times to remove each instance.
|
|
114
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
115
|
-
*/
|
|
116
|
-
off(event, listener) {
|
|
117
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event];
|
|
118
|
-
if (!listeners)
|
|
119
|
-
return this;
|
|
120
|
-
const index = listeners.findIndex((l) => l.listener === listener);
|
|
121
|
-
if (index >= 0)
|
|
122
|
-
listeners.splice(index, 1);
|
|
123
|
-
return this;
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Adds a one-time listener function for the event. The next time the event is triggered,
|
|
127
|
-
* this listener is removed and then invoked.
|
|
128
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
129
|
-
*/
|
|
130
|
-
once(event, listener) {
|
|
131
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] || (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = []);
|
|
132
|
-
listeners.push({ listener, once: true });
|
|
133
|
-
return this;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* This is similar to `.once()`, but returns a Promise that resolves the next time
|
|
137
|
-
* the event is triggered, instead of calling a listener callback.
|
|
138
|
-
* @returns a Promise that resolves the next time given event is triggered,
|
|
139
|
-
* or rejects if an error is emitted. (If you request the 'error' event,
|
|
140
|
-
* returns a promise that resolves with the error).
|
|
141
|
-
*
|
|
142
|
-
* Example:
|
|
143
|
-
*
|
|
144
|
-
* const message = await stream.emitted('message') // rejects if the stream errors
|
|
145
|
-
*/
|
|
146
|
-
emitted(event) {
|
|
147
|
-
return new Promise((resolve, reject) => {
|
|
148
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, true, "f");
|
|
149
|
-
if (event !== 'error')
|
|
150
|
-
this.once('error', reject);
|
|
151
|
-
this.once(event, resolve);
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
async done() {
|
|
155
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, true, "f");
|
|
156
|
-
await __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_endPromise, "f");
|
|
157
|
-
}
|
|
158
|
-
_emit(event, ...args) {
|
|
159
|
-
// make sure we don't emit any events after end
|
|
160
|
-
if (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_ended, "f")) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
if (event === 'end') {
|
|
164
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_ended, true, "f");
|
|
165
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_resolveEndPromise, "f").call(this);
|
|
166
|
-
}
|
|
167
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event];
|
|
168
|
-
if (listeners) {
|
|
169
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = listeners.filter((l) => !l.once);
|
|
170
|
-
listeners.forEach(({ listener }) => listener(...args));
|
|
171
|
-
}
|
|
172
|
-
if (event === 'abort') {
|
|
173
|
-
const error = args[0];
|
|
174
|
-
if (!__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, "f") && !listeners?.length) {
|
|
175
|
-
Promise.reject(error);
|
|
176
|
-
}
|
|
177
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, "f").call(this, error);
|
|
178
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectEndPromise, "f").call(this, error);
|
|
179
|
-
this._emit('end');
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
if (event === 'error') {
|
|
183
|
-
// NOTE: _emit('error', error) should only be called from #handleError().
|
|
184
|
-
const error = args[0];
|
|
185
|
-
if (!__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, "f") && !listeners?.length) {
|
|
186
|
-
// Trigger an unhandled rejection if the user hasn't registered any error handlers.
|
|
187
|
-
// If you are seeing stack traces here, make sure to handle errors via either:
|
|
188
|
-
// - runner.on('error', () => ...)
|
|
189
|
-
// - await runner.done()
|
|
190
|
-
// - await runner.finalChatCompletion()
|
|
191
|
-
// - etc.
|
|
192
|
-
Promise.reject(error);
|
|
193
|
-
}
|
|
194
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, "f").call(this, error);
|
|
195
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectEndPromise, "f").call(this, error);
|
|
196
|
-
this._emit('end');
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
async _threadAssistantStream(body, thread, options) {
|
|
200
|
-
return await this._createThreadAssistantStream(thread, body, options);
|
|
201
|
-
}
|
|
202
|
-
async _runAssistantStream(threadId, runs, params, options) {
|
|
203
|
-
return await this._createAssistantStream(runs, threadId, params, options);
|
|
204
|
-
}
|
|
205
|
-
async _runToolAssistantStream(threadId, runId, runs, params, options) {
|
|
206
|
-
return await this._createToolAssistantStream(runs, threadId, runId, params, options);
|
|
207
|
-
}
|
|
208
|
-
async _createThreadAssistantStream(thread, body, options) {
|
|
209
|
-
const signal = options?.signal;
|
|
210
|
-
if (signal) {
|
|
211
|
-
if (signal.aborted)
|
|
212
|
-
this.controller.abort();
|
|
213
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
214
|
-
}
|
|
215
|
-
// this.#validateParams(params);
|
|
216
|
-
const runResult = await thread.createAndRun({ ...body, stream: false }, { ...options, signal: this.controller.signal });
|
|
217
|
-
this._connected();
|
|
218
|
-
return this._addRun(runResult);
|
|
219
|
-
}
|
|
220
|
-
async _createToolAssistantStream(run, threadId, runId, params, options) {
|
|
221
|
-
const signal = options?.signal;
|
|
222
|
-
if (signal) {
|
|
223
|
-
if (signal.aborted)
|
|
224
|
-
this.controller.abort();
|
|
225
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
226
|
-
}
|
|
227
|
-
const runResult = await run.submitToolOutputs(threadId, runId, { ...params, stream: false }, { ...options, signal: this.controller.signal });
|
|
228
|
-
this._connected();
|
|
229
|
-
return this._addRun(runResult);
|
|
230
|
-
}
|
|
231
|
-
async _createAssistantStream(run, threadId, params, options) {
|
|
232
|
-
const signal = options?.signal;
|
|
233
|
-
if (signal) {
|
|
234
|
-
if (signal.aborted)
|
|
235
|
-
this.controller.abort();
|
|
236
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
237
|
-
}
|
|
238
|
-
// this.#validateParams(params);
|
|
239
|
-
const runResult = await run.create(threadId, { ...params, stream: false }, { ...options, signal: this.controller.signal });
|
|
240
|
-
this._connected();
|
|
241
|
-
return this._addRun(runResult);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
exports.AbstractAssistantStreamRunner = AbstractAssistantStreamRunner;
|
|
245
|
-
_AbstractAssistantStreamRunner_connectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_resolveConnectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_rejectConnectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_endPromise = new WeakMap(), _AbstractAssistantStreamRunner_resolveEndPromise = new WeakMap(), _AbstractAssistantStreamRunner_rejectEndPromise = new WeakMap(), _AbstractAssistantStreamRunner_listeners = new WeakMap(), _AbstractAssistantStreamRunner_ended = new WeakMap(), _AbstractAssistantStreamRunner_errored = new WeakMap(), _AbstractAssistantStreamRunner_aborted = new WeakMap(), _AbstractAssistantStreamRunner_catchingPromiseCreated = new WeakMap(), _AbstractAssistantStreamRunner_handleError = new WeakMap();
|
|
246
|
-
//# sourceMappingURL=AbstractAssistantStreamRunner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractAssistantStreamRunner.js","sourceRoot":"","sources":["../src/lib/AbstractAssistantStreamRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
-
};
|
|
7
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
-
};
|
|
12
|
-
var _AbstractAssistantStreamRunner_connectedPromise, _AbstractAssistantStreamRunner_resolveConnectedPromise, _AbstractAssistantStreamRunner_rejectConnectedPromise, _AbstractAssistantStreamRunner_endPromise, _AbstractAssistantStreamRunner_resolveEndPromise, _AbstractAssistantStreamRunner_rejectEndPromise, _AbstractAssistantStreamRunner_listeners, _AbstractAssistantStreamRunner_ended, _AbstractAssistantStreamRunner_errored, _AbstractAssistantStreamRunner_aborted, _AbstractAssistantStreamRunner_catchingPromiseCreated, _AbstractAssistantStreamRunner_handleError;
|
|
13
|
-
import { APIUserAbortError, OpenAIError } from 'openai/error';
|
|
14
|
-
export class AbstractAssistantStreamRunner {
|
|
15
|
-
constructor() {
|
|
16
|
-
this.controller = new AbortController();
|
|
17
|
-
_AbstractAssistantStreamRunner_connectedPromise.set(this, void 0);
|
|
18
|
-
_AbstractAssistantStreamRunner_resolveConnectedPromise.set(this, () => { });
|
|
19
|
-
_AbstractAssistantStreamRunner_rejectConnectedPromise.set(this, () => { });
|
|
20
|
-
_AbstractAssistantStreamRunner_endPromise.set(this, void 0);
|
|
21
|
-
_AbstractAssistantStreamRunner_resolveEndPromise.set(this, () => { });
|
|
22
|
-
_AbstractAssistantStreamRunner_rejectEndPromise.set(this, () => { });
|
|
23
|
-
_AbstractAssistantStreamRunner_listeners.set(this, {});
|
|
24
|
-
_AbstractAssistantStreamRunner_ended.set(this, false);
|
|
25
|
-
_AbstractAssistantStreamRunner_errored.set(this, false);
|
|
26
|
-
_AbstractAssistantStreamRunner_aborted.set(this, false);
|
|
27
|
-
_AbstractAssistantStreamRunner_catchingPromiseCreated.set(this, false);
|
|
28
|
-
_AbstractAssistantStreamRunner_handleError.set(this, (error) => {
|
|
29
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_errored, true, "f");
|
|
30
|
-
if (error instanceof Error && error.name === 'AbortError') {
|
|
31
|
-
error = new APIUserAbortError();
|
|
32
|
-
}
|
|
33
|
-
if (error instanceof APIUserAbortError) {
|
|
34
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_aborted, true, "f");
|
|
35
|
-
return this._emit('abort', error);
|
|
36
|
-
}
|
|
37
|
-
if (error instanceof OpenAIError) {
|
|
38
|
-
return this._emit('error', error);
|
|
39
|
-
}
|
|
40
|
-
if (error instanceof Error) {
|
|
41
|
-
const openAIError = new OpenAIError(error.message);
|
|
42
|
-
// @ts-ignore
|
|
43
|
-
openAIError.cause = error;
|
|
44
|
-
return this._emit('error', openAIError);
|
|
45
|
-
}
|
|
46
|
-
return this._emit('error', new OpenAIError(String(error)));
|
|
47
|
-
});
|
|
48
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_connectedPromise, new Promise((resolve, reject) => {
|
|
49
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_resolveConnectedPromise, resolve, "f");
|
|
50
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, reject, "f");
|
|
51
|
-
}), "f");
|
|
52
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_endPromise, new Promise((resolve, reject) => {
|
|
53
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_resolveEndPromise, resolve, "f");
|
|
54
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_rejectEndPromise, reject, "f");
|
|
55
|
-
}), "f");
|
|
56
|
-
// Don't let these promises cause unhandled rejection errors.
|
|
57
|
-
// we will manually cause an unhandled rejection error later
|
|
58
|
-
// if the user hasn't registered any error listener or called
|
|
59
|
-
// any promise-returning method.
|
|
60
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_connectedPromise, "f").catch(() => { });
|
|
61
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_endPromise, "f").catch(() => { });
|
|
62
|
-
}
|
|
63
|
-
_run(executor) {
|
|
64
|
-
// Unfortunately if we call `executor()` immediately we get runtime errors about
|
|
65
|
-
// references to `this` before the `super()` constructor call returns.
|
|
66
|
-
setTimeout(() => {
|
|
67
|
-
executor().then(() => {
|
|
68
|
-
// this._emitFinal();
|
|
69
|
-
this._emit('end');
|
|
70
|
-
}, __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_handleError, "f"));
|
|
71
|
-
}, 0);
|
|
72
|
-
}
|
|
73
|
-
_addRun(run) {
|
|
74
|
-
return run;
|
|
75
|
-
}
|
|
76
|
-
_connected() {
|
|
77
|
-
if (this.ended)
|
|
78
|
-
return;
|
|
79
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_resolveConnectedPromise, "f").call(this);
|
|
80
|
-
this._emit('connect');
|
|
81
|
-
}
|
|
82
|
-
get ended() {
|
|
83
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_ended, "f");
|
|
84
|
-
}
|
|
85
|
-
get errored() {
|
|
86
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_errored, "f");
|
|
87
|
-
}
|
|
88
|
-
get aborted() {
|
|
89
|
-
return __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_aborted, "f");
|
|
90
|
-
}
|
|
91
|
-
abort() {
|
|
92
|
-
this.controller.abort();
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Adds the listener function to the end of the listeners array for the event.
|
|
96
|
-
* No checks are made to see if the listener has already been added. Multiple calls passing
|
|
97
|
-
* the same combination of event and listener will result in the listener being added, and
|
|
98
|
-
* called, multiple times.
|
|
99
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
100
|
-
*/
|
|
101
|
-
on(event, listener) {
|
|
102
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] || (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = []);
|
|
103
|
-
listeners.push({ listener });
|
|
104
|
-
return this;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Removes the specified listener from the listener array for the event.
|
|
108
|
-
* off() will remove, at most, one instance of a listener from the listener array. If any single
|
|
109
|
-
* listener has been added multiple times to the listener array for the specified event, then
|
|
110
|
-
* off() must be called multiple times to remove each instance.
|
|
111
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
112
|
-
*/
|
|
113
|
-
off(event, listener) {
|
|
114
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event];
|
|
115
|
-
if (!listeners)
|
|
116
|
-
return this;
|
|
117
|
-
const index = listeners.findIndex((l) => l.listener === listener);
|
|
118
|
-
if (index >= 0)
|
|
119
|
-
listeners.splice(index, 1);
|
|
120
|
-
return this;
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Adds a one-time listener function for the event. The next time the event is triggered,
|
|
124
|
-
* this listener is removed and then invoked.
|
|
125
|
-
* @returns this ChatCompletionStream, so that calls can be chained
|
|
126
|
-
*/
|
|
127
|
-
once(event, listener) {
|
|
128
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] || (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = []);
|
|
129
|
-
listeners.push({ listener, once: true });
|
|
130
|
-
return this;
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* This is similar to `.once()`, but returns a Promise that resolves the next time
|
|
134
|
-
* the event is triggered, instead of calling a listener callback.
|
|
135
|
-
* @returns a Promise that resolves the next time given event is triggered,
|
|
136
|
-
* or rejects if an error is emitted. (If you request the 'error' event,
|
|
137
|
-
* returns a promise that resolves with the error).
|
|
138
|
-
*
|
|
139
|
-
* Example:
|
|
140
|
-
*
|
|
141
|
-
* const message = await stream.emitted('message') // rejects if the stream errors
|
|
142
|
-
*/
|
|
143
|
-
emitted(event) {
|
|
144
|
-
return new Promise((resolve, reject) => {
|
|
145
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, true, "f");
|
|
146
|
-
if (event !== 'error')
|
|
147
|
-
this.once('error', reject);
|
|
148
|
-
this.once(event, resolve);
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
async done() {
|
|
152
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, true, "f");
|
|
153
|
-
await __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_endPromise, "f");
|
|
154
|
-
}
|
|
155
|
-
_emit(event, ...args) {
|
|
156
|
-
// make sure we don't emit any events after end
|
|
157
|
-
if (__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_ended, "f")) {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
if (event === 'end') {
|
|
161
|
-
__classPrivateFieldSet(this, _AbstractAssistantStreamRunner_ended, true, "f");
|
|
162
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_resolveEndPromise, "f").call(this);
|
|
163
|
-
}
|
|
164
|
-
const listeners = __classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event];
|
|
165
|
-
if (listeners) {
|
|
166
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_listeners, "f")[event] = listeners.filter((l) => !l.once);
|
|
167
|
-
listeners.forEach(({ listener }) => listener(...args));
|
|
168
|
-
}
|
|
169
|
-
if (event === 'abort') {
|
|
170
|
-
const error = args[0];
|
|
171
|
-
if (!__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, "f") && !listeners?.length) {
|
|
172
|
-
Promise.reject(error);
|
|
173
|
-
}
|
|
174
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, "f").call(this, error);
|
|
175
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectEndPromise, "f").call(this, error);
|
|
176
|
-
this._emit('end');
|
|
177
|
-
return;
|
|
178
|
-
}
|
|
179
|
-
if (event === 'error') {
|
|
180
|
-
// NOTE: _emit('error', error) should only be called from #handleError().
|
|
181
|
-
const error = args[0];
|
|
182
|
-
if (!__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_catchingPromiseCreated, "f") && !listeners?.length) {
|
|
183
|
-
// Trigger an unhandled rejection if the user hasn't registered any error handlers.
|
|
184
|
-
// If you are seeing stack traces here, make sure to handle errors via either:
|
|
185
|
-
// - runner.on('error', () => ...)
|
|
186
|
-
// - await runner.done()
|
|
187
|
-
// - await runner.finalChatCompletion()
|
|
188
|
-
// - etc.
|
|
189
|
-
Promise.reject(error);
|
|
190
|
-
}
|
|
191
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectConnectedPromise, "f").call(this, error);
|
|
192
|
-
__classPrivateFieldGet(this, _AbstractAssistantStreamRunner_rejectEndPromise, "f").call(this, error);
|
|
193
|
-
this._emit('end');
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
async _threadAssistantStream(body, thread, options) {
|
|
197
|
-
return await this._createThreadAssistantStream(thread, body, options);
|
|
198
|
-
}
|
|
199
|
-
async _runAssistantStream(threadId, runs, params, options) {
|
|
200
|
-
return await this._createAssistantStream(runs, threadId, params, options);
|
|
201
|
-
}
|
|
202
|
-
async _runToolAssistantStream(threadId, runId, runs, params, options) {
|
|
203
|
-
return await this._createToolAssistantStream(runs, threadId, runId, params, options);
|
|
204
|
-
}
|
|
205
|
-
async _createThreadAssistantStream(thread, body, options) {
|
|
206
|
-
const signal = options?.signal;
|
|
207
|
-
if (signal) {
|
|
208
|
-
if (signal.aborted)
|
|
209
|
-
this.controller.abort();
|
|
210
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
211
|
-
}
|
|
212
|
-
// this.#validateParams(params);
|
|
213
|
-
const runResult = await thread.createAndRun({ ...body, stream: false }, { ...options, signal: this.controller.signal });
|
|
214
|
-
this._connected();
|
|
215
|
-
return this._addRun(runResult);
|
|
216
|
-
}
|
|
217
|
-
async _createToolAssistantStream(run, threadId, runId, params, options) {
|
|
218
|
-
const signal = options?.signal;
|
|
219
|
-
if (signal) {
|
|
220
|
-
if (signal.aborted)
|
|
221
|
-
this.controller.abort();
|
|
222
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
223
|
-
}
|
|
224
|
-
const runResult = await run.submitToolOutputs(threadId, runId, { ...params, stream: false }, { ...options, signal: this.controller.signal });
|
|
225
|
-
this._connected();
|
|
226
|
-
return this._addRun(runResult);
|
|
227
|
-
}
|
|
228
|
-
async _createAssistantStream(run, threadId, params, options) {
|
|
229
|
-
const signal = options?.signal;
|
|
230
|
-
if (signal) {
|
|
231
|
-
if (signal.aborted)
|
|
232
|
-
this.controller.abort();
|
|
233
|
-
signal.addEventListener('abort', () => this.controller.abort());
|
|
234
|
-
}
|
|
235
|
-
// this.#validateParams(params);
|
|
236
|
-
const runResult = await run.create(threadId, { ...params, stream: false }, { ...options, signal: this.controller.signal });
|
|
237
|
-
this._connected();
|
|
238
|
-
return this._addRun(runResult);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
_AbstractAssistantStreamRunner_connectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_resolveConnectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_rejectConnectedPromise = new WeakMap(), _AbstractAssistantStreamRunner_endPromise = new WeakMap(), _AbstractAssistantStreamRunner_resolveEndPromise = new WeakMap(), _AbstractAssistantStreamRunner_rejectEndPromise = new WeakMap(), _AbstractAssistantStreamRunner_listeners = new WeakMap(), _AbstractAssistantStreamRunner_ended = new WeakMap(), _AbstractAssistantStreamRunner_errored = new WeakMap(), _AbstractAssistantStreamRunner_aborted = new WeakMap(), _AbstractAssistantStreamRunner_catchingPromiseCreated = new WeakMap(), _AbstractAssistantStreamRunner_handleError = new WeakMap();
|
|
242
|
-
//# sourceMappingURL=AbstractAssistantStreamRunner.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractAssistantStreamRunner.mjs","sourceRoot":"","sources":["../src/lib/AbstractAssistantStreamRunner.ts"],"names":[],"mappings":"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"}
|