@oneuptime/common 10.4.17 → 10.5.1

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
@@ -10,8 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  import Label from "../../Models/DatabaseModels/Label";
11
11
  import ScheduledMaintenance from "../../Models/DatabaseModels/ScheduledMaintenance";
12
12
  import ScheduledMaintenanceLabelRule from "../../Models/DatabaseModels/ScheduledMaintenanceLabelRule";
13
+ import DockerHostService from "./DockerHostService";
14
+ import HostService from "./HostService";
15
+ import KubernetesClusterService from "./KubernetesClusterService";
13
16
  import LabelService from "./LabelService";
14
17
  import MonitorService from "./MonitorService";
18
+ import ServiceService from "./ServiceService";
15
19
  import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
16
20
  import ScheduledMaintenanceLabelRuleService from "./ScheduledMaintenanceLabelRuleService";
17
21
  import ScheduledMaintenanceService from "./ScheduledMaintenanceService";
@@ -28,11 +32,15 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
28
32
  * attaches matched labels to the event. Each matched rule contributes:
29
33
  * - labels listed on `labelsToAdd`
30
34
  * - all labels of the event's monitors when `inheritLabelsFromMonitors`
35
+ * - all labels of the event's hosts when `inheritLabelsFromHosts`
36
+ * - all labels of the event's Kubernetes clusters when `inheritLabelsFromKubernetesClusters`
37
+ * - all labels of the event's Docker hosts when `inheritLabelsFromDockerHosts`
38
+ * - all labels of the event's services when `inheritLabelsFromServices`
31
39
  * The union is deduped against labels already on the event before insert
32
40
  * to avoid PK conflicts on the ScheduledMaintenanceLabel join table.
33
41
  */
34
42
  async applyRulesToScheduledMaintenance(scheduledMaintenance) {
35
- var _a, _b, _c;
43
+ var _a, _b, _c, _d, _e, _f, _g;
36
44
  if (!scheduledMaintenance.id || !scheduledMaintenance.projectId) {
37
45
  return;
38
46
  }
@@ -55,6 +63,10 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
55
63
  monitorDescriptionPattern: true,
56
64
  labelsToAdd: { _id: true },
57
65
  inheritLabelsFromMonitors: true,
66
+ inheritLabelsFromHosts: true,
67
+ inheritLabelsFromKubernetesClusters: true,
68
+ inheritLabelsFromDockerHosts: true,
69
+ inheritLabelsFromServices: true,
58
70
  },
59
71
  limit: 100,
60
72
  skip: 0,
@@ -64,6 +76,10 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
64
76
  }
65
77
  const labelIdsToAdd = new Set();
66
78
  let inheritFromMonitors = false;
79
+ let inheritFromHosts = false;
80
+ let inheritFromKubernetesClusters = false;
81
+ let inheritFromDockerHosts = false;
82
+ let inheritFromServices = false;
67
83
  const matchedRules = [];
68
84
  for (const rule of rules) {
69
85
  const matches = await this.doesScheduledMaintenanceMatchRule(scheduledMaintenance, rule);
@@ -79,6 +95,35 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
79
95
  if (rule.inheritLabelsFromMonitors) {
80
96
  inheritFromMonitors = true;
81
97
  }
98
+ if (rule.inheritLabelsFromHosts) {
99
+ inheritFromHosts = true;
100
+ }
101
+ if (rule.inheritLabelsFromKubernetesClusters) {
102
+ inheritFromKubernetesClusters = true;
103
+ }
104
+ if (rule.inheritLabelsFromDockerHosts) {
105
+ inheritFromDockerHosts = true;
106
+ }
107
+ if (rule.inheritLabelsFromServices) {
108
+ inheritFromServices = true;
109
+ }
110
+ }
111
+ const needsRelatedResources = inheritFromHosts ||
112
+ inheritFromKubernetesClusters ||
113
+ inheritFromDockerHosts ||
114
+ inheritFromServices;
115
+ let eventWithResources = null;
116
+ if (needsRelatedResources) {
117
+ eventWithResources = await ScheduledMaintenanceService.findOneById({
118
+ id: scheduledMaintenance.id,
119
+ select: {
120
+ hosts: { _id: true },
121
+ kubernetesClusters: { _id: true },
122
+ dockerHosts: { _id: true },
123
+ services: { _id: true },
124
+ },
125
+ props: { isRoot: true },
126
+ });
82
127
  }
