@cometchat/chat-uikit-angular 4.0.0-beta.1.2 → 4.0.0-beta.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/Calls/CometChatCallDetails/cometchat-call-details/cometchat-call-details.component.d.ts +139 -0
  2. package/Calls/CometChatCallDetails/cometchat-call-details.module.d.ts +10 -0
  3. package/Calls/CometChatCallHistory/cometchat-call-history/cometchat-call-history.component.d.ts +125 -0
  4. package/Calls/CometChatCallHistory/cometchat-call-history.module.d.ts +10 -0
  5. package/Calls/CometChatCallHistoryWithDetails/cometchat-call-history-with-details/cometchat-call-history-with-details.component.d.ts +59 -0
  6. package/Calls/CometChatCallHistoryWithDetails/cometchat-call-history-with-details.module.d.ts +12 -0
  7. package/Shared/Views/CometChatTabs/cometchat-tabs/cometchat-tabs.component.d.ts +53 -0
  8. package/Shared/Views/CometChatTabs/cometchat-tabs.module.d.ts +12 -0
  9. package/esm2020/Calls/CometChatCallDetails/cometchat-call-details/cometchat-call-details.component.mjs +452 -0
  10. package/esm2020/Calls/CometChatCallDetails/cometchat-call-details.module.mjs +31 -0
  11. package/esm2020/Calls/CometChatCallHistory/cometchat-call-history/cometchat-call-history.component.mjs +397 -0
  12. package/esm2020/Calls/CometChatCallHistory/cometchat-call-history.module.mjs +28 -0
  13. package/esm2020/Calls/CometChatCallHistoryWithDetails/cometchat-call-history-with-details/cometchat-call-history-with-details.component.mjs +143 -0
  14. package/esm2020/Calls/CometChatCallHistoryWithDetails/cometchat-call-history-with-details.module.mjs +39 -0
  15. package/esm2020/Shared/Views/CometChatTabs/cometchat-tabs/cometchat-tabs.component.mjs +88 -0
  16. package/esm2020/Shared/Views/CometChatTabs/cometchat-tabs.module.mjs +39 -0
  17. package/esm2020/public-api.mjs +3 -1
  18. package/fesm2015/cometchat-chat-uikit-angular.mjs +1161 -3
  19. package/fesm2015/cometchat-chat-uikit-angular.mjs.map +1 -1
  20. package/fesm2020/cometchat-chat-uikit-angular.mjs +1155 -3
  21. package/fesm2020/cometchat-chat-uikit-angular.mjs.map +1 -1
  22. package/package.json +1 -1
  23. package/public-api.d.ts +2 -0
@@ -1,6 +1,6 @@
1
- import { CometChatMessageOption, CometChatUIKitConstants, localize, fontHelper, CometChatMessageTemplate, CometChatMessageComposerAction, CometChatTheme, CometChatMessageEvents, MessageStatus, CometChatUIEvents, IconButtonAlignment, CometChatCallEvents, CometChatLocalize, SelectionMode, TitleAlignment as TitleAlignment$1, States as States$1, CometChatUserEvents, CometChatGroupEvents, DatePatterns, CometChatConversationEvents, MessageListAlignment, TimestampAlignment, DocumentIconAlignment, MessageBubbleAlignment as MessageBubbleAlignment$1, Placement, AuxiliaryButtonAlignment } from '@cometchat/uikit-resources';
1
+ import { CometChatMessageOption, CometChatUIKitConstants, localize, fontHelper, CometChatMessageTemplate, CometChatMessageComposerAction, CometChatTheme, CometChatMessageEvents, MessageStatus, CometChatUIEvents, IconButtonAlignment, CometChatCallEvents, CometChatLocalize, SelectionMode, TitleAlignment as TitleAlignment$1, States as States$1, CometChatUserEvents, CometChatGroupEvents, DatePatterns, CometChatConversationEvents, MessageListAlignment, TimestampAlignment, DocumentIconAlignment, MessageBubbleAlignment as MessageBubbleAlignment$1, Placement, AuxiliaryButtonAlignment, TabAlignment } from '@cometchat/uikit-resources';
2
2
  export { AuxiliaryButtonAlignment, CometChatDetailsOption, CometChatDetailsTemplate, CometChatLocalize, CometChatMessageComposerAction, CometChatMessageOption, CometChatMessageTemplate, CometChatOption, CometChatPalette, CometChatTabItem, CometChatTheme, CometChatTypography, CometChatUIKitConstants, DatePatterns, DocumentIconAlignment, IconButtonAlignment, MessageBubbleAlignment, MessageListAlignment, MessageStatus, Placement, Receipts, SelectionMode, States, TabAlignment, TimestampAlignment, TitleAlignment, fontHelper, localize } from '@cometchat/uikit-resources';
3
- import { ConversationUtils, CallingDetailsUtils, CollaborativeDocumentConstants, CollaborativeWhiteboardConstants, MessageTranslationConfiguration, PollsConstants, CometChatUIKitUtility, CometChatSoundManager, SmartRepliesConfiguration, StickersConstants, StickersConfiguration, CometChatUIKitCalls, CallscreenStyle, OutgoingCallStyle, OutgoingCallConfiguration, CallScreenConfiguration, CallButtonsStyle, TitleAlignment, States, StorageUtils, IncomingCallStyle, UsersStyle, SelectionMode as SelectionMode$1, AddMembersStyle, MessageHeaderStyle, ListStyle, BannedMembersStyle, MessageReceiptUtils, MessageStatus as MessageStatus$1, ConversationsStyle, MessageBubbleAlignment, MessageTranslationConstants, MessageTranslationStyle, ReactionsConstants, LinkPreviewConstants, ThumbnailGenerationConstants, MessageListStyle, LinkPreviewStyle, SmartRepliesConstants, MessageComposerStyle, MessageListConfiguration, MessageComposerConfiguration, ThreadedMessagesStyle, GroupMemberUtils, GroupMembersStyle, TransferOwnershipStyle, AddMembersConfiguration, BannedMembersConfiguration, GroupMembersConfiguration, TransferOwnershipConfiguration, DetailsUtils, DetailsStyle, MessageHeaderConfiguration, ThreadedMessagesConfiguration, DetailsConfiguration, MessagesStyle, MessagesConfiguration, ConversationsConfiguration, WithMessagesStyle, GroupsStyle, CreateGroupConfiguration, JoinGroupConfiguration, GroupsConfiguration, UsersConfiguration } from '@cometchat/uikit-shared';
3
+ import { ConversationUtils, CallingDetailsUtils, CollaborativeDocumentConstants, CollaborativeWhiteboardConstants, MessageTranslationConfiguration, PollsConstants, CometChatUIKitUtility, CometChatSoundManager, SmartRepliesConfiguration, StickersConstants, StickersConfiguration, CometChatUIKitCalls, CallscreenStyle, OutgoingCallStyle, OutgoingCallConfiguration, CallScreenConfiguration, CallButtonsStyle, TitleAlignment, States, StorageUtils, IncomingCallStyle, UsersStyle, SelectionMode as SelectionMode$1, AddMembersStyle, MessageHeaderStyle, ListStyle, BannedMembersStyle, MessageReceiptUtils, MessageStatus as MessageStatus$1, ConversationsStyle, MessageBubbleAlignment, MessageTranslationConstants, MessageTranslationStyle, ReactionsConstants, LinkPreviewConstants, ThumbnailGenerationConstants, MessageListStyle, LinkPreviewStyle, SmartRepliesConstants, MessageComposerStyle, MessageListConfiguration, MessageComposerConfiguration, ThreadedMessagesStyle, GroupMemberUtils, GroupMembersStyle, TransferOwnershipStyle, AddMembersConfiguration, BannedMembersConfiguration, GroupMembersConfiguration, TransferOwnershipConfiguration, DetailsUtils, DetailsStyle, MessageHeaderConfiguration, ThreadedMessagesConfiguration, DetailsConfiguration, MessagesStyle, MessagesConfiguration, ConversationsConfiguration, WithMessagesStyle, GroupsStyle, CreateGroupConfiguration, JoinGroupConfiguration, GroupsConfiguration, UsersConfiguration, CallHistoryStyle, CallButtonsConfiguration, CallDetailsConfiguration, CallHistoryConfiguration, WithDetailsStyle } from '@cometchat/uikit-shared';
4
4
  export { AddMembersConfiguration, BannedMembersConfiguration, CallButtonsConfiguration, CallDetailsConfiguration, CallHistoryConfiguration, CallScreenConfiguration, CallingDetailsUtils, CollaborativeDocumentConfiguration, CollaborativeDocumentConstants, CollaborativeWhiteboardConfiguration, CollaborativeWhiteboardConstants, ConversationUtils, ConversationsConfiguration, CreateGroupConfiguration, DetailsConfiguration, DetailsUtils, GroupMemberUtils, GroupMembersConfiguration, GroupsConfiguration, ImageModerationConfiguration, ImageModerationConstants, JoinGroupConfiguration, LinkPreviewConstants, MessageBubbleConfiguration, MessageComposerConfiguration, MessageHeaderConfiguration, MessageListConfiguration, MessageReceiptUtils, MessageTranslationConfiguration, MessageTranslationConstants, MessagesConfiguration, OutgoingCallConfiguration, PollsConstants, ReactionsConstants, SmartRepliesConfiguration, SmartRepliesConstants, StickersConfiguration, StickersConstants, ThreadedMessagesConfiguration, ThumbnailGenerationConstants, TransferOwnershipConfiguration, UsersConfiguration } from '@cometchat/uikit-shared';
5
5
  import { __awaiter } from 'tslib';
6
6
  import { CometChat } from '@cometchat-pro/chat';
@@ -13837,6 +13837,1164 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
13837
13837
  }]
13838
13838
  }] });
13839
13839
 
