map.js 847 B

12345678910111213141516171819202122232425262728293031323334
  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = _asyncMap;
  6. var _noop = require('lodash/noop');
  7. var _noop2 = _interopRequireDefault(_noop);
  8. var _once = require('./once');
  9. var _once2 = _interopRequireDefault(_once);
  10. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  11. function _asyncMap(eachfn, arr, iteratee, callback) {
  12. callback = (0, _once2.default)(callback || _noop2.default);
  13. arr = arr || [];
  14. var results = [];
  15. var counter = 0;
  16. eachfn(arr, function (value, _, callback) {
  17. var index = counter++;
  18. iteratee(value, function (err, v) {
  19. results[index] = v;
  20. callback(err);
  21. });
  22. }, function (err) {
  23. callback(err, results);
  24. });
  25. }
  26. module.exports = exports['default'];