UNPKG

@mx-design/config-eslint9

Version:
17 lines (15 loc) 400 B
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 };