@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,512 @@
1
+ import Project from "./Project";
2
+ import StatusPage from "./StatusPage";
3
+ import User from "./User";
4
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
5
+ import Route from "../../Types/API/Route";
6
+ import { PlanType } from "../../Types/Billing/SubscriptionPlan";
7
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
8
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
9
+ import TableBillingAccessControl from "../../Types/Database/AccessControl/TableBillingAccessControl";
10
+ import CanAccessIfCanReadOn from "../../Types/Database/CanAccessIfCanReadOn";
11
+ import ColumnLength from "../../Types/Database/ColumnLength";
12
+ import ColumnType from "../../Types/Database/ColumnType";
13
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
14
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
15
+ import EnableWorkflow from "../../Types/Database/EnableWorkflow";
16
+ import SlugifyColumn from "../../Types/Database/SlugifyColumn";
17
+ import TableColumn from "../../Types/Database/TableColumn";
18
+ import TableColumnType from "../../Types/Database/TableColumnType";
19
+ import TableMetadata from "../../Types/Database/TableMetadata";
20
+ import TenantColumn from "../../Types/Database/TenantColumn";
21
+ import IconProp from "../../Types/Icon/IconProp";
22
+ import ObjectID from "../../Types/ObjectID";
23
+ import Permission from "../../Types/Permission";
24
+ import {
25
+ Column,
26
+ Entity,
27
+ Index,
28
+ JoinColumn,
29
+ JoinTable,
30
+ ManyToMany,
31
+ ManyToOne,
32
+ } from "typeorm";
33
+
34
+ @EnableDocumentation()
35
+ @TenantColumn("projectId")
36
+ @CanAccessIfCanReadOn("statusPages")
37
+ @TableBillingAccessControl({
38
+ create: PlanType.Growth,
39
+ read: PlanType.Free,
40
+ update: PlanType.Growth,
41
+ delete: PlanType.Free,
42
+ })
43
+ @TableAccessControl({
44
+ create: [
45
+ Permission.ProjectOwner,
46
+ Permission.ProjectAdmin,
47
+ Permission.ProjectMember,
48
+ Permission.CreateStatusPageAnnouncement,
49
+ ],
50
+ read: [
51
+ Permission.ProjectOwner,
52
+ Permission.ProjectAdmin,
53
+ Permission.ProjectMember,
54
+ Permission.ReadStatusPageAnnouncement,
55
+ ],
56
+ delete: [
57
+ Permission.ProjectOwner,
58
+ Permission.ProjectAdmin,
59
+ Permission.ProjectMember,
60
+ Permission.DeleteStatusPageAnnouncement,
61
+ ],
62
+ update: [
63
+ Permission.ProjectOwner,
64
+ Permission.ProjectAdmin,
65
+ Permission.ProjectMember,
66
+ Permission.EditStatusPageAnnouncement,
67
+ ],
68
+ })
69
+ @EnableWorkflow({
70
+ create: true,
71
+ delete: true,
72
+ update: true,
73
+ read: true,
74
+ })
75
+ @CrudApiEndpoint(new Route("/status-page-announcement"))
76
+ @SlugifyColumn("name", "slug")
77
+ @TableMetadata({
78
+ tableName: "StatusPageAnnouncement",
79
+ singularName: "Status Page Announcement",
80
+ pluralName: "Status Page Announcements",
81
+ icon: IconProp.Announcement,
82
+ tableDescription: "Manage announcements on your status page",
83
+ })
84
+ @Entity({
85
+ name: "StatusPageAnnouncement",
86
+ })
87
+ export default class StatusPageAnnouncement extends BaseModel {
88
+ @ColumnAccessControl({
89
+ create: [
90
+ Permission.ProjectOwner,
91
+ Permission.ProjectAdmin,
92
+ Permission.ProjectMember,
93
+ Permission.CreateStatusPageAnnouncement,
94
+ ],
95
+ read: [
96
+ Permission.ProjectOwner,
97
+ Permission.ProjectAdmin,
98
+ Permission.ProjectMember,
99
+ Permission.ReadStatusPageAnnouncement,
100
+ ],
101
+ update: [],
102
+ })
103
+ @TableColumn({
104
+ manyToOneRelationColumn: "projectId",
105
+ type: TableColumnType.Entity,
106
+ modelType: Project,
107
+ title: "Project",
108
+ description: "Relation to Project Resource in which this object belongs",
109
+ })
110
+ @ManyToOne(
111
+ () => {
112
+ return Project;
113
+ },
114
+ {
115
+ eager: false,
116
+ nullable: true,
117
+ onDelete: "CASCADE",
118
+ orphanedRowAction: "nullify",
119
+ },
120
+ )
121
+ @JoinColumn({ name: "projectId" })
122
+ public project?: Project = undefined;
123
+
124
+ @ColumnAccessControl({
125
+ create: [
126
+ Permission.ProjectOwner,
127
+ Permission.ProjectAdmin,
128
+ Permission.ProjectMember,
129
+ Permission.CreateStatusPageAnnouncement,
130
+ ],
131
+ read: [
132
+ Permission.ProjectOwner,
133
+ Permission.ProjectAdmin,
134
+ Permission.ProjectMember,
135
+ Permission.ReadStatusPageAnnouncement,
136
+ ],
137
+ update: [],
138
+ })
139
+ @Index()
140
+ @TableColumn({
141
+ type: TableColumnType.ObjectID,
142
+ required: true,
143
+ canReadOnRelationQuery: true,
144
+ title: "Project ID",
145
+ description: "ID of your OneUptime Project in which this object belongs",
146
+ })
147
+ @Column({
148
+ type: ColumnType.ObjectID,
149
+ nullable: false,
150
+ transformer: ObjectID.getDatabaseTransformer(),
151
+ })
152
+ public projectId?: ObjectID = undefined;
153
+
154
+ @ColumnAccessControl({
155
+ create: [
156
+ Permission.ProjectOwner,
157
+ Permission.ProjectAdmin,
158
+ Permission.ProjectMember,
159
+ Permission.CreateStatusPageAnnouncement,
160
+ ],
161
+ read: [
162
+ Permission.ProjectOwner,
163
+ Permission.ProjectAdmin,
164
+ Permission.ProjectMember,
165
+ Permission.ReadStatusPageAnnouncement,
166
+ ],
167
+ update: [],
168
+ })
169
+ @TableColumn({
170
+ required: false,
171
+ type: TableColumnType.EntityArray,
172
+ modelType: StatusPage,
173
+ title: "Status Pages",
174
+ description: "Status Pages to show show this announcement on.",
175
+ })
176
+ @ManyToMany(
177
+ () => {
178
+ return StatusPage;
179
+ },
180
+ { eager: false },
181
+ )
182
+ @JoinTable({
183
+ name: "AnnouncementStatusPage",
184
+ inverseJoinColumn: {
185
+ name: "statusPageId",
186
+ referencedColumnName: "_id",
187
+ },
188
+ joinColumn: {
189
+ name: "announcementId",
190
+ referencedColumnName: "_id",
191
+ },
192
+ })
193
+ public statusPages?: Array<StatusPage> = undefined;
194
+
195
+ @ColumnAccessControl({
196
+ create: [
197
+ Permission.ProjectOwner,
198
+ Permission.ProjectAdmin,
199
+ Permission.ProjectMember,
200
+ Permission.CreateStatusPageAnnouncement,
201
+ ],
202
+ read: [
203
+ Permission.ProjectOwner,
204
+ Permission.ProjectAdmin,
205
+ Permission.ProjectMember,
206
+ Permission.ReadStatusPageAnnouncement,
207
+ ],
208
+ update: [
209
+ Permission.ProjectOwner,
210
+ Permission.ProjectAdmin,
211
+ Permission.ProjectMember,
212
+ Permission.EditStatusPageAnnouncement,
213
+ ],
214
+ })
215
+ @TableColumn({
216
+ required: true,
217
+ type: TableColumnType.ShortText,
218
+ title: "Title",
219
+ description: "Title of this resource",
220
+ })
221
+ @Column({
222
+ nullable: false,
223
+ type: ColumnType.ShortText,
224
+ length: ColumnLength.ShortText,
225
+ })
226
+ public title?: string = undefined;
227
+
228
+ @TableColumn({
229
+ title: "Show At",
230
+ type: TableColumnType.Date,
231
+ required: true,
232
+ description: "When should this announcement be shown?",
233
+ })
234
+ @ColumnAccessControl({
235
+ create: [
236
+ Permission.ProjectOwner,
237
+ Permission.ProjectAdmin,
238
+ Permission.ProjectMember,
239
+ Permission.CreateStatusPageAnnouncement,
240
+ ],
241
+ read: [
242
+ Permission.ProjectOwner,
243
+ Permission.ProjectAdmin,
244
+ Permission.ProjectMember,
245
+ Permission.ReadStatusPageAnnouncement,
246
+ ],
247
+ update: [
248
+ Permission.ProjectOwner,
249
+ Permission.ProjectAdmin,
250
+ Permission.ProjectMember,
251
+ Permission.EditStatusPageAnnouncement,
252
+ ],
253
+ })
254
+ @Column({
255
+ nullable: false,
256
+ type: ColumnType.Date,
257
+ })
258
+ public showAnnouncementAt?: Date = undefined;
259
+
260
+ @TableColumn({
261
+ title: "End At",
262
+ type: TableColumnType.Date,
263
+ required: true,
264
+ description: "When should this announcement hidden?",
265
+ })
266
+ @ColumnAccessControl({
267
+ create: [
268
+ Permission.ProjectOwner,
269
+ Permission.ProjectAdmin,
270
+ Permission.ProjectMember,
271
+ Permission.CreateStatusPageAnnouncement,
272
+ ],
273
+ read: [
274
+ Permission.ProjectOwner,
275
+ Permission.ProjectAdmin,
276
+ Permission.ProjectMember,
277
+ Permission.ReadStatusPageAnnouncement,
278
+ ],
279
+ update: [
280
+ Permission.ProjectOwner,
281
+ Permission.ProjectAdmin,
282
+ Permission.ProjectMember,
283
+ Permission.EditStatusPageAnnouncement,
284
+ ],
285
+ })
286
+ @Column({
287
+ nullable: false,
288
+ type: ColumnType.Date,
289
+ })
290
+ public endAnnouncementAt?: Date = undefined;
291
+
292
+ @ColumnAccessControl({
293
+ create: [
294
+ Permission.ProjectOwner,
295
+ Permission.ProjectAdmin,
296
+ Permission.ProjectMember,
297
+ Permission.CreateStatusPageAnnouncement,
298
+ ],
299
+ read: [
300
+ Permission.ProjectOwner,
301
+ Permission.ProjectAdmin,
302
+ Permission.ProjectMember,
303
+ Permission.ReadStatusPageAnnouncement,
304
+ ],
305
+ update: [
306
+ Permission.ProjectOwner,
307
+ Permission.ProjectAdmin,
308
+ Permission.ProjectMember,
309
+ Permission.EditStatusPageAnnouncement,
310
+ ],
311
+ })
312
+ @TableColumn({
313
+ required: true,
314
+ type: TableColumnType.Markdown,
315
+ title: "Announcement Description",
316
+ description: "Text of the announcement. This is in Markdown.",
317
+ })
318
+ @Column({
319
+ nullable: false,
320
+ type: ColumnType.Markdown,
321
+ })
322
+ public description?: string = undefined;
323
+
324
+ @ColumnAccessControl({
325
+ create: [
326
+ Permission.ProjectOwner,
327
+ Permission.ProjectAdmin,
328
+ Permission.ProjectMember,
329
+ Permission.CreateStatusPageAnnouncement,
330
+ ],
331
+ read: [
332
+ Permission.ProjectOwner,
333
+ Permission.ProjectAdmin,
334
+ Permission.ProjectMember,
335
+ Permission.ReadStatusPageAnnouncement,
336
+ ],
337
+ update: [],
338
+ })
339
+ @TableColumn({
340
+ manyToOneRelationColumn: "createdByUserId",
341
+ type: TableColumnType.Entity,
342
+ modelType: User,
343
+ title: "Created by User",
344
+ description:
345
+ "Relation to User who created this object (if this object was created by a User)",
346
+ })
347
+ @ManyToOne(
348
+ () => {
349
+ return User;
350
+ },
351
+ {
352
+ eager: false,
353
+ nullable: true,
354
+ onDelete: "CASCADE",
355
+ orphanedRowAction: "nullify",
356
+ },
357
+ )
358
+ @JoinColumn({ name: "createdByUserId" })
359
+ public createdByUser?: User = undefined;
360
+
361
+ @ColumnAccessControl({
362
+ create: [
363
+ Permission.ProjectOwner,
364
+ Permission.ProjectAdmin,
365
+ Permission.ProjectMember,
366
+ Permission.CreateStatusPageAnnouncement,
367
+ ],
368
+ read: [
369
+ Permission.ProjectOwner,
370
+ Permission.ProjectAdmin,
371
+ Permission.ProjectMember,
372
+ Permission.ReadStatusPageAnnouncement,
373
+ ],
374
+ update: [],
375
+ })
376
+ @TableColumn({
377
+ type: TableColumnType.ObjectID,
378
+ title: "Created by User ID",
379
+ description:
380
+ "User ID who created this object (if this object was created by a User)",
381
+ })
382
+ @Column({
383
+ type: ColumnType.ObjectID,
384
+ nullable: true,
385
+ transformer: ObjectID.getDatabaseTransformer(),
386
+ })
387
+ public createdByUserId?: ObjectID = undefined;
388
+
389
+ @ColumnAccessControl({
390
+ create: [],
391
+ read: [
392
+ Permission.ProjectOwner,
393
+ Permission.ProjectAdmin,
394
+ Permission.ProjectMember,
395
+ Permission.ReadStatusPageAnnouncement,
396
+ ],
397
+ update: [],
398
+ })
399
+ @TableColumn({
400
+ manyToOneRelationColumn: "deletedByUserId",
401
+ type: TableColumnType.Entity,
402
+ title: "Deleted by User",
403
+ description:
404
+ "Relation to User who deleted this object (if this object was deleted by a User)",
405
+ })
406
+ @ManyToOne(
407
+ () => {
408
+ return User;
409
+ },
410
+ {
411
+ cascade: false,
412
+ eager: false,
413
+ nullable: true,
414
+ onDelete: "CASCADE",
415
+ orphanedRowAction: "nullify",
416
+ },
417
+ )
418
+ @JoinColumn({ name: "deletedByUserId" })
419
+ public deletedByUser?: User = undefined;
420
+
421
+ @ColumnAccessControl({
422
+ create: [],
423
+ read: [],
424
+ update: [],
425
+ })
426
+ @TableColumn({
427
+ type: TableColumnType.ObjectID,
428
+ title: "Deleted by User ID",
429
+ description:
430
+ "User ID who deleted this object (if this object was deleted by a User)",
431
+ })
432
+ @Column({
433
+ type: ColumnType.ObjectID,
434
+ nullable: true,
435
+ transformer: ObjectID.getDatabaseTransformer(),
436
+ })
437
+ public deletedByUserId?: ObjectID = undefined;
438
+
439
+ @ColumnAccessControl({
440
+ create: [],
441
+ read: [
442
+ Permission.ProjectOwner,
443
+ Permission.ProjectAdmin,
444
+ Permission.ProjectMember,
445
+ Permission.ReadStatusPageAnnouncement,
446
+ ],
447
+ update: [],
448
+ })
449
+ @TableColumn({ isDefaultValueColumn: true, type: TableColumnType.Boolean })
450
+ @Column({
451
+ type: ColumnType.Boolean,
452
+ default: false,
453
+ })
454
+ public isStatusPageSubscribersNotified?: boolean = undefined;
455
+
456
+ @ColumnAccessControl({
457
+ create: [
458
+ Permission.ProjectOwner,
459
+ Permission.ProjectAdmin,
460
+ Permission.ProjectMember,
461
+ Permission.CreateStatusPageAnnouncement,
462
+ ],
463
+ read: [
464
+ Permission.ProjectOwner,
465
+ Permission.ProjectAdmin,
466
+ Permission.ProjectMember,
467
+ Permission.ReadStatusPageAnnouncement,
468
+ ],
469
+ update: [],
470
+ })
471
+ @TableColumn({
472
+ isDefaultValueColumn: true,
473
+ type: TableColumnType.Boolean,
474
+ title: "Should subscribers be notified?",
475
+ description: "Should subscribers be notified about this announcement?",
476
+ })
477
+ @Column({
478
+ type: ColumnType.Boolean,
479
+ default: true,
480
+ })
481
+ public shouldStatusPageSubscribersBeNotified?: boolean = undefined;
482
+
483
+ @ColumnAccessControl({
484
+ create: [
485
+ Permission.ProjectOwner,
486
+ Permission.ProjectAdmin,
487
+ Permission.ProjectMember,
488
+ Permission.CreateStatusPageAnnouncement,
489
+ ],
490
+ read: [
491
+ Permission.ProjectOwner,
492
+ Permission.ProjectAdmin,
493
+ Permission.ProjectMember,
494
+ Permission.ReadStatusPageAnnouncement,
495
+ ],
496
+ update: [],
497
+ })
498
+ @Index()
499
+ @TableColumn({
500
+ type: TableColumnType.Boolean,
501
+ required: true,
502
+ isDefaultValueColumn: true,
503
+ title: "Are Owners Notified",
504
+ description: "Are owners notified of this announcement?",
505
+ })
506
+ @Column({
507
+ type: ColumnType.Boolean,
508
+ nullable: false,
509
+ default: false,
510
+ })
511
+ public isOwnerNotified?: boolean = undefined;
512
+ }