@oneuptime/common 12.0.2 → 12.0.4

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 (384) hide show
  1. package/Models/DatabaseModels/CephCluster.ts +14 -0
  2. package/Models/DatabaseModels/CodeRepository.ts +14 -6
  3. package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +14 -0
  4. package/Models/DatabaseModels/DockerHost.ts +14 -0
  5. package/Models/DatabaseModels/GlobalOidcProject.ts +18 -0
  6. package/Models/DatabaseModels/GlobalSsoProject.ts +18 -0
  7. package/Models/DatabaseModels/Index.ts +2 -0
  8. package/Models/DatabaseModels/IoTFleet.ts +14 -0
  9. package/Models/DatabaseModels/KubernetesCluster.ts +14 -0
  10. package/Models/DatabaseModels/LogDropFilter.ts +9 -20
  11. package/Models/DatabaseModels/NetworkDevice.ts +14 -0
  12. package/Models/DatabaseModels/NetworkInterface.ts +18 -0
  13. package/Models/DatabaseModels/Project.ts +16 -2
  14. package/Models/DatabaseModels/ProxmoxCluster.ts +14 -0
  15. package/Models/DatabaseModels/Service.ts +30 -0
  16. package/Models/DatabaseModels/StatusPageMonitorRule.ts +911 -0
  17. package/Models/DatabaseModels/StatusPagePrivateUser.ts +30 -0
  18. package/Models/DatabaseModels/StatusPageResource.ts +73 -0
  19. package/Models/DatabaseModels/TraceDropFilter.ts +9 -20
  20. package/Models/DatabaseModels/User.ts +30 -0
  21. package/Server/API/AIAgentDataAPI.ts +31 -0
  22. package/Server/API/BaseAPI.ts +13 -2
  23. package/Server/API/DashboardAPI.ts +458 -12
  24. package/Server/API/GitHubAPI.ts +119 -283
  25. package/Server/API/UserAPI.ts +263 -1
  26. package/Server/EnvironmentConfig.ts +38 -4
  27. package/Server/Infrastructure/GlobalCache.ts +152 -0
  28. package/Server/Infrastructure/Postgres/DataSourceOptions.ts +16 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.ts +123 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.ts +21 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.ts +68 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.ts +100 -0
  33. package/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.ts +214 -0
  34. package/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.ts +69 -0
  35. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +12 -0
  36. package/Server/Services/AlertStateTimelineService.ts +20 -0
  37. package/Server/Services/AnalyticsDatabaseService.ts +72 -1
  38. package/Server/Services/CephClusterService.ts +26 -86
  39. package/Server/Services/CloudResourceService.ts +23 -83
  40. package/Server/Services/CodeRepositoryService.ts +105 -2
  41. package/Server/Services/DatabaseService.ts +296 -2
  42. package/Server/Services/DockerHostService.ts +19 -79
  43. package/Server/Services/DockerSwarmClusterService.ts +27 -88
  44. package/Server/Services/HostService.ts +46 -99
  45. package/Server/Services/IncidentStateTimelineService.ts +20 -0
  46. package/Server/Services/Index.ts +2 -0
  47. package/Server/Services/IoTFleetService.ts +19 -79
  48. package/Server/Services/KubernetesClusterService.ts +17 -78
  49. package/Server/Services/LabelService.ts +57 -10
  50. package/Server/Services/MetricTypeService.ts +84 -0
  51. package/Server/Services/MonitorService.ts +89 -14
  52. package/Server/Services/MonitorStatusTimelineService.ts +29 -0
  53. package/Server/Services/MonitorTemplateService.ts +65 -0
  54. package/Server/Services/OpenTelemetryIngestService.ts +230 -26
  55. package/Server/Services/PodmanHostService.ts +19 -79
  56. package/Server/Services/ProxmoxClusterService.ts +23 -83
  57. package/Server/Services/RumApplicationService.ts +19 -80
  58. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +21 -0
  59. package/Server/Services/ServerlessFunctionService.ts +24 -85
  60. package/Server/Services/ServiceService.ts +299 -73
  61. package/Server/Services/StatusPageMonitorRuleEngineService.ts +752 -0
  62. package/Server/Services/StatusPageMonitorRuleService.ts +471 -0
  63. package/Server/Services/TelemetryEntityRelationshipService.ts +1 -0
  64. package/Server/Services/TelemetryEntityService.ts +1 -0
  65. package/Server/Services/UserService.ts +184 -0
  66. package/Server/Utils/AI/Toolbox/CodeTools.ts +45 -4
  67. package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +13 -0
  68. package/Server/Utils/CodeRepository/GitHub/GitHub.ts +157 -4
  69. package/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.ts +130 -0
  70. package/Server/Utils/Database/ProjectScopedReferenceValidator.ts +170 -39
  71. package/Server/Utils/Monitor/MonitorResource.ts +63 -36
  72. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +36 -0
  73. package/Server/Utils/Monitor/MonitorStepsProjectValidator.ts +148 -127
  74. package/Server/Utils/Monitor/MonitorStepsReferenceExtractor.ts +434 -0
  75. package/Server/Utils/PasswordHash.ts +306 -0
  76. package/Server/Utils/SingleFlight.ts +83 -0
  77. package/Server/Utils/StatusPage/MonitorRulePatternValidator.ts +46 -0
  78. package/Server/Utils/Telemetry/EntityRegistry.ts +107 -26
  79. package/Server/Utils/Telemetry/ResourceHeartbeat.ts +314 -0
  80. package/Server/Utils/Telemetry/Telemetry.ts +351 -122
  81. package/Tests/App/Dashboard/OverviewCustomFields.test.tsx +333 -0
  82. package/Tests/App/Dashboard/UserCustomFields.test.tsx +392 -0
  83. package/Tests/App/Dashboard/WidgetCatalog.test.ts +2 -0
  84. package/Tests/Models/DatabaseModels/ColumnTransformerInvariants.test.ts +306 -0
  85. package/Tests/Models/DatabaseModels/NumberColumnDeserialization.test.ts +333 -0
  86. package/Tests/Models/DatabaseModels/StatusPageMonitorRuleModel.test.ts +190 -0
  87. package/Tests/Server/API/AIAgentDataRepositoryToken.test.ts +381 -0
  88. package/Tests/Server/API/DashboardPublicAttributeValuesAPI.test.ts +943 -0
  89. package/Tests/Server/API/DashboardPublicMetricsAggregateAPI.test.ts +1296 -0
  90. package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +26 -0
  91. package/Tests/Server/API/DashboardPublicTemplatePayloads.test.ts +598 -0
  92. package/Tests/Server/API/GitHubAppInstallationBindingAPI.test.ts +539 -0
  93. package/Tests/Server/API/Helpers.ts +6 -1
  94. package/Tests/Server/API/UserProjectsAPI.test.ts +852 -0
  95. package/Tests/Server/Infrastructure/GlobalCache.test.ts +354 -0
  96. package/Tests/Server/Infrastructure/PostgresLockTimeoutOptions.test.ts +181 -0
  97. package/Tests/Server/Infrastructure/SemaphoreMutex.test.ts +215 -0
  98. package/Tests/Server/Services/AddPerUserPasswordSaltMigration.test.ts +178 -0
  99. package/Tests/Server/Services/AnalyticsDatabasePaginationStability.test.ts +582 -0
  100. package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +5 -0
  101. package/Tests/Server/Services/CodeRepositoryInstallationBinding.test.ts +305 -0
  102. package/Tests/Server/Services/CodeRepositoryResolutionBinding.test.ts +147 -0
  103. package/Tests/Server/Services/DatabaseServicePerUserPasswordSalt.test.ts +870 -0
  104. package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlocked.test.ts +342 -0
  105. package/Tests/Server/Services/DropFilterSaveValidation.test.ts +245 -0
  106. package/Tests/Server/Services/HostServiceUpdateLastSeen.test.ts +163 -15
  107. package/Tests/Server/Services/MetricTypeAttachServices.test.ts +222 -0
  108. package/Tests/Server/Services/MissingReferenceWriteGuard.test.ts +614 -0
  109. package/Tests/Server/Services/MonitorStatusTimelineFastPath.test.ts +23 -0
  110. package/Tests/Server/Services/OpenTelemetryServiceResolutionCache.test.ts +568 -0
  111. package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +305 -56
  112. package/Tests/Server/Services/RestoreDroppedUniqueIndexesMigration.test.ts +386 -0
  113. package/Tests/Server/Services/RestoreServiceLowerNameIndexMigration.test.ts +240 -0
  114. package/Tests/Server/Services/ServiceUpdateLastSeenSplitGates.test.ts +705 -0
  115. package/Tests/Server/Services/StatusPageMonitorRuleEngineService.test.ts +1719 -0
  116. package/Tests/Server/Services/StatusPageMonitorRuleHooks.test.ts +1212 -0
  117. package/Tests/Server/Services/StatusPageMonitorRuleMonitorCreateHook.test.ts +228 -0
  118. package/Tests/Server/Services/UserServiceFirstMasterAdminElection.test.ts +885 -0
  119. package/Tests/Server/Services/WidenHashedStringColumnsForScryptMigration.test.ts +220 -0
  120. package/Tests/Server/Utils/AI/CodeTools.test.ts +47 -1
  121. package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +10 -0
  122. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +267 -0
  123. package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +120 -0
  124. package/Tests/Server/Utils/CodeRepository/GitHubInstallationBinding.test.ts +292 -0
  125. package/Tests/Server/Utils/Database/ProjectScopedReferenceValidator.test.ts +260 -13
  126. package/Tests/Server/Utils/EntityRegistryRowFence.test.ts +302 -0
  127. package/Tests/Server/Utils/GitHubInstallationOwnershipVerification.test.ts +340 -0
  128. package/Tests/Server/Utils/GitHubWebhookAndTreeCacheIsolation.test.ts +250 -0
  129. package/Tests/Server/Utils/MetricTypeIndexConvergence.test.ts +598 -0
  130. package/Tests/Server/Utils/Monitor/MonitorStatusTimelineUnusableStatus.test.ts +154 -0
  131. package/Tests/Server/Utils/Monitor/MonitorStepsProjectValidator.test.ts +638 -92
  132. package/Tests/Server/Utils/Monitor/MonitorStepsReferenceExtractor.test.ts +724 -0
  133. package/Tests/Server/Utils/PasswordHash.test.ts +555 -0
  134. package/Tests/Server/Utils/SingleFlight.test.ts +221 -0
  135. package/Tests/Types/Dashboard/NetworkDashboardTemplate.test.ts +793 -0
  136. package/Tests/Types/Database/BigIntColumnTransformer.test.ts +147 -0
  137. package/Tests/Types/Database/ColumnLength.test.ts +7 -1
  138. package/Tests/Types/Database/DatabasePropertyTransformer.test.ts +140 -0
  139. package/Tests/Types/Database/NumericColumnValue.test.ts +127 -0
  140. package/Tests/Types/Decimal.test.ts +37 -0
  141. package/Tests/Types/HashedStringPerUserSalt.test.ts +476 -0
  142. package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +293 -0
  143. package/Tests/Types/Monitor/HostAlertTemplates.test.ts +249 -0
  144. package/Tests/Types/Monitor/IotAlertTemplates.test.ts +320 -0
  145. package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +271 -0
  146. package/Tests/Types/Monitor/SnmpVersionParsing.test.ts +152 -0
  147. package/Tests/Types/Port.test.ts +38 -0
  148. package/Tests/UI/Components/CustomFields/CustomFieldsDetail.test.tsx +696 -0
  149. package/Tests/UI/Components/LogsHistogram.test.tsx +276 -0
  150. package/Tests/UI/Components/UseLiveLogsRefresh.test.tsx +489 -0
  151. package/Tests/UI/Components/UseLogsHistogram.test.tsx +500 -0
  152. package/Tests/UI/Utils/UserProjectsModelAPI.test.ts +714 -0
  153. package/Tests/Utils/Dashboard/Components/DashboardComponentsUtil.test.ts +120 -0
  154. package/Tests/Utils/Dashboard/DashboardNetworkMapComponent.test.ts +327 -0
  155. package/Tests/Utils/TeamMembersByProject.test.ts +655 -0
  156. package/Types/Dashboard/DashboardComponentType.ts +1 -0
  157. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
  158. package/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.ts +40 -0
  159. package/Types/Dashboard/DashboardTemplates.ts +397 -0
  160. package/Types/Database/BigIntColumnTransformer.ts +74 -0
  161. package/Types/Database/ColumnLength.ts +9 -1
  162. package/Types/Database/DatabaseProperty.ts +26 -0
  163. package/Types/Database/NumericColumnValue.ts +128 -0
  164. package/Types/Database/TableColumn.ts +11 -0
  165. package/Types/Database/UnsynchronizedIndex.ts +48 -0
  166. package/Types/Decimal.ts +16 -4
  167. package/Types/HashedString.ts +139 -4
  168. package/Types/Permission.ts +48 -0
  169. package/Types/Port.ts +16 -4
  170. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +85 -11
  171. package/UI/Components/LogsViewer/useLiveLogsRefresh.ts +86 -0
  172. package/UI/Components/LogsViewer/useLogsHistogram.ts +113 -0
  173. package/UI/Components/Navbar/NavBar.tsx +12 -2
  174. package/UI/Components/Navbar/NavBarMenuModal.tsx +19 -7
  175. package/UI/Utils/ModelAPI/UserProjectsModelAPI.ts +257 -0
  176. package/Utils/Dashboard/Components/DashboardNetworkMapComponent.ts +136 -0
  177. package/Utils/Dashboard/Components/Index.ts +7 -0
  178. package/Utils/TeamMembersByProject.ts +237 -0
  179. package/build/dist/Models/DatabaseModels/CephCluster.js +16 -1
  180. package/build/dist/Models/DatabaseModels/CephCluster.js.map +1 -1
  181. package/build/dist/Models/DatabaseModels/CodeRepository.js +14 -6
  182. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  183. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js +12 -0
  184. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
  185. package/build/dist/Models/DatabaseModels/DockerHost.js +16 -1
  186. package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
  187. package/build/dist/Models/DatabaseModels/GlobalOidcProject.js +16 -1
  188. package/build/dist/Models/DatabaseModels/GlobalOidcProject.js.map +1 -1
  189. package/build/dist/Models/DatabaseModels/GlobalSsoProject.js +16 -1
  190. package/build/dist/Models/DatabaseModels/GlobalSsoProject.js.map +1 -1
  191. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  192. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  193. package/build/dist/Models/DatabaseModels/IoTFleet.js +16 -1
  194. package/build/dist/Models/DatabaseModels/IoTFleet.js.map +1 -1
  195. package/build/dist/Models/DatabaseModels/KubernetesCluster.js +16 -1
  196. package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
  197. package/build/dist/Models/DatabaseModels/LogDropFilter.js +9 -20
  198. package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
  199. package/build/dist/Models/DatabaseModels/NetworkDevice.js +16 -1
  200. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  201. package/build/dist/Models/DatabaseModels/NetworkInterface.js +16 -1
  202. package/build/dist/Models/DatabaseModels/NetworkInterface.js.map +1 -1
  203. package/build/dist/Models/DatabaseModels/Project.js +16 -2
  204. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  205. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js +16 -1
  206. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js.map +1 -1
  207. package/build/dist/Models/DatabaseModels/Service.js +28 -1
  208. package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
  209. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js +925 -0
  210. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js.map +1 -0
  211. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +32 -0
  212. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
  213. package/build/dist/Models/DatabaseModels/StatusPageResource.js +72 -0
  214. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  215. package/build/dist/Models/DatabaseModels/TraceDropFilter.js +9 -20
  216. package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -1
  217. package/build/dist/Models/DatabaseModels/User.js +32 -0
  218. package/build/dist/Models/DatabaseModels/User.js.map +1 -1
  219. package/build/dist/Server/API/AIAgentDataAPI.js +21 -2
  220. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  221. package/build/dist/Server/API/BaseAPI.js +11 -1
  222. package/build/dist/Server/API/BaseAPI.js.map +1 -1
  223. package/build/dist/Server/API/DashboardAPI.js +343 -10
  224. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  225. package/build/dist/Server/API/GitHubAPI.js +94 -167
  226. package/build/dist/Server/API/GitHubAPI.js.map +1 -1
  227. package/build/dist/Server/API/UserAPI.js +187 -2
  228. package/build/dist/Server/API/UserAPI.js.map +1 -1
  229. package/build/dist/Server/EnvironmentConfig.js +34 -4
  230. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  231. package/build/dist/Server/Infrastructure/GlobalCache.js +120 -0
  232. package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
  233. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js +5 -3
  234. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js.map +1 -1
  235. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js +48 -0
  236. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js.map +1 -0
  237. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js +14 -0
  238. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js.map +1 -0
  239. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js +59 -0
  240. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js.map +1 -0
  241. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js +93 -0
  242. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js.map +1 -0
  243. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js +101 -0
  244. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js.map +1 -0
  245. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js +66 -0
  246. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js.map +1 -0
  247. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +12 -0
  248. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  249. package/build/dist/Server/Services/AlertStateTimelineService.js +19 -0
  250. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
  251. package/build/dist/Server/Services/AnalyticsDatabaseService.js +57 -1
  252. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  253. package/build/dist/Server/Services/CephClusterService.js +26 -76
  254. package/build/dist/Server/Services/CephClusterService.js.map +1 -1
  255. package/build/dist/Server/Services/CloudResourceService.js +23 -73
  256. package/build/dist/Server/Services/CloudResourceService.js.map +1 -1
  257. package/build/dist/Server/Services/CodeRepositoryService.js +90 -2
  258. package/build/dist/Server/Services/CodeRepositoryService.js.map +1 -1
  259. package/build/dist/Server/Services/DatabaseService.js +246 -2
  260. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  261. package/build/dist/Server/Services/DockerHostService.js +19 -69
  262. package/build/dist/Server/Services/DockerHostService.js.map +1 -1
  263. package/build/dist/Server/Services/DockerSwarmClusterService.js +27 -78
  264. package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -1
  265. package/build/dist/Server/Services/HostService.js +58 -102
  266. package/build/dist/Server/Services/HostService.js.map +1 -1
  267. package/build/dist/Server/Services/IncidentStateTimelineService.js +19 -0
  268. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  269. package/build/dist/Server/Services/Index.js +2 -0
  270. package/build/dist/Server/Services/Index.js.map +1 -1
  271. package/build/dist/Server/Services/IoTFleetService.js +19 -69
  272. package/build/dist/Server/Services/IoTFleetService.js.map +1 -1
  273. package/build/dist/Server/Services/KubernetesClusterService.js +17 -68
  274. package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
  275. package/build/dist/Server/Services/LabelService.js +42 -7
  276. package/build/dist/Server/Services/LabelService.js.map +1 -1
  277. package/build/dist/Server/Services/MetricTypeService.js +74 -0
  278. package/build/dist/Server/Services/MetricTypeService.js.map +1 -1
  279. package/build/dist/Server/Services/MonitorService.js +81 -9
  280. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  281. package/build/dist/Server/Services/MonitorStatusTimelineService.js +28 -0
  282. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  283. package/build/dist/Server/Services/MonitorTemplateService.js +60 -0
  284. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  285. package/build/dist/Server/Services/OpenTelemetryIngestService.js +155 -25
  286. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  287. package/build/dist/Server/Services/PodmanHostService.js +19 -69
  288. package/build/dist/Server/Services/PodmanHostService.js.map +1 -1
  289. package/build/dist/Server/Services/ProxmoxClusterService.js +23 -73
  290. package/build/dist/Server/Services/ProxmoxClusterService.js.map +1 -1
  291. package/build/dist/Server/Services/RumApplicationService.js +19 -70
  292. package/build/dist/Server/Services/RumApplicationService.js.map +1 -1
  293. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +20 -0
  294. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  295. package/build/dist/Server/Services/ServerlessFunctionService.js +24 -75
  296. package/build/dist/Server/Services/ServerlessFunctionService.js.map +1 -1
  297. package/build/dist/Server/Services/ServiceService.js +236 -61
  298. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  299. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js +603 -0
  300. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js.map +1 -0
  301. package/build/dist/Server/Services/StatusPageMonitorRuleService.js +401 -0
  302. package/build/dist/Server/Services/StatusPageMonitorRuleService.js.map +1 -0
  303. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +1 -0
  304. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -1
  305. package/build/dist/Server/Services/TelemetryEntityService.js +1 -0
  306. package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -1
  307. package/build/dist/Server/Services/UserService.js +165 -0
  308. package/build/dist/Server/Services/UserService.js.map +1 -1
  309. package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js +31 -1
  310. package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js.map +1 -1
  311. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +13 -0
  312. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
  313. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +126 -4
  314. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
  315. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js +136 -0
  316. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js.map +1 -0
  317. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js +105 -29
  318. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js.map +1 -1
  319. package/build/dist/Server/Utils/Monitor/MonitorResource.js +56 -32
  320. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  321. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +30 -3
  322. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  323. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js +110 -98
  324. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js.map +1 -1
  325. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js +312 -0
  326. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js.map +1 -0
  327. package/build/dist/Server/Utils/PasswordHash.js +237 -0
  328. package/build/dist/Server/Utils/PasswordHash.js.map +1 -0
  329. package/build/dist/Server/Utils/SingleFlight.js +76 -0
  330. package/build/dist/Server/Utils/SingleFlight.js.map +1 -0
  331. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js +29 -0
  332. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js.map +1 -0
  333. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +78 -19
  334. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
  335. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js +160 -0
  336. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js.map +1 -0
  337. package/build/dist/Server/Utils/Telemetry/Telemetry.js +279 -104
  338. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  339. package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
  340. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  341. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  342. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  343. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js +2 -0
  344. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js.map +1 -0
  345. package/build/dist/Types/Dashboard/DashboardTemplates.js +368 -0
  346. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  347. package/build/dist/Types/Database/BigIntColumnTransformer.js +66 -0
  348. package/build/dist/Types/Database/BigIntColumnTransformer.js.map +1 -0
  349. package/build/dist/Types/Database/ColumnLength.js +9 -1
  350. package/build/dist/Types/Database/ColumnLength.js.map +1 -1
  351. package/build/dist/Types/Database/DatabaseProperty.js +25 -0
  352. package/build/dist/Types/Database/DatabaseProperty.js.map +1 -1
  353. package/build/dist/Types/Database/NumericColumnValue.js +97 -0
  354. package/build/dist/Types/Database/NumericColumnValue.js.map +1 -0
  355. package/build/dist/Types/Database/TableColumn.js.map +1 -1
  356. package/build/dist/Types/Database/UnsynchronizedIndex.js +46 -0
  357. package/build/dist/Types/Database/UnsynchronizedIndex.js.map +1 -0
  358. package/build/dist/Types/Decimal.js +14 -3
  359. package/build/dist/Types/Decimal.js.map +1 -1
  360. package/build/dist/Types/HashedString.js +95 -5
  361. package/build/dist/Types/HashedString.js.map +1 -1
  362. package/build/dist/Types/Permission.js +42 -0
  363. package/build/dist/Types/Permission.js.map +1 -1
  364. package/build/dist/Types/Port.js +15 -5
  365. package/build/dist/Types/Port.js.map +1 -1
  366. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +51 -10
  367. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  368. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js +44 -0
  369. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js.map +1 -0
  370. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js +75 -0
  371. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js.map +1 -0
  372. package/build/dist/UI/Components/Navbar/NavBar.js +3 -1
  373. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  374. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +19 -7
  375. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -1
  376. package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js +156 -0
  377. package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js.map +1 -0
  378. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js +114 -0
  379. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js.map +1 -0
  380. package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
  381. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  382. package/build/dist/Utils/TeamMembersByProject.js +145 -0
  383. package/build/dist/Utils/TeamMembersByProject.js.map +1 -0
  384. package/package.json +1 -1
