mirror of
https://github.com/lux-tel/session-desktop.git
synced 2026-10-30 20:33:24 +00:00
28 lines
920 B
TypeScript
28 lines
920 B
TypeScript
import { getAppDispatch } from '../../state/dispatch';
|
|
import {
|
|
useIsBlocked,
|
|
useIsGroupDestroyed,
|
|
useIsGroupV2,
|
|
useIsKickedFromGroup,
|
|
useWeAreAdmin,
|
|
} from '../../hooks/useParamSelector';
|
|
import { updateInviteContactModal } from '../../state/ducks/modalDialog';
|
|
|
|
export function useShowInviteContactToGroupCb(conversationId: string) {
|
|
const dispatch = getAppDispatch();
|
|
const isGroupV2 = useIsGroupV2(conversationId);
|
|
const isBlocked = useIsBlocked(conversationId);
|
|
const isKickedFromGroup = useIsKickedFromGroup(conversationId);
|
|
const isGroupDestroyed = useIsGroupDestroyed(conversationId);
|
|
const weAreAdmin = useWeAreAdmin(conversationId);
|
|
const showInviteGroupV2 =
|
|
isGroupV2 && !isKickedFromGroup && !isBlocked && weAreAdmin && !isGroupDestroyed;
|
|
const cb = () => dispatch(updateInviteContactModal({ conversationId }));
|
|
|
|
if (!showInviteGroupV2) {
|
|
return null;
|
|
}
|
|
|
|
return cb;
|
|
}
|