UNPKG

@n3okill/utils

Version:
21 lines 896 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.combineUniqueFilter = combineUniqueFilter; const uniqueFilter_1 = require("./uniqueFilter"); const combine_1 = require("./combine"); const is_1 = require("../type/is"); const isFunction_1 = require("../type/isFunction"); /** * Combine multiple arrays into a single with unique items based on filter * @param arrays Arrays to be combined * @param filter The filter function to be applied to arrays, default `Type.is`, `(obj1, obj2)=>boolean` * @returns {Array<T>} The combined array */ function combineUniqueFilter(...arrays) { let comparator = is_1.is; if ((0, isFunction_1.isFunction)(arrays[arrays.length - 1])) { comparator = arrays.pop(); } return (0, uniqueFilter_1.uniqueFilter)((0, combine_1.combine)(...arrays), comparator); } //# sourceMappingURL=combineUniqueFilter.js.map