UNPKG

jhipster-rasha-core

Version:

JHipster's own domain language and core objects

37 lines (30 loc) 816 B
'use strict'; const merge = require('../utils/object_utils').merge, isNilOrEmpty = require('../utils/string_utils').isNilOrEmpty, VALIDATIONS = require('./jhipster/validations'); class JDLValidation { constructor(args) { const merged = merge(defaults(), args); this.name = merged.name; this.value = merged.value; } static isValid(validation) { return validation != null && !isNilOrEmpty(validation.name) && VALIDATIONS.exists(validation.name) && (VALIDATIONS.needsValue(validation.name) !== isNilOrEmpty(validation.value)); } toString() { let string = `${this.name}`; if (this.value) { string += `(${this.value})`; } return string; } } module.exports = JDLValidation; function defaults() { return { name: 'required', value: '' }; }