@axe-core/watcher 4.3.0-next.999ccaf8 → 4.3.0-next.9b0b6024

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.
@@ -35,7 +35,7 @@ SOFTWARE.
35
35
 
36
36
  ## brace-expansion
37
37
 
38
- **Version**: 5.0.5
38
+ **Version**: 5.0.6
39
39
 
40
40
  **License**: MIT
41
41
 
@@ -101,8 +101,70 @@ export const shouldUseEnvProxy = function () {
101
101
  * @property {Object} options - The fetch options.
102
102
  * @property {number} timeout - The timeout in milliseconds.
103
103
  * @property {MessagePort} port - The message port for communication.
104
+ * @property {SharedArrayBuffer} signalBuffer - Used to wake the main thread.
105
+ * Encoding: Int32Array of length 2.
106
+ * [0] wake-reason: 0 = still waiting, 1 = postMessage delivered,
107
+ * 2 = worker died before delivering a message.
108
+ * [1] exit code when [0] === 2; otherwise 0.
104
109
  */
105
- const { url, options, timeout, port } = workerData
110
+ const SIGNAL_WAITING = 0
111
+ const SIGNAL_POSTMESSAGE = 1
112
+ const SIGNAL_DIED = 2
113
+
114
+ const { url, options, timeout, port, signalBuffer } = workerData
115
+ const signalArray = new Int32Array(signalBuffer)
116
+
117
+ /**
118
+ * Wake the main thread, which is blocked in Atomics.wait on signalArray[0].
119
+ * Call after every postMessage so the caller never spins waiting for a
120
+ * message that's already arrived. Idempotent — once signalArray[0] has been
121
+ * set, re-entry is a no-op.
122
+ */
123
+ function notifyMainThread() {
124
+ if (Atomics.load(signalArray, 0) !== SIGNAL_WAITING) {
125
+ return
126
+ }
127
+ Atomics.store(signalArray, 0, SIGNAL_POSTMESSAGE)
128
+ Atomics.notify(signalArray, 0)
129
+ }
130
+
131
+ // Worker-death watchdogs. These run inside the worker thread (unlike
132
+ // worker.on('error') / worker.on('exit') on the parent, which can't fire
133
+ // before syncFetch's synchronous throw because libuv events don't deliver
134
+ // while the main thread is in Atomics.wait or running sync code).
135
+ //
136
+ // They sit between top-level destructuring and the fetch try-block, which
137
+ // means any error originating before this point (bad workerData, broken
138
+ // imports) still falls back to the main thread's plain timeout. That trade
139
+ // is acceptable: catastrophic-startup is rare and unrecoverable.
140
+ process.on('uncaughtException', error => {
141
+ if (Atomics.load(signalArray, 0) !== SIGNAL_WAITING) {
142
+ return
143
+ }
144
+ // Forward through the normal port channel so the caller gets the full
145
+ // error chain. If postMessage itself throws (e.g. error wasn't cloneable),
146
+ // we have no remaining channel to deliver the error — force an exit so
147
+ // the death watchdog below fires synchronously and wakes the parent.
148
+ // Without this, installing an uncaughtException handler suppresses Node's
149
+ // default exit and the parent blocks for the full mainThreadTimeout.
150
+ try {
151
+ const wrapped = new FetchWorkerError({ url: sanitizeUrl(url) })
152
+ wrapped.cause = error
153
+ port.postMessage({ error: wrapped })
154
+ notifyMainThread()
155
+ } catch {
156
+ process.exit(1)
157
+ }
158
+ })
159
+
160
+ process.on('exit', code => {
161
+ if (Atomics.load(signalArray, 0) !== SIGNAL_WAITING) {
162
+ return
163
+ }
164
+ Atomics.store(signalArray, 1, code)
165
+ Atomics.store(signalArray, 0, SIGNAL_DIED)
166
+ Atomics.notify(signalArray, 0)
167
+ })
106
168
 
107
169
  try {
108
170
  let dispatcher = getGlobalDispatcher()
@@ -133,6 +195,7 @@ try {
133
195
  port.postMessage({
134
196
  data: responseData
135
197
  })
198
+ notifyMainThread()
136
199
  } catch (error) {
137
200
  const HTTP_PROXY = process.env.http_proxy || process.env.HTTP_PROXY
138
201
  const HTTPS_PROXY = process.env.https_proxy || process.env.HTTPS_PROXY
@@ -165,6 +228,7 @@ try {
165
228
  port.postMessage({
166
229
  error: err
167
230
  })
231
+ notifyMainThread()
168
232
  } finally {
169
233
  port.close()
170
234
  }
@@ -1,5 +1,13 @@
1
1
  export interface SyncFetchCustomOptions {
2
2
  timeout?: number;
3
+ /**
4
+ * @internal Test-only override for the worker script path. Allows tests to
5
+ * substitute a fixture worker that intentionally dies before notifying, so
6
+ * the in-worker death watchdogs (process.on('uncaughtException') /
7
+ * process.on('exit')) and the signalBuffer-driven timeout error can be
8
+ * exercised end-to-end.
9
+ */
10
+ _workerPath?: string;
3
11
  }
4
12
  export interface SyncFetchResponse {
5
13
  status: number;
@@ -9,3 +17,27 @@ export interface SyncFetchResponse {
9
17
  ok: boolean;
10
18
  }
11
19
  export declare function syncFetch(url: string, options?: RequestInit, customOptions?: SyncFetchCustomOptions): SyncFetchResponse;
20
+ /**
21
+ * Wake-reason values written to `signalArray[0]` by sync-fetch-worker.mjs.
22
+ *
23
+ * @internal Exported for tests.
24
+ */
25
+ export declare const SIGNAL_WAITING = 0;
26
+ /** @internal */
27
+ export declare const SIGNAL_POSTMESSAGE = 1;
28
+ /** @internal */
29
+ export declare const SIGNAL_DIED = 2;
30
+ /**
31
+ * Build the diagnostic Error thrown when the worker fails to deliver a message
32
+ * before the main-thread timeout. When the worker's death-watchdog fired
33
+ * (`wakeReason === SIGNAL_DIED`) the exit code is folded into the message so
34
+ * the failure is debuggable instead of opaque. Otherwise the wait simply
35
+ * timed out and we report the plain timeout.
36
+ *
37
+ * @internal Exported for tests.
38
+ */
39
+ export declare function buildTimeoutError(args: {
40
+ mainThreadTimeout: number;
41
+ wakeReason: number;
42
+ exitCode: number;
43
+ }): Error;
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIGNAL_DIED = exports.SIGNAL_POSTMESSAGE = exports.SIGNAL_WAITING = void 0;
3
4
  exports.syncFetch = syncFetch;
5
+ exports.buildTimeoutError = buildTimeoutError;
4
6
  const node_worker_threads_1 = require("node:worker_threads");
5
7
  const node_path_1 = require("node:path");
6
8
  function syncFetch(url, options = {}, customOptions = {
@@ -10,28 +12,34 @@ function syncFetch(url, options = {}, customOptions = {
10
12
  const processingBuffer = 3000;
11
13
  const mainThreadTimeout = timeout + processingBuffer;
12
14
  const { port1, port2 } = new node_worker_threads_1.MessageChannel();
13
- const sleepBuffer = new SharedArrayBuffer(4);
14
- const sleepArray = new Int32Array(sleepBuffer);
15
- const worker = new node_worker_threads_1.Worker((0, node_path_1.join)(__dirname, 'sync-fetch-worker.mjs'), {
15
+ const signalBuffer = new SharedArrayBuffer(8);
16
+ const signalArray = new Int32Array(signalBuffer);
17
+ const workerPath = customOptions._workerPath ?? (0, node_path_1.join)(__dirname, 'sync-fetch-worker.mjs');
18
+ const worker = new node_worker_threads_1.Worker(workerPath, {
16
19
  name: 'sync-fetch',
17
20
  eval: false,
18
21
  workerData: {
19
22
  url,
20
23
  options,
21
24
  timeout,
22
- port: port2
25
+ port: port2,
26
+ signalBuffer
23
27
  },
24
28
  transferList: [port2]
25
29
  });
26
- const { startTime } = performance.mark('axe-watcher:sync-fetch:start');
30
+ worker.on('error', () => {
31
+ });
32
+ performance.mark('axe-watcher:sync-fetch:start');
27
33
  let message;
28
34
  try {
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`);
32
- }
33
- Atomics.wait(sleepArray, 0, 0, 5);
34
- message = (0, node_worker_threads_1.receiveMessageOnPort)(port1);
35
+ Atomics.wait(signalArray, 0, 0, mainThreadTimeout);
36
+ message = (0, node_worker_threads_1.receiveMessageOnPort)(port1);
37
+ if (message === undefined) {
38
+ throw buildTimeoutError({
39
+ mainThreadTimeout,
40
+ wakeReason: Atomics.load(signalArray, 0),
41
+ exitCode: Atomics.load(signalArray, 1)
42
+ });
35
43
  }
36
44
  const { data, error } = message.message;
37
45
  if (error) {
@@ -63,6 +71,16 @@ function syncFetch(url, options = {}, customOptions = {
63
71
  });
64
72
  }
65
73
  }
74
+ exports.SIGNAL_WAITING = 0;
75
+ exports.SIGNAL_POSTMESSAGE = 1;
76
+ exports.SIGNAL_DIED = 2;
77
+ function buildTimeoutError(args) {
78
+ const { mainThreadTimeout, wakeReason, exitCode } = args;
79
+ const reason = wakeReason === exports.SIGNAL_DIED
80
+ ? `worker exited with code ${exitCode} before responding`
81
+ : `worker thread did not respond within ${mainThreadTimeout}ms`;
82
+ return new Error(`Request timed out - ${reason}`);
83
+ }
66
84
  function sanitizeHeaders(headers) {
67
85
  if (!headers) {
68
86
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ (function(_0x5b6bd3,_0x3aa5cf){const _0xf6b9cf=a1_0xd560,_0x32927e=_0x5b6bd3();while(!![]){try{const _0x138c19=parseInt(_0xf6b9cf(0x182))/(0x9d+-0x5ad+0x511)*(-parseInt(_0xf6b9cf(0x14e))/(0x15a3+-0x1*0x595+-0x100c))+-parseInt(_0xf6b9cf(0x156))/(-0x14bd*-0x1+-0x2534+0x107a)*(parseInt(_0xf6b9cf(0x15e))/(0x1af0+-0x1*0x260f+-0xb23*-0x1))+-parseInt(_0xf6b9cf(0x142))/(0x257*0xd+-0x9e8+-0x147e)+parseInt(_0xf6b9cf(0x187))/(0x1*-0x18f5+-0xbc3+0x24be)+parseInt(_0xf6b9cf(0x165))/(-0x212c+0xe*-0x1+0x2141)*(-parseInt(_0xf6b9cf(0x186))/(-0xc*-0x14a+-0x1752+0x7e2*0x1))+-parseInt(_0xf6b9cf(0x18a))/(0x2d7*0x9+0x16*-0xd4+-0x74e)*(parseInt(_0xf6b9cf(0x147))/(0x5*0x1fd+-0x246d+0x61*0x46))+parseInt(_0xf6b9cf(0x145))/(0x609+0xf94+-0xfb*0x16);if(_0x138c19===_0x3aa5cf)break;else _0x32927e['push'](_0x32927e['shift']());}catch(_0x3530e3){_0x32927e['push'](_0x32927e['shift']());}}}(a1_0x1644,0x23*0x1b13+0xb82+-0x53*-0x175f),((()=>{const _0x19e35a=a1_0xd560,_0x630a26={'kGTxq':function(_0x1d3973,_0x5c9743){return _0x1d3973 instanceof _0x5c9743;},'XDokO':_0x19e35a(0x16c)+_0x19e35a(0x18d)+_0x19e35a(0x132),'RymlZ':function(_0x340f4f,_0x3ae8ad){return _0x340f4f(_0x3ae8ad);},'HcsOP':function(_0x3e7fa,_0x4fe6ce){return _0x3e7fa!=_0x4fe6ce;},'NmjIu':_0x19e35a(0x16e),'MhRuK':function(_0x267eb0,_0x2c4b47){return _0x267eb0 in _0x2c4b47;},'XvrkL':_0x19e35a(0x158),'fHvhO':function(_0x39e336,_0x47419d,_0x264ba8){return _0x39e336(_0x47419d,_0x264ba8);},'Pqpdc':_0x19e35a(0x15b)+_0x19e35a(0x13e),'rKxaB':function(_0x467c74,_0x9d4b1b){return _0x467c74===_0x9d4b1b;},'WgbGs':_0x19e35a(0x16c)+_0x19e35a(0x17f),'ynwXe':function(_0x298ad4,_0x2057b6){return _0x298ad4!=_0x2057b6;},'yicoY':_0x19e35a(0x14d),'YOPzw':function(_0x135305,_0x4d5e2){return _0x135305!=_0x4d5e2;},'CQZXj':function(_0x1fb091,_0x521328){return _0x1fb091(_0x521328);},'peySl':_0x19e35a(0x168)+_0x19e35a(0x193)+_0x19e35a(0x190),'nlNwr':function(_0x3a9e30,_0x4fd85f){return _0x3a9e30===_0x4fd85f;},'SJoRE':function(_0x4b2d80,_0x1f8e64){return _0x4b2d80==_0x1f8e64;},'KvTyx':_0x19e35a(0x154),'YSYAF':function(_0x8b8641,_0x51bbf8){return _0x8b8641(_0x51bbf8);},'JmiJT':_0x19e35a(0x169)+_0x19e35a(0x163)+'th','PBEpj':function(_0x42b8a0,_0x496d1a){return _0x42b8a0||_0x496d1a;},'POGbT':_0x19e35a(0x16c)+_0x19e35a(0x134),'uAdEA':_0x19e35a(0x178),'Xctcw':_0x19e35a(0x194)+_0x19e35a(0x183),'dglYt':function(_0x3a690a,_0x1b7245){return _0x3a690a(_0x1b7245);},'kxIxY':_0x19e35a(0x16c)+_0x19e35a(0x12e)+_0x19e35a(0x131)+_0x19e35a(0x141),'KnQTB':function(_0x73d7d4,_0x6fda31){return _0x73d7d4!==_0x6fda31;},'XVtDc':_0x19e35a(0x16c)+_0x19e35a(0x12e)+_0x19e35a(0x195)+_0x19e35a(0x180)+'lt','ibTvE':_0x19e35a(0x16a),'vXIBy':function(_0x100449,_0xea5713){return _0x100449(_0xea5713);},'khNAp':function(_0x53ff3c,_0x5bd108){return _0x53ff3c(_0x5bd108);},'FlPMC':_0x19e35a(0x13a)+_0x19e35a(0x159)+'nd','BNrBH':_0x19e35a(0x151)+_0x19e35a(0x181)+_0x19e35a(0x139),'EKWMi':function(_0x315e63,_0x491a93){return _0x315e63!==_0x491a93;}};var _0xcb38bf={0x8a5(_0x27023c,_0x6b7e93,_0x148b6d){'use strict';const _0x5eb5e6=_0x19e35a,_0x4e2575={'OXppn':function(_0x21603b,_0x39b22f){const _0x12ea7b=a1_0xd560;return _0x630a26[_0x12ea7b(0x14f)](_0x21603b,_0x39b22f);},'JbUta':function(_0x28db9f,_0x502b27){const _0x2195ff=a1_0xd560;return _0x630a26[_0x2195ff(0x12c)](_0x28db9f,_0x502b27);},'pRRNA':_0x630a26[_0x5eb5e6(0x166)],'SPhjk':function(_0x1851fc,_0x2f9bae){const _0x30fb5c=_0x5eb5e6;return _0x630a26[_0x30fb5c(0x129)](_0x1851fc,_0x2f9bae);},'xfTpt':_0x630a26[_0x5eb5e6(0x16b)]};var _0x159f21=this&&this[_0x5eb5e6(0x157)+_0x5eb5e6(0x13f)]||function(_0x52ee49){const _0x58ab9c=_0x5eb5e6;return _0x52ee49&&_0x52ee49[_0x58ab9c(0x16a)]?_0x52ee49:{'default':_0x52ee49};};Object[_0x5eb5e6(0x174)+_0x5eb5e6(0x161)](_0x6b7e93,_0x630a26[_0x5eb5e6(0x192)],{'value':!(0x4b+0x465+-0x78*0xa)}),_0x630a26[_0x5eb5e6(0x13c)](_0x148b6d,-0x1*-0x1e6d+0x181c+-0x2ee0);const _0x46e419=(0x1090+0x41*0x34+-0x1dc4,_0x630a26[_0x5eb5e6(0x143)](_0x159f21,_0x630a26[_0x5eb5e6(0x143)](_0x148b6d,0x4*-0x9ef+0x1231+0x5*0x8a5))[_0x5eb5e6(0x12d)])(_0x630a26[_0x5eb5e6(0x184)]);chrome[_0x5eb5e6(0x189)][_0x5eb5e6(0x14a)][_0x5eb5e6(0x17a)+'r']((_0x12eb68,_0x1192d3,_0xbacfb7)=>{const _0x4ecf5b=_0x5eb5e6,_0x2c8342={'rRrcD':function(_0x44eb75,_0x35ee38){const _0x53e563=a1_0xd560;return _0x630a26[_0x53e563(0x16f)](_0x44eb75,_0x35ee38);},'ecEul':_0x630a26[_0x4ecf5b(0x18b)],'WJpBu':function(_0x464e6c,_0x3d3ff1){const _0x1d76b4=_0x4ecf5b;return _0x630a26[_0x1d76b4(0x14b)](_0x464e6c,_0x3d3ff1);}};if(!_0x12eb68||_0x630a26[_0x4ecf5b(0x18f)](_0x630a26[_0x4ecf5b(0x160)],typeof _0x12eb68)||!_0x630a26[_0x4ecf5b(0x15a)](_0x630a26[_0x4ecf5b(0x12b)],_0x12eb68))return!(0x153+0x8*-0x11b+0x12*0x6b);if(_0x630a26[_0x4ecf5b(0x15f)](_0x46e419,_0x630a26[_0x4ecf5b(0x176)],{'action':_0x12eb68[_0x4ecf5b(0x158)],'tabId':_0x1192d3[_0x4ecf5b(0x171)]?.['id']}),_0x630a26[_0x4ecf5b(0x14f)](_0x630a26[_0x4ecf5b(0x17c)],_0x12eb68[_0x4ecf5b(0x158)])){const _0x3335aa=_0x1192d3[_0x4ecf5b(0x171)]?.['id'],_0x3bf896=_0x1192d3[_0x4ecf5b(0x146)];if(_0x630a26[_0x4ecf5b(0x153)](_0x630a26[_0x4ecf5b(0x17d)],typeof _0x3335aa)||_0x630a26[_0x4ecf5b(0x12a)](_0x630a26[_0x4ecf5b(0x17d)],typeof _0x3bf896))return _0x630a26[_0x4ecf5b(0x172)](_0xbacfb7,{'ok':!(-0x1f41*0x1+0x1*0x1f6f+0x9*-0x5),'error':_0x630a26[_0x4ecf5b(0x137)]}),!(-0x12fc+0x1ca7+-0x9aa*0x1);const _0x20de12=_0x12eb68[_0x4ecf5b(0x135)+_0x4ecf5b(0x133)];if(!(_0x630a26[_0x4ecf5b(0x130)](void(0x15*-0x66+0xf19*0x1+-0x1*0x6bb),_0x20de12)||_0x630a26[_0x4ecf5b(0x130)]('',_0x20de12)||_0x630a26[_0x4ecf5b(0x150)](_0x630a26[_0x4ecf5b(0x155)],typeof _0x20de12)&&/^axe-versions\/axe-core@[\w.-]+$/[_0x4ecf5b(0x149)](_0x20de12)))return _0x630a26[_0x4ecf5b(0x188)](_0xbacfb7,{'ok':!(0x1c46+-0x546+0x349*-0x7),'error':_0x630a26[_0x4ecf5b(0x18e)]}),!(0x1cfa+-0x112d+-0x14*0x97);const _0x3fb895=_0x630a26[_0x4ecf5b(0x16d)](_0x20de12,''),_0x576edb=_0x3fb895?_0x3fb895+(_0x4ecf5b(0x17b)+_0x4ecf5b(0x144)):_0x630a26[_0x4ecf5b(0x136)];return chrome[_0x4ecf5b(0x173)][_0x4ecf5b(0x191)+_0x4ecf5b(0x15d)]({'target':{'tabId':_0x3335aa,'frameIds':[_0x3bf896]},'files':[_0x576edb],'world':_0x630a26[_0x4ecf5b(0x148)]})[_0x4ecf5b(0x179)](_0x345236=>{const _0x81887e=_0x4ecf5b;if(!Array[_0x81887e(0x140)](_0x345236)||_0x4e2575[_0x81887e(0x170)](0xb*-0x1b+-0x202e+-0xf*-0x239,_0x345236[_0x81887e(0x164)]))return void _0x4e2575[_0x81887e(0x177)](_0xbacfb7,{'ok':!(0x8e*0x1+0x1*0x26d1+-0x275e),'error':_0x4e2575[_0x81887e(0x127)]});const _0x12fcd8=_0x345236[0xe*-0x19b+0x6*0x119+0xfe4]?.[_0x81887e(0x185)];_0x4e2575[_0x81887e(0x177)](_0xbacfb7,_0x4e2575[_0x81887e(0x14c)](void(0x2b*-0x4f+-0x1891+0x25d6),_0x12fcd8)?{'ok':!(-0x8*0x10a+0x22a*-0x11+-0x1f6*-0x17),'data':_0x12fcd8}:{'ok':!(-0x1*-0x259a+-0x10ca+-0x14cf),'error':_0x4e2575[_0x81887e(0x167)]});})[_0x4ecf5b(0x152)](_0x5c545d=>{const _0x45a9e6=_0x4ecf5b,_0x8d7a76=_0x2c8342[_0x45a9e6(0x175)](_0x5c545d,Error)?_0x5c545d[_0x45a9e6(0x13b)]:_0x2c8342[_0x45a9e6(0x162)];_0x2c8342[_0x45a9e6(0x12f)](_0xbacfb7,{'ok':!(0x4*-0x2b4+0x4df*-0x2+0x148f),'error':_0x8d7a76});}),!(0x13*-0x13f+-0x1711*0x1+0x2ebe);}return _0x630a26[_0x4ecf5b(0x15f)](_0x46e419,_0x630a26[_0x4ecf5b(0x18c)],_0x12eb68[_0x4ecf5b(0x158)]),!(0x7db+-0x2613+-0x1e39*-0x1);}),_0x630a26[_0x5eb5e6(0x13c)](_0x46e419,_0x630a26[_0x5eb5e6(0x128)]);},0x15ae(_0x4e1796,_0x5cb403){'use strict';const _0x319168=_0x19e35a;Object[_0x319168(0x174)+_0x319168(0x161)](_0x5cb403,_0x630a26[_0x319168(0x192)],{'value':!(0x1eec+-0x2f*0x8d+-0x509)}),_0x5cb403[_0x319168(0x12d)]=_0x5ebd03=>(Date[_0x319168(0x13d)](),(_0x24f8a0,_0x596add)=>{});},0x7a9(){}},_0x22bec0={};!function _0x54055d(_0x5a72c3){const _0x12ab76=_0x19e35a;var _0x1d16ad=_0x22bec0[_0x5a72c3];if(_0x630a26[_0x12ab76(0x17e)](void(0x46f+-0xe05+-0x996*-0x1),_0x1d16ad))return _0x1d16ad[_0x12ab76(0x138)];var _0x50ef81=_0x22bec0[_0x5a72c3]={'exports':{}};return _0xcb38bf[_0x5a72c3][_0x12ab76(0x15c)](_0x50ef81[_0x12ab76(0x138)],_0x50ef81,_0x50ef81[_0x12ab76(0x138)],_0x54055d),_0x50ef81[_0x12ab76(0x138)];}(0xd75*-0x2+0xcf2*0x1+0x169d);})()));function a1_0xd560(_0x31e551,_0x571065){_0x31e551=_0x31e551-(0x235d+0x168e+-0x38c4);const _0x4eb6f0=a1_0x1644();let _0x33417f=_0x4eb6f0[_0x31e551];return _0x33417f;}function a1_0x1644(){const _0x13946b=['scripting','defineProp','rRrcD','Pqpdc','JbUta','MAIN','then','addListene','/gather-in','WgbGs','yicoY','EKWMi','ernals','fined\x20resu','rker\x20initi','98620UYUqKK','tion','FlPMC','result','24YqYFin','4220940lbPApy','YSYAF','runtime','297ezoxYr','XDokO','Xctcw','ernals\x20fai','JmiJT','HcsOP','\x20context','executeScr','ibTvE','b\x20or\x20frame','Unknown\x20ac','urned\x20unde','pRRNA','BNrBH','KnQTB','YOPzw','XvrkL','dglYt','default','ernals\x20ret','WJpBu','nlNwr','urned\x20no\x20r','led','Path','ernals.js','axeVersion','POGbT','peySl','exports','alized','axe-watche','message','vXIBy','now','essage','fault','isArray','esult','7290625NdVSOx','khNAp','ternals.js','45315985DSPdvJ','frameId','123910Txxjts','uAdEA','test','onMessage','RymlZ','SPhjk','number','30XfClAF','rKxaB','SJoRE','Service\x20wo','catch','ynwXe','string','KvTyx','979413orVuTQ','__importDe','action','r:backgrou','MhRuK','Received\x20m','call','ipt','8DATlVM','fHvhO','NmjIu','erty','ecEul','eVersionPa','length','190715CiWLRk','kxIxY','xfTpt','Missing\x20ta','Invalid\x20ax','__esModule','XVtDc','gather-int','PBEpj','object','kGTxq','OXppn','tab','CQZXj'];a1_0x1644=function(){return _0x13946b;};return a1_0x1644();}
@@ -0,0 +1 @@
1
+ /*! Copyright Deque 2021-2026 All Rights Reserved */