@@ -27,14 +27,17 @@ export const groupService = service
2727 }
2828 //Add the members
2929 if ( query . users ?. length ) {
30- const { error } = await baseQuery ( {
30+ const res = await baseQuery ( {
3131 body : { user_ids : query . users . map ( ( u ) => u . id ) } ,
3232 method : 'POST' ,
33- url : `organisations/${ query . orgId } /groups/${ data . id } /` ,
33+ url : `organisations/${ query . orgId } /groups/${ data . id } /add-users/ ` ,
3434 } )
35+ if ( res . error ) {
36+ return { error : res . error }
37+ }
3538 }
3639 // Make the admins
37- await Promise . all (
40+ const adminResults = await Promise . all (
3841 ( query . usersToAddAdmin || [ ] ) . map ( ( v ) =>
3942 createGroupAdmin ( getStore ( ) , {
4043 group : data . id ,
@@ -43,6 +46,10 @@ export const groupService = service
4346 } ) ,
4447 ) ,
4548 )
49+ const adminError = adminResults . find ( ( r : any ) => r . error )
50+ if ( adminError ?. error ) {
51+ return { error : adminError . error }
52+ }
4653 return { data }
4754 } ,
4855 } ) ,
@@ -115,22 +122,28 @@ export const groupService = service
115122 return { error }
116123 }
117124 //Add the members
118- if ( query . users ?. length ) {
119- await baseQuery ( {
120- body : { user_ids : query . data . users . map ( ( u ) => u . id ) } ,
125+ if ( query . usersToAdd ?. length ) {
126+ const res = await baseQuery ( {
127+ body : { user_ids : query . usersToAdd } ,
121128 method : 'POST' ,
122129 url : `organisations/${ query . orgId } /groups/${ data . id } /add-users/` ,
123130 } )
131+ if ( res . error ) {
132+ return { error : res . error }
133+ }
124134 }
125135 if ( query . usersToRemove ?. length ) {
126- await baseQuery ( {
136+ const res = await baseQuery ( {
127137 body : { user_ids : query . usersToRemove } ,
128138 method : 'POST' ,
129139 url : `organisations/${ query . orgId } /groups/${ data . id } /remove-users/` ,
130140 } )
141+ if ( res . error ) {
142+ return { error : res . error }
143+ }
131144 }
132145 // Make the admins
133- await Promise . all (
146+ const addAdminResults = await Promise . all (
134147 ( query . usersToAddAdmin || [ ] ) . map ( ( v ) =>
135148 createGroupAdmin ( getStore ( ) , {
136149 group : data . id ,
@@ -139,8 +152,12 @@ export const groupService = service
139152 } ) ,
140153 ) ,
141154 )
155+ const addAdminError = addAdminResults . find ( ( r : any ) => r . error )
156+ if ( addAdminError ?. error ) {
157+ return { error : addAdminError . error }
158+ }
142159
143- await Promise . all (
160+ const removeAdminResults = await Promise . all (
144161 ( query . usersToRemoveAdmin || [ ] ) . map ( ( v ) =>
145162 deleteGroupAdmin ( getStore ( ) , {
146163 group : data . id ,
@@ -149,6 +166,10 @@ export const groupService = service
149166 } ) ,
150167 ) ,
151168 )
169+ const removeAdminError = removeAdminResults . find ( ( r : any ) => r . error )
170+ if ( removeAdminError ?. error ) {
171+ return { error : removeAdminError . error }
172+ }
152173 return { data }
153174 } ,
154175 } ) ,
0 commit comments