@@ -32,6 +32,7 @@ import PodmanResource from "../../Models/DatabaseModels/PodmanResource";
32
32
  import ProxmoxResource from "../../Models/DatabaseModels/ProxmoxResource";
33
33
  import CephResource from "../../Models/DatabaseModels/CephResource";
34
34
  import DockerSwarmResource from "../../Models/DatabaseModels/DockerSwarmResource";
35
+ import NetworkSite from "../../Models/DatabaseModels/NetworkSite";
35
36
  import Span from "../../Models/AnalyticsModels/Span";
36
37
  import Log from "../../Models/AnalyticsModels/Log";
37
38
  import IncidentService from "../Services/IncidentService";
@@ -46,9 +47,11 @@ import PodmanResourceService from "../Services/PodmanResourceService";
46
47
  import ProxmoxResourceService from "../Services/ProxmoxResourceService";
47
48
  import CephResourceService from "../Services/CephResourceService";
48
49
  import DockerSwarmResourceService from "../Services/DockerSwarmResourceService";
50
+ import NetworkSiteService from "../Services/NetworkSiteService";
49
51
  import SpanService from "../Services/SpanService";
50
52
  import LogService from "../Services/LogService";
51
53
  import DashboardComponentType from "../../Types/Dashboard/DashboardComponentType";
