matches-where-query

2.0.4 • Public • Published

matchesWhereQuery( object, whereQuery )

This function determines if the provided object matches every comparison clause in whereQuery, returning true or false accordingly.

whereQuery is an object of the form:

{
	<attribute> : <value>
	<attribute> : [ <value1>, ..., <valueN> ]
	<attribute> : { comparator : <comparator> }
	<attribute> : { comparator : <comparator>, value : <value> }
}

Comparisons

For each clause in whereQuery, an attribute of object is compared to a value (primitive or object.) except in the cases of the isNull and isNotNull comparators, which do not require for a value to be provided.

equals (default)

Single Value

If the attribute is a single value, object.attribute must strictly equal the value to result in a match.

{
	<attribute> : <value>
}

Array

If the attribute is is an array, only records for which object.attribute is strictly equally to one of the elements in the array will result in a match.

{
	<attribute> : [ <value1>, ..., <valueN> ]
}

doesNotEqual

The compared attribute must must not be strictly equal to the value to result in a match.

{
	<attribute> : { comparator : 'doesNotEqual', value : <value> }
}

isGreaterThan

The compared attribute must be greater than the value to result in a match.

{
	<attribute> : { comparator : 'isGreaterThan', value : <value> }
}

isGreaterThanOrEqualTo

The compared attribute must be greater than or equal to the value to result in a match.

{
	<attribute> : { comparator : 'isGreaterThan', value : <value> }
}

isLessThan

The compared attribute must be less than the value to result in a match.

{
	<attribute> : { comparator : 'isLessThan', value : <value> }
}

isLessThanOrEqualTo

The compared attribute must be less than or equal to the value to result in a match.

{
	<attribute> : { comparator : 'isLessThanOrEqualTo', value : <value> }
}

isBetween

The compared attribute must be between the minimum and maximum values provided to result in a match. The limits provided are included in the range for the value.

{
	<attribute> : { comparator : 'isBetween', value : [ <minValue>, <maxValue> ] }
}

startsWith

The compared attribute must be a string that starts with the string value provided to result in a match.

{
	<attribute> : { comparator : 'startsWith', value : <value> }
}

endsWith

The compared attribute must be a string that ends with the string value provided to result in a match.

{
	<attribute> : { comparator : 'endsWith', value : <value> }
}

isNull

The compared attribute must be null to result in a match (no value needs to be provided).

{
	<attribute> : { comparator : 'isNull' }
}

isNotNull

The compared attribute must not be null to result in a match (no value needs to be provided).

{
	<attribute> : { comparator : 'isNotNull' }
}

Readme

Keywords

none

Package Sidebar

Install

npm i matches-where-query

Weekly Downloads

67

Version

2.0.4

License

none

Unpacked Size

18 kB

Total Files

8

Last publish

Collaborators

  • gonzalezger
  • rodriguezmartin
  • rotundasoftware-devops
  • alejandroiglesias
  • ezetol
  • jonac22
  • rotundasoftwareowner
  • davidbeck
  • martinflory
  • hlogran
  • nico-ledesma