@mx-design/config-eslint9
Version:
update eslint 9.x configuration
17 lines (15 loc) • 400 B
JavaScript
function compose(middlewares, shareData) {
async function dispatch(index) {
if (index === middlewares.length) return;
const fn = middlewares[index];
if (!fn) return Promise.resolve();
try {
await fn(shareData, dispatch.bind(null, index + 1));
return Promise.resolve(shareData);
} catch (err) {
throw err;
}
}
return dispatch(0);
}
export { compose };