MCPcopy Create free account
hub / github.com/ChromeDevTools/chrome-devtools-mcp / waitForScript

Function waitForScript

src/devtools/DevtoolsUtils.ts:526–552  ·  view source on GitHub ↗
(
  model: DevTools.DebuggerModel,
  scriptId: Protocol.Runtime.ScriptId,
  signal: AbortSignal,
)

Source from the content-addressed store, hash-verified

524
525// Waits indefinitely for the script so pair it with Promise.race.
526async function waitForScript(
527 model: DevTools.DebuggerModel,
528 scriptId: Protocol.Runtime.ScriptId,
529 signal: AbortSignal,
530) {
531 while (true) {
532 if (signal.aborted) {
533 throw signal.reason;
534 }
535
536 const script = model.scriptForId(scriptId);
537 if (script) {
538 return script;
539 }
540
541 await new Promise((resolve, reject) => {
542 signal.addEventListener('abort', () => reject(signal.reason), {
543 once: true,
544 });
545 void model
546 .once(
547 'ParsedScriptSource' as Parameters<DevTools.DebuggerModel['once']>[0],
548 )
549 .then(resolve);
550 });
551 }
552}

Callers 1

createStackTraceFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected