Skip to main content
Version: v4

Groups

This component lists all the groups created on CometChat and also allows users to search for groups. It enables users to find and locate specific groups based on various search criteria or parameters.

Properties

Title

Heading text for the component

NameTypeDescription
titlestringHeading text for the component
titleAlignmentstringAlignment of the heading text for the component

This involves keywords, phrases, or criteria into the search bar and retrieving relevant results based on the search query.

NameTypeDescription
searchPlaceholderstringSample text that appears in the search input as a prompt or suggestion
searchIconURLstringAsset URL for the search icon.
hideSearchbooleanWhen set to true, hides the search input.

Loading state

This refers to the state of the groups component when it is actively retrieving or fetching data.

NameTypeDescription
loadingIconURLstringAsset URL for the loading indicator icon
loadingStateViewviewUser-defined component to customise the loading indicator

Empty state

This refers to the state of the groups component when it has no content or data to display

NameTypeDescription
emptyStateTextstringThe textual content displayed in the empty state of the component.
emptyStateViewviewUser-defined component to customise the empty state of the component.

Error state

This refers to the state of the groups component when an error occurs during the retrieval of the data.

NameTypeDescription
errorStateTextstringThe textual content displayed in the error state of the component.
errorStateViewviewUser-defined component to customise the error state of the component.

RequestBuilder

This provides set of methods that allow developers to easily create and configure groups before fetching them for the intended recipients.

NameTypeDescription
searchRequestBuilderCometChat.GroupsRequestBuilderClass that allows you to set various parameters to the GroupsRequest class based on which the groups are searched
groupsRequestBuilderCometChat.GroupsRequestBuilderClass that allows you to set various parameters to the GroupsRequest class based on which the groups are fetched

Toggle

Switch to hide or show the separators, and error message.

NameTypeDescription
hideErrorbooleanWhen set to true, hides the error messages displayed within the component
hideSeparatorbooleanWhen set to true, hides the separator between the individual elements in the list.

activeGroup

This refers to a group which has an ongoing interactions and participation from its members.

NameTypeDescription
activeGroupCometChat.GroupGroup where where members are actively engaged in discussions

selectionMode

Allows user to choose individual or multiple items.

NameTypeDescription
selectionModeSelectionModeAllows user to select individual or multiple items for applying specific operations.
onSelectFunction as PropType<(groups:CometChat.Group[]) => void>Method invoked which returns the selected groups.

Custom view

UI component created and customised by the developer to meet your design or functional requirements.

NameTypeDescription
subtitleViewFunction as PropType<(group: CometChat.Group) => ViewType>User-defined component to customise the secondary text shown in the default group profile.

UI component created and customised by the developer to meet your design or functional requirements representing the button actions in the header section.

NameTypeDescription
menuviewUser-defined component to showcase options related to the groups in the header section.

Actions

This includes action buttons or icons that allow users to perform common actions or tasks, such as muting the notification etc.

NameTypeDescription
optionsFunction as PropType<(group:CometChat.Group) => CometChatOption[]>User-defined actions which appears for each group on mouseover.

Function Callback

Functions that can be invoked by the user in response to a specific event or condition.

NameTypeDescription
onItemClickFunction as PropType<(group:CometChat.Group) => void>Override the method that is invoked when user clicks on a individual item in the list
onErrorFunction as PropType<(error: CometChat.CometChatException) => void>Override the method that is invoked when an error is encountered within the component

Style

Styling properties and values of all the involved components

NameTypeDescription
avatarStyleAvatarStyleStyling properties and values of the Avatar component
statusIndicatorStyleStatusIndicatorStyling properties and values of the StatusIndicator component
listItemStyleListItemStyleStyling properties and values of the ListItem component
groupsStyleGroupsStyleStyling properties and values of the Groups component

Usage

CometChatGroups can be launched by adding the following code snippet.

const getSubtitleView = (group:CometChat.Group) => {
return {
html: `<p>${group.getGuid()}</p>`,
};
};

const getEmptyStateView = () => {
return {
html: "<p>CustomEmptyView</p>",
};
};

const getLoadingStateView = () => {
return {
componentName: "CustomLoadingViewComponent",
};
};

const getErrorStateView = () => {
return {
componentName: "CustomErrorViewComponent",
};
};

let emptyStateText = "groups not found";
let errorStateText = "somet thing went wrong";
let DeleteIcon = "./assets/DeleteIcon.svg";

function options(group: CometChat.Group) {

return [
new CometChatOption({
id: "id",
title: "Delete user",
iconURL: DeleteIcon,
iconTint: "blue",
onClick: () => //do something,
}),
];
}

<CometChatGroups
:subtitleView="getSubtitleView"
:emptyStateText="emptyStateText"
:errorStateText="errorStateText"
:emptyStateView="getEmptyStateView"
:loadingStateView="getLoadingStateView"
:errorStateView="errorStateView"
:options="options"></CometChatGroups>