@ricsam/isolate-client 0.1.26 → 0.1.27
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
|
@@ -602,8 +602,10 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
602
602
|
}
|
|
603
603
|
let playwrightHandler;
|
|
604
604
|
const browserConsoleLogs = [];
|
|
605
|
+
const pageErrors = [];
|
|
605
606
|
const networkRequests = [];
|
|
606
607
|
const networkResponses = [];
|
|
608
|
+
const requestFailures = [];
|
|
607
609
|
const pageListenerCleanups = [];
|
|
608
610
|
if (normalizedPlaywrightOptions) {
|
|
609
611
|
playwrightHandler = normalizedPlaywrightOptions.handler;
|
|
@@ -618,10 +620,31 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
618
620
|
return JSON.stringify(result2);
|
|
619
621
|
});
|
|
620
622
|
if (page) {
|
|
623
|
+
const requestIds = new WeakMap;
|
|
624
|
+
let nextRequestId = 1;
|
|
625
|
+
const getRequestId = (request2) => {
|
|
626
|
+
let requestId2 = requestIds.get(request2);
|
|
627
|
+
if (!requestId2) {
|
|
628
|
+
requestId2 = `req_${nextRequestId++}`;
|
|
629
|
+
requestIds.set(request2, requestId2);
|
|
630
|
+
}
|
|
631
|
+
return requestId2;
|
|
632
|
+
};
|
|
633
|
+
const toLocation = (location) => {
|
|
634
|
+
if (!location || !location.url && location.lineNumber == null && location.columnNumber == null) {
|
|
635
|
+
return;
|
|
636
|
+
}
|
|
637
|
+
return {
|
|
638
|
+
url: location.url || undefined,
|
|
639
|
+
lineNumber: location.lineNumber != null ? location.lineNumber + 1 : undefined,
|
|
640
|
+
columnNumber: location.columnNumber != null ? location.columnNumber + 1 : undefined
|
|
641
|
+
};
|
|
642
|
+
};
|
|
621
643
|
const onConsole = (msg) => {
|
|
622
644
|
const entry = {
|
|
623
645
|
level: msg.type(),
|
|
624
646
|
stdout: msg.text(),
|
|
647
|
+
location: toLocation(msg.location()),
|
|
625
648
|
timestamp: Date.now()
|
|
626
649
|
};
|
|
627
650
|
browserConsoleLogs.push(entry);
|
|
@@ -643,9 +666,12 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
643
666
|
};
|
|
644
667
|
const onRequest = (request2) => {
|
|
645
668
|
const info = {
|
|
669
|
+
requestId: getRequestId(request2),
|
|
646
670
|
url: request2.url(),
|
|
647
671
|
method: request2.method(),
|
|
648
672
|
headers: request2.headers(),
|
|
673
|
+
postData: request2.postData() ?? undefined,
|
|
674
|
+
resourceType: request2.resourceType(),
|
|
649
675
|
timestamp: Date.now()
|
|
650
676
|
};
|
|
651
677
|
networkRequests.push(info);
|
|
@@ -657,10 +683,14 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
657
683
|
}
|
|
658
684
|
};
|
|
659
685
|
const onResponse = (response) => {
|
|
686
|
+
const request2 = response.request();
|
|
660
687
|
const info = {
|
|
688
|
+
requestId: getRequestId(request2),
|
|
661
689
|
url: response.url(),
|
|
662
690
|
status: response.status(),
|
|
691
|
+
statusText: response.statusText(),
|
|
663
692
|
headers: response.headers(),
|
|
693
|
+
resourceType: request2.resourceType(),
|
|
664
694
|
timestamp: Date.now()
|
|
665
695
|
};
|
|
666
696
|
networkResponses.push(info);
|
|
@@ -671,10 +701,44 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
671
701
|
});
|
|
672
702
|
}
|
|
673
703
|
};
|
|
704
|
+
const onRequestFailed = (request2) => {
|
|
705
|
+
const info = {
|
|
706
|
+
requestId: getRequestId(request2),
|
|
707
|
+
url: request2.url(),
|
|
708
|
+
method: request2.method(),
|
|
709
|
+
failureText: request2.failure()?.errorText || "request failed",
|
|
710
|
+
resourceType: request2.resourceType(),
|
|
711
|
+
timestamp: Date.now()
|
|
712
|
+
};
|
|
713
|
+
requestFailures.push(info);
|
|
714
|
+
if (normalizedPlaywrightOptions.onEvent) {
|
|
715
|
+
normalizedPlaywrightOptions.onEvent({
|
|
716
|
+
type: "requestFailure",
|
|
717
|
+
...info
|
|
718
|
+
});
|
|
719
|
+
}
|
|
720
|
+
};
|
|
721
|
+
const onPageError = (error) => {
|
|
722
|
+
const entry = {
|
|
723
|
+
name: error.name,
|
|
724
|
+
message: error.message,
|
|
725
|
+
stack: error.stack,
|
|
726
|
+
timestamp: Date.now()
|
|
727
|
+
};
|
|
728
|
+
pageErrors.push(entry);
|
|
729
|
+
if (normalizedPlaywrightOptions.onEvent) {
|
|
730
|
+
normalizedPlaywrightOptions.onEvent({
|
|
731
|
+
type: "pageError",
|
|
732
|
+
...entry
|
|
733
|
+
});
|
|
734
|
+
}
|
|
735
|
+
};
|
|
674
736
|
page.on("console", onConsole);
|
|
675
737
|
page.on("request", onRequest);
|
|
676
738
|
page.on("response", onResponse);
|
|
677
|
-
|
|
739
|
+
page.on("requestfailed", onRequestFailed);
|
|
740
|
+
page.on("pageerror", onPageError);
|
|
741
|
+
pageListenerCleanups.push(() => page.removeListener("console", onConsole), () => page.removeListener("request", onRequest), () => page.removeListener("response", onResponse), () => page.removeListener("requestfailed", onRequestFailed), () => page.removeListener("pageerror", onPageError));
|
|
678
742
|
}
|
|
679
743
|
callbacks.playwright = {
|
|
680
744
|
handlerCallbackId,
|
|
@@ -1014,8 +1078,10 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
1014
1078
|
}
|
|
1015
1079
|
return {
|
|
1016
1080
|
browserConsoleLogs: [...browserConsoleLogs],
|
|
1081
|
+
pageErrors: [...pageErrors],
|
|
1017
1082
|
networkRequests: [...networkRequests],
|
|
1018
|
-
networkResponses: [...networkResponses]
|
|
1083
|
+
networkResponses: [...networkResponses],
|
|
1084
|
+
requestFailures: [...requestFailures]
|
|
1019
1085
|
};
|
|
1020
1086
|
},
|
|
1021
1087
|
clearCollectedData() {
|
|
@@ -1023,8 +1089,10 @@ async function createRuntime(state, options = {}, namespaceId) {
|
|
|
1023
1089
|
throw new Error("Playwright not configured. Provide playwright.handler in createRuntime options.");
|
|
1024
1090
|
}
|
|
1025
1091
|
browserConsoleLogs.length = 0;
|
|
1092
|
+
pageErrors.length = 0;
|
|
1026
1093
|
networkRequests.length = 0;
|
|
1027
1094
|
networkResponses.length = 0;
|
|
1095
|
+
requestFailures.length = 0;
|
|
1028
1096
|
}
|
|
1029
1097
|
};
|
|
1030
1098
|
return {
|
|
@@ -1789,4 +1857,4 @@ function handleClientWsClose(isolateId, payload, state) {
|
|
|
1789
1857
|
}
|
|
1790
1858
|
}
|
|
1791
1859
|
|
|
1792
|
-
//# debugId=
|
|
1860
|
+
//# debugId=AC39B45BA041D32964756E2164756E21
|