@oneuptime/common 9.4.12 → 9.5.0

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 (862) hide show
  1. package/Models/DatabaseModels/AIAgent.ts +20 -10
  2. package/Models/DatabaseModels/AIAgentOwnerTeam.ts +12 -0
  3. package/Models/DatabaseModels/AIAgentOwnerUser.ts +12 -0
  4. package/Models/DatabaseModels/AIAgentTask.ts +24 -2
  5. package/Models/DatabaseModels/AIAgentTaskLog.ts +19 -2
  6. package/Models/DatabaseModels/AIAgentTaskPullRequest.ts +29 -2
  7. package/Models/DatabaseModels/AIAgentTaskTelemetryException.ts +11 -0
  8. package/Models/DatabaseModels/Alert.ts +31 -1
  9. package/Models/DatabaseModels/AlertCustomField.ts +10 -0
  10. package/Models/DatabaseModels/AlertEpisode.ts +32 -0
  11. package/Models/DatabaseModels/AlertEpisodeFeed.ts +14 -0
  12. package/Models/DatabaseModels/AlertEpisodeInternalNote.ts +11 -0
  13. package/Models/DatabaseModels/AlertEpisodeMember.ts +17 -0
  14. package/Models/DatabaseModels/AlertEpisodeOwnerTeam.ts +12 -0
  15. package/Models/DatabaseModels/AlertEpisodeOwnerUser.ts +12 -0
  16. package/Models/DatabaseModels/AlertEpisodeStateTimeline.ts +14 -0
  17. package/Models/DatabaseModels/AlertFeed.ts +14 -0
  18. package/Models/DatabaseModels/AlertGroupingRule.ts +178 -0
  19. package/Models/DatabaseModels/AlertInternalNote.ts +11 -0
  20. package/Models/DatabaseModels/AlertNoteTemplate.ts +8 -0
  21. package/Models/DatabaseModels/AlertOwnerTeam.ts +12 -0
  22. package/Models/DatabaseModels/AlertOwnerUser.ts +12 -0
  23. package/Models/DatabaseModels/AlertSeverity.ts +12 -0
  24. package/Models/DatabaseModels/AlertState.ts +14 -0
  25. package/Models/DatabaseModels/AlertStateTimeline.ts +14 -0
  26. package/Models/DatabaseModels/ApiKey.ts +10 -0
  27. package/Models/DatabaseModels/ApiKeyPermission.ts +11 -0
  28. package/Models/DatabaseModels/BillingInvoice.ts +16 -0
  29. package/Models/DatabaseModels/BillingPaymentMethod.ts +12 -0
  30. package/Models/DatabaseModels/CallLog.ts +29 -0
  31. package/Models/DatabaseModels/CodeRepository.ts +18 -0
  32. package/Models/DatabaseModels/Dashboard.ts +12 -0
  33. package/Models/DatabaseModels/DataMigration.ts +1 -0
  34. package/Models/DatabaseModels/Domain.ts +11 -0
  35. package/Models/DatabaseModels/EmailLog.ts +30 -0
  36. package/Models/DatabaseModels/Incident.ts +121 -0
  37. package/Models/DatabaseModels/IncidentCustomField.ts +10 -0
  38. package/Models/DatabaseModels/IncidentEpisode.ts +1256 -0
  39. package/Models/DatabaseModels/IncidentEpisodeFeed.ts +547 -0
  40. package/Models/DatabaseModels/IncidentEpisodeInternalNote.ts +467 -0
  41. package/Models/DatabaseModels/IncidentEpisodeMember.ts +604 -0
  42. package/Models/DatabaseModels/IncidentEpisodeOwnerTeam.ts +433 -0
  43. package/Models/DatabaseModels/IncidentEpisodeOwnerUser.ts +431 -0
  44. package/Models/DatabaseModels/IncidentEpisodeRoleMember.ts +514 -0
  45. package/Models/DatabaseModels/IncidentEpisodeStateTimeline.ts +538 -0
  46. package/Models/DatabaseModels/IncidentFeed.ts +16 -0
  47. package/Models/DatabaseModels/IncidentGroupingRule.ts +1693 -0
  48. package/Models/DatabaseModels/IncidentInternalNote.ts +11 -0
  49. package/Models/DatabaseModels/IncidentMember.ts +544 -0
  50. package/Models/DatabaseModels/IncidentNoteTemplate.ts +8 -0
  51. package/Models/DatabaseModels/IncidentOwnerTeam.ts +12 -0
  52. package/Models/DatabaseModels/IncidentOwnerUser.ts +12 -0
  53. package/Models/DatabaseModels/IncidentPostmortemTemplate.ts +8 -0
  54. package/Models/DatabaseModels/IncidentPublicNote.ts +15 -0
  55. package/Models/DatabaseModels/IncidentRole.ts +530 -0
  56. package/Models/DatabaseModels/IncidentSeverity.ts +12 -0
  57. package/Models/DatabaseModels/IncidentSla.ts +675 -0
  58. package/Models/DatabaseModels/IncidentSlaRule.ts +889 -0
  59. package/Models/DatabaseModels/IncidentState.ts +15 -0
  60. package/Models/DatabaseModels/IncidentStateTimeline.ts +17 -0
  61. package/Models/DatabaseModels/IncidentTemplate.ts +20 -0
  62. package/Models/DatabaseModels/IncidentTemplateOwnerTeam.ts +12 -0
  63. package/Models/DatabaseModels/IncidentTemplateOwnerUser.ts +12 -0
  64. package/Models/DatabaseModels/IncomingCallLog.ts +20 -0
  65. package/Models/DatabaseModels/IncomingCallLogItem.ts +17 -0
  66. package/Models/DatabaseModels/IncomingCallPolicy.ts +22 -0
  67. package/Models/DatabaseModels/IncomingCallPolicyEscalationRule.ts +15 -0
  68. package/Models/DatabaseModels/Index.ts +32 -0
  69. package/Models/DatabaseModels/Label.ts +11 -0
  70. package/Models/DatabaseModels/LlmLog.ts +28 -0
  71. package/Models/DatabaseModels/LlmProvider.ts +18 -13
  72. package/Models/DatabaseModels/MetricType.ts +11 -0
  73. package/Models/DatabaseModels/Monitor.ts +34 -0
  74. package/Models/DatabaseModels/MonitorCustomField.ts +10 -0
  75. package/Models/DatabaseModels/MonitorFeed.ts +14 -0
  76. package/Models/DatabaseModels/MonitorGroup.ts +9 -0
  77. package/Models/DatabaseModels/MonitorGroupOwnerTeam.ts +12 -0
  78. package/Models/DatabaseModels/MonitorGroupOwnerUser.ts +12 -0
  79. package/Models/DatabaseModels/MonitorGroupResource.ts +9 -0
  80. package/Models/DatabaseModels/MonitorOwnerTeam.ts +12 -0
  81. package/Models/DatabaseModels/MonitorOwnerUser.ts +12 -0
  82. package/Models/DatabaseModels/MonitorProbe.ts +15 -0
  83. package/Models/DatabaseModels/MonitorSecret.ts +10 -0
  84. package/Models/DatabaseModels/MonitorStatus.ts +14 -0
  85. package/Models/DatabaseModels/MonitorStatusTimeline.ts +14 -0
  86. package/Models/DatabaseModels/MonitorTest.ts +14 -0
  87. package/Models/DatabaseModels/OnCallDutyPolicy.ts +12 -0
  88. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +10 -0
  89. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.ts +11 -0
  90. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.ts +11 -0
  91. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.ts +11 -0
  92. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.ts +11 -0
  93. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +97 -0
  94. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +90 -0
  95. package/Models/DatabaseModels/OnCallDutyPolicyFeed.ts +14 -0
  96. package/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.ts +12 -0
  97. package/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.ts +12 -0
  98. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +17 -0
  99. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +16 -0
  100. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.ts +14 -0
  101. package/Models/DatabaseModels/OnCallDutyPolicyTimeLog.ts +14 -0
  102. package/Models/DatabaseModels/OnCallDutyPolicyUserOverride.ts +13 -0
  103. package/Models/DatabaseModels/Probe.ts +20 -9
  104. package/Models/DatabaseModels/ProbeOwnerTeam.ts +12 -0
  105. package/Models/DatabaseModels/ProbeOwnerUser.ts +12 -0
  106. package/Models/DatabaseModels/Project.ts +42 -3
  107. package/Models/DatabaseModels/ProjectCallSMSConfig.ts +14 -0
  108. package/Models/DatabaseModels/ProjectSCIM.ts +14 -0
  109. package/Models/DatabaseModels/ProjectSCIMLog.ts +14 -0
  110. package/Models/DatabaseModels/ProjectSmtpConfig.ts +23 -0
  111. package/Models/DatabaseModels/ProjectSso.ts +17 -0
  112. package/Models/DatabaseModels/ProjectUserProfile.ts +355 -0
  113. package/Models/DatabaseModels/PromoCode.ts +5 -0
  114. package/Models/DatabaseModels/PushNotificationLog.ts +29 -0
  115. package/Models/DatabaseModels/Reseller.ts +8 -4
  116. package/Models/DatabaseModels/ResellerPlan.ts +1 -1
  117. package/Models/DatabaseModels/ScheduledMaintenance.ts +28 -0
  118. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +10 -0
  119. package/Models/DatabaseModels/ScheduledMaintenanceFeed.ts +14 -0
  120. package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +11 -0
  121. package/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.ts +8 -0
  122. package/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.ts +12 -0
  123. package/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.ts +12 -0
  124. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +15 -0
  125. package/Models/DatabaseModels/ScheduledMaintenanceState.ts +16 -0
  126. package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +15 -0
  127. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +26 -0
  128. package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.ts +11 -0
  129. package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.ts +11 -0
  130. package/Models/DatabaseModels/Service.ts +14 -0
  131. package/Models/DatabaseModels/ServiceCodeRepository.ts +15 -0
  132. package/Models/DatabaseModels/ServiceDependency.ts +11 -0
  133. package/Models/DatabaseModels/ServiceMonitor.ts +11 -0
  134. package/Models/DatabaseModels/ServiceOwnerTeam.ts +11 -0
  135. package/Models/DatabaseModels/ServiceOwnerUser.ts +11 -0
  136. package/Models/DatabaseModels/SmsLog.ts +29 -0
  137. package/Models/DatabaseModels/StatusPage.ts +65 -0
  138. package/Models/DatabaseModels/StatusPageAnnouncement.ts +17 -0
  139. package/Models/DatabaseModels/StatusPageAnnouncementTemplate.ts +13 -0
  140. package/Models/DatabaseModels/StatusPageCustomField.ts +10 -0
  141. package/Models/DatabaseModels/StatusPageDomain.ts +18 -0
  142. package/Models/DatabaseModels/StatusPageFooterLink.ts +11 -0
  143. package/Models/DatabaseModels/StatusPageGroup.ts +15 -0
  144. package/Models/DatabaseModels/StatusPageHeaderLink.ts +11 -0
  145. package/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.ts +10 -0
  146. package/Models/DatabaseModels/StatusPageOwnerTeam.ts +12 -0
  147. package/Models/DatabaseModels/StatusPageOwnerUser.ts +12 -0
  148. package/Models/DatabaseModels/StatusPagePrivateUser.ts +11 -0
  149. package/Models/DatabaseModels/StatusPageResource.ts +21 -0
  150. package/Models/DatabaseModels/StatusPageSCIM.ts +14 -0
  151. package/Models/DatabaseModels/StatusPageSCIMLog.ts +15 -0
  152. package/Models/DatabaseModels/StatusPageSso.ts +18 -0
  153. package/Models/DatabaseModels/StatusPageSubscriber.ts +21 -0
  154. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.ts +12 -0
  155. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.ts +10 -0
  156. package/Models/DatabaseModels/TableView.ts +13 -0
  157. package/Models/DatabaseModels/Team.ts +12 -0
  158. package/Models/DatabaseModels/TeamComplianceSetting.ts +10 -0
  159. package/Models/DatabaseModels/TeamMember.ts +2 -0
  160. package/Models/DatabaseModels/TeamMemberCustomField.ts +357 -0
  161. package/Models/DatabaseModels/TeamPermission.ts +11 -0
  162. package/Models/DatabaseModels/TelemetryException.ts +28 -0
  163. package/Models/DatabaseModels/TelemetryIngestionKey.ts +8 -0
  164. package/Models/DatabaseModels/TelemetryUsageBilling.ts +14 -0
  165. package/Models/DatabaseModels/User.ts +2 -2
  166. package/Models/DatabaseModels/UserOnCallLog.ts +48 -0
  167. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +49 -0
  168. package/Models/DatabaseModels/WhatsAppLog.ts +30 -0
  169. package/Models/DatabaseModels/Workflow.ts +13 -0
  170. package/Models/DatabaseModels/WorkflowLog.ts +9 -0
  171. package/Models/DatabaseModels/WorkflowVariable.ts +12 -0
  172. package/Models/DatabaseModels/WorkspaceNotificationLog.ts +92 -0
  173. package/Models/DatabaseModels/WorkspaceNotificationRule.ts +12 -0
  174. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +10 -0
  175. package/Server/API/IncidentEpisodeAPI.ts +150 -0
  176. package/Server/API/ProjectAPI.ts +32 -0
  177. package/Server/API/SlackAPI.ts +23 -0
  178. package/Server/API/UserOnCallLogTimelineAPI.ts +24 -4
  179. package/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.ts +729 -0
  180. package/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.ts +261 -0
  181. package/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.ts +28 -0
  182. package/Server/Infrastructure/Postgres/SchemaMigrations/1769712834410-MigrationName.ts +121 -0
  183. package/Server/Infrastructure/Postgres/SchemaMigrations/1769719135546-MigrationName.ts +35 -0
  184. package/Server/Infrastructure/Postgres/SchemaMigrations/1769719826928-MigrationName.ts +35 -0
  185. package/Server/Infrastructure/Postgres/SchemaMigrations/1769723982900-MigrationName.ts +307 -0
  186. package/Server/Infrastructure/Postgres/SchemaMigrations/1769772215532-MigrationName.ts +91 -0
  187. package/Server/Infrastructure/Postgres/SchemaMigrations/1769774527481-MigrationName.ts +29 -0
  188. package/Server/Infrastructure/Postgres/SchemaMigrations/1769780297584-MigrationName.ts +245 -0
  189. package/Server/Infrastructure/Postgres/SchemaMigrations/1769802715014-MigrationName.ts +17 -0
  190. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +22 -0
  191. package/Server/Services/AlertGroupingEngineService.ts +83 -4
  192. package/Server/Services/BillingService.ts +1 -3
  193. package/Server/Services/CallService.ts +1 -0
  194. package/Server/Services/IncidentEpisodeFeedService.ts +94 -0
  195. package/Server/Services/IncidentEpisodeInternalNoteService.ts +71 -0
  196. package/Server/Services/IncidentEpisodeMemberService.ts +321 -0
  197. package/Server/Services/IncidentEpisodeOwnerTeamService.ts +10 -0
  198. package/Server/Services/IncidentEpisodeOwnerUserService.ts +10 -0
  199. package/Server/Services/IncidentEpisodeRoleMemberService.ts +227 -0
  200. package/Server/Services/IncidentEpisodeService.ts +1045 -0
  201. package/Server/Services/IncidentEpisodeStateTimelineService.ts +566 -0
  202. package/Server/Services/IncidentGroupingEngineService.ts +1163 -0
  203. package/Server/Services/IncidentGroupingRuleService.ts +14 -0
  204. package/Server/Services/IncidentMemberService.ts +251 -0
  205. package/Server/Services/IncidentRoleService.ts +87 -0
  206. package/Server/Services/IncidentService.ts +43 -0
  207. package/Server/Services/IncidentSlaRuleService.ts +356 -0
  208. package/Server/Services/IncidentSlaService.ts +550 -0
  209. package/Server/Services/IncidentStateTimelineService.ts +182 -1
  210. package/Server/Services/Index.ts +32 -0
  211. package/Server/Services/MailService.ts +1 -0
  212. package/Server/Services/MonitorService.ts +9 -0
  213. package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +18 -0
  214. package/Server/Services/OnCallDutyPolicyExecutionLogService.ts +64 -2
  215. package/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.ts +26 -1
  216. package/Server/Services/OnCallDutyPolicyService.ts +15 -0
  217. package/Server/Services/ProjectService.ts +90 -0
  218. package/Server/Services/ProjectUserProfileService.ts +9 -0
  219. package/Server/Services/SmsService.ts +1 -0
  220. package/Server/Services/TeamMemberCustomFieldService.ts +9 -0
  221. package/Server/Services/UserNotificationRuleService.ts +48 -2
  222. package/Server/Services/UserNotificationSettingService.ts +23 -0
  223. package/Server/Services/UserOnCallLogService.ts +48 -4
  224. package/Server/Services/WhatsAppService.ts +1 -0
  225. package/Server/Services/WorkspaceNotificationLogService.ts +16 -0
  226. package/Server/Services/WorkspaceNotificationRuleService.ts +116 -0
  227. package/Server/Utils/AI/IncidentEpisodeAIContextBuilder.ts +490 -0
  228. package/Server/Utils/Monitor/Criteria/APIRequestCriteria.ts +1 -1
  229. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +1 -1
  230. package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +1 -1
  231. package/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.ts +1 -1
  232. package/Server/Utils/Monitor/Criteria/ServerMonitorCriteria.ts +2 -2
  233. package/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.ts +182 -0
  234. package/Server/Utils/Monitor/MonitorAlert.ts +26 -0
  235. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +13 -0
  236. package/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.ts +1 -1
  237. package/Server/Utils/Monitor/MonitorIncident.ts +69 -0
  238. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +37 -0
  239. package/Server/Utils/PushNotificationUtil.ts +31 -0
  240. package/Server/Utils/WhatsAppTemplateUtil.ts +17 -0
  241. package/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.ts +18 -0
  242. package/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.ts +702 -0
  243. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +20 -0
  244. package/Server/Utils/Workspace/Slack/Actions/ActionTypes.ts +11 -0
  245. package/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.ts +918 -0
  246. package/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.ts +120 -0
  247. package/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.ts +74 -0
  248. package/Tests/Server/Services/AlertGroupingEngineService.test.ts +11 -6
  249. package/Types/Email/EmailTemplateType.ts +7 -0
  250. package/Types/Incident/IncidentSlaStatus.ts +9 -0
  251. package/Types/Monitor/CriteriaAlert.ts +6 -0
  252. package/Types/Monitor/CriteriaFilter.ts +24 -4
  253. package/Types/Monitor/CriteriaIncident.ts +18 -0
  254. package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
  255. package/Types/Monitor/MonitorStep.ts +37 -0
  256. package/Types/Monitor/MonitorStepSnmpMonitor.ts +102 -0
  257. package/Types/Monitor/MonitorType.ts +15 -2
  258. package/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.ts +8 -0
  259. package/Types/Monitor/SnmpMonitor/SnmpDataType.ts +21 -0
  260. package/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.ts +16 -0
  261. package/Types/Monitor/SnmpMonitor/SnmpOid.ts +60 -0
  262. package/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.ts +7 -0
  263. package/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.ts +7 -0
  264. package/Types/Monitor/SnmpMonitor/SnmpV3Auth.ts +12 -0
  265. package/Types/Monitor/SnmpMonitor/SnmpVersion.ts +7 -0
  266. package/Types/NotificationRule/NotificationRuleType.ts +1 -0
  267. package/Types/NotificationSetting/NotificationSettingEventType.ts +8 -0
  268. package/Types/Permission.ts +554 -0
  269. package/Types/Probe/ProbeMonitorResponse.ts +2 -0
  270. package/Types/UserNotification/UserNotificationEventType.ts +1 -0
  271. package/Types/WhatsApp/WhatsAppTemplates.ts +29 -0
  272. package/Types/Workspace/NotificationRules/EventType.ts +1 -0
  273. package/Types/Workspace/NotificationRules/NotificationRuleCondition.ts +38 -1
  274. package/UI/Components/CollapsibleSection/CollapsibleSection.tsx +153 -0
  275. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +17 -10
  276. package/UI/Components/Dropdown/Dropdown.tsx +2 -0
  277. package/UI/Components/Forms/Fields/FormField.tsx +22 -0
  278. package/UI/Components/Forms/Fields/IconPicker.tsx +175 -0
  279. package/UI/Components/Forms/Types/FormFieldSchemaType.ts +1 -0
  280. package/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.ts +2 -0
  281. package/UI/Components/HeaderAlert/NotificationBell/NotificationBell.tsx +96 -0
  282. package/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.tsx +112 -0
  283. package/UI/Components/HeaderAlert/NotificationBell/NotificationBellItem.tsx +78 -0
  284. package/UI/Components/HeaderAlert/NotificationBell/NotificationBellSection.tsx +40 -0
  285. package/UI/Components/HeaderAlert/NotificationBell/NotificationItem.ts +13 -0
  286. package/UI/Components/HeaderAlert/NotificationBell/index.ts +5 -0
  287. package/UI/Components/Icon/Icon.tsx +23 -0
  288. package/UI/Components/MemberRoleAssignment/MemberRoleAssignment.tsx +608 -0
  289. package/UI/Components/RoleLabel/RoleLabel.tsx +70 -0
  290. package/UI/Components/Types/FieldType.ts +1 -0
  291. package/Utils/Monitor/MonitorMetricType.ts +2 -1
  292. package/build/dist/Models/DatabaseModels/AIAgent.js +20 -10
  293. package/build/dist/Models/DatabaseModels/AIAgent.js.map +1 -1
  294. package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js +12 -0
  295. package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js.map +1 -1
  296. package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js +12 -0
  297. package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js.map +1 -1
  298. package/build/dist/Models/DatabaseModels/AIAgentTask.js +24 -2
  299. package/build/dist/Models/DatabaseModels/AIAgentTask.js.map +1 -1
  300. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js +19 -2
  301. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js.map +1 -1
  302. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +29 -2
  303. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
  304. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js +11 -0
  305. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js.map +1 -1
  306. package/build/dist/Models/DatabaseModels/Alert.js +31 -0
  307. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  308. package/build/dist/Models/DatabaseModels/AlertCustomField.js +10 -0
  309. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
  310. package/build/dist/Models/DatabaseModels/AlertEpisode.js +32 -0
  311. package/build/dist/Models/DatabaseModels/AlertEpisode.js.map +1 -1
  312. package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js +14 -0
  313. package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js.map +1 -1
  314. package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js +11 -0
  315. package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js.map +1 -1
  316. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js +17 -0
  317. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js.map +1 -1
  318. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js +12 -0
  319. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js.map +1 -1
  320. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js +12 -0
  321. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js.map +1 -1
  322. package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js +14 -0
  323. package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js.map +1 -1
  324. package/build/dist/Models/DatabaseModels/AlertFeed.js +14 -0
  325. package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
  326. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js +171 -0
  327. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js.map +1 -1
  328. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +11 -0
  329. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -1
  330. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js +8 -0
  331. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js.map +1 -1
  332. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +12 -0
  333. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -1
  334. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +12 -0
  335. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -1
  336. package/build/dist/Models/DatabaseModels/AlertSeverity.js +12 -0
  337. package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -1
  338. package/build/dist/Models/DatabaseModels/AlertState.js +14 -0
  339. package/build/dist/Models/DatabaseModels/AlertState.js.map +1 -1
  340. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +14 -0
  341. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -1
  342. package/build/dist/Models/DatabaseModels/ApiKey.js +10 -0
  343. package/build/dist/Models/DatabaseModels/ApiKey.js.map +1 -1
  344. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +11 -0
  345. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
  346. package/build/dist/Models/DatabaseModels/BillingInvoice.js +16 -0
  347. package/build/dist/Models/DatabaseModels/BillingInvoice.js.map +1 -1
  348. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js +12 -0
  349. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js.map +1 -1
  350. package/build/dist/Models/DatabaseModels/CallLog.js +29 -0
  351. package/build/dist/Models/DatabaseModels/CallLog.js.map +1 -1
  352. package/build/dist/Models/DatabaseModels/CodeRepository.js +18 -0
  353. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  354. package/build/dist/Models/DatabaseModels/Dashboard.js +12 -0
  355. package/build/dist/Models/DatabaseModels/Dashboard.js.map +1 -1
  356. package/build/dist/Models/DatabaseModels/DataMigration.js +1 -0
  357. package/build/dist/Models/DatabaseModels/DataMigration.js.map +1 -1
  358. package/build/dist/Models/DatabaseModels/Domain.js +11 -0
  359. package/build/dist/Models/DatabaseModels/Domain.js.map +1 -1
  360. package/build/dist/Models/DatabaseModels/EmailLog.js +30 -0
  361. package/build/dist/Models/DatabaseModels/EmailLog.js.map +1 -1
  362. package/build/dist/Models/DatabaseModels/Incident.js +122 -0
  363. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  364. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +10 -0
  365. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
  366. package/build/dist/Models/DatabaseModels/IncidentEpisode.js +1283 -0
  367. package/build/dist/Models/DatabaseModels/IncidentEpisode.js.map +1 -0
  368. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js +569 -0
  369. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js.map +1 -0
  370. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js +478 -0
  371. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js.map +1 -0
  372. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js +624 -0
  373. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js.map +1 -0
  374. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js +449 -0
  375. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js.map +1 -0
  376. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js +448 -0
  377. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js.map +1 -0
  378. package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js +531 -0
  379. package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js.map +1 -0
  380. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js +560 -0
  381. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js.map +1 -0
  382. package/build/dist/Models/DatabaseModels/IncidentFeed.js +16 -0
  383. package/build/dist/Models/DatabaseModels/IncidentFeed.js.map +1 -1
  384. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +1686 -0
  385. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -0
  386. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +11 -0
  387. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -1
  388. package/build/dist/Models/DatabaseModels/IncidentMember.js +566 -0
  389. package/build/dist/Models/DatabaseModels/IncidentMember.js.map +1 -0
  390. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js +8 -0
  391. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js.map +1 -1
  392. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js +12 -0
  393. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js.map +1 -1
  394. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js +12 -0
  395. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js.map +1 -1
  396. package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js +8 -0
  397. package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js.map +1 -1
  398. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +15 -0
  399. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
  400. package/build/dist/Models/DatabaseModels/IncidentRole.js +558 -0
  401. package/build/dist/Models/DatabaseModels/IncidentRole.js.map +1 -0
  402. package/build/dist/Models/DatabaseModels/IncidentSeverity.js +12 -0
  403. package/build/dist/Models/DatabaseModels/IncidentSeverity.js.map +1 -1
  404. package/build/dist/Models/DatabaseModels/IncidentSla.js +698 -0
  405. package/build/dist/Models/DatabaseModels/IncidentSla.js.map +1 -0
  406. package/build/dist/Models/DatabaseModels/IncidentSlaRule.js +895 -0
  407. package/build/dist/Models/DatabaseModels/IncidentSlaRule.js.map +1 -0
  408. package/build/dist/Models/DatabaseModels/IncidentState.js +15 -0
  409. package/build/dist/Models/DatabaseModels/IncidentState.js.map +1 -1
  410. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +17 -0
  411. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
  412. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +20 -0
  413. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
  414. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js +12 -0
  415. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js.map +1 -1
  416. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js +12 -0
  417. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js.map +1 -1
  418. package/build/dist/Models/DatabaseModels/IncomingCallLog.js +20 -0
  419. package/build/dist/Models/DatabaseModels/IncomingCallLog.js.map +1 -1
  420. package/build/dist/Models/DatabaseModels/IncomingCallLogItem.js +17 -0
  421. package/build/dist/Models/DatabaseModels/IncomingCallLogItem.js.map +1 -1
  422. package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js +22 -0
  423. package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js.map +1 -1
  424. package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js +15 -0
  425. package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js.map +1 -1
  426. package/build/dist/Models/DatabaseModels/Index.js +30 -0
  427. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  428. package/build/dist/Models/DatabaseModels/Label.js +11 -0
  429. package/build/dist/Models/DatabaseModels/Label.js.map +1 -1
  430. package/build/dist/Models/DatabaseModels/LlmLog.js +28 -0
  431. package/build/dist/Models/DatabaseModels/LlmLog.js.map +1 -1
  432. package/build/dist/Models/DatabaseModels/LlmProvider.js +18 -13
  433. package/build/dist/Models/DatabaseModels/LlmProvider.js.map +1 -1
  434. package/build/dist/Models/DatabaseModels/MetricType.js +11 -0
  435. package/build/dist/Models/DatabaseModels/MetricType.js.map +1 -1
  436. package/build/dist/Models/DatabaseModels/Monitor.js +34 -0
  437. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  438. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +10 -0
  439. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
  440. package/build/dist/Models/DatabaseModels/MonitorFeed.js +14 -0
  441. package/build/dist/Models/DatabaseModels/MonitorFeed.js.map +1 -1
  442. package/build/dist/Models/DatabaseModels/MonitorGroup.js +9 -0
  443. package/build/dist/Models/DatabaseModels/MonitorGroup.js.map +1 -1
  444. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js +12 -0
  445. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js.map +1 -1
  446. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js +12 -0
  447. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js.map +1 -1
  448. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js +9 -0
  449. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js.map +1 -1
  450. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js +12 -0
  451. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js.map +1 -1
  452. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js +12 -0
  453. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js.map +1 -1
  454. package/build/dist/Models/DatabaseModels/MonitorProbe.js +15 -0
  455. package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -1
  456. package/build/dist/Models/DatabaseModels/MonitorSecret.js +10 -0
  457. package/build/dist/Models/DatabaseModels/MonitorSecret.js.map +1 -1
  458. package/build/dist/Models/DatabaseModels/MonitorStatus.js +14 -0
  459. package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -1
  460. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +14 -0
  461. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -1
  462. package/build/dist/Models/DatabaseModels/MonitorTest.js +14 -0
  463. package/build/dist/Models/DatabaseModels/MonitorTest.js.map +1 -1
  464. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js +12 -0
  465. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js.map +1 -1
  466. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +10 -0
  467. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
  468. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js +11 -0
  469. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js.map +1 -1
  470. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js +11 -0
  471. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js.map +1 -1
  472. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js +11 -0
  473. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js.map +1 -1
  474. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js +11 -0
  475. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js.map +1 -1
  476. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +96 -0
  477. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  478. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +89 -0
  479. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
  480. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js +14 -0
  481. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js.map +1 -1
  482. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js +12 -0
  483. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js.map +1 -1
  484. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js +12 -0
  485. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js.map +1 -1
  486. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +17 -0
  487. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
  488. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +16 -0
  489. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
  490. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js +14 -0
  491. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js.map +1 -1
  492. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js +14 -0
  493. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js.map +1 -1
  494. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js +13 -0
  495. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js.map +1 -1
  496. package/build/dist/Models/DatabaseModels/Probe.js +20 -9
  497. package/build/dist/Models/DatabaseModels/Probe.js.map +1 -1
  498. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js +12 -0
  499. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js.map +1 -1
  500. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js +12 -0
  501. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js.map +1 -1
  502. package/build/dist/Models/DatabaseModels/Project.js +42 -3
  503. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  504. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js +14 -0
  505. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js.map +1 -1
  506. package/build/dist/Models/DatabaseModels/ProjectSCIM.js +14 -0
  507. package/build/dist/Models/DatabaseModels/ProjectSCIM.js.map +1 -1
  508. package/build/dist/Models/DatabaseModels/ProjectSCIMLog.js +14 -0
  509. package/build/dist/Models/DatabaseModels/ProjectSCIMLog.js.map +1 -1
  510. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js +23 -0
  511. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js.map +1 -1
  512. package/build/dist/Models/DatabaseModels/ProjectSso.js +17 -0
  513. package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
  514. package/build/dist/Models/DatabaseModels/ProjectUserProfile.js +371 -0
  515. package/build/dist/Models/DatabaseModels/ProjectUserProfile.js.map +1 -0
  516. package/build/dist/Models/DatabaseModels/PromoCode.js +5 -0
  517. package/build/dist/Models/DatabaseModels/PromoCode.js.map +1 -1
  518. package/build/dist/Models/DatabaseModels/PushNotificationLog.js +29 -0
  519. package/build/dist/Models/DatabaseModels/PushNotificationLog.js.map +1 -1
  520. package/build/dist/Models/DatabaseModels/Reseller.js +8 -4
  521. package/build/dist/Models/DatabaseModels/Reseller.js.map +1 -1
  522. package/build/dist/Models/DatabaseModels/ResellerPlan.js +1 -1
  523. package/build/dist/Models/DatabaseModels/ResellerPlan.js.map +1 -1
  524. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +28 -0
  525. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  526. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +10 -0
  527. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
  528. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js +14 -0
  529. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js.map +1 -1
  530. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +11 -0
  531. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -1
  532. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js +8 -0
  533. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js.map +1 -1
  534. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js +12 -0
  535. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js.map +1 -1
  536. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js +12 -0
  537. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js.map +1 -1
  538. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +15 -0
  539. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
  540. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js +16 -0
  541. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js.map +1 -1
  542. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +15 -0
  543. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
  544. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +26 -0
  545. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  546. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js +11 -0
  547. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js.map +1 -1
  548. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js +11 -0
  549. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js.map +1 -1
  550. package/build/dist/Models/DatabaseModels/Service.js +14 -0
  551. package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
  552. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js +15 -0
  553. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js.map +1 -1
  554. package/build/dist/Models/DatabaseModels/ServiceDependency.js +11 -0
  555. package/build/dist/Models/DatabaseModels/ServiceDependency.js.map +1 -1
  556. package/build/dist/Models/DatabaseModels/ServiceMonitor.js +11 -0
  557. package/build/dist/Models/DatabaseModels/ServiceMonitor.js.map +1 -1
  558. package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js +11 -0
  559. package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js.map +1 -1
  560. package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js +11 -0
  561. package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js.map +1 -1
  562. package/build/dist/Models/DatabaseModels/SmsLog.js +29 -0
  563. package/build/dist/Models/DatabaseModels/SmsLog.js.map +1 -1
  564. package/build/dist/Models/DatabaseModels/StatusPage.js +65 -0
  565. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  566. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +17 -0
  567. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
  568. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js +13 -0
  569. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js.map +1 -1
  570. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +10 -0
  571. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
  572. package/build/dist/Models/DatabaseModels/StatusPageDomain.js +18 -0
  573. package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -1
  574. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js +11 -0
  575. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js.map +1 -1
  576. package/build/dist/Models/DatabaseModels/StatusPageGroup.js +15 -0
  577. package/build/dist/Models/DatabaseModels/StatusPageGroup.js.map +1 -1
  578. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js +11 -0
  579. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js.map +1 -1
  580. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js +10 -0
  581. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js.map +1 -1
  582. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js +12 -0
  583. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js.map +1 -1
  584. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js +12 -0
  585. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js.map +1 -1
  586. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +11 -0
  587. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
  588. package/build/dist/Models/DatabaseModels/StatusPageResource.js +21 -0
  589. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  590. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js +14 -0
  591. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js.map +1 -1
  592. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js +15 -0
  593. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js.map +1 -1
  594. package/build/dist/Models/DatabaseModels/StatusPageSso.js +18 -0
  595. package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
  596. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js +21 -0
  597. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js.map +1 -1
  598. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js +12 -0
  599. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js.map +1 -1
  600. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js +10 -0
  601. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js.map +1 -1
  602. package/build/dist/Models/DatabaseModels/TableView.js +13 -0
  603. package/build/dist/Models/DatabaseModels/TableView.js.map +1 -1
  604. package/build/dist/Models/DatabaseModels/Team.js +12 -0
  605. package/build/dist/Models/DatabaseModels/Team.js.map +1 -1
  606. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js +10 -0
  607. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js.map +1 -1
  608. package/build/dist/Models/DatabaseModels/TeamMember.js +2 -0
  609. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  610. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +377 -0
  611. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -0
  612. package/build/dist/Models/DatabaseModels/TeamPermission.js +11 -0
  613. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
  614. package/build/dist/Models/DatabaseModels/TelemetryException.js +28 -0
  615. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  616. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +8 -0
  617. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
  618. package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js +14 -0
  619. package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js.map +1 -1
  620. package/build/dist/Models/DatabaseModels/User.js +2 -2
  621. package/build/dist/Models/DatabaseModels/User.js.map +1 -1
  622. package/build/dist/Models/DatabaseModels/UserOnCallLog.js +47 -0
  623. package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -1
  624. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +48 -0
  625. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
  626. package/build/dist/Models/DatabaseModels/WhatsAppLog.js +30 -0
  627. package/build/dist/Models/DatabaseModels/WhatsAppLog.js.map +1 -1
  628. package/build/dist/Models/DatabaseModels/Workflow.js +13 -0
  629. package/build/dist/Models/DatabaseModels/Workflow.js.map +1 -1
  630. package/build/dist/Models/DatabaseModels/WorkflowLog.js +9 -0
  631. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
  632. package/build/dist/Models/DatabaseModels/WorkflowVariable.js +12 -0
  633. package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
  634. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js +93 -0
  635. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js.map +1 -1
  636. package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js +12 -0
  637. package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js.map +1 -1
  638. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js +10 -0
  639. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  640. package/build/dist/Server/API/IncidentEpisodeAPI.js +97 -0
  641. package/build/dist/Server/API/IncidentEpisodeAPI.js.map +1 -0
  642. package/build/dist/Server/API/ProjectAPI.js +22 -0
  643. package/build/dist/Server/API/ProjectAPI.js.map +1 -1
  644. package/build/dist/Server/API/SlackAPI.js +18 -0
  645. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  646. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js +30 -10
  647. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js.map +1 -1
  648. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.js +256 -0
  649. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.js.map +1 -0
  650. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.js +96 -0
  651. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.js.map +1 -0
  652. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.js +25 -0
  653. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.js.map +1 -0
  654. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769712834410-MigrationName.js +48 -0
  655. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769712834410-MigrationName.js.map +1 -0
  656. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769719135546-MigrationName.js +18 -0
  657. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769719135546-MigrationName.js.map +1 -0
  658. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769719826928-MigrationName.js +18 -0
  659. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769719826928-MigrationName.js.map +1 -0
  660. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769723982900-MigrationName.js +112 -0
  661. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769723982900-MigrationName.js.map +1 -0
  662. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769772215532-MigrationName.js +38 -0
  663. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769772215532-MigrationName.js.map +1 -0
  664. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769774527481-MigrationName.js +16 -0
  665. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769774527481-MigrationName.js.map +1 -0
  666. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769780297584-MigrationName.js +92 -0
  667. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769780297584-MigrationName.js.map +1 -0
  668. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769802715014-MigrationName.js +12 -0
  669. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769802715014-MigrationName.js.map +1 -0
  670. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +22 -0
  671. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  672. package/build/dist/Server/Services/AlertGroupingEngineService.js +72 -4
  673. package/build/dist/Server/Services/AlertGroupingEngineService.js.map +1 -1
  674. package/build/dist/Server/Services/BillingService.js +1 -2
  675. package/build/dist/Server/Services/BillingService.js.map +1 -1
  676. package/build/dist/Server/Services/CallService.js.map +1 -1
  677. package/build/dist/Server/Services/IncidentEpisodeFeedService.js +83 -0
  678. package/build/dist/Server/Services/IncidentEpisodeFeedService.js.map +1 -0
  679. package/build/dist/Server/Services/IncidentEpisodeInternalNoteService.js +70 -0
  680. package/build/dist/Server/Services/IncidentEpisodeInternalNoteService.js.map +1 -0
  681. package/build/dist/Server/Services/IncidentEpisodeMemberService.js +298 -0
  682. package/build/dist/Server/Services/IncidentEpisodeMemberService.js.map +1 -0
  683. package/build/dist/Server/Services/IncidentEpisodeOwnerTeamService.js +9 -0
  684. package/build/dist/Server/Services/IncidentEpisodeOwnerTeamService.js.map +1 -0
  685. package/build/dist/Server/Services/IncidentEpisodeOwnerUserService.js +9 -0
  686. package/build/dist/Server/Services/IncidentEpisodeOwnerUserService.js.map +1 -0
  687. package/build/dist/Server/Services/IncidentEpisodeRoleMemberService.js +209 -0
  688. package/build/dist/Server/Services/IncidentEpisodeRoleMemberService.js.map +1 -0
  689. package/build/dist/Server/Services/IncidentEpisodeService.js +933 -0
  690. package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -0
  691. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js +498 -0
  692. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js.map +1 -0
  693. package/build/dist/Server/Services/IncidentGroupingEngineService.js +899 -0
  694. package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -0
  695. package/build/dist/Server/Services/IncidentGroupingRuleService.js +13 -0
  696. package/build/dist/Server/Services/IncidentGroupingRuleService.js.map +1 -0
  697. package/build/dist/Server/Services/IncidentMemberService.js +223 -0
  698. package/build/dist/Server/Services/IncidentMemberService.js.map +1 -0
  699. package/build/dist/Server/Services/IncidentRoleService.js +59 -0
  700. package/build/dist/Server/Services/IncidentRoleService.js.map +1 -0
  701. package/build/dist/Server/Services/IncidentService.js +37 -0
  702. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  703. package/build/dist/Server/Services/IncidentSlaRuleService.js +303 -0
  704. package/build/dist/Server/Services/IncidentSlaRuleService.js.map +1 -0
  705. package/build/dist/Server/Services/IncidentSlaService.js +471 -0
  706. package/build/dist/Server/Services/IncidentSlaService.js.map +1 -0
  707. package/build/dist/Server/Services/IncidentStateTimelineService.js +154 -2
  708. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  709. package/build/dist/Server/Services/Index.js +30 -0
  710. package/build/dist/Server/Services/Index.js.map +1 -1
  711. package/build/dist/Server/Services/MailService.js.map +1 -1
  712. package/build/dist/Server/Services/MonitorService.js +9 -1
  713. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  714. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +10 -0
  715. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
  716. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js +48 -2
  717. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js.map +1 -1
  718. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js +20 -1
  719. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js.map +1 -1
  720. package/build/dist/Server/Services/OnCallDutyPolicyService.js +8 -0
  721. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  722. package/build/dist/Server/Services/ProjectService.js +73 -1
  723. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  724. package/build/dist/Server/Services/ProjectUserProfileService.js +9 -0
  725. package/build/dist/Server/Services/ProjectUserProfileService.js.map +1 -0
  726. package/build/dist/Server/Services/SmsService.js.map +1 -1
  727. package/build/dist/Server/Services/TeamMemberCustomFieldService.js +9 -0
  728. package/build/dist/Server/Services/TeamMemberCustomFieldService.js.map +1 -0
  729. package/build/dist/Server/Services/UserNotificationRuleService.js +39 -2
  730. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  731. package/build/dist/Server/Services/UserNotificationSettingService.js +9 -0
  732. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  733. package/build/dist/Server/Services/UserOnCallLogService.js +39 -3
  734. package/build/dist/Server/Services/UserOnCallLogService.js.map +1 -1
  735. package/build/dist/Server/Services/WhatsAppService.js.map +1 -1
  736. package/build/dist/Server/Services/WorkspaceNotificationLogService.js +12 -0
  737. package/build/dist/Server/Services/WorkspaceNotificationLogService.js.map +1 -1
  738. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +95 -1
  739. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  740. package/build/dist/Server/Utils/AI/IncidentEpisodeAIContextBuilder.js +402 -0
  741. package/build/dist/Server/Utils/AI/IncidentEpisodeAIContextBuilder.js.map +1 -0
  742. package/build/dist/Server/Utils/Monitor/Criteria/APIRequestCriteria.js +1 -1
  743. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +1 -1
  744. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +1 -1
  745. package/build/dist/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.js +1 -1
  746. package/build/dist/Server/Utils/Monitor/Criteria/ServerMonitorCriteria.js +2 -2
  747. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js +135 -0
  748. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js.map +1 -0
  749. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +23 -7
  750. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  751. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +10 -0
  752. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  753. package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js +1 -1
  754. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +52 -7
  755. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  756. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +26 -0
  757. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  758. package/build/dist/Server/Utils/PushNotificationUtil.js +20 -0
  759. package/build/dist/Server/Utils/PushNotificationUtil.js.map +1 -1
  760. package/build/dist/Server/Utils/WhatsAppTemplateUtil.js +10 -0
  761. package/build/dist/Server/Utils/WhatsAppTemplateUtil.js.map +1 -1
  762. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.js +17 -0
  763. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.js.map +1 -1
  764. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js +547 -0
  765. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js.map +1 -0
  766. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +15 -0
  767. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  768. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js +10 -0
  769. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js.map +1 -1
  770. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js +651 -0
  771. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js.map +1 -0
  772. package/build/dist/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.js +100 -0
  773. package/build/dist/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.js.map +1 -0
  774. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.js +70 -0
  775. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.js.map +1 -0
  776. package/build/dist/Tests/Server/Services/AlertGroupingEngineService.test.js +8 -6
  777. package/build/dist/Tests/Server/Services/AlertGroupingEngineService.test.js.map +1 -1
  778. package/build/dist/Types/Email/EmailTemplateType.js +6 -0
  779. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  780. package/build/dist/Types/Incident/IncidentSlaStatus.js +10 -0
  781. package/build/dist/Types/Incident/IncidentSlaStatus.js.map +1 -0
  782. package/build/dist/Types/Monitor/CriteriaAlert.js +3 -0
  783. package/build/dist/Types/Monitor/CriteriaAlert.js.map +1 -1
  784. package/build/dist/Types/Monitor/CriteriaFilter.js +16 -3
  785. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  786. package/build/dist/Types/Monitor/CriteriaIncident.js +7 -0
  787. package/build/dist/Types/Monitor/CriteriaIncident.js.map +1 -1
  788. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
  789. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  790. package/build/dist/Types/Monitor/MonitorStep.js +26 -0
  791. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  792. package/build/dist/Types/Monitor/MonitorStepSnmpMonitor.js +77 -0
  793. package/build/dist/Types/Monitor/MonitorStepSnmpMonitor.js.map +1 -0
  794. package/build/dist/Types/Monitor/MonitorType.js +13 -2
  795. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  796. package/build/dist/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.js +9 -0
  797. package/build/dist/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.js.map +1 -0
  798. package/build/dist/Types/Monitor/SnmpMonitor/SnmpDataType.js +22 -0
  799. package/build/dist/Types/Monitor/SnmpMonitor/SnmpDataType.js.map +1 -0
  800. package/build/dist/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.js +2 -0
  801. package/build/dist/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.js.map +1 -0
  802. package/build/dist/Types/Monitor/SnmpMonitor/SnmpOid.js +55 -0
  803. package/build/dist/Types/Monitor/SnmpMonitor/SnmpOid.js.map +1 -0
  804. package/build/dist/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.js +8 -0
  805. package/build/dist/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.js.map +1 -0
  806. package/build/dist/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.js +8 -0
  807. package/build/dist/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.js.map +1 -0
  808. package/build/dist/Types/Monitor/SnmpMonitor/SnmpV3Auth.js +2 -0
  809. package/build/dist/Types/Monitor/SnmpMonitor/SnmpV3Auth.js.map +1 -0
  810. package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js +8 -0
  811. package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js.map +1 -0
  812. package/build/dist/Types/NotificationRule/NotificationRuleType.js +1 -0
  813. package/build/dist/Types/NotificationRule/NotificationRuleType.js.map +1 -1
  814. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js +6 -0
  815. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js.map +1 -1
  816. package/build/dist/Types/Permission.js +470 -0
  817. package/build/dist/Types/Permission.js.map +1 -1
  818. package/build/dist/Types/UserNotification/UserNotificationEventType.js +1 -0
  819. package/build/dist/Types/UserNotification/UserNotificationEventType.js.map +1 -1
  820. package/build/dist/Types/WhatsApp/WhatsAppTemplates.js +18 -0
  821. package/build/dist/Types/WhatsApp/WhatsAppTemplates.js.map +1 -1
  822. package/build/dist/Types/Workspace/NotificationRules/EventType.js +1 -0
  823. package/build/dist/Types/Workspace/NotificationRules/EventType.js.map +1 -1
  824. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js +33 -1
  825. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js.map +1 -1
  826. package/build/dist/UI/Components/CollapsibleSection/CollapsibleSection.js +73 -0
  827. package/build/dist/UI/Components/CollapsibleSection/CollapsibleSection.js.map +1 -0
  828. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +12 -9
  829. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  830. package/build/dist/UI/Components/Dropdown/Dropdown.js +1 -1
  831. package/build/dist/UI/Components/Dropdown/Dropdown.js.map +1 -1
  832. package/build/dist/UI/Components/Forms/Fields/FormField.js +9 -0
  833. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  834. package/build/dist/UI/Components/Forms/Fields/IconPicker.js +64 -0
  835. package/build/dist/UI/Components/Forms/Fields/IconPicker.js.map +1 -0
  836. package/build/dist/UI/Components/Forms/Types/FormFieldSchemaType.js +1 -0
  837. package/build/dist/UI/Components/Forms/Types/FormFieldSchemaType.js.map +1 -1
  838. package/build/dist/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.js +2 -0
  839. package/build/dist/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.js.map +1 -1
  840. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBell.js +50 -0
  841. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBell.js.map +1 -0
  842. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js +38 -0
  843. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js.map +1 -0
  844. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellItem.js +51 -0
  845. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellItem.js.map +1 -0
  846. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellSection.js +24 -0
  847. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellSection.js.map +1 -0
  848. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationItem.js +2 -0
  849. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationItem.js.map +1 -0
  850. package/build/dist/UI/Components/HeaderAlert/NotificationBell/index.js +5 -0
  851. package/build/dist/UI/Components/HeaderAlert/NotificationBell/index.js.map +1 -0
  852. package/build/dist/UI/Components/Icon/Icon.js +11 -0
  853. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  854. package/build/dist/UI/Components/MemberRoleAssignment/MemberRoleAssignment.js +264 -0
  855. package/build/dist/UI/Components/MemberRoleAssignment/MemberRoleAssignment.js.map +1 -0
  856. package/build/dist/UI/Components/RoleLabel/RoleLabel.js +40 -0
  857. package/build/dist/UI/Components/RoleLabel/RoleLabel.js.map +1 -0
  858. package/build/dist/UI/Components/Types/FieldType.js +1 -0
  859. package/build/dist/UI/Components/Types/FieldType.js.map +1 -1
  860. package/build/dist/Utils/Monitor/MonitorMetricType.js +2 -1
  861. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  862. package/package.json +1 -1
