ydb-embedded-ui 11.3.0 → 11.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/dist/components/DoughnutMetrics/DoughnutMetrics.d.ts +3 -1
  2. package/dist/components/DoughnutMetrics/DoughnutMetrics.js +16 -20
  3. package/dist/components/DoughnutMetrics/DoughnutMetrics.js.map +1 -1
  4. package/dist/components/DoughnutMetrics/DoughnutMetrics.scss +25 -28
  5. package/dist/components/DoughnutMetrics/SvgCircle.d.ts +14 -0
  6. package/dist/components/DoughnutMetrics/SvgCircle.js +5 -0
  7. package/dist/components/DoughnutMetrics/SvgCircle.js.map +1 -0
  8. package/dist/components/DoughnutMetrics/utils.d.ts +36 -0
  9. package/dist/components/DoughnutMetrics/utils.js +40 -0
  10. package/dist/components/DoughnutMetrics/utils.js.map +1 -0
  11. package/dist/components/EntityStatus/EntityStatus.js +2 -1
  12. package/dist/components/EntityStatus/EntityStatus.js.map +1 -1
  13. package/dist/components/EntityStatus/EntityStatus.scss +0 -4
  14. package/dist/components/FixedHeightQuery/FixedHeightQuery.d.ts +3 -1
  15. package/dist/components/FixedHeightQuery/FixedHeightQuery.js +5 -3
  16. package/dist/components/FixedHeightQuery/FixedHeightQuery.js.map +1 -1
  17. package/dist/components/FixedHeightQuery/FixedHeightQuery.scss +5 -1
  18. package/dist/components/HoverPopup/HoverPopup.d.ts +0 -1
  19. package/dist/components/HoverPopup/HoverPopup.js +2 -4
  20. package/dist/components/HoverPopup/HoverPopup.js.map +1 -1
  21. package/dist/components/InfoViewer/InfoViewer.d.ts +2 -1
  22. package/dist/components/InfoViewer/InfoViewer.js +2 -2
  23. package/dist/components/InfoViewer/InfoViewer.js.map +1 -1
  24. package/dist/components/InfoViewer/InfoViewer.scss +20 -0
  25. package/dist/components/MemoryViewer/MemoryViewer.d.ts +1 -1
  26. package/dist/components/MemoryViewer/MemoryViewer.js +3 -3
  27. package/dist/components/MemoryViewer/MemoryViewer.js.map +1 -1
  28. package/dist/components/MemoryViewer/MemoryViewer.scss +5 -13
  29. package/dist/components/MemoryViewer/i18n/en.json +2 -1
  30. package/dist/components/MemoryViewer/i18n/index.d.ts +1 -1
  31. package/dist/components/MemoryViewer/utils.d.ts +3 -3
  32. package/dist/components/MemoryViewer/utils.js +12 -1
  33. package/dist/components/MemoryViewer/utils.js.map +1 -1
  34. package/dist/components/ProgressViewer/ProgressViewer.d.ts +1 -1
  35. package/dist/components/ProgressViewer/ProgressViewer.js +2 -9
  36. package/dist/components/ProgressViewer/ProgressViewer.js.map +1 -1
  37. package/dist/components/ProgressWrapper/ProgressContainer.d.ts +2 -0
  38. package/dist/components/ProgressWrapper/ProgressContainer.js +8 -0
  39. package/dist/components/ProgressWrapper/ProgressContainer.js.map +1 -0
  40. package/dist/components/ProgressWrapper/ProgressWrapper.d.ts +2 -0
  41. package/dist/components/ProgressWrapper/ProgressWrapper.js +10 -0
  42. package/dist/components/ProgressWrapper/ProgressWrapper.js.map +1 -0
  43. package/dist/components/ProgressWrapper/SingleProgress.d.ts +2 -0
  44. package/dist/components/ProgressWrapper/SingleProgress.js +24 -0
  45. package/dist/components/ProgressWrapper/SingleProgress.js.map +1 -0
  46. package/dist/components/ProgressWrapper/StackProgress.d.ts +2 -0
  47. package/dist/components/ProgressWrapper/StackProgress.js +39 -0
  48. package/dist/components/ProgressWrapper/StackProgress.js.map +1 -0
  49. package/dist/components/ProgressWrapper/i18n/en.json +4 -0
  50. package/dist/components/ProgressWrapper/i18n/index.d.ts +2 -0
  51. package/dist/components/ProgressWrapper/i18n/index.js +8 -0
  52. package/dist/components/ProgressWrapper/i18n/index.js.map +1 -0
  53. package/dist/components/ProgressWrapper/index.d.ts +6 -0
  54. package/dist/components/ProgressWrapper/index.js +9 -0
  55. package/dist/components/ProgressWrapper/index.js.map +1 -0
  56. package/dist/components/ProgressWrapper/progressUtils.d.ts +13 -0
  57. package/dist/components/ProgressWrapper/progressUtils.js +35 -0
  58. package/dist/components/ProgressWrapper/progressUtils.js.map +1 -0
  59. package/dist/components/ProgressWrapper/types.d.ts +29 -0
  60. package/dist/components/ProgressWrapper/types.js +2 -0
  61. package/dist/components/ProgressWrapper/types.js.map +1 -0
  62. package/dist/components/QueriesActivityBar/QueriesActivityAlert.d.ts +8 -0
  63. package/dist/components/QueriesActivityBar/QueriesActivityAlert.js +26 -0
  64. package/dist/components/QueriesActivityBar/QueriesActivityAlert.js.map +1 -0
  65. package/dist/components/QueriesActivityBar/QueriesActivityAlert.scss +25 -0
  66. package/dist/components/QueriesActivityBar/QueriesActivityBar.js +16 -96
  67. package/dist/components/QueriesActivityBar/QueriesActivityBar.js.map +1 -1
  68. package/dist/components/QueriesActivityBar/QueriesActivityBar.scss +2 -48
  69. package/dist/components/QueriesActivityBar/QueriesActivityCharts.js +5 -2
  70. package/dist/components/QueriesActivityBar/QueriesActivityCharts.js.map +1 -1
  71. package/dist/components/QueriesActivityBar/QueriesActivityExpandable.d.ts +21 -0
  72. package/dist/components/QueriesActivityBar/QueriesActivityExpandable.js +34 -0
  73. package/dist/components/QueriesActivityBar/QueriesActivityExpandable.js.map +1 -0
  74. package/dist/components/QueriesActivityBar/QueriesActivitySkeleton.d.ts +2 -0
  75. package/dist/components/QueriesActivityBar/QueriesActivitySkeleton.js +9 -0
  76. package/dist/components/QueriesActivityBar/QueriesActivitySkeleton.js.map +1 -0
  77. package/dist/components/QueriesActivityBar/QueriesActivitySkeleton.scss +6 -0
  78. package/dist/components/QueriesActivityBar/useQueriesActivityData.d.ts +11 -0
  79. package/dist/components/QueriesActivityBar/useQueriesActivityData.js +71 -0
  80. package/dist/components/QueriesActivityBar/useQueriesActivityData.js.map +1 -0
  81. package/dist/components/SeeAllButton/SeeAllButton.d.ts +7 -0
  82. package/dist/components/SeeAllButton/SeeAllButton.js +9 -0
  83. package/dist/components/SeeAllButton/SeeAllButton.js.map +1 -0
  84. package/dist/components/SeeAllButton/i18n/en.json +3 -0
  85. package/dist/components/SeeAllButton/i18n/index.d.ts +2 -0
  86. package/dist/components/SeeAllButton/i18n/index.js +5 -0
  87. package/dist/components/SeeAllButton/i18n/index.js.map +1 -0
  88. package/dist/components/ShardsTable/columns.js +1 -1
  89. package/dist/components/ShardsTable/columns.js.map +1 -1
  90. package/dist/components/SpeedMultiMeter/SpeedMultiMeter.js +2 -1
  91. package/dist/components/SpeedMultiMeter/SpeedMultiMeter.js.map +1 -1
  92. package/dist/components/SpeedMultiMeter/SpeedMultiMeter.scss +0 -3
  93. package/dist/components/SyntaxHighlighter/YDBSyntaxHighlighter.d.ts +2 -0
  94. package/dist/components/SyntaxHighlighter/YDBSyntaxHighlighter.js +4 -9
  95. package/dist/components/SyntaxHighlighter/YDBSyntaxHighlighter.js.map +1 -1
  96. package/dist/components/SyntaxHighlighter/themes.d.ts +6 -6
  97. package/dist/components/SyntaxHighlighter/themes.js +8 -0
  98. package/dist/components/SyntaxHighlighter/themes.js.map +1 -1
  99. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.d.ts +6 -0
  100. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js +6 -0
  101. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js.map +1 -0
  102. package/dist/components/VersionsBar/VersionsBar.d.ts +7 -0
  103. package/dist/components/VersionsBar/VersionsBar.js +83 -0
  104. package/dist/components/VersionsBar/VersionsBar.js.map +1 -0
  105. package/dist/components/VersionsBar/VersionsBar.scss +36 -0
  106. package/dist/components/VersionsBar/i18n/en.json +8 -0
  107. package/dist/components/VersionsBar/i18n/index.d.ts +2 -0
  108. package/dist/components/VersionsBar/i18n/index.js +5 -0
  109. package/dist/components/VersionsBar/i18n/index.js.map +1 -0
  110. package/dist/components/nodesColumns/columns.js +3 -3
  111. package/dist/components/nodesColumns/columns.js.map +1 -1
  112. package/dist/containers/App/App.scss +4 -0
  113. package/dist/containers/AsideNavigation/AsideNavigation.scss +1 -1
  114. package/dist/containers/AsideNavigation/hooks/useHotkeysPanel.js +0 -8
  115. package/dist/containers/AsideNavigation/hooks/useHotkeysPanel.js.map +1 -1
  116. package/dist/containers/AsideNavigation/i18n/en.json +0 -2
  117. package/dist/containers/AsideNavigation/i18n/index.d.ts +1 -1
  118. package/dist/containers/Cluster/VersionsBar/VersionsBar.d.ts +1 -1
  119. package/dist/containers/Cluster/VersionsBar/VersionsBar.js.map +1 -1
  120. package/dist/containers/Clusters/Clusters.scss +0 -4
  121. package/dist/containers/Clusters/columns.js +3 -11
  122. package/dist/containers/Clusters/columns.js.map +1 -1
  123. package/dist/containers/Clusters/i18n/en.json +4 -1
  124. package/dist/containers/Node/Node.js +4 -0
  125. package/dist/containers/Node/Node.js.map +1 -1
  126. package/dist/containers/Node/NodePages.d.ts +5 -0
  127. package/dist/containers/Node/NodePages.js +7 -0
  128. package/dist/containers/Node/NodePages.js.map +1 -1
  129. package/dist/containers/Node/Threads/CpuUsageBar/CpuUsageBar.d.ts +8 -0
  130. package/dist/containers/Node/Threads/CpuUsageBar/CpuUsageBar.js +14 -0
  131. package/dist/containers/Node/Threads/CpuUsageBar/CpuUsageBar.js.map +1 -0
  132. package/dist/containers/Node/Threads/CpuUsageBar/CpuUsageBar.scss +6 -0
  133. package/dist/containers/Node/Threads/ThreadStatesBar/ThreadStatesBar.d.ts +8 -0
  134. package/dist/containers/Node/Threads/ThreadStatesBar/ThreadStatesBar.js +72 -0
  135. package/dist/containers/Node/Threads/ThreadStatesBar/ThreadStatesBar.js.map +1 -0
  136. package/dist/containers/Node/Threads/ThreadStatesBar/ThreadStatesBar.scss +10 -0
  137. package/dist/containers/Node/Threads/Threads.d.ts +6 -0
  138. package/dist/containers/Node/Threads/Threads.js +17 -0
  139. package/dist/containers/Node/Threads/Threads.js.map +1 -0
  140. package/dist/containers/Node/Threads/columns.d.ts +3 -0
  141. package/dist/containers/Node/Threads/columns.js +52 -0
  142. package/dist/containers/Node/Threads/columns.js.map +1 -0
  143. package/dist/containers/Node/Threads/i18n/en.json +11 -0
  144. package/dist/containers/Node/Threads/i18n/index.d.ts +2 -0
  145. package/dist/containers/Node/Threads/i18n/index.js +5 -0
  146. package/dist/containers/Node/Threads/i18n/index.js.map +1 -0
  147. package/dist/containers/Node/i18n/en.json +1 -0
  148. package/dist/containers/Node/i18n/index.d.ts +1 -1
  149. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js +3 -3
  150. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js.map +1 -1
  151. package/dist/containers/Tenant/Diagnostics/AccessRights/AccessRights.scss +0 -6
  152. package/dist/containers/Tenant/Diagnostics/AccessRights/components/RightsTable/columns.js +4 -6
  153. package/dist/containers/Tenant/Diagnostics/AccessRights/components/RightsTable/columns.js.map +1 -1
  154. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +2 -1
  155. package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
  156. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.scss +1 -1
  157. package/dist/containers/Tenant/Diagnostics/TenantOverview/{MetricsCards/MetricsCards.d.ts → MetricsTabs/MetricsTabs.d.ts} +4 -3
  158. package/dist/containers/Tenant/Diagnostics/TenantOverview/{MetricsCards/MetricsCards.js → MetricsTabs/MetricsTabs.js} +16 -9
  159. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.js.map +1 -0
  160. package/dist/containers/Tenant/Diagnostics/TenantOverview/{MetricsCards/MetricsCards.scss → MetricsTabs/MetricsTabs.scss} +5 -5
  161. package/dist/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.d.ts +11 -0
  162. package/dist/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.js +10 -0
  163. package/dist/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.js.map +1 -0
  164. package/dist/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.scss +14 -0
  165. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.d.ts +2 -4
  166. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.js +2 -2
  167. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.js.map +1 -1
  168. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.scss +2 -4
  169. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js +13 -2
  170. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js.map +1 -1
  171. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js +2 -14
  172. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js.map +1 -1
  173. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js +2 -14
  174. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js.map +1 -1
  175. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +13 -46
  176. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js.map +1 -1
  177. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js +1 -17
  178. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js.map +1 -1
  179. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js +9 -2
  180. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js.map +1 -1
  181. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.scss +1 -1
  182. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemoryDetailsSection.d.ts +7 -0
  183. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemoryDetailsSection.js +34 -0
  184. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemoryDetailsSection.js.map +1 -0
  185. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemoryDetailsSection.scss +44 -0
  186. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemorySegmentsList.d.ts +7 -0
  187. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemorySegmentsList.js +28 -0
  188. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemorySegmentsList.js.map +1 -0
  189. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.d.ts +1 -0
  190. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js +28 -5
  191. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js.map +1 -1
  192. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.scss +20 -0
  193. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js +2 -14
  194. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js.map +1 -1
  195. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.d.ts +8 -0
  196. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js +26 -0
  197. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js.map +1 -0
  198. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.scss +9 -0
  199. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesByPing.d.ts +7 -0
  200. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesByPing.js +28 -0
  201. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesByPing.js.map +1 -0
  202. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesBySkew.d.ts +7 -0
  203. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesBySkew.js +28 -0
  204. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TopNodesBySkew.js.map +1 -0
  205. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/columns.d.ts +76 -0
  206. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/columns.js +38 -0
  207. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/columns.js.map +1 -0
  208. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +9 -3
  209. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
  210. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss +6 -7
  211. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.d.ts +1 -1
  212. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js +1 -1
  213. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js.map +1 -1
  214. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.d.ts +0 -1
  215. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +13 -7
  216. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js.map +1 -1
  217. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +2 -15
  218. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js.map +1 -1
  219. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.d.ts +0 -1
  220. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js +14 -19
  221. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js.map +1 -1
  222. package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +19 -21
  223. package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
  224. package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.d.ts +22 -0
  225. package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.js +29 -0
  226. package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.js.map +1 -0
  227. package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js +2 -24
  228. package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js.map +1 -1
  229. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js +2 -13
  230. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js.map +1 -1
  231. package/dist/containers/Tenant/Diagnostics/TopQueries/columns/columns.js +10 -13
  232. package/dist/containers/Tenant/Diagnostics/TopQueries/columns/columns.js.map +1 -1
  233. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor.js +0 -2
  234. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor.js.map +1 -1
  235. package/dist/containers/Tenant/Query/QueryEditor/keybindings.d.ts +0 -2
  236. package/dist/containers/Tenant/Query/QueryEditor/keybindings.js +0 -2
  237. package/dist/containers/Tenant/Query/QueryEditor/keybindings.js.map +1 -1
  238. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +25 -19
  239. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
  240. package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.d.ts +1 -1
  241. package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.js.map +1 -1
  242. package/dist/containers/Versions/NodesTreeTitle/NodesTreeTitle.d.ts +1 -1
  243. package/dist/containers/Versions/NodesTreeTitle/NodesTreeTitle.js.map +1 -1
  244. package/dist/containers/Versions/Versions.js +8 -8
  245. package/dist/containers/Versions/Versions.js.map +1 -1
  246. package/dist/containers/Versions/groupNodes.d.ts +4 -4
  247. package/dist/containers/Versions/groupNodes.js +9 -9
  248. package/dist/containers/Versions/groupNodes.js.map +1 -1
  249. package/dist/containers/Versions/groupNodes.test.js +22 -20
  250. package/dist/containers/Versions/groupNodes.test.js.map +1 -1
  251. package/dist/containers/Versions/types.d.ts +1 -1
  252. package/dist/containers/Versions/utils.d.ts +4 -4
  253. package/dist/containers/Versions/utils.js +15 -15
  254. package/dist/containers/Versions/utils.js.map +1 -1
  255. package/dist/services/api/index.d.ts +6 -3
  256. package/dist/services/api/index.js +19 -2
  257. package/dist/services/api/index.js.map +1 -1
  258. package/dist/services/api/viewer.js +1 -0
  259. package/dist/services/api/viewer.js.map +1 -1
  260. package/dist/store/reducers/capabilities/capabilities.d.ts +125 -0
  261. package/dist/store/reducers/capabilities/capabilities.js +1 -0
  262. package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
  263. package/dist/store/reducers/capabilities/hooks.d.ts +1 -0
  264. package/dist/store/reducers/capabilities/hooks.js +5 -1
  265. package/dist/store/reducers/capabilities/hooks.js.map +1 -1
  266. package/dist/store/reducers/clusters/types.d.ts +2 -2
  267. package/dist/store/reducers/clusters/utils.js +3 -3
  268. package/dist/store/reducers/clusters/utils.js.map +1 -1
  269. package/dist/store/reducers/query/__test__/tabPersistence.test.d.ts +1 -0
  270. package/dist/store/reducers/query/__test__/tabPersistence.test.js +62 -0
  271. package/dist/store/reducers/query/__test__/tabPersistence.test.js.map +1 -0
  272. package/dist/store/reducers/query/query.d.ts +14 -1
  273. package/dist/store/reducers/query/query.js +10 -2
  274. package/dist/store/reducers/query/query.js.map +1 -1
  275. package/dist/store/reducers/query/types.d.ts +4 -0
  276. package/dist/store/reducers/tenant/constants.d.ts +1 -0
  277. package/dist/store/reducers/tenant/constants.js +1 -0
  278. package/dist/store/reducers/tenant/constants.js.map +1 -1
  279. package/dist/store/reducers/tenant/tenant.js +2 -1
  280. package/dist/store/reducers/tenant/tenant.js.map +1 -1
  281. package/dist/store/reducers/tenant/types.d.ts +1 -1
  282. package/dist/styles/mixins.scss +6 -0
  283. package/dist/styles/versions.scss +110 -86
  284. package/dist/types/api/capabilities.d.ts +3 -0
  285. package/dist/types/api/nodes.d.ts +3 -0
  286. package/dist/types/api/nodes.js.map +1 -1
  287. package/dist/types/api/systemState.d.ts +3 -0
  288. package/dist/types/api/threads.d.ts +60 -0
  289. package/dist/types/api/threads.js +32 -0
  290. package/dist/types/api/threads.js.map +1 -0
  291. package/dist/utils/constants.d.ts +2 -1
  292. package/dist/utils/constants.js +2 -1
  293. package/dist/utils/constants.js.map +1 -1
  294. package/dist/utils/hooks/index.d.ts +1 -0
  295. package/dist/utils/hooks/index.js +1 -0
  296. package/dist/utils/hooks/index.js.map +1 -1
  297. package/dist/utils/hooks/useScrollPosition.d.ts +7 -0
  298. package/dist/utils/hooks/useScrollPosition.js +100 -0
  299. package/dist/utils/hooks/useScrollPosition.js.map +1 -0
  300. package/dist/utils/metrics/formatMetricLegend.d.ts +1 -0
  301. package/dist/utils/metrics/formatMetricLegend.js +21 -0
  302. package/dist/utils/metrics/formatMetricLegend.js.map +1 -1
  303. package/dist/utils/metrics.d.ts +1 -1
  304. package/dist/utils/metrics.js +1 -1
  305. package/dist/utils/prepareErrorMessage.js +9 -2
  306. package/dist/utils/prepareErrorMessage.js.map +1 -1
  307. package/dist/utils/progress.d.ts +2 -0
  308. package/dist/utils/progress.js +7 -0
  309. package/dist/utils/progress.js.map +1 -1
  310. package/dist/utils/versions/__test__/sortVersions.test.d.ts +1 -0
  311. package/dist/utils/versions/__test__/sortVersions.test.js +106 -0
  312. package/dist/utils/versions/__test__/sortVersions.test.js.map +1 -0
  313. package/dist/utils/versions/clusterVersionColors.d.ts +5 -0
  314. package/dist/utils/versions/clusterVersionColors.js +71 -0
  315. package/dist/utils/versions/clusterVersionColors.js.map +1 -0
  316. package/dist/utils/versions/getVersionsColors.d.ts +5 -4
  317. package/dist/utils/versions/getVersionsColors.js +63 -36
  318. package/dist/utils/versions/getVersionsColors.js.map +1 -1
  319. package/dist/utils/versions/parseNodesToVersionsValues.d.ts +3 -3
  320. package/dist/utils/versions/parseNodesToVersionsValues.js +5 -5
  321. package/dist/utils/versions/parseNodesToVersionsValues.js.map +1 -1
  322. package/dist/utils/versions/sortVersions.d.ts +18 -0
  323. package/dist/utils/versions/sortVersions.js +41 -0
  324. package/dist/utils/versions/sortVersions.js.map +1 -0
  325. package/dist/utils/versions/types.d.ts +22 -0
  326. package/dist/utils/versions/types.js +2 -0
  327. package/dist/utils/versions/types.js.map +1 -0
  328. package/package.json +2 -2
  329. package/dist/components/HoverPopup/HoverPopup.scss +0 -3
  330. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricsCards.js.map +0 -1
  331. package/dist/containers/Tenant/Diagnostics/TenantOverview/getSectionTitle.d.ts +0 -9
  332. package/dist/containers/Tenant/Diagnostics/TenantOverview/getSectionTitle.js +0 -12
  333. package/dist/containers/Tenant/Diagnostics/TenantOverview/getSectionTitle.js.map +0 -1
  334. package/dist/types/versions.d.ts +0 -8
  335. package/dist/types/versions.js +0 -2
  336. package/dist/types/versions.js.map +0 -1
  337. package/dist/utils/clusterVersionColors.d.ts +0 -11
  338. package/dist/utils/clusterVersionColors.js +0 -53
  339. package/dist/utils/clusterVersionColors.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricsTabs.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.tsx"],"names":[],"mappings":"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"}
