@oneuptime/common 7.0.4006 → 7.0.4019

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +68 -1
  2. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +0 -79
  3. package/Server/API/OnCallDutyPolicyAPI.ts +87 -0
  4. package/Server/Infrastructure/Postgres/SchemaMigrations/1743692467814-MigrationName.ts +35 -0
  5. package/Server/Infrastructure/Postgres/SchemaMigrations/1743714801105-MigrationName.ts +23 -0
  6. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  7. package/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.ts +243 -0
  8. package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +46 -0
  9. package/Server/Services/OnCallDutyPolicyEscalationRuleTeamService.ts +237 -0
  10. package/Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts +210 -0
  11. package/Server/Services/OnCallDutyPolicyScheduleLayerService.ts +61 -1
  12. package/Server/Services/OnCallDutyPolicyScheduleLayerUserService.ts +63 -0
  13. package/Server/Services/OnCallDutyPolicyScheduleService.ts +597 -18
  14. package/Server/Services/OnCallDutyPolicyService.ts +129 -0
  15. package/Server/Services/TeamService.ts +36 -0
  16. package/Server/Services/UserNotificationSettingService.ts +114 -237
  17. package/Server/Services/UserService.ts +21 -0
  18. package/Server/Utils/Workspace/Slack/Actions/Alert.ts +2 -2
  19. package/Server/Utils/Workspace/Slack/Actions/Incident.ts +3 -3
  20. package/Types/Date.ts +23 -7
  21. package/Types/Email/EmailTemplateType.ts +6 -0
  22. package/Types/NotificationSetting/NotificationSettingEventType.ts +7 -0
  23. package/Types/OnCallDutyPolicy/Layer.ts +104 -20
  24. package/UI/Components/Alerts/Alert.tsx +6 -5
  25. package/UI/Components/HeaderAlert/HeaderAlert.tsx +2 -2
  26. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +70 -1
  27. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
  28. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +0 -82
  29. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
  30. package/build/dist/Server/API/OnCallDutyPolicyAPI.js +44 -0
  31. package/build/dist/Server/API/OnCallDutyPolicyAPI.js.map +1 -0
  32. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1743692467814-MigrationName.js +18 -0
  33. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1743692467814-MigrationName.js.map +1 -0
  34. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1743714801105-MigrationName.js +14 -0
  35. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1743714801105-MigrationName.js.map +1 -0
  36. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  37. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  38. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.js +170 -0
  39. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.js.map +1 -1
  40. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +40 -0
  41. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
  42. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleTeamService.js +170 -0
  43. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleTeamService.js.map +1 -1
  44. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js +152 -0
  45. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js.map +1 -1
  46. package/build/dist/Server/Services/OnCallDutyPolicyScheduleLayerService.js +39 -0
  47. package/build/dist/Server/Services/OnCallDutyPolicyScheduleLayerService.js.map +1 -1
  48. package/build/dist/Server/Services/OnCallDutyPolicyScheduleLayerUserService.js +42 -0
  49. package/build/dist/Server/Services/OnCallDutyPolicyScheduleLayerUserService.js.map +1 -1
  50. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js +387 -8
  51. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js.map +1 -1
  52. package/build/dist/Server/Services/OnCallDutyPolicyService.js +101 -0
  53. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  54. package/build/dist/Server/Services/TeamService.js +27 -0
  55. package/build/dist/Server/Services/TeamService.js.map +1 -1
  56. package/build/dist/Server/Services/UserNotificationSettingService.js +35 -202
  57. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  58. package/build/dist/Server/Services/UserService.js +17 -0
  59. package/build/dist/Server/Services/UserService.js.map +1 -1
  60. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js +2 -2
  61. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js +3 -3
  62. package/build/dist/Types/Date.js +19 -7
  63. package/build/dist/Types/Date.js.map +1 -1
  64. package/build/dist/Types/Email/EmailTemplateType.js +5 -0
  65. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  66. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js +6 -0
  67. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js.map +1 -1
  68. package/build/dist/Types/OnCallDutyPolicy/Layer.js +66 -11
  69. package/build/dist/Types/OnCallDutyPolicy/Layer.js.map +1 -1
  70. package/build/dist/UI/Components/Alerts/Alert.js +4 -4
  71. package/build/dist/UI/Components/Alerts/Alert.js.map +1 -1
  72. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js +2 -2
  73. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js.map +1 -1
  74. package/package.json +2 -2
@@ -1,9 +1,179 @@
1
+ import BadDataException from "../../Types/Exception/BadDataException";
1
2
  import DatabaseService from "./DatabaseService";
