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