83
128
  if (inheritFromMonitors && ((_a = scheduledMaintenance.monitors) === null || _a === void 0 ? void 0 : _a.length)) {
84
129
  for (const eventMonitor of scheduledMaintenance.monitors) {
@@ -97,6 +142,75 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
97
142
  }
98
143
  }
99
144
  }
145
+ if (inheritFromHosts && ((_b = eventWithResources === null || eventWithResources === void 0 ? void 0 : eventWithResources.hosts) === null || _b === void 0 ? void 0 : _b.length)) {
146
+ for (const eventHost of eventWithResources.hosts) {
147
+ if (!eventHost.id) {
148
+ continue;
149
+ }
150
+ const host = await HostService.findOneById({
151
+ id: eventHost.id,
152
+ select: { labels: { _id: true } },
153
+ props: { isRoot: true },
154
+ });
155
+ for (const label of (host === null || host === void 0 ? void 0 : host.labels) || []) {
156
+ if (label.id) {
157
+ labelIdsToAdd.add(label.id.toString());
158
+ }
159
+ }
160
+ }
161
+ }
162
+ if (inheritFromKubernetesClusters &&
163
+ ((_c = eventWithResources === null || eventWithResources === void 0 ? void 0 : eventWithResources.kubernetesClusters) === null || _c === void 0 ? void 0 : _c.length)) {
164
+ for (const eventCluster of eventWithResources.kubernetesClusters) {
165
+ if (!eventCluster.id) {
166
+ continue;
167
+ }
168
+ const cluster = await KubernetesClusterService.findOneById({
169
+ id: eventCluster.id,
170
+ select: { labels: { _id: true } },
171
+ props: { isRoot: true },
172
+ });
173
+ for (const label of (cluster === null || cluster === void 0 ? void 0 : cluster.labels) || []) {
174
+ if (label.id) {
175
+ labelIdsToAdd.add(label.id.toString());
176
+ }
177
+ }
178
+ }
179
+ }
180
+ if (inheritFromDockerHosts && ((_d = eventWithResources === null || eventWithResources === void 0 ? void 0 : eventWithResources.dockerHosts) === null || _d === void 0 ? void 0 : _d.length)) {
181
+ for (const eventDockerHost of eventWithResources.dockerHosts) {
182
+ if (!eventDockerHost.id) {
183
+ continue;
184
+ }
185
+ const dockerHost = await DockerHostService.findOneById({
186
+ id: eventDockerHost.id,
187
+ select: { labels: { _id: true } },
188
+ props: { isRoot: true },
189
+ });
190
+ for (const label of (dockerHost === null || dockerHost === void 0 ? void 0 : dockerHost.labels) || []) {
191
+ if (label.id) {
192
+ labelIdsToAdd.add(label.id.toString());
193
+ }
194
+ }
195
+ }
196
+ }
197
+ if (inheritFromServices && ((_e = eventWithResources === null || eventWithResources === void 0 ? void 0 : eventWithResources.services) === null || _e === void 0 ? void 0 : _e.length)) {
198
+ for (const eventService of eventWithResources.services) {
199
+ if (!eventService.id) {
200
+ continue;
201
+ }
202
+ const service = await ServiceService.findOneById({
203
+ id: eventService.id,
204
+ select: { labels: { _id: true } },
205
+ props: { isRoot: true },
206
+ });
207
+ for (const label of (service === null || service === void 0 ? void 0 : service.labels) || []) {
208
+ if (label.id) {
209
+ labelIdsToAdd.add(label.id.toString());
210
+ }
211
+ }
212
+ }
213
+ }
100
214
  if (labelIdsToAdd.size === 0) {
101
215
  return;
102
216
  }
@@ -149,8 +263,8 @@ class ScheduledMaintenanceLabelRuleEngineServiceClass {
149
263
  }
150
264
  catch (error) {
151
265
  logger.error(`Error applying scheduled maintenance label rules: ${error}`, {
152
- projectId: (_b = scheduledMaintenance.projectId) === null || _b === void 0 ? void 0 : _b.toString(),
153
- scheduledMaintenanceId: (_c = scheduledMaintenance.id) === null || _c === void 0 ? void 0 : _c.toString(),
266
+ projectId: (_f = scheduledMaintenance.projectId) === null || _f === void 0 ? void 0 : _f.toString(),
267
+ scheduledMaintenanceId: (_g = scheduledMaintenance.id) === null || _g === void 0 ? void 0 : _g.toString(),
154
268
  });
155
269
  }
