@oneuptime/common 7.0.3517 → 7.0.3538

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 (115) hide show
  1. package/Models/DatabaseModels/AlertFeed.ts +12 -4
  2. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +2 -0
  3. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +59 -2
  4. package/Models/DatabaseModels/ScheduledMaintenanceFeed.ts +15 -7
  5. package/Models/DatabaseModels/UserNotificationRule.ts +50 -0
  6. package/Models/DatabaseModels/UserOnCallLog.ts +48 -1
  7. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +49 -2
  8. package/Server/API/BillingInvoiceAPI.ts +2 -32
  9. package/Server/API/UserOnCallLogTimelineAPI.ts +32 -8
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/1737141420441-MigrationName.ts +131 -0
  11. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  12. package/Server/Services/AlertFeedService.ts +44 -37
  13. package/Server/Services/AlertInternalNoteService.ts +73 -0
  14. package/Server/Services/AlertOwnerTeamService.ts +112 -0
  15. package/Server/Services/AlertOwnerUserService.ts +114 -0
  16. package/Server/Services/AlertService.ts +121 -0
  17. package/Server/Services/AlertStateTimelineService.ts +52 -0
  18. package/Server/Services/BillingInvoiceService.ts +170 -0
  19. package/Server/Services/IncidentFeedService.ts +59 -54
  20. package/Server/Services/IncidentInternalNoteService.ts +46 -1
  21. package/Server/Services/IncidentPublicNoteService.ts +47 -2
  22. package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +32 -14
  23. package/Server/Services/OnCallDutyPolicyExecutionLogService.ts +86 -27
  24. package/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.ts +30 -12
  25. package/Server/Services/ScheduledMaintenanceFeedService.ts +51 -40
  26. package/Server/Services/ScheduledMaintenanceInternalNoteService.ts +75 -0
  27. package/Server/Services/ScheduledMaintenanceOwnerTeamService.ts +116 -0
  28. package/Server/Services/ScheduledMaintenanceOwnerUserService.ts +118 -0
  29. package/Server/Services/ScheduledMaintenancePublicNoteService.ts +74 -1
  30. package/Server/Services/ScheduledMaintenanceService.ts +68 -0
  31. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +30 -0
  32. package/Server/Services/UserNotificationRuleService.ts +450 -67
  33. package/Server/Services/UserOnCallLogService.ts +61 -18
  34. package/Server/Services/UserOnCallLogTimelineService.ts +25 -11
  35. package/Server/Utils/Logger.ts +14 -0
  36. package/Types/Email/EmailTemplateType.ts +1 -0
  37. package/Types/NotificationRule/NotificationRuleType.ts +1 -1
  38. package/UI/Utils/Project.ts +25 -0
  39. package/build/dist/Models/DatabaseModels/AlertFeed.js +12 -4
  40. package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
  41. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +2 -0
  42. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  43. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +60 -2
  44. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
  45. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js +15 -7
  46. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js.map +1 -1
  47. package/build/dist/Models/DatabaseModels/UserNotificationRule.js +49 -0
  48. package/build/dist/Models/DatabaseModels/UserNotificationRule.js.map +1 -1
  49. package/build/dist/Models/DatabaseModels/UserOnCallLog.js +48 -1
  50. package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -1
  51. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +50 -2
  52. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
  53. package/build/dist/Server/API/BillingInvoiceAPI.js +2 -19
  54. package/build/dist/Server/API/BillingInvoiceAPI.js.map +1 -1
  55. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js +10 -2
  56. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js.map +1 -1
  57. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1737141420441-MigrationName.js +50 -0
  58. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1737141420441-MigrationName.js.map +1 -0
  59. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  60. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  61. package/build/dist/Server/Services/AlertFeedService.js +43 -35
  62. package/build/dist/Server/Services/AlertFeedService.js.map +1 -1
  63. package/build/dist/Server/Services/AlertInternalNoteService.js +56 -0
  64. package/build/dist/Server/Services/AlertInternalNoteService.js.map +1 -1
  65. package/build/dist/Server/Services/AlertOwnerTeamService.js +86 -0
  66. package/build/dist/Server/Services/AlertOwnerTeamService.js.map +1 -1
  67. package/build/dist/Server/Services/AlertOwnerUserService.js +89 -0
  68. package/build/dist/Server/Services/AlertOwnerUserService.js.map +1 -1
  69. package/build/dist/Server/Services/AlertService.js +107 -3
  70. package/build/dist/Server/Services/AlertService.js.map +1 -1
  71. package/build/dist/Server/Services/AlertStateTimelineService.js +44 -1
  72. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
  73. package/build/dist/Server/Services/BillingInvoiceService.js +123 -0
  74. package/build/dist/Server/Services/BillingInvoiceService.js.map +1 -1
  75. package/build/dist/Server/Services/IncidentFeedService.js +45 -39
  76. package/build/dist/Server/Services/IncidentFeedService.js.map +1 -1
  77. package/build/dist/Server/Services/IncidentInternalNoteService.js +37 -0
  78. package/build/dist/Server/Services/IncidentInternalNoteService.js.map +1 -1
  79. package/build/dist/Server/Services/IncidentPublicNoteService.js +38 -1
  80. package/build/dist/Server/Services/IncidentPublicNoteService.js.map +1 -1
  81. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +18 -8
  82. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
  83. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js +70 -24
  84. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js.map +1 -1
  85. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js +26 -11
  86. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js.map +1 -1
  87. package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js +45 -37
  88. package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js.map +1 -1
  89. package/build/dist/Server/Services/ScheduledMaintenanceInternalNoteService.js +56 -0
  90. package/build/dist/Server/Services/ScheduledMaintenanceInternalNoteService.js.map +1 -1
  91. package/build/dist/Server/Services/ScheduledMaintenanceOwnerTeamService.js +86 -0
  92. package/build/dist/Server/Services/ScheduledMaintenanceOwnerTeamService.js.map +1 -1
  93. package/build/dist/Server/Services/ScheduledMaintenanceOwnerUserService.js +89 -0
  94. package/build/dist/Server/Services/ScheduledMaintenanceOwnerUserService.js.map +1 -1
  95. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js +56 -0
  96. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js.map +1 -1
  97. package/build/dist/Server/Services/ScheduledMaintenanceService.js +57 -0
  98. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  99. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +24 -0
  100. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  101. package/build/dist/Server/Services/UserNotificationRuleService.js +334 -67
  102. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  103. package/build/dist/Server/Services/UserOnCallLogService.js +66 -27
  104. package/build/dist/Server/Services/UserOnCallLogService.js.map +1 -1
  105. package/build/dist/Server/Services/UserOnCallLogTimelineService.js +16 -5
  106. package/build/dist/Server/Services/UserOnCallLogTimelineService.js.map +1 -1
  107. package/build/dist/Server/Utils/Logger.js +11 -0
  108. package/build/dist/Server/Utils/Logger.js.map +1 -1
  109. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  110. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  111. package/build/dist/Types/NotificationRule/NotificationRuleType.js +1 -1
  112. package/build/dist/Types/NotificationRule/NotificationRuleType.js.map +1 -1
  113. package/build/dist/UI/Utils/Project.js +11 -0
  114. package/build/dist/UI/Utils/Project.js.map +1 -1
  115. package/package.json +2 -2
