Total Complexity | 4 |
Complexity/F | 1 |
Lines of Code | 21 |
Function Count | 4 |
Duplicated Lines | 0 |
Ratio | 0 % |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | "use strict"; |
||
2 | |||
3 | const seqAnyway = require('./seqAnyway'); |
||
4 | /** |
||
5 | * @param {*} initialValue |
||
6 | * @param {Array<callback>} callbackList Each callback will receive the result of previous one (or initialValue). |
||
7 | * |
||
8 | * @returns {Promise<string>} Return a promise resolved with normalized value |
||
9 | */ |
||
10 | module.exports = (initialValue, callbackList) => { |
||
11 | let lastResult = initialValue; |
||
12 | |||
13 | return seqAnyway( |
||
14 | callbackList.map(callback => { |
||
15 | return () => { |
||
16 | lastResult = callback(lastResult); |
||
17 | }; |
||
18 | }) |
||
19 | ) |
||
20 | .then(() => lastResult); |
||
21 | }; |
||
22 |