@oneuptime/common 10.0.39 → 10.0.41

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 (285) hide show
  1. package/Models/AnalyticsModels/Index.ts +4 -0
  2. package/Models/AnalyticsModels/Profile.ts +687 -0
  3. package/Models/AnalyticsModels/ProfileSample.ts +547 -0
  4. package/Models/DatabaseModels/Dashboard.ts +357 -0
  5. package/Models/DatabaseModels/DashboardDomain.ts +658 -0
  6. package/Models/DatabaseModels/Index.ts +2 -0
  7. package/Models/DatabaseModels/StatusPage.ts +41 -0
  8. package/Server/API/DashboardAPI.ts +408 -0
  9. package/Server/API/DashboardDomainAPI.ts +235 -0
  10. package/Server/API/StatusPageAPI.ts +36 -2
  11. package/Server/API/TelemetryAPI.ts +393 -0
  12. package/Server/EnvironmentConfig.ts +12 -0
  13. package/Server/Infrastructure/Postgres/SchemaMigrations/1774524742177-MigrationName.ts +97 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/1774524742178-MigrationName.ts +17 -0
  15. package/Server/Infrastructure/Postgres/SchemaMigrations/1774524742179-MigrationName.ts +50 -0
  16. package/Server/Infrastructure/Postgres/SchemaMigrations/1774559064919-MigrationName.ts +59 -0
  17. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  18. package/Server/Middleware/UserAuthorization.ts +96 -1
  19. package/Server/Services/DashboardDomainService.ts +647 -0
  20. package/Server/Services/DashboardService.ts +174 -3
  21. package/Server/Services/IncidentService.ts +295 -50
  22. package/Server/Services/IncidentStateTimelineService.ts +1 -0
  23. package/Server/Services/Index.ts +6 -0
  24. package/Server/Services/MonitorService.ts +5 -0
  25. package/Server/Services/ProfileAggregationService.ts +559 -0
  26. package/Server/Services/ProfileSampleService.ts +11 -0
  27. package/Server/Services/ProfileService.ts +11 -0
  28. package/Server/Services/TelemetryUsageBillingService.ts +77 -3
  29. package/Server/Services/WorkspaceNotificationSummaryService.ts +15 -1
  30. package/Server/Types/Billing/MeteredPlan/AllMeteredPlans.ts +9 -0
  31. package/Server/Utils/Cookie.ts +48 -0
  32. package/Server/Utils/Monitor/Criteria/ProfileMonitorCriteria.ts +34 -0
  33. package/Server/Utils/Monitor/DataToProcess.ts +3 -1
  34. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +299 -0
  35. package/Server/Utils/Profile/PprofEncoder.ts +225 -0
  36. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +53 -16
  37. package/Server/Utils/Workspace/Slack/Slack.ts +26 -6
  38. package/ServiceRoute.ts +2 -0
  39. package/Tests/UI/Components/ComponentsModal.test.tsx +19 -15
  40. package/Types/AnalyticsDatabase/AnalyticsTableName.ts +2 -0
  41. package/Types/CookieName.ts +1 -0
  42. package/Types/Dashboard/Chart/ChartType.ts +5 -0
  43. package/Types/Dashboard/DashboardComponentType.ts +4 -0
  44. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +10 -0
  45. package/Types/Dashboard/DashboardComponents/DashboardChartComponent.ts +1 -2
  46. package/Types/Dashboard/DashboardComponents/DashboardGaugeComponent.ts +17 -0
  47. package/Types/Dashboard/DashboardComponents/DashboardLogStreamComponent.ts +15 -0
  48. package/Types/Dashboard/DashboardComponents/DashboardTableComponent.ts +14 -0
  49. package/Types/Dashboard/DashboardComponents/DashboardTextComponent.ts +1 -0
  50. package/Types/Dashboard/DashboardComponents/DashboardTraceListComponent.ts +13 -0
  51. package/Types/Dashboard/DashboardComponents/DashboardValueComponent.ts +2 -0
  52. package/Types/Dashboard/DashboardTemplates.ts +964 -0
  53. package/Types/Dashboard/DashboardVariable.ts +23 -0
  54. package/Types/Dashboard/DashboardViewConfig.ts +59 -0
  55. package/Types/Dashboard/MasterPassword.ts +10 -0
  56. package/Types/Icon/IconProp.ts +1 -0
  57. package/Types/Incident/IncidentMetricType.ts +3 -0
  58. package/Types/MeteredPlan/ProductType.ts +1 -0
  59. package/Types/Metrics/MetricQueryConfigData.ts +3 -0
  60. package/Types/Monitor/CriteriaFilter.ts +3 -0
  61. package/Types/Monitor/KubernetesAlertTemplates.ts +78 -7
  62. package/Types/Monitor/MetricMonitor/MetricMonitorResponse.ts +20 -0
  63. package/Types/Monitor/MonitorStep.ts +25 -0
  64. package/Types/Monitor/MonitorStepProfileMonitor.ts +96 -0
  65. package/Types/Monitor/MonitorType.ts +11 -0
  66. package/Types/Monitor/ProfileMonitor/ProfileMonitorResponse.ts +12 -0
  67. package/Types/Permission.ts +87 -0
  68. package/Types/Telemetry/TelemetryType.ts +1 -0
  69. package/Types/Workspace/NotificationSummary/WorkspaceNotificationSummaryItem.ts +1 -0
  70. package/UI/Components/Button/Button.tsx +1 -1
  71. package/UI/Components/Card/Card.tsx +8 -4
  72. package/UI/Components/Charts/Area/AreaChart.tsx +4 -0
  73. package/UI/Components/Charts/Bar/BarChart.tsx +4 -0
  74. package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +26 -0
  75. package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +26 -0
  76. package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +26 -0
  77. package/UI/Components/Charts/Line/LineChart.tsx +4 -0
  78. package/UI/Components/Charts/Types/ReferenceLineProps.ts +6 -0
  79. package/UI/Components/Icon/Icon.tsx +33 -0
  80. package/UI/Components/ModelTable/BaseModelTable.tsx +13 -10
  81. package/UI/Components/MoreMenu/MoreMenu.tsx +15 -2
  82. package/UI/Components/MoreMenu/MoreMenuItem.tsx +4 -4
  83. package/UI/Components/Workflow/Component.tsx +450 -209
  84. package/UI/Components/Workflow/ComponentPortViewer.tsx +57 -20
  85. package/UI/Components/Workflow/ComponentReturnValueViewer.tsx +65 -25
  86. package/UI/Components/Workflow/ComponentSettingsModal.tsx +202 -37
  87. package/UI/Components/Workflow/ComponentsModal.tsx +180 -93
  88. package/UI/Components/Workflow/Workflow.tsx +105 -9
  89. package/UI/Config.ts +9 -0
  90. package/Utils/Dashboard/Components/DashboardChartComponent.ts +53 -22
  91. package/Utils/Dashboard/Components/DashboardGaugeComponent.ts +124 -0
  92. package/Utils/Dashboard/Components/DashboardLogStreamComponent.ts +110 -0
  93. package/Utils/Dashboard/Components/DashboardTableComponent.ts +86 -0
  94. package/Utils/Dashboard/Components/DashboardTextComponent.ts +32 -7
  95. package/Utils/Dashboard/Components/DashboardTraceListComponent.ts +86 -0
  96. package/Utils/Dashboard/Components/DashboardValueComponent.ts +39 -3
  97. package/Utils/Dashboard/Components/Index.ts +28 -0
  98. package/Utils/ValueFormatter.ts +170 -0
  99. package/build/dist/Models/AnalyticsModels/Index.js +4 -0
  100. package/build/dist/Models/AnalyticsModels/Index.js.map +1 -1
  101. package/build/dist/Models/AnalyticsModels/Profile.js +621 -0
  102. package/build/dist/Models/AnalyticsModels/Profile.js.map +1 -0
  103. package/build/dist/Models/AnalyticsModels/ProfileSample.js +497 -0
  104. package/build/dist/Models/AnalyticsModels/ProfileSample.js.map +1 -0
  105. package/build/dist/Models/DatabaseModels/Dashboard.js +365 -0
  106. package/build/dist/Models/DatabaseModels/Dashboard.js.map +1 -1
  107. package/build/dist/Models/DatabaseModels/DashboardDomain.js +691 -0
  108. package/build/dist/Models/DatabaseModels/DashboardDomain.js.map +1 -0
  109. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  110. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  111. package/build/dist/Models/DatabaseModels/StatusPage.js +42 -0
  112. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  113. package/build/dist/Server/API/DashboardAPI.js +293 -0
  114. package/build/dist/Server/API/DashboardAPI.js.map +1 -0
  115. package/build/dist/Server/API/DashboardDomainAPI.js +124 -0
  116. package/build/dist/Server/API/DashboardDomainAPI.js.map +1 -0
  117. package/build/dist/Server/API/StatusPageAPI.js +26 -2
  118. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  119. package/build/dist/Server/API/TelemetryAPI.js +222 -0
  120. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  121. package/build/dist/Server/EnvironmentConfig.js +4 -0
  122. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  123. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742177-MigrationName.js +40 -0
  124. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742177-MigrationName.js.map +1 -0
  125. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742178-MigrationName.js +12 -0
  126. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742178-MigrationName.js.map +1 -0
  127. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742179-MigrationName.js +23 -0
  128. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774524742179-MigrationName.js.map +1 -0
  129. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064919-MigrationName.js +26 -0
  130. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064919-MigrationName.js.map +1 -0
  131. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  132. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  133. package/build/dist/Server/Middleware/UserAuthorization.js +41 -0
  134. package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
  135. package/build/dist/Server/Services/DashboardDomainService.js +595 -0
  136. package/build/dist/Server/Services/DashboardDomainService.js.map +1 -0
  137. package/build/dist/Server/Services/DashboardService.js +117 -3
  138. package/build/dist/Server/Services/DashboardService.js.map +1 -1
  139. package/build/dist/Server/Services/IncidentService.js +231 -55
  140. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  141. package/build/dist/Server/Services/IncidentStateTimelineService.js +1 -1
  142. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  143. package/build/dist/Server/Services/Index.js +6 -0
  144. package/build/dist/Server/Services/Index.js.map +1 -1
  145. package/build/dist/Server/Services/MonitorService.js +5 -2
  146. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  147. package/build/dist/Server/Services/ProfileAggregationService.js +356 -0
  148. package/build/dist/Server/Services/ProfileAggregationService.js.map +1 -0
  149. package/build/dist/Server/Services/ProfileSampleService.js +9 -0
  150. package/build/dist/Server/Services/ProfileSampleService.js.map +1 -0
  151. package/build/dist/Server/Services/ProfileService.js +9 -0
  152. package/build/dist/Server/Services/ProfileService.js.map +1 -0
  153. package/build/dist/Server/Services/TelemetryUsageBillingService.js +61 -4
  154. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  155. package/build/dist/Server/Services/WorkspaceNotificationSummaryService.js +13 -1
  156. package/build/dist/Server/Services/WorkspaceNotificationSummaryService.js.map +1 -1
  157. package/build/dist/Server/Types/Billing/MeteredPlan/AllMeteredPlans.js +8 -0
  158. package/build/dist/Server/Types/Billing/MeteredPlan/AllMeteredPlans.js.map +1 -1
  159. package/build/dist/Server/Utils/Cookie.js +36 -0
  160. package/build/dist/Server/Utils/Cookie.js.map +1 -1
  161. package/build/dist/Server/Utils/Monitor/Criteria/ProfileMonitorCriteria.js +34 -0
  162. package/build/dist/Server/Utils/Monitor/Criteria/ProfileMonitorCriteria.js.map +1 -0
  163. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +173 -0
  164. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  165. package/build/dist/Server/Utils/Profile/PprofEncoder.js +129 -0
  166. package/build/dist/Server/Utils/Profile/PprofEncoder.js.map +1 -0
  167. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +36 -14
  168. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  169. package/build/dist/Server/Utils/Workspace/Slack/Slack.js +23 -6
  170. package/build/dist/Server/Utils/Workspace/Slack/Slack.js.map +1 -1
  171. package/build/dist/ServiceRoute.js +1 -0
  172. package/build/dist/ServiceRoute.js.map +1 -1
  173. package/build/dist/Tests/UI/Components/ComponentsModal.test.js +15 -15
  174. package/build/dist/Tests/UI/Components/ComponentsModal.test.js.map +1 -1
  175. package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js +2 -0
  176. package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js.map +1 -1
  177. package/build/dist/Types/CookieName.js +1 -0
  178. package/build/dist/Types/CookieName.js.map +1 -1
  179. package/build/dist/Types/Dashboard/Chart/ChartType.js +5 -0
  180. package/build/dist/Types/Dashboard/Chart/ChartType.js.map +1 -1
  181. package/build/dist/Types/Dashboard/DashboardComponentType.js +4 -0
  182. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  183. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  184. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  185. package/build/dist/Types/Dashboard/DashboardComponents/DashboardGaugeComponent.js +2 -0
  186. package/build/dist/Types/Dashboard/DashboardComponents/DashboardGaugeComponent.js.map +1 -0
  187. package/build/dist/Types/Dashboard/DashboardComponents/DashboardLogStreamComponent.js +2 -0
  188. package/build/dist/Types/Dashboard/DashboardComponents/DashboardLogStreamComponent.js.map +1 -0
  189. package/build/dist/Types/Dashboard/DashboardComponents/DashboardTableComponent.js +2 -0
  190. package/build/dist/Types/Dashboard/DashboardComponents/DashboardTableComponent.js.map +1 -0
  191. package/build/dist/Types/Dashboard/DashboardComponents/DashboardTraceListComponent.js +2 -0
  192. package/build/dist/Types/Dashboard/DashboardComponents/DashboardTraceListComponent.js.map +1 -0
  193. package/build/dist/Types/Dashboard/DashboardTemplates.js +853 -0
  194. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -0
  195. package/build/dist/Types/Dashboard/DashboardVariable.js +7 -0
  196. package/build/dist/Types/Dashboard/DashboardVariable.js.map +1 -0
  197. package/build/dist/Types/Dashboard/DashboardViewConfig.js +50 -1
  198. package/build/dist/Types/Dashboard/DashboardViewConfig.js.map +1 -1
  199. package/build/dist/Types/Dashboard/MasterPassword.js +5 -0
  200. package/build/dist/Types/Dashboard/MasterPassword.js.map +1 -0
  201. package/build/dist/Types/Icon/IconProp.js +1 -0
  202. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  203. package/build/dist/Types/Incident/IncidentMetricType.js +3 -0
  204. package/build/dist/Types/Incident/IncidentMetricType.js.map +1 -1
  205. package/build/dist/Types/MeteredPlan/ProductType.js +1 -0
  206. package/build/dist/Types/MeteredPlan/ProductType.js.map +1 -1
  207. package/build/dist/Types/Metrics/MetricQueryConfigData.js +1 -0
  208. package/build/dist/Types/Metrics/MetricQueryConfigData.js.map +1 -1
  209. package/build/dist/Types/Monitor/CriteriaFilter.js +2 -0
  210. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  211. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +58 -7
  212. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
  213. package/build/dist/Types/Monitor/MonitorStep.js +15 -0
  214. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  215. package/build/dist/Types/Monitor/MonitorStepProfileMonitor.js +59 -0
  216. package/build/dist/Types/Monitor/MonitorStepProfileMonitor.js.map +1 -0
  217. package/build/dist/Types/Monitor/MonitorType.js +10 -0
  218. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  219. package/build/dist/Types/Monitor/ProfileMonitor/ProfileMonitorResponse.js +2 -0
  220. package/build/dist/Types/Monitor/ProfileMonitor/ProfileMonitorResponse.js.map +1 -0
  221. package/build/dist/Types/Permission.js +75 -0
  222. package/build/dist/Types/Permission.js.map +1 -1
  223. package/build/dist/Types/Telemetry/TelemetryType.js +1 -0
  224. package/build/dist/Types/Telemetry/TelemetryType.js.map +1 -1
  225. package/build/dist/Types/Workspace/NotificationSummary/WorkspaceNotificationSummaryItem.js +1 -0
  226. package/build/dist/Types/Workspace/NotificationSummary/WorkspaceNotificationSummaryItem.js.map +1 -1
  227. package/build/dist/UI/Components/Button/Button.js +1 -1
  228. package/build/dist/UI/Components/Button/Button.js.map +1 -1
  229. package/build/dist/UI/Components/Card/Card.js +4 -4
  230. package/build/dist/UI/Components/Card/Card.js.map +1 -1
  231. package/build/dist/UI/Components/Charts/Area/AreaChart.js +1 -1
  232. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  233. package/build/dist/UI/Components/Charts/Bar/BarChart.js +1 -1
  234. package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
  235. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +5 -2
  236. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
  237. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +5 -2
  238. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
  239. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +6 -3
  240. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
  241. package/build/dist/UI/Components/Charts/Line/LineChart.js +1 -1
  242. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  243. package/build/dist/UI/Components/Charts/Types/ReferenceLineProps.js +2 -0
  244. package/build/dist/UI/Components/Charts/Types/ReferenceLineProps.js.map +1 -0
  245. package/build/dist/UI/Components/Icon/Icon.js +11 -0
  246. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  247. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +12 -9
  248. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  249. package/build/dist/UI/Components/MoreMenu/MoreMenu.js +8 -2
  250. package/build/dist/UI/Components/MoreMenu/MoreMenu.js.map +1 -1
  251. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js +4 -4
  252. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js.map +1 -1
  253. package/build/dist/UI/Components/Workflow/Component.js +311 -143
  254. package/build/dist/UI/Components/Workflow/Component.js.map +1 -1
  255. package/build/dist/UI/Components/Workflow/ComponentPortViewer.js +44 -18
  256. package/build/dist/UI/Components/Workflow/ComponentPortViewer.js.map +1 -1
  257. package/build/dist/UI/Components/Workflow/ComponentReturnValueViewer.js +48 -22
  258. package/build/dist/UI/Components/Workflow/ComponentReturnValueViewer.js.map +1 -1
  259. package/build/dist/UI/Components/Workflow/ComponentSettingsModal.js +127 -21
  260. package/build/dist/UI/Components/Workflow/ComponentSettingsModal.js.map +1 -1
  261. package/build/dist/UI/Components/Workflow/ComponentsModal.js +107 -52
  262. package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
  263. package/build/dist/UI/Components/Workflow/Workflow.js +87 -12
  264. package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
  265. package/build/dist/UI/Config.js +3 -1
  266. package/build/dist/UI/Config.js.map +1 -1
  267. package/build/dist/Utils/Dashboard/Components/DashboardChartComponent.js +50 -21
  268. package/build/dist/Utils/Dashboard/Components/DashboardChartComponent.js.map +1 -1
  269. package/build/dist/Utils/Dashboard/Components/DashboardGaugeComponent.js +104 -0
  270. package/build/dist/Utils/Dashboard/Components/DashboardGaugeComponent.js.map +1 -0
  271. package/build/dist/Utils/Dashboard/Components/DashboardLogStreamComponent.js +91 -0
  272. package/build/dist/Utils/Dashboard/Components/DashboardLogStreamComponent.js.map +1 -0
  273. package/build/dist/Utils/Dashboard/Components/DashboardTableComponent.js +70 -0
  274. package/build/dist/Utils/Dashboard/Components/DashboardTableComponent.js.map +1 -0
  275. package/build/dist/Utils/Dashboard/Components/DashboardTextComponent.js +28 -7
  276. package/build/dist/Utils/Dashboard/Components/DashboardTextComponent.js.map +1 -1
  277. package/build/dist/Utils/Dashboard/Components/DashboardTraceListComponent.js +70 -0
  278. package/build/dist/Utils/Dashboard/Components/DashboardTraceListComponent.js.map +1 -0
  279. package/build/dist/Utils/Dashboard/Components/DashboardValueComponent.js +34 -3
  280. package/build/dist/Utils/Dashboard/Components/DashboardValueComponent.js.map +1 -1
  281. package/build/dist/Utils/Dashboard/Components/Index.js +16 -0
  282. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  283. package/build/dist/Utils/ValueFormatter.js +132 -0
  284. package/build/dist/Utils/ValueFormatter.js.map +1 -0
  285. package/package.json +1 -1