2
3
  import Model from "Common/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam";
4
+ import OnCallDutyPolicyService from "./OnCallDutyPolicyService";
5
+ import EmailTemplateType from "../../Types/Email/EmailTemplateType";
6
+ import UserNotificationSettingService from "./UserNotificationSettingService";
7
+ import NotificationSettingEventType from "../../Types/NotificationSetting/NotificationSettingEventType";
8
+ import { LIMIT_PER_PROJECT } from "../../Types/Database/LimitMax";
9
+ import TeamMemberService from "./TeamMemberService";
3
10
  export class Service extends DatabaseService {
4
11
  constructor() {
5
12
  super(Model);
6
13
  }
14
+ async onCreateSuccess(_onCreate, createdItem) {
15
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
16
+ const createdItemId = createdItem.id;
17
+ if (!createdItemId) {
18
+ throw new BadDataException("Created item does not have an ID");
19
+ }
20
+ const createdModel = await this.findOneById({
21
+ id: createdItemId,
22
+ select: {
23
+ projectId: true,
24
+ teamId: true,
25
+ team: {
26
+ name: true,
27
+ },
28
+ onCallDutyPolicyEscalationRule: {
29
+ name: true,
30
+ _id: true,
31
+ order: true,
32
+ },
33
+ onCallDutyPolicy: {
34
+ name: true,
35
+ _id: true,
36
+ },
37
+ },
38
+ props: {
39
+ isRoot: true,
40
+ },
41
+ });
42
+ if (!createdModel) {
43
+ throw new BadDataException("Created item does not have an ID");
44
+ }
45
+ if (!createdModel.teamId) {
46
+ throw new BadDataException("Created item does not have a teamId");
47
+ }
48
+ // send notification to the new current user.
49
+ const usersInTeam = await TeamMemberService.getUsersInTeam(createdModel.teamId);
50
+ for (const user of usersInTeam) {
51
+ const temaName = ((_a = createdModel.team) === null || _a === void 0 ? void 0 : _a.name) || "No name provided";
52
+ const sendEmailToUserId = user === null || user === void 0 ? void 0 : user.id;
53
+ if (!sendEmailToUserId) {
54
+ return createdItem;
55
+ }
56
+ if (!createdModel) {
57
+ return createdItem;
58
+ }
59
+ const vars = {
60
+ onCallPolicyName: ((_b = createdModel.onCallDutyPolicy) === null || _b === void 0 ? void 0 : _b.name) || "No name provided",
61
+ escalationRuleName: ((_c = createdModel.onCallDutyPolicyEscalationRule) === null || _c === void 0 ? void 0 : _c.name) ||
62
+ "No name provided",
63
+ escalationRuleOrder: ((_e = (_d = createdModel.onCallDutyPolicyEscalationRule) === null || _d === void 0 ? void 0 : _d.order) === null || _e === void 0 ? void 0 : _e.toString()) ||
64
+ "No order provided",
65
+ reason: "You have been added to the on-call duty policy escalation rule because you are a member of the team " +
66
+ temaName,
67
+ onCallPolicyViewLink: (await OnCallDutyPolicyService.getOnCallPolicyLinkInDashboard(createdModel.projectId, createdModel.onCallDutyPolicy.id)).toString(),
68
+ };
69
+ // current user changed, send alert the new current user.
70
+ const emailMessage = {
71
+ templateType: EmailTemplateType.UserAddedToOnCallPolicy,
72
+ vars: vars,
73
+ subject: `You have been added to the on-call duty policy ${(_f = createdModel.onCallDutyPolicy) === null || _f === void 0 ? void 0 : _f.name} for team ${temaName}`,
74
+ };
75
+ const sms = {
76
+ message: `This is a message from OneUptime. You have been added to the on-call duty policy ${(_g = createdModel.onCallDutyPolicy) === null || _g === void 0 ? void 0 : _g.name} for team ${temaName} and escalation rule ${(_h = createdModel.onCallDutyPolicyEscalationRule) === null || _h === void 0 ? void 0 : _h.name} with order ${(_j = createdModel.onCallDutyPolicyEscalationRule) === null || _j === void 0 ? void 0 : _j.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard.`,
77
+ };
78
+ const callMessage = {
79
+ data: [
80
+ {
81
+ sayMessage: `This is a message from OneUptime. You have been added to the on-call duty policy ${(_k = createdModel.onCallDutyPolicy) === null || _k === void 0 ? void 0 : _k.name} for team ${temaName} and escalation rule ${(_l = createdModel.onCallDutyPolicyEscalationRule) === null || _l === void 0 ? void 0 : _l.name} with order ${(_m = createdModel.onCallDutyPolicyEscalationRule) === null || _m === void 0 ? void 0 : _m.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard. Good Bye`,
82
+ },
83
+ ],
84
+ };
85
+ await UserNotificationSettingService.sendUserNotification({
86
+ userId: sendEmailToUserId,
87
+ projectId: createdModel.projectId,
88
+ emailEnvelope: emailMessage,
89
+ smsMessage: sms,
90
+ callRequestMessage: callMessage,
91
+ eventType: NotificationSettingEventType.SEND_WHEN_USER_IS_ADDED_TO_ON_CALL_POLICY,
92
+ });
93
+ }
94
+ return createdItem;
95
+ }
96
+ async onBeforeDelete(deleteBy) {
97
+ const itemsToFetchBeforeDelete = await this.findBy({
98
+ query: deleteBy.query,
99
+ props: {
100
+ isRoot: true,
101
+ },
102
+ select: {
103
+ projectId: true,
104
+ teamId: true,
105
+ team: {
106
+ name: true,
107
+ _id: true,
108
+ },
109
+ onCallDutyPolicyEscalationRule: {
110
+ name: true,
111
+ _id: true,
112
+ order: true,
113
+ },
114
+ onCallDutyPolicy: {
115
+ name: true,
116
+ _id: true,
117
+ },
118
+ },
119
+ limit: LIMIT_PER_PROJECT,
120
+ skip: 0,
121
+ });
122
+ return {
123
+ deleteBy,
124
+ carryForward: {
125
+ deletedItems: itemsToFetchBeforeDelete,
126
+ },
127
+ };
128
+ }
129
+ async onDeleteSuccess(onDelete, _itemIdsBeforeDelete) {
130
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
131
+ const deletedItems = onDelete.carryForward.deletedItems;
132
+ for (const deletedItem of deletedItems) {
133
+ const usersInTeam = await TeamMemberService.getUsersInTeam(deletedItem.teamId);
134
+ for (const user of usersInTeam) {
135
+ const sendEmailToUserId = user === null || user === void 0 ? void 0 : user.id;
136
+ if (!sendEmailToUserId) {
137
+ return onDelete;
138
+ }
139
+ const teamName = ((_a = deletedItem.team) === null || _a === void 0 ? void 0 : _a.name) || "No name provided";
140
+ const vars = {
141
+ onCallPolicyName: ((_b = deletedItem.onCallDutyPolicy) === null || _b === void 0 ? void 0 : _b.name) || "No name provided",
142
+ escalationRuleName: ((_c = deletedItem.onCallDutyPolicyEscalationRule) === null || _c === void 0 ? void 0 : _c.name) ||
143
+ "No name provided",
144
+ escalationRuleOrder: ((_e = (_d = deletedItem.onCallDutyPolicyEscalationRule) === null || _d === void 0 ? void 0 : _d.order) === null || _e === void 0 ? void 0 : _e.toString()) ||
145
+ "No order provided",
146
+ reason: `You have been removed from the on-call duty policy escalation rule for team ${teamName}.`,
147
+ onCallPolicyViewLink: (await OnCallDutyPolicyService.getOnCallPolicyLinkInDashboard(deletedItem.projectId, deletedItem.onCallDutyPolicy.id)).toString(),
148
+ };
149
+ // current user changed, send alert the new current user.
150
+ const emailMessage = {
151
+ templateType: EmailTemplateType.UserRemovedFromOnCallPolicy,
152
+ vars: vars,
153
+ subject: `You have been removed from the on-call duty policy ${(_f = deletedItem.onCallDutyPolicy) === null || _f === void 0 ? void 0 : _f.name} for team ${teamName}`,
154
+ };
155
+ const sms = {
156
+ message: `This is a message from OneUptime. You have been removed from the on-call duty policy ${(_g = deletedItem.onCallDutyPolicy) === null || _g === void 0 ? void 0 : _g.name} for team ${teamName} and escalation rule ${(_h = deletedItem.onCallDutyPolicyEscalationRule) === null || _h === void 0 ? void 0 : _h.name} with order ${(_j = deletedItem.onCallDutyPolicyEscalationRule) === null || _j === void 0 ? void 0 : _j.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard.`,
157
+ };
158
+ const callMessage = {
159
+ data: [
160
+ {
161
+ sayMessage: `This is a message from OneUptime. You have been removed from the on-call duty policy ${(_k = deletedItem.onCallDutyPolicy) === null || _k === void 0 ? void 0 : _k.name} for team ${teamName} and escalation rule ${(_l = deletedItem.onCallDutyPolicyEscalationRule) === null || _l === void 0 ? void 0 : _l.name} with order ${(_m = deletedItem.onCallDutyPolicyEscalationRule) === null || _m === void 0 ? void 0 : _m.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard. Good Bye`,
162
+ },
163
+ ],
164
+ };
165
+ UserNotificationSettingService.sendUserNotification({
166
+ userId: sendEmailToUserId,
167
+ projectId: deletedItem.projectId,
168
+ emailEnvelope: emailMessage,
169
+ smsMessage: sms,
170
+ callRequestMessage: callMessage,
171
+ eventType: NotificationSettingEventType.SEND_WHEN_USER_IS_REMOVED_FROM_ON_CALL_POLICY,
172
+ });
173
+ }
174
+ }
175
+ return onDelete;
176
+ }
7
177
  }
