UNPKG

@cometchat/chat-uikit-angular

Version:

Ready-to-use Chat UI Components for Angular (JavaScript/Web)

31 lines 5.35 kB
import { CometChatMessageOption, CometChatUIKitConstants, fontHelper, localize } from "@cometchat/uikit-resources"; import { DataSourceDecorator } from "../../Shared/Framework/DataSourceDecorator"; export class MessageTranslationExtensionDecorator extends DataSourceDecorator { constructor(dataSource) { super(dataSource); } getTextMessageOptions(loggedInUser, messageObject, theme, group) { let options = super.getTextMessageOptions(loggedInUser, messageObject, theme, group); if (!this.checkIfOptionExist(options, CometChatUIKitConstants.MessageOption.translateMessage)) { let newOption = new CometChatMessageOption({ id: CometChatUIKitConstants.MessageOption.translateMessage, title: localize("TRANSLATE"), iconURL: "assets/translation.svg", onClick: null, iconTint: theme.palette.getAccent600(), backgroundColor: "transparent", titleFont: fontHelper(theme.typography.subtitle1), titleColor: theme.palette.getAccent600() }); options.push(newOption); } return options; } checkIfOptionExist(template, id) { return template.some(obj => obj.id === id); } getId() { return "messagetranslation"; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVzc2FnZVRyYW5zbGF0aW9uRXh0ZW5zaW9uRGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC11aWtpdC1hbmd1bGFyL3NyYy9FeHRlbnNpb25zL01lc3NhZ2VUcmFuc2xhdGlvbi9NZXNzYWdlVHJhbnNsYXRpb25FeHRlbnNpb25EZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFrQixzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkksT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLG1CQUFtQjtJQUMzRSxZQUFZLFVBQXNCO1FBQ2hDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUVuQixDQUFDO0lBQ2UscUJBQXFCLENBQUMsWUFBNEIsRUFBRSxhQUFvQyxFQUFFLEtBQXFCLEVBQUUsS0FBdUI7UUFDdEosSUFBSSxPQUFPLEdBQTZCLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUM5RyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtZQUM3RixJQUFJLFNBQVMsR0FBMkIsSUFBSSxzQkFBc0IsQ0FBQztnQkFDakUsRUFBRSxFQUFFLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxnQkFBZ0I7Z0JBQzFELEtBQUssRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDO2dCQUM1QixPQUFPLEVBQUUsd0JBQXdCO2dCQUNqQyxPQUFPLEVBQUUsSUFBSTtnQkFDYixRQUFRLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7Z0JBQ3RDLGVBQWUsRUFBRSxhQUFhO2dCQUM5QixTQUFTLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDO2dCQUNqRCxVQUFVLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7YUFDekMsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtTQUN4QjtRQUdELE9BQU8sT0FBTyxDQUFBO0lBRWhCLENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxRQUFrQyxFQUFFLEVBQVU7UUFDL0QsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBQ1EsS0FBSztRQUNaLE9BQU8sb0JBQW9CLENBQUM7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tZXRDaGF0IH0gZnJvbSBcIkBjb21ldGNoYXQvY2hhdC1zZGstamF2YXNjcmlwdFwiO1xuaW1wb3J0IHsgQ29tZXRDaGF0VGhlbWUsIENvbWV0Q2hhdE1lc3NhZ2VPcHRpb24sIENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLCBmb250SGVscGVyLCBsb2NhbGl6ZSB9IGZyb20gXCJAY29tZXRjaGF0L3Vpa2l0LXJlc291cmNlc1wiO1xuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gXCIuLi8uLi9TaGFyZWQvRnJhbWV3b3JrL0RhdGFTb3VyY2VcIjtcbmltcG9ydCB7IERhdGFTb3VyY2VEZWNvcmF0b3IgfSBmcm9tIFwiLi4vLi4vU2hhcmVkL0ZyYW1ld29yay9EYXRhU291cmNlRGVjb3JhdG9yXCI7XG5leHBvcnQgY2xhc3MgTWVzc2FnZVRyYW5zbGF0aW9uRXh0ZW5zaW9uRGVjb3JhdG9yIGV4dGVuZHMgRGF0YVNvdXJjZURlY29yYXRvciB7XG4gIGNvbnN0cnVjdG9yKGRhdGFTb3VyY2U6IERhdGFTb3VyY2UpIHtcbiAgICBzdXBlcihkYXRhU291cmNlKVxuXG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIGdldFRleHRNZXNzYWdlT3B0aW9ucyhsb2dnZWRJblVzZXI6IENvbWV0Q2hhdC5Vc2VyLCBtZXNzYWdlT2JqZWN0OiBDb21ldENoYXQuQmFzZU1lc3NhZ2UsIHRoZW1lOiBDb21ldENoYXRUaGVtZSwgZ3JvdXA/OiBDb21ldENoYXQuR3JvdXApOiBDb21ldENoYXRNZXNzYWdlT3B0aW9uW10ge1xuICAgIGxldCBvcHRpb25zOiBDb21ldENoYXRNZXNzYWdlT3B0aW9uW10gPSBzdXBlci5nZXRUZXh0TWVzc2FnZU9wdGlvbnMobG9nZ2VkSW5Vc2VyLCBtZXNzYWdlT2JqZWN0LCB0aGVtZSwgZ3JvdXApXG4gICAgaWYgKCF0aGlzLmNoZWNrSWZPcHRpb25FeGlzdChvcHRpb25zLCBDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlT3B0aW9uLnRyYW5zbGF0ZU1lc3NhZ2UpKSB7XG4gICAgICBsZXQgbmV3T3B0aW9uOiBDb21ldENoYXRNZXNzYWdlT3B0aW9uID0gbmV3IENvbWV0Q2hhdE1lc3NhZ2VPcHRpb24oe1xuICAgICAgICBpZDogQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZU9wdGlvbi50cmFuc2xhdGVNZXNzYWdlLFxuICAgICAgICB0aXRsZTogbG9jYWxpemUoXCJUUkFOU0xBVEVcIiksXG4gICAgICAgIGljb25VUkw6IFwiYXNzZXRzL3RyYW5zbGF0aW9uLnN2Z1wiLFxuICAgICAgICBvbkNsaWNrOiBudWxsLFxuICAgICAgICBpY29uVGludDogdGhlbWUucGFsZXR0ZS5nZXRBY2NlbnQ2MDAoKSxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBcInRyYW5zcGFyZW50XCIsXG4gICAgICAgIHRpdGxlRm9udDogZm9udEhlbHBlcih0aGVtZS50eXBvZ3JhcGh5LnN1YnRpdGxlMSksXG4gICAgICAgIHRpdGxlQ29sb3I6IHRoZW1lLnBhbGV0dGUuZ2V0QWNjZW50NjAwKClcbiAgICAgIH0pXG4gICAgICBvcHRpb25zLnB1c2gobmV3T3B0aW9uKVxuICAgIH1cblxuXG4gICAgcmV0dXJuIG9wdGlvbnNcblxuICB9XG4gIGNoZWNrSWZPcHRpb25FeGlzdCh0ZW1wbGF0ZTogQ29tZXRDaGF0TWVzc2FnZU9wdGlvbltdLCBpZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRlbXBsYXRlLnNvbWUob2JqID0+IG9iai5pZCA9PT0gaWQpXG4gIH1cbiAgb3ZlcnJpZGUgZ2V0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJtZXNzYWdldHJhbnNsYXRpb25cIjtcbiAgfVxufVxuIl19