validator-list
Version:
16 lines (13 loc) • 505 B
text/typescript
import * as _ from 'lodash';
import { AbstractValidator } from './abstract-validator';
export class DefaultValueValidator extends AbstractValidator {
static validate(value, defaultValue): any {
if (this.isEmpty(value)) {
return _.isFunction(defaultValue) ? defaultValue() : defaultValue;
}
return value;
}
static isEmpty(value) {
return _.isNil(value) || value === '' || ((_.isArray(value) || _.isPlainObject(value)) && _.isEmpty(value));
}
}