@oneuptime/common 9.4.11 → 9.4.13

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 (286) hide show
  1. package/Models/DatabaseModels/Incident.ts +77 -0
  2. package/Models/DatabaseModels/IncidentEpisode.ts +1223 -0
  3. package/Models/DatabaseModels/IncidentEpisodeFeed.ts +533 -0
  4. package/Models/DatabaseModels/IncidentEpisodeInternalNote.ts +456 -0
  5. package/Models/DatabaseModels/IncidentEpisodeMember.ts +587 -0
  6. package/Models/DatabaseModels/IncidentEpisodeOwnerTeam.ts +421 -0
  7. package/Models/DatabaseModels/IncidentEpisodeOwnerUser.ts +419 -0
  8. package/Models/DatabaseModels/IncidentEpisodeStateTimeline.ts +524 -0
  9. package/Models/DatabaseModels/IncidentGroupingRule.ts +1430 -0
  10. package/Models/DatabaseModels/Index.ts +18 -0
  11. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +70 -0
  12. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +59 -0
  13. package/Models/DatabaseModels/Project.ts +29 -0
  14. package/Models/DatabaseModels/UserOnCallLog.ts +48 -0
  15. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +49 -0
  16. package/Models/DatabaseModels/WorkspaceNotificationLog.ts +57 -0
  17. package/Server/API/BillingAPI.ts +78 -1
  18. package/Server/API/IncidentEpisodeAPI.ts +150 -0
  19. package/Server/API/SlackAPI.ts +23 -0
  20. package/Server/API/UserOnCallLogTimelineAPI.ts +24 -4
  21. package/Server/BillingConfig.ts +3 -0
  22. package/Server/EnvironmentConfig.ts +1 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/1769599843642-MigrationName.ts +29 -0
  24. package/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.ts +729 -0
  25. package/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.ts +261 -0
  26. package/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.ts +28 -0
  27. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  28. package/Server/Services/AIBillingService.ts +10 -0
  29. package/Server/Services/BillingService.ts +349 -1
  30. package/Server/Services/CallService.ts +1 -0
  31. package/Server/Services/IncidentEpisodeFeedService.ts +94 -0
  32. package/Server/Services/IncidentEpisodeInternalNoteService.ts +71 -0
  33. package/Server/Services/IncidentEpisodeMemberService.ts +321 -0
  34. package/Server/Services/IncidentEpisodeOwnerTeamService.ts +10 -0
  35. package/Server/Services/IncidentEpisodeOwnerUserService.ts +10 -0
  36. package/Server/Services/IncidentEpisodeService.ts +1045 -0
  37. package/Server/Services/IncidentEpisodeStateTimelineService.ts +566 -0
  38. package/Server/Services/IncidentGroupingEngineService.ts +1047 -0
  39. package/Server/Services/IncidentGroupingRuleService.ts +14 -0
  40. package/Server/Services/IncidentService.ts +11 -0
  41. package/Server/Services/Index.ts +18 -0
  42. package/Server/Services/MailService.ts +1 -0
  43. package/Server/Services/MonitorService.ts +9 -0
  44. package/Server/Services/NotificationService.ts +10 -0
  45. package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +18 -0
  46. package/Server/Services/OnCallDutyPolicyExecutionLogService.ts +64 -2
  47. package/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.ts +26 -1
  48. package/Server/Services/OnCallDutyPolicyService.ts +15 -0
  49. package/Server/Services/ProjectService.ts +33 -2
  50. package/Server/Services/SmsService.ts +1 -0
  51. package/Server/Services/UserNotificationRuleService.ts +48 -2
  52. package/Server/Services/UserNotificationSettingService.ts +23 -0
  53. package/Server/Services/UserOnCallLogService.ts +41 -4
  54. package/Server/Services/UserService.ts +45 -1
  55. package/Server/Services/WhatsAppService.ts +1 -0
  56. package/Server/Services/WorkspaceNotificationLogService.ts +16 -0
  57. package/Server/Services/WorkspaceNotificationRuleService.ts +116 -0
  58. package/Server/Types/Database/Permissions/TenantPermission.ts +20 -0
  59. package/Server/Utils/AI/IncidentEpisodeAIContextBuilder.ts +490 -0
  60. package/Server/Utils/Monitor/Criteria/APIRequestCriteria.ts +1 -1
  61. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +1 -1
  62. package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +1 -1
  63. package/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.ts +1 -1
  64. package/Server/Utils/Monitor/Criteria/ServerMonitorCriteria.ts +2 -2
  65. package/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.ts +182 -0
  66. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +13 -0
  67. package/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.ts +1 -1
  68. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +37 -0
  69. package/Server/Utils/PushNotificationUtil.ts +31 -0
  70. package/Server/Utils/WhatsAppTemplateUtil.ts +14 -0
  71. package/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.ts +18 -0
  72. package/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.ts +702 -0
  73. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +20 -0
  74. package/Server/Utils/Workspace/Slack/Actions/ActionTypes.ts +11 -0
  75. package/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.ts +918 -0
  76. package/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.ts +120 -0
  77. package/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.ts +74 -0
  78. package/Types/Email/EmailTemplateType.ts +7 -0
  79. package/Types/Monitor/CriteriaFilter.ts +24 -4
  80. package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
  81. package/Types/Monitor/MonitorStep.ts +37 -0
  82. package/Types/Monitor/MonitorStepSnmpMonitor.ts +102 -0
  83. package/Types/Monitor/MonitorType.ts +15 -2
  84. package/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.ts +8 -0
  85. package/Types/Monitor/SnmpMonitor/SnmpDataType.ts +21 -0
  86. package/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.ts +16 -0
  87. package/Types/Monitor/SnmpMonitor/SnmpOid.ts +60 -0
  88. package/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.ts +7 -0
  89. package/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.ts +7 -0
  90. package/Types/Monitor/SnmpMonitor/SnmpV3Auth.ts +12 -0
  91. package/Types/Monitor/SnmpMonitor/SnmpVersion.ts +7 -0
  92. package/Types/NotificationSetting/NotificationSettingEventType.ts +7 -0
  93. package/Types/Permission.ts +311 -0
  94. package/Types/Probe/ProbeMonitorResponse.ts +2 -0
  95. package/Types/UserNotification/UserNotificationEventType.ts +1 -0
  96. package/Types/WhatsApp/WhatsAppTemplates.ts +24 -0
  97. package/Types/Workspace/NotificationRules/EventType.ts +1 -0
  98. package/Types/Workspace/NotificationRules/NotificationRuleCondition.ts +38 -1
  99. package/Utils/Monitor/MonitorMetricType.ts +2 -1
  100. package/build/dist/Models/DatabaseModels/Incident.js +78 -0
  101. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  102. package/build/dist/Models/DatabaseModels/IncidentEpisode.js +1250 -0
  103. package/build/dist/Models/DatabaseModels/IncidentEpisode.js.map +1 -0
  104. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js +555 -0
  105. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js.map +1 -0
  106. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js +467 -0
  107. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js.map +1 -0
  108. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js +607 -0
  109. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js.map +1 -0
  110. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js +437 -0
  111. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js.map +1 -0
  112. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js +436 -0
  113. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js.map +1 -0
  114. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js +546 -0
  115. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js.map +1 -0
  116. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +1437 -0
  117. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -0
  118. package/build/dist/Models/DatabaseModels/Index.js +16 -0
  119. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  120. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +69 -0
  121. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  122. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +58 -0
  123. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
  124. package/build/dist/Models/DatabaseModels/Project.js +30 -0
  125. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  126. package/build/dist/Models/DatabaseModels/UserOnCallLog.js +47 -0
  127. package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -1
  128. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +48 -0
  129. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
  130. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js +58 -0
  131. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js.map +1 -1
  132. package/build/dist/Server/API/BillingAPI.js +44 -1
  133. package/build/dist/Server/API/BillingAPI.js.map +1 -1
  134. package/build/dist/Server/API/IncidentEpisodeAPI.js +97 -0
  135. package/build/dist/Server/API/IncidentEpisodeAPI.js.map +1 -0
  136. package/build/dist/Server/API/SlackAPI.js +18 -0
  137. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  138. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js +30 -10
  139. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js.map +1 -1
  140. package/build/dist/Server/BillingConfig.js +2 -0
  141. package/build/dist/Server/BillingConfig.js.map +1 -1
  142. package/build/dist/Server/EnvironmentConfig.js +1 -0
  143. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  144. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769599843642-MigrationName.js +16 -0
  145. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769599843642-MigrationName.js.map +1 -0
  146. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.js +256 -0
  147. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769626069479-MigrationName.js.map +1 -0
  148. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.js +96 -0
  149. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769629928240-MigrationName.js.map +1 -0
  150. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.js +25 -0
  151. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1769676117342-RenameEvaluateOverTimeInCriteriaFilter.js.map +1 -0
  152. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  153. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  154. package/build/dist/Server/Services/AIBillingService.js +10 -1
  155. package/build/dist/Server/Services/AIBillingService.js.map +1 -1
  156. package/build/dist/Server/Services/BillingService.js +224 -5
  157. package/build/dist/Server/Services/BillingService.js.map +1 -1
  158. package/build/dist/Server/Services/CallService.js.map +1 -1
  159. package/build/dist/Server/Services/IncidentEpisodeFeedService.js +83 -0
  160. package/build/dist/Server/Services/IncidentEpisodeFeedService.js.map +1 -0
  161. package/build/dist/Server/Services/IncidentEpisodeInternalNoteService.js +70 -0
  162. package/build/dist/Server/Services/IncidentEpisodeInternalNoteService.js.map +1 -0
  163. package/build/dist/Server/Services/IncidentEpisodeMemberService.js +298 -0
  164. package/build/dist/Server/Services/IncidentEpisodeMemberService.js.map +1 -0
  165. package/build/dist/Server/Services/IncidentEpisodeOwnerTeamService.js +9 -0
  166. package/build/dist/Server/Services/IncidentEpisodeOwnerTeamService.js.map +1 -0
  167. package/build/dist/Server/Services/IncidentEpisodeOwnerUserService.js +9 -0
  168. package/build/dist/Server/Services/IncidentEpisodeOwnerUserService.js.map +1 -0
  169. package/build/dist/Server/Services/IncidentEpisodeService.js +933 -0
  170. package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -0
  171. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js +498 -0
  172. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js.map +1 -0
  173. package/build/dist/Server/Services/IncidentGroupingEngineService.js +799 -0
  174. package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -0
  175. package/build/dist/Server/Services/IncidentGroupingRuleService.js +13 -0
  176. package/build/dist/Server/Services/IncidentGroupingRuleService.js.map +1 -0
  177. package/build/dist/Server/Services/IncidentService.js +10 -0
  178. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  179. package/build/dist/Server/Services/Index.js +16 -0
  180. package/build/dist/Server/Services/Index.js.map +1 -1
  181. package/build/dist/Server/Services/MailService.js.map +1 -1
  182. package/build/dist/Server/Services/MonitorService.js +9 -1
  183. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  184. package/build/dist/Server/Services/NotificationService.js +10 -1
  185. package/build/dist/Server/Services/NotificationService.js.map +1 -1
  186. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +10 -0
  187. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
  188. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js +48 -2
  189. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js.map +1 -1
  190. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js +20 -1
  191. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js.map +1 -1
  192. package/build/dist/Server/Services/OnCallDutyPolicyService.js +8 -0
  193. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  194. package/build/dist/Server/Services/ProjectService.js +16 -3
  195. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  196. package/build/dist/Server/Services/SmsService.js.map +1 -1
  197. package/build/dist/Server/Services/UserNotificationRuleService.js +39 -2
  198. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  199. package/build/dist/Server/Services/UserNotificationSettingService.js +9 -0
  200. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  201. package/build/dist/Server/Services/UserOnCallLogService.js +35 -3
  202. package/build/dist/Server/Services/UserOnCallLogService.js.map +1 -1
  203. package/build/dist/Server/Services/UserService.js +40 -0
  204. package/build/dist/Server/Services/UserService.js.map +1 -1
  205. package/build/dist/Server/Services/WhatsAppService.js.map +1 -1
  206. package/build/dist/Server/Services/WorkspaceNotificationLogService.js +12 -0
  207. package/build/dist/Server/Services/WorkspaceNotificationLogService.js.map +1 -1
  208. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +95 -1
  209. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  210. package/build/dist/Server/Types/Database/Permissions/TenantPermission.js +17 -0
  211. package/build/dist/Server/Types/Database/Permissions/TenantPermission.js.map +1 -1
  212. package/build/dist/Server/Utils/AI/IncidentEpisodeAIContextBuilder.js +402 -0
  213. package/build/dist/Server/Utils/AI/IncidentEpisodeAIContextBuilder.js.map +1 -0
  214. package/build/dist/Server/Utils/Monitor/Criteria/APIRequestCriteria.js +1 -1
  215. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +1 -1
  216. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +1 -1
  217. package/build/dist/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.js +1 -1
  218. package/build/dist/Server/Utils/Monitor/Criteria/ServerMonitorCriteria.js +2 -2
  219. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js +135 -0
  220. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js.map +1 -0
  221. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +10 -0
  222. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  223. package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js +1 -1
  224. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +26 -0
  225. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  226. package/build/dist/Server/Utils/PushNotificationUtil.js +20 -0
  227. package/build/dist/Server/Utils/PushNotificationUtil.js.map +1 -1
  228. package/build/dist/Server/Utils/WhatsAppTemplateUtil.js +8 -0
  229. package/build/dist/Server/Utils/WhatsAppTemplateUtil.js.map +1 -1
  230. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.js +17 -0
  231. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ActionTypes.js.map +1 -1
  232. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js +547 -0
  233. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js.map +1 -0
  234. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +15 -0
  235. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  236. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js +10 -0
  237. package/build/dist/Server/Utils/Workspace/Slack/Actions/ActionTypes.js.map +1 -1
  238. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js +651 -0
  239. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js.map +1 -0
  240. package/build/dist/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.js +100 -0
  241. package/build/dist/Server/Utils/Workspace/Slack/Messages/IncidentEpisode.js.map +1 -0
  242. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.js +70 -0
  243. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/IncidentEpisode.js.map +1 -0
  244. package/build/dist/Types/Email/EmailTemplateType.js +6 -0
  245. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  246. package/build/dist/Types/Monitor/CriteriaFilter.js +16 -3
  247. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  248. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
  249. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  250. package/build/dist/Types/Monitor/MonitorStep.js +26 -0
  251. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  252. package/build/dist/Types/Monitor/MonitorStepSnmpMonitor.js +77 -0
  253. package/build/dist/Types/Monitor/MonitorStepSnmpMonitor.js.map +1 -0
  254. package/build/dist/Types/Monitor/MonitorType.js +13 -2
  255. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  256. package/build/dist/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.js +9 -0
  257. package/build/dist/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.js.map +1 -0
  258. package/build/dist/Types/Monitor/SnmpMonitor/SnmpDataType.js +22 -0
  259. package/build/dist/Types/Monitor/SnmpMonitor/SnmpDataType.js.map +1 -0
  260. package/build/dist/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.js +2 -0
  261. package/build/dist/Types/Monitor/SnmpMonitor/SnmpMonitorResponse.js.map +1 -0
  262. package/build/dist/Types/Monitor/SnmpMonitor/SnmpOid.js +55 -0
  263. package/build/dist/Types/Monitor/SnmpMonitor/SnmpOid.js.map +1 -0
  264. package/build/dist/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.js +8 -0
  265. package/build/dist/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.js.map +1 -0
  266. package/build/dist/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.js +8 -0
  267. package/build/dist/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.js.map +1 -0
  268. package/build/dist/Types/Monitor/SnmpMonitor/SnmpV3Auth.js +2 -0
  269. package/build/dist/Types/Monitor/SnmpMonitor/SnmpV3Auth.js.map +1 -0
  270. package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js +8 -0
  271. package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js.map +1 -0
  272. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js +5 -0
  273. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js.map +1 -1
  274. package/build/dist/Types/Permission.js +264 -0
  275. package/build/dist/Types/Permission.js.map +1 -1
  276. package/build/dist/Types/UserNotification/UserNotificationEventType.js +1 -0
  277. package/build/dist/Types/UserNotification/UserNotificationEventType.js.map +1 -1
  278. package/build/dist/Types/WhatsApp/WhatsAppTemplates.js +15 -0
  279. package/build/dist/Types/WhatsApp/WhatsAppTemplates.js.map +1 -1
  280. package/build/dist/Types/Workspace/NotificationRules/EventType.js +1 -0
  281. package/build/dist/Types/Workspace/NotificationRules/EventType.js.map +1 -1
  282. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js +33 -1
  283. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js.map +1 -1
  284. package/build/dist/Utils/Monitor/MonitorMetricType.js +2 -1
  285. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  286. package/package.json +1 -1
