@oneuptime/common 10.7.1 → 10.8.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 (262) hide show
  1. package/Models/DatabaseModels/CloudResource.ts +846 -0
  2. package/Models/DatabaseModels/CloudResourceInstance.ts +276 -0
  3. package/Models/DatabaseModels/CloudResourceLabelRule.ts +510 -0
  4. package/Models/DatabaseModels/CloudResourceOwnerRule.ts +592 -0
  5. package/Models/DatabaseModels/CloudResourceOwnerTeam.ts +487 -0
  6. package/Models/DatabaseModels/CloudResourceOwnerUser.ts +486 -0
  7. package/Models/DatabaseModels/Host.ts +209 -0
  8. package/Models/DatabaseModels/Index.ts +36 -0
  9. package/Models/DatabaseModels/RumApplication.ts +731 -0
  10. package/Models/DatabaseModels/RumApplicationClient.ts +229 -0
  11. package/Models/DatabaseModels/RumApplicationLabelRule.ts +510 -0
  12. package/Models/DatabaseModels/RumApplicationOwnerRule.ts +592 -0
  13. package/Models/DatabaseModels/RumApplicationOwnerTeam.ts +486 -0
  14. package/Models/DatabaseModels/RumApplicationOwnerUser.ts +485 -0
  15. package/Models/DatabaseModels/ServerlessFunction.ts +881 -0
  16. package/Models/DatabaseModels/ServerlessFunctionInstance.ts +212 -0
  17. package/Models/DatabaseModels/ServerlessFunctionLabelRule.ts +510 -0
  18. package/Models/DatabaseModels/ServerlessFunctionOwnerRule.ts +592 -0
  19. package/Models/DatabaseModels/ServerlessFunctionOwnerTeam.ts +487 -0
  20. package/Models/DatabaseModels/ServerlessFunctionOwnerUser.ts +486 -0
  21. package/Models/DatabaseModels/Service.ts +268 -0
  22. package/Models/DatabaseModels/TelemetryException.ts +15 -1
  23. package/Models/DatabaseModels/WorkflowLog.ts +52 -0
  24. package/Server/Infrastructure/Postgres/SchemaMigrations/1780931746908-AddResumeStateToWorkflowLog.ts +21 -0
  25. package/Server/Infrastructure/Postgres/SchemaMigrations/1780931863719-AddTelemetryResourceMetadataColumns.ts +108 -0
  26. package/Server/Infrastructure/Postgres/SchemaMigrations/1780933132562-AddServerlessFunctionTables.ts +205 -0
  27. package/Server/Infrastructure/Postgres/SchemaMigrations/1780935387827-AddCloudResourceTables.ts +195 -0
  28. package/Server/Infrastructure/Postgres/SchemaMigrations/1780936579718-AddRumApplicationTables.ts +202 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1780938407319-AddServerlessFunctionRuleTables.ts +156 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1780940721814-AddCloudResourceRuleTables.ts +149 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1780940998002-AddRumApplicationRuleTables.ts +149 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/1780941762204-AddTelemetryResourceInventoryTables.ts +95 -0
  33. package/Server/Infrastructure/Postgres/SchemaMigrations/1780985763463-AddRumApplicationSdkLanguage.ts +25 -0
  34. package/Server/Infrastructure/Postgres/SchemaMigrations/1780987192743-RecastCloudResourcesByEnvironment.ts +30 -0
  35. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +22 -0
  36. package/Server/Infrastructure/Queue.ts +11 -0
  37. package/Server/Services/CloudResourceInstanceService.ts +76 -0
  38. package/Server/Services/CloudResourceLabelRuleEngineService.ts +175 -0
  39. package/Server/Services/CloudResourceLabelRuleService.ts +14 -0
  40. package/Server/Services/CloudResourceOwnerRuleEngineService.ts +192 -0
  41. package/Server/Services/CloudResourceOwnerRuleService.ts +14 -0
  42. package/Server/Services/CloudResourceOwnerTeamService.ts +10 -0
  43. package/Server/Services/CloudResourceOwnerUserService.ts +10 -0
  44. package/Server/Services/CloudResourceService.ts +342 -0
  45. package/Server/Services/ExceptionAggregationService.ts +3 -0
  46. package/Server/Services/HostService.ts +42 -0
  47. package/Server/Services/LogAggregationService.ts +3 -0
  48. package/Server/Services/MetricAggregationService.ts +3 -0
  49. package/Server/Services/OpenTelemetryIngestService.ts +148 -1
  50. package/Server/Services/RumApplicationClientService.ts +69 -0
  51. package/Server/Services/RumApplicationLabelRuleEngineService.ts +175 -0
  52. package/Server/Services/RumApplicationLabelRuleService.ts +14 -0
  53. package/Server/Services/RumApplicationOwnerRuleEngineService.ts +192 -0
  54. package/Server/Services/RumApplicationOwnerRuleService.ts +14 -0
  55. package/Server/Services/RumApplicationOwnerTeamService.ts +10 -0
  56. package/Server/Services/RumApplicationOwnerUserService.ts +10 -0
  57. package/Server/Services/RumApplicationService.ts +301 -0
  58. package/Server/Services/ServerlessFunctionInstanceService.ts +61 -0
  59. package/Server/Services/ServerlessFunctionLabelRuleEngineService.ts +182 -0
  60. package/Server/Services/ServerlessFunctionLabelRuleService.ts +14 -0
  61. package/Server/Services/ServerlessFunctionOwnerRuleEngineService.ts +199 -0
  62. package/Server/Services/ServerlessFunctionOwnerRuleService.ts +14 -0
  63. package/Server/Services/ServerlessFunctionOwnerTeamService.ts +10 -0
  64. package/Server/Services/ServerlessFunctionOwnerUserService.ts +10 -0
  65. package/Server/Services/ServerlessFunctionService.ts +351 -0
  66. package/Server/Services/ServiceService.ts +95 -8
  67. package/Server/Services/TraceAggregationService.ts +3 -0
  68. package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +39 -0
  69. package/Server/Types/Workflow/ComponentCode.ts +9 -0
  70. package/Server/Types/Workflow/Components/Index.ts +2 -0
  71. package/Server/Types/Workflow/Components/Sleep.ts +105 -0
  72. package/Server/Types/Workflow/Workflow.ts +6 -0
  73. package/Server/Utils/Telemetry/ResourceFacetResolver.ts +150 -0
  74. package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +193 -0
  75. package/Tests/UI/Components/DuplicateModel.test.tsx +2 -2
  76. package/Types/Monitor/KubernetesAlertTemplates.ts +239 -14
  77. package/Types/Permission.ts +692 -1
  78. package/Types/Telemetry/ServiceType.ts +3 -0
  79. package/Types/Workflow/ComponentID.ts +1 -0
  80. package/Types/Workflow/Components/Sleep.ts +71 -0
  81. package/Types/Workflow/Components.ts +2 -0
  82. package/Types/Workflow/WorkflowStatus.ts +1 -0
  83. package/UI/Components/BulkUpdate/BulkLabelActions.tsx +159 -32
  84. package/UI/Components/Navbar/NavBar.tsx +72 -123
  85. package/UI/Components/Navbar/NavBarMenuModal.tsx +642 -0
  86. package/UI/Components/Workflow/WorkflowStatus.tsx +3 -0
  87. package/build/dist/Models/DatabaseModels/CloudResource.js +871 -0
  88. package/build/dist/Models/DatabaseModels/CloudResource.js.map +1 -0
  89. package/build/dist/Models/DatabaseModels/CloudResourceInstance.js +300 -0
  90. package/build/dist/Models/DatabaseModels/CloudResourceInstance.js.map +1 -0
  91. package/build/dist/Models/DatabaseModels/CloudResourceLabelRule.js +520 -0
  92. package/build/dist/Models/DatabaseModels/CloudResourceLabelRule.js.map +1 -0
  93. package/build/dist/Models/DatabaseModels/CloudResourceOwnerRule.js +601 -0
  94. package/build/dist/Models/DatabaseModels/CloudResourceOwnerRule.js.map +1 -0
  95. package/build/dist/Models/DatabaseModels/CloudResourceOwnerTeam.js +503 -0
  96. package/build/dist/Models/DatabaseModels/CloudResourceOwnerTeam.js.map +1 -0
  97. package/build/dist/Models/DatabaseModels/CloudResourceOwnerUser.js +502 -0
  98. package/build/dist/Models/DatabaseModels/CloudResourceOwnerUser.js.map +1 -0
  99. package/build/dist/Models/DatabaseModels/Host.js +215 -0
  100. package/build/dist/Models/DatabaseModels/Host.js.map +1 -1
  101. package/build/dist/Models/DatabaseModels/Index.js +36 -0
  102. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  103. package/build/dist/Models/DatabaseModels/RumApplication.js +751 -0
  104. package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -0
  105. package/build/dist/Models/DatabaseModels/RumApplicationClient.js +252 -0
  106. package/build/dist/Models/DatabaseModels/RumApplicationClient.js.map +1 -0
  107. package/build/dist/Models/DatabaseModels/RumApplicationLabelRule.js +520 -0
  108. package/build/dist/Models/DatabaseModels/RumApplicationLabelRule.js.map +1 -0
  109. package/build/dist/Models/DatabaseModels/RumApplicationOwnerRule.js +601 -0
  110. package/build/dist/Models/DatabaseModels/RumApplicationOwnerRule.js.map +1 -0
  111. package/build/dist/Models/DatabaseModels/RumApplicationOwnerTeam.js +503 -0
  112. package/build/dist/Models/DatabaseModels/RumApplicationOwnerTeam.js.map +1 -0
  113. package/build/dist/Models/DatabaseModels/RumApplicationOwnerUser.js +502 -0
  114. package/build/dist/Models/DatabaseModels/RumApplicationOwnerUser.js.map +1 -0
  115. package/build/dist/Models/DatabaseModels/ServerlessFunction.js +908 -0
  116. package/build/dist/Models/DatabaseModels/ServerlessFunction.js.map +1 -0
  117. package/build/dist/Models/DatabaseModels/ServerlessFunctionInstance.js +234 -0
  118. package/build/dist/Models/DatabaseModels/ServerlessFunctionInstance.js.map +1 -0
  119. package/build/dist/Models/DatabaseModels/ServerlessFunctionLabelRule.js +520 -0
  120. package/build/dist/Models/DatabaseModels/ServerlessFunctionLabelRule.js.map +1 -0
  121. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerRule.js +601 -0
  122. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerRule.js.map +1 -0
  123. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerTeam.js +503 -0
  124. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerTeam.js.map +1 -0
  125. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerUser.js +502 -0
  126. package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerUser.js.map +1 -0
  127. package/build/dist/Models/DatabaseModels/Service.js +276 -0
  128. package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
  129. package/build/dist/Models/DatabaseModels/TelemetryException.js +12 -1
  130. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  131. package/build/dist/Models/DatabaseModels/WorkflowLog.js +53 -0
  132. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
  133. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780931746908-AddResumeStateToWorkflowLog.js +14 -0
  134. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780931746908-AddResumeStateToWorkflowLog.js.map +1 -0
  135. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780931863719-AddTelemetryResourceMetadataColumns.js +53 -0
  136. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780931863719-AddTelemetryResourceMetadataColumns.js.map +1 -0
  137. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780933132562-AddServerlessFunctionTables.js +82 -0
  138. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780933132562-AddServerlessFunctionTables.js.map +1 -0
  139. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780935387827-AddCloudResourceTables.js +82 -0
  140. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780935387827-AddCloudResourceTables.js.map +1 -0
  141. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780936579718-AddRumApplicationTables.js +83 -0
  142. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780936579718-AddRumApplicationTables.js.map +1 -0
  143. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780938407319-AddServerlessFunctionRuleTables.js +67 -0
  144. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780938407319-AddServerlessFunctionRuleTables.js.map +1 -0
  145. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780940721814-AddCloudResourceRuleTables.js +60 -0
  146. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780940721814-AddCloudResourceRuleTables.js.map +1 -0
  147. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780940998002-AddRumApplicationRuleTables.js +60 -0
  148. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780940998002-AddRumApplicationRuleTables.js.map +1 -0
  149. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780941762204-AddTelemetryResourceInventoryTables.js +45 -0
  150. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780941762204-AddTelemetryResourceInventoryTables.js.map +1 -0
  151. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780985763463-AddRumApplicationSdkLanguage.js +18 -0
  152. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780985763463-AddRumApplicationSdkLanguage.js.map +1 -0
  153. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780987192743-RecastCloudResourcesByEnvironment.js +27 -0
  154. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780987192743-RecastCloudResourcesByEnvironment.js.map +1 -0
  155. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +22 -0
  156. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  157. package/build/dist/Server/Infrastructure/Queue.js +3 -0
  158. package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
  159. package/build/dist/Server/Services/CloudResourceInstanceService.js +76 -0
  160. package/build/dist/Server/Services/CloudResourceInstanceService.js.map +1 -0
  161. package/build/dist/Server/Services/CloudResourceLabelRuleEngineService.js +160 -0
  162. package/build/dist/Server/Services/CloudResourceLabelRuleEngineService.js.map +1 -0
  163. package/build/dist/Server/Services/CloudResourceLabelRuleService.js +13 -0
  164. package/build/dist/Server/Services/CloudResourceLabelRuleService.js.map +1 -0
  165. package/build/dist/Server/Services/CloudResourceOwnerRuleEngineService.js +179 -0
  166. package/build/dist/Server/Services/CloudResourceOwnerRuleEngineService.js.map +1 -0
  167. package/build/dist/Server/Services/CloudResourceOwnerRuleService.js +13 -0
  168. package/build/dist/Server/Services/CloudResourceOwnerRuleService.js.map +1 -0
  169. package/build/dist/Server/Services/CloudResourceOwnerTeamService.js +9 -0
  170. package/build/dist/Server/Services/CloudResourceOwnerTeamService.js.map +1 -0
  171. package/build/dist/Server/Services/CloudResourceOwnerUserService.js +9 -0
  172. package/build/dist/Server/Services/CloudResourceOwnerUserService.js.map +1 -0
  173. package/build/dist/Server/Services/CloudResourceService.js +287 -0
  174. package/build/dist/Server/Services/CloudResourceService.js.map +1 -0
  175. package/build/dist/Server/Services/ExceptionAggregationService.js +3 -0
  176. package/build/dist/Server/Services/ExceptionAggregationService.js.map +1 -1
  177. package/build/dist/Server/Services/HostService.js +29 -1
  178. package/build/dist/Server/Services/HostService.js.map +1 -1
  179. package/build/dist/Server/Services/LogAggregationService.js +3 -0
  180. package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
  181. package/build/dist/Server/Services/MetricAggregationService.js +3 -0
  182. package/build/dist/Server/Services/MetricAggregationService.js.map +1 -1
  183. package/build/dist/Server/Services/OpenTelemetryIngestService.js +98 -2
  184. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  185. package/build/dist/Server/Services/RumApplicationClientService.js +70 -0
  186. package/build/dist/Server/Services/RumApplicationClientService.js.map +1 -0
  187. package/build/dist/Server/Services/RumApplicationLabelRuleEngineService.js +160 -0
  188. package/build/dist/Server/Services/RumApplicationLabelRuleEngineService.js.map +1 -0
  189. package/build/dist/Server/Services/RumApplicationLabelRuleService.js +13 -0
  190. package/build/dist/Server/Services/RumApplicationLabelRuleService.js.map +1 -0
  191. package/build/dist/Server/Services/RumApplicationOwnerRuleEngineService.js +179 -0
  192. package/build/dist/Server/Services/RumApplicationOwnerRuleEngineService.js.map +1 -0
  193. package/build/dist/Server/Services/RumApplicationOwnerRuleService.js +13 -0
  194. package/build/dist/Server/Services/RumApplicationOwnerRuleService.js.map +1 -0
  195. package/build/dist/Server/Services/RumApplicationOwnerTeamService.js +9 -0
  196. package/build/dist/Server/Services/RumApplicationOwnerTeamService.js.map +1 -0
  197. package/build/dist/Server/Services/RumApplicationOwnerUserService.js +9 -0
  198. package/build/dist/Server/Services/RumApplicationOwnerUserService.js.map +1 -0
  199. package/build/dist/Server/Services/RumApplicationService.js +259 -0
  200. package/build/dist/Server/Services/RumApplicationService.js.map +1 -0
  201. package/build/dist/Server/Services/ServerlessFunctionInstanceService.js +64 -0
  202. package/build/dist/Server/Services/ServerlessFunctionInstanceService.js.map +1 -0
  203. package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js +160 -0
  204. package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js.map +1 -0
  205. package/build/dist/Server/Services/ServerlessFunctionLabelRuleService.js +13 -0
  206. package/build/dist/Server/Services/ServerlessFunctionLabelRuleService.js.map +1 -0
  207. package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js +179 -0
  208. package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js.map +1 -0
  209. package/build/dist/Server/Services/ServerlessFunctionOwnerRuleService.js +13 -0
  210. package/build/dist/Server/Services/ServerlessFunctionOwnerRuleService.js.map +1 -0
  211. package/build/dist/Server/Services/ServerlessFunctionOwnerTeamService.js +9 -0
  212. package/build/dist/Server/Services/ServerlessFunctionOwnerTeamService.js.map +1 -0
  213. package/build/dist/Server/Services/ServerlessFunctionOwnerUserService.js +9 -0
  214. package/build/dist/Server/Services/ServerlessFunctionOwnerUserService.js.map +1 -0
  215. package/build/dist/Server/Services/ServerlessFunctionService.js +299 -0
  216. package/build/dist/Server/Services/ServerlessFunctionService.js.map +1 -0
  217. package/build/dist/Server/Services/ServiceService.js +63 -7
  218. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  219. package/build/dist/Server/Services/TraceAggregationService.js +3 -0
  220. package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
  221. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +39 -0
  222. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -1
  223. package/build/dist/Server/Types/Workflow/ComponentCode.js.map +1 -1
  224. package/build/dist/Server/Types/Workflow/Components/Index.js +2 -0
  225. package/build/dist/Server/Types/Workflow/Components/Index.js.map +1 -1
  226. package/build/dist/Server/Types/Workflow/Components/Sleep.js +85 -0
  227. package/build/dist/Server/Types/Workflow/Components/Sleep.js.map +1 -0
  228. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js +90 -0
  229. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js.map +1 -1
  230. package/build/dist/Tests/Types/Monitor/KubernetesAlertTemplates.test.js +121 -0
  231. package/build/dist/Tests/Types/Monitor/KubernetesAlertTemplates.test.js.map +1 -0
  232. package/build/dist/Tests/UI/Components/DuplicateModel.test.js +2 -2
  233. package/build/dist/Tests/UI/Components/DuplicateModel.test.js.map +1 -1
  234. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +210 -14
  235. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
  236. package/build/dist/Types/Permission.js +609 -1
  237. package/build/dist/Types/Permission.js.map +1 -1
  238. package/build/dist/Types/Telemetry/ServiceType.js +3 -0
  239. package/build/dist/Types/Telemetry/ServiceType.js.map +1 -1
  240. package/build/dist/Types/Workflow/ComponentID.js +1 -0
  241. package/build/dist/Types/Workflow/ComponentID.js.map +1 -1
  242. package/build/dist/Types/Workflow/Components/Sleep.js +64 -0
  243. package/build/dist/Types/Workflow/Components/Sleep.js.map +1 -0
  244. package/build/dist/Types/Workflow/Components.js +2 -0
  245. package/build/dist/Types/Workflow/Components.js.map +1 -1
  246. package/build/dist/Types/Workflow/WorkflowStatus.js +1 -0
  247. package/build/dist/Types/Workflow/WorkflowStatus.js.map +1 -1
  248. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js +113 -19
  249. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js.map +1 -1
  250. package/build/dist/UI/Components/Navbar/NavBar.js +34 -66
  251. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  252. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +412 -0
  253. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -0
  254. package/build/dist/UI/Components/Workflow/WorkflowStatus.js +3 -0
  255. package/build/dist/UI/Components/Workflow/WorkflowStatus.js.map +1 -1
  256. package/package.json +1 -1
  257. package/UI/Components/Navbar/NavBarMenu.tsx +0 -183
  258. package/UI/Components/Navbar/NavBarMenuItem.tsx +0 -146
  259. package/build/dist/UI/Components/Navbar/NavBarMenu.js +0 -82
  260. package/build/dist/UI/Components/Navbar/NavBarMenu.js.map +0 -1
  261. package/build/dist/UI/Components/Navbar/NavBarMenuItem.js +0 -109
  262. package/build/dist/UI/Components/Navbar/NavBarMenuItem.js.map +0 -1
