Files
javascript-training/javascript-practice/src/js/helpers/transform.js
T
2023-09-20 17:48:47 +07:00

27 lines
518 B
JavaScript

export default class Transform {
constructor() {
this.signal = {};
}
onSendSignal(fromClass, value) {
Object.keys(this.signal).forEach((key) => {
const item = this.signal[key];
// Same receiver
if (item.name === fromClass) {
return;
}
// Send signal
const { handler } = this.signal[key];
if (handler) {
handler(value);
}
});
}
create(className, handler = null) {
this.signal[className] = { name: className, handler };
}
}