ydb-embedded-ui 6.37.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (274) hide show
  1. package/dist/components/BasicNodeViewer/BasicNodeViewer.scss +2 -2
  2. package/dist/components/DeveloperUILinkButton/DeveloperUILinkButton.scss +2 -2
  3. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +2 -2
  4. package/dist/components/EmptyState/EmptyState.scss +4 -4
  5. package/dist/components/EntityPageTitle/EntityPageTitle.scss +2 -2
  6. package/dist/components/EntityStatus/EntityStatus.scss +4 -4
  7. package/dist/components/ErrorBoundary/ErrorBoundary.scss +3 -3
  8. package/dist/components/FullNodeViewer/FullNodeViewer.scss +2 -2
  9. package/dist/components/Fullscreen/Fullscreen.js +1 -1
  10. package/dist/components/Fullscreen/Fullscreen.js.map +1 -1
  11. package/dist/components/Fullscreen/Fullscreen.scss +8 -1
  12. package/dist/components/MemoryViewer/MemoryViewer.js +8 -7
  13. package/dist/components/MemoryViewer/MemoryViewer.js.map +1 -1
  14. package/dist/components/MemoryViewer/MemoryViewer.scss +0 -2
  15. package/dist/components/MemoryViewer/utils.d.ts +3 -1
  16. package/dist/components/MemoryViewer/utils.js +15 -13
  17. package/dist/components/MemoryViewer/utils.js.map +1 -1
  18. package/dist/components/MetricChart/getChartData.js +1 -1
  19. package/dist/components/MetricChart/getChartData.js.map +1 -1
  20. package/dist/components/PageMeta/PageMeta.scss +2 -2
  21. package/dist/components/PaginatedTable/PaginatedTable.scss +4 -4
  22. package/dist/components/PoolUsage/PoolUsage.scss +2 -2
  23. package/dist/components/ProgressViewer/ProgressViewer.scss +2 -2
  24. package/dist/components/QueryResultTable/QueryResultTable.js +4 -3
  25. package/dist/components/QueryResultTable/QueryResultTable.js.map +1 -1
  26. package/dist/components/QueryResultTable/QueryResultTable.scss +2 -2
  27. package/dist/components/TableWithControlsLayout/TableWithControlsLayout.scss +4 -4
  28. package/dist/components/User/User.scss +2 -2
  29. package/dist/components/YDBDefinitionList/YDBDefinitionList.scss +3 -3
  30. package/dist/components/nodesColumns/columns.js +1 -0
  31. package/dist/components/nodesColumns/columns.js.map +1 -1
  32. package/dist/components/nodesColumns/i18n/index.d.ts +1 -1
  33. package/dist/containers/App/App.scss +7 -6
  34. package/dist/containers/AsideNavigation/AsideNavigation.js +11 -2
  35. package/dist/containers/AsideNavigation/AsideNavigation.js.map +1 -1
  36. package/dist/containers/Authentication/Authentication.scss +2 -2
  37. package/dist/containers/Cluster/Cluster.scss +4 -4
  38. package/dist/containers/Cluster/ClusterDashboard/ClusterDashboard.scss +2 -2
  39. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +2 -2
  40. package/dist/containers/Cluster/ClusterInfo/components/NodesState/NodesState.scss +2 -2
  41. package/dist/containers/Clusters/constants.d.ts +1 -1
  42. package/dist/containers/Header/Header.scss +0 -2
  43. package/dist/containers/Heatmap/Heatmap.scss +3 -3
  44. package/dist/containers/Node/Node.scss +4 -4
  45. package/dist/containers/Node/NodeStructure/NodeStructure.scss +3 -3
  46. package/dist/containers/Nodes/Nodes.d.ts +2 -1
  47. package/dist/containers/Nodes/Nodes.js +12 -11
  48. package/dist/containers/Nodes/Nodes.js.map +1 -1
  49. package/dist/containers/Nodes/Nodes.scss +2 -2
  50. package/dist/containers/Nodes/NodesControls/NodesControls.d.ts +2 -1
  51. package/dist/containers/Nodes/NodesControls/NodesControls.js +7 -4
  52. package/dist/containers/Nodes/NodesControls/NodesControls.js.map +1 -1
  53. package/dist/containers/Nodes/NodesTable.d.ts +3 -2
  54. package/dist/containers/Nodes/NodesTable.js +12 -2
  55. package/dist/containers/Nodes/NodesTable.js.map +1 -1
  56. package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.d.ts +7 -0
  57. package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.js +9 -0
  58. package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.js.map +1 -0
  59. package/dist/containers/Nodes/PeerRoleFilter/utils.d.ts +4 -0
  60. package/dist/containers/Nodes/PeerRoleFilter/utils.js +20 -0
  61. package/dist/containers/Nodes/PeerRoleFilter/utils.js.map +1 -0
  62. package/dist/containers/Nodes/columns/columns.js +4 -4
  63. package/dist/containers/Nodes/columns/columns.js.map +1 -1
  64. package/dist/containers/Nodes/columns/constants.js +3 -6
  65. package/dist/containers/Nodes/columns/constants.js.map +1 -1
  66. package/dist/containers/Nodes/getNodes.js +3 -2
  67. package/dist/containers/Nodes/getNodes.js.map +1 -1
  68. package/dist/containers/Nodes/i18n/en.json +6 -1
  69. package/dist/containers/Nodes/i18n/index.d.ts +1 -1
  70. package/dist/containers/Nodes/useNodesPageQueryParams.d.ts +3 -1
  71. package/dist/containers/Nodes/useNodesPageQueryParams.js +8 -0
  72. package/dist/containers/Nodes/useNodesPageQueryParams.js.map +1 -1
  73. package/dist/containers/PDiskPage/PDiskPage.js +2 -2
  74. package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
  75. package/dist/containers/PDiskPage/PDiskPage.scss +2 -2
  76. package/dist/containers/ReduxTooltip/ReduxTooltip.scss +2 -2
  77. package/dist/containers/Storage/Storage.scss +2 -2
  78. package/dist/containers/Storage/StorageGroups/columns/constants.js +0 -5
  79. package/dist/containers/Storage/StorageGroups/columns/constants.js.map +1 -1
  80. package/dist/containers/Storage/StorageNodes/columns/columns.js +6 -6
  81. package/dist/containers/Storage/StorageNodes/columns/columns.js.map +1 -1
  82. package/dist/containers/Storage/StorageNodes/columns/constants.js +2 -3
  83. package/dist/containers/Storage/StorageNodes/columns/constants.js.map +1 -1
  84. package/dist/containers/Storage/StorageNodes/getNodes.js +1 -1
  85. package/dist/containers/Storage/StorageNodes/getNodes.js.map +1 -1
  86. package/dist/containers/StorageGroupPage/StorageGroupPage.scss +2 -2
  87. package/dist/containers/Tablet/Tablet.scss +2 -2
  88. package/dist/containers/Tablet/components/TabletInfo/TabletInfo.scss +2 -2
  89. package/dist/containers/Tablet/components/TabletStorageInfo/TabletStorageInfo.scss +4 -4
  90. package/dist/containers/Tablets/i18n/index.d.ts +1 -1
  91. package/dist/containers/Tenant/Acl/Acl.scss +3 -3
  92. package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.scss +6 -6
  93. package/dist/containers/Tenant/Diagnostics/Consumers/TopicStats/ConsumersTopicStats.scss +2 -2
  94. package/dist/containers/Tenant/Diagnostics/Describe/Describe.scss +2 -2
  95. package/dist/containers/Tenant/Diagnostics/Diagnostics.scss +2 -2
  96. package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.scss +0 -2
  97. package/dist/containers/Tenant/Diagnostics/Network/Network.scss +6 -6
  98. package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js +1 -1
  99. package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js.map +1 -1
  100. package/dist/containers/Tenant/Diagnostics/Overview/AsyncReplicationPaths/AsyncReplicationPaths.scss +2 -2
  101. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/TableInfo.scss +2 -2
  102. package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.scss +2 -2
  103. package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.scss +6 -6
  104. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +2 -2
  105. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.scss +2 -2
  106. package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.scss +2 -2
  107. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss +2 -2
  108. package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
  109. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.scss +3 -3
  110. package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.js +1 -0
  111. package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.js.map +1 -1
  112. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.scss +0 -2
  113. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.scss +3 -3
  114. package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.scss +2 -2
  115. package/dist/containers/Tenant/Query/Preview/Preview.js +11 -5
  116. package/dist/containers/Tenant/Query/Preview/Preview.js.map +1 -1
  117. package/dist/containers/Tenant/Query/Preview/Preview.scss +4 -3
  118. package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.scss +3 -3
  119. package/dist/containers/Tenant/Query/Query.scss +2 -2
  120. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.scss +2 -2
  121. package/dist/containers/Tenant/Query/QueryResult/components/QueryJSONViewer/QueryJSONViewer.scss +2 -2
  122. package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.scss +2 -2
  123. package/dist/containers/Tenant/Query/QueryResult/components/SimplifiedPlan/SimplifiedPlan.scss +4 -4
  124. package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.scss +3 -3
  125. package/dist/containers/Tenant/Query/i18n/en.json +1 -0
  126. package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
  127. package/dist/containers/Tenant/Schema/SchemaViewer/SchemaViewer.scss +3 -3
  128. package/dist/containers/Tenant/Tenant.scss +3 -3
  129. package/dist/containers/Tenants/Tenants.scss +2 -2
  130. package/dist/containers/VDiskPage/VDiskPage.js +1 -1
  131. package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
  132. package/dist/containers/VDiskPage/VDiskPage.scss +2 -2
  133. package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.d.ts +2 -2
  134. package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.js.map +1 -1
  135. package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.scss +2 -5
  136. package/dist/containers/Versions/NodesTable/NodesTable.d.ts +2 -2
  137. package/dist/containers/Versions/NodesTable/NodesTable.js +16 -85
  138. package/dist/containers/Versions/NodesTable/NodesTable.js.map +1 -1
  139. package/dist/containers/Versions/Versions.scss +0 -2
  140. package/dist/containers/Versions/groupNodes.d.ts +4 -4
  141. package/dist/containers/Versions/groupNodes.js.map +1 -1
  142. package/dist/containers/Versions/types.d.ts +2 -2
  143. package/dist/lib.d.ts +1 -1
  144. package/dist/lib.js +1 -1
  145. package/dist/lib.js.map +1 -1
  146. package/dist/services/api/auth.d.ts +8 -0
  147. package/dist/services/api/auth.js +10 -0
  148. package/dist/services/api/auth.js.map +1 -0
  149. package/dist/services/api/base.d.ts +13 -0
  150. package/dist/services/api/base.js +57 -0
  151. package/dist/services/api/base.js.map +1 -0
  152. package/dist/services/api/index.d.ts +31 -0
  153. package/dist/services/api/index.js +32 -0
  154. package/dist/services/api/index.js.map +1 -0
  155. package/dist/services/api/meta.d.ts +12 -0
  156. package/dist/services/api/meta.js +30 -0
  157. package/dist/services/api/meta.js.map +1 -0
  158. package/dist/services/api/operation.d.ts +8 -0
  159. package/dist/services/api/operation.js +22 -0
  160. package/dist/services/api/operation.js.map +1 -0
  161. package/dist/services/api/pdisk.d.ts +25 -0
  162. package/dist/services/api/pdisk.js +43 -0
  163. package/dist/services/api/pdisk.js.map +1 -0
  164. package/dist/services/api/scheme.d.ts +11 -0
  165. package/dist/services/api/scheme.js +12 -0
  166. package/dist/services/api/scheme.js.map +1 -0
  167. package/dist/services/api/storage.d.ts +6 -0
  168. package/dist/services/api/storage.js +28 -0
  169. package/dist/services/api/storage.js.map +1 -0
  170. package/dist/services/api/tablets.d.ts +21 -0
  171. package/dist/services/api/tablets.js +44 -0
  172. package/dist/services/api/tablets.js.map +1 -0
  173. package/dist/services/api/trace.d.ts +7 -0
  174. package/dist/services/api/trace.js +33 -0
  175. package/dist/services/api/trace.js.map +1 -0
  176. package/dist/services/api/vdisk.d.ts +12 -0
  177. package/dist/services/api/vdisk.js +16 -0
  178. package/dist/services/api/vdisk.js.map +1 -0
  179. package/dist/services/api/viewer.d.ts +129 -0
  180. package/dist/services/api/viewer.js +251 -0
  181. package/dist/services/api/viewer.js.map +1 -0
  182. package/dist/store/reducers/authentication/authentication.js +3 -3
  183. package/dist/store/reducers/authentication/authentication.js.map +1 -1
  184. package/dist/store/reducers/cancelQuery.js +1 -1
  185. package/dist/store/reducers/cancelQuery.js.map +1 -1
  186. package/dist/store/reducers/capabilities/capabilities.js +1 -1
  187. package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
  188. package/dist/store/reducers/capabilities/hooks.js +1 -1
  189. package/dist/store/reducers/cluster/cluster.js +8 -3
  190. package/dist/store/reducers/cluster/cluster.js.map +1 -1
  191. package/dist/store/reducers/clusters/clusters.js +7 -2
  192. package/dist/store/reducers/clusters/clusters.js.map +1 -1
  193. package/dist/store/reducers/executeTopQueries/executeTopQueries.js +2 -2
  194. package/dist/store/reducers/executeTopQueries/executeTopQueries.js.map +1 -1
  195. package/dist/store/reducers/healthcheckInfo/healthcheckInfo.js +1 -1
  196. package/dist/store/reducers/healthcheckInfo/healthcheckInfo.js.map +1 -1
  197. package/dist/store/reducers/heatmap.js +2 -2
  198. package/dist/store/reducers/heatmap.js.map +1 -1
  199. package/dist/store/reducers/hotKeys/hotKeys.js +2 -2
  200. package/dist/store/reducers/hotKeys/hotKeys.js.map +1 -1
  201. package/dist/store/reducers/network/network.js +1 -1
  202. package/dist/store/reducers/network/network.js.map +1 -1
  203. package/dist/store/reducers/node/node.js +2 -2
  204. package/dist/store/reducers/node/node.js.map +1 -1
  205. package/dist/store/reducers/nodes/nodes.js +1 -1
  206. package/dist/store/reducers/nodes/nodes.js.map +1 -1
  207. package/dist/store/reducers/nodes/types.d.ts +2 -1
  208. package/dist/store/reducers/nodesList.js +1 -1
  209. package/dist/store/reducers/nodesList.js.map +1 -1
  210. package/dist/store/reducers/operations.js +3 -3
  211. package/dist/store/reducers/operations.js.map +1 -1
  212. package/dist/store/reducers/overview/overview.js +2 -2
  213. package/dist/store/reducers/overview/overview.js.map +1 -1
  214. package/dist/store/reducers/partitions/partitions.js +2 -2
  215. package/dist/store/reducers/partitions/partitions.js.map +1 -1
  216. package/dist/store/reducers/pdisk/pdisk.js +3 -3
  217. package/dist/store/reducers/pdisk/pdisk.js.map +1 -1
  218. package/dist/store/reducers/planToSvg.js +1 -1
  219. package/dist/store/reducers/planToSvg.js.map +1 -1
  220. package/dist/store/reducers/preview.d.ts +1 -0
  221. package/dist/store/reducers/preview.js +2 -2
  222. package/dist/store/reducers/preview.js.map +1 -1
  223. package/dist/store/reducers/query/query.js +1 -1
  224. package/dist/store/reducers/query/query.js.map +1 -1
  225. package/dist/store/reducers/schema/schema.js +2 -2
  226. package/dist/store/reducers/schema/schema.js.map +1 -1
  227. package/dist/store/reducers/schemaAcl/schemaAcl.js +1 -1
  228. package/dist/store/reducers/schemaAcl/schemaAcl.js.map +1 -1
  229. package/dist/store/reducers/shardsWorkload/shardsWorkload.js +1 -1
  230. package/dist/store/reducers/shardsWorkload/shardsWorkload.js.map +1 -1
  231. package/dist/store/reducers/storage/requestStorageData.d.ts +1 -1
  232. package/dist/store/reducers/storage/requestStorageData.js +2 -2
  233. package/dist/store/reducers/storage/requestStorageData.js.map +1 -1
  234. package/dist/store/reducers/storage/storage.js +1 -1
  235. package/dist/store/reducers/storage/storage.js.map +1 -1
  236. package/dist/store/reducers/tablet.js +10 -8
  237. package/dist/store/reducers/tablet.js.map +1 -1
  238. package/dist/store/reducers/tablets.js +1 -1
  239. package/dist/store/reducers/tablets.js.map +1 -1
  240. package/dist/store/reducers/tenant/tenant.js +2 -2
  241. package/dist/store/reducers/tenant/tenant.js.map +1 -1
  242. package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js +1 -1
  243. package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js.map +1 -1
  244. package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js +1 -1
  245. package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js.map +1 -1
  246. package/dist/store/reducers/tenants/tenants.js +3 -1
  247. package/dist/store/reducers/tenants/tenants.js.map +1 -1
  248. package/dist/store/reducers/tooltip.d.ts +1 -1
  249. package/dist/store/reducers/topic.js +1 -1
  250. package/dist/store/reducers/topic.js.map +1 -1
  251. package/dist/store/reducers/trace.js +1 -1
  252. package/dist/store/reducers/trace.js.map +1 -1
  253. package/dist/store/reducers/vdisk/vdisk.js +3 -3
  254. package/dist/store/reducers/vdisk/vdisk.js.map +1 -1
  255. package/dist/store/reducers/viewSchema/viewSchema.js +1 -1
  256. package/dist/store/reducers/viewSchema/viewSchema.js.map +1 -1
  257. package/dist/styles/mixins.scss +2 -1
  258. package/dist/styles/themes.scss +8 -8
  259. package/dist/types/api/nodes.d.ts +4 -1
  260. package/dist/types/api/nodes.js.map +1 -1
  261. package/dist/utils/hooks/useLastQueryExecutionSettings.d.ts +2 -2
  262. package/dist/utils/hooks/useQueryExecutionSettings.d.ts +1 -1
  263. package/dist/utils/monaco/yql/generateSuggestions.js +6 -2
  264. package/dist/utils/monaco/yql/generateSuggestions.js.map +1 -1
  265. package/dist/utils/query.d.ts +3 -3
  266. package/dist/utils/query.js +2 -2
  267. package/dist/utils/query.js.map +1 -1
  268. package/dist/utils/versions/getVersionsColors.d.ts +1 -1
  269. package/dist/utils/versions/getVersionsColors.js +3 -2
  270. package/dist/utils/versions/getVersionsColors.js.map +1 -1
  271. package/package.json +2 -2
  272. package/dist/services/api.d.ts +0 -219
  273. package/dist/services/api.js +0 -522
  274. package/dist/services/api.js.map +0 -1
