ydb-embedded-ui 5.2.1 → 5.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (448) 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/Fullscreen/Fullscreen.js +11 -11
  25. package/dist/components/Illustration/Illustration.js +1 -11
  26. package/dist/components/InfoViewer/InfoViewer.d.ts +2 -2
  27. package/dist/components/InfoViewer/InfoViewer.js +1 -1
  28. package/dist/components/InfoViewer/formatters/cdcStream.d.ts +1 -1
  29. package/dist/components/InfoViewer/formatters/common.d.ts +1 -1
  30. package/dist/components/InfoViewer/formatters/pqGroup.d.ts +3 -3
  31. package/dist/components/InfoViewer/formatters/schema.d.ts +1 -1
  32. package/dist/components/InfoViewer/formatters/table.d.ts +4 -4
  33. package/dist/components/InfoViewer/utils.d.ts +3 -3
  34. package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.d.ts +7 -0
  35. package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.js +7 -0
  36. package/dist/{containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.scss → components/InfoViewerSkeleton/InfoViewerSkeleton.scss} +1 -9
  37. package/dist/components/InternalLink/InternalLink.js +1 -11
  38. package/dist/components/LinkToSchemaObject/LinkToSchemaObject.js +1 -11
  39. package/dist/components/LinkWithIcon/LinkWithIcon.d.ts +8 -0
  40. package/dist/components/LinkWithIcon/LinkWithIcon.js +14 -0
  41. package/dist/components/{ExternalLinkWithIcon/ExternalLinkWithIcon.scss → LinkWithIcon/LinkWithIcon.scss} +1 -1
  42. package/dist/components/MetricChart/MetricChart.d.ts +2 -1
  43. package/dist/components/MetricChart/MetricChart.js +8 -3
  44. package/dist/components/MetricChart/getChartData.d.ts +2 -1
  45. package/dist/components/MetricChart/getChartData.js +2 -2
  46. package/dist/components/MetricChart/getDefaultDataFormatter.d.ts +1 -1
  47. package/dist/components/MetricChart/i18n/en.json +3 -0
  48. package/dist/components/MetricChart/i18n/index.d.ts +2 -0
  49. package/dist/components/MetricChart/i18n/index.js +4 -0
  50. package/dist/components/MetricChart/reducer.d.ts +1 -1
  51. package/dist/components/MetricChart/types.d.ts +5 -5
  52. package/dist/components/NodeHostWrapper/NodeHostWrapper.js +1 -1
  53. package/dist/components/PDiskInfo/PDiskInfo.d.ts +11 -0
  54. package/dist/components/PDiskInfo/PDiskInfo.js +71 -0
  55. package/dist/components/PDiskInfo/PDiskInfo.scss +8 -0
  56. package/dist/components/PDiskInfo/i18n/en.json +14 -0
  57. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -0
  58. package/dist/components/PDiskInfo/i18n/index.js +4 -0
  59. package/dist/components/PageMeta/PageMeta.d.ts +8 -0
  60. package/dist/components/PageMeta/PageMeta.js +7 -0
  61. package/dist/components/PageMeta/PageMeta.scss +10 -0
  62. package/dist/components/ProgressViewer/ProgressViewer.d.ts +1 -1
  63. package/dist/components/QueryResultTable/Cell/Cell.js +2 -2
  64. package/dist/components/QueryResultTable/QueryResultTable.js +1 -11
  65. package/dist/components/ShortyString/ShortyString.d.ts +1 -1
  66. package/dist/components/StatusIcon/StatusIcon.d.ts +12 -0
  67. package/dist/components/StatusIcon/StatusIcon.js +23 -0
  68. package/dist/components/StatusIcon/StatusIcon.scss +69 -0
  69. package/dist/components/Tablet/Tablet.scss +1 -1
  70. package/dist/components/TabletsOverall/TabletsOverall.js +6 -6
  71. package/dist/components/TabletsStatistic/TabletsStatistic.d.ts +1 -1
  72. package/dist/components/TabletsStatistic/TabletsStatistic.scss +1 -1
  73. package/dist/components/Tag/Tag.d.ts +1 -1
  74. package/dist/components/UsageLabel/UsageLabel.js +1 -11
  75. package/dist/components/VirtualTable/TableHead.js +2 -2
  76. package/dist/components/VirtualTable/reducer.d.ts +2 -2
  77. package/dist/components/VirtualTable/types.d.ts +13 -13
  78. package/dist/components/slots/types.d.ts +1 -1
  79. package/dist/containers/App/App.d.ts +1 -1
  80. package/dist/containers/App/Content.js +10 -4
  81. package/dist/containers/App/Providers.d.ts +1 -1
  82. package/dist/containers/App/appSlots.d.ts +6 -0
  83. package/dist/containers/App/appSlots.js +1 -0
  84. package/dist/containers/AppWithClusters/AppWithClusters.d.ts +1 -1
  85. package/dist/containers/AppWithClusters/AppWithClusters.js +1 -1
  86. package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +2 -3
  87. package/dist/containers/Authentication/Authentication.js +2 -5
  88. package/dist/containers/Cluster/Cluster.js +4 -5
  89. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +4 -4
  90. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +4 -0
  91. package/dist/containers/Cluster/ClusterInfo/utils.d.ts +1 -1
  92. package/dist/containers/Cluster/utils.d.ts +2 -2
  93. package/dist/containers/Clusters/Clusters.js +2 -4
  94. package/dist/containers/Clusters/Clusters.scss +1 -1
  95. package/dist/containers/Clusters/constants.d.ts +1 -1
  96. package/dist/containers/Clusters/useClustersList.js +2 -2
  97. package/dist/containers/Clusters/useSelectedColumns.d.ts +1 -1
  98. package/dist/containers/Header/Header.js +4 -5
  99. package/dist/containers/Header/breadcrumbs.js +28 -5
  100. package/dist/containers/Header/i18n/en.json +7 -0
  101. package/dist/containers/Header/i18n/index.d.ts +1 -0
  102. package/dist/containers/Header/i18n/index.js +4 -0
  103. package/dist/containers/Heatmap/Heatmap.js +3 -4
  104. package/dist/containers/Heatmap/HeatmapCanvas/HeatmapCanvas.js +1 -1
  105. package/dist/containers/Node/Node.js +2 -3
  106. package/dist/containers/Node/NodeStructure/NodeStructure.d.ts +0 -1
  107. package/dist/containers/Node/NodeStructure/NodeStructure.js +2 -6
  108. package/dist/containers/Node/NodeStructure/Pdisk.js +9 -65
  109. package/dist/containers/Node/NodeStructure/Vdisk.d.ts +1 -1
  110. package/dist/containers/Node/NodeStructure/Vdisk.js +5 -3
  111. package/dist/containers/Nodes/Nodes.js +2 -3
  112. package/dist/containers/Nodes/NodesWrapper.js +1 -11
  113. package/dist/containers/Nodes/getNodes.js +1 -11
  114. package/dist/containers/Nodes/getNodesColumns.d.ts +1 -1
  115. package/dist/containers/PDisk/PDisk.d.ts +3 -0
  116. package/dist/containers/PDisk/PDisk.js +68 -0
  117. package/dist/containers/PDisk/PDisk.scss +41 -0
  118. package/dist/containers/PDisk/PDiskGroups.d.ts +10 -0
  119. package/dist/containers/PDisk/PDiskGroups.js +20 -0
  120. package/dist/containers/PDisk/i18n/en.json +6 -0
  121. package/dist/containers/PDisk/i18n/index.d.ts +1 -0
  122. package/dist/containers/PDisk/i18n/index.js +4 -0
  123. package/dist/containers/PDisk/shared.d.ts +10 -0
  124. package/dist/containers/PDisk/shared.js +2 -0
  125. package/dist/containers/ReduxTooltip/ReduxTooltip.d.ts +1 -1
  126. package/dist/containers/ReduxTooltip/ReduxTooltip.js +3 -2
  127. package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.d.ts +1 -9
  128. package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.js +2 -12
  129. package/dist/containers/Storage/PDisk/PDisk.d.ts +3 -3
  130. package/dist/containers/Storage/PDisk/PDisk.js +6 -53
  131. package/dist/containers/Storage/PDiskPopup/PDiskPopup.d.ts +3 -3
  132. package/dist/containers/Storage/PDiskPopup/PDiskPopup.js +3 -14
  133. package/dist/containers/Storage/Storage.js +2 -3
  134. package/dist/containers/Storage/StorageGroups/getGroups.js +1 -11
  135. package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.d.ts +2 -1
  136. package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.js +22 -8
  137. package/dist/containers/Storage/StorageNodes/getNodes.js +1 -11
  138. package/dist/containers/Storage/StorageNodes/getStorageNodesColumns.js +1 -1
  139. package/dist/containers/Storage/StorageWrapper.js +1 -11
  140. package/dist/containers/Storage/UsageFilter/UsageFilter.js +1 -1
  141. package/dist/containers/Storage/VDisk/VDisk.d.ts +2 -3
  142. package/dist/containers/Storage/VDisk/VDisk.js +4 -64
  143. package/dist/containers/Storage/VDiskPopup/VDiskPopup.js +2 -12
  144. package/dist/containers/Storage/VirtualStorage.js +2 -3
  145. package/dist/containers/Storage/utils/index.d.ts +1 -3
  146. package/dist/containers/Storage/utils/index.js +0 -6
  147. package/dist/containers/Tablet/Tablet.js +4 -5
  148. package/dist/containers/Tablet/TabletControls/TabletControls.d.ts +3 -2
  149. package/dist/containers/Tablet/TabletControls/TabletControls.js +2 -49
  150. package/dist/containers/Tablet/TabletTable/TabletTable.js +1 -1
  151. package/dist/containers/Tablets/Tablets.js +2 -3
  152. package/dist/containers/TabletsFilters/TabletsFilters.d.ts +2 -2
  153. package/dist/containers/Tenant/Acl/Acl.js +2 -3
  154. package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +2 -3
  155. package/dist/containers/Tenant/Diagnostics/Describe/Describe.js +3 -3
  156. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +6 -4
  157. package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +2 -2
  158. package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.js +2 -3
  159. package/dist/containers/Tenant/Diagnostics/Network/Network.d.ts +2 -2
  160. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.d.ts +1 -1
  161. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.js +7 -5
  162. package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.scss +1 -1
  163. package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +9 -5
  164. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/prepareTableInfo.d.ts +1 -1
  165. package/dist/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.d.ts +1 -1
  166. package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +2 -3
  167. package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js +1 -1
  168. package/dist/containers/Tenant/Diagnostics/Partitions/utils/index.d.ts +1 -1
  169. package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.d.ts +5 -1
  170. package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.js +2 -2
  171. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +0 -1
  172. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.d.ts +2 -2
  173. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +3 -2
  174. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.d.ts +2 -2
  175. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.js +3 -12
  176. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.d.ts +2 -1
  177. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.js +1 -1
  178. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js +1 -1
  179. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js +2 -3
  180. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js +2 -3
  181. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +2 -3
  182. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js +2 -3
  183. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.d.ts +2 -1
  184. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js +2 -2
  185. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js +1 -1
  186. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js +2 -3
  187. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +6 -7
  188. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js +1 -11
  189. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +1 -1
  190. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +2 -3
  191. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js +2 -3
  192. package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.d.ts +2 -2
  193. package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.js +3 -4
  194. package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js +2 -5
  195. package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +2 -3
  196. package/dist/containers/Tenant/Info/ExternalDataSource/ExternalDataSource.js +1 -1
  197. package/dist/containers/Tenant/Info/ExternalTable/ExternalTable.js +3 -3
  198. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.d.ts +1 -0
  199. package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +3 -2
  200. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +2 -3
  201. package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js +2 -3
  202. package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.js +3 -3
  203. package/dist/containers/Tenant/Query/Issues/models.d.ts +1 -1
  204. package/dist/containers/Tenant/Query/Preview/Preview.js +2 -3
  205. package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js +2 -3
  206. package/dist/containers/Tenant/Query/Query.js +2 -3
  207. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +3 -8
  208. package/dist/containers/Tenant/Query/QueryEditor/helpers.d.ts +4 -0
  209. package/dist/containers/Tenant/Query/QueryEditor/helpers.js +17 -0
  210. package/dist/containers/Tenant/Query/SaveQuery/SaveQuery.js +4 -4
  211. package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js +2 -2
  212. package/dist/containers/Tenant/Schema/SchemaTree/SchemaTree.js +5 -3
  213. package/dist/containers/Tenant/Tenant.js +24 -8
  214. package/dist/containers/Tenant/utils/index.d.ts +1 -1
  215. package/dist/containers/Tenant/utils/schema.d.ts +12 -12
  216. package/dist/containers/Tenant/utils/schemaActions.d.ts +1 -1
  217. package/dist/containers/Tenants/Tenants.js +3 -4
  218. package/dist/containers/UserSettings/Setting.d.ts +1 -1
  219. package/dist/containers/UserSettings/i18n/en.json +4 -0
  220. package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
  221. package/dist/containers/UserSettings/settings.d.ts +4 -1
  222. package/dist/containers/UserSettings/settings.js +21 -6
  223. package/dist/containers/Versions/NodesTable/NodesTable.js +1 -1
  224. package/dist/containers/Versions/Versions.js +2 -3
  225. package/dist/reportWebVitals.d.ts +1 -1
  226. package/dist/routes.d.ts +5 -2
  227. package/dist/routes.js +6 -1
  228. package/dist/services/api.d.ts +8 -7
  229. package/dist/services/api.js +3 -13
  230. package/dist/services/settings.d.ts +1 -1
  231. package/dist/services/settings.js +2 -1
  232. package/dist/store/configureStore.d.ts +310 -0
  233. package/dist/store/configureStore.js +56 -0
  234. package/dist/store/defaultStore.d.ts +168 -0
  235. package/dist/store/defaultStore.js +2 -0
  236. package/dist/store/getUrlData.d.ts +3 -3
  237. package/dist/store/getUrlData.js +4 -4
  238. package/dist/store/index.d.ts +3 -97
  239. package/dist/store/index.js +2 -49
  240. package/dist/store/reducers/authentication/authentication.d.ts +247 -4
  241. package/dist/store/reducers/authentication/types.d.ts +1 -1
  242. package/dist/store/reducers/cluster/cluster.d.ts +83 -2
  243. package/dist/store/reducers/cluster/types.d.ts +3 -3
  244. package/dist/store/reducers/clusterNodes/clusterNodes.d.ts +83 -2
  245. package/dist/store/reducers/clusterNodes/types.d.ts +1 -1
  246. package/dist/store/reducers/clusters/clusters.d.ts +83 -2
  247. package/dist/store/reducers/clusters/selectors.d.ts +20 -6
  248. package/dist/store/reducers/clusters/selectors.js +1 -1
  249. package/dist/store/reducers/clusters/types.d.ts +1 -1
  250. package/dist/store/reducers/describe.d.ts +165 -3
  251. package/dist/store/reducers/describe.js +4 -3
  252. package/dist/store/reducers/executeQuery.d.ts +83 -2
  253. package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +3 -3
  254. package/dist/store/reducers/executeTopQueries/types.d.ts +1 -1
  255. package/dist/store/reducers/explainQuery.d.ts +165 -3
  256. package/dist/store/reducers/header/header.d.ts +1 -1
  257. package/dist/store/reducers/header/types.d.ts +7 -4
  258. package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +101 -0
  259. package/dist/store/reducers/{healthcheckInfo.js → healthcheckInfo/healthcheckInfo.js} +2 -2
  260. package/dist/store/reducers/healthcheckInfo/types.d.ts +19 -0
  261. package/dist/store/reducers/healthcheckInfo/utils.d.ts +3 -0
  262. package/dist/store/reducers/healthcheckInfo/utils.js +11 -0
  263. package/dist/store/reducers/heatmap.d.ts +83 -2
  264. package/dist/store/reducers/heatmap.js +2 -2
  265. package/dist/store/reducers/host.d.ts +83 -2
  266. package/dist/store/reducers/hotKeys/hotKeys.d.ts +1 -1
  267. package/dist/store/reducers/hotKeys/types.d.ts +1 -1
  268. package/dist/store/reducers/index.d.ts +95 -45
  269. package/dist/store/reducers/index.js +4 -2
  270. package/dist/store/reducers/network/network.d.ts +83 -2
  271. package/dist/store/reducers/network/types.d.ts +1 -1
  272. package/dist/store/reducers/node/node.d.ts +165 -3
  273. package/dist/store/reducers/node/selectors.d.ts +1 -1
  274. package/dist/store/reducers/node/selectors.js +5 -4
  275. package/dist/store/reducers/node/types.d.ts +6 -6
  276. package/dist/store/reducers/nodes/nodes.d.ts +165 -3
  277. package/dist/store/reducers/nodes/nodes.js +1 -11
  278. package/dist/store/reducers/nodes/selectors.d.ts +1 -1
  279. package/dist/store/reducers/nodes/selectors.js +1 -1
  280. package/dist/store/reducers/nodes/types.d.ts +4 -3
  281. package/dist/store/reducers/nodes/utils.d.ts +1 -1
  282. package/dist/store/reducers/nodesList.d.ts +83 -2
  283. package/dist/store/reducers/olapStats.d.ts +83 -2
  284. package/dist/store/reducers/overview/overview.d.ts +166 -4
  285. package/dist/store/reducers/overview/overview.js +3 -3
  286. package/dist/store/reducers/overview/types.d.ts +6 -5
  287. package/dist/store/reducers/partitions/partitions.d.ts +83 -2
  288. package/dist/store/reducers/partitions/types.d.ts +1 -1
  289. package/dist/store/reducers/partitions/utils.d.ts +2 -2
  290. package/dist/store/reducers/pdisk/pdisk.d.ts +210 -0
  291. package/dist/store/reducers/pdisk/pdisk.js +64 -0
  292. package/dist/store/reducers/pdisk/types.d.ts +23 -0
  293. package/dist/store/reducers/pdisk/types.js +1 -0
  294. package/dist/store/reducers/pdisk/utils.d.ts +32 -0
  295. package/dist/store/reducers/pdisk/utils.js +32 -0
  296. package/dist/store/reducers/preview.d.ts +82 -1
  297. package/dist/store/reducers/saveQuery.d.ts +3 -3
  298. package/dist/store/reducers/schema/schema.d.ts +84 -4
  299. package/dist/store/reducers/schema/schema.js +4 -4
  300. package/dist/store/reducers/schema/types.d.ts +3 -3
  301. package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +83 -2
  302. package/dist/store/reducers/schemaAcl/types.d.ts +1 -1
  303. package/dist/store/reducers/settings/settings.d.ts +2 -2
  304. package/dist/store/reducers/settings/types.d.ts +3 -3
  305. package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +83 -2
  306. package/dist/store/reducers/shardsWorkload/types.d.ts +1 -1
  307. package/dist/store/reducers/storage/selectors.d.ts +1 -1
  308. package/dist/store/reducers/storage/selectors.js +1 -1
  309. package/dist/store/reducers/storage/storage.d.ts +165 -3
  310. package/dist/store/reducers/storage/storage.js +1 -11
  311. package/dist/store/reducers/storage/types.d.ts +10 -10
  312. package/dist/store/reducers/storage/utils.d.ts +4 -2
  313. package/dist/store/reducers/storage/utils.js +21 -15
  314. package/dist/store/reducers/tablet.d.ts +165 -3
  315. package/dist/store/reducers/tablet.js +1 -1
  316. package/dist/store/reducers/tablets.d.ts +83 -2
  317. package/dist/store/reducers/tabletsFilters.d.ts +101 -2
  318. package/dist/store/reducers/tabletsFilters.js +1 -1
  319. package/dist/store/reducers/tenant/tenant.d.ts +83 -2
  320. package/dist/store/reducers/tenant/types.d.ts +6 -6
  321. package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +83 -2
  322. package/dist/store/reducers/tenantOverview/executeTopTables/types.d.ts +1 -1
  323. package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.d.ts +83 -2
  324. package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.js +1 -11
  325. package/dist/store/reducers/tenantOverview/topNodesByCpu/types.d.ts +2 -2
  326. package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.d.ts +83 -2
  327. package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.js +1 -11
  328. package/dist/store/reducers/tenantOverview/topNodesByLoad/types.d.ts +2 -2
  329. package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.d.ts +83 -2
  330. package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.js +1 -11
  331. package/dist/store/reducers/tenantOverview/topNodesByMemory/types.d.ts +2 -2
  332. package/dist/store/reducers/tenantOverview/topQueries/tenantOverviewTopQueries.d.ts +83 -2
  333. package/dist/store/reducers/tenantOverview/topQueries/types.d.ts +1 -1
  334. package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +83 -2
  335. package/dist/store/reducers/tenantOverview/topShards/types.d.ts +1 -1
  336. package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.d.ts +83 -2
  337. package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.js +1 -11
  338. package/dist/store/reducers/tenantOverview/topStorageGroups/types.d.ts +2 -2
  339. package/dist/store/reducers/tenants/selectors.d.ts +2 -2
  340. package/dist/store/reducers/tenants/selectors.js +1 -1
  341. package/dist/store/reducers/tenants/tenants.d.ts +83 -2
  342. package/dist/store/reducers/tenants/types.d.ts +2 -2
  343. package/dist/store/reducers/tenants/utils.d.ts +6 -6
  344. package/dist/store/reducers/tooltip.d.ts +4 -3
  345. package/dist/store/reducers/tooltip.js +2 -4
  346. package/dist/store/reducers/topic.d.ts +83 -3
  347. package/dist/store/reducers/topic.js +1 -1
  348. package/dist/store/state-url-mapping.d.ts +5 -3
  349. package/dist/store/state-url-mapping.js +9 -18
  350. package/dist/store/utils.d.ts +4 -4
  351. package/dist/types/additionalProps.d.ts +2 -2
  352. package/dist/types/api/enums.d.ts +1 -0
  353. package/dist/types/api/enums.js +1 -0
  354. package/dist/types/api/error.d.ts +1 -1
  355. package/dist/types/api/nodes.d.ts +1 -1
  356. package/dist/types/api/nodesList.d.ts +1 -1
  357. package/dist/types/api/query.d.ts +19 -19
  358. package/dist/types/api/render.d.ts +6 -3
  359. package/dist/types/api/storage.d.ts +1 -1
  360. package/dist/types/api/tablet.d.ts +1 -1
  361. package/dist/types/common.d.ts +1 -1
  362. package/dist/types/index.d.ts +1 -1
  363. package/dist/types/store/describe.d.ts +3 -3
  364. package/dist/types/store/executeQuery.d.ts +2 -2
  365. package/dist/types/store/explainQuery.d.ts +3 -3
  366. package/dist/types/store/heatmap.d.ts +3 -3
  367. package/dist/types/store/host.d.ts +1 -1
  368. package/dist/types/store/nodesList.d.ts +2 -2
  369. package/dist/types/store/olapStats.d.ts +1 -1
  370. package/dist/types/store/query.d.ts +5 -5
  371. package/dist/types/store/tablet.d.ts +3 -3
  372. package/dist/types/store/tablets.d.ts +2 -2
  373. package/dist/types/store/tooltip.d.ts +3 -5
  374. package/dist/types/store/topic.d.ts +1 -1
  375. package/dist/types/versions.d.ts +2 -2
  376. package/dist/utils/additionalProps.d.ts +1 -1
  377. package/dist/utils/additionalProps.js +1 -1
  378. package/dist/utils/bytesParsers/formatBytes.d.ts +2 -2
  379. package/dist/utils/bytesParsers/formatBytes.js +1 -11
  380. package/dist/utils/clusterVersionColors.d.ts +1 -1
  381. package/dist/utils/clusterVersionColors.js +2 -2
  382. package/dist/utils/constants.d.ts +2 -1
  383. package/dist/utils/constants.js +5 -4
  384. package/dist/utils/dataFormatters/dataFormatters.d.ts +12 -11
  385. package/dist/utils/developerUI/developerUI.d.ts +1 -1
  386. package/dist/utils/diagnostics.d.ts +2 -2
  387. package/dist/utils/disks/__test__/calculatePDiskSeverity.test.d.ts +1 -0
  388. package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js +36 -0
  389. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.d.ts +1 -0
  390. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +142 -0
  391. package/dist/utils/disks/calculatePDiskSeverity.d.ts +2 -0
  392. package/dist/utils/disks/calculatePDiskSeverity.js +18 -0
  393. package/dist/utils/disks/calculateVDiskSeverity.d.ts +2 -0
  394. package/dist/utils/disks/calculateVDiskSeverity.js +36 -0
  395. package/dist/utils/disks/constants.d.ts +25 -0
  396. package/dist/utils/disks/constants.js +38 -0
  397. package/dist/utils/disks/getPDiskType.d.ts +7 -0
  398. package/dist/utils/{pdisk.js → disks/getPDiskType.js} +13 -15
  399. package/dist/utils/disks/helpers.d.ts +3 -0
  400. package/dist/utils/disks/helpers.js +10 -0
  401. package/dist/utils/disks/prepareDisks.d.ts +5 -0
  402. package/dist/utils/disks/prepareDisks.js +40 -0
  403. package/dist/utils/disks/types.d.ts +15 -0
  404. package/dist/utils/disks/types.js +1 -0
  405. package/dist/utils/hooks/index.d.ts +1 -0
  406. package/dist/utils/hooks/index.js +1 -0
  407. package/dist/utils/hooks/useSetting.js +2 -2
  408. package/dist/utils/hooks/useTableResize.d.ts +3 -3
  409. package/dist/utils/hooks/useTableSort.d.ts +1 -1
  410. package/dist/utils/hooks/useTypedDispatch.d.ts +2 -0
  411. package/dist/utils/hooks/useTypedDispatch.js +2 -0
  412. package/dist/utils/hooks/useTypedSelector.d.ts +1 -1
  413. package/dist/utils/index.d.ts +1 -0
  414. package/dist/utils/index.js +3 -0
  415. package/dist/utils/monaco.d.ts +1 -0
  416. package/dist/utils/monaco.js +14 -0
  417. package/dist/utils/monitoring.d.ts +3 -3
  418. package/dist/utils/nodes.d.ts +2 -2
  419. package/dist/utils/prepareBackend.d.ts +2 -2
  420. package/dist/utils/query.d.ts +2 -2
  421. package/dist/utils/query.js +1 -11
  422. package/dist/utils/storage.d.ts +1 -3
  423. package/dist/utils/storage.js +0 -1
  424. package/dist/utils/tablet.d.ts +1 -1
  425. package/dist/utils/timeframes.d.ts +1 -1
  426. package/dist/utils/typecheckers.d.ts +1 -0
  427. package/dist/utils/versions/getVersionsColors.d.ts +1 -1
  428. package/dist/utils/versions/getVersionsColors.js +2 -2
  429. package/dist/utils/versions/parseNodesToVersionsValues.d.ts +1 -1
  430. package/dist/utils/yqlSuggestions/constants.d.ts +7 -0
  431. package/dist/utils/yqlSuggestions/constants.js +696 -0
  432. package/dist/utils/yqlSuggestions/generateSuggestions.d.ts +27 -0
  433. package/dist/utils/yqlSuggestions/generateSuggestions.js +252 -0
  434. package/dist/utils/yqlSuggestions/yqlSuggestions.d.ts +4 -0
  435. package/dist/utils/yqlSuggestions/yqlSuggestions.js +76 -0
  436. package/package.json +14 -10
  437. package/dist/assets/icons/flask.svg +0 -3
  438. package/dist/assets/icons/star.svg +0 -1
  439. package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.d.ts +0 -7
  440. package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.js +0 -9
  441. package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.d.ts +0 -7
  442. package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.js +0 -7
  443. package/dist/containers/Storage/utils/constants.d.ts +0 -2
  444. package/dist/containers/Storage/utils/constants.js +0 -2
  445. package/dist/store/reducers/healthcheckInfo.d.ts +0 -21
  446. package/dist/types/store/healthcheck.d.ts +0 -20
  447. package/dist/utils/pdisk.d.ts +0 -17
  448. /package/dist/{types/store/healthcheck.js → store/reducers/healthcheckInfo/types.js} +0 -0