@@ -2,6 +2,7 @@ import { Blue500 } from "../../Types/BrandColors";
2
2
  import OneUptimeDate from "../../Types/Date";
3
3
  import BadDataException from "../../Types/Exception/BadDataException";
4
4
  import { IsBillingEnabled } from "../EnvironmentConfig";
5
+ import logger from "../Utils/Logger";
5
6
  import DatabaseService from "./DatabaseService";
6
7
  import Model from "Common/Models/DatabaseModels/ScheduledMaintenanceFeed";
7
8
  export class Service extends DatabaseService {
@@ -12,45 +13,52 @@ export class Service extends DatabaseService {
12
13
  }
13
14
  }
14
15
  async createScheduledMaintenanceFeed(data) {
15
- if (!data.scheduledMaintenanceId) {
16
- throw new BadDataException("Scheduled Maintenance ID is required");
16
+ try {
17
+ if (!data.scheduledMaintenanceId) {
18
+ throw new BadDataException("Scheduled Maintenance ID is required");
19
+ }
20
+ if (!data.feedInfoInMarkdown) {
21
+ throw new BadDataException("Log in markdown is required");
22
+ }
23
+ if (!data.scheduledMaintenanceFeedEventType) {
24
+ throw new BadDataException("Scheduled Maintenance log event is required");
25
+ }
26
+ if (!data.projectId) {
27
+ throw new BadDataException("Project ID is required");
28
+ }
29
+ if (!data.displayColor) {
30
+ data.displayColor = Blue500;
31
+ }
32
+ const scheduledMaintenanceFeed = new Model();
33
+ scheduledMaintenanceFeed.displayColor = data.displayColor;
34
+ scheduledMaintenanceFeed.scheduledMaintenanceId =
35
+ data.scheduledMaintenanceId;
36
+ scheduledMaintenanceFeed.feedInfoInMarkdown = data.feedInfoInMarkdown;
37
+ scheduledMaintenanceFeed.scheduledMaintenanceFeedEventType =
38
+ data.scheduledMaintenanceFeedEventType;
39
+ scheduledMaintenanceFeed.projectId = data.projectId;
40
+ if (data.userId) {
41
+ scheduledMaintenanceFeed.userId = data.userId;
42
+ }
43
+ if (data.moreInformationInMarkdown) {
44
+ scheduledMaintenanceFeed.moreInformationInMarkdown =
45
+ data.moreInformationInMarkdown;
46
+ }
47
+ if (!data.postedAt) {
48
+ scheduledMaintenanceFeed.postedAt = OneUptimeDate.getCurrentDate();
49
+ }
50
+ await this.create({
51
+ data: scheduledMaintenanceFeed,
52
+ props: {
53
+ isRoot: true,
54
+ },
55
+ });
17
56
  }
18
- if (!data.feedInfoInMarkdown) {
19
- throw new BadDataException("Log in markdown is required");
57
+ catch (error) {
58
+ logger.error("ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed");
59
+ logger.error(error);
60
+ // we dont want to throw the error here, as this is not critical but we still log it.
20
61
  }
21
- if (!data.scheduledMaintenanceFeedEventType) {
22
- throw new BadDataException("Scheduled Maintenance log event is required");
23
- }
24
- if (!data.projectId) {
25
- throw new BadDataException("Project ID is required");
26
- }
27
- if (!data.displayColor) {
28
- data.displayColor = Blue500;
29
- }
30
- const scheduledMaintenanceFeed = new Model();
31
- scheduledMaintenanceFeed.displayColor = data.displayColor;
32
- scheduledMaintenanceFeed.scheduledMaintenanceId =
33
- data.scheduledMaintenanceId;
34
- scheduledMaintenanceFeed.feedInfoInMarkdown = data.feedInfoInMarkdown;
35
- scheduledMaintenanceFeed.scheduledMaintenanceFeedEventType =
36
- data.scheduledMaintenanceFeedEventType;
37
- scheduledMaintenanceFeed.projectId = data.projectId;
38
- if (data.userId) {
39
- scheduledMaintenanceFeed.userId = data.userId;
40
- }
41
- if (data.moreInformationInMarkdown) {
42
- scheduledMaintenanceFeed.moreInformationInMarkdown =
43
- data.moreInformationInMarkdown;
44
- }
45
- if (!data.postedAt) {
46
- scheduledMaintenanceFeed.postedAt = OneUptimeDate.getCurrentDate();
47
- }
48
- return await this.create({
49
- data: scheduledMaintenanceFeed,
50
- props: {
51
- isRoot: true,
52
- },
53
- });
54
62
  }
55
63
  }
56
64
  export default new Service();
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceFeedService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceFeedService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAEN,MAAM,uDAAuD,CAAC;AAE/D,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,8BAA8B,CAAC,IAS3C;QACC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACjC,MAAM,IAAI,gBAAgB,CAAC,sCAAsC,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,IAAI,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAC5C,MAAM,IAAI,gBAAgB,CAAC,6CAA6C,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC9B,CAAC;QAED,MAAM,wBAAwB,GAAU,IAAI,KAAK,EAAE,CAAC;QAEpD,wBAAwB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC1D,wBAAwB,CAAC,sBAAsB;YAC7C,IAAI,CAAC,sBAAsB,CAAC;QAC9B,wBAAwB,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACtE,wBAAwB,CAAC,iCAAiC;YACxD,IAAI,CAAC,iCAAiC,CAAC;QACzC,wBAAwB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEpD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,wBAAwB,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAChD,CAAC;QAED,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACnC,wBAAwB,CAAC,yBAAyB;gBAChD,IAAI,CAAC,yBAAyB,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,wBAAwB,CAAC,QAAQ,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;QACrE,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,wBAAwB;YAC9B,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenanceFeedService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceFeedService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAEN,MAAM,uDAAuD,CAAC;AAE/D,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,8BAA8B,CAAC,IAS3C;QACC,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACjC,MAAM,IAAI,gBAAgB,CAAC,sCAAsC,CAAC,CAAC;YACrE,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC7B,MAAM,IAAI,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;YAC5D,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;gBAC5C,MAAM,IAAI,gBAAgB,CACxB,6CAA6C,CAC9C,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;YAC9B,CAAC;YAED,MAAM,wBAAwB,GAAU,IAAI,KAAK,EAAE,CAAC;YAEpD,wBAAwB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YAC1D,wBAAwB,CAAC,sBAAsB;gBAC7C,IAAI,CAAC,sBAAsB,CAAC;YAC9B,wBAAwB,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;YACtE,wBAAwB,CAAC,iCAAiC;gBACxD,IAAI,CAAC,iCAAiC,CAAC;YACzC,wBAAwB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEpD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,wBAAwB,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAChD,CAAC;YAED,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACnC,wBAAwB,CAAC,yBAAyB;oBAChD,IAAI,CAAC,yBAAyB,CAAC;YACnC,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,wBAAwB,CAAC,QAAQ,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;YACrE,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,CAAC;gBAChB,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,gEAAgE,CACjE,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,qFAAqF;QACvF,CAAC;IACH,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -1,9 +1,65 @@
1
1
  import DatabaseService from "./DatabaseService";
2
2
  import Model from "Common/Models/DatabaseModels/ScheduledMaintenanceInternalNote";
3
+ import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
4
+ import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
5
+ import { Blue500 } from "../../Types/BrandColors";
6
+ import { LIMIT_PER_PROJECT } from "../../Types/Database/LimitMax";
3
7
  export class Service extends DatabaseService {
4
8
  constructor() {
5
9
  super(Model);
6
10
  }
11
+ async onCreateSuccess(_onCreate, createdItem) {
12
+ var _a;
13
+ const userId = createdItem.createdByUserId || ((_a = createdItem.createdByUser) === null || _a === void 0 ? void 0 : _a.id);
14
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
15
+ scheduledMaintenanceId: createdItem.scheduledMaintenanceId,
16
+ projectId: createdItem.projectId,
17
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.PrivateNote,
18
+ displayColor: Blue500,
19
+ userId: userId || undefined,
20
+ feedInfoInMarkdown: `**Posted Internal / Private Note**
21
+
22
+ ${createdItem.note}
23
+ `,
24
+ });
25
+ return createdItem;
26
+ }
27
+ async onUpdateSuccess(onUpdate, _updatedItemIds) {
28
+ if (onUpdate.updateBy.data.note) {
29
+ const updatedItems = await this.findBy({
30
+ query: onUpdate.updateBy.query,
31
+ limit: LIMIT_PER_PROJECT,
32
+ skip: 0,
33
+ props: {
34
+ isRoot: true,
35
+ },
36
+ select: {
37
+ scheduledMaintenanceId: true,
38
+ projectId: true,
39
+ note: true,
40
+ createdByUserId: true,
41
+ createdByUser: {
42
+ _id: true,
43
+ },
44
+ },
45
+ });
46
+ const userId = onUpdate.updateBy.props.userId;
47
+ for (const updatedItem of updatedItems) {
48
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
49
+ scheduledMaintenanceId: updatedItem.scheduledMaintenanceId,
50
+ projectId: updatedItem.projectId,
51
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.PrivateNote,
52
+ displayColor: Blue500,
53
+ userId: userId || undefined,
54
+ feedInfoInMarkdown: `**Updated Private Note**
55
+
56
+ ${updatedItem.note}
57
+ `,
58
+ });
59
+ }
60
+ }
61
+ return onUpdate;
62
+ }
7
63
  }
