@oneuptime/common 10.4.16 → 10.5.0

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 (318) hide show
  1. package/Models/AnalyticsModels/ExceptionInstance.ts +24 -0
  2. package/Models/AnalyticsModels/Log.ts +16 -0
  3. package/Models/AnalyticsModels/Metric.ts +31 -0
  4. package/Models/AnalyticsModels/MonitorLog.ts +5 -0
  5. package/Models/AnalyticsModels/Profile.ts +25 -0
  6. package/Models/AnalyticsModels/ProfileSample.ts +20 -0
  7. package/Models/AnalyticsModels/Span.ts +23 -0
  8. package/Models/DatabaseModels/AlertEpisodeMember.ts +2 -0
  9. package/Models/DatabaseModels/AlertGroupingRule.ts +0 -38
  10. package/Models/DatabaseModels/AlertLabelRule.ts +152 -0
  11. package/Models/DatabaseModels/AlertOwnerRule.ts +114 -0
  12. package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +7 -0
  13. package/Models/DatabaseModels/IncidentEpisodeMember.ts +2 -0
  14. package/Models/DatabaseModels/IncidentGroupingRule.ts +0 -38
  15. package/Models/DatabaseModels/IncidentLabelRule.ts +114 -0
  16. package/Models/DatabaseModels/IncidentMember.ts +2 -0
  17. package/Models/DatabaseModels/IncidentOwnerRule.ts +114 -0
  18. package/Models/DatabaseModels/IncidentSla.ts +2 -0
  19. package/Models/DatabaseModels/IncidentTemplate.ts +224 -0
  20. package/Models/DatabaseModels/Index.ts +2 -2
  21. package/Models/DatabaseModels/MetricPipelineRule.ts +2 -0
  22. package/Models/DatabaseModels/MonitorProbe.ts +2 -0
  23. package/Models/DatabaseModels/MonitorTest.ts +2 -0
  24. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.ts +2 -0
  25. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.ts +2 -0
  26. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.ts +2 -0
  27. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.ts +2 -0
  28. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +2 -0
  29. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +2 -0
  30. package/Models/DatabaseModels/OnCallDutyPolicyTimeLog.ts +2 -0
  31. package/Models/DatabaseModels/OnCallDutyPolicyUserOverride.ts +2 -0
  32. package/Models/DatabaseModels/ProjectOidc.ts +4 -0
  33. package/Models/DatabaseModels/ProjectSCIM.ts +4 -0
  34. package/Models/DatabaseModels/ProjectSso.ts +4 -0
  35. package/Models/DatabaseModels/ScheduledMaintenance.ts +220 -0
  36. package/Models/DatabaseModels/ScheduledMaintenanceLabelRule.ts +152 -0
  37. package/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.ts +152 -0
  38. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +224 -0
  39. package/Models/DatabaseModels/StatusPageOidc.ts +6 -0
  40. package/Models/DatabaseModels/StatusPageSCIM.ts +4 -0
  41. package/Models/DatabaseModels/StatusPageSCIMLog.ts +2 -0
  42. package/Models/DatabaseModels/StatusPageSso.ts +6 -0
  43. package/Models/DatabaseModels/Team.ts +41 -0
  44. package/Models/DatabaseModels/TeamComplianceSetting.ts +4 -0
  45. package/Models/DatabaseModels/{ServiceMonitor.ts → TeamCustomField.ts} +95 -200
  46. package/Models/DatabaseModels/TelemetryException.ts +2 -0
  47. package/Models/DatabaseModels/UserOnCallLog.ts +2 -0
  48. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +2 -0
  49. package/Models/DatabaseModels/WorkflowLog.ts +2 -0
  50. package/Models/DatabaseModels/WorkflowVariable.ts +2 -0
  51. package/Server/EnvironmentConfig.ts +3 -0
  52. package/Server/Infrastructure/Postgres/SchemaMigrations/1779392865146-AddAgentVersionToKubernetesDockerHost.ts +1 -1
  53. package/Server/Infrastructure/Postgres/SchemaMigrations/1779653508434-AddLabelInheritanceAndScheduledMaintenanceResources.ts +160 -0
  54. package/Server/Infrastructure/Postgres/SchemaMigrations/1779708719656-AddAffectedResourcesToTemplates.ts +197 -0
  55. package/Server/Infrastructure/Postgres/SchemaMigrations/1779739410559-MigrationName.ts +36 -0
  56. package/Server/Infrastructure/Postgres/SchemaMigrations/1779742211961-AttachServiceToScheduledMaintenanceTemplatesAndLabelRules.ts +128 -0
  57. package/Server/Infrastructure/Postgres/SchemaMigrations/1779790539196-MigrationName.ts +53 -0
  58. package/Server/Infrastructure/Postgres/SchemaMigrations/1779823516881-ExpandOwnerRuleInheritFlags.ts +73 -0
  59. package/Server/Infrastructure/Postgres/SchemaMigrations/1779827700000-RenameStatusPageZhToZhCN.ts +62 -0
  60. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +14 -0
  61. package/Server/Middleware/TelemetryIngestionDisabled.ts +32 -0
  62. package/Server/Services/AlertGroupingEngineService.ts +0 -29
  63. package/Server/Services/AlertLabelRuleEngineService.ts +129 -0
  64. package/Server/Services/AlertOwnerRuleEngineService.ts +205 -1
  65. package/Server/Services/IncidentGroupingEngineService.ts +0 -37
  66. package/Server/Services/IncidentLabelRuleEngineService.ts +83 -0
  67. package/Server/Services/IncidentOwnerRuleEngineService.ts +208 -10
  68. package/Server/Services/IncidentService.ts +139 -1
  69. package/Server/Services/Index.ts +0 -2
  70. package/Server/Services/MonitorProbeService.ts +56 -0
  71. package/Server/Services/MonitorService.ts +55 -0
  72. package/Server/Services/ProjectService.ts +17 -8
  73. package/Server/Services/ScheduledMaintenanceLabelRuleEngineService.ts +129 -0
  74. package/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.ts +289 -7
  75. package/Server/Services/StatusPageService.ts +30 -0
  76. package/Server/Services/TeamCustomFieldService.ts +9 -0
  77. package/Server/Types/AnalyticsDatabase/ModelPermission.ts +226 -28
  78. package/Server/Types/Database/Permissions/EditionPermission.ts +46 -0
  79. package/Server/Types/Database/Permissions/TablePermission.ts +8 -1
  80. package/Server/Utils/Monitor/MonitorAlert.ts +35 -0
  81. package/Server/Utils/Monitor/MonitorIncident.ts +244 -34
  82. package/Tests/Server/Middleware/UserAuthorization.test.ts +11 -19
  83. package/Tests/Types/Permission.test.ts +129 -1
  84. package/Types/Accounts/AccountsLanguage.ts +10 -1
  85. package/Types/AdminDashboard/AdminDashboardLanguage.ts +10 -1
  86. package/Types/BaseDatabase/TableEditionAccessControl.ts +3 -0
  87. package/Types/Dashboard/DashboardLanguage.ts +10 -1
  88. package/Types/Database/AccessControl/TableEditionAccessControl.ts +8 -0
  89. package/Types/Date.ts +1 -1
  90. package/Types/Docs/DocsLanguage.ts +10 -1
  91. package/Types/Permission.ts +87 -54
  92. package/Types/StatusPage/StatusPageLanguage.ts +10 -1
  93. package/UI/Components/Charts/Area/AreaChart.tsx +1 -1
  94. package/UI/Components/Charts/Bar/BarChart.tsx +1 -1
  95. package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +5 -1
  96. package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +1 -1
  97. package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +11 -1
  98. package/UI/Components/Charts/Line/LineChart.tsx +1 -1
  99. package/UI/Components/Charts/Utils/XAxis.ts +21 -48
  100. package/UI/Components/EntityDropdown/EntityDropdown.tsx +1808 -0
  101. package/UI/Components/Forms/Fields/FormField.tsx +69 -29
  102. package/UI/Components/Link/Link.tsx +13 -1
  103. package/UI/Components/ModelDetail/ModelDetail.tsx +20 -19
  104. package/UI/Components/ModelTable/BaseModelTable.tsx +5 -0
  105. package/UI/Utils/User.ts +16 -0
  106. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js +39 -2
  107. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js.map +1 -1
  108. package/build/dist/Models/AnalyticsModels/Log.js +16 -0
  109. package/build/dist/Models/AnalyticsModels/Log.js.map +1 -1
  110. package/build/dist/Models/AnalyticsModels/Metric.js +31 -0
  111. package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
  112. package/build/dist/Models/AnalyticsModels/MonitorLog.js +5 -0
  113. package/build/dist/Models/AnalyticsModels/MonitorLog.js.map +1 -1
  114. package/build/dist/Models/AnalyticsModels/Profile.js +40 -2
  115. package/build/dist/Models/AnalyticsModels/Profile.js.map +1 -1
  116. package/build/dist/Models/AnalyticsModels/ProfileSample.js +35 -2
  117. package/build/dist/Models/AnalyticsModels/ProfileSample.js.map +1 -1
  118. package/build/dist/Models/AnalyticsModels/Span.js +23 -0
  119. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  120. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js +2 -0
  121. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js.map +1 -1
  122. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js +0 -39
  123. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js.map +1 -1
  124. package/build/dist/Models/DatabaseModels/AlertLabelRule.js +156 -0
  125. package/build/dist/Models/DatabaseModels/AlertLabelRule.js.map +1 -1
  126. package/build/dist/Models/DatabaseModels/AlertOwnerRule.js +117 -0
  127. package/build/dist/Models/DatabaseModels/AlertOwnerRule.js.map +1 -1
  128. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
  129. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js +2 -0
  130. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js.map +1 -1
  131. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +0 -39
  132. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -1
  133. package/build/dist/Models/DatabaseModels/IncidentLabelRule.js +117 -0
  134. package/build/dist/Models/DatabaseModels/IncidentLabelRule.js.map +1 -1
  135. package/build/dist/Models/DatabaseModels/IncidentMember.js +2 -0
  136. package/build/dist/Models/DatabaseModels/IncidentMember.js.map +1 -1
  137. package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js +117 -0
  138. package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js.map +1 -1
  139. package/build/dist/Models/DatabaseModels/IncidentSla.js +2 -0
  140. package/build/dist/Models/DatabaseModels/IncidentSla.js.map +1 -1
  141. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +216 -0
  142. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
  143. package/build/dist/Models/DatabaseModels/Index.js +2 -2
  144. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  145. package/build/dist/Models/DatabaseModels/MetricPipelineRule.js +2 -0
  146. package/build/dist/Models/DatabaseModels/MetricPipelineRule.js.map +1 -1
  147. package/build/dist/Models/DatabaseModels/MonitorProbe.js +2 -0
  148. package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -1
  149. package/build/dist/Models/DatabaseModels/MonitorTest.js +2 -0
  150. package/build/dist/Models/DatabaseModels/MonitorTest.js.map +1 -1
  151. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js +2 -0
  152. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js.map +1 -1
  153. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js +2 -0
  154. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js.map +1 -1
  155. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js +2 -0
  156. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js.map +1 -1
  157. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js +2 -0
  158. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js.map +1 -1
  159. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +2 -0
  160. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  161. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +2 -0
  162. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
  163. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js +2 -0
  164. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js.map +1 -1
  165. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js +2 -0
  166. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js.map +1 -1
  167. package/build/dist/Models/DatabaseModels/ProjectOidc.js +4 -0
  168. package/build/dist/Models/DatabaseModels/ProjectOidc.js.map +1 -1
  169. package/build/dist/Models/DatabaseModels/ProjectSCIM.js +4 -0
  170. package/build/dist/Models/DatabaseModels/ProjectSCIM.js.map +1 -1
  171. package/build/dist/Models/DatabaseModels/ProjectSso.js +4 -0
  172. package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
  173. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +216 -0
  174. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  175. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js +156 -0
  176. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js.map +1 -1
  177. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js +156 -0
  178. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js.map +1 -1
  179. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +216 -0
  180. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  181. package/build/dist/Models/DatabaseModels/StatusPageOidc.js +6 -0
  182. package/build/dist/Models/DatabaseModels/StatusPageOidc.js.map +1 -1
  183. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js +4 -0
  184. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js.map +1 -1
  185. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js +2 -0
  186. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js.map +1 -1
  187. package/build/dist/Models/DatabaseModels/StatusPageSso.js +6 -0
  188. package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
  189. package/build/dist/Models/DatabaseModels/Team.js +42 -0
  190. package/build/dist/Models/DatabaseModels/Team.js.map +1 -1
  191. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js +4 -0
  192. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js.map +1 -1
  193. package/build/dist/Models/DatabaseModels/{ServiceMonitor.js → TeamCustomField.js} +108 -209
  194. package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -0
  195. package/build/dist/Models/DatabaseModels/TelemetryException.js +2 -0
  196. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  197. package/build/dist/Models/DatabaseModels/UserOnCallLog.js +2 -0
  198. package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -1
  199. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +2 -0
  200. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
  201. package/build/dist/Models/DatabaseModels/WorkflowLog.js +2 -0
  202. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
  203. package/build/dist/Models/DatabaseModels/WorkflowVariable.js +2 -0
  204. package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
  205. package/build/dist/Server/EnvironmentConfig.js +1 -0
  206. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  207. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779392865146-AddAgentVersionToKubernetesDockerHost.js.map +1 -1
  208. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779653508434-AddLabelInheritanceAndScheduledMaintenanceResources.js +60 -0
  209. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779653508434-AddLabelInheritanceAndScheduledMaintenanceResources.js.map +1 -0
  210. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779708719656-AddAffectedResourcesToTemplates.js +74 -0
  211. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779708719656-AddAffectedResourcesToTemplates.js.map +1 -0
  212. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779739410559-MigrationName.js +19 -0
  213. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779739410559-MigrationName.js.map +1 -0
  214. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779742211961-AttachServiceToScheduledMaintenanceTemplatesAndLabelRules.js +50 -0
  215. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779742211961-AttachServiceToScheduledMaintenanceTemplatesAndLabelRules.js.map +1 -0
  216. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779790539196-MigrationName.js +26 -0
  217. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779790539196-MigrationName.js.map +1 -0
  218. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779823516881-ExpandOwnerRuleInheritFlags.js +30 -0
  219. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779823516881-ExpandOwnerRuleInheritFlags.js.map +1 -0
  220. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779827700000-RenameStatusPageZhToZhCN.js +50 -0
  221. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1779827700000-RenameStatusPageZhToZhCN.js.map +1 -0
  222. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +14 -0
  223. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  224. package/build/dist/Server/Middleware/TelemetryIngestionDisabled.js +22 -0
  225. package/build/dist/Server/Middleware/TelemetryIngestionDisabled.js.map +1 -0
  226. package/build/dist/Server/Services/AlertGroupingEngineService.js +0 -25
  227. package/build/dist/Server/Services/AlertGroupingEngineService.js.map +1 -1
  228. package/build/dist/Server/Services/AlertLabelRuleEngineService.js +117 -3
  229. package/build/dist/Server/Services/AlertLabelRuleEngineService.js.map +1 -1
  230. package/build/dist/Server/Services/AlertOwnerRuleEngineService.js +175 -5
  231. package/build/dist/Server/Services/AlertOwnerRuleEngineService.js.map +1 -1
  232. package/build/dist/Server/Services/IncidentGroupingEngineService.js +0 -31
  233. package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -1
  234. package/build/dist/Server/Services/IncidentLabelRuleEngineService.js +76 -3
  235. package/build/dist/Server/Services/IncidentLabelRuleEngineService.js.map +1 -1
  236. package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js +176 -14
  237. package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js.map +1 -1
  238. package/build/dist/Server/Services/IncidentService.js +104 -1
  239. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  240. package/build/dist/Server/Services/Index.js +0 -2
  241. package/build/dist/Server/Services/Index.js.map +1 -1
  242. package/build/dist/Server/Services/MonitorProbeService.js +46 -0
  243. package/build/dist/Server/Services/MonitorProbeService.js.map +1 -1
  244. package/build/dist/Server/Services/MonitorService.js +40 -0
  245. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  246. package/build/dist/Server/Services/ProjectService.js +17 -8
  247. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  248. package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js +117 -3
  249. package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js.map +1 -1
  250. package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js +245 -10
  251. package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js.map +1 -1
  252. package/build/dist/Server/Services/StatusPageService.js +24 -0
  253. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  254. package/build/dist/Server/Services/TeamCustomFieldService.js +9 -0
  255. package/build/dist/Server/Services/TeamCustomFieldService.js.map +1 -0
  256. package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js +166 -26
  257. package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js.map +1 -1
  258. package/build/dist/Server/Types/Database/Permissions/EditionPermission.js +45 -0
  259. package/build/dist/Server/Types/Database/Permissions/EditionPermission.js.map +1 -0
  260. package/build/dist/Server/Types/Database/Permissions/TablePermission.js +7 -1
  261. package/build/dist/Server/Types/Database/Permissions/TablePermission.js.map +1 -1
  262. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +30 -0
  263. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  264. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +200 -31
  265. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  266. package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js +8 -15
  267. package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js.map +1 -1
  268. package/build/dist/Tests/Types/Permission.test.js +90 -1
  269. package/build/dist/Tests/Types/Permission.test.js.map +1 -1
  270. package/build/dist/Types/Accounts/AccountsLanguage.js +10 -1
  271. package/build/dist/Types/Accounts/AccountsLanguage.js.map +1 -1
  272. package/build/dist/Types/AdminDashboard/AdminDashboardLanguage.js +10 -1
  273. package/build/dist/Types/AdminDashboard/AdminDashboardLanguage.js.map +1 -1
  274. package/build/dist/Types/BaseDatabase/TableEditionAccessControl.js +2 -0
  275. package/build/dist/Types/BaseDatabase/TableEditionAccessControl.js.map +1 -0
  276. package/build/dist/Types/Dashboard/DashboardLanguage.js +10 -1
  277. package/build/dist/Types/Dashboard/DashboardLanguage.js.map +1 -1
  278. package/build/dist/Types/Database/AccessControl/TableEditionAccessControl.js +6 -0
  279. package/build/dist/Types/Database/AccessControl/TableEditionAccessControl.js.map +1 -0
  280. package/build/dist/Types/Date.js +1 -1
  281. package/build/dist/Types/Date.js.map +1 -1
  282. package/build/dist/Types/Docs/DocsLanguage.js +10 -1
  283. package/build/dist/Types/Docs/DocsLanguage.js.map +1 -1
  284. package/build/dist/Types/Permission.js +80 -44
  285. package/build/dist/Types/Permission.js.map +1 -1
  286. package/build/dist/Types/StatusPage/StatusPageLanguage.js +10 -1
  287. package/build/dist/Types/StatusPage/StatusPageLanguage.js.map +1 -1
  288. package/build/dist/UI/Components/Charts/Area/AreaChart.js +1 -1
  289. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  290. package/build/dist/UI/Components/Charts/Bar/BarChart.js +1 -1
  291. package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
  292. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +5 -1
  293. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
  294. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +1 -1
  295. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
  296. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +11 -1
  297. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
  298. package/build/dist/UI/Components/Charts/Line/LineChart.js +1 -1
  299. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  300. package/build/dist/UI/Components/Charts/Utils/XAxis.js +21 -47
  301. package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
  302. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js +1125 -0
  303. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js.map +1 -0
  304. package/build/dist/UI/Components/Forms/Fields/FormField.js +28 -10
  305. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  306. package/build/dist/UI/Components/Link/Link.js +11 -2
  307. package/build/dist/UI/Components/Link/Link.js.map +1 -1
  308. package/build/dist/UI/Components/ModelDetail/ModelDetail.js +20 -18
  309. package/build/dist/UI/Components/ModelDetail/ModelDetail.js.map +1 -1
  310. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +4 -0
  311. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  312. package/build/dist/UI/Utils/User.js +13 -0
  313. package/build/dist/UI/Utils/User.js.map +1 -1
  314. package/package.json +1 -1
  315. package/Server/Services/ServiceMonitorService.ts +0 -57
  316. package/build/dist/Models/DatabaseModels/ServiceMonitor.js.map +0 -1
  317. package/build/dist/Server/Services/ServiceMonitorService.js +0 -56
  318. package/build/dist/Server/Services/ServiceMonitorService.js.map +0 -1
