UNPKG

silvie

Version:

Typescript Back-end Framework

30 lines (28 loc) 808 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _rule = require("../rule"); var _dec, _class; let EqualsRule = exports.default = (_dec = (0, _rule.rule)('equals'), _dec(_class = class EqualsRule { validate(validator, name, value, key) { if (typeof value === 'object') { return JSON.stringify(value) === JSON.stringify(key); } if (typeof value === 'boolean') { return value === !!key; } if (typeof value === 'number') { if (value === Math.floor(value)) { return value === parseInt(key, 10); } return value === parseFloat(key); } if (typeof value === 'string') { return value === key; } // eslint-disable-next-line eqeqeq return value == key; } }) || _class);