8
64
  export default new Service();
9
65
  //# sourceMappingURL=ScheduledMaintenanceInternalNoteService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceInternalNoteService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceInternalNoteService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,+DAA+D,CAAC;AAElF,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenanceInternalNoteService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceInternalNoteService.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,+DAA+D,CAAC;AAClF,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,SAA0B,EAC1B,WAAkB;;QAElB,MAAM,MAAM,GACV,WAAW,CAAC,eAAe,KAAI,MAAA,WAAW,CAAC,aAAa,0CAAE,EAAE,CAAA,CAAC;QAE/D,MAAM,+BAA+B,CAAC,8BAA8B,CAAC;YACnE,sBAAsB,EAAE,WAAW,CAAC,sBAAuB;YAC3D,SAAS,EAAE,WAAW,CAAC,SAAU;YACjC,iCAAiC,EAC/B,iCAAiC,CAAC,WAAW;YAC/C,YAAY,EAAE,OAAO;YACrB,MAAM,EAAE,MAAM,IAAI,SAAS;YAE3B,kBAAkB,EAAE;;EAExB,WAAW,CAAC,IAAI;aACL;SACR,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACrB,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,QAAyB,EACzB,eAAgC;QAEhC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,YAAY,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;gBACnD,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK;gBAC9B,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,sBAAsB,EAAE,IAAI;oBAC5B,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;oBACV,eAAe,EAAE,IAAI;oBACrB,aAAa,EAAE;wBACb,GAAG,EAAE,IAAI;qBACV;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,MAAM,GACV,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAEjC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,+BAA+B,CAAC,8BAA8B,CAAC;oBACnE,sBAAsB,EAAE,WAAW,CAAC,sBAAuB;oBAC3D,SAAS,EAAE,WAAW,CAAC,SAAU;oBACjC,iCAAiC,EAC/B,iCAAiC,CAAC,WAAW;oBAC/C,YAAY,EAAE,OAAO;oBACrB,MAAM,EAAE,MAAM,IAAI,SAAS;oBAE3B,kBAAkB,EAAE;;EAE5B,WAAW,CAAC,IAAI;iBACD;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -1,9 +1,95 @@