@@ -75,20 +75,20 @@
75
75
  */
76
76
 
77
77
  @mixin tab-edge-filler($side) {
78
- &.tenant-metrics-cards__link-container_active::after {
78
+ &.tenant-metrics-tabs__link-container_active::after {
79
79
  @include pseudo-active-filler($side);
80
80
  }
81
81
 
82
- &:not(.tenant-metrics-cards__link-container_active)::after {
82
+ &:not(.tenant-metrics-tabs__link-container_active)::after {
83
83
  @include pseudo-inactive-filler($side);
84
84
  }
85
85
 
86
- &:not(.tenant-metrics-cards__link-container_active)::before {
86
+ &:not(.tenant-metrics-tabs__link-container_active)::before {
87
87
  @include pseudo-background-fill($side);
88
88
  }
89
89
  }
90
90
 
91
- .tenant-metrics-cards {
91
+ .tenant-metrics-tabs {
92
92
  // CSS Variables for consistent design system
93
93
  --tab-border-width: 1px;
94
94
  --tab-filler-size: 10px;
@@ -198,7 +198,7 @@
198
198
  }
199
199
  }
200
200
 
201
- .tenant-metrics-cards__link {
201
+ .tenant-metrics-tabs__link {
202
202
  padding-bottom: var(--tab-border-compensation);
203
203
  @include tab-border-base(var(--g-color-line-generic));
204
204
  }
@@ -0,0 +1,11 @@
1
+ import './StatsWrapper.scss';
2
+ interface StatsWrapperProps {
3
+ children: React.ReactNode;
4
+ className?: string;
5
+ title: string;
6
+ description?: string;
7
+ allEntitiesLink?: string;
8
+ onAllEntitiesClick?: () => void;
9
+ }
10
+ export declare function StatsWrapper({ children, className, title, description, allEntitiesLink, onAllEntitiesClick, }: StatsWrapperProps): import("react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Flex, Text } from '@gravity-ui/uikit';
3
+ import { SeeAllButton } from '../../../../../components/SeeAllButton/SeeAllButton';
4
+ import { cn } from '../../../../../utils/cn';
5
+ const b = cn('ydb-stats-wrapper');
6
+ import './StatsWrapper.scss';
7
+ export function StatsWrapper({ children, className, title, description, allEntitiesLink, onAllEntitiesClick, }) {
8
+ return (_jsxs(Flex, { className: b(null, className), gap: 2, direction: "column", children: [_jsxs(Flex, { justifyContent: "space-between", wrap: "nowrap", className: b('header'), children: [_jsxs(Flex, { direction: "column", children: [_jsx(Text, { variant: "subheader-2", children: title }), description && _jsx(Text, { color: "secondary", children: description })] }), allEntitiesLink && (_jsx(SeeAllButton, { to: allEntitiesLink, onClick: onAllEntitiesClick }))] }), children] }));
9
+ }
10
+ //# sourceMappingURL=StatsWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatsWrapper.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAC,YAAY,EAAC,MAAM,qDAAqD,CAAC;AACjF,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC;AAElC,OAAO,qBAAqB,CAAC;AAW7B,MAAM,UAAU,YAAY,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,WAAW,EACX,eAAe,EACf,kBAAkB,GACF;IAChB,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAC,QAAQ,aAC3D,MAAC,IAAI,IAAC,cAAc,EAAC,eAAe,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,aACrE,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,aACpB,KAAC,IAAI,IAAC,OAAO,EAAC,aAAa,YAAE,KAAK,GAAQ,EACzC,WAAW,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,WAAW,YAAE,WAAW,GAAQ,IACzD,EACN,eAAe,IAAI,CAChB,KAAC,YAAY,IAAC,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,kBAAkB,GAAI,CACrE,IACE,EACN,QAAQ,IACN,CACV,CAAC;AACN,CAAC"}
@@ -0,0 +1,14 @@
1
+ .ydb-stats-wrapper {
2
+ overflow: auto;
3
+
4
+ padding: var(--g-spacing-4);
5
+
6
+ border: 1px solid var(--g-color-line-generic);
7
+ border-radius: var(--g-border-radius-xs);
8
+
9
+ &__header {
10
+ position: sticky;
11
+ top: 0;
12
+ left: 0;
13
+ }
14
+ }
@@ -1,16 +1,14 @@
1
1
  import './TabCard.scss';
2
2
  interface TabCardProps {
3
- label: string;
4
- sublabel?: string;
3
+ text: string;
5
4
  value: number;
6
5
  limit: number;
7
6
  active?: boolean;
8
7
  helpText?: string;
9
- clickable?: boolean;
10
8
  legendFormatter: (params: {
11
9
  value: number;
12
10
  capacity: number;
13
11
  }) => string;
14
12
  }
15
- export declare function TabCard({ label, sublabel, value, limit, active, helpText, clickable, legendFormatter, }: TabCardProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function TabCard({ text, value, limit, active, helpText, legendFormatter }: TabCardProps): import("react/jsx-runtime").JSX.Element;
16
14
  export {};
@@ -5,12 +5,12 @@ import { getDiagramValues } from '../../../../../containers/Cluster/ClusterOverv
5
5
  import { cn } from '../../../../../utils/cn';
6
6
  import './TabCard.scss';
7
7
  const b = cn('tenant-tab-card');
8
- export function TabCard({ label, sublabel, value, limit, active, helpText, clickable = true, legendFormatter, }) {
8
+ export function TabCard({ text, value, limit, active, helpText, legendFormatter }) {
9
9
  const { status, percents, legend, fill } = getDiagramValues({
10
10
  value,
11
11
  capacity: limit,
12
12
  legendFormatter,
13
13
  });
14
- return (_jsx("div", { className: b({ active }), children: _jsx(Card, { className: b('card-container', { active, clickable }), type: "container", view: active ? 'outlined' : 'raised', children: _jsxs(Flex, { gap: 3, alignItems: "center", children: [_jsx(DoughnutMetrics, { size: "small", status: status, fillWidth: fill, className: b('doughnut'), children: _jsx(DoughnutMetrics.Value, { variant: "subheader-1", children: percents }) }), _jsxs("div", { className: b('legend-wrapper'), children: [_jsx(DoughnutMetrics.Legend, { variant: "subheader-2", children: legend }), _jsx(DoughnutMetrics.Legend, { variant: "body-1", color: "secondary", note: helpText, noteIconSize: "s", children: sublabel || label })] })] }) }) }));
14
+ return (_jsx("div", { className: b({ active }), children: _jsx(Card, { className: b('card-container', { active }), type: "container", view: active ? 'outlined' : 'raised', children: _jsxs(Flex, { gap: 3, alignItems: "center", children: [_jsx(DoughnutMetrics, { size: "small", status: status, fillWidth: fill, className: b('doughnut'), children: _jsx(DoughnutMetrics.Value, { variant: "subheader-1", children: percents }) }), _jsxs("div", { className: b('legend-wrapper'), children: [_jsx(DoughnutMetrics.Legend, { variant: "subheader-2", children: legend }), _jsx(DoughnutMetrics.Legend, { variant: "body-1", color: "secondary", note: helpText, noteIconSize: "s", children: text })] })] }) }) }));
15
15
  }
16
16
  //# sourceMappingURL=TabCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAC,eAAe,EAAC,MAAM,2DAA2D,CAAC;AAC1F,OAAO,EAAC,gBAAgB,EAAC,MAAM,yDAAyD,CAAC;AACzF,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAahC,MAAM,UAAU,OAAO,CAAC,EACpB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,KAAK,EACL,MAAM,EACN,QAAQ,EACR,SAAS,GAAG,IAAI,EAChB,eAAe,GACJ;IACX,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAC,GAAG,gBAAgB,CAAC;QACtD,KAAK;QACL,QAAQ,EAAE,KAAK;QACf,eAAe;KAClB,CAAC,CAAC;IAEH,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,YACvB,KAAC,IAAI,IACD,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAE,SAAS,EAAC,CAAC,EACnD,IAAI,EAAC,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,YAEpC,MAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,aAC7B,KAAC,eAAe,IACZ,IAAI,EAAC,OAAO,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,YAExB,KAAC,eAAe,CAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YACvC,QAAQ,GACW,GACV,EAClB,eAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,aAC/B,KAAC,eAAe,CAAC,MAAM,IAAC,OAAO,EAAC,aAAa,YACxC,MAAM,GACc,EACzB,KAAC,eAAe,CAAC,MAAM,IACnB,OAAO,EAAC,QAAQ,EAChB,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAC,GAAG,YAEf,QAAQ,IAAI,KAAK,GACG,IACvB,IACH,GACJ,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"TabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAC,eAAe,EAAC,MAAM,2DAA2D,CAAC;AAC1F,OAAO,EAAC,gBAAgB,EAAC,MAAM,yDAAyD,CAAC;AACzF,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAWhC,MAAM,UAAU,OAAO,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAe;IACzF,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAC,GAAG,gBAAgB,CAAC;QACtD,KAAK;QACL,QAAQ,EAAE,KAAK;QACf,eAAe;KAClB,CAAC,CAAC;IAEH,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,YACvB,KAAC,IAAI,IACD,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,EACxC,IAAI,EAAC,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,YAEpC,MAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,aAC7B,KAAC,eAAe,IACZ,IAAI,EAAC,OAAO,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,YAExB,KAAC,eAAe,CAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YACvC,QAAQ,GACW,GACV,EAClB,eAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,aAC/B,KAAC,eAAe,CAAC,MAAM,IAAC,OAAO,EAAC,aAAa,YACxC,MAAM,GACc,EACzB,KAAC,eAAe,CAAC,MAAM,IACnB,OAAO,EAAC,QAAQ,EAChB,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAC,GAAG,YAEf,IAAI,GACgB,IACvB,IACH,GACJ,GACL,CACT,CAAC;AACN,CAAC"}
@@ -4,12 +4,10 @@
4
4
  &__card-container {
5
5
  padding: var(--g-spacing-4);
6
6
 
7
+ cursor: pointer;
8
+
7
9
  border: 0;
8
10
  border-radius: var(--g-border-radius-s);
9
- }
10
-
11
- &__card-container_clickable {
12
- cursor: pointer;
13
11
 
14
12
  // Smooth hover transition
15
13
  transition: background-color 0.15s ease;
@@ -1,12 +1,23 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import React from 'react';
2
+ import { Flex } from '@gravity-ui/uikit';
3
+ import { setTopQueriesFilters } from '../../../../../store/reducers/executeTopQueries/executeTopQueries';
4
+ import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
5
+ import { useTypedDispatch } from '../../../../../utils/hooks';
6
+ import { useDiagnosticsPageLinkGetter } from '../../../Diagnostics/DiagnosticsPages';
7
+ import { StatsWrapper } from '../StatsWrapper/StatsWrapper';
3
8
  import { TenantDashboard } from '../TenantDashboard/TenantDashboard';
9
+ import i18n from '../i18n';
4
10
  import { TopNodesByCpu } from './TopNodesByCpu';
5
11
  import { TopNodesByLoad } from './TopNodesByLoad';
6
12
  import { TopQueries } from './TopQueries';
7
13
  import { TopShards } from './TopShards';
8
14
  import { cpuDashboardConfig } from './cpuDashboardConfig';
9
15
  export function TenantCpu({ tenantName, additionalNodesProps }) {
10
- return (_jsxs(React.Fragment, { children: [_jsx(TenantDashboard, { database: tenantName, charts: cpuDashboardConfig }), _jsx(TopNodesByLoad, { tenantName: tenantName, additionalNodesProps: additionalNodesProps }), _jsx(TopNodesByCpu, { tenantName: tenantName, additionalNodesProps: additionalNodesProps }), _jsx(TopShards, { tenantName: tenantName, path: tenantName }), _jsx(TopQueries, { tenantName: tenantName })] }));
16
+ const dispatch = useTypedDispatch();
17
+ const getDiagnosticsPageLink = useDiagnosticsPageLinkGetter();
18
+ const allNodesLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.nodes);
19
+ const topShardsLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.topShards);
20
+ const topQueriesLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.topQueries);
21
+ return (_jsxs(Flex, { direction: "column", gap: 4, children: [_jsx(TenantDashboard, { database: tenantName, charts: cpuDashboardConfig }), _jsx(StatsWrapper, { allEntitiesLink: allNodesLink, title: i18n('title_top-nodes-load'), children: _jsx(TopNodesByLoad, { tenantName: tenantName, additionalNodesProps: additionalNodesProps }) }), _jsx(StatsWrapper, { title: i18n('title_top-nodes-pool'), allEntitiesLink: allNodesLink, children: _jsx(TopNodesByCpu, { tenantName: tenantName, additionalNodesProps: additionalNodesProps }) }), _jsx(StatsWrapper, { title: i18n('title_top-shards'), allEntitiesLink: topShardsLink, children: _jsx(TopShards, { tenantName: tenantName, path: tenantName }) }), _jsx(StatsWrapper, { title: i18n('title_top-queries'), allEntitiesLink: topQueriesLink, onAllEntitiesClick: () => dispatch(setTopQueriesFilters({ from: undefined, to: undefined })), children: _jsx(TopQueries, { tenantName: tenantName }) })] }));
11
22
  }
12
23
  //# sourceMappingURL=TenantCpu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TenantCpu.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAOxD,MAAM,UAAU,SAAS,CAAC,EAAC,UAAU,EAAE,oBAAoB,EAAiB;IACxE,OAAO,CACH,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,eAAe,IAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,GAAI,EACrE,KAAC,cAAc,IAAC,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,oBAAoB,GAAI,EACtF,KAAC,aAAa,IAAC,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,oBAAoB,GAAI,EACrF,KAAC,SAAS,IAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAI,EACvD,KAAC,UAAU,IAAC,UAAU,EAAE,UAAU,GAAI,IACzB,CACpB,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"TenantCpu.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,mEAAmE,CAAC;AACvG,OAAO,EAAC,2BAA2B,EAAC,MAAM,gDAAgD,CAAC;AAE3F,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,4BAA4B,EAAC,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAOxD,MAAM,UAAU,SAAS,CAAC,EAAC,UAAU,EAAE,oBAAoB,EAAiB;IACxE,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAC;IAE9D,MAAM,YAAY,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IACpF,MAAM,cAAc,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;IAEtF,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC3B,KAAC,eAAe,IAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,GAAI,EACrE,KAAC,YAAY,IAAC,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,YAC5E,KAAC,cAAc,IACX,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,oBAAoB,GAC5C,GACS,EACf,KAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAAE,eAAe,EAAE,YAAY,YAC5E,KAAC,aAAa,IACV,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,oBAAoB,GAC5C,GACS,EACf,KAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,eAAe,EAAE,aAAa,YACzE,KAAC,SAAS,IAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAI,GAC5C,EACf,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAChC,eAAe,EAAE,cAAc,EAC/B,kBAAkB,EAAE,GAAG,EAAE,CACrB,QAAQ,CAAC,oBAAoB,CAAC,EAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAC,CAAC,CAAC,YAGpE,KAAC,UAAU,IAAC,UAAU,EAAE,UAAU,GAAI,GAC3B,IACZ,CACV,CAAC;AACN,CAAC"}
@@ -3,13 +3,10 @@ import { ResizeableDataTable } from '../../../../../components/ResizeableDataTab
3
3
  import { getHostColumn, getNodeIdColumn, getPoolsColumn, } from '../../../../../components/nodesColumns/columns';
4
4
  import { NODES_COLUMNS_TO_DATA_FIELDS, NODES_COLUMNS_WIDTH_LS_KEY, } from '../../../../../components/nodesColumns/constants';
5
5
  import { nodesApi } from '../../../../../store/reducers/nodes/nodes';
6
- import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
7
6
  import { TENANT_OVERVIEW_TABLES_LIMIT, TENANT_OVERVIEW_TABLES_SETTINGS, } from '../../../../../utils/constants';
8
- import { useAutoRefreshInterval, useSearchQuery } from '../../../../../utils/hooks';
7
+ import { useAutoRefreshInterval } from '../../../../../utils/hooks';
9
8
  import { getRequiredDataFields } from '../../../../../utils/tableUtils/getRequiredDataFields';
10
- import { TenantTabsGroups, getTenantPath } from '../../../TenantPages';
11
9
  import { TenantOverviewTableLayout } from '../TenantOverviewTableLayout';
12
- import { getSectionTitle } from '../getSectionTitle';
13
10
  import i18n from '../i18n';
14
11
  function getTopNodesByCpuColumns(params) {
15
12
  const hostColumn = { ...getHostColumn(params), width: undefined };
@@ -23,7 +20,6 @@ function getTopNodesByCpuColumns(params) {
23
20
  return [columns, dataFieldsRequired];
24
21
  }
25
22
  export function TopNodesByCpu({ tenantName, additionalNodesProps }) {
26
- const query = useSearchQuery();
27
23
  const [autoRefreshInterval] = useAutoRefreshInterval();
28
24
  const [columns, fieldsRequired] = getTopNodesByCpuColumns({
29
25
  getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef,
@@ -39,14 +35,6 @@ export function TopNodesByCpu({ tenantName, additionalNodesProps }) {
39
35
  }, { pollingInterval: autoRefreshInterval });
40
36
  const loading = isFetching && currentData === undefined;
41
37
  const topNodes = (currentData === null || currentData === void 0 ? void 0 : currentData.Nodes) || [];
42
- const title = getSectionTitle({
43
- entity: i18n('nodes'),
44
- postfix: i18n('by-pools-usage'),
45
- link: getTenantPath({
46
- ...query,
47
- [TenantTabsGroups.diagnosticsTab]: TENANT_DIAGNOSTICS_TABS_IDS.nodes,
48
- }),
49
- });
50
- return (_jsx(TenantOverviewTableLayout, { title: title, loading: loading, error: error, withData: Boolean(currentData), children: _jsx(ResizeableDataTable, { columnsWidthLSKey: NODES_COLUMNS_WIDTH_LS_KEY, data: topNodes, columns: columns, emptyDataMessage: i18n('top-nodes.empty-data'), settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
38
+ return (_jsx(TenantOverviewTableLayout, { loading: loading, error: error, withData: Boolean(currentData), children: _jsx(ResizeableDataTable, { columnsWidthLSKey: NODES_COLUMNS_WIDTH_LS_KEY, data: topNodes, columns: columns, emptyDataMessage: i18n('top-nodes.empty-data'), settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
51
39
  }
52
40
  //# sourceMappingURL=TopNodesByCpu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TopNodesByCpu.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TopNodesByCpu.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,mEAAmE,CAAC;AACtG,OAAO,EACH,aAAa,EACb,eAAe,EACf,cAAc,GACjB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACH,4BAA4B,EAC5B,0BAA0B,GAC7B,MAAM,kDAAkD,CAAC;AAE1D,OAAO,EAAC,QAAQ,EAAC,MAAM,2CAA2C,CAAC;AAInE,OAAO,EACH,4BAA4B,EAC5B,+BAA+B,GAClC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAC,qBAAqB,EAAC,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAC;AACvE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,SAAS,uBAAuB,CAC5B,MAA6B;IAE7B,MAAM,UAAU,GAAG,EAAC,GAAG,aAAa,CAAsB,MAAM,CAAC,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;IAErF,MAAM,OAAO,GAAG;QACZ,cAAc,EAAuB;QACrC,eAAe,EAAuB;QACtC,UAAU;KACb,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,UAAU,EAAE,4BAA4B,CAAC,CAAC;IAE3F,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;AACzC,CAAC;AAOD,MAAM,UAAU,aAAa,CAAC,EAAC,UAAU,EAAE,oBAAoB,EAAqB;IAChF,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IACvD,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,uBAAuB,CAAC;QACtD,UAAU,EAAE,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,UAAU;QAC5C,QAAQ,EAAE,UAAU;KACvB,CAAC,CAAC;IAEH,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,QAAQ,CAAC,gBAAgB,CAC9D;QACI,MAAM,EAAE,UAAU;QAClB,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,4BAA4B;QACnC,OAAO,EAAE,KAAK;QACd,cAAc;KACjB,EACD,EAAC,eAAe,EAAE,mBAAmB,EAAC,CACzC,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IAExD,MAAM,QAAQ,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,EAAE,CAAC;IAE1C,OAAO,CACH,KAAC,yBAAyB,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,YACrF,KAAC,mBAAmB,IAChB,iBAAiB,EAAE,0BAA0B,EAC7C,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAC9C,QAAQ,EAAE,+BAA+B,GAC3C,GACsB,CAC/B,CAAC;AACN,CAAC"}
@@ -3,13 +3,10 @@ import { ResizeableDataTable } from '../../../../../components/ResizeableDataTab
3
3
  import { getHostColumn, getLoadColumn, getNodeIdColumn, getVersionColumn, } from '../../../../../components/nodesColumns/columns';
4
4
  import { NODES_COLUMNS_TO_DATA_FIELDS, NODES_COLUMNS_WIDTH_LS_KEY, } from '../../../../../components/nodesColumns/constants';
5
5
  import { nodesApi } from '../../../../../store/reducers/nodes/nodes';
6
- import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
7
6
  import { TENANT_OVERVIEW_TABLES_LIMIT, TENANT_OVERVIEW_TABLES_SETTINGS, } from '../../../../../utils/constants';
8
- import { useAutoRefreshInterval, useSearchQuery } from '../../../../../utils/hooks';
7
+ import { useAutoRefreshInterval } from '../../../../../utils/hooks';
9
8
  import { getRequiredDataFields } from '../../../../../utils/tableUtils/getRequiredDataFields';
10
- import { TenantTabsGroups, getTenantPath } from '../../../TenantPages';
11
9
  import { TenantOverviewTableLayout } from '../TenantOverviewTableLayout';
12
- import { getSectionTitle } from '../getSectionTitle';
13
10
  import i18n from '../i18n';
14
11
  function getTopNodesByLoadColumns(params) {
15
12
  const hostColumn = {
@@ -27,7 +24,6 @@ function getTopNodesByLoadColumns(params) {
27
24
  return [columns, dataFieldsRequired];
28
25
  }
29
26
  export function TopNodesByLoad({ tenantName, additionalNodesProps }) {
30
- const query = useSearchQuery();
31
27
  const [autoRefreshInterval] = useAutoRefreshInterval();
32
28
  const [columns, fieldsRequired] = getTopNodesByLoadColumns({
33
29
  getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef,
@@ -43,14 +39,6 @@ export function TopNodesByLoad({ tenantName, additionalNodesProps }) {
43
39
  }, { pollingInterval: autoRefreshInterval });
44
40
  const loading = isFetching && currentData === undefined;
45
41
  const topNodes = (currentData === null || currentData === void 0 ? void 0 : currentData.Nodes) || [];
46
- const title = getSectionTitle({
47
- entity: i18n('nodes'),
48
- postfix: i18n('by-load'),
49
- link: getTenantPath({
50
- ...query,
51
- [TenantTabsGroups.diagnosticsTab]: TENANT_DIAGNOSTICS_TABS_IDS.nodes,
52
- }),
53
- });
54
- return (_jsx(TenantOverviewTableLayout, { title: title, loading: loading, error: error, withData: Boolean(currentData), children: _jsx(ResizeableDataTable, { columnsWidthLSKey: NODES_COLUMNS_WIDTH_LS_KEY, data: topNodes, columns: columns, emptyDataMessage: i18n('top-nodes.empty-data'), settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
42
+ return (_jsx(TenantOverviewTableLayout, { loading: loading, error: error, withData: Boolean(currentData), children: _jsx(ResizeableDataTable, { columnsWidthLSKey: NODES_COLUMNS_WIDTH_LS_KEY, data: topNodes, columns: columns, emptyDataMessage: i18n('top-nodes.empty-data'), settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
55
43
  }
56
44
  //# sourceMappingURL=TopNodesByLoad.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TopNodesByLoad.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TopNodesByLoad.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,mEAAmE,CAAC;AACtG,OAAO,EACH,aAAa,EACb,aAAa,EACb,eAAe,EACf,gBAAgB,GACnB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACH,4BAA4B,EAC5B,0BAA0B,GAC7B,MAAM,kDAAkD,CAAC;AAE1D,OAAO,EAAC,QAAQ,EAAC,MAAM,2CAA2C,CAAC;AAInE,OAAO,EACH,4BAA4B,EAC5B,+BAA+B,GAClC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAC,qBAAqB,EAAC,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAC;AACvE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,SAAS,wBAAwB,CAC7B,MAA6B;IAE7B,MAAM,UAAU,GAAG;QACf,GAAG,aAAa,CAAsB,MAAM,CAAC;QAC7C,KAAK,EAAE,SAAS;KACnB,CAAC;IAEF,MAAM,OAAO,GAAG;QACZ,aAAa,EAAuB;QACpC,eAAe,EAAuB;QACtC,UAAU;QACV,gBAAgB,EAAuB;KAC1C,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,UAAU,EAAE,4BAA4B,CAAC,CAAC;IAE3F,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;AACzC,CAAC;AAOD,MAAM,UAAU,cAAc,CAAC,EAAC,UAAU,EAAE,oBAAoB,EAAsB;IAClF,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IACvD,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,wBAAwB,CAAC;QACvD,UAAU,EAAE,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,UAAU;QAC5C,QAAQ,EAAE,UAAU;KACvB,CAAC,CAAC;IAEH,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,QAAQ,CAAC,gBAAgB,CAC9D;QACI,MAAM,EAAE,UAAU;QAClB,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,4BAA4B;QACnC,OAAO,EAAE,KAAK;QACd,cAAc;KACjB,EACD,EAAC,eAAe,EAAE,mBAAmB,EAAC,CACzC,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IAExD,MAAM,QAAQ,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,EAAE,CAAC;IAE1C,OAAO,CACH,KAAC,yBAAyB,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,YACrF,KAAC,mBAAmB,IAChB,iBAAiB,EAAE,0BAA0B,EAC7C,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAC9C,QAAQ,EAAE,+BAA+B,GAC3C,GACsB,CAC/B,CAAC;AACN,CAAC"}
@@ -1,59 +1,26 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import React from 'react';
3
- import { useHistory, useLocation } from 'react-router-dom';
4
- import { ResizeableDataTable } from '../../../../../components/ResizeableDataTable/ResizeableDataTable';
5
- import { parseQuery } from '../../../../../routes';
6
- import { setTopQueriesFilters, topQueriesApi, } from '../../../../../store/reducers/executeTopQueries/executeTopQueries';
7
- import { changeUserInput, setIsDirty } from '../../../../../store/reducers/query/query';
8
- import { TENANT_DIAGNOSTICS_TABS_IDS, TENANT_PAGE, TENANT_PAGES_IDS, TENANT_QUERY_TABS_ID, } from '../../../../../store/reducers/tenant/constants';
2
+ import { topQueriesApi } from '../../../../../store/reducers/executeTopQueries/executeTopQueries';
9
3
  import { TENANT_OVERVIEW_TABLES_LIMIT, TENANT_OVERVIEW_TABLES_SETTINGS, } from '../../../../../utils/constants';
10
- import { useAutoRefreshInterval, useTypedDispatch } from '../../../../../utils/hooks';
11
- import { useChangeInputWithConfirmation } from '../../../../../utils/hooks/withConfirmation/useChangeInputWithConfirmation';
4
+ import { useAutoRefreshInterval } from '../../../../../utils/hooks';
12
5
  import { parseQueryErrorToString } from '../../../../../utils/query';
13
- import { TenantTabsGroups, getTenantPath } from '../../../TenantPages';
6
+ import { QueriesTableWithDrawer } from '../../TopQueries/QueriesTableWithDrawer';
14
7
  import { getTenantOverviewTopQueriesColumns } from '../../TopQueries/columns/columns';
15
8
  import { TOP_QUERIES_COLUMNS_WIDTH_LS_KEY } from '../../TopQueries/columns/constants';
9
+ import { useTopQueriesSort } from '../../TopQueries/hooks/useTopQueriesSort';
16
10
  import { TenantOverviewTableLayout } from '../TenantOverviewTableLayout';
17
- import { getSectionTitle } from '../getSectionTitle';
18
- import i18n from '../i18n';
19
- import { b } from '../utils';
11
+ const columns = getTenantOverviewTopQueriesColumns();
20
12
  export function TopQueries({ tenantName }) {
21
13
  var _a, _b;
22
- const dispatch = useTypedDispatch();
23
- const location = useLocation();
24
- const history = useHistory();
25
- const query = parseQuery(location);
26
14
  const [autoRefreshInterval] = useAutoRefreshInterval();
27
- const columns = React.useMemo(() => {
28
- return getTenantOverviewTopQueriesColumns();
29
- }, []);
30
- const { currentData, isFetching, error } = topQueriesApi.useGetTopQueriesQuery({ database: tenantName, timeFrame: 'hour', limit: TENANT_OVERVIEW_TABLES_LIMIT }, { pollingInterval: autoRefreshInterval });
15
+ const { backendSort } = useTopQueriesSort();
16
+ const { currentData, isFetching, error } = topQueriesApi.useGetTopQueriesQuery({
17
+ database: tenantName,
18
+ timeFrame: 'hour',
19
+ limit: TENANT_OVERVIEW_TABLES_LIMIT,
20
+ sortOrder: backendSort,
21
+ }, { pollingInterval: autoRefreshInterval });
31
22
  const loading = isFetching && currentData === undefined;
32
23
  const data = ((_b = (_a = currentData === null || currentData === void 0 ? void 0 : currentData.resultSets) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.result) || [];
33
- const applyRowClick = React.useCallback((row) => {
34
- const { QueryText: input } = row;
35
- dispatch(changeUserInput({ input }));
36
- dispatch(setIsDirty(false));
37
- const queryParams = parseQuery(location);
38
- const queryPath = getTenantPath({
39
- ...queryParams,
40
- [TENANT_PAGE]: TENANT_PAGES_IDS.query,
41
- [TenantTabsGroups.queryTab]: TENANT_QUERY_TABS_ID.newQuery,
42
- });
43
- history.push(queryPath);
44
- }, [dispatch, history, location]);
45
- const handleRowClick = useChangeInputWithConfirmation(applyRowClick);
46
- const title = getSectionTitle({
47
- entity: i18n('queries'),
48
- postfix: i18n('by-cpu-time', { executionPeriod: i18n('executed-last-hour') }),
49
- onClick: () => {
50
- dispatch(setTopQueriesFilters({ from: undefined, to: undefined }));
51
- },
52
- link: getTenantPath({
53
- ...query,
54
- [TenantTabsGroups.diagnosticsTab]: TENANT_DIAGNOSTICS_TABS_IDS.topQueries,
55
- }),
56
- });
57
- return (_jsx(TenantOverviewTableLayout, { title: title, loading: loading, error: parseQueryErrorToString(error), withData: Boolean(currentData), children: _jsx(ResizeableDataTable, { columnsWidthLSKey: TOP_QUERIES_COLUMNS_WIDTH_LS_KEY, data: data, columns: columns, onRowClick: handleRowClick, rowClassName: () => b('top-queries-row'), settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
24
+ return (_jsx(TenantOverviewTableLayout, { loading: loading, error: parseQueryErrorToString(error), withData: Boolean(currentData), children: _jsx(QueriesTableWithDrawer, { columnsWidthLSKey: TOP_QUERIES_COLUMNS_WIDTH_LS_KEY, data: data, columns: columns, tableSettings: TENANT_OVERVIEW_TABLES_SETTINGS, drawerId: "tenant-overview-query-details", storageKey: "tenant-overview-queries-drawer-width" }) }));
58
25
  }
59
26
  //# sourceMappingURL=TopQueries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TopQueries.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TopQueries.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,mEAAmE,CAAC;AAChG,OAAO,EACH,4BAA4B,EAC5B,+BAA+B,GAClC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAC,sBAAsB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAC,kCAAkC,EAAC,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAAC,iBAAiB,EAAC,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAC;AAMvE,MAAM,OAAO,GAAG,kCAAkC,EAAE,CAAC;AAErD,MAAM,UAAU,UAAU,CAAC,EAAC,UAAU,EAAkB;;IACpD,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,MAAM,EAAC,WAAW,EAAC,GAAG,iBAAiB,EAAE,CAAC;IAE1C,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,aAAa,CAAC,qBAAqB,CACxE;QACI,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,MAAM;QACjB,KAAK,EAAE,4BAA4B;QACnC,SAAS,EAAE,WAAW;KACzB,EACD,EAAC,eAAe,EAAE,mBAAmB,EAAC,CACzC,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IACxD,MAAM,IAAI,GAAG,CAAA,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAG,CAAC,CAAC,0CAAE,MAAM,KAAI,EAAE,CAAC;IAExD,OAAO,CACH,KAAC,yBAAyB,IACtB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACrC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,YAE9B,KAAC,sBAAsB,IACnB,iBAAiB,EAAE,gCAAgC,EACnD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,+BAA+B,EAC9C,QAAQ,EAAC,+BAA+B,EACxC,UAAU,EAAC,sCAAsC,GACnD,GACsB,CAC/B,CAAC;AACN,CAAC"}
@@ -1,34 +1,18 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useLocation } from 'react-router-dom';
3
2
  import { useComponent } from '../../../../../components/ComponentsProvider/ComponentsProvider';
4
- import { parseQuery } from '../../../../../routes';
5
- import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
6
3
  import { topShardsApi } from '../../../../../store/reducers/tenantOverview/topShards/tenantOverviewTopShards';
7
4
  import { TENANT_OVERVIEW_TABLES_SETTINGS } from '../../../../../utils/constants';
8
5
  import { useAutoRefreshInterval } from '../../../../../utils/hooks';
9
6
  import { parseQueryErrorToString } from '../../../../../utils/query';
10
- import { TenantTabsGroups, getTenantPath } from '../../../TenantPages';
11
7
  import { TenantOverviewTableLayout } from '../TenantOverviewTableLayout';
12
- import { getSectionTitle } from '../getSectionTitle';
13
- import i18n from '../i18n';
14
8
  const columnsIds = ['TabletId', 'Path', 'CPUCores'];
15
9
  export const TopShards = ({ tenantName, path }) => {
16
10
  var _a, _b;
17
11
  const ShardsTable = useComponent('ShardsTable');
18
- const location = useLocation();
19
- const query = parseQuery(location);
20
12
  const [autoRefreshInterval] = useAutoRefreshInterval();
21
13
  const { currentData, isFetching, error } = topShardsApi.useGetTopShardsQuery({ database: tenantName, path }, { pollingInterval: autoRefreshInterval });
22
14
  const loading = isFetching && currentData === undefined;
23
15
  const data = ((_b = (_a = currentData === null || currentData === void 0 ? void 0 : currentData.resultSets) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.result) || [];
24
- const title = getSectionTitle({
25
- entity: i18n('shards'),
26
- postfix: i18n('by-cpu-usage'),
27
- link: getTenantPath({
28
- ...query,
29
- [TenantTabsGroups.diagnosticsTab]: TENANT_DIAGNOSTICS_TABS_IDS.topShards,
30
- }),
31
- });
32
- return (_jsx(TenantOverviewTableLayout, { title: title, loading: loading, error: parseQueryErrorToString(error), withData: Boolean(currentData), children: _jsx(ShardsTable, { data: data, schemaPath: tenantName, database: tenantName, columnsIds: columnsIds, settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
16
+ return (_jsx(TenantOverviewTableLayout, { loading: loading, error: parseQueryErrorToString(error), withData: Boolean(currentData), children: _jsx(ShardsTable, { data: data, schemaPath: tenantName, database: tenantName, columnsIds: columnsIds, settings: TENANT_OVERVIEW_TABLES_SETTINGS }) }));
33
17
  };
34
18
  //# sourceMappingURL=TopShards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TopShards.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAC,YAAY,EAAC,MAAM,iEAAiE,CAAC;AAE7F,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAC,2BAA2B,EAAC,MAAM,gDAAgD,CAAC;AAC3F,OAAO,EAAC,YAAY,EAAC,MAAM,gFAAgF,CAAC;AAC5G,OAAO,EAAC,+BAA+B,EAAC,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,MAAM,UAAU,GAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAOzE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAC,UAAU,EAAE,IAAI,EAAiB,EAAE,EAAE;;IAC5D,MAAM,WAAW,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEnC,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,YAAY,CAAC,oBAAoB,CACtE,EAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,EAC5B,EAAC,eAAe,EAAE,mBAAmB,EAAC,CACzC,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IACxD,MAAM,IAAI,GAAG,CAAA,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAG,CAAC,CAAC,0CAAE,MAAM,KAAI,EAAE,CAAC;IAExD,MAAM,KAAK,GAAG,eAAe,CAAC;QAC1B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;QACtB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC;QAC7B,IAAI,EAAE,aAAa,CAAC;YAChB,GAAG,KAAK;YACR,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,2BAA2B,CAAC,SAAS;SAC3E,CAAC;KACL,CAAC,CAAC;IAEH,OAAO,CACH,KAAC,yBAAyB,IACtB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACrC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,YAE9B,KAAC,WAAW,IACR,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,+BAA+B,GAC3C,GACsB,CAC/B,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"TopShards.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,iEAAiE,CAAC;AAE7F,OAAO,EAAC,YAAY,EAAC,MAAM,gFAAgF,CAAC;AAC5G,OAAO,EAAC,+BAA+B,EAAC,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAC;AACvE,MAAM,UAAU,GAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAOzE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAC,UAAU,EAAE,IAAI,EAAiB,EAAE,EAAE;;IAC5D,MAAM,WAAW,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAEhD,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,MAAM,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,EAAC,GAAG,YAAY,CAAC,oBAAoB,CACtE,EAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,EAC5B,EAAC,eAAe,EAAE,mBAAmB,EAAC,CACzC,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;IACxD,MAAM,IAAI,GAAG,CAAA,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAG,CAAC,CAAC,0CAAE,MAAM,KAAI,EAAE,CAAC;IAExD,OAAO,CACH,KAAC,yBAAyB,IACtB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACrC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,YAE9B,KAAC,WAAW,IACR,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,+BAA+B,GAC3C,GACsB,CAC/B,CAAC;AACN,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React from 'react';
3
3
  import { MetricChart } from '../../../../../components/MetricChart';
4
+ import { useGraphShardExists } from '../../../../../store/reducers/capabilities/hooks';
4
5
  import { cn } from '../../../../../utils/cn';
5
6
  import { useAutoRefreshInterval } from '../../../../../utils/hooks';
6
7
  import './TenantDashboard.scss';
@@ -8,7 +9,11 @@ const CHART_WIDTH = 428;
8
9
  const CHART_WIDTH_FULL = 872;
9
10
  const b = cn('ydb-tenant-dashboard');
10
11
  export const TenantDashboard = ({ database, charts }) => {
11
- const [isDashboardHidden, setIsDashboardHidden] = React.useState(true);
12
+ const graphShardExists = useGraphShardExists();
13
+ const [hasSuccessfulChart, setHasSuccessfulChart] = React.useState(false);
14
+ const isDashboardHidden = React.useMemo(() => {
15
+ return !graphShardExists && !hasSuccessfulChart;
16
+ }, [graphShardExists, hasSuccessfulChart]);
12
17
  const [autoRefreshInterval] = useAutoRefreshInterval();
13
18
  // Refetch data only if dashboard successfully loaded
14
19
  const shouldRefresh = isDashboardHidden ? 0 : autoRefreshInterval;
@@ -18,12 +23,14 @@ export const TenantDashboard = ({ database, charts }) => {
18
23
  * 2. ydb version does not have /viewer/json/render endpoint (400, 404, CORS error, etc.)
19
24
  *
20
25
  * If at least one chart successfully loaded, dashboard should be shown
26
+ * This fallback behavior is only used when GraphShardExists capability is not available or false
21
27
  * @link https://github.com/ydb-platform/ydb-embedded-ui/issues/659
22
28
  * @todo disable only for specific errors ('GraphShard is not enabled') after ydb-stable-24 is generally used
23
29
  */
24
30
  const handleChartDataStatusChange = (chartStatus) => {
31
+ // Always track successful chart loads for fallback behavior
25
32
  if (chartStatus === 'success') {
26
- setIsDashboardHidden(false);
33
+ setHasSuccessfulChart(true);
27
34
  }
28
35
  };
29
36
  // If there is only one chart, display it with full width
@@ -1 +1 @@
1
- {"version":3,"file":"TenantDashboard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAMlE,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAElE,OAAO,wBAAwB,CAAC;AAEhC,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC;AAarC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAC,QAAQ,EAAE,MAAM,EAAuB,EAAE,EAAE;IACxE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,IAAI,CAAC,CAAC;IAChF,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,qDAAqD;IACrD,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAElE;;;;;;;;OAQG;IACH,MAAM,2BAA2B,GAAG,CAAC,WAA4B,EAAE,EAAE;QACjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACL,CAAC,CAAC;IAEF,yDAAyD;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;IACxE,MAAM,WAAW,GAAG,WAAW,GAAG,GAAG,CAAC;IAEtC,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,KAAC,WAAW,IAER,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,YAAY,EAAE,WAAW,CAAC,OAAO,EACjC,WAAW,EAAE,aAAa,EAC1B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,uBAAuB,EAAE,2BAA2B,EACpD,cAAc,EAAE,CAAC,iBAAiB,EAClC,KAAK,EAAE,WAAW,CAAC,KAAK,IATnB,KAAK,CAUZ,CACL,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAC,YAC7E,cAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,aAAa,EAAE,GAAO,GAClD,CACT,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"TenantDashboard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAMlE,OAAO,EAAC,mBAAmB,EAAC,MAAM,kDAAkD,CAAC;AACrF,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAElE,OAAO,wBAAwB,CAAC;AAEhC,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC;AAarC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAC,QAAQ,EAAE,MAAM,EAAuB,EAAE,EAAE;IACxE,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEnF,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACzC,OAAO,CAAC,gBAAgB,IAAI,CAAC,kBAAkB,CAAC;IACpD,CAAC,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE3C,MAAM,CAAC,mBAAmB,CAAC,GAAG,sBAAsB,EAAE,CAAC;IAEvD,qDAAqD;IACrD,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAElE;;;;;;;;;OASG;IACH,MAAM,2BAA2B,GAAG,CAAC,WAA4B,EAAE,EAAE;QACjE,4DAA4D;QAC5D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;IACL,CAAC,CAAC;IAEF,yDAAyD;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;IACxE,MAAM,WAAW,GAAG,WAAW,GAAG,GAAG,CAAC;IAEtC,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,KAAC,WAAW,IAER,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,YAAY,EAAE,WAAW,CAAC,OAAO,EACjC,WAAW,EAAE,aAAa,EAC1B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,uBAAuB,EAAE,2BAA2B,EACpD,cAAc,EAAE,CAAC,iBAAiB,EAClC,KAAK,EAAE,WAAW,CAAC,KAAK,IATnB,KAAK,CAUZ,CACL,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAC,YAC7E,cAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,aAAa,EAAE,GAAO,GAClD,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  .ydb-tenant-dashboard {
2
2
  width: var(--diagnostics-section-table-width);
3
- margin-bottom: var(--diagnostics-section-margin);
3
+ margin-bottom: var(--g-spacing-4);
4
4
 
5
5
  &__charts {
6
6
  display: flex;
@@ -0,0 +1,7 @@
1
+ import type { TMemoryStats } from '../../../../../types/api/nodes';
2
+ import './MemoryDetailsSection.scss';
3
+ interface MemoryDetailsSectionProps {
4
+ memoryStats: TMemoryStats;
5
+ }
6
+ export declare function MemoryDetailsSection({ memoryStats }: MemoryDetailsSectionProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import { Flex, Text } from '@gravity-ui/uikit';
4
+ import memoryI18n from '../../../../../components/MemoryViewer/i18n';
5
+ import { getMemorySegments } from '../../../../../components/MemoryViewer/utils';
6
+ import { ProgressWrapper } from '../../../../../components/ProgressWrapper';
7
+ import { cn } from '../../../../../utils/cn';
8
+ import { formatStorageValuesToGb } from '../../../../../utils/dataFormatters/dataFormatters';
9
+ import { safeParseNumber } from '../../../../../utils/utils';
10
+ import { MemorySegmentsList } from './MemorySegmentsList';
11
+ import './MemoryDetailsSection.scss';
12
+ const b = cn('memory-details');
13
+ export function MemoryDetailsSection({ memoryStats }) {
14
+ const memoryUsage = React.useMemo(() => {
15
+ if (memoryStats.AnonRss === undefined) {
16
+ return (safeParseNumber(memoryStats.AllocatedMemory) +
17
+ safeParseNumber(memoryStats.AllocatorCachesMemory));
18
+ }
19
+ else {
20
+ return safeParseNumber(memoryStats.AnonRss);
21
+ }
22
+ }, [memoryStats.AnonRss, memoryStats.AllocatedMemory, memoryStats.AllocatorCachesMemory]);
23
+ const memorySegments = React.useMemo(() => {
24
+ return getMemorySegments(memoryStats, memoryUsage);
25
+ }, [memoryStats, memoryUsage]);
26
+ const displaySegments = React.useMemo(() => {
27
+ return memorySegments.filter((segment) => !segment.isInfo && segment.value > 0);
28
+ }, [memorySegments]);
29
+ const formatValues = React.useCallback((value, total) => {
30
+ return formatStorageValuesToGb(value, total);
31
+ }, []);
32
+ return (_jsxs(Flex, { direction: "column", alignItems: "flex-start", gap: "3", children: [_jsx("div", { className: b('header'), children: _jsx(Text, { variant: "body-1", className: b('title'), children: memoryI18n('text_memory-details') }) }), _jsxs(Flex, { direction: "column", alignItems: "flex-start", gap: "4", width: "100%", children: [_jsx("div", { className: b('main-progress'), children: _jsx(ProgressWrapper, { stack: memorySegments, totalCapacity: memoryStats.HardLimit, formatValues: formatValues, className: b('main-progress-bar'), size: "m", width: "full" }) }), _jsx(MemorySegmentsList, { segments: displaySegments, className: b('memory-segments-list') })] })] }));
33
+ }
34
+ //# sourceMappingURL=MemoryDetailsSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryDetailsSection.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/MemoryDetailsSection.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ @use '../../../../../styles/mixins.scss';
2
+
3
+ .memory-details {
4
+ &__header {
5
+ align-self: stretch;
6
+ }
7
+
8
+ &__title {
9
+ font-weight: 500;
10
+ @include mixins.subheader-1-typography();
11
+ }
12
+
13
+ &__main-progress {
14
+ align-self: stretch;
15
+ }
16
+
17
+ &__main-progress-bar {
18
+ height: 20px;
19
+ }
20
+
21
+ &__memory-segments-list {
22
+ --g-definition-list-item-gap: var(--g-spacing-2);
23
+ margin-bottom: var(--g-spacing-4);
24
+ }
25
+
26
+ &__segment-indicator {
27
+ flex-shrink: 0;
28
+
29
+ width: 8px;
30
+ height: 8px;
31
+
32
+ border-radius: 50%;
33
+ }
34
+
35
+ &__segment-progress {
36
+ flex-shrink: 0;
37
+
38
+ width: 400px;
39
+ }
40
+
41
+ &__progress-bar {
42
+ height: 10px;
43
+ }
44
+ }
@@ -0,0 +1,7 @@
1
+ import type { MemorySegment } from '../../../../../components/MemoryViewer/utils';
2
+ interface MemorySegmentsListProps {
3
+ segments: MemorySegment[];
4
+ className?: string;
5
+ }
6
+ export declare function MemorySegmentsList({ segments, className }: MemorySegmentsListProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};