156
270
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceLabelRuleEngineService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceLabelRuleEngineService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScheduledMaintenanceLabelRuleEngineService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceLabelRuleEngineService.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,20 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import ScheduledMaintenance from "../../Models/DatabaseModels/ScheduledMaintenance";
11
11
  import ScheduledMaintenanceOwnerRule from "../../Models/DatabaseModels/ScheduledMaintenanceOwnerRule";
12
+ import DockerHostOwnerTeamService from "./DockerHostOwnerTeamService";
13
+ import DockerHostOwnerUserService from "./DockerHostOwnerUserService";
14
+ import HostOwnerTeamService from "./HostOwnerTeamService";
15
+ import HostOwnerUserService from "./HostOwnerUserService";
16
+ import KubernetesClusterOwnerTeamService from "./KubernetesClusterOwnerTeamService";
17
+ import KubernetesClusterOwnerUserService from "./KubernetesClusterOwnerUserService";
12
18
  import MonitorOwnerTeamService from "./MonitorOwnerTeamService";
13
19
  import MonitorOwnerUserService from "./MonitorOwnerUserService";
14
20
  import MonitorService from "./MonitorService";
15
21
  import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
16
22
  import ScheduledMaintenanceOwnerRuleService from "./ScheduledMaintenanceOwnerRuleService";
17
23
  import ScheduledMaintenanceService from "./ScheduledMaintenanceService";
24
+ import ServiceOwnerTeamService from "./ServiceOwnerTeamService";
25
+ import ServiceOwnerUserService from "./ServiceOwnerUserService";
18
26
  import TeamService from "./TeamService";
19
27
  import UserService from "./UserService";
20
28
  import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
@@ -32,7 +40,7 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
32
40
  * notifyOwners off add silently.
33
41
  */
34
42
  async applyRulesToScheduledMaintenance(scheduledMaintenance) {
35
- var _a, _b, _c;
43
+ var _a, _b, _c, _d, _e, _f, _g;
36
44
  if (!scheduledMaintenance.id || !scheduledMaintenance.projectId) {
37
45
  return;
38
46
  }
@@ -57,6 +65,10 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
57
65
  ownerUsers: { _id: true },
58
66
  ownerTeams: { _id: true },
59
67
  inheritOwnersFromMonitors: true,
68
+ inheritOwnersFromHosts: true,
69
+ inheritOwnersFromKubernetesClusters: true,
70
+ inheritOwnersFromDockerHosts: true,
71
+ inheritOwnersFromServices: true,
60
72
  },
61
73
  limit: 100,
62
74
  skip: 0,
@@ -76,6 +88,10 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
76
88
  const allUserIds = new Set();
77
89
  const allTeamIds = new Set();
78
90
  let inheritFromMonitors = false;
91
+ let inheritFromHosts = false;
92
+ let inheritFromKubernetesClusters = false;
93
+ let inheritFromDockerHosts = false;
94
+ let inheritFromServices = false;
79
95
  const inheritNotifyMode = { value: null };
80
96
  for (const rule of rules) {
81
97
  const matches = await this.doesScheduledMaintenanceMatchRule(scheduledMaintenance, rule);
@@ -104,12 +120,44 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
104
120
  inheritNotifyMode.value =
105
121
  inheritNotifyMode.value === true ? true : notify;
106
122
  }
123
+ if (rule.inheritOwnersFromHosts) {
124
+ inheritFromHosts = true;
125
+ ruleAddedAny = true;
126
+ inheritNotifyMode.value =
127
+ inheritNotifyMode.value === true ? true : notify;
128
+ }
129
+ if (rule.inheritOwnersFromKubernetesClusters) {
130
+ inheritFromKubernetesClusters = true;
131
+ ruleAddedAny = true;
132
+ inheritNotifyMode.value =
133
+ inheritNotifyMode.value === true ? true : notify;
134
+ }
135
+ if (rule.inheritOwnersFromDockerHosts) {
136
+ inheritFromDockerHosts = true;
137
+ ruleAddedAny = true;
138
+ inheritNotifyMode.value =
139
+ inheritNotifyMode.value === true ? true : notify;
140
+ }
141
+ if (rule.inheritOwnersFromServices) {
142
+ inheritFromServices = true;
143
+ ruleAddedAny = true;
144
+ inheritNotifyMode.value =
145
+ inheritNotifyMode.value === true ? true : notify;
146
+ }
107
147
  if (ruleAddedAny) {
108
148
  matchedRules.push(rule);
109
149
  }
