@newdash/newdash
Version:
javascript/typescript utility library
31 lines (30 loc) • 1.22 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.invokeMap = void 0;
const apply_1 = __importDefault(require("./.internal/apply"));
const baseEach_1 = __importDefault(require("./.internal/baseEach"));
const baseInvoke_1 = require("./.internal/baseInvoke");
const baseRest_1 = __importDefault(require("./.internal/baseRest"));
const isArrayLike_1 = __importDefault(require("./isArrayLike"));
/**
* @ignore
* @private
* @internal
*/
const internalInvokeMap = (0, baseRest_1.default)((collection, path, args) => {
let index = -1;
const isFunc = typeof path == "function";
const result = (0, isArrayLike_1.default)(collection) ? Array(collection.length) : [];
(0, baseEach_1.default)(collection, (value) => {
result[++index] = isFunc ? (0, apply_1.default)(path, value, args) : (0, baseInvoke_1.baseInvoke)(value, path, args);
});
return result;
});
function invokeMap(collection, path, ...args) {
return internalInvokeMap(collection, path, ...args);
}
exports.invokeMap = invokeMap;
exports.default = invokeMap;