@oneuptime/common 7.0.3148 → 7.0.3153

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 (222) hide show
  1. package/Models/DatabaseModels/Alert.ts +1010 -0
  2. package/Models/DatabaseModels/AlertCustomField.ts +340 -0
  3. package/Models/DatabaseModels/AlertInternalNote.ts +371 -0
  4. package/Models/DatabaseModels/AlertNoteTemplate.ts +352 -0
  5. package/Models/DatabaseModels/AlertOwnerTeam.ts +416 -0
  6. package/Models/DatabaseModels/AlertOwnerUser.ts +415 -0
  7. package/Models/DatabaseModels/AlertSeverity.ts +426 -0
  8. package/Models/DatabaseModels/AlertState.ts +502 -0
  9. package/Models/DatabaseModels/AlertStateTimeline.ts +525 -0
  10. package/Models/DatabaseModels/Incident.ts +2 -11
  11. package/Models/DatabaseModels/Index.ts +34 -12
  12. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +55 -0
  13. package/Models/DatabaseModels/TableView.ts +452 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.ts +51 -0
  15. package/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.ts +553 -0
  16. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  17. package/Server/Services/AlertCustomFieldService.ts +9 -0
  18. package/Server/Services/AlertInternalNoteService.ts +10 -0
  19. package/Server/Services/AlertNoteTemplateService.ts +9 -0
  20. package/Server/Services/AlertOwnerTeamService.ts +10 -0
  21. package/Server/Services/AlertOwnerUserService.ts +10 -0
  22. package/Server/Services/AlertService.ts +568 -0
  23. package/Server/Services/AlertSeverityService.ts +154 -0
  24. package/Server/Services/AlertStateService.ts +227 -0
  25. package/Server/Services/AlertStateTimelineService.ts +334 -0
  26. package/Server/Services/CallLogService.ts +4 -1
  27. package/Server/Services/DatabaseService.ts +17 -20
  28. package/Server/Services/EmailLogService.ts +4 -1
  29. package/Server/Services/IncidentService.ts +4 -1
  30. package/Server/Services/IncidentStateTimelineService.ts +4 -1
  31. package/Server/Services/Index.ts +23 -0
  32. package/Server/Services/MonitorStatusTimelineService.ts +4 -1
  33. package/Server/Services/OnCallDutyPolicyExecutionLogService.ts +4 -1
  34. package/Server/Services/OnCallDutyPolicyService.ts +15 -0
  35. package/Server/Services/ProjectService.ts +99 -1
  36. package/Server/Services/ScheduledMaintenanceService.ts +4 -1
  37. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +4 -1
  38. package/Server/Services/ShortLinkService.ts +4 -1
  39. package/Server/Services/SmsLogService.ts +4 -1
  40. package/Server/Services/TableViewService.ts +10 -0
  41. package/Server/Services/TelemetryUsageBillingService.ts +4 -1
  42. package/Server/Services/UserNotificationSettingService.ts +58 -0
  43. package/Server/Services/UserOnCallLogService.ts +4 -1
  44. package/Server/Services/WorkflowLogService.ts +4 -1
  45. package/Server/Types/Workflow/Components/API/Post.ts +25 -0
  46. package/Server/Utils/Monitor/MonitorAlert.ts +273 -0
  47. package/Server/Utils/Monitor/MonitorIncident.ts +298 -0
  48. package/Server/Utils/Monitor/MonitorResource.ts +67 -387
  49. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +120 -0
  50. package/Server/Utils/Realtime.ts +1 -35
  51. package/Types/Email/EmailTemplateType.ts +7 -0
  52. package/Types/Icon/IconProp.ts +1 -0
  53. package/Types/Monitor/CriteriaAlert.ts +11 -0
  54. package/Types/Monitor/MonitorCriteria.ts +2 -0
  55. package/Types/Monitor/MonitorCriteriaInstance.ts +134 -1
  56. package/Types/Monitor/MonitorStep.ts +1 -0
  57. package/Types/Monitor/MonitorSteps.ts +1 -0
  58. package/Types/NotificationSetting/NotificationSettingEventType.ts +7 -0
  59. package/Types/Permission.ts +369 -1
  60. package/Types/Telemetry/TelemetryQuery.ts +10 -0
  61. package/Types/UserNotification/UserNotificationEventType.ts +1 -0
  62. package/UI/Components/Card/Card.tsx +40 -31
  63. package/UI/Components/Card/CardButtons/MoreButton.ts +15 -0
  64. package/UI/Components/HeaderAlert/HeaderAlert.tsx +75 -16
  65. package/UI/Components/HeaderAlert/HeaderAlertGroup.tsx +50 -0
  66. package/UI/Components/HeaderAlert/HeaderModelAlert.tsx +5 -1
  67. package/UI/Components/Icon/Icon.tsx +8 -0
  68. package/UI/Components/ModelDetail/CardModelDetail.tsx +4 -2
  69. package/UI/Components/ModelTable/BaseModelTable.tsx +70 -2
  70. package/UI/Components/ModelTable/TableView.tsx +317 -0
  71. package/UI/Components/MoreMenu/Divider.tsx +7 -0
  72. package/UI/Components/MoreMenu/MoreMenu.tsx +54 -0
  73. package/UI/Components/MoreMenu/MoreMenuItem.tsx +37 -0
  74. package/UI/Components/MoreMenu/MoreMenuSection.tsx +22 -0
  75. package/UI/Components/Toggle/Toggle.tsx +14 -0
  76. package/build/dist/Models/DatabaseModels/Alert.js +1028 -0
  77. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -0
  78. package/build/dist/Models/DatabaseModels/AlertCustomField.js +360 -0
  79. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -0
  80. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +391 -0
  81. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -0
  82. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js +372 -0
  83. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js.map +1 -0
  84. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +434 -0
  85. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -0
  86. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +433 -0
  87. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -0
  88. package/build/dist/Models/DatabaseModels/AlertSeverity.js +450 -0
  89. package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -0
  90. package/build/dist/Models/DatabaseModels/AlertState.js +530 -0
  91. package/build/dist/Models/DatabaseModels/AlertState.js.map +1 -0
  92. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +548 -0
  93. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -0
  94. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  95. package/build/dist/Models/DatabaseModels/Index.js +29 -9
  96. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  97. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +55 -0
  98. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  99. package/build/dist/Models/DatabaseModels/TableView.js +475 -0
  100. package/build/dist/Models/DatabaseModels/TableView.js.map +1 -0
  101. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.js +24 -0
  102. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.js.map +1 -0
  103. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.js +198 -0
  104. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.js.map +1 -0
  105. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  106. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  107. package/build/dist/Server/Services/AlertCustomFieldService.js +9 -0
  108. package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -0
  109. package/build/dist/Server/Services/AlertInternalNoteService.js +9 -0
  110. package/build/dist/Server/Services/AlertInternalNoteService.js.map +1 -0
  111. package/build/dist/Server/Services/AlertNoteTemplateService.js +9 -0
  112. package/build/dist/Server/Services/AlertNoteTemplateService.js.map +1 -0
  113. package/build/dist/Server/Services/AlertOwnerTeamService.js +9 -0
  114. package/build/dist/Server/Services/AlertOwnerTeamService.js.map +1 -0
  115. package/build/dist/Server/Services/AlertOwnerUserService.js +9 -0
  116. package/build/dist/Server/Services/AlertOwnerUserService.js.map +1 -0
  117. package/build/dist/Server/Services/AlertService.js +418 -0
  118. package/build/dist/Server/Services/AlertService.js.map +1 -0
  119. package/build/dist/Server/Services/AlertSeverityService.js +108 -0
  120. package/build/dist/Server/Services/AlertSeverityService.js.map +1 -0
  121. package/build/dist/Server/Services/AlertStateService.js +158 -0
  122. package/build/dist/Server/Services/AlertStateService.js.map +1 -0
  123. package/build/dist/Server/Services/AlertStateTimelineService.js +267 -0
  124. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -0
  125. package/build/dist/Server/Services/CallLogService.js +4 -1
  126. package/build/dist/Server/Services/CallLogService.js.map +1 -1
  127. package/build/dist/Server/Services/DatabaseService.js +9 -9
  128. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  129. package/build/dist/Server/Services/EmailLogService.js +4 -1
  130. package/build/dist/Server/Services/EmailLogService.js.map +1 -1
  131. package/build/dist/Server/Services/IncidentService.js +4 -1
  132. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  133. package/build/dist/Server/Services/IncidentStateTimelineService.js +4 -1
  134. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  135. package/build/dist/Server/Services/Index.js +21 -0
  136. package/build/dist/Server/Services/Index.js.map +1 -1
  137. package/build/dist/Server/Services/MonitorStatusTimelineService.js +4 -1
  138. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  139. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js +4 -1
  140. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js.map +1 -1
  141. package/build/dist/Server/Services/OnCallDutyPolicyService.js +8 -0
  142. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  143. package/build/dist/Server/Services/ProjectService.js +80 -1
  144. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  145. package/build/dist/Server/Services/ScheduledMaintenanceService.js +4 -1
  146. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  147. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +4 -1
  148. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  149. package/build/dist/Server/Services/ShortLinkService.js +4 -1
  150. package/build/dist/Server/Services/ShortLinkService.js.map +1 -1
  151. package/build/dist/Server/Services/SmsLogService.js +4 -1
  152. package/build/dist/Server/Services/SmsLogService.js.map +1 -1
  153. package/build/dist/Server/Services/TableViewService.js +9 -0
  154. package/build/dist/Server/Services/TableViewService.js.map +1 -0
  155. package/build/dist/Server/Services/TelemetryUsageBillingService.js +4 -1
  156. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  157. package/build/dist/Server/Services/UserNotificationSettingService.js +49 -0
  158. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  159. package/build/dist/Server/Services/UserOnCallLogService.js +4 -1
  160. package/build/dist/Server/Services/UserOnCallLogService.js.map +1 -1
  161. package/build/dist/Server/Services/WorkflowLogService.js +4 -1
  162. package/build/dist/Server/Services/WorkflowLogService.js.map +1 -1
  163. package/build/dist/Server/Types/Workflow/Components/API/Post.js +14 -0
  164. package/build/dist/Server/Types/Workflow/Components/API/Post.js.map +1 -1
  165. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +177 -0
  166. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -0
  167. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +187 -0
  168. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -0
  169. package/build/dist/Server/Utils/Monitor/MonitorResource.js +46 -254
  170. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  171. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +79 -0
  172. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -0
  173. package/build/dist/Server/Utils/Realtime.js +3 -28
  174. package/build/dist/Server/Utils/Realtime.js.map +1 -1
  175. package/build/dist/Types/Email/EmailTemplateType.js +4 -0
  176. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  177. package/build/dist/Types/Icon/IconProp.js +1 -0
  178. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  179. package/build/dist/Types/Monitor/CriteriaAlert.js +2 -0
  180. package/build/dist/Types/Monitor/CriteriaAlert.js.map +1 -0
  181. package/build/dist/Types/Monitor/MonitorCriteria.js +1 -0
  182. package/build/dist/Types/Monitor/MonitorCriteria.js.map +1 -1
  183. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +120 -1
  184. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  185. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  186. package/build/dist/Types/Monitor/MonitorSteps.js.map +1 -1
  187. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js +5 -0
  188. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js.map +1 -1
  189. package/build/dist/Types/Permission.js +323 -1
  190. package/build/dist/Types/Permission.js.map +1 -1
  191. package/build/dist/Types/Telemetry/TelemetryQuery.js +2 -0
  192. package/build/dist/Types/Telemetry/TelemetryQuery.js.map +1 -0
  193. package/build/dist/Types/UserNotification/UserNotificationEventType.js +1 -0
  194. package/build/dist/Types/UserNotification/UserNotificationEventType.js.map +1 -1
  195. package/build/dist/UI/Components/Card/Card.js +3 -2
  196. package/build/dist/UI/Components/Card/Card.js.map +1 -1
  197. package/build/dist/UI/Components/Card/CardButtons/MoreButton.js +12 -0
  198. package/build/dist/UI/Components/Card/CardButtons/MoreButton.js.map +1 -0
  199. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js +53 -9
  200. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js.map +1 -1
  201. package/build/dist/UI/Components/HeaderAlert/HeaderAlertGroup.js +25 -0
  202. package/build/dist/UI/Components/HeaderAlert/HeaderAlertGroup.js.map +1 -0
  203. package/build/dist/UI/Components/HeaderAlert/HeaderModelAlert.js +1 -1
  204. package/build/dist/UI/Components/HeaderAlert/HeaderModelAlert.js.map +1 -1
  205. package/build/dist/UI/Components/Icon/Icon.js +3 -0
  206. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  207. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js.map +1 -1
  208. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +46 -0
  209. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  210. package/build/dist/UI/Components/ModelTable/TableView.js +183 -0
  211. package/build/dist/UI/Components/ModelTable/TableView.js.map +1 -0
  212. package/build/dist/UI/Components/MoreMenu/Divider.js +6 -0
  213. package/build/dist/UI/Components/MoreMenu/Divider.js.map +1 -0
  214. package/build/dist/UI/Components/MoreMenu/MoreMenu.js +19 -0
  215. package/build/dist/UI/Components/MoreMenu/MoreMenu.js.map +1 -0
  216. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js +13 -0
  217. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js.map +1 -0
  218. package/build/dist/UI/Components/MoreMenu/MoreMenuSection.js +10 -0
  219. package/build/dist/UI/Components/MoreMenu/MoreMenuSection.js.map +1 -0
  220. package/build/dist/UI/Components/Toggle/Toggle.js +7 -1
  221. package/build/dist/UI/Components/Toggle/Toggle.js.map +1 -1
  222. package/package.json +2 -2