@@ -281,6 +281,11 @@ enum Permission {
281
281
  EditMonitorCustomField = "EditMonitorCustomField",
282
282
  ReadMonitorCustomField = "ReadMonitorCustomField",
283
283
 
284
+ CreateTeamCustomField = "CreateTeamCustomField",
285
+ DeleteTeamCustomField = "DeleteTeamCustomField",
286
+ EditTeamCustomField = "EditTeamCustomField",
287
+ ReadTeamCustomField = "ReadTeamCustomField",
288
+
284
289
  CreateOnCallDutyPolicyCustomField = "CreateOnCallDutyPolicyCustomField",
285
290
  DeleteOnCallDutyPolicyCustomField = "DeleteOnCallDutyPolicyCustomField",
286
291
  EditOnCallDutyPolicyCustomField = "EditOnCallDutyPolicyCustomField",
@@ -1124,11 +1129,6 @@ enum Permission {
1124
1129
  EditService = "EditService",
1125
1130
  ReadService = "ReadService",
1126
1131
 
1127
- CreateServiceMonitor = "CreateServiceMonitor",
1128
- DeleteServiceMonitor = "DeleteServiceMonitor",
1129
- EditServiceMonitor = "EditServiceMonitor",
1130
- ReadServiceMonitor = "ReadServiceMonitor",
1131
-
1132
1132
  CreateServiceTelemetryService = "CreateServiceTelemetryService",
1133
1133
  DeleteServiceTelemetryService = "DeleteServiceTelemetryService",
1134
1134
  EditServiceTelemetryService = "EditServiceTelemetryService",
@@ -1475,29 +1475,62 @@ export class PermissionHelper {
1475
1475
  );
1476
1476
  }
1477
1477
 
1478
+ /*
1479
+ * Returns permissions that grant access WITHOUT a label restriction.
1480
+ * A permission row grants unrestricted access when:
1481
+ * - scope === All, OR
1482
+ * - scope is unset/undefined AND labelIds is empty (legacy: empty
1483
+ * labels meant no restriction regardless of the permission type).
1484
+ *
1485
+ * Owned-scoped rows are NOT unrestricted — they restrict to owned
1486
+ * resources via OwnedScopePermission — but they also don't contribute
1487
+ * a label filter, so they are excluded here. AccessControlPermission's
1488
+ * early return treats "any unrestricted row" as a broader grant; Owned
1489
+ * rows must not trigger that path.
1490
+ *
1491
+ * We intentionally do NOT consult `isAccessControlPermission` here.
1492
+ * The UI allows attaching labels to role permissions like
1493
+ * IncidentViewer via the role-based form (with scope=Labels); honoring
1494
+ * that requires the filter to look at `scope` + `labelIds`, not the
1495
+ * legacy per-permission flag.
1496
+ */
1478
1497
  public static getNonAccessControlPermissions(
1479
1498
  userPermissions: Array<UserPermission>,
1480
1499
  ): Array<Permission> {
1481
1500
  return userPermissions
1482
1501
  .filter((i: UserPermission) => {
1483
- return (
1484
- i.labelIds.length === 0 ||
1485
- !PermissionHelper.isAccessControlPermission(i.permission)
1486
- );
1502
+ if (i.scope === PermissionScope.All) {
1503
+ return true;
1504
+ }
1505
+ if (i.scope === PermissionScope.Owned) {
1506
+ return false;
1507
+ }
1508
+ // scope === Labels OR scope === undefined (legacy default)
1509
+ return i.labelIds.length === 0;
1487
1510
  })
1488
1511
  .map((i: UserPermission) => {
1489
1512
  return i.permission;
1490
1513
  });
1491
1514
  }
1492
1515
 
1516
+ /*
1517
+ * Returns permission rows that apply a label-based restriction. Rows
1518
+ * count as label-restricting when they have at least one labelId AND
1519
+ * the scope is `Labels` (explicitly) or unset (legacy default).
1520
+ * All/Owned scopes are excluded — All grants unconditionally and Owned
1521
+ * is handled separately by OwnedScopePermission.
1522
+ */
1493
1523
  public static getAccessControlPermissions(
1494
1524
  userPermissions: Array<UserPermission>,
1495
1525
  ): Array<UserPermission> {
1496
1526
  return userPermissions.filter((i: UserPermission) => {
1497
- return (
1498
- i.labelIds.length > 0 &&
1499
- PermissionHelper.isAccessControlPermission(i.permission)
1500
- );
1527
+ if (
1528
+ i.scope === PermissionScope.All ||
1529
+ i.scope === PermissionScope.Owned
1530
+ ) {
1531
+ return false;
1532
+ }
1533
+ return i.labelIds.length > 0;
1501
1534
  });
1502
1535
  }
1503
1536
 
@@ -6109,6 +6142,47 @@ export class PermissionHelper {
6109
6142
  group: PermissionGroup.Monitor,
6110
6143
  },
6111
6144
 
6145
+ {
6146
+ permission: Permission.CreateTeamCustomField,
6147
+ title: "Create Team Custom Field",
6148
+ description:
6149
+ "This permission can create Team Custom Field this project.",
6150
+ isAssignableToTenant: true,
6151
+ isAccessControlPermission: false,
6152
+ isRolePermission: false,
6153
+ group: PermissionGroup.Team,
6154
+ },
6155
+ {
6156
+ permission: Permission.DeleteTeamCustomField,
6157
+ title: "Delete Team Custom Field",
6158
+ description:
6159
+ "This permission can delete Team Custom Field of this project.",
6160
+ isAssignableToTenant: true,
6161
+ isAccessControlPermission: false,
6162
+ isRolePermission: false,
6163
+ group: PermissionGroup.Team,
6164
+ },
6165
+ {
6166
+ permission: Permission.EditTeamCustomField,
6167
+ title: "Edit Team Custom Field",
6168
+ description:
6169
+ "This permission can edit Team Custom Field of this project.",
6170
+ isAssignableToTenant: true,
6171
+ isAccessControlPermission: false,
6172
+ isRolePermission: false,
6173
+ group: PermissionGroup.Team,
6174
+ },
6175
+ {
6176
+ permission: Permission.ReadTeamCustomField,
6177
+ title: "Read Team Custom Field",
6178
+ description:
6179
+ "This permission can read Team Custom Field of this project.",
6180
+ isAssignableToTenant: true,
6181
+ isAccessControlPermission: false,
6182
+ isRolePermission: false,
6183
+ group: PermissionGroup.Team,
6184
+ },
6185
+
6112
6186
  {
6113
6187
  permission: Permission.CreateIncidentCustomField,
6114
6188
  title: "Create Incident Custom Field",
@@ -7523,47 +7597,6 @@ export class PermissionHelper {
7523
7597
  group: PermissionGroup.ServiceCatalog,
7524
7598
  },
7525
7599
 
7526
- {
7527
- permission: Permission.CreateServiceMonitor,
7528
- title: "Create Service Monitor",
7529
- description:
7530
- "This permission can create Service Monitor in this project.",
7531
- isAssignableToTenant: true,
7532
- isAccessControlPermission: false,
7533
- isRolePermission: false,
7534
- group: PermissionGroup.ServiceCatalog,
7535
- },
7536
- {
7537
- permission: Permission.DeleteServiceMonitor,
7538
- title: "Delete Service Monitor",
7539
- description:
7540
- "This permission can delete Service Monitor of this project.",
7541
- isAssignableToTenant: true,
7542
- isAccessControlPermission: false,
7543
- isRolePermission: false,
7544
- group: PermissionGroup.ServiceCatalog,
7545
- },
7546
- {
7547
- permission: Permission.EditServiceMonitor,
7548
- title: "Edit Service Monitor",
7549
- description:
7550
- "This permission can edit Service Monitor of this project.",
7551
- isAssignableToTenant: true,
7552
- isAccessControlPermission: false,
7553
- isRolePermission: false,
7554
- group: PermissionGroup.ServiceCatalog,
7555
- },
7556
- {
7557
- permission: Permission.ReadServiceMonitor,
7558
- title: "Read Service Monitor",
7559
- description:
7560
- "This permission can read Service Monitor of this project.",
7561
- isAssignableToTenant: true,
7562
- isAccessControlPermission: false,
7563
- isRolePermission: false,
7564
- group: PermissionGroup.ServiceCatalog,
7565
- },
7566
-
7567
7600
  {
7568
7601
  permission: Permission.CreateServiceTelemetryService,
7569
7602
  title: "Create Service Telemetry Service",
@@ -20,7 +20,16 @@ export const SUPPORTED_STATUS_PAGE_LANGUAGES: Array<StatusPageLanguage> = [
20
20
  { code: "ru", nativeName: "Русский", englishName: "Russian" },
21
21
  { code: "ja", nativeName: "日本語", englishName: "Japanese" },
22
22
  { code: "ko", nativeName: "한국어", englishName: "Korean" },
23
- { code: "zh", nativeName: "中文", englishName: "Chinese" },
23
+ {
24
+ code: "zh-CN",
25
+ nativeName: "简体中文",
26
+ englishName: "Chinese (Simplified)",
27
+ },
28
+ {
29
+ code: "zh-TW",
30
+ nativeName: "繁體中文",
31
+ englishName: "Chinese (Traditional)",
32
+ },
24
33
  { code: "hi", nativeName: "हिन्दी", englishName: "Hindi" },
25
34
  ];
26
35
 
@@ -139,7 +139,7 @@ const AreaChartElement: FunctionComponent<AreaInternalProps> = (
139
139
  className={className}
140
140
  style={style}
141
141
  data={records}
142
- tickGap={1}
142
+ tickGap={30}
143
143
  index={"Time"}
144
144
  categories={categories}
145
145
  colors={AreaChartPalette}
@@ -72,7 +72,7 @@ const BarChartElement: FunctionComponent<BarInternalProps> = (
72
72
  className={className}
73
73
  style={style}
74
74
  data={records}
75
- tickGap={1}
75
+ tickGap={30}
76
76
  index={"Time"}
77
77
  categories={categories}
78
78
  colors={BarChartPalette}
@@ -704,7 +704,11 @@ const AreaChart: React.ForwardRefExoticComponent<
704
704
  : () => {}
705
705
  }
706
706
  margin={{
707
- bottom: (xAxisLabel ? 30 : 8) as unknown as number,
707
+ bottom: (xAxisLabel
708
+ ? 40
709
+ : showXAxis
710
+ ? 24
711
+ : 8) as unknown as number,
708
712
  left: (yAxisLabel ? 20 : 0) as unknown as number,
709
713
  right: (yAxisLabel ? 5 : 8) as unknown as number,
710
714
  top: 5,
@@ -794,7 +794,7 @@ const BarChart: React.ForwardRefExoticComponent<
794
794
  }
795
795
  : {})}
796
796
  margin={{
797
- bottom: xAxisLabel ? 30 : 8,
797
+ bottom: xAxisLabel ? 40 : showXAxis ? 24 : 8,
798
798
  left: yAxisLabel ? 20 : 0,
799
799
  right: yAxisLabel ? 5 : 8,
800
800
  top: 5,
@@ -710,7 +710,17 @@ const LineChart: React.ForwardRefExoticComponent<
710
710
  : () => {} // do nothing
711
711
  }
712
712
  margin={{
713
- bottom: (xAxisLabel ? 30 : 8) as unknown as number,
713
+ /*
714
+ * Tick labels are 10px font with a translate(0, 6) — they
715
+ * need ~20px of bottom space, plus another ~20px for the
716
+ * optional axis label. 8px (the no-axis case) is only
717
+ * valid when the axis is hidden entirely.
718
+ */
719
+ bottom: (xAxisLabel
720
+ ? 40
721
+ : showXAxis
722
+ ? 24
723
+ : 8) as unknown as number,
714
724
  left: (yAxisLabel ? 20 : 0) as unknown as number,
715
725
  right: (yAxisLabel ? 5 : 8) as unknown as number,
716
726
  top: 5,
@@ -119,7 +119,7 @@ const LineChartElement: FunctionComponent<LineInternalProps> = (
119
119
  className={className}
120
120
  style={style}
121
121
  data={records}
122
- tickGap={1}
122
+ tickGap={30}
123
123
  index={"Time"}
124
124
  categories={categories}
125
125
  colors={LineChartPalette}
@@ -32,10 +32,15 @@ export default class XAxisUtil {
32
32
  const totalMonths: number = totalDays / 30;
33
33
 
34
34
  /*
35
- * Thresholds are chosen so that the number of tick labels
36
- * stays between ~6 and ~15 for any range, keeping the axis readable.
35
+ * Mirror the server's aggregation interval (see
36
+ * AggregateUtil.getAggregationInterval) so the chart renders one
37
+ * point per backend bucket instead of re-bucketing them into
38
+ * coarser groups. Previously a 1h range was rendered with EVERY_
39
+ * FIVE_MINUTES (~12 points) even though the server returned 60
40
+ * per-minute rows. Recharts thins the X-axis label set via
41
+ * `interval="equidistantPreserveStart"`, so high point counts do
42
+ * not crowd the labels.
37
43
  */
38
-
39
44
  if (totalSeconds <= 15) {
40
45
  return XAxisPrecision.EVERY_SECOND;
41
46
  }
@@ -48,57 +53,21 @@ export default class XAxisUtil {
48
53
  if (totalSeconds <= 450) {
49
54
  return XAxisPrecision.EVERY_THIRTY_SECONDS;
50
55
  }
51
- if (totalMinutes <= 15) {
56
+ if (totalHours <= 3) {
52
57
  return XAxisPrecision.EVERY_MINUTE;
53
58
  }
54
- if (totalMinutes <= 75) {
55
- return XAxisPrecision.EVERY_FIVE_MINUTES;
56
- }
57
- if (totalMinutes <= 150) {
58
- return XAxisPrecision.EVERY_TEN_MINUTES;
59
- }
60
- if (totalMinutes <= 450) {
61
- return XAxisPrecision.EVERY_THIRTY_MINUTES;
62
- }
63
- if (totalHours <= 15) {
59
+ if (totalDays <= 7) {
64
60
  return XAxisPrecision.EVERY_HOUR;
65
61
  }
66
- if (totalHours <= 30) {
67
- return XAxisPrecision.EVERY_TWO_HOURS;
68
- }
69
- if (totalHours <= 45) {
70
- return XAxisPrecision.EVERY_THREE_HOURS;
71
- }
72
- if (totalHours <= 90) {
73
- return XAxisPrecision.EVERY_SIX_HOURS;
74
- }
75
- if (totalHours <= 180) {
76
- return XAxisPrecision.EVERY_TWELVE_HOURS;
77
- }
78
- if (totalDays <= 15) {
62
+ if (totalWeeks <= 6) {
79
63
  return XAxisPrecision.EVERY_DAY;
80
64
  }
81
- if (totalDays <= 30) {
82
- return XAxisPrecision.EVERY_TWO_DAYS;
83
- }
84
- if (totalWeeks <= 15) {
65
+ if (totalMonths <= 6) {
85
66
  return XAxisPrecision.EVERY_WEEK;
86
67
  }
87
- if (totalWeeks <= 30) {
88
- return XAxisPrecision.EVERY_TWO_WEEKS;
89
- }
90
- if (totalMonths <= 15) {
68
+ if (totalMonths <= 72) {
91
69
  return XAxisPrecision.EVERY_MONTH;
92
70
  }
93
- if (totalMonths <= 30) {
94
- return XAxisPrecision.EVERY_TWO_MONTHS;
95
- }
96
- if (totalMonths <= 45) {
97
- return XAxisPrecision.EVERY_THREE_MONTHS;
98
- }
99
- if (totalMonths <= 90) {
100
- return XAxisPrecision.EVERY_SIX_MONTHS;
101
- }
102
71
  return XAxisPrecision.EVERY_YEAR;
103
72
  }
104
73
 
@@ -283,11 +252,15 @@ export default class XAxisUtil {
283
252
  return OneUptimeDate.getLocalTimeString(roundedValue);
284
253
  };
285
254
  case XAxisPrecision.EVERY_HOUR:
255
+ /*
256
+ * Include date — hourly buckets can span multiple days, where
257
+ * a bare "HH" repeats and is ambiguous.
258
+ */
286
259
  return (value: Date) => {
287
- return OneUptimeDate.getLocalTimeString(value, {
288
- includeMinutes: false,
289
- });
290
- }; // HH:00
260
+ const roundedValue: Date = this.cloneDate(value);
261
+ roundedValue.setMinutes(0, 0, 0);
262
+ return OneUptimeDate.getDateAsLocalDayMonthHourString(roundedValue);
263
+ };
291
264
  case XAxisPrecision.EVERY_TWO_HOURS:
292
265
  return (value: Date) => {
293
266
  const roundedValue: Date = this.cloneDate(value);