@@ -0,0 +1,533 @@
1
+ import IncidentEpisode from "./IncidentEpisode";
2
+ import Project from "./Project";
3
+ import User from "./User";
4
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
5
+ import Route from "../../Types/API/Route";
6
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
7
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
8
+ import CanAccessIfCanReadOn from "../../Types/Database/CanAccessIfCanReadOn";
9
+ import ColumnLength from "../../Types/Database/ColumnLength";
10
+ import ColumnType from "../../Types/Database/ColumnType";
11
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
12
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
13
+ import EnableWorkflow from "../../Types/Database/EnableWorkflow";
14
+ import ColorField from "../../Types/Database/ColorField";
15
+ import TableColumn from "../../Types/Database/TableColumn";
16
+ import TableColumnType from "../../Types/Database/TableColumnType";
17
+ import TableMetadata from "../../Types/Database/TableMetadata";
18
+ import TenantColumn from "../../Types/Database/TenantColumn";
19
+ import Color from "../../Types/Color";
20
+ import IconProp from "../../Types/Icon/IconProp";
21
+ import ObjectID from "../../Types/ObjectID";
22
+ import Permission from "../../Types/Permission";
23
+ import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
24
+
25
+ export enum IncidentEpisodeFeedEventType {
26
+ EpisodeCreated = "EpisodeCreated",
27
+ EpisodeStateChanged = "EpisodeStateChanged",
28
+ EpisodeUpdated = "EpisodeUpdated",
29
+ IncidentAdded = "IncidentAdded",
30
+ IncidentRemoved = "IncidentRemoved",
31
+ OwnerUserAdded = "OwnerUserAdded",
32
+ OwnerTeamAdded = "OwnerTeamAdded",
33
+ OwnerUserRemoved = "OwnerUserRemoved",
34
+ OwnerTeamRemoved = "OwnerTeamRemoved",
35
+ OwnerNotificationSent = "OwnerNotificationSent",
36
+ PrivateNote = "PrivateNote",
37
+ RootCause = "RootCause",
38
+ RemediationNotes = "RemediationNotes",
39
+ PostmortemNote = "PostmortemNote",
40
+ OnCallPolicy = "OnCallPolicy",
41
+ OnCallNotification = "OnCallNotification",
42
+ SeverityChanged = "SeverityChanged",
43
+ }
44
+
45
+ @EnableDocumentation()
46
+ @CanAccessIfCanReadOn("incidentEpisode")
47
+ @TenantColumn("projectId")
48
+ @TableAccessControl({
49
+ create: [
50
+ Permission.ProjectOwner,
51
+ Permission.ProjectAdmin,
52
+ Permission.ProjectMember,
53
+ Permission.CreateIncidentEpisodeFeed,
54
+ ],
55
+ read: [
56
+ Permission.ProjectOwner,
57
+ Permission.ProjectAdmin,
58
+ Permission.ProjectMember,
59
+ Permission.ReadIncidentEpisodeFeed,
60
+ ],
61
+ delete: [],
62
+ update: [],
63
+ })
64
+ @EnableWorkflow({
65
+ create: true,
66
+ delete: true,
67
+ update: true,
68
+ read: true,
69
+ })
70
+ @CrudApiEndpoint(new Route("/incident-episode-feed"))
71
+ @Entity({
72
+ name: "IncidentEpisodeFeed",
73
+ })
74
+ @TableMetadata({
75
+ tableName: "IncidentEpisodeFeed",
76
+ singularName: "Incident Episode Feed",
77
+ pluralName: "Incident Episode Feeds",
78
+ icon: IconProp.List,
79
+ tableDescription:
80
+ "Log of the entire incident episode activity. This is a log of all the episode state changes, incidents added/removed, notes, etc.",
81
+ })
82
+ export default class IncidentEpisodeFeed extends BaseModel {
83
+ @ColumnAccessControl({
84
+ create: [
85
+ Permission.ProjectOwner,
86
+ Permission.ProjectAdmin,
87
+ Permission.ProjectMember,
88
+ Permission.CreateIncidentEpisodeFeed,
89
+ ],
90
+ read: [
91
+ Permission.ProjectOwner,
92
+ Permission.ProjectAdmin,
93
+ Permission.ProjectMember,
94
+ Permission.ReadIncidentEpisodeFeed,
95
+ ],
96
+ update: [],
97
+ })
98
+ @TableColumn({
99
+ manyToOneRelationColumn: "projectId",
100
+ type: TableColumnType.Entity,
101
+ modelType: Project,
102
+ title: "Project",
103
+ description: "Relation to Project Resource in which this object belongs",
104
+ })
105
+ @ManyToOne(
106
+ () => {
107
+ return Project;
108
+ },
109
+ {
110
+ eager: false,
111
+ nullable: true,
112
+ onDelete: "CASCADE",
113
+ orphanedRowAction: "nullify",
114
+ },
115
+ )
116
+ @JoinColumn({ name: "projectId" })
117
+ public project?: Project = undefined;
118
+
119
+ @ColumnAccessControl({
120
+ create: [
121
+ Permission.ProjectOwner,
122
+ Permission.ProjectAdmin,
123
+ Permission.ProjectMember,
124
+ Permission.CreateIncidentEpisodeFeed,
125
+ ],
126
+ read: [
127
+ Permission.ProjectOwner,
128
+ Permission.ProjectAdmin,
129
+ Permission.ProjectMember,
130
+ Permission.ReadIncidentEpisodeFeed,
131
+ ],
132
+ update: [],
133
+ })
134
+ @Index()
135
+ @TableColumn({
136
+ type: TableColumnType.ObjectID,
137
+ required: true,
138
+ canReadOnRelationQuery: true,
139
+ title: "Project ID",
140
+ description: "ID of your OneUptime Project in which this object belongs",
141
+ })
142
+ @Column({
143
+ type: ColumnType.ObjectID,
144
+ nullable: false,
145
+ transformer: ObjectID.getDatabaseTransformer(),
146
+ })
147
+ public projectId?: ObjectID = undefined;
148
+
149
+ @ColumnAccessControl({
150
+ create: [
151
+ Permission.ProjectOwner,
152
+ Permission.ProjectAdmin,
153
+ Permission.ProjectMember,
154
+ Permission.CreateIncidentEpisodeFeed,
155
+ ],
156
+ read: [
157
+ Permission.ProjectOwner,
158
+ Permission.ProjectAdmin,
159
+ Permission.ProjectMember,
160
+ Permission.ReadIncidentEpisodeFeed,
161
+ ],
162
+ update: [],
163
+ })
164
+ @TableColumn({
165
+ manyToOneRelationColumn: "incidentEpisodeId",
166
+ type: TableColumnType.Entity,
167
+ modelType: IncidentEpisode,
168
+ title: "Incident Episode",
169
+ description: "Relation to Incident Episode in which this resource belongs",
170
+ })
171
+ @ManyToOne(
172
+ () => {
173
+ return IncidentEpisode;
174
+ },
175
+ {
176
+ eager: false,
177
+ nullable: true,
178
+ onDelete: "CASCADE",
179
+ orphanedRowAction: "nullify",
180
+ },
181
+ )
182
+ @JoinColumn({ name: "incidentEpisodeId" })
183
+ public incidentEpisode?: IncidentEpisode = undefined;
184
+
185
+ @ColumnAccessControl({
186
+ create: [
187
+ Permission.ProjectOwner,
188
+ Permission.ProjectAdmin,
189
+ Permission.ProjectMember,
190
+ Permission.CreateIncidentEpisodeFeed,
191
+ ],
192
+ read: [
193
+ Permission.ProjectOwner,
194
+ Permission.ProjectAdmin,
195
+ Permission.ProjectMember,
196
+ Permission.ReadIncidentEpisodeFeed,
197
+ ],
198
+ update: [],
199
+ })
200
+ @Index()
201
+ @TableColumn({
202
+ type: TableColumnType.ObjectID,
203
+ required: true,
204
+ title: "Incident Episode ID",
205
+ description:
206
+ "Relation to Incident Episode ID in which this resource belongs",
207
+ })
208
+ @Column({
209
+ type: ColumnType.ObjectID,
210
+ nullable: false,
211
+ transformer: ObjectID.getDatabaseTransformer(),
212
+ })
213
+ public incidentEpisodeId?: ObjectID = undefined;
214
+
215
+ @ColumnAccessControl({
216
+ create: [
217
+ Permission.ProjectOwner,
218
+ Permission.ProjectAdmin,
219
+ Permission.ProjectMember,
220
+ Permission.CreateIncidentEpisodeFeed,
221
+ ],
222
+ read: [
223
+ Permission.ProjectOwner,
224
+ Permission.ProjectAdmin,
225
+ Permission.ProjectMember,
226
+ Permission.ReadIncidentEpisodeFeed,
227
+ ],
228
+ update: [],
229
+ })
230
+ @TableColumn({
231
+ manyToOneRelationColumn: "createdByUserId",
232
+ type: TableColumnType.Entity,
233
+ modelType: User,
234
+ title: "Created by User",
235
+ description:
236
+ "Relation to User who created this object (if this object was created by a User)",
237
+ })
238
+ @ManyToOne(
239
+ () => {
240
+ return User;
241
+ },
242
+ {
243
+ eager: false,
244
+ nullable: true,
245
+ onDelete: "SET NULL",
246
+ orphanedRowAction: "nullify",
247
+ },
248
+ )
249
+ @JoinColumn({ name: "createdByUserId" })
250
+ public createdByUser?: User = undefined;
251
+
252
+ @ColumnAccessControl({
253
+ create: [
254
+ Permission.ProjectOwner,
255
+ Permission.ProjectAdmin,
256
+ Permission.ProjectMember,
257
+ Permission.CreateIncidentEpisodeFeed,
258
+ ],
259
+ read: [
260
+ Permission.ProjectOwner,
261
+ Permission.ProjectAdmin,
262
+ Permission.ProjectMember,
263
+ Permission.ReadIncidentEpisodeFeed,
264
+ ],
265
+ update: [],
266
+ })
267
+ @TableColumn({
268
+ type: TableColumnType.ObjectID,
269
+ title: "Created by User ID",
270
+ description:
271
+ "User ID who created this object (if this object was created by a User)",
272
+ })
273
+ @Column({
274
+ type: ColumnType.ObjectID,
275
+ nullable: true,
276
+ transformer: ObjectID.getDatabaseTransformer(),
277
+ })
278
+ public createdByUserId?: ObjectID = undefined;
279
+
280
+ @ColumnAccessControl({
281
+ create: [],
282
+ read: [],
283
+ update: [],
284
+ })
285
+ @TableColumn({
286
+ manyToOneRelationColumn: "deletedByUserId",
287
+ type: TableColumnType.Entity,
288
+ title: "Deleted by User",
289
+ modelType: User,
290
+ description:
291
+ "Relation to User who deleted this object (if this object was deleted by a User)",
292
+ })
293
+ @ManyToOne(
294
+ () => {
295
+ return User;
296
+ },
297
+ {
298
+ cascade: false,
299
+ eager: false,
300
+ nullable: true,
301
+ onDelete: "SET NULL",
302
+ orphanedRowAction: "nullify",
303
+ },
304
+ )
305
+ @JoinColumn({ name: "deletedByUserId" })
306
+ public deletedByUser?: User = undefined;
307
+
308
+ @ColumnAccessControl({
309
+ create: [],
310
+ read: [],
311
+ update: [],
312
+ })
313
+ @TableColumn({
314
+ type: TableColumnType.ObjectID,
315
+ title: "Deleted by User ID",
316
+ description:
317
+ "User ID who deleted this object (if this object was deleted by a User)",
318
+ })
319
+ @Column({
320
+ type: ColumnType.ObjectID,
321
+ nullable: true,
322
+ transformer: ObjectID.getDatabaseTransformer(),
323
+ })
324
+ public deletedByUserId?: ObjectID = undefined;
325
+
326
+ @ColumnAccessControl({
327
+ create: [
328
+ Permission.ProjectOwner,
329
+ Permission.ProjectAdmin,
330
+ Permission.ProjectMember,
331
+ Permission.CreateIncidentEpisodeFeed,
332
+ ],
333
+ read: [
334
+ Permission.ProjectOwner,
335
+ Permission.ProjectAdmin,
336
+ Permission.ProjectMember,
337
+ Permission.ReadIncidentEpisodeFeed,
338
+ ],
339
+ update: [],
340
+ })
341
+ @TableColumn({
342
+ type: TableColumnType.Markdown,
343
+ required: true,
344
+ title: "Log (in Markdown)",
345
+ description: "Log of the entire incident episode activity in Markdown",
346
+ })
347
+ @Column({
348
+ type: ColumnType.Markdown,
349
+ nullable: false,
350
+ unique: false,
351
+ })
352
+ public feedInfoInMarkdown?: string = undefined;
353
+
354
+ @ColumnAccessControl({
355
+ create: [
356
+ Permission.ProjectOwner,
357
+ Permission.ProjectAdmin,
358
+ Permission.ProjectMember,
359
+ Permission.CreateIncidentEpisodeFeed,
360
+ ],
361
+ read: [
362
+ Permission.ProjectOwner,
363
+ Permission.ProjectAdmin,
364
+ Permission.ProjectMember,
365
+ Permission.ReadIncidentEpisodeFeed,
366
+ ],
367
+ update: [],
368
+ })
369
+ @TableColumn({
370
+ type: TableColumnType.Markdown,
371
+ required: false,
372
+ title: "More Information (in Markdown)",
373
+ description: "More information in Markdown",
374
+ })
375
+ @Column({
376
+ type: ColumnType.Markdown,
377
+ nullable: true,
378
+ unique: false,
379
+ })
380
+ public moreInformationInMarkdown?: string = undefined;
381
+
382
+ @ColumnAccessControl({
383
+ create: [
384
+ Permission.ProjectOwner,
385
+ Permission.ProjectAdmin,
386
+ Permission.ProjectMember,
387
+ Permission.CreateIncidentEpisodeFeed,
388
+ ],
389
+ read: [
390
+ Permission.ProjectOwner,
391
+ Permission.ProjectAdmin,
392
+ Permission.ProjectMember,
393
+ Permission.ReadIncidentEpisodeFeed,
394
+ ],
395
+ update: [],
396
+ })
397
+ @TableColumn({
398
+ type: TableColumnType.ShortText,
399
+ required: true,
400
+ title: "Incident Episode Feed Event",
401
+ description: "Incident Episode Feed Event Type",
402
+ })
403
+ @Column({
404
+ type: ColumnType.ShortText,
405
+ nullable: false,
406
+ unique: false,
407
+ })
408
+ public incidentEpisodeFeedEventType?: IncidentEpisodeFeedEventType =
409
+ undefined;
410
+
411
+ @ColumnAccessControl({
412
+ create: [
413
+ Permission.ProjectOwner,
414
+ Permission.ProjectAdmin,
415
+ Permission.ProjectMember,
416
+ Permission.CreateIncidentEpisodeFeed,
417
+ ],
418
+ read: [
419
+ Permission.ProjectOwner,
420
+ Permission.ProjectAdmin,
421
+ Permission.ProjectMember,
422
+ Permission.ReadIncidentEpisodeFeed,
423
+ ],
424
+ update: [],
425
+ })
426
+ @ColorField()
427
+ @TableColumn({
428
+ type: TableColumnType.Color,
429
+ required: true,
430
+ title: "Color",
431
+ description: "Display color for the incident episode log",
432
+ })
433
+ @Column({
434
+ type: ColumnType.Color,
435
+ length: ColumnLength.Color,
436
+ nullable: false,
437
+ unique: false,
438
+ transformer: Color.getDatabaseTransformer(),
439
+ })
440
+ public displayColor?: Color = undefined;
441
+
442
+ @ColumnAccessControl({
443
+ create: [
444
+ Permission.ProjectOwner,
445
+ Permission.ProjectAdmin,
446
+ Permission.ProjectMember,
447
+ Permission.CreateIncidentEpisodeFeed,
448
+ ],
449
+ read: [
450
+ Permission.ProjectOwner,
451
+ Permission.ProjectAdmin,
452
+ Permission.ProjectMember,
453
+ Permission.ReadIncidentEpisodeFeed,
454
+ ],
455
+ update: [],
456
+ })
457
+ @TableColumn({
458
+ manyToOneRelationColumn: "userId",
459
+ type: TableColumnType.Entity,
460
+ modelType: User,
461
+ title: "User",
462
+ description:
463
+ "Relation to User who this feed belongs to (if this feed belongs to a User)",
464
+ })
465
+ @ManyToOne(
466
+ () => {
467
+ return User;
468
+ },
469
+ {
470
+ eager: false,
471
+ nullable: true,
472
+ onDelete: "SET NULL",
473
+ orphanedRowAction: "nullify",
474
+ },
475
+ )
476
+ @JoinColumn({ name: "userId" })
477
+ public user?: User = undefined;
478
+
479
+ @ColumnAccessControl({
480
+ create: [
481
+ Permission.ProjectOwner,
482
+ Permission.ProjectAdmin,
483
+ Permission.ProjectMember,
484
+ Permission.CreateIncidentEpisodeFeed,
485
+ ],
486
+ read: [
487
+ Permission.ProjectOwner,
488
+ Permission.ProjectAdmin,
489
+ Permission.ProjectMember,
490
+ Permission.ReadIncidentEpisodeFeed,
491
+ ],
492
+ update: [],
493
+ })
494
+ @TableColumn({
495
+ type: TableColumnType.ObjectID,
496
+ title: "User ID",
497
+ description:
498
+ "User who this feed belongs to (if this feed belongs to a User)",
499
+ })
500
+ @Column({
501
+ type: ColumnType.ObjectID,
502
+ nullable: true,
503
+ transformer: ObjectID.getDatabaseTransformer(),
504
+ })
505
+ public userId?: ObjectID = undefined;
506
+
507
+ @ColumnAccessControl({
508
+ create: [
509
+ Permission.ProjectOwner,
510
+ Permission.ProjectAdmin,
511
+ Permission.ProjectMember,
512
+ Permission.CreateIncidentEpisodeFeed,
513
+ ],
514
+ read: [
515
+ Permission.ProjectOwner,
516
+ Permission.ProjectAdmin,
517
+ Permission.ProjectMember,
518
+ Permission.ReadIncidentEpisodeFeed,
519
+ ],
520
+ update: [],
521
+ })
522
+ @TableColumn({
523
+ title: "Feed Posted At",
524
+ description: "Date and time when the feed was posted",
525
+ type: TableColumnType.Date,
526
+ })
527
+ @Column({
528
+ type: ColumnType.Date,
529
+ nullable: true,
530
+ unique: false,
531
+ })
532
+ public postedAt?: Date = undefined;
533
+ }