1
1
  import DatabaseService from "./DatabaseService";
2
2
  import Model from "Common/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam";
3
+ import TeamService from "./TeamService";
4
+ import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
5
+ import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
6
+ import { Gray500, Red500 } from "../../Types/BrandColors";
3
7
  export class Service extends DatabaseService {
4
8
  constructor() {
5
9
  super(Model);
6
10
  }
11
+ async onBeforeDelete(deleteBy) {
12
+ const itemsToDelete = await this.findBy({
13
+ query: deleteBy.query,
14
+ limit: deleteBy.limit,
15
+ skip: deleteBy.skip,
16
+ props: {
17
+ isRoot: true,
18
+ },
19
+ select: {
20
+ scheduledMaintenanceId: true,
21
+ projectId: true,
22
+ teamId: true,
23
+ },
24
+ });
25
+ return {
26
+ carryForward: {
27
+ itemsToDelete: itemsToDelete,
28
+ },
29
+ deleteBy: deleteBy,
30
+ };
31
+ }
32
+ async onDeleteSuccess(onDelete, _itemIdsBeforeDelete) {
33
+ var _a;
34
+ const deleteByUserId = ((_a = onDelete.deleteBy.deletedByUser) === null || _a === void 0 ? void 0 : _a.id) || onDelete.deleteBy.props.userId;
35
+ const itemsToDelete = onDelete.carryForward.itemsToDelete;
36
+ for (const item of itemsToDelete) {
37
+ const scheduledMaintenanceId = item.scheduledMaintenanceId;
38
+ const projectId = item.projectId;
39
+ const teamId = item.teamId;
40
+ if (scheduledMaintenanceId && teamId && projectId) {
41
+ const team = await TeamService.findOneById({
42
+ id: teamId,
43
+ select: {
44
+ name: true,
45
+ },
46
+ props: {
47
+ isRoot: true,
48
+ },
49
+ });
50
+ if (team && team.name) {
51
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
52
+ scheduledMaintenanceId: scheduledMaintenanceId,
53
+ projectId: projectId,
54
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.OwnerTeamRemoved,
55
+ displayColor: Red500,
56
+ feedInfoInMarkdown: `**Team ${team.name}** was removed from the scheduled maintenance as the owner.`,
57
+ userId: deleteByUserId || undefined,
58
+ });
59
+ }
60
+ }
61
+ }
62
+ return onDelete;
63
+ }
64
+ async onCreateSuccess(onCreate, createdItem) {
65
+ // add scheduledMaintenance feed.
66
+ const scheduledMaintenanceId = createdItem.scheduledMaintenanceId;
67
+ const projectId = createdItem.projectId;
68
+ const teamId = createdItem.teamId;
69
+ const createdByUserId = createdItem.createdByUserId || onCreate.createBy.props.userId;
70
+ if (scheduledMaintenanceId && teamId && projectId) {
71
+ const team = await TeamService.findOneById({
72
+ id: teamId,
73
+ select: {
74
+ name: true,
75
+ },
76
+ props: {
77
+ isRoot: true,
78
+ },
79
+ });
80
+ if (team && team.name) {
81
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
82
+ scheduledMaintenanceId: scheduledMaintenanceId,
83
+ projectId: projectId,
84
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.OwnerTeamAdded,
85
+ displayColor: Gray500,
86
+ feedInfoInMarkdown: `**Team ${team.name}** was added to the scheduled maintenance as the owner.`,
87
+ userId: createdByUserId || undefined,
88
+ });
89
+ }
90
+ }
91
+ return createdItem;
92
+ }
7
93
  }
