PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` 'use strict'; var values = require('../helpers/values'); var nestedValue = require('../helpers/nestedValue'); module.exports = function where(key, operator, value) { var comparisonOperator = operator; var comparisonValue = value; var items = values(this.items); if (operator === undefined || operator === true) { return new this.constructor(items.filter(function (item) { return nestedValue(item, key); })); } if (operator === false) { return new this.constructor(items.filter(function (item) { return !nestedValue(item, key); })); } if (value === undefined) { comparisonValue = operator; comparisonOperator = '==='; } var collection = items.filter(function (item) { switch (comparisonOperator) { case '==': return nestedValue(item, key) === Number(comparisonValue) || nestedValue(item, key) === comparisonValue.toString(); default: case '===': return nestedValue(item, key) === comparisonValue; case '!=': case '<>': return nestedValue(item, key) !== Number(comparisonValue) && nestedValue(item, key) !== comparisonValue.toString(); case '!==': return nestedValue(item, key) !== comparisonValue; case '<': return nestedValue(item, key) < comparisonValue; case '<=': return nestedValue(item, key) <= comparisonValue; case '>': return nestedValue(item, key) > comparisonValue; case '>=': return nestedValue(item, key) >= comparisonValue; } }); return new this.constructor(collection); };