UNPKG

@zodiac-ui/editor

Version:

A rich text editor for Angular based on `@atlaskit/editor-core`.

27 lines 5.01 kB
export class EventDispatcher { constructor() { this.listeners = {}; } on(event, cb) { if (!this.listeners[event]) { this.listeners[event] = []; } this.listeners[event].push(cb); } off(event, cb) { if (!this.listeners[event]) { return; } this.listeners[event] = this.listeners[event].filter(callback => callback !== cb); } emit(event, data) { if (!this.listeners[event]) { return; } this.listeners[event].forEach(cb => cb(data)); } destroy() { this.listeners = {}; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B6b2RpYWMtdWkvZWRpdG9yLyIsInNvdXJjZXMiOlsibGliL2ludGVyZmFjZXMvZWRpdG9yLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QkEsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDWSxjQUFTLEdBQWMsRUFBRSxDQUFDO0lBK0J0QyxDQUFDO0lBN0JHLEVBQUUsQ0FBQyxLQUFhLEVBQUUsRUFBZTtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQWU7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDeEIsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FDaEQsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEtBQUssRUFBRSxDQUM5QixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksQ0FBQyxLQUFhLEVBQUUsSUFBTztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yUHJvcHMsIE5vZGVWaWV3IH0gZnJvbSBcInByb3NlbWlycm9yLXZpZXdcIlxyXG5pbXBvcnQgeyBNYXJrU3BlYywgTm9kZVNwZWMsIFNjaGVtYSB9IGZyb20gXCJwcm9zZW1pcnJvci1tb2RlbFwiXHJcbmltcG9ydCB7IFBsdWdpbiwgUGx1Z2luS2V5IH0gZnJvbSBcInByb3NlbWlycm9yLXN0YXRlXCJcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTm9kZUNvbmZpZyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBub2RlOiBOb2RlU3BlYztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXJrQ29uZmlnIHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIG1hcms6IE1hcmtTcGVjO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVWaWV3Q29uZmlnIHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIG5vZGVWaWV3OiBOb2RlVmlldztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMaXN0ZW5lcnMge1xyXG4gICAgW25hbWU6IHN0cmluZ106IExpc3RlbmVyW107XHJcbn1cclxuZXhwb3J0IHR5cGUgTGlzdGVuZXI8VCA9IGFueT4gPSAoZGF0YTogVCkgPT4gdm9pZDtcclxuXHJcbmV4cG9ydCB0eXBlIERpc3BhdGNoPFQgPSBhbnk+ID0gKFxyXG4gICAgZXZlbnROYW1lOiBQbHVnaW5LZXkgfCBzdHJpbmcsXHJcbiAgICBkYXRhOiBULFxyXG4pID0+IHZvaWQ7XHJcblxyXG5leHBvcnQgY2xhc3MgRXZlbnREaXNwYXRjaGVyPFQgPSBhbnk+IHtcclxuICAgIHByaXZhdGUgbGlzdGVuZXJzOiBMaXN0ZW5lcnMgPSB7fTtcclxuXHJcbiAgICBvbihldmVudDogc3RyaW5nLCBjYjogTGlzdGVuZXI8VD4pOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMubGlzdGVuZXJzW2V2ZW50XSkge1xyXG4gICAgICAgICAgICB0aGlzLmxpc3RlbmVyc1tldmVudF0gPSBbXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubGlzdGVuZXJzW2V2ZW50XS5wdXNoKGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBvZmYoZXZlbnQ6IHN0cmluZywgY2I6IExpc3RlbmVyPFQ+KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmxpc3RlbmVyc1tldmVudF0pIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5saXN0ZW5lcnNbZXZlbnRdID0gdGhpcy5saXN0ZW5lcnNbZXZlbnRdLmZpbHRlcihcclxuICAgICAgICAgICAgY2FsbGJhY2sgPT4gY2FsbGJhY2sgIT09IGNiLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZW1pdChldmVudDogc3RyaW5nLCBkYXRhOiBUKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmxpc3RlbmVyc1tldmVudF0pIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5saXN0ZW5lcnNbZXZlbnRdLmZvckVhY2goY2IgPT4gY2IoZGF0YSkpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5saXN0ZW5lcnMgPSB7fTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUE1QbHVnaW5GYWN0b3J5ID0gKFxyXG4gICAgcGFyYW1zOiB7XHJcbiAgICAgICAgc2NoZW1hOiBTY2hlbWE7XHJcbiAgICAgICAgZGlzcGF0Y2g6IERpc3BhdGNoO1xyXG4gICAgICAgIGV2ZW50RGlzcGF0Y2hlcjogRXZlbnREaXNwYXRjaGVyO1xyXG4gICAgICAgIC8vIHByb3ZpZGVyRmFjdG9yeTogUHJvdmlkZXJGYWN0b3J5O1xyXG4gICAgICAgIC8vIGVycm9yUmVwb3J0ZXI6IEVycm9yUmVwb3J0ZXI7XHJcbiAgICAgICAgLy8gcG9ydGFsUHJvdmlkZXJBUEk6IFBvcnRhbFByb3ZpZGVyQVBJO1xyXG4gICAgICAgIC8vIHJlYWN0Q29udGV4dDogKCkgPT4geyBba2V5OiBzdHJpbmddOiBhbnkgfTtcclxuICAgIH0sXHJcbikgPT4gUGx1Z2luIHwgdW5kZWZpbmVkO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFZGl0b3JDb25maWcge1xyXG4gICAgbm9kZXM6IE5vZGVDb25maWdbXTtcclxuICAgIG1hcmtzOiBNYXJrQ29uZmlnW107XHJcbiAgICBwbVBsdWdpbnM6IHsgbmFtZTogc3RyaW5nOyBwbHVnaW46IFBNUGx1Z2luRmFjdG9yeSB9W107XHJcbiAgICAvLyBjb250ZW50Q29tcG9uZW50czogVUlDb21wb25lbnRGYWN0b3J5W107XHJcbiAgICAvLyBwcmltYXJ5VG9vbGJhckNvbXBvbmVudHM6IFRvb2xiYXJVSUNvbXBvbmVudEZhY3RvcnlbXTtcclxuICAgIC8vIHNlY29uZGFyeVRvb2xiYXJDb21wb25lbnRzOiBVSUNvbXBvbmVudEZhY3RvcnlbXTtcclxufVxyXG4iXX0=