Skip to main content
Version: v4

Transfer Ownership

This component allows the current owner or administrator of a group to transfer the ownership rights and administrative control of that group to another user. By transferring ownership, the original owner can designate a new user as the group owner, giving them full control and administrative privileges over the group.

Here are some key points regarding the transfer ownership feature in CometChat:

  1. Administrative Control: The current owner or administrator of the group has the authority to initiate the transfer of ownership. This feature is typically available to ensure flexibility and allow smooth transitions of group ownership.
  2. New Group Owner: During the transfer process, the current owner can select a specific user from the group members to become the new owner. This new owner will then assume the responsibilities and privileges associated with being the group owner.
  3. Administrative Privileges: As the new owner, the designated user will gain full administrative control over the group. They will have the ability to manage group settings, add or remove members, moderate conversations, and perform other administrative actions.
  4. Group Continuity: Transferring ownership does not disrupt the existing group or its content. The transfer ensures the continuity of the group while transferring the administrative control to a new owner.

Properties

Group Information

Group details associated with the group members.

NameTypeDescription
groupGroup ClassTransfer ownership of this particular CometChat group

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 group members before fetching them for the intended recipients.

NameTypeDescription
searchRequestBuilderCometChat.GroupMembersRequestBuilderClass that allows you to set various parameters to the GroupMembersRequestBuilder class based on which the group members are searched
groupMembersRequestBuilderCometChat.GroupMembersRequestBuilderClass that allows you to set various parameters to the GroupMembersRequestBuilder class based on which the group members 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.
disableUsersPresencebooleanWhen set to true, Users will not be able to see whether a particular user is currently online or offline.

Custom view

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

NameTypeDescription
subtitleViewFunction as PropType<(bannedMember: CometChat.GroupMember) => ViewType>User-defined component to customise the secondary text shown in the banned member profile.

Function Callback

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

NameTypeDescription
onTransferOwnershipFunction as PropType<(member: CometChat.GroupMember) => void>Override the method that is invoked when clicks on the transfer ownership submit button
onBackFunction as PropType<()=>void>Override the method that is invoked when the user clicks on the back button.
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 the groups component

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
groupMembersStyleGroupMembersStyleStyling properties and values of the GroupMembers component
transferOwnershipStyleTransferOwnershipStyleStyling properties and values of the TransferOwnership component

Events

To handle events supported by CometChatTransferOwnership you have to add the listeners mentioned here.

onBeforeMount(() => {
CometChatGroupEvents.ccOwnershipChanged.subscribe(
({ item: IOwnershipChanged }) => {
//Proceed with UI updates
}
);

CometChatGroupEvents.ccOwnershipChanged.subscribe(
({ item: IOwnershipChanged }) => {
//Proceed with UI updates
}
);
});

onBeforeUnmount(() => {
CometChatGroupEvents.ccOwnershipChanged.unsubscribe();
CometChatGroupEvents.ccOwnershipChanged.unsubscribe();
});

Usage

//custom style properties
const transferOwnershipStyle:TransferOwnershipStyle = new TransferOwnershipStyle({
background:"",
border:"",
MemberScopeTextColor:"",
MemberScopeTextFont:"",
})

//apply custom styling to the CometChatTransferOwnership component
<CometChatTransferOwnership :transferOwnershipStyle="transferOwnershipStyle">
</cCometChatTransferOwnership>