dist/rollup-plugin-typescript2.cjs.js
function baseUniq(array, iteratee, comparator) {
  var index = -1,
      includes = _arrayIncludes,
      length = array.length,
      isCommon = true,
      result = [],
      seen = result;

  if (comparator) {
    isCommon = false;
    includes = _arrayIncludesWith;
  }
  else if (length >= LARGE_ARRAY_SIZE$1) {
    var set = iteratee ? null : _createSet(array);
    if (set) {
      return _setToArray(set);
    }
    isCommon = false;
    includes = _cacheHas;
    seen = new _SetCache;
  }
  else {
    seen = iteratee ? [] : result;
  }
  outer:
  while (++index < length) {
    var value = array[index],
        computed = iteratee ? iteratee(value) : value;

    value = (comparator || value !== 0) ? value : 0;
    if (isCommon && computed === computed) {
      var seenIndex = seen.length;
      while (seenIndex--) {
        if (seen[seenIndex] === computed) {
          continue outer;
        }
      }
      if (iteratee) {
        seen.push(computed);
      }
      result.push(value);
    }
    else if (!includes(seen, computed, comparator)) {
      if (seen !== result) {
        seen.push(computed);
      }
      result.push(value);
    }
  }
  return result;
}
function baseUniq(array, iteratee, comparator) {
  var index = -1,
      includes = _arrayIncludes,
      length = array.length,
      isCommon = true,
      result = [],
      seen = result;

  if (comparator) {
    isCommon = false;
    includes = _arrayIncludesWith;
  }
  else if (length >= LARGE_ARRAY_SIZE$1) {
    var set = iteratee ? null : _createSet(array);
    if (set) {
      return _setToArray(set);
    }
    isCommon = false;
    includes = _cacheHas;
    seen = new _SetCache;
  }
  else {
    seen = iteratee ? [] : result;
  }
  outer:
  while (++index < length) {
    var value = array[index],
        computed = iteratee ? iteratee(value) : value;

    value = (comparator || value !== 0) ? value : 0;
    if (isCommon && computed === computed) {
      var seenIndex = seen.length;
      while (seenIndex--) {
        if (seen[seenIndex] === computed) {
          continue outer;
        }
      }
      if (iteratee) {
        seen.push(computed);
      }
      result.push(value);
    }
    else if (!includes(seen, computed, comparator)) {
      if (seen !== result) {
        seen.push(computed);
      }
      result.push(value);
    }
  }
  return result;
}
function baseUniq ( array , iteratee , comparator ) { var index = - 1 , includes = _arrayIncludes , length = array . length , isCommon = true , result = [ ] , seen = result ; if ( comparator ) { isCommon = false ; includes = _arrayIncludesWith ; } else if ( length >= LARGE_ARRAY_SIZE$1 ) { var set = iteratee ? null : _createSet ( array ) ; if ( set ) { return _setToArray ( set ) ; } isCommon = false ; includes = _cacheHas ; seen = new _SetCache ; } else { seen = iteratee ? [ ] : result ; } outer : while ( ++ index < length ) { var value = array [ index ] , computed = iteratee ? iteratee ( value ) : value ; value = ( comparator || value !== 0 ) ? value : 0 ; if ( isCommon && computed === computed ) { var seenIndex = seen . length ; while ( seenIndex -- ) { if ( seen [ seenIndex ] === computed ) { continue outer ; } } if ( iteratee ) { seen . push ( computed ) ; } result . push ( value ) ; } else if ( ! includes ( seen , computed , comparator ) ) { if ( seen !== result ) { seen . push ( computed ) ; } result . push ( value ) ; } } return result ; }
The base implementation of `_.uniqBy` without support for iteratee shorthands.

@private
@param {Array} array The array to inspect.
@param {Function} [iteratee] The iteratee invoked per element.
@param {Function} [comparator] The comparator invoked per element.
@returns {Array} Returns the new duplicate free array.
The base implementation of _ . uniqBy without support for iteratee shorthands .