class-validator-extended
Version:
Additional validators for class-validator.
25 lines (24 loc) • 1.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.minDuration = minDuration;
const is_duration_1 = require("../../type/is-duration");
const create_duration_1 = require("../create-duration");
const is_valid_duration_1 = require("../is-valid-duration");
/**
* @category Predicates
* @param value The value to validate.
* @param minimum The minimum allowed duration.
* @param options Additional options (see {@link MinDuration}).
*/
function minDuration(value, minimum, options) {
var _a;
const min = (0, create_duration_1.createDuration)(minimum);
if (!(0, is_valid_duration_1.isValidDuration)(min)) {
throw new TypeError('Parameter "minimum" must be a valid Dayjs duration');
}
const inclusive = (_a = options === null || options === void 0 ? void 0 : options.inclusive) !== null && _a !== void 0 ? _a : false;
return ((0, is_duration_1.isDuration)(value) &&
(inclusive
? value.asMilliseconds() >= min.asMilliseconds()
: value.asMilliseconds() > min.asMilliseconds()));
}