@@ -0,0 +1,13 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/RumApplicationOwnerRule";
3
+ import { IsBillingEnabled } from "../EnvironmentConfig";
4
+ export class Service extends DatabaseService {
5
+ constructor() {
6
+ super(Model);
7
+ if (IsBillingEnabled) {
8
+ this.hardDeleteItemsOlderThanInDays("createdAt", 3 * 365);
9
+ }
10
+ }
11
+ }
12
+ export default new Service();
13
+ //# sourceMappingURL=RumApplicationOwnerRuleService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RumApplicationOwnerRuleService.js","sourceRoot":"","sources":["../../../../Server/Services/RumApplicationOwnerRuleService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,qDAAqD,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/RumApplicationOwnerTeam";
3
+ export class Service extends DatabaseService {
4
+ constructor() {
5
+ super(Model);
6
+ }
7
+ }
8
+ export default new Service();
9
+ //# sourceMappingURL=RumApplicationOwnerTeamService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RumApplicationOwnerTeamService.js","sourceRoot":"","sources":["../../../../Server/Services/RumApplicationOwnerTeamService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,qDAAqD,CAAC;AAExE,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/RumApplicationOwnerUser";
3
+ export class Service extends DatabaseService {
4
+ constructor() {
5
+ super(Model);
6
+ }
7
+ }
8
+ export default new Service();
9
+ //# sourceMappingURL=RumApplicationOwnerUserService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RumApplicationOwnerUserService.js","sourceRoot":"","sources":["../../../../Server/Services/RumApplicationOwnerUserService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,qDAAqD,CAAC;AAExE,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,259 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import DatabaseService from "./DatabaseService";
11
+ import Model from "../../Models/DatabaseModels/RumApplication";
12
+ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
13
+ import ObjectID from "../../Types/ObjectID";
14
+ import QueryHelper from "../Types/Database/QueryHelper";
15
+ import OneUptimeDate from "../../Types/Date";
16
+ import LIMIT_MAX from "../../Types/Database/LimitMax";
17
+ import GlobalCache from "../Infrastructure/GlobalCache";
18
+ import logger from "../Utils/Logger";
19
+ import crypto from "crypto";
20
+ import RumApplicationLabelRuleEngineService from "./RumApplicationLabelRuleEngineService";
21
+ import RumApplicationOwnerRuleEngineService from "./RumApplicationOwnerRuleEngineService";
22
+ const LAST_SEEN_CACHE_NAMESPACE = "rum-application-last-seen";
23
+ const LAST_SEEN_THROTTLE_SECONDS = 60;
24
+ const LABELS_APPLIED_CACHE_NAMESPACE = "rum-application-labels-applied";
25
+ const LABELS_APPLIED_CACHE_TTL_SECONDS = 60;
26
+ export class Service extends DatabaseService {
27
+ constructor() {
28
+ super(Model);
29
+ }
30
+ async onCreateSuccess(_onCreate, createdItem) {
31
+ if (createdItem.projectId && createdItem.id) {
32
+ Promise.resolve()
33
+ .then(async () => {
34
+ await RumApplicationLabelRuleEngineService.applyRulesToRumApplication(createdItem);
35
+ })
36
+ .then(async () => {
37
+ await RumApplicationOwnerRuleEngineService.applyRulesToRumApplication(createdItem);
38
+ })
39
+ .catch((error) => {
40
+ var _a, _b;
41
+ logger.error(`Error applying RUM application rules in RumApplicationService.onCreateSuccess: ${error}`, {
42
+ projectId: (_a = createdItem.projectId) === null || _a === void 0 ? void 0 : _a.toString(),
43
+ rumApplicationId: (_b = createdItem.id) === null || _b === void 0 ? void 0 : _b.toString(),
44
+ });
45
+ });
46
+ }
47
+ return createdItem;
48
+ }
49
+ async findOrCreateByAppIdentifier(data) {
50
+ const existingApp = await this.findOneBy({
51
+ query: {
52
+ projectId: data.projectId,
53
+ appIdentifier: QueryHelper.findWithSameText(data.appIdentifier),
54
+ },
55
+ select: {
56
+ _id: true,
57
+ projectId: true,
58
+ appIdentifier: true,
59
+ },
60
+ props: {
61
+ isRoot: true,
62
+ },
63
+ });
64
+ if (existingApp) {
65
+ return existingApp;
66
+ }
67
+ try {
68
+ const newApp = new Model();
69
+ newApp.projectId = data.projectId;
70
+ newApp.name = data.appIdentifier;
71
+ newApp.appIdentifier = data.appIdentifier;
72
+ newApp.otelCollectorStatus = "connected";
73
+ newApp.lastSeenAt = OneUptimeDate.getCurrentDate();
74
+ const createdApp = await this.create({
75
+ data: newApp,
76
+ props: {
77
+ isRoot: true,
78
+ },
79
+ });
80
+ return createdApp;
81
+ }
82
+ catch (_a) {
83
+ const reFetchedApp = await this.findOneBy({
84
+ query: {
85
+ projectId: data.projectId,
86
+ appIdentifier: QueryHelper.findWithSameText(data.appIdentifier),
87
+ },
88
+ select: {
89
+ _id: true,
90
+ projectId: true,
91
+ appIdentifier: true,
92
+ },
93
+ props: {
94
+ isRoot: true,
95
+ },
96
+ });
97
+ if (reFetchedApp) {
98
+ return reFetchedApp;
99
+ }
100
+ throw new Error("Failed to create or find RUM application: " + data.appIdentifier);
101
+ }
102
+ }
103
+ async updateLastSeen(rumApplicationId, extra) {
104
+ var _a, _b, _c;
105
+ const cacheKey = rumApplicationId.toString();
106
+ const extrasFingerprint = crypto
107
+ .createHash("sha1")
108
+ .update(JSON.stringify({
109
+ agentVersion: (_a = extra === null || extra === void 0 ? void 0 : extra.agentVersion) !== null && _a !== void 0 ? _a : null,
110
+ clientType: (_b = extra === null || extra === void 0 ? void 0 : extra.clientType) !== null && _b !== void 0 ? _b : null,
111
+ sdkLanguage: (_c = extra === null || extra === void 0 ? void 0 : extra.sdkLanguage) !== null && _c !== void 0 ? _c : null,
112
+ }))
113
+ .digest("hex");
114
+ const cached = await GlobalCache.getString(LAST_SEEN_CACHE_NAMESPACE, cacheKey);
115
+ if (cached === extrasFingerprint) {
116
+ return; // same data was written recently
117
+ }
118
+ await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey, extrasFingerprint, { expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS });
119
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
120
+ const data = {
121
+ lastSeenAt: OneUptimeDate.getCurrentDate(),
122
+ otelCollectorStatus: "connected",
123
+ };
124
+ if (extra === null || extra === void 0 ? void 0 : extra.agentVersion) {
125
+ data.agentVersion = extra.agentVersion;
126
+ }
127
+ if (extra === null || extra === void 0 ? void 0 : extra.clientType) {
128
+ data.clientType = extra.clientType;
129
+ }
130
+ if (extra === null || extra === void 0 ? void 0 : extra.sdkLanguage) {
131
+ data.sdkLanguage = extra.sdkLanguage;
132
+ }
133
+ await this.updateOneById({
134
+ id: rumApplicationId,
135
+ data: data,
136
+ props: {
137
+ isRoot: true,
138
+ },
139
+ });
140
+ }
141
+ async attachLabels(data) {
142
+ var _a;
143
+ if (!data.labelIds || data.labelIds.length === 0) {
144
+ return;
145
+ }
146
+ const cacheKey = data.rumApplicationId.toString();
147
+ const fingerprint = fingerprintLabelIds(data.labelIds);
148
+ const cached = await GlobalCache.getString(LABELS_APPLIED_CACHE_NAMESPACE, cacheKey);
149
+ if (cached === fingerprint) {
150
+ return;
151
+ }
152
+ try {
153
+ const appIdStr = data.rumApplicationId.toString();
154
+ const existingLabels = await this.getRepository()
155
+ .createQueryBuilder()
156
+ .relation(Model, "labels")
157
+ .of(appIdStr)
158
+ .loadMany();
159
+ const existingIds = new Set();
160
+ for (const lbl of existingLabels) {
161
+ const idStr = (_a = lbl._id) === null || _a === void 0 ? void 0 : _a.toString();
162
+ if (idStr) {
163
+ existingIds.add(idStr);
164
+ }
165
+ }
166
+ const toAddIds = [];
167
+ const seen = new Set();
168
+ for (const id of data.labelIds) {
169
+ const idStr = id.toString();
170
+ if (existingIds.has(idStr) || seen.has(idStr)) {
171
+ continue;
172
+ }
173
+ seen.add(idStr);
174
+ toAddIds.push(idStr);
175
+ }
176
+ if (toAddIds.length > 0) {
177
+ await this.getRepository()
178
+ .createQueryBuilder()
179
+ .relation(Model, "labels")
180
+ .of(appIdStr)
181
+ .add(toAddIds);
182
+ }
183
+ await GlobalCache.setString(LABELS_APPLIED_CACHE_NAMESPACE, cacheKey, fingerprint, { expiresInSeconds: LABELS_APPLIED_CACHE_TTL_SECONDS });
184
+ }
185
+ catch (err) {
186
+ logger.warn(`RumApplicationService.attachLabels failed for application ${data.rumApplicationId.toString()}: ${err instanceof Error ? err.message : String(err)}`);
187
+ }
188
+ }
189
+ async markDisconnectedApplications() {
190
+ const fiveMinutesAgo = OneUptimeDate.addRemoveMinutes(OneUptimeDate.getCurrentDate(), -5);
191
+ const connectedApps = await this.findBy({
192
+ query: {
193
+ otelCollectorStatus: "connected",
194
+ lastSeenAt: QueryHelper.lessThan(fiveMinutesAgo),
195
+ },
196
+ select: {
197
+ _id: true,
198
+ },
199
+ limit: LIMIT_MAX,
200
+ skip: 0,
201
+ props: {
202
+ isRoot: true,
203
+ },
204
+ });
205
+ for (const rumApplication of connectedApps) {
206
+ if (rumApplication._id) {
207
+ await this.updateOneById({
208
+ id: new ObjectID(rumApplication._id.toString()),
209
+ data: {
210
+ otelCollectorStatus: "disconnected",
211
+ },
212
+ props: {
213
+ isRoot: true,
214
+ },
215
+ });
216
+ }
217
+ }
218
+ }
219
+ }
220
+ __decorate([
221
+ CaptureSpan(),
222
+ __metadata("design:type", Function),
223
+ __metadata("design:paramtypes", [Object, Model]),
224
+ __metadata("design:returntype", Promise)
225
+ ], Service.prototype, "onCreateSuccess", null);
226
+ __decorate([
227
+ CaptureSpan(),
228
+ __metadata("design:type", Function),
229
+ __metadata("design:paramtypes", [Object]),
230
+ __metadata("design:returntype", Promise)
231
+ ], Service.prototype, "findOrCreateByAppIdentifier", null);
232
+ __decorate([
233
+ CaptureSpan(),
234
+ __metadata("design:type", Function),
235
+ __metadata("design:paramtypes", [ObjectID, Object]),
236
+ __metadata("design:returntype", Promise)
237
+ ], Service.prototype, "updateLastSeen", null);
238
+ __decorate([
239
+ CaptureSpan(),
240
+ __metadata("design:type", Function),
241
+ __metadata("design:paramtypes", [Object]),
242
+ __metadata("design:returntype", Promise)
243
+ ], Service.prototype, "attachLabels", null);
244
+ __decorate([
245
+ CaptureSpan(),
246
+ __metadata("design:type", Function),
247
+ __metadata("design:paramtypes", []),
248
+ __metadata("design:returntype", Promise)
249
+ ], Service.prototype, "markDisconnectedApplications", null);
250
+ function fingerprintLabelIds(labelIds) {
251
+ const sorted = labelIds
252
+ .map((id) => {
253
+ return id.toString();
254
+ })
255
+ .sort();
256
+ return crypto.createHash("sha1").update(sorted.join(",")).digest("hex");
257
+ }
258
+ export default new Service();
259
+ //# sourceMappingURL=RumApplicationService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RumApplicationService.js","sourceRoot":"","sources":["../../../../Server/Services/RumApplicationService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import DatabaseService from "./DatabaseService";
11
+ import Model from "../../Models/DatabaseModels/ServerlessFunctionInstance";
12
+ import ObjectID from "../../Types/ObjectID";
13
+ import OneUptimeDate from "../../Types/Date";
14
+ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
15
+ import logger from "../Utils/Logger";
16
+ export class Service extends DatabaseService {
17
+ constructor() {
18
+ super(Model);
19
+ }
20
+ /**
21
+ * Upsert a serverless function instance (faas.instance) from ingest.
22
+ * Refreshes lastSeenAt if the instance already exists.
23
+ */
24
+ async recordInstance(data) {
25
+ try {
26
+ const existing = await this.findOneBy({
27
+ query: {
28
+ projectId: data.projectId,
29
+ serverlessFunctionId: data.serverlessFunctionId,
30
+ instanceName: data.instanceName,
31
+ },
32
+ select: { _id: true },
33
+ props: { isRoot: true },
34
+ });
35
+ if (existing && existing._id) {
36
+ await this.updateOneById({
37
+ id: new ObjectID(existing._id.toString()),
38
+ data: { lastSeenAt: OneUptimeDate.getCurrentDate() },
39
+ props: { isRoot: true },
40
+ });
41
+ return;
42
+ }
43
+ const item = new Model();
44
+ item.projectId = data.projectId;
45
+ item.serverlessFunctionId = data.serverlessFunctionId;
46
+ item.instanceName = data.instanceName;
47
+ item.lastSeenAt = OneUptimeDate.getCurrentDate();
48
+ await this.create({ data: item, props: { isRoot: true } });
49
+ }
50
+ catch (err) {
51
+ // Inventory is best-effort — a unique-violation race or transient error
52
+ // must never fail ingest.
53
+ logger.warn(`ServerlessFunctionInstanceService.recordInstance failed: ${err instanceof Error ? err.message : String(err)}`);
54
+ }
55
+ }
56
+ }
57
+ __decorate([
58
+ CaptureSpan(),
59
+ __metadata("design:type", Function),
60
+ __metadata("design:paramtypes", [Object]),
61
+ __metadata("design:returntype", Promise)
62
+ ], Service.prototype, "recordInstance", null);
63
+ export default new Service();
64
+ //# sourceMappingURL=ServerlessFunctionInstanceService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerlessFunctionInstanceService.js","sourceRoot":"","sources":["../../../../Server/Services/ServerlessFunctionInstanceService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,wDAAwD,CAAC;AAC3E,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED;;;OAGG;IAEU,AAAN,KAAK,CAAC,cAAc,CAAC,IAI3B;QACC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAiB,MAAM,IAAI,CAAC,SAAS,CAAC;gBAClD,KAAK,EAAE;oBACL,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;oBAC/C,YAAY,EAAE,IAAI,CAAC,YAAY;iBAChC;gBACD,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;gBACrB,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aACxB,CAAC,CAAC;YAEH,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,aAAa,CAAC;oBACvB,EAAE,EAAE,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACzC,IAAI,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,cAAc,EAAE,EAAE;oBACpD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;iBACxB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAU,IAAI,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;YACjD,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,wEAAwE;YACxE,0BAA0B;YAC1B,MAAM,CAAC,IAAI,CACT,4DACE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAzCc;IADZ,WAAW,EAAE;;;;6CAyCb;AAGH,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,160 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import Label from "../../Models/DatabaseModels/Label";
11
+ import ServerlessFunction from "../../Models/DatabaseModels/ServerlessFunction";
12
+ import ServerlessFunctionLabelRuleService from "./ServerlessFunctionLabelRuleService";
13
+ import ServerlessFunctionService from "./ServerlessFunctionService";
14
+ import ObjectID from "../../Types/ObjectID";
15
+ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
16
+ import logger from "../Utils/Logger";
17
+ class ServerlessFunctionLabelRuleEngineServiceClass {
18
+ /**
19
+ * Evaluates ServerlessFunctionLabelRule rows for the given function and
20
+ * attaches matched labels. The union is deduped against labels already on
21
+ * the function before insert to avoid PK conflicts on the join table.
22
+ */
23
+ async applyRulesToServerlessFunction(serverlessFunction) {
24
+ var _a, _b;
25
+ if (!serverlessFunction.id || !serverlessFunction.projectId) {
26
+ return;
27
+ }
28
+ try {
29
+ const rules = await ServerlessFunctionLabelRuleService.findBy({
30
+ query: {
31
+ projectId: serverlessFunction.projectId,
32
+ isEnabled: true,
33
+ },
34
+ props: { isRoot: true },
35
+ select: {
36
+ _id: true,
37
+ name: true,
38
+ matchLabels: { _id: true },
39
+ nameRegexPattern: true,
40
+ descriptionRegexPattern: true,
41
+ labelsToAdd: { _id: true },
42
+ },
43
+ limit: 100,
44
+ skip: 0,
45
+ });
46
+ if (rules.length === 0) {
47
+ return;
48
+ }
49
+ const fnWithDetails = await ServerlessFunctionService.findOneById({
50
+ id: serverlessFunction.id,
51
+ select: {
52
+ name: true,
53
+ description: true,
54
+ labels: { _id: true },
55
+ },
56
+ props: { isRoot: true },
57
+ });
58
+ if (!fnWithDetails) {
59
+ return;
60
+ }
61
+ const labelIdsToAdd = new Set();
62
+ for (const rule of rules) {
63
+ if (!this.doesMatchRule(fnWithDetails, rule)) {
64
+ continue;
65
+ }
66
+ for (const label of rule.labelsToAdd || []) {
67
+ if (label.id) {
68
+ labelIdsToAdd.add(label.id.toString());
69
+ }
70
+ }
71
+ }
72
+ if (labelIdsToAdd.size === 0) {
73
+ return;
74
+ }
75
+ const existingLabelIds = new Set((fnWithDetails.labels || [])
76
+ .map((l) => {
77
+ var _a;
78
+ return ((_a = l.id) === null || _a === void 0 ? void 0 : _a.toString()) || "";
79
+ })
80
+ .filter((id) => {
81
+ return id !== "";
82
+ }));
83
+ const newLabelIds = Array.from(labelIdsToAdd).filter((id) => {
84
+ return !existingLabelIds.has(id);
85
+ });
86
+ if (newLabelIds.length === 0) {
87
+ return;
88
+ }
89
+ await ServerlessFunctionService.getRepository()
90
+ .createQueryBuilder()
91
+ .relation(ServerlessFunction, "labels")
92
+ .of(serverlessFunction.id.toString())
93
+ .add(newLabelIds);
94
+ const mergedLabelIds = new Set([
95
+ ...existingLabelIds,
96
+ ...newLabelIds,
97
+ ]);
98
+ serverlessFunction.labels = Array.from(mergedLabelIds).map((id) => {
99
+ const label = new Label();
100
+ label.id = new ObjectID(id);
101
+ return label;
102
+ });
103
+ }
104
+ catch (error) {
105
+ logger.error(`Error applying serverless function label rules: ${error}`, {
106
+ projectId: (_a = serverlessFunction.projectId) === null || _a === void 0 ? void 0 : _a.toString(),
107
+ serverlessFunctionId: (_b = serverlessFunction.id) === null || _b === void 0 ? void 0 : _b.toString(),
108
+ });
109
+ }
110
+ }
111
+ doesMatchRule(serverlessFunction, rule) {
112
+ if (rule.matchLabels && rule.matchLabels.length > 0) {
113
+ if (!serverlessFunction.labels || serverlessFunction.labels.length === 0) {
114
+ return false;
115
+ }
116
+ const ruleLabelIds = rule.matchLabels.map((l) => {
117
+ var _a;
118
+ return ((_a = l.id) === null || _a === void 0 ? void 0 : _a.toString()) || "";
119
+ });
120
+ const labelIds = serverlessFunction.labels.map((l) => {
121
+ var _a;
122
+ return ((_a = l.id) === null || _a === void 0 ? void 0 : _a.toString()) || "";
123
+ });
124
+ if (!ruleLabelIds.some((id) => {
125
+ return labelIds.includes(id);
126
+ })) {
127
+ return false;
128
+ }
129
+ }
130
+ if (rule.nameRegexPattern &&
131
+ (!serverlessFunction.name ||
132
+ !this.testRegex(rule.nameRegexPattern, serverlessFunction.name))) {
133
+ return false;
134
+ }
135
+ if (rule.descriptionRegexPattern &&
136
+ (!serverlessFunction.description ||
137
+ !this.testRegex(rule.descriptionRegexPattern, serverlessFunction.description))) {
138
+ return false;
139
+ }
140
+ return true;
141
+ }
142
+ testRegex(pattern, value) {
143
+ try {
144
+ const regex = new RegExp(pattern, "i");
145
+ return regex.test(value);
146
+ }
147
+ catch (_a) {
148
+ logger.warn(`Invalid regex in serverless function label rule: ${pattern}`);
149
+ return false;
150
+ }
151
+ }
152
+ }
153
+ __decorate([
154
+ CaptureSpan(),
155
+ __metadata("design:type", Function),
156
+ __metadata("design:paramtypes", [ServerlessFunction]),
157
+ __metadata("design:returntype", Promise)
158
+ ], ServerlessFunctionLabelRuleEngineServiceClass.prototype, "applyRulesToServerlessFunction", null);
159
+ export default new ServerlessFunctionLabelRuleEngineServiceClass();
160
+ //# sourceMappingURL=ServerlessFunctionLabelRuleEngineService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerlessFunctionLabelRuleEngineService.js","sourceRoot":"","sources":["../../../../Server/Services/ServerlessFunctionLabelRuleEngineService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,mCAAmC,CAAC;AACtD,OAAO,kBAAkB,MAAM,gDAAgD,CAAC;AAEhF,OAAO,kCAAkC,MAAM,sCAAsC,CAAC;AACtF,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AACpE,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,MAAyB,MAAM,iBAAiB,CAAC;AAExD,MAAM,6CAA6C;IACjD;;;;OAIG;IAEU,AAAN,KAAK,CAAC,8BAA8B,CACzC,kBAAsC;;QAEtC,IAAI,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GACT,MAAM,kCAAkC,CAAC,MAAM,CAAC;gBAC9C,KAAK,EAAE;oBACL,SAAS,EAAE,kBAAkB,CAAC,SAAS;oBACvC,SAAS,EAAE,IAAI;iBAChB;gBACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBACvB,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;oBAC1B,gBAAgB,EAAE,IAAI;oBACtB,uBAAuB,EAAE,IAAI;oBAC7B,WAAW,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;iBAC3B;gBACD,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC;aACR,CAAC,CAAC;YAEL,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GACjB,MAAM,yBAAyB,CAAC,WAAW,CAAC;gBAC1C,EAAE,EAAE,kBAAkB,CAAC,EAAE;gBACzB,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;iBACtB;gBACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aACxB,CAAC,CAAC;YAEL,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAgB,IAAI,GAAG,EAAE,CAAC;YAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC;oBAC7C,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;oBAC3C,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;wBACb,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACzC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,MAAM,gBAAgB,GAAgB,IAAI,GAAG,CAC3C,CAAC,aAAa,CAAC,MAAM,IAAI,EAAE,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAQ,EAAE,EAAE;;gBAChB,OAAO,CAAA,MAAA,CAAC,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE,CAAC;YAChC,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE;gBACrB,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,CAAC,CAAC,CACL,CAAC;YAEF,MAAM,WAAW,GAAkB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACjE,CAAC,EAAU,EAAE,EAAE;gBACb,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnC,CAAC,CACF,CAAC;YACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,MAAM,yBAAyB,CAAC,aAAa,EAAE;iBAC5C,kBAAkB,EAAE;iBACpB,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,CAAC;iBACtC,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;iBACpC,GAAG,CAAC,WAAW,CAAC,CAAC;YAEpB,MAAM,cAAc,GAAgB,IAAI,GAAG,CAAC;gBAC1C,GAAG,gBAAgB;gBACnB,GAAG,WAAW;aACf,CAAC,CAAC;YACH,kBAAkB,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CACxD,CAAC,EAAU,EAAE,EAAE;gBACb,MAAM,KAAK,GAAU,IAAI,KAAK,EAAE,CAAC;gBACjC,KAAK,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC5B,OAAO,KAAK,CAAC;YACf,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mDAAmD,KAAK,EAAE,EAAE;gBACvE,SAAS,EAAE,MAAA,kBAAkB,CAAC,SAAS,0CAAE,QAAQ,EAAE;gBACnD,oBAAoB,EAAE,MAAA,kBAAkB,CAAC,EAAE,0CAAE,QAAQ,EAAE;aACvC,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,aAAa,CACnB,kBAAsC,EACtC,IAAiC;QAEjC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,kBAAkB,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,YAAY,GAAkB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAQ,EAAE,EAAE;;gBACpE,OAAO,CAAA,MAAA,CAAC,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAkB,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAC3D,CAAC,CAAQ,EAAE,EAAE;;gBACX,OAAO,CAAA,MAAA,CAAC,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE,CAAC;YAChC,CAAC,CACF,CAAC;YACF,IACE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE;gBAChC,OAAO,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC/B,CAAC,CAAC,EACF,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,IACE,IAAI,CAAC,gBAAgB;YACrB,CAAC,CAAC,kBAAkB,CAAC,IAAI;gBACvB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAClE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IACE,IAAI,CAAC,uBAAuB;YAC5B,CAAC,CAAC,kBAAkB,CAAC,WAAW;gBAC9B,CAAC,IAAI,CAAC,SAAS,CACb,IAAI,CAAC,uBAAuB,EAC5B,kBAAkB,CAAC,WAAW,CAC/B,CAAC,EACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,SAAS,CAAC,OAAe,EAAE,KAAa;QAC9C,IAAI,CAAC;YACH,MAAM,KAAK,GAAW,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAAC,WAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,oDAAoD,OAAO,EAAE,CAAC,CAAC;YAC3E,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAnKc;IADZ,WAAW,EAAE;;qCAEQ,kBAAkB;;mGAwGvC;AA4DH,eAAe,IAAI,6CAA6C,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/ServerlessFunctionLabelRule";
3
+ import { IsBillingEnabled } from "../EnvironmentConfig";
4
+ export class Service extends DatabaseService {
5
+ constructor() {
6
+ super(Model);
7
+ if (IsBillingEnabled) {
8
+ this.hardDeleteItemsOlderThanInDays("createdAt", 3 * 365);
9
+ }
10
+ }
11
+ }
12
+ export default new Service();
13
+ //# sourceMappingURL=ServerlessFunctionLabelRuleService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerlessFunctionLabelRuleService.js","sourceRoot":"","sources":["../../../../Server/Services/ServerlessFunctionLabelRuleService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;CACF;AAED,eAAe,IAAI,OAAO,EAAE,CAAC"}