| var _isArrayLike = |
| /*#__PURE__*/ |
| require("./_isArrayLike"); |
| /** |
| * `_makeFlat` is a helper function that returns a one-level or fully recursive |
| * function based on the flag passed in. |
| * |
| * @private |
| */ |
| |
| |
| function _makeFlat(recursive) { |
| return function flatt(list) { |
| var value, jlen, j; |
| var result = []; |
| var idx = 0; |
| var ilen = list.length; |
| |
| while (idx < ilen) { |
| if (_isArrayLike(list[idx])) { |
| value = recursive ? flatt(list[idx]) : list[idx]; |
| j = 0; |
| jlen = value.length; |
| |
| while (j < jlen) { |
| result[result.length] = value[j]; |
| j += 1; |
| } |
| } else { |
| result[result.length] = list[idx]; |
| } |
| |
| idx += 1; |
| } |
| |
| return result; |
| }; |
| } |
| |
| module.exports = _makeFlat; |