110
150
  }
111
151
  const inheritedFromMonitorUserIds = new Set();
112
152
  const inheritedFromMonitorTeamIds = new Set();
153
+ const inheritedFromHostUserIds = new Set();
154
+ const inheritedFromHostTeamIds = new Set();
155
+ const inheritedFromKubernetesClusterUserIds = new Set();
156
+ const inheritedFromKubernetesClusterTeamIds = new Set();
157
+ const inheritedFromDockerHostUserIds = new Set();
158
+ const inheritedFromDockerHostTeamIds = new Set();
159
+ const inheritedFromServiceUserIds = new Set();
160
+ const inheritedFromServiceTeamIds = new Set();
113
161
  if (inheritFromMonitors && ((_a = scheduledMaintenance.monitors) === null || _a === void 0 ? void 0 : _a.length)) {
114
162
  const monitorIds = scheduledMaintenance.monitors
115
163
  .map((m) => {
@@ -147,14 +195,176 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
147
195
  }
148
196
  }
149
197
  }
150
- if (inheritedFromMonitorUserIds.size > 0 ||
151
- inheritedFromMonitorTeamIds.size > 0) {
198
+ if (inheritFromHosts && ((_b = scheduledMaintenance.hosts) === null || _b === void 0 ? void 0 : _b.length)) {
199
+ const hostIds = scheduledMaintenance.hosts
200
+ .map((h) => {
201
+ return h.id;
202
+ })
203
+ .filter((id) => {
204
+ return Boolean(id);
205
+ });
206
+ if (hostIds.length > 0) {
207
+ const [hostOwnerUsers, hostOwnerTeams] = await Promise.all([
208
+ HostOwnerUserService.findBy({
209
+ query: { hostId: QueryHelper.any(hostIds) },
210
+ select: { userId: true },
211
+ props: { isRoot: true },
212
+ limit: LIMIT_MAX,
213
+ skip: 0,
214
+ }),
215
+ HostOwnerTeamService.findBy({
216
+ query: { hostId: QueryHelper.any(hostIds) },
217
+ select: { teamId: true },
218
+ props: { isRoot: true },
219
+ limit: LIMIT_MAX,
220
+ skip: 0,
221
+ }),
222
+ ]);
223
+ for (const ownerUser of hostOwnerUsers) {
224
+ if (ownerUser.userId) {
225
+ inheritedFromHostUserIds.add(ownerUser.userId.toString());
226
+ }
227
+ }
228
+ for (const ownerTeam of hostOwnerTeams) {
229
+ if (ownerTeam.teamId) {
230
+ inheritedFromHostTeamIds.add(ownerTeam.teamId.toString());
231
+ }
232
+ }
233
+ }
234
+ }
235
+ if (inheritFromKubernetesClusters &&
236
+ ((_c = scheduledMaintenance.kubernetesClusters) === null || _c === void 0 ? void 0 : _c.length)) {
237
+ const clusterIds = scheduledMaintenance.kubernetesClusters
238
+ .map((c) => {
239
+ return c.id;
240
+ })
241
+ .filter((id) => {
242
+ return Boolean(id);
243
+ });
244
+ if (clusterIds.length > 0) {
245
+ const [clusterOwnerUsers, clusterOwnerTeams] = await Promise.all([
246
+ KubernetesClusterOwnerUserService.findBy({
247
+ query: { kubernetesClusterId: QueryHelper.any(clusterIds) },
248
+ select: { userId: true },
249
+ props: { isRoot: true },
250
+ limit: LIMIT_MAX,
251
+ skip: 0,
252
+ }),
253
+ KubernetesClusterOwnerTeamService.findBy({
254
+ query: { kubernetesClusterId: QueryHelper.any(clusterIds) },
255
+ select: { teamId: true },
256
+ props: { isRoot: true },
257
+ limit: LIMIT_MAX,
258
+ skip: 0,
259
+ }),
260
+ ]);
261
+ for (const ownerUser of clusterOwnerUsers) {
262
+ if (ownerUser.userId) {
263
+ inheritedFromKubernetesClusterUserIds.add(ownerUser.userId.toString());
264
+ }
265
+ }
266
+ for (const ownerTeam of clusterOwnerTeams) {
267
+ if (ownerTeam.teamId) {
268
+ inheritedFromKubernetesClusterTeamIds.add(ownerTeam.teamId.toString());
269
+ }
270
+ }
271
+ }
272
+ }
273
+ if (inheritFromDockerHosts && ((_d = scheduledMaintenance.dockerHosts) === null || _d === void 0 ? void 0 : _d.length)) {
274
+ const dockerHostIds = scheduledMaintenance.dockerHosts
275
+ .map((d) => {
276
+ return d.id;
277
+ })
278
+ .filter((id) => {
279
+ return Boolean(id);
280
+ });
281
+ if (dockerHostIds.length > 0) {
282
+ const [dockerHostOwnerUsers, dockerHostOwnerTeams] = await Promise.all([
283
+ DockerHostOwnerUserService.findBy({
284
+ query: { dockerHostId: QueryHelper.any(dockerHostIds) },
285
+ select: { userId: true },
286
+ props: { isRoot: true },
287
+ limit: LIMIT_MAX,
288
+ skip: 0,
289
+ }),
290
+ DockerHostOwnerTeamService.findBy({
291
+ query: { dockerHostId: QueryHelper.any(dockerHostIds) },
292
+ select: { teamId: true },
293
+ props: { isRoot: true },
294
+ limit: LIMIT_MAX,
295
+ skip: 0,
296
+ }),
297
+ ]);
298
+ for (const ownerUser of dockerHostOwnerUsers) {
299
+ if (ownerUser.userId) {
300
+ inheritedFromDockerHostUserIds.add(ownerUser.userId.toString());
301
+ }
302
+ }
303
+ for (const ownerTeam of dockerHostOwnerTeams) {
304
+ if (ownerTeam.teamId) {
305
+ inheritedFromDockerHostTeamIds.add(ownerTeam.teamId.toString());
306
+ }
307
+ }
308
+ }
309
+ }
310
+ if (inheritFromServices && ((_e = scheduledMaintenance.services) === null || _e === void 0 ? void 0 : _e.length)) {
311
+ const serviceIds = scheduledMaintenance.services
312
+ .map((s) => {
313
+ return s.id;
314
+ })
315
+ .filter((id) => {
316
+ return Boolean(id);
317
+ });
318
+ if (serviceIds.length > 0) {
319
+ const [serviceOwnerUsers, serviceOwnerTeams] = await Promise.all([
320
+ ServiceOwnerUserService.findBy({
321
+ query: { serviceId: QueryHelper.any(serviceIds) },
322
+ select: { userId: true },
323
+ props: { isRoot: true },
324
+ limit: LIMIT_MAX,
325
+ skip: 0,
326
+ }),
327
+ ServiceOwnerTeamService.findBy({
328
+ query: { serviceId: QueryHelper.any(serviceIds) },
329
+ select: { teamId: true },
330
+ props: { isRoot: true },
331
+ limit: LIMIT_MAX,
332
+ skip: 0,
333
+ }),
334
+ ]);
335
+ for (const ownerUser of serviceOwnerUsers) {
336
+ if (ownerUser.userId) {
337
+ inheritedFromServiceUserIds.add(ownerUser.userId.toString());
338
+ }
339
+ }
340
+ for (const ownerTeam of serviceOwnerTeams) {
341
+ if (ownerTeam.teamId) {
342
+ inheritedFromServiceTeamIds.add(ownerTeam.teamId.toString());
343
+ }
344
+ }
345
+ }
346
+ }
347
+ const inheritedUserIds = new Set([
348
+ ...inheritedFromMonitorUserIds,
349
+ ...inheritedFromHostUserIds,
350
+ ...inheritedFromKubernetesClusterUserIds,
351
+ ...inheritedFromDockerHostUserIds,
352
+ ...inheritedFromServiceUserIds,
353
+ ]);
354
+ const inheritedTeamIds = new Set([
355
+ ...inheritedFromMonitorTeamIds,
356
+ ...inheritedFromHostTeamIds,
357
+ ...inheritedFromKubernetesClusterTeamIds,
358
+ ...inheritedFromDockerHostTeamIds,
359
+ ...inheritedFromServiceTeamIds,
360
+ ]);
361
+ if (inheritedUserIds.size > 0 || inheritedTeamIds.size > 0) {
152
362
  const inheritNotify = inheritNotifyMode.value === true;
153
- for (const id of inheritedFromMonitorUserIds) {
363
+ for (const id of inheritedUserIds) {
154
364
  usersByNotify.get(inheritNotify).add(id);
155
365
  allUserIds.add(id);
156
366
  }
157
- for (const id of inheritedFromMonitorTeamIds) {
367
+ for (const id of inheritedTeamIds) {
158
368
  teamsByNotify.get(inheritNotify).add(id);
159
369
  allTeamIds.add(id);
160
370
  }
@@ -187,18 +397,27 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
187
397
  teamIds: Array.from(allTeamIds),
188
398
  inheritedFromMonitors: inheritedFromMonitorUserIds.size + inheritedFromMonitorTeamIds.size >
189
399
  0,
400
+ inheritedFromHosts: inheritedFromHostUserIds.size + inheritedFromHostTeamIds.size > 0,
401
+ inheritedFromKubernetesClusters: inheritedFromKubernetesClusterUserIds.size +
402
+ inheritedFromKubernetesClusterTeamIds.size >
403
+ 0,
404
+ inheritedFromDockerHosts: inheritedFromDockerHostUserIds.size +
405
+ inheritedFromDockerHostTeamIds.size >
406
+ 0,
407
+ inheritedFromServices: inheritedFromServiceUserIds.size + inheritedFromServiceTeamIds.size >
408
+ 0,
190
409
  });
191
410
  }
192
411
  catch (error) {
193
412
  logger.error(`Error applying scheduled maintenance owner rules: ${error}`, {
194
- projectId: (_b = scheduledMaintenance.projectId) === null || _b === void 0 ? void 0 : _b.toString(),
195
- scheduledMaintenanceId: (_c = scheduledMaintenance.id) === null || _c === void 0 ? void 0 : _c.toString(),
413
+ projectId: (_f = scheduledMaintenance.projectId) === null || _f === void 0 ? void 0 : _f.toString(),
414
+ scheduledMaintenanceId: (_g = scheduledMaintenance.id) === null || _g === void 0 ? void 0 : _g.toString(),
196
415
  });
197
416
  }
198
417
  }
