@cometchat/chat-uikit-angular
Version:
Ready-to-use Chat UI Components for Angular (JavaScript/Web)
31 lines • 5.32 kB
JavaScript
import { DataSourceDecorator } from "../../Shared/Framework/DataSourceDecorator";
import { CometChatMessageComposerAction, fontHelper, localize, } from "@cometchat/uikit-resources";
export class AIConversationStarterDecorator extends DataSourceDecorator {
constructor(dataSource) {
super(dataSource);
}
getId() {
return "aiconversationstarter";
}
getAIOptions(theme, id, aiOptionsStyles) {
if (!id?.parentMessageId) {
const messageComposerActions = super.getAIOptions(theme, id, aiOptionsStyles);
let newAction = new CometChatMessageComposerAction({
title: localize("SUGGEST_A_REPLY"),
id: "ai-conversation-starter",
iconURL: "",
iconTint: "",
titleColor: aiOptionsStyles?.listItemTextColor || theme.palette.getAccent600(),
titleFont: aiOptionsStyles?.listItemTextFont ||
fontHelper(theme.typography.subtitle1),
background: aiOptionsStyles?.listItemBackground || theme.palette.getAccent100(),
});
messageComposerActions.push(newAction);
return messageComposerActions;
}
else {
return super.getAIOptions(theme, id, aiOptionsStyles);
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUlDb252ZXJzYXRpb25TdGFydGVyRGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC11aWtpdC1hbmd1bGFyL3NyYy9BSS9BSUNvbnZlcnNhdGlvblN0YXJ0ZXIvQUlDb252ZXJzYXRpb25TdGFydGVyRGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWpGLE9BQU8sRUFFTCw4QkFBOEIsRUFFOUIsVUFBVSxFQUNWLFFBQVEsR0FDVCxNQUFNLDRCQUE0QixDQUFDO0FBRXBDLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxtQkFBbUI7SUFDckUsWUFBWSxVQUFzQjtRQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVRLEtBQUs7UUFDWixPQUFPLHVCQUF1QixDQUFDO0lBQ2pDLENBQUM7SUFFUSxZQUFZLENBQ25CLEtBQXFCLEVBQ3JCLEVBQVEsRUFDUixlQUFnQztRQUVoQyxJQUFJLENBQUMsRUFBRSxFQUFFLGVBQWUsRUFBRTtZQUN4QixNQUFNLHNCQUFzQixHQUd0QixLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDckQsSUFBSSxTQUFTLEdBQ1gsSUFBSSw4QkFBOEIsQ0FBQztnQkFDakMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDbEMsRUFBRSxFQUFFLHlCQUF5QjtnQkFDN0IsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osVUFBVSxFQUNSLGVBQWUsRUFBRSxpQkFBaUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTtnQkFDcEUsU0FBUyxFQUNQLGVBQWUsRUFBRSxnQkFBZ0I7b0JBQ2pDLFVBQVUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQztnQkFDeEMsVUFBVSxFQUNSLGVBQWUsRUFBRSxrQkFBa0IsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTthQUN0RSxDQUFDLENBQUM7WUFDTCxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdkMsT0FBTyxzQkFBc0IsQ0FBQztTQUMvQjthQUFNO1lBQ0wsT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUM7U0FDdkQ7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBSUNvbnZlcnNhdGlvblN0YXJ0ZXJDb25maWd1cmF0aW9uLFxuICBBSU9wdGlvbnNTdHlsZSxcbn0gZnJvbSBcIkBjb21ldGNoYXQvdWlraXQtc2hhcmVkXCI7XG5pbXBvcnQgeyBEYXRhU291cmNlRGVjb3JhdG9yIH0gZnJvbSBcIi4uLy4uL1NoYXJlZC9GcmFtZXdvcmsvRGF0YVNvdXJjZURlY29yYXRvclwiO1xuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gXCIuLi8uLi9TaGFyZWQvRnJhbWV3b3JrL0RhdGFTb3VyY2VcIjtcbmltcG9ydCB7XG4gIENvbWV0Q2hhdEFjdGlvbnNWaWV3LFxuICBDb21ldENoYXRNZXNzYWdlQ29tcG9zZXJBY3Rpb24sXG4gIENvbWV0Q2hhdFRoZW1lLFxuICBmb250SGVscGVyLFxuICBsb2NhbGl6ZSxcbn0gZnJvbSBcIkBjb21ldGNoYXQvdWlraXQtcmVzb3VyY2VzXCI7XG5cbmV4cG9ydCBjbGFzcyBBSUNvbnZlcnNhdGlvblN0YXJ0ZXJEZWNvcmF0b3IgZXh0ZW5kcyBEYXRhU291cmNlRGVjb3JhdG9yIHtcbiAgY29uc3RydWN0b3IoZGF0YVNvdXJjZTogRGF0YVNvdXJjZSkge1xuICAgIHN1cGVyKGRhdGFTb3VyY2UpO1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0SWQoKSB7XG4gICAgcmV0dXJuIFwiYWljb252ZXJzYXRpb25zdGFydGVyXCI7XG4gIH1cblxuICBvdmVycmlkZSBnZXRBSU9wdGlvbnMoXG4gICAgdGhlbWU6IENvbWV0Q2hhdFRoZW1lLFxuICAgIGlkPzogYW55LFxuICAgIGFpT3B0aW9uc1N0eWxlcz86IEFJT3B0aW9uc1N0eWxlXG4gICk6IChDb21ldENoYXRNZXNzYWdlQ29tcG9zZXJBY3Rpb24gfCBDb21ldENoYXRBY3Rpb25zVmlldylbXSB7XG4gICAgaWYgKCFpZD8ucGFyZW50TWVzc2FnZUlkKSB7XG4gICAgICBjb25zdCBtZXNzYWdlQ29tcG9zZXJBY3Rpb25zOiAoXG4gICAgICAgIHwgQ29tZXRDaGF0TWVzc2FnZUNvbXBvc2VyQWN0aW9uXG4gICAgICAgIHwgQ29tZXRDaGF0QWN0aW9uc1ZpZXdcbiAgICAgIClbXSA9IHN1cGVyLmdldEFJT3B0aW9ucyh0aGVtZSwgaWQsIGFpT3B0aW9uc1N0eWxlcyk7XG4gICAgICBsZXQgbmV3QWN0aW9uOiBDb21ldENoYXRNZXNzYWdlQ29tcG9zZXJBY3Rpb24gPVxuICAgICAgICBuZXcgQ29tZXRDaGF0TWVzc2FnZUNvbXBvc2VyQWN0aW9uKHtcbiAgICAgICAgICB0aXRsZTogbG9jYWxpemUoXCJTVUdHRVNUX0FfUkVQTFlcIiksXG4gICAgICAgICAgaWQ6IFwiYWktY29udmVyc2F0aW9uLXN0YXJ0ZXJcIixcbiAgICAgICAgICBpY29uVVJMOiBcIlwiLFxuICAgICAgICAgIGljb25UaW50OiBcIlwiLFxuICAgICAgICAgIHRpdGxlQ29sb3I6XG4gICAgICAgICAgICBhaU9wdGlvbnNTdHlsZXM/Lmxpc3RJdGVtVGV4dENvbG9yIHx8IHRoZW1lLnBhbGV0dGUuZ2V0QWNjZW50NjAwKCksXG4gICAgICAgICAgdGl0bGVGb250OlxuICAgICAgICAgICAgYWlPcHRpb25zU3R5bGVzPy5saXN0SXRlbVRleHRGb250IHx8XG4gICAgICAgICAgICBmb250SGVscGVyKHRoZW1lLnR5cG9ncmFwaHkuc3VidGl0bGUxKSxcbiAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgYWlPcHRpb25zU3R5bGVzPy5saXN0SXRlbUJhY2tncm91bmQgfHwgdGhlbWUucGFsZXR0ZS5nZXRBY2NlbnQxMDAoKSxcbiAgICAgICAgfSk7XG4gICAgICBtZXNzYWdlQ29tcG9zZXJBY3Rpb25zLnB1c2gobmV3QWN0aW9uKTtcbiAgICAgIHJldHVybiBtZXNzYWdlQ29tcG9zZXJBY3Rpb25zO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gc3VwZXIuZ2V0QUlPcHRpb25zKHRoZW1lLCBpZCwgYWlPcHRpb25zU3R5bGVzKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==