@@ -12,6 +12,7 @@ import { DEFAULT_IS_QUERY_RESULT_COLLAPSED, DEFAULT_SIZE_RESULT_PANE_KEY, SAVED_
12
12
  import { useSetting, useQueryModes } from '../../../../utils/hooks';
13
13
  import { QUERY_ACTIONS } from '../../../../utils/query';
14
14
  import { parseJson } from '../../../../utils/utils';
15
+ import { useEditorOptions } from './helpers';
15
16
  import { PaneVisibilityActionTypes, paneVisibilityToggleReducerCreator, } from '../../utils/paneVisibilityToggleHelpers';
16
17
  import { Preview } from '../Preview/Preview';
17
18
  import { ExecuteResult } from '../ExecuteResult/ExecuteResult';
@@ -19,13 +20,6 @@ import { ExplainResult } from '../ExplainResult/ExplainResult';
19
20
  import { QueryEditorControls } from '../QueryEditorControls/QueryEditorControls';
20
21
  import i18n from '../i18n';
21
22
  import './QueryEditor.scss';
22
- const EDITOR_OPTIONS = {
23
- automaticLayout: true,
24
- selectOnLineNumbers: true,
25
- minimap: {
26
- enabled: false,
27
- },
28
- };
29
23
  const CONTEXT_MENU_GROUP_ID = 'navigation';
30
24
  const RESULT_TYPES = {
31
25
  EXECUTE: 'execute',
@@ -42,6 +36,7 @@ const initialTenantCommonInfoState = {
42
36
  collapsed: true,
43
37
  };
44
38
  function QueryEditor(props) {
39
+ const editorOptions = useEditorOptions();
45
40
  const { path, setTenantPath: setPath, executeQuery, explainQuery, type, theme, changeUserInput, showPreview, } = props;
46
41
  const { tenantPath: savedPath } = executeQuery;
47
42
  const [resultType, setResultType] = useState(RESULT_TYPES.EXECUTE);
@@ -291,7 +286,7 @@ function QueryEditor(props) {
291
286
  };
292
287
  return (_jsx("div", Object.assign({ className: b() }, { children: _jsxs(SplitPane, Object.assign({ direction: "vertical", defaultSizePaneKey: DEFAULT_SIZE_RESULT_PANE_KEY, triggerCollapse: resultVisibilityState.triggerCollapse, triggerExpand: resultVisibilityState.triggerExpand, minSize: [0, 52], collapsedSizes: [100, 0], onSplitStartDragAdditional: onSplitStartDragAdditional }, { children: [_jsxs("div", Object.assign({ className: b('pane-wrapper', {
293
288
  top: true,
294
- }) }, { children: [_jsx("div", Object.assign({ className: b('monaco-wrapper') }, { children: _jsx("div", Object.assign({ className: b('monaco') }, { children: _jsx(MonacoEditor, { language: "sql", value: executeQuery.input, options: EDITOR_OPTIONS, onChange: onChange, editorDidMount: editorDidMount, theme: `vs-${theme}` }) })) })), renderControls()] })), _jsx("div", Object.assign({ className: b('pane-wrapper') }, { children: _jsx(Result, { executeQuery: executeQuery, explainQuery: explainQuery, resultVisibilityState: resultVisibilityState, onExpandResultHandler: onExpandResultHandler, onCollapseResultHandler: onCollapseResultHandler, type: type, handleAstQuery: handleAstQuery, theme: theme, resultType: resultType, path: path, showPreview: showPreview }) }))] })) })));
289
+ }) }, { children: [_jsx("div", Object.assign({ className: b('monaco-wrapper') }, { children: _jsx("div", Object.assign({ className: b('monaco') }, { children: _jsx(MonacoEditor, { language: "sql", value: executeQuery.input, options: editorOptions, onChange: onChange, editorDidMount: editorDidMount, theme: `vs-${theme}` }) })) })), renderControls()] })), _jsx("div", Object.assign({ className: b('pane-wrapper') }, { children: _jsx(Result, { executeQuery: executeQuery, explainQuery: explainQuery, resultVisibilityState: resultVisibilityState, onExpandResultHandler: onExpandResultHandler, onCollapseResultHandler: onCollapseResultHandler, type: type, handleAstQuery: handleAstQuery, theme: theme, resultType: resultType, path: path, showPreview: showPreview }) }))] })) })));
295
290
  }
