ydb-embedded-ui 17.1.0 → 18.0.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 (366) hide show
  1. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.d.ts +6 -1
  2. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +30 -6
  3. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js.map +1 -1
  4. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +230 -5
  5. package/dist/components/Drawer/Drawer.js +4 -1
  6. package/dist/components/Drawer/Drawer.js.map +1 -1
  7. package/dist/components/FullNodeViewer/i18n/index.d.ts +1 -1
  8. package/dist/components/LinkToSchemaObject/LinkToSchemaObject.d.ts +4 -3
  9. package/dist/components/LinkToSchemaObject/LinkToSchemaObject.js +31 -8
  10. package/dist/components/LinkToSchemaObject/LinkToSchemaObject.js.map +1 -1
  11. package/dist/components/LinkToSchemaObject/utils.d.ts +4 -0
  12. package/dist/components/LinkToSchemaObject/utils.js +19 -0
  13. package/dist/components/LinkToSchemaObject/utils.js.map +1 -0
  14. package/dist/components/LinkWithIcon/LinkWithIcon.js +1 -1
  15. package/dist/components/LinkWithIcon/LinkWithIcon.js.map +1 -1
  16. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
  17. package/dist/components/PaginatedTable/PaginatedTable.d.ts +3 -2
  18. package/dist/components/PaginatedTable/PaginatedTable.js +2 -2
  19. package/dist/components/PaginatedTable/PaginatedTable.js.map +1 -1
  20. package/dist/components/PaginatedTable/PaginatedTable.scss +4 -0
  21. package/dist/components/PaginatedTable/TableChunk.d.ts +3 -2
  22. package/dist/components/PaginatedTable/TableChunk.js +2 -2
  23. package/dist/components/PaginatedTable/TableChunk.js.map +1 -1
  24. package/dist/components/PaginatedTable/TableChunksRenderer.d.ts +3 -2
  25. package/dist/components/PaginatedTable/TableChunksRenderer.js +3 -2
  26. package/dist/components/PaginatedTable/TableChunksRenderer.js.map +1 -1
  27. package/dist/components/PaginatedTable/TableRow.d.ts +3 -2
  28. package/dist/components/PaginatedTable/TableRow.js +9 -2
  29. package/dist/components/PaginatedTable/TableRow.js.map +1 -1
  30. package/dist/components/PaginatedTable/types.d.ts +1 -0
  31. package/dist/components/ProgressWrapper/progressUtils.js +1 -1
  32. package/dist/components/ProgressWrapper/progressUtils.js.map +1 -1
  33. package/dist/components/SegmentedProgress/SegmentedProgress.d.ts +5 -1
  34. package/dist/components/SegmentedProgress/SegmentedProgress.js +3 -3
  35. package/dist/components/SegmentedProgress/SegmentedProgress.js.map +1 -1
  36. package/dist/components/SegmentedProgress/SegmentedProgress.scss +37 -4
  37. package/dist/components/Stack/Stack.scss +2 -0
  38. package/dist/components/StorageGroupInfo/i18n/index.d.ts +1 -1
  39. package/dist/components/VDisk/VDisk.d.ts +3 -1
  40. package/dist/components/VDisk/VDisk.js +21 -4
  41. package/dist/components/VDisk/VDisk.js.map +1 -1
  42. package/dist/components/VDisk/VDiskWithDonorsStack.js +6 -3
  43. package/dist/components/VDisk/VDiskWithDonorsStack.js.map +1 -1
  44. package/dist/components/VDisk/i18n/en.json +1 -1
  45. package/dist/components/VDiskInfo/VDiskInfo.js +2 -2
  46. package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
  47. package/dist/containers/App/NavigationWrapper.js +4 -1
  48. package/dist/containers/App/NavigationWrapper.js.map +1 -1
  49. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsCores.js +1 -1
  50. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsCores.js.map +1 -1
  51. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsMemory.js +1 -1
  52. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsMemory.js.map +1 -1
  53. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.js +1 -1
  54. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.js.map +1 -1
  55. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js +1 -1
  56. package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js.map +1 -1
  57. package/dist/containers/Clusters/constants.d.ts +1 -1
  58. package/dist/containers/Configs/types.d.ts +1 -1
  59. package/dist/containers/GetUserWrapper/GetUserWrapper.d.ts +4 -2
  60. package/dist/containers/GetUserWrapper/GetUserWrapper.js +4 -6
  61. package/dist/containers/GetUserWrapper/GetUserWrapper.js.map +1 -1
  62. package/dist/containers/Header/hooks/useHeaderPageContext.js +4 -4
  63. package/dist/containers/Header/hooks/useHeaderPageContext.js.map +1 -1
  64. package/dist/containers/Header/i18n/index.d.ts +1 -1
  65. package/dist/containers/HomePage/HomePage.js +15 -6
  66. package/dist/containers/HomePage/HomePage.js.map +1 -1
  67. package/dist/containers/HomePage/useHomePageTab.d.ts +4 -0
  68. package/dist/containers/HomePage/useHomePageTab.js +16 -1
  69. package/dist/containers/HomePage/useHomePageTab.js.map +1 -1
  70. package/dist/containers/Node/Node.js +7 -5
  71. package/dist/containers/Node/Node.js.map +1 -1
  72. package/dist/containers/Node/NodePages.d.ts +1 -1
  73. package/dist/containers/Node/Threads/Threads.d.ts +2 -1
  74. package/dist/containers/Node/Threads/Threads.js +2 -2
  75. package/dist/containers/Node/Threads/Threads.js.map +1 -1
  76. package/dist/containers/Operations/Operations.js +14 -3
  77. package/dist/containers/Operations/Operations.js.map +1 -1
  78. package/dist/containers/Operations/OperationsControls.d.ts +5 -1
  79. package/dist/containers/Operations/OperationsControls.js +2 -3
  80. package/dist/containers/Operations/OperationsControls.js.map +1 -1
  81. package/dist/containers/Operations/constants.d.ts +4 -0
  82. package/dist/containers/Operations/constants.js +4 -0
  83. package/dist/containers/Operations/constants.js.map +1 -1
  84. package/dist/containers/Operations/i18n/en.json +1 -0
  85. package/dist/containers/Operations/i18n/index.d.ts +1 -1
  86. package/dist/containers/Operations/useOperationsQueryParams.d.ts +1 -0
  87. package/dist/containers/Operations/useOperationsQueryParams.js +20 -9
  88. package/dist/containers/Operations/useOperationsQueryParams.js.map +1 -1
  89. package/dist/containers/Operations/utils.d.ts +12 -0
  90. package/dist/containers/Operations/utils.js +8 -0
  91. package/dist/containers/Operations/utils.js.map +1 -1
  92. package/dist/containers/PDiskPage/PDiskPage.js +2 -2
  93. package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
  94. package/dist/containers/Storage/Disks/Disks.d.ts +1 -0
  95. package/dist/containers/Storage/Disks/Disks.js +6 -4
  96. package/dist/containers/Storage/Disks/Disks.js.map +1 -1
  97. package/dist/containers/Storage/PaginatedStorage.js +3 -1
  98. package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
  99. package/dist/containers/Storage/PaginatedStorageGroups/GroupedStorageGroupsComponent.js +1 -1
  100. package/dist/containers/Storage/PaginatedStorageGroups/GroupedStorageGroupsComponent.js.map +1 -1
  101. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsComponent.js +1 -1
  102. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsComponent.js.map +1 -1
  103. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.d.ts +5 -2
  104. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js +18 -8
  105. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js.map +1 -1
  106. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/StorageGroupsColumns.scss +10 -0
  107. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js +9 -4
  108. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js.map +1 -1
  109. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.d.ts +5 -1
  110. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js +9 -1
  111. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js.map +1 -1
  112. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js +37 -9
  113. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js.map +1 -1
  114. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/en.json +1 -0
  115. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/index.d.ts +1 -1
  116. package/dist/containers/Storage/PaginatedStorageNodesTable/columns/constants.d.ts +1 -1
  117. package/dist/containers/Storage/PaginatedStorageNodesTable/columns/constants.js +1 -1
  118. package/dist/containers/Storage/PaginatedStorageNodesTable/columns/constants.js.map +1 -1
  119. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.d.ts +6 -0
  120. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js +28 -0
  121. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js.map +1 -0
  122. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.scss +31 -0
  123. package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.d.ts +5 -0
  124. package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js +5 -0
  125. package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js.map +1 -0
  126. package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.d.ts +5 -0
  127. package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.js +21 -0
  128. package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.js.map +1 -0
  129. package/dist/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.d.ts +5 -0
  130. package/dist/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.js +21 -0
  131. package/dist/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.js.map +1 -0
  132. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.d.ts +6 -0
  133. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js +65 -0
  134. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js.map +1 -0
  135. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.scss +115 -0
  136. package/dist/containers/Storage/StorageExpertModePanel/components/StateLegend.d.ts +5 -0
  137. package/dist/containers/Storage/StorageExpertModePanel/components/StateLegend.js +23 -0
  138. package/dist/containers/Storage/StorageExpertModePanel/components/StateLegend.js.map +1 -0
  139. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.d.ts +7 -0
  140. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js +26 -0
  141. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js.map +1 -0
  142. package/dist/containers/Storage/StorageExpertModePanel/components/index.d.ts +5 -0
  143. package/dist/containers/Storage/StorageExpertModePanel/components/index.js +6 -0
  144. package/dist/containers/Storage/StorageExpertModePanel/components/index.js.map +1 -0
  145. package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.d.ts +7 -0
  146. package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js +21 -0
  147. package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js.map +1 -0
  148. package/dist/containers/Storage/StorageExpertModePanel/constants.d.ts +13 -0
  149. package/dist/containers/Storage/StorageExpertModePanel/constants.js +7 -0
  150. package/dist/containers/Storage/StorageExpertModePanel/constants.js.map +1 -0
  151. package/dist/containers/Storage/StorageExpertModePanel/i18n/en.json +33 -0
  152. package/dist/containers/Storage/StorageExpertModePanel/i18n/index.d.ts +2 -0
  153. package/dist/containers/Storage/StorageExpertModePanel/i18n/index.js +5 -0
  154. package/dist/containers/Storage/StorageExpertModePanel/i18n/index.js.map +1 -0
  155. package/dist/containers/Storage/i18n/en.json +1 -0
  156. package/dist/containers/Storage/i18n/index.d.ts +1 -1
  157. package/dist/containers/Storage/useStorageQueryParams.d.ts +9 -0
  158. package/dist/containers/Storage/useStorageQueryParams.js +57 -6
  159. package/dist/containers/Storage/useStorageQueryParams.js.map +1 -1
  160. package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.d.ts +2 -0
  161. package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js +46 -0
  162. package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js.map +1 -0
  163. package/dist/containers/Storage/utils/index.d.ts +1 -1
  164. package/dist/containers/Tablet/components/TabletInfo/i18n/index.d.ts +1 -1
  165. package/dist/containers/Tenant/Diagnostics/HotKeys/i18n/index.d.ts +1 -1
  166. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.d.ts +4 -3
  167. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js +53 -28
  168. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js.map +1 -1
  169. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.scss +4 -0
  170. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/i18n/en.json +2 -1
  171. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/i18n/index.d.ts +1 -1
  172. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/types.d.ts +7 -0
  173. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/useManagePartitionForm.d.ts +2 -2
  174. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/useManagePartitionForm.js.map +1 -1
  175. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.d.ts +19 -31
  176. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js +48 -15
  177. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js.map +1 -1
  178. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js +9 -3
  179. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js.map +1 -1
  180. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/en.json +3 -1
  181. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/index.d.ts +1 -1
  182. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/hooks/useTablePartitioning.js +1 -0
  183. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/hooks/useTablePartitioning.js.map +1 -1
  184. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/utils.d.ts +2 -2
  185. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/utils.js +3 -3
  186. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/utils.js.map +1 -1
  187. package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.js +3 -2
  188. package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.js.map +1 -1
  189. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricPageSummary/MetricPageSummary.d.ts +13 -0
  190. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricPageSummary/MetricPageSummary.js +13 -0
  191. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricPageSummary/MetricPageSummary.js.map +1 -0
  192. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricPageSummary/MetricPageSummary.scss +51 -0
  193. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.d.ts +4 -20
  194. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.js +8 -51
  195. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.js.map +1 -1
  196. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.scss +24 -35
  197. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/CpuTab.d.ts +3 -6
  198. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/CpuTab.js +4 -7
  199. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/CpuTab.js.map +1 -1
  200. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/MemoryTab.d.ts +2 -4
  201. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/MemoryTab.js +3 -3
  202. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/MemoryTab.js.map +1 -1
  203. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/NetworkTab.d.ts +3 -3
  204. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/NetworkTab.js +4 -6
  205. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/NetworkTab.js.map +1 -1
  206. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/PlaceholderTab.js +1 -3
  207. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/PlaceholderTab.js.map +1 -1
  208. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/StorageTab.d.ts +3 -6
  209. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/StorageTab.js +4 -21
  210. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/StorageTab.js.map +1 -1
  211. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/MetricTabCard.d.ts +11 -0
  212. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/MetricTabCard.js +10 -0
  213. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/MetricTabCard.js.map +1 -0
  214. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/ServerlessTabCard.d.ts +3 -3
  215. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/ServerlessTabCard.js +3 -4
  216. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/ServerlessTabCard.js.map +1 -1
  217. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/TabCard.scss +21 -13
  218. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.d.ts +3 -1
  219. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js +5 -2
  220. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js.map +1 -1
  221. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.d.ts +3 -1
  222. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js +5 -2
  223. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js.map +1 -1
  224. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.scss +4 -0
  225. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.d.ts +4 -1
  226. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js +12 -2
  227. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js.map +1 -1
  228. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +30 -11
  229. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
  230. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +3 -3
  231. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js.map +1 -1
  232. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/displayFormatters.d.ts +2 -1
  233. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/displayFormatters.js +20 -13
  234. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/displayFormatters.js.map +1 -1
  235. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/i18n/index.d.ts +1 -1
  236. package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +12 -0
  237. package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
  238. package/dist/containers/Tenant/Diagnostics/TenantOverview/metricOverview.d.ts +37 -0
  239. package/dist/containers/Tenant/Diagnostics/TenantOverview/metricOverview.js +115 -0
  240. package/dist/containers/Tenant/Diagnostics/TenantOverview/metricOverview.js.map +1 -0
  241. package/dist/containers/Tenant/Diagnostics/TopQueries/hooks/useRunningQueriesSort.d.ts +5 -1
  242. package/dist/containers/Tenant/Diagnostics/TopQueries/hooks/useTopQueriesSort.d.ts +7 -1
  243. package/dist/containers/Tenant/Diagnostics/TopicData/TopicData.js +19 -7
  244. package/dist/containers/Tenant/Diagnostics/TopicData/TopicData.js.map +1 -1
  245. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js +2 -3
  246. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js.map +1 -1
  247. package/dist/containers/Tenant/Diagnostics/i18n/index.d.ts +1 -1
  248. package/dist/containers/Tenant/Diagnostics/useDiagnosticsPages.js +2 -3
  249. package/dist/containers/Tenant/Diagnostics/useDiagnosticsPages.js.map +1 -1
  250. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +1 -2
  251. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js.map +1 -1
  252. package/dist/containers/Tenant/ObjectSummary/UpdateTreeContext.d.ts +1 -0
  253. package/dist/containers/Tenant/ObjectSummary/UpdateTreeContext.js +5 -0
  254. package/dist/containers/Tenant/ObjectSummary/UpdateTreeContext.js.map +1 -1
  255. package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js +1 -1
  256. package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js.map +1 -1
  257. package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsTimeout.d.ts +2 -2
  258. package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsTimeout.js +1 -2
  259. package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsTimeout.js.map +1 -1
  260. package/dist/containers/Tenant/Tenant.js +2 -1
  261. package/dist/containers/Tenant/Tenant.js.map +1 -1
  262. package/dist/containers/Tenant/TenantPages.d.ts +1 -0
  263. package/dist/containers/Tenant/TenantPages.js.map +1 -1
  264. package/dist/containers/Tenant/utils/schemaQueryTemplates.js +6 -6
  265. package/dist/containers/UserSettings/i18n/en.json +3 -1
  266. package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
  267. package/dist/containers/UserSettings/settings.d.ts +2 -0
  268. package/dist/containers/UserSettings/settings.js +12 -0
  269. package/dist/containers/UserSettings/settings.js.map +1 -1
  270. package/dist/containers/VDiskPage/VDiskPage.js +2 -2
  271. package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
  272. package/dist/containers/VDiskPage/VDiskStorageDetails.js +2 -2
  273. package/dist/containers/VDiskPage/VDiskStorageDetails.js.map +1 -1
  274. package/dist/lib.d.ts +1 -0
  275. package/dist/lib.js +1 -0
  276. package/dist/lib.js.map +1 -1
  277. package/dist/routes.d.ts +4 -1
  278. package/dist/store/reducers/capabilities/capabilities.d.ts +118 -1
  279. package/dist/store/reducers/capabilities/capabilities.js +1 -0
  280. package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
  281. package/dist/store/reducers/capabilities/hooks.d.ts +1 -0
  282. package/dist/store/reducers/capabilities/hooks.js +10 -1
  283. package/dist/store/reducers/capabilities/hooks.js.map +1 -1
  284. package/dist/store/reducers/settings/constants.d.ts +7 -0
  285. package/dist/store/reducers/settings/constants.js +6 -0
  286. package/dist/store/reducers/settings/constants.js.map +1 -1
  287. package/dist/store/reducers/settings/utils.d.ts +2 -1
  288. package/dist/store/reducers/storage/types.d.ts +2 -2
  289. package/dist/store/reducers/storage/utils.js +9 -3
  290. package/dist/store/reducers/storage/utils.js.map +1 -1
  291. package/dist/store/reducers/storageUsage/StorageUsage.d.ts +1 -1
  292. package/dist/store/reducers/tenant/types.d.ts +1 -1
  293. package/dist/styles/index.scss +1 -0
  294. package/dist/styles/mixins.scss +10 -6
  295. package/dist/styles/space-colors.scss +60 -0
  296. package/dist/types/api/capabilities.d.ts +3 -1
  297. package/dist/types/api/operations.d.ts +1 -1
  298. package/dist/uiFactory/types.d.ts +15 -0
  299. package/dist/uiFactory/uiFactory.js +1 -0
  300. package/dist/uiFactory/uiFactory.js.map +1 -1
  301. package/dist/utils/capacityAlerts.d.ts +2 -4
  302. package/dist/utils/capacityAlerts.js +11 -11
  303. package/dist/utils/capacityAlerts.js.map +1 -1
  304. package/dist/utils/disks/calculatePDiskSeverity.d.ts +1 -1
  305. package/dist/utils/disks/constants.d.ts +57 -20
  306. package/dist/utils/disks/constants.js +68 -7
  307. package/dist/utils/disks/constants.js.map +1 -1
  308. package/dist/utils/disks/displayState.d.ts +11 -0
  309. package/dist/utils/disks/displayState.js +11 -0
  310. package/dist/utils/disks/displayState.js.map +1 -0
  311. package/dist/utils/disks/getIconStrategy.d.ts +6 -0
  312. package/dist/utils/disks/getIconStrategy.js +21 -0
  313. package/dist/utils/disks/getIconStrategy.js.map +1 -0
  314. package/dist/utils/disks/getSeverityStrategy.d.ts +6 -0
  315. package/dist/utils/disks/getSeverityStrategy.js +21 -0
  316. package/dist/utils/disks/getSeverityStrategy.js.map +1 -0
  317. package/dist/utils/disks/groupBy.d.ts +8 -0
  318. package/dist/utils/disks/groupBy.js +8 -0
  319. package/dist/utils/disks/groupBy.js.map +1 -0
  320. package/dist/utils/disks/helpers.d.ts +19 -4
  321. package/dist/utils/disks/helpers.js +84 -4
  322. package/dist/utils/disks/helpers.js.map +1 -1
  323. package/dist/utils/disks/iconCalculators.d.ts +51 -0
  324. package/dist/utils/disks/iconCalculators.js +184 -0
  325. package/dist/utils/disks/iconCalculators.js.map +1 -0
  326. package/dist/utils/disks/severityCalculators.d.ts +47 -0
  327. package/dist/utils/disks/severityCalculators.js +143 -0
  328. package/dist/utils/disks/severityCalculators.js.map +1 -0
  329. package/dist/utils/disks/types.d.ts +31 -0
  330. package/dist/utils/docs.d.ts +14 -0
  331. package/dist/utils/docs.js +25 -0
  332. package/dist/utils/docs.js.map +1 -0
  333. package/dist/utils/generateEvaluator.d.ts +1 -1
  334. package/dist/utils/hooks/useChangedQuerySettings.d.ts +2 -2
  335. package/dist/utils/hooks/useLastQueryExecutionSettings.d.ts +2 -2
  336. package/dist/utils/hooks/useQueryExecutionSettings.d.ts +1 -1
  337. package/dist/utils/metrics/formatMetricLegend.d.ts +2 -0
  338. package/dist/utils/metrics/formatMetricLegend.js +11 -4
  339. package/dist/utils/metrics/formatMetricLegend.js.map +1 -1
  340. package/dist/utils/metrics/getDiagramValues.d.ts +48 -0
  341. package/dist/utils/metrics/getDiagramValues.js +59 -0
  342. package/dist/utils/metrics/getDiagramValues.js.map +1 -0
  343. package/dist/utils/metrics.d.ts +1 -0
  344. package/dist/utils/metrics.js +3 -0
  345. package/dist/utils/metrics.js.map +1 -1
  346. package/dist/utils/nodes.d.ts +1 -1
  347. package/dist/utils/query.d.ts +22 -61
  348. package/dist/utils/query.js +16 -10
  349. package/dist/utils/query.js.map +1 -1
  350. package/dist/utils/storageMetrics.d.ts +2 -0
  351. package/dist/utils/storageMetrics.js +17 -0
  352. package/dist/utils/storageMetrics.js.map +1 -1
  353. package/dist/utils/zod/configureZod.d.ts +6 -0
  354. package/dist/utils/zod/configureZod.js +14 -0
  355. package/dist/utils/zod/configureZod.js.map +1 -0
  356. package/dist/utils/zod/zodParsers.d.ts +1 -1
  357. package/package.json +4 -4
  358. package/dist/containers/Cluster/ClusterOverview/utils.d.ts +0 -19
  359. package/dist/containers/Cluster/ClusterOverview/utils.js +0 -46
  360. package/dist/containers/Cluster/ClusterOverview/utils.js.map +0 -1
  361. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UsageTabCard.d.ts +0 -15
  362. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UsageTabCard.js +0 -22
  363. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UsageTabCard.js.map +0 -1
  364. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UtilizationTabCard.d.ts +0 -10
  365. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UtilizationTabCard.js +0 -16
  366. package/dist/containers/Tenant/Diagnostics/TenantOverview/TabCard/UtilizationTabCard.js.map +0 -1
