Function conforms

  • Creates a function that invokes the predicate properties of source with the corresponding property values of a given object, returning true if all predicates return truthy, else false.

    Note: The created function is equivalent to conformsTo with source partially applied.

    Parameters

    • source: Record<PropertyKey, ((value: any) => boolean)>

      The object of property predicates to conform to.

    Returns ((object: Record<PropertyKey, any>) => boolean)

    Returns the new spec function.

      • (object): boolean
      • Parameters

        • object: Record<PropertyKey, any>

        Returns boolean

    const isPositive = (n) => n > 0;
    const isEven = (n) => n % 2 === 0;
    const predicates = { a: isPositive, b: isEven };
    const conform = conforms(predicates);

    console.log(conform({ a: 2, b: 4 })); // true
    console.log(conform({ a: -1, b: 4 })); // false
    console.log(conform({ a: 2, b: 3 })); // false
    console.log(conform({ a: 0, b: 2 })); // false