11/**
22 * Configuration of connect events
33 */
4- const config = require ( './config' ) ;
54const { BUS_API_EVENT } = require ( './constants' ) ;
65
76// project member role names
87const PROJECT_ROLE_OWNER = 'owner' ;
98const PROJECT_ROLE_COPILOT = 'copilot' ;
109const PROJECT_ROLE_MANAGER = 'manager' ;
1110const PROJECT_ROLE_MEMBER = 'member' ;
11+ const PROJECT_ROLE_ACCOUNT_MANAGER = 'account_manager' ;
1212
1313// project member role rules
1414const PROJECT_ROLE_RULES = {
1515 [ PROJECT_ROLE_OWNER ] : { role : 'customer' , isPrimary : true } ,
1616 [ PROJECT_ROLE_COPILOT ] : { role : 'copilot' } ,
1717 [ PROJECT_ROLE_MANAGER ] : { role : 'manager' } ,
18+ [ PROJECT_ROLE_ACCOUNT_MANAGER ] : { role : 'account_manager' } ,
1819 [ PROJECT_ROLE_MEMBER ] : { } ,
1920} ;
2021
2122// TopCoder roles
2223const ROLE_CONNECT_COPILOT = 'Connect Copilot' ;
2324const ROLE_CONNECT_MANAGER = 'Connect Manager' ;
25+ const ROLE_CONNECT_COPILOT_MANAGER = 'Connect Copilot Manager' ;
26+ const ROLE_CONNECT_ACCOUNT_MANAGER = 'Connect Account Manager' ;
2427const ROLE_ADMINISTRATOR = 'administrator' ;
2528
26- // TopCoder role rules
27- const TOPCODER_ROLE_RULES = {
28- [ ROLE_CONNECT_COPILOT ] : { id : config . CONNECT_COPILOT_ROLE_ID } ,
29- [ ROLE_CONNECT_MANAGER ] : { id : config . CONNECT_MANAGER_ROLE_ID } ,
30- [ ROLE_ADMINISTRATOR ] : { id : config . ADMINISTRATOR_ROLE_ID } ,
31- } ;
32-
3329/**
3430 * Supported events configuration
3531 *
@@ -51,13 +47,14 @@ const EVENTS = [
5147 {
5248 type : BUS_API_EVENT . CONNECT . PROJECT . CREATED ,
5349 projectRoles : [ PROJECT_ROLE_OWNER ] ,
50+ topcoderRoles : [ ROLE_CONNECT_ACCOUNT_MANAGER ] ,
5451 exclude : {
5552 topcoderRoles : [ ROLE_CONNECT_MANAGER , ROLE_ADMINISTRATOR ] ,
5653 } ,
5754 } , {
5855 type : BUS_API_EVENT . CONNECT . PROJECT . SUBMITTED_FOR_REVIEW ,
5956 projectRoles : [ PROJECT_ROLE_OWNER ] ,
60- topcoderRoles : [ ROLE_CONNECT_MANAGER , ROLE_ADMINISTRATOR ] ,
57+ topcoderRoles : [ ROLE_CONNECT_MANAGER , ROLE_CONNECT_ACCOUNT_MANAGER , ROLE_ADMINISTRATOR ] ,
6158 } , {
6259 type : BUS_API_EVENT . CONNECT . PROJECT . APPROVED ,
6360 projectRoles : [ PROJECT_ROLE_OWNER , PROJECT_ROLE_COPILOT , PROJECT_ROLE_MANAGER ] ,
@@ -107,6 +104,17 @@ const EVENTS = [
107104 type : BUS_API_EVENT . CONNECT . MEMBER . INVITE_CREATED ,
108105 projectRoles : [ ] ,
109106 toUserHandle : true ,
107+ } , {
108+ type : BUS_API_EVENT . CONNECT . MEMBER . INVITE_REQUESTED ,
109+ topcoderRoles : [ ROLE_CONNECT_COPILOT_MANAGER ] ,
110+ } , {
111+ type : BUS_API_EVENT . CONNECT . MEMBER . INVITE_APPROVED ,
112+ toUserHandle : true ,
113+ originator : true ,
114+ } , {
115+ type : BUS_API_EVENT . CONNECT . MEMBER . INVITE_REJECTED ,
116+ topcoderRoles : [ ROLE_CONNECT_COPILOT_MANAGER ] ,
117+ originator : true ,
110118 } ,
111119
112120 // Project activity
@@ -149,7 +157,7 @@ const EVENTS = [
149157 type : BUS_API_EVENT . CONNECT . PROJECT . FILE_UPLOADED ,
150158 version : 2 ,
151159 projectRoles : [ PROJECT_ROLE_OWNER , PROJECT_ROLE_COPILOT , PROJECT_ROLE_MANAGER , PROJECT_ROLE_MEMBER ] ,
152- includeUsers : 'allowedUsers'
160+ includeUsers : 'allowedUsers' ,
153161 } , {
154162 type : BUS_API_EVENT . CONNECT . PROJECT . SPECIFICATION_MODIFIED ,
155163 version : 2 ,
@@ -160,12 +168,12 @@ const EVENTS = [
160168 } , {
161169 type : BUS_API_EVENT . CONNECT . PROJECT_PLAN . MODIFIED ,
162170 projectRoles : [ PROJECT_ROLE_OWNER , PROJECT_ROLE_COPILOT , PROJECT_ROLE_MANAGER , PROJECT_ROLE_MEMBER ] ,
163- includeUsers : 'allowedUsers'
171+ includeUsers : 'allowedUsers' ,
164172 } , {
165173 type : BUS_API_EVENT . CONNECT . PROJECT_PLAN . PROGRESS_UPDATED ,
166174 projectRoles : [ PROJECT_ROLE_OWNER , PROJECT_ROLE_COPILOT , PROJECT_ROLE_MANAGER , PROJECT_ROLE_MEMBER ] ,
167175 } ,
168-
176+
169177 // Phase activity
170178 {
171179 type : BUS_API_EVENT . CONNECT . PROJECT_PLAN . PHASE_ACTIVATED ,
@@ -200,8 +208,8 @@ const EVENTS = [
200208 } , {
201209 type : BUS_API_EVENT . CONNECT . PROJECT_PLAN . TIMELINE_ADJUSTED ,
202210 projectRoles : [ PROJECT_ROLE_OWNER , PROJECT_ROLE_COPILOT , PROJECT_ROLE_MANAGER , PROJECT_ROLE_MEMBER ] ,
203- includeUsers : 'allowedUsers'
204- }
211+ includeUsers : 'allowedUsers' ,
212+ } ,
205213] ;
206214
207215const EVENT_BUNDLES = {
@@ -263,6 +271,9 @@ const EVENT_BUNDLES = {
263271 BUS_API_EVENT . CONNECT . MEMBER . MANAGER_JOINED ,
264272 BUS_API_EVENT . CONNECT . MEMBER . REMOVED ,
265273 BUS_API_EVENT . CONNECT . MEMBER . INVITE_CREATED ,
274+ BUS_API_EVENT . CONNECT . MEMBER . INVITE_REQUESTED ,
275+ BUS_API_EVENT . CONNECT . MEMBER . INVITE_APPROVED ,
276+ BUS_API_EVENT . CONNECT . MEMBER . INVITE_REJECTED ,
266277 ] ,
267278 } ,
268279 PROJECT_PLAN : {
@@ -293,7 +304,6 @@ const EVENT_BUNDLES = {
293304
294305module . exports = {
295306 PROJECT_ROLE_RULES ,
296- TOPCODER_ROLE_RULES ,
297307 EVENTS ,
298308 EVENT_BUNDLES ,
299309
0 commit comments