'use strict';12Object.defineProperty(exports, "__esModule", {3value: true4});56var _createTester = require('./internal/createTester.js');78var _createTester2 = _interopRequireDefault(_createTester);910var _eachOfLimit = require('./internal/eachOfLimit.js');1112var _eachOfLimit2 = _interopRequireDefault(_eachOfLimit);1314var _awaitify = require('./internal/awaitify.js');1516var _awaitify2 = _interopRequireDefault(_awaitify);1718function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }1920/**21* The same as [`detect`]{@link module:Collections.detect} but runs only a single async operation at a time.22*23* @name detectSeries24* @static25* @memberOf module:Collections26* @method27* @see [async.detect]{@link module:Collections.detect}28* @alias findSeries29* @category Collections30* @param {Array|Iterable|AsyncIterable|Object} coll - A collection to iterate over.31* @param {AsyncFunction} iteratee - A truth test to apply to each item in `coll`.32* The iteratee must complete with a boolean value as its result.33* Invoked with (item, callback).34* @param {Function} [callback] - A callback which is called as soon as any35* iteratee returns `true`, or after all the `iteratee` functions have finished.36* Result will be the first item in the array that passes the truth test37* (iteratee) or the value `undefined` if none passed. Invoked with38* (err, result).39* @returns {Promise} a promise, if a callback is omitted40*/41function detectSeries(coll, iteratee, callback) {42return (0, _createTester2.default)(bool => bool, (res, item) => item)((0, _eachOfLimit2.default)(1), coll, iteratee, callback);43}4445exports.default = (0, _awaitify2.default)(detectSeries, 3);46module.exports = exports['default'];4748