UNPKG

sugo-hub

Version:
40 lines (34 loc) 556 B
/** * Abstract entity * @abstract * @class Entity */ 'use strict' /** @lends Entity */ class Entity { constructor (props) { const s = this Object.assign(s, props) if (!s.key) { throw new Error('key is required.') } } /** * Set values * @param {Object} values */ set (values) { const s = this Object.assign(s, values) } /** * Delete value * @param {string} propName */ del (propName) { const s = this delete s[ propName ] } } Object.assign(Entity, {}) module.exports = Entity