8
178
  export default new Service();
9
179
  //# sourceMappingURL=OnCallDutyPolicyEscalationRuleTeamService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OnCallDutyPolicyEscalationRuleTeamService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyEscalationRuleTeamService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,iEAAiE,CAAC;AAEpF,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AACD,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"OnCallDutyPolicyEscalationRuleTeamService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyEscalationRuleTeamService.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,161 @@
1
+ import BadDataException from "../../Types/Exception/BadDataException";
1
2
  import DatabaseService from "./DatabaseService";
2
3
  import Model from "Common/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser";
4
+ import OnCallDutyPolicyService from "./OnCallDutyPolicyService";
5
+ import EmailTemplateType from "../../Types/Email/EmailTemplateType";
6
+ import UserNotificationSettingService from "./UserNotificationSettingService";
7
+ import NotificationSettingEventType from "../../Types/NotificationSetting/NotificationSettingEventType";
8
+ import { LIMIT_PER_PROJECT } from "../../Types/Database/LimitMax";
3
9
  export class Service extends DatabaseService {
4
10
  constructor() {
5
11
  super(Model);
6
12
  }
13
+ async onCreateSuccess(_onCreate, createdItem) {
14
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
15
+ const createdItemId = createdItem.id;
16
+ if (!createdItemId) {
17
+ throw new BadDataException("Created item does not have an ID");
18
+ }
19
+ const createdModel = await this.findOneById({
20
+ id: createdItemId,
21
+ select: {
22
+ projectId: true,
23
+ user: {
24
+ timezone: true,
25
+ _id: true,
26
+ },
27
+ onCallDutyPolicyEscalationRule: {
28
+ name: true,
29
+ _id: true,
30
+ order: true,
31
+ },
32
+ onCallDutyPolicy: {
33
+ name: true,
34
+ _id: true,
35
+ },
36
+ },
37
+ props: {
38
+ isRoot: true,
39
+ },
40
+ });
41
+ // send notification to the new current user.
42
+ const sendEmailToUserId = (_a = createdModel === null || createdModel === void 0 ? void 0 : createdModel.user) === null || _a === void 0 ? void 0 : _a.id;
43
+ if (!sendEmailToUserId) {
44
+ return createdItem;
45
+ }
46
+ if (!createdModel) {
47
+ return createdItem;
48
+ }
49
+ const vars = {
50
+ onCallPolicyName: ((_b = createdModel.onCallDutyPolicy) === null || _b === void 0 ? void 0 : _b.name) || "No name provided",
51
+ escalationRuleName: ((_c = createdModel.onCallDutyPolicyEscalationRule) === null || _c === void 0 ? void 0 : _c.name) || "No name provided",
52
+ escalationRuleOrder: ((_e = (_d = createdModel.onCallDutyPolicyEscalationRule) === null || _d === void 0 ? void 0 : _d.order) === null || _e === void 0 ? void 0 : _e.toString()) ||
53
+ "No order provided",
54
+ reason: "You have been added to the on-call duty policy escalation rule.",
55
+ onCallPolicyViewLink: (await OnCallDutyPolicyService.getOnCallPolicyLinkInDashboard(createdModel.projectId, createdModel.onCallDutyPolicy.id)).toString(),
56
+ };
57
+ // current user changed, send alert the new current user.
58
+ const emailMessage = {
59
+ templateType: EmailTemplateType.UserAddedToOnCallPolicy,
60
+ vars: vars,
61
+ subject: `You have been added to the on-call duty policy ${(_f = createdModel.onCallDutyPolicy) === null || _f === void 0 ? void 0 : _f.name}`,
62
+ };
63
+ const sms = {
64
+ message: `This is a message from OneUptime. You have been added to the on-call duty policy ${(_g = createdModel.onCallDutyPolicy) === null || _g === void 0 ? void 0 : _g.name} for escalation rule ${(_h = createdModel.onCallDutyPolicyEscalationRule) === null || _h === void 0 ? void 0 : _h.name} with order ${(_j = createdModel.onCallDutyPolicyEscalationRule) === null || _j === void 0 ? void 0 : _j.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard.`,
65
+ };
66
+ const callMessage = {
67
+ data: [
68
+ {
69
+ sayMessage: `This is a message from OneUptime. You have been added to the on-call duty policy ${(_k = createdModel.onCallDutyPolicy) === null || _k === void 0 ? void 0 : _k.name} for escalation rule ${(_l = createdModel.onCallDutyPolicyEscalationRule) === null || _l === void 0 ? void 0 : _l.name} with order ${(_m = createdModel.onCallDutyPolicyEscalationRule) === null || _m === void 0 ? void 0 : _m.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard. Good Bye`,
70
+ },
71
+ ],
72
+ };
73
+ await UserNotificationSettingService.sendUserNotification({
74
+ userId: sendEmailToUserId,
75
+ projectId: createdModel.projectId,
76
+ emailEnvelope: emailMessage,
77
+ smsMessage: sms,
78
+ callRequestMessage: callMessage,
79
+ eventType: NotificationSettingEventType.SEND_WHEN_USER_IS_ADDED_TO_ON_CALL_POLICY,
80
+ });
81
+ return createdItem;
82
+ }
83
+ async onBeforeDelete(deleteBy) {
84
+ const itemsToFetchBeforeDelete = await this.findBy({
85
+ query: deleteBy.query,
86
+ props: {
87
+ isRoot: true,
88
+ },
89
+ select: {
90
+ projectId: true,
91
+ user: {
92
+ timezone: true,
93
+ _id: true,
94
+ },
95
+ onCallDutyPolicyEscalationRule: {
96
+ name: true,
97
+ _id: true,
98
+ order: true,
99
+ },
100
+ onCallDutyPolicy: {
101
+ name: true,
102
+ _id: true,
103
+ },
104
+ },
105
+ limit: LIMIT_PER_PROJECT,
106
+ skip: 0,
107
+ });
108
+ return {
109
+ deleteBy,
110
+ carryForward: {
111
+ deletedItems: itemsToFetchBeforeDelete,
112
+ },
113
+ };
114
+ }
115
+ async onDeleteSuccess(onDelete, _itemIdsBeforeDelete) {
116
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
117
+ const deletedItems = onDelete.carryForward.deletedItems;
118
+ for (const deletedItem of deletedItems) {
119
+ const sendEmailToUserId = (_a = deletedItem.user) === null || _a === void 0 ? void 0 : _a.id;
120
+ if (!sendEmailToUserId) {
121
+ return onDelete;
122
+ }
123
+ const vars = {
124
+ onCallPolicyName: ((_b = deletedItem.onCallDutyPolicy) === null || _b === void 0 ? void 0 : _b.name) || "No name provided",
125
+ escalationRuleName: ((_c = deletedItem.onCallDutyPolicyEscalationRule) === null || _c === void 0 ? void 0 : _c.name) ||
126
+ "No name provided",
127
+ escalationRuleOrder: ((_e = (_d = deletedItem.onCallDutyPolicyEscalationRule) === null || _d === void 0 ? void 0 : _d.order) === null || _e === void 0 ? void 0 : _e.toString()) ||
128
+ "No order provided",
129
+ reason: "You have been removed from the on-call duty policy escalation rule.",
130
+ onCallPolicyViewLink: (await OnCallDutyPolicyService.getOnCallPolicyLinkInDashboard(deletedItem.projectId, deletedItem.onCallDutyPolicy.id)).toString(),
131
+ };
132
+ // current user changed, send alert the new current user.
133
+ const emailMessage = {
134
+ templateType: EmailTemplateType.UserRemovedFromOnCallPolicy,
135
+ vars: vars,
136
+ subject: `You have been removed from the on-call duty policy ${(_f = deletedItem.onCallDutyPolicy) === null || _f === void 0 ? void 0 : _f.name}`,
137
+ };
138
+ const sms = {
139
+ message: `This is a message from OneUptime. You have been removed from the on-call duty policy ${(_g = deletedItem.onCallDutyPolicy) === null || _g === void 0 ? void 0 : _g.name} for escalation rule ${(_h = deletedItem.onCallDutyPolicyEscalationRule) === null || _h === void 0 ? void 0 : _h.name} with order ${(_j = deletedItem.onCallDutyPolicyEscalationRule) === null || _j === void 0 ? void 0 : _j.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard.`,
140
+ };
141
+ const callMessage = {
142
+ data: [
143
+ {
144
+ sayMessage: `This is a message from OneUptime. You have been removed from the on-call duty policy ${(_k = deletedItem.onCallDutyPolicy) === null || _k === void 0 ? void 0 : _k.name} for escalation rule ${(_l = deletedItem.onCallDutyPolicyEscalationRule) === null || _l === void 0 ? void 0 : _l.name} with order ${(_m = deletedItem.onCallDutyPolicyEscalationRule) === null || _m === void 0 ? void 0 : _m.order}. To unsubscribe from this notification go to User Settings in OneUptime Dashboard. Good Bye`,
145
+ },
146
+ ],
147
+ };
148
+ UserNotificationSettingService.sendUserNotification({
149
+ userId: sendEmailToUserId,
150
+ projectId: deletedItem.projectId,
151
+ emailEnvelope: emailMessage,
152
+ smsMessage: sms,
153
+ callRequestMessage: callMessage,
154
+ eventType: NotificationSettingEventType.SEND_WHEN_USER_IS_REMOVED_FROM_ON_CALL_POLICY,
155
+ });
156
+ }
157
+ return onDelete;
158
+ }
7
159
  }
