2023-02-17 11:06:01 +01:00

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);
}
}
}