54 lines
1.5 KiB
JavaScript
54 lines
1.5 KiB
JavaScript
import { ClickEvent } from "./ClickEvent";
|
|
import { DivEvent } from "./DivEvent";
|
|
import { HoverEvent } from "./HoverEvent";
|
|
import { ResizeEvent } from "./ResizeEvent";
|
|
import { executeOnSingleOrMultiple } from "../../../../Utils/Utils";
|
|
export class Events {
|
|
constructor() {
|
|
this.onClick = new ClickEvent();
|
|
this.onDiv = new DivEvent();
|
|
this.onHover = new HoverEvent();
|
|
this.resize = new ResizeEvent();
|
|
}
|
|
get onclick() {
|
|
return this.onClick;
|
|
}
|
|
set onclick(value) {
|
|
this.onClick = value;
|
|
}
|
|
get ondiv() {
|
|
return this.onDiv;
|
|
}
|
|
set ondiv(value) {
|
|
this.onDiv = value;
|
|
}
|
|
get onhover() {
|
|
return this.onHover;
|
|
}
|
|
set onhover(value) {
|
|
this.onHover = value;
|
|
}
|
|
load(data) {
|
|
var _a, _b, _c;
|
|
if (!data) {
|
|
return;
|
|
}
|
|
this.onClick.load((_a = data.onClick) !== null && _a !== void 0 ? _a : data.onclick);
|
|
const onDiv = (_b = data.onDiv) !== null && _b !== void 0 ? _b : data.ondiv;
|
|
if (onDiv !== undefined) {
|
|
this.onDiv = executeOnSingleOrMultiple(onDiv, (t) => {
|
|
const tmp = new DivEvent();
|
|
tmp.load(t);
|
|
return tmp;
|
|
});
|
|
}
|
|
this.onHover.load((_c = data.onHover) !== null && _c !== void 0 ? _c : data.onhover);
|
|
if (typeof data.resize === "boolean") {
|
|
this.resize.enable = data.resize;
|
|
}
|
|
else {
|
|
this.resize.load(data.resize);
|
|
}
|
|
}
|
|
}
|