@oneuptime/common 7.0.2928 → 7.0.2936

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 (469) hide show
  1. package/{AnalyticsModels/BaseModel.ts → Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.ts} +19 -17
  2. package/{AnalyticsModels → Models/AnalyticsModels/AnalyticsBaseModel}/CommonModel.ts +15 -15
  3. package/{AnalyticsModels → Models/AnalyticsModels/AnalyticsBaseModel}/NestedModel.ts +1 -1
  4. package/Models/AnalyticsModels/Index.ts +16 -0
  5. package/Models/AnalyticsModels/Log.ts +365 -0
  6. package/Models/AnalyticsModels/Metric.ts +693 -0
  7. package/Models/AnalyticsModels/MonitorMetricsByMinute.ts +177 -0
  8. package/Models/AnalyticsModels/NestedModels/KeyValueNestedModel.ts +59 -0
  9. package/Models/AnalyticsModels/Span.ts +643 -0
  10. package/Models/AnalyticsModels/TelemetryAttribute.ts +163 -0
  11. package/Models/DatabaseModels/AcmeCertificate.ts +142 -0
  12. package/Models/DatabaseModels/AcmeChallenge.ts +118 -0
  13. package/Models/DatabaseModels/ApiKey.ts +379 -0
  14. package/Models/DatabaseModels/ApiKeyPermission.ts +434 -0
  15. package/Models/DatabaseModels/BillingInvoice.ts +339 -0
  16. package/Models/DatabaseModels/BillingPaymentMethod.ts +317 -0
  17. package/Models/DatabaseModels/CallLog.ts +303 -0
  18. package/Models/DatabaseModels/CopilotAction.ts +545 -0
  19. package/Models/DatabaseModels/CopilotCodeRepository.ts +639 -0
  20. package/Models/DatabaseModels/CopilotPullRequest.ts +468 -0
  21. package/Models/DatabaseModels/DataMigration.ts +183 -0
  22. package/Models/{AccessControlModel.ts → DatabaseModels/DatabaseBaseModel/AccessControlModel.ts} +2 -2
  23. package/Models/{BaseModel.ts → DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts} +53 -48
  24. package/Models/{FileModel.ts → DatabaseModels/DatabaseBaseModel/FileModel.ts} +10 -10
  25. package/Models/{GlobalConfig.ts → DatabaseModels/DatabaseBaseModel/GlobalConfig.ts} +2 -2
  26. package/Models/{TenantModel.ts → DatabaseModels/DatabaseBaseModel/TenantModel.ts} +2 -2
  27. package/Models/{UserModel.ts → DatabaseModels/DatabaseBaseModel/UserModel.ts} +2 -2
  28. package/Models/DatabaseModels/Domain.ts +354 -0
  29. package/Models/DatabaseModels/EmailLog.ts +337 -0
  30. package/Models/DatabaseModels/EmailVerificationToken.ts +163 -0
  31. package/Models/DatabaseModels/File.ts +27 -0
  32. package/Models/DatabaseModels/GlobalConfig.ts +371 -0
  33. package/Models/DatabaseModels/GreenlockCertificate.ts +117 -0
  34. package/Models/DatabaseModels/GreenlockChallenge.ts +118 -0
  35. package/Models/DatabaseModels/Incident.ts +1094 -0
  36. package/Models/DatabaseModels/IncidentCustomField.ts +340 -0
  37. package/Models/DatabaseModels/IncidentInternalNote.ts +371 -0
  38. package/Models/DatabaseModels/IncidentNoteTemplate.ts +344 -0
  39. package/Models/DatabaseModels/IncidentOwnerTeam.ts +416 -0
  40. package/Models/DatabaseModels/IncidentOwnerUser.ts +415 -0
  41. package/Models/DatabaseModels/IncidentPublicNote.ts +453 -0
  42. package/Models/DatabaseModels/IncidentSeverity.ts +426 -0
  43. package/Models/DatabaseModels/IncidentState.ts +526 -0
  44. package/Models/DatabaseModels/IncidentStateTimeline.ts +579 -0
  45. package/Models/DatabaseModels/IncidentTemplate.ts +746 -0
  46. package/Models/DatabaseModels/IncidentTemplateOwnerTeam.ts +418 -0
  47. package/Models/DatabaseModels/IncidentTemplateOwnerUser.ts +429 -0
  48. package/Models/DatabaseModels/Index.ts +292 -0
  49. package/Models/DatabaseModels/Label.ts +381 -0
  50. package/Models/DatabaseModels/Monitor.ts +1045 -0
  51. package/Models/DatabaseModels/MonitorCustomField.ts +340 -0
  52. package/Models/DatabaseModels/MonitorGroup.ts +410 -0
  53. package/Models/DatabaseModels/MonitorGroupOwnerTeam.ts +426 -0
  54. package/Models/DatabaseModels/MonitorGroupOwnerUser.ts +425 -0
  55. package/Models/DatabaseModels/MonitorGroupResource.ts +386 -0
  56. package/Models/DatabaseModels/MonitorOwnerTeam.ts +424 -0
  57. package/Models/DatabaseModels/MonitorOwnerUser.ts +423 -0
  58. package/Models/DatabaseModels/MonitorProbe.ts +480 -0
  59. package/Models/DatabaseModels/MonitorSecret.ts +402 -0
  60. package/Models/DatabaseModels/MonitorStatus.ts +493 -0
  61. package/Models/DatabaseModels/MonitorStatusTimeline.ts +527 -0
  62. package/Models/DatabaseModels/OnCallDutyPolicy.ts +499 -0
  63. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +340 -0
  64. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.ts +439 -0
  65. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.ts +439 -0
  66. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.ts +438 -0
  67. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.ts +437 -0
  68. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +665 -0
  69. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +726 -0
  70. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +403 -0
  71. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +555 -0
  72. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.ts +496 -0
  73. package/Models/DatabaseModels/Probe.ts +567 -0
  74. package/Models/DatabaseModels/ProbeOwnerTeam.ts +424 -0
  75. package/Models/DatabaseModels/ProbeOwnerUser.ts +423 -0
  76. package/Models/DatabaseModels/Project.ts +1168 -0
  77. package/Models/DatabaseModels/ProjectCallSMSConfig.ts +430 -0
  78. package/Models/DatabaseModels/ProjectSmtpConfig.ts +521 -0
  79. package/Models/DatabaseModels/ProjectSso.ts +582 -0
  80. package/Models/DatabaseModels/PromoCode.ts +413 -0
  81. package/Models/DatabaseModels/Reseller.ts +278 -0
  82. package/Models/DatabaseModels/ResellerPlan.ts +306 -0
  83. package/Models/DatabaseModels/ScheduledMaintenance.ts +883 -0
  84. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +340 -0
  85. package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +371 -0
  86. package/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.ts +345 -0
  87. package/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.ts +418 -0
  88. package/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.ts +417 -0
  89. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +454 -0
  90. package/Models/DatabaseModels/ScheduledMaintenanceState.ts +559 -0
  91. package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +527 -0
  92. package/Models/DatabaseModels/ServiceCatalog.ts +512 -0
  93. package/Models/DatabaseModels/ServiceCatalogDependency.ts +412 -0
  94. package/Models/DatabaseModels/ServiceCatalogMonitor.ts +410 -0
  95. package/Models/DatabaseModels/ServiceCatalogOwnerTeam.ts +396 -0
  96. package/Models/DatabaseModels/ServiceCatalogOwnerUser.ts +395 -0
  97. package/Models/DatabaseModels/ServiceCatalogTelemetryService.ts +410 -0
  98. package/Models/DatabaseModels/ServiceCopilotCodeRepository.ts +542 -0
  99. package/Models/DatabaseModels/ShortLink.ts +119 -0
  100. package/Models/DatabaseModels/SmsLog.ts +303 -0
  101. package/Models/DatabaseModels/StatusPage.ts +1867 -0
  102. package/Models/DatabaseModels/StatusPageAnnouncement.ts +512 -0
  103. package/Models/DatabaseModels/StatusPageCustomField.ts +340 -0
  104. package/Models/DatabaseModels/StatusPageDomain.ts +541 -0
  105. package/Models/DatabaseModels/StatusPageFooterLink.ts +421 -0
  106. package/Models/DatabaseModels/StatusPageGroup.ts +479 -0
  107. package/Models/DatabaseModels/StatusPageHeaderLink.ts +421 -0
  108. package/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.ts +416 -0
  109. package/Models/DatabaseModels/StatusPageOwnerTeam.ts +424 -0
  110. package/Models/DatabaseModels/StatusPageOwnerUser.ts +423 -0
  111. package/Models/DatabaseModels/StatusPagePrivateUser.ts +464 -0
  112. package/Models/DatabaseModels/StatusPageResource.ts +810 -0
  113. package/Models/DatabaseModels/StatusPageSso.ts +583 -0
  114. package/Models/DatabaseModels/StatusPageSubscriber.ts +578 -0
  115. package/Models/DatabaseModels/Team.ts +439 -0
  116. package/Models/DatabaseModels/TeamMember.ts +422 -0
  117. package/Models/DatabaseModels/TeamPermission.ts +440 -0
  118. package/Models/DatabaseModels/TelemetryIngestionKey.ts +316 -0
  119. package/Models/DatabaseModels/TelemetryService.ts +523 -0
  120. package/Models/DatabaseModels/TelemetryUsageBilling.ts +415 -0
  121. package/Models/DatabaseModels/User.ts +722 -0
  122. package/Models/DatabaseModels/UserCall.ts +285 -0
  123. package/Models/DatabaseModels/UserEmail.ts +285 -0
  124. package/Models/DatabaseModels/UserNotificationRule.ts +455 -0
  125. package/Models/DatabaseModels/UserNotificationSetting.ts +280 -0
  126. package/Models/DatabaseModels/UserOnCallLog.ts +700 -0
  127. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +848 -0
  128. package/Models/DatabaseModels/UserSMS.ts +285 -0
  129. package/Models/DatabaseModels/UserTwoFactorAuth.ts +208 -0
  130. package/Models/DatabaseModels/Workflow.ts +524 -0
  131. package/Models/DatabaseModels/WorkflowLog.ts +302 -0
  132. package/Models/DatabaseModels/WorkflowVariable.ts +428 -0
  133. package/Models/Permissions/Permission.ts +0 -0
  134. package/Tests/AppModels/File.test.ts +10 -0
  135. package/Tests/Types/Database/Date.test.ts +17 -12
  136. package/Tests/Types/JSONFunctions.test.ts +1 -1
  137. package/Types/API/HTTPResponse.ts +2 -2
  138. package/Types/AnalyticsDatabase/TableColumn.ts +1 -1
  139. package/Types/BaseDatabase/InBetween.ts +18 -2
  140. package/Types/Database/AccessControl/ColumnAccessControl.ts +1 -1
  141. package/Types/Database/AccessControl/ColumnBillingAccessControl.ts +1 -1
  142. package/Types/Database/TableColumn.ts +2 -2
  143. package/Types/Database/UniqueColumnBy.ts +1 -1
  144. package/Types/Date.ts +47 -0
  145. package/Types/JSONFunctions.ts +3 -1
  146. package/Types/Log/LogSeverity.ts +11 -0
  147. package/Types/Monitor/CriteriaFilter.ts +3 -0
  148. package/Types/Monitor/LogMonitor/LogMonitorResponse.ts +8 -0
  149. package/Types/Monitor/MonitorCriteriaInstance.ts +54 -0
  150. package/Types/Monitor/MonitorStep.ts +26 -0
  151. package/Types/Monitor/MonitorStepLogMonitor.ts +95 -0
  152. package/Types/Monitor/MonitorType.ts +26 -0
  153. package/Types/ObjectID.ts +19 -0
  154. package/Types/OnCallDutyPolicy/Layer.ts +1 -1
  155. package/Types/Workflow/Components/BaseModel.ts +1 -1
  156. package/Utils/API.ts +2 -2
  157. package/Utils/Uptime/Event.ts +11 -0
  158. package/Utils/Uptime/MonitorEvent.ts +6 -0
  159. package/Utils/Uptime/UptimeUtil.ts +362 -0
  160. package/build/dist/{AnalyticsModels/BaseModel.js → Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js} +7 -7
  161. package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js.map +1 -0
  162. package/build/dist/{AnalyticsModels → Models/AnalyticsModels/AnalyticsBaseModel}/CommonModel.js +5 -5
  163. package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/CommonModel.js.map +1 -0
  164. package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/NestedModel.js.map +1 -0
  165. package/build/dist/Models/AnalyticsModels/Index.js +14 -0
  166. package/build/dist/Models/AnalyticsModels/Index.js.map +1 -0
  167. package/build/dist/Models/AnalyticsModels/Log.js +333 -0
  168. package/build/dist/Models/AnalyticsModels/Log.js.map +1 -0
  169. package/build/dist/Models/AnalyticsModels/Metric.js +627 -0
  170. package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -0
  171. package/build/dist/Models/AnalyticsModels/MonitorMetricsByMinute.js +149 -0
  172. package/build/dist/Models/AnalyticsModels/MonitorMetricsByMinute.js.map +1 -0
  173. package/build/dist/Models/AnalyticsModels/NestedModels/KeyValueNestedModel.js +51 -0
  174. package/build/dist/Models/AnalyticsModels/NestedModels/KeyValueNestedModel.js.map +1 -0
  175. package/build/dist/Models/AnalyticsModels/Span.js +575 -0
  176. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -0
  177. package/build/dist/Models/AnalyticsModels/TelemetryAttribute.js +153 -0
  178. package/build/dist/Models/AnalyticsModels/TelemetryAttribute.js.map +1 -0
  179. package/build/dist/Models/DatabaseModels/AcmeCertificate.js +167 -0
  180. package/build/dist/Models/DatabaseModels/AcmeCertificate.js.map +1 -0
  181. package/build/dist/Models/DatabaseModels/AcmeChallenge.js +139 -0
  182. package/build/dist/Models/DatabaseModels/AcmeChallenge.js.map +1 -0
  183. package/build/dist/Models/DatabaseModels/ApiKey.js +404 -0
  184. package/build/dist/Models/DatabaseModels/ApiKey.js.map +1 -0
  185. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +444 -0
  186. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -0
  187. package/build/dist/Models/DatabaseModels/BillingInvoice.js +368 -0
  188. package/build/dist/Models/DatabaseModels/BillingInvoice.js.map +1 -0
  189. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js +341 -0
  190. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js.map +1 -0
  191. package/build/dist/Models/DatabaseModels/CallLog.js +330 -0
  192. package/build/dist/Models/DatabaseModels/CallLog.js.map +1 -0
  193. package/build/dist/Models/DatabaseModels/CopilotAction.js +561 -0
  194. package/build/dist/Models/DatabaseModels/CopilotAction.js.map +1 -0
  195. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js +658 -0
  196. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js.map +1 -0
  197. package/build/dist/Models/DatabaseModels/CopilotPullRequest.js +482 -0
  198. package/build/dist/Models/DatabaseModels/CopilotPullRequest.js.map +1 -0
  199. package/build/dist/Models/DatabaseModels/DataMigration.js +203 -0
  200. package/build/dist/Models/DatabaseModels/DataMigration.js.map +1 -0
  201. package/build/dist/Models/{AccessControlModel.js → DatabaseModels/DatabaseBaseModel/AccessControlModel.js} +1 -1
  202. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/AccessControlModel.js.map +1 -0
  203. package/build/dist/Models/{BaseModel.js → DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js} +22 -22
  204. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -0
  205. package/build/dist/Models/{FileModel.js → DatabaseModels/DatabaseBaseModel/FileModel.js} +10 -10
  206. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/FileModel.js.map +1 -0
  207. package/build/dist/Models/{GlobalConfig.js → DatabaseModels/DatabaseBaseModel/GlobalConfig.js} +1 -1
  208. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/GlobalConfig.js.map +1 -0
  209. package/build/dist/Models/{TenantModel.js → DatabaseModels/DatabaseBaseModel/TenantModel.js} +1 -1
  210. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/TenantModel.js.map +1 -0
  211. package/build/dist/Models/{UserModel.js → DatabaseModels/DatabaseBaseModel/UserModel.js} +1 -1
  212. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/UserModel.js.map +1 -0
  213. package/build/dist/Models/DatabaseModels/Domain.js +376 -0
  214. package/build/dist/Models/DatabaseModels/Domain.js.map +1 -0
  215. package/build/dist/Models/DatabaseModels/EmailLog.js +362 -0
  216. package/build/dist/Models/DatabaseModels/EmailLog.js.map +1 -0
  217. package/build/dist/Models/DatabaseModels/EmailVerificationToken.js +184 -0
  218. package/build/dist/Models/DatabaseModels/EmailVerificationToken.js.map +1 -0
  219. package/build/dist/Models/DatabaseModels/File.js +37 -0
  220. package/build/dist/Models/DatabaseModels/File.js.map +1 -0
  221. package/build/dist/Models/DatabaseModels/GlobalConfig.js +419 -0
  222. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -0
  223. package/build/dist/Models/DatabaseModels/GreenlockCertificate.js +138 -0
  224. package/build/dist/Models/DatabaseModels/GreenlockCertificate.js.map +1 -0
  225. package/build/dist/Models/DatabaseModels/GreenlockChallenge.js +139 -0
  226. package/build/dist/Models/DatabaseModels/GreenlockChallenge.js.map +1 -0
  227. package/build/dist/Models/DatabaseModels/Incident.js +1106 -0
  228. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -0
  229. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +360 -0
  230. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -0
  231. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +391 -0
  232. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -0
  233. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js +364 -0
  234. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js.map +1 -0
  235. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js +434 -0
  236. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js.map +1 -0
  237. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js +433 -0
  238. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js.map +1 -0
  239. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +478 -0
  240. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -0
  241. package/build/dist/Models/DatabaseModels/IncidentSeverity.js +450 -0
  242. package/build/dist/Models/DatabaseModels/IncidentSeverity.js.map +1 -0
  243. package/build/dist/Models/DatabaseModels/IncidentState.js +556 -0
  244. package/build/dist/Models/DatabaseModels/IncidentState.js.map +1 -0
  245. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +606 -0
  246. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -0
  247. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +758 -0
  248. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -0
  249. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js +434 -0
  250. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js.map +1 -0
  251. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js +445 -0
  252. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js.map +1 -0
  253. package/build/dist/Models/DatabaseModels/Index.js +252 -0
  254. package/build/dist/Models/DatabaseModels/Index.js.map +1 -0
  255. package/build/dist/Models/DatabaseModels/Label.js +403 -0
  256. package/build/dist/Models/DatabaseModels/Label.js.map +1 -0
  257. package/build/dist/Models/DatabaseModels/Monitor.js +1077 -0
  258. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -0
  259. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +360 -0
  260. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -0
  261. package/build/dist/Models/DatabaseModels/MonitorGroup.js +420 -0
  262. package/build/dist/Models/DatabaseModels/MonitorGroup.js.map +1 -0
  263. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js +442 -0
  264. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js.map +1 -0
  265. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js +441 -0
  266. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js.map +1 -0
  267. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js +402 -0
  268. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js.map +1 -0
  269. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js +442 -0
  270. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js.map +1 -0
  271. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js +441 -0
  272. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js.map +1 -0
  273. package/build/dist/Models/DatabaseModels/MonitorProbe.js +499 -0
  274. package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -0
  275. package/build/dist/Models/DatabaseModels/MonitorSecret.js +399 -0
  276. package/build/dist/Models/DatabaseModels/MonitorSecret.js.map +1 -0
  277. package/build/dist/Models/DatabaseModels/MonitorStatus.js +520 -0
  278. package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -0
  279. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +550 -0
  280. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -0
  281. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js +513 -0
  282. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js.map +1 -0
  283. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +360 -0
  284. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -0
  285. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js +459 -0
  286. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js.map +1 -0
  287. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js +450 -0
  288. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js.map +1 -0
  289. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js +450 -0
  290. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js.map +1 -0
  291. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js +449 -0
  292. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js.map +1 -0
  293. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +690 -0
  294. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -0
  295. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +747 -0
  296. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -0
  297. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +413 -0
  298. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -0
  299. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +579 -0
  300. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -0
  301. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js +510 -0
  302. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js.map +1 -0
  303. package/build/dist/Models/DatabaseModels/Probe.js +593 -0
  304. package/build/dist/Models/DatabaseModels/Probe.js.map +1 -0
  305. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js +442 -0
  306. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js.map +1 -0
  307. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js +441 -0
  308. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js.map +1 -0
  309. package/build/dist/Models/DatabaseModels/Project.js +1264 -0
  310. package/build/dist/Models/DatabaseModels/Project.js.map +1 -0
  311. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js +456 -0
  312. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js.map +1 -0
  313. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js +556 -0
  314. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js.map +1 -0
  315. package/build/dist/Models/DatabaseModels/ProjectSso.js +600 -0
  316. package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -0
  317. package/build/dist/Models/DatabaseModels/PromoCode.js +436 -0
  318. package/build/dist/Models/DatabaseModels/PromoCode.js.map +1 -0
  319. package/build/dist/Models/DatabaseModels/Reseller.js +307 -0
  320. package/build/dist/Models/DatabaseModels/Reseller.js.map +1 -0
  321. package/build/dist/Models/DatabaseModels/ResellerPlan.js +332 -0
  322. package/build/dist/Models/DatabaseModels/ResellerPlan.js.map +1 -0
  323. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +898 -0
  324. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -0
  325. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +360 -0
  326. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -0
  327. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +389 -0
  328. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -0
  329. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js +364 -0
  330. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js.map +1 -0
  331. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js +434 -0
  332. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js.map +1 -0
  333. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js +433 -0
  334. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js.map +1 -0
  335. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +478 -0
  336. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -0
  337. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js +591 -0
  338. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js.map +1 -0
  339. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +551 -0
  340. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -0
  341. package/build/dist/Models/DatabaseModels/ServiceCatalog.js +527 -0
  342. package/build/dist/Models/DatabaseModels/ServiceCatalog.js.map +1 -0
  343. package/build/dist/Models/DatabaseModels/ServiceCatalogDependency.js +424 -0
  344. package/build/dist/Models/DatabaseModels/ServiceCatalogDependency.js.map +1 -0
  345. package/build/dist/Models/DatabaseModels/ServiceCatalogMonitor.js +425 -0
  346. package/build/dist/Models/DatabaseModels/ServiceCatalogMonitor.js.map +1 -0
  347. package/build/dist/Models/DatabaseModels/ServiceCatalogOwnerTeam.js +410 -0
  348. package/build/dist/Models/DatabaseModels/ServiceCatalogOwnerTeam.js.map +1 -0
  349. package/build/dist/Models/DatabaseModels/ServiceCatalogOwnerUser.js +409 -0
  350. package/build/dist/Models/DatabaseModels/ServiceCatalogOwnerUser.js.map +1 -0
  351. package/build/dist/Models/DatabaseModels/ServiceCatalogTelemetryService.js +425 -0
  352. package/build/dist/Models/DatabaseModels/ServiceCatalogTelemetryService.js.map +1 -0
  353. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js +559 -0
  354. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js.map +1 -0
  355. package/build/dist/Models/DatabaseModels/ShortLink.js +137 -0
  356. package/build/dist/Models/DatabaseModels/ShortLink.js.map +1 -0
  357. package/build/dist/Models/DatabaseModels/SmsLog.js +330 -0
  358. package/build/dist/Models/DatabaseModels/SmsLog.js.map +1 -0
  359. package/build/dist/Models/DatabaseModels/StatusPage.js +1927 -0
  360. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -0
  361. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +532 -0
  362. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -0
  363. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +360 -0
  364. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -0
  365. package/build/dist/Models/DatabaseModels/StatusPageDomain.js +568 -0
  366. package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -0
  367. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js +438 -0
  368. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js.map +1 -0
  369. package/build/dist/Models/DatabaseModels/StatusPageGroup.js +502 -0
  370. package/build/dist/Models/DatabaseModels/StatusPageGroup.js.map +1 -0
  371. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js +438 -0
  372. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js.map +1 -0
  373. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js +435 -0
  374. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js.map +1 -0
  375. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js +442 -0
  376. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js.map +1 -0
  377. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js +441 -0
  378. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js.map +1 -0
  379. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +489 -0
  380. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -0
  381. package/build/dist/Models/DatabaseModels/StatusPageResource.js +839 -0
  382. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -0
  383. package/build/dist/Models/DatabaseModels/StatusPageSso.js +607 -0
  384. package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -0
  385. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js +594 -0
  386. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js.map +1 -0
  387. package/build/dist/Models/DatabaseModels/Team.js +463 -0
  388. package/build/dist/Models/DatabaseModels/Team.js.map +1 -0
  389. package/build/dist/Models/DatabaseModels/TeamMember.js +442 -0
  390. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -0
  391. package/build/dist/Models/DatabaseModels/TeamPermission.js +450 -0
  392. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -0
  393. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +337 -0
  394. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -0
  395. package/build/dist/Models/DatabaseModels/TelemetryService.js +539 -0
  396. package/build/dist/Models/DatabaseModels/TelemetryService.js.map +1 -0
  397. package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js +439 -0
  398. package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js.map +1 -0
  399. package/build/dist/Models/DatabaseModels/User.js +782 -0
  400. package/build/dist/Models/DatabaseModels/User.js.map +1 -0
  401. package/build/dist/Models/DatabaseModels/UserCall.js +305 -0
  402. package/build/dist/Models/DatabaseModels/UserCall.js.map +1 -0
  403. package/build/dist/Models/DatabaseModels/UserEmail.js +305 -0
  404. package/build/dist/Models/DatabaseModels/UserEmail.js.map +1 -0
  405. package/build/dist/Models/DatabaseModels/UserNotificationRule.js +475 -0
  406. package/build/dist/Models/DatabaseModels/UserNotificationRule.js.map +1 -0
  407. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js +302 -0
  408. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js.map +1 -0
  409. package/build/dist/Models/DatabaseModels/UserOnCallLog.js +714 -0
  410. package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -0
  411. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +870 -0
  412. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -0
  413. package/build/dist/Models/DatabaseModels/UserSMS.js +305 -0
  414. package/build/dist/Models/DatabaseModels/UserSMS.js.map +1 -0
  415. package/build/dist/Models/DatabaseModels/UserTwoFactorAuth.js +228 -0
  416. package/build/dist/Models/DatabaseModels/UserTwoFactorAuth.js.map +1 -0
  417. package/build/dist/Models/DatabaseModels/Workflow.js +542 -0
  418. package/build/dist/Models/DatabaseModels/Workflow.js.map +1 -0
  419. package/build/dist/Models/DatabaseModels/WorkflowLog.js +327 -0
  420. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -0
  421. package/build/dist/Models/DatabaseModels/WorkflowVariable.js +448 -0
  422. package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -0
  423. package/build/dist/Models/Permissions/Permission.js +2 -0
  424. package/build/dist/Models/Permissions/Permission.js.map +1 -0
  425. package/build/dist/Tests/AppModels/File.test.js +10 -0
  426. package/build/dist/Tests/AppModels/File.test.js.map +1 -0
  427. package/build/dist/Tests/Types/Database/Date.test.js +10 -12
  428. package/build/dist/Tests/Types/Database/Date.test.js.map +1 -1
  429. package/build/dist/Tests/Types/JSONFunctions.test.js +1 -1
  430. package/build/dist/Tests/Types/JSONFunctions.test.js.map +1 -1
  431. package/build/dist/Types/BaseDatabase/InBetween.js +14 -2
  432. package/build/dist/Types/BaseDatabase/InBetween.js.map +1 -1
  433. package/build/dist/Types/Date.js +33 -0
  434. package/build/dist/Types/Date.js.map +1 -1
  435. package/build/dist/Types/JSONFunctions.js +4 -1
  436. package/build/dist/Types/JSONFunctions.js.map +1 -1
  437. package/build/dist/Types/Log/LogSeverity.js +12 -0
  438. package/build/dist/Types/Log/LogSeverity.js.map +1 -0
  439. package/build/dist/Types/Monitor/CriteriaFilter.js +2 -0
  440. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  441. package/build/dist/Types/Monitor/LogMonitor/LogMonitorResponse.js +2 -0
  442. package/build/dist/Types/Monitor/LogMonitor/LogMonitorResponse.js.map +1 -0
  443. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +49 -0
  444. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  445. package/build/dist/Types/Monitor/MonitorStep.js +18 -0
  446. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  447. package/build/dist/Types/Monitor/MonitorStepLogMonitor.js +59 -0
  448. package/build/dist/Types/Monitor/MonitorStepLogMonitor.js.map +1 -0
  449. package/build/dist/Types/Monitor/MonitorType.js +25 -0
  450. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  451. package/build/dist/Types/ObjectID.js +16 -0
  452. package/build/dist/Types/ObjectID.js.map +1 -1
  453. package/build/dist/Utils/Uptime/Event.js +2 -0
  454. package/build/dist/Utils/Uptime/Event.js.map +1 -0
  455. package/build/dist/Utils/Uptime/MonitorEvent.js +2 -0
  456. package/build/dist/Utils/Uptime/MonitorEvent.js.map +1 -0
  457. package/build/dist/Utils/Uptime/UptimeUtil.js +238 -0
  458. package/build/dist/Utils/Uptime/UptimeUtil.js.map +1 -0
  459. package/package.json +1 -1
  460. package/build/dist/AnalyticsModels/BaseModel.js.map +0 -1
  461. package/build/dist/AnalyticsModels/CommonModel.js.map +0 -1
  462. package/build/dist/AnalyticsModels/NestedModel.js.map +0 -1
  463. package/build/dist/Models/AccessControlModel.js.map +0 -1
  464. package/build/dist/Models/BaseModel.js.map +0 -1
  465. package/build/dist/Models/FileModel.js.map +0 -1
  466. package/build/dist/Models/GlobalConfig.js.map +0 -1
  467. package/build/dist/Models/TenantModel.js.map +0 -1
  468. package/build/dist/Models/UserModel.js.map +0 -1
  469. /package/build/dist/{AnalyticsModels → Models/AnalyticsModels/AnalyticsBaseModel}/NestedModel.js +0 -0
