@axe-core/watcher 3.23.0-next.e129a7dc → 3.23.0-next.e2afc55f
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/sendResultsToServer.js +11 -2
- package/dist/sendResultsToServer.js.map +1 -1
- package/dist/utils/initializeSession.js +1 -1
- package/dist/utils/initializeSession.js.map +1 -1
- package/dist/utils/shouldUseEnvProxy.d.ts +5 -0
- package/dist/utils/shouldUseEnvProxy.js +24 -0
- package/dist/utils/shouldUseEnvProxy.js.map +1 -0
- package/dist/utils/sync-fetch-worker.mjs +135 -43
- package/dist/utils/sync-fetch.d.ts +1 -1
- package/dist/utils/sync-fetch.js +52 -44
- package/dist/utils/sync-fetch.js.map +1 -1
- package/dist/utils/test-constants.d.ts +14 -0
- package/dist/utils/test-constants.js +12 -0
- package/dist/utils/test-constants.js.map +1 -0
- package/extension/background.js +1 -1
- package/extension/content.js +1 -1
- package/package.json +5 -2
@@ -43,6 +43,7 @@ const readVariables_1 = __importDefault(require("./utils/readVariables"));
|
|
43
43
|
const linearBackoff_1 = __importDefault(require("./utils/linearBackoff"));
|
44
44
|
const createAbortController_1 = __importStar(require("./utils/createAbortController"));
|
45
45
|
const isCI_1 = require("./utils/isCI");
|
46
|
+
const shouldUseEnvProxy_1 = require("./utils/shouldUseEnvProxy");
|
46
47
|
const { version } = require('../package.json');
|
47
48
|
exports.MAX_PAGE_STATES_PER_REQUEST = 5;
|
48
49
|
exports.MAX_RETRIES = 3;
|
@@ -65,6 +66,10 @@ const sendResultsToServer = async ({ results, debugLogger }) => {
|
|
65
66
|
...git_data
|
66
67
|
};
|
67
68
|
const { signal, cleanup } = (0, createAbortController_1.default)();
|
69
|
+
let dispatcher = (0, undici_1.getGlobalDispatcher)();
|
70
|
+
if ((0, shouldUseEnvProxy_1.shouldUseEnvProxy)()) {
|
71
|
+
dispatcher = new undici_1.EnvHttpProxyAgent();
|
72
|
+
}
|
68
73
|
try {
|
69
74
|
const res = await fetch(resultsURL, {
|
70
75
|
method: 'PUT',
|
@@ -73,7 +78,7 @@ const sendResultsToServer = async ({ results, debugLogger }) => {
|
|
73
78
|
'Content-Type': 'application/json',
|
74
79
|
'X-API-Key': api_key
|
75
80
|
},
|
76
|
-
dispatcher
|
81
|
+
dispatcher,
|
77
82
|
body: JSON.stringify(body),
|
78
83
|
signal
|
79
84
|
});
|
@@ -175,6 +180,10 @@ const sendResultsToServer = async ({ results, debugLogger }) => {
|
|
175
180
|
if (catchResult) {
|
176
181
|
return Promise.resolve(catchResult);
|
177
182
|
}
|
183
|
+
let dispatcher = (0, undici_1.getGlobalDispatcher)();
|
184
|
+
if ((0, shouldUseEnvProxy_1.shouldUseEnvProxy)()) {
|
185
|
+
dispatcher = new undici_1.EnvHttpProxyAgent();
|
186
|
+
}
|
178
187
|
await Promise.all(results.map(async ({ screenshot, screenshot_id }) => {
|
179
188
|
if (!screenshot) {
|
180
189
|
return;
|
@@ -184,7 +193,7 @@ const sendResultsToServer = async ({ results, debugLogger }) => {
|
|
184
193
|
const { ok } = await fetch(url, {
|
185
194
|
method: 'POST',
|
186
195
|
redirect: 'follow',
|
187
|
-
dispatcher
|
196
|
+
dispatcher,
|
188
197
|
headers: {
|
189
198
|
'Content-Type': 'image/png',
|
190
199
|
'X-API-Key': api_key
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendResultsToServer.js","sourceRoot":"","sources":["../src/sendResultsToServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,
|
1
|
+
{"version":3,"file":"sendResultsToServer.js","sourceRoot":"","sources":["../src/sendResultsToServer.ts"],"names":[],"mappings":"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"}
|
@@ -66,7 +66,7 @@ function initializeSession({ apiKey, projectId, serverURL, watcherVersion, sessi
|
|
66
66
|
method: 'POST',
|
67
67
|
body: JSON.stringify(payload)
|
68
68
|
});
|
69
|
-
const body =
|
69
|
+
const body = res.body;
|
70
70
|
const error = body.error || (body.errors?.length && body.errors[0]);
|
71
71
|
if (error) {
|
72
72
|
debugLogger('Error initializing session:', error);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"initializeSession.js","sourceRoot":"","sources":["../../src/utils/initializeSession.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"initializeSession.js","sourceRoot":"","sources":["../../src/utils/initializeSession.ts"],"names":[],"mappings":";;;;;AAAA,oDAA2B;AAC3B,+BAA+C;AAC/C,uEAA8C;AAG9C,6CAAwC;AACxC,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,0BAA0B,CAAC,CAAA;AAqE9D,SAAS,iBAAiB,CAAC,EACzB,MAAM,EACN,SAAS,EACT,SAAS,EACT,cAAc,EACd,SAAS,EACT,OAAO,EACP,YAAY,EACZ,MAAM,EACN,SAAS,EACT,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,EACN,cAAc,EACd,eAAe,EACf,UAAU,EACV,iBAAiB,EACO;IAIxB,IAAA,gBAAM,EAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;IACrC,IAAA,gBAAM,EAAC,SAAS,EAAE,wBAAwB,CAAC,CAAA;IAC3C,IAAA,gBAAM,EAAC,cAAc,EAAE,6BAA6B,CAAC,CAAA;IACrD,IAAA,gBAAM,EACJ,CAAC,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,CAAC,EAC7C,6BAA6B,CAC9B,CAAA;IACD,IAAA,gBAAM,EAAC,CAAC,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC,EAAE,2BAA2B,CAAC,CAAA;IAC9E,IAAA,gBAAM,EACJ,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,EACvB,yGAAyG,CAC1G,CAAA;IACD,IAAA,gBAAM,EACJ,CAAC,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,CAAC,EACnD,iCAAiC,CAClC,CAAA;IACD,IAAA,gBAAM,EACJ,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,EAC7C,kCAAkC,CACnC,CAAA;IACD,IAAA,gBAAM,EACJ,SAAS,KAAK,IAAI,IAAI,OAAO,SAAS,KAAK,QAAQ,EACnD,qCAAqC,CACtC,CAAA;IACD,IAAA,gBAAM,EACJ,eAAe,KAAK,IAAI,IAAI,OAAO,eAAe,KAAK,QAAQ,EAC/D,4CAA4C,CAC7C,CAAA;IACD,IAAA,gBAAM,EACJ,UAAU,KAAK,IAAI,IAAI,OAAO,UAAU,KAAK,SAAS,EACtD,wCAAwC,CACzC,CAAA;IACD,IAAA,gBAAM,EACJ,gBAAgB,KAAK,IAAI,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EACjE,6CAA6C,CAC9C,CAAA;IACD,IAAA,gBAAM,EACJ,gBAAgB,KAAK,IAAI,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EACjE,6CAA6C,CAC9C,CAAA;IACD,IAAA,gBAAM,EACJ,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,EAC7C,kCAAkC,CACnC,CAAA;IACD,IAAA,gBAAM,EACJ,cAAc,KAAK,IAAI,IAAI,OAAO,cAAc,KAAK,QAAQ,EAC7D,2CAA2C,CAC5C,CAAA;IACD,IAAA,gBAAM,EACJ,eAAe,KAAK,IAAI,IAAI,OAAO,eAAe,KAAK,QAAQ,EAC/D,mDAAmD,CACpD,CAAA;IACD,IAAA,gBAAM,EACJ,UAAU,KAAK,IAAI,IAAI,OAAO,UAAU,KAAK,QAAQ,EACrD,uCAAuC,CACxC,CAAA;IAED,IAAA,gBAAM,EACJ,SAAS,KAAK,IAAI,IAAI,IAAA,eAAY,EAAC,SAAS,CAAC,EAC7C,4CAA4C,CAC7C,CAAA;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAA;IAC3D,IAAI,iBAAiB,EAAE,CAAC;QACtB,WAAW,CAAC,4CAA4C,CAAC,CAAA;IAC3D,CAAC;IACD,MAAM,OAAO,GAA6B;QACxC,eAAe,EAAE,cAAc;QAC/B,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,OAAO;QACjB,cAAc,EAAE,YAAY;QAC5B,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,SAAS;QACrB,iBAAiB,EAAE,eAAe;QAClC,YAAY,EAAE,UAAU;QACxB,kBAAkB,EAAE,gBAAgB;QACpC,kBAAkB,EAAE,gBAAgB;QACpC,OAAO,EAAE,MAAM;QACf,gBAAgB,EAAE,cAAc;QAChC,cAAc,EAAE;YACd,uBAAuB,EAAE,eAAe;gBACtC,CAAC,CAAC;oBACE,sBAAsB,EAAE,eAAe,EAAE,qBAAqB;oBAC9D,gBAAgB,EAAE,eAAe,EAAE,cAAc;oBACjD,cAAc,EAAE,eAAe,EAAE,aAAa;oBAC9C,kBAAkB,EAAE,eAAe,EAAE,iBAAiB;iBACvD;gBACH,CAAC,CAAC,IAAI;YACR,WAAW,EAAE,UAAU;SACxB;QAED,GAAG,CAAC,SAAS,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;QAC3C,mBAAmB,EAAE,iBAAiB;KACvC,CAAA;IAED,MAAM,GAAG,GAAG,IAAA,sBAAS,EAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;QACpC,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,kBAAkB;SACnC;QACD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAA;IAEF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAiC,CAAA;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,IAAI,KAAK,EAAE,CAAC;QACV,WAAW,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;QACjD,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACzB,WAAW,CAAC,+BAA+B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAG3D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,WAAW,CAAC,mCAAmC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAEjE,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KAC1C,CAAA;AACH,CAAC;AAED,kBAAe,iBAAiB,CAAA"}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.shouldUseEnvProxy = void 0;
|
4
|
+
const shouldUseEnvProxy = function () {
|
5
|
+
const envVars = [
|
6
|
+
'NODE_USE_ENV_PROXY',
|
7
|
+
'AXE_WATCHER_USE_ENV_PROXY',
|
8
|
+
'AXE_USE_ENV_PROXY'
|
9
|
+
];
|
10
|
+
for (const envVar of envVars) {
|
11
|
+
const value = process.env[envVar.toLowerCase()] ?? process.env[envVar];
|
12
|
+
if (value !== undefined) {
|
13
|
+
if (value === '0') {
|
14
|
+
return false;
|
15
|
+
}
|
16
|
+
if (value !== '') {
|
17
|
+
return true;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
return false;
|
22
|
+
};
|
23
|
+
exports.shouldUseEnvProxy = shouldUseEnvProxy;
|
24
|
+
//# sourceMappingURL=shouldUseEnvProxy.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"shouldUseEnvProxy.js","sourceRoot":"","sources":["../../src/utils/shouldUseEnvProxy.ts"],"names":[],"mappings":";;;AAIO,MAAM,iBAAiB,GAAG;IAC/B,MAAM,OAAO,GAAG;QACd,oBAAoB;QACpB,2BAA2B;QAC3B,mBAAmB;KACpB,CAAA;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEtE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AArBY,QAAA,iBAAiB,qBAqB7B"}
|
@@ -6,72 +6,164 @@
|
|
6
6
|
*/
|
7
7
|
|
8
8
|
import { isMainThread, workerData } from 'node:worker_threads'
|
9
|
-
import { EnvHttpProxyAgent } from 'undici'
|
9
|
+
import { EnvHttpProxyAgent, getGlobalDispatcher } from 'undici'
|
10
10
|
|
11
11
|
if (isMainThread) {
|
12
12
|
throw new Error('This script should only be run as a worker thread')
|
13
13
|
}
|
14
14
|
|
15
|
-
|
16
|
-
|
15
|
+
/**
|
16
|
+
* The core Error type used when this worker fails.
|
17
|
+
* It is the only error to exit the message bus.
|
18
|
+
* Any other errors are causes of this one.
|
19
|
+
*/
|
20
|
+
class FetchWorkerError extends Error {
|
21
|
+
constructor(context) {
|
22
|
+
super('FetchWorkerError')
|
23
|
+
this.name = 'FetchWorkerError'
|
24
|
+
this.context = context
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
/**
|
29
|
+
* A specific error used when we encounter an error that
|
30
|
+
* can not be serialized.
|
31
|
+
*/
|
32
|
+
class OverrideError extends Error {
|
33
|
+
constructor(message, sourceName) {
|
34
|
+
super(message)
|
35
|
+
this.name = 'OverrideError'
|
36
|
+
this.sourceName = sourceName
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Attempt to sanitize a URL by redacting sensitive information.
|
42
|
+
* If the URL cannot be parsed, it is returned as-is.
|
43
|
+
*
|
44
|
+
* @internal
|
45
|
+
*
|
46
|
+
* @param {string} url - The URL to sanitize.
|
47
|
+
*
|
48
|
+
* @returns {string} The sanitized URL with sensitive information redacted.
|
49
|
+
*/
|
50
|
+
const sanitizeUrl = url => {
|
51
|
+
try {
|
52
|
+
const parsedUrl = new URL(url)
|
53
|
+
|
54
|
+
if (parsedUrl.username !== '') {
|
55
|
+
parsedUrl.username = 'REDACTED'
|
56
|
+
}
|
57
|
+
if (parsedUrl.password !== '') {
|
58
|
+
parsedUrl.password = 'REDACTED'
|
59
|
+
}
|
60
|
+
|
61
|
+
return parsedUrl.toString()
|
62
|
+
} catch {
|
63
|
+
return url
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
/**
|
68
|
+
* Tested source in ./shouldUseEnvProxy.ts
|
69
|
+
* This has to be duplicated since we can't import here and
|
70
|
+
* it is ran in a worker thread. Once Node 22+ is our
|
71
|
+
* minimum, we can convert this file to TS since that has
|
72
|
+
* erasable types.
|
73
|
+
*/
|
74
|
+
const shouldUseEnvProxy = function () {
|
75
|
+
const envVars = [
|
76
|
+
'NODE_USE_ENV_PROXY',
|
77
|
+
'AXE_WATCHER_USE_ENV_PROXY',
|
78
|
+
'AXE_USE_ENV_PROXY'
|
79
|
+
]
|
17
80
|
|
18
|
-
const
|
19
|
-
const
|
20
|
-
|
21
|
-
|
22
|
-
)
|
81
|
+
for (const envVar of envVars) {
|
82
|
+
const value = process.env[envVar.toLowerCase()] ?? process.env[envVar]
|
83
|
+
|
84
|
+
if (value !== undefined) {
|
85
|
+
if (value === '0') {
|
86
|
+
return false
|
87
|
+
}
|
88
|
+
if (value !== '') {
|
89
|
+
return true
|
90
|
+
}
|
91
|
+
}
|
92
|
+
}
|
93
|
+
|
94
|
+
return false
|
95
|
+
}
|
96
|
+
|
97
|
+
/**
|
98
|
+
* @typedef {Object} WorkerData
|
99
|
+
* @property {string} url - The URL to fetch.
|
100
|
+
* @property {Object} options - The fetch options.
|
101
|
+
* @property {number} timeout - The timeout in milliseconds.
|
102
|
+
* @property {MessagePort} port - The message port for communication.
|
103
|
+
*/
|
104
|
+
const { url, options, timeout, port } = workerData
|
23
105
|
|
24
106
|
try {
|
107
|
+
let dispatcher = getGlobalDispatcher()
|
108
|
+
|
109
|
+
if (shouldUseEnvProxy()) {
|
110
|
+
dispatcher = new EnvHttpProxyAgent()
|
111
|
+
}
|
112
|
+
|
25
113
|
const response = await fetch(url, {
|
26
114
|
...options,
|
27
|
-
dispatcher
|
115
|
+
dispatcher,
|
28
116
|
signal: AbortSignal.timeout(timeout)
|
29
117
|
})
|
30
118
|
|
31
|
-
const
|
32
|
-
const
|
119
|
+
const contentType = response.headers.get('Content-Type')
|
120
|
+
const isResponseJson = contentType?.startsWith('application/json') ?? false
|
121
|
+
const body = isResponseJson ? await response.json() : await response.text()
|
122
|
+
|
123
|
+
const responseData = {
|
33
124
|
status: response.status,
|
34
125
|
statusText: response.statusText,
|
126
|
+
// Headers can't be serialized directly
|
35
127
|
headers: Object.fromEntries(response.headers.entries()),
|
36
128
|
body,
|
37
129
|
ok: response.ok
|
38
|
-
}
|
130
|
+
}
|
39
131
|
|
40
|
-
|
41
|
-
|
132
|
+
port.postMessage({
|
133
|
+
data: responseData
|
134
|
+
})
|
135
|
+
} catch (error) {
|
136
|
+
const HTTP_PROXY = process.env.http_proxy || process.env.HTTP_PROXY
|
137
|
+
const HTTPS_PROXY = process.env.https_proxy || process.env.HTTPS_PROXY
|
138
|
+
const NO_PROXY = process.env.no_proxy || process.env.NO_PROXY
|
42
139
|
|
43
|
-
|
44
|
-
|
140
|
+
const context = {
|
141
|
+
url: sanitizeUrl(url),
|
142
|
+
env: {
|
143
|
+
HTTP_PROXY: HTTP_PROXY ? sanitizeUrl(HTTP_PROXY) : undefined,
|
144
|
+
HTTPS_PROXY: HTTPS_PROXY ? sanitizeUrl(HTTPS_PROXY) : undefined,
|
145
|
+
NO_PROXY,
|
146
|
+
NODE_EXTRA_CA_CERTS: process.env.NODE_EXTRA_CA_CERTS,
|
147
|
+
NODE_TLS_REJECT_UNAUTHORIZED: process.env.NODE_TLS_REJECT_UNAUTHORIZED
|
148
|
+
}
|
45
149
|
}
|
46
150
|
|
47
|
-
const
|
48
|
-
|
49
|
-
BUFFER_LAYOUT.LENGTH_OFFSET,
|
50
|
-
BUFFER_LAYOUT.LENGTH_VIEW_SIZE
|
51
|
-
)
|
52
|
-
lengthView[0] = encoded.length
|
53
|
-
responseBuffer.set(encoded)
|
151
|
+
const err = new FetchWorkerError(context)
|
152
|
+
err.cause = error
|
54
153
|
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
const encoded = encoder.encode(errorMessage)
|
64
|
-
|
65
|
-
if (encoded.length <= responseBuffer.length - 4) {
|
66
|
-
const lengthView = new Uint32Array(
|
67
|
-
sharedBuffer,
|
68
|
-
BUFFER_LAYOUT.LENGTH_OFFSET,
|
69
|
-
BUFFER_LAYOUT.LENGTH_VIEW_SIZE
|
70
|
-
)
|
71
|
-
lengthView[0] = encoded.length
|
72
|
-
responseBuffer.set(encoded)
|
154
|
+
if (error instanceof DOMException) {
|
155
|
+
if (error.name === 'TimeoutError') {
|
156
|
+
const timeoutError = new OverrideError(
|
157
|
+
`The operation was aborted due to timeout (${timeout}ms)`,
|
158
|
+
'TimeoutError'
|
159
|
+
)
|
160
|
+
err.cause = timeoutError
|
161
|
+
}
|
73
162
|
}
|
74
163
|
|
75
|
-
|
76
|
-
|
164
|
+
port.postMessage({
|
165
|
+
error: err
|
166
|
+
})
|
167
|
+
} finally {
|
168
|
+
port.close()
|
77
169
|
}
|
@@ -5,7 +5,7 @@ export interface SyncFetchResponse {
|
|
5
5
|
status: number;
|
6
6
|
statusText: string;
|
7
7
|
headers: Record<string, string>;
|
8
|
-
body:
|
8
|
+
body: unknown;
|
9
9
|
ok: boolean;
|
10
10
|
}
|
11
11
|
export declare function syncFetch(url: string, options?: RequestInit, customOptions?: SyncFetchCustomOptions): SyncFetchResponse;
|
package/dist/utils/sync-fetch.js
CHANGED
@@ -3,70 +3,78 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.syncFetch = syncFetch;
|
4
4
|
const node_worker_threads_1 = require("node:worker_threads");
|
5
5
|
const node_path_1 = require("node:path");
|
6
|
-
const WORKER_STATUS = {
|
7
|
-
PENDING: 0,
|
8
|
-
SUCCESS: 1,
|
9
|
-
ERROR: 2
|
10
|
-
};
|
11
|
-
const BUFFER_LAYOUT = {
|
12
|
-
STATUS_INDEX: 0,
|
13
|
-
LENGTH_OFFSET: 12,
|
14
|
-
RESPONSE_OFFSET: 16,
|
15
|
-
LENGTH_VIEW_SIZE: 1,
|
16
|
-
DEFAULT_BUFFER_SIZE: 1024 * 1024
|
17
|
-
};
|
18
6
|
function syncFetch(url, options = {}, customOptions = {
|
19
7
|
timeout: 30000
|
20
8
|
}) {
|
21
9
|
const timeout = customOptions.timeout || 30000;
|
22
10
|
const processingBuffer = 3000;
|
23
11
|
const mainThreadTimeout = timeout + processingBuffer;
|
24
|
-
const
|
25
|
-
const
|
26
|
-
|
12
|
+
const { port1, port2 } = new node_worker_threads_1.MessageChannel();
|
13
|
+
const sleepBuffer = new SharedArrayBuffer(4);
|
14
|
+
const sleepArray = new Int32Array(sleepBuffer);
|
27
15
|
const worker = new node_worker_threads_1.Worker((0, node_path_1.join)(__dirname, 'sync-fetch-worker.mjs'), {
|
28
16
|
name: 'sync-fetch',
|
29
17
|
eval: false,
|
30
18
|
workerData: {
|
31
19
|
url,
|
32
20
|
options,
|
33
|
-
sharedBuffer,
|
34
21
|
timeout,
|
35
|
-
|
36
|
-
|
37
|
-
|
22
|
+
port: port2
|
23
|
+
},
|
24
|
+
transferList: [port2]
|
38
25
|
});
|
26
|
+
const { startTime } = performance.mark('axe-watcher:sync-fetch:start');
|
27
|
+
let message;
|
39
28
|
try {
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
}
|
44
|
-
const status = Atomics.load(int32Array, BUFFER_LAYOUT.STATUS_INDEX);
|
45
|
-
if (status === WORKER_STATUS.ERROR) {
|
46
|
-
const lengthView = new Uint32Array(sharedBuffer, BUFFER_LAYOUT.LENGTH_OFFSET, BUFFER_LAYOUT.LENGTH_VIEW_SIZE);
|
47
|
-
const responseLength = lengthView[0];
|
48
|
-
const responseBuffer = new Uint8Array(sharedBuffer, BUFFER_LAYOUT.RESPONSE_OFFSET, responseLength);
|
49
|
-
const decoder = new TextDecoder();
|
50
|
-
const errorMessage = decoder.decode(responseBuffer);
|
51
|
-
throw new Error(`Fetch failed: ${errorMessage}`);
|
52
|
-
}
|
53
|
-
if (status === WORKER_STATUS.SUCCESS) {
|
54
|
-
const lengthView = new Uint32Array(sharedBuffer, BUFFER_LAYOUT.LENGTH_OFFSET, BUFFER_LAYOUT.LENGTH_VIEW_SIZE);
|
55
|
-
const responseLength = lengthView[0];
|
56
|
-
const responseBuffer = new Uint8Array(sharedBuffer, BUFFER_LAYOUT.RESPONSE_OFFSET, responseLength);
|
57
|
-
const decoder = new TextDecoder();
|
58
|
-
const responseText = decoder.decode(responseBuffer);
|
59
|
-
try {
|
60
|
-
return JSON.parse(responseText);
|
61
|
-
}
|
62
|
-
catch {
|
63
|
-
throw new Error('Failed to parse response data');
|
29
|
+
while (message === undefined) {
|
30
|
+
if (performance.now() - startTime > mainThreadTimeout) {
|
31
|
+
throw new Error(`Request timed out - worker thread did not respond within ${mainThreadTimeout}ms`);
|
64
32
|
}
|
33
|
+
Atomics.wait(sleepArray, 0, 0, 5);
|
34
|
+
message = (0, node_worker_threads_1.receiveMessageOnPort)(port1);
|
35
|
+
}
|
36
|
+
const { data, error } = message.message;
|
37
|
+
if (error) {
|
38
|
+
const syncErr = new Error('Sync Fetch Failed');
|
39
|
+
syncErr.cause = error;
|
40
|
+
throw syncErr;
|
65
41
|
}
|
66
|
-
|
42
|
+
return data;
|
67
43
|
}
|
68
44
|
finally {
|
45
|
+
performance.mark('axe-watcher:sync-fetch:end');
|
46
|
+
port1.close();
|
69
47
|
worker.terminate();
|
48
|
+
const clone = structuredClone(options);
|
49
|
+
clone.headers = sanitizeHeaders(clone.headers);
|
50
|
+
performance.measure('axe-watcher:sync-fetch', {
|
51
|
+
start: 'axe-watcher:sync-fetch:start',
|
52
|
+
end: 'axe-watcher:sync-fetch:end',
|
53
|
+
detail: {
|
54
|
+
url,
|
55
|
+
options: clone,
|
56
|
+
timeout,
|
57
|
+
status: message?.message.type || 'no-response',
|
58
|
+
response: {
|
59
|
+
status: message?.message.data?.status,
|
60
|
+
statusText: message?.message.data?.statusText
|
61
|
+
}
|
62
|
+
}
|
63
|
+
});
|
64
|
+
}
|
65
|
+
}
|
66
|
+
function sanitizeHeaders(headers) {
|
67
|
+
if (!headers) {
|
68
|
+
return undefined;
|
69
|
+
}
|
70
|
+
const sanitized = {};
|
71
|
+
for (const [key, value] of Object.entries(headers)) {
|
72
|
+
if (key.toLowerCase() === 'x-api-key'.toLowerCase()) {
|
73
|
+
sanitized[key.toLowerCase()] = 'REDACTED';
|
74
|
+
continue;
|
75
|
+
}
|
76
|
+
sanitized[key.toLowerCase()] = value;
|
70
77
|
}
|
78
|
+
return sanitized;
|
71
79
|
}
|
72
80
|
//# sourceMappingURL=sync-fetch.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/**
|
2
|
+
* Session IDs to be shared throughout tests that need to
|
3
|
+
* simulate various behaviors of initializing a session.
|
4
|
+
* Independently exported so importing from other files
|
5
|
+
* doesn't create side effects.
|
6
|
+
*/
|
7
|
+
export declare const specialResponseSessionIds: {
|
8
|
+
readonly 'fail-server-error': "fail-server-error";
|
9
|
+
readonly 'fail-legacy-errors': "fail-legacy-errors";
|
10
|
+
readonly 'fail-timeout': "fail-timeout";
|
11
|
+
readonly 'success-project-id-included': "success-project-id-included";
|
12
|
+
readonly 'success-project-id-excluded': "success-project-id-excluded";
|
13
|
+
readonly 'mock-session-id': "mock-session-id";
|
14
|
+
};
|
@@ -0,0 +1,12 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.specialResponseSessionIds = void 0;
|
4
|
+
exports.specialResponseSessionIds = {
|
5
|
+
'fail-server-error': 'fail-server-error',
|
6
|
+
'fail-legacy-errors': 'fail-legacy-errors',
|
7
|
+
'fail-timeout': 'fail-timeout',
|
8
|
+
'success-project-id-included': 'success-project-id-included',
|
9
|
+
'success-project-id-excluded': 'success-project-id-excluded',
|
10
|
+
'mock-session-id': 'mock-session-id'
|
11
|
+
};
|
12
|
+
//# sourceMappingURL=test-constants.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"test-constants.js","sourceRoot":"","sources":["../../src/utils/test-constants.ts"],"names":[],"mappings":";;;AAMa,QAAA,yBAAyB,GAAG;IAEvC,mBAAmB,EAAE,mBAAmB;IACxC,oBAAoB,EAAE,oBAAoB;IAC1C,cAAc,EAAE,cAAc;IAC9B,6BAA6B,EAAE,6BAA6B;IAC5D,6BAA6B,EAAE,6BAA6B;IAC5D,iBAAiB,EAAE,iBAAiB;CAC5B,CAAA"}
|