@@ -76,6 +76,12 @@ enum Permission {
76
76
  ReadDashboard = "ReadDashboard",
77
77
  EditDashboard = "EditDashboard",
78
78
 
79
+ // Dashboard Domains
80
+ CreateDashboardDomain = "CreateDashboardDomain",
81
+ DeleteDashboardDomain = "DeleteDashboardDomain",
82
+ EditDashboardDomain = "EditDashboardDomain",
83
+ ReadDashboardDomain = "ReadDashboardDomain",
84
+
79
85
  // Logs
80
86
  CreateTelemetryServiceLog = "CreateTelemetryServiceLog",
81
87
  DeleteTelemetryServiceLog = "DeleteTelemetryServiceLog",
@@ -124,6 +130,12 @@ enum Permission {
124
130
  EditTelemetryServiceMetrics = "EditTelemetryServiceMetrics",
125
131
  ReadTelemetryServiceMetrics = "ReadTelemetryServiceMetrics",
126
132
 
133
+ // Profiles
134
+ CreateTelemetryServiceProfiles = "CreateTelemetryServiceProfiles",
135
+ DeleteTelemetryServiceProfiles = "DeleteTelemetryServiceProfiles",
136
+ EditTelemetryServiceProfiles = "EditTelemetryServiceProfiles",
137
+ ReadTelemetryServiceProfiles = "ReadTelemetryServiceProfiles",
138
+
127
139
  // Billing Permissions (Owner Permission)
128
140
  ManageProjectBilling = "ManageProjectBilling",
129
141
 
@@ -1215,6 +1227,44 @@ export class PermissionHelper {
1215
1227
  group: PermissionGroup.Settings,
1216
1228
  },
1217
1229
 
1230
+ // Dashboard Domain permissions.
1231
+ {
1232
+ permission: Permission.CreateDashboardDomain,
1233
+ title: "Create Dashboard Domain",
1234
+ description:
1235
+ "This permission can create Dashboard Domains of this project.",
1236
+ isAssignableToTenant: true,
1237
+ isAccessControlPermission: false,
1238
+ group: PermissionGroup.Settings,
1239
+ },
1240
+ {
1241
+ permission: Permission.DeleteDashboardDomain,
1242
+ title: "Delete Dashboard Domain",
1243
+ description:
1244
+ "This permission can delete Dashboard Domains of this project.",
1245
+ isAssignableToTenant: true,
1246
+ isAccessControlPermission: false,
1247
+ group: PermissionGroup.Settings,
1248
+ },
1249
+ {
1250
+ permission: Permission.EditDashboardDomain,
1251
+ title: "Edit Dashboard Domain",
1252
+ description:
1253
+ "This permission can edit Dashboard Domains of this project.",
1254
+ isAssignableToTenant: true,
1255
+ isAccessControlPermission: false,
1256
+ group: PermissionGroup.Settings,
1257
+ },
1258
+ {
1259
+ permission: Permission.ReadDashboardDomain,
1260
+ title: "Read Dashboard Domain",
1261
+ description:
1262
+ "This permission can read Dashboard Domains of this project.",
1263
+ isAssignableToTenant: true,
1264
+ isAccessControlPermission: false,
1265
+ group: PermissionGroup.Settings,
1266
+ },
1267
+
1218
1268
  // Table view permissions
1219
1269
 
1220
1270
  {
@@ -4701,6 +4751,43 @@ export class PermissionHelper {
4701
4751
  group: PermissionGroup.Telemetry,
4702
4752
  },
4703
4753
 
4754
+ {
4755
+ permission: Permission.CreateTelemetryServiceProfiles,
4756
+ title: "Create Telemetry Service Profiles",
4757
+ description:
4758
+ "This permission can create Telemetry Service Profiles this project.",
4759
+ isAssignableToTenant: true,
4760
+ isAccessControlPermission: false,
4761
+ group: PermissionGroup.Telemetry,
4762
+ },
4763
+ {
4764
+ permission: Permission.DeleteTelemetryServiceProfiles,
4765
+ title: "Delete Telemetry Service Profiles",
4766
+ description:
4767
+ "This permission can delete Telemetry Service Profiles of this project.",
4768
+ isAssignableToTenant: true,
4769
+ isAccessControlPermission: false,
4770
+ group: PermissionGroup.Telemetry,
4771
+ },
4772
+ {
4773
+ permission: Permission.EditTelemetryServiceProfiles,
4774
+ title: "Edit Telemetry Service Profiles",
4775
+ description:
4776
+ "This permission can edit Telemetry Service Profiles of this project.",
4777
+ isAssignableToTenant: true,
4778
+ isAccessControlPermission: false,
4779
+ group: PermissionGroup.Telemetry,
4780
+ },
4781
+ {
4782
+ permission: Permission.ReadTelemetryServiceProfiles,
4783
+ title: "Read Telemetry Service Profiles",
4784
+ description:
4785
+ "This permission can read Telemetry Service Profiles of this project.",
4786
+ isAssignableToTenant: true,
4787
+ isAccessControlPermission: false,
4788
+ group: PermissionGroup.Telemetry,
4789
+ },
4790
+
4704
4791
  {
4705
4792
  permission: Permission.CreateScheduledMaintenanceOwnerTeam,
4706
4793
  title: "Create Scheduled Maintenance Team Owner",
@@ -3,6 +3,7 @@ enum TelemetryType {
3
3
  Trace = "Trace",
4
4
  Log = "Log",
5
5
  Exception = "Exception",
6
+ Profile = "Profile",
6
7
  }
7
8
 
8
9
  export default TelemetryType;
@@ -1,4 +1,5 @@
1
1
  enum WorkspaceNotificationSummaryItem {
2
+ All = "All",
2
3
  TotalCount = "Total Count",
3
4
  ListWithLinks = "List with Links",
4
5
  WhoAcknowledged = "Who Acknowledged",
@@ -193,7 +193,7 @@ const Button: FunctionComponent<ComponentProps> = ({
193
193
  }
194
194
 
195
195
  if (buttonStyle === ButtonStyleType.ICON) {
196
- buttonStyleCssClass = `rounded-md bg-white text-gray-600 ${
196
+ buttonStyleCssClass = `rounded-md bg-transparent text-gray-600 ${
197
197
  disabled ? "hover:text-gray-900" : ""
198
198
  } focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2`;
199
199
  }
@@ -1,4 +1,4 @@
1
- import Button, { ButtonStyleType } from "../Button/Button";
1
+ import Button, { ButtonSize, ButtonStyleType } from "../Button/Button";
2
2
  import ShortcutKey from "../ShortcutKey/ShortcutKey";
3
3
  import IconProp from "../../../Types/Icon/IconProp";
4
4
  import React, { FunctionComponent, ReactElement } from "react";
@@ -12,6 +12,7 @@ export interface CardButtonSchema {
12
12
  isLoading?: undefined | boolean;
13
13
  className?: string | undefined;
14
14
  shortcutKey?: undefined | ShortcutKey;
15
+ buttonSize?: ButtonSize | undefined;
15
16
  }
16
17
 
17
18
  export interface ComponentProps {
@@ -59,21 +60,21 @@ const Card: FunctionComponent<ComponentProps> = (
59
60
  </div>
60
61
  {(props.rightElement ||
61
62
  (props.buttons && props.buttons.length > 0)) && (
62
- <div className="flex flex-col md:flex-row md:items-center md:w-fit mt-4 md:mt-0 md:ml-4 gap-2 md:gap-0 flex-shrink-0">
63
+ <div className="flex flex-col md:flex-row md:items-center md:w-fit mt-4 md:mt-0 md:ml-4 gap-2 md:gap-0 flex-shrink-0 items-center">
63
64
  {props.rightElement && (
64
65
  <div className="mb-2 md:mb-0 md:mr-3">
65
66
  {props.rightElement}
66
67
  </div>
67
68
  )}
68
69
  {props.buttons && props.buttons.length > 0 && (
69
- <div className="flex flex-wrap items-center gap-2">
70
+ <div className="flex flex-wrap items-center gap-1.5">
70
71
  {props.buttons.map(
71
72
  (
72
73
  button: CardButtonSchema | ReactElement,
73
74
  i: number,
74
75
  ) => {
75
76
  return (
76
- <div key={i}>
77
+ <div key={i} className="flex items-center">
77
78
  {React.isValidElement(button) ? button : null}
78
79
  {React.isValidElement(button) ? null : (
79
80
  <Button
@@ -82,6 +83,9 @@ const Card: FunctionComponent<ComponentProps> = (
82
83
  buttonStyle={
83
84
  (button as CardButtonSchema).buttonStyle
84
85
  }
86
+ buttonSize={
87
+ (button as CardButtonSchema).buttonSize
88
+ }
85
89
  className={
86
90
  (button as CardButtonSchema).className
87
91
  }
@@ -6,6 +6,7 @@ import YAxis from "../Types/YAxis/YAxis";
6
6
  import ChartCurve from "../Types/ChartCurve";
7
7
  import ChartDataPoint from "../ChartLibrary/Types/ChartDataPoint";
8
8
  import DataPointUtil from "../Utils/DataPoint";
9
+ import ChartReferenceLineProps from "../Types/ReferenceLineProps";
9
10
 
10
11
  export interface ComponentProps {
11
12
  data: Array<SeriesPoint>;
@@ -14,6 +15,7 @@ export interface ComponentProps {
14
15
  curve: ChartCurve;
15
16
  sync: boolean;
16
17
  heightInPx?: number | undefined;
18
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
17
19
  }
18
20
 
19
21
  export interface AreaInternalProps extends ComponentProps {
@@ -74,6 +76,8 @@ const AreaChartElement: FunctionComponent<AreaInternalProps> = (
74
76
  curve={props.curve || ChartCurve.MONOTONE}
75
77
  syncid={props.sync ? props.syncid : undefined}
76
78
  yAxisWidth={60}
79
+ onValueChange={() => {}}
80
+ referenceLines={props.referenceLines}
77
81
  />
78
82
  );
79
83
  };
@@ -5,6 +5,7 @@ import { XAxis } from "../Types/XAxis/XAxis";
5
5
  import YAxis from "../Types/YAxis/YAxis";
6
6
  import ChartDataPoint from "../ChartLibrary/Types/ChartDataPoint";
7
7
  import DataPointUtil from "../Utils/DataPoint";
8
+ import ChartReferenceLineProps from "../Types/ReferenceLineProps";
8
9
 
9
10
  export interface ComponentProps {
10
11
  data: Array<SeriesPoint>;
@@ -12,6 +13,7 @@ export interface ComponentProps {
12
13
  yAxis: YAxis;
13
14
  sync: boolean;
14
15
  heightInPx?: number | undefined;
16
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
15
17
  }
16
18
 
17
19
  export interface BarInternalProps extends ComponentProps {
@@ -69,6 +71,8 @@ const BarChartElement: FunctionComponent<BarInternalProps> = (
69
71
  showTooltip={true}
70
72
  yAxisWidth={60}
71
73
  syncid={props.sync ? props.syncid : undefined}
74
+ onValueChange={() => {}}
75
+ referenceLines={props.referenceLines}
72
76
  />
73
77
  );
74
78
  };
@@ -11,11 +11,13 @@ import {
11
11
  Dot,
12
12
  Label,
13
13
  Legend as RechartsLegend,
14
+ ReferenceLine,
14
15
  ResponsiveContainer,
15
16
  Tooltip,
16
17
  XAxis,
17
18
  YAxis,
18
19
  } from "recharts";
20
+ import ChartReferenceLineProps from "../../Types/ReferenceLineProps";
19
21
  import { AxisDomain } from "recharts/types/util/types";
20
22
 
21
23
  import { useOnWindowResize } from "../Utils/UseWindowOnResize";
@@ -554,6 +556,7 @@ interface AreaChartProps extends React.HTMLAttributes<HTMLDivElement> {
554
556
  tooltipCallback?: (tooltipCallbackContent: TooltipProps) => void;
555
557
  customTooltip?: React.ComponentType<TooltipProps>;
556
558
  syncid?: string | undefined;
559
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
557
560
  }
558
561
 
559
562
  const AreaChart: React.ForwardRefExoticComponent<
@@ -974,6 +977,29 @@ const AreaChart: React.ForwardRefExoticComponent<
974
977
  />
975
978
  );
976
979
  })}
980
+ {props.referenceLines?.map(
981
+ (refLine: ChartReferenceLineProps, refIndex: number) => {
982
+ return (
983
+ <ReferenceLine
984
+ key={`ref-${refIndex}`}
985
+ y={refLine.value}
986
+ stroke={refLine.color}
987
+ strokeDasharray={refLine.strokeDasharray || "4 4"}
988
+ strokeWidth={1.5}
989
+ >
990
+ {refLine.label && (
991
+ <Label
992
+ value={refLine.label}
993
+ position="insideTopRight"
994
+ fill={refLine.color}
995
+ fontSize={11}
996
+ fontWeight={500}
997
+ />
998
+ )}
999
+ </ReferenceLine>
1000
+ );
1001
+ },
1002
+ )}
977
1003
  </RechartsAreaChart>
978
1004
  </ResponsiveContainer>
979
1005
  </div>
@@ -11,11 +11,13 @@ import {
11
11
  Label,
12
12
  BarChart as RechartsBarChart,
13
13
  Legend as RechartsLegend,
14
+ ReferenceLine,
14
15
  ResponsiveContainer,
15
16
  Tooltip,
16
17
  XAxis,
17
18
  YAxis,
18
19
  } from "recharts";
20
+ import ChartReferenceLineProps from "../../Types/ReferenceLineProps";
19
21
  import type { AxisDomain } from "recharts/types/util/types";
20
22
 
21
23
  import {
@@ -646,6 +648,7 @@ interface BarChartProps extends React.HTMLAttributes<HTMLDivElement> {
646
648
  tooltipCallback?: (tooltipCallbackContent: TooltipProps) => void;
647
649
  customTooltip?: React.ComponentType<TooltipProps>;
648
650
  syncid?: string | undefined;
651
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
649
652
  }
650
653
 
651
654
  const BarChart: React.ForwardRefExoticComponent<
@@ -1010,6 +1013,29 @@ const BarChart: React.ForwardRefExoticComponent<
1010
1013
  />
1011
1014
  );
1012
1015
  })}
1016
+ {props.referenceLines?.map(
1017
+ (refLine: ChartReferenceLineProps, refIndex: number) => {
1018
+ return (
1019
+ <ReferenceLine
1020
+ key={`ref-${refIndex}`}
1021
+ y={refLine.value}
1022
+ stroke={refLine.color}
1023
+ strokeDasharray={refLine.strokeDasharray || "4 4"}
1024
+ strokeWidth={1.5}
1025
+ >
1026
+ {refLine.label && (
1027
+ <Label
1028
+ value={refLine.label}
1029
+ position="insideTopRight"
1030
+ fill={refLine.color}
1031
+ fontSize={11}
1032
+ fontWeight={500}
1033
+ />
1034
+ )}
1035
+ </ReferenceLine>
1036
+ );
1037
+ },
1038
+ )}
1013
1039
  </RechartsBarChart>
1014
1040
  </ResponsiveContainer>
1015
1041
  </div>
@@ -12,11 +12,13 @@ import {
12
12
  Line,
13
13
  Legend as RechartsLegend,
14
14
  LineChart as RechartsLineChart,
15
+ ReferenceLine,
15
16
  ResponsiveContainer,
16
17
  Tooltip,
17
18
  XAxis,
18
19
  YAxis,
19
20
  } from "recharts";
21
+ import ChartReferenceLineProps from "../../Types/ReferenceLineProps";
20
22
  import { AxisDomain } from "recharts/types/util/types";
21
23
 
22
24
  import { useOnWindowResize } from "../Utils/UseWindowOnResize";
@@ -571,6 +573,7 @@ interface LineChartProps extends React.HTMLAttributes<HTMLDivElement> {
571
573
  tooltipCallback?: (tooltipCallbackContent: TooltipProps) => void;
572
574
  customTooltip?: React.ComponentType<TooltipProps>;
573
575
  syncid?: string | undefined;
576
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
574
577
  }
575
578
 
576
579
  const LineChart: React.ForwardRefExoticComponent<
@@ -992,6 +995,29 @@ const LineChart: React.ForwardRefExoticComponent<
992
995
  );
993
996
  })
994
997
  : null}
998
+ {props.referenceLines?.map(
999
+ (refLine: ChartReferenceLineProps, refIndex: number) => {
1000
+ return (
1001
+ <ReferenceLine
1002
+ key={`ref-${refIndex}`}
1003
+ y={refLine.value}
1004
+ stroke={refLine.color}
1005
+ strokeDasharray={refLine.strokeDasharray || "4 4"}
1006
+ strokeWidth={1.5}
1007
+ >
1008
+ {refLine.label && (
1009
+ <Label
1010
+ value={refLine.label}
1011
+ position="insideTopRight"
1012
+ fill={refLine.color}
1013
+ fontSize={11}
1014
+ fontWeight={500}
1015
+ />
1016
+ )}
1017
+ </ReferenceLine>
1018
+ );
1019
+ },
1020
+ )}
995
1021
  </RechartsLineChart>
996
1022
  </ResponsiveContainer>
997
1023
  </div>
@@ -6,6 +6,7 @@ import YAxis from "../Types/YAxis/YAxis";
6
6
  import ChartCurve from "../Types/ChartCurve";
7
7
  import ChartDataPoint from "../ChartLibrary/Types/ChartDataPoint";
8
8
  import DataPointUtil from "../Utils/DataPoint";
9
+ import ChartReferenceLineProps from "../Types/ReferenceLineProps";
9
10
 
10
11
  export interface ComponentProps {
11
12
  data: Array<SeriesPoint>;
@@ -14,6 +15,7 @@ export interface ComponentProps {
14
15
  curve: ChartCurve;
15
16
  sync: boolean;
16
17
  heightInPx?: number | undefined;
18
+ referenceLines?: Array<ChartReferenceLineProps> | undefined;
17
19
  }
18
20
 
19
21
  export interface LineInternalProps extends ComponentProps {
@@ -73,6 +75,8 @@ const LineChartElement: FunctionComponent<LineInternalProps> = (
73
75
  curve={props.curve}
74
76
  syncid={props.sync ? props.syncid : undefined}
75
77
  yAxisWidth={60}
78
+ onValueChange={() => {}}
79
+ referenceLines={props.referenceLines}
76
80
  />
77
81
  );
78
82
  };
@@ -0,0 +1,6 @@
1
+ export default interface ChartReferenceLineProps {
2
+ value: number;
3
+ label?: string | undefined;
4
+ color: string; // CSS color, e.g. "#f59e0b" or "red"
5
+ strokeDasharray?: string | undefined; // e.g. "4 4" for dashed
6
+ }
@@ -2784,6 +2784,39 @@ const Icon: FunctionComponent<ComponentProps> = ({
2784
2784
  {spokes}
2785
2785
  </>,
2786
2786
  );
2787
+ } else if (icon === IconProp.Gauge) {
2788
+ // Gauge/speedometer icon — semicircular meter with needle
2789
+ return getSvgWrapper(
2790
+ <>
2791
+ <path
2792
+ strokeLinecap="round"
2793
+ strokeLinejoin="round"
2794
+ d="M12 21a9 9 0 1 1 0-18 9 9 0 0 1 0 18Z"
2795
+ />
2796
+ <path
2797
+ strokeLinecap="round"
2798
+ strokeLinejoin="round"
2799
+ d="M12 21c-4.97 0-9-4.03-9-9"
2800
+ />
2801
+ <path
2802
+ strokeLinecap="round"
2803
+ strokeLinejoin="round"
2804
+ d="M5.636 7.636l1.414 1.414"
2805
+ />
2806
+ <path strokeLinecap="round" strokeLinejoin="round" d="M12 5v2" />
2807
+ <path
2808
+ strokeLinecap="round"
2809
+ strokeLinejoin="round"
2810
+ d="M18.364 7.636l-1.414 1.414"
2811
+ />
2812
+ <path
2813
+ strokeLinecap="round"
2814
+ strokeLinejoin="round"
2815
+ d="M12 12l-3.5-3.5"
2816
+ />
2817
+ <circle cx="12" cy="12" r="1.5" />
2818
+ </>,
2819
+ );
2787
2820
  }
2788
2821
 
2789
2822
  return <></>;
@@ -19,7 +19,7 @@ import {
19
19
  BulkActionFailed,
20
20
  BulkActionOnClickProps,
21
21
  } from "../BulkUpdate/BulkUpdateForm";
22
- import { ButtonStyleType } from "../Button/Button";
22
+ import { ButtonSize, ButtonStyleType } from "../Button/Button";
23
23
  import Card, {
24
24
  CardButtonSchema,
25
25
  ComponentProps as CardComponentProps,
@@ -1045,7 +1045,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1045
1045
  headerbuttons.push({
1046
1046
  title: "View Documentation",
1047
1047
  icon: IconProp.Book,
1048
- buttonStyle: ButtonStyleType.OUTLINE,
1048
+ buttonStyle: ButtonStyleType.HOVER_PRIMARY_OUTLINE,
1049
+ buttonSize: ButtonSize.Small,
1049
1050
  className: "hidden md:flex",
1050
1051
  onClick: () => {
1051
1052
  Navigation.navigate(props.documentationLink!, {
@@ -1061,7 +1062,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1061
1062
  title: "",
1062
1063
  icon: IconProp.Help,
1063
1064
  buttonStyle: ButtonStyleType.ICON,
1064
- className: "py-0 pr-0 pl-1 mt-1",
1065
+ buttonSize: ButtonSize.Small,
1066
+ className: "",
1065
1067
  onClick: () => {
1066
1068
  setShowHelpModal(true);
1067
1069
  },
@@ -1073,7 +1075,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1073
1075
  headerbuttons.push({
1074
1076
  title: "Watch Demo",
1075
1077
  icon: IconProp.Play,
1076
- buttonStyle: ButtonStyleType.OUTLINE,
1078
+ buttonStyle: ButtonStyleType.HOVER_PRIMARY_OUTLINE,
1079
+ buttonSize: ButtonSize.Small,
1077
1080
  className: "hidden md:flex",
1078
1081
  onClick: () => {
1079
1082
  Navigation.navigate(props.videoLink!, {
@@ -1110,7 +1113,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1110
1113
  props.singularName || model.singularName
1111
1114
  }`,
1112
1115
  buttonStyle: ButtonStyleType.NORMAL,
1113
- className: showFilterButton || props.showRefreshButton ? "mr-1" : "",
1116
+ buttonSize: ButtonSize.Normal,
1117
+ className: "",
1114
1118
  onClick: () => {
1115
1119
  setModalType(ModalType.Create);
1116
1120
  setShowModal(true);
@@ -1122,10 +1126,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1122
1126
  if (props.showRefreshButton) {
1123
1127
  headerbuttons.push({
1124
1128
  ...getRefreshButton(),
1125
- className: showFilterButton
1126
- ? "p-1 px-1 pr-0 pl-0 py-0 mt-1"
1127
- : "py-0 pr-0 pl-1 mt-1",
1128
-
1129
+ buttonSize: ButtonSize.Small,
1130
+ className: "",
1129
1131
  onClick: async () => {
1130
1132
  await fetchItems();
1131
1133
  },
@@ -1137,7 +1139,8 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
1137
1139
  headerbuttons.push({
1138
1140
  title: "",
1139
1141
  buttonStyle: ButtonStyleType.ICON,
1140
- className: "py-0 pr-0 pl-1 mt-1",
1142
+ buttonSize: ButtonSize.Small,
1143
+ className: "",
1141
1144
  onClick: () => {
1142
1145
  setQuery({});
1143
1146
  setShowFilterModal(true);
@@ -123,14 +123,27 @@ const MoreMenu: React.ForwardRefExoticComponent<
123
123
  )}
124
124
 
125
125
  {props.elementToBeShownInsteadOfButton && (
126
- <div>{props.elementToBeShownInsteadOfButton}</div>
126
+ <div
127
+ onClick={() => {
128
+ setIsComponentVisible(!isDropdownVisible);
129
+ }}
130
+ role="button"
131
+ tabIndex={0}
132
+ onKeyDown={(e: React.KeyboardEvent) => {
133
+ if (e.key === "Enter" || e.key === " ") {
134
+ setIsComponentVisible(!isDropdownVisible);
135
+ }
136
+ }}
137
+ >
138
+ {props.elementToBeShownInsteadOfButton}
139
+ </div>
127
140
  )}
128
141
 
129
142
  {isComponentVisible && (
130
143
  <div
131
144
  ref={ref}
132
145
  id={menuId}
133
- className="absolute right-0 z-10 mt-2 w-56 origin-top-right divide-y divide-gray-100 rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none"
146
+ className="absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-lg bg-white shadow-xl ring-1 ring-gray-200 focus:outline-none py-1"
134
147
  role="menu"
135
148
  aria-orientation="vertical"
136
149
  aria-labelledby={buttonId}
@@ -18,7 +18,7 @@ const MoreMenuItem: FunctionComponent<ComponentProps> = (
18
18
  return (
19
19
  <a
20
20
  key={props.key || Math.random()}
21
- className={`cursor-pointer group flex items-center px-4 py-2 text-sm text-gray-600 hover:text-gray-700 hover:bg-gray-50 ${props.className}`}
21
+ className={`cursor-pointer group flex items-center px-3 py-2 mx-1 rounded-md text-sm text-gray-700 hover:text-gray-900 hover:bg-indigo-50 transition-colors duration-100 ${props.className}`}
22
22
  role="menuitem"
23
23
  onClick={() => {
24
24
  props.onClick();
@@ -27,11 +27,11 @@ const MoreMenuItem: FunctionComponent<ComponentProps> = (
27
27
  {props.icon && (
28
28
  <Icon
29
29
  icon={props.icon}
30
- className={`mr-3 h-5 w-5 text-gray-400 text-gray-700 hover:text-gray-900 ${props.iconClassName}`}
30
+ className={`mr-2.5 h-4 w-4 text-gray-400 group-hover:text-indigo-500 transition-colors duration-100 ${props.iconClassName}`}
31
31
  />
32
32
  )}
33
- <div className="flex w-full justify-between">
34
- <div>{props.text}</div>
33
+ <div className="flex w-full justify-between items-center">
34
+ <div className="font-medium">{props.text}</div>
35
35
  <div>{props.rightElement}</div>
36
36
  </div>
37
37
  </a>