API reference@evolu/commonEq › createEqObject

function createEqObject<A>(eqs: {
  [K in string | number | symbol]: Eq<A[K]>;
}): Eq<{ readonly [K in string | number | symbol]: A[K] }>;

Defined in: packages/common/src/Eq.ts:210

Creates an equivalence function for objects based on an equivalence for their fields.

Example

import {
  assertFalse,
  assertTrue,
  createEqObject,
  eqNumber,
} from "@evolu/common";

const eqObjectNumber = createEqObject({ a: eqNumber });

assertTrue(eqObjectNumber({ a: 1 }, { a: 1 }));
assertFalse(eqObjectNumber({ a: 1 }, { a: 2 }));