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'; module.exports = function defFunc(ajv) { defFunc.definition = { type: 'number', macro: function (schema, parentSchema) { var min = schema[0] , max = schema[1] , exclusive = parentSchema.exclusiveRange; validateRangeSchema(min, max, exclusive); return exclusive === true ? {exclusiveMinimum: min, exclusiveMaximum: max} : {minimum: min, maximum: max}; }, metaSchema: { type: 'array', minItems: 2, maxItems: 2, items: { type: 'number' } } }; ajv.addKeyword('range', defFunc.definition); ajv.addKeyword('exclusiveRange'); return ajv; function validateRangeSchema(min, max, exclusive) { if (exclusive !== undefined && typeof exclusive != 'boolean') throw new Error('Invalid schema for exclusiveRange keyword, should be boolean'); if (min > max || (exclusive && min == max)) throw new Error('There are no numbers in range'); } };