@@ -0,0 +1,1045 @@
1
+ import Label from "./Label";
2
+ import MonitorStatus from "./MonitorStatus";
3
+ import Project from "./Project";
4
+ import User from "./User";
5
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
6
+ import Route from "../../Types/API/Route";
7
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
8
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
9
+ import AccessControlColumn from "../../Types/Database/AccessControlColumn";
10
+ import ColumnLength from "../../Types/Database/ColumnLength";
11
+ import ColumnType from "../../Types/Database/ColumnType";
12
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
13
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
14
+ import EnableWorkflow from "../../Types/Database/EnableWorkflow";
15
+ import SlugifyColumn from "../../Types/Database/SlugifyColumn";
16
+ import TableColumn from "../../Types/Database/TableColumn";
17
+ import TableColumnType from "../../Types/Database/TableColumnType";
18
+ import TableMetadata from "../../Types/Database/TableMetadata";
19
+ import TenantColumn from "../../Types/Database/TenantColumn";
20
+ import IconProp from "../../Types/Icon/IconProp";
21
+ import { JSONObject } from "../../Types/JSON";
22
+ import IncomingMonitorRequest from "../../Types/Monitor/IncomingMonitor/IncomingMonitorRequest";
23
+ import MonitorSteps from "../../Types/Monitor/MonitorSteps";
24
+ import MonitorType from "../../Types/Monitor/MonitorType";
25
+ import ServerMonitorResponse from "../../Types/Monitor/ServerMonitor/ServerMonitorResponse";
26
+ import ObjectID from "../../Types/ObjectID";
27
+ import Permission from "../../Types/Permission";
28
+ import {
29
+ Column,
30
+ Entity,
31
+ Index,
32
+ JoinColumn,
33
+ JoinTable,
34
+ ManyToMany,
35
+ ManyToOne,
36
+ } from "typeorm";
37
+
38
+ @EnableDocumentation()
39
+ @AccessControlColumn("labels")
40
+ @TenantColumn("projectId")
41
+ @TableAccessControl({
42
+ create: [
43
+ Permission.ProjectOwner,
44
+ Permission.ProjectAdmin,
45
+ Permission.ProjectMember,
46
+ Permission.CreateProjectMonitor,
47
+ ],
48
+ read: [
49
+ Permission.ProjectOwner,
50
+ Permission.ProjectAdmin,
51
+ Permission.ProjectMember,
52
+ Permission.ReadProjectMonitor,
53
+ ],
54
+ delete: [
55
+ Permission.ProjectOwner,
56
+ Permission.ProjectAdmin,
57
+ Permission.ProjectMember,
58
+ Permission.DeleteProjectMonitor,
59
+ ],
60
+ update: [
61
+ Permission.ProjectOwner,
62
+ Permission.ProjectAdmin,
63
+ Permission.ProjectMember,
64
+ Permission.EditProjectMonitor,
65
+ ],
66
+ })
67
+ @EnableWorkflow({
68
+ create: true,
69
+ delete: true,
70
+ update: true,
71
+ read: true,
72
+ })
73
+ @CrudApiEndpoint(new Route("/monitor"))
74
+ @SlugifyColumn("name", "slug")
75
+ @Entity({
76
+ name: "Monitor",
77
+ })
78
+ @TableMetadata({
79
+ tableName: "Monitor",
80
+ singularName: "Monitor",
81
+ pluralName: "Monitors",
82
+ icon: IconProp.AltGlobe,
83
+ tableDescription:
84
+ "Monitor is anything that monitors your API, Websites, IP, Network or more. You can also create static monitor that does not monitor anything.",
85
+ })
86
+ export default class Monitor extends BaseModel {
87
+ @ColumnAccessControl({
88
+ create: [
89
+ Permission.ProjectOwner,
90
+ Permission.ProjectAdmin,
91
+ Permission.ProjectMember,
92
+ Permission.CreateProjectMonitor,
93
+ ],
94
+ read: [
95
+ Permission.ProjectOwner,
96
+ Permission.ProjectAdmin,
97
+ Permission.ProjectMember,
98
+ Permission.ReadProjectMonitor,
99
+ ],
100
+ update: [],
101
+ })
102
+ @TableColumn({
103
+ manyToOneRelationColumn: "projectId",
104
+ type: TableColumnType.Entity,
105
+ modelType: Project,
106
+ title: "Project",
107
+ description: "Relation to Project Resource in which this object belongs",
108
+ })
109
+ @ManyToOne(
110
+ () => {
111
+ return Project;
112
+ },
113
+ {
114
+ eager: false,
115
+ nullable: true,
116
+ onDelete: "CASCADE",
117
+ orphanedRowAction: "nullify",
118
+ },
119
+ )
120
+ @JoinColumn({ name: "projectId" })
121
+ public project?: Project = undefined;
122
+
123
+ @ColumnAccessControl({
124
+ create: [
125
+ Permission.ProjectOwner,
126
+ Permission.ProjectAdmin,
127
+ Permission.ProjectMember,
128
+ Permission.CreateProjectMonitor,
129
+ ],
130
+ read: [
131
+ Permission.ProjectOwner,
132
+ Permission.ProjectAdmin,
133
+ Permission.ProjectMember,
134
+ Permission.ReadProjectMonitor,
135
+ ],
136
+ update: [],
137
+ })
138
+ @Index()
139
+ @TableColumn({
140
+ type: TableColumnType.ObjectID,
141
+ required: true,
142
+ canReadOnRelationQuery: true,
143
+ title: "Project ID",
144
+ description: "ID of your OneUptime Project in which this object belongs",
145
+ })
146
+ @Column({
147
+ type: ColumnType.ObjectID,
148
+ nullable: false,
149
+ transformer: ObjectID.getDatabaseTransformer(),
150
+ })
151
+ public projectId?: ObjectID = undefined;
152
+
153
+ @ColumnAccessControl({
154
+ create: [
155
+ Permission.ProjectOwner,
156
+ Permission.ProjectAdmin,
157
+ Permission.ProjectMember,
158
+ Permission.CreateProjectMonitor,
159
+ ],
160
+ read: [
161
+ Permission.ProjectOwner,
162
+ Permission.ProjectAdmin,
163
+ Permission.ProjectMember,
164
+ Permission.ReadProjectMonitor,
165
+ ],
166
+ update: [
167
+ Permission.ProjectOwner,
168
+ Permission.ProjectAdmin,
169
+ Permission.ProjectMember,
170
+ Permission.EditProjectMonitor,
171
+ ],
172
+ })
173
+ @Index()
174
+ @TableColumn({
175
+ required: true,
176
+ type: TableColumnType.ShortText,
177
+ title: "Name",
178
+ description: "Any friendly name for this monitor",
179
+ canReadOnRelationQuery: true,
180
+ })
181
+ @Column({
182
+ nullable: false,
183
+ type: ColumnType.ShortText,
184
+ length: ColumnLength.ShortText,
185
+ })
186
+ public name?: string = undefined;
187
+
188
+ @ColumnAccessControl({
189
+ create: [
190
+ Permission.ProjectOwner,
191
+ Permission.ProjectAdmin,
192
+ Permission.ProjectMember,
193
+ Permission.CreateProjectMonitor,
194
+ ],
195
+ read: [
196
+ Permission.ProjectOwner,
197
+ Permission.ProjectAdmin,
198
+ Permission.ProjectMember,
199
+ Permission.ReadProjectMonitor,
200
+ ],
201
+ update: [
202
+ Permission.ProjectOwner,
203
+ Permission.ProjectAdmin,
204
+ Permission.ProjectMember,
205
+ Permission.EditProjectMonitor,
206
+ ],
207
+ })
208
+ @TableColumn({
209
+ required: false,
210
+ type: TableColumnType.LongText,
211
+ title: "Description",
212
+ description: "Friendly description that will help you remember",
213
+ })
214
+ @Column({
215
+ nullable: true,
216
+ type: ColumnType.LongText,
217
+ length: ColumnLength.LongText,
218
+ })
219
+ public description?: string = undefined;
220
+
221
+ @Index()
222
+ @ColumnAccessControl({
223
+ create: [
224
+ Permission.ProjectOwner,
225
+ Permission.ProjectAdmin,
226
+ Permission.ProjectMember,
227
+ Permission.CreateProjectMonitor,
228
+ ],
229
+ read: [
230
+ Permission.ProjectOwner,
231
+ Permission.ProjectAdmin,
232
+ Permission.ProjectMember,
233
+ Permission.ReadProjectMonitor,
234
+ ],
235
+ update: [],
236
+ })
237
+ @TableColumn({
238
+ required: true,
239
+ unique: true,
240
+ type: TableColumnType.Slug,
241
+ title: "Slug",
242
+ description: "Friendly globally unique name for your object",
243
+ })
244
+ @Column({
245
+ nullable: false,
246
+ type: ColumnType.Slug,
247
+ length: ColumnLength.Slug,
248
+ unique: true,
249
+ })
250
+ public slug?: string = undefined;
251
+
252
+ @ColumnAccessControl({
253
+ create: [
254
+ Permission.ProjectOwner,
255
+ Permission.ProjectAdmin,
256
+ Permission.ProjectMember,
257
+ Permission.CreateProjectMonitor,
258
+ ],
259
+ read: [
260
+ Permission.ProjectOwner,
261
+ Permission.ProjectAdmin,
262
+ Permission.ProjectMember,
263
+ Permission.ReadProjectMonitor,
264
+ ],
265
+ update: [],
266
+ })
267
+ @TableColumn({
268
+ manyToOneRelationColumn: "createdByUserId",
269
+ type: TableColumnType.Entity,
270
+ modelType: User,
271
+ title: "Created by User",
272
+ description:
273
+ "Relation to User who created this object (if this object was created by a User)",
274
+ })
275
+ @ManyToOne(
276
+ () => {
277
+ return User;
278
+ },
279
+ {
280
+ eager: false,
281
+ nullable: true,
282
+ onDelete: "CASCADE",
283
+ orphanedRowAction: "nullify",
284
+ },
285
+ )
286
+ @JoinColumn({ name: "createdByUserId" })
287
+ public createdByUser?: User = undefined;
288
+
289
+ @ColumnAccessControl({
290
+ create: [
291
+ Permission.ProjectOwner,
292
+ Permission.ProjectAdmin,
293
+ Permission.ProjectMember,
294
+ Permission.CreateProjectMonitor,
295
+ ],
296
+ read: [
297
+ Permission.ProjectOwner,
298
+ Permission.ProjectAdmin,
299
+ Permission.ProjectMember,
300
+ Permission.ReadProjectMonitor,
301
+ ],
302
+ update: [],
303
+ })
304
+ @TableColumn({
305
+ type: TableColumnType.ObjectID,
306
+ title: "Created by User ID",
307
+ description:
308
+ "User ID who created this object (if this object was created by a User)",
309
+ })
310
+ @Column({
311
+ type: ColumnType.ObjectID,
312
+ nullable: true,
313
+ transformer: ObjectID.getDatabaseTransformer(),
314
+ })
315
+ public createdByUserId?: ObjectID = undefined;
316
+
317
+ @ColumnAccessControl({
318
+ create: [],
319
+ read: [],
320
+ update: [],
321
+ })
322
+ @TableColumn({
323
+ manyToOneRelationColumn: "deletedByUserId",
324
+ type: TableColumnType.Entity,
325
+ title: "Deleted by User",
326
+ description:
327
+ "Relation to User who deleted this object (if this object was deleted by a User)",
328
+ })
329
+ @ManyToOne(
330
+ () => {
331
+ return User;
332
+ },
333
+ {
334
+ cascade: false,
335
+ eager: false,
336
+ nullable: true,
337
+ onDelete: "CASCADE",
338
+ orphanedRowAction: "nullify",
339
+ },
340
+ )
341
+ @JoinColumn({ name: "deletedByUserId" })
342
+ public deletedByUser?: User = undefined;
343
+
344
+ @ColumnAccessControl({
345
+ create: [],
346
+ read: [],
347
+ update: [],
348
+ })
349
+ @TableColumn({
350
+ type: TableColumnType.ObjectID,
351
+ title: "Deleted by User ID",
352
+ description:
353
+ "User ID who deleted this object (if this object was deleted by a User)",
354
+ })
355
+ @Column({
356
+ type: ColumnType.ObjectID,
357
+ nullable: true,
358
+ transformer: ObjectID.getDatabaseTransformer(),
359
+ })
360
+ public deletedByUserId?: ObjectID = undefined;
361
+
362
+ @ColumnAccessControl({
363
+ create: [
364
+ Permission.ProjectOwner,
365
+ Permission.ProjectAdmin,
366
+ Permission.ProjectMember,
367
+ Permission.CreateProjectMonitor,
368
+ ],
369
+ read: [
370
+ Permission.ProjectOwner,
371
+ Permission.ProjectAdmin,
372
+ Permission.ProjectMember,
373
+ Permission.ReadProjectMonitor,
374
+ ],
375
+ update: [
376
+ Permission.ProjectOwner,
377
+ Permission.ProjectAdmin,
378
+ Permission.ProjectMember,
379
+ Permission.EditProjectMonitor,
380
+ ],
381
+ })
382
+ @TableColumn({
383
+ required: false,
384
+ type: TableColumnType.EntityArray,
385
+ modelType: Label,
386
+ title: "Labels",
387
+ description:
388
+ "Relation to Labels Array where this object is categorized in.",
389
+ })
390
+ @ManyToMany(
391
+ () => {
392
+ return Label;
393
+ },
394
+ { eager: false },
395
+ )
396
+ @JoinTable({
397
+ name: "MonitorLabel",
398
+ inverseJoinColumn: {
399
+ name: "labelId",
400
+ referencedColumnName: "_id",
401
+ },
402
+ joinColumn: {
403
+ name: "monitorId",
404
+ referencedColumnName: "_id",
405
+ },
406
+ })
407
+ public labels?: Array<Label> = undefined;
408
+
409
+ @ColumnAccessControl({
410
+ create: [
411
+ Permission.ProjectOwner,
412
+ Permission.ProjectAdmin,
413
+ Permission.ProjectMember,
414
+ Permission.CreateProjectMonitor,
415
+ ],
416
+ read: [
417
+ Permission.ProjectOwner,
418
+ Permission.ProjectAdmin,
419
+ Permission.ProjectMember,
420
+ Permission.ReadProjectMonitor,
421
+ ],
422
+ update: [],
423
+ })
424
+ @TableColumn({
425
+ required: true,
426
+ type: TableColumnType.MonitorType,
427
+ title: "Monitor Type",
428
+ description: "What is the type of this monitor? Website? API? etc.",
429
+ })
430
+ @Column({
431
+ nullable: false,
432
+ type: ColumnType.ShortText,
433
+ length: ColumnLength.ShortText,
434
+ })
435
+ public monitorType?: MonitorType = undefined;
436
+
437
+ @ColumnAccessControl({
438
+ create: [
439
+ Permission.ProjectOwner,
440
+ Permission.ProjectAdmin,
441
+ Permission.ProjectMember,
442
+ Permission.CreateProjectMonitor,
443
+ ],
444
+ read: [
445
+ Permission.ProjectOwner,
446
+ Permission.ProjectAdmin,
447
+ Permission.ProjectMember,
448
+ Permission.ReadProjectMonitor,
449
+ ],
450
+ update: [
451
+ Permission.ProjectOwner,
452
+ Permission.ProjectAdmin,
453
+ Permission.ProjectMember,
454
+ Permission.EditProjectMonitor,
455
+ ],
456
+ })
457
+ @TableColumn({
458
+ manyToOneRelationColumn: "currentMonitorStatusId",
459
+ type: TableColumnType.Entity,
460
+ modelType: MonitorStatus,
461
+ title: "Current Monitor Status",
462
+ description: "Whats the current status of this monitor?",
463
+ })
464
+ @ManyToOne(
465
+ () => {
466
+ return MonitorStatus;
467
+ },
468
+ {
469
+ eager: false,
470
+ nullable: true,
471
+ orphanedRowAction: "nullify",
472
+ },
473
+ )
474
+ @JoinColumn({ name: "currentMonitorStatusId" })
475
+ public currentMonitorStatus?: MonitorStatus = undefined;
476
+
477
+ @ColumnAccessControl({
478
+ create: [
479
+ Permission.ProjectOwner,
480
+ Permission.ProjectAdmin,
481
+ Permission.ProjectMember,
482
+ Permission.CreateProjectMonitor,
483
+ ],
484
+ read: [
485
+ Permission.ProjectOwner,
486
+ Permission.ProjectAdmin,
487
+ Permission.ProjectMember,
488
+ Permission.ReadProjectMonitor,
489
+ ],
490
+ update: [
491
+ Permission.ProjectOwner,
492
+ Permission.ProjectAdmin,
493
+ Permission.ProjectMember,
494
+ Permission.EditProjectMonitor,
495
+ ],
496
+ })
497
+ @Index()
498
+ @TableColumn({
499
+ type: TableColumnType.ObjectID,
500
+ required: true,
501
+ title: "Current Monitor Status ID",
502
+ description: "Whats the current status ID of this monitor?",
503
+ canReadOnRelationQuery: true,
504
+ })
505
+ @Column({
506
+ type: ColumnType.ObjectID,
507
+ nullable: false,
508
+ transformer: ObjectID.getDatabaseTransformer(),
509
+ })
510
+ public currentMonitorStatusId?: ObjectID = undefined;
511
+
512
+ @ColumnAccessControl({
513
+ create: [
514
+ Permission.ProjectOwner,
515
+ Permission.ProjectAdmin,
516
+ Permission.ProjectMember,
517
+ Permission.CreateProjectMonitor,
518
+ ],
519
+ read: [
520
+ Permission.ProjectOwner,
521
+ Permission.ProjectAdmin,
522
+ Permission.ProjectMember,
523
+ Permission.ReadProjectMonitor,
524
+ ],
525
+ update: [
526
+ Permission.ProjectOwner,
527
+ Permission.ProjectAdmin,
528
+ Permission.ProjectMember,
529
+ Permission.EditProjectMonitor,
530
+ ],
531
+ })
532
+ @TableColumn({
533
+ type: TableColumnType.JSON,
534
+ required: false,
535
+ title: "Monitor Steps",
536
+ description: "What would you like to monitor and what is the criteria?",
537
+ })
538
+ @Column({
539
+ type: ColumnType.JSON,
540
+ nullable: true,
541
+ transformer: MonitorSteps.getDatabaseTransformer(),
542
+ })
543
+ public monitorSteps?: MonitorSteps = undefined;
544
+
545
+ @ColumnAccessControl({
546
+ create: [
547
+ Permission.ProjectOwner,
548
+ Permission.ProjectAdmin,
549
+ Permission.ProjectMember,
550
+ Permission.CreateProjectMonitor,
551
+ ],
552
+ read: [
553
+ Permission.ProjectOwner,
554
+ Permission.ProjectAdmin,
555
+ Permission.ProjectMember,
556
+ Permission.ReadProjectMonitor,
557
+ ],
558
+ update: [
559
+ Permission.ProjectOwner,
560
+ Permission.ProjectAdmin,
561
+ Permission.ProjectMember,
562
+ Permission.EditProjectMonitor,
563
+ ],
564
+ })
565
+ @Index()
566
+ @TableColumn({
567
+ required: false,
568
+ type: TableColumnType.ShortText,
569
+ title: "Monitoring Interval",
570
+ description: "How often would you like OneUptime to monitor this resource?",
571
+ })
572
+ @Column({
573
+ nullable: true,
574
+ type: ColumnType.ShortText,
575
+ length: ColumnLength.ShortText,
576
+ })
577
+ public monitoringInterval?: string = undefined;
578
+
579
+ @ColumnAccessControl({
580
+ create: [
581
+ Permission.ProjectOwner,
582
+ Permission.ProjectAdmin,
583
+ Permission.ProjectMember,
584
+ Permission.CreateProjectMonitor,
585
+ ],
586
+ read: [
587
+ Permission.ProjectOwner,
588
+ Permission.ProjectAdmin,
589
+ Permission.ProjectMember,
590
+ Permission.ReadProjectMonitor,
591
+ ],
592
+ update: [
593
+ Permission.ProjectOwner,
594
+ Permission.ProjectAdmin,
595
+ Permission.ProjectMember,
596
+ Permission.EditProjectMonitor,
597
+ ],
598
+ })
599
+ @TableColumn({
600
+ isDefaultValueColumn: false,
601
+ required: false,
602
+ type: TableColumnType.JSON,
603
+ title: "Custom Fields",
604
+ description: "Custom Fields on this resource.",
605
+ })
606
+ @Column({
607
+ type: ColumnType.JSON,
608
+ nullable: true,
609
+ })
610
+ public customFields?: JSONObject = undefined;
611
+
612
+ @ColumnAccessControl({
613
+ create: [
614
+ Permission.ProjectOwner,
615
+ Permission.ProjectAdmin,
616
+ Permission.ProjectMember,
617
+ Permission.CreateProjectMonitor,
618
+ ],
619
+ read: [
620
+ Permission.ProjectOwner,
621
+ Permission.ProjectAdmin,
622
+ Permission.ProjectMember,
623
+ Permission.ReadProjectMonitor,
624
+ ],
625
+ update: [],
626
+ })
627
+ @Index()
628
+ @TableColumn({
629
+ type: TableColumnType.Boolean,
630
+ required: true,
631
+ isDefaultValueColumn: true,
632
+ title: "Are Owners Notified Of Resource Creation?",
633
+ description: "Are owners notified of when this resource is created?",
634
+ })
635
+ @Column({
636
+ type: ColumnType.Boolean,
637
+ nullable: false,
638
+ default: false,
639
+ })
640
+ public isOwnerNotifiedOfResourceCreation?: boolean = undefined;
641
+
642
+ @ColumnAccessControl({
643
+ create: [
644
+ Permission.ProjectOwner,
645
+ Permission.ProjectAdmin,
646
+ Permission.ProjectMember,
647
+ Permission.CreateProjectMonitor,
648
+ ],
649
+ read: [
650
+ Permission.ProjectOwner,
651
+ Permission.ProjectAdmin,
652
+ Permission.ProjectMember,
653
+ Permission.ReadProjectMonitor,
654
+ ],
655
+ update: [
656
+ Permission.ProjectOwner,
657
+ Permission.ProjectAdmin,
658
+ Permission.ProjectMember,
659
+ Permission.CreateProjectMonitor,
660
+ ],
661
+ })
662
+ @Index()
663
+ @TableColumn({
664
+ type: TableColumnType.Boolean,
665
+ required: true,
666
+ isDefaultValueColumn: true,
667
+ title: "Disable Monitoring",
668
+ description: "Disable active monitoring for this resource?",
669
+ })
670
+ @Column({
671
+ type: ColumnType.Boolean,
672
+ nullable: false,
673
+ default: false,
674
+ })
675
+ public disableActiveMonitoring?: boolean = undefined;
676
+
677
+ @ColumnAccessControl({
678
+ create: [
679
+ Permission.ProjectOwner,
680
+ Permission.ProjectAdmin,
681
+ Permission.ProjectMember,
682
+ Permission.CreateProjectMonitor,
683
+ ],
684
+ read: [
685
+ Permission.ProjectOwner,
686
+ Permission.ProjectAdmin,
687
+ Permission.ProjectMember,
688
+ Permission.ReadProjectMonitor,
689
+ ],
690
+ update: [
691
+ Permission.ProjectOwner,
692
+ Permission.ProjectAdmin,
693
+ Permission.ProjectMember,
694
+ Permission.CreateProjectMonitor,
695
+ ],
696
+ })
697
+ @Index()
698
+ @TableColumn({
699
+ type: TableColumnType.Date,
700
+ required: false,
701
+ isDefaultValueColumn: false,
702
+ title: "Incoming Request Received At",
703
+ description:
704
+ "This field is for Incoming Request monitor only. When was the last time we received a request?",
705
+ })
706
+ @Column({
707
+ type: ColumnType.Date,
708
+ nullable: true,
709
+ })
710
+ public incomingRequestReceivedAt?: Date = undefined;
711
+
712
+ @ColumnAccessControl({
713
+ create: [
714
+ Permission.ProjectOwner,
715
+ Permission.ProjectAdmin,
716
+ Permission.ProjectMember,
717
+ Permission.CreateProjectMonitor,
718
+ ],
719
+ read: [
720
+ Permission.ProjectOwner,
721
+ Permission.ProjectAdmin,
722
+ Permission.ProjectMember,
723
+ Permission.ReadProjectMonitor,
724
+ ],
725
+ update: [
726
+ Permission.ProjectOwner,
727
+ Permission.ProjectAdmin,
728
+ Permission.ProjectMember,
729
+ Permission.CreateProjectMonitor,
730
+ ],
731
+ })
732
+ @Index()
733
+ @TableColumn({
734
+ type: TableColumnType.Date,
735
+ required: false,
736
+ isDefaultValueColumn: false,
737
+ title: "Telemetry Monitor Next Monitor At",
738
+ description:
739
+ "This field is for Telemetry Monitor only. When is the next time we should monitor?",
740
+ })
741
+ @Column({
742
+ type: ColumnType.Date,
743
+ nullable: true,
744
+ })
745
+ public telemetryMonitorNextMonitorAt?: Date = undefined;
746
+
747
+ @ColumnAccessControl({
748
+ create: [
749
+ Permission.ProjectOwner,
750
+ Permission.ProjectAdmin,
751
+ Permission.ProjectMember,
752
+ Permission.CreateProjectMonitor,
753
+ ],
754
+ read: [
755
+ Permission.ProjectOwner,
756
+ Permission.ProjectAdmin,
757
+ Permission.ProjectMember,
758
+ Permission.ReadProjectMonitor,
759
+ ],
760
+ update: [
761
+ Permission.ProjectOwner,
762
+ Permission.ProjectAdmin,
763
+ Permission.ProjectMember,
764
+ Permission.CreateProjectMonitor,
765
+ ],
766
+ })
767
+ @Index()
768
+ @TableColumn({
769
+ type: TableColumnType.Date,
770
+ required: false,
771
+ isDefaultValueColumn: false,
772
+ title: "Telemetry Monitor Last Monitor At",
773
+ description:
774
+ "This field is for Telemetry Monitor only. When was the last time we monitored?",
775
+ })
776
+ @Column({
777
+ type: ColumnType.Date,
778
+ nullable: true,
779
+ })
780
+ public telemetryMonitorLastMonitorAt?: Date = undefined;
781
+
782
+ @ColumnAccessControl({
783
+ create: [],
784
+ read: [
785
+ Permission.ProjectOwner,
786
+ Permission.ProjectAdmin,
787
+ Permission.ProjectMember,
788
+ Permission.ReadProjectMonitor,
789
+ ],
790
+ update: [],
791
+ })
792
+ @Index()
793
+ @TableColumn({
794
+ type: TableColumnType.Boolean,
795
+ required: true,
796
+ isDefaultValueColumn: true,
797
+ title: "Disable Monitoring because of Ongoing Scheduled Maintenance Event",
798
+ description:
799
+ "Disable Monitoring because of Ongoing Scheduled Maintenance Event",
800
+ })
801
+ @Column({
802
+ type: ColumnType.Boolean,
803
+ nullable: false,
804
+ default: false,
805
+ })
806
+ public disableActiveMonitoringBecauseOfScheduledMaintenanceEvent?: boolean =
807
+ undefined;
808
+
809
+ @ColumnAccessControl({
810
+ create: [],
811
+ read: [
812
+ Permission.ProjectOwner,
813
+ Permission.ProjectAdmin,
814
+ Permission.ProjectMember,
815
+ Permission.ReadProjectMonitor,
816
+ ],
817
+ update: [],
818
+ })
819
+ @Index()
820
+ @TableColumn({
821
+ type: TableColumnType.Boolean,
822
+ required: true,
823
+ isDefaultValueColumn: true,
824
+ title: "Disable Monitoring because of Manual Incident",
825
+ description:
826
+ "Disable Monitoring because of Incident which is creeated manually by user.",
827
+ })
828
+ @Column({
829
+ type: ColumnType.Boolean,
830
+ nullable: false,
831
+ default: false,
832
+ })
833
+ public disableActiveMonitoringBecauseOfManualIncident?: boolean = undefined;
834
+
835
+ @ColumnAccessControl({
836
+ create: [
837
+ Permission.ProjectOwner,
838
+ Permission.ProjectAdmin,
839
+ Permission.ProjectMember,
840
+ Permission.CreateProjectMonitor,
841
+ ],
842
+ read: [
843
+ Permission.ProjectOwner,
844
+ Permission.ProjectAdmin,
845
+ Permission.ProjectMember,
846
+ Permission.ReadProjectMonitor,
847
+ ],
848
+ update: [
849
+ Permission.ProjectOwner,
850
+ Permission.ProjectAdmin,
851
+ Permission.ProjectMember,
852
+ Permission.CreateProjectMonitor,
853
+ ],
854
+ })
855
+ @Index()
856
+ @TableColumn({
857
+ type: TableColumnType.Date,
858
+ required: false,
859
+ isDefaultValueColumn: false,
860
+ title: "Server Monitor Request Received At",
861
+ description:
862
+ "This field is for Server Monitor only. When was the last time we received a request?",
863
+ })
864
+ @Column({
865
+ type: ColumnType.Date,
866
+ nullable: true,
867
+ })
868
+ public serverMonitorRequestReceivedAt?: Date = undefined;
869
+
870
+ @ColumnAccessControl({
871
+ create: [
872
+ Permission.ProjectOwner,
873
+ Permission.ProjectAdmin,
874
+ Permission.ProjectMember,
875
+ Permission.CreateProjectMonitor,
876
+ ],
877
+ read: [
878
+ Permission.ProjectOwner,
879
+ Permission.ProjectAdmin,
880
+ Permission.ProjectMember,
881
+ Permission.ReadProjectMonitor,
882
+ ],
883
+ update: [
884
+ Permission.ProjectOwner,
885
+ Permission.ProjectAdmin,
886
+ Permission.ProjectMember,
887
+ Permission.CreateProjectMonitor,
888
+ ],
889
+ })
890
+ @Index()
891
+ @TableColumn({
892
+ type: TableColumnType.ObjectID,
893
+ required: false,
894
+ isDefaultValueColumn: false,
895
+ title: "Server Monitor Secret Key",
896
+ description:
897
+ "This field is for Server Monitor only. Secret Key to authenticate the request.",
898
+ })
899
+ @Column({
900
+ type: ColumnType.ObjectID,
901
+ nullable: true,
902
+ transformer: ObjectID.getDatabaseTransformer(),
903
+ })
904
+ public serverMonitorSecretKey?: ObjectID = undefined;
905
+
906
+ @ColumnAccessControl({
907
+ create: [
908
+ Permission.ProjectOwner,
909
+ Permission.ProjectAdmin,
910
+ Permission.ProjectMember,
911
+ Permission.CreateProjectMonitor,
912
+ ],
913
+ read: [
914
+ Permission.ProjectOwner,
915
+ Permission.ProjectAdmin,
916
+ Permission.ProjectMember,
917
+ Permission.ReadProjectMonitor,
918
+ ],
919
+ update: [
920
+ Permission.ProjectOwner,
921
+ Permission.ProjectAdmin,
922
+ Permission.ProjectMember,
923
+ Permission.CreateProjectMonitor,
924
+ ],
925
+ })
926
+ @Index()
927
+ @TableColumn({
928
+ type: TableColumnType.ObjectID,
929
+ required: false,
930
+ isDefaultValueColumn: false,
931
+ title: "Incoming Request Secret Key",
932
+ description:
933
+ "This field is for Incoming Request Monitor only. Secret Key to authenticate the request.",
934
+ })
935
+ @Column({
936
+ type: ColumnType.ObjectID,
937
+ nullable: true,
938
+ transformer: ObjectID.getDatabaseTransformer(),
939
+ })
940
+ public incomingRequestSecretKey?: ObjectID = undefined;
941
+
942
+ // this is for incoming request monitor.
943
+
944
+ @ColumnAccessControl({
945
+ create: [
946
+ Permission.ProjectOwner,
947
+ Permission.ProjectAdmin,
948
+ Permission.ProjectMember,
949
+ Permission.CreateProjectMonitor,
950
+ ],
951
+ read: [
952
+ Permission.ProjectOwner,
953
+ Permission.ProjectAdmin,
954
+ Permission.ProjectMember,
955
+ Permission.ReadProjectMonitor,
956
+ ],
957
+ update: [],
958
+ })
959
+ @TableColumn({
960
+ type: TableColumnType.JSON,
961
+ required: false,
962
+ title: "Incoming Monitor Request",
963
+ description: "Incoming Monitor Request for Incoming Request Monitor",
964
+ })
965
+ @Column({
966
+ type: ColumnType.JSON,
967
+ nullable: true,
968
+ })
969
+ public incomingMonitorRequest?: IncomingMonitorRequest = undefined;
970
+
971
+ @ColumnAccessControl({
972
+ create: [
973
+ Permission.ProjectOwner,
974
+ Permission.ProjectAdmin,
975
+ Permission.ProjectMember,
976
+ Permission.CreateProjectMonitor,
977
+ ],
978
+ read: [
979
+ Permission.ProjectOwner,
980
+ Permission.ProjectAdmin,
981
+ Permission.ProjectMember,
982
+ Permission.ReadProjectMonitor,
983
+ ],
984
+ update: [],
985
+ })
986
+ @TableColumn({
987
+ type: TableColumnType.JSON,
988
+ required: false,
989
+ title: "Server Monitor Response",
990
+ description: "Server Monitor Response for Server Monitor",
991
+ })
992
+ @Column({
993
+ type: ColumnType.JSON,
994
+ nullable: true,
995
+ })
996
+ public serverMonitorResponse?: ServerMonitorResponse = undefined;
997
+
998
+ @ColumnAccessControl({
999
+ create: [],
1000
+ read: [
1001
+ Permission.ProjectOwner,
1002
+ Permission.ProjectAdmin,
1003
+ Permission.ProjectMember,
1004
+ Permission.ReadProjectMonitor,
1005
+ ],
1006
+ update: [],
1007
+ })
1008
+ @TableColumn({
1009
+ type: TableColumnType.Boolean,
1010
+ required: false,
1011
+ title: "All Probes Disconnected From This Monitor",
1012
+ description:
1013
+ "All Probes Disconnected From This Monitor. Is this monitor not being monitored?",
1014
+ })
1015
+ @Column({
1016
+ type: ColumnType.Boolean,
1017
+ nullable: true,
1018
+ default: false,
1019
+ })
1020
+ public isAllProbesDisconnectedFromThisMonitor?: boolean = undefined;
1021
+
1022
+ @ColumnAccessControl({
1023
+ create: [],
1024
+ read: [
1025
+ Permission.ProjectOwner,
1026
+ Permission.ProjectAdmin,
1027
+ Permission.ProjectMember,
1028
+ Permission.ReadProjectMonitor,
1029
+ ],
1030
+ update: [],
1031
+ })
1032
+ @TableColumn({
1033
+ type: TableColumnType.Boolean,
1034
+ required: false,
1035
+ title: "No Probe Enabled On This Monitor",
1036
+ description:
1037
+ "No Probe Enabled On This Monitor. Is this monitor not being monitored?",
1038
+ })
1039
+ @Column({
1040
+ type: ColumnType.Boolean,
1041
+ nullable: true,
1042
+ default: false,
1043
+ })
1044
+ public isNoProbeEnabledOnThisMonitor?: boolean = undefined;
1045
+ }