import { isArr, isNumber, isString } from "@pisell/utils";
import { getValueByKeys } from "../../utils";

// 字段过滤器函数
export default function (_ref) {
  var value = _ref.value,
    key = _ref.key,
    item = _ref.item;
  // 如果value为空或者是一个空数组，则不过滤
  if (!value || Array.isArray(value) && value.length === 0) {
    return true;
  }
  var dataValue = getValueByKeys(item, key);
  if (isArr(value)) {
    return value.some(function (item) {
      if (isString(item) || isNumber(item)) {
        return item == dataValue;
      } else if ("value" in item) {
        return item.value == dataValue;
      }
      return false;
    });
  }
  return value == dataValue;
}