8
94
  export default new Service();
9
95
  //# sourceMappingURL=ScheduledMaintenanceOwnerTeamService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceOwnerTeamService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceOwnerTeamService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,4DAA4D,CAAC;AAE/E,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenanceOwnerTeamService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceOwnerTeamService.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,98 @@
1
1
  import DatabaseService from "./DatabaseService";
2
2
  import Model from "Common/Models/DatabaseModels/ScheduledMaintenanceOwnerUser";
3
+ import UserService from "./UserService";
4
+ import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
5
+ import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
6
+ import { Gray500, Red500 } from "../../Types/BrandColors";
3
7
  export class Service extends DatabaseService {
4
8
  constructor() {
5
9
  super(Model);
6
10
  }
11
+ async onBeforeDelete(deleteBy) {
12
+ const itemsToDelete = await this.findBy({
13
+ query: deleteBy.query,
14
+ limit: deleteBy.limit,
15
+ skip: deleteBy.skip,
16
+ props: {
17
+ isRoot: true,
18
+ },
19
+ select: {
20
+ scheduledMaintenanceId: true,
21
+ projectId: true,
22
+ userId: true,
23
+ },
24
+ });
25
+ return {
26
+ carryForward: {
27
+ itemsToDelete: itemsToDelete,
28
+ },
29
+ deleteBy: deleteBy,
30
+ };
31
+ }
32
+ async onDeleteSuccess(onDelete, _itemIdsBeforeDelete) {
33
+ var _a, _b;
34
+ const deleteByUserId = ((_a = onDelete.deleteBy.deletedByUser) === null || _a === void 0 ? void 0 : _a.id) || onDelete.deleteBy.props.userId;
35
+ const itemsToDelete = onDelete.carryForward.itemsToDelete;
36
+ for (const item of itemsToDelete) {
37
+ const scheduledMaintenanceId = item.scheduledMaintenanceId;
38
+ const projectId = item.projectId;
39
+ const userId = item.userId;
40
+ if (scheduledMaintenanceId && userId && projectId) {
41
+ const user = await UserService.findOneById({
42
+ id: userId,
43
+ select: {
44
+ name: true,
45
+ email: true,
46
+ },
47
+ props: {
48
+ isRoot: true,
49
+ },
50
+ });
51
+ if (user && user.name) {
52
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
53
+ scheduledMaintenanceId: scheduledMaintenanceId,
54
+ projectId: projectId,
55
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.OwnerUserRemoved,
56
+ displayColor: Red500,
57
+ feedInfoInMarkdown: `**${user.name.toString()}** (${(_b = user.email) === null || _b === void 0 ? void 0 : _b.toString()}) was removed from the scheduled maintenance as the owner.`,
58
+ userId: deleteByUserId || undefined,
59
+ });
60
+ }
61
+ }
62
+ }
63
+ return onDelete;
64
+ }
65
+ async onCreateSuccess(onCreate, createdItem) {
66
+ // add scheduledMaintenance feed.
67
+ var _a;
68
+ const scheduledMaintenanceId = createdItem.scheduledMaintenanceId;
69
+ const projectId = createdItem.projectId;
70
+ const userId = createdItem.userId;
71
+ const createdByUserId = createdItem.createdByUserId || onCreate.createBy.props.userId;
72
+ if (scheduledMaintenanceId && userId && projectId) {
73
+ const user = await UserService.findOneById({
74
+ id: userId,
75
+ select: {
76
+ name: true,
77
+ email: true,
78
+ },
79
+ props: {
80
+ isRoot: true,
81
+ },
82
+ });
83
+ if (user && user.name) {
84
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
85
+ scheduledMaintenanceId: scheduledMaintenanceId,
86
+ projectId: projectId,
87
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.OwnerUserAdded,
88
+ displayColor: Gray500,
89
+ feedInfoInMarkdown: `**${user.name.toString()}** (${(_a = user.email) === null || _a === void 0 ? void 0 : _a.toString()}) was added to the scheduled maintenance as the owner.`,
90
+ userId: createdByUserId || undefined,
91
+ });
92
+ }
93
+ }
94
+ return createdItem;
95
+ }
7
96
  }
