UNPKG

@netlify/content-engine

Version:
29 lines 1.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.waitUntilAllJobsComplete = void 0; exports.waitJobsByRequest = waitJobsByRequest; const redux_1 = require("../redux"); const manager_1 = require("./jobs/manager"); async function waitJobsV1() { return new Promise((resolve) => { const onEndJob = () => { if (redux_1.store.getState().jobs.active.length === 0) { resolve(); redux_1.emitter.off(`END_JOB`, onEndJob); } }; redux_1.emitter.on(`END_JOB`, onEndJob); onEndJob(); }); } const waitUntilAllJobsComplete = () => Promise.all([waitJobsV1(), (0, manager_1.waitUntilAllJobsComplete)()]).then(); exports.waitUntilAllJobsComplete = waitUntilAllJobsComplete; async function waitJobsByRequest(requestId) { const jobs = redux_1.store.getState().jobsV2; const jobDigests = new Set([ ...(jobs.jobsByRequest.get(requestId) ?? []), ...(jobs.jobsByRequest.get(``) ?? []), // wait for jobs without requestId just in case ]); await Promise.all([waitJobsV1(), (0, manager_1.waitJobs)(jobDigests)]); } //# sourceMappingURL=wait-until-jobs-complete.js.map