@oneuptime/common 7.0.4547 → 7.0.4585

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 (269) hide show
  1. package/Models/DatabaseModels/Alert.ts +8 -6
  2. package/Models/DatabaseModels/AlertInternalNote.ts +4 -6
  3. package/Models/DatabaseModels/AlertOwnerTeam.ts +1 -0
  4. package/Models/DatabaseModels/AlertOwnerUser.ts +1 -0
  5. package/Models/DatabaseModels/AlertSeverity.ts +1 -0
  6. package/Models/DatabaseModels/AlertStateTimeline.ts +4 -6
  7. package/Models/DatabaseModels/ApiKey.ts +3 -3
  8. package/Models/DatabaseModels/ApiKeyPermission.ts +5 -1
  9. package/Models/DatabaseModels/CallLog.ts +1 -0
  10. package/Models/DatabaseModels/CopilotCodeRepository.ts +3 -6
  11. package/Models/DatabaseModels/Dashboard.ts +1 -0
  12. package/Models/DatabaseModels/Domain.ts +2 -0
  13. package/Models/DatabaseModels/GlobalConfig.ts +1 -0
  14. package/Models/DatabaseModels/GreenlockCertificate.ts +1 -1
  15. package/Models/DatabaseModels/Incident.ts +18 -18
  16. package/Models/DatabaseModels/IncidentInternalNote.ts +4 -6
  17. package/Models/DatabaseModels/IncidentOwnerTeam.ts +4 -6
  18. package/Models/DatabaseModels/IncidentOwnerUser.ts +1 -0
  19. package/Models/DatabaseModels/IncidentPublicNote.ts +8 -6
  20. package/Models/DatabaseModels/IncidentSeverity.ts +1 -0
  21. package/Models/DatabaseModels/IncidentState.ts +1 -0
  22. package/Models/DatabaseModels/IncidentStateTimeline.ts +7 -12
  23. package/Models/DatabaseModels/IncidentTemplate.ts +2 -6
  24. package/Models/DatabaseModels/IncidentTemplateOwnerTeam.ts +4 -6
  25. package/Models/DatabaseModels/IncidentTemplateOwnerUser.ts +4 -6
  26. package/Models/DatabaseModels/Label.ts +1 -0
  27. package/Models/DatabaseModels/Monitor.ts +20 -29
  28. package/Models/DatabaseModels/MonitorGroup.ts +2 -6
  29. package/Models/DatabaseModels/MonitorGroupOwnerTeam.ts +4 -6
  30. package/Models/DatabaseModels/MonitorGroupOwnerUser.ts +4 -6
  31. package/Models/DatabaseModels/MonitorOwnerTeam.ts +1 -0
  32. package/Models/DatabaseModels/MonitorOwnerUser.ts +1 -0
  33. package/Models/DatabaseModels/MonitorProbe.ts +1 -0
  34. package/Models/DatabaseModels/MonitorStatus.ts +2 -0
  35. package/Models/DatabaseModels/MonitorStatusTimeline.ts +4 -6
  36. package/Models/DatabaseModels/MonitorTest.ts +1 -0
  37. package/Models/DatabaseModels/OnCallDutyPolicy.ts +3 -0
  38. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +1 -0
  39. package/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.ts +4 -6
  40. package/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.ts +4 -6
  41. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +1 -0
  42. package/Models/DatabaseModels/Probe.ts +2 -0
  43. package/Models/DatabaseModels/ProbeOwnerTeam.ts +4 -6
  44. package/Models/DatabaseModels/ProbeOwnerUser.ts +4 -6
  45. package/Models/DatabaseModels/Project.ts +16 -2
  46. package/Models/DatabaseModels/ProjectSmtpConfig.ts +6 -1
  47. package/Models/DatabaseModels/ProjectSso.ts +5 -1
  48. package/Models/DatabaseModels/PromoCode.ts +1 -1
  49. package/Models/DatabaseModels/ScheduledMaintenance.ts +13 -6
  50. package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +4 -6
  51. package/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.ts +4 -6
  52. package/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.ts +4 -6
  53. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +8 -6
  54. package/Models/DatabaseModels/ScheduledMaintenanceState.ts +1 -0
  55. package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +7 -12
  56. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +5 -6
  57. package/Models/DatabaseModels/ServiceCatalog.ts +1 -0
  58. package/Models/DatabaseModels/ServiceCopilotCodeRepository.ts +1 -0
  59. package/Models/DatabaseModels/SmsLog.ts +1 -0
  60. package/Models/DatabaseModels/StatusPage.ts +16 -12
  61. package/Models/DatabaseModels/StatusPageAnnouncement.ts +10 -7
  62. package/Models/DatabaseModels/StatusPageAnnouncementTemplate.ts +1 -0
  63. package/Models/DatabaseModels/StatusPageDomain.ts +1 -0
  64. package/Models/DatabaseModels/StatusPageGroup.ts +4 -0
  65. package/Models/DatabaseModels/StatusPageOwnerTeam.ts +4 -6
  66. package/Models/DatabaseModels/StatusPageOwnerUser.ts +1 -0
  67. package/Models/DatabaseModels/StatusPagePrivateUser.ts +1 -0
  68. package/Models/DatabaseModels/StatusPageResource.ts +3 -0
  69. package/Models/DatabaseModels/StatusPageSso.ts +10 -2
  70. package/Models/DatabaseModels/StatusPageSubscriber.ts +2 -0
  71. package/Models/DatabaseModels/Team.ts +2 -5
  72. package/Models/DatabaseModels/TeamMember.ts +1 -0
  73. package/Models/DatabaseModels/TeamPermission.ts +5 -1
  74. package/Models/DatabaseModels/TelemetryException.ts +3 -0
  75. package/Models/DatabaseModels/TelemetryIngestionKey.ts +2 -5
  76. package/Models/DatabaseModels/TelemetryService.ts +3 -6
  77. package/Models/DatabaseModels/User.ts +12 -3
  78. package/Models/DatabaseModels/UserCall.ts +1 -0
  79. package/Models/DatabaseModels/UserEmail.ts +2 -0
  80. package/Models/DatabaseModels/UserNotificationSetting.ts +10 -2
  81. package/Models/DatabaseModels/UserSMS.ts +2 -0
  82. package/Models/DatabaseModels/UserTwoFactorAuth.ts +1 -0
  83. package/Models/DatabaseModels/Workflow.ts +2 -0
  84. package/Models/DatabaseModels/WorkflowVariable.ts +1 -0
  85. package/Server/Services/MonitorService.ts +0 -36
  86. package/Server/Types/AnalyticsDatabase/ModelPermission.ts +1 -0
  87. package/Server/Types/Database/Permissions/ColumnPermission.ts +21 -14
  88. package/Types/Database/TableColumn.ts +3 -0
  89. package/Utils/Schema/AnalyticsModelSchema.ts +69 -41
  90. package/Utils/Schema/ModelSchema.ts +180 -79
  91. package/build/dist/Models/DatabaseModels/Alert.js +7 -6
  92. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  93. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +4 -6
  94. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -1
  95. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +1 -0
  96. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -1
  97. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +1 -0
  98. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -1
  99. package/build/dist/Models/DatabaseModels/AlertSeverity.js +1 -0
  100. package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -1
  101. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +4 -6
  102. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -1
  103. package/build/dist/Models/DatabaseModels/ApiKey.js +3 -5
  104. package/build/dist/Models/DatabaseModels/ApiKey.js.map +1 -1
  105. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +5 -1
  106. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
  107. package/build/dist/Models/DatabaseModels/CallLog.js +1 -0
  108. package/build/dist/Models/DatabaseModels/CallLog.js.map +1 -1
  109. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js +3 -6
  110. package/build/dist/Models/DatabaseModels/CopilotCodeRepository.js.map +1 -1
  111. package/build/dist/Models/DatabaseModels/Dashboard.js +1 -0
  112. package/build/dist/Models/DatabaseModels/Dashboard.js.map +1 -1
  113. package/build/dist/Models/DatabaseModels/Domain.js +2 -0
  114. package/build/dist/Models/DatabaseModels/Domain.js.map +1 -1
  115. package/build/dist/Models/DatabaseModels/GlobalConfig.js +1 -0
  116. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  117. package/build/dist/Models/DatabaseModels/GreenlockCertificate.js +1 -1
  118. package/build/dist/Models/DatabaseModels/GreenlockCertificate.js.map +1 -1
  119. package/build/dist/Models/DatabaseModels/Incident.js +16 -18
  120. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  121. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +4 -6
  122. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -1
  123. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js +4 -6
  124. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js.map +1 -1
  125. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js +1 -0
  126. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js.map +1 -1
  127. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +8 -6
  128. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
  129. package/build/dist/Models/DatabaseModels/IncidentSeverity.js +1 -0
  130. package/build/dist/Models/DatabaseModels/IncidentSeverity.js.map +1 -1
  131. package/build/dist/Models/DatabaseModels/IncidentState.js +1 -0
  132. package/build/dist/Models/DatabaseModels/IncidentState.js.map +1 -1
  133. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +7 -12
  134. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
  135. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +2 -6
  136. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
  137. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js +4 -6
  138. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js.map +1 -1
  139. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js +4 -6
  140. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js.map +1 -1
  141. package/build/dist/Models/DatabaseModels/Label.js +1 -0
  142. package/build/dist/Models/DatabaseModels/Label.js.map +1 -1
  143. package/build/dist/Models/DatabaseModels/Monitor.js +17 -26
  144. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  145. package/build/dist/Models/DatabaseModels/MonitorGroup.js +2 -6
  146. package/build/dist/Models/DatabaseModels/MonitorGroup.js.map +1 -1
  147. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js +4 -6
  148. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js.map +1 -1
  149. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js +4 -6
  150. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js.map +1 -1
  151. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js +1 -0
  152. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js.map +1 -1
  153. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js +1 -0
  154. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js.map +1 -1
  155. package/build/dist/Models/DatabaseModels/MonitorProbe.js +1 -0
  156. package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -1
  157. package/build/dist/Models/DatabaseModels/MonitorStatus.js +2 -0
  158. package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -1
  159. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +4 -6
  160. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -1
  161. package/build/dist/Models/DatabaseModels/MonitorTest.js +1 -0
  162. package/build/dist/Models/DatabaseModels/MonitorTest.js.map +1 -1
  163. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js +3 -0
  164. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js.map +1 -1
  165. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +1 -0
  166. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  167. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js +4 -6
  168. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js.map +1 -1
  169. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js +4 -6
  170. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js.map +1 -1
  171. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +1 -0
  172. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
  173. package/build/dist/Models/DatabaseModels/Probe.js +2 -0
  174. package/build/dist/Models/DatabaseModels/Probe.js.map +1 -1
  175. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js +4 -6
  176. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js.map +1 -1
  177. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js +4 -6
  178. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js.map +1 -1
  179. package/build/dist/Models/DatabaseModels/Project.js +16 -2
  180. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  181. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js +6 -1
  182. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js.map +1 -1
  183. package/build/dist/Models/DatabaseModels/ProjectSso.js +5 -1
  184. package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
  185. package/build/dist/Models/DatabaseModels/PromoCode.js +1 -1
  186. package/build/dist/Models/DatabaseModels/PromoCode.js.map +1 -1
  187. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +13 -6
  188. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  189. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +4 -6
  190. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -1
  191. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js +4 -6
  192. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js.map +1 -1
  193. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js +4 -6
  194. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js.map +1 -1
  195. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +8 -6
  196. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
  197. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js +1 -0
  198. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js.map +1 -1
  199. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +7 -12
  200. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
  201. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +5 -6
  202. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  203. package/build/dist/Models/DatabaseModels/ServiceCatalog.js +1 -0
  204. package/build/dist/Models/DatabaseModels/ServiceCatalog.js.map +1 -1
  205. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js +1 -0
  206. package/build/dist/Models/DatabaseModels/ServiceCopilotCodeRepository.js.map +1 -1
  207. package/build/dist/Models/DatabaseModels/SmsLog.js +1 -0
  208. package/build/dist/Models/DatabaseModels/SmsLog.js.map +1 -1
  209. package/build/dist/Models/DatabaseModels/StatusPage.js +16 -12
  210. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  211. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +10 -7
  212. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
  213. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js +1 -0
  214. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js.map +1 -1
  215. package/build/dist/Models/DatabaseModels/StatusPageDomain.js +1 -0
  216. package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -1
  217. package/build/dist/Models/DatabaseModels/StatusPageGroup.js +4 -0
  218. package/build/dist/Models/DatabaseModels/StatusPageGroup.js.map +1 -1
  219. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js +4 -6
  220. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js.map +1 -1
  221. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js +1 -0
  222. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js.map +1 -1
  223. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +1 -0
  224. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
  225. package/build/dist/Models/DatabaseModels/StatusPageResource.js +3 -0
  226. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  227. package/build/dist/Models/DatabaseModels/StatusPageSso.js +10 -2
  228. package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
  229. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js +2 -0
  230. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js.map +1 -1
  231. package/build/dist/Models/DatabaseModels/Team.js +2 -5
  232. package/build/dist/Models/DatabaseModels/Team.js.map +1 -1
  233. package/build/dist/Models/DatabaseModels/TeamMember.js +1 -0
  234. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  235. package/build/dist/Models/DatabaseModels/TeamPermission.js +5 -1
  236. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
  237. package/build/dist/Models/DatabaseModels/TelemetryException.js +3 -0
  238. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  239. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +2 -5
  240. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
  241. package/build/dist/Models/DatabaseModels/TelemetryService.js +3 -6
  242. package/build/dist/Models/DatabaseModels/TelemetryService.js.map +1 -1
  243. package/build/dist/Models/DatabaseModels/User.js +12 -3
  244. package/build/dist/Models/DatabaseModels/User.js.map +1 -1
  245. package/build/dist/Models/DatabaseModels/UserCall.js +1 -0
  246. package/build/dist/Models/DatabaseModels/UserCall.js.map +1 -1
  247. package/build/dist/Models/DatabaseModels/UserEmail.js +2 -0
  248. package/build/dist/Models/DatabaseModels/UserEmail.js.map +1 -1
  249. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js +10 -2
  250. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js.map +1 -1
  251. package/build/dist/Models/DatabaseModels/UserSMS.js +2 -0
  252. package/build/dist/Models/DatabaseModels/UserSMS.js.map +1 -1
  253. package/build/dist/Models/DatabaseModels/UserTwoFactorAuth.js +1 -0
  254. package/build/dist/Models/DatabaseModels/UserTwoFactorAuth.js.map +1 -1
  255. package/build/dist/Models/DatabaseModels/Workflow.js +2 -0
  256. package/build/dist/Models/DatabaseModels/Workflow.js.map +1 -1
  257. package/build/dist/Models/DatabaseModels/WorkflowVariable.js +1 -0
  258. package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
  259. package/build/dist/Server/Services/MonitorService.js +0 -31
  260. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  261. package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js.map +1 -1
  262. package/build/dist/Server/Types/Database/Permissions/ColumnPermission.js +4 -0
  263. package/build/dist/Server/Types/Database/Permissions/ColumnPermission.js.map +1 -1
  264. package/build/dist/Types/Database/TableColumn.js.map +1 -1
  265. package/build/dist/Utils/Schema/AnalyticsModelSchema.js +59 -41
  266. package/build/dist/Utils/Schema/AnalyticsModelSchema.js.map +1 -1
  267. package/build/dist/Utils/Schema/ModelSchema.js +173 -79
  268. package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
  269. package/package.json +1 -1
