UNPKG

870 BJavaScriptView Raw
1// If one redirect fails to parse, we still try to return the other ones
2const splitResults = function (results) {
3 const redirects = results.filter((result) => !isError(result))
4 const errors = results.filter(isError)
5 return { redirects, errors }
6}
7
8const isError = function (result) {
9 return result instanceof Error
10}
11
12// Concatenate an array of `{ redirects, erors }`
13const concatResults = function (resultsArrays) {
14 // eslint-disable-next-line unicorn/prefer-spread
15 const redirects = [].concat(...resultsArrays.map(getRedirects))
16 // eslint-disable-next-line unicorn/prefer-spread
17 const errors = [].concat(...resultsArrays.map(getErrors))
18 return { redirects, errors }
19}
20
21const getRedirects = function ({ redirects }) {
22 return redirects
23}
24
25const getErrors = function ({ errors }) {
26 return errors
27}
28
29module.exports = { splitResults, concatResults }