class-o-mat
Version:
ALPHA VERSION ONLY: class-o-mats will help to create getter-setter functionality with validations that can be attached to a container class for easier coding. Some basic validations are included. class-o-mats also has the ability to store params as bloc
69 lines (51 loc) • 2.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _class, _temp;
var _bunyan = require('bunyan');
var _bunyan2 = _interopRequireDefault(_bunyan);
var _types = require('../constants/types');
var _classOMatFieldFunctions = require('./class-o-mat-field-functions');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var log = _bunyan2.default.createLogger({ name: "_FieldMethodOMat" });
var _FieldMethodOMat = (_temp = _class = function () {
function _FieldMethodOMat(parent) {
_classCallCheck(this, _FieldMethodOMat);
this.TYPE = _types._FIELD_METHOD_O_MAT;
this._params = {
parent: parent,
onGet: false,
onSet: true,
method: _types.NONE
};
}
_createClass(_FieldMethodOMat, [{
key: 'method',
value: function method(_method) {
if (typeof _method !== 'function') {
throw new Error('Invalid Reducer method for field: ' + parent.key());
}
return (0, _classOMatFieldFunctions.getterSetter)(this, 'method', _method);
}
}, {
key: 'onGet',
value: function onGet() {
var _onGet = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
this._params.onGet = _onGet === true ? true : false;
return this;
}
}, {
key: 'onSet',
value: function onSet() {
var _onSet = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
this._params.onSet = _onSet === false ? false : true;
return this;
}
}]);
return _FieldMethodOMat;
}(), _class.TYPE = _types._FIELD_METHOD_O_MAT, _temp);
exports.default = _FieldMethodOMat;
//# sourceMappingURL=_field-method-o-mat.js.map