8
160
  export default new Service();
9
161
  //# sourceMappingURL=OnCallDutyPolicyEscalationRuleUserService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OnCallDutyPolicyEscalationRuleUserService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,iEAAiE,CAAC;AAEpF,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AACD,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"OnCallDutyPolicyEscalationRuleUserService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import LIMIT_MAX from "../../Types/Database/LimitMax";
14
14
  import BadDataException from "../../Types/Exception/BadDataException";
15
15
  import Model from "Common/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer";
16
16
  import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
17
+ import OnCallDutyPolicyScheduleService from "./OnCallDutyPolicyScheduleService";
17
18
  export class Service extends DatabaseService {
18
19
  constructor() {
19
20
  super(Model);
@@ -40,12 +41,50 @@ export class Service extends DatabaseService {
40
41
  carryForward: null,
41
42
  };
42
43
  }
44
+ async onCreateSuccess(_onCreate, createdItem) {
45
+ const resource = await this.findOneById({
46
+ id: createdItem.id,
47
+ select: {
48
+ onCallDutyPolicyScheduleId: true,
49
+ },
50
+ props: {
51
+ isRoot: true,
52
+ },
53
+ });
54
+ if (!resource || !resource.onCallDutyPolicyScheduleId) {
55
+ return createdItem;
56
+ }
57
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
58
+ return createdItem;
59
+ }
60
+ async onUpdateSuccess(_onUpdate, updatedItemIds) {
61
+ for (const item of updatedItemIds) {
62
+ const resource = await this.findOneById({
63
+ id: item,
64
+ select: {
65
+ onCallDutyPolicyScheduleId: true,
66
+ },
67
+ props: {
68
+ isRoot: true,
69
+ },
70
+ });
71
+ if (!resource || !resource.onCallDutyPolicyScheduleId) {
72
+ continue;
73
+ }
74
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
75
+ }
76
+ return {
77
+ updateBy: _onUpdate.updateBy,
78
+ carryForward: null,
79
+ };
80
+ }
43
81
  async onDeleteSuccess(onDelete, _itemIdsBeforeDelete) {
44
82
  const deleteBy = onDelete.deleteBy;
45
83
  const resource = onDelete.carryForward;
46
84
  if (!deleteBy.props.isRoot && resource) {
47
85
  if (resource && resource.order && resource.onCallDutyPolicyScheduleId) {
48
86
  await this.rearrangeOrder(resource.order, resource.onCallDutyPolicyScheduleId, false);
87
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
49
88
  }
50
89
  }
51
90
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"OnCallDutyPolicyScheduleLayerService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyScheduleLayerService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OnCallDutyPolicyScheduleLayerService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyScheduleLayerService.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import LIMIT_MAX from "../../Types/Database/LimitMax";
14
14
  import BadDataException from "../../Types/Exception/BadDataException";
15
15
  import Model from "Common/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser";
16
16
  import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
17
+ import OnCallDutyPolicyScheduleService from "./OnCallDutyPolicyScheduleService";
17
18
  export class Service extends DatabaseService {
18
19
  constructor() {
19
20
  super(Model);
@@ -53,6 +54,9 @@ export class Service extends DatabaseService {
53
54
  resource.order &&
54
55
  resource.onCallDutyPolicyScheduleLayerId) {
55
56
  await this.rearrangeOrder(resource.order, resource.onCallDutyPolicyScheduleLayerId, false);
57
+ if (resource.onCallDutyPolicyScheduleId) {
58
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
59
+ }
56
60
  }
57
61
  }
58
62
  return {
@@ -74,6 +78,7 @@ export class Service extends DatabaseService {
74
78
  select: {
75
79
  order: true,
76
80
  onCallDutyPolicyScheduleLayerId: true,
81
+ onCallDutyPolicyScheduleId: true,
77
82
  },
78
83
  });
79
84
  }
@@ -82,6 +87,43 @@ export class Service extends DatabaseService {
82
87
  carryForward: resource,
83
88
  };
84
89
  }
90
+ async onCreateSuccess(_onCreate, createdItem) {
91
+ const resource = await this.findOneById({
92
+ id: createdItem.id,
93
+ select: {
94
+ onCallDutyPolicyScheduleId: true,
95
+ },
96
+ props: {
97
+ isRoot: true,
98
+ },
99
+ });
100
+ if (!resource || !resource.onCallDutyPolicyScheduleId) {
101
+ return createdItem;
102
+ }
103
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
104
+ return createdItem;
105
+ }
106
+ async onUpdateSuccess(_onUpdate, updatedItemIds) {
107
+ for (const item of updatedItemIds) {
108
+ const resource = await this.findOneById({
109
+ id: item,
110
+ select: {
111
+ onCallDutyPolicyScheduleId: true,
112
+ },
113
+ props: {
114
+ isRoot: true,
115
+ },
116
+ });
117
+ if (!resource || !resource.onCallDutyPolicyScheduleId) {
118
+ continue;
119
+ }
120
+ await OnCallDutyPolicyScheduleService.refreshCurrentUserIdAndHandoffTimeInSchedule(resource.onCallDutyPolicyScheduleId);
121
+ }
122
+ return {
123
+ updateBy: _onUpdate.updateBy,
124
+ carryForward: null,
125
+ };
126
+ }
85
127
  async onBeforeUpdate(updateBy) {
86
128
  if (updateBy.data.order && !updateBy.props.isRoot && updateBy.query._id) {
87
129
  const resource = await this.findOneBy({
@@ -1 +1 @@
1
- {"version":3,"file":"OnCallDutyPolicyScheduleLayerUserService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyScheduleLayerUserService.ts"],"names":[],"mappings":";;;;;;;;;AAGA,OAAO,WAAW,MAAM,+BAA+B,CAAC;AAExD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,SAAS,MAAM,oCAAoC,CAAC;AAC3D,OAAO,SAAS,MAAM,+BAA+B,CAAC;AACtD,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAGtE,OAAO,KAAK,MAAM,gEAAgE,CAAC;AACnF,OAAO,WAAW,MAAM,gCAAgC,CAAC;AAEzD,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;;QAEzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACnD,MAAM,IAAI,gBAAgB,CAAC,6CAA6C,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,MAAM,GACV,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAI,MAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,0CAAE,EAAE,CAAA,CAAC;QAEjD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,uCAAuC;YAEvC,MAAM,KAAK,GAAmB,MAAM,IAAI,CAAC,OAAO,CAAC;gBAC/C,KAAK,EAAE;oBACL,+BAA+B,EAC7B,QAAQ,CAAC,IAAI,CAAC,+BAAgC;iBACjD;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,CACvB,QAAQ,CAAC,IAAI,CAAC,KAAK,EACnB,QAAQ,CAAC,IAAI,CAAC,+BAAgC,EAC9C,IAAI,CACL,CAAC;QAEF,OAAO;YACL,QAAQ;YACR,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,oBAAgC;QAEhC,MAAM,QAAQ,GAAoB,QAAQ,CAAC,QAAQ,CAAC;QACpD,MAAM,QAAQ,GAAiB,QAAQ,CAAC,YAAY,CAAC;QAErD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;YACvC,IACE,QAAQ;gBACR,QAAQ,CAAC,KAAK;gBACd,QAAQ,CAAC,+BAA+B,EACxC,CAAC;gBACD,MAAM,IAAI,CAAC,cAAc,CACvB,QAAQ,CAAC,KAAK,EACd,QAAQ,CAAC,+BAA+B,EACxC,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClD,MAAM,IAAI,gBAAgB,CACxB,+FAA+F,CAChG,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,GAAiB,IAAI,CAAC;QAElC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC;gBAC9B,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,IAAI;oBACX,+BAA+B,EAAE,IAAI;iBACtC;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,QAAQ;YACR,YAAY,EAAE,QAAQ;SACvB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACxE,MAAM,QAAQ,GAAiB,MAAM,IAAI,CAAC,SAAS,CAAC;gBAClD,KAAK,EAAE;oBACL,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAI;iBACzB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,IAAI;oBACX,+BAA+B,EAAE,IAAI;oBACrC,GAAG,EAAE,IAAI;iBACV;aACF,CAAC,CAAC;YAEH,MAAM,YAAY,GAAW,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAe,CAAC;YACvD,MAAM,QAAQ,GAAW,QAAQ,CAAC,IAAI,CAAC,KAAe,CAAC;YAEvD,MAAM,SAAS,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;gBAChD,KAAK,EAAE;oBACL,+BAA+B,EAC7B,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,+BAA2C;iBACxD;gBAED,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,IAAI;oBACX,+BAA+B,EAAE,IAAI;oBACrC,GAAG,EAAE,IAAI;iBACV;aACF,CAAC,CAAC;YAEH,IAAI,YAAY,GAAG,QAAQ,EAAE,CAAC;gBAC5B,aAAa;gBAEb,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,IAAI,QAAQ,CAAC,KAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAM,GAAG,YAAY,EAAE,CAAC;wBAClE,mBAAmB;wBACnB,MAAM,IAAI,CAAC,WAAW,CAAC;4BACrB,KAAK,EAAE;gCACL,GAAG,EAAE,QAAQ,CAAC,GAAI;6BACnB;4BACD,IAAI,EAAE;gCACJ,KAAK,EAAE,QAAQ,CAAC,KAAM,GAAG,CAAC;6BAC3B;4BACD,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI;6BACb;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;gBAC5B,eAAe;gBAEf,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,IAAI,QAAQ,CAAC,KAAM,IAAI,QAAQ,EAAE,CAAC;wBAChC,mBAAmB;wBACnB,MAAM,IAAI,CAAC,WAAW,CAAC;4BACrB,KAAK,EAAE;gCACL,GAAG,EAAE,QAAQ,CAAC,GAAI;6BACnB;4BACD,IAAI,EAAE;gCACJ,KAAK,EAAE,QAAQ,CAAC,KAAM,GAAG,CAAC;6BAC3B;4BACD,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI;6BACb;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,YAAoB,EACpB,+BAAyC,EACzC,gBAAyB,IAAI;QAE7B,4CAA4C;QAC5C,MAAM,SAAS,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;YAChD,KAAK,EAAE;gBACL,KAAK,EAAE,WAAW,CAAC,kBAAkB,CAAC,YAAY,CAAC;gBACnD,+BAA+B,EAAE,+BAA+B;aACjE;YACD,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,KAAK,EAAE,IAAI;aACZ;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,SAAS,CAAC,SAAS;aAC3B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAW,YAAY,CAAC;QAEpC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,aAAa,EAAE,CAAC;gBAClB,QAAQ,GAAG,QAAQ,CAAC,KAAM,GAAG,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,QAAQ,CAAC,KAAM,GAAG,CAAC,CAAC;YACjC,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC;gBACrB,KAAK,EAAE;oBACL,GAAG,EAAE,QAAQ,CAAC,GAAI;iBACnB;gBACD,IAAI,EAAE;oBACJ,KAAK,EAAE,QAAQ;iBAChB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AA1O0B;IADxB,WAAW,EAAE;;;;6CAyCb;AAGwB;IADxB,WAAW,EAAE;;;;8CA0Bb;AAGwB;IADxB,WAAW,EAAE;;;;6CA6Bb;AAGwB;IADxB,WAAW,EAAE;;;;6CAoFb;AAmDH,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"OnCallDutyPolicyScheduleLayerUserService.js","sourceRoot":"","sources":["../../../../Server/Services/OnCallDutyPolicyScheduleLayerUserService.ts"],"names":[],"mappings":"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"}