@@ -93,12 +93,13 @@
93
93
  --tab-border-width: 1px;
94
94
  --tab-filler-size: 10px;
95
95
  --tab-overlap: -1px;
96
- --tab-lift-offset: -6px;
97
- --tab-border-compensation: 1px;
98
96
  --tab-adjusted-spacing: calc(var(--g-spacing-3) - var(--tab-border-width));
99
97
  --z-tab-base: 100;
100
98
  --z-tab-active: 110;
101
99
  --g-border-radius-xxl: 12px;
100
+ --metric-tab-card-width: 225px;
101
+ --metric-tab-card-width-narrow: 210px;
102
+ --metric-tab-card-height: 70px;
102
103
 
103
104
  // Fallback for browsers without :has() support
104
105
  @supports not selector(:has(*)) {
@@ -111,6 +112,8 @@
111
112
  }
112
113
 
113
114
  &__link {
115
+ display: block;
116
+
114
117
  text-decoration: none;
115
118
 
116
119
  color: inherit;
@@ -124,7 +127,7 @@
124
127
  position: relative;
125
128
  z-index: var(--z-tab-base);
126
129
 
127
- flex: 1;
130
+ flex: 0 0 auto;
128
131
 
129
132
  margin-left: var(--tab-overlap);
130
133
  padding: 0 var(--g-spacing-3) var(--g-spacing-3) var(--g-spacing-3);
@@ -132,15 +135,6 @@
132
135
  border-bottom: var(--tab-border-width) solid var(--g-color-line-generic);
133
136
  background: var(--g-color-base-background);
134
137
 
135
- .tenant-tab-card__card-container {
136
- border: 1px solid transparent;
137
- border-top: none;
138
-
139
- & > div {
140
- transform: translateY(1px);
141
- }
142
- }
143
-
144
138
  &:nth-child(1) {
145
139
  z-index: calc(var(--z-tab-base) + 3);
146
140
  }
@@ -172,34 +166,31 @@
172
166
  padding-right: 0;
173
167
  @include tab-edge-filler(right);
174
168
  }
