fixed reminder
This commit is contained in:
+27
-14
@@ -271,22 +271,35 @@ export const api = {
|
||||
}
|
||||
};
|
||||
|
||||
while (true) {
|
||||
const { done, value } = await reader.read();
|
||||
if (value) {
|
||||
buffer += decoder.decode(value, { stream: !done });
|
||||
}
|
||||
|
||||
const parts = buffer.split("\n\n");
|
||||
buffer = parts.pop() ?? "";
|
||||
yield* flushParts(parts);
|
||||
|
||||
if (done) {
|
||||
if (buffer.trim()) {
|
||||
yield* flushParts([buffer]);
|
||||
try {
|
||||
while (true) {
|
||||
let done = false;
|
||||
let value: Uint8Array | undefined;
|
||||
try {
|
||||
({ done, value } = await reader.read());
|
||||
} catch {
|
||||
throw new Error(
|
||||
"Соединение прервалось (таймаут прокси). Обновите чат — ответ мог уже сохраниться.",
|
||||
);
|
||||
}
|
||||
|
||||
if (value) {
|
||||
buffer += decoder.decode(value, { stream: !done });
|
||||
}
|
||||
|
||||
const parts = buffer.split("\n\n");
|
||||
buffer = parts.pop() ?? "";
|
||||
yield* flushParts(parts);
|
||||
|
||||
if (done) {
|
||||
if (buffer.trim()) {
|
||||
yield* flushParts([buffer]);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
} finally {
|
||||
reader.releaseLock();
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user