54
+ import { DashboardVariableType } from "../../Types/Dashboard/DashboardVariable";
52
55
  import Includes from "../../Types/BaseDatabase/Includes";
53
56
  const DEFAULT_DASHBOARD_RESOURCE_LIMIT = 100;
54
57
  const PUBLIC_DASHBOARD_RESOURCES = {
@@ -113,6 +116,43 @@ const PUBLIC_DASHBOARD_RESOURCES = {
113
116
  currentMonitorStatus: { name: true, color: true },
114
117
  },
115
118
  },
119
+ "network-site": {
120
+ modelType: NetworkSite,
121
+ service: NetworkSiteService,
122
+ widgets: {
123
+ [DashboardComponentType.NetworkMap]: null,
124
+ },
125
+ /*
126
+ * The map filters by site type and by whether the rolled-up status is
127
+ * operational — nothing else. Notably NOT `parentSiteId` or
128
+ * `materializedPath`: the widget draws a flat set of pins rather than
129
+ * walking a hierarchy, so exposing the tree shape here would hand an
130
+ * anonymous viewer a structure the map never shows them.
131
+ */
132
+ allowedQueryKeys: [
133
+ "networkSiteTypeId",
134
+ "currentMonitorStatus",
135
+ "currentMonitorStatusId",
136
+ ],
137
+ select: {
138
+ _id: true,
139
+ name: true,
140
+ /*
141
+ * The type NAME comes from the networkSiteType relation. NetworkSite
142
+ * .siteType is the deprecated pre-lookup-table string and is dropped
143
+ * in a follow-up PR, so it must not be read from new code.
144
+ */
145
+ networkSiteType: { name: true },
146
+ latitude: true,
147
+ longitude: true,
148
+ currentMonitorStatus: {
149
+ name: true,
150
+ color: true,
151
+ priority: true,
152
+ isOperationalState: true,
153
+ },
154
+ },
155
+ },
116
156
  host: {
117
157
  modelType: Host,
118
158
  service: HostService,
@@ -777,6 +817,14 @@ export default class DashboardAPI extends BaseAPI {
777
817
  * the behaviour here scoped to the dashboard's owning projectId.
778
818
  * Authorization reuses DashboardService.hasReadAccess (public flag, IP
779
819
  * whitelist, master password) — never falls back to project-wide read.
820
+ *
821
+ * The requested attribute key is additionally allowlisted against the
822
+ * keys this dashboard's own variables bind to. Project scoping alone is
823
+ * not enough here: the underlying query is a SELECT DISTINCT over the
824
+ * attribute map of every log, span, metric and exception in the project,
825
+ * so an unrestricted key would let anyone holding a public dashboard id
826
+ * read `user.email`, `db.statement`, `http.url`, ... out of telemetry the
827
+ * dashboard never renders (GHSA-w332-x78m-vf3v).
780
828
  */
781
829
  this.router.post(`${(_f = new this.entityType()
782
830
  .getCrudApiPath()) === null || _f === void 0 ? void 0 : _f.toString()}/attribute-values/:dashboardId`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
@@ -790,8 +838,10 @@ export default class DashboardAPI extends BaseAPI {
790
838
  throw (accessResult.error ||
791
839
  new BadDataException("Access denied to this dashboard."));
792
840
  }
793
- const attributeKey = req.body && req.body["attributeKey"];
794
- if (!attributeKey || !attributeKey.trim()) {
841
+ const attributeKey = req.body
842
+ ? req.body["attributeKey"]
843
+ : undefined;
844
+ if (typeof attributeKey !== "string" || !attributeKey.trim()) {
795
845
  throw new BadDataException("attributeKey is required.");
796
846
  }
797
847
  const telemetryTypeRaw = req.body && req.body["telemetryType"];
@@ -809,6 +859,7 @@ export default class DashboardAPI extends BaseAPI {
809
859
  select: {
810
860
  _id: true,
811
861
  projectId: true,
862
+ dashboardViewConfig: true,
812
863
  },
813
864
  props: {
814
865
  isRoot: true,
@@ -817,10 +868,23 @@ export default class DashboardAPI extends BaseAPI {
817
868
  if (!dashboard || !dashboard.projectId) {
818
869
  throw new NotFoundException("Dashboard not found");
819
870
  }
871
+ /*
872
+ * Only the attribute keys this dashboard's own variable dropdowns
873
+ * offer may be read. Variable interpolation only ever substitutes
874
+ * a variable's VALUE into a widget filter — never its key — so the
875
+ * stored view config is an exact allowlist. A dashboard with no
876
+ * telemetry-attribute variables has nothing to look up and is
877
+ * refused outright.
878
+ */
879
+ const requestedAttributeKey = attributeKey.trim();
880
+ const allowedAttributeKeys = DashboardAPI.collectDashboardVariableAttributeKeys(dashboard.dashboardViewConfig);
881
+ if (!allowedAttributeKeys.has(requestedAttributeKey)) {
882
+ throw new BadDataException("This attribute is not part of this dashboard.");
883
+ }
820
884
  const values = await TelemetryAttributeService.fetchAttributeValues({
821
885
  projectId: dashboard.projectId,
822
886
  telemetryType,
823
- attributeKey: attributeKey.trim(),
887
+ attributeKey: requestedAttributeKey,
824
888
  });
825
889
  return Response.sendJsonObjectResponse(req, res, {
826
890
  values,
@@ -967,19 +1031,120 @@ export default class DashboardAPI extends BaseAPI {
967
1031
  * name, so the stored view config is an exact allowlist.
968
1032
  */
969
1033
  const allowedMetricNames = DashboardAPI.collectDashboardMetricNames(dashboard.dashboardViewConfig);
970
- const requestedMetricName = aggregateBy.query
971
- ? aggregateBy.query["name"]
972
- : undefined;
1034
+ /*
1035
+ * Read the query through an OWN-properties copy. JSON.parse turns a
1036
+ * literal "__proto__" member into a real own key and
1037
+ * JSONFunctions.deserialize copies it with `newVal[key] = ...`,
1038
+ * which fires Object.prototype's __proto__ setter — so a plain
1039
+ * `query["name"]` lookup walks the prototype chain and sees a name
1040
+ * that a later own-properties spread would silently drop, leaving
1041
+ * the aggregation with no metric predicate at all. The check and
1042
+ * the object that reaches the database must read the same keys.
1043
+ */
1044
+ const requestedQuery = aggregateBy.query &&
1045
+ typeof aggregateBy.query === "object" &&
1046
+ !Array.isArray(aggregateBy.query)
1047
+ ? Object.assign({}, aggregateBy.query) : {};
1048
+ const requestedMetricName = requestedQuery["name"];
973
1049
  if (typeof requestedMetricName !== "string" ||
974
1050
  !allowedMetricNames.has(requestedMetricName)) {
975
1051
  throw new BadDataException("This metric is not part of this dashboard.");
976
1052
  }
977
1053
  /*
978
- * Security: never trust a client-supplied projectId on a public,
979
- * unauthenticated endpoint. Pin the aggregation to the dashboard's
980
- * project before it reaches the database service.
1054
+ * Pinning the metric name is not enough on its own: a grouped
1055
+ * aggregation echoes each group's key back in the result rows, so
1056
+ * `groupByAttributeKeys: ["enduser.id"]` or the blunter
1057
+ * `groupBy: { attributes: true }`, which returns the WHOLE
1058
+ * attribute map — turns an allowlisted metric into a reader for
1059
+ * attribute values the widget never renders. Both grouping
1060
+ * dimensions are therefore allowlisted against the stored view
1061
+ * config as well; interpolation never rewrites either of them.
1062
+ */
1063
+ const allowedGroupByAttributeKeys = DashboardAPI.collectDashboardGroupByAttributeKeys(dashboard.dashboardViewConfig);
1064
+ const requestedGroupByAttributeKeys = aggregateBy.groupByAttributeKeys;
1065
+ /*
1066
+ * `null` means "not grouped" here: JSONFunctions.serialize drops
1067
+ * undefined but preserves null, and both downstream sinks already
1068
+ * treat a null grouping as absent.
1069
+ */
1070
+ if (requestedGroupByAttributeKeys !== undefined &&
1071
+ requestedGroupByAttributeKeys !== null) {
1072
+ if (!Array.isArray(requestedGroupByAttributeKeys)) {
1073
+ throw new BadDataException("groupByAttributeKeys must be an array of attribute keys.");
1074
+ }
1075
+ for (const requestedKey of requestedGroupByAttributeKeys) {
1076
+ if (typeof requestedKey !== "string" ||
1077
+ !allowedGroupByAttributeKeys.has(requestedKey)) {
1078
+ throw new BadDataException("This attribute is not part of this dashboard.");
1079
+ }
1080
+ }
1081
+ }
1082
+ const allowedGroupByColumns = DashboardAPI.collectDashboardGroupByColumns(dashboard.dashboardViewConfig);
1083
+ const requestedGroupBy = aggregateBy.groupBy;
1084
+ if (requestedGroupBy !== undefined && requestedGroupBy !== null) {
1085
+ if (typeof requestedGroupBy !== "object" ||
1086
+ Array.isArray(requestedGroupBy)) {
1087
+ throw new BadDataException("groupBy must be an object.");
1088
+ }
1089
+ for (const requestedColumn of Object.keys(requestedGroupBy)) {
1090
+ if (!allowedGroupByColumns.has(requestedColumn)) {
1091
+ throw new BadDataException("This grouping is not part of this dashboard.");
1092
+ }
1093
+ }
1094
+ /*
1095
+ * Hand the SQL builder the same keys this guard validated. The
1096
+ * guard reads Object.keys but the GROUP BY builder walks the
1097
+ * object with for...in, so an inherited key would otherwise
1098
+ * reach the query without ever being checked.
1099
+ */
1100
+ aggregateBy.groupBy = Object.assign({}, requestedGroupBy);
1101
+ }
1102
+ /*
1103
+ * The client never chooses what is aggregated over what: every
1104
+ * widget aggregates `value` over `time`. Left open, an anonymous
1105
+ * caller could aggregate `attributes` instead — `max(attributes)`
1106
+ * returns the whole map and the row mapper passes non-numeric
1107
+ * aggregates through untouched, handing back a full attribute map
1108
+ * per time bucket.
1109
+ */
1110
+ if (aggregateBy.aggregateColumnName !== "value") {
1111
+ throw new BadDataException("Invalid aggregateColumnName.");
1112
+ }
1113
+ if (aggregateBy.aggregationTimestampColumnName !== "time") {
1114
+ throw new BadDataException("Invalid aggregationTimestampColumnName.");
1115
+ }
1116
+ // Never let an anonymous caller choose an unbounded page.
1117
+ aggregateBy.limit = Math.min(Math.max(Number(aggregateBy.limit) || LIMIT_PER_PROJECT, 1), LIMIT_PER_PROJECT);
1118
+ aggregateBy.skip = Math.max(Number(aggregateBy.skip) || 0, 0);
1119
+ /*
1120
+ * Security: the client does not get to choose what is filtered on a
1121
+ * public, unauthenticated endpoint. Rebuild the query from the
1122
+ * fields the dashboard's own widgets legitimately send — the
1123
+ * allowlisted metric name, the time window, and attribute filters
1124
+ * on keys those widgets already filter by — and pin the project.
1125
+ * Everything else the client sent is dropped rather than merged: a
1126
+ * foreign projectId, a filter on an arbitrary attribute key used as
1127
+ * a blind ILIKE oracle, a key smuggled in on the prototype
1128
+ * (GHSA-w332-x78m-vf3v).
981
1129
  */
982
- aggregateBy.query = Object.assign(Object.assign({}, (aggregateBy.query || {})), { projectId: dashboard.projectId });
1130
+ const allowedFilterAttributeKeys = DashboardAPI.collectDashboardFilterAttributeKeys(dashboard.dashboardViewConfig);
1131
+ const sanitizedAttributes = {};
1132
+ const requestedAttributes = requestedQuery["attributes"];
1133
+ if (requestedAttributes &&
1134
+ typeof requestedAttributes === "object" &&
1135
+ !Array.isArray(requestedAttributes)) {
1136
+ for (const requestedAttributeKey of Object.keys(requestedAttributes)) {
1137
+ if (!allowedFilterAttributeKeys.has(requestedAttributeKey)) {
1138
+ throw new BadDataException("This attribute is not part of this dashboard.");
1139
+ }
1140
+ sanitizedAttributes[requestedAttributeKey] = requestedAttributes[requestedAttributeKey];
1141
+ }
1142
+ }
1143
+ aggregateBy.query = Object.assign(Object.assign(Object.assign({ name: requestedMetricName }, (requestedQuery["time"] !== undefined
1144
+ ? { time: requestedQuery["time"] }
1145
+ : {})), (Object.keys(sanitizedAttributes).length > 0
1146
+ ? { attributes: sanitizedAttributes }
1147
+ : {})), { projectId: dashboard.projectId });
983
1148
  const aggregateResult = await MetricService.aggregateBy(aggregateBy);
984
1149
  const responseBody = Object.assign({}, aggregateResult);
985
1150
  return Response.sendJsonObjectResponse(req, res, responseBody);
@@ -1134,6 +1299,174 @@ export default class DashboardAPI extends BaseAPI {
1134
1299
  walk(dashboardViewConfig);
1135
1300
  return metricNames;
1136
1301
  }
1302
+ /*
1303
+ * Walk a stored dashboard view config and collect every OpenTelemetry
1304
+ * attribute key its variables bind to (a `Telemetry Attribute` variable
1305
+ * carries the key its dropdown lists values for). Used as the allowlist
1306
+ * for the public attribute-values endpoint, so an anonymous viewer can
1307
+ * only read the values behind this dashboard's own variable pickers and
1308
+ * not every attribute in the owning project.
1309
+ */
1310
+ static collectDashboardVariableAttributeKeys(dashboardViewConfig) {
1311
+ const attributeKeys = new Set();
1312
+ const walk = (node) => {
1313
+ if (!node || typeof node !== "object") {
1314
+ return;
1315
+ }
1316
+ if (Array.isArray(node)) {
1317
+ for (const item of node) {
1318
+ walk(item);
1319
+ }
1320
+ return;
1321
+ }
1322
+ const obj = node;
1323
+ if (obj["type"] === DashboardVariableType.TelemetryAttribute) {
1324
+ const attributeKey = obj["attributeKey"];
1325
+ if (typeof attributeKey === "string" &&
1326
+ attributeKey.trim().length > 0) {
1327
+ attributeKeys.add(attributeKey.trim());
1328
+ }
1329
+ }
1330
+ for (const key of Object.keys(obj)) {
1331
+ walk(obj[key]);
1332
+ }
1333
+ };
1334
+ walk(dashboardViewConfig);
1335
+ return attributeKeys;
1336
+ }
1337
+ /*
1338
+ * Walk a stored dashboard view config and collect every OpenTelemetry
1339
+ * attribute key its metric widgets group by — `groupByAttributeKeys`
1340
+ * (chart / value / gauge / legacy table queries) and `groupByAttributes`
1341
+ * (the table widget's richer per-key form). Used as the allowlist for the
1342
+ * public metric-aggregate endpoint, whose grouped results echo each
1343
+ * group's key values back to the caller.
1344
+ */
1345
+ static collectDashboardGroupByAttributeKeys(dashboardViewConfig) {
1346
+ const attributeKeys = new Set();
1347
+ const addKey = (value) => {
1348
+ if (typeof value === "string" && value.length > 0) {
1349
+ attributeKeys.add(value);
1350
+ }
1351
+ };
1352
+ const walk = (node) => {
1353
+ if (!node || typeof node !== "object") {
1354
+ return;
1355
+ }
1356
+ if (Array.isArray(node)) {
1357
+ for (const item of node) {
1358
+ walk(item);
1359
+ }
1360
+ return;
1361
+ }
1362
+ const obj = node;
1363
+ const groupByAttributeKeys = obj["groupByAttributeKeys"];
1364
+ if (Array.isArray(groupByAttributeKeys)) {
1365
+ for (const key of groupByAttributeKeys) {
1366
+ addKey(key);
1367
+ }
1368
+ }
1369
+ const groupByAttributes = obj["groupByAttributes"];
1370
+ if (Array.isArray(groupByAttributes)) {
1371
+ for (const groupByAttribute of groupByAttributes) {
1372
+ if (groupByAttribute && typeof groupByAttribute === "object") {
1373
+ addKey(groupByAttribute["key"]);
1374
+ }
1375
+ }
1376
+ }
1377
+ for (const key of Object.keys(obj)) {
1378
+ walk(obj[key]);
1379
+ }
1380
+ };
1381
+ walk(dashboardViewConfig);
1382
+ return attributeKeys;
1383
+ }
1384
+ /*
1385
+ * Attribute keys a public metric aggregation may FILTER on.
1386
+ *
1387
+ * Two sources, and both are needed:
1388
+ *
1389
+ * - Keys the widgets themselves persist — `filterData.attributes` on a
1390
+ * chart/value/gauge query, and the table widget's widget-level
1391
+ * `attributeFilters`.
1392
+ * - Keys the dashboard's `Telemetry Attribute` variables bind to. The
1393
+ * shipped templates store `filterData: { metricName, aggegationType }`
1394
+ * and no attributes at all; the filter on e.g.
1395
+ * `resource.k8s.cluster.name` only appears once the viewer picks a value
1396
+ * and DashboardVariableInterpolation injects it at render time. An
1397
+ * allowlist built from stored filters alone would refuse every real
1398
+ * templated dashboard the moment its variable is used.
1399
+ */
1400
+ static collectDashboardFilterAttributeKeys(dashboardViewConfig) {
1401
+ const attributeKeys = DashboardAPI.collectDashboardVariableAttributeKeys(dashboardViewConfig);
1402
+ const addKeysOf = (value) => {
1403
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
1404
+ return;
1405
+ }
1406
+ for (const key of Object.keys(value)) {
1407
+ if (key.length > 0) {
1408
+ attributeKeys.add(key);
1409
+ }
1410
+ }
1411
+ };
1412
+ const walk = (node) => {
1413
+ if (!node || typeof node !== "object") {
1414
+ return;
1415
+ }
1416
+ if (Array.isArray(node)) {
1417
+ for (const item of node) {
1418
+ walk(item);
1419
+ }
1420
+ return;
1421
+ }
1422
+ const obj = node;
1423
+ const filterData = obj["filterData"];
1424
+ if (filterData && typeof filterData === "object") {
1425
+ addKeysOf(filterData["attributes"]);
1426
+ }
1427
+ addKeysOf(obj["attributeFilters"]);
1428
+ for (const key of Object.keys(obj)) {
1429
+ walk(obj[key]);
1430
+ }
1431
+ };
1432
+ walk(dashboardViewConfig);
1433
+ return attributeKeys;
1434
+ }
1435
+ /*
1436
+ * Walk a stored dashboard view config and collect every model column its
1437
+ * widgets group by. Used as the allowlist for the public metric-aggregate
1438
+ * endpoint: grouping echoes the grouped column back in every result row,
1439
+ * so `groupBy: { attributes: true }` would hand an anonymous viewer the
1440
+ * entire attribute map of an allowlisted metric.
1441
+ */
1442
+ static collectDashboardGroupByColumns(dashboardViewConfig) {
1443
+ const groupByColumns = new Set();
1444
+ const walk = (node) => {
1445
+ if (!node || typeof node !== "object") {
1446
+ return;
1447
+ }
1448
+ if (Array.isArray(node)) {
1449
+ for (const item of node) {
1450
+ walk(item);
1451
+ }
1452
+ return;
1453
+ }
1454
+ const obj = node;
1455
+ const groupBy = obj["groupBy"];
1456
+ if (groupBy && typeof groupBy === "object" && !Array.isArray(groupBy)) {
1457
+ for (const column of Object.keys(groupBy)) {
1458
+ if (groupBy[column]) {
1459
+ groupByColumns.add(column);
1460
+ }
1461
+ }
1462
+ }
1463
+ for (const key of Object.keys(obj)) {
1464
+ walk(obj[key]);
1465
+ }
1466
+ };
1467
+ walk(dashboardViewConfig);
1468
+ return groupByColumns;
1469
+ }
1137
1470
  /*
1138
1471
  * Walk a stored dashboard view config and collect every widget type it
1139
1472
  * renders. Used to build an allowlist for the public resource-list
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardAPI.js","sourceRoot":"","sources":["../../../../Server/API/DashboardAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DashboardAPI.js","sourceRoot":"","sources":["../../../../Server/API/DashboardAPI.ts"],"names":[],"mappings":"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"}