@ricsam/isolate-daemon 0.1.19 → 0.1.21
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/cjs/connection.cjs
CHANGED
|
@@ -47,6 +47,7 @@ var import_isolate_protocol = require("@ricsam/isolate-protocol");
|
|
|
47
47
|
var import_callback_fs_handler = require("./callback-fs-handler.cjs");
|
|
48
48
|
var import_isolate_runtime = require("@ricsam/isolate-runtime");
|
|
49
49
|
var LINKER_CONFLICT_ERROR = "Module is currently being linked by another linker";
|
|
50
|
+
var NULL_BODY_STATUSES = new Set([101, 103, 204, 205, 304]);
|
|
50
51
|
function getErrorText(error) {
|
|
51
52
|
if (error instanceof Error) {
|
|
52
53
|
const cause = error.cause;
|
|
@@ -758,6 +759,7 @@ async function handleCreateRuntime(message, connection, state) {
|
|
|
758
759
|
return { ok: false, error: { name: error.name, message: error.message } };
|
|
759
760
|
}
|
|
760
761
|
},
|
|
762
|
+
timeout: message.options.playwright?.timeout,
|
|
761
763
|
console: playwrightCallbacks.console,
|
|
762
764
|
onEvent: (event) => {
|
|
763
765
|
const conn = callbackContext.connection;
|
|
@@ -1479,16 +1481,36 @@ function handleCallbackStreamStart(message, connection) {
|
|
|
1479
1481
|
return Promise.resolve();
|
|
1480
1482
|
}
|
|
1481
1483
|
});
|
|
1484
|
+
const cancelStream = () => {
|
|
1485
|
+
connection.callbackStreamReceivers.delete(message.streamId);
|
|
1486
|
+
sendMessage(connection.socket, {
|
|
1487
|
+
type: import_isolate_protocol.MessageType.CALLBACK_STREAM_CANCEL,
|
|
1488
|
+
streamId: message.streamId
|
|
1489
|
+
});
|
|
1490
|
+
};
|
|
1482
1491
|
connection.callbackStreamReceivers.set(message.streamId, receiver);
|
|
1483
1492
|
const pending = connection.pendingCallbacks.get(message.requestId);
|
|
1484
|
-
if (pending) {
|
|
1485
|
-
|
|
1486
|
-
|
|
1493
|
+
if (!pending) {
|
|
1494
|
+
cancelStream();
|
|
1495
|
+
return;
|
|
1496
|
+
}
|
|
1497
|
+
try {
|
|
1498
|
+
const body = NULL_BODY_STATUSES.has(message.metadata.status) ? null : readableStream;
|
|
1499
|
+
const response = new Response(body, {
|
|
1487
1500
|
status: message.metadata.status,
|
|
1488
1501
|
statusText: message.metadata.statusText,
|
|
1489
1502
|
headers: message.metadata.headers
|
|
1490
1503
|
});
|
|
1504
|
+
connection.pendingCallbacks.delete(message.requestId);
|
|
1491
1505
|
pending.resolve({ __streamingResponse: true, response });
|
|
1506
|
+
if (body === null) {
|
|
1507
|
+
cancelStream();
|
|
1508
|
+
}
|
|
1509
|
+
} catch (err) {
|
|
1510
|
+
connection.pendingCallbacks.delete(message.requestId);
|
|
1511
|
+
cancelStream();
|
|
1512
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
1513
|
+
pending.reject(error);
|
|
1492
1514
|
}
|
|
1493
1515
|
}
|
|
1494
1516
|
function handleCallbackStreamChunk(message, connection) {
|
|
@@ -1751,4 +1773,4 @@ async function handleClearCollectedData(message, connection, state) {
|
|
|
1751
1773
|
}
|
|
1752
1774
|
}
|
|
1753
1775
|
|
|
1754
|
-
//# debugId=
|
|
1776
|
+
//# debugId=CCDD5E4DA24900F364756E2164756E21
|