import { __exports as c } from "../../../../../../_virtual/AttributeMap.mjs";
import { l as p } from "../../../../lodash.clonedeep@4.5.0/node_modules/lodash.clonedeep/index.mjs";
import { l as O } from "../../../../lodash.isequal@4.5.0/node_modules/lodash.isequal/index.mjs";
Object.defineProperty(c, "__esModule", { value: !0 });
const m = p, _ = O;
var i;
(function(u) {
  function d(t = {}, n = {}, r = !1) {
    typeof t != "object" && (t = {}), typeof n != "object" && (n = {});
    let f = m(n);
    r || (f = Object.keys(f).reduce((e, o) => (f[o] != null && (e[o] = f[o]), e), {}));
    for (const e in t)
      t[e] !== void 0 && n[e] === void 0 && (f[e] = t[e]);
    return Object.keys(f).length > 0 ? f : void 0;
  }
  u.compose = d;
  function s(t = {}, n = {}) {
    typeof t != "object" && (t = {}), typeof n != "object" && (n = {});
    const r = Object.keys(t).concat(Object.keys(n)).reduce((f, e) => (_(t[e], n[e]) || (f[e] = n[e] === void 0 ? null : n[e]), f), {});
    return Object.keys(r).length > 0 ? r : void 0;
  }
  u.diff = s;
  function l(t = {}, n = {}) {
    t = t || {};
    const r = Object.keys(n).reduce((f, e) => (n[e] !== t[e] && t[e] !== void 0 && (f[e] = n[e]), f), {});
    return Object.keys(t).reduce((f, e) => (t[e] !== n[e] && n[e] === void 0 && (f[e] = null), f), r);
  }
  u.invert = l;
  function j(t, n, r = !1) {
    if (typeof t != "object")
      return n;
    if (typeof n != "object")
      return;
    if (!r)
      return n;
    const f = Object.keys(n).reduce((e, o) => (t[o] === void 0 && (e[o] = n[o]), e), {});
    return Object.keys(f).length > 0 ? f : void 0;
  }
  u.transform = j;
})(i || (i = {}));
c.default = i;
