aboutsummaryrefslogtreecommitdiffstats
path: root/src/containers/settings/InviteScreen.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/containers/settings/InviteScreen.tsx')
-rw-r--r--src/containers/settings/InviteScreen.tsx32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/containers/settings/InviteScreen.tsx b/src/containers/settings/InviteScreen.tsx
new file mode 100644
index 000000000..ff192783c
--- /dev/null
+++ b/src/containers/settings/InviteScreen.tsx
@@ -0,0 +1,32 @@
1import { Component, ReactNode } from 'react';
2import { inject, observer } from 'mobx-react';
3
4import { StoresProps } from 'src/@types/ferdium-components.types';
5import Invite from '../../components/auth/Invite';
6import ErrorBoundary from '../../components/util/ErrorBoundary';
7
8class InviteScreen extends Component<StoresProps> {
9 componentWillUnmount(): void {
10 this.props.stores.user.inviteRequest.reset();
11 }
12
13 render(): ReactNode {
14 const { actions } = this.props;
15 const { user } = this.props.stores;
16
17 return (
18 <ErrorBoundary>
19 <Invite
20 onSubmit={actions.user.invite}
21 isLoadingInvite={user.inviteRequest.isExecuting}
22 isInviteSuccessful={
23 user.inviteRequest.wasExecuted && !user.inviteRequest.isError
24 }
25 embed
26 />
27 </ErrorBoundary>
28 );
29 }
30}
31
32export default inject('stores', 'actions')(observer(InviteScreen));