175
- }
176
169
 
177
- &__link {
178
- display: block;
170
+ &_placeholder {
171
+ z-index: 1;
172
+
173
+ flex: 1 1 auto;
174
+
175
+ pointer-events: none;
176
+
177
+ .tenant-metrics-tabs__link {
178
+ height: var(--metric-tab-card-height);
179
+ }
180
+ }
179
181
  }
180
182
 
181
183
  // Active state styling
182
184
  &__link-container_active {
183
185
  z-index: var(--z-tab-active) !important;
184
186
 
187
+ width: var(--metric-tab-card-width);
188
+ height: var(--metric-tab-card-height);
185
189
  padding: 0;
186
190
 
187
191
  border-bottom: 0;
188
- background: var(--g-color-base-background);
189
-
190
- transform: translateY(var(--tab-lift-offset));
191
-
192
- .tenant-tab-card__card-container {
193
- border: none;
194
- border-radius: var(--g-border-radius-xs);
195
-
196
- & > div {
197
- transform: translateY(0);
198
- }
199
- }
200
192
 
201
193
  .tenant-metrics-tabs__link {
202
- padding-bottom: var(--tab-border-compensation);
203
194
  @include tab-border-base(var(--g-color-line-generic));
204
195
  }
205
196
  }
@@ -223,14 +214,12 @@
223
214
  &__link-container:not(:has(+ &__link-container_active)) {
224
215
  padding-right: 0;
225
216
  }
226
- }
227
217
 
228
- .tenant-metrics-tabs_serverless {
229
- .tenant-metrics-tabs__link-container_placeholder {
230
- pointer-events: none;
218
+ &_serverless {
219
+ --metric-tab-card-width: 242px;
220
+ }
231
221
 
232
- .tenant-tab-card__card-container {
233
- opacity: 0;
234
- }
222
+ @media (max-width: 1200px) {
223
+ --metric-tab-card-width: var(--metric-tab-card-width-narrow);
235
224
  }
236
225
  }
@@ -1,13 +1,10 @@
1
+ import type { TenantOverviewMetric } from '../../metricOverview';
1
2
  import '../MetricsTabs.scss';
2
3
  interface CpuTabProps {
3
4
  to: string;
4
5
  active: boolean;
6
+ cpu?: TenantOverviewMetric;
5
7
  isServerless: boolean;
6
- cpu: {
7
- totalUsed: number;
8
- totalLimit: number;
9
- };
10
- controlPlaneNodesCount?: number;
11
8
  }
12
- export declare function CpuTab({ to, active, isServerless, cpu, controlPlaneNodesCount }: CpuTabProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function CpuTab({ to, active, cpu, isServerless }: CpuTabProps): import("react/jsx-runtime").JSX.Element;
13
10
  export {};
@@ -1,16 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Link } from 'react-router-dom';
3
3
  import { cn } from '../../../../../../utils/cn';
4
- import { formatCoresLegend } from '../../../../../../utils/metrics/formatMetricLegend';
4
+ import { MetricTabCard } from '../../TabCard/MetricTabCard';
5
5
  import { ServerlessTabCard } from '../../TabCard/ServerlessTabCard';
6
- import { UsageTabCard } from '../../TabCard/UsageTabCard';
7
6
  import i18n from '../../i18n';
8
7
  import '../MetricsTabs.scss';
9
8
  const b = cn('tenant-metrics-tabs');
10
- export function CpuTab({ to, active, isServerless, cpu, controlPlaneNodesCount }) {
11
- const dedicatedDatabaseUsageText = !controlPlaneNodesCount
12
- ? i18n('context_cpu-load')
13
- : i18n('context_cpu-nodes-count', { count: controlPlaneNodesCount });
14
- return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: isServerless ? (_jsx(ServerlessTabCard, { text: i18n('context_cpu-load'), active: active, helpText: i18n('context_cpu-description'), subtitle: i18n('context_serverless-autoscaled') })) : (_jsx(UsageTabCard, { text: dedicatedDatabaseUsageText, value: cpu.totalUsed, limit: cpu.totalLimit, legendFormatter: formatCoresLegend, active: active, helpText: i18n('context_cpu-description') })) }) }));
9
+ export function CpuTab({ to, active, cpu, isServerless }) {
10
+ var _a;
11
+ return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: isServerless || !cpu ? (_jsx(ServerlessTabCard, { title: i18n('title_cpu-load'), active: active, description: i18n('context_serverless-autoscaled'), helpText: i18n('context_cpu-description') })) : (_jsx(MetricTabCard, { title: i18n('title_cpu'), status: cpu.status, value: (_a = cpu.percentText) !== null && _a !== void 0 ? _a : i18n('value_unavailable-percent'), active: active, description: i18n('context_cpu-tab-description') })) }) }));
15
12
  }
16
13
  //# sourceMappingURL=CpuTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CpuTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/CpuTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,oDAAoD,CAAC;AACrF,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,IAAI,MAAM,YAAY,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAUpC,MAAM,UAAU,MAAM,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,sBAAsB,EAAc;IACvF,MAAM,0BAA0B,GAAG,CAAC,sBAAsB;QACtD,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAC,KAAK,EAAE,sBAAsB,EAAC,CAAC,CAAC;IAEvE,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC7B,YAAY,CAAC,CAAC,CAAC,CACZ,KAAC,iBAAiB,IACd,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,yBAAyB,CAAC,EACzC,QAAQ,EAAE,IAAI,CAAC,+BAA+B,CAAC,GACjD,CACL,CAAC,CAAC,CAAC,CACA,KAAC,YAAY,IACT,IAAI,EAAE,0BAA0B,EAChC,KAAK,EAAE,GAAG,CAAC,SAAS,EACpB,KAAK,EAAE,GAAG,CAAC,UAAU,EACrB,eAAe,EAAE,iBAAiB,EAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,yBAAyB,CAAC,GAC3C,CACL,GACE,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"CpuTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/CpuTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAClE,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AASpC,MAAM,UAAU,MAAM,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAc;;IAC/D,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC7B,YAAY,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CACpB,KAAC,iBAAiB,IACd,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,+BAA+B,CAAC,EAClD,QAAQ,EAAE,IAAI,CAAC,yBAAyB,CAAC,GAC3C,CACL,CAAC,CAAC,CAAC,CACA,KAAC,aAAa,IACV,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,EACxB,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,KAAK,EAAE,MAAA,GAAG,CAAC,WAAW,mCAAI,IAAI,CAAC,2BAA2B,CAAC,EAC3D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,6BAA6B,CAAC,GAClD,CACL,GACE,GACL,CACT,CAAC;AACN,CAAC"}
@@ -1,11 +1,9 @@
1
+ import type { TenantOverviewMetric } from '../../metricOverview';
1
2
  import '../MetricsTabs.scss';
2
3
  interface MemoryTabProps {
3
4
  to: string;
4
5
  active: boolean;
5
- memory: {
6
- totalUsed: number;
7
- totalLimit: number;
8
- };
6
+ memory: TenantOverviewMetric;
9
7
  }
10
8
  export declare function MemoryTab({ to, active, memory }: MemoryTabProps): import("react/jsx-runtime").JSX.Element;
11
9
  export {};
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Link } from 'react-router-dom';
3
3
  import { cn } from '../../../../../../utils/cn';
4
- import { formatStorageLegend } from '../../../../../../utils/metrics/formatMetricLegend';
5
- import { UsageTabCard } from '../../TabCard/UsageTabCard';
4
+ import { MetricTabCard } from '../../TabCard/MetricTabCard';
6
5
  import i18n from '../../i18n';
7
6
  import '../MetricsTabs.scss';
8
7
  const b = cn('tenant-metrics-tabs');
9
8
  export function MemoryTab({ to, active, memory }) {
10
- return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: _jsx(UsageTabCard, { text: i18n('context_memory-used'), value: memory.totalUsed, limit: memory.totalLimit, legendFormatter: formatStorageLegend, active: active, helpText: i18n('context_memory-description') }) }) }));
9
+ var _a;
10
+ return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: _jsx(MetricTabCard, { title: i18n('title_memory'), status: memory.status, value: (_a = memory.percentText) !== null && _a !== void 0 ? _a : i18n('value_unavailable-percent'), active: active, description: i18n('context_memory-tab-description') }) }) }));
11
11
  }
12
12
  //# sourceMappingURL=MemoryTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/MemoryTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,IAAI,MAAM,YAAY,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAQpC,MAAM,UAAU,SAAS,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAiB;IAC1D,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC9B,KAAC,YAAY,IACT,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,EACjC,KAAK,EAAE,MAAM,CAAC,SAAS,EACvB,KAAK,EAAE,MAAM,CAAC,UAAU,EACxB,eAAe,EAAE,mBAAmB,EACpC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,4BAA4B,CAAC,GAC9C,GACC,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"MemoryTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/MemoryTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAQpC,MAAM,UAAU,SAAS,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAiB;;IAC1D,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC9B,KAAC,aAAa,IACV,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,KAAK,EAAE,MAAA,MAAM,CAAC,WAAW,mCAAI,IAAI,CAAC,2BAA2B,CAAC,EAC9D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,gCAAgC,CAAC,GACrD,GACC,GACL,CACT,CAAC;AACN,CAAC"}
@@ -1,9 +1,9 @@
1
+ import type { TenantOverviewMetric } from '../../metricOverview';
1
2
  import '../MetricsTabs.scss';
2
3
  interface NetworkTabProps {
3
4
  to: string;
4
5
  active: boolean;
5
- networkUtilization: number;
6
- networkThroughput: number;
6
+ network: TenantOverviewMetric;
7
7
  }
8
- export declare function NetworkTab({ to, active, networkUtilization, networkThroughput }: NetworkTabProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function NetworkTab({ to, active, network }: NetworkTabProps): import("react/jsx-runtime").JSX.Element;
9
9
  export {};
@@ -1,14 +1,12 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Link } from 'react-router-dom';
3
3
  import { cn } from '../../../../../../utils/cn';
4
- import { formatNetworkMetric } from '../../../../../../utils/metrics/formatMetricLegend';
5
- import { UtilizationTabCard } from '../../TabCard/UtilizationTabCard';
4
+ import { MetricTabCard } from '../../TabCard/MetricTabCard';
6
5
  import i18n from '../../i18n';
7
6
  import '../MetricsTabs.scss';
8
7
  const b = cn('tenant-metrics-tabs');
9
- export function NetworkTab({ to, active, networkUtilization, networkThroughput }) {
10
- const fillPercent = networkUtilization * 100;
11
- const legendText = formatNetworkMetric(networkThroughput);
12
- return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: _jsx(UtilizationTabCard, { text: i18n('context_network-usage'), fillPercent: fillPercent, legendText: legendText, active: active, helpText: i18n('context_network-description') }) }) }));
8
+ export function NetworkTab({ to, active, network }) {
9
+ var _a;
10
+ return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: _jsx(MetricTabCard, { title: i18n('title_network'), status: network.status, value: (_a = network.percentText) !== null && _a !== void 0 ? _a : i18n('value_unavailable-percent'), active: active, description: i18n('context_network-tab-description') }) }) }));
13
11
  }
14
12
  //# sourceMappingURL=NetworkTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/NetworkTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,kCAAkC,CAAC;AACpE,OAAO,IAAI,MAAM,YAAY,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AASpC,MAAM,UAAU,UAAU,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAkB;IAC3F,MAAM,WAAW,GAAG,kBAAkB,GAAG,GAAG,CAAC;IAC7C,MAAM,UAAU,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IAE1D,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC9B,KAAC,kBAAkB,IACf,IAAI,EAAE,IAAI,CAAC,uBAAuB,CAAC,EACnC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC,GAC/C,GACC,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"NetworkTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/NetworkTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAQpC,MAAM,UAAU,UAAU,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAkB;;IAC7D,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC9B,KAAC,aAAa,IACV,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,KAAK,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,IAAI,CAAC,2BAA2B,CAAC,EAC/D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,iCAAiC,CAAC,GACtD,GACC,GACL,CACT,CAAC;AACN,CAAC"}
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { cn } from '../../../../../../utils/cn';
3
- import { UNBREAKABLE_GAP } from '../../../../../../utils/constants';
4
- import { ServerlessTabCard } from '../../TabCard/ServerlessTabCard';
5
3
  import '../MetricsTabs.scss';
6
4
  const b = cn('tenant-metrics-tabs');
7
5
  export function PlaceholderTab() {
8
- return (_jsx("div", { className: b('link-container', { placeholder: true }), children: _jsx("div", { className: b('link'), children: _jsx(ServerlessTabCard, { text: UNBREAKABLE_GAP, active: false, helpText: undefined, subtitle: UNBREAKABLE_GAP }) }) }));
6
+ return (_jsx("div", { className: b('link-container', { placeholder: true }), children: _jsx("div", { className: b('link') }) }));
9
7
  }
10
8
  //# sourceMappingURL=PlaceholderTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlaceholderTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/PlaceholderTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAElE,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAEpC,MAAM,UAAU,cAAc;IAC1B,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC,YACpD,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACrB,KAAC,iBAAiB,IACd,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,KAAK,EACb,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,eAAe,GAC3B,GACA,GACJ,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"PlaceholderTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/PlaceholderTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAE9C,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAEpC,MAAM,UAAU,cAAc;IAC1B,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC,YACpD,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,GAAI,GAC3B,CACT,CAAC;AACN,CAAC"}
@@ -1,13 +1,10 @@
1
+ import type { TenantOverviewMetric } from '../../metricOverview';
1
2
  import '../MetricsTabs.scss';
2
3
  interface StorageTabProps {
3
4
  to: string;
4
5
  active: boolean;
5
6
  isServerless: boolean;
6
- storage: {
7
- totalUsed: number;
8
- totalLimit: number;
9
- };
10
- storageGroupsCount?: number;
7
+ storage?: TenantOverviewMetric;
11
8
  }
12
- export declare function StorageTab({ to, active, isServerless, storage, storageGroupsCount, }: StorageTabProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function StorageTab({ to, active, isServerless, storage }: StorageTabProps): import("react/jsx-runtime").JSX.Element;
13
10
  export {};
@@ -1,30 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Link } from 'react-router-dom';
3
3
  import { cn } from '../../../../../../utils/cn';
4
- import { formatStorageLegend } from '../../../../../../utils/metrics/formatMetricLegend';
4
+ import { MetricTabCard } from '../../TabCard/MetricTabCard';
5
5
  import { ServerlessTabCard } from '../../TabCard/ServerlessTabCard';
6
- import { UsageTabCard } from '../../TabCard/UsageTabCard';
7
6
  import i18n from '../../i18n';
8
7
  import '../MetricsTabs.scss';
9
8
  const b = cn('tenant-metrics-tabs');
10
- export function StorageTab({ to, active, isServerless, storage, storageGroupsCount, }) {
11
- const text = storageGroupsCount === undefined || isServerless
12
- ? i18n('cards.storage-label')
13
- : i18n('context_storage-groups', { count: storageGroupsCount });
14
- return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: isServerless ? (_jsx(ServerlessTabCard, { text: text, active: active, helpText: i18n('context_storage-description'), subtitle: storage.totalLimit
15
- ? i18n('context_serverless-storage-subtitle', {
16
- groups: String(storageGroupsCount !== null && storageGroupsCount !== void 0 ? storageGroupsCount : 0),
17
- legend: formatStorageLegend({
18
- value: storage.totalUsed,
19
- capacity: storage.totalLimit,
20
- }),
21
- })
22
- : undefined })) : (_jsx(UsageTabCard, { text: text, value: storage.totalUsed, limit: storage.totalLimit, legendFormatter: formatStorageLegend, active: active, helpText: i18n('context_storage-description'),
23
- // Never show the "danger" (red) status for the storage
24
- // doughnut, regardless of usage. The doughnut stays
25
- // "warning" (yellow) above the warning threshold and
26
- // never turns red, even at high usage below 100%
27
- // (e.g. 91-99%) or on overflow above 100%.
28
- dangerThreshold: Infinity })) }) }));
9
+ export function StorageTab({ to, active, isServerless, storage }) {
10
+ var _a;
11
+ return (_jsx("div", { className: b('link-container', { active }), children: _jsx(Link, { to: to, className: b('link'), children: isServerless || !storage ? (_jsx(ServerlessTabCard, { title: i18n('title_storage'), active: active, description: i18n('context_storage-serverless-tab-description'), helpText: i18n('context_storage-description') })) : (_jsx(MetricTabCard, { title: i18n('title_storage'), status: storage.status, value: (_a = storage.percentText) !== null && _a !== void 0 ? _a : i18n('value_unavailable-percent'), active: active, description: i18n('context_storage-tab-description') })) }) }));
29
12
  }
30
13
  //# sourceMappingURL=StorageTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorageTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/StorageTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AACxD,OAAO,IAAI,MAAM,YAAY,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AAUpC,MAAM,UAAU,UAAU,CAAC,EACvB,EAAE,EACF,MAAM,EACN,YAAY,EACZ,OAAO,EACP,kBAAkB,GACJ;IACd,MAAM,IAAI,GACN,kBAAkB,KAAK,SAAS,IAAI,YAAY;QAC5C,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAC7B,CAAC,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAC,KAAK,EAAE,kBAAkB,EAAC,CAAC,CAAC;IACtE,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC7B,YAAY,CAAC,CAAC,CAAC,CACZ,KAAC,iBAAiB,IACd,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC,EAC7C,QAAQ,EACJ,OAAO,CAAC,UAAU;oBACd,CAAC,CAAC,IAAI,CAAC,qCAAqC,EAAE;wBACxC,MAAM,EAAE,MAAM,CAAC,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,CAAC,CAAC;wBACvC,MAAM,EAAE,mBAAmB,CAAC;4BACxB,KAAK,EAAE,OAAO,CAAC,SAAS;4BACxB,QAAQ,EAAE,OAAO,CAAC,UAAU;yBAC/B,CAAC;qBACL,CAAC;oBACJ,CAAC,CAAC,SAAS,GAErB,CACL,CAAC,CAAC,CAAC,CACA,KAAC,YAAY,IACT,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,OAAO,CAAC,SAAS,EACxB,KAAK,EAAE,OAAO,CAAC,UAAU,EACzB,eAAe,EAAE,mBAAmB,EACpC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC;gBAC7C,uDAAuD;gBACvD,oDAAoD;gBACpD,qDAAqD;gBACrD,iDAAiD;gBACjD,2CAA2C;gBAC3C,eAAe,EAAE,QAAQ,GAC3B,CACL,GACE,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"StorageTab.js","sourceRoot":"","sources":["../../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/components/StorageTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAC,EAAE,EAAC,MAAM,4BAA4B,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAC;AAClE,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AASpC,MAAM,UAAU,UAAU,CAAC,EAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAkB;;IAC3E,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAC,CAAC,YACzC,KAAC,IAAI,IAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAC7B,YAAY,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACxB,KAAC,iBAAiB,IACd,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,4CAA4C,CAAC,EAC/D,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC,GAC/C,CACL,CAAC,CAAC,CAAC,CACA,KAAC,aAAa,IACV,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,KAAK,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,IAAI,CAAC,2BAA2B,CAAC,EAC/D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,IAAI,CAAC,iCAAiC,CAAC,GACtD,CACL,GACE,GACL,CACT,CAAC;AACN,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { EFlag } from '../../../../../types/api/enums';
2
+ import './TabCard.scss';
3
+ interface MetricTabCardProps {
4
+ title: string;
5
+ status: EFlag;
6
+ value: string;
7
+ description: string;
8
+ active?: boolean;
9
+ }
10
+ export declare function MetricTabCard({ title, status, value, description, active }: MetricTabCardProps): 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 { Card, Flex, Text } from '@gravity-ui/uikit';
3
+ import { StatusIcon } from '../../../../../components/StatusIcon/StatusIcon';
4
+ import { cn } from '../../../../../utils/cn';
5
+ import './TabCard.scss';
6
+ const b = cn('tenant-tab-card');
7
+ export function MetricTabCard({ title, status, value, description, active }) {
8
+ return (_jsx(Card, { className: b({ active }), type: "container", view: active ? 'outlined' : 'filled', children: _jsxs(Flex, { direction: "column", gap: 0.5, children: [_jsxs(Flex, { alignItems: "center", gap: 1, children: [_jsx(Text, { variant: "subheader-2", "data-qa": "tenant-metric-tab-title", children: title }), _jsxs(Flex, { alignItems: "center", gap: 1, children: [_jsx(Text, { variant: "body-1", color: "secondary", "data-qa": "tenant-metric-tab-value", children: value }), _jsx(StatusIcon, { status: status, mode: "icons", size: "s" })] })] }), _jsx(Text, { variant: "caption-2", color: "secondary", className: b('description'), "data-qa": "tenant-metric-tab-description", children: description })] }) }));
9
+ }
10
+ //# sourceMappingURL=MetricTabCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricTabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/MetricTabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAC,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAE3E,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAUhC,MAAM,UAAU,aAAa,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAqB;IACzF,OAAO,CACH,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,EAAE,IAAI,EAAC,WAAW,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,YAC/E,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,GAAG,aAC7B,MAAC,IAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC5B,KAAC,IAAI,IAAC,OAAO,EAAC,aAAa,aAAS,yBAAyB,YACxD,KAAK,GACH,EACP,MAAC,IAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC5B,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,WAAW,aAAS,yBAAyB,YACrE,KAAK,GACH,EACP,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,GAAG,GAAG,IACjD,IACJ,EACP,KAAC,IAAI,IACD,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,WAAW,EACjB,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,aACnB,+BAA+B,YAEtC,WAAW,GACT,IACJ,GACJ,CACV,CAAC;AACN,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import './TabCard.scss';
2
2
  interface ServerlessTabCardProps {
3
- text: string;
3
+ title: string;
4
4
  active?: boolean;
5
+ description: string;
5
6
  helpText?: string;
6
- subtitle?: string;
7
7
  }
8
- export declare function ServerlessTabCard({ text, active, helpText, subtitle }: ServerlessTabCardProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ServerlessTabCard({ title, active, description, helpText }: ServerlessTabCardProps): import("react/jsx-runtime").JSX.Element;
9
9
  export {};
@@ -1,10 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Card } from '@gravity-ui/uikit';
3
- import { DoughnutMetrics } from '../../../../../components/DoughnutMetrics/DoughnutMetrics';
2
+ import { Card, Flex, HelpMark, Text } from '@gravity-ui/uikit';
4
3
  import { cn } from '../../../../../utils/cn';
5
4
  import './TabCard.scss';
6
5
  const b = cn('tenant-tab-card');
7
- export function ServerlessTabCard({ text, active, helpText, subtitle }) {
8
- return (_jsx("div", { className: b({ active }), children: _jsx(Card, { className: b('card-container', { active }), type: "container", view: active ? 'outlined' : 'raised', children: _jsxs("div", { className: b('legend-wrapper'), children: [_jsx(DoughnutMetrics.Legend, { variant: "subheader-2", note: helpText, noteIconSize: "s", children: text }), subtitle ? (_jsx(DoughnutMetrics.Legend, { variant: "body-1", color: "secondary", children: subtitle })) : null] }) }) }));
6
+ export function ServerlessTabCard({ title, active, description, helpText }) {
7
+ return (_jsx(Card, { className: b({ active }), type: "container", view: active ? 'outlined' : 'filled', children: _jsxs(Flex, { direction: "column", gap: 0.5, children: [_jsxs(Flex, { alignItems: "center", gap: 1, children: [_jsx(Text, { variant: "subheader-2", "data-qa": "tenant-metric-tab-title", children: title }), helpText ? (_jsx(HelpMark, { iconSize: "s", popoverProps: { placement: 'right' }, children: helpText })) : null] }), _jsx(Text, { variant: "caption-2", color: "secondary", className: b('description'), "data-qa": "tenant-metric-tab-description", children: description })] }) }));
9
8
  }
10
9
  //# sourceMappingURL=ServerlessTabCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerlessTabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/ServerlessTabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAC,eAAe,EAAC,MAAM,2DAA2D,CAAC;AAC1F,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAShC,MAAM,UAAU,iBAAiB,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAyB;IACxF,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,eAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,aAC/B,KAAC,eAAe,CAAC,MAAM,IAAC,OAAO,EAAC,aAAa,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,GAAG,YACzE,IAAI,GACgB,EACxB,QAAQ,CAAC,CAAC,CAAC,CACR,KAAC,eAAe,CAAC,MAAM,IAAC,OAAO,EAAC,QAAQ,EAAC,KAAK,EAAC,WAAW,YACrD,QAAQ,GACY,CAC5B,CAAC,CAAC,CAAC,IAAI,IACN,GACH,GACL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"ServerlessTabCard.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TabCard/ServerlessTabCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAE3C,OAAO,gBAAgB,CAAC;AAExB,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAShC,MAAM,UAAU,iBAAiB,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAyB;IAC5F,OAAO,CACH,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,EAAE,IAAI,EAAC,WAAW,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,YAC/E,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,GAAG,aAC7B,MAAC,IAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC5B,KAAC,IAAI,IAAC,OAAO,EAAC,aAAa,aAAS,yBAAyB,YACxD,KAAK,GACH,EACN,QAAQ,CAAC,CAAC,CAAC,CACR,KAAC,QAAQ,IAAC,QAAQ,EAAC,GAAG,EAAC,YAAY,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,YACpD,QAAQ,GACF,CACd,CAAC,CAAC,CAAC,IAAI,IACL,EACP,KAAC,IAAI,IACD,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,WAAW,EACjB,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,aACnB,+BAA+B,YAEtC,WAAW,GACT,IACJ,GACJ,CACV,CAAC;AACN,CAAC"}
@@ -1,27 +1,35 @@
1
1
  .tenant-tab-card {
2
+ padding: var(--g-spacing-4) var(--g-spacing-5);
3
+
4
+ cursor: pointer;
5
+
2
6
  border-radius: var(--g-border-radius-s);
3
7
 
4
- &__card-container {
5
- padding: var(--g-spacing-4);
8
+ &_active {
9
+ border: none;
10
+ border-color: transparent;
11
+ }
6
12
 
7
- cursor: pointer;
13
+ &:not(&_active) {
14
+ width: var(--metric-tab-card-width, 225px);
15
+ height: var(--metric-tab-card-height, 70px);
8
16
 
9
- border: 0;
10
- border-radius: var(--g-border-radius-s);
17
+ border: var(--tab-border-width) solid transparent;
18
+ background-color: var(--g-color-base-generic);
11
19
 
12
- // Smooth hover transition
13
- transition: background-color 0.15s ease;
20
+ transition:
21
+ border-color 0.15s ease,
22
+ background-color 0.15s ease;
14
23
 
15
24
  &:hover {
16
- background-color: var(--g-color-base-float-hover);
25
+ border-color: var(--g-color-line-generic-hover);
26
+ background-color: var(--g-color-base-generic-hover);
17
27
  }
18
28
  }
19
29
 
20
- &__card-container_active {
21
- cursor: default !important;
30
+ &_active {
31
+ padding-bottom: calc(var(--g-spacing-4) + var(--tab-overlap));
22
32
 
23
- &:hover {
24
- background-color: transparent;
25
- }
33
+ cursor: default !important;
26
34
  }
27
35
  }
@@ -1,8 +1,10 @@
1
1
  import type { ETenantType } from '../../../../../types/api/tenant';
2
+ import type { TenantOverviewUsageMetric } from '../metricOverview';
2
3
  interface TenantCpuProps {
3
4
  database: string;
4
5
  databaseFullPath: string;
5
6
  databaseType?: ETenantType;
7
+ metric?: TenantOverviewUsageMetric;
6
8
  }
7
- export declare function TenantCpu({ database, databaseType, databaseFullPath }: TenantCpuProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function TenantCpu({ database, databaseType, databaseFullPath, metric }: TenantCpuProps): import("react/jsx-runtime").JSX.Element;
8
10
  export {};
@@ -3,8 +3,10 @@ import React from 'react';
3
3
  import { Flex } from '@gravity-ui/uikit';
4
4
  import { setTopQueriesFilters } from '../../../../../store/reducers/executeTopQueries/executeTopQueries';
5
5
  import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
6
+ import { EMPTY_DATA_PLACEHOLDER } from '../../../../../utils/constants';
6
7
  import { useTypedDispatch } from '../../../../../utils/hooks';
7
8
  import { useDiagnosticsPageLinkGetter } from '../../../Diagnostics/DiagnosticsPages';
9
+ import { MetricPageSummary } from '../MetricPageSummary/MetricPageSummary';
8
10
  import { StatsWrapper } from '../StatsWrapper/StatsWrapper';
9
11
  import { TenantDashboard } from '../TenantDashboard/TenantDashboard';
10
12
  import i18n from '../i18n';
@@ -13,13 +15,14 @@ import { TopNodesByLoad } from './TopNodesByLoad';
13
15
  import { TopQueries } from './TopQueries';
14
16
  import { TopShards } from './TopShards';
15
17
  import { cpuDashboardConfig } from './cpuDashboardConfig';
16
- export function TenantCpu({ database, databaseType, databaseFullPath }) {
18
+ export function TenantCpu({ database, databaseType, databaseFullPath, metric }) {
19
+ var _a;
17
20
  const dispatch = useTypedDispatch();
18
21
  const getDiagnosticsPageLink = useDiagnosticsPageLinkGetter();
19
22
  const allNodesLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.nodes);
20
23
  const topShardsLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.topShards);
21
24
  const topQueriesLink = getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.topQueries);
22
25
  const isServerless = databaseType === 'Serverless';
23
- return (_jsxs(Flex, { direction: "column", gap: 4, children: [!isServerless && (_jsxs(React.Fragment, { children: [_jsx(TenantDashboard, { database: database, charts: cpuDashboardConfig }), _jsx(StatsWrapper, { allEntitiesLink: allNodesLink, title: i18n('title_top-nodes-load'), children: _jsx(TopNodesByLoad, { database: database }) }), _jsx(StatsWrapper, { title: i18n('title_top-nodes-pool'), allEntitiesLink: allNodesLink, children: _jsx(TopNodesByCpu, { database: database }) })] })), _jsx(StatsWrapper, { title: i18n('title_top-shards'), allEntitiesLink: topShardsLink, children: _jsx(TopShards, { database: database, databaseFullPath: databaseFullPath }) }), _jsx(StatsWrapper, { title: i18n('title_top-queries'), allEntitiesLink: topQueriesLink, onAllEntitiesClick: () => dispatch(setTopQueriesFilters({ from: undefined, to: undefined })), children: _jsx(TopQueries, { database: database }) })] }));
26
+ return (_jsxs(Flex, { direction: "column", gap: 4, children: [metric ? (_jsx(MetricPageSummary, { dataQa: "tenant-page-metric-summary-cpu", description: i18n('context_cpu-description'), percentText: (_a = metric.percentText) !== null && _a !== void 0 ? _a : EMPTY_DATA_PLACEHOLDER, progressTheme: metric.progressTheme, progressValue: metric.progressValue, legend: metric.legend })) : null, !isServerless && (_jsxs(React.Fragment, { children: [_jsx(TenantDashboard, { database: database, charts: cpuDashboardConfig }), _jsx(StatsWrapper, { allEntitiesLink: allNodesLink, title: i18n('title_top-nodes-load'), children: _jsx(TopNodesByLoad, { database: database }) }), _jsx(StatsWrapper, { title: i18n('title_top-nodes-pool'), allEntitiesLink: allNodesLink, children: _jsx(TopNodesByCpu, { database: database }) })] })), _jsx(StatsWrapper, { title: i18n('title_top-shards'), allEntitiesLink: topShardsLink, children: _jsx(TopShards, { database: database, databaseFullPath: databaseFullPath }) }), _jsx(StatsWrapper, { title: i18n('title_top-queries'), allEntitiesLink: topQueriesLink, onAllEntitiesClick: () => dispatch(setTopQueriesFilters({ from: undefined, to: undefined })), children: _jsx(TopQueries, { database: database }) })] }));
24
27
  }
25
28
  //# 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;AAE1B,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;AAQxD,MAAM,UAAU,SAAS,CAAC,EAAC,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAiB;IAChF,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,MAAM,YAAY,GAAG,YAAY,KAAK,YAAY,CAAC;IAEnD,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC1B,CAAC,YAAY,IAAI,CACd,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,kBAAkB,GAAI,EACnE,KAAC,YAAY,IACT,eAAe,EAAE,YAAY,EAC7B,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,YAEnC,KAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC3B,EACf,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,EACnC,eAAe,EAAE,YAAY,YAE7B,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC1B,IACF,CACpB,EACD,KAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,eAAe,EAAE,aAAa,YACzE,KAAC,SAAS,IAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,GAAI,GAC1D,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,QAAQ,EAAE,QAAQ,GAAI,GACvB,IACZ,CACV,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"TenantCpu.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,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,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,4BAA4B,EAAC,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAC,iBAAiB,EAAC,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,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;AASxD,MAAM,UAAU,SAAS,CAAC,EAAC,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,EAAiB;;IACxF,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,MAAM,YAAY,GAAG,YAAY,KAAK,YAAY,CAAC;IAEnD,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC1B,MAAM,CAAC,CAAC,CAAC,CACN,KAAC,iBAAiB,IACd,MAAM,EAAC,gCAAgC,EACvC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAC5C,WAAW,EAAE,MAAA,MAAM,CAAC,WAAW,mCAAI,sBAAsB,EACzD,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,MAAM,EAAE,MAAM,CAAC,MAAM,GACvB,CACL,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,YAAY,IAAI,CACd,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,kBAAkB,GAAI,EACnE,KAAC,YAAY,IACT,eAAe,EAAE,YAAY,EAC7B,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,YAEnC,KAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC3B,EACf,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,EACnC,eAAe,EAAE,YAAY,YAE7B,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC1B,IACF,CACpB,EACD,KAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,eAAe,EAAE,aAAa,YACzE,KAAC,SAAS,IAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,GAAI,GAC1D,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,QAAQ,EAAE,QAAQ,GAAI,GACvB,IACZ,CACV,CAAC;AACN,CAAC"}
@@ -1,10 +1,12 @@
1
1
  import type { TMemoryStats } from '../../../../../types/api/nodes';
2
+ import type { TenantOverviewUsageMetric } from '../metricOverview';
2
3
  import './TenantMemory.scss';
3
4
  interface TenantMemoryProps {
4
5
  database: string;
5
6
  memoryStats?: TMemoryStats;
6
7
  memoryUsed?: string;
7
8
  memoryLimit?: string;
9
+ metric?: TenantOverviewUsageMetric;
8
10
  }
9
- export declare function TenantMemory({ database, memoryStats, memoryUsed, memoryLimit }: TenantMemoryProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare function TenantMemory({ database, memoryStats, memoryUsed, memoryLimit, metric, }: TenantMemoryProps): import("react/jsx-runtime").JSX.Element;
10
12
  export {};
@@ -3,8 +3,10 @@ import { InfoViewer } from '../../../../../components/InfoViewer/InfoViewer';
3
3
  import { ProgressWrapper } from '../../../../../components/ProgressWrapper';
4
4
  import { TENANT_DIAGNOSTICS_TABS_IDS } from '../../../../../store/reducers/tenant/constants';
5
5
  import { cn } from '../../../../../utils/cn';
6
+ import { EMPTY_DATA_PLACEHOLDER } from '../../../../../utils/constants';
6
7
  import { formatStorageValuesToGb } from '../../../../../utils/dataFormatters/dataFormatters';
7
8
  import { useDiagnosticsPageLinkGetter } from '../../DiagnosticsPages';
9
+ import { MetricPageSummary } from '../MetricPageSummary/MetricPageSummary';
8
10
  import { StatsWrapper } from '../StatsWrapper/StatsWrapper';
9
11
  import { TenantDashboard } from '../TenantDashboard/TenantDashboard';
10
12
  import i18n from '../i18n';
@@ -13,7 +15,8 @@ import { TopNodesByMemory } from './TopNodesByMemory';
13
15
  import { memoryDashboardConfig } from './memoryDashboardConfig';
14
16
  import './TenantMemory.scss';
15
17
  const b = cn('tenant-memory');
16
- export function TenantMemory({ database, memoryStats, memoryUsed, memoryLimit }) {
18
+ export function TenantMemory({ database, memoryStats, memoryUsed, memoryLimit, metric, }) {
19
+ var _a;
17
20
  const getDiagnosticsPageLink = useDiagnosticsPageLinkGetter();
18
21
  const renderMemoryDetails = () => {
19
22
  if (memoryStats) {
@@ -27,6 +30,6 @@ export function TenantMemory({ database, memoryStats, memoryUsed, memoryLimit })
27
30
  },
28
31
  ] }));
29
32
  };
30
- return (_jsxs("div", { className: b(), children: [_jsx(TenantDashboard, { database: database, charts: memoryDashboardConfig }), renderMemoryDetails(), _jsx(StatsWrapper, { title: i18n('title_top-nodes-by-memory'), allEntitiesLink: getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.nodes), children: _jsx(TopNodesByMemory, { database: database }) })] }));
33
+ return (_jsxs("div", { className: b(), children: [metric ? (_jsx(MetricPageSummary, { className: b('metric-summary'), dataQa: "tenant-page-metric-summary-memory", description: i18n('context_memory-description'), percentText: (_a = metric.percentText) !== null && _a !== void 0 ? _a : EMPTY_DATA_PLACEHOLDER, progressTheme: metric.progressTheme, progressValue: metric.progressValue, legend: metric.legend })) : null, _jsx(TenantDashboard, { database: database, charts: memoryDashboardConfig }), renderMemoryDetails(), _jsx(StatsWrapper, { title: i18n('title_top-nodes-by-memory'), allEntitiesLink: getDiagnosticsPageLink(TENANT_DIAGNOSTICS_TABS_IDS.nodes), children: _jsx(TopNodesByMemory, { database: database }) })] }));
31
34
  }