@@ -1,2 +1,2 @@
1
- declare const _default: (key: "database" | "missing" | "version" | "host" | "tablets" | "cpu" | "memory" | "uptime" | "load" | "min" | "ping" | "max" | "node-id" | "node-name" | "dc" | "rack" | "ram" | "pools" | "disk-usage" | "load-average" | "sessions" | "pdisks" | "field_memory-used" | "field_memory-limit" | "system-state" | "connect-status" | "utilization" | "network-utilization" | "connections" | "clock-skew" | "skew" | "ping-time" | "send" | "receive" | "avg" | "sum", params?: import("@gravity-ui/i18n").Params) => string;
1
+ declare const _default: (key: "tablets" | "cpu" | "memory" | "database" | "missing" | "host" | "version" | "uptime" | "load" | "min" | "ping" | "max" | "node-id" | "node-name" | "dc" | "rack" | "ram" | "pools" | "disk-usage" | "load-average" | "sessions" | "pdisks" | "field_memory-used" | "field_memory-limit" | "system-state" | "connect-status" | "utilization" | "network-utilization" | "connections" | "clock-skew" | "skew" | "ping-time" | "send" | "receive" | "avg" | "sum", params?: import("@gravity-ui/i18n").Params) => string;
2
2
  export default _default;
@@ -1,5 +1,6 @@
1
+ @use '../../styles/mixins.scss';
2
+
1
3
  @import url('https://fonts.googleapis.com/css2?family=Rubik&display=swap');
2
- @import '../../styles/mixins.scss';
3
4
 
4
5
  * {
5
6
  // FIXME: this is an overkill, potentially could break external components, needs refactoring
@@ -36,7 +37,7 @@ body,
36
37
  }
37
38
 
38
39
  .g-root {
39
- --ydb-data-table-color-hover: var(--g-color-base-float);
40
+ --ydb-data-table-color-hover: var(--g-color-base-simple-hover-solid);
40
41
 
41
42
  // Colors for tablets, status icons and progress bars
42
43
  --ydb-color-status-grey: var(--g-color-base-neutral-heavy);
@@ -73,17 +74,17 @@ body,
73
74
  }
74
75
 
75
76
  .loader {
76
- @include loader();
77
+ @include mixins.loader();
77
78
  }
78
79
 
79
80
  .app {
80
81
  height: 100%;
81
- @include flex-container();
82
- @include data-table-styles();
82
+ @include mixins.flex-container();
83
+ @include mixins.data-table-styles();
83
84
 
84
85
  &__main {
85
86
  overflow: auto;
86
- @include flex-container();
87
+ @include mixins.flex-container();
87
88
  }
88
89
  }
89
90
 
@@ -3,8 +3,9 @@ import React from 'react';
3
3
  import { CircleQuestion, Gear, Person } from '@gravity-ui/icons';
4
4
  import { AsideHeader, FooterItem } from '@gravity-ui/navigation';
5
5
  import { useHistory } from 'react-router-dom';
6
+ import { settingsManager } from '../../services/settings';
6
7
  import { cn } from '../../utils/cn';
7
- import { ASIDE_HEADER_COMPACT_KEY } from '../../utils/constants';
8
+ import { ASIDE_HEADER_COMPACT_KEY, LANGUAGE_KEY } from '../../utils/constants';
8
9
  import { useSetting } from '../../utils/hooks';
9
10
  import i18n from './i18n';
10
11
  import userSecret from '../../assets/icons/user-secret.svg';
@@ -27,6 +28,14 @@ var Panel;
27
28
  (function (Panel) {
28
29
  Panel["UserSettings"] = "UserSettings";
29
30
  })(Panel || (Panel = {}));
31
+ function getDocumentationLink() {
32
+ // Use saved language from settings if it's present, otherwise use browser language
33
+ const lang = settingsManager.readUserSettingsValue(LANGUAGE_KEY, navigator.language);
34
+ if (lang === 'ru') {
35
+ return 'https://ydb.tech/docs/ru/';
36
+ }
37
+ return 'https://ydb.tech/docs/en/';
38
+ }
30
39
  export function AsideNavigation(props) {
31
40
  const history = useHistory();
32
41
  const [visiblePanel, setVisiblePanel] = React.useState();
@@ -40,7 +49,7 @@ export function AsideNavigation(props) {
40
49
  title: i18n('navigation-item.documentation'),
41
50
  icon: CircleQuestion,
42
51
  onItemClick: () => {
43
- window.open('https://ydb.tech/docs', '_blank', 'noreferrer');
52
+ window.open(getDocumentationLink(), '_blank', 'noreferrer');
44
53
  },
45
54
  } }), _jsx(FooterItem, { item: {
46
55
  id: 'user-settings',
@@ -1 +1 @@
1
- {"version":3,"file":"AsideNavigation.js","sourceRoot":"","sources":["../../../src/containers/AsideNavigation/AsideNavigation.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AsideNavigation.js","sourceRoot":"","sources":["../../../src/containers/AsideNavigation/AsideNavigation.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- @import '../../styles/mixins.scss';
1
+ @use '../../styles/mixins.scss';
2
2
 
3
3
  .authentication {
4
4
  display: flex;
@@ -45,7 +45,7 @@
45
45
  margin: 34px 0 16px;
46
46
 
47
47
  font-weight: 600;
48
- @include header-2-typography;
48
+ @include mixins.header-2-typography;
49
49
  }
50
50
 
51
51
  &__form-wrapper {
@@ -1,4 +1,4 @@
1
- @import '../../styles/mixins.scss';
1
+ @use '../../styles/mixins.scss';
2
2
 
3
3
  .ydb-cluster {
4
4
  position: relative;
@@ -18,7 +18,7 @@
18
18
 
19
19
  &__title {
20
20
  font-weight: var(--g-text-header-font-weight);
21
- @include header-1-typography();
21
+ @include mixins.header-1-typography();
22
22
  }
23
23
 
24
24
  &__title-skeleton {
@@ -36,11 +36,11 @@
36
36
  padding-left: 20px;
37
37
 
38
38
  transform: translateX(-20px);
39
- @include sticky-top();
39
+ @include mixins.sticky-top();
40
40
  }
41
41
  &__tabs {
42
42
  display: flex;
43
- @include tabs-wrapper-styles();
43
+ @include mixins.tabs-wrapper-styles();
44
44
  }
45
45
 
46
46
  &__sticky-wrapper {
@@ -1,4 +1,4 @@
1
- @import '../../../styles/mixins.scss';
1
+ @use '../../../styles/mixins.scss';
2
2
 
3
3
  .ydb-cluster-dashboard {
4
4
  position: sticky;
@@ -7,7 +7,7 @@
7
7
  padding-top: 16px;
8
8
 
9
9
  &__error {
10
- @include body-2-typography();
10
+ @include mixins.body-2-typography();
11
11
  }
12
12
  &__card {
13
13
  display: flex;
@@ -1,4 +1,4 @@
1
- @import '../../../styles/mixins';
1
+ @use '../../../styles/mixins';
2
2
 
3
3
  .cluster-info {
4
4
  padding: 20px 0;
@@ -8,7 +8,7 @@
8
8
  }
9
9
 
10
10
  &__error {
11
- @include body-2-typography();
11
+ @include mixins.body-2-typography();
12
12
  }
13
13
 
14
14
  &__metrics {
@@ -1,4 +1,4 @@
1
- @import '../../../../../styles/mixins.scss';
1
+ @use '../../../../../styles/mixins.scss';
2
2
 
3
3
  .ydb-nodes-state {
4
4
  display: flex;
@@ -13,5 +13,5 @@
13
13
  color: var(--entity-state-font-color);
14
14
  border-radius: var(--g-spacing-1);
15
15
  background-color: var(--entity-state-background-color);
16
- @include entity-state-colors();
16
+ @include mixins.entity-state-colors();
17
17
  }
@@ -14,7 +14,7 @@ export declare const COLUMNS_NAMES: {
14
14
  readonly DESCRIPTION: "description";
15
15
  readonly BALANCER: "balancer";
16
16
  };
17
- export declare const DEFAULT_COLUMNS: ("status" | "storage" | "hosts" | "versions" | "balancer" | "nodes" | "tenants" | "service" | "load" | "owner" | "title")[];
17
+ export declare const DEFAULT_COLUMNS: ("nodes" | "storage" | "status" | "hosts" | "versions" | "balancer" | "tenants" | "service" | "load" | "owner" | "title")[];
18
18
  export declare const COLUMNS_TITLES: {
19
19
  readonly title: "Cluster";
20
20
  readonly versions: "Versions";
@@ -1,5 +1,3 @@
1
- @import '../../styles/mixins.scss';
2
-
3
1
  .header {
4
2
  display: flex;
5
3
  flex: 0 0 40px;
@@ -1,10 +1,10 @@
1
- @import '../../styles/mixins';
1
+ @use '../../styles/mixins';
2
2
 
3
3
  .heatmap {
4
4
  overflow: auto;
5
5
 
6
6
  height: 100%;
7
- @include flex-container();
7
+ @include mixins.flex-container();
8
8
 
9
9
  &__limits {
10
10
  display: flex;
@@ -43,7 +43,7 @@
43
43
  font-weight: 500;
44
44
  text-transform: uppercase;
45
45
 
46
- @include body-2-typography();
46
+ @include mixins.body-2-typography();
47
47
 
48
48
  &_overall {
49
49
  margin-right: 15px;
@@ -1,8 +1,8 @@
1
- @import '../../styles/mixins';
1
+ @use '../../styles/mixins';
2
2
 
3
3
  .node {
4
4
  overflow: auto;
5
- @include flex-container();
5
+ @include mixins.flex-container();
6
6
 
7
7
  &__header {
8
8
  margin: 16px 20px;
@@ -12,7 +12,7 @@
12
12
  position: relative;
13
13
 
14
14
  overflow: auto;
15
- @include flex-container();
15
+ @include mixins.flex-container();
16
16
  }
17
17
 
18
18
  &__storage {
@@ -28,7 +28,7 @@
28
28
  align-items: center;
29
29
 
30
30
  padding: 0 20px;
31
- @include tabs-wrapper-styles();
31
+ @include mixins.tabs-wrapper-styles();
32
32
  }
33
33
 
34
34
  &__tab {
@@ -1,4 +1,4 @@
1
- @import '../../../styles/mixins.scss';
1
+ @use '../../../styles/mixins.scss';
2
2
 
3
3
  .kv-node-structure {
4
4
  position: relative;
@@ -7,8 +7,8 @@
7
7
  overflow: auto;
8
8
  flex-direction: column;
9
9
  flex-shrink: 0;
10
- @include flex-container();
11
- @include body-2-typography();
10
+ @include mixins.flex-container();
11
+ @include mixins.body-2-typography();
12
12
 
13
13
  &__error {
14
14
  padding: 20px 20px 0;
@@ -10,10 +10,11 @@ export interface NodesProps {
10
10
  database?: string;
11
11
  parentRef: React.RefObject<HTMLElement>;
12
12
  additionalNodesProps?: AdditionalNodesProps;
13
+ withPeerRoleFilter?: boolean;
13
14
  columns?: Column<NodesPreparedEntity>[];
14
15
  defaultColumnsIds?: NodesColumnId[];
15
16
  requiredColumnsIds?: NodesColumnId[];
16
17
  selectedColumnsKey?: string;
17
18
  groupByParams?: NodesGroupByField[];
18
19
  }
19
- export declare function Nodes({ path, database, parentRef, additionalNodesProps, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }: NodesProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare function Nodes({ path, database, parentRef, additionalNodesProps, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }: NodesProps): import("react/jsx-runtime").JSX.Element;
@@ -20,7 +20,7 @@ import i18n from './i18n';
20
20
  import { b } from './shared';
21
21
  import { useNodesPageQueryParams } from './useNodesPageQueryParams';
22
22
  import './Nodes.scss';
23
- export function Nodes({ path, database, parentRef, additionalNodesProps, columns = getNodesColumns({ database, getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef }), defaultColumnsIds = DEFAULT_NODES_COLUMNS, requiredColumnsIds = REQUIRED_NODES_COLUMNS, selectedColumnsKey = NODES_TABLE_SELECTED_COLUMNS_LS_KEY, groupByParams = ALL_NODES_GROUP_BY_PARAMS, }) {
23
+ export function Nodes({ path, database, parentRef, additionalNodesProps, withPeerRoleFilter, columns = getNodesColumns({ database, getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef }), defaultColumnsIds = DEFAULT_NODES_COLUMNS, requiredColumnsIds = REQUIRED_NODES_COLUMNS, selectedColumnsKey = NODES_TABLE_SELECTED_COLUMNS_LS_KEY, groupByParams = ALL_NODES_GROUP_BY_PARAMS, }) {
24
24
  const { uptimeFilter, groupByParam, handleUptimeFilterChange } = useNodesPageQueryParams(groupByParams);
25
25
  const { problemFilter, handleProblemFilterChange } = useProblemFilter();
26
26
  const capabilitiesLoaded = useCapabilitiesLoaded();
@@ -42,30 +42,31 @@ export function Nodes({ path, database, parentRef, additionalNodesProps, columns
42
42
  ]);
43
43
  const renderContent = () => {
44
44
  if (viewerNodesHandlerHasGrouping && groupByParam) {
45
- return (_jsx(GroupedNodesComponent, { path: path, database: database, parentRef: parentRef, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
45
+ return (_jsx(GroupedNodesComponent, { path: path, database: database, parentRef: parentRef, withPeerRoleFilter: withPeerRoleFilter, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
46
46
  }
47
- return (_jsx(NodesComponent, { path: path, database: database, parentRef: parentRef, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
47
+ return (_jsx(NodesComponent, { path: path, database: database, parentRef: parentRef, withPeerRoleFilter: withPeerRoleFilter, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
48
48
  };
49
49
  return _jsx(LoaderWrapper, { loading: !capabilitiesLoaded, children: renderContent() });
50
50
  }
51
- function NodesComponent({ path, database, parentRef, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
52
- const { searchValue, uptimeFilter } = useNodesPageQueryParams(groupByParams);
51
+ function NodesComponent({ path, database, parentRef, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
52
+ const { searchValue, uptimeFilter, peerRoleFilter } = useNodesPageQueryParams(groupByParams);
53
53
  const { problemFilter } = useProblemFilter();
54
54
  const viewerNodesHandlerHasGrouping = useViewerNodesHandlerHasGrouping();
55
55
  const { columnsToShow, columnsToSelect, setColumns } = useSelectedColumns(columns, selectedColumnsKey, NODES_COLUMNS_TITLES, defaultColumnsIds, requiredColumnsIds);
56
56
  const renderControls = ({ totalEntities, foundEntities, inited }) => {
57
- return (_jsx(NodesControls, { withGroupBySelect: viewerNodesHandlerHasGrouping, groupByParams: groupByParams, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: foundEntities, entitiesCountTotal: totalEntities, entitiesLoading: !inited }));
57
+ return (_jsx(NodesControls, { withGroupBySelect: viewerNodesHandlerHasGrouping, groupByParams: groupByParams, withPeerRoleFilter: withPeerRoleFilter, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: foundEntities, entitiesCountTotal: totalEntities, entitiesLoading: !inited }));
58
58
  };
59
- return (_jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: problemFilter, uptimeFilter: uptimeFilter, columns: columnsToShow, parentRef: parentRef, renderControls: renderControls }));
59
+ return (_jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: problemFilter, uptimeFilter: uptimeFilter, peerRoleFilter: peerRoleFilter, columns: columnsToShow, parentRef: parentRef, renderControls: renderControls }));
60
60
  }
61
- function GroupedNodesComponent({ path, database, parentRef, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
62
- const { searchValue, groupByParam } = useNodesPageQueryParams(groupByParams);
61
+ function GroupedNodesComponent({ path, database, parentRef, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
62
+ const { searchValue, peerRoleFilter, groupByParam } = useNodesPageQueryParams(groupByParams);
63
63
  const [autoRefreshInterval] = useAutoRefreshInterval();
64
64
  const { columnsToShow, columnsToSelect, setColumns } = useSelectedColumns(columns, selectedColumnsKey, NODES_COLUMNS_TITLES, defaultColumnsIds, requiredColumnsIds);
65
65
  const { currentData, isFetching, error } = nodesApi.useGetNodesQuery({
66
66
  path,
67
67
  database,
68
68
  filter: searchValue,
69
+ filter_peer_role: peerRoleFilter,
69
70
  group: groupByParam,
70
71
  limit: 0,
71
72
  }, {
@@ -75,13 +76,13 @@ function GroupedNodesComponent({ path, database, parentRef, columns, defaultColu
75
76
  const { NodeGroups: tableGroups, FoundNodes: found = 0, TotalNodes: total = 0, } = currentData || {};
76
77
  const { expandedGroups, setIsGroupExpanded } = useExpandedGroups(tableGroups);
77
78
  const renderControls = () => {
78
- return (_jsx(NodesControls, { withGroupBySelect: true, groupByParams: groupByParams, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: found, entitiesCountTotal: total, entitiesLoading: isLoading }));
79
+ return (_jsx(NodesControls, { withGroupBySelect: true, groupByParams: groupByParams, withPeerRoleFilter: withPeerRoleFilter, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: found, entitiesCountTotal: total, entitiesLoading: isLoading }));
79
80
  };
80
81
  const renderGroups = () => {
81
82
  if (tableGroups === null || tableGroups === void 0 ? void 0 : tableGroups.length) {
82
83
  return tableGroups.map(({ name, count }) => {
83
84
  const isExpanded = expandedGroups[name];
84
- return (_jsx(TableGroup, { title: name, count: count, entityName: i18n('nodes'), expanded: isExpanded, onIsExpandedChange: setIsGroupExpanded, children: _jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: 'All', uptimeFilter: NodesUptimeFilterValues.All, filterGroup: name, filterGroupBy: groupByParam, initialEntitiesCount: count, columns: columnsToShow, parentRef: parentRef }) }, name));
85
+ return (_jsx(TableGroup, { title: name, count: count, entityName: i18n('nodes'), expanded: isExpanded, onIsExpandedChange: setIsGroupExpanded, children: _jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: 'All', uptimeFilter: NodesUptimeFilterValues.All, peerRoleFilter: peerRoleFilter, filterGroup: name, filterGroupBy: groupByParam, initialEntitiesCount: count, columns: columnsToShow, parentRef: parentRef }) }, name));
85
86
  });
86
87
  }
87
88
  return i18n('no-nodes-groups');
@@ -1 +1 @@
1
- {"version":3,"file":"Nodes.js","sourceRoot":"","sources":["../../../src/containers/Nodes/Nodes.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Nodes.js","sourceRoot":"","sources":["../../../src/containers/Nodes/Nodes.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- @import '../../styles/mixins.scss';
1
+ @use '../../styles/mixins.scss';
2
2
 
3
3
  .ydb-nodes {
4
4
  &__search {
5
- @include search();
5
+ @include mixins.search();
6
6
  }
7
7
 
8
8
  &__show-all-wrapper {
@@ -3,11 +3,12 @@ import type { NodesGroupByField } from '../../../types/api/nodes';
3
3
  interface NodesControlsProps {
4
4
  withGroupBySelect?: boolean;
5
5
  groupByParams: NodesGroupByField[] | undefined;
6
+ withPeerRoleFilter?: boolean;
6
7
  columnsToSelect: TableColumnSetupItem[];
7
8
  handleSelectedColumnsUpdate: (updated: TableColumnSetupItem[]) => void;
8
9
  entitiesCountCurrent: number;
9
10
  entitiesCountTotal?: number;
10
11
  entitiesLoading: boolean;
11
12
  }
12
- export declare function NodesControls({ withGroupBySelect, groupByParams, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }: NodesControlsProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function NodesControls({ withGroupBySelect, groupByParams, withPeerRoleFilter, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }: NodesControlsProps): import("react/jsx-runtime").JSX.Element;
13
14
  export {};
@@ -5,20 +5,23 @@ import { EntitiesCount } from '../../../components/EntitiesCount';
5
5
  import { ProblemFilter } from '../../../components/ProblemFilter';
6
6
  import { Search } from '../../../components/Search';
7
7
  import { UptimeFilter } from '../../../components/UptimeFIlter';
8
- import { useViewerNodesHandlerHasGroupingBySystemState } from '../../../store/reducers/capabilities/hooks';
8
+ import { useViewerNodesHandlerHasGroupingBySystemState, useViewerNodesHandlerHasNetworkStats, } from '../../../store/reducers/capabilities/hooks';
9
9
  import { useProblemFilter } from '../../../store/reducers/settings/hooks';
10
+ import { PeerRoleFilter } from '../PeerRoleFilter/PeerRoleFilter';
10
11
  import { getNodesGroupByOptions } from '../columns/constants';
11
12
  import i18n from '../i18n';
12
13
  import { b } from '../shared';
13
14
  import { useNodesPageQueryParams } from '../useNodesPageQueryParams';
14
- export function NodesControls({ withGroupBySelect, groupByParams = [], columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }) {
15
- const { searchValue, uptimeFilter, groupByParam, handleSearchQueryChange, handleUptimeFilterChange, handleGroupByParamChange, } = useNodesPageQueryParams(groupByParams);
15
+ export function NodesControls({ withGroupBySelect, groupByParams = [], withPeerRoleFilter, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }) {
16
+ const { searchValue, uptimeFilter, peerRoleFilter, groupByParam, handleSearchQueryChange, handleUptimeFilterChange, handlePeerRoleFilterChange, handleGroupByParamChange, } = useNodesPageQueryParams(groupByParams);
16
17
  const { problemFilter, handleProblemFilterChange } = useProblemFilter();
17
18
  const systemStateGroupingAvailable = useViewerNodesHandlerHasGroupingBySystemState();
18
19
  const groupByoptions = getNodesGroupByOptions(groupByParams, systemStateGroupingAvailable);
20
+ const networStatsAvailable = useViewerNodesHandlerHasNetworkStats();
21
+ const shouldDisplayPeerRoleFilter = withPeerRoleFilter && networStatsAvailable;
19
22
  const handleGroupBySelectUpdate = (value) => {
20
23
  handleGroupByParamChange(value[0]);
21
24
  };
22
- return (_jsxs(React.Fragment, { children: [_jsx(Search, { onChange: handleSearchQueryChange, placeholder: i18n('controls_search-placeholder'), width: 238, value: searchValue }), systemStateGroupingAvailable && withGroupBySelect ? null : (_jsx(ProblemFilter, { value: problemFilter, onChange: handleProblemFilterChange })), withGroupBySelect ? null : (_jsx(UptimeFilter, { value: uptimeFilter, onChange: handleUptimeFilterChange })), _jsx(TableColumnSetup, { popupWidth: 200, items: columnsToSelect, showStatus: true, onUpdate: handleSelectedColumnsUpdate, sortable: false }), withGroupBySelect ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_group-by-placeholder') }), _jsx(Select, { hasClear: true, placeholder: '-', width: 150, defaultValue: groupByParam ? [groupByParam] : undefined, onUpdate: handleGroupBySelectUpdate, options: groupByoptions, className: b('group-by-select'), popupClassName: b('group-by-popup') })] })) : null, _jsx(EntitiesCount, { current: entitiesCountCurrent, total: entitiesCountTotal, label: i18n('nodes'), loading: entitiesLoading })] }));
25
+ return (_jsxs(React.Fragment, { children: [_jsx(Search, { onChange: handleSearchQueryChange, placeholder: i18n('controls_search-placeholder'), width: 238, value: searchValue }), systemStateGroupingAvailable && withGroupBySelect ? null : (_jsx(ProblemFilter, { value: problemFilter, onChange: handleProblemFilterChange })), withGroupBySelect ? null : (_jsx(UptimeFilter, { value: uptimeFilter, onChange: handleUptimeFilterChange })), shouldDisplayPeerRoleFilter ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_peer-role-label') }), _jsx(PeerRoleFilter, { value: peerRoleFilter, onChange: handlePeerRoleFilterChange })] })) : null, _jsx(TableColumnSetup, { popupWidth: 200, items: columnsToSelect, showStatus: true, onUpdate: handleSelectedColumnsUpdate, sortable: false }), withGroupBySelect ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_group-by-placeholder') }), _jsx(Select, { hasClear: true, placeholder: '-', width: 150, defaultValue: groupByParam ? [groupByParam] : undefined, onUpdate: handleGroupBySelectUpdate, options: groupByoptions, className: b('group-by-select'), popupClassName: b('group-by-popup') })] })) : null, _jsx(EntitiesCount, { current: entitiesCountCurrent, total: entitiesCountTotal, label: i18n('nodes'), loading: entitiesLoading })] }));
23
26
  }
24
27
  //# sourceMappingURL=NodesControls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodesControls.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/NodesControls/NodesControls.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodesControls.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/NodesControls/NodesControls.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { RenderControls } from '../../components/PaginatedTable';
3
3
  import type { NodesPreparedEntity } from '../../store/reducers/nodes/types';
4
4
  import type { ProblemFilterValue } from '../../store/reducers/settings/types';
5
- import type { NodesGroupByField } from '../../types/api/nodes';
5
+ import type { NodesGroupByField, NodesPeerRole } from '../../types/api/nodes';
6
6
  import { NodesUptimeFilterValues } from '../../utils/nodes';
7
7
  import type { Column } from '../../utils/tableUtils/types';
8
8
  interface NodesTableProps {
@@ -11,6 +11,7 @@ interface NodesTableProps {
11
11
  searchValue: string;
12
12
  problemFilter: ProblemFilterValue;
13
13
  uptimeFilter: NodesUptimeFilterValues;
14
+ peerRoleFilter?: NodesPeerRole;
14
15
  filterGroup?: string;
15
16
  filterGroupBy?: NodesGroupByField;
16
17
  columns: Column<NodesPreparedEntity>[];
@@ -18,5 +19,5 @@ interface NodesTableProps {
18
19
  renderControls?: RenderControls;
19
20
  initialEntitiesCount?: number;
20
21
  }
21
- export declare function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }: NodesTableProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, peerRoleFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }: NodesTableProps): import("react/jsx-runtime").JSX.Element;
22
23
  export {};
@@ -7,7 +7,7 @@ import { NodesUptimeFilterValues } from '../../utils/nodes';
7
7
  import { getNodes } from './getNodes';
8
8
  import i18n from './i18n';
9
9
  import { getRowClassName, renderPaginatedTableErrorMessage } from './shared';
10
- export function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }) {
10
+ export function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, peerRoleFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }) {
11
11
  const tableFilters = React.useMemo(() => {
12
12
  return {
13
13
  path,
@@ -15,10 +15,20 @@ export function NodesTable({ path, database, searchValue, problemFilter, uptimeF
15
15
  searchValue,
16
16
  problemFilter,
17
17
  uptimeFilter,
18
+ peerRoleFilter,
18
19
  filterGroup,
19
20
  filterGroupBy,
20
21
  };
21
- }, [path, database, searchValue, problemFilter, uptimeFilter, filterGroup, filterGroupBy]);
22
+ }, [
23
+ path,
24
+ database,
25
+ searchValue,
26
+ problemFilter,
27
+ uptimeFilter,
28
+ peerRoleFilter,
29
+ filterGroup,
30
+ filterGroupBy,
31
+ ]);
22
32
  const renderEmptyDataMessage = () => {
23
33
  if (problemFilter !== 'All' || uptimeFilter !== NodesUptimeFilterValues.All) {
24
34
  return _jsx(Illustration, { name: "thumbsUp", width: "200" });
@@ -1 +1 @@
1
- {"version":3,"file":"NodesTable.js","sourceRoot":"","sources":["../../../src/containers/Nodes/NodesTable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,wBAAwB,EAAC,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAC,0BAA0B,EAAC,MAAM,yCAAyC,CAAC;AAInF,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,eAAe,EAAE,gCAAgC,EAAC,MAAM,UAAU,CAAC;AAoB3E,MAAM,UAAU,UAAU,CAAC,EACvB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,SAAS,EACT,cAAc,EACd,oBAAoB,GACN;IACd,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACpC,OAAO;YACH,IAAI;YACJ,QAAQ;YACR,WAAW;YACX,aAAa;YACb,YAAY;YACZ,WAAW;YACX,aAAa;SAChB,CAAC;IACN,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;IAE3F,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAChC,IAAI,aAAa,KAAK,KAAK,IAAI,YAAY,KAAK,uBAAuB,CAAC,GAAG,EAAE,CAAC;YAC1E,OAAO,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,GAAG,CAAC;QACxD,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,wBAAwB,IACrB,iBAAiB,EAAE,0BAA0B,EAC7C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,QAAQ,EACnB,KAAK,EAAE,EAAE,EACT,oBAAoB,EAAE,oBAAoB,EAC1C,cAAc,EAAE,cAAc,EAC9B,kBAAkB,EAAE,gCAAgC,EACpD,sBAAsB,EAAE,sBAAsB,EAC9C,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,YAAY,EACrB,SAAS,EAAC,OAAO,GACnB,CACL,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"NodesTable.js","sourceRoot":"","sources":["../../../src/containers/Nodes/NodesTable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,wBAAwB,EAAC,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAC,0BAA0B,EAAC,MAAM,yCAAyC,CAAC;AAInF,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,eAAe,EAAE,gCAAgC,EAAC,MAAM,UAAU,CAAC;AAqB3E,MAAM,UAAU,UAAU,CAAC,EACvB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,OAAO,EACP,SAAS,EACT,cAAc,EACd,oBAAoB,GACN;IACd,MAAM,YAAY,GAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClD,OAAO;YACH,IAAI;YACJ,QAAQ;YACR,WAAW;YACX,aAAa;YACb,YAAY;YACZ,cAAc;YACd,WAAW;YACX,aAAa;SAChB,CAAC;IACN,CAAC,EAAE;QACC,IAAI;QACJ,QAAQ;QACR,WAAW;QACX,aAAa;QACb,YAAY;QACZ,cAAc;QACd,WAAW;QACX,aAAa;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAChC,IAAI,aAAa,KAAK,KAAK,IAAI,YAAY,KAAK,uBAAuB,CAAC,GAAG,EAAE,CAAC;YAC1E,OAAO,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,GAAG,CAAC;QACxD,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,wBAAwB,IACrB,iBAAiB,EAAE,0BAA0B,EAC7C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,QAAQ,EACnB,KAAK,EAAE,EAAE,EACT,oBAAoB,EAAE,oBAAoB,EAC1C,cAAc,EAAE,cAAc,EAC9B,kBAAkB,EAAE,gCAAgC,EACpD,sBAAsB,EAAE,sBAAsB,EAC9C,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,YAAY,EACrB,SAAS,EAAC,OAAO,GACnB,CACL,CAAC;AACN,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { NodesPeerRole } from '../../../types/api/nodes';
2
+ interface PeerRoleFilterProps {
3
+ value?: NodesPeerRole;
4
+ onChange: (value: NodesPeerRole) => void;
5
+ }
6
+ export declare function PeerRoleFilter({ value, onChange }: PeerRoleFilterProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { RadioButton } from '@gravity-ui/uikit';
3
+ import { NODES_PEER_ROLES, NODES_PEER_ROLES_TITLES } from './utils';
4
+ export function PeerRoleFilter({ value = 'database', onChange }) {
5
+ return (_jsx(RadioButton, { value: value, onUpdate: onChange, children: NODES_PEER_ROLES.map((role) => {
6
+ return (_jsx(RadioButton.Option, { value: role, children: NODES_PEER_ROLES_TITLES[role] }, role));
7
+ }) }));
8
+ }
9
+ //# sourceMappingURL=PeerRoleFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PeerRoleFilter.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/PeerRoleFilter/PeerRoleFilter.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAI9C,OAAO,EAAC,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAOlE,MAAM,UAAU,cAAc,CAAC,EAAC,KAAK,GAAG,UAAU,EAAE,QAAQ,EAAsB;IAC9E,OAAO,CACH,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,YACxC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3B,OAAO,CACH,KAAC,WAAW,CAAC,MAAM,IAAY,KAAK,EAAE,IAAI,YACrC,uBAAuB,CAAC,IAAI,CAAC,IADT,IAAI,CAER,CACxB,CAAC;QACN,CAAC,CAAC,GACQ,CACjB,CAAC;AACN,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { NodesPeerRole } from '../../../types/api/nodes';
2
+ export declare const NODES_PEER_ROLES: NodesPeerRole[];
3
+ export declare const NODES_PEER_ROLES_TITLES: Record<NodesPeerRole, string>;
4
+ export declare function parseNodesPeerRoleFilter(paramToParse: unknown): NodesPeerRole | undefined;
@@ -0,0 +1,20 @@
1
+ import i18n from '../i18n';
2
+ export const NODES_PEER_ROLES = ['database', 'static', 'other', 'any'];
3
+ export const NODES_PEER_ROLES_TITLES = {
4
+ get database() {
5
+ return i18n('database');
6
+ },
7
+ get static() {
8
+ return i18n('static');
9
+ },
10
+ get other() {
11
+ return i18n('other');
12
+ },
13
+ get any() {
14
+ return i18n('any');
15
+ },
16
+ };
17
+ export function parseNodesPeerRoleFilter(paramToParse) {
18
+ return NODES_PEER_ROLES.find((peerRoleParam) => peerRoleParam === paramToParse);
19
+ }
20
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/PeerRoleFilter/utils.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,MAAM,CAAC,MAAM,gBAAgB,GAAoB,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,uBAAuB,GAAkC;IAClE,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACJ,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,YAAqB;IAC1D,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,KAAK,YAAY,CAAC,CAAC;AACpF,CAAC"}
@@ -7,13 +7,13 @@ export function getNodesColumns(params) {
7
7
  getNodeNameColumn(),
8
8
  getDataCenterColumn(),
9
9
  getRackColumn(),
10
- getVersionColumn(),
11
10
  getUptimeColumn(),
12
- getMemoryColumn(),
13
- getRAMColumn(),
14
- getPoolsColumn(),
15
11
  getCpuColumn(),
12
+ getPoolsColumn(),
13
+ getRAMColumn(),
14
+ getMemoryColumn(),
16
15
  getLoadAverageColumn(),
16
+ getVersionColumn(),
17
17
  getTabletsColumn(params),
18
18
  ];
19
19
  return columns.map((column) => {
@@ -1 +1 @@
1
- {"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/columns/columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACnB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4CAA4C,CAAC;AAKjF,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,MAAM,OAAO,GAAG;QACZ,eAAe,EAAuB;QACtC,aAAa,CAAsB,MAAM,CAAC;QAC1C,iBAAiB,EAAuB;QACxC,mBAAmB,EAAuB;QAC1C,aAAa,EAAuB;QACpC,gBAAgB,EAAuB;QACvC,eAAe,EAAuB;QACtC,eAAe,EAAuB;QACtC,YAAY,EAAuB;QACnC,cAAc,EAAuB;QACrC,YAAY,EAAuB;QACnC,oBAAoB,EAAuB;QAC3C,gBAAgB,CAAsB,MAAM,CAAC;KAChD,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1B,OAAO,EAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/columns/columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACnB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4CAA4C,CAAC;AAKjF,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,MAAM,OAAO,GAAG;QACZ,eAAe,EAAuB;QACtC,aAAa,CAAsB,MAAM,CAAC;QAC1C,iBAAiB,EAAuB;QACxC,mBAAmB,EAAuB;QAC1C,aAAa,EAAuB;QACpC,eAAe,EAAuB;QACtC,YAAY,EAAuB;QACnC,cAAc,EAAuB;QACrC,YAAY,EAAuB;QACnC,eAAe,EAAuB;QACtC,oBAAoB,EAAuB;QAC3C,gBAAgB,EAAuB;QACvC,gBAAgB,CAAsB,MAAM,CAAC;KAChD,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1B,OAAO,EAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACP,CAAC"}