8
97
  export default new Service();
9
98
  //# sourceMappingURL=ScheduledMaintenanceOwnerUserService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceOwnerUserService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceOwnerUserService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,4DAA4D,CAAC;AAE/E,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenanceOwnerUserService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceOwnerUserService.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import DatabaseService from "./DatabaseService";
2
2
  import OneUptimeDate from "../../Types/Date";
3
3
  import Model from "Common/Models/DatabaseModels/ScheduledMaintenancePublicNote";
4
+ import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
5
+ import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
6
+ import { Blue500, Indigo500 } from "../../Types/BrandColors";
7
+ import { LIMIT_PER_PROJECT } from "../../Types/Database/LimitMax";
4
8
  export class Service extends DatabaseService {
5
9
  constructor() {
6
10
  super(Model);
@@ -14,6 +18,58 @@ export class Service extends DatabaseService {
14
18
  carryForward: null,
15
19
  };
16
20
  }
21
+ async onCreateSuccess(_onCreate, createdItem) {
22
+ var _a;
23
+ const userId = createdItem.createdByUserId || ((_a = createdItem.createdByUser) === null || _a === void 0 ? void 0 : _a.id);
24
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
25
+ scheduledMaintenanceId: createdItem.scheduledMaintenanceId,
26
+ projectId: createdItem.projectId,
27
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.PublicNote,
28
+ displayColor: Indigo500,
29
+ userId: userId || undefined,
30
+ feedInfoInMarkdown: `**Posted public note for this scheduled maintenance on status page**
31
+
32
+ ${createdItem.note}
33
+ `,
34
+ });
35
+ return createdItem;
36
+ }
37
+ async onUpdateSuccess(onUpdate, _updatedItemIds) {
38
+ if (onUpdate.updateBy.data.note) {
39
+ const updatedItems = await this.findBy({
40
+ query: onUpdate.updateBy.query,
41
+ limit: LIMIT_PER_PROJECT,
42
+ skip: 0,
43
+ props: {
44
+ isRoot: true,
45
+ },
46
+ select: {
47
+ scheduledMaintenanceId: true,
48
+ projectId: true,
49
+ note: true,
50
+ createdByUserId: true,
51
+ createdByUser: {
52
+ _id: true,
53
+ },
54
+ },
55
+ });
56
+ const userId = onUpdate.updateBy.props.userId;
57
+ for (const updatedItem of updatedItems) {
58
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
59
+ scheduledMaintenanceId: updatedItem.scheduledMaintenanceId,
60
+ projectId: updatedItem.projectId,
61
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.PublicNote,
62
+ displayColor: Blue500,
63
+ userId: userId || undefined,
64
+ feedInfoInMarkdown: `**Updated Public Note**
65
+
66
+ ${updatedItem.note}
67
+ `,
68
+ });
69
+ }
70
+ }
71
+ return onUpdate;
72
+ }
17
73
  }