13840
+ class CometChatTabsComponent {
13841
+ constructor(ref) {
13842
+ this.ref = ref;
13843
+ this.tabAlignment = TabAlignment.bottom;
13844
+ this.tabsStyle = {};
13845
+ this.tabs = [];
13846
+ this.openViewOnCLick = (tabItem) => {
13847
+ this.childView = null;
13848
+ let index = this.tabs.findIndex((item) => item.id === tabItem.id);
13849
+ if (index > -1) {
13850
+ this.activeTab = tabItem;
13851
+ this.childView = this.tabs[index].childView;
13852
+ this.ref.detectChanges();
13853
+ }
13854
+ };
13855
+ }
13856
+ ngOnInit() {
13857
+ }
13858
+ getButtonStyle(tab) {
13859
+ var _a, _b, _c, _d;
13860
+ const { style = {} } = tab || {};
13861
+ const { id } = this.activeTab || {};
13862
+ const active = id === (tab === null || tab === void 0 ? void 0 : tab.id);
13863
+ return {
13864
+ background: active ? (_a = style.activeBackground) !== null && _a !== void 0 ? _a : style.background : style.background,
13865
+ buttonTextFont: active ? (_b = style.activeTitleTextFont) !== null && _b !== void 0 ? _b : style.titleTextFont : style.titleTextFont,
13866
+ buttonTextColor: active ? (_c = style.activeTitleTextColor) !== null && _c !== void 0 ? _c : style.titleTextColor : style.titleTextColor,
13867
+ buttonIconTint: active ? (_d = style.activeIconTint) !== null && _d !== void 0 ? _d : style.iconTint : style.iconTint,
13868
+ height: style.height,
13869
+ width: style.width,
13870
+ border: style.border,
13871
+ borderRadius: style.borderRadius,
13872
+ gap: "0",
13873
+ padding: "0",
13874
+ };
13875
+ }
13876
+ getTabsStyle() {
13877
+ var _a;
13878
+ const position = (() => {
13879
+ switch (this.tabAlignment) {
13880
+ case TabAlignment.top:
13881
+ case TabAlignment.left:
13882
+ return {
13883
+ top: "0",
13884
+ left: "0",
13885
+ };
13886
+ case TabAlignment.bottom:
13887
+ return {
13888
+ bottom: "0",
13889
+ left: "0",
13890
+ };
13891
+ default:
13892
+ return {
13893
+ top: "0",
13894
+ right: "0",
13895
+ };
13896
+ }
13897
+ })();
13898
+ const { background } = (_a = this.tabsStyle) !== null && _a !== void 0 ? _a : {};
13899
+ return Object.assign({ background }, position);
13900
+ }
13901
+ getTabsPlacement() {
13902
+ let alignment = this.tabAlignment == TabAlignment.top || this.tabAlignment == TabAlignment.bottom ? "row" : "column";
13903
+ return {
13904
+ display: "flex",
13905
+ flexDirection: alignment
13906
+ };
13907
+ }
13908
+ }
13909
+ CometChatTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
13910
+ CometChatTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatTabsComponent, selector: "cometchat-tabs", inputs: { tabAlignment: "tabAlignment", tabsStyle: "tabsStyle", tabs: "tabs" }, ngImport: i0, template: "<div class=\"cc-tabs-wrapper\">\n <div class=\"cc-child-view\" *ngIf=\"childView\">\n <ng-container [ngTemplateOutlet]=\"childView\" >\n\n </ng-container>\n </div>\n <div class=\"cc-tabs\" [ngStyle]=\"getTabsStyle()\">\n <cometchat-draggable [draggableStyle]=\"tabsStyle\">\n <div class=\"cc__tab-item\" [ngStyle]=\"getTabsPlacement()\">\n <cometchat-icon-button [alignment]=\"'column'\" *ngFor=\"let tab of tabs\" [iconURL]=\"tab.iconURL\" [text]=\"tab.title\" [buttonStyle]=\"getButtonStyle(tab)\" (cc-button-clicked)=\"openViewOnCLick(tab)\"></cometchat-icon-button>\n </div>\n </cometchat-draggable>\n </div>\n</div>\n", styles: [".cc-tabs-wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:flex-end}.cc-child-view{height:100%;width:100%}.cc-tabs{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute}.cc__tab-item{display:flex}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13911
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabsComponent, decorators: [{
13912
+ type: Component,
13913
+ args: [{ selector: 'cometchat-tabs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-tabs-wrapper\">\n <div class=\"cc-child-view\" *ngIf=\"childView\">\n <ng-container [ngTemplateOutlet]=\"childView\" >\n\n </ng-container>\n </div>\n <div class=\"cc-tabs\" [ngStyle]=\"getTabsStyle()\">\n <cometchat-draggable [draggableStyle]=\"tabsStyle\">\n <div class=\"cc__tab-item\" [ngStyle]=\"getTabsPlacement()\">\n <cometchat-icon-button [alignment]=\"'column'\" *ngFor=\"let tab of tabs\" [iconURL]=\"tab.iconURL\" [text]=\"tab.title\" [buttonStyle]=\"getButtonStyle(tab)\" (cc-button-clicked)=\"openViewOnCLick(tab)\"></cometchat-icon-button>\n </div>\n </cometchat-draggable>\n </div>\n</div>\n", styles: [".cc-tabs-wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:flex-end}.cc-child-view{height:100%;width:100%}.cc-tabs{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute}.cc__tab-item{display:flex}\n"] }]
13914
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { tabAlignment: [{
13915
+ type: Input
13916
+ }], tabsStyle: [{
13917
+ type: Input
13918
+ }], tabs: [{
13919
+ type: Input
13920
+ }] } });
13921
+
13922
+ /**
13923
+ *
13924
+ * CometChatCallHistory is a wrapper component which renders callhistory of the loggedinuser using CometChatListItem && CometChatList.
13925
+ *
13926
+ * @version 1.0.0
13927
+ * @author CometChatTeam
13928
+ * @copyright © 2022 CometChat Inc.
13929
+ *
13930
+ */
13931
+ class CometChatCallHistoryComponent {
13932
+ constructor(ref, themeService) {
13933
+ this.ref = ref;
13934
+ this.themeService = themeService;
13935
+ this.hideSeparator = false;
13936
+ this.selectionMode = SelectionMode$1.none;
13937
+ this.hideError = false;
13938
+ this.title = localize("CALLS");
13939
+ this.onError = (error) => {
13940
+ console.log(error);
13941
+ };
13942
+ this.loadingIconURL = "assets/Spinner.svg";
13943
+ this.datePattern = DatePatterns.DayDateTime;
13944
+ this.emptyStateText = localize("NO_callS_FOUND");
13945
+ this.errorStateText = localize("SOMETHING_WRONG");
13946
+ this.titleAlignment = TitleAlignment.left;
13947
+ this.avatarStyle = {
13948
+ borderRadius: "16px",
13949
+ width: "32px",
13950
+ height: "32px",
13951
+ };
13952
+ this.dateStyle = {};
13953
+ this.callHistoryStyle = {
13954
+ width: "100%",
13955
+ height: "100%",
13956
+ background: "",
13957
+ border: "",
13958
+ borderRadius: "",
13959
+ titleTextFont: "",
13960
+ titleTextColor: "",
13961
+ subtitleTextFont: "",
13962
+ subtitleTextColor: "",
13963
+ emptyStateTextFont: "",
13964
+ emptyStateTextColor: "",
13965
+ errorStateTextFont: "",
13966
+ errorStateTextColor: "",
13967
+ loadingIconTint: "",
13968
+ separatorColor: "rgb(222 222 222 / 46%)",
13969
+ };
13970
+ this.listItemStyle = {};
13971
+ this.selectionmodeEnum = SelectionMode$1;
13972
+ this.state = States.loading;
13973
+ this.listStyle = {};
13974
+ this.limit = 30;
13975
+ this.callsList = [];
13976
+ this.callsListenerId = "callsList_" + new Date().getTime();
13977
+ this.loggedInUser = null;
13978
+ this.onScrolledToBottom = null;
13979
+ this.iconStyle = {
13980
+ height: "16px",
13981
+ width: "16px",
13982
+ iconTint: "RGBA(20, 20, 20, 0.68)"
13983
+ };
13984
+ this.fetchNextcallList = () => {
13985
+ this.onScrolledToBottom = null;
13986
+ this.state = States.loading;
13987
+ this.ref.detectChanges();
13988
+ try {
13989
+ this.callsRequest.fetchPrevious().then((callList) => {
13990
+ var _a, _b;
13991
+ if ((callList === null || callList === void 0 ? void 0 : callList.length) > 0) {
13992
+ this.onScrolledToBottom = this.fetchNextcallList;
13993
+ this.ref.detectChanges();
13994
+ }
13995
+ if ((callList.length <= 0 && ((_a = this.callsList) === null || _a === void 0 ? void 0 : _a.length) <= 0) || (callList.length === 0 && ((_b = this.callsList) === null || _b === void 0 ? void 0 : _b.length) <= 0)) {
13996
+ this.state = States.empty;
13997
+ this.ref.detectChanges();
13998
+ }
13999
+ else {
14000
+ this.state = States.loaded;
14001
+ this.callsList = [...this.callsList, ...callList.reverse()];
14002
+ this.ref.detectChanges();
14003
+ }
14004
+ }, (error) => {
14005
+ if (this.onError) {
14006
+ this.onError(CometChatException(error));
14007
+ }
14008
+ this.state = States.error;
14009
+ this.ref.detectChanges();
14010
+ }).catch((error) => {
14011
+ if (this.onError) {
14012
+ this.onError(error);
14013
+ }
14014
+ });
14015
+ }
14016
+ catch (error) {
14017
+ this.state = States.error;
14018
+ this.ref.detectChanges();
14019
+ if (this.onError) {
14020
+ this.onError(CometChatException(error));
14021
+ }
14022
+ }
14023
+ };
14024
+ /**
14025
+ * @param {CometChat.Call} call
14026
+ */
14027
+ this.onClick = (call) => {
14028
+ if (this.onItemClick) {
14029
+ this.onItemClick(call);
14030
+ }
14031
+ };
14032
+ /**
14033
+ * @param {CometChat.Call} call
14034
+ */
14035
+ /**
14036
+ * @param {CometChat.Call} call
14037
+ */
14038
+ this.getActiveCall = (call) => {
14039
+ var _a;
14040
+ if (this.selectionMode == SelectionMode$1.none || !this.selectionMode) {
14041
+ if (call.getId() == ((_a = this.activeCall) === null || _a === void 0 ? void 0 : _a.getId())) {
14042
+ return true;
14043
+ }
14044
+ else {
14045
+ return false;
14046
+ }
14047
+ }
14048
+ else {
14049
+ return false;
14050
+ }
14051
+ };
14052
+ this.callStyle = () => {
14053
+ return {
14054
+ height: this.callHistoryStyle.height,
14055
+ width: this.callHistoryStyle.width,
14056
+ background: this.callHistoryStyle.background,
14057
+ border: this.callHistoryStyle.border,
14058
+ borderRadius: this.callHistoryStyle.borderRadius
14059
+ };
14060
+ };
14061
+ this.subtitleStyle = () => {
14062
+ return {
14063
+ font: this.callHistoryStyle.subtitleTextFont,
14064
+ color: this.callHistoryStyle.subtitleTextColor
14065
+ };
14066
+ };
14067
+ this.state = States.loading;
14068
+ }
14069
+ ngOnInit() {
14070
+ this.setThemeStyle();
14071
+ CometChat.getLoggedinUser().then((user) => {
14072
+ this.loggedInUser = user;
14073
+ this.callsRequest = this.getRequestBuilder();
14074
+ this.fetchNextcallList();
14075
+ this.attachListeners();
14076
+ this.subscribeToEvents();
14077
+ }).catch((error) => {
14078
+ if (this.onError) {
14079
+ this.onError(error);
14080
+ }
14081
+ });
14082
+ this.state = States.loading;
14083
+ }
14084
+ callMenuOption(event, call) {
14085
+ var _a, _b;
14086
+ let onClick = (_b = (_a = event === null || event === void 0 ? void 0 : event.detail) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.onClick;
14087
+ if (onClick) {
14088
+ onClick(call);
14089
+ }
14090
+ }
14091
+ subscribeToEvents() {
14092
+ this.ccCallAccepted = CometChatCallEvents.ccCallAccepted.subscribe((call) => {
14093
+ this.addCall(call);
14094
+ });
14095
+ this.ccCallRejected = CometChatCallEvents.ccCallRejected.subscribe((call) => {
14096
+ this.addCall(call);
14097
+ });
14098
+ this.ccOutgoingCall = CometChatCallEvents.ccOutgoingCall.subscribe((call) => {
14099
+ this.addCall(call);
14100
+ });
14101
+ this.ccCallEnded = CometChatCallEvents.ccCallEnded.subscribe((call) => {
14102
+ if (call) {
14103
+ this.addCall(call);
14104
+ }
14105
+ });
14106
+ }
14107
+ unsubscribeToEvents() {
14108
+ var _a, _b, _c, _d;
14109
+ (_a = this.ccCallAccepted) === null || _a === void 0 ? void 0 : _a.unsubscribe();
14110
+ (_b = this.ccCallRejected) === null || _b === void 0 ? void 0 : _b.unsubscribe();
14111
+ (_c = this.ccOutgoingCall) === null || _c === void 0 ? void 0 : _c.unsubscribe();
14112
+ (_d = this.ccCallEnded) === null || _d === void 0 ? void 0 : _d.unsubscribe();
14113
+ }
14114
+ ngOnDestroy() {
14115
+ this.callsRequest = null;
14116
+ this.ref.detach();
14117
+ this.removeListener();
14118
+ this.unsubscribeToEvents();
14119
+ }
14120
+ /**
14121
+ * @param {CometChat.Call} call
14122
+ */
14123
+ /**
14124
+ * @param {CometChat.Call} call
14125
+ */
14126
+ attachListeners() {
14127
+ CometChat.addCallListener(this.callsListenerId, new CometChat.CallListener({
14128
+ onIncomingCallReceived: (call) => {
14129
+ this.addCall(call);
14130
+ },
14131
+ onIncomingCallCancelled: (call) => {
14132
+ this.addCall(call);
14133
+ },
14134
+ onOutgoingCallAccepted: (call) => {
14135
+ this.addCall(call);
14136
+ },
14137
+ onOutgoingCallRejected: (call) => {
14138
+ this.addCall(call);
14139
+ },
14140
+ }));
14141
+ }
14142
+ removeListener() {
14143
+ CometChat.removeCallListener(this.callsListenerId);
14144
+ }
14145
+ getSubtitle(call) {
14146
+ return CallingDetailsUtils.getCallStatus(call, this.loggedInUser);
14147
+ }
14148
+ getCallTypeIcon(call) {
14149
+ if (call.getType() == CometChatUIKitConstants.MessageTypes.audio) {
14150
+ return "assets/Audio-Call.svg";
14151
+ }
14152
+ else {
14153
+ return "VideoCallIcon";
14154
+ }
14155
+ }
14156
+ getCallerName(call) {
14157
+ if (CallingDetailsUtils.isSentByMe(call, this.loggedInUser)) {
14158
+ return call.getReceiver().getName();
14159
+ }
14160
+ return call.getSender().getName();
14161
+ }
14162
+ getRequestBuilder() {
14163
+ if (this.messageRequestBuilder) {
14164
+ return this.messageRequestBuilder
14165
+ .build();
14166
+ }
14167
+ else {
14168
+ return new CometChat.MessagesRequestBuilder()
14169
+ .setLimit(this.limit)
14170
+ .setTypes([CometChatUIKitConstants.MessageTypes.audio, CometChatUIKitConstants.MessageTypes.video])
14171
+ .setCategories([CometChatUIKitConstants.MessageCategory.call])
14172
+ .build();
14173
+ }
14174
+ }
14175
+ /**
14176
+ * addcall
14177
+ * @param call
14178
+ */
14179
+ addCall(call) {
14180
+ this.callsList.unshift(call);
14181
+ this.ref.detectChanges();
14182
+ }
14183
+ setThemeStyle() {
14184
+ this.iconStyle.iconTint = this.themeService.theme.palette.getAccent600();
14185
+ this.setAvatarStyle();
14186
+ this.setDateStyle();
14187
+ this.setCallsStyle();
14188
+ this.listStyle = {
14189
+ titleTextFont: this.callHistoryStyle.titleTextFont,
14190
+ titleTextColor: this.callHistoryStyle.titleTextColor,
14191
+ emptyStateTextFont: this.callHistoryStyle.emptyStateTextFont,
14192
+ emptyStateTextColor: this.callHistoryStyle.emptyStateTextColor,
14193
+ errorStateTextFont: this.callHistoryStyle.errorStateTextFont,
14194
+ errorStateTextColor: this.callHistoryStyle.errorStateTextColor,
14195
+ loadingIconTint: this.callHistoryStyle.loadingIconTint,
14196
+ separatorColor: this.callHistoryStyle.separatorColor,
14197
+ };
14198
+ }
14199
+ setAvatarStyle() {
14200
+ let defaultStyle = new AvatarStyle({
14201
+ borderRadius: "24px",
14202
+ width: "36px",
14203
+ height: "36px",
14204
+ border: "none",
14205
+ backgroundColor: this.themeService.theme.palette.getAccent700(),
14206
+ nameTextColor: this.themeService.theme.palette.getAccent900(),
14207
+ backgroundSize: "cover",
14208
+ nameTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
14209
+ outerViewBorder: "",
14210
+ outerViewBorderSpacing: "",
14211
+ });
14212
+ this.avatarStyle = Object.assign(Object.assign({}, defaultStyle), this.avatarStyle);
14213
+ }
14214
+ setDateStyle() {
14215
+ let defaultStyle = new DateStyle({
14216
+ textFont: fontHelper(this.themeService.theme.typography.caption2),
14217
+ textColor: this.themeService.theme.palette.getAccent600(),
14218
+ background: "transparent"
14219
+ });
14220
+ this.dateStyle = Object.assign(Object.assign({}, defaultStyle), this.dateStyle);
14221
+ }
14222
+ getListItemStyle(call) {
14223
+ let defaultStyle = new ListItemStyle({
14224
+ height: "45px",
14225
+ width: "100%",
14226
+ background: this.themeService.theme.palette.getBackground(),
14227
+ activeBackground: this.themeService.theme.palette.getAccent100(),
14228
+ borderRadius: "0",
14229
+ titleFont: fontHelper(this.themeService.theme.typography.title2),
14230
+ titleColor: CallingDetailsUtils.isMissedCall(call, this.loggedInUser) ? this.themeService.theme.palette.getError() : this.themeService.theme.palette.getAccent(),
14231
+ border: "none",
14232
+ separatorColor: this.themeService.theme.palette.getAccent200(),
14233
+ hoverBackground: this.themeService.theme.palette.getAccent50()
14234
+ });
14235
+ return Object.assign(Object.assign({}, defaultStyle), this.listItemStyle);
14236
+ }
14237
+ setCallsStyle() {
14238
+ let defaultStyle = new CallHistoryStyle({
14239
+ subtitleTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
14240
+ subtitleTextColor: this.themeService.theme.palette.getAccent600(),
14241
+ background: this.themeService.theme.palette.getBackground(),
14242
+ border: `1px solid ${this.themeService.theme.palette.getAccent50()}`,
14243
+ titleTextFont: fontHelper(this.themeService.theme.typography.title1),
14244
+ titleTextColor: this.themeService.theme.palette.getAccent(),
14245
+ emptyStateTextFont: fontHelper(this.themeService.theme.typography.title1),
14246
+ emptyStateTextColor: this.themeService.theme.palette.getAccent600(),
14247
+ errorStateTextFont: fontHelper(this.themeService.theme.typography.title1),
14248
+ errorStateTextColor: this.themeService.theme.palette.getAccent600(),
14249
+ loadingIconTint: this.themeService.theme.palette.getAccent600(),
14250
+ separatorColor: this.themeService.theme.palette.getAccent400(),
14251
+ });
14252
+ this.callHistoryStyle = Object.assign(Object.assign({}, this.callHistoryStyle), defaultStyle);
14253
+ }
14254
+ }
14255
+ CometChatCallHistoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
14256
+ CometChatCallHistoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatCallHistoryComponent, selector: "cometchat-call-history", inputs: { messageRequestBuilder: "messageRequestBuilder", subtitleView: "subtitleView", listItemView: "listItemView", menu: "menu", options: "options", activeCall: "activeCall", hideSeparator: "hideSeparator", selectionMode: "selectionMode", hideError: "hideError", title: "title", onError: "onError", onSelect: "onSelect", emptyStateView: "emptyStateView", errorStateView: "errorStateView", loadingIconURL: "loadingIconURL", datePattern: "datePattern", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", titleAlignment: "titleAlignment", avatarStyle: "avatarStyle", dateStyle: "dateStyle", callHistoryStyle: "callHistoryStyle", listItemStyle: "listItemStyle", onItemClick: "onItemClick" }, ngImport: i0, template: "<div class=\"cc-call-history\" [ngStyle]=\"callStyle()\">\n <div class=\"cc-menus\" *ngIf=\"menu\">\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n</div>\n <cometchat-list [hideSearch]=\"true\" [listItemView]=\"listItemView ? listItemView : listItem\" [onScrolledToBottom]=\"onScrolledToBottom\"\n [list]=\"callsList\" [hideError]=\"hideError\" [title]=\"title\"\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\" [emptyStateView]=\"emptyStateView\"\n [errorStateText]=\"errorStateText\" [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-call>\n <cometchat-list-item [title]=\"getCallerName(call)\" [avatarURL]=\"call?.avatar\" [avatarName]=\"getCallerName(call)\"\n [listItemStyle]=\"getListItemStyle(call)\" [avatarStyle]=\"avatarStyle\"\n [hideSeparator]=\"hideSeparator\" (cc-listitem-clicked)=\"onClick(call)\" [isActive]=\"getActiveCall(call)\">\n <div slot=\"subtitleView\" class=\"cc-call-history__subtitle-view\" *ngIf=\"subtitleView;else groupSubtitle\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <ng-template #groupSubtitle>\n <div slot=\"subtitleView\" [ngStyle]=\"subtitleStyle()\" class=\"cc-call-history__subtitle-view\">\n <div class=\"cc-call__icon\">\n <cometchat-icon [iconStyle]=\"iconStyle\" [URL]=\"getCallTypeIcon(call)\"></cometchat-icon>\n </div>\n <div class=\"cc-call__type\">\n {{getSubtitle(call)}}\n </div>\n </div>\n </ng-template>\n <div slot=\"menuView\" class=\"cc-call-history__options\" *ngIf=\"options\">\n <cometchat-menu-list (cc-menu-clicked)=\"callMenuOption($event,call)\" [data]=\"options(call)\">\n </cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-call-history__tail-view\">\n <div class=\"tail__view\" *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div class=\"cc-call-history__date\">\n <cometchat-date [dateStyle]=\"dateStyle\" [timestamp]=\"call?.sentAt\" [pattern]=\"datePattern\"></cometchat-date>\n </div>\n </div>\n <div class=\"cc-call-history__selection-view\" *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <ng-container *ngTemplateOutlet=\"tailView\">\n </ng-container>\n </div>\n </div>\n </cometchat-list-item>\n <ng-template #tailView>\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\">\n <cometchat-radio-button (cc-radio-button-changed)=\"onSelect ? onSelect(call) : null\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\">\n <cometchat-checkbox (cc-checkbox-changed)=\"onSelect ? onSelect(call) : null\"></cometchat-checkbox>\n </div>\n </ng-template>\n </ng-template>\n</div>", styles: [".cc-call-history{height:100%;width:100%;box-sizing:border-box;padding-bottom:24px}.cc-call-history__tail-view{position:relative}.cc-menus{position:absolute;right:12px;top:6px}.cc-call-history__subtitle-view{display:flex;align-items:center;justify-content:flex-start;gap:6px}\n"], components: [{ type: CometchatListComponent, selector: "cometchat-list", inputs: ["listItemView", "onScrolledToBottom", "onScrolledToTop", "list", "onSearch", "searchText", "searchIconURL", "listStyle", "searchPlaceholderText", "hideSearch", "hideError", "title", "titleAlignment", "errorStateView", "loadingStateView", "emptyStateView", "state", "errorStateText", "emptyStateText", "loadingIconURL", "showSectionHeader", "sectionHeaderField"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryComponent, decorators: [{
14258
+ type: Component,
14259
+ args: [{ selector: "cometchat-call-history", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-call-history\" [ngStyle]=\"callStyle()\">\n <div class=\"cc-menus\" *ngIf=\"menu\">\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n</div>\n <cometchat-list [hideSearch]=\"true\" [listItemView]=\"listItemView ? listItemView : listItem\" [onScrolledToBottom]=\"onScrolledToBottom\"\n [list]=\"callsList\" [hideError]=\"hideError\" [title]=\"title\"\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\" [emptyStateView]=\"emptyStateView\"\n [errorStateText]=\"errorStateText\" [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-call>\n <cometchat-list-item [title]=\"getCallerName(call)\" [avatarURL]=\"call?.avatar\" [avatarName]=\"getCallerName(call)\"\n [listItemStyle]=\"getListItemStyle(call)\" [avatarStyle]=\"avatarStyle\"\n [hideSeparator]=\"hideSeparator\" (cc-listitem-clicked)=\"onClick(call)\" [isActive]=\"getActiveCall(call)\">\n <div slot=\"subtitleView\" class=\"cc-call-history__subtitle-view\" *ngIf=\"subtitleView;else groupSubtitle\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <ng-template #groupSubtitle>\n <div slot=\"subtitleView\" [ngStyle]=\"subtitleStyle()\" class=\"cc-call-history__subtitle-view\">\n <div class=\"cc-call__icon\">\n <cometchat-icon [iconStyle]=\"iconStyle\" [URL]=\"getCallTypeIcon(call)\"></cometchat-icon>\n </div>\n <div class=\"cc-call__type\">\n {{getSubtitle(call)}}\n </div>\n </div>\n </ng-template>\n <div slot=\"menuView\" class=\"cc-call-history__options\" *ngIf=\"options\">\n <cometchat-menu-list (cc-menu-clicked)=\"callMenuOption($event,call)\" [data]=\"options(call)\">\n </cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-call-history__tail-view\">\n <div class=\"tail__view\" *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div class=\"cc-call-history__date\">\n <cometchat-date [dateStyle]=\"dateStyle\" [timestamp]=\"call?.sentAt\" [pattern]=\"datePattern\"></cometchat-date>\n </div>\n </div>\n <div class=\"cc-call-history__selection-view\" *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <ng-container *ngTemplateOutlet=\"tailView\">\n </ng-container>\n </div>\n </div>\n </cometchat-list-item>\n <ng-template #tailView>\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\">\n <cometchat-radio-button (cc-radio-button-changed)=\"onSelect ? onSelect(call) : null\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\">\n <cometchat-checkbox (cc-checkbox-changed)=\"onSelect ? onSelect(call) : null\"></cometchat-checkbox>\n </div>\n </ng-template>\n </ng-template>\n</div>", styles: [".cc-call-history{height:100%;width:100%;box-sizing:border-box;padding-bottom:24px}.cc-call-history__tail-view{position:relative}.cc-menus{position:absolute;right:12px;top:6px}.cc-call-history__subtitle-view{display:flex;align-items:center;justify-content:flex-start;gap:6px}\n"] }]
14260
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { messageRequestBuilder: [{
14261
+ type: Input
14262
+ }], subtitleView: [{
14263
+ type: Input
14264
+ }], listItemView: [{
14265
+ type: Input
14266
+ }], menu: [{
14267
+ type: Input
14268
+ }], options: [{
14269
+ type: Input
14270
+ }], activeCall: [{
14271
+ type: Input
14272
+ }], hideSeparator: [{
14273
+ type: Input
14274
+ }], selectionMode: [{
14275
+ type: Input
14276
+ }], hideError: [{
14277
+ type: Input
14278
+ }], title: [{
14279
+ type: Input
14280
+ }], onError: [{
14281
+ type: Input
14282
+ }], onSelect: [{
14283
+ type: Input
14284
+ }], emptyStateView: [{
14285
+ type: Input
14286
+ }], errorStateView: [{
14287
+ type: Input
14288
+ }], loadingIconURL: [{
14289
+ type: Input
14290
+ }], datePattern: [{
14291
+ type: Input
14292
+ }], loadingStateView: [{
14293
+ type: Input
14294
+ }], emptyStateText: [{
14295
+ type: Input
14296
+ }], errorStateText: [{
14297
+ type: Input
14298
+ }], titleAlignment: [{
14299
+ type: Input
14300
+ }], avatarStyle: [{
14301
+ type: Input
14302
+ }], dateStyle: [{
14303
+ type: Input
14304
+ }], callHistoryStyle: [{
14305
+ type: Input
14306
+ }], listItemStyle: [{
14307
+ type: Input
14308
+ }], onItemClick: [{
14309
+ type: Input
14310
+ }] } });
14311
+
14312
+ /**
14313
+ *
14314
+ * CometChatCallDetailsComponent renders details of user or group.
14315
+ *
14316
+ * @version 1.0.0
14317
+ * @author CometChatTeam
14318
+ * @copyright © 2022 CometChat Inc.
14319
+ *
14320
+ */
14321
+ class CometChatCallDetailsComponent {
14322
+ constructor(ref, themeService) {
14323
+ this.ref = ref;
14324
+ this.themeService = themeService;
14325
+ this.title = localize("CALL_DETAILS");
14326
+ this.closeButtonIconURL = "assets/close2x.svg";
14327
+ this.hideProfile = false;
14328
+ this.disableUsersPresence = false;
14329
+ this.privateGroupIcon = "assets/Private.svg";
14330
+ this.protectedGroupIcon = "assets/Locked.svg";
14331
+ this.onError = (error) => {
14332
+ console.log(error);
14333
+ };
14334
+ this.data = [];
14335
+ this.statusIndicatorStyle = {
14336
+ height: "10px",
14337
+ width: "10px",
14338
+ borderRadius: "16px",
14339
+ border: ""
14340
+ };
14341
+ this.avatarStyle = {
14342
+ borderRadius: "16px",
14343
+ width: "28px",
14344
+ height: "28px",
14345
+ border: "none",
14346
+ };
14347
+ this.callDetailsStyle = {
14348
+ width: "100%",
14349
+ height: "100%",
14350
+ padding: "0 100px"
14351
+ };
14352
+ this.callButtonsConfiguration = new CallButtonsConfiguration({});
14353
+ this.listItemStyle = {
14354
+ height: "100%",
14355
+ width: "100%",
14356
+ background: "",
14357
+ activeBackground: "transparent",
14358
+ borderRadius: "grey",
14359
+ titleFont: "600 15px Inter",
14360
+ titleColor: "black",
14361
+ border: "",
14362
+ hoverBackground: "transparent",
14363
+ separatorColor: "rgb(222 222 222 / 46%)"
14364
+ };
14365
+ this.messagesList = [];
14366
+ this.loggedInUser = null;
14367
+ this.statusColor = {
14368
+ private: "",
14369
+ password: "#F7A500",
14370
+ public: ""
14371
+ };
14372
+ this.closeButtonStyle = {
14373
+ height: "24px",
14374
+ width: "24px",
14375
+ border: "none",
14376
+ borderRadius: "0",
14377
+ background: "transparent",
14378
+ buttonIconTint: this.callDetailsStyle.closeButtonIconTint || this.themeService.theme.palette.getPrimary()
14379
+ };
14380
+ this.buttonStyle = {
14381
+ height: "100%",
14382
+ width: "100%",
14383
+ border: "none",
14384
+ borderRadius: "0",
14385
+ background: "transparent",
14386
+ buttonTextColor: this.themeService.theme.palette.getPrimary() || "rgba(51, 153, 255)",
14387
+ buttonTextFont: "500 16px Inter"
14388
+ };
14389
+ this.dividerStyle = {
14390
+ background: "rgb(222 222 222 / 46%)",
14391
+ height: "1px",
14392
+ width: "100%"
14393
+ };
14394
+ this.subtitleText = "";
14395
+ this.userListenerId = "userlist_" + new Date().getTime();
14396
+ this.limit = 5;
14397
+ this.types = [];
14398
+ this.categories = [];
14399
+ this.checkStatusType = () => {
14400
+ var _a, _b;
14401
+ return this.user && !this.disableUsersPresence ? this.statusColor[(_a = this.user) === null || _a === void 0 ? void 0 : _a.getStatus()] : this.statusColor[(_b = this.group) === null || _b === void 0 ? void 0 : _b.getType()];
14402
+ };
14403
+ this.onCloseClick = () => {
14404
+ if (this.onClose) {
14405
+ this.onClose();
14406
+ }
14407
+ };
14408
+ this.subtitleStyle = () => {
14409
+ if (this.user && this.user.getStatus() == CometChatUIKitConstants.userStatusType.online) {
14410
+ return {
14411
+ textFont: this.callDetailsStyle.subtitleTextFont,
14412
+ textColor: this.themeService.theme.palette.getPrimary()
14413
+ };
14414
+ }
14415
+ else {
14416
+ return {
14417
+ textFont: this.callDetailsStyle.subtitleTextFont,
14418
+ textColor: this.callDetailsStyle.subtitleTextColor
14419
+ };
14420
+ }
14421
+ };
14422
+ /**
14423
+ * @param {CometChat.Group} group
14424
+ */
14425
+ this.getGroupIcon = (group) => {
14426
+ let status;
14427
+ if (group) {
14428
+ switch (group.getType()) {
14429
+ case CometChatUIKitConstants.GroupTypes.password:
14430
+ status = this.protectedGroupIcon;
14431
+ break;
14432
+ case CometChatUIKitConstants.GroupTypes.private:
14433
+ status = this.privateGroupIcon;
14434
+ break;
14435
+ default:
14436
+ status = null;
14437
+ break;
14438
+ }
14439
+ }
14440
+ return status;
14441
+ };
14442
+ this.getTemplateOptions = (template) => {
14443
+ if (template.options) {
14444
+ return template.options(this.user, this.group, template.id);
14445
+ }
14446
+ else
14447
+ return [];
14448
+ };
14449
+ this.wrapperStyle = () => {
14450
+ return {
14451
+ width: this.callDetailsStyle.width,
14452
+ height: this.callDetailsStyle.height,
14453
+ border: this.callDetailsStyle.border,
14454
+ borderRadius: this.callDetailsStyle.borderRadius,
14455
+ background: this.callDetailsStyle.background,
14456
+ };
14457
+ };
14458
+ this.marginStyle = () => {
14459
+ var _a;
14460
+ return {
14461
+ padding: (_a = this.callDetailsStyle) === null || _a === void 0 ? void 0 : _a.padding
14462
+ };
14463
+ };
14464
+ }
14465
+ //
14466
+ getTitleStyle() {
14467
+ return {
14468
+ textFont: this.callDetailsStyle.titleTextFont || fontHelper(this.themeService.theme.typography.title1),
14469
+ textColor: this.callDetailsStyle.titleTextColor || this.themeService.theme.palette.getAccent()
14470
+ };
14471
+ }
14472
+ ngOnChanges(changes) {
14473
+ if (changes["user"] || changes["group"]) {
14474
+ this.updateSubtitle();
14475
+ }
14476
+ }
14477
+ removeListener() {
14478
+ CometChat.removeUserListener(this.userListenerId);
14479
+ }
14480
+ ngOnDestroy() {
14481
+ this.removeListener();
14482
+ if (this.onClose) {
14483
+ this.onClose();
14484
+ }
14485
+ this.unsubscribeToEvents();
14486
+ }
14487
+ ngOnInit() {
14488
+ this.setThemeStyle();
14489
+ this.subscribeToEvents();
14490
+ this.statusColor.online = this.callDetailsStyle.onlineStatusColor || this.themeService.theme.palette.getSuccess();
14491
+ this.attachListeners();
14492
+ this.updateSubtitle();
14493
+ }
14494
+ /**
14495
+ * Compares two dates and sets Date on a a new day
14496
+ */
14497
+ /**
14498
+ * @param {number} firstDate
14499
+ * @param {number} secondDate
14500
+ */
14501
+ isDateDifferent(firstDate, secondDate) {
14502
+ let firstDateObj, secondDateObj;
14503
+ firstDateObj = new Date(firstDate * 1000);
14504
+ secondDateObj = new Date(secondDate * 1000);
14505
+ return firstDateObj.getDate() !== secondDateObj.getDate() ||
14506
+ firstDateObj.getMonth() !== secondDateObj.getMonth() ||
14507
+ firstDateObj.getFullYear() !== secondDateObj.getFullYear();
14508
+ }
14509
+ subscribeToEvents() {
14510
+ this.ccGroupMemberAdded = CometChatGroupEvents.ccGroupMemberAdded.subscribe((item) => {
14511
+ this.group = item === null || item === void 0 ? void 0 : item.userAddedIn;
14512
+ this.group = item === null || item === void 0 ? void 0 : item.userAddedIn;
14513
+ this.updateSubtitle();
14514
+ this.ref.detectChanges();
14515
+ });
14516
+ this.ccGroupMemberJoined = CometChatGroupEvents.ccGroupMemberJoined.subscribe((item) => {
14517
+ this.group = item === null || item === void 0 ? void 0 : item.joinedGroup;
14518
+ this.updateSubtitle();
14519
+ this.ref.detectChanges();
14520
+ });
14521
+ this.ccGroupMemberKicked = CometChatGroupEvents.ccGroupMemberKicked.subscribe((item) => {
14522
+ this.group = item === null || item === void 0 ? void 0 : item.kickedFrom;
14523
+ this.updateSubtitle();
14524
+ this.ref.detectChanges();
14525
+ });
14526
+ this.ccGroupMemberBanned = CometChatGroupEvents.ccGroupMemberBanned.subscribe((item) => {
14527
+ this.group = item === null || item === void 0 ? void 0 : item.kickedFrom;
14528
+ this.updateSubtitle();
14529
+ this.ref.detectChanges();
14530
+ });
14531
+ this.ccOwnershipChanged = CometChatGroupEvents.ccOwnershipChanged.subscribe((item) => {
14532
+ this.group = item === null || item === void 0 ? void 0 : item.group;
14533
+ this.updateSubtitle();
14534
+ this.ref.detectChanges();
14535
+ });
14536
+ }
14537
+ unsubscribeToEvents() {
14538
+ var _a, _b, _c, _d, _e;
14539
+ (_a = this.ccGroupMemberAdded) === null || _a === void 0 ? void 0 : _a.unsubscribe();
14540
+ (_b = this.ccGroupMemberJoined) === null || _b === void 0 ? void 0 : _b.unsubscribe();
14541
+ (_c = this.ccGroupMemberKicked) === null || _c === void 0 ? void 0 : _c.unsubscribe();
14542
+ (_d = this.ccGroupMemberBanned) === null || _d === void 0 ? void 0 : _d.unsubscribe();
14543
+ (_e = this.ccOwnershipChanged) === null || _e === void 0 ? void 0 : _e.unsubscribe();
14544
+ }
14545
+ updateSubtitle() {
14546
+ var _a;
14547
+ const count = (_a = this.group) === null || _a === void 0 ? void 0 : _a.getMembersCount();
14548
+ const membersText = localize(count > 1 ? "MEMBERS" : "MEMBER");
14549
+ this.subtitleText = this.user ? this.user.getStatus() : `${count} ${membersText}`;
14550
+ this.ref.detectChanges();
14551
+ }
14552
+ getButtonStyle(option) {
14553
+ return {
14554
+ height: "100%",
14555
+ width: "100%",
14556
+ border: "none",
14557
+ borderRadius: "0",
14558
+ buttonTextFont: option === null || option === void 0 ? void 0 : option.titleFont,
14559
+ buttonTextColor: option === null || option === void 0 ? void 0 : option.titleColor,
14560
+ background: (option === null || option === void 0 ? void 0 : option.backgroundColor) || "transparent"
14561
+ };
14562
+ }
14563
+ checkGroupType() {
14564
+ var _a;
14565
+ let image = "";
14566
+ if (this.group) {
14567
+ switch ((_a = this.group) === null || _a === void 0 ? void 0 : _a.getType()) {
14568
+ case CometChatUIKitConstants.GroupTypes.password:
14569
+ image = this.protectedGroupIcon;
14570
+ break;
14571
+ case CometChatUIKitConstants.GroupTypes.private:
14572
+ image = this.privateGroupIcon;
14573
+ break;
14574
+ default:
14575
+ image = "";
14576
+ break;
14577
+ }
14578
+ }
14579
+ return image;
14580
+ }
14581
+ updateUserStatus(user) {
14582
+ if (this.user && this.user.getUid() && this.user.getUid() === user.getUid()) {
14583
+ this.user.setStatus(user.getStatus());
14584
+ this.updateSubtitle();
14585
+ }
14586
+ // this.ref.detectChanges();
14587
+ }
14588
+ attachListeners() {
14589
+ try {
14590
+ if (!this.disableUsersPresence) {
14591
+ CometChat.addUserListener(this.userListenerId, new CometChat.UserListener({
14592
+ onUserOnline: (onlineUser) => {
14593
+ /* when someuser/friend comes online, user will be received here */
14594
+ this.updateUserStatus(onlineUser);
14595
+ },
14596
+ onUserOffline: (offlineUser) => {
14597
+ /* when someuser/friend went offline, user will be received here */
14598
+ this.updateUserStatus(offlineUser);
14599
+ },
14600
+ }));
14601
+ }
14602
+ }
14603
+ catch (error) {
14604
+ if (this.onError) {
14605
+ this.onError(CometChatException(error));
14606
+ }
14607
+ }
14608
+ }
14609
+ getSectionHeaderStyle() {
14610
+ return {
14611
+ textFont: "500 15px Inter",
14612
+ textColor: "lightgrey"
14613
+ };
14614
+ }
14615
+ getCallStatusStyleStyle() {
14616
+ return {
14617
+ textFont: "400 15px Inter",
14618
+ textColor: "black"
14619
+ };
14620
+ }
14621
+ getDateStyle() {
14622
+ return {
14623
+ textFont: "400 15px Inter",
14624
+ textColor: "lightgrey"
14625
+ };
14626
+ }
14627
+ onCloseDetails() {
14628
+ if (this.onClose) {
14629
+ this.onClose();
14630
+ }
14631
+ }
14632
+ /**
14633
+ * @param {CometChat.Group} group
14634
+ */
14635
+ getStatusIndicatorColor(group) {
14636
+ return this.statusColor[group === null || group === void 0 ? void 0 : group.getType()];
14637
+ }
14638
+ getCustomOptionView(option) {
14639
+ return option === null || option === void 0 ? void 0 : option.customView;
14640
+ }
14641
+ showDataSectionStyle(template) {
14642
+ return {
14643
+ textFont: template.titleFont,
14644
+ textColor: template.titleColor
14645
+ };
14646
+ }
14647
+ setThemeStyle() {
14648
+ this.setDetailsStyle();
14649
+ this.setAvatarStyle();
14650
+ this.setStatusStyle();
14651
+ this.setListItemStyle();
14652
+ this.statusColor.private = this.callDetailsStyle.privateGroupIconBackground;
14653
+ this.statusColor.online = this.callDetailsStyle.onlineStatusColor;
14654
+ this.statusColor.password = this.callDetailsStyle.passwordGroupIconBackground;
14655
+ }
14656
+ setListItemStyle() {
14657
+ let defaultStyle = new ListItemStyle({
14658
+ height: "45px",
14659
+ width: "100%",
14660
+ background: this.themeService.theme.palette.getBackground(),
14661
+ activeBackground: "transparent",
14662
+ borderRadius: "0",
14663
+ titleFont: fontHelper(this.themeService.theme.typography.title2),
14664
+ titleColor: this.themeService.theme.palette.getAccent(),
14665
+ border: "none",
14666
+ separatorColor: this.themeService.theme.palette.getAccent200(),
14667
+ hoverBackground: "transparent"
14668
+ });
14669
+ this.listItemStyle = Object.assign(Object.assign({}, defaultStyle), this.listItemStyle);
14670
+ }
14671
+ setAvatarStyle() {
14672
+ let defaultStyle = new AvatarStyle({
14673
+ borderRadius: "24px",
14674
+ width: "36px",
14675
+ height: "36px",
14676
+ border: "none",
14677
+ backgroundColor: this.themeService.theme.palette.getAccent700(),
14678
+ nameTextColor: this.themeService.theme.palette.getAccent900(),
14679
+ backgroundSize: "cover",
14680
+ nameTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
14681
+ outerViewBorder: "",
14682
+ outerViewBorderSpacing: "",
14683
+ });
14684
+ this.avatarStyle = Object.assign(Object.assign({}, defaultStyle), this.avatarStyle);
14685
+ }
14686
+ setStatusStyle() {
14687
+ let defaultStyle = {
14688
+ height: "12px",
14689
+ width: "12px",
14690
+ border: "none",
14691
+ borderRadius: "24px",
14692
+ };
14693
+ this.statusIndicatorStyle = Object.assign(Object.assign({}, defaultStyle), this.statusIndicatorStyle);
14694
+ }
14695
+ setDetailsStyle() {
14696
+ let defaultStyle = new DetailsStyle({
14697
+ background: this.themeService.theme.palette.getBackground(),
14698
+ border: `1px solid ${this.themeService.theme.palette.getAccent50()}`,
14699
+ titleTextFont: fontHelper(this.themeService.theme.typography.title1),
14700
+ titleTextColor: this.themeService.theme.palette.getAccent(),
14701
+ onlineStatusColor: this.themeService.theme.palette.getSuccess(),
14702
+ privateGroupIconBackground: this.themeService.theme.palette.getSuccess(),
14703
+ passwordGroupIconBackground: "RGB(247, 165, 0)",
14704
+ closeButtonIconTint: this.themeService.theme.palette.getPrimary(),
14705
+ width: "100%",
14706
+ height: "100%",
14707
+ borderRadius: "",
14708
+ subtitleTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
14709
+ subtitleTextColor: this.themeService.theme.palette.getAccent600(),
14710
+ padding: "0 100px"
14711
+ });
14712
+ this.callDetailsStyle = Object.assign(Object.assign({}, defaultStyle), this.callDetailsStyle);
14713
+ }
14714
+ }
14715
+ CometChatCallDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetailsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
14716
+ CometChatCallDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatCallDetailsComponent, selector: "cometchat-call-details", inputs: { group: "group", user: "user", title: "title", closeButtonIconURL: "closeButtonIconURL", hideProfile: "hideProfile", subtitleView: "subtitleView", customProfileView: "customProfileView", disableUsersPresence: "disableUsersPresence", privateGroupIcon: "privateGroupIcon", protectedGroupIcon: "protectedGroupIcon", onError: "onError", data: "data", onClose: "onClose", statusIndicatorStyle: "statusIndicatorStyle", avatarStyle: "avatarStyle", callDetailsStyle: "callDetailsStyle", callButtonsConfiguration: "callButtonsConfiguration", listItemStyle: "listItemStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\" [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\" class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\" (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n<div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\" [avatarName]=\"user?.getName() ?? this.group?.getName()\" [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\" [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\" [statusIndicatorIcon]=\"checkGroupType()\" [title]=\"this.user?.getName() ?? this.group?.getName()\" [hideSeparator]=\"false\"\n [statusIndicatorStyle]=\"statusIndicatorStyle\" [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\" [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n<div class=\"cc-calldetails_primary-section\" *ngIf=\"!data || data.length == 0\">\n <cometchat-call-buttons [user]=\"user\" [group]=\"group\" [callButtonsStyle]=\"callButtonsConfiguration.callButtonsStyle\" [onVideoCallClick]=\"callButtonsConfiguration.onVideoCallClick\" [onVoiceCallClick]=\"callButtonsConfiguration.onVoiceCallClick\" [videoCallIconURL]=\"callButtonsConfiguration.videoCallIconURL\" [voiceCallIconURL]=\"callButtonsConfiguration.voiceCallIconURL\" ></cometchat-call-buttons>\n\n</div>\n<div class=\"cc-details__section-list\" *ngIf=\"data && data.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of data\" >\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\" [labelStyle]=\"showDataSectionStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\" *ngIf=\"getTemplateOptions(item)\">\n<div class=\"cc-details__options\"*ngFor=\"let option of getTemplateOptions(item)\" >\n<div class=\"cc-details__option\" *ngIf=\"!getCustomOptionView(option);else customView\">\n <div class=\"cc-details__option-title\" >\n <cometchat-button [text]=\"option.title\" [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n</div>\n<ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\" >\n </ng-container>\n</ng-template>\n</div>\n </div>\n </div>\n</div>\n</div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;min-height:220px}.cc-details__profile{margin-bottom:16px;height:8%}.cc-calldetails_primary-section{height:84%;width:100%;overflow-y:auto;overflow-x:hidden;margin-left:24px;margin-bottom:24px}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;height:5%}.cc-details__options{margin:8px 0;display:flex;flex-direction:row;gap:10px;align-items:center}.cc-calldetails__date-container{margin:8px 0}.cc-details__option{display:flex;flex-direction:row;justify-content:flex-start;gap:16px;align-items:center}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"], components: [{ type: CometChatCallButtonsComponent, selector: "cometchat-call-buttons", inputs: ["user", "group", "voiceCallIconURL", "voiceCallIconText", "voiceCallIconHoverText", "videoCallIconURL", "videoCallIconText", "videoCallIconHoverText", "onVoiceCallClick", "onVideoCallClick", "onError", "callButtonsStyle", "outgoingCallConfiguration", "ongoingCallConfiguration"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14717
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetailsComponent, decorators: [{
14718
+ type: Component,
14719
+ args: [{ selector: "cometchat-call-details", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\" [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\" class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\" (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n<div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\" [avatarName]=\"user?.getName() ?? this.group?.getName()\" [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\" [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\" [statusIndicatorIcon]=\"checkGroupType()\" [title]=\"this.user?.getName() ?? this.group?.getName()\" [hideSeparator]=\"false\"\n [statusIndicatorStyle]=\"statusIndicatorStyle\" [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\" [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n<div class=\"cc-calldetails_primary-section\" *ngIf=\"!data || data.length == 0\">\n <cometchat-call-buttons [user]=\"user\" [group]=\"group\" [callButtonsStyle]=\"callButtonsConfiguration.callButtonsStyle\" [onVideoCallClick]=\"callButtonsConfiguration.onVideoCallClick\" [onVoiceCallClick]=\"callButtonsConfiguration.onVoiceCallClick\" [videoCallIconURL]=\"callButtonsConfiguration.videoCallIconURL\" [voiceCallIconURL]=\"callButtonsConfiguration.voiceCallIconURL\" ></cometchat-call-buttons>\n\n</div>\n<div class=\"cc-details__section-list\" *ngIf=\"data && data.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of data\" >\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\" [labelStyle]=\"showDataSectionStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\" *ngIf=\"getTemplateOptions(item)\">\n<div class=\"cc-details__options\"*ngFor=\"let option of getTemplateOptions(item)\" >\n<div class=\"cc-details__option\" *ngIf=\"!getCustomOptionView(option);else customView\">\n <div class=\"cc-details__option-title\" >\n <cometchat-button [text]=\"option.title\" [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n</div>\n<ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\" >\n </ng-container>\n</ng-template>\n</div>\n </div>\n </div>\n</div>\n</div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;min-height:220px}.cc-details__profile{margin-bottom:16px;height:8%}.cc-calldetails_primary-section{height:84%;width:100%;overflow-y:auto;overflow-x:hidden;margin-left:24px;margin-bottom:24px}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;height:5%}.cc-details__options{margin:8px 0;display:flex;flex-direction:row;gap:10px;align-items:center}.cc-calldetails__date-container{margin:8px 0}.cc-details__option{display:flex;flex-direction:row;justify-content:flex-start;gap:16px;align-items:center}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"] }]
14720
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { group: [{
14721
+ type: Input
14722
+ }], user: [{
14723
+ type: Input
14724
+ }], title: [{
14725
+ type: Input
14726
+ }], closeButtonIconURL: [{
14727
+ type: Input
14728
+ }], hideProfile: [{
14729
+ type: Input
14730
+ }], subtitleView: [{
14731
+ type: Input
14732
+ }], customProfileView: [{
14733
+ type: Input
14734
+ }], disableUsersPresence: [{
14735
+ type: Input
14736
+ }], privateGroupIcon: [{
14737
+ type: Input
14738
+ }], protectedGroupIcon: [{
14739
+ type: Input
14740
+ }], onError: [{
14741
+ type: Input
14742
+ }], data: [{
14743
+ type: Input
14744
+ }], onClose: [{
14745
+ type: Input
14746
+ }], statusIndicatorStyle: [{
14747
+ type: Input
14748
+ }], avatarStyle: [{
14749
+ type: Input
14750
+ }], callDetailsStyle: [{
14751
+ type: Input
14752
+ }], callButtonsConfiguration: [{
14753
+ type: Input
14754
+ }], listItemStyle: [{
14755
+ type: Input
14756
+ }] } });
14757
+
14758
+ /**
14759
+ *
14760
+ * CometChatCallHistoryWithDetailsComponent is a wrapper component for CometChatCallDetailsComponent and CometChatCallHistorycomponent to show history and details of calls in one screen
14761
+ *
14762
+ * @version 1.0.0
14763
+ * @author CometChatTeam
14764
+ * @copyright © 2022 CometChat Inc.
14765
+ *
14766
+ */
14767
+ class CometChatCallHistoryWithDetailsComponent {
14768
+ constructor(elementRef, ref, themeService) {
14769
+ this.elementRef = elementRef;
14770
+ this.ref = ref;
14771
+ this.themeService = themeService;
14772
+ this.isMobileView = false;
14773
+ this.messageText = localize("NO_CALLS_SELECTED");
14774
+ this.callHistoryWithDetailsStyle = {};
14775
+ this.callDetailsConfiguration = new CallDetailsConfiguration({});
14776
+ this.callHistoryConfiguration = new CallHistoryConfiguration({});
14777
+ this.onError = (error) => {
14778
+ console.log(error);
14779
+ };
14780
+ this.labelStyle = {
14781
+ background: "transparent",
14782
+ textFont: "700 22px Inter",
14783
+ textColor: "rgba(20, 20, 20, 0.33)"
14784
+ };
14785
+ this.closeDetailsPage = () => {
14786
+ this.activeCall = null;
14787
+ this.user = null;
14788
+ this.group = null;
14789
+ this.ref.detectChanges();
14790
+ };
14791
+ this.onBack = () => {
14792
+ this.user = null;
14793
+ this.group = null;
14794
+ this.activeCall = null;
14795
+ };
14796
+ this.onItemClick = (call) => {
14797
+ this.call = call;
14798
+ this.setActiveChat();
14799
+ };
14800
+ this.emptyMessageStyle = () => {
14801
+ return {
14802
+ background: this.callHistoryWithDetailsStyle.background || this.themeService.theme.palette.getBackground(),
14803
+ height: this.callHistoryWithDetailsStyle.height,
14804
+ width: `calc(${this.callHistoryWithDetailsStyle.width} - 280px)`,
14805
+ border: this.callHistoryWithDetailsStyle.border,
14806
+ borderRadius: this.callHistoryWithDetailsStyle.borderRadius,
14807
+ };
14808
+ };
14809
+ this.chatsWrapperStyles = () => {
14810
+ return {
14811
+ height: this.callHistoryWithDetailsStyle.height,
14812
+ width: this.callHistoryWithDetailsStyle.width,
14813
+ border: this.callHistoryWithDetailsStyle.border,
14814
+ borderRadius: this.callHistoryWithDetailsStyle.borderRadius,
14815
+ background: this.callHistoryWithDetailsStyle.background || this.themeService.theme.palette.getBackground(),
14816
+ };
14817
+ };
14818
+ }
14819
+ ngOnChanges(changes) {
14820
+ if (changes["user"] || changes["group"]) {
14821
+ this.setActiveChat();
14822
+ }
14823
+ }
14824
+ setWithDetailsStyle() {
14825
+ let defaultStyle = new WithDetailsStyle({
14826
+ width: "100%",
14827
+ height: "100%",
14828
+ background: this.themeService.theme.palette.getBackground(),
14829
+ borderRadius: "none",
14830
+ border: "none",
14831
+ messageTextColor: this.themeService.theme.palette.getAccent600(),
14832
+ messageTextFont: fontHelper(this.themeService.theme.typography.title1),
14833
+ });
14834
+ this.callHistoryWithDetailsStyle = Object.assign(Object.assign({}, defaultStyle), this.callHistoryWithDetailsStyle);
14835
+ this.labelStyle.textFont = this.callHistoryWithDetailsStyle.messageTextFont;
14836
+ this.labelStyle.textColor = this.callHistoryWithDetailsStyle.messageTextColor;
14837
+ }
14838
+ setActiveChat() {
14839
+ var _a;
14840
+ this.activeCall = this.call;
14841
+ if (this.call.getSender().getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
14842
+ if (this.call.getReceiverType() == CometChatUIKitConstants.MessageReceiverType.user) {
14843
+ this.user = this.call.getReceiver();
14844
+ this.group = null;
14845
+ }
14846
+ else {
14847
+ this.user = null;
14848
+ this.group = this.call.getReceiver();
14849
+ }
14850
+ }
14851
+ else {
14852
+ this.user = this.call.getSender();
14853
+ }
14854
+ }
14855
+ ngOnInit() {
14856
+ this.setWithDetailsStyle();
14857
+ CometChat.getLoggedinUser()
14858
+ .then((user) => {
14859
+ this.loggedInUser = user;
14860
+ })
14861
+ .catch((error) => {
14862
+ if (this.onError) {
14863
+ this.onError(error);
14864
+ }
14865
+ });
14866
+ }
14867
+ }
14868
+ CometChatCallHistoryWithDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetailsComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
14869
+ CometChatCallHistoryWithDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatCallHistoryWithDetailsComponent, selector: "cometchat-call-history-with-details", inputs: { call: "call", isMobileView: "isMobileView", messageText: "messageText", callHistoryWithDetailsStyle: "callHistoryWithDetailsStyle", callDetailsConfiguration: "callDetailsConfiguration", callHistoryConfiguration: "callHistoryConfiguration", onError: "onError" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-with-details__wrapper\" [ngStyle]=\"chatsWrapperStyles()\" >\n <div class=\"cc-with-details__sidebar\" [ngClass]=\"{mobile : isMobileView}\">\n <cometchat-call-history\n #conversationRef\n [activeCall]=\"activeCall\"\n [onItemClick]=\"callHistoryConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"callHistoryConfiguration.callHistoryStyle\"\n [subtitleView]=\"callHistoryConfiguration.subtitleView\"\n [options]=\"callHistoryConfiguration.options\"\n [conversationsRequestBuilder]=\"callHistoryConfiguration.messageRequestBuilder\"\n [emptyStateView]=\"callHistoryConfiguration.emptyStateView\"\n [onSelect]=\"callHistoryConfiguration.onSelect\"\n [loadingIconURL]=\"callHistoryConfiguration.loadingIconURL\"\n [errorStateView]=\"callHistoryConfiguration.errorStateView\"\n [loadingStateView]=\"callHistoryConfiguration.loadingStateView\"\n [titleAlignment]=\"callHistoryConfiguration.titleAlignment\"\n [listItemView]=\"callHistoryConfiguration.listItemView\"\n [menu]=\"callHistoryConfiguration.menu\"\n [hideSeparator]=\"callHistoryConfiguration.hideSeparator\"\n [hideError]=\"callHistoryConfiguration.hideError\"\n [selectionMode]=\"callHistoryConfiguration.selectionMode\"\n [listItemStyle]=\"callHistoryConfiguration.listItemStyle\"\n [avatarStyle]=\"callHistoryConfiguration.avatarStyle\"\n ></cometchat-call-history>\n </div>\n <div class=\"cc-with-details__main\" [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"user || group\">\n <!--call details Screen-->\n <cometchat-call-details\n #messagesRef\n [user]=\"user!\"\n [group]=\"group!\"\n [callDetailsStyle]=\"callDetailsConfiguration.callDetailsStyle\"\n [callButtonsConfiguration]=\"callDetailsConfiguration.callButtonsConfiguration\"\n [onClose]=\"callDetailsConfiguration.onClose || closeDetailsPage\" [listItemStyle]=\"callDetailsConfiguration.listItemStyle\" [avatarStyle]=\"callDetailsConfiguration.avatarStyle\" [statusIndicatorStyle]=\"callDetailsConfiguration.statusIndicatorStyle\" [customProfileView]=\"callDetailsConfiguration.customProfileView\" [subtitleView]=\"callDetailsConfiguration.subtitleView\" [hideProfile]=\"callDetailsConfiguration.hideProfile\" [onError]=\"callDetailsConfiguration.onError\" [closeButtonIconURL]=\"callDetailsConfiguration.closeButtonIconURL\"\n >\n </cometchat-call-details>\n <!--call details Screen ENDS-->\n </div>\n <div class=\"cc-decorator__message--empty\" *ngIf=\"!user && !group\" [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\" [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n", styles: [".cc-with-details__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box}.cc-with-details__sidebar{width:280px;height:100%;position:relative}.cc-with-details__main{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"], components: [{ type: CometChatCallHistoryComponent, selector: "cometchat-call-history", inputs: ["messageRequestBuilder", "subtitleView", "listItemView", "menu", "options", "activeCall", "hideSeparator", "selectionMode", "hideError", "title", "onError", "onSelect", "emptyStateView", "errorStateView", "loadingIconURL", "datePattern", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "avatarStyle", "dateStyle", "callHistoryStyle", "listItemStyle", "onItemClick"] }, { type: CometChatCallDetailsComponent, selector: "cometchat-call-details", inputs: ["group", "user", "title", "closeButtonIconURL", "hideProfile", "subtitleView", "customProfileView", "disableUsersPresence", "privateGroupIcon", "protectedGroupIcon", "onError", "data", "onClose", "statusIndicatorStyle", "avatarStyle", "callDetailsStyle", "callButtonsConfiguration", "listItemStyle"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14870
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetailsComponent, decorators: [{
14871
+ type: Component,
14872
+ args: [{ selector: "cometchat-call-history-with-details", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-with-details__wrapper\" [ngStyle]=\"chatsWrapperStyles()\" >\n <div class=\"cc-with-details__sidebar\" [ngClass]=\"{mobile : isMobileView}\">\n <cometchat-call-history\n #conversationRef\n [activeCall]=\"activeCall\"\n [onItemClick]=\"callHistoryConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"callHistoryConfiguration.callHistoryStyle\"\n [subtitleView]=\"callHistoryConfiguration.subtitleView\"\n [options]=\"callHistoryConfiguration.options\"\n [conversationsRequestBuilder]=\"callHistoryConfiguration.messageRequestBuilder\"\n [emptyStateView]=\"callHistoryConfiguration.emptyStateView\"\n [onSelect]=\"callHistoryConfiguration.onSelect\"\n [loadingIconURL]=\"callHistoryConfiguration.loadingIconURL\"\n [errorStateView]=\"callHistoryConfiguration.errorStateView\"\n [loadingStateView]=\"callHistoryConfiguration.loadingStateView\"\n [titleAlignment]=\"callHistoryConfiguration.titleAlignment\"\n [listItemView]=\"callHistoryConfiguration.listItemView\"\n [menu]=\"callHistoryConfiguration.menu\"\n [hideSeparator]=\"callHistoryConfiguration.hideSeparator\"\n [hideError]=\"callHistoryConfiguration.hideError\"\n [selectionMode]=\"callHistoryConfiguration.selectionMode\"\n [listItemStyle]=\"callHistoryConfiguration.listItemStyle\"\n [avatarStyle]=\"callHistoryConfiguration.avatarStyle\"\n ></cometchat-call-history>\n </div>\n <div class=\"cc-with-details__main\" [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"user || group\">\n <!--call details Screen-->\n <cometchat-call-details\n #messagesRef\n [user]=\"user!\"\n [group]=\"group!\"\n [callDetailsStyle]=\"callDetailsConfiguration.callDetailsStyle\"\n [callButtonsConfiguration]=\"callDetailsConfiguration.callButtonsConfiguration\"\n [onClose]=\"callDetailsConfiguration.onClose || closeDetailsPage\" [listItemStyle]=\"callDetailsConfiguration.listItemStyle\" [avatarStyle]=\"callDetailsConfiguration.avatarStyle\" [statusIndicatorStyle]=\"callDetailsConfiguration.statusIndicatorStyle\" [customProfileView]=\"callDetailsConfiguration.customProfileView\" [subtitleView]=\"callDetailsConfiguration.subtitleView\" [hideProfile]=\"callDetailsConfiguration.hideProfile\" [onError]=\"callDetailsConfiguration.onError\" [closeButtonIconURL]=\"callDetailsConfiguration.closeButtonIconURL\"\n >\n </cometchat-call-details>\n <!--call details Screen ENDS-->\n </div>\n <div class=\"cc-decorator__message--empty\" *ngIf=\"!user && !group\" [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\" [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n", styles: [".cc-with-details__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box}.cc-with-details__sidebar{width:280px;height:100%;position:relative}.cc-with-details__main{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"] }]
14873
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { call: [{
14874
+ type: Input
14875
+ }], isMobileView: [{
14876
+ type: Input
14877
+ }], messageText: [{
14878
+ type: Input
14879
+ }], callHistoryWithDetailsStyle: [{
14880
+ type: Input
14881
+ }], callDetailsConfiguration: [{
14882
+ type: Input
14883
+ }], callHistoryConfiguration: [{
14884
+ type: Input
14885
+ }], onError: [{
14886
+ type: Input
14887
+ }] } });
14888
+
14889
+ class CometChatCallHistory {
14890
+ }
14891
+ CometChatCallHistory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistory, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14892
+ CometChatCallHistory.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistory, declarations: [CometChatCallHistoryComponent], imports: [CommonModule,
14893
+ CometChatList], exports: [CometChatCallHistoryComponent] });
14894
+ CometChatCallHistory.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistory, imports: [[
14895
+ CommonModule,
14896
+ CometChatList,
14897
+ ]] });
14898
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistory, decorators: [{
14899
+ type: NgModule,
14900
+ args: [{
14901
+ declarations: [CometChatCallHistoryComponent],
14902
+ imports: [
14903
+ CommonModule,
14904
+ CometChatList,
14905
+ ],
14906
+ exports: [CometChatCallHistoryComponent],
14907
+ schemas: [CUSTOM_ELEMENTS_SCHEMA]
14908
+ }]
14909
+ }] });
14910
+
14911
+ class CometChatCallDetails {
14912
+ }
14913
+ CometChatCallDetails.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetails, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14914
+ CometChatCallDetails.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetails, declarations: [CometChatCallDetailsComponent], imports: [CommonModule,
14915
+ CometChatCallButtons,
14916
+ CometChatList], exports: [CometChatCallDetailsComponent] });
14917
+ CometChatCallDetails.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetails, imports: [[
14918
+ CommonModule,
14919
+ CometChatCallButtons,
14920
+ CometChatList
14921
+ ]] });
14922
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallDetails, decorators: [{
14923
+ type: NgModule,
14924
+ args: [{
14925
+ declarations: [CometChatCallDetailsComponent],
14926
+ imports: [
14927
+ CommonModule,
14928
+ CometChatCallButtons,
14929
+ CometChatList
14930
+ ],
14931
+ exports: [CometChatCallDetailsComponent],
14932
+ schemas: [CUSTOM_ELEMENTS_SCHEMA]
14933
+ }]
14934
+ }] });
14935
+
14936
+ class CometChatCallHistoryWithDetails {
14937
+ }
14938
+ CometChatCallHistoryWithDetails.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetails, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14939
+ CometChatCallHistoryWithDetails.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetails, declarations: [CometChatCallHistoryWithDetailsComponent], imports: [CommonModule,
14940
+ CometChatCallHistory,
14941
+ CometChatCallDetails,
14942
+ BrowserModule,
14943
+ BrowserAnimationsModule], exports: [CometChatCallHistoryWithDetailsComponent] });
14944
+ CometChatCallHistoryWithDetails.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetails, imports: [[
14945
+ CommonModule,
14946
+ CometChatCallHistory,
14947
+ CometChatCallDetails,
14948
+ BrowserModule,
14949
+ BrowserAnimationsModule,
14950
+ ]] });
14951
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatCallHistoryWithDetails, decorators: [{
14952
+ type: NgModule,
14953
+ args: [{
14954
+ declarations: [CometChatCallHistoryWithDetailsComponent],
14955
+ imports: [
14956
+ CommonModule,
14957
+ CometChatCallHistory,
14958
+ CometChatCallDetails,
14959
+ BrowserModule,
14960
+ BrowserAnimationsModule,
14961
+ ],
14962
+ exports: [CometChatCallHistoryWithDetailsComponent],
14963
+ schemas: [CUSTOM_ELEMENTS_SCHEMA]
14964
+ }]
14965
+ }] });
14966
+
14967
+ class CometChatTabs {
14968
+ }
14969
+ CometChatTabs.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabs, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14970
+ CometChatTabs.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabs, declarations: [CometChatTabsComponent], imports: [CommonModule,
14971
+ CometChatConversationsWithMessages,
14972
+ CometChatUsersWithMessages,
14973
+ CometChatGroupsWithMessages,
14974
+ CometChatCallHistoryWithDetails], exports: [CometChatTabsComponent] });
14975
+ CometChatTabs.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabs, imports: [[
14976
+ CommonModule,
14977
+ CometChatConversationsWithMessages,
14978
+ CometChatUsersWithMessages,
14979
+ CometChatGroupsWithMessages,
14980
+ CometChatCallHistoryWithDetails
14981
+ ]] });
14982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatTabs, decorators: [{
14983
+ type: NgModule,
14984
+ args: [{
14985
+ declarations: [CometChatTabsComponent],
14986
+ imports: [
14987
+ CommonModule,
14988
+ CometChatConversationsWithMessages,
14989
+ CometChatUsersWithMessages,
14990
+ CometChatGroupsWithMessages,
14991
+ CometChatCallHistoryWithDetails
14992
+ ],
14993
+ exports: [CometChatTabsComponent],
14994
+ schemas: [CUSTOM_ELEMENTS_SCHEMA]
14995
+ }]
14996
+ }] });
14997
+
13840
14998
  /*
13841
14999
  * Public API Surface of angular-chat-ui-kit
13842
15000
  */
