graphql
Version:
A Query Language and Runtime which can target any service.
17 lines • 642 B
JavaScript
import { AsyncWorkTracker } from "./AsyncWorkTracker.mjs";
export function createSharedExecutionContext(abortSignal) {
const asyncWorkTracker = new AsyncWorkTracker();
let resolveInfoHelpers;
const promiseAll = (values) => asyncWorkTracker.promiseAllTrackOnReject(values);
const getAsyncHelpers = () => (resolveInfoHelpers ??= {
promiseAll,
track: (maybePromises) => asyncWorkTracker.addValues(maybePromises),
});
return {
asyncWorkTracker,
getAbortSignal: () => abortSignal,
getAsyncHelpers,
promiseAll,
};
}
//# sourceMappingURL=createSharedExecutionContext.js.map