@@ -0,0 +1,1028 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import AlertSeverity from "./AlertSeverity";
11
+ import AlertState from "./AlertState";
12
+ import Label from "./Label";
13
+ import Monitor from "./Monitor";
14
+ import MonitorStatus from "./MonitorStatus";
15
+ import OnCallDutyPolicy from "./OnCallDutyPolicy";
16
+ import Probe from "./Probe";
17
+ import Project from "./Project";
18
+ import User from "./User";
19
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
20
+ import Route from "../../Types/API/Route";
21
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
22
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
23
+ import AccessControlColumn from "../../Types/Database/AccessControlColumn";
24
+ import ColumnLength from "../../Types/Database/ColumnLength";
25
+ import ColumnType from "../../Types/Database/ColumnType";
26
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
27
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
28
+ import EnableWorkflow from "../../Types/Database/EnableWorkflow";
29
+ import MultiTenentQueryAllowed from "../../Types/Database/MultiTenentQueryAllowed";
30
+ import TableColumn from "../../Types/Database/TableColumn";
31
+ import TableColumnType from "../../Types/Database/TableColumnType";
32
+ import TableMetadata from "../../Types/Database/TableMetadata";
33
+ import TenantColumn from "../../Types/Database/TenantColumn";
34
+ import IconProp from "../../Types/Icon/IconProp";
35
+ import ObjectID from "../../Types/ObjectID";
36
+ import Permission from "../../Types/Permission";
37
+ import { Column, Entity, Index, JoinColumn, JoinTable, ManyToMany, ManyToOne, } from "typeorm";
38
+ let Alert = class Alert extends BaseModel {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.project = undefined;
42
+ this.projectId = undefined;
43
+ this.title = undefined;
44
+ this.description = undefined;
45
+ this.createdByUser = undefined;
46
+ this.createdByUserId = undefined;
47
+ this.deletedByUser = undefined;
48
+ this.deletedByUserId = undefined;
49
+ // monitor this alert was created for.
50
+ this.monitor = undefined;
51
+ this.monitorId = undefined;
52
+ this.onCallDutyPolicies = undefined; // monitors affected by this alert.
53
+ this.labels = undefined;
54
+ this.currentAlertState = undefined;
55
+ this.currentAlertStateId = undefined;
56
+ this.alertSeverity = undefined;
57
+ this.alertSeverityId = undefined;
58
+ this.monitorStatusWhenThisAlertWasCreated = undefined;
59
+ this.monitorStatusWhenThisAlertWasCreatedId = undefined;
60
+ this.customFields = undefined;
61
+ this.isOwnerNotifiedOfAlertCreation = undefined;
62
+ this.rootCause = undefined;
63
+ this.createdStateLog = undefined;
64
+ this.createdCriteriaId = undefined;
65
+ this.createdByProbe = undefined;
66
+ this.createdByProbeId = undefined;
67
+ this.isCreatedAutomatically = undefined;
68
+ this.remediationNotes = undefined;
69
+ this.telemetryQuery = undefined;
70
+ }
71
+ };
72
+ __decorate([
73
+ ColumnAccessControl({
74
+ create: [
75
+ Permission.ProjectOwner,
76
+ Permission.ProjectAdmin,
77
+ Permission.ProjectMember,
78
+ Permission.CreateAlert,
79
+ ],
80
+ read: [
81
+ Permission.ProjectOwner,
82
+ Permission.ProjectAdmin,
83
+ Permission.ProjectMember,
84
+ Permission.ReadAlert,
85
+ ],
86
+ update: [],
87
+ }),
88
+ TableColumn({
89
+ manyToOneRelationColumn: "projectId",
90
+ type: TableColumnType.Entity,
91
+ modelType: Project,
92
+ title: "Project",
93
+ description: "Relation to Project Resource in which this object belongs",
94
+ }),
95
+ ManyToOne(() => {
96
+ return Project;
97
+ }, {
98
+ eager: false,
99
+ nullable: true,
100
+ onDelete: "CASCADE",
101
+ orphanedRowAction: "nullify",
102
+ }),
103
+ JoinColumn({ name: "projectId" }),
104
+ __metadata("design:type", Project)
105
+ ], Alert.prototype, "project", void 0);
106
+ __decorate([
107
+ ColumnAccessControl({
108
+ create: [
109
+ Permission.ProjectOwner,
110
+ Permission.ProjectAdmin,
111
+ Permission.ProjectMember,
112
+ Permission.CreateAlert,
113
+ ],
114
+ read: [
115
+ Permission.ProjectOwner,
116
+ Permission.ProjectAdmin,
117
+ Permission.ProjectMember,
118
+ Permission.ReadAlert,
119
+ ],
120
+ update: [],
121
+ }),
122
+ Index(),
123
+ TableColumn({
124
+ type: TableColumnType.ObjectID,
125
+ required: true,
126
+ canReadOnRelationQuery: true,
127
+ title: "Project ID",
128
+ description: "ID of your OneUptime Project in which this object belongs",
129
+ }),
130
+ Column({
131
+ type: ColumnType.ObjectID,
132
+ nullable: false,
133
+ transformer: ObjectID.getDatabaseTransformer(),
134
+ }),
135
+ __metadata("design:type", ObjectID)
136
+ ], Alert.prototype, "projectId", void 0);
137
+ __decorate([
138
+ ColumnAccessControl({
139
+ create: [
140
+ Permission.ProjectOwner,
141
+ Permission.ProjectAdmin,
142
+ Permission.ProjectMember,
143
+ Permission.CreateAlert,
144
+ ],
145
+ read: [
146
+ Permission.ProjectOwner,
147
+ Permission.ProjectAdmin,
148
+ Permission.ProjectMember,
149
+ Permission.ReadAlert,
150
+ ],
151
+ update: [
152
+ Permission.ProjectOwner,
153
+ Permission.ProjectAdmin,
154
+ Permission.ProjectMember,
155
+ Permission.EditAlert,
156
+ ],
157
+ }),
158
+ Index(),
159
+ TableColumn({
160
+ required: true,
161
+ type: TableColumnType.LongText,
162
+ canReadOnRelationQuery: true,
163
+ title: "Title",
164
+ description: "Title of this alert",
165
+ }),
166
+ Column({
167
+ nullable: false,
168
+ type: ColumnType.LongText,
169
+ length: ColumnLength.LongText,
170
+ }),
171
+ __metadata("design:type", String)
172
+ ], Alert.prototype, "title", void 0);
173
+ __decorate([
174
+ ColumnAccessControl({
175
+ create: [
176
+ Permission.ProjectOwner,
177
+ Permission.ProjectAdmin,
178
+ Permission.ProjectMember,
179
+ Permission.CreateAlert,
180
+ ],
181
+ read: [
182
+ Permission.ProjectOwner,
183
+ Permission.ProjectAdmin,
184
+ Permission.ProjectMember,
185
+ Permission.ReadAlert,
186
+ ],
187
+ update: [
188
+ Permission.ProjectOwner,
189
+ Permission.ProjectAdmin,
190
+ Permission.ProjectMember,
191
+ Permission.EditAlert,
192
+ ],
193
+ }),
194
+ TableColumn({
195
+ required: false,
196
+ type: TableColumnType.Markdown,
197
+ title: "Description",
198
+ description: "Short description of this alert. This is in markdown and will be visible on the status page.",
199
+ }),
200
+ Column({
201
+ nullable: true,
202
+ type: ColumnType.Markdown,
203
+ }),
204
+ __metadata("design:type", String)
205
+ ], Alert.prototype, "description", void 0);
206
+ __decorate([
207
+ ColumnAccessControl({
208
+ create: [
209
+ Permission.ProjectOwner,
210
+ Permission.ProjectAdmin,
211
+ Permission.ProjectMember,
212
+ Permission.CreateAlert,
213
+ ],
214
+ read: [
215
+ Permission.ProjectOwner,
216
+ Permission.ProjectAdmin,
217
+ Permission.ProjectMember,
218
+ Permission.ReadAlert,
219
+ ],
220
+ update: [],
221
+ }),
222
+ TableColumn({
223
+ manyToOneRelationColumn: "createdByUserId",
224
+ type: TableColumnType.Entity,
225
+ modelType: User,
226
+ title: "Created by User",
227
+ description: "Relation to User who created this object (if this object was created by a User)",
228
+ }),
229
+ ManyToOne(() => {
230
+ return User;
231
+ }, {
232
+ eager: false,
233
+ nullable: true,
234
+ onDelete: "SET NULL",
235
+ orphanedRowAction: "nullify",
236
+ }),
237
+ JoinColumn({ name: "createdByUserId" }),
238
+ __metadata("design:type", User)
239
+ ], Alert.prototype, "createdByUser", void 0);
240
+ __decorate([
241
+ ColumnAccessControl({
242
+ create: [
243
+ Permission.ProjectOwner,
244
+ Permission.ProjectAdmin,
245
+ Permission.ProjectMember,
246
+ Permission.CreateAlert,
247
+ ],
248
+ read: [
249
+ Permission.ProjectOwner,
250
+ Permission.ProjectAdmin,
251
+ Permission.ProjectMember,
252
+ Permission.ReadAlert,
253
+ ],
254
+ update: [],
255
+ }),
256
+ TableColumn({
257
+ type: TableColumnType.ObjectID,
258
+ title: "Created by User ID",
259
+ description: "User ID who created this object (if this object was created by a User)",
260
+ }),
261
+ Column({
262
+ type: ColumnType.ObjectID,
263
+ nullable: true,
264
+ transformer: ObjectID.getDatabaseTransformer(),
265
+ }),
266
+ __metadata("design:type", ObjectID)
267
+ ], Alert.prototype, "createdByUserId", void 0);
268
+ __decorate([
269
+ ColumnAccessControl({
270
+ create: [],
271
+ read: [],
272
+ update: [],
273
+ }),
274
+ TableColumn({
275
+ manyToOneRelationColumn: "deletedByUserId",
276
+ type: TableColumnType.Entity,
277
+ title: "Deleted by User",
278
+ description: "Relation to User who deleted this object (if this object was deleted by a User)",
279
+ }),
280
+ ManyToOne(() => {
281
+ return User;
282
+ }, {
283
+ cascade: false,
284
+ eager: false,
285
+ nullable: true,
286
+ onDelete: "SET NULL",
287
+ orphanedRowAction: "nullify",
288
+ }),
289
+ JoinColumn({ name: "deletedByUserId" }),
290
+ __metadata("design:type", User)
291
+ ], Alert.prototype, "deletedByUser", void 0);
292
+ __decorate([
293
+ ColumnAccessControl({
294
+ create: [],
295
+ read: [],
296
+ update: [],
297
+ }),
298
+ TableColumn({
299
+ type: TableColumnType.ObjectID,
300
+ title: "Deleted by User ID",
301
+ description: "User ID who deleted this object (if this object was deleted by a User)",
302
+ }),
303
+ Column({
304
+ type: ColumnType.ObjectID,
305
+ nullable: true,
306
+ transformer: ObjectID.getDatabaseTransformer(),
307
+ }),
308
+ __metadata("design:type", ObjectID)
309
+ ], Alert.prototype, "deletedByUserId", void 0);
310
+ __decorate([
311
+ ColumnAccessControl({
312
+ create: [
313
+ Permission.ProjectOwner,
314
+ Permission.ProjectAdmin,
315
+ Permission.ProjectMember,
316
+ Permission.CreateAlert,
317
+ ],
318
+ read: [
319
+ Permission.ProjectOwner,
320
+ Permission.ProjectAdmin,
321
+ Permission.ProjectMember,
322
+ Permission.ReadAlert,
323
+ ],
324
+ update: [
325
+ Permission.ProjectOwner,
326
+ Permission.ProjectAdmin,
327
+ Permission.ProjectMember,
328
+ Permission.EditAlert,
329
+ ],
330
+ }),
331
+ TableColumn({
332
+ manyToOneRelationColumn: "monitorId",
333
+ type: TableColumnType.Entity,
334
+ modelType: Monitor,
335
+ title: "Monitor",
336
+ description: "Relation to monitor this alert belongs to",
337
+ }),
338
+ ManyToOne(() => {
339
+ return Monitor;
340
+ }, {
341
+ cascade: false,
342
+ eager: false,
343
+ nullable: true,
344
+ onDelete: "SET NULL",
345
+ orphanedRowAction: "nullify",
346
+ }),
347
+ JoinColumn({ name: "monitorId" }),
348
+ __metadata("design:type", Monitor)
349
+ ], Alert.prototype, "monitor", void 0);
350
+ __decorate([
351
+ ColumnAccessControl({
352
+ create: [
353
+ Permission.ProjectOwner,
354
+ Permission.ProjectAdmin,
355
+ Permission.ProjectMember,
356
+ Permission.CreateAlert,
357
+ ],
358
+ read: [
359
+ Permission.ProjectOwner,
360
+ Permission.ProjectAdmin,
361
+ Permission.ProjectMember,
362
+ Permission.ReadAlert,
363
+ ],
364
+ update: [
365
+ Permission.ProjectOwner,
366
+ Permission.ProjectAdmin,
367
+ Permission.ProjectMember,
368
+ Permission.EditAlert,
369
+ ],
370
+ }),
371
+ TableColumn({
372
+ type: TableColumnType.ObjectID,
373
+ title: "Deleted by User ID",
374
+ description: "User ID who deleted this object (if this object was deleted by a User)",
375
+ }),
376
+ Column({
377
+ type: ColumnType.ObjectID,
378
+ nullable: true,
379
+ transformer: ObjectID.getDatabaseTransformer(),
380
+ }),
381
+ __metadata("design:type", ObjectID)
382
+ ], Alert.prototype, "monitorId", void 0);
383
+ __decorate([
384
+ ColumnAccessControl({
385
+ create: [
386
+ Permission.ProjectOwner,
387
+ Permission.ProjectAdmin,
388
+ Permission.ProjectMember,
389
+ Permission.CreateAlert,
390
+ ],
391
+ read: [
392
+ Permission.ProjectOwner,
393
+ Permission.ProjectAdmin,
394
+ Permission.ProjectMember,
395
+ Permission.ReadAlert,
396
+ ],
397
+ update: [
398
+ Permission.ProjectOwner,
399
+ Permission.ProjectAdmin,
400
+ Permission.ProjectMember,
401
+ Permission.EditAlert,
402
+ ],
403
+ }),
404
+ TableColumn({
405
+ required: false,
406
+ type: TableColumnType.EntityArray,
407
+ modelType: Monitor,
408
+ title: "On-Call Duty Policies",
409
+ description: "List of on-call duty policy affected by this alert.",
410
+ }),
411
+ ManyToMany(() => {
412
+ return OnCallDutyPolicy;
413
+ }, { eager: false }),
414
+ JoinTable({
415
+ name: "AlertOnCallDutyPolicy",
416
+ inverseJoinColumn: {
417
+ name: "monitorId",
418
+ referencedColumnName: "_id",
419
+ },
420
+ joinColumn: {
421
+ name: "onCallDutyPolicyId",
422
+ referencedColumnName: "_id",
423
+ },
424
+ }),
425
+ __metadata("design:type", Array)
426
+ ], Alert.prototype, "onCallDutyPolicies", void 0);
427
+ __decorate([
428
+ ColumnAccessControl({
429
+ create: [
430
+ Permission.ProjectOwner,
431
+ Permission.ProjectAdmin,
432
+ Permission.ProjectMember,
433
+ Permission.CreateAlert,
434
+ ],
435
+ read: [
436
+ Permission.ProjectOwner,
437
+ Permission.ProjectAdmin,
438
+ Permission.ProjectMember,
439
+ Permission.ReadAlert,
440
+ ],
441
+ update: [
442
+ Permission.ProjectOwner,
443
+ Permission.ProjectAdmin,
444
+ Permission.ProjectMember,
445
+ Permission.EditAlert,
446
+ ],
447
+ }),
448
+ TableColumn({
449
+ required: false,
450
+ type: TableColumnType.EntityArray,
451
+ modelType: Label,
452
+ title: "Labels",
453
+ description: "Relation to Labels Array where this object is categorized in.",
454
+ }),
455
+ ManyToMany(() => {
456
+ return Label;
457
+ }, { eager: false }),
458
+ JoinTable({
459
+ name: "AlertLabel",
460
+ inverseJoinColumn: {
461
+ name: "labelId",
462
+ referencedColumnName: "_id",
463
+ },
464
+ joinColumn: {
465
+ name: "alertId",
466
+ referencedColumnName: "_id",
467
+ },
468
+ }),
469
+ __metadata("design:type", Array)
470
+ ], Alert.prototype, "labels", void 0);
471
+ __decorate([
472
+ ColumnAccessControl({
473
+ create: [
474
+ Permission.ProjectOwner,
475
+ Permission.ProjectAdmin,
476
+ Permission.ProjectMember,
477
+ Permission.CreateAlert,
478
+ ],
479
+ read: [
480
+ Permission.ProjectOwner,
481
+ Permission.ProjectAdmin,
482
+ Permission.ProjectMember,
483
+ Permission.ReadAlert,
484
+ ],
485
+ update: [
486
+ Permission.ProjectOwner,
487
+ Permission.ProjectAdmin,
488
+ Permission.ProjectMember,
489
+ Permission.EditAlert,
490
+ ],
491
+ }),
492
+ TableColumn({
493
+ manyToOneRelationColumn: "currentAlertStateId",
494
+ type: TableColumnType.Entity,
495
+ modelType: AlertState,
496
+ title: "Current Alert State",
497
+ description: "Current state of this alert. Is the alert acknowledged? or resolved?. This is related to Alert State",
498
+ }),
499
+ ManyToOne(() => {
500
+ return AlertState;
501
+ }, {
502
+ eager: false,
503
+ nullable: true,
504
+ orphanedRowAction: "nullify",
505
+ }),
506
+ JoinColumn({ name: "currentAlertStateId" }),
507
+ __metadata("design:type", AlertState)
508
+ ], Alert.prototype, "currentAlertState", void 0);
509
+ __decorate([
510
+ ColumnAccessControl({
511
+ create: [
512
+ Permission.ProjectOwner,
513
+ Permission.ProjectAdmin,
514
+ Permission.ProjectMember,
515
+ Permission.CreateAlert,
516
+ ],
517
+ read: [
518
+ Permission.ProjectOwner,
519
+ Permission.ProjectAdmin,
520
+ Permission.ProjectMember,
521
+ Permission.ReadAlert,
522
+ ],
523
+ update: [
524
+ Permission.ProjectOwner,
525
+ Permission.ProjectAdmin,
526
+ Permission.ProjectMember,
527
+ Permission.EditAlert,
528
+ ],
529
+ }),
530
+ Index(),
531
+ TableColumn({
532
+ type: TableColumnType.ObjectID,
533
+ required: true,
534
+ title: "Current Alert State ID",
535
+ description: "Current Alert State ID",
536
+ }),
537
+ Column({
538
+ type: ColumnType.ObjectID,
539
+ nullable: false,
540
+ transformer: ObjectID.getDatabaseTransformer(),
541
+ }),
542
+ __metadata("design:type", ObjectID)
543
+ ], Alert.prototype, "currentAlertStateId", void 0);
544
+ __decorate([
545
+ ColumnAccessControl({
546
+ create: [
547
+ Permission.ProjectOwner,
548
+ Permission.ProjectAdmin,
549
+ Permission.ProjectMember,
550
+ Permission.CreateAlert,
551
+ ],
552
+ read: [
553
+ Permission.ProjectOwner,
554
+ Permission.ProjectAdmin,
555
+ Permission.ProjectMember,
556
+ Permission.ReadAlert,
557
+ ],
558
+ update: [
559
+ Permission.ProjectOwner,
560
+ Permission.ProjectAdmin,
561
+ Permission.ProjectMember,
562
+ Permission.EditAlert,
563
+ ],
564
+ }),
565
+ TableColumn({
566
+ manyToOneRelationColumn: "alertSeverityId",
567
+ type: TableColumnType.Entity,
568
+ modelType: AlertSeverity,
569
+ title: "Alert Severity",
570
+ description: "How severe is this alert. Is it critical? or a minor alert?. This is related to Alert Severity.",
571
+ }),
572
+ ManyToOne(() => {
573
+ return AlertSeverity;
574
+ }, {
575
+ eager: false,
576
+ nullable: true,
577
+ orphanedRowAction: "nullify",
578
+ }),
579
+ JoinColumn({ name: "alertSeverityId" }),
580
+ __metadata("design:type", AlertSeverity)
581
+ ], Alert.prototype, "alertSeverity", void 0);
582
+ __decorate([
583
+ ColumnAccessControl({
584
+ create: [
585
+ Permission.ProjectOwner,
586
+ Permission.ProjectAdmin,
587
+ Permission.ProjectMember,
588
+ Permission.CreateAlert,
589
+ ],
590
+ read: [
591
+ Permission.ProjectOwner,
592
+ Permission.ProjectAdmin,
593
+ Permission.ProjectMember,
594
+ Permission.ReadAlert,
595
+ ],
596
+ update: [
597
+ Permission.ProjectOwner,
598
+ Permission.ProjectAdmin,
599
+ Permission.ProjectMember,
600
+ Permission.EditAlert,
601
+ ],
602
+ }),
603
+ Index(),
604
+ TableColumn({
605
+ type: TableColumnType.ObjectID,
606
+ required: true,
607
+ title: "Alert Severity ID",
608
+ description: "Alert Severity ID",
609
+ }),
610
+ Column({
611
+ type: ColumnType.ObjectID,
612
+ nullable: false,
613
+ transformer: ObjectID.getDatabaseTransformer(),
614
+ }),
615
+ __metadata("design:type", ObjectID)
616
+ ], Alert.prototype, "alertSeverityId", void 0);
617
+ __decorate([
618
+ ColumnAccessControl({
619
+ create: [
620
+ Permission.ProjectOwner,
621
+ Permission.ProjectAdmin,
622
+ Permission.ProjectMember,
623
+ Permission.CreateAlert,
624
+ ],
625
+ read: [
626
+ Permission.ProjectOwner,
627
+ Permission.ProjectAdmin,
628
+ Permission.ProjectMember,
629
+ Permission.ReadAlert,
630
+ ],
631
+ update: [],
632
+ }),
633
+ TableColumn({
634
+ manyToOneRelationColumn: "monitorStatusWhenThisAlertWasCreatedId",
635
+ type: TableColumnType.Entity,
636
+ modelType: AlertState,
637
+ title: "Monitor status when this alert was created",
638
+ description: "Monitor status when this alert was created",
639
+ }),
640
+ ManyToOne(() => {
641
+ return MonitorStatus;
642
+ }, {
643
+ eager: false,
644
+ nullable: true,
645
+ orphanedRowAction: "nullify",
646
+ }),
647
+ JoinColumn({ name: "monitorStatusWhenThisAlertWasCreatedId" }),
648
+ __metadata("design:type", MonitorStatus)
649
+ ], Alert.prototype, "monitorStatusWhenThisAlertWasCreated", void 0);
650
+ __decorate([
651
+ ColumnAccessControl({
652
+ create: [
653
+ Permission.ProjectOwner,
654
+ Permission.ProjectAdmin,
655
+ Permission.ProjectMember,
656
+ Permission.CreateAlert,
657
+ ],
658
+ read: [
659
+ Permission.ProjectOwner,
660
+ Permission.ProjectAdmin,
661
+ Permission.ProjectMember,
662
+ Permission.ReadAlert,
663
+ ],
664
+ update: [
665
+ Permission.ProjectOwner,
666
+ Permission.ProjectAdmin,
667
+ Permission.ProjectMember,
668
+ Permission.EditAlert,
669
+ ],
670
+ }),
671
+ Index(),
672
+ TableColumn({
673
+ type: TableColumnType.ObjectID,
674
+ required: false,
675
+ title: "Monitor Status ID when this alert was created",
676
+ description: "Monitor Status ID when this alert was created",
677
+ }),
678
+ Column({
679
+ type: ColumnType.ObjectID,
680
+ nullable: true,
681
+ transformer: ObjectID.getDatabaseTransformer(),
682
+ }),
683
+ __metadata("design:type", ObjectID)
684
+ ], Alert.prototype, "monitorStatusWhenThisAlertWasCreatedId", void 0);
685
+ __decorate([
686
+ ColumnAccessControl({
687
+ create: [
688
+ Permission.ProjectOwner,
689
+ Permission.ProjectAdmin,
690
+ Permission.ProjectMember,
691
+ Permission.CreateAlert,
692
+ ],
693
+ read: [
694
+ Permission.ProjectOwner,
695
+ Permission.ProjectAdmin,
696
+ Permission.ProjectMember,
697
+ Permission.ReadAlert,
698
+ ],
699
+ update: [
700
+ Permission.ProjectOwner,
701
+ Permission.ProjectAdmin,
702
+ Permission.ProjectMember,
703
+ Permission.EditAlert,
704
+ ],
705
+ }),
706
+ TableColumn({
707
+ isDefaultValueColumn: false,
708
+ required: false,
709
+ type: TableColumnType.JSON,
710
+ title: "Custom Fields",
711
+ description: "Custom Fields on this resource.",
712
+ }),
713
+ Column({
714
+ type: ColumnType.JSON,
715
+ nullable: true,
716
+ }),
717
+ __metadata("design:type", Object)
718
+ ], Alert.prototype, "customFields", void 0);
719
+ __decorate([
720
+ ColumnAccessControl({
721
+ create: [
722
+ Permission.ProjectOwner,
723
+ Permission.ProjectAdmin,
724
+ Permission.ProjectMember,
725
+ Permission.CreateAlert,
726
+ ],
727
+ read: [
728
+ Permission.ProjectOwner,
729
+ Permission.ProjectAdmin,
730
+ Permission.ProjectMember,
731
+ Permission.ReadAlert,
732
+ ],
733
+ update: [],
734
+ }),
735
+ Index(),
736
+ TableColumn({
737
+ type: TableColumnType.Boolean,
738
+ required: true,
739
+ isDefaultValueColumn: true,
740
+ title: "Are Owners Notified Of Alert Creation?",
741
+ description: "Are owners notified of when this alert is created?",
742
+ }),
743
+ Column({
744
+ type: ColumnType.Boolean,
745
+ nullable: false,
746
+ default: false,
747
+ }),
748
+ __metadata("design:type", Boolean)
749
+ ], Alert.prototype, "isOwnerNotifiedOfAlertCreation", void 0);
750
+ __decorate([
751
+ ColumnAccessControl({
752
+ create: [
753
+ Permission.ProjectOwner,
754
+ Permission.ProjectAdmin,
755
+ Permission.ProjectMember,
756
+ Permission.CreateAlert,
757
+ ],
758
+ read: [
759
+ Permission.ProjectOwner,
760
+ Permission.ProjectAdmin,
761
+ Permission.ProjectMember,
762
+ Permission.ReadAlert,
763
+ ],
764
+ update: [],
765
+ }),
766
+ Index(),
767
+ TableColumn({
768
+ type: TableColumnType.Markdown,
769
+ required: false,
770
+ isDefaultValueColumn: false,
771
+ title: "Root Cause",
772
+ description: "What is the root cause of this alert?",
773
+ }),
774
+ Column({
775
+ type: ColumnType.Markdown,
776
+ nullable: true,
777
+ }),
778
+ __metadata("design:type", String)
779
+ ], Alert.prototype, "rootCause", void 0);
780
+ __decorate([
781
+ ColumnAccessControl({
782
+ create: [],
783
+ read: [
784
+ Permission.ProjectOwner,
785
+ Permission.ProjectAdmin,
786
+ Permission.ProjectMember,
787
+ Permission.ReadAlert,
788
+ ],
789
+ update: [],
790
+ }),
791
+ TableColumn({
792
+ isDefaultValueColumn: false,
793
+ required: false,
794
+ type: TableColumnType.JSON,
795
+ }),
796
+ Column({
797
+ type: ColumnType.JSON,
798
+ nullable: true,
799
+ unique: false,
800
+ }),
801
+ __metadata("design:type", Object)
802
+ ], Alert.prototype, "createdStateLog", void 0);
803
+ __decorate([
804
+ ColumnAccessControl({
805
+ create: [],
806
+ read: [
807
+ Permission.ProjectOwner,
808
+ Permission.ProjectAdmin,
809
+ Permission.ProjectMember,
810
+ Permission.ReadAlert,
811
+ ],
812
+ update: [],
813
+ }),
814
+ Index(),
815
+ TableColumn({
816
+ type: TableColumnType.LongText,
817
+ required: false,
818
+ isDefaultValueColumn: false,
819
+ title: "Created Criteria ID",
820
+ description: "If this alert was created by a Probe, this is the ID of the criteria that created it.",
821
+ }),
822
+ Column({
823
+ type: ColumnType.LongText,
824
+ nullable: true,
825
+ }),
826
+ __metadata("design:type", String)
827
+ ], Alert.prototype, "createdCriteriaId", void 0);
828
+ __decorate([
829
+ ColumnAccessControl({
830
+ create: [],
831
+ read: [
832
+ Permission.ProjectOwner,
833
+ Permission.ProjectAdmin,
834
+ Permission.ProjectMember,
835
+ Permission.ReadAlert,
836
+ ],
837
+ update: [],
838
+ }),
839
+ TableColumn({
840
+ manyToOneRelationColumn: "createdByProbeId",
841
+ type: TableColumnType.Entity,
842
+ modelType: Probe,
843
+ title: "Created By Probe",
844
+ description: "If this alert was created by a Probe, this is the probe that created it.",
845
+ }),
846
+ ManyToOne(() => {
847
+ return Probe;
848
+ }, {
849
+ eager: false,
850
+ nullable: true,
851
+ onDelete: "SET NULL",
852
+ orphanedRowAction: "nullify",
853
+ }),
854
+ JoinColumn({ name: "createdByProbeId" }),
855
+ __metadata("design:type", Probe)
856
+ ], Alert.prototype, "createdByProbe", void 0);
857
+ __decorate([
858
+ ColumnAccessControl({
859
+ create: [],
860
+ read: [
861
+ Permission.ProjectOwner,
862
+ Permission.ProjectAdmin,
863
+ Permission.ProjectMember,
864
+ Permission.ReadAlert,
865
+ ],
866
+ update: [],
867
+ }),
868
+ Index(),
869
+ TableColumn({
870
+ type: TableColumnType.ObjectID,
871
+ required: false,
872
+ canReadOnRelationQuery: true,
873
+ title: "Created By Probe ID",
874
+ description: "If this alert was created by a Probe, this is the ID of the probe that created it.",
875
+ }),
876
+ Column({
877
+ type: ColumnType.ObjectID,
878
+ nullable: true,
879
+ transformer: ObjectID.getDatabaseTransformer(),
880
+ }),
881
+ __metadata("design:type", ObjectID)
882
+ ], Alert.prototype, "createdByProbeId", void 0);
883
+ __decorate([
884
+ ColumnAccessControl({
885
+ create: [],
886
+ read: [
887
+ Permission.ProjectOwner,
888
+ Permission.ProjectAdmin,
889
+ Permission.ProjectMember,
890
+ Permission.ReadAlert,
891
+ ],
892
+ update: [],
893
+ }),
894
+ TableColumn({
895
+ isDefaultValueColumn: true,
896
+ type: TableColumnType.Boolean,
897
+ title: "Is created automatically?",
898
+ description: "Is this alert created by OneUptime Probe or Workers automatically (and not created manually by a user)?",
899
+ }),
900
+ Column({
901
+ type: ColumnType.Boolean,
902
+ default: false,
903
+ }),
904
+ __metadata("design:type", Boolean)
905
+ ], Alert.prototype, "isCreatedAutomatically", void 0);
906
+ __decorate([
907
+ ColumnAccessControl({
908
+ create: [
909
+ Permission.ProjectOwner,
910
+ Permission.ProjectAdmin,
911
+ Permission.ProjectMember,
912
+ Permission.CreateAlert,
913
+ ],
914
+ read: [
915
+ Permission.ProjectOwner,
916
+ Permission.ProjectAdmin,
917
+ Permission.ProjectMember,
918
+ Permission.ReadAlert,
919
+ ],
920
+ update: [
921
+ Permission.ProjectOwner,
922
+ Permission.ProjectAdmin,
923
+ Permission.ProjectMember,
924
+ Permission.EditAlert,
925
+ ],
926
+ }),
927
+ TableColumn({
928
+ required: false,
929
+ type: TableColumnType.Markdown,
930
+ title: "Remediation Notes",
931
+ description: "Notes on how to remediate this alert. This is in markdown.",
932
+ }),
933
+ Column({
934
+ nullable: true,
935
+ type: ColumnType.Markdown,
936
+ }),
937
+ __metadata("design:type", String)
938
+ ], Alert.prototype, "remediationNotes", void 0);
939
+ __decorate([
940
+ ColumnAccessControl({
941
+ create: [
942
+ Permission.ProjectOwner,
943
+ Permission.ProjectAdmin,
944
+ Permission.ProjectMember,
945
+ Permission.CreateAlert,
946
+ ],
947
+ read: [
948
+ Permission.ProjectOwner,
949
+ Permission.ProjectAdmin,
950
+ Permission.ProjectMember,
951
+ Permission.ReadAlert,
952
+ ],
953
+ update: [
954
+ Permission.ProjectOwner,
955
+ Permission.ProjectAdmin,
956
+ Permission.ProjectMember,
957
+ Permission.EditAlert,
958
+ ],
959
+ }),
960
+ TableColumn({
961
+ isDefaultValueColumn: false,
962
+ required: false,
963
+ type: TableColumnType.JSON,
964
+ title: "Telemetry Query",
965
+ description: "Telemetry query for this alert",
966
+ }),
967
+ Column({
968
+ type: ColumnType.JSON,
969
+ nullable: true,
970
+ }),
971
+ __metadata("design:type", Object)
972
+ ], Alert.prototype, "telemetryQuery", void 0);
973
+ Alert = __decorate([
974
+ EnableDocumentation(),
975
+ AccessControlColumn("labels"),
976
+ MultiTenentQueryAllowed(true),
977
+ TenantColumn("projectId"),
978
+ TableAccessControl({
979
+ create: [
980
+ Permission.ProjectOwner,
981
+ Permission.ProjectAdmin,
982
+ Permission.ProjectMember,
983
+ Permission.CreateAlert,
984
+ ],
985
+ read: [
986
+ Permission.ProjectOwner,
987
+ Permission.ProjectAdmin,
988
+ Permission.ProjectMember,
989
+ Permission.ReadAlert,
990
+ ],
991
+ delete: [
992
+ Permission.ProjectOwner,
993
+ Permission.ProjectAdmin,
994
+ Permission.ProjectMember,
995
+ Permission.DeleteAlert,
996
+ ],
997
+ update: [
998
+ Permission.ProjectOwner,
999
+ Permission.ProjectAdmin,
1000
+ Permission.ProjectMember,
1001
+ Permission.EditAlert,
1002
+ ],
1003
+ }),
1004
+ CrudApiEndpoint(new Route("/alert")),
1005
+ Entity({
1006
+ name: "Alert",
1007
+ }),
1008
+ EnableWorkflow({
1009
+ create: true,
1010
+ delete: true,
1011
+ update: true,
1012
+ read: true,
1013
+ }),
1014
+ TableMetadata({
1015
+ tableName: "Alert",
1016
+ singularName: "Alert",
1017
+ pluralName: "Alerts",
1018
+ icon: IconProp.Alert,
1019
+ tableDescription: "Manage alerts for your project",
1020
+ enableRealtimeEventsOn: {
1021
+ create: true,
1022
+ update: true,
1023
+ delete: true,
1024
+ },
1025
+ })
1026
+ ], Alert);
1027
+ export default Alert;
1028
+ //# sourceMappingURL=Alert.js.map