import _isKey_default from "./_isKey.js";
import _toKey_default from "./_toKey.js";
import get_default from "./get.js";
import _baseIsEqual_default from "./_baseIsEqual.js";
import _isStrictComparable_default from "./_isStrictComparable.js";
import _matchesStrictComparable_default from "./_matchesStrictComparable.js";
import hasIn_default from "./hasIn.js";
var COMPARE_PARTIAL_FLAG = 1, COMPARE_UNORDERED_FLAG = 2;
function baseMatchesProperty(l, u) {
	return _isKey_default(l) && _isStrictComparable_default(u) ? _matchesStrictComparable_default(_toKey_default(l), u) : function(e) {
		var c = get_default(e, l);
		return c === void 0 && c === u ? hasIn_default(e, l) : _baseIsEqual_default(u, c, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
	};
}
var _baseMatchesProperty_default = baseMatchesProperty;
export { _baseMatchesProperty_default as default };
