@@ -11,6 +11,7 @@ import ConfirmationModal from '../../components/Modal/ConfirmationModal'
11
11
import styles from './ProjectInvitations.module.scss'
12
12
import { updateProjectMemberInvite } from '../../services/projectMemberInvites'
13
13
import { PROJECT_MEMBER_INVITE_STATUS_ACCEPTED , PROJECT_MEMBER_INVITE_STATUS_REFUSED } from '../../config/constants'
14
+ import { delay } from '../../util/delay'
14
15
15
16
const theme = {
16
17
container : styles . modalContainer
@@ -44,9 +45,16 @@ const ProjectInvitations = ({ match, auth, isProjectLoading, history, projectDet
44
45
const updateInvite = useCallback ( async ( status ) => {
45
46
setIsUpdating ( status )
46
47
await updateProjectMemberInvite ( projectId , invitation . id , status )
48
+
49
+ // await for the project details to propagate
50
+ await delay ( 1000 )
51
+ await loadProject ( projectId )
47
52
toastr . success ( 'Success' , `Successfully ${ status } the invitation.` )
53
+
54
+ // await for the project details to fetch
55
+ await delay ( 1000 )
48
56
history . push ( status === PROJECT_MEMBER_INVITE_STATUS_ACCEPTED ? `/projects/${ projectId } /challenges` : '/projects' )
49
- } , [ invitation ] )
57
+ } , [ projectId , invitation , loadProject , history ] )
50
58
51
59
const acceptInvite = useCallback ( ( ) => updateInvite ( PROJECT_MEMBER_INVITE_STATUS_ACCEPTED ) , [ updateInvite ] )
52
60
const declineInvite = useCallback ( ( ) => updateInvite ( PROJECT_MEMBER_INVITE_STATUS_REFUSED ) , [ updateInvite ] )
@@ -56,13 +64,11 @@ const ProjectInvitations = ({ match, auth, isProjectLoading, history, projectDet
56
64
return
57
65
}
58
66
59
- setTimeout ( ( ) => {
60
- if ( automaticAction === PROJECT_MEMBER_INVITE_STATUS_ACCEPTED ) {
61
- acceptInvite ( )
62
- } else if ( automaticAction === PROJECT_MEMBER_INVITE_STATUS_REFUSED ) {
63
- declineInvite ( )
64
- }
65
- } , [ 1500 ] )
67
+ if ( automaticAction === PROJECT_MEMBER_INVITE_STATUS_ACCEPTED ) {
68
+ acceptInvite ( )
69
+ } else if ( automaticAction === PROJECT_MEMBER_INVITE_STATUS_REFUSED ) {
70
+ declineInvite ( )
71
+ }
66
72
} , [ invitation , automaticAction ] )
67
73
68
74
return (
0 commit comments