| var _curry2 = |
| /*#__PURE__*/ |
| require("./internal/_curry2"); |
| |
| var _dispatchable = |
| /*#__PURE__*/ |
| require("./internal/_dispatchable"); |
| |
| var _xdropWhile = |
| /*#__PURE__*/ |
| require("./internal/_xdropWhile"); |
| |
| var slice = |
| /*#__PURE__*/ |
| require("./slice"); |
| /** |
| * Returns a new list excluding the leading elements of a given list which |
| * satisfy the supplied predicate function. It passes each value to the supplied |
| * predicate function, skipping elements while the predicate function returns |
| * `true`. The predicate function is applied to one argument: *(value)*. |
| * |
| * Dispatches to the `dropWhile` method of the second argument, if present. |
| * |
| * Acts as a transducer if a transformer is given in list position. |
| * |
| * @func |
| * @memberOf R |
| * @since v0.9.0 |
| * @category List |
| * @sig (a -> Boolean) -> [a] -> [a] |
| * @sig (a -> Boolean) -> String -> String |
| * @param {Function} fn The function called per iteration. |
| * @param {Array} xs The collection to iterate over. |
| * @return {Array} A new array. |
| * @see R.takeWhile, R.transduce, R.addIndex |
| * @example |
| * |
| * const lteTwo = x => x <= 2; |
| * |
| * R.dropWhile(lteTwo, [1, 2, 3, 4, 3, 2, 1]); //=> [3, 4, 3, 2, 1] |
| * |
| * R.dropWhile(x => x !== 'd' , 'Ramda'); //=> 'da' |
| */ |
| |
| |
| var dropWhile = |
| /*#__PURE__*/ |
| _curry2( |
| /*#__PURE__*/ |
| _dispatchable(['dropWhile'], _xdropWhile, function dropWhile(pred, xs) { |
| var idx = 0; |
| var len = xs.length; |
| |
| while (idx < len && pred(xs[idx])) { |
| idx += 1; |
| } |
| |
| return slice(idx, Infinity, xs); |
| })); |
| |
| module.exports = dropWhile; |