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
42 lines (32 loc) • 881 B
JavaScript
import Bunyan from 'bunyan';
const log = Bunyan.createLogger({name: "Plugin"});
import { NONE, PLUGIN } from '../constants/types';
import FieldOMat from '../class-o-mat/field-o-mat';
import RadioOMat from '../class-o-mat/radio-o-mat';
class FieldPlugin {
constructor(parent) {
this._params = {
parent,
addedMixins: NONE,
oMatMixins: NONE,
}
}
connectToClassOMat(classOMat) {
const { oMatMixins } = this._params;
if (oMatMixins !== NONE) {
const BaseFieldOMat = classOMat._params.FieldOMat;
(oMatMixins)
class FieldOMat extends BaseFieldOMat {};
classOMat._params.FieldOMat = FieldOMat;
}
}
addMixins(mixins) {
this._params.addedMixins = mixins;
return this;
}
addOMatMixins(mixins) {
this._params.oMatMixins = mixins;
return this;
}
}
export default FieldPlugin;