@oneuptime/common 10.4.17 → 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
@@ -6,11 +6,16 @@ import AnalyticsTableColumn, {
6
6
  SkipIndexType,
7
7
  } from "../../Types/AnalyticsDatabase/TableColumn";
8
8
  import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
9
+ import OperationalResource from "../../Types/Database/AccessControl/OperationalResource";
10
+ import OwnedThrough from "../../Types/Database/AccessControl/OwnedThrough";
9
11
  import { JSONObject } from "../../Types/JSON";
10
12
  import ObjectID from "../../Types/ObjectID";
11
13
  import Permission from "../../Types/Permission";
14
+ import Service from "../DatabaseModels/Service";
12
15
  import ServiceType from "../../Types/Telemetry/ServiceType";
13
16
 
17
+ @OperationalResource()
18
+ @OwnedThrough("serviceId", Service)
14
19
  export default class Profile extends AnalyticsBaseModel {
15
20
  public constructor() {
16
21
  const projectIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
@@ -25,6 +30,7 @@ export default class Profile extends AnalyticsBaseModel {
25
30
  Permission.ProjectOwner,
26
31
  Permission.ProjectAdmin,
27
32
  Permission.ProjectMember,
33
+ Permission.Viewer,
28
34
  Permission.TelemetryAdmin,
29
35
  Permission.TelemetryMember,
30
36
  Permission.TelemetryViewer,
@@ -54,6 +60,7 @@ export default class Profile extends AnalyticsBaseModel {
54
60
  Permission.ProjectOwner,
55
61
  Permission.ProjectAdmin,
56
62
  Permission.ProjectMember,
63
+ Permission.Viewer,
57
64
  Permission.TelemetryAdmin,
58
65
  Permission.TelemetryMember,
59
66
  Permission.TelemetryViewer,
@@ -89,6 +96,7 @@ export default class Profile extends AnalyticsBaseModel {
89
96
  Permission.ProjectOwner,
90
97
  Permission.ProjectAdmin,
91
98
  Permission.ProjectMember,
99
+ Permission.Viewer,
92
100
  Permission.TelemetryAdmin,
93
101
  Permission.TelemetryMember,
94
102
  Permission.TelemetryViewer,
@@ -124,6 +132,7 @@ export default class Profile extends AnalyticsBaseModel {
124
132
  Permission.ProjectOwner,
125
133
  Permission.ProjectAdmin,
126
134
  Permission.ProjectMember,
135
+ Permission.Viewer,
127
136
  Permission.TelemetryAdmin,
128
137
  Permission.TelemetryMember,
129
138
  Permission.TelemetryViewer,
@@ -159,6 +168,7 @@ export default class Profile extends AnalyticsBaseModel {
159
168
  Permission.ProjectOwner,
160
169
  Permission.ProjectAdmin,
161
170
  Permission.ProjectMember,
171
+ Permission.Viewer,
162
172
  Permission.TelemetryAdmin,
163
173
  Permission.TelemetryMember,
164
174
  Permission.TelemetryViewer,
@@ -194,6 +204,7 @@ export default class Profile extends AnalyticsBaseModel {
194
204
  Permission.ProjectOwner,
195
205
  Permission.ProjectAdmin,
196
206
  Permission.ProjectMember,
207
+ Permission.Viewer,
197
208
  Permission.TelemetryAdmin,
198
209
  Permission.TelemetryMember,
199
210
  Permission.TelemetryViewer,
@@ -222,6 +233,7 @@ export default class Profile extends AnalyticsBaseModel {
222
233
  Permission.ProjectOwner,
223
234
  Permission.ProjectAdmin,
224
235
  Permission.ProjectMember,
236
+ Permission.Viewer,
225
237
  Permission.TelemetryAdmin,
226
238
  Permission.TelemetryMember,
227
239
  Permission.TelemetryViewer,
@@ -250,6 +262,7 @@ export default class Profile extends AnalyticsBaseModel {
250
262
  Permission.ProjectOwner,
251
263
  Permission.ProjectAdmin,
252
264
  Permission.ProjectMember,
265
+ Permission.Viewer,
253
266
  Permission.TelemetryAdmin,
254
267
  Permission.TelemetryMember,
255
268
  Permission.TelemetryViewer,
@@ -280,6 +293,7 @@ export default class Profile extends AnalyticsBaseModel {
280
293
  Permission.ProjectOwner,
281
294
  Permission.ProjectAdmin,
282
295
  Permission.ProjectMember,
296
+ Permission.Viewer,
283
297
  Permission.TelemetryAdmin,
284
298
  Permission.TelemetryMember,
285
299
  Permission.TelemetryViewer,
@@ -310,6 +324,7 @@ export default class Profile extends AnalyticsBaseModel {
310
324
  Permission.ProjectOwner,
311
325
  Permission.ProjectAdmin,
312
326
  Permission.ProjectMember,
327
+ Permission.Viewer,
313
328
  Permission.TelemetryAdmin,
314
329
  Permission.TelemetryMember,
315
330
  Permission.TelemetryViewer,
@@ -339,6 +354,7 @@ export default class Profile extends AnalyticsBaseModel {
339
354
  Permission.ProjectOwner,
340
355
  Permission.ProjectAdmin,
341
356
  Permission.ProjectMember,
357
+ Permission.Viewer,
342
358
  Permission.TelemetryAdmin,
343
359
  Permission.TelemetryMember,
344
360
  Permission.TelemetryViewer,
@@ -374,6 +390,7 @@ export default class Profile extends AnalyticsBaseModel {
374
390
  Permission.ProjectOwner,
375
391
  Permission.ProjectAdmin,
376
392
  Permission.ProjectMember,
393
+ Permission.Viewer,
377
394
  Permission.TelemetryAdmin,
378
395
  Permission.TelemetryMember,
379
396
  Permission.TelemetryViewer,
@@ -402,6 +419,7 @@ export default class Profile extends AnalyticsBaseModel {
402
419
  Permission.ProjectOwner,
403
420
  Permission.ProjectAdmin,
404
421
  Permission.ProjectMember,
422
+ Permission.Viewer,
405
423
  Permission.TelemetryAdmin,
406
424
  Permission.TelemetryMember,
407
425
  Permission.TelemetryViewer,
@@ -430,6 +448,7 @@ export default class Profile extends AnalyticsBaseModel {
430
448
  Permission.ProjectOwner,
431
449
  Permission.ProjectAdmin,
432
450
  Permission.ProjectMember,
451
+ Permission.Viewer,
433
452
  Permission.TelemetryAdmin,
434
453
  Permission.TelemetryMember,
435
454
  Permission.TelemetryViewer,
@@ -458,6 +477,7 @@ export default class Profile extends AnalyticsBaseModel {
458
477
  Permission.ProjectOwner,
459
478
  Permission.ProjectAdmin,
460
479
  Permission.ProjectMember,
480
+ Permission.Viewer,
461
481
  Permission.TelemetryAdmin,
462
482
  Permission.TelemetryMember,
463
483
  Permission.TelemetryViewer,
@@ -487,6 +507,7 @@ export default class Profile extends AnalyticsBaseModel {
487
507
  Permission.ProjectOwner,
488
508
  Permission.ProjectAdmin,
489
509
  Permission.ProjectMember,
510
+ Permission.Viewer,
490
511
  Permission.TelemetryAdmin,
491
512
  Permission.TelemetryMember,
492
513
  Permission.TelemetryViewer,
@@ -522,6 +543,7 @@ export default class Profile extends AnalyticsBaseModel {
522
543
  Permission.ProjectOwner,
523
544
  Permission.ProjectAdmin,
524
545
  Permission.ProjectMember,
546
+ Permission.Viewer,
525
547
  Permission.TelemetryAdmin,
526
548
  Permission.TelemetryMember,
527
549
  Permission.TelemetryViewer,
@@ -550,6 +572,7 @@ export default class Profile extends AnalyticsBaseModel {
550
572
  Permission.ProjectOwner,
551
573
  Permission.ProjectAdmin,
552
574
  Permission.ProjectMember,
575
+ Permission.Viewer,
553
576
  Permission.TelemetryAdmin,
554
577
  Permission.TelemetryMember,
555
578
  Permission.TelemetryViewer,
@@ -579,6 +602,7 @@ export default class Profile extends AnalyticsBaseModel {
579
602
  Permission.ProjectOwner,
580
603
  Permission.ProjectAdmin,
581
604
  Permission.ProjectMember,
605
+ Permission.Viewer,
582
606
  Permission.TelemetryAdmin,
583
607
  Permission.TelemetryMember,
584
608
  Permission.TelemetryViewer,
@@ -617,6 +641,7 @@ export default class Profile extends AnalyticsBaseModel {
617
641
  Permission.ProjectOwner,
618
642
  Permission.ProjectAdmin,
619
643
  Permission.ProjectMember,
644
+ Permission.Viewer,
620
645
  Permission.TelemetryAdmin,
621
646
  Permission.TelemetryMember,
622
647
  Permission.TelemetryViewer,
@@ -6,11 +6,16 @@ import AnalyticsTableColumn, {
6
6
  SkipIndexType,
7
7
  } from "../../Types/AnalyticsDatabase/TableColumn";
8
8
  import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
9
+ import OperationalResource from "../../Types/Database/AccessControl/OperationalResource";
10
+ import OwnedThrough from "../../Types/Database/AccessControl/OwnedThrough";
9
11
  import { JSONObject } from "../../Types/JSON";
10
12
  import ObjectID from "../../Types/ObjectID";
11
13
  import Permission from "../../Types/Permission";
14
+ import Service from "../DatabaseModels/Service";
12
15
  import ServiceType from "../../Types/Telemetry/ServiceType";
13
16
 
17
+ @OperationalResource()
18
+ @OwnedThrough("serviceId", Service)
14
19
  export default class ProfileSample extends AnalyticsBaseModel {
15
20
  public constructor() {
16
21
  const projectIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
@@ -25,6 +30,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
25
30
  Permission.ProjectOwner,
26
31
  Permission.ProjectAdmin,
27
32
  Permission.ProjectMember,
33
+ Permission.Viewer,
28
34
  Permission.TelemetryAdmin,
29
35
  Permission.TelemetryMember,
30
36
  Permission.TelemetryViewer,
@@ -54,6 +60,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
54
60
  Permission.ProjectOwner,
55
61
  Permission.ProjectAdmin,
56
62
  Permission.ProjectMember,
63
+ Permission.Viewer,
57
64
  Permission.TelemetryAdmin,
58
65
  Permission.TelemetryMember,
59
66
  Permission.TelemetryViewer,
@@ -89,6 +96,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
89
96
  Permission.ProjectOwner,
90
97
  Permission.ProjectAdmin,
91
98
  Permission.ProjectMember,
99
+ Permission.Viewer,
92
100
  Permission.TelemetryAdmin,
93
101
  Permission.TelemetryMember,
94
102
  Permission.TelemetryViewer,
@@ -124,6 +132,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
124
132
  Permission.ProjectOwner,
125
133
  Permission.ProjectAdmin,
126
134
  Permission.ProjectMember,
135
+ Permission.Viewer,
127
136
  Permission.TelemetryAdmin,
128
137
  Permission.TelemetryMember,
129
138
  Permission.TelemetryViewer,
@@ -159,6 +168,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
159
168
  Permission.ProjectOwner,
160
169
  Permission.ProjectAdmin,
161
170
  Permission.ProjectMember,
171
+ Permission.Viewer,
162
172
  Permission.TelemetryAdmin,
163
173
  Permission.TelemetryMember,
164
174
  Permission.TelemetryViewer,
@@ -194,6 +204,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
194
204
  Permission.ProjectOwner,
195
205
  Permission.ProjectAdmin,
196
206
  Permission.ProjectMember,
207
+ Permission.Viewer,
197
208
  Permission.TelemetryAdmin,
198
209
  Permission.TelemetryMember,
199
210
  Permission.TelemetryViewer,
@@ -222,6 +233,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
222
233
  Permission.ProjectOwner,
223
234
  Permission.ProjectAdmin,
224
235
  Permission.ProjectMember,
236
+ Permission.Viewer,
225
237
  Permission.TelemetryAdmin,
226
238
  Permission.TelemetryMember,
227
239
  Permission.TelemetryViewer,
@@ -251,6 +263,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
251
263
  Permission.ProjectOwner,
252
264
  Permission.ProjectAdmin,
253
265
  Permission.ProjectMember,
266
+ Permission.Viewer,
254
267
  Permission.TelemetryAdmin,
255
268
  Permission.TelemetryMember,
256
269
  Permission.TelemetryViewer,
@@ -281,6 +294,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
281
294
  Permission.ProjectOwner,
282
295
  Permission.ProjectAdmin,
283
296
  Permission.ProjectMember,
297
+ Permission.Viewer,
284
298
  Permission.TelemetryAdmin,
285
299
  Permission.TelemetryMember,
286
300
  Permission.TelemetryViewer,
@@ -317,6 +331,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
317
331
  Permission.ProjectOwner,
318
332
  Permission.ProjectAdmin,
319
333
  Permission.ProjectMember,
334
+ Permission.Viewer,
320
335
  Permission.TelemetryAdmin,
321
336
  Permission.TelemetryMember,
322
337
  Permission.TelemetryViewer,
@@ -349,6 +364,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
349
364
  Permission.ProjectOwner,
350
365
  Permission.ProjectAdmin,
351
366
  Permission.ProjectMember,
367
+ Permission.Viewer,
352
368
  Permission.TelemetryAdmin,
353
369
  Permission.TelemetryMember,
354
370
  Permission.TelemetryViewer,
@@ -377,6 +393,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
377
393
  Permission.ProjectOwner,
378
394
  Permission.ProjectAdmin,
379
395
  Permission.ProjectMember,
396
+ Permission.Viewer,
380
397
  Permission.TelemetryAdmin,
381
398
  Permission.TelemetryMember,
382
399
  Permission.TelemetryViewer,
@@ -411,6 +428,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
411
428
  Permission.ProjectOwner,
412
429
  Permission.ProjectAdmin,
413
430
  Permission.ProjectMember,
431
+ Permission.Viewer,
414
432
  Permission.TelemetryAdmin,
415
433
  Permission.TelemetryMember,
416
434
  Permission.TelemetryViewer,
@@ -441,6 +459,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
441
459
  Permission.ProjectOwner,
442
460
  Permission.ProjectAdmin,
443
461
  Permission.ProjectMember,
462
+ Permission.Viewer,
444
463
  Permission.TelemetryAdmin,
445
464
  Permission.TelemetryMember,
446
465
  Permission.TelemetryViewer,
@@ -479,6 +498,7 @@ export default class ProfileSample extends AnalyticsBaseModel {
479
498
  Permission.ProjectOwner,
480
499
  Permission.ProjectAdmin,
481
500
  Permission.ProjectMember,
501
+ Permission.Viewer,
482
502
  Permission.TelemetryAdmin,
483
503
  Permission.TelemetryMember,
484
504
  Permission.TelemetryViewer,
@@ -62,6 +62,7 @@ export default class Span extends AnalyticsBaseModel {
62
62
  Permission.ProjectOwner,
63
63
  Permission.ProjectAdmin,
64
64
  Permission.ProjectMember,
65
+ Permission.Viewer,
65
66
  Permission.TelemetryAdmin,
66
67
  Permission.TelemetryMember,
67
68
  Permission.TelemetryViewer,
@@ -91,6 +92,7 @@ export default class Span extends AnalyticsBaseModel {
91
92
  Permission.ProjectOwner,
92
93
  Permission.ProjectAdmin,
93
94
  Permission.ProjectMember,
95
+ Permission.Viewer,
94
96
  Permission.TelemetryAdmin,
95
97
  Permission.TelemetryMember,
96
98
  Permission.TelemetryViewer,
@@ -126,6 +128,7 @@ export default class Span extends AnalyticsBaseModel {
126
128
  Permission.ProjectOwner,
127
129
  Permission.ProjectAdmin,
128
130
  Permission.ProjectMember,
131
+ Permission.Viewer,
129
132
  Permission.TelemetryAdmin,
130
133
  Permission.TelemetryMember,
131
134
  Permission.TelemetryViewer,
@@ -154,6 +157,7 @@ export default class Span extends AnalyticsBaseModel {
154
157
  Permission.ProjectOwner,
155
158
  Permission.ProjectAdmin,
156
159
  Permission.ProjectMember,
160
+ Permission.Viewer,
157
161
  Permission.TelemetryAdmin,
158
162
  Permission.TelemetryMember,
159
163
  Permission.TelemetryViewer,
@@ -182,6 +186,7 @@ export default class Span extends AnalyticsBaseModel {
182
186
  Permission.ProjectOwner,
183
187
  Permission.ProjectAdmin,
184
188
  Permission.ProjectMember,
189
+ Permission.Viewer,
185
190
  Permission.TelemetryAdmin,
186
191
  Permission.TelemetryMember,
187
192
  Permission.TelemetryViewer,
@@ -212,6 +217,7 @@ export default class Span extends AnalyticsBaseModel {
212
217
  Permission.ProjectOwner,
213
218
  Permission.ProjectAdmin,
214
219
  Permission.ProjectMember,
220
+ Permission.Viewer,
215
221
  Permission.TelemetryAdmin,
216
222
  Permission.TelemetryMember,
217
223
  Permission.TelemetryViewer,
@@ -242,6 +248,7 @@ export default class Span extends AnalyticsBaseModel {
242
248
  Permission.ProjectOwner,
243
249
  Permission.ProjectAdmin,
244
250
  Permission.ProjectMember,
251
+ Permission.Viewer,
245
252
  Permission.TelemetryAdmin,
246
253
  Permission.TelemetryMember,
247
254
  Permission.TelemetryViewer,
@@ -272,6 +279,7 @@ export default class Span extends AnalyticsBaseModel {
272
279
  Permission.ProjectOwner,
273
280
  Permission.ProjectAdmin,
274
281
  Permission.ProjectMember,
282
+ Permission.Viewer,
275
283
  Permission.TelemetryAdmin,
276
284
  Permission.TelemetryMember,
277
285
  Permission.TelemetryViewer,
@@ -307,6 +315,7 @@ export default class Span extends AnalyticsBaseModel {
307
315
  Permission.ProjectOwner,
308
316
  Permission.ProjectAdmin,
309
317
  Permission.ProjectMember,
318
+ Permission.Viewer,
310
319
  Permission.TelemetryAdmin,
311
320
  Permission.TelemetryMember,
312
321
  Permission.TelemetryViewer,
@@ -342,6 +351,7 @@ export default class Span extends AnalyticsBaseModel {
342
351
  Permission.ProjectOwner,
343
352
  Permission.ProjectAdmin,
344
353
  Permission.ProjectMember,
354
+ Permission.Viewer,
345
355
  Permission.TelemetryAdmin,
346
356
  Permission.TelemetryMember,
347
357
  Permission.TelemetryViewer,
@@ -377,6 +387,7 @@ export default class Span extends AnalyticsBaseModel {
377
387
  Permission.ProjectOwner,
378
388
  Permission.ProjectAdmin,
379
389
  Permission.ProjectMember,
390
+ Permission.Viewer,
380
391
  Permission.TelemetryAdmin,
381
392
  Permission.TelemetryMember,
382
393
  Permission.TelemetryViewer,
@@ -405,6 +416,7 @@ export default class Span extends AnalyticsBaseModel {
405
416
  Permission.ProjectOwner,
406
417
  Permission.ProjectAdmin,
407
418
  Permission.ProjectMember,
419
+ Permission.Viewer,
408
420
  Permission.TelemetryAdmin,
409
421
  Permission.TelemetryMember,
410
422
  Permission.TelemetryViewer,
@@ -434,6 +446,7 @@ export default class Span extends AnalyticsBaseModel {
434
446
  Permission.ProjectOwner,
435
447
  Permission.ProjectAdmin,
436
448
  Permission.ProjectMember,
449
+ Permission.Viewer,
437
450
  Permission.TelemetryAdmin,
438
451
  Permission.TelemetryMember,
439
452
  Permission.TelemetryViewer,
@@ -469,6 +482,7 @@ export default class Span extends AnalyticsBaseModel {
469
482
  Permission.ProjectOwner,
470
483
  Permission.ProjectAdmin,
471
484
  Permission.ProjectMember,
485
+ Permission.Viewer,
472
486
  Permission.TelemetryAdmin,
473
487
  Permission.TelemetryMember,
474
488
  Permission.TelemetryViewer,
@@ -499,6 +513,7 @@ export default class Span extends AnalyticsBaseModel {
499
513
  Permission.ProjectOwner,
500
514
  Permission.ProjectAdmin,
501
515
  Permission.ProjectMember,
516
+ Permission.Viewer,
502
517
  Permission.TelemetryAdmin,
503
518
  Permission.TelemetryMember,
504
519
  Permission.TelemetryViewer,
@@ -529,6 +544,7 @@ export default class Span extends AnalyticsBaseModel {
529
544
  Permission.ProjectOwner,
530
545
  Permission.ProjectAdmin,
531
546
  Permission.ProjectMember,
547
+ Permission.Viewer,
532
548
  Permission.TelemetryAdmin,
533
549
  Permission.TelemetryMember,
534
550
  Permission.TelemetryViewer,
@@ -563,6 +579,7 @@ export default class Span extends AnalyticsBaseModel {
563
579
  Permission.ProjectOwner,
564
580
  Permission.ProjectAdmin,
565
581
  Permission.ProjectMember,
582
+ Permission.Viewer,
566
583
  Permission.TelemetryAdmin,
567
584
  Permission.TelemetryMember,
568
585
  Permission.TelemetryViewer,
@@ -592,6 +609,7 @@ export default class Span extends AnalyticsBaseModel {
592
609
  Permission.ProjectOwner,
593
610
  Permission.ProjectAdmin,
594
611
  Permission.ProjectMember,
612
+ Permission.Viewer,
595
613
  Permission.TelemetryAdmin,
596
614
  Permission.TelemetryMember,
597
615
  Permission.TelemetryViewer,
@@ -626,6 +644,7 @@ export default class Span extends AnalyticsBaseModel {
626
644
  Permission.ProjectOwner,
627
645
  Permission.ProjectAdmin,
628
646
  Permission.ProjectMember,
647
+ Permission.Viewer,
629
648
  Permission.TelemetryAdmin,
630
649
  Permission.TelemetryMember,
631
650
  Permission.TelemetryViewer,
@@ -660,6 +679,7 @@ export default class Span extends AnalyticsBaseModel {
660
679
  Permission.ProjectOwner,
661
680
  Permission.ProjectAdmin,
662
681
  Permission.ProjectMember,
682
+ Permission.Viewer,
663
683
  Permission.TelemetryAdmin,
664
684
  Permission.TelemetryMember,
665
685
  Permission.TelemetryViewer,
@@ -696,6 +716,7 @@ export default class Span extends AnalyticsBaseModel {
696
716
  Permission.ProjectOwner,
697
717
  Permission.ProjectAdmin,
698
718
  Permission.ProjectMember,
719
+ Permission.Viewer,
699
720
  Permission.TelemetryAdmin,
700
721
  Permission.TelemetryMember,
701
722
  Permission.TelemetryViewer,
@@ -732,6 +753,7 @@ export default class Span extends AnalyticsBaseModel {
732
753
  Permission.ProjectOwner,
733
754
  Permission.ProjectAdmin,
734
755
  Permission.ProjectMember,
756
+ Permission.Viewer,
735
757
  Permission.TelemetryAdmin,
736
758
  Permission.TelemetryMember,
737
759
  Permission.TelemetryViewer,
@@ -770,6 +792,7 @@ export default class Span extends AnalyticsBaseModel {
770
792
  Permission.ProjectOwner,
771
793
  Permission.ProjectAdmin,
772
794
  Permission.ProjectMember,
795
+ Permission.Viewer,
773
796
  Permission.TelemetryAdmin,
774
797
  Permission.TelemetryMember,
775
798
  Permission.TelemetryViewer,
@@ -8,6 +8,7 @@ import Route from "../../Types/API/Route";
8
8
  import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
9
9
  import OwnedThrough from "../../Types/Database/AccessControl/OwnedThrough";
10
10
  import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
11
+ import CanAccessIfCanReadOn from "../../Types/Database/CanAccessIfCanReadOn";
11
12
  import ColumnLength from "../../Types/Database/ColumnLength";
12
13
  import ColumnType from "../../Types/Database/ColumnType";
13
14
  import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
@@ -29,6 +30,7 @@ export enum AlertEpisodeMemberAddedBy {
29
30
  }
30
31
 
31
32
  @EnableDocumentation()
33
+ @CanAccessIfCanReadOn("alert")
32
34
  @TenantColumn("projectId")
33
35
  @TableAccessControl({
34
36
  create: [
@@ -811,44 +811,6 @@ export default class AlertGroupingRule extends BaseModel {
811
811
  })
812
812
  public groupByAlertTitle?: boolean = undefined;
813
813
 
814
- @ColumnAccessControl({
815
- create: [
816
- Permission.ProjectOwner,
817
- Permission.ProjectAdmin,
818
- Permission.CreateAlertGroupingRule,
819
- ],
820
- read: [
821
- Permission.ProjectOwner,
822
- Permission.ProjectAdmin,
823
- Permission.ProjectMember,
824
- Permission.Viewer,
825
- Permission.AlertAdmin,
826
- Permission.AlertMember,
827
- Permission.AlertViewer,
828
- Permission.ReadAlertGroupingRule,
829
- ],
830
- update: [
831
- Permission.ProjectOwner,
832
- Permission.ProjectAdmin,
833
- Permission.EditAlertGroupingRule,
834
- ],
835
- })
836
- @TableColumn({
837
- required: false,
838
- type: TableColumnType.Boolean,
839
- title: "Group By Service",
840
- description:
841
- "When enabled, alerts from monitors belonging to different services will be grouped into separate episodes. When disabled, alerts can be grouped together regardless of which service the monitor belongs to.",
842
- defaultValue: false,
843
- isDefaultValueColumn: true,
844
- })
845
- @Column({
846
- type: ColumnType.Boolean,
847
- nullable: false,
848
- default: false,
849
- })
850
- public groupByService?: boolean = undefined;
851
-
852
814
  @ColumnAccessControl({
853
815
  create: [
854
816
  Permission.ProjectOwner,
@@ -687,6 +687,158 @@ export default class AlertLabelRule extends BaseModel {
687
687
  })
688
688
  public inheritLabelsFromMonitors?: boolean = undefined;
689
689
 
690
+ @ColumnAccessControl({
691
+ create: [
692
+ Permission.ProjectOwner,
693
+ Permission.ProjectAdmin,
694
+ Permission.CreateAlertLabelRule,
695
+ ],
696
+ read: [
697
+ Permission.ProjectOwner,
698
+ Permission.ProjectAdmin,
699
+ Permission.ProjectMember,
700
+ Permission.Viewer,
701
+ Permission.AlertAdmin,
702
+ Permission.AlertMember,
703
+ Permission.AlertViewer,
704
+ Permission.ReadAlertLabelRule,
705
+ ],
706
+ update: [
707
+ Permission.ProjectOwner,
708
+ Permission.ProjectAdmin,
709
+ Permission.EditAlertLabelRule,
710
+ ],
711
+ })
712
+ @TableColumn({
713
+ required: false,
714
+ type: TableColumnType.Boolean,
715
+ title: "Inherit Labels From Hosts",
716
+ description:
717
+ "When this rule matches, also copy every label of the alert's affected hosts onto the alert.",
718
+ defaultValue: false,
719
+ isDefaultValueColumn: true,
720
+ })
721
+ @Column({
722
+ type: ColumnType.Boolean,
723
+ nullable: false,
724
+ default: false,
725
+ })
726
+ public inheritLabelsFromHosts?: boolean = undefined;
727
+
728
+ @ColumnAccessControl({
729
+ create: [
730
+ Permission.ProjectOwner,
731
+ Permission.ProjectAdmin,
732
+ Permission.CreateAlertLabelRule,
733
+ ],
734
+ read: [
735
+ Permission.ProjectOwner,
736
+ Permission.ProjectAdmin,
737
+ Permission.ProjectMember,
738
+ Permission.Viewer,
739
+ Permission.AlertAdmin,
740
+ Permission.AlertMember,
741
+ Permission.AlertViewer,
742
+ Permission.ReadAlertLabelRule,
743
+ ],
744
+ update: [
745
+ Permission.ProjectOwner,
746
+ Permission.ProjectAdmin,
747
+ Permission.EditAlertLabelRule,
748
+ ],
749
+ })
750
+ @TableColumn({
751
+ required: false,
752
+ type: TableColumnType.Boolean,
753
+ title: "Inherit Labels From Kubernetes Clusters",
754
+ description:
755
+ "When this rule matches, also copy every label of the alert's affected Kubernetes clusters onto the alert.",
756
+ defaultValue: false,
757
+ isDefaultValueColumn: true,
758
+ })
759
+ @Column({
760
+ type: ColumnType.Boolean,
761
+ nullable: false,
762
+ default: false,
763
+ })
764
+ public inheritLabelsFromKubernetesClusters?: boolean = undefined;
765
+
766
+ @ColumnAccessControl({
767
+ create: [
768
+ Permission.ProjectOwner,
769
+ Permission.ProjectAdmin,
770
+ Permission.CreateAlertLabelRule,
771
+ ],
772
+ read: [
773
+ Permission.ProjectOwner,
774
+ Permission.ProjectAdmin,
775
+ Permission.ProjectMember,
776
+ Permission.Viewer,
777
+ Permission.AlertAdmin,
778
+ Permission.AlertMember,
779
+ Permission.AlertViewer,
780
+ Permission.ReadAlertLabelRule,
781
+ ],
782
+ update: [
783
+ Permission.ProjectOwner,
784
+ Permission.ProjectAdmin,
785
+ Permission.EditAlertLabelRule,
786
+ ],
787
+ })
788
+ @TableColumn({
789
+ required: false,
790
+ type: TableColumnType.Boolean,
791
+ title: "Inherit Labels From Docker Hosts",
792
+ description:
793
+ "When this rule matches, also copy every label of the alert's affected Docker hosts onto the alert.",
794
+ defaultValue: false,
795
+ isDefaultValueColumn: true,
796
+ })
797
+ @Column({
798
+ type: ColumnType.Boolean,
799
+ nullable: false,
800
+ default: false,
801
+ })
802
+ public inheritLabelsFromDockerHosts?: boolean = undefined;
803
+
804
+ @ColumnAccessControl({
805
+ create: [
806
+ Permission.ProjectOwner,
807
+ Permission.ProjectAdmin,
808
+ Permission.CreateAlertLabelRule,
809
+ ],
810
+ read: [
811
+ Permission.ProjectOwner,
812
+ Permission.ProjectAdmin,
813
+ Permission.ProjectMember,
814
+ Permission.Viewer,
815
+ Permission.AlertAdmin,
816
+ Permission.AlertMember,
817
+ Permission.AlertViewer,
818
+ Permission.ReadAlertLabelRule,
819
+ ],
820
+ update: [
821
+ Permission.ProjectOwner,
822
+ Permission.ProjectAdmin,
823
+ Permission.EditAlertLabelRule,
824
+ ],
825
+ })
826
+ @TableColumn({
827
+ required: false,
828
+ type: TableColumnType.Boolean,
829
+ title: "Inherit Labels From Services",
830
+ description:
831
+ "When this rule matches, also copy every label of the alert's affected services onto the alert.",
832
+ defaultValue: false,
833
+ isDefaultValueColumn: true,
834
+ })
835
+ @Column({
836
+ type: ColumnType.Boolean,
837
+ nullable: false,
838
+ default: false,
839
+ })
840
+ public inheritLabelsFromServices?: boolean = undefined;
841
+
690
842
  @ColumnAccessControl({
691
843
  create: [
692
844
  Permission.ProjectOwner,