@@ -85,7 +85,11 @@ export class ModelSchema extends BaseSchema {
85
85
  }
86
86
  else if (column.type === TableColumnType.Number ||
87
87
  column.type === TableColumnType.PositiveNumber) {
88
- zodType = z.number().openapi({ type: "number", example: 42 });
88
+ const openapiConfig = { type: "number", example: 42 };
89
+ if (column.defaultValue !== undefined) {
90
+ openapiConfig.default = column.defaultValue;
91
+ }
92
+ zodType = z.number().openapi(openapiConfig);
89
93
  }
90
94
  else if (column.type === TableColumnType.Email) {
91
95
  zodType = Email.getSchema();
@@ -101,15 +105,23 @@ export class ModelSchema extends BaseSchema {
101
105
  .openapi({ type: "string", example: "example-slug-value" });
102
106
  }
103
107
  else if (column.type === TableColumnType.ShortText) {
108
+ const openapiConfig = { type: "string", example: "Example short text" };
109
+ if (column.defaultValue !== undefined) {
110
+ openapiConfig.default = column.defaultValue;
111
+ }
104
112
  zodType = z
105
113
  .string()
106
- .openapi({ type: "string", example: "Example short text" });
114
+ .openapi(openapiConfig);
107
115
  }
108
116
  else if (column.type === TableColumnType.LongText) {
109
- zodType = z.string().openapi({
117
+ const openapiConfig = {
110
118
  type: "string",
111
119
  example: "This is an example of longer text content that might be stored in this field.",
112
- });
120
+ };
121
+ if (column.defaultValue !== undefined) {
122
+ openapiConfig.default = column.defaultValue;
123
+ }
124
+ zodType = z.string().openapi(openapiConfig);
113
125
  }
114
126
  else if (column.type === TableColumnType.Phone) {
115
127
  zodType = Phone.getSchema();
@@ -206,28 +218,44 @@ export class ModelSchema extends BaseSchema {
206
218
  });
207
219
  }
208
220
  else if (column.type === TableColumnType.SmallPositiveNumber) {
209
- zodType = z.number().int().nonnegative().openapi({
221
+ const openapiConfig = {
210
222
  type: "integer",
211
223
  example: 5,
212
- });
224
+ };
225
+ if (column.defaultValue !== undefined) {
226
+ openapiConfig.default = column.defaultValue;
227
+ }
228
+ zodType = z.number().int().nonnegative().openapi(openapiConfig);
213
229
  }
214
230
  else if (column.type === TableColumnType.BigPositiveNumber) {
215
- zodType = z.number().nonnegative().openapi({
231
+ const openapiConfig = {
216
232
  type: "number",
217
233
  example: 1000000,
218
- });
234
+ };
235
+ if (column.defaultValue !== undefined) {
236
+ openapiConfig.default = column.defaultValue;
237
+ }
238
+ zodType = z.number().nonnegative().openapi(openapiConfig);
219
239
  }
220
240
  else if (column.type === TableColumnType.SmallNumber) {
221
- zodType = z.number().int().openapi({
241
+ const openapiConfig = {
222
242
  type: "integer",
223
243
  example: 10,
224
- });
244
+ };
245
+ if (column.defaultValue !== undefined) {
246
+ openapiConfig.default = column.defaultValue;
247
+ }
248
+ zodType = z.number().int().openapi(openapiConfig);
225
249
  }
226
250
  else if (column.type === TableColumnType.BigNumber) {
227
- zodType = z.number().openapi({
251
+ const openapiConfig = {
228
252
  type: "number",
229
253
  example: 1000000,
230
- });
254
+ };
255
+ if (column.defaultValue !== undefined) {
256
+ openapiConfig.default = column.defaultValue;
257
+ }
258
+ zodType = z.number().openapi(openapiConfig);
231
259
  }
232
260
  else if (column.type === TableColumnType.Permission) {
233
261
  zodType = z.any().openapi({
@@ -254,7 +282,11 @@ export class ModelSchema extends BaseSchema {
254
282
  });
255
283
  }
256
284
  else if (column.type === TableColumnType.Boolean) {
257
- zodType = z.boolean().openapi({ type: "boolean", example: true });
285
+ const openapiConfig = { type: "boolean", example: true };
286
+ if (column.defaultValue !== undefined) {
287
+ openapiConfig.default = column.defaultValue;
288
+ }
289
+ zodType = z.boolean().openapi(openapiConfig);
258
290
  }
259
291
  else if (column.type === TableColumnType.JSON) {
260
292
  zodType = z.any().openapi({
@@ -334,13 +366,31 @@ export class ModelSchema extends BaseSchema {
334
366
  zodType = zodType.optional();
335
367
  }
336
368
  // add title and description to the schema
337
- if (column.title) {
338
- zodType = zodType.describe(column.title);
369
+ let finalDescription = "";
370
+ // Add column description first if it exists
371
+ if (column.description) {
372
+ finalDescription = column.description;
373
+ }
374
+ else if (column.title) {
375
+ finalDescription = column.title;
339
376
  }
340
- // Add permissions description to the schema
377
+ // Add permissions description, prefixed to the column description
341
378
  const permissionsDescription = this.getColumnPermissionsDescription(model, key);
342
379
  if (permissionsDescription) {
343
- zodType = zodType.describe(permissionsDescription);
380
+ if (finalDescription) {
381
+ finalDescription = `${finalDescription}. ${permissionsDescription}`;
382
+ }
383
+ else {
384
+ finalDescription = permissionsDescription;
385
+ }
386
+ }
387
+ // Set the final combined description
388
+ if (finalDescription) {
389
+ zodType = zodType.describe(finalDescription);
390
+ }
391
+ // Mark computed fields as readOnly in OpenAPI spec
392
+ if (column.computed) {
393
+ zodType = zodType.openapi({ readOnly: true });
344
394
  }
345
395
  shape[key] = zodType;
346
396
  }
@@ -871,6 +921,7 @@ export class ModelSchema extends BaseSchema {
871
921
  }
872
922
  // Shared method to build model schemas with different field exclusions
873
923
  static buildModelSchema(data) {
924
+ var _a;
874
925
  const modelType = data.modelType;
875
926
  const model = new modelType();
876
927
  const columns = getTableColumns(model);
@@ -897,6 +948,11 @@ export class ModelSchema extends BaseSchema {
897
948
  if (data.includedFields && !data.includedFields.includes(key)) {
898
949
  continue;
899
950
  }
951
+ // Skip computed fields for create and update operations
952
+ if (column.computed &&
953
+ (data.schemaType === "create" || data.schemaType === "update")) {
954
+ continue;
955
+ }
900
956
  // Filter out columns with no permissions (root-only access)
901
957
  const accessControl = columnAccessControl[key];
902
958
  if (accessControl) {
@@ -933,6 +989,10 @@ export class ModelSchema extends BaseSchema {
933
989
  // should be optional
934
990
  zodType = zodType.optional();
935
991
  }
992
+ else if (((_a = column.title) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === "project id" && column.type === TableColumnType.ObjectID) {
993
+ // this is optional in the API as well as it's derived from API key
994
+ zodType = zodType.optional();
995
+ }
936
996
  else if (column.required) {
937
997
  // leave as is
938
998
  }
@@ -944,8 +1004,27 @@ export class ModelSchema extends BaseSchema {
944
1004
  zodType = zodType.optional();
945
1005
  }
946
1006
  // Add title and description to the schema
947
- if (column.title) {
948
- zodType = zodType.describe(column.title);
1007
+ let finalDescription = "";
1008
+ // Add column description first if it exists
1009
+ if (column.description) {
1010
+ finalDescription = column.description;
1011
+ }
1012
+ else if (column.title) {
1013
+ finalDescription = column.title;
1014
+ }
1015
+ // Add permissions description, prefixed to the column description
1016
+ const permissionsDescription = this.getColumnPermissionsDescription(model, key);
1017
+ if (permissionsDescription) {
1018
+ if (finalDescription) {
1019
+ finalDescription = `${finalDescription}. ${permissionsDescription}`;
1020
+ }
1021
+ else {
1022
+ finalDescription = permissionsDescription;
1023
+ }
1024
+ }
1025
+ // Set the final combined description
1026
+ if (finalDescription) {
1027
+ zodType = zodType.describe(finalDescription);
949
1028
  }
950
1029
  shape[key] = zodType;
951
1030
  }
@@ -959,6 +1038,13 @@ export class ModelSchema extends BaseSchema {
959
1038
  // Helper method to get Zod type for a column
960
1039
  static getZodTypeForColumn(column, schemaType) {
961
1040
  let zodType;
1041
+ // Helper function to add default value to openapi schema if it exists
1042
+ const addDefaultToOpenApi = (openApiConfig) => {
1043
+ if (column.defaultValue !== undefined && column.defaultValue !== null) {
1044
+ return Object.assign(Object.assign({}, openApiConfig), { default: column.defaultValue });
1045
+ }
1046
+ return openApiConfig;
1047
+ };
962
1048
  if (column.type === TableColumnType.ObjectID) {
963
1049
  zodType = ObjectID.getSchema();
964
1050
  }
@@ -978,14 +1064,14 @@ export class ModelSchema extends BaseSchema {
978
1064
  zodType = OneUptimeDate.getSchema();
979
1065
  }
980
1066
  else if (column.type === TableColumnType.VeryLongText) {
981
- zodType = z.string().openapi({
1067
+ zodType = z.string().openapi(addDefaultToOpenApi({
982
1068
  type: "string",
983
1069
  example: "This is an example of very long text content that might be stored in this field. It can contain a lot of information, such as detailed descriptions, comments, or any other lengthy text data that needs to be stored in the database.",
984
- });
1070
+ }));
985
1071
  }
986
1072
  else if (column.type === TableColumnType.Number ||
987
1073
  column.type === TableColumnType.PositiveNumber) {
988
- zodType = z.number().openapi({ type: "number", example: 42 });
1074
+ zodType = z.number().openapi(addDefaultToOpenApi({ type: "number", example: 42 }));
989
1075
  }
990
1076
  else if (column.type === TableColumnType.Email) {
991
1077
  zodType = Email.getSchema();
@@ -993,23 +1079,23 @@ export class ModelSchema extends BaseSchema {
993
1079
  else if (column.type === TableColumnType.HashedString) {
994
1080
  zodType = z
995
1081
  .string()
996
- .openapi({ type: "string", example: "hashed_string_value" });
1082
+ .openapi(addDefaultToOpenApi({ type: "string", example: "hashed_string_value" }));
997
1083
  }
998
1084
  else if (column.type === TableColumnType.Slug) {
999
1085
  zodType = z
1000
1086
  .string()
1001
- .openapi({ type: "string", example: "example-slug-value" });
1087
+ .openapi(addDefaultToOpenApi({ type: "string", example: "example-slug-value" }));
1002
1088
  }
1003
1089
  else if (column.type === TableColumnType.ShortText) {
1004
1090
  zodType = z
1005
1091
  .string()
1006
- .openapi({ type: "string", example: "Example short text" });
1092
+ .openapi(addDefaultToOpenApi({ type: "string", example: "Example short text" }));
1007
1093
  }
1008
1094
  else if (column.type === TableColumnType.LongText) {
1009
- zodType = z.string().openapi({
1095
+ zodType = z.string().openapi(addDefaultToOpenApi({
1010
1096
  type: "string",
1011
1097
  example: "This is an example of longer text content that might be stored in this field.",
1012
- });
1098
+ }));
1013
1099
  }
1014
1100
  else if (column.type === TableColumnType.Phone) {
1015
1101
  zodType = Phone.getSchema();
@@ -1018,152 +1104,152 @@ export class ModelSchema extends BaseSchema {
1018
1104
  zodType = Version.getSchema();
1019
1105
  }
1020
1106
  else if (column.type === TableColumnType.Password) {
1021
- zodType = z.string().openapi({
1107
+ zodType = z.string().openapi(addDefaultToOpenApi({
1022
1108
  type: "string",
1023
1109
  format: "password",
1024
1110
  example: "••••••••",
1025
- });
1111
+ }));
1026
1112
  }
1027
1113
  else if (column.type === TableColumnType.Name) {
1028
1114
  zodType = Name.getSchema();
1029
1115
  }
1030
1116
  else if (column.type === TableColumnType.Description) {
1031
- zodType = z.string().openapi({
1117
+ zodType = z.string().openapi(addDefaultToOpenApi({
1032
1118
  type: "string",
1033
1119
  example: "This is a description of the item",
1034
- });
1120
+ }));
1035
1121
  }
1036
1122
  else if (column.type === TableColumnType.File) {
1037
- zodType = z.any().openapi({
1123
+ zodType = z.any().openapi(addDefaultToOpenApi({
1038
1124
  type: "string",
1039
1125
  format: "binary",
1040
- });
1126
+ }));
1041
1127
  }
1042
1128
  else if (column.type === TableColumnType.Buffer) {
1043
- zodType = z.any().openapi({
1129
+ zodType = z.any().openapi(addDefaultToOpenApi({
1044
1130
  type: "string",
1045
1131
  format: "binary",
1046
- });
1132
+ }));
1047
1133
  }
1048
1134
  else if (column.type === TableColumnType.ShortURL) {
1049
- zodType = z.string().url().openapi({
1135
+ zodType = z.string().url().openapi(addDefaultToOpenApi({
1050
1136
  type: "string",
1051
1137
  example: "https://short.url/abc123",
1052
- });
1138
+ }));
1053
1139
  }
1054
1140
  else if (column.type === TableColumnType.Markdown) {
1055
- zodType = z.string().openapi({
1141
+ zodType = z.string().openapi(addDefaultToOpenApi({
1056
1142
  type: "string",
1057
1143
  example: "# Heading\n\nThis is **markdown** content",
1058
- });
1144
+ }));
1059
1145
  }
1060
1146
  else if (column.type === TableColumnType.Domain) {
1061
1147
  zodType = Domain.getSchema();
1062
1148
  }
1063
1149
  else if (column.type === TableColumnType.LongURL) {
1064
- zodType = z.string().url().openapi({
1150
+ zodType = z.string().url().openapi(addDefaultToOpenApi({
1065
1151
  type: "string",
1066
1152
  example: "https://www.example.com/path/to/resource?param=value",
1067
- });
1153
+ }));
1068
1154
  }
1069
1155
  else if (column.type === TableColumnType.OTP) {
1070
- zodType = z.string().openapi({
1156
+ zodType = z.string().openapi(addDefaultToOpenApi({
1071
1157
  type: "string",
1072
1158
  example: "123456",
1073
- });
1159
+ }));
1074
1160
  }
1075
1161
  else if (column.type === TableColumnType.HTML) {
1076
- zodType = z.string().openapi({
1162
+ zodType = z.string().openapi(addDefaultToOpenApi({
1077
1163
  type: "string",
1078
1164
  example: "<div><h1>Title</h1><p>Content</p></div>",
1079
- });
1165
+ }));
1080
1166
  }
1081
1167
  else if (column.type === TableColumnType.JavaScript) {
1082
- zodType = z.string().openapi({
1168
+ zodType = z.string().openapi(addDefaultToOpenApi({
1083
1169
  type: "string",
1084
1170
  example: "function example() { return true; }",
1085
- });
1171
+ }));
1086
1172
  }
1087
1173
  else if (column.type === TableColumnType.CSS) {
1088
- zodType = z.string().openapi({
1174
+ zodType = z.string().openapi(addDefaultToOpenApi({
1089
1175
  type: "string",
1090
1176
  example: "body { color: #333; margin: 0; }",
1091
- });
1177
+ }));
1092
1178
  }
1093
1179
  else if (column.type === TableColumnType.Array) {
1094
- zodType = z.array(z.any()).openapi({
1180
+ zodType = z.array(z.any()).openapi(addDefaultToOpenApi({
1095
1181
  type: "array",
1096
1182
  items: {
1097
1183
  type: "string",
1098
1184
  },
1099
1185
  example: ["item1", "item2", "item3"],
1100
- });
1186
+ }));
1101
1187
  }
1102
1188
  else if (column.type === TableColumnType.SmallPositiveNumber) {
1103
- zodType = z.number().int().nonnegative().openapi({
1189
+ zodType = z.number().int().nonnegative().openapi(addDefaultToOpenApi({
1104
1190
  type: "integer",
1105
1191
  example: 5,
1106
- });
1192
+ }));
1107
1193
  }
1108
1194
  else if (column.type === TableColumnType.BigPositiveNumber) {
1109
- zodType = z.number().nonnegative().openapi({
1195
+ zodType = z.number().nonnegative().openapi(addDefaultToOpenApi({
1110
1196
  type: "number",
1111
1197
  example: 1000000,
1112
- });
1198
+ }));
1113
1199
  }
1114
1200
  else if (column.type === TableColumnType.SmallNumber) {
1115
- zodType = z.number().int().openapi({
1201
+ zodType = z.number().int().openapi(addDefaultToOpenApi({
1116
1202
  type: "integer",
1117
1203
  example: 10,
1118
- });
1204
+ }));
1119
1205
  }
1120
1206
  else if (column.type === TableColumnType.BigNumber) {
1121
- zodType = z.number().openapi({
1207
+ zodType = z.number().openapi(addDefaultToOpenApi({
1122
1208
  type: "number",
1123
1209
  example: 1000000,
1124
- });
1210
+ }));
1125
1211
  }
1126
1212
  else if (column.type === TableColumnType.Permission) {
1127
- zodType = z.any().openapi({
1213
+ zodType = z.any().openapi(addDefaultToOpenApi({
1128
1214
  type: "object",
1129
1215
  example: { read: true, write: false, delete: false },
1130
- });
1216
+ }));
1131
1217
  }
1132
1218
  else if (column.type === TableColumnType.CustomFieldType) {
1133
- zodType = z.any().openapi({
1219
+ zodType = z.any().openapi(addDefaultToOpenApi({
1134
1220
  type: "object",
1135
1221
  example: { type: "text", required: true },
1136
- });
1222
+ }));
1137
1223
  }
1138
1224
  else if (column.type === TableColumnType.MonitorType) {
1139
- zodType = z.string().openapi({
1225
+ zodType = z.string().openapi(addDefaultToOpenApi({
1140
1226
  type: "string",
1141
1227
  example: "HTTP",
1142
- });
1228
+ }));
1143
1229
  }
1144
1230
  else if (column.type === TableColumnType.WorkflowStatus) {
1145
- zodType = z.string().openapi({
1231
+ zodType = z.string().openapi(addDefaultToOpenApi({
1146
1232
  type: "string",
1147
1233
  example: "In Progress",
1148
- });
1234
+ }));
1149
1235
  }
1150
1236
  else if (column.type === TableColumnType.Boolean) {
1151
- zodType = z.boolean().openapi({ type: "boolean", example: true });
1237
+ zodType = z.boolean().openapi(addDefaultToOpenApi({ type: "boolean", example: true }));
1152
1238
  }
1153
1239
  else if (column.type === TableColumnType.JSON) {
1154
- zodType = z.any().openapi({
1240
+ zodType = z.any().openapi(addDefaultToOpenApi({
1155
1241
  type: "object",
1156
1242
  example: { key: "value", nested: { data: 123 } },
1157
- });
1243
+ }));
1158
1244
  }
1159
1245
  else if (column.type === TableColumnType.EntityArray) {
1160
1246
  const entityArrayType = column.modelType;
1161
1247
  if (!entityArrayType) {
1162
- return z.any().openapi({
1248
+ return z.any().openapi(addDefaultToOpenApi({
1163
1249
  type: "array",
1164
1250
  items: { type: "object" },
1165
1251
  example: [],
1166
- });
1252
+ }));
1167
1253
  }
1168
1254
  // Use the appropriate schema method based on the operation type
1169
1255
  let schemaMethod;
@@ -1187,7 +1273,7 @@ export class ModelSchema extends BaseSchema {
1187
1273
  modelType: entityArrayType,
1188
1274
  });
1189
1275
  }))
1190
- .openapi({
1276
+ .openapi(addDefaultToOpenApi({
1191
1277
  type: "array",
1192
1278
  items: {
1193
1279
  type: "object",
@@ -1196,16 +1282,16 @@ export class ModelSchema extends BaseSchema {
1196
1282
  },
1197
1283
  },
1198
1284
  example: [{ id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }],
1199
- });
1285
+ }));
1200
1286
  }
1201
1287
  else if (column.type === TableColumnType.Entity) {
1202
1288
  const entityType = column.modelType;
1203
1289
  if (!entityType) {
1204
- return z.any().openapi({
1290
+ return z.any().openapi(addDefaultToOpenApi({
1205
1291
  type: "object",
1206
1292
  description: "Entity reference",
1207
1293
  example: { _id: "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" },
1208
- });
1294
+ }));
1209
1295
  }
1210
1296
  // Use the appropriate schema method based on the operation type
1211
1297
  let schema;
@@ -1227,13 +1313,21 @@ export class ModelSchema extends BaseSchema {
1227
1313
  .lazy(() => {
1228
1314
  return schema;
1229
1315
  })
1230
- .openapi({
1316
+ .openapi(addDefaultToOpenApi({
1231
1317
  type: "object",
1232
1318
  example: { id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" },
1233
- });
1319
+ }));
1234
1320
  }
1235
1321
  else {
1236
- zodType = z.any().openapi({ type: "null", example: null });
1322
+ zodType = z.any().openapi(addDefaultToOpenApi({ type: "null", example: null }));
1323
+ }
1324
+ // Apply default value if it exists in the column metadata
1325
+ if (column.defaultValue !== undefined && column.defaultValue !== null) {
1326
+ zodType = zodType.default(column.defaultValue);
1327
+ }
1328
+ // Mark computed fields as readOnly in OpenAPI spec
1329
+ if (column.computed) {
1330
+ zodType = zodType.openapi({ readOnly: true });
1237
1331
  }
1238
1332
  return zodType;
1239
1333
  }