296
291
  const mapStateToProps = (state) => {
297
292
  return {
@@ -0,0 +1,4 @@
1
+ import type Monaco from 'monaco-editor';
2
+ export type EditorOptions = Monaco.editor.IEditorOptions & Monaco.editor.IGlobalEditorOptions;
3
+ export declare const EDITOR_OPTIONS: EditorOptions;
4
+ export declare function useEditorOptions(): EditorOptions;
@@ -0,0 +1,17 @@
1
+ import { ENABLE_AUTOCOMPLETE, useSetting } from '../../../../lib';
2
+ import { useMemo } from 'react';
3
+ export const EDITOR_OPTIONS = {
4
+ automaticLayout: true,
5
+ selectOnLineNumbers: true,
6
+ minimap: {
7
+ enabled: false,
8
+ },
9
+ };
10
+ export function useEditorOptions() {
11
+ const [enableAutocomplete] = useSetting(ENABLE_AUTOCOMPLETE);
12
+ const options = useMemo(() => {
13
+ const useAutocomplete = Boolean(enableAutocomplete);
14
+ return Object.assign({ quickSuggestions: useAutocomplete, suggestOnTriggerCharacters: useAutocomplete }, EDITOR_OPTIONS);
15
+ }, [enableAutocomplete]);
16
+ return options;
17
+ }
@@ -2,18 +2,18 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import React, { useState } from 'react';
3
3
  import _ from 'lodash';
4
4
  import cn from 'bem-cn-lite';
5
- import { useDispatch, useSelector } from 'react-redux';
6
5
  import { Dialog, DropdownMenu, TextInput, Button } from '@gravity-ui/uikit';
7
6
  import { setQueryNameToEdit } from '../../../../store/reducers/saveQuery';
7
+ import { useTypedDispatch, useTypedSelector } from '../../../../utils/hooks';
8
8
  import './SaveQuery.scss';
9
9
  const b = cn('kv-save-query');
10
10
  function SaveQuery({ savedQueries, onSaveQuery, saveButtonDisabled }) {
11
- const singleClusterMode = useSelector((state) => state.singleClusterMode);
11
+ const singleClusterMode = useTypedSelector((state) => state.singleClusterMode);
12
12
  const [isDialogVisible, setIsDialogVisible] = useState(false);
13
13
  const [queryName, setQueryName] = useState('');
14
14
  const [validationError, setValidationError] = useState(null);
15
- const queryNameToEdit = useSelector((state) => state.saveQuery);
16
- const dispatch = useDispatch();
15
+ const queryNameToEdit = useTypedSelector((state) => state.saveQuery);
16
+ const dispatch = useTypedDispatch();
17
17
  const onSaveQueryClick = () => {
18
18
  setIsDialogVisible(true);
19
19
  dispatch(setQueryNameToEdit(null));
@@ -1,6 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
- import { useDispatch } from 'react-redux';
4
3
  import block from 'bem-cn-lite';
5
4
  import { Dialog, Button } from '@gravity-ui/uikit';
6
5
  import DataTable from '@gravity-ui/react-data-table';
@@ -9,6 +8,7 @@ import { setQueryTab } from '../../../../store/reducers/tenant/tenant';
9
8
  import { TENANT_QUERY_TABS_ID } from '../../../../store/reducers/tenant/constants';
10
9
  import { TruncatedQuery } from '../../../../components/TruncatedQuery/TruncatedQuery';
11
10
  import { Icon } from '../../../../components/Icon';
11
+ import { useTypedDispatch } from '../../../../utils/hooks';
12
12
  import { MAX_QUERY_HEIGHT, QUERY_TABLE_SETTINGS } from '../../utils/constants';
13
13
  import i18n from '../i18n';
14
14
  import './SavedQueries.scss';
@@ -17,7 +17,7 @@ const DeleteDialog = ({ visible, queryName, onCancelClick, onConfirmClick }) =>
17
17
  return (_jsxs(Dialog, Object.assign({ open: visible, hasCloseButton: false, size: "s", onClose: onCancelClick, onEnterKeyDown: onConfirmClick }, { children: [_jsx(Dialog.Header, { caption: i18n('delete-dialog.header') }), _jsxs(Dialog.Body, Object.assign({ className: b('dialog-body') }, { children: [i18n('delete-dialog.question'), _jsx("span", Object.assign({ className: b('dialog-query-name') }, { children: ` ${queryName}?` }))] })), _jsx(Dialog.Footer, { textButtonApply: i18n('delete-dialog.delete'), textButtonCancel: i18n('delete-dialog.cancel'), onClickButtonCancel: onCancelClick, onClickButtonApply: onConfirmClick })] })));
18
18
  };
19
19
  export const SavedQueries = ({ savedQueries, changeUserInput, onDeleteQuery }) => {
20
- const dispatch = useDispatch();
20
+ const dispatch = useTypedDispatch();
21
21
  const [isDeleteDialogVisible, setIsDeleteDialogVisible] = useState(false);
22
22
  const [queryNameToDelete, setQueryNameToDelete] = useState('');
23
23
  const closeDeleteDialog = () => {
@@ -1,19 +1,21 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useEffect } from 'react';
3
- import { useDispatch } from 'react-redux';
4
3
  import { NavigationTree } from 'ydb-ui-components';
5
4
  import { setCurrentSchemaPath, preloadSchemas } from '../../../../store/reducers/schema/schema';
6
- import { useQueryModes } from '../../../../utils/hooks';
5
+ import { useQueryModes, useTypedDispatch } from '../../../../utils/hooks';
7
6
  import { isChildlessPathType, mapPathTypeToNavigationTreeType } from '../../utils/schema';
8
7
  import { getActions } from '../../utils/schemaActions';
9
8
  import { getControls } from '../../utils/schemaControls';
10
9
  export function SchemaTree(props) {
11
10
  const { rootPath, rootName, rootType, currentPath } = props;
12
- const dispatch = useDispatch();
11
+ const dispatch = useTypedDispatch();
13
12
  const [_, setQueryMode] = useQueryModes();
14
13
  const fetchPath = (path) => window.api
15
14
  .getSchema({ path }, { concurrentId: `NavigationTree.getSchema|${path}` })
16
15
  .then((data) => {
16
+ if (!data) {
17
+ throw new Error(`no describe data about path ${path}`);
18
+ }
17
19
  const { PathDescription: { Children = [] } = {} } = data;
18
20
  const preloadedData = {
19
21
  [path]: data,
@@ -1,14 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useReducer } from 'react';
3
- import { useDispatch, useSelector } from 'react-redux';
2
+ import { useEffect, useReducer, useRef } from 'react';
4
3
  import cn from 'bem-cn-lite';
5
4
  import { useLocation } from 'react-router';
6
5
  import qs from 'qs';
7
6
  import { Helmet } from 'react-helmet-async';
8
7
  import { DEFAULT_IS_TENANT_SUMMARY_COLLAPSED, DEFAULT_SIZE_TENANT_KEY } from '../../utils/constants';
9
- import { useTypedSelector } from '../../utils/hooks';
8
+ import { useTypedSelector, useTypedDispatch } from '../../utils/hooks';
10
9
  import { setHeaderBreadcrumbs } from '../../store/reducers/header/header';
11
10
  import { disableAutorefresh, getSchema } from '../../store/reducers/schema/schema';
11
+ import { registerYQLCompletionItemProvider } from '../../utils/monaco';
12
12
  import SplitPane from '../../components/SplitPane';
13
13
  import { AccessDenied } from '../../components/Errors/403';
14
14
  import { ObjectSummary } from './ObjectSummary/ObjectSummary';
@@ -28,22 +28,34 @@ const getTenantSummaryState = () => {
28
28
  function Tenant(props) {
29
29
  var _a;
30
30
  const [summaryVisibilityState, dispatchSummaryVisibilityAction] = useReducer(paneVisibilityToggleReducerCreator(DEFAULT_IS_TENANT_SUMMARY_COLLAPSED), undefined, getTenantSummaryState);
31
- const { currentSchemaPath, currentSchema: currentItem = {} } = useSelector((state) => state.schema);
32
- const { PathType: preloadedPathType, PathSubType: preloadedPathSubType } = useSelector((state) => { var _a, _b; return ((_b = (_a = state.schema.data[currentSchemaPath]) === null || _a === void 0 ? void 0 : _a.PathDescription) === null || _b === void 0 ? void 0 : _b.Self) || {}; });
31
+ const previousTenant = useRef();
32
+ const { currentSchemaPath, currentSchema: currentItem = {} } = useTypedSelector((state) => state.schema);
33
+ const { PathType: preloadedPathType, PathSubType: preloadedPathSubType } = useTypedSelector((state) => {
34
+ var _a, _b;
35
+ return currentSchemaPath
36
+ ? ((_b = (_a = state.schema.data[currentSchemaPath]) === null || _a === void 0 ? void 0 : _a.PathDescription) === null || _b === void 0 ? void 0 : _b.Self) || {}
37
+ : {};
38
+ });
33
39
  const { PathType: currentPathType, PathSubType: currentPathSubType } = ((_a = currentItem.PathDescription) === null || _a === void 0 ? void 0 : _a.Self) || {};
34
40
  const { error: { status: schemaStatus = 200 } = {} } = useTypedSelector((state) => state.schema);
35
- const dispatch = useDispatch();
41
+ const dispatch = useTypedDispatch();
36
42
  const location = useLocation();
37
43
  const queryParams = qs.parse(location.search, {
38
44
  ignoreQueryPrefix: true,
39
45
  });
40
46
  const { name } = queryParams;
41
47
  const tenantName = name;
48
+ if (tenantName && typeof tenantName === 'string' && previousTenant.current !== tenantName) {
49
+ registerYQLCompletionItemProvider(tenantName);
50
+ previousTenant.current = tenantName;
51
+ }
42
52
  useEffect(() => {
43
53
  dispatch(getSchema({ path: tenantName }));
44
54
  }, [tenantName, dispatch]);
45
55
  useEffect(() => {
46
- dispatch(getSchema({ path: currentSchemaPath }));
56
+ if (currentSchemaPath) {
57
+ dispatch(getSchema({ path: currentSchemaPath }));
58
+ }
47
59
  }, [currentSchemaPath, dispatch]);
48
60
  useEffect(() => {
49
61
  dispatch(disableAutorefresh());
@@ -64,6 +76,10 @@ function Tenant(props) {
64
76
  };
65
77
  const showBlockingError = schemaStatus === 403;
66
78
  const title = currentSchemaPath || tenantName || i18n('page.title');
67
- return (_jsxs("div", Object.assign({ className: b() }, { children: [_jsx(Helmet, { defaultTitle: `${title} — YDB Monitoring`, titleTemplate: `%s — ${title} — YDB Monitoring` }), showBlockingError ? (_jsx(AccessDenied, {})) : (_jsxs(SplitPane, Object.assign({ defaultSizePaneKey: DEFAULT_SIZE_TENANT_KEY, defaultSizes: [25, 75], triggerCollapse: summaryVisibilityState.triggerCollapse, triggerExpand: summaryVisibilityState.triggerExpand, minSize: [36, 200], onSplitStartDragAdditional: onSplitStartDragAdditional }, { children: [_jsx(ObjectSummary, { type: preloadedPathType || currentPathType, subType: preloadedPathSubType || currentPathSubType, onCollapseSummary: onCollapseSummaryHandler, onExpandSummary: onExpandSummaryHandler, isCollapsed: summaryVisibilityState.collapsed }), _jsx(ObjectGeneral, { type: preloadedPathType || currentPathType, additionalTenantProps: props.additionalTenantProps, additionalNodesProps: props.additionalNodesProps })] })))] })));
79
+ return (_jsxs("div", Object.assign({ className: b() }, { children: [_jsx(Helmet, { defaultTitle: `${title} — YDB Monitoring`, titleTemplate: `%s — ${title} — YDB Monitoring` }), showBlockingError ? (_jsx(AccessDenied, {})) : (_jsxs(SplitPane, Object.assign({ defaultSizePaneKey: DEFAULT_SIZE_TENANT_KEY, defaultSizes: [25, 75], triggerCollapse: summaryVisibilityState.triggerCollapse, triggerExpand: summaryVisibilityState.triggerExpand, minSize: [36, 200], onSplitStartDragAdditional: onSplitStartDragAdditional }, { children: [_jsx(ObjectSummary, { type: preloadedPathType || currentPathType, subType: preloadedPathSubType || currentPathSubType, onCollapseSummary: onCollapseSummaryHandler, onExpandSummary: onExpandSummaryHandler, isCollapsed: summaryVisibilityState.collapsed }), _jsx(ObjectGeneral
80
+ // @ts-expect-error
81
+ , {
82
+ // @ts-expect-error
83
+ type: preloadedPathType || currentPathType, additionalTenantProps: props.additionalTenantProps, additionalNodesProps: props.additionalNodesProps, tenantName: tenantName })] })))] })));
68
84
  }
69
85
  export default Tenant;
@@ -1,2 +1,2 @@
1
1
  import { TPathDescription } from '../../../types/api/schema';
2
- export declare const getEntityName: (pathDescription?: TPathDescription | undefined) => string | undefined;
2
+ export declare const getEntityName: (pathDescription?: TPathDescription) => string | undefined;
@@ -1,15 +1,15 @@
1
1
  import type { NavigationTreeNodeType } from 'ydb-ui-components';
2
2
  import { EPathSubType, EPathType } from '../../../types/api/schema';
3
3
  import { ETenantType } from '../../../types/api/tenant';
4
- export declare const mapPathTypeToNavigationTreeType: (type?: EPathType, subType?: EPathSubType | undefined, defaultType?: NavigationTreeNodeType) => NavigationTreeNodeType;
5
- export declare const mapPathTypeToEntityName: (type?: EPathType | undefined, subType?: EPathSubType | undefined) => string | undefined;
6
- export declare const mapDatabaseTypeToDBName: (type?: ETenantType | undefined) => string | undefined;
7
- export declare const isTableType: (pathType?: EPathType | undefined) => boolean;
8
- export declare const isIndexTable: (subType?: EPathSubType | undefined) => boolean;
9
- export declare const isColumnEntityType: (type?: EPathType | undefined) => boolean;
10
- export declare const isDatabaseEntityType: (type?: EPathType | undefined) => boolean;
11
- export declare const isCdcStreamEntityType: (type?: EPathType | undefined) => boolean;
12
- export declare const isEntityWithMergedImplementation: (type?: EPathType | undefined) => boolean;
13
- export declare const isChildlessPathType: (type?: EPathType | undefined, subType?: EPathSubType | undefined) => boolean;
14
- export declare const isPathTypeWithTopic: (type?: EPathType | undefined) => boolean;
15
- export declare const isExternalTable: (type?: EPathType | undefined) => boolean;
4
+ export declare const mapPathTypeToNavigationTreeType: (type?: EPathType, subType?: EPathSubType, defaultType?: NavigationTreeNodeType) => NavigationTreeNodeType;
5
+ export declare const mapPathTypeToEntityName: (type?: EPathType, subType?: EPathSubType) => string | undefined;
6
+ export declare const mapDatabaseTypeToDBName: (type?: ETenantType) => string | undefined;
7
+ export declare const isTableType: (pathType?: EPathType) => boolean;
8
+ export declare const isIndexTable: (subType?: EPathSubType) => boolean;
9
+ export declare const isColumnEntityType: (type?: EPathType) => boolean;
10
+ export declare const isDatabaseEntityType: (type?: EPathType) => boolean;
11
+ export declare const isCdcStreamEntityType: (type?: EPathType) => boolean;
12
+ export declare const isEntityWithMergedImplementation: (type?: EPathType) => boolean;
13
+ export declare const isChildlessPathType: (type?: EPathType, subType?: EPathSubType) => boolean;
14
+ export declare const isPathTypeWithTopic: (type?: EPathType) => boolean;
15
+ export declare const isExternalTable: (type?: EPathType) => boolean;
@@ -5,5 +5,5 @@ interface ActionsAdditionalEffects {
5
5
  setQueryMode: (mode: QueryMode) => void;
6
6
  setActivePath: (path: string) => void;
7
7
  }
8
- export declare const getActions: (dispatch: Dispatch<any>, additionalEffects: ActionsAdditionalEffects) => (path: string, type: NavigationTreeNodeType) => import("@gravity-ui/uikit/index").DropdownMenuItemMixed<any>[];
8
+ export declare const getActions: (dispatch: Dispatch<any>, additionalEffects: ActionsAdditionalEffects) => (path: string, type: NavigationTreeNodeType) => import("@gravity-ui/uikit").DropdownMenuItemMixed<any>[];
9
9
  export {};
@@ -1,9 +1,8 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import cn from 'bem-cn-lite';
3
- import { useDispatch } from 'react-redux';
4
3
  import DataTable from '@gravity-ui/react-data-table';
5
4
  import { Button } from '@gravity-ui/uikit';
6
- import EntityStatus from '../../components/EntityStatus/EntityStatus';
5
+ import { EntityStatus } from '../../components/EntityStatus/EntityStatus';
7
6
  import { PoolsGraph } from '../../components/PoolsGraph/PoolsGraph';
8
7
  import { TabletsStatistic } from '../../components/TabletsStatistic';
9
8
  import { ProblemFilter } from '../../components/ProblemFilter';
@@ -16,13 +15,13 @@ import { selectFilteredTenants, selectTenantsSearchValue, } from '../../store/re
16
15
  import { changeFilter, ProblemFilterValues, selectProblemFilter, } from '../../store/reducers/settings/settings';
17
16
  import { formatBytesToGigabyte, formatCPU, formatNumber, } from '../../utils/dataFormatters/dataFormatters';
18
17
  import { DEFAULT_TABLE_SETTINGS } from '../../utils/constants';
19
- import { useAutofetcher, useTypedSelector } from '../../utils/hooks';
18
+ import { useAutofetcher, useTypedDispatch, useTypedSelector } from '../../utils/hooks';
20
19
  import { clusterName } from '../../store';
21
20
  import { getTenantPath } from '../Tenant/TenantPages';
22
21
  import './Tenants.scss';
23
22
  const b = cn('tenants');
24
23
  export const Tenants = ({ additionalTenantsProps }) => {
25
- const dispatch = useDispatch();
24
+ const dispatch = useTypedDispatch();
26
25
  const { error, loading, wasLoaded } = useTypedSelector((state) => state.tenants);
27
26
  const searchValue = useTypedSelector(selectTenantsSearchValue);
28
27
  const filteredTenants = useTypedSelector(selectFilteredTenants);
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from 'react';
2
- export declare type SettingsElementType = 'switch' | 'radio';
2
+ export type SettingsElementType = 'switch' | 'radio';
3
3
  export interface SettingProps {
4
4
  type?: SettingsElementType;
5
5
  title: string;
@@ -3,6 +3,10 @@
3
3
  "section.appearance": "Appearance",
4
4
  "page.experiments": "Experiments",
5
5
  "section.experiments": "Experiments",
6
+ "page.editor": "Editor",
7
+ "section.dev-setting": "Development settings",
8
+ "settings.editor.autocomplete.title": "Enable autocomplete",
9
+ "settings.editor.autocomplete.description": "You’re always able to get suggestions by pressing Ctrl+Space.",
6
10
  "settings.theme.title": "Interface theme",
7
11
  "settings.theme.option-dark": "Dark",
8
12
  "settings.theme.option-light": "Light",
@@ -1,2 +1,2 @@
1
- declare const _default: (key: "page.general" | "section.appearance" | "page.experiments" | "section.experiments" | "settings.theme.title" | "settings.theme.option-dark" | "settings.theme.option-light" | "settings.theme.option-system" | "settings.language.title" | "settings.language.option-russian" | "settings.language.option-english" | "settings.binaryDataInPlainTextDisplay.title" | "settings.binaryDataInPlainTextDisplay.description" | "settings.invertedDisks.title" | "settings.useNodesEndpoint.title" | "settings.useNodesEndpoint.popover" | "settings.useVirtualTables.title" | "settings.useVirtualTables.popover" | "settings.queryUseMultiSchema.title" | "settings.queryUseMultiSchema.popover", params?: import("@gravity-ui/i18n").Params | undefined) => string;
1
+ declare const _default: (key: "page.general" | "section.appearance" | "page.experiments" | "section.experiments" | "page.editor" | "section.dev-setting" | "settings.editor.autocomplete.title" | "settings.editor.autocomplete.description" | "settings.theme.title" | "settings.theme.option-dark" | "settings.theme.option-light" | "settings.theme.option-system" | "settings.language.title" | "settings.language.option-russian" | "settings.language.option-english" | "settings.binaryDataInPlainTextDisplay.title" | "settings.binaryDataInPlainTextDisplay.description" | "settings.invertedDisks.title" | "settings.useNodesEndpoint.title" | "settings.useNodesEndpoint.popover" | "settings.useVirtualTables.title" | "settings.useVirtualTables.popover" | "settings.queryUseMultiSchema.title" | "settings.queryUseMultiSchema.popover", params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
2
  export default _default;
@@ -11,7 +11,7 @@ export interface SettingsPage {
11
11
  icon: IconProps;
12
12
  sections: SettingsSection[];
13
13
  }
14
- export declare type YDBEmbeddedUISettings = SettingsPage[];
14
+ export type YDBEmbeddedUISettings = SettingsPage[];
15
15
  export declare const themeSetting: SettingProps;
16
16
  export declare const languageSetting: SettingProps;
17
17
  export declare const binaryDataInPlainTextDisplay: SettingProps;
@@ -19,8 +19,11 @@ export declare const invertedDisksSetting: SettingProps;
19
19
  export declare const useNodesEndpointSetting: SettingProps;
20
20
  export declare const useVirtualTables: SettingProps;
21
21
  export declare const queryUseMultiSchemaSetting: SettingProps;
22
+ export declare const enableAutocompleteSetting: SettingProps;
22
23
  export declare const appearanceSection: SettingsSection;
23
24
  export declare const experimentsSection: SettingsSection;
25
+ export declare const devSettingsSection: SettingsSection;
24
26
  export declare const generalPage: SettingsPage;
25
27
  export declare const experimentsPage: SettingsPage;
28
+ export declare const editorPage: SettingsPage;
26
29
  export declare const settings: YDBEmbeddedUISettings;
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import favoriteFilledIcon from '../../assets/icons/star.svg';
3
- import flaskIcon from '../../assets/icons/flask.svg';
4
- import { INVERTED_DISKS_KEY, LANGUAGE_KEY, THEME_KEY, USE_BACKEND_PARAMS_FOR_TABLES_KEY, USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY, QUERY_USE_MULTI_SCHEMA_KEY, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, } from '../../utils/constants';
2
+ import { PencilToSquare, Flask, StarFill } from '@gravity-ui/icons';
3
+ import { INVERTED_DISKS_KEY, LANGUAGE_KEY, THEME_KEY, USE_BACKEND_PARAMS_FOR_TABLES_KEY, USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY, QUERY_USE_MULTI_SCHEMA_KEY, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, ENABLE_AUTOCOMPLETE, } from '../../utils/constants';
5
4
  import { Lang, defaultLang } from '../../utils/i18n';
6
5
  import i18n from './i18n';
7
6
  import { ClusterModeGuard } from '../ClusterModeGuard';
@@ -69,6 +68,11 @@ export const queryUseMultiSchemaSetting = {
69
68
  title: i18n('settings.queryUseMultiSchema.title'),
70
69
  helpPopoverContent: i18n('settings.queryUseMultiSchema.popover'),
71
70
  };
71
+ export const enableAutocompleteSetting = {
72
+ settingKey: ENABLE_AUTOCOMPLETE,
73
+ title: i18n('settings.editor.autocomplete.title'),
74
+ description: i18n('settings.editor.autocomplete.description'),
75
+ };
72
76
  export const appearanceSection = {
73
77
  id: 'appearanceSection',
74
78
  title: i18n('section.appearance'),
@@ -79,16 +83,27 @@ export const experimentsSection = {
79
83
  title: i18n('section.experiments'),
80
84
  settings: [useNodesEndpointSetting, useVirtualTables, queryUseMultiSchemaSetting],
81
85
  };
86
+ export const devSettingsSection = {
87
+ id: 'devSettingsSection',
88
+ title: i18n('section.dev-setting'),
89
+ settings: [enableAutocompleteSetting],
90
+ };
82
91
  export const generalPage = {
83
92
  id: 'generalPage',
84
93
  title: i18n('page.general'),
85
- icon: { data: favoriteFilledIcon, height: 14, width: 14 },
94
+ icon: { data: StarFill, height: 14, width: 14 },
86
95
  sections: [appearanceSection],
87
96
  };
88
97
  export const experimentsPage = {
89
98
  id: 'experimentsPage',
90
99
  title: i18n('page.experiments'),
91
- icon: { data: flaskIcon },
100
+ icon: { data: Flask },
92
101
  sections: [experimentsSection],
93
102
  };
94
- export const settings = [generalPage, experimentsPage];
103
+ export const editorPage = {
104
+ id: 'editorPage',
105
+ title: i18n('page.editor'),
106
+ icon: { data: PencilToSquare },
107
+ sections: [devSettingsSection],
108
+ };
109
+ export const settings = [generalPage, editorPage, experimentsPage];
@@ -6,7 +6,7 @@ import { formatBytes } from '../../../utils/dataFormatters/dataFormatters';
6
6
  import { getDefaultNodePath } from '../../Node/NodePages';
7
7
  import { ProgressViewer } from '../../../components/ProgressViewer/ProgressViewer';
8
8
  import { PoolsGraph } from '../../../components/PoolsGraph/PoolsGraph';
9
- import EntityStatus from '../../../components/EntityStatus/EntityStatus';
9
+ import { EntityStatus } from '../../../components/EntityStatus/EntityStatus';
10
10
  const columns = [
11
11
  {
12
12
  name: 'NodeId',
@@ -1,9 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
- import { useDispatch } from 'react-redux';
4
3
  import block from 'bem-cn-lite';
5
4
  import { Checkbox, RadioButton } from '@gravity-ui/uikit';
6
- import { useAutofetcher, useTypedSelector } from '../../utils/hooks';
5
+ import { useAutofetcher, useTypedDispatch, useTypedSelector } from '../../utils/hooks';
7
6
  import { getClusterNodes } from '../../store/reducers/clusterNodes/clusterNodes';
8
7
  import { Loader } from '../../components/Loader';
9
8
  import { getGroupedStorageNodes, getGroupedTenantNodes, getOtherNodes } from './groupNodes';
@@ -12,7 +11,7 @@ import { GroupByValue } from './types';
12
11
  import './Versions.scss';
13
12
  const b = block('ydb-versions');
14
13
  export const Versions = ({ versionToColor }) => {
15
- const dispatch = useDispatch();
14
+ const dispatch = useTypedDispatch();
16
15
  const { nodes = [], loading, wasLoaded } = useTypedSelector((state) => state.clusterNodes);
17
16
  useAutofetcher(() => dispatch(getClusterNodes()), [dispatch], true);
18
17
  const [groupByValue, setGroupByValue] = useState(GroupByValue.VERSION);
@@ -1,3 +1,3 @@
1
1
  import type { ReportHandler } from 'web-vitals';
2
- declare const reportWebVitals: (onPerfEntry?: ReportHandler | undefined) => void;
2
+ declare const reportWebVitals: (onPerfEntry?: ReportHandler) => void;
3
3
  export default reportWebVitals;
package/dist/routes.d.ts CHANGED
@@ -4,18 +4,21 @@ export declare const CLUSTERS = "clusters";
4
4
  export declare const CLUSTER = "cluster";
5
5
  export declare const TENANT = "tenant";
6
6
  export declare const NODE = "node";
7
+ export declare const PDISK = "pDisk";
7
8
  export declare const TABLET = "tablet";
8
9
  declare const routes: {
9
10
  readonly clusters: "/clusters";
10
11
  readonly cluster: "/cluster/:activeTab?";
11
12
  readonly tenant: "/tenant";
12
13
  readonly node: "/node/:id/:activeTab?";
14
+ readonly pDisk: "/pDisk";
13
15
  readonly tablet: "/tablet/:id";
14
16
  readonly tabletsFilters: "/tabletsFilters";
15
17
  readonly auth: "/auth";
16
18
  };
19
+ export default routes;
17
20
  export declare const parseQuery: (location: Location) => qs.ParsedQs;
18
- export declare type Query = Record<string | number, string | number | string[] | number[] | undefined>;
21
+ export type Query = Record<string | number, string | number | string[] | number[] | undefined>;
19
22
  export declare function createHref(route: string, params?: Record<string, string | number>, query?: Query): string;
20
23
  export declare const createExternalUILink: (query?: {}) => string;
21
24
  export declare function getLocationObjectFromHref(href: string): {
@@ -23,4 +26,4 @@ export declare function getLocationObjectFromHref(href: string): {
23
26
  search: string;
24
27
  hash: string;
25
28
  };
26
- export default routes;
29
+ export declare function getPDiskPagePath(pDiskId: string | number, nodeId: string | number, query?: Query): string;
package/dist/routes.js CHANGED
@@ -6,16 +6,19 @@ export const CLUSTERS = 'clusters';
6
6
  export const CLUSTER = 'cluster';
7
7
  export const TENANT = 'tenant';
8
8
  export const NODE = 'node';
9
+ export const PDISK = 'pDisk';
9
10
  export const TABLET = 'tablet';
10
11
  const routes = {
11
12
  clusters: `/${CLUSTERS}`,
12
13
  cluster: `/${CLUSTER}/:activeTab?`,
13
14
  tenant: `/${TENANT}`,
14
15
  node: `/${NODE}/:id/:activeTab?`,
16
+ pDisk: `/${PDISK}`,
15
17
  tablet: `/${TABLET}/:id`,
16
18
  tabletsFilters: `/tabletsFilters`,
17
19
  auth: `/auth`,
18
20
  };
21
+ export default routes;
19
22
  export const parseQuery = (location) => {
20
23
  return qs.parse(location.search, {
21
24
  ignoreQueryPrefix: true,
@@ -57,4 +60,6 @@ export function getLocationObjectFromHref(href) {
57
60
  const { pathname, search, hash } = new URL(href, 'http://localhost');
58
61
  return { pathname, search, hash };
59
62
  }
60
- export default routes;
63
+ export function getPDiskPagePath(pDiskId, nodeId, query = {}) {
64
+ return createHref(routes.pDisk, undefined, Object.assign(Object.assign({}, query), { nodeId, pDiskId }));
65
+ }
@@ -23,14 +23,15 @@ import type { ComputeApiRequestParams, NodesApiRequestParams } from '../store/re
23
23
  import type { StorageApiRequestParams } from '../store/reducers/storage/types';
24
24
  import type { MetaClusters } from '../types/api/meta';
25
25
  import type { JsonHotKeysResponse } from '../types/api/hotkeys';
26
- declare type AxiosOptions = {
26
+ import { Nullable } from '../utils/typecheckers';
27
+ type AxiosOptions = {
27
28
  concurrentId?: string;
28
29
  };
29
30
  export declare class YdbEmbeddedAPI extends AxiosWrapper {
30
31
  getPath(path: string): string;
31
32
  getClusterInfo(clusterName?: string, { concurrentId }?: AxiosOptions): Promise<TClusterInfo>;
32
33
  getClusterNodes({ concurrentId }?: AxiosOptions): Promise<TEvSystemStateResponse>;
33
- getNodeInfo(id?: string): Promise<TEvSystemStateResponse>;
34
+ getNodeInfo(id?: string | number): Promise<TEvSystemStateResponse>;
34
35
  getTenants(clusterName?: string): Promise<TTenantInfo>;
35
36
  getTenantInfo({ path }: {
36
37
  path: string;
@@ -53,16 +54,16 @@ export declare class YdbEmbeddedAPI extends AxiosWrapper {
53
54
  }): Promise<TEvTabletStateResponse>;
54
55
  getSchema({ path }: {
55
56
  path: string;
56
- }, { concurrentId }?: AxiosOptions): Promise<TEvDescribeSchemeResult>;
57
+ }, { concurrentId }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
57
58
  getDescribe({ path }: {
58
59
  path: string;
59
- }, { concurrentId }?: AxiosOptions): Promise<TEvDescribeSchemeResult>;
60
+ }, { concurrentId }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
60
61
  getSchemaAcl({ path }: {
61
62
  path: string;
62
63
  }): Promise<TMetaInfo>;
63
64
  getHeatmapData({ path }: {
64
65
  path: string;
65
- }): Promise<TEvDescribeSchemeResult>;
66
+ }): Promise<Nullable<TEvDescribeSchemeResult>>;
66
67
  getNetwork(path: string): Promise<TNetInfo>;
67
68
  getTopic({ path }: {
68
69
  path?: string;
@@ -95,8 +96,8 @@ export declare class YdbEmbeddedAPI extends AxiosWrapper {
95
96
  killTablet(id?: string): Promise<string>;
96
97
  stopTablet(id?: string, hiveId?: string): Promise<string>;
97
98
  resumeTablet(id?: string, hiveId?: string): Promise<string>;
98
- getTabletDescribe(tenantId: TDomainKey): Promise<TEvDescribeSchemeResult>;
99
- getChartData({ target, from, until, maxDataPoints }: JsonRenderRequestParams, { concurrentId }?: AxiosOptions): Promise<JsonRenderResponse>;
99
+ getTabletDescribe(tenantId: TDomainKey): Promise<Nullable<TEvDescribeSchemeResult>>;
100
+ getChartData({ target, from, until, maxDataPoints, database }: JsonRenderRequestParams, { concurrentId }?: AxiosOptions): Promise<JsonRenderResponse>;
100
101
  /** @deprecated use localStorage instead */
101
102
  postSetting(settingsApi: string, name: string, value: string): Promise<any>;
102
103
  authenticate(user: string, password: string): Promise<any>;
@@ -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 AxiosWrapper from '@gravity-ui/axios-wrapper';
13
3
  import { backend as BACKEND, metaBackend as META_BACKEND } from '../store';
14
4
  import { prepareSortValue } from '../utils/filters';
@@ -232,9 +222,9 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
232
222
  path_id: tenantId === null || tenantId === void 0 ? void 0 : tenantId.PathId,
233
223
  });
234
224
  }
235
- getChartData({ target, from, until, maxDataPoints }, { concurrentId } = {}) {
225
+ getChartData({ target, from, until, maxDataPoints, database }, { concurrentId } = {}) {
236
226
  const requestString = `${target}&from=${from}&until=${until}&maxDataPoints=${maxDataPoints}&format=json`;
237
- return this.post(this.getPath('/viewer/json/render'), requestString, {}, {
227
+ return this.post(this.getPath(`/viewer/json/render?database=${database}`), requestString, {}, {
238
228
  concurrentId,
239
229
  headers: {
240
230
  'Content-Type': 'application/x-www-form-urlencoded',
@@ -1,4 +1,4 @@
1
- export declare type SettingsObject = Record<string, unknown>;
1
+ export type SettingsObject = Record<string, unknown>;
2
2
  /** User settings keys and their default values */
3
3
  export declare const DEFAULT_USER_SETTINGS: SettingsObject;
4
4
  declare class SettingsManager {
@@ -1,5 +1,5 @@
1
1
  import { TENANT_PAGES_IDS } from '../store/reducers/tenant/constants';
2
- import { ASIDE_HEADER_COMPACT_KEY, INVERTED_DISKS_KEY, LANGUAGE_KEY, LAST_USED_QUERY_ACTION_KEY, PARTITIONS_HIDDEN_COLUMNS_KEY, QUERY_INITIAL_MODE_KEY, QUERY_USE_MULTI_SCHEMA_KEY, SAVED_QUERIES_KEY, TENANT_INITIAL_PAGE_KEY, THEME_KEY, USE_BACKEND_PARAMS_FOR_TABLES_KEY, USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY, USE_CLUSTER_BALANCER_AS_BACKEND_KEY, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, } from '../utils/constants';
2
+ import { ASIDE_HEADER_COMPACT_KEY, INVERTED_DISKS_KEY, LANGUAGE_KEY, LAST_USED_QUERY_ACTION_KEY, PARTITIONS_HIDDEN_COLUMNS_KEY, QUERY_INITIAL_MODE_KEY, QUERY_USE_MULTI_SCHEMA_KEY, SAVED_QUERIES_KEY, TENANT_INITIAL_PAGE_KEY, THEME_KEY, USE_BACKEND_PARAMS_FOR_TABLES_KEY, USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY, USE_CLUSTER_BALANCER_AS_BACKEND_KEY, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, ENABLE_AUTOCOMPLETE, } from '../utils/constants';
3
3
  import { QUERY_ACTIONS, QUERY_MODES } from '../utils/query';
4
4
  import { parseJson } from '../utils/utils';
5
5
  /** User settings keys and their default values */
@@ -18,6 +18,7 @@ export const DEFAULT_USER_SETTINGS = {
18
18
  [PARTITIONS_HIDDEN_COLUMNS_KEY]: [],
19
19
  [USE_BACKEND_PARAMS_FOR_TABLES_KEY]: false,
20
20
  [USE_CLUSTER_BALANCER_AS_BACKEND_KEY]: true,
21
+ [ENABLE_AUTOCOMPLETE]: false,
21
22
  };
22
23
  class SettingsManager {
23
24
  constructor() {