38 lines
1 KiB
TypeScript
38 lines
1 KiB
TypeScript
|
// Copyright 2022 Signal Messenger, LLC
|
||
|
// SPDX-License-Identifier: AGPL-3.0-only
|
||
|
|
||
|
import { connect } from 'react-redux';
|
||
|
import { mapDispatchToProps } from '../actions';
|
||
|
import { AddUserToAnotherGroupModal } from '../../components/AddUserToAnotherGroupModal';
|
||
|
import type { StateType } from '../reducer';
|
||
|
import {
|
||
|
getAllGroupsWithInviteAccess,
|
||
|
getContactSelector,
|
||
|
} from '../selectors/conversations';
|
||
|
import { getIntl, getRegionCode, getTheme } from '../selectors/user';
|
||
|
|
||
|
export type Props = {
|
||
|
contactID: string;
|
||
|
};
|
||
|
|
||
|
const mapStateToProps = (state: StateType, props: Props) => {
|
||
|
const candidateConversations = getAllGroupsWithInviteAccess(state);
|
||
|
const getContact = getContactSelector(state);
|
||
|
|
||
|
const regionCode = getRegionCode(state);
|
||
|
|
||
|
return {
|
||
|
contact: getContact(props.contactID),
|
||
|
i18n: getIntl(state),
|
||
|
theme: getTheme(state),
|
||
|
candidateConversations,
|
||
|
regionCode,
|
||
|
};
|
||
|
};
|
||
|
|
||
|
const smart = connect(mapStateToProps, mapDispatchToProps);
|
||
|
|
||
|
export const SmartAddUserToAnotherGroupModal = smart(
|
||
|
AddUserToAnotherGroupModal
|
||
|
);
|