18
74
  export default new Service();
19
75
  //# sourceMappingURL=ScheduledMaintenancePublicNoteService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenancePublicNoteService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenancePublicNoteService.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,MAAM,6DAA6D,CAAC;AAEhF,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEkB,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;QAC1D,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenancePublicNoteService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenancePublicNoteService.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,MAAM,6DAA6D,CAAC;AAChF,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAEhF,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEkB,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;QAC1D,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,SAA0B,EAC1B,WAAkB;;QAElB,MAAM,MAAM,GACV,WAAW,CAAC,eAAe,KAAI,MAAA,WAAW,CAAC,aAAa,0CAAE,EAAE,CAAA,CAAC;QAE/D,MAAM,+BAA+B,CAAC,8BAA8B,CAAC;YACnE,sBAAsB,EAAE,WAAW,CAAC,sBAAuB;YAC3D,SAAS,EAAE,WAAW,CAAC,SAAU;YACjC,iCAAiC,EAC/B,iCAAiC,CAAC,UAAU;YAC9C,YAAY,EAAE,SAAS;YACvB,MAAM,EAAE,MAAM,IAAI,SAAS;YAC3B,kBAAkB,EAAE;;EAExB,WAAW,CAAC,IAAI;aACL;SACR,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACrB,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,QAAyB,EACzB,eAAgC;QAEhC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,YAAY,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;gBACnD,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK;gBAC9B,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,sBAAsB,EAAE,IAAI;oBAC5B,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;oBACV,eAAe,EAAE,IAAI;oBACrB,aAAa,EAAE;wBACb,GAAG,EAAE,IAAI;qBACV;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,MAAM,GACV,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAEjC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,+BAA+B,CAAC,8BAA8B,CAAC;oBACnE,sBAAsB,EAAE,WAAW,CAAC,sBAAuB;oBAC3D,SAAS,EAAE,WAAW,CAAC,SAAU;oBACjC,iCAAiC,EAC/B,iCAAiC,CAAC,UAAU;oBAC9C,YAAY,EAAE,OAAO;oBACrB,MAAM,EAAE,MAAM,IAAI,SAAS;oBAE3B,kBAAkB,EAAE;;EAE5B,WAAW,CAAC,IAAI;eACH;iBACN,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -32,6 +32,9 @@ import Markdown, { MarkdownContentType } from "Common/Server/Types/Markdown";