@@ -14,11 +14,13 @@ import { OnCreate, OnDelete, OnFind, OnUpdate } from "../Types/Database/Hooks";
14
14
  import QueryHelper from "../Types/Database/QueryHelper";
15
15
  import UpdateBy from "../Types/Database/UpdateBy";
16
16
  import logger from "../Utils/Logger";
17
+ import Errors from "../Utils/Errors";
17
18
  import AccessTokenService from "./AccessTokenService";
18
19
  import BillingService from "./BillingService";
19
20
  import DatabaseService from "./DatabaseService";
20
21
  import IncidentSeverityService from "./IncidentSeverityService";
21
22
  import IncidentStateService from "./IncidentStateService";
23
+ import IncidentRoleService from "./IncidentRoleService";
22
24
  import MailService from "./MailService";
23
25
  import MonitorStatusService from "./MonitorStatusService";
24
26
  import NotificationService from "./NotificationService";
@@ -36,9 +38,13 @@ import SubscriptionPlan, {
36
38
  import SubscriptionStatus from "../../Types/Billing/SubscriptionStatus";
37
39
  import {
38
40
  Black,
41
+ Blue500,
42
+ Gray500,
39
43
  Green,
40
44
  Moroon500,
45
+ Purple500,
41
46
  Red,
47
+ Teal500,
42
48
  Yellow,
43
49
  Yellow500,
44
50
  } from "../../Types/BrandColors";
@@ -48,10 +54,12 @@ import OneUptimeDate from "../../Types/Date";
48
54
  import EmailTemplateType from "../../Types/Email/EmailTemplateType";
49
55
  import BadDataException from "../../Types/Exception/BadDataException";
50
56
  import NotAuthorizedException from "../../Types/Exception/NotAuthorizedException";
57
+ import IconProp from "../../Types/Icon/IconProp";
51
58
  import ObjectID from "../../Types/ObjectID";
52
59
  import Permission from "../../Types/Permission";
53
60
  import IncidentSeverity from "../../Models/DatabaseModels/IncidentSeverity";
54
61
  import IncidentState from "../../Models/DatabaseModels/IncidentState";
62
+ import IncidentRole from "../../Models/DatabaseModels/IncidentRole";
55
63
  import MonitorStatus from "../../Models/DatabaseModels/MonitorStatus";
56
64
  import Model from "../../Models/DatabaseModels/Project";
57
65
  import PromoCode from "../../Models/DatabaseModels/PromoCode";
@@ -387,6 +395,7 @@ export class ProjectService extends DatabaseService<Model> {
387
395
  paymentProviderSubscriptionSeats: true,
388
396
  paymentProviderPlanId: true,
389
397
  trialEndsAt: true,
398
+ paymentProviderCustomerId: true,
390
399
  },
391
400
  props: {
392
401
  isRoot: true,
@@ -407,6 +416,19 @@ export class ProjectService extends DatabaseService<Model> {
407
416
  );
408
417
  }
409
418
 
419
+ // Check if customer has payment methods before attempting to change plan
420
+ if (!project.paymentProviderCustomerId) {
421
+ throw new BadDataException("Payment Provider customer not found");
422
+ }
423
+
424
+ const hasPaymentMethods: boolean = await BillingService.hasPaymentMethods(
425
+ project.paymentProviderCustomerId,
426
+ );
427
+
428
+ if (!hasPaymentMethods) {
429
+ throw new BadDataException(Errors.BillingService.NO_PAYMENTS_METHODS);
430
+ }
431
+
410
432
  const plan: SubscriptionPlan | undefined =
411
433
  SubscriptionPlan.getSubscriptionPlanById(
412
434
  params.paymentProviderPlanId,
@@ -689,6 +711,7 @@ export class ProjectService extends DatabaseService<Model> {
689
711
  createdItem = await this.addDefaultIncidentState(createdItem);
690
712
  createdItem = await this.addDefaultScheduledMaintenanceState(createdItem);
691
713
  createdItem = await this.addDefaultAlertState(createdItem);
714
+ createdItem = await this.addDefaultIncidentRoles(createdItem);
692
715
 
693
716
  if (NotificationSlackWebhookOnCreateProject) {
694
717
  // fetch project again.
@@ -928,6 +951,73 @@ export class ProjectService extends DatabaseService<Model> {
928
951
  return createdItem;
929
952
  }
930
953
 
954
+ public async addDefaultIncidentRoles(createdItem: Model): Promise<Model> {
955
+ let incidentCommander: IncidentRole = new IncidentRole();
956
+ incidentCommander.name = "Incident Commander";
957
+ incidentCommander.description =
958
+ "Primary decision maker during an incident. Responsible for coordinating the response and making final decisions.";
959
+ incidentCommander.color = Purple500;
960
+ incidentCommander.roleIcon = IconProp.ShieldCheck;
961
+ incidentCommander.projectId = createdItem.id!;
962
+ incidentCommander.isPrimaryRole = true;
963
+ incidentCommander.isDeleteable = false;
964
+
965
+ incidentCommander = await IncidentRoleService.create({
966
+ data: incidentCommander,
967
+ props: {
968
+ isRoot: true,
969
+ },
970
+ });
971
+
972
+ let responder: IncidentRole = new IncidentRole();
973
+ responder.name = "Responder";
974
+ responder.description =
975
+ "Active participant in incident resolution. Performs hands-on work to resolve the incident.";
976
+ responder.color = Blue500;
977
+ responder.roleIcon = IconProp.Wrench;
978
+ responder.projectId = createdItem.id!;
979
+
980
+ responder = await IncidentRoleService.create({
981
+ data: responder,
982
+ props: {
983
+ isRoot: true,
984
+ },
985
+ });
986
+
987
+ let communicationsLead: IncidentRole = new IncidentRole();
988
+ communicationsLead.name = "Communications Lead";
989
+ communicationsLead.description =
990
+ "Handles stakeholder communication and status updates during an incident.";
991
+ communicationsLead.color = Teal500;
992
+ communicationsLead.roleIcon = IconProp.Announcement;
993
+ communicationsLead.projectId = createdItem.id!;
994
+
995
+ communicationsLead = await IncidentRoleService.create({
996
+ data: communicationsLead,
997
+ props: {
998
+ isRoot: true,
999
+ },
1000
+ });
1001
+
1002
+ let observer: IncidentRole = new IncidentRole();
1003
+ observer.name = "Observer";
1004
+ observer.description =
1005
+ "Read-only participant who monitors the incident without active involvement.";
1006
+ observer.color = Gray500;
1007
+ observer.roleIcon = IconProp.Activity;
1008
+ observer.projectId = createdItem.id!;
1009
+ observer.canAssignMultipleUsers = true;
1010
+
1011
+ observer = await IncidentRoleService.create({
1012
+ data: observer,
1013
+ props: {
1014
+ isRoot: true,
1015
+ },
1016
+ });
1017
+
1018
+ return createdItem;
1019
+ }
1020
+
931
1021
  private async addDefaultMonitorStatus(createdItem: Model): Promise<Model> {
932
1022
  let operationalStatus: MonitorStatus = new MonitorStatus();
933
1023
  operationalStatus.name = "Operational";
@@ -0,0 +1,9 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/ProjectUserProfile";
3
+
4
+ export class Service extends DatabaseService<Model> {
5
+ public constructor() {
6
+ super(Model);
7
+ }
8
+ }
9
+ export default new Service();
@@ -29,6 +29,7 @@ export class SmsService extends BaseService {
29
29
  incidentId?: ObjectID | undefined;
30
30
  alertId?: ObjectID | undefined;
31
31
  alertEpisodeId?: ObjectID | undefined;
32
+ incidentEpisodeId?: ObjectID | undefined;
32
33
  scheduledMaintenanceId?: ObjectID | undefined;
33
34
  statusPageId?: ObjectID | undefined;
34
35
  statusPageAnnouncementId?: ObjectID | undefined;
@@ -0,0 +1,9 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/TeamMemberCustomField";
3
+
4
+ export class Service extends DatabaseService<Model> {
5
+ public constructor() {
6
+ super(Model);
7
+ }
8
+ }
9
+ export default new Service();
@@ -56,6 +56,8 @@ import AlertEpisode from "../../Models/DatabaseModels/AlertEpisode";
56
56
  import AlertEpisodeService from "./AlertEpisodeService";
57
57
  import AlertEpisodeMember from "../../Models/DatabaseModels/AlertEpisodeMember";
58
58
  import AlertEpisodeMemberService from "./AlertEpisodeMemberService";
59
+ import IncidentEpisode from "../../Models/DatabaseModels/IncidentEpisode";
60
+ import IncidentEpisodeService from "./IncidentEpisodeService";
59
61
  import WorkspaceNotificationRule from "../../Models/DatabaseModels/WorkspaceNotificationRule";
60
62
  import WorkspaceNotificationRuleService from "./WorkspaceNotificationRuleService";
61
63
  import PushNotificationService from "./PushNotificationService";
@@ -79,6 +81,7 @@ export class Service extends DatabaseService<Model> {
79
81
  triggeredByIncidentId?: ObjectID | undefined;
80
82
  triggeredByAlertId?: ObjectID | undefined;
81
83
  triggeredByAlertEpisodeId?: ObjectID | undefined;
84
+ triggeredByIncidentEpisodeId?: ObjectID | undefined;
82
85
  userNotificationEventType: UserNotificationEventType;
83
86
  onCallPolicyExecutionLogId?: ObjectID | undefined;
84
87
  onCallPolicyId: ObjectID | undefined;
@@ -212,6 +215,11 @@ export class Service extends DatabaseService<Model> {
212
215
  options.triggeredByAlertEpisodeId;
213
216
  }
214
217
 
218
+ if (options.triggeredByIncidentEpisodeId) {
219
+ logTimelineItem.triggeredByIncidentEpisodeId =
220
+ options.triggeredByIncidentEpisodeId;
221
+ }
222
+
215
223
  if (options.onCallDutyPolicyExecutionLogTimelineId) {
216
224
  logTimelineItem.onCallDutyPolicyExecutionLogTimelineId =
217
225
  options.onCallDutyPolicyExecutionLogTimelineId;
@@ -312,9 +320,41 @@ export class Service extends DatabaseService<Model> {
312
320
  });
313
321
  }
314
322
 
315
- if (!incident && !alert && !alertEpisode) {
323
+ let incidentEpisode: IncidentEpisode | null = null;
324
+
325
+ if (
326
+ options.userNotificationEventType ===
327
+ UserNotificationEventType.IncidentEpisodeCreated &&
328
+ options.triggeredByIncidentEpisodeId
329
+ ) {
330
+ incidentEpisode = await IncidentEpisodeService.findOneById({
331
+ id: options.triggeredByIncidentEpisodeId!,
332
+ props: {
333
+ isRoot: true,
334
+ },
335
+ select: {
336
+ _id: true,
337
+ title: true,
338
+ description: true,
339
+ projectId: true,
340
+ project: {
341
+ name: true,
342
+ },
343
+ currentIncidentState: {
344
+ name: true,
345
+ },
346
+ incidentSeverity: {
347
+ name: true,
348
+ },
349
+ episodeNumber: true,
350
+ rootCause: true,
351
+ },
352
+ });
353
+ }
354
+
355
+ if (!incident && !alert && !alertEpisode && !incidentEpisode) {
316
356
  throw new BadDataException(
317
- "Incident, Alert, or Alert Episode not found.",
357
+ "Incident, Alert, Alert Episode, or Incident Episode not found.",
318
358
  );
319
359
  }
320
360
 
@@ -1969,6 +2009,7 @@ export class Service extends DatabaseService<Model> {
1969
2009
  triggeredByIncidentId?: ObjectID | undefined;
1970
2010
  triggeredByAlertId?: ObjectID | undefined;
1971
2011
  triggeredByAlertEpisodeId?: ObjectID | undefined;
2012
+ triggeredByIncidentEpisodeId?: ObjectID | undefined;
1972
2013
  userNotificationEventType: UserNotificationEventType;
1973
2014
  onCallPolicyExecutionLogId?: ObjectID | undefined;
1974
2015
  onCallPolicyId: ObjectID | undefined;
@@ -1998,6 +2039,11 @@ export class Service extends DatabaseService<Model> {
1998
2039
  options.triggeredByAlertEpisodeId;
1999
2040
  }
2000
2041
 
2042
+ if (options.triggeredByIncidentEpisodeId) {
2043
+ userOnCallLog.triggeredByIncidentEpisodeId =
2044
+ options.triggeredByIncidentEpisodeId;
2045
+ }
2046
+
2001
2047
  userOnCallLog.userNotificationEventType = options.userNotificationEventType;
2002
2048
 
2003
2049
  if (options.onCallPolicyExecutionLogId) {
@@ -50,6 +50,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
50
50
  incidentId?: ObjectID | undefined;
51
51
  alertId?: ObjectID | undefined;
52
52
  alertEpisodeId?: ObjectID | undefined;
53
+ incidentEpisodeId?: ObjectID | undefined;
53
54
  scheduledMaintenanceId?: ObjectID | undefined;
54
55
  statusPageId?: ObjectID | undefined;
55
56
  statusPageAnnouncementId?: ObjectID | undefined;
@@ -115,6 +116,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
115
116
  incidentId: data.incidentId,
116
117
  alertId: data.alertId,
117
118
  alertEpisodeId: data.alertEpisodeId,
119
+ incidentEpisodeId: data.incidentEpisodeId,
118
120
  scheduledMaintenanceId: data.scheduledMaintenanceId,
119
121
  statusPageId: data.statusPageId,
120
122
  statusPageAnnouncementId: data.statusPageAnnouncementId,
@@ -161,6 +163,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
161
163
  incidentId: data.incidentId,
162
164
  alertId: data.alertId,
163
165
  alertEpisodeId: data.alertEpisodeId,
166
+ incidentEpisodeId: data.incidentEpisodeId,
164
167
  scheduledMaintenanceId: data.scheduledMaintenanceId,
165
168
  statusPageId: data.statusPageId,
166
169
  statusPageAnnouncementId: data.statusPageAnnouncementId,
@@ -214,6 +217,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
214
217
  incidentId: data.incidentId,
215
218
  alertId: data.alertId,
216
219
  alertEpisodeId: data.alertEpisodeId,
220
+ incidentEpisodeId: data.incidentEpisodeId,
217
221
  scheduledMaintenanceId: data.scheduledMaintenanceId,
218
222
  statusPageId: data.statusPageId,
219
223
  statusPageAnnouncementId: data.statusPageAnnouncementId,
@@ -259,6 +263,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
259
263
  incidentId: data.incidentId,
260
264
  alertId: data.alertId,
261
265
  alertEpisodeId: data.alertEpisodeId,
266
+ incidentEpisodeId: data.incidentEpisodeId,
262
267
  scheduledMaintenanceId: data.scheduledMaintenanceId,
263
268
  statusPageId: data.statusPageId,
264
269
  statusPageAnnouncementId: data.statusPageAnnouncementId,
@@ -346,6 +351,7 @@ export class Service extends DatabaseService<UserNotificationSetting> {
346
351
  await this.addOnCallNotificationSettings(userId, projectId);
347
352
  await this.addAlertNotificationSettings(userId, projectId);
348
353
  await this.addAlertEpisodeNotificationSettings(userId, projectId);
354
+ await this.addIncidentEpisodeNotificationSettings(userId, projectId);
349
355
  }
350
356
 
351
357
  private async addProbeOwnerNotificationSettings(
@@ -474,6 +480,23 @@ export class Service extends DatabaseService<UserNotificationSetting> {
474
480
  );
475
481
  }
476
482
 
483
+ private async addIncidentEpisodeNotificationSettings(
484
+ userId: ObjectID,
485
+ projectId: ObjectID,
486
+ ): Promise<void> {
487
+ await this.addNotificationSettingIfNotExists(
488
+ userId,
489
+ projectId,
490
+ NotificationSettingEventType.SEND_INCIDENT_EPISODE_CREATED_OWNER_NOTIFICATION,
491
+ );
492
+
493
+ await this.addNotificationSettingIfNotExists(
494
+ userId,
495
+ projectId,
496
+ NotificationSettingEventType.SEND_INCIDENT_EPISODE_STATE_CHANGED_OWNER_NOTIFICATION,
497
+ );
498
+ }
499
+
477
500
  private async addNotificationSettingIfNotExists(
478
501
  userId: ObjectID,
479
502
  projectId: ObjectID,
@@ -21,6 +21,8 @@ import Alert from "../../Models/DatabaseModels/Alert";
21
21
  import AlertService from "./AlertService";
22
22
  import AlertEpisode from "../../Models/DatabaseModels/AlertEpisode";
23
23
  import AlertEpisodeService from "./AlertEpisodeService";
24
+ import IncidentEpisode from "../../Models/DatabaseModels/IncidentEpisode";
25
+ import IncidentEpisodeService from "./IncidentEpisodeService";
24
26
 
25
27
  export class Service extends DatabaseService<Model> {
26
28
  public constructor() {
@@ -206,6 +208,34 @@ export class Service extends DatabaseService<Model> {
206
208
  });
207
209
  }
208
210
 
211
+ // get rule count for incident episodes.
212
+ let incidentEpisode: IncidentEpisode | null = null;
213
+ if (createdItem.triggeredByIncidentEpisodeId) {
214
+ incidentEpisode = await IncidentEpisodeService.findOneById({
215
+ id: createdItem.triggeredByIncidentEpisodeId,
216
+ props: {
217
+ isRoot: true,
218
+ },
219
+ select: {
220
+ incidentSeverityId: true,
221
+ },
222
+ });
223
+
224
+ ruleCount = await UserNotificationRuleService.countBy({
225
+ query: {
226
+ userId: createdItem.userId!,
227
+ projectId: createdItem.projectId!,
228
+ ruleType: notificationRuleType,
229
+ incidentSeverityId: incidentEpisode?.incidentSeverityId as ObjectID,
230
+ },
231
+ skip: 0,
232
+ limit: LIMIT_PER_PROJECT,
233
+ props: {
234
+ isRoot: true,
235
+ },
236
+ });
237
+ }
238
+
209
239
  if (ruleCount.toNumber() === 0) {
210
240
  // update this item to be processed.
211
241
  await this.updateOneById({
@@ -239,6 +269,7 @@ export class Service extends DatabaseService<Model> {
239
269
  /*
240
270
  * find immediate notification rule and alert the user.
241
271
  * Determine the alertSeverityId - can come from alert or alertEpisode
272
+ * Determine the incidentSeverityId - can come from incident or incidentEpisode
242
273
  */
243
274
  const alertSeverityIdForQuery: ObjectID | undefined =
244
275
  alert && alert.alertSeverityId
@@ -247,6 +278,13 @@ export class Service extends DatabaseService<Model> {
247
278
  ? (alertEpisode.alertSeverityId as ObjectID)
248
279
  : undefined;
249
280
 
281
+ const incidentSeverityIdForQuery: ObjectID | undefined =
282
+ incident && incident.incidentSeverityId
283
+ ? (incident.incidentSeverityId as ObjectID)
284
+ : incidentEpisode && incidentEpisode.incidentSeverityId
285
+ ? (incidentEpisode.incidentSeverityId as ObjectID)
286
+ : undefined;
287
+
250
288
  const immediateNotificationRule: Array<UserNotificationRule> =
251
289
  await UserNotificationRuleService.findBy({
252
290
  query: {
@@ -254,10 +292,7 @@ export class Service extends DatabaseService<Model> {
254
292
  projectId: createdItem.projectId!,
255
293
  notifyAfterMinutes: 0,
256
294
  ruleType: notificationRuleType,
257
- incidentSeverityId:
258
- incident && incident.incidentSeverityId
259
- ? (incident?.incidentSeverityId as ObjectID)
260
- : undefined,
295
+ incidentSeverityId: incidentSeverityIdForQuery,
261
296
  alertSeverityId: alertSeverityIdForQuery,
262
297
  },
263
298
  select: {
@@ -279,6 +314,8 @@ export class Service extends DatabaseService<Model> {
279
314
  triggeredByIncidentId: createdItem.triggeredByIncidentId,
280
315
  triggeredByAlertId: createdItem.triggeredByAlertId,
281
316
  triggeredByAlertEpisodeId: createdItem.triggeredByAlertEpisodeId,
317
+ triggeredByIncidentEpisodeId:
318
+ createdItem.triggeredByIncidentEpisodeId,
282
319
  userNotificationEventType: createdItem.userNotificationEventType!,
283
320
  onCallPolicyExecutionLogId:
284
321
  createdItem.onCallDutyPolicyExecutionLogId,
@@ -339,6 +376,13 @@ export class Service extends DatabaseService<Model> {
339
376
  return NotificationRuleType.ON_CALL_EXECUTED_ALERT_EPISODE;
340
377
  }
341
378
 
379
+ if (
380
+ userNotificationEventType ===
381
+ UserNotificationEventType.IncidentEpisodeCreated
382
+ ) {
383
+ return NotificationRuleType.ON_CALL_EXECUTED_INCIDENT_EPISODE;
384
+ }
385
+
342
386
  // Invalid user notification event type.
343
387
  throw new BadDataException("Invalid user notification event type.");
344
388
  }
@@ -27,6 +27,7 @@ export class WhatsAppService extends BaseService {
27
27
  incidentId?: ObjectID | undefined;
28
28
  alertId?: ObjectID | undefined;
29
29
  alertEpisodeId?: ObjectID | undefined;
30
+ incidentEpisodeId?: ObjectID | undefined;
30
31
  scheduledMaintenanceId?: ObjectID | undefined;
31
32
  statusPageId?: ObjectID | undefined;
32
33
  statusPageAnnouncementId?: ObjectID | undefined;
@@ -21,6 +21,8 @@ export interface WorkspaceLogData {
21
21
  // Relations to resources (optional)
22
22
  incidentId?: ObjectID | undefined;
23
23
  alertId?: ObjectID | undefined;
24
+ alertEpisodeId?: ObjectID | undefined;
25
+ incidentEpisodeId?: ObjectID | undefined;
24
26
  scheduledMaintenanceId?: ObjectID | undefined;
25
27
  userId?: ObjectID | undefined;
26
28
  teamId?: ObjectID | undefined;
@@ -75,6 +77,12 @@ export class Service extends DatabaseService<Model> {
75
77
  if (data.alertId) {
76
78
  log.alertId = data.alertId;
77
79
  }
80
+ if (data.alertEpisodeId) {
81
+ log.alertEpisodeId = data.alertEpisodeId;
82
+ }
83
+ if (data.incidentEpisodeId) {
84
+ log.incidentEpisodeId = data.incidentEpisodeId;
85
+ }
78
86
  if (data.scheduledMaintenanceId) {
79
87
  log.scheduledMaintenanceId = data.scheduledMaintenanceId;
80
88
  }
@@ -221,6 +229,8 @@ export class Service extends DatabaseService<Model> {
221
229
  // Optional resource associations
222
230
  incidentId?: ObjectID;
223
231
  alertId?: ObjectID;
232
+ alertEpisodeId?: ObjectID;
233
+ incidentEpisodeId?: ObjectID;
224
234
  scheduledMaintenanceId?: ObjectID;
225
235
  onCallDutyPolicyId?: ObjectID;
226
236
  statusPageId?: ObjectID;
@@ -256,6 +266,12 @@ export class Service extends DatabaseService<Model> {
256
266
  if (data.alertId) {
257
267
  logData.alertId = data.alertId;
258
268
  }
269
+ if (data.alertEpisodeId) {
270
+ logData.alertEpisodeId = data.alertEpisodeId;
271
+ }
272
+ if (data.incidentEpisodeId) {
273
+ logData.incidentEpisodeId = data.incidentEpisodeId;
274
+ }
259
275
  if (data.scheduledMaintenanceId) {
260
276
  logData.scheduledMaintenanceId = data.scheduledMaintenanceId;
261
277
  }
@@ -50,6 +50,8 @@ import WorkspaceNotificationLogService from "./WorkspaceNotificationLogService";
50
50
  import WorkspaceNotificationStatus from "../../Types/Workspace/WorkspaceNotificationStatus";
51
51
  import WorkspaceNotificationActionType from "../../Types/Workspace/WorkspaceNotificationActionType";
52
52
  import ExceptionMessages from "../../Types/Exception/ExceptionMessages";
53
+ import IncidentEpisode from "../../Models/DatabaseModels/IncidentEpisode";
54
+ import IncidentEpisodeService from "./IncidentEpisodeService";
53
55
 
54
56
  export interface MessageBlocksByWorkspaceType {
55
57
  workspaceType: WorkspaceType;
@@ -60,6 +62,7 @@ export interface NotificationFor {
60
62
  incidentId?: ObjectID | undefined;
61
63
  alertId?: ObjectID | undefined;
62
64
  alertEpisodeId?: ObjectID | undefined;
65
+ incidentEpisodeId?: ObjectID | undefined;
63
66
  scheduledMaintenanceId?: ObjectID | undefined;
64
67
  monitorId?: ObjectID | undefined;
65
68
  onCallDutyPolicyId?: ObjectID | undefined;
@@ -749,6 +752,14 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
749
752
  return NotificationRuleEventType.Incident;
750
753
  }
751
754
 
755
+ if (notificationFor.alertEpisodeId) {
756
+ return NotificationRuleEventType.AlertEpisode;
757
+ }
758
+
759
+ if (notificationFor.incidentEpisodeId) {
760
+ return NotificationRuleEventType.IncidentEpisode;
761
+ }
762
+
752
763
  if (notificationFor.monitorId) {
753
764
  return NotificationRuleEventType.Monitor;
754
765
  }
@@ -1949,6 +1960,12 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
1949
1960
  [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
1950
1961
  [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
1951
1962
  [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
1963
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]: undefined,
1964
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
1965
+ undefined,
1966
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]: undefined,
1967
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]: undefined,
1968
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]: undefined,
1952
1969
  };
1953
1970
  }
1954
1971
 
@@ -2031,6 +2048,12 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
2031
2048
  [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
2032
2049
  [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
2033
2050
  [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
2051
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]: undefined,
2052
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
2053
+ undefined,
2054
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]: undefined,
2055
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]: undefined,
2056
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]: undefined,
2034
2057
  };
2035
2058
  }
2036
2059
 
@@ -2119,6 +2142,12 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
2119
2142
  [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
2120
2143
  [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
2121
2144
  [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
2145
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]: undefined,
2146
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
2147
+ undefined,
2148
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]: undefined,
2149
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]: undefined,
2150
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]: undefined,
2122
2151
  };
2123
2152
  }
2124
2153
 
@@ -2185,6 +2214,12 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
2185
2214
  [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
2186
2215
  [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
2187
2216
  [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
2217
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]: undefined,
2218
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
2219
+ undefined,
2220
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]: undefined,
2221
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]: undefined,
2222
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]: undefined,
2188
2223
  };
2189
2224
  }
2190
2225
 
@@ -2250,6 +2285,87 @@ export class Service extends DatabaseService<WorkspaceNotificationRule> {
2250
2285
  [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
2251
2286
  [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
2252
2287
  [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
2288
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]: undefined,
2289
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
2290
+ undefined,
2291
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]: undefined,
2292
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]: undefined,
2293
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]: undefined,
2294
+ };
2295
+ }
2296
+
2297
+ // Handle Incident Episode
2298
+ if (data.notificationFor.incidentEpisodeId) {
2299
+ logger.debug("Fetching incident episode details for ID:");
2300
+ logger.debug(data.notificationFor.incidentEpisodeId);
2301
+
2302
+ const incidentEpisode: IncidentEpisode | null =
2303
+ await IncidentEpisodeService.findOneById({
2304
+ id: data.notificationFor.incidentEpisodeId,
2305
+ select: {
2306
+ title: true,
2307
+ description: true,
2308
+ incidentSeverity: true,
2309
+ currentIncidentState: true,
2310
+ labels: true,
2311
+ },
2312
+ props: {
2313
+ isRoot: true,
2314
+ },
2315
+ });
2316
+
2317
+ if (!incidentEpisode) {
2318
+ logger.debug("Incident Episode not found for ID:");
2319
+ logger.debug(data.notificationFor.incidentEpisodeId);
2320
+ throw new BadDataException("Incident Episode ID not found");
2321
+ }
2322
+
2323
+ logger.debug("Incident Episode details retrieved:");
2324
+ logger.debug(incidentEpisode);
2325
+
2326
+ return {
2327
+ [NotificationRuleConditionCheckOn.MonitorName]: undefined,
2328
+ [NotificationRuleConditionCheckOn.IncidentTitle]: undefined,
2329
+ [NotificationRuleConditionCheckOn.IncidentDescription]: undefined,
2330
+ [NotificationRuleConditionCheckOn.IncidentSeverity]: undefined,
2331
+ [NotificationRuleConditionCheckOn.IncidentState]: undefined,
2332
+ [NotificationRuleConditionCheckOn.MonitorType]: undefined,
2333
+ [NotificationRuleConditionCheckOn.MonitorStatus]: undefined,
2334
+ [NotificationRuleConditionCheckOn.AlertTitle]: undefined,
2335
+ [NotificationRuleConditionCheckOn.AlertDescription]: undefined,
2336
+ [NotificationRuleConditionCheckOn.AlertSeverity]: undefined,
2337
+ [NotificationRuleConditionCheckOn.AlertState]: undefined,
2338
+ [NotificationRuleConditionCheckOn.ScheduledMaintenanceTitle]: undefined,
2339
+ [NotificationRuleConditionCheckOn.ScheduledMaintenanceDescription]:
2340
+ undefined,
2341
+ [NotificationRuleConditionCheckOn.ScheduledMaintenanceState]: undefined,
2342
+ [NotificationRuleConditionCheckOn.IncidentLabels]: undefined,
2343
+ [NotificationRuleConditionCheckOn.AlertLabels]: undefined,
2344
+ [NotificationRuleConditionCheckOn.MonitorLabels]: undefined,
2345
+ [NotificationRuleConditionCheckOn.ScheduledMaintenanceLabels]:
2346
+ undefined,
2347
+ [NotificationRuleConditionCheckOn.Monitors]: undefined,
2348
+ [NotificationRuleConditionCheckOn.OnCallDutyPolicyName]: undefined,
2349
+ [NotificationRuleConditionCheckOn.OnCallDutyPolicyDescription]:
2350
+ undefined,
2351
+ [NotificationRuleConditionCheckOn.OnCallDutyPolicyLabels]: undefined,
2352
+ [NotificationRuleConditionCheckOn.AlertEpisodeTitle]: undefined,
2353
+ [NotificationRuleConditionCheckOn.AlertEpisodeDescription]: undefined,
2354
+ [NotificationRuleConditionCheckOn.AlertEpisodeSeverity]: undefined,
2355
+ [NotificationRuleConditionCheckOn.AlertEpisodeState]: undefined,
2356
+ [NotificationRuleConditionCheckOn.AlertEpisodeLabels]: undefined,
2357
+ [NotificationRuleConditionCheckOn.IncidentEpisodeTitle]:
2358
+ incidentEpisode.title || "",
2359
+ [NotificationRuleConditionCheckOn.IncidentEpisodeDescription]:
2360
+ incidentEpisode.description || "",
2361
+ [NotificationRuleConditionCheckOn.IncidentEpisodeSeverity]:
2362
+ incidentEpisode.incidentSeverity?._id?.toString() || "",
2363
+ [NotificationRuleConditionCheckOn.IncidentEpisodeState]:
2364
+ incidentEpisode.currentIncidentState?._id?.toString() || "",
2365
+ [NotificationRuleConditionCheckOn.IncidentEpisodeLabels]:
2366
+ incidentEpisode.labels?.map((label: Label) => {
2367
+ return label._id?.toString() || "";
2368
+ }) || [],
2253
2369
  };
2254
2370
  }
2255
2371