@cometchat/chat-uikit-angular
Version:
Ready-to-use Chat UI Components for Angular (JavaScript/Web)
23 lines • 3.19 kB
JavaScript
import { MessageUtils } from "../Utils/MessageUtils";
export class ChatConfigurator {
static init(initialSource) {
this.dataSource = initialSource ?? new MessageUtils();
if (!initialSource) {
this.names = [];
}
this.names.push(this.dataSource.getId());
}
static enable(callback) {
let oldSource = this.dataSource;
let newSource = callback(oldSource);
if (!this.names.find((nm) => nm == newSource.getId())) {
this.dataSource = newSource;
this.names.push(this.dataSource.getId());
}
}
static getDataSource() {
return this.dataSource;
}
}
ChatConfigurator.names = ["message utils"];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhdENvbmZpZ3VyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQtdWlraXQtYW5ndWxhci9zcmMvU2hhcmVkL0ZyYW1ld29yay9DaGF0Q29uZmlndXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdyRCxNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBMEI7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLElBQUksSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0RCxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQWdEO1FBQzVELElBQUksU0FBUyxHQUFlLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDNUMsSUFBSSxTQUFTLEdBQWUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFO1lBQ3JELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1lBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQzs7QUFyQk0sc0JBQUssR0FBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2VVdGlscyB9IGZyb20gXCIuLi9VdGlscy9NZXNzYWdlVXRpbHNcIjtcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tIFwiLi9EYXRhU291cmNlXCI7XG5cbmV4cG9ydCBjbGFzcyBDaGF0Q29uZmlndXJhdG9yIHtcbiAgc3RhdGljIGRhdGFTb3VyY2U6IERhdGFTb3VyY2U7XG4gIHN0YXRpYyBuYW1lczogQXJyYXk8c3RyaW5nPiA9IFtcIm1lc3NhZ2UgdXRpbHNcIl07XG5cbiAgc3RhdGljIGluaXQoaW5pdGlhbFNvdXJjZT86IERhdGFTb3VyY2UpIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBpbml0aWFsU291cmNlID8/IG5ldyBNZXNzYWdlVXRpbHMoKTtcbiAgICBpZiAoIWluaXRpYWxTb3VyY2UpIHtcbiAgICAgIHRoaXMubmFtZXMgPSBbXTtcbiAgICB9XG4gICAgdGhpcy5uYW1lcy5wdXNoKHRoaXMuZGF0YVNvdXJjZS5nZXRJZCgpKTtcbiAgfVxuXG4gIHN0YXRpYyBlbmFibGUoY2FsbGJhY2s6IChkYXRhU291cmNlOiBEYXRhU291cmNlKSA9PiBEYXRhU291cmNlKSB7XG4gICAgbGV0IG9sZFNvdXJjZTogRGF0YVNvdXJjZSA9IHRoaXMuZGF0YVNvdXJjZTtcbiAgICBsZXQgbmV3U291cmNlOiBEYXRhU291cmNlID0gY2FsbGJhY2sob2xkU291cmNlKTtcbiAgICBpZiAoIXRoaXMubmFtZXMuZmluZCgobm0pID0+IG5tID09IG5ld1NvdXJjZS5nZXRJZCgpKSkge1xuICAgICAgdGhpcy5kYXRhU291cmNlID0gbmV3U291cmNlO1xuICAgICAgdGhpcy5uYW1lcy5wdXNoKHRoaXMuZGF0YVNvdXJjZS5nZXRJZCgpKTtcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZ2V0RGF0YVNvdXJjZSgpOiBEYXRhU291cmNlIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhU291cmNlO1xuICB9XG59XG4iXX0=