@cometchat/chat-uikit-angular 4.1.1 → 4.3.0
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.
- package/Calls/CallingExtensionDecorator.d.ts +1 -1
- package/CometChatConversations/cometchat-conversations/cometchat-conversations.component.d.ts +32 -26
- package/CometChatDetails/cometchat-details/cometchat-details.component.d.ts +3 -3
- package/CometChatGroupMembers/cometchat-group-members/cometchat-group-members.component.d.ts +24 -14
- package/CometChatMessageBubble/cometchat-message-bubble/cometchat-message-bubble.component.d.ts +3 -2
- package/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.d.ts +84 -5
- package/CometChatMessageComposer/cometchat-message-composer.module.d.ts +2 -1
- package/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.d.ts +258 -51
- package/CometChatMessages/cometchat-messages/cometchat-messages.component.d.ts +1 -0
- package/CometChatThreadedMessages/cometchat-threaded-messages/cometchat-threaded-messages.component.d.ts +7 -0
- package/CometChatUserMemberWrapper/cometchat-user-member-wrapper.component.d.ts +41 -0
- package/CometChatUserMemberWrapper/cometchat-user-member-wrapper.module.d.ts +11 -0
- package/CometChatUsers/cometchat-users/cometchat-users.component.d.ts +22 -12
- package/Extensions/CollaborativeDocument/CollaborativeDocumentExtensionDecorator.d.ts +1 -1
- package/Extensions/CollaborativeWhiteboard/CollaborativeWhiteboardExtensionDecorator.d.ts +1 -1
- package/Extensions/PollsExtension/PollsExtensionDecorator.d.ts +1 -1
- package/Extensions/Stickers/StickersExtensionDecorator.d.ts +3 -3
- package/Extensions/TextModerator/TextModeratorExtensionDecorator.d.ts +1 -1
- package/README.md +7 -8
- package/Shared/CometChatUIkit/CometChatUIKit.d.ts +8 -1
- package/Shared/Framework/DataSource.d.ts +11 -3
- package/Shared/Framework/DataSourceDecorator.d.ts +11 -3
- package/Shared/Utils/MessageUtils.d.ts +100 -2
- package/Shared/Views/AIAssistBotMessageList/aiassist-bot-message-list/aiassist-bot-message-list.component.d.ts +2 -2
- package/assets/InfoSimpleIcon.svg +4 -0
- package/assets/empty-slot.svg +14 -0
- package/assets/message-delivered.svg +4 -3
- package/assets/message-read.svg +4 -3
- package/assets/threadIndicatorIcon.svg +11 -0
- package/esm2020/Calls/CallingExtensionDecorator.mjs +26 -13
- package/esm2020/CometChatAddMembers/cometchat-add-members/cometchat-add-members.component.mjs +1 -1
- package/esm2020/CometChatContacts/cometchat-contacts/cometchat-contacts.component.mjs +3 -3
- package/esm2020/CometChatConversations/cometchat-conversations/cometchat-conversations.component.mjs +286 -130
- package/esm2020/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.mjs +3 -4
- package/esm2020/CometChatDetails/cometchat-details/cometchat-details.component.mjs +6 -8
- package/esm2020/CometChatGroupMembers/cometchat-group-members/cometchat-group-members.component.mjs +155 -58
- package/esm2020/CometChatGroupsWithMessages/cometchat-groups-with-messages/cometchat-groups-with-messages.component.mjs +3 -3
- package/esm2020/CometChatMessageBubble/cometchat-message-bubble/cometchat-message-bubble.component.mjs +11 -5
- package/esm2020/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.mjs +354 -64
- package/esm2020/CometChatMessageComposer/cometchat-message-composer.module.mjs +5 -4
- package/esm2020/CometChatMessageHeader/cometchat-message-header/cometchat-message-header.component.mjs +3 -3
- package/esm2020/CometChatMessageInformation/cometchat-message-information/cometchat-message-information.component.mjs +2 -2
- package/esm2020/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.mjs +947 -317
- package/esm2020/CometChatMessages/cometchat-messages/cometchat-messages.component.mjs +10 -4
- package/esm2020/CometChatThreadedMessages/cometchat-threaded-messages/cometchat-threaded-messages.component.mjs +52 -3
- package/esm2020/CometChatTransferOwnership/cometchat-transfer-ownership/cometchat-transfer-ownership.component.mjs +1 -1
- package/esm2020/CometChatUserMemberWrapper/cometchat-user-member-wrapper.component.mjs +75 -0
- package/esm2020/CometChatUserMemberWrapper/cometchat-user-member-wrapper.module.mjs +21 -0
- package/esm2020/CometChatUsers/cometchat-users/cometchat-users.component.mjs +114 -36
- package/esm2020/CometChatUsersWithMessages/cometchat-users-with-messages/cometchat-users-with-messages.component.mjs +1 -1
- package/esm2020/Extensions/CollaborativeDocument/CollaborativeDocumentExtensionDecorator.mjs +18 -13
- package/esm2020/Extensions/CollaborativeWhiteboard/CollaborativeWhiteboardExtensionDecorator.mjs +19 -13
- package/esm2020/Extensions/PollsExtension/PollsExtensionDecorator.mjs +10 -8
- package/esm2020/Extensions/Stickers/StickersExtensionDecorator.mjs +22 -18
- package/esm2020/Extensions/TextModerator/TextModeratorExtensionDecorator.mjs +62 -7
- package/esm2020/Shared/CometChatUIkit/CometChatUIKit.mjs +51 -3
- package/esm2020/Shared/Framework/DataSource.mjs +1 -1
- package/esm2020/Shared/Framework/DataSourceDecorator.mjs +27 -3
- package/esm2020/Shared/Utils/MessageUtils.mjs +261 -10
- package/esm2020/Shared/Views/AIAssistBotMessageList/aiassist-bot-message-list/aiassist-bot-message-list.component.mjs +5 -4
- package/esm2020/public-api.mjs +4 -4
- package/fesm2015/cometchat-chat-uikit-angular.mjs +3941 -2204
- package/fesm2015/cometchat-chat-uikit-angular.mjs.map +1 -1
- package/fesm2020/cometchat-chat-uikit-angular.mjs +4542 -2786
- package/fesm2020/cometchat-chat-uikit-angular.mjs.map +1 -1
- package/package.json +6 -6
- package/public-api.d.ts +3 -3
- package/Extensions/Reactions/ReactionExtension.d.ts +0 -5
- package/Extensions/Reactions/ReactionExtensionDecorator.d.ts +0 -9
- package/esm2020/Extensions/Reactions/ReactionExtension.mjs +0 -12
- package/esm2020/Extensions/Reactions/ReactionExtensionDecorator.mjs +0 -31
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DataSourceDecorator } from "../../Shared/Framework/DataSourceDecorator";
|
|
2
2
|
import { CometChatMessageTemplate } from "@cometchat/uikit-resources";
|
|
3
|
-
import { CometChat } from
|
|
4
|
-
import { StickersConfiguration } from
|
|
3
|
+
import { CometChat } from "@cometchat/chat-sdk-javascript";
|
|
4
|
+
import { StickersConfiguration } from "@cometchat/uikit-shared";
|
|
5
5
|
import { DataSource } from "../../Shared/Framework/DataSource";
|
|
6
6
|
import { ComposerId } from "../../Shared/Utils/MessageUtils";
|
|
7
7
|
import { CometChatException } from "../../Shared/Utils/ComeChatException";
|
|
@@ -24,5 +24,5 @@ export declare class StickersExtensionDecorator extends DataSourceDecorator {
|
|
|
24
24
|
getAllMessageCategories(): string[];
|
|
25
25
|
getAllMessageTypes(): string[];
|
|
26
26
|
getId(): string;
|
|
27
|
-
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User): string;
|
|
27
|
+
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User, additionalConfigurations: any): string;
|
|
28
28
|
}
|
|
@@ -4,5 +4,5 @@ export declare class TextModeratorExtensionDecorator extends DataSourceDecorator
|
|
|
4
4
|
constructor(dataSource: DataSource);
|
|
5
5
|
getId(): string;
|
|
6
6
|
getModeratedtext(message: CometChat.TextMessage): string;
|
|
7
|
-
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User): string;
|
|
7
|
+
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User, additionalConfigurations: any): string;
|
|
8
8
|
}
|
package/README.md
CHANGED
|
@@ -4,17 +4,15 @@
|
|
|
4
4
|
<br>
|
|
5
5
|
<div align="center">Full-fledged Chat UIKit built with <a href="https://angular.io/">Angular</a>. </div>
|
|
6
6
|
<div align="center">
|
|
7
|
-
<a href="https://www.cometchat.com/docs/
|
|
7
|
+
<a href="https://www.cometchat.com/docs/angular-uikit-beta/overview"><strong>Explore CometChat docs »</strong></a>
|
|
8
8
|
</div>
|
|
9
9
|
<br />
|
|
10
10
|
<br />
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
13
|
## Table of contents
|
|
16
14
|
- [About the project](#about-the-project)
|
|
17
|
-
- [
|
|
15
|
+
- [Prerequisites](#prerequisites)
|
|
18
16
|
- [Getting Started](#getting-started)
|
|
19
17
|
- [Dependencies](#dependencies)
|
|
20
18
|
- [Versioning](#versioning)
|
|
@@ -27,15 +25,16 @@
|
|
|
27
25
|
## About the project
|
|
28
26
|
CometChat Angular UIKit provides pre-built user interface kit that developers can use to quickly integrate a reliable & fully featured chat experience into an existing or a new app.<br />
|
|
29
27
|
|
|
30
|
-
###
|
|
31
|
-
-
|
|
28
|
+
### Prerequisites
|
|
29
|
+
- npm >= 7.
|
|
30
|
+
- Angular >= 12.
|
|
32
31
|
|
|
33
32
|
## Getting Started
|
|
34
33
|
To set up Angular Chat UIKit and utilize CometChat for your chat functionality, you'll need to follow these steps:
|
|
35
34
|
- Registration: Go to the CometChat website (https://www.cometchat.com/) and sign up for an account.
|
|
36
35
|
- Create an App: After registering, log in to your CometChat account and create a new app. Provide the necessary details such as the app name, platform (Angular), and other relevant information. Once you've created the app, CometChat will generate an Auth Key and App ID for you. Make sure to keep these credentials secure, as you'll need them later.
|
|
37
|
-
- Make sure you've read the [key concepts](https://www.cometchat.com/docs/
|
|
38
|
-
- Follow the steps provided in the integration section [here](https://www.cometchat.com/docs/
|
|
36
|
+
- Make sure you've read the [key concepts](https://www.cometchat.com/docs/angular-uikit-beta/key-concepts)
|
|
37
|
+
- Follow the steps provided in the integration section [here](https://www.cometchat.com/docs/angular-uikit-beta/integration#getting-started)
|
|
39
38
|
|
|
40
39
|
|
|
41
40
|
## Versioning
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UIKitSettings } from "@cometchat/uikit-shared";
|
|
2
|
-
import { CardMessage, CometChatLocalize, CustomInteractiveMessage, FormMessage } from "@cometchat/uikit-resources";
|
|
2
|
+
import { CardMessage, CometChatLocalize, CustomInteractiveMessage, FormMessage, SchedulerMessage } from "@cometchat/uikit-resources";
|
|
3
3
|
import { ExtensionsDataSource } from "../Framework/ExtensionDataSource";
|
|
4
4
|
import { CometChatSoundManager } from "@cometchat/uikit-shared";
|
|
5
5
|
import { AIExtensionDataSource } from "../Framework/AIExtensionDataSource";
|
|
@@ -7,6 +7,7 @@ export declare class CometChatUIKit {
|
|
|
7
7
|
static uiKitSettings: UIKitSettings;
|
|
8
8
|
static SoundManager: typeof CometChatSoundManager;
|
|
9
9
|
static Localize: typeof CometChatLocalize;
|
|
10
|
+
static loggedInUser?: CometChat.User;
|
|
10
11
|
static getDataSource(): import("@cometchat/chat-uikit-angular").DataSource;
|
|
11
12
|
static init(uiKitSettings: UIKitSettings): Promise<Object> | undefined;
|
|
12
13
|
static getLoggedinUser(): Promise<CometChat.User> | undefined;
|
|
@@ -33,4 +34,10 @@ export declare class CometChatUIKit {
|
|
|
33
34
|
static sendCustomMessage(message: CometChat.CustomMessage): Promise<CometChat.BaseMessage>;
|
|
34
35
|
static sendTextMessage(message: CometChat.TextMessage): Promise<CometChat.BaseMessage>;
|
|
35
36
|
static sendMediaMessage(message: CometChat.MediaMessage): Promise<CometChat.BaseMessage>;
|
|
37
|
+
/**
|
|
38
|
+
* Sends a scheduler message and emits events based on the message status.
|
|
39
|
+
* @param message - The scheduler message to be sent.
|
|
40
|
+
* @param disableLocalEvents - A boolean indicating whether to disable local events or not. Default value is false.
|
|
41
|
+
*/
|
|
42
|
+
static sendSchedulerMessage(message: SchedulerMessage, disableLocalEvents?: boolean): void;
|
|
36
43
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { CometChatActionsView, CometChatMessageComposerAction, CometChatMessageOption, CometChatMessageTemplate, CometChatTheme } from "@cometchat/uikit-resources";
|
|
1
|
+
import { CometChatActionsView, CometChatMessageComposerAction, CometChatMessageOption, CometChatMessageTemplate, CometChatTheme, MentionsTargetElement } from "@cometchat/uikit-resources";
|
|
2
2
|
import { ComposerId } from "../Utils/MessageUtils";
|
|
3
|
-
import { AIOptionsStyle } from "@cometchat/uikit-shared";
|
|
3
|
+
import { AIOptionsStyle, CometChatMentionsTextFormatter, CometChatTextFormatter, CometChatUrlTextFormatter } from "@cometchat/uikit-shared";
|
|
4
4
|
export declare abstract class DataSource {
|
|
5
5
|
abstract getTextMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
6
6
|
abstract getImageMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
@@ -15,6 +15,7 @@ export declare abstract class DataSource {
|
|
|
15
15
|
abstract getFormMessageTemplate(): CometChatMessageTemplate;
|
|
16
16
|
abstract getCardMessageTemplate(): CometChatMessageTemplate;
|
|
17
17
|
abstract getGroupActionTemplate(): CometChatMessageTemplate;
|
|
18
|
+
abstract getSchedulerMessageTemplate(): CometChatMessageTemplate;
|
|
18
19
|
abstract getAllMessageTemplates(theme?: CometChatTheme): Array<CometChatMessageTemplate>;
|
|
19
20
|
abstract getMessageTemplate(messageType: string, messageCategory: string): CometChatMessageTemplate | null;
|
|
20
21
|
abstract getMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
@@ -24,9 +25,16 @@ export declare abstract class DataSource {
|
|
|
24
25
|
abstract getAllMessageCategories(): Array<string>;
|
|
25
26
|
abstract getAuxiliaryOptions(id: ComposerId, user?: CometChat.User, group?: CometChat.Group): any;
|
|
26
27
|
abstract getId(): string;
|
|
27
|
-
abstract getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User): string;
|
|
28
|
+
abstract getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User, additionalParams?: any): string;
|
|
28
29
|
abstract getDeleteOption(theme: CometChatTheme): CometChatMessageOption;
|
|
29
30
|
abstract getReplyInThreadOption(theme: CometChatTheme): CometChatMessageOption;
|
|
30
31
|
abstract getEditOption(theme: CometChatTheme): CometChatMessageOption;
|
|
31
32
|
abstract getAIOptions(theme: CometChatTheme, id?: Map<String, any>, aiOptionsStyles?: AIOptionsStyle): (CometChatMessageComposerAction | CometChatActionsView)[];
|
|
33
|
+
abstract getAllTextFormatters(formatterParams: any): CometChatTextFormatter[];
|
|
34
|
+
abstract getMentionsTextFormatter(formatterParams: any): CometChatMentionsTextFormatter;
|
|
35
|
+
abstract getUrlTextFormatter(formatterParams: any): CometChatUrlTextFormatter;
|
|
36
|
+
abstract getMentionsFormattedText(message: CometChat.TextMessage, subtitle: string, mentionsFormatterParams: {
|
|
37
|
+
mentionsTargetElement: MentionsTargetElement;
|
|
38
|
+
theme: CometChatTheme;
|
|
39
|
+
}): string;
|
|
32
40
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { CometChatActionsView, CometChatMessageComposerAction, CometChatMessageOption, CometChatMessageTemplate, CometChatTheme } from "@cometchat/uikit-resources";
|
|
1
|
+
import { CometChatActionsView, CometChatMessageComposerAction, CometChatMessageOption, CometChatMessageTemplate, CometChatTheme, MentionsTargetElement } from "@cometchat/uikit-resources";
|
|
2
2
|
import { DataSource } from "./DataSource";
|
|
3
3
|
import { ComposerId } from "../Utils/MessageUtils";
|
|
4
|
-
import { AIOptionsStyle } from "@cometchat/uikit-shared";
|
|
4
|
+
import { AIOptionsStyle, CometChatMentionsTextFormatter, CometChatTextFormatter, CometChatUrlTextFormatter } from "@cometchat/uikit-shared";
|
|
5
5
|
export declare abstract class DataSourceDecorator implements DataSource {
|
|
6
6
|
dataSource: DataSource;
|
|
7
7
|
constructor(dataSource: DataSource);
|
|
@@ -18,6 +18,7 @@ export declare abstract class DataSourceDecorator implements DataSource {
|
|
|
18
18
|
getFormMessageTemplate(): CometChatMessageTemplate;
|
|
19
19
|
getCardMessageTemplate(): CometChatMessageTemplate;
|
|
20
20
|
getGroupActionTemplate(): CometChatMessageTemplate;
|
|
21
|
+
getSchedulerMessageTemplate(): CometChatMessageTemplate;
|
|
21
22
|
getAllMessageTemplates(): CometChatMessageTemplate[];
|
|
22
23
|
getMessageTemplate(messageType: string, messageCategory: string): CometChatMessageTemplate | null;
|
|
23
24
|
getMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): CometChatMessageOption[];
|
|
@@ -30,6 +31,13 @@ export declare abstract class DataSourceDecorator implements DataSource {
|
|
|
30
31
|
getAllMessageCategories(): string[];
|
|
31
32
|
getAuxiliaryOptions(id: ComposerId, user?: CometChat.User, group?: CometChat.Group): any;
|
|
32
33
|
getId(): string;
|
|
33
|
-
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User): string;
|
|
34
|
+
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User, additionalParams?: any): string;
|
|
34
35
|
getAIOptions(theme: CometChatTheme, id?: Map<String, any>, aiOptionsStyles?: AIOptionsStyle): (CometChatMessageComposerAction | CometChatActionsView)[];
|
|
36
|
+
getAllTextFormatters(formatterParams: any): CometChatTextFormatter[];
|
|
37
|
+
getMentionsTextFormatter(formatterParams: any): CometChatMentionsTextFormatter;
|
|
38
|
+
getUrlTextFormatter(formatterParams: any): CometChatUrlTextFormatter;
|
|
39
|
+
getMentionsFormattedText(message: CometChat.TextMessage, subtitle: string, mentionsFormatterParams: {
|
|
40
|
+
mentionsTargetElement: MentionsTargetElement;
|
|
41
|
+
theme: CometChatTheme;
|
|
42
|
+
}): string;
|
|
35
43
|
}
|
|
@@ -1,19 +1,103 @@
|
|
|
1
|
-
import { CometChatMessageOption, MessageBubbleAlignment, CometChatMessageTemplate, CometChatMessageComposerAction, CometChatTheme, CometChatActionsView } from "@cometchat/uikit-resources";
|
|
1
|
+
import { CometChatMessageOption, MessageBubbleAlignment, CometChatMessageTemplate, CometChatMessageComposerAction, CometChatTheme, CometChatActionsView, MentionsTargetElement } from "@cometchat/uikit-resources";
|
|
2
|
+
import { CometChatMentionsTextFormatter, CometChatTextFormatter, CometChatUrlTextFormatter } from "@cometchat/uikit-shared";
|
|
2
3
|
import { DataSource } from "../Framework/DataSource";
|
|
3
4
|
export declare class MessageUtils implements DataSource {
|
|
5
|
+
/**
|
|
6
|
+
* Creates an option to edit message.
|
|
7
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
8
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
9
|
+
*/
|
|
4
10
|
getEditOption(theme: CometChatTheme): CometChatMessageOption;
|
|
11
|
+
/**
|
|
12
|
+
* Creates an option to react to a message.
|
|
13
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
14
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
15
|
+
*/
|
|
16
|
+
getReactionOption(theme: CometChatTheme): CometChatMessageOption;
|
|
17
|
+
/**
|
|
18
|
+
* Creates an option to get info about a message.
|
|
19
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
20
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
21
|
+
*/
|
|
5
22
|
getMessageInfoOption(theme: CometChatTheme): CometChatMessageOption;
|
|
23
|
+
/**
|
|
24
|
+
* Creates an option to send a private message.
|
|
25
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
26
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
27
|
+
*/
|
|
6
28
|
getMessagePrivatelyOption(theme: CometChatTheme): CometChatMessageOption;
|
|
29
|
+
/**
|
|
30
|
+
* Creates an option to delete a message.
|
|
31
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
32
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
33
|
+
*/
|
|
7
34
|
getDeleteOption(theme: CometChatTheme): CometChatMessageOption;
|
|
35
|
+
/**
|
|
36
|
+
* Creates an option to reply to a message in a thread.
|
|
37
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
38
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
39
|
+
*/
|
|
8
40
|
getReplyInThreadOption(theme: CometChatTheme): CometChatMessageOption;
|
|
41
|
+
/**
|
|
42
|
+
* Creates an option to copy a message.
|
|
43
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
44
|
+
* @return {CometChatMessageOption} - Returns a new message option.
|
|
45
|
+
*/
|
|
9
46
|
getCopyOption(theme: CometChatTheme): CometChatMessageOption;
|
|
47
|
+
/**
|
|
48
|
+
* Checks if a message is sent by current logged in user.
|
|
49
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
50
|
+
* @param {CometChat.BaseMessage} message - The message to check.
|
|
51
|
+
* @return {boolean} - Returns true if message is sent by current logged in user, otherwise false.
|
|
52
|
+
*/
|
|
10
53
|
isSentByMe(loggedInUser: CometChat.User, message: CometChat.BaseMessage): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Fetches options for text messages.
|
|
56
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
57
|
+
* @param {CometChat.BaseMessage} messageObject - The message object.
|
|
58
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
59
|
+
* @param {CometChat.Group} group - The group object.
|
|
60
|
+
* @return {Array<CometChatMessageOption>} - Returns an array of message options.
|
|
61
|
+
*/
|
|
11
62
|
getTextMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
63
|
+
/**
|
|
64
|
+
* Fetches options for image messages.
|
|
65
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
66
|
+
* @param {CometChat.BaseMessage} messageObject - The message object.
|
|
67
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
68
|
+
* @param {CometChat.Group} group - The group object.
|
|
69
|
+
* @return {Array<CometChatMessageOption>} - Returns an array of message options.
|
|
70
|
+
*/
|
|
12
71
|
getImageMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
72
|
+
/**
|
|
73
|
+
* Fetches options for video messages.
|
|
74
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
75
|
+
* @param {CometChat.BaseMessage} messageObject - The message object.
|
|
76
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
77
|
+
* @param {CometChat.Group} group - (Optional) The group object.
|
|
78
|
+
* @return {Array<CometChatMessageOption>} - Returns an array of message options.
|
|
79
|
+
*/
|
|
13
80
|
getVideoMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
81
|
+
/**
|
|
82
|
+
* Fetches options for audio messages.
|
|
83
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
84
|
+
* @param {CometChat.BaseMessage} messageObject - The message object.
|
|
85
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
86
|
+
* @param {CometChat.Group} group - (Optional) The group object.
|
|
87
|
+
* @return {Array<CometChatMessageOption>} - Returns an array of message options.
|
|
88
|
+
*/
|
|
14
89
|
getAudioMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
90
|
+
/**
|
|
91
|
+
* Fetches options for file messages.
|
|
92
|
+
* @param {CometChat.User} loggedInUser - The current logged in user.
|
|
93
|
+
* @param {CometChat.BaseMessage} messageObject - The message object.
|
|
94
|
+
* @param {CometChatTheme} theme - The theme object.
|
|
95
|
+
* @param {CometChat.Group} group - (Optional) The group object.
|
|
96
|
+
* @return {Array<CometChatMessageOption>} - Returns an array of message options.
|
|
97
|
+
*/
|
|
15
98
|
getFileMessageOptions(loggedInUser: CometChat.User, messageObject: CometChat.BaseMessage, theme: CometChatTheme, group?: CometChat.Group): Array<CometChatMessageOption>;
|
|
16
99
|
getBottomView(_messageObject: CometChat.BaseMessage, _alignment: MessageBubbleAlignment): null;
|
|
100
|
+
getSchedulerMessageTemplate(): CometChatMessageTemplate;
|
|
17
101
|
getTextMessageTemplate(): CometChatMessageTemplate;
|
|
18
102
|
getAudioMessageTemplate(): CometChatMessageTemplate;
|
|
19
103
|
getVideoMessageTemplate(): CometChatMessageTemplate;
|
|
@@ -37,8 +121,22 @@ export declare class MessageUtils implements DataSource {
|
|
|
37
121
|
audioAttachmentOption(theme: CometChatTheme): CometChatMessageComposerAction;
|
|
38
122
|
fileAttachmentOption(theme: CometChatTheme): CometChatMessageComposerAction;
|
|
39
123
|
getAttachmentOptions(theme: CometChatTheme, user?: CometChat.User, group?: CometChat.Group, id?: ComposerId): CometChatMessageComposerAction[];
|
|
40
|
-
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User): string;
|
|
124
|
+
getLastConversationMessage(conversation: CometChat.Conversation, loggedInUser: CometChat.User, additionalConfigurations: any): string;
|
|
125
|
+
/**
|
|
126
|
+
* Adds styled @ for every mention in the text by matching uid
|
|
127
|
+
*
|
|
128
|
+
* @param {CometChat.TextMessage} message
|
|
129
|
+
* @param {string} subtitle
|
|
130
|
+
* @returns {void}
|
|
131
|
+
*/
|
|
132
|
+
getMentionsFormattedText(message: CometChat.TextMessage, subtitle: string, mentionsFormatterParams: {
|
|
133
|
+
mentionsTargetElement: MentionsTargetElement;
|
|
134
|
+
theme: CometChatTheme;
|
|
135
|
+
}): string;
|
|
41
136
|
getAIOptions(theme: CometChatTheme, id?: Map<String, any>): Array<CometChatMessageComposerAction | CometChatActionsView>;
|
|
137
|
+
getAllTextFormatters(formatterParams: any): CometChatTextFormatter[];
|
|
138
|
+
getMentionsTextFormatter(params: any): CometChatMentionsTextFormatter;
|
|
139
|
+
getUrlTextFormatter(params?: any): CometChatUrlTextFormatter;
|
|
42
140
|
}
|
|
43
141
|
export declare type ComposerId = {
|
|
44
142
|
parentMessageId: number | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CometChatThemeService } from "./../../../../CometChatTheme.service";
|
|
2
2
|
import { CometChatException } from "@cometchat/chat-sdk-javascript";
|
|
3
3
|
import { OnInit, TemplateRef, ChangeDetectorRef, ElementRef } from "@angular/core";
|
|
4
|
-
import { AvatarStyle,
|
|
4
|
+
import { AvatarStyle, TextInputStyle, DateStyle } from "@cometchat/uikit-elements";
|
|
5
5
|
import { CometChatMessageTemplate, MessageListAlignment, MessageBubbleAlignment, DatePatterns } from "@cometchat/uikit-resources";
|
|
6
6
|
import { BaseStyle } from "@cometchat/uikit-shared";
|
|
7
7
|
import { Subscription } from "rxjs";
|
|
@@ -51,7 +51,7 @@ export declare class AIAssistBotMessageListComponent implements OnInit {
|
|
|
51
51
|
handleClick(): void;
|
|
52
52
|
setMessageBubbleStyle(msg: CometChat.BaseMessage): BaseStyle;
|
|
53
53
|
getBubbleAlignment(message: CometChat.BaseMessage): MessageBubbleAlignment.left | MessageBubbleAlignment.right;
|
|
54
|
-
|
|
54
|
+
textInputStyle: TextInputStyle;
|
|
55
55
|
sendButtonStyle: any;
|
|
56
56
|
messageInputChanged: (event: any) => void;
|
|
57
57
|
closeButtonStyle: any;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M30.0001 0.666626C46.2004 0.666626 59.3334 13.7996 59.3334 30C59.3334 46.2003 46.2004 59.3333 30.0001 59.3333C13.7997 59.3333 0.666748 46.2003 0.666748 30C0.666748 13.7996 13.7997 0.666626 30.0001 0.666626ZM30.0001 5.99996C16.7452 5.99996 6.00008 16.7451 6.00008 30C6.00008 43.2548 16.7452 54 30.0001 54C43.2549 54 54.0001 43.2548 54.0001 30C54.0001 16.7451 43.2549 5.99996 30.0001 5.99996ZM31.6667 27.3333C32.219 27.3333 32.6667 27.781 32.6667 28.3333V42.3333C32.6667 42.8856 32.219 43.3333 31.6667 43.3333H28.3334C27.7811 43.3333 27.3334 42.8856 27.3334 42.3333V28.3333C27.3334 27.781 27.7811 27.3333 28.3334 27.3333H31.6667ZM30.0001 19.3333C31.4728 19.3333 32.6667 20.5272 32.6667 22C32.6667 23.4727 31.4728 24.6666 30.0001 24.6666C28.5273 24.6666 27.3334 23.4727 27.3334 22C27.3334 20.5272 28.5273 19.3333 30.0001 19.3333Z" fill="black"/>
|
|
3
|
+
</svg>
|
|
4
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0_10446_6597)">
|
|
3
|
+
<path d="M20.997 12.2497C21.0472 10.4478 20.5552 8.6724 19.5847 7.1534C18.6142 5.63439 17.2099 4.44181 15.5537 3.73014C13.8976 3.01848 12.0659 2.82052 10.296 3.16192C8.526 3.50331 6.89934 4.36833 5.6267 5.64491C4.35406 6.9215 3.49408 8.55082 3.15815 10.3218C2.82223 12.0928 3.02585 13.9239 3.74263 15.5778C4.45942 17.2318 5.65633 18.6323 7.17834 19.5982C8.70034 20.564 10.4773 21.0505 12.279 20.9947" stroke="#A1A1A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M16 19C16 19.7956 16.3161 20.5587 16.8787 21.1213C17.4413 21.6839 18.2044 22 19 22C19.7956 22 20.5587 21.6839 21.1213 21.1213C21.6839 20.5587 22 19.7956 22 19C22 18.2044 21.6839 17.4413 21.1213 16.8787C20.5587 16.3161 19.7956 16 19 16C18.2044 16 17.4413 16.3161 16.8787 16.8787C16.3161 17.4413 16 18.2044 16 19Z" stroke="#A1A1A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M17 21L21 17" stroke="#A1A1A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
<path d="M12 7V12L14 14" fill="#A1A1A1"/>
|
|
7
|
+
<path d="M12 7V12L14 14" stroke="#A1A1A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
8
|
+
</g>
|
|
9
|
+
<defs>
|
|
10
|
+
<clipPath id="clip0_10446_6597">
|
|
11
|
+
<rect width="24" height="24" fill="white"/>
|
|
12
|
+
</clipPath>
|
|
13
|
+
</defs>
|
|
14
|
+
</svg>
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
<svg width="
|
|
2
|
-
<
|
|
3
|
-
<path d="
|
|
1
|
+
<svg width="14" height="12" viewBox="0 0 14 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g opacity="0.8">
|
|
3
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.15147 3.15262C9.32528 2.93804 9.29224 2.62319 9.07766 2.44938C8.86308 2.27557 8.54822 2.30861 8.37441 2.52319L3.61414 8.39998L1.626 6.42494C1.4301 6.23032 1.11352 6.23137 0.918901 6.42727C0.724285 6.62318 0.725331 6.93976 0.921238 7.13438L3.30197 9.49942C3.40229 9.59908 3.54012 9.6516 3.68131 9.64398C3.82251 9.63635 3.95388 9.5693 4.04289 9.45942L9.15147 3.15262ZM13.0814 3.16663C13.263 2.95855 13.2415 2.6427 13.0334 2.46115C12.8253 2.27961 12.5095 2.30111 12.3279 2.50919L7.17358 8.41667L6.74794 7.99934C6.55077 7.80601 6.2342 7.80912 6.04087 8.0063C5.84754 8.20348 5.85066 8.52004 6.04783 8.71337L6.85187 9.50172C6.95016 9.59809 7.08383 9.64968 7.22138 9.64433C7.35892 9.63897 7.48818 9.57715 7.57868 9.47343L13.0814 3.16663Z" fill="#9C9CA3"/>
|
|
4
|
+
</g>
|
|
4
5
|
</svg>
|
package/assets/message-read.svg
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
<svg width="
|
|
2
|
-
<
|
|
3
|
-
<path d="
|
|
1
|
+
<svg width="14" height="12" viewBox="0 0 14 12" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g opacity="0.8">
|
|
3
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.15147 3.15262C9.32528 2.93804 9.29224 2.62319 9.07766 2.44938C8.86308 2.27557 8.54822 2.30861 8.37441 2.52319L3.61414 8.39998L1.626 6.42494C1.4301 6.23032 1.11352 6.23137 0.918901 6.42727C0.724285 6.62318 0.725331 6.93976 0.921238 7.13438L3.30197 9.49942C3.40229 9.59908 3.54012 9.6516 3.68131 9.64398C3.82251 9.63635 3.95388 9.5693 4.04289 9.45942L9.15147 3.15262ZM13.0814 3.16663C13.263 2.95855 13.2415 2.6427 13.0334 2.46115C12.8253 2.27961 12.5095 2.30111 12.3279 2.50919L7.17358 8.41667L6.74794 7.99934C6.55077 7.80601 6.2342 7.80912 6.04087 8.0063C5.84754 8.20348 5.85066 8.52004 6.04783 8.71337L6.85187 9.50172C6.95016 9.59809 7.08383 9.64968 7.22138 9.64433C7.35892 9.63897 7.48818 9.57715 7.57868 9.47343L13.0814 3.16663Z" fill="#9C9CA3"/>
|
|
4
|
+
</g>
|
|
4
5
|
</svg>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0_10800_33331)">
|
|
3
|
+
<path d="M1.0094 1.69617C1.17601 4.12358 2.25988 6.39667 4.04108 8.05423C5.82227 9.71179 8.16737 10.6296 10.6005 10.6215C10.7625 10.6215 11.1504 10.6297 11.312 10.6215H13.9636" stroke="#A1A5AC" stroke-width="1.875" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M10.7959 7.43042L13.9906 10.6251L10.7959 13.8198" stroke="#A1A5AC" stroke-width="1.875" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
</g>
|
|
6
|
+
<defs>
|
|
7
|
+
<clipPath id="clip0_10800_33331">
|
|
8
|
+
<rect width="15" height="15" fill="white"/>
|
|
9
|
+
</clipPath>
|
|
10
|
+
</defs>
|
|
11
|
+
</svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CometChat } from "@cometchat/chat-sdk-javascript";
|
|
2
|
-
import { CometChatUIKitConstants, CometChatMessageTemplate, localize } from "@cometchat/uikit-resources";
|
|
3
|
-
import { CallingDetailsUtils } from "@cometchat/uikit-shared";
|
|
2
|
+
import { CometChatUIKitConstants, CometChatMessageTemplate, localize, } from "@cometchat/uikit-resources";
|
|
3
|
+
import { CallingDetailsUtils, } from "@cometchat/uikit-shared";
|
|
4
4
|
import { ChatConfigurator } from "../Shared/Framework/ChatConfigurator";
|
|
5
5
|
import { DataSourceDecorator } from "../Shared/Framework/DataSourceDecorator";
|
|
6
6
|
export class CallingExtensionDecorator extends DataSourceDecorator {
|
|
@@ -23,7 +23,7 @@ export class CallingExtensionDecorator extends DataSourceDecorator {
|
|
|
23
23
|
},
|
|
24
24
|
logoutFailure: (error) => {
|
|
25
25
|
console.log("LoginListener :: logoutFailure", error);
|
|
26
|
-
}
|
|
26
|
+
},
|
|
27
27
|
}));
|
|
28
28
|
}
|
|
29
29
|
getAllMessageTypes() {
|
|
@@ -53,10 +53,10 @@ export class CallingExtensionDecorator extends DataSourceDecorator {
|
|
|
53
53
|
return categories;
|
|
54
54
|
}
|
|
55
55
|
checkIfTemplateTypeExist(template, type) {
|
|
56
|
-
return template.some(obj => obj.type === type);
|
|
56
|
+
return template.some((obj) => obj.type === type);
|
|
57
57
|
}
|
|
58
58
|
checkIfTemplateCategoryExist(template, category) {
|
|
59
|
-
return template.some(obj => obj.category === category);
|
|
59
|
+
return template.some((obj) => obj.category === category);
|
|
60
60
|
}
|
|
61
61
|
getAllMessageTemplates() {
|
|
62
62
|
const templates = super.getAllMessageTemplates();
|
|
@@ -74,7 +74,7 @@ export class CallingExtensionDecorator extends DataSourceDecorator {
|
|
|
74
74
|
category: CometChatUIKitConstants.MessageCategory.custom,
|
|
75
75
|
options: (loggedInUser, messageObject, theme, group) => {
|
|
76
76
|
return ChatConfigurator.getDataSource().getCommonOptions(loggedInUser, messageObject, theme, group);
|
|
77
|
-
}
|
|
77
|
+
},
|
|
78
78
|
});
|
|
79
79
|
}
|
|
80
80
|
getDefaultCallTemplate() {
|
|
@@ -86,29 +86,42 @@ export class CallingExtensionDecorator extends DataSourceDecorator {
|
|
|
86
86
|
new CometChatMessageTemplate({
|
|
87
87
|
type: CometChatUIKitConstants.MessageTypes.video,
|
|
88
88
|
category: CometChatUIKitConstants.MessageCategory.call,
|
|
89
|
-
})
|
|
89
|
+
}),
|
|
90
90
|
];
|
|
91
91
|
return templates;
|
|
92
92
|
}
|
|
93
|
-
getLastConversationMessage(conversation, loggedInUser) {
|
|
93
|
+
getLastConversationMessage(conversation, loggedInUser, additionalParams) {
|
|
94
94
|
let actionMessage = "";
|
|
95
|
-
if (conversation.getLastMessage() &&
|
|
95
|
+
if (conversation.getLastMessage() &&
|
|
96
|
+
conversation.getLastMessage().category ==
|
|
97
|
+
CometChatUIKitConstants.MessageCategory.call) {
|
|
96
98
|
let call = conversation.getLastMessage();
|
|
97
99
|
actionMessage = CallingDetailsUtils.getCallStatus(call, loggedInUser);
|
|
98
100
|
}
|
|
99
|
-
else if (conversation?.getLastMessage() &&
|
|
101
|
+
else if (conversation?.getLastMessage() &&
|
|
102
|
+
conversation.getLastMessage().type ==
|
|
103
|
+
CometChatUIKitConstants.calls.meeting) {
|
|
100
104
|
let message = conversation.getLastMessage();
|
|
101
|
-
if (!message.getSender() ||
|
|
105
|
+
if (!message.getSender() ||
|
|
106
|
+
message?.getSender()?.getUid() == loggedInUser.getUid()) {
|
|
102
107
|
actionMessage = localize("YOU_INITIATED_GROUP_CALL");
|
|
103
108
|
}
|
|
104
109
|
else {
|
|
105
110
|
actionMessage = `${message.getSender().getName()} ${localize("INITIATED_GROUP_CALL")}`;
|
|
106
111
|
}
|
|
112
|
+
let messageObject = conversation.getLastMessage();
|
|
113
|
+
if (messageObject &&
|
|
114
|
+
messageObject.getMentionedUsers().length &&
|
|
115
|
+
messageObject instanceof CometChat.TextMessage &&
|
|
116
|
+
additionalParams &&
|
|
117
|
+
!additionalParams.disableMentions) {
|
|
118
|
+
actionMessage = this.getMentionsFormattedText(messageObject, actionMessage, additionalParams);
|
|
119
|
+
}
|
|
107
120
|
}
|
|
108
121
|
else {
|
|
109
|
-
actionMessage = super.getLastConversationMessage(conversation, loggedInUser);
|
|
122
|
+
actionMessage = super.getLastConversationMessage(conversation, loggedInUser, additionalParams);
|
|
110
123
|
}
|
|
111
124
|
return actionMessage;
|
|
112
125
|
}
|
|
113
126
|
}
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsbGluZ0V4dGVuc2lvbkRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQtdWlraXQtYW5ndWxhci9zcmMvQ2FsbHMvQ2FsbGluZ0V4dGVuc2lvbkRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFrRCxRQUFRLEVBQWMsTUFBTSw0QkFBNEIsQ0FBQztBQUNySyxPQUFPLEVBQUUsbUJBQW1CLEVBQXNFLE1BQU0seUJBQXlCLENBQUM7QUFDbEksT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHOUUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLG1CQUFtQjtJQUM5RCxZQUFZLFVBQXNCO1FBQzlCLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUNELHFDQUFxQztJQUNyQyxRQUFRO1FBQ04sSUFBSSxVQUFVLEdBQVcsaUJBQWlCLENBQUM7UUFDM0MsU0FBUyxDQUFDLGdCQUFnQixDQUMxQixVQUFVLEVBQ1YsSUFBSSxTQUFTLENBQUMsYUFBYSxDQUFDO1lBQzFCLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ25CLElBQUksSUFBSSxHQUFtQixTQUFTLENBQUMsYUFBYSxFQUFFLENBQUE7Z0JBQ2pELElBQUcsSUFBSSxFQUFDO29CQUNOLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUE7aUJBRXZDO3FCQUNHO29CQUNGLE9BQU07aUJBQ1A7WUFDTCxDQUFDO1lBQ0QsYUFBYSxFQUFFLENBQUMsS0FBbUMsRUFBRSxFQUFF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LE9BQU8sRUFBQztZQUN0SCxJQUFJLE9BQU8sR0FBMkIsWUFBWSxDQUFDLGNBQWMsRUFBRSxDQUFBO1lBQ25FLElBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksT0FBTyxFQUFFLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsRUFBQztnQkFDakYsYUFBYSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO2FBQ3JEO2lCQUNJO2dCQUNILGFBQWEsR0FBRyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxRQUFRLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFBO2FBQ3hGO1NBRUY7YUFDRztZQUNGLGFBQWEsR0FBRyxLQUFLLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzdFO1FBQ0QsT0FBTyxhQUFhLENBQUE7SUFFckIsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tZXRDaGF0IH0gZnJvbSBcIkBjb21ldGNoYXQvY2hhdC1zZGstamF2YXNjcmlwdFwiO1xuaW1wb3J0IHsgQ29tZXRDaGF0VUlLaXRDb25zdGFudHMsIENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZSwgQ29tZXRDaGF0VGhlbWUsIENvbWV0Q2hhdE1lc3NhZ2VDb21wb3NlckFjdGlvbiwgbG9jYWxpemUsIGZvbnRIZWxwZXIgfSBmcm9tIFwiQGNvbWV0Y2hhdC91aWtpdC1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IENhbGxpbmdEZXRhaWxzVXRpbHMsIENvbGxhYm9yYXRpdmVEb2N1bWVudENvbmZpZ3VyYXRpb24sIENvbGxhYm9yYXRpdmVEb2N1bWVudENvbnN0YW50cyB9IGZyb20gXCJAY29tZXRjaGF0L3Vpa2l0LXNoYXJlZFwiO1xuaW1wb3J0IHsgQ2hhdENvbmZpZ3VyYXRvciB9IGZyb20gXCIuLi9TaGFyZWQvRnJhbWV3b3JrL0NoYXRDb25maWd1cmF0b3JcIjtcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tIFwiLi4vU2hhcmVkL0ZyYW1ld29yay9EYXRhU291cmNlXCI7XG5pbXBvcnQgeyBEYXRhU291cmNlRGVjb3JhdG9yIH0gZnJvbSBcIi4uL1NoYXJlZC9GcmFtZXdvcmsvRGF0YVNvdXJjZURlY29yYXRvclwiO1xuaW1wb3J0IHsgIH0gZnJvbSBcIkBjb21ldGNoYXQvdWlraXQtc2hhcmVkXCI7XG5cbmV4cG9ydCBjbGFzcyBDYWxsaW5nRXh0ZW5zaW9uRGVjb3JhdG9yIGV4dGVuZHMgRGF0YVNvdXJjZURlY29yYXRvciB7XG4gICAgY29uc3RydWN0b3IoZGF0YVNvdXJjZTogRGF0YVNvdXJjZSkge1xuICAgICAgICBzdXBlcihkYXRhU291cmNlKTtcbiAgICAgICB0aGlzLm9uTG9nb3V0KClcbiAgICB9XG4gICAgLy8gZW5kIGFjdGl2ZSBjYWxsIHdoZW4gdXNlciBsb2dzIG91dFxuICAgIG9uTG9nb3V0KCl7XG4gICAgICB2YXIgbGlzdGVuZXJJRDogc3RyaW5nID0gXCJsb2dvdXRfbGlzdGVuZXJcIjtcbiAgICAgIENvbWV0Q2hhdC5hZGRMb2dpbkxpc3RlbmVyKFxuICAgICAgbGlzdGVuZXJJRCxcbiAgICAgIG5ldyBDb21ldENoYXQuTG9naW5MaXN0ZW5lcih7XG4gICAgICAgIGxvZ291dFN1Y2Nlc3M6ICgpID0+IHtcbiAgICAgICAgIGxldCBjYWxsOkNvbWV0Q2hhdC5DYWxsID0gIENvbWV0Q2hhdC5nZXRBY3RpdmVDYWxsKClcbiAgICAgICAgICAgIGlmKGNhbGwpe1xuICAgICAgICAgICAgICBDb21ldENoYXQuZW5kQ2FsbChjYWxsLmdldFNlc3Npb25JZCgpKVxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNle1xuICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgbG9nb3V0RmFpbHVyZTogKGVycm9yOiBDb21ldENoYXQuQ29tZXRDaGF0RXhjZXB0aW9uKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkxvZ2luTGlzdGVuZXIgOjogbG9nb3V0RmFpbHVyZVwiLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9KVxuKTtcbiAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0QWxsTWVzc2FnZVR5cGVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgY29uc3QgdHlwZXMgPSBzdXBlci5nZXRBbGxNZXNzYWdlVHlwZXMoKTtcbiAgICAgICAgaWYgKCF0eXBlcy5pbmNsdWRlcyggQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuY2FsbHMubWVldGluZykpIHtcbiAgICAgICAgICAgIHR5cGVzLnB1c2goIENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmcpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdHlwZXMuaW5jbHVkZXMoQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZVR5cGVzLmF1ZGlvKSkge1xuICAgICAgICAgICAgdHlwZXMucHVzaChDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlVHlwZXMuYXVkaW8pO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdHlwZXMuaW5jbHVkZXMoQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZVR5cGVzLnZpZGVvKSkge1xuICAgICAgICAgICAgdHlwZXMucHVzaChDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlVHlwZXMudmlkZW8pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0eXBlcztcbiAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0SWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFwiY2FsbGluZ1wiO1xuICAgICAgfVxuICAgIG92ZXJyaWRlIGdldEFsbE1lc3NhZ2VDYXRlZ29yaWVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgY29uc3QgY2F0ZWdvcmllcyA9IHN1cGVyLmdldEFsbE1lc3NhZ2VDYXRlZ29yaWVzKCk7XG4gICAgICAgIGlmICghY2F0ZWdvcmllcy5pbmNsdWRlcyhDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlQ2F0ZWdvcnkuY2FsbCkpIHtcbiAgICAgICAgICAgIGNhdGVnb3JpZXMucHVzaChDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlQ2F0ZWdvcnkuY2FsbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFjYXRlZ29yaWVzLmluY2x1ZGVzKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jdXN0b20pKSB7XG4gICAgICAgICAgICBjYXRlZ29yaWVzLnB1c2goQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmN1c3RvbSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNhdGVnb3JpZXM7XG4gICAgfVxuICAgIGNoZWNrSWZUZW1wbGF0ZVR5cGVFeGlzdCh0ZW1wbGF0ZTpDb21ldENoYXRNZXNzYWdlVGVtcGxhdGVbXSwgdHlwZTpzdHJpbmcpOmJvb2xlYW57XG4gICAgICAgIHJldHVybiB0ZW1wbGF0ZS5zb21lKG9iaiA9PiBvYmoudHlwZSA9PT0gdHlwZSlcbiAgICAgIH1cbiAgICAgIGNoZWNrSWZUZW1wbGF0ZUNhdGVnb3J5RXhpc3QodGVtcGxhdGU6Q29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlW10sIGNhdGVnb3J5OnN0cmluZyk6Ym9vbGVhbntcbiAgICAgICAgcmV0dXJuIHRlbXBsYXRlLnNvbWUob2JqID0+IG9iai5jYXRlZ29yeSA9PT0gY2F0ZWdvcnkpXG4gICAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0QWxsTWVzc2FnZVRlbXBsYXRlcygpOiBDb21ldENoYXRNZXNzYWdlVGVtcGxhdGVbXSB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlcyA9IHN1cGVyLmdldEFsbE1lc3NhZ2VUZW1wbGF0ZXMoKTtcbiAgICAgICAgaWYoIXRoaXMuY2hlY2tJZlRlbXBsYXRlVHlwZUV4aXN0KHRlbXBsYXRlcywgQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuY2FsbHMubWVldGluZykpe1xuICAgICAgICAgICAgIHRlbXBsYXRlcy5wdXNoKHRoaXMuZ2V0RGlyZWN0Q2FsbFRlbXBsYXRlKCkpXG4gICAgICAgICAgIH1cbiAgICAgICAgICAgaWYoIXRoaXMuY2hlY2tJZlRlbXBsYXRlQ2F0ZWdvcnlFeGlzdCh0ZW1wbGF0ZXMsQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmNhbGwpKXtcbiAgICAgICAgICAgIHRlbXBsYXRlcy5wdXNoKC4uLnRoaXMuZ2V0RGVmYXVsdENhbGxUZW1wbGF0ZSgpKVxuICAgICAgICAgIH1cbiAgICAgICAgICAgICByZXR1cm4gdGVtcGxhdGVzXG5cbiAgICB9XG4gICAgZ2V0RGlyZWN0Q2FsbFRlbXBsYXRlKCk6Q29tZXRDaGF0TWVzc2FnZVRlbXBsYXRle1xuICAgIHJldHVybiBuZXcgQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlKHtcbiAgICAgIHR5cGU6IENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmcsXG4gICAgICBjYXRlZ29yeTpDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlQ2F0ZWdvcnkuY3VzdG9tLFxuICAgICAgb3B0aW9uczogKGxvZ2dlZEluVXNlcjogQ29tZXRDaGF0LlVzZXIsIG1lc3NhZ2VPYmplY3Q6IENvbWV0Q2hhdC5CYXNlTWVzc2FnZSwgdGhlbWU6IENvbWV0Q2hhdFRoZW1lLCBncm91cD86IENvbWV0Q2hhdC5Hcm91cCk9PntcbiAgICAgICAgcmV0dXJuIENoYXRDb25maWd1cmF0b3IuZ2V0RGF0YVNvdXJjZSgpLmdldENvbW1vbk9wdGlvbnMobG9nZ2VkSW5Vc2VyLCBtZXNzYWdlT2JqZWN0LCB0aGVtZSwgZ3JvdXApXG4gICAgICAgfVxuICAgIH0pXG4gICAgfVxuICAgIGdldERlZmF1bHRDYWxsVGVtcGxhdGUoKTpDb21ldENoYXRNZXNzYWdlVGVtcGxhdGVbXXtcbiAgICAgIGxldCB0ZW1wbGF0ZXM6Q29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlW10gPSBbXG4gICAgICAgIG5ldyBDb21ldENoYXRNZXNzYWdlVGVtcGxhdGUoe1xuICAgICAgICAgICAgdHlwZTpDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlVHlwZXMuYXVkaW8gLFxuICAgICAgICAgICAgY2F0ZWdvcnk6Q29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmNhbGwsXG4gICAgICAgICAgfSksXG4gICAgICAgICAgbmV3IENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZSh7XG4gICAgICAgICAgICB0eXBlOkNvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VUeXBlcy52aWRlbyxcbiAgICAgICAgICAgIGNhdGVnb3J5OkNvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jYWxsLFxuICAgICAgICAgIH0pXG5cbiAgICAgIF1cbiAgICAgIHJldHVybiB0ZW1wbGF0ZXNcbiAgICB9XG4gICBwdWJsaWMgb3ZlcnJpZGUgZ2V0TGFzdENvbnZlcnNhdGlvbk1lc3NhZ2UoY29udmVyc2F0aW9uOiBDb21ldENoYXQuQ29udmVyc2F0aW9uLCBsb2dnZWRJblVzZXI6IENvbWV0Q2hhdC5Vc2VyKTogc3RyaW5nIHtcbiAgICAgbGV0IGFjdGlvbk1lc3NhZ2U6c3RyaW5nID0gXCJcIjtcblxuICAgIGlmKGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpICYmIGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpLmNhdGVnb3J5ID09IENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jYWxsKXtcbiAgICAgIGxldCBjYWxsOkNvbWV0Q2hhdC5DYWxsID1jb252ZXJzYXRpb24uZ2V0TGFzdE1lc3NhZ2UoKTtcblxuICAgICAgYWN0aW9uTWVzc2FnZSA9IENhbGxpbmdEZXRhaWxzVXRpbHMuZ2V0Q2FsbFN0YXR1cyhjYWxsLGxvZ2dlZEluVXNlcilcbiAgICB9XG4gICAgZWxzZSBpZiAoY29udmVyc2F0aW9uPy5nZXRMYXN0TWVzc2FnZSgpICYmIGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpLnR5cGUgPT0gIENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmcpe1xuICAgICAgbGV0IG1lc3NhZ2U6Q29tZXRDaGF0LkN1c3RvbU1lc3NhZ2UgPSBjb252ZXJzYXRpb24uZ2V0TGFzdE1lc3NhZ2UoKVxuICAgICAgaWYoIW1lc3NhZ2UuZ2V0U2VuZGVyKCkgfHwgbWVzc2FnZT8uZ2V0U2VuZGVyKCk/LmdldFVpZCgpID09IGxvZ2dlZEluVXNlci5nZXRVaWQoKSl7XG4gICAgICAgIGFjdGlvbk1lc3NhZ2UgPSBsb2NhbGl6ZShcIllPVV9JTklUSUFURURfR1JPVVBfQ0FMTFwiKVxuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGFjdGlvbk1lc3NhZ2UgPSBgJHttZXNzYWdlLmdldFNlbmRlcigpLmdldE5hbWUoKX0gICR7bG9jYWxpemUoXCJJTklUSUFURURfR1JPVVBfQ0FMTFwiKX1gXG4gICAgICB9XG5cbiAgICB9XG4gICAgZWxzZXtcbiAgICAgIGFjdGlvbk1lc3NhZ2UgPSBzdXBlci5nZXRMYXN0Q29udmVyc2F0aW9uTWVzc2FnZShjb252ZXJzYXRpb24sbG9nZ2VkSW5Vc2VyKTtcbiAgICB9XG4gICAgcmV0dXJuIGFjdGlvbk1lc3NhZ2VcblxuICAgfVxufSJdfQ==
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsbGluZ0V4dGVuc2lvbkRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQtdWlraXQtYW5ndWxhci9zcmMvQ2FsbHMvQ2FsbGluZ0V4dGVuc2lvbkRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFHeEIsUUFBUSxHQUVULE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUNMLG1CQUFtQixHQUdwQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRzlFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxtQkFBbUI7SUFDaEUsWUFBWSxVQUFzQjtRQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFDRCxxQ0FBcUM7SUFDckMsUUFBUTtRQUNOLElBQUksVUFBVSxHQUFXLGlCQUFpQixDQUFDO1FBQzNDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FDeEIsVUFBVSxFQUNWLElBQUksU0FBUyxDQUFDLGFBQWEsQ0FBQztZQUMxQixhQUFhLEVBQUUsR0FBRyxFQUFFO2dCQUNsQixJQUFJLElBQUksR0FBbUIsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUNyRCxJQUFJLElBQUksRUFBRTtvQkFDUixTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO2lCQUN4QztxQkFBTTtvQkFDTCxPQUFPO2lCQUNSO1lBQ0gsQ0FBQztZQUNELGFBQWEsRUFBRSxDQUFDLEtBQW1DLEVBQUUsRUFB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RSxDQUFDLElBQUk7Z0JBQ2hDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQ3ZDO1lBQ0EsSUFBSSxPQUFPLEdBQTRCLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNyRSxJQUNFLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtnQkFDcEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsRUFDdkQ7Z0JBQ0EsYUFBYSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO2FBQ3REO2lCQUFNO2dCQUNMLGFBQWEsR0FBRyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxRQUFRLENBQzNELHNCQUFzQixDQUN2QixFQUFFLENBQUM7YUFDTDtZQUVELElBQUksYUFBYSxHQUFHLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNsRCxJQUNFLGFBQWE7Z0JBQ2IsYUFBYSxDQUFDLGlCQUFpQixFQUFFLENBQUMsTUFBTTtnQkFDeEMsYUFBYSxZQUFZLFNBQVMsQ0FBQyxXQUFXO2dCQUM5QyxnQkFBZ0I7Z0JBQ2hCLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUNqQztnQkFDQSxhQUFhLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUMzQyxhQUFhLEVBQ2IsYUFBYSxFQUNiLGdCQUFnQixDQUNqQixDQUFDO2FBQ0g7U0FDRjthQUFNO1lBQ0wsYUFBYSxHQUFHLEtBQUssQ0FBQywwQkFBMEIsQ0FDOUMsWUFBWSxFQUNaLFlBQVksRUFDWixnQkFBZ0IsQ0FDakIsQ0FBQztTQUNIO1FBQ0QsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tZXRDaGF0IH0gZnJvbSBcIkBjb21ldGNoYXQvY2hhdC1zZGstamF2YXNjcmlwdFwiO1xuaW1wb3J0IHtcbiAgQ29tZXRDaGF0VUlLaXRDb25zdGFudHMsXG4gIENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZSxcbiAgQ29tZXRDaGF0VGhlbWUsXG4gIENvbWV0Q2hhdE1lc3NhZ2VDb21wb3NlckFjdGlvbixcbiAgbG9jYWxpemUsXG4gIGZvbnRIZWxwZXIsXG59IGZyb20gXCJAY29tZXRjaGF0L3Vpa2l0LXJlc291cmNlc1wiO1xuaW1wb3J0IHtcbiAgQ2FsbGluZ0RldGFpbHNVdGlscyxcbiAgQ29sbGFib3JhdGl2ZURvY3VtZW50Q29uZmlndXJhdGlvbixcbiAgQ29sbGFib3JhdGl2ZURvY3VtZW50Q29uc3RhbnRzLFxufSBmcm9tIFwiQGNvbWV0Y2hhdC91aWtpdC1zaGFyZWRcIjtcbmltcG9ydCB7IENoYXRDb25maWd1cmF0b3IgfSBmcm9tIFwiLi4vU2hhcmVkL0ZyYW1ld29yay9DaGF0Q29uZmlndXJhdG9yXCI7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSBcIi4uL1NoYXJlZC9GcmFtZXdvcmsvRGF0YVNvdXJjZVwiO1xuaW1wb3J0IHsgRGF0YVNvdXJjZURlY29yYXRvciB9IGZyb20gXCIuLi9TaGFyZWQvRnJhbWV3b3JrL0RhdGFTb3VyY2VEZWNvcmF0b3JcIjtcbmltcG9ydCB7fSBmcm9tIFwiQGNvbWV0Y2hhdC91aWtpdC1zaGFyZWRcIjtcblxuZXhwb3J0IGNsYXNzIENhbGxpbmdFeHRlbnNpb25EZWNvcmF0b3IgZXh0ZW5kcyBEYXRhU291cmNlRGVjb3JhdG9yIHtcbiAgY29uc3RydWN0b3IoZGF0YVNvdXJjZTogRGF0YVNvdXJjZSkge1xuICAgIHN1cGVyKGRhdGFTb3VyY2UpO1xuICAgIHRoaXMub25Mb2dvdXQoKTtcbiAgfVxuICAvLyBlbmQgYWN0aXZlIGNhbGwgd2hlbiB1c2VyIGxvZ3Mgb3V0XG4gIG9uTG9nb3V0KCkge1xuICAgIHZhciBsaXN0ZW5lcklEOiBzdHJpbmcgPSBcImxvZ291dF9saXN0ZW5lclwiO1xuICAgIENvbWV0Q2hhdC5hZGRMb2dpbkxpc3RlbmVyKFxuICAgICAgbGlzdGVuZXJJRCxcbiAgICAgIG5ldyBDb21ldENoYXQuTG9naW5MaXN0ZW5lcih7XG4gICAgICAgIGxvZ291dFN1Y2Nlc3M6ICgpID0+IHtcbiAgICAgICAgICBsZXQgY2FsbDogQ29tZXRDaGF0LkNhbGwgPSBDb21ldENoYXQuZ2V0QWN0aXZlQ2FsbCgpO1xuICAgICAgICAgIGlmIChjYWxsKSB7XG4gICAgICAgICAgICBDb21ldENoYXQuZW5kQ2FsbChjYWxsLmdldFNlc3Npb25JZCgpKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgbG9nb3V0RmFpbHVyZTogKGVycm9yOiBDb21ldENoYXQuQ29tZXRDaGF0RXhjZXB0aW9uKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coXCJMb2dpbkxpc3RlbmVyIDo6IGxvZ291dEZhaWx1cmVcIiwgZXJyb3IpO1xuICAgICAgICB9LFxuICAgICAgfSlcbiAgICApO1xuICB9XG4gIG92ZXJyaWRlIGdldEFsbE1lc3NhZ2VUeXBlcygpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgdHlwZXMgPSBzdXBlci5nZXRBbGxNZXNzYWdlVHlwZXMoKTtcbiAgICBpZiAoIXR5cGVzLmluY2x1ZGVzKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmcpKSB7XG4gICAgICB0eXBlcy5wdXNoKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmcpO1xuICAgIH1cbiAgICBpZiAoIXR5cGVzLmluY2x1ZGVzKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VUeXBlcy5hdWRpbykpIHtcbiAgICAgIHR5cGVzLnB1c2goQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZVR5cGVzLmF1ZGlvKTtcbiAgICB9XG4gICAgaWYgKCF0eXBlcy5pbmNsdWRlcyhDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlVHlwZXMudmlkZW8pKSB7XG4gICAgICB0eXBlcy5wdXNoKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VUeXBlcy52aWRlbyk7XG4gICAgfVxuICAgIHJldHVybiB0eXBlcztcbiAgfVxuICBvdmVycmlkZSBnZXRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImNhbGxpbmdcIjtcbiAgfVxuICBvdmVycmlkZSBnZXRBbGxNZXNzYWdlQ2F0ZWdvcmllcygpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IHN1cGVyLmdldEFsbE1lc3NhZ2VDYXRlZ29yaWVzKCk7XG4gICAgaWYgKCFjYXRlZ29yaWVzLmluY2x1ZGVzKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jYWxsKSkge1xuICAgICAgY2F0ZWdvcmllcy5wdXNoKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jYWxsKTtcbiAgICB9XG4gICAgaWYgKCFjYXRlZ29yaWVzLmluY2x1ZGVzKENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jdXN0b20pKSB7XG4gICAgICBjYXRlZ29yaWVzLnB1c2goQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmN1c3RvbSk7XG4gICAgfVxuICAgIHJldHVybiBjYXRlZ29yaWVzO1xuICB9XG4gIGNoZWNrSWZUZW1wbGF0ZVR5cGVFeGlzdChcbiAgICB0ZW1wbGF0ZTogQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlW10sXG4gICAgdHlwZTogc3RyaW5nXG4gICk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0ZW1wbGF0ZS5zb21lKChvYmopID0+IG9iai50eXBlID09PSB0eXBlKTtcbiAgfVxuICBjaGVja0lmVGVtcGxhdGVDYXRlZ29yeUV4aXN0KFxuICAgIHRlbXBsYXRlOiBDb21ldENoYXRNZXNzYWdlVGVtcGxhdGVbXSxcbiAgICBjYXRlZ29yeTogc3RyaW5nXG4gICk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0ZW1wbGF0ZS5zb21lKChvYmopID0+IG9iai5jYXRlZ29yeSA9PT0gY2F0ZWdvcnkpO1xuICB9XG4gIG92ZXJyaWRlIGdldEFsbE1lc3NhZ2VUZW1wbGF0ZXMoKTogQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlW10ge1xuICAgIGNvbnN0IHRlbXBsYXRlcyA9IHN1cGVyLmdldEFsbE1lc3NhZ2VUZW1wbGF0ZXMoKTtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5jaGVja0lmVGVtcGxhdGVUeXBlRXhpc3QoXG4gICAgICAgIHRlbXBsYXRlcyxcbiAgICAgICAgQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuY2FsbHMubWVldGluZ1xuICAgICAgKVxuICAgICkge1xuICAgICAgdGVtcGxhdGVzLnB1c2godGhpcy5nZXREaXJlY3RDYWxsVGVtcGxhdGUoKSk7XG4gICAgfVxuICAgIGlmIChcbiAgICAgICF0aGlzLmNoZWNrSWZUZW1wbGF0ZUNhdGVnb3J5RXhpc3QoXG4gICAgICAgIHRlbXBsYXRlcyxcbiAgICAgICAgQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmNhbGxcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHRlbXBsYXRlcy5wdXNoKC4uLnRoaXMuZ2V0RGVmYXVsdENhbGxUZW1wbGF0ZSgpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRlbXBsYXRlcztcbiAgfVxuICBnZXREaXJlY3RDYWxsVGVtcGxhdGUoKTogQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlIHtcbiAgICByZXR1cm4gbmV3IENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZSh7XG4gICAgICB0eXBlOiBDb21ldENoYXRVSUtpdENvbnN0YW50cy5jYWxscy5tZWV0aW5nLFxuICAgICAgY2F0ZWdvcnk6IENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jdXN0b20sXG4gICAgICBvcHRpb25zOiAoXG4gICAgICAgIGxvZ2dlZEluVXNlcjogQ29tZXRDaGF0LlVzZXIsXG4gICAgICAgIG1lc3NhZ2VPYmplY3Q6IENvbWV0Q2hhdC5CYXNlTWVzc2FnZSxcbiAgICAgICAgdGhlbWU6IENvbWV0Q2hhdFRoZW1lLFxuICAgICAgICBncm91cD86IENvbWV0Q2hhdC5Hcm91cFxuICAgICAgKSA9PiB7XG4gICAgICAgIHJldHVybiBDaGF0Q29uZmlndXJhdG9yLmdldERhdGFTb3VyY2UoKS5nZXRDb21tb25PcHRpb25zKFxuICAgICAgICAgIGxvZ2dlZEluVXNlcixcbiAgICAgICAgICBtZXNzYWdlT2JqZWN0LFxuICAgICAgICAgIHRoZW1lLFxuICAgICAgICAgIGdyb3VwXG4gICAgICAgICk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGdldERlZmF1bHRDYWxsVGVtcGxhdGUoKTogQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlW10ge1xuICAgIGxldCB0ZW1wbGF0ZXM6IENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZVtdID0gW1xuICAgICAgbmV3IENvbWV0Q2hhdE1lc3NhZ2VUZW1wbGF0ZSh7XG4gICAgICAgIHR5cGU6IENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VUeXBlcy5hdWRpbyxcbiAgICAgICAgY2F0ZWdvcnk6IENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLk1lc3NhZ2VDYXRlZ29yeS5jYWxsLFxuICAgICAgfSksXG4gICAgICBuZXcgQ29tZXRDaGF0TWVzc2FnZVRlbXBsYXRlKHtcbiAgICAgICAgdHlwZTogQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZVR5cGVzLnZpZGVvLFxuICAgICAgICBjYXRlZ29yeTogQ29tZXRDaGF0VUlLaXRDb25zdGFudHMuTWVzc2FnZUNhdGVnb3J5LmNhbGwsXG4gICAgICB9KSxcbiAgICBdO1xuICAgIHJldHVybiB0ZW1wbGF0ZXM7XG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIGdldExhc3RDb252ZXJzYXRpb25NZXNzYWdlKFxuICAgIGNvbnZlcnNhdGlvbjogQ29tZXRDaGF0LkNvbnZlcnNhdGlvbixcbiAgICBsb2dnZWRJblVzZXI6IENvbWV0Q2hhdC5Vc2VyLFxuICAgIGFkZGl0aW9uYWxQYXJhbXM/OiBhbnlcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgYWN0aW9uTWVzc2FnZTogc3RyaW5nID0gXCJcIjtcblxuICAgIGlmIChcbiAgICAgIGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpICYmXG4gICAgICBjb252ZXJzYXRpb24uZ2V0TGFzdE1lc3NhZ2UoKS5jYXRlZ29yeSA9PVxuICAgICAgICBDb21ldENoYXRVSUtpdENvbnN0YW50cy5NZXNzYWdlQ2F0ZWdvcnkuY2FsbFxuICAgICkge1xuICAgICAgbGV0IGNhbGw6IENvbWV0Q2hhdC5DYWxsID0gY29udmVyc2F0aW9uLmdldExhc3RNZXNzYWdlKCk7XG5cbiAgICAgIGFjdGlvbk1lc3NhZ2UgPSBDYWxsaW5nRGV0YWlsc1V0aWxzLmdldENhbGxTdGF0dXMoY2FsbCwgbG9nZ2VkSW5Vc2VyKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgY29udmVyc2F0aW9uPy5nZXRMYXN0TWVzc2FnZSgpICYmXG4gICAgICBjb252ZXJzYXRpb24uZ2V0TGFzdE1lc3NhZ2UoKS50eXBlID09XG4gICAgICAgIENvbWV0Q2hhdFVJS2l0Q29uc3RhbnRzLmNhbGxzLm1lZXRpbmdcbiAgICApIHtcbiAgICAgIGxldCBtZXNzYWdlOiBDb21ldENoYXQuQ3VzdG9tTWVzc2FnZSA9IGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpO1xuICAgICAgaWYgKFxuICAgICAgICAhbWVzc2FnZS5nZXRTZW5kZXIoKSB8fFxuICAgICAgICBtZXNzYWdlPy5nZXRTZW5kZXIoKT8uZ2V0VWlkKCkgPT0gbG9nZ2VkSW5Vc2VyLmdldFVpZCgpXG4gICAgICApIHtcbiAgICAgICAgYWN0aW9uTWVzc2FnZSA9IGxvY2FsaXplKFwiWU9VX0lOSVRJQVRFRF9HUk9VUF9DQUxMXCIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYWN0aW9uTWVzc2FnZSA9IGAke21lc3NhZ2UuZ2V0U2VuZGVyKCkuZ2V0TmFtZSgpfSAgJHtsb2NhbGl6ZShcbiAgICAgICAgICBcIklOSVRJQVRFRF9HUk9VUF9DQUxMXCJcbiAgICAgICAgKX1gO1xuICAgICAgfVxuXG4gICAgICBsZXQgbWVzc2FnZU9iamVjdCA9IGNvbnZlcnNhdGlvbi5nZXRMYXN0TWVzc2FnZSgpO1xuICAgICAgaWYgKFxuICAgICAgICBtZXNzYWdlT2JqZWN0ICYmXG4gICAgICAgIG1lc3NhZ2VPYmplY3QuZ2V0TWVudGlvbmVkVXNlcnMoKS5sZW5ndGggJiZcbiAgICAgICAgbWVzc2FnZU9iamVjdCBpbnN0YW5jZW9mIENvbWV0Q2hhdC5UZXh0TWVzc2FnZSAmJlxuICAgICAgICBhZGRpdGlvbmFsUGFyYW1zICYmXG4gICAgICAgICFhZGRpdGlvbmFsUGFyYW1zLmRpc2FibGVNZW50aW9uc1xuICAgICAgKSB7XG4gICAgICAgIGFjdGlvbk1lc3NhZ2UgPSB0aGlzLmdldE1lbnRpb25zRm9ybWF0dGVkVGV4dChcbiAgICAgICAgICBtZXNzYWdlT2JqZWN0LFxuICAgICAgICAgIGFjdGlvbk1lc3NhZ2UsXG4gICAgICAgICAgYWRkaXRpb25hbFBhcmFtc1xuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBhY3Rpb25NZXNzYWdlID0gc3VwZXIuZ2V0TGFzdENvbnZlcnNhdGlvbk1lc3NhZ2UoXG4gICAgICAgIGNvbnZlcnNhdGlvbixcbiAgICAgICAgbG9nZ2VkSW5Vc2VyLFxuICAgICAgICBhZGRpdGlvbmFsUGFyYW1zXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gYWN0aW9uTWVzc2FnZTtcbiAgfVxufVxuIl19
|
package/esm2020/CometChatAddMembers/cometchat-add-members/cometchat-add-members.component.mjs
CHANGED
|
@@ -280,7 +280,7 @@ export class CometChatAddMembersComponent {
|
|
|
280
280
|
}
|
|
281
281
|
}
|
|
282
282
|
CometChatAddMembersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatAddMembersComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
283
|
-
CometChatAddMembersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatAddMembersComponent, selector: "cometchat-add-members", inputs: { usersRequestBuilder: "usersRequestBuilder", searchRequestBuilder: "searchRequestBuilder", subtitleView: "subtitleView", listItemView: "listItemView", disableUsersPresence: "disableUsersPresence", menu: "menu", options: "options", backButtonIconURL: "backButtonIconURL", closeButtonIconURL: "closeButtonIconURL", showBackButton: "showBackButton", hideSeparator: "hideSeparator", selectionMode: "selectionMode", searchPlaceholder: "searchPlaceholder", hideError: "hideError", searchIconURL: "searchIconURL", hideSearch: "hideSearch", title: "title", onError: "onError", onBack: "onBack", onClose: "onClose", onSelect: "onSelect", buttonText: "buttonText", group: "group", emptyStateView: "emptyStateView", errorStateView: "errorStateView", loadingIconURL: "loadingIconURL", listItemStyle: "listItemStyle", showSectionHeader: "showSectionHeader", sectionHeaderField: "sectionHeaderField", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", onAddMembersButtonClick: "onAddMembersButtonClick", titleAlignment: "titleAlignment", addMembersStyle: "addMembersStyle", StatusIndicatorStyle: "StatusIndicatorStyle", avatarStyle: "avatarStyle" }, ngImport: i0, template: "<div class=\"cc-add-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-back-button\">\n <cometchat-button [iconURL]=\"backButtonIconURL\" [buttonStyle]=\"backButtonStyle()\" (cc-button-clicked)=\"backClicked()\" *ngIf=\"showBackButton\">\n\n </cometchat-button>\n </div>\n <div class=\"cc-add-members__wrapper\" [ngStyle]=\"addMembersStyles()\">\n <div class=\"cc-users\">\n <cometchat-users [searchPlaceholder]=\"searchPlaceholder\" [usersRequestBuilder]=\"usersRequestBuilder\"\n [hideSearch]=\"hideSearch\"\n [StatusIndicatorStyle]=\"StatusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\"\n [searchIconURL]=\"searchIconURL\"\n [searchRequestBuilder]=\"searchRequestBuilder\"\n [usersStyle]=\"usersStyle\"\n [subtitleView]=\"subtitleView\"\n [options]=\"options\"\n [usersRequestBuilder]=\"usersRequestBuilder\"\n [emptyStateView]=\"emptyStateView\"\n [onSelect]=\" addRemoveUsers\"\n [sectionHeaderField]=\"sectionHeaderField\"\n [loadingIconURL]=\"loadingIconURL\"\n [errorStateView]=\"errorStateView\"\n [loadingStateView]=\"loadingStateView\"\n [titleAlignment]=\"titleAlignment\"\n [showSectionHeader]=\"showSectionHeader\"\n [listItemView]=\"listItemView\"\n [menu]=\"menu\"\n [hideSeparator]=\"hideSeparator\"\n [hideError]=\"hideError\"\n [selectionMode]=\" selectionMode\"\n [title]=\"title\" >\n\n </cometchat-users>\n </div>\n <div class=\"cc-add-members__buttons\">\n <cometchat-button class=\"cc-add-members__buttons--add\" [text]=\"buttonText\" [buttonStyle]=\"addMemberButtonStyle\" (click)=\"addMembersToGroup()\" ></cometchat-button>\n\n </div>\n </div>\n <div class=\"cc-close-button\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\" [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n\n </cometchat-button>\n </div>\n</div>", styles: [".cc-add-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-back-button{position:absolute;left:8px;padding:12px 8px 8px}.cc-add-members__wrapper{height:100%;width:100%;padding:8px}.cc-close-button{position:absolute;right:8px;padding:12px 8px 8px}.cc-users{height:90%}.cc-add-members__buttons{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.button__icon{display:flex;justify-content:flex-end}.cc-add-members__buttons--add{height:42px;width:100%}\n"], components: [{ type: i2.CometChatUsersComponent, selector: "cometchat-users", inputs: ["usersRequestBuilder", "searchRequestBuilder", "subtitleView", "disableUsersPresence", "listItemView", "menu", "options", "activeUser", "hideSeparator", "searchPlaceholder", "hideError", "selectionMode", "searchIconURL", "hideSearch", "title", "onError", "emptyStateView", "onSelect", "errorStateView", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "usersStyle", "listItemStyle", "statusIndicatorStyle", "avatarStyle", "onItemClick"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
283
|
+
CometChatAddMembersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatAddMembersComponent, selector: "cometchat-add-members", inputs: { usersRequestBuilder: "usersRequestBuilder", searchRequestBuilder: "searchRequestBuilder", subtitleView: "subtitleView", listItemView: "listItemView", disableUsersPresence: "disableUsersPresence", menu: "menu", options: "options", backButtonIconURL: "backButtonIconURL", closeButtonIconURL: "closeButtonIconURL", showBackButton: "showBackButton", hideSeparator: "hideSeparator", selectionMode: "selectionMode", searchPlaceholder: "searchPlaceholder", hideError: "hideError", searchIconURL: "searchIconURL", hideSearch: "hideSearch", title: "title", onError: "onError", onBack: "onBack", onClose: "onClose", onSelect: "onSelect", buttonText: "buttonText", group: "group", emptyStateView: "emptyStateView", errorStateView: "errorStateView", loadingIconURL: "loadingIconURL", listItemStyle: "listItemStyle", showSectionHeader: "showSectionHeader", sectionHeaderField: "sectionHeaderField", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", onAddMembersButtonClick: "onAddMembersButtonClick", titleAlignment: "titleAlignment", addMembersStyle: "addMembersStyle", StatusIndicatorStyle: "StatusIndicatorStyle", avatarStyle: "avatarStyle" }, ngImport: i0, template: "<div class=\"cc-add-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-back-button\">\n <cometchat-button [iconURL]=\"backButtonIconURL\" [buttonStyle]=\"backButtonStyle()\" (cc-button-clicked)=\"backClicked()\" *ngIf=\"showBackButton\">\n\n </cometchat-button>\n </div>\n <div class=\"cc-add-members__wrapper\" [ngStyle]=\"addMembersStyles()\">\n <div class=\"cc-users\">\n <cometchat-users [searchPlaceholder]=\"searchPlaceholder\" [usersRequestBuilder]=\"usersRequestBuilder\"\n [hideSearch]=\"hideSearch\"\n [StatusIndicatorStyle]=\"StatusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\"\n [searchIconURL]=\"searchIconURL\"\n [searchRequestBuilder]=\"searchRequestBuilder\"\n [usersStyle]=\"usersStyle\"\n [subtitleView]=\"subtitleView\"\n [options]=\"options\"\n [usersRequestBuilder]=\"usersRequestBuilder\"\n [emptyStateView]=\"emptyStateView\"\n [onSelect]=\" addRemoveUsers\"\n [sectionHeaderField]=\"sectionHeaderField\"\n [loadingIconURL]=\"loadingIconURL\"\n [errorStateView]=\"errorStateView\"\n [loadingStateView]=\"loadingStateView\"\n [titleAlignment]=\"titleAlignment\"\n [showSectionHeader]=\"showSectionHeader\"\n [listItemView]=\"listItemView\"\n [menu]=\"menu\"\n [hideSeparator]=\"hideSeparator\"\n [hideError]=\"hideError\"\n [selectionMode]=\" selectionMode\"\n [title]=\"title\" >\n\n </cometchat-users>\n </div>\n <div class=\"cc-add-members__buttons\">\n <cometchat-button class=\"cc-add-members__buttons--add\" [text]=\"buttonText\" [buttonStyle]=\"addMemberButtonStyle\" (click)=\"addMembersToGroup()\" ></cometchat-button>\n\n </div>\n </div>\n <div class=\"cc-close-button\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\" [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n\n </cometchat-button>\n </div>\n</div>", styles: [".cc-add-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-back-button{position:absolute;left:8px;padding:12px 8px 8px}.cc-add-members__wrapper{height:100%;width:100%;padding:8px}.cc-close-button{position:absolute;right:8px;padding:12px 8px 8px}.cc-users{height:90%}.cc-add-members__buttons{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.button__icon{display:flex;justify-content:flex-end}.cc-add-members__buttons--add{height:42px;width:100%}\n"], components: [{ type: i2.CometChatUsersComponent, selector: "cometchat-users", inputs: ["usersRequestBuilder", "searchRequestBuilder", "subtitleView", "disableUsersPresence", "listItemView", "menu", "options", "activeUser", "hideSeparator", "searchPlaceholder", "hideError", "selectionMode", "searchIconURL", "hideSearch", "title", "onError", "emptyStateView", "onSelect", "errorStateView", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "usersStyle", "listItemStyle", "statusIndicatorStyle", "avatarStyle", "onItemClick", "searchKeyword", "onEmpty", "userPresencePlacement", "disableLoadingState"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
284
284
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatAddMembersComponent, decorators: [{
|
|
285
285
|
type: Component,
|
|
286
286
|
args: [{ selector: "cometchat-add-members", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-add-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-back-button\">\n <cometchat-button [iconURL]=\"backButtonIconURL\" [buttonStyle]=\"backButtonStyle()\" (cc-button-clicked)=\"backClicked()\" *ngIf=\"showBackButton\">\n\n </cometchat-button>\n </div>\n <div class=\"cc-add-members__wrapper\" [ngStyle]=\"addMembersStyles()\">\n <div class=\"cc-users\">\n <cometchat-users [searchPlaceholder]=\"searchPlaceholder\" [usersRequestBuilder]=\"usersRequestBuilder\"\n [hideSearch]=\"hideSearch\"\n [StatusIndicatorStyle]=\"StatusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\"\n [searchIconURL]=\"searchIconURL\"\n [searchRequestBuilder]=\"searchRequestBuilder\"\n [usersStyle]=\"usersStyle\"\n [subtitleView]=\"subtitleView\"\n [options]=\"options\"\n [usersRequestBuilder]=\"usersRequestBuilder\"\n [emptyStateView]=\"emptyStateView\"\n [onSelect]=\" addRemoveUsers\"\n [sectionHeaderField]=\"sectionHeaderField\"\n [loadingIconURL]=\"loadingIconURL\"\n [errorStateView]=\"errorStateView\"\n [loadingStateView]=\"loadingStateView\"\n [titleAlignment]=\"titleAlignment\"\n [showSectionHeader]=\"showSectionHeader\"\n [listItemView]=\"listItemView\"\n [menu]=\"menu\"\n [hideSeparator]=\"hideSeparator\"\n [hideError]=\"hideError\"\n [selectionMode]=\" selectionMode\"\n [title]=\"title\" >\n\n </cometchat-users>\n </div>\n <div class=\"cc-add-members__buttons\">\n <cometchat-button class=\"cc-add-members__buttons--add\" [text]=\"buttonText\" [buttonStyle]=\"addMemberButtonStyle\" (click)=\"addMembersToGroup()\" ></cometchat-button>\n\n </div>\n </div>\n <div class=\"cc-close-button\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\" [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n\n </cometchat-button>\n </div>\n</div>", styles: [".cc-add-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-back-button{position:absolute;left:8px;padding:12px 8px 8px}.cc-add-members__wrapper{height:100%;width:100%;padding:8px}.cc-close-button{position:absolute;right:8px;padding:12px 8px 8px}.cc-users{height:90%}.cc-add-members__buttons{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.button__icon{display:flex;justify-content:flex-end}.cc-add-members__buttons--add{height:42px;width:100%}\n"] }]
|