32
32
  import logger from "Common/Server/Utils/Logger";
33
33
  import { IsBillingEnabled } from "../EnvironmentConfig";
34
34
  import StatusPageEventType from "../../Types/StatusPage/StatusPageEventType";
35
+ import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
36
+ import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
37
+ import { Gray500, Red500 } from "../../Types/BrandColors";
35
38
  export class Service extends DatabaseService {
36
39
  constructor() {
37
40
  super(Model);
@@ -295,6 +298,26 @@ export class Service extends DatabaseService {
295
298
  }
296
299
  async onCreateSuccess(onCreate, createdItem) {
297
300
  // create new scheduled maintenance state timeline.
301
+ var _a;
302
+ const createdByUserId = createdItem.createdByUserId || ((_a = createdItem.createdByUser) === null || _a === void 0 ? void 0 : _a.id);
303
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
304
+ scheduledMaintenanceId: createdItem.id,
305
+ projectId: createdItem.projectId,
306
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.ScheduledMaintenanceCreated,
307
+ displayColor: Red500,
308
+ feedInfoInMarkdown: `**Scheduled Maintenance Created**:
309
+
310
+ **Scheduled Maintenance Title**:
311
+
312
+ ${createdItem.title || "No title provided."}
313
+
314
+ **Description**:
315
+
316
+ ${createdItem.description || "No description provided."}
317
+
318
+ `,
319
+ userId: createdByUserId || undefined,
320
+ });
298
321
  const timeline = new ScheduledMaintenanceStateTimeline();
299
322
  timeline.projectId = createdItem.projectId;
300
323
  timeline.scheduledMaintenanceId = createdItem.id;
@@ -445,6 +468,40 @@ export class Service extends DatabaseService {
445
468
  });
446
469
  }
447
470
  }
471
+ if (updatedItemIds.length > 0) {
472
+ for (const scheduledMaintenanceId of updatedItemIds) {
473
+ if (onUpdate.updateBy.data.title) {
474
+ // add scheduledMaintenance feed.
475
+ const createdByUserId = onUpdate.updateBy.props.userId;
476
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
477
+ scheduledMaintenanceId: scheduledMaintenanceId,
478
+ projectId: onUpdate.updateBy.props.tenantId,
479
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.ScheduledMaintenanceUpdated,
480
+ displayColor: Gray500,
481
+ feedInfoInMarkdown: `**Scheduled Maintenance title was updated.** Here's the new title.
482
+
483
+ ${onUpdate.updateBy.data.title || "No title provided."}
484
+ `,
485
+ userId: createdByUserId || undefined,
486
+ });
487
+ }
488
+ if (onUpdate.updateBy.data.description) {
489
+ // add scheduledMaintenance feed.
490
+ const createdByUserId = onUpdate.updateBy.props.userId;
491
+ await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
492
+ scheduledMaintenanceId: scheduledMaintenanceId,
493
+ projectId: onUpdate.updateBy.props.tenantId,
494
+ scheduledMaintenanceFeedEventType: ScheduledMaintenanceFeedEventType.ScheduledMaintenanceUpdated,
495
+ displayColor: Gray500,
496
+ feedInfoInMarkdown: `**Scheduled Maintenance description was updated.** Here's the new description.
497
+
498
+ ${onUpdate.updateBy.data.description || "No description provided."}
499
+ `,
500
+ userId: createdByUserId || undefined,
501
+ });
502
+ }
503
+ }
504
+ }
448
505
  return onUpdate;
449
506
  }
450
507
  async changeScheduledMaintenanceState(data) {
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScheduledMaintenanceService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceService.ts"],"names":[],"mappings":"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"}