32
35
  //# sourceMappingURL=TenantMemory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TenantMemory.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAC,2BAA2B,EAAC,MAAM,gDAAgD,CAAC;AAE3F,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAC3C,OAAO,EAAC,uBAAuB,EAAC,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAC,4BAA4B,EAAC,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,qBAAqB,CAAC;AAS7B,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;AAE9B,MAAM,UAAU,YAAY,CAAC,EAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAoB;IAC5F,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAC;IAC9D,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,KAAC,oBAAoB,IAAC,WAAW,EAAE,WAAW,GAAI,CAAC;QAC9D,CAAC;QAED,uBAAuB;QACvB,OAAO,CACH,KAAC,UAAU,IACP,OAAO,EAAC,OAAO,EACf,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,EACnC,IAAI,EAAE;gBACF;oBACI,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC;oBACjC,KAAK,EAAE,CACH,KAAC,eAAe,IACZ,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,uBAAuB,EACrC,iBAAiB,QACjB,SAAS,EAAE,CAAC,CAAC,2BAA2B,CAAC,EACzC,IAAI,EAAC,GAAG,EACR,KAAK,EAAE,GAAG,GACZ,CACL;iBACJ;aACJ,GACH,CACL,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,aACf,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,GAAI,EACrE,mBAAmB,EAAE,EAEtB,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,EACxC,eAAe,EAAE,sBAAsB,CAAC,2BAA2B,CAAC,KAAK,CAAC,YAE1E,KAAC,gBAAgB,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC7B,IACb,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"TenantMemory.js","sourceRoot":"","sources":["../../../../../../src/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,iDAAiD,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAC,2BAA2B,EAAC,MAAM,gDAAgD,CAAC;AAE3F,OAAO,EAAC,EAAE,EAAC,MAAM,yBAAyB,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,uBAAuB,EAAC,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAC,4BAA4B,EAAC,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAC,iBAAiB,EAAC,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,qBAAqB,CAAC;AAU7B,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;AAE9B,MAAM,UAAU,YAAY,CAAC,EACzB,QAAQ,EACR,WAAW,EACX,UAAU,EACV,WAAW,EACX,MAAM,GACU;;IAChB,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAC;IAC9D,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,KAAC,oBAAoB,IAAC,WAAW,EAAE,WAAW,GAAI,CAAC;QAC9D,CAAC;QAED,uBAAuB;QACvB,OAAO,CACH,KAAC,UAAU,IACP,OAAO,EAAC,OAAO,EACf,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,EACnC,IAAI,EAAE;gBACF;oBACI,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC;oBACjC,KAAK,EAAE,CACH,KAAC,eAAe,IACZ,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,uBAAuB,EACrC,iBAAiB,QACjB,SAAS,EAAE,CAAC,CAAC,2BAA2B,CAAC,EACzC,IAAI,EAAC,GAAG,EACR,KAAK,EAAE,GAAG,GACZ,CACL;iBACJ;aACJ,GACH,CACL,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,aACd,MAAM,CAAC,CAAC,CAAC,CACN,KAAC,iBAAiB,IACd,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAC9B,MAAM,EAAC,mCAAmC,EAC1C,WAAW,EAAE,IAAI,CAAC,4BAA4B,CAAC,EAC/C,WAAW,EAAE,MAAA,MAAM,CAAC,WAAW,mCAAI,sBAAsB,EACzD,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,MAAM,EAAE,MAAM,CAAC,MAAM,GACvB,CACL,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,GAAI,EACrE,mBAAmB,EAAE,EAEtB,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,EACxC,eAAe,EAAE,sBAAsB,CAAC,2BAA2B,CAAC,KAAK,CAAC,YAE1E,KAAC,gBAAgB,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAC7B,IACb,CACT,CAAC;AACN,CAAC"}
@@ -1,6 +1,10 @@
1
1
  @use '../../../../../styles/mixins.scss';
2
2
 
3
3
  .tenant-memory {
4
+ &__metric-summary {
5
+ margin-bottom: var(--g-spacing-4);
6
+ }
7
+
4
8
  &__value-text {
5
9
  flex-shrink: 0;
6
10
 
@@ -1,6 +1,9 @@
1
+ import type { TenantOverviewMetric } from '../metricOverview';
1
2
  import './TenantNetwork.scss';
2
3
  interface TenantNetworkProps {
3
4
  database: string;
5
+ metric?: TenantOverviewMetric;
6
+ networkThroughput?: number;
4
7
  }
5
- export declare function TenantNetwork({ database }: TenantNetworkProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function TenantNetwork({ database, metric, networkThroughput }: TenantNetworkProps): import("react/jsx-runtime").JSX.Element;
6
9
  export {};