199
418
  async createRuleExecutedFeedItem(data) {
200
419
  var _a, _b;
201
- const { scheduledMaintenance, matchedRules, userIds, teamIds, inheritedFromMonitors, } = data;
420
+ const { scheduledMaintenance, matchedRules, userIds, teamIds, inheritedFromMonitors, inheritedFromHosts, inheritedFromKubernetesClusters, inheritedFromDockerHosts, inheritedFromServices, } = data;
202
421
  if (!scheduledMaintenance.id ||
203
422
  !scheduledMaintenance.projectId ||
204
423
  matchedRules.length === 0 ||
@@ -259,8 +478,24 @@ class ScheduledMaintenanceOwnerRuleEngineServiceClass {
259
478
  const ownersPart = userLines.length + teamLines.length > 0
260
479
  ? userLines.concat(teamLines).join("")
261
480
  : "\n- (no named owners)";
262
- const inheritedNote = inheritedFromMonitors
263
- ? `\n\n_Some owners were inherited from the event's monitors._`
481
+ const inheritedSources = [];
482
+ if (inheritedFromMonitors) {
483
+ inheritedSources.push("monitors");
484
+ }
485
+ if (inheritedFromHosts) {
486
+ inheritedSources.push("hosts");
487
+ }
488
+ if (inheritedFromKubernetesClusters) {
489
+ inheritedSources.push("Kubernetes clusters");
490
+ }
491
+ if (inheritedFromDockerHosts) {
492
+ inheritedSources.push("Docker hosts");
493
+ }
494
+ if (inheritedFromServices) {
495
+ inheritedSources.push("services");
496
+ }
497
+ const inheritedNote = inheritedSources.length > 0
498
+ ? `\n\n_Some owners were inherited from the event's ${inheritedSources.join(", ")}._`
264
499
  : "";
265
500
  const feedInfoInMarkdown = `🛡️ **Scheduled Maintenance Owner Rule${matchedRules.length > 1 ? "s" : ""} executed:** ${rulesPart}\n\nAssigned the following owner${userLines.length + teamLines.length === 1 ? "" : "s"} to the event:${ownersPart}${inheritedNote}`;
266
501
  await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeedItem({