ydb-embedded-ui 5.2.0 → 5.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (457) hide show
  1. package/dist/components/BasicNodeViewer/BasicNodeViewer.js +1 -1
  2. package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.d.ts +13 -0
  3. package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.js +32 -0
  4. package/dist/components/CellWithPopover/CellWithPopover.js +1 -11
  5. package/dist/components/ClipboardButton/ClipboardButton.js +1 -11
  6. package/dist/components/ComponentsProvider/ComponentsProvider.d.ts +2 -2
  7. package/dist/components/ComponentsProvider/componentsRegistry.d.ts +1 -1
  8. package/dist/components/ComponentsProvider/registry.d.ts +3 -3
  9. package/dist/components/ContentWithPopup/ContentWithPopup.js +1 -11
  10. package/dist/components/CriticalActionDialog/CriticalActionDialog.d.ts +6 -4
  11. package/dist/components/CriticalActionDialog/CriticalActionDialog.js +32 -7
  12. package/dist/components/CriticalActionDialog/CriticalActionDialog.scss +8 -19
  13. package/dist/components/CriticalActionDialog/i18n/en.json +7 -0
  14. package/dist/components/CriticalActionDialog/i18n/index.d.ts +1 -0
  15. package/dist/components/CriticalActionDialog/i18n/index.js +4 -0
  16. package/dist/components/EnableFullscreenButton/EnableFullscreenButton.js +2 -2
  17. package/dist/components/EntityStatus/EntityStatus.d.ts +20 -37
  18. package/dist/components/EntityStatus/EntityStatus.js +17 -66
  19. package/dist/components/EntityStatus/EntityStatus.scss +1 -57
  20. package/dist/components/Errors/403/AccessDenied.js +1 -11
  21. package/dist/components/FormattedBytes/FormattedBytes.d.ts +1 -1
  22. package/dist/components/FormattedBytes/FormattedBytes.js +1 -11
  23. package/dist/components/FormattedBytes/utils.d.ts +1 -1
  24. package/dist/components/FullNodeViewer/FullNodeViewer.js +1 -2
  25. package/dist/components/Fullscreen/Fullscreen.js +11 -11
  26. package/dist/components/Illustration/Illustration.js +1 -11
  27. package/dist/components/InfoViewer/InfoViewer.d.ts +2 -2
  28. package/dist/components/InfoViewer/InfoViewer.js +1 -1
  29. package/dist/components/InfoViewer/formatters/cdcStream.d.ts +1 -1
  30. package/dist/components/InfoViewer/formatters/common.d.ts +1 -1
  31. package/dist/components/InfoViewer/formatters/pqGroup.d.ts +3 -3
  32. package/dist/components/InfoViewer/formatters/schema.d.ts +1 -1
  33. package/dist/components/InfoViewer/formatters/table.d.ts +4 -4
  34. package/dist/components/InfoViewer/utils.d.ts +3 -3
  35. package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.d.ts +7 -0
  36. package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.js +7 -0
  37. package/dist/{containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.scss → components/InfoViewerSkeleton/InfoViewerSkeleton.scss} +1 -9
  38. package/dist/components/InternalLink/InternalLink.js +1 -11
  39. package/dist/components/LinkToSchemaObject/LinkToSchemaObject.js +1 -11
  40. package/dist/components/LinkWithIcon/LinkWithIcon.d.ts +8 -0
  41. package/dist/components/LinkWithIcon/LinkWithIcon.js +14 -0
  42. package/dist/components/{ExternalLinkWithIcon/ExternalLinkWithIcon.scss → LinkWithIcon/LinkWithIcon.scss} +1 -1
  43. package/dist/components/MetricChart/MetricChart.d.ts +2 -1
  44. package/dist/components/MetricChart/MetricChart.js +8 -3
  45. package/dist/components/MetricChart/getChartData.d.ts +2 -1
  46. package/dist/components/MetricChart/getChartData.js +2 -2
  47. package/dist/components/MetricChart/getDefaultDataFormatter.d.ts +1 -1
  48. package/dist/components/MetricChart/i18n/en.json +3 -0
  49. package/dist/components/MetricChart/i18n/index.d.ts +2 -0
  50. package/dist/components/MetricChart/i18n/index.js +4 -0
  51. package/dist/components/MetricChart/reducer.d.ts +1 -1
  52. package/dist/components/MetricChart/types.d.ts +5 -5
  53. package/dist/components/NodeHostWrapper/NodeHostWrapper.js +1 -1
  54. package/dist/components/PDiskInfo/PDiskInfo.d.ts +11 -0
  55. package/dist/components/PDiskInfo/PDiskInfo.js +71 -0
  56. package/dist/components/PDiskInfo/PDiskInfo.scss +8 -0
  57. package/dist/components/PDiskInfo/i18n/en.json +14 -0
  58. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -0
  59. package/dist/components/PDiskInfo/i18n/index.js +4 -0
  60. package/dist/components/PageMeta/PageMeta.d.ts +8 -0
  61. package/dist/components/PageMeta/PageMeta.js +7 -0
  62. package/dist/components/PageMeta/PageMeta.scss +10 -0
  63. package/dist/components/ProgressViewer/ProgressViewer.d.ts +1 -1
  64. package/dist/components/QueryResultTable/Cell/Cell.js +2 -2
  65. package/dist/components/QueryResultTable/QueryResultTable.js +1 -11
  66. package/dist/components/ShortyString/ShortyString.d.ts +1 -1
  67. package/dist/components/StatusIcon/StatusIcon.d.ts +12 -0
  68. package/dist/components/StatusIcon/StatusIcon.js +23 -0
  69. package/dist/components/StatusIcon/StatusIcon.scss +69 -0
  70. package/dist/components/Tablet/Tablet.scss +1 -1
  71. package/dist/components/TabletsOverall/TabletsOverall.js +6 -6
  72. package/dist/components/TabletsStatistic/TabletsStatistic.d.ts +1 -1
  73. package/dist/components/TabletsStatistic/TabletsStatistic.scss +1 -1
  74. package/dist/components/Tag/Tag.d.ts +1 -1
  75. package/dist/components/UsageLabel/UsageLabel.js +1 -11
  76. package/dist/components/VirtualTable/TableHead.js +2 -2
  77. package/dist/components/VirtualTable/reducer.d.ts +2 -2
  78. package/dist/components/VirtualTable/types.d.ts +13 -13
  79. package/dist/components/slots/types.d.ts +1 -1
  80. package/dist/containers/App/App.d.ts +1 -1
  81. package/dist/containers/App/Content.js +10 -4
  82. package/dist/containers/App/Providers.d.ts +1 -1
  83. package/dist/containers/App/appSlots.d.ts +6 -0
  84. package/dist/containers/App/appSlots.js +1 -0
  85. package/dist/containers/AppWithClusters/AppWithClusters.d.ts +1 -1
  86. package/dist/containers/AppWithClusters/AppWithClusters.js +1 -1
  87. package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +2 -3
  88. package/dist/containers/Authentication/Authentication.js +2 -5
  89. package/dist/containers/Cluster/Cluster.js +4 -5
  90. package/dist/containers/Cluster/Cluster.scss +3 -0
  91. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +4 -4
  92. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +4 -0
  93. package/dist/containers/Cluster/ClusterInfo/utils.d.ts +1 -1
  94. package/dist/containers/Cluster/utils.d.ts +2 -2
  95. package/dist/containers/Clusters/Clusters.js +2 -4
  96. package/dist/containers/Clusters/Clusters.scss +1 -1
  97. package/dist/containers/Clusters/constants.d.ts +1 -1
  98. package/dist/containers/Clusters/useClustersList.js +2 -2
  99. package/dist/containers/Clusters/useSelectedColumns.d.ts +1 -1
  100. package/dist/containers/Header/Header.js +4 -5
  101. package/dist/containers/Header/breadcrumbs.js +28 -5
  102. package/dist/containers/Header/i18n/en.json +7 -0
  103. package/dist/containers/Header/i18n/index.d.ts +1 -0
  104. package/dist/containers/Header/i18n/index.js +4 -0
  105. package/dist/containers/Heatmap/Heatmap.js +3 -4
  106. package/dist/containers/Heatmap/HeatmapCanvas/HeatmapCanvas.js +1 -1
  107. package/dist/containers/Node/Node.js +2 -3
  108. package/dist/containers/Node/NodeStructure/NodeStructure.d.ts +0 -1
  109. package/dist/containers/Node/NodeStructure/NodeStructure.js +2 -6
  110. package/dist/containers/Node/NodeStructure/Pdisk.js +9 -65
  111. package/dist/containers/Node/NodeStructure/Vdisk.d.ts +1 -1
  112. package/dist/containers/Node/NodeStructure/Vdisk.js +5 -3
  113. package/dist/containers/Nodes/Nodes.js +2 -3
  114. package/dist/containers/Nodes/NodesWrapper.js +1 -11
  115. package/dist/containers/Nodes/getNodes.js +1 -11
  116. package/dist/containers/Nodes/getNodesColumns.d.ts +1 -1
  117. package/dist/containers/PDisk/PDisk.d.ts +3 -0
  118. package/dist/containers/PDisk/PDisk.js +68 -0
  119. package/dist/containers/PDisk/PDisk.scss +41 -0
  120. package/dist/containers/PDisk/PDiskGroups.d.ts +10 -0
  121. package/dist/containers/PDisk/PDiskGroups.js +20 -0
  122. package/dist/containers/PDisk/i18n/en.json +6 -0
  123. package/dist/containers/PDisk/i18n/index.d.ts +1 -0
  124. package/dist/containers/PDisk/i18n/index.js +4 -0
  125. package/dist/containers/PDisk/shared.d.ts +10 -0
  126. package/dist/containers/PDisk/shared.js +2 -0
  127. package/dist/containers/ReduxTooltip/ReduxTooltip.d.ts +1 -1
  128. package/dist/containers/ReduxTooltip/ReduxTooltip.js +3 -2
  129. package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.d.ts +1 -9
  130. package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.js +2 -12
  131. package/dist/containers/Storage/PDisk/PDisk.d.ts +3 -3
  132. package/dist/containers/Storage/PDisk/PDisk.js +6 -53
  133. package/dist/containers/Storage/PDiskPopup/PDiskPopup.d.ts +3 -3
  134. package/dist/containers/Storage/PDiskPopup/PDiskPopup.js +3 -14
  135. package/dist/containers/Storage/Storage.js +2 -3
  136. package/dist/containers/Storage/StorageGroups/getGroups.js +1 -11
  137. package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.d.ts +2 -1
  138. package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.js +22 -8
  139. package/dist/containers/Storage/StorageNodes/getNodes.js +1 -11
  140. package/dist/containers/Storage/StorageNodes/getStorageNodesColumns.js +1 -1
  141. package/dist/containers/Storage/StorageWrapper.js +1 -11
  142. package/dist/containers/Storage/UsageFilter/UsageFilter.js +1 -1
  143. package/dist/containers/Storage/VDisk/VDisk.d.ts +2 -3
  144. package/dist/containers/Storage/VDisk/VDisk.js +4 -64
  145. package/dist/containers/Storage/VDiskPopup/VDiskPopup.js +2 -12
  146. package/dist/containers/Storage/VirtualStorage.js +2 -3
  147. package/dist/containers/Storage/utils/index.d.ts +1 -3
  148. package/dist/containers/Storage/utils/index.js +0 -6
  149. package/dist/containers/Tablet/Tablet.js +4 -5
  150. package/dist/containers/Tablet/TabletControls/TabletControls.d.ts +3 -2
  151. package/dist/containers/Tablet/TabletControls/TabletControls.js +2 -49
  152. package/dist/containers/Tablet/TabletTable/TabletTable.js +1 -1
  153. package/dist/containers/Tablets/Tablets.js +2 -3
  154. package/dist/containers/TabletsFilters/TabletsFilters.d.ts +2 -2
  155. package/dist/containers/Tenant/Acl/Acl.js +2 -3
  156. package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +2 -3
  157. package/dist/containers/Tenant/Diagnostics/Describe/Describe.js +3 -3
  158. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +6 -4
  159. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +2 -2
  160. package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.js +2 -3
  161. package/dist/containers/Tenant/Diagnostics/Network/Network.d.ts +2 -2
  162. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.d.ts +1 -1
  163. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.js +7 -5
  164. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.scss +1 -1
  165. package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +9 -5
  166. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/prepareTableInfo.d.ts +1 -1
  167. package/dist/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.d.ts +1 -1
  168. package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +2 -3
  169. package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js +1 -1
  170. package/dist/containers/Tenant/Diagnostics/Partitions/utils/index.d.ts +1 -1
  171. package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.d.ts +5 -1
  172. package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.js +2 -2
  173. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +0 -1
  174. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.d.ts +2 -2
  175. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +3 -2
  176. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.d.ts +2 -2
  177. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.js +3 -12
  178. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.d.ts +2 -1
  179. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.js +1 -1
  180. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js +1 -1
  181. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js +2 -3
  182. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js +2 -3
  183. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +2 -3
  184. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js +2 -3
  185. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.d.ts +2 -1
  186. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js +2 -2
  187. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js +1 -1
  188. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js +2 -3
  189. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +6 -7
  190. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js +1 -11
  191. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +1 -1
  192. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +2 -3
  193. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js +2 -3
  194. package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.d.ts +2 -2
  195. package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.js +3 -4
  196. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js +2 -5
  197. package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +2 -3
  198. package/dist/containers/Tenant/Info/ExternalDataSource/ExternalDataSource.js +1 -1
  199. package/dist/containers/Tenant/Info/ExternalTable/ExternalTable.js +3 -3
  200. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.d.ts +1 -0
  201. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +3 -2
  202. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +2 -3
  203. package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js +2 -3
  204. package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.js +3 -3
  205. package/dist/containers/Tenant/Query/Issues/models.d.ts +1 -1
  206. package/dist/containers/Tenant/Query/Preview/Preview.js +2 -3
  207. package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js +2 -3
  208. package/dist/containers/Tenant/Query/Query.js +2 -3
  209. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +8 -12
  210. package/dist/containers/Tenant/Query/QueryEditor/helpers.d.ts +4 -0
  211. package/dist/containers/Tenant/Query/QueryEditor/helpers.js +17 -0
  212. package/dist/containers/Tenant/Query/SaveQuery/SaveQuery.js +4 -4
  213. package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js +2 -2
  214. package/dist/containers/Tenant/Query/i18n/en.json +5 -1
  215. package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
  216. package/dist/containers/Tenant/Query/i18n/index.js +2 -5
  217. package/dist/containers/Tenant/Schema/SchemaTree/SchemaTree.js +5 -3
  218. package/dist/containers/Tenant/Tenant.js +24 -8
  219. package/dist/containers/Tenant/utils/index.d.ts +1 -1
  220. package/dist/containers/Tenant/utils/schema.d.ts +12 -12
  221. package/dist/containers/Tenant/utils/schemaActions.d.ts +1 -1
  222. package/dist/containers/Tenants/Tenants.js +3 -4
  223. package/dist/containers/UserSettings/Setting.d.ts +1 -1
  224. package/dist/containers/UserSettings/i18n/en.json +4 -0
  225. package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
  226. package/dist/containers/UserSettings/settings.d.ts +4 -1
  227. package/dist/containers/UserSettings/settings.js +21 -6
  228. package/dist/containers/Versions/NodesTable/NodesTable.js +1 -1
  229. package/dist/containers/Versions/Versions.js +2 -3
  230. package/dist/reportWebVitals.d.ts +1 -1
  231. package/dist/routes.d.ts +5 -2
  232. package/dist/routes.js +6 -1
  233. package/dist/services/api.d.ts +8 -7
  234. package/dist/services/api.js +3 -13
  235. package/dist/services/settings.d.ts +1 -1
  236. package/dist/services/settings.js +2 -1
  237. package/dist/store/configureStore.d.ts +310 -0
  238. package/dist/store/configureStore.js +56 -0
  239. package/dist/store/defaultStore.d.ts +168 -0
  240. package/dist/store/defaultStore.js +2 -0
  241. package/dist/store/getUrlData.d.ts +3 -3
  242. package/dist/store/getUrlData.js +4 -4
  243. package/dist/store/index.d.ts +3 -97
  244. package/dist/store/index.js +2 -49
  245. package/dist/store/reducers/authentication/authentication.d.ts +247 -4
  246. package/dist/store/reducers/authentication/types.d.ts +1 -1
  247. package/dist/store/reducers/cluster/cluster.d.ts +83 -2
  248. package/dist/store/reducers/cluster/types.d.ts +3 -3
  249. package/dist/store/reducers/clusterNodes/clusterNodes.d.ts +83 -2
  250. package/dist/store/reducers/clusterNodes/types.d.ts +1 -1
  251. package/dist/store/reducers/clusters/clusters.d.ts +83 -2
  252. package/dist/store/reducers/clusters/selectors.d.ts +20 -6
  253. package/dist/store/reducers/clusters/selectors.js +1 -1
  254. package/dist/store/reducers/clusters/types.d.ts +1 -1
  255. package/dist/store/reducers/describe.d.ts +165 -3
  256. package/dist/store/reducers/describe.js +4 -3
  257. package/dist/store/reducers/executeQuery.d.ts +83 -2
  258. package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +3 -3
  259. package/dist/store/reducers/executeTopQueries/types.d.ts +1 -1
  260. package/dist/store/reducers/explainQuery.d.ts +165 -3
  261. package/dist/store/reducers/header/header.d.ts +1 -1
  262. package/dist/store/reducers/header/types.d.ts +7 -4
  263. package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +101 -0
  264. package/dist/store/reducers/{healthcheckInfo.js → healthcheckInfo/healthcheckInfo.js} +2 -2
  265. package/dist/store/reducers/healthcheckInfo/types.d.ts +19 -0
  266. package/dist/store/reducers/healthcheckInfo/utils.d.ts +3 -0
  267. package/dist/store/reducers/healthcheckInfo/utils.js +11 -0
  268. package/dist/store/reducers/heatmap.d.ts +83 -2
  269. package/dist/store/reducers/heatmap.js +2 -2
  270. package/dist/store/reducers/host.d.ts +83 -2
  271. package/dist/store/reducers/hotKeys/hotKeys.d.ts +1 -1
  272. package/dist/store/reducers/hotKeys/types.d.ts +1 -1
  273. package/dist/store/reducers/index.d.ts +95 -45
  274. package/dist/store/reducers/index.js +4 -2
  275. package/dist/store/reducers/network/network.d.ts +83 -2
  276. package/dist/store/reducers/network/types.d.ts +1 -1
  277. package/dist/store/reducers/node/node.d.ts +165 -3
  278. package/dist/store/reducers/node/selectors.d.ts +1 -1
  279. package/dist/store/reducers/node/selectors.js +5 -4
  280. package/dist/store/reducers/node/types.d.ts +8 -10
  281. package/dist/store/reducers/node/utils.js +3 -2
  282. package/dist/store/reducers/nodes/nodes.d.ts +165 -3
  283. package/dist/store/reducers/nodes/nodes.js +1 -11
  284. package/dist/store/reducers/nodes/selectors.d.ts +1 -1
  285. package/dist/store/reducers/nodes/selectors.js +1 -1
  286. package/dist/store/reducers/nodes/types.d.ts +4 -3
  287. package/dist/store/reducers/nodes/utils.d.ts +1 -1
  288. package/dist/store/reducers/nodes/utils.js +3 -2
  289. package/dist/store/reducers/nodesList.d.ts +83 -2
  290. package/dist/store/reducers/olapStats.d.ts +83 -2
  291. package/dist/store/reducers/overview/overview.d.ts +166 -4
  292. package/dist/store/reducers/overview/overview.js +3 -3
  293. package/dist/store/reducers/overview/types.d.ts +6 -5
  294. package/dist/store/reducers/partitions/partitions.d.ts +83 -2
  295. package/dist/store/reducers/partitions/types.d.ts +1 -1
  296. package/dist/store/reducers/partitions/utils.d.ts +2 -2
  297. package/dist/store/reducers/pdisk/pdisk.d.ts +210 -0
  298. package/dist/store/reducers/pdisk/pdisk.js +64 -0
  299. package/dist/store/reducers/pdisk/types.d.ts +23 -0
  300. package/dist/store/reducers/pdisk/types.js +1 -0
  301. package/dist/store/reducers/pdisk/utils.d.ts +32 -0
  302. package/dist/store/reducers/pdisk/utils.js +32 -0
  303. package/dist/store/reducers/preview.d.ts +82 -1
  304. package/dist/store/reducers/saveQuery.d.ts +3 -3
  305. package/dist/store/reducers/schema/schema.d.ts +84 -4
  306. package/dist/store/reducers/schema/schema.js +4 -4
  307. package/dist/store/reducers/schema/types.d.ts +3 -3
  308. package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +83 -2
  309. package/dist/store/reducers/schemaAcl/types.d.ts +1 -1
  310. package/dist/store/reducers/settings/settings.d.ts +2 -2
  311. package/dist/store/reducers/settings/types.d.ts +3 -3
  312. package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +83 -2
  313. package/dist/store/reducers/shardsWorkload/types.d.ts +1 -1
  314. package/dist/store/reducers/storage/selectors.d.ts +1 -1
  315. package/dist/store/reducers/storage/selectors.js +1 -1
  316. package/dist/store/reducers/storage/storage.d.ts +165 -3
  317. package/dist/store/reducers/storage/storage.js +1 -11
  318. package/dist/store/reducers/storage/types.d.ts +10 -10
  319. package/dist/store/reducers/storage/utils.d.ts +4 -2
  320. package/dist/store/reducers/storage/utils.js +23 -30
  321. package/dist/store/reducers/tablet.d.ts +165 -3
  322. package/dist/store/reducers/tablet.js +1 -1
  323. package/dist/store/reducers/tablets.d.ts +83 -2
  324. package/dist/store/reducers/tabletsFilters.d.ts +101 -2
  325. package/dist/store/reducers/tabletsFilters.js +1 -1
  326. package/dist/store/reducers/tenant/tenant.d.ts +83 -2
  327. package/dist/store/reducers/tenant/types.d.ts +6 -6
  328. package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +83 -2
  329. package/dist/store/reducers/tenantOverview/executeTopTables/types.d.ts +1 -1
  330. package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.d.ts +83 -2
  331. package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.js +1 -11
  332. package/dist/store/reducers/tenantOverview/topNodesByCpu/types.d.ts +2 -2
  333. package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.d.ts +83 -2
  334. package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.js +1 -11
  335. package/dist/store/reducers/tenantOverview/topNodesByLoad/types.d.ts +2 -2
  336. package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.d.ts +83 -2
  337. package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.js +1 -11
  338. package/dist/store/reducers/tenantOverview/topNodesByMemory/types.d.ts +2 -2
  339. package/dist/store/reducers/tenantOverview/topQueries/tenantOverviewTopQueries.d.ts +83 -2
  340. package/dist/store/reducers/tenantOverview/topQueries/types.d.ts +1 -1
  341. package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +83 -2
  342. package/dist/store/reducers/tenantOverview/topShards/types.d.ts +1 -1
  343. package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.d.ts +83 -2
  344. package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.js +1 -11
  345. package/dist/store/reducers/tenantOverview/topStorageGroups/types.d.ts +2 -2
  346. package/dist/store/reducers/tenants/selectors.d.ts +2 -2
  347. package/dist/store/reducers/tenants/selectors.js +1 -1
  348. package/dist/store/reducers/tenants/tenants.d.ts +83 -2
  349. package/dist/store/reducers/tenants/types.d.ts +2 -2
  350. package/dist/store/reducers/tenants/utils.d.ts +6 -6
  351. package/dist/store/reducers/tooltip.d.ts +4 -3
  352. package/dist/store/reducers/tooltip.js +2 -4
  353. package/dist/store/reducers/topic.d.ts +83 -3
  354. package/dist/store/reducers/topic.js +1 -1
  355. package/dist/store/state-url-mapping.d.ts +5 -3
  356. package/dist/store/state-url-mapping.js +9 -18
  357. package/dist/store/utils.d.ts +4 -4
  358. package/dist/types/additionalProps.d.ts +2 -2
  359. package/dist/types/api/enums.d.ts +1 -0
  360. package/dist/types/api/enums.js +1 -0
  361. package/dist/types/api/error.d.ts +1 -1
  362. package/dist/types/api/nodes.d.ts +1 -1
  363. package/dist/types/api/nodesList.d.ts +1 -1
  364. package/dist/types/api/query.d.ts +19 -19
  365. package/dist/types/api/render.d.ts +6 -3
  366. package/dist/types/api/storage.d.ts +1 -1
  367. package/dist/types/api/tablet.d.ts +1 -1
  368. package/dist/types/common.d.ts +1 -1
  369. package/dist/types/index.d.ts +1 -1
  370. package/dist/types/store/describe.d.ts +3 -3
  371. package/dist/types/store/executeQuery.d.ts +2 -2
  372. package/dist/types/store/explainQuery.d.ts +3 -3
  373. package/dist/types/store/heatmap.d.ts +3 -3
  374. package/dist/types/store/host.d.ts +1 -1
  375. package/dist/types/store/nodesList.d.ts +2 -2
  376. package/dist/types/store/olapStats.d.ts +1 -1
  377. package/dist/types/store/query.d.ts +5 -5
  378. package/dist/types/store/tablet.d.ts +3 -3
  379. package/dist/types/store/tablets.d.ts +2 -2
  380. package/dist/types/store/tooltip.d.ts +3 -5
  381. package/dist/types/store/topic.d.ts +1 -1
  382. package/dist/types/versions.d.ts +2 -2
  383. package/dist/utils/additionalProps.d.ts +1 -1
  384. package/dist/utils/additionalProps.js +1 -1
  385. package/dist/utils/bytesParsers/formatBytes.d.ts +2 -2
  386. package/dist/utils/bytesParsers/formatBytes.js +1 -11
  387. package/dist/utils/clusterVersionColors.d.ts +1 -1
  388. package/dist/utils/clusterVersionColors.js +2 -2
  389. package/dist/utils/constants.d.ts +2 -1
  390. package/dist/utils/constants.js +5 -4
  391. package/dist/utils/dataFormatters/dataFormatters.d.ts +12 -11
  392. package/dist/utils/developerUI/developerUI.d.ts +1 -1
  393. package/dist/utils/diagnostics.d.ts +2 -2
  394. package/dist/utils/disks/__test__/calculatePDiskSeverity.test.d.ts +1 -0
  395. package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js +36 -0
  396. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.d.ts +1 -0
  397. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +142 -0
  398. package/dist/utils/disks/calculatePDiskSeverity.d.ts +2 -0
  399. package/dist/utils/disks/calculatePDiskSeverity.js +18 -0
  400. package/dist/utils/disks/calculateVDiskSeverity.d.ts +2 -0
  401. package/dist/utils/disks/calculateVDiskSeverity.js +36 -0
  402. package/dist/utils/disks/constants.d.ts +25 -0
  403. package/dist/utils/disks/constants.js +38 -0
  404. package/dist/utils/disks/getPDiskType.d.ts +7 -0
  405. package/dist/utils/{pdisk.js → disks/getPDiskType.js} +13 -15
  406. package/dist/utils/disks/helpers.d.ts +3 -0
  407. package/dist/utils/disks/helpers.js +10 -0
  408. package/dist/utils/disks/prepareDisks.d.ts +5 -0
  409. package/dist/utils/disks/prepareDisks.js +40 -0
  410. package/dist/utils/disks/types.d.ts +15 -0
  411. package/dist/utils/disks/types.js +1 -0
  412. package/dist/utils/hooks/index.d.ts +1 -0
  413. package/dist/utils/hooks/index.js +1 -0
  414. package/dist/utils/hooks/useSetting.js +2 -2
  415. package/dist/utils/hooks/useTableResize.d.ts +3 -3
  416. package/dist/utils/hooks/useTableSort.d.ts +1 -1
  417. package/dist/utils/hooks/useTypedDispatch.d.ts +2 -0
  418. package/dist/utils/hooks/useTypedDispatch.js +2 -0
  419. package/dist/utils/hooks/useTypedSelector.d.ts +1 -1
  420. package/dist/utils/index.d.ts +1 -0
  421. package/dist/utils/index.js +3 -0
  422. package/dist/utils/monaco.d.ts +1 -0
  423. package/dist/utils/monaco.js +14 -0
  424. package/dist/utils/monitoring.d.ts +3 -3
  425. package/dist/utils/nodes.d.ts +8 -2
  426. package/dist/utils/nodes.js +11 -0
  427. package/dist/utils/prepareBackend.d.ts +2 -2
  428. package/dist/utils/query.d.ts +2 -2
  429. package/dist/utils/query.js +1 -11
  430. package/dist/utils/storage.d.ts +1 -3
  431. package/dist/utils/storage.js +0 -1
  432. package/dist/utils/tablet.d.ts +1 -1
  433. package/dist/utils/timeframes.d.ts +1 -1
  434. package/dist/utils/typecheckers.d.ts +1 -0
  435. package/dist/utils/versions/getVersionsColors.d.ts +1 -1
  436. package/dist/utils/versions/getVersionsColors.js +2 -2
  437. package/dist/utils/versions/parseNodesToVersionsValues.d.ts +1 -1
  438. package/dist/utils/yqlSuggestions/constants.d.ts +7 -0
  439. package/dist/utils/yqlSuggestions/constants.js +696 -0
  440. package/dist/utils/yqlSuggestions/generateSuggestions.d.ts +27 -0
  441. package/dist/utils/yqlSuggestions/generateSuggestions.js +252 -0
  442. package/dist/utils/yqlSuggestions/yqlSuggestions.d.ts +4 -0
  443. package/dist/utils/yqlSuggestions/yqlSuggestions.js +76 -0
  444. package/package.json +14 -10
  445. package/dist/assets/icons/flask.svg +0 -3
  446. package/dist/assets/icons/star.svg +0 -1
  447. package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.d.ts +0 -7
  448. package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.js +0 -9
  449. package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.d.ts +0 -7
  450. package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.js +0 -7
  451. package/dist/containers/Storage/utils/constants.d.ts +0 -2
  452. package/dist/containers/Storage/utils/constants.js +0 -2
  453. package/dist/containers/Tenant/Query/i18n/ru.json +0 -21
  454. package/dist/store/reducers/healthcheckInfo.d.ts +0 -21
  455. package/dist/types/store/healthcheck.d.ts +0 -20
  456. package/dist/utils/pdisk.d.ts +0 -17
  457. /package/dist/{types/store/healthcheck.js → store/reducers/healthcheckInfo/types.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import cn from 'bem-cn-lite';
3
- import EntityStatus from '../EntityStatus/EntityStatus';
3
+ import { EntityStatus } from '../EntityStatus/EntityStatus';
4
4
  import { Tags } from '../Tags';
5
5
  import { Icon } from '../Icon';
6
6
  import './BasicNodeViewer.scss';
@@ -0,0 +1,13 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type ButtonProps } from '@gravity-ui/uikit';
3
+ interface ButtonWithConfirmDialogProps<T, K> {
4
+ children: ReactNode;
5
+ onConfirmAction: () => Promise<T>;
6
+ onConfirmActionSuccess?: (() => Promise<K>) | VoidFunction;
7
+ dialogContent: string;
8
+ buttonDisabled?: ButtonProps['disabled'];
9
+ buttonView?: ButtonProps['view'];
10
+ buttonClassName?: ButtonProps['className'];
11
+ }
12
+ export declare function ButtonWithConfirmDialog<T, K>({ children, onConfirmAction, onConfirmActionSuccess, dialogContent, buttonDisabled, buttonView, buttonClassName, }: ButtonWithConfirmDialogProps<T, K>): JSX.Element;
13
+ export {};
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Button } from '@gravity-ui/uikit';
4
+ import { CriticalActionDialog } from '../CriticalActionDialog';
5
+ export function ButtonWithConfirmDialog({ children, onConfirmAction, onConfirmActionSuccess, dialogContent, buttonDisabled = false, buttonView = 'action', buttonClassName, }) {
6
+ const [isConfirmDialogVisible, setIsConfirmDialogVisible] = useState(false);
7
+ const [buttonLoading, setButtonLoading] = useState(false);
8
+ const handleConfirmAction = async () => {
9
+ setButtonLoading(true);
10
+ await onConfirmAction();
11
+ setButtonLoading(false);
12
+ };
13
+ const handleConfirmActionSuccess = async () => {
14
+ if (onConfirmActionSuccess) {
15
+ setButtonLoading(true);
16
+ try {
17
+ await onConfirmActionSuccess();
18
+ }
19
+ catch (_a) {
20
+ }
21
+ finally {
22
+ setButtonLoading(false);
23
+ }
24
+ }
25
+ };
26
+ const handleConfirmActionError = () => {
27
+ setButtonLoading(false);
28
+ };
29
+ return (_jsxs(_Fragment, { children: [_jsx(CriticalActionDialog, { visible: isConfirmDialogVisible, text: dialogContent, onConfirm: handleConfirmAction, onConfirmActionSuccess: handleConfirmActionSuccess, onConfirmActionError: handleConfirmActionError, onClose: () => {
30
+ setIsConfirmDialogVisible(false);
31
+ } }), _jsx(Button, Object.assign({ onClick: () => setIsConfirmDialogVisible(true), view: buttonView, disabled: buttonDisabled, loading: !buttonDisabled && buttonLoading, className: buttonClassName }, { children: children }))] }));
32
+ }
@@ -1,14 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
1
+ import { __rest } from "tslib";
12
2
  import { jsx as _jsx } from "react/jsx-runtime";
13
3
  import cn from 'bem-cn-lite';
14
4
  import { Popover } from '@gravity-ui/uikit';
@@ -1,14 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
1
+ import { __rest } from "tslib";
12
2
  import { jsx as _jsx } from "react/jsx-runtime";
13
3
  import { Button, ClipboardIcon, CopyToClipboard as CopyToClipboardUiKit, CopyToClipboardStatus, Tooltip, } from '@gravity-ui/uikit';
14
4
  import cn from 'bem-cn-lite';
@@ -11,11 +11,11 @@ export declare function useComponent<T extends Parameters<ComponentsRegistry['ge
11
11
  AsideNavigation: typeof import("../../containers/AsideNavigation/AsideNavigation").AsideNavigation;
12
12
  } & {
13
13
  ErrorBoundary: typeof import("../ErrorBoundary/ErrorBoundary").ErrorBoundaryInner;
14
- })[T] extends React.ComponentType<any> ? React.ComponentType<React.PropsWithoutRef<React.ComponentProps<({
14
+ })[T] extends infer T_1 ? T_1 extends ({
15
15
  StaffCard: typeof import("../User/StaffCard").StaffCard;
16
16
  } & {
17
17
  AsideNavigation: typeof import("../../containers/AsideNavigation/AsideNavigation").AsideNavigation;
18
18
  } & {
19
19
  ErrorBoundary: typeof import("../ErrorBoundary/ErrorBoundary").ErrorBoundaryInner;
20
- })[T]>>> : never;
20
+ })[T] ? T_1 extends React.ComponentType<any> ? React.ComponentType<React.PropsWithoutRef<React.ComponentProps<T_1>>> : never : never : never;
21
21
  export {};
@@ -9,6 +9,6 @@ declare const componentsRegistryInner: Registry<{
9
9
  } & {
10
10
  ErrorBoundary: typeof ErrorBoundaryInner;
11
11
  }>;
12
- export declare type ComponentsRegistry = ComponentsRegistryTemplate<typeof componentsRegistryInner>;
12
+ export type ComponentsRegistry = ComponentsRegistryTemplate<typeof componentsRegistryInner>;
13
13
  export declare const componentsRegistry: ComponentsRegistry;
14
14
  export {};
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare type RegistryEntity<T = any> = T;
3
- declare type RegistryEntities = Record<string, RegistryEntity>;
2
+ type RegistryEntity<T = any> = T;
3
+ type RegistryEntities = Record<string, RegistryEntity>;
4
4
  export declare class Registry<Entities extends RegistryEntities = {}> {
5
5
  type?: Entities;
6
6
  private entities;
@@ -10,7 +10,7 @@ export declare class Registry<Entities extends RegistryEntities = {}> {
10
10
  [key in Id]: T;
11
11
  }>;
12
12
  }
13
- declare type ComponentType<T> = T extends React.ComponentType<any> ? React.ComponentType<React.ComponentPropsWithoutRef<T>> : never;
13
+ type ComponentType<T> = T extends React.ComponentType<any> ? React.ComponentType<React.ComponentPropsWithoutRef<T>> : never;
14
14
  export interface ComponentsRegistryTemplate<T extends Registry, Entities = NonNullable<T['type']>> {
15
15
  set<Id extends keyof Entities>(id: Id, entity: ComponentType<Entities[Id]>): this;
16
16
  get<Id extends keyof Entities>(id: Id): ComponentType<Entities[Id]>;
@@ -1,14 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
1
+ import { __rest } from "tslib";
12
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
3
  import { useRef, useState } from 'react';
14
4
  import { Popup } from '@gravity-ui/uikit';
@@ -1,10 +1,12 @@
1
+ /// <reference types="react" />
1
2
  import './CriticalActionDialog.scss';
2
- interface CriticalActionDialogProps {
3
+ interface CriticalActionDialogProps<T> {
3
4
  visible: boolean;
4
5
  text: string;
5
6
  onClose: VoidFunction;
6
- onConfirm: () => Promise<unknown>;
7
- onConfirmActionFinish: VoidFunction;
7
+ onConfirm: () => Promise<T>;
8
+ onConfirmActionSuccess: VoidFunction;
9
+ onConfirmActionError: VoidFunction;
8
10
  }
9
- export declare const CriticalActionDialog: ({ visible, text, onClose, onConfirm, onConfirmActionFinish, }: CriticalActionDialogProps) => JSX.Element;
11
+ export declare function CriticalActionDialog<T>({ visible, text, onClose, onConfirm, onConfirmActionSuccess, onConfirmActionError, }: CriticalActionDialogProps<T>): JSX.Element;
10
12
  export {};
@@ -1,20 +1,45 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
3
  import cn from 'bem-cn-lite';
4
4
  import { Dialog } from '@gravity-ui/uikit';
5
+ import { CircleXmarkFill } from '@gravity-ui/icons';
5
6
  import { Icon } from '../Icon';
7
+ import { criticalActionDialogKeyset } from './i18n';
6
8
  import './CriticalActionDialog.scss';
7
9
  const b = cn('ydb-critical-dialog');
8
- export const CriticalActionDialog = ({ visible, text, onClose, onConfirm, onConfirmActionFinish, }) => {
10
+ const parseError = (error) => {
11
+ if (error.status === 403) {
12
+ return criticalActionDialogKeyset('no-rights-error');
13
+ }
14
+ if (error.statusText) {
15
+ return error.statusText;
16
+ }
17
+ return criticalActionDialogKeyset('default-error');
18
+ };
19
+ export function CriticalActionDialog({ visible, text, onClose, onConfirm, onConfirmActionSuccess, onConfirmActionError, }) {
9
20
  const [isLoading, setIsLoading] = useState(false);
21
+ const [error, setError] = useState();
10
22
  const onSubmit = async (e) => {
11
23
  e.preventDefault();
12
24
  setIsLoading(true);
13
- return onConfirm().then(() => {
14
- onConfirmActionFinish();
15
- setIsLoading(false);
25
+ return onConfirm()
26
+ .then(() => {
27
+ onConfirmActionSuccess();
16
28
  onClose();
29
+ })
30
+ .catch((err) => {
31
+ onConfirmActionError();
32
+ setError(err);
33
+ })
34
+ .finally(() => {
35
+ setIsLoading(false);
17
36
  });
18
37
  };
19
- return (_jsx(Dialog, Object.assign({ open: visible, hasCloseButton: false, className: b(), size: "s", onClose: onClose }, { children: _jsxs("form", Object.assign({ onSubmit: onSubmit }, { children: [_jsxs(Dialog.Body, Object.assign({ className: b('body') }, { children: [_jsx("span", Object.assign({ className: b('warning-icon') }, { children: _jsx(Icon, { name: "dialog-warning", width: "24", height: "22", viewBox: "0 0 24 22" }) })), text] })), _jsx(Dialog.Footer, { loading: isLoading, preset: "default", textButtonApply: "Confirm", textButtonCancel: "Cancel", propsButtonApply: { type: 'submit' }, onClickButtonCancel: onClose, onClickButtonApply: () => { } })] })) })));
20
- };
38
+ const renderDialogContent = () => {
39
+ if (error) {
40
+ return (_jsxs(_Fragment, { children: [_jsxs(Dialog.Body, Object.assign({ className: b('body') }, { children: [_jsx("span", Object.assign({ className: b('error-icon') }, { children: _jsx(CircleXmarkFill, { width: "24", height: "22" }) })), parseError(error)] })), _jsx(Dialog.Footer, { loading: false, preset: "default", textButtonCancel: criticalActionDialogKeyset('button-close'), onClickButtonCancel: onClose })] }));
41
+ }
42
+ return (_jsxs("form", Object.assign({ onSubmit: onSubmit }, { children: [_jsxs(Dialog.Body, Object.assign({ className: b('body') }, { children: [_jsx("span", Object.assign({ className: b('warning-icon') }, { children: _jsx(Icon, { name: "dialog-warning", width: "24", height: "22", viewBox: "0 0 24 22" }) })), text] })), _jsx(Dialog.Footer, { loading: isLoading, preset: "default", textButtonApply: criticalActionDialogKeyset('button-confirm'), textButtonCancel: criticalActionDialogKeyset('button-cancel'), propsButtonApply: { type: 'submit' }, onClickButtonCancel: onClose, onClickButtonApply: () => { } })] })));
43
+ };
44
+ return (_jsx(Dialog, Object.assign({ open: visible, hasCloseButton: false, className: b(), size: "s", onClose: onClose, onTransitionExited: () => setError(undefined) }, { children: renderDialogContent() })));
45
+ }
@@ -1,32 +1,21 @@
1
1
  .ydb-critical-dialog {
2
- width: 252px !important;
2
+ width: 400px;
3
3
 
4
4
  &__warning-icon {
5
5
  margin-right: 16px;
6
6
  }
7
7
 
8
+ &__error-icon {
9
+ height: 24px;
10
+ margin-right: 16px;
11
+
12
+ color: var(--ydb-color-status-red);
13
+ }
14
+
8
15
  &__body {
9
16
  display: flex;
10
17
  align-items: center;
11
18
 
12
19
  padding: 16px 16px 0;
13
20
  }
14
-
15
- & .yc-dialog-footer {
16
- padding: 20px 4px 4px;
17
- }
18
-
19
- & .yc-dialog-footer__children {
20
- display: none;
21
- }
22
-
23
- & .yc-dialog-footer__button {
24
- box-sizing: border-box;
25
- min-width: 120px;
26
- margin: 0;
27
- }
28
-
29
- & .yc-dialog-footer__button_action_cancel {
30
- margin-right: 4px;
31
- }
32
21
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "default-error": "Something went wrong, action cannot be completed",
3
+ "no-rights-error": "You don't have enough rights to complete the operation",
4
+ "button-confirm": "Confirm",
5
+ "button-cancel": "Cancel",
6
+ "button-close": "Close"
7
+ }
@@ -0,0 +1 @@
1
+ export declare const criticalActionDialogKeyset: (key: "default-error" | "no-rights-error" | "button-confirm" | "button-cancel" | "button-close", params?: import("@gravity-ui/i18n").Params | undefined) => string;
@@ -0,0 +1,4 @@
1
+ import { registerKeysets } from '../../../utils/i18n';
2
+ import en from './en.json';
3
+ const COMPONENT = 'ydb-critical-action-dialog';
4
+ export const criticalActionDialogKeyset = registerKeysets(COMPONENT, { en });
@@ -1,10 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Button } from '@gravity-ui/uikit';
3
- import { useDispatch } from 'react-redux';
3
+ import { useTypedDispatch } from '../../utils/hooks';
4
4
  import { enableFullscreen } from '../../store/reducers/fullscreen';
5
5
  import { Icon } from '../Icon';
6
6
  function EnableFullscreenButton({ disabled }) {
7
- const dispatch = useDispatch();
7
+ const dispatch = useTypedDispatch();
8
8
  const onEnableFullscreen = () => {
9
9
  dispatch(enableFullscreen());
10
10
  };
@@ -1,38 +1,21 @@
1
- export default EntityStatus;
2
- declare class EntityStatus extends React.Component<any, any, any> {
3
- static propTypes: {
4
- status: PropTypes.Requireable<string>;
5
- name: PropTypes.Requireable<string | number>;
6
- onNameMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
7
- onNameMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
8
- path: PropTypes.Requireable<string>;
9
- size: PropTypes.Requireable<string>;
10
- label: PropTypes.Requireable<string>;
11
- iconPath: PropTypes.Requireable<string>;
12
- hasClipboardButton: PropTypes.Requireable<boolean>;
13
- clipboardButtonAlwaysVisible: PropTypes.Requireable<boolean>;
14
- showStatus: PropTypes.Requireable<boolean>;
15
- externalLink: PropTypes.Requireable<boolean>;
16
- className: PropTypes.Requireable<string>;
17
- mode: PropTypes.Requireable<string>;
18
- withLeftTrim: PropTypes.Requireable<boolean>;
19
- };
20
- static defaultProps: {
21
- status: string;
22
- text: string;
23
- size: string;
24
- label: string;
25
- showStatus: boolean;
26
- externalLink: boolean;
27
- mode: string;
28
- withLeftTrim: boolean;
29
- clipboardButtonAlwaysVisible: boolean;
30
- };
31
- constructor(props: any);
32
- constructor(props: any, context: any);
33
- renderIcon(): JSX.Element | null;
34
- renderStatusLink(): JSX.Element;
35
- renderLink(): any;
36
- render(): JSX.Element;
1
+ /// <reference types="react" />
2
+ import { EFlag } from '../../types/api/enums';
3
+ import { type StatusIconMode, type StatusIconSize } from '../StatusIcon/StatusIcon';
4
+ import './EntityStatus.scss';
5
+ interface EntityStatusProps {
6
+ status?: EFlag;
7
+ name?: string;
8
+ label?: string;
9
+ path?: string;
10
+ iconPath?: string;
11
+ size?: StatusIconSize;
12
+ mode?: StatusIconMode;
13
+ showStatus?: boolean;
14
+ externalLink?: boolean;
15
+ withLeftTrim?: boolean;
16
+ hasClipboardButton?: boolean;
17
+ clipboardButtonAlwaysVisible?: boolean;
18
+ className?: string;
37
19
  }
38
- import React from "react";
20
+ export declare function EntityStatus({ status, name, label, path, iconPath, size, mode, showStatus, externalLink, withLeftTrim, hasClipboardButton, clipboardButtonAlwaysVisible, className, }: EntityStatusProps): JSX.Element;
21
+ export {};
@@ -1,78 +1,29 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Icon, Link as UIKitLink } from '@gravity-ui/uikit';
3
- import cn from 'bem-cn-lite';
4
- import PropTypes from 'prop-types';
5
- import React from 'react';
6
2
  import { Link } from 'react-router-dom';
7
- import circleExclamationIcon from '../../assets/icons/circle-exclamation.svg';
8
- import circleInfoIcon from '../../assets/icons/circle-info.svg';
9
- import circleTimesIcon from '../../assets/icons/circle-xmark.svg';
10
- import triangleExclamationIcon from '../../assets/icons/triangle-exclamation.svg';
3
+ import cn from 'bem-cn-lite';
4
+ import { Link as UIKitLink } from '@gravity-ui/uikit';
5
+ import { EFlag } from '../../types/api/enums';
6
+ import { StatusIcon } from '../StatusIcon/StatusIcon';
11
7
  import { ClipboardButton } from '../ClipboardButton';
12
8
  import './EntityStatus.scss';
13
- const icons = {
14
- BLUE: circleInfoIcon,
15
- YELLOW: circleExclamationIcon,
16
- ORANGE: triangleExclamationIcon,
17
- RED: circleTimesIcon,
18
- };
19
9
  const b = cn('entity-status');
20
- class EntityStatus extends React.Component {
21
- renderIcon() {
22
- const { status, size, showStatus, mode } = this.props;
10
+ export function EntityStatus({ status = EFlag.Grey, name = '', label, path, iconPath, size = 's', mode = 'color', showStatus = true, externalLink = false, withLeftTrim = false, hasClipboardButton, clipboardButtonAlwaysVisible = false, className, }) {
11
+ const renderIcon = () => {
23
12
  if (!showStatus) {
24
13
  return null;
25
14
  }
26
- const modifiers = { state: status.toLowerCase(), size };
27
- if (mode === 'icons' && icons[status]) {
28
- return _jsx(Icon, { className: b('status-icon', modifiers), data: icons[status] });
29
- }
30
- return _jsx("div", { className: b('status-color', modifiers) });
31
- }
32
- renderStatusLink() {
33
- const { iconPath } = this.props;
34
- return (_jsx(UIKitLink, Object.assign({ target: "_blank", href: iconPath }, { children: this.renderIcon() })));
35
- }
36
- renderLink() {
37
- const { externalLink, name, path, onNameMouseEnter, onNameMouseLeave } = this.props;
15
+ return _jsx(StatusIcon, { status: status, size: size, mode: mode });
16
+ };
17
+ const renderStatusLink = () => {
18
+ return (_jsx(UIKitLink, Object.assign({ target: "_blank", href: iconPath }, { children: renderIcon() })));
19
+ };
20
+ const renderLink = () => {
38
21
  if (externalLink) {
39
22
  return (_jsx(UIKitLink, Object.assign({ className: b('name'), href: path }, { children: name })));
40
23
  }
41
- return path ? (_jsx(Link, Object.assign({ className: b('name'), to: path, onMouseEnter: onNameMouseEnter, onMouseLeave: onNameMouseLeave }, { children: name }))) : (name && (_jsx("span", Object.assign({ className: b('name'), onMouseEnter: onNameMouseEnter, onMouseLeave: onNameMouseLeave }, { children: name }))));
42
- }
43
- render() {
44
- const { name, label, iconPath, hasClipboardButton, className, size, status } = this.props;
45
- return (_jsxs("div", Object.assign({ className: b(null, className), title: name }, { children: [iconPath ? this.renderStatusLink() : this.renderIcon(), label && (_jsx("span", Object.assign({ title: label, className: b('label', { size, state: status.toLowerCase() }) }, { children: label }))), _jsx("span", Object.assign({ className: b('link', { 'with-left-trim': this.props.withLeftTrim }) }, { children: this.renderLink() })), hasClipboardButton && (_jsx(ClipboardButton, { text: name, size: "s", className: b('clipboard-button', {
46
- visible: this.props.clipboardButtonAlwaysVisible,
47
- }) }))] })));
48
- }
24
+ return path ? (_jsx(Link, Object.assign({ className: b('name'), to: path }, { children: name }))) : (name && _jsx("span", Object.assign({ className: b('name') }, { children: name })));
25
+ };
26
+ return (_jsxs("div", Object.assign({ className: b(null, className), title: name }, { children: [iconPath ? renderStatusLink() : renderIcon(), label && (_jsx("span", Object.assign({ title: label, className: b('label', { size, state: status.toLowerCase() }) }, { children: label }))), _jsx("span", Object.assign({ className: b('link', { 'with-left-trim': withLeftTrim }) }, { children: renderLink() })), hasClipboardButton && (_jsx(ClipboardButton, { text: name, size: "s", className: b('clipboard-button', {
27
+ visible: clipboardButtonAlwaysVisible,
28
+ }) }))] })));
49
29
  }
50
- EntityStatus.propTypes = {
51
- status: PropTypes.string,
52
- name: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
53
- onNameMouseEnter: PropTypes.func,
54
- onNameMouseLeave: PropTypes.func,
55
- path: PropTypes.string,
56
- size: PropTypes.string,
57
- label: PropTypes.string,
58
- iconPath: PropTypes.string,
59
- hasClipboardButton: PropTypes.bool,
60
- clipboardButtonAlwaysVisible: PropTypes.bool,
61
- showStatus: PropTypes.bool,
62
- externalLink: PropTypes.bool,
63
- className: PropTypes.string,
64
- mode: PropTypes.oneOf(['color', 'icons']),
65
- withLeftTrim: PropTypes.bool,
66
- };
67
- EntityStatus.defaultProps = {
68
- status: 'gray',
69
- text: '',
70
- size: 's',
71
- label: '',
72
- showStatus: true,
73
- externalLink: false,
74
- mode: 'color',
75
- withLeftTrim: false,
76
- clipboardButtonAlwaysVisible: false,
77
- };
78
- export default EntityStatus;
@@ -58,63 +58,7 @@
58
58
  }
59
59
  }
60
60
 
61
- &__status-color,
62
- &__status-icon {
63
- flex-shrink: 0;
64
-
65
- margin-right: 8px;
66
-
67
- border-radius: 3px;
68
- &_size_xs {
69
- aspect-ratio: 1;
70
-
71
- width: 12px;
72
- height: 12px;
73
- }
74
- &_size_s {
75
- aspect-ratio: 1;
76
-
77
- width: 16px;
78
- height: 16px;
79
- }
80
- &_size_m {
81
- aspect-ratio: 1;
82
-
83
- width: 18px;
84
- height: 18px;
85
- }
86
-
87
- &_size_l {
88
- width: 27px;
89
- height: 27px;
90
- }
91
- }
92
-
93
- &__status-color {
94
- &_state_running,
95
- &_state_green {
96
- background-color: var(--ydb-color-status-green);
97
- }
98
- &_state_yellow {
99
- background-color: var(--ydb-color-status-yellow);
100
- }
101
- &_state_blue {
102
- background-color: var(--ydb-color-status-blue);
103
- }
104
- &_state_red {
105
- background-color: var(--ydb-color-status-red);
106
- }
107
- &_state_gray,
108
- &_state_grey {
109
- background-color: var(--ydb-color-status-grey);
110
- }
111
- &_state_orange {
112
- background-color: var(--ydb-color-status-orange);
113
- }
114
- }
115
-
116
- &__label,
117
- &__status-icon {
61
+ &__label {
118
62
  &_state_blue {
119
63
  color: var(--ydb-color-status-blue);
120
64
  }
@@ -1,14 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
1
+ import { __rest } from "tslib";
12
2
  import { jsx as _jsx } from "react/jsx-runtime";
13
3
  import { EmptyState } from '../../EmptyState';
14
4
  import { Illustration } from '../../Illustration';
@@ -1,4 +1,4 @@
1
1
  import { FormatBytesArgs } from '../../utils/bytesParsers';
2
- declare type FormattedBytesProps = FormatBytesArgs;
2
+ type FormattedBytesProps = FormatBytesArgs;
3
3
  export declare const FormattedBytes: ({ value, withSpeedLabel, ...params }: FormattedBytesProps) => JSX.Element;
4
4
  export {};
@@ -1,14 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
1
+ import { __rest } from "tslib";
12
2
  import { jsx as _jsx } from "react/jsx-runtime";
13
3
  import { formatBytes } from '../../utils/bytesParsers';
14
4
  export const FormattedBytes = (_a) => {
@@ -1,2 +1,2 @@
1
1
  import type { FormatBytesArgs } from '../../utils/bytesParsers';
2
- export declare const toFormattedSize: (value: number | string | undefined, params?: Omit<FormatBytesArgs, "value"> | undefined) => JSX.Element | null;
2
+ export declare const toFormattedSize: (value: number | string | undefined, params?: Omit<FormatBytesArgs, 'value'>) => JSX.Element | null;
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import cn from 'bem-cn-lite';
3
3
  import { LOAD_AVERAGE_TIME_INTERVALS } from '../../utils/constants';
4
- import { calcUptime } from '../../utils/dataFormatters/dataFormatters';
5
4
  import InfoViewer from '../InfoViewer/InfoViewer';
6
5
  import { ProgressViewer } from '../ProgressViewer/ProgressViewer';
7
6
  import { PoolUsage } from '../PoolUsage/PoolUsage';
@@ -18,7 +17,7 @@ export const FullNodeViewer = ({ node, className }) => {
18
17
  if ((_b = node === null || node === void 0 ? void 0 : node.Tenants) === null || _b === void 0 ? void 0 : _b.length) {
19
18
  commonInfo.push({ label: 'Database', value: node.Tenants[0] });
20
19
  }
21
- commonInfo.push({ label: 'Version', value: node === null || node === void 0 ? void 0 : node.Version }, { label: 'Uptime', value: calcUptime(node === null || node === void 0 ? void 0 : node.StartTime) }, { label: 'DC', value: (node === null || node === void 0 ? void 0 : node.DataCenterDescription) || (node === null || node === void 0 ? void 0 : node.DC) }, { label: 'Rack', value: node === null || node === void 0 ? void 0 : node.Rack });
20
+ commonInfo.push({ label: 'Version', value: node === null || node === void 0 ? void 0 : node.Version }, { label: 'Uptime', value: node === null || node === void 0 ? void 0 : node.Uptime }, { label: 'DC', value: (node === null || node === void 0 ? void 0 : node.DataCenterDescription) || (node === null || node === void 0 ? void 0 : node.DC) }, { label: 'Rack', value: node === null || node === void 0 ? void 0 : node.Rack });
22
21
  const averageInfo = (_c = node === null || node === void 0 ? void 0 : node.LoadAverage) === null || _c === void 0 ? void 0 : _c.map((load, loadIndex) => ({
23
22
  label: LOAD_AVERAGE_TIME_INTERVALS[loadIndex],
24
23
  value: (_jsx(ProgressViewer, { value: load, percents: true, colorizeProgress: true, capacity: 100 })),
@@ -3,7 +3,7 @@ import React, { useEffect } from 'react';
3
3
  import ReactDOM from 'react-dom';
4
4
  import { Button } from '@gravity-ui/uikit';
5
5
  import cn from 'bem-cn-lite';
6
- import { useDispatch } from 'react-redux';
6
+ import { useTypedDispatch } from '../../utils/hooks';
7
7
  import { disableFullscreen } from '../../store/reducers/fullscreen';
8
8
  import { Icon } from '../Icon';
9
9
  import './Fullscreen.scss';
@@ -30,21 +30,21 @@ class FullscreenWrapper extends React.Component {
30
30
  }
31
31
  }
32
32
  function Fullscreen(props) {
33
- const dispatch = useDispatch();
34
- const escFunction = (event) => {
35
- if (event.key === 'Escape') {
36
- onDisableFullScreen();
37
- }
38
- };
33
+ const dispatch = useTypedDispatch();
34
+ const onDisableFullScreen = React.useCallback(() => {
35
+ dispatch(disableFullscreen());
36
+ }, [dispatch]);
39
37
  useEffect(() => {
38
+ const escFunction = (event) => {
39
+ if (event.key === 'Escape') {
40
+ onDisableFullScreen();
41
+ }
42
+ };
40
43
  document.addEventListener('keydown', escFunction, false);
41
44
  return () => {
42
45
  document.removeEventListener('keydown', escFunction, false);
43
46
  };
44
- }, []);
45
- const onDisableFullScreen = () => {
46
- dispatch(disableFullscreen());
47
- };
47
+ }, [onDisableFullScreen]);
48
48
  return (_jsx(FullscreenWrapper, { children: _jsxs("div", Object.assign({ className: b(null, props.className) }, { children: [_jsx(Button, Object.assign({ onClick: onDisableFullScreen, view: "raised", className: b('close-button') }, { children: _jsx(Icon, { name: "disableFullscreen", viewBox: '0 0 16 16 ', width: 16, height: 16 }) })), props.children] })) }));
49
49
  }
50
50
  export default Fullscreen;