@@ -13845,5 +15003,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
13845
15003
  * Generated bundle index. Do not edit.
13846
15004
  */
13847
15005
 
13848
- export { CallingExtension, CallingExtensionDecorator, ChatConfigurator, CollaborativeDocumentExtension, CollaborativeDocumentExtensionDecorator, CollaborativeWhiteBoardExtension, CollaborativeWhiteBoardExtensionDecorator, CometChatAddMembers, CometChatAddMembersComponent, CometChatBannedMembers, CometChatBannedMembersComponent, CometChatCallButtons, CometChatCallButtonsComponent, CometChatConversations, CometChatConversationsComponent, CometChatConversationsWithMessages, CometChatConversationsWithMessagesComponent, CometChatDetails, CometChatDetailsComponent, CometChatGroupMembers, CometChatGroupMembersComponent, CometChatGroups, CometChatGroupsComponent, CometChatGroupsWithMessages, CometChatGroupsWithMessagesComponent, CometChatIncomingCall, CometChatIncomingCallComponent, CometChatList, CometChatMessageBubble, CometChatMessageBubbleComponent, CometChatMessageComposer, CometChatMessageComposerComponent, CometChatMessageHeader, CometChatMessageHeaderComponent, CometChatMessageList, CometChatMessageListComponent, CometChatMessages, CometChatMessagesComponent, CometChatOngoingCall, CometChatOngoingCallComponent, CometChatOutgoingCall, CometChatOutgoingCallComponent, CometChatThemeService, CometChatThreadedMessages, CometChatThreadedMessagesComponent, CometChatTransferOwnership, CometChatTransferOwnershipComponent, CometChatUIKit, CometChatUsers, CometChatUsersComponent, CometChatUsersWithMessages, CometChatUsersWithMessagesComponent, CometchatListComponent, DataSource, DataSourceDecorator, ExtensionsDataSource, ImageModerationExtension, ImageModerationExtensionDecorator, LinkPreviewExtension, LinkPreviewExtensionDecorator, MessageTranslationExtension, MessageTranslationExtensionDecorator, MessageUtils, PollsExtension, PollsExtensionDecorator, ReactionExtension, ReactionExtensionDecorator, SmartReplyExtension, SmartReplyExtensionDecorator, StickersExtension, StickersExtensionDecorator, TextModeratorExtension, TextModeratorExtensionDecorator, ThumbnailGenerationExtension, ThumbnailGenerationExtensionDecorator };
15006
+ export { CallingExtension, CallingExtensionDecorator, ChatConfigurator, CollaborativeDocumentExtension, CollaborativeDocumentExtensionDecorator, CollaborativeWhiteBoardExtension, CollaborativeWhiteBoardExtensionDecorator, CometChatAddMembers, CometChatAddMembersComponent, CometChatBannedMembers, CometChatBannedMembersComponent, CometChatCallButtons, CometChatCallButtonsComponent, CometChatConversations, CometChatConversationsComponent, CometChatConversationsWithMessages, CometChatConversationsWithMessagesComponent, CometChatDetails, CometChatDetailsComponent, CometChatGroupMembers, CometChatGroupMembersComponent, CometChatGroups, CometChatGroupsComponent, CometChatGroupsWithMessages, CometChatGroupsWithMessagesComponent, CometChatIncomingCall, CometChatIncomingCallComponent, CometChatList, CometChatMessageBubble, CometChatMessageBubbleComponent, CometChatMessageComposer, CometChatMessageComposerComponent, CometChatMessageHeader, CometChatMessageHeaderComponent, CometChatMessageList, CometChatMessageListComponent, CometChatMessages, CometChatMessagesComponent, CometChatOngoingCall, CometChatOngoingCallComponent, CometChatOutgoingCall, CometChatOutgoingCallComponent, CometChatTabs, CometChatTabsComponent, CometChatThemeService, CometChatThreadedMessages, CometChatThreadedMessagesComponent, CometChatTransferOwnership, CometChatTransferOwnershipComponent, CometChatUIKit, CometChatUsers, CometChatUsersComponent, CometChatUsersWithMessages, CometChatUsersWithMessagesComponent, CometchatListComponent, DataSource, DataSourceDecorator, ExtensionsDataSource, ImageModerationExtension, ImageModerationExtensionDecorator, LinkPreviewExtension, LinkPreviewExtensionDecorator, MessageTranslationExtension, MessageTranslationExtensionDecorator, MessageUtils, PollsExtension, PollsExtensionDecorator, ReactionExtension, ReactionExtensionDecorator, SmartReplyExtension, SmartReplyExtensionDecorator, StickersExtension, StickersExtensionDecorator, TextModeratorExtension, TextModeratorExtensionDecorator, ThumbnailGenerationExtension, ThumbnailGenerationExtensionDecorator };
13849
15007
  //# sourceMappingURL=cometchat-chat-uikit-angular.mjs.map