ydb-embedded-ui 18.3.2 → 18.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. package/README.md +5 -4
  2. package/dist/components/ConfirmationDialog/ConfirmationDialog.d.ts +1 -0
  3. package/dist/components/ConfirmationDialog/ConfirmationDialog.js +3 -2
  4. package/dist/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
  5. package/dist/components/DiskCapacityInfo/DiskCapacityInfo.d.ts +21 -0
  6. package/dist/components/DiskCapacityInfo/DiskCapacityInfo.js +129 -0
  7. package/dist/components/DiskCapacityInfo/DiskCapacityInfo.js.map +1 -0
  8. package/dist/components/DiskCapacityInfo/i18n/en.json +7 -0
  9. package/dist/components/DiskCapacityInfo/i18n/index.d.ts +2 -0
  10. package/dist/components/DiskCapacityInfo/i18n/index.js +5 -0
  11. package/dist/components/DiskCapacityInfo/i18n/index.js.map +1 -0
  12. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.d.ts +8 -1
  13. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +24 -14
  14. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js.map +1 -1
  15. package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +144 -0
  16. package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.d.ts +9 -0
  17. package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.js +8 -0
  18. package/dist/components/HelpMarkWithDocs/HelpMarkWithDocs.js.map +1 -0
  19. package/dist/components/HelpMarkWithDocs/i18n/en.json +3 -0
  20. package/dist/components/HelpMarkWithDocs/i18n/index.d.ts +1 -0
  21. package/dist/components/HelpMarkWithDocs/i18n/index.js +5 -0
  22. package/dist/components/HelpMarkWithDocs/i18n/index.js.map +1 -0
  23. package/dist/components/PDiskInfo/PDiskInfo.d.ts +1 -0
  24. package/dist/components/PDiskInfo/PDiskInfo.js +51 -14
  25. package/dist/components/PDiskInfo/PDiskInfo.js.map +1 -1
  26. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
  27. package/dist/components/PDiskPopup/PDiskPopup.d.ts +1 -1
  28. package/dist/components/PDiskPopup/PDiskPopup.js +13 -4
  29. package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
  30. package/dist/components/StorageGroupInfo/StorageGroupInfo.js +120 -2
  31. package/dist/components/StorageGroupInfo/StorageGroupInfo.js.map +1 -1
  32. package/dist/components/StorageGroupInfo/i18n/en.json +2 -1
  33. package/dist/components/StorageGroupInfo/i18n/index.d.ts +1 -1
  34. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.d.ts +5 -2
  35. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js +4 -3
  36. package/dist/components/TitleWithHelpmark/TitleWithHelpmark.js.map +1 -1
  37. package/dist/components/VDisk/VDisk.js +44 -10
  38. package/dist/components/VDisk/VDisk.js.map +1 -1
  39. package/dist/components/VDisk/i18n/en.json +6 -1
  40. package/dist/components/VDisk/i18n/index.d.ts +1 -1
  41. package/dist/components/VDiskInfo/VDiskInfo.js +117 -67
  42. package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
  43. package/dist/components/VDiskInfo/getVDiskCapacityColumns.d.ts +11 -0
  44. package/dist/components/VDiskInfo/getVDiskCapacityColumns.js +52 -0
  45. package/dist/components/VDiskInfo/getVDiskCapacityColumns.js.map +1 -0
  46. package/dist/components/VDiskPopup/VDiskPopup.d.ts +5 -0
  47. package/dist/components/VDiskPopup/VDiskPopup.js +18 -7
  48. package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
  49. package/dist/components/YDBDefinitionList/YDBDefinitionList.d.ts +2 -1
  50. package/dist/components/YDBDefinitionList/YDBDefinitionList.js +2 -2
  51. package/dist/components/YDBDefinitionList/YDBDefinitionList.js.map +1 -1
  52. package/dist/components/capacityMetricsColumns/columns.js +19 -24
  53. package/dist/components/capacityMetricsColumns/columns.js.map +1 -1
  54. package/dist/components/capacityMetricsColumns/constants.d.ts +11 -0
  55. package/dist/components/capacityMetricsColumns/constants.js +25 -0
  56. package/dist/components/capacityMetricsColumns/constants.js.map +1 -1
  57. package/dist/components/capacityMetricsColumns/formatters.d.ts +1 -0
  58. package/dist/components/capacityMetricsColumns/formatters.js +9 -0
  59. package/dist/components/capacityMetricsColumns/formatters.js.map +1 -0
  60. package/dist/components/capacityMetricsColumns/i18n/en.json +9 -1
  61. package/dist/components/capacityMetricsColumns/i18n/index.d.ts +1 -1
  62. package/dist/components/nodesColumns/constants.js +1 -1
  63. package/dist/components/nodesColumns/constants.js.map +1 -1
  64. package/dist/containers/App/NavigationWrapper.js +1 -1
  65. package/dist/containers/App/NavigationWrapper.js.map +1 -1
  66. package/dist/containers/AsideNavigation/i18n/en.json +1 -1
  67. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +1 -1
  68. package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js.map +1 -1
  69. package/dist/containers/Storage/Disks/Disks.d.ts +2 -2
  70. package/dist/containers/Storage/Disks/Disks.js +13 -10
  71. package/dist/containers/Storage/Disks/Disks.js.map +1 -1
  72. package/dist/containers/Storage/Disks/Disks.scss +20 -0
  73. package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.d.ts +2 -0
  74. package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.js +46 -0
  75. package/dist/containers/Storage/Disks/calculateCompactVDiskWidths.js.map +1 -0
  76. package/dist/containers/Storage/Disks/constants.d.ts +5 -0
  77. package/dist/containers/Storage/Disks/constants.js +11 -0
  78. package/dist/containers/Storage/Disks/constants.js.map +1 -0
  79. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js +8 -15
  80. package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js.map +1 -1
  81. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.d.ts +2 -2
  82. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js +37 -9
  83. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js.map +1 -1
  84. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.d.ts +5 -0
  85. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js +31 -1
  86. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/constants.js.map +1 -1
  87. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js +39 -24
  88. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/hooks.js.map +1 -1
  89. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/en.json +1 -0
  90. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/index.d.ts +1 -1
  91. package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/types.d.ts +1 -0
  92. package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js +18 -9
  93. package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js.map +1 -1
  94. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js +1 -1
  95. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js.map +1 -1
  96. package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.scss +13 -0
  97. package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js +96 -2
  98. package/dist/containers/Storage/StorageExpertModePanel/components/AllLegend.js.map +1 -1
  99. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js +2 -5
  100. package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js.map +1 -1
  101. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.d.ts +2 -0
  102. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js +6 -1
  103. package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js.map +1 -1
  104. package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js +3 -3
  105. package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js.map +1 -1
  106. package/dist/containers/Storage/StorageExpertModePanel/i18n/en.json +13 -0
  107. package/dist/containers/Storage/StorageExpertModePanel/i18n/index.d.ts +1 -1
  108. package/dist/containers/Storage/useStorageQueryParams.js +9 -4
  109. package/dist/containers/Storage/useStorageQueryParams.js.map +1 -1
  110. package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js +45 -5
  111. package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js.map +1 -1
  112. package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +1 -1
  113. package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js.map +1 -1
  114. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js +12 -13
  115. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/ManagePartitioningDialog.js.map +1 -1
  116. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/useManagePartitionForm.d.ts +1 -1
  117. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js +2 -2
  118. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.js.map +1 -1
  119. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js +3 -3
  120. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/PartitionsProgress.js.map +1 -1
  121. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/en.json +1 -2
  122. package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/PartitionsProgress/i18n/index.d.ts +1 -1
  123. package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.js +1 -1
  124. package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.js.map +1 -1
  125. package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +1 -1
  126. package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js.map +1 -1
  127. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +5 -2
  128. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
  129. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.d.ts +1 -1
  130. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +36 -15
  131. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js.map +1 -1
  132. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.d.ts +14 -0
  133. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.js +38 -0
  134. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageGroups.js.map +1 -0
  135. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.d.ts +1 -1
  136. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.js +3 -2
  137. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorageNew.js.map +1 -1
  138. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.d.ts +10 -1
  139. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +12 -8
  140. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js.map +1 -1
  141. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/i18n/en.json +15 -1
  142. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/i18n/index.d.ts +1 -1
  143. package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/types.d.ts +3 -1
  144. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js +1 -1
  145. package/dist/containers/Tenant/Diagnostics/TopicData/TopicMessageDetails/TopicMessageDetails.js.map +1 -1
  146. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js +1 -1
  147. package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.js.map +1 -1
  148. package/dist/containers/Tenant/Diagnostics/TopicData/getData.js +1 -1
  149. package/dist/containers/Tenant/Diagnostics/TopicData/getData.js.map +1 -1
  150. package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js +1 -1
  151. package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js.map +1 -1
  152. package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.js +10 -6
  153. package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.js.map +1 -1
  154. package/dist/containers/Tenant/ObjectSummary/CreateDirectoryDialog/CreateDirectoryDialog.scss +57 -6
  155. package/dist/containers/Tenant/ObjectSummary/ObjectSummary.scss +31 -0
  156. package/dist/containers/Tenant/ObjectSummary/SchemaTree/SchemaTree.js +58 -0
  157. package/dist/containers/Tenant/ObjectSummary/SchemaTree/SchemaTree.js.map +1 -1
  158. package/dist/containers/Tenant/Query/Issues/Issues.js +3 -3
  159. package/dist/containers/Tenant/Query/Issues/Issues.js.map +1 -1
  160. package/dist/containers/Tenant/Query/Issues/helpers.d.ts +3 -0
  161. package/dist/containers/Tenant/Query/Issues/helpers.js +40 -0
  162. package/dist/containers/Tenant/Query/Issues/helpers.js.map +1 -1
  163. package/dist/containers/Tenant/Query/Issues/helpers.test.d.ts +1 -0
  164. package/dist/containers/Tenant/Query/Issues/helpers.test.js +94 -0
  165. package/dist/containers/Tenant/Query/Issues/helpers.test.js.map +1 -0
  166. package/dist/containers/Tenant/Query/NewSQL/NewSQL.js +1 -1
  167. package/dist/containers/Tenant/Query/NewSQL/NewSQL.js.map +1 -1
  168. package/dist/containers/Tenant/Query/Preview/components/TopicPreview.js +1 -1
  169. package/dist/containers/Tenant/Query/Preview/components/TopicPreview.js.map +1 -1
  170. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +141 -73
  171. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
  172. package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.scss +8 -0
  173. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.d.ts +4 -2
  174. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.js +187 -20
  175. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/YqlEditor.js.map +1 -1
  176. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.d.ts +9 -0
  177. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.js +154 -0
  178. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.js.map +1 -0
  179. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.d.ts +1 -0
  180. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.js +153 -0
  181. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor/currentStatement.test.js.map +1 -0
  182. package/dist/containers/Tenant/Query/QueryEditor/types.d.ts +5 -0
  183. package/dist/containers/Tenant/Query/QueryEditor/types.js +2 -0
  184. package/dist/containers/Tenant/Query/QueryEditor/types.js.map +1 -0
  185. package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.d.ts +5 -0
  186. package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.js +13 -0
  187. package/dist/containers/Tenant/Query/QueryEditor/utils/reachExplainQueryMetricaGoals.js.map +1 -0
  188. package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.d.ts +6 -3
  189. package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js +10 -5
  190. package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js.map +1 -1
  191. package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.scss +18 -5
  192. package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.d.ts +3 -2
  193. package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js +23 -12
  194. package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js.map +1 -1
  195. package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.scss +19 -0
  196. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +14 -21
  197. package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
  198. package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.d.ts +6 -2
  199. package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js +6 -2
  200. package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js.map +1 -1
  201. package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.d.ts +2 -0
  202. package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js +1 -1
  203. package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js.map +1 -1
  204. package/dist/containers/Tenant/Query/QueryResult/constants.d.ts +3 -0
  205. package/dist/containers/Tenant/Query/QueryResult/constants.js +35 -0
  206. package/dist/containers/Tenant/Query/QueryResult/constants.js.map +1 -1
  207. package/dist/containers/Tenant/Query/i18n/en.json +5 -2
  208. package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
  209. package/dist/containers/Tenant/Query/utils/isQueryCancelledError.d.ts +1 -1
  210. package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js +1 -13
  211. package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js.map +1 -1
  212. package/dist/containers/Tenant/TableFormDialog/TableFormDialog.d.ts +19 -0
  213. package/dist/containers/Tenant/TableFormDialog/TableFormDialog.js +225 -0
  214. package/dist/containers/Tenant/TableFormDialog/TableFormDialog.js.map +1 -0
  215. package/dist/containers/Tenant/TableFormDialog/TableFormDialog.scss +589 -0
  216. package/dist/containers/Tenant/TableFormDialog/columnValueValidation.d.ts +1 -0
  217. package/dist/containers/Tenant/TableFormDialog/columnValueValidation.js +179 -0
  218. package/dist/containers/Tenant/TableFormDialog/columnValueValidation.js.map +1 -0
  219. package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.d.ts +11 -0
  220. package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.js +84 -0
  221. package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.js.map +1 -0
  222. package/dist/containers/Tenant/TableFormDialog/components/ColumnSelectorField.scss +175 -0
  223. package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.d.ts +19 -0
  224. package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.js +115 -0
  225. package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.js.map +1 -0
  226. package/dist/containers/Tenant/TableFormDialog/components/RangeInputPicker.scss +22 -0
  227. package/dist/containers/Tenant/TableFormDialog/components/layout.d.ts +15 -0
  228. package/dist/containers/Tenant/TableFormDialog/components/layout.js +32 -0
  229. package/dist/containers/Tenant/TableFormDialog/components/layout.js.map +1 -0
  230. package/dist/containers/Tenant/TableFormDialog/constants.d.ts +16 -0
  231. package/dist/containers/Tenant/TableFormDialog/constants.js +99 -0
  232. package/dist/containers/Tenant/TableFormDialog/constants.js.map +1 -0
  233. package/dist/containers/Tenant/TableFormDialog/i18n/en.json +143 -0
  234. package/dist/containers/Tenant/TableFormDialog/i18n/index.d.ts +2 -0
  235. package/dist/containers/Tenant/TableFormDialog/i18n/index.js +5 -0
  236. package/dist/containers/Tenant/TableFormDialog/i18n/index.js.map +1 -0
  237. package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.d.ts +8 -0
  238. package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.js +34 -0
  239. package/dist/containers/Tenant/TableFormDialog/sections/GeneralSection.js.map +1 -0
  240. package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.d.ts +5 -0
  241. package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.js +28 -0
  242. package/dist/containers/Tenant/TableFormDialog/sections/PartitioningSection.js.map +1 -0
  243. package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.d.ts +6 -0
  244. package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.js +141 -0
  245. package/dist/containers/Tenant/TableFormDialog/sections/SettingsSection.js.map +1 -0
  246. package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.d.ts +22 -0
  247. package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.js +97 -0
  248. package/dist/containers/Tenant/TableFormDialog/sections/SplitPointDialog.js.map +1 -0
  249. package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.d.ts +6 -0
  250. package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.js +70 -0
  251. package/dist/containers/Tenant/TableFormDialog/sections/TTLSection.js.map +1 -0
  252. package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.d.ts +11 -0
  253. package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.js +181 -0
  254. package/dist/containers/Tenant/TableFormDialog/sections/YdbColumnsSection.js.map +1 -0
  255. package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.d.ts +1 -0
  256. package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.js +42 -0
  257. package/dist/containers/Tenant/TableFormDialog/sections/YdbIndexesSection.js.map +1 -0
  258. package/dist/containers/Tenant/TableFormDialog/types.d.ts +26 -0
  259. package/dist/containers/Tenant/TableFormDialog/types.js +3 -0
  260. package/dist/containers/Tenant/TableFormDialog/types.js.map +1 -0
  261. package/dist/containers/Tenant/TableFormDialog/utils.d.ts +41 -0
  262. package/dist/containers/Tenant/TableFormDialog/utils.js +245 -0
  263. package/dist/containers/Tenant/TableFormDialog/utils.js.map +1 -0
  264. package/dist/containers/Tenant/TableFormDialog/validation.d.ts +8 -0
  265. package/dist/containers/Tenant/TableFormDialog/validation.js +308 -0
  266. package/dist/containers/Tenant/TableFormDialog/validation.js.map +1 -0
  267. package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.d.ts +19 -0
  268. package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.js +296 -0
  269. package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.js.map +1 -0
  270. package/dist/containers/Tenant/TopicFormDialog/TopicFormDialog.scss +182 -0
  271. package/dist/containers/Tenant/TopicFormDialog/i18n/en.json +51 -0
  272. package/dist/containers/Tenant/TopicFormDialog/i18n/index.d.ts +2 -0
  273. package/dist/containers/Tenant/TopicFormDialog/i18n/index.js +5 -0
  274. package/dist/containers/Tenant/TopicFormDialog/i18n/index.js.map +1 -0
  275. package/dist/containers/Tenant/TopicFormDialog/utils.d.ts +18 -0
  276. package/dist/containers/Tenant/TopicFormDialog/utils.js +100 -0
  277. package/dist/containers/Tenant/TopicFormDialog/utils.js.map +1 -0
  278. package/dist/containers/Tenant/TopicFormDialog/validation.d.ts +3 -0
  279. package/dist/containers/Tenant/TopicFormDialog/validation.js +88 -0
  280. package/dist/containers/Tenant/TopicFormDialog/validation.js.map +1 -0
  281. package/dist/containers/Tenant/i18n/en.json +5 -1
  282. package/dist/containers/Tenant/i18n/index.d.ts +1 -1
  283. package/dist/containers/Tenant/utils/pathSegmentValidation.d.ts +5 -0
  284. package/dist/containers/Tenant/utils/pathSegmentValidation.js +15 -0
  285. package/dist/containers/Tenant/utils/pathSegmentValidation.js.map +1 -0
  286. package/dist/containers/Tenant/utils/schemaActions.d.ts +4 -0
  287. package/dist/containers/Tenant/utils/schemaActions.js +103 -14
  288. package/dist/containers/Tenant/utils/schemaActions.js.map +1 -1
  289. package/dist/containers/VDiskPage/VDiskPage.js +3 -30
  290. package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
  291. package/dist/containers/VDiskPage/useVDiskQueryParams.d.ts +13 -0
  292. package/dist/containers/VDiskPage/useVDiskQueryParams.js +55 -0
  293. package/dist/containers/VDiskPage/useVDiskQueryParams.js.map +1 -0
  294. package/dist/store/reducers/pdisk/utils.js +4 -4
  295. package/dist/store/reducers/pdisk/utils.js.map +1 -1
  296. package/dist/store/reducers/query/api.d.ts +2 -1
  297. package/dist/store/reducers/query/api.js +107 -48
  298. package/dist/store/reducers/query/api.js.map +1 -1
  299. package/dist/store/reducers/query/parsers/preparePlanData.js +8 -1
  300. package/dist/store/reducers/query/parsers/preparePlanData.js.map +1 -1
  301. package/dist/store/reducers/query/slice.d.ts +8 -9
  302. package/dist/store/reducers/query/slice.js +5 -0
  303. package/dist/store/reducers/query/slice.js.map +1 -1
  304. package/dist/store/reducers/query/streaming/reducers.d.ts +3 -0
  305. package/dist/store/reducers/query/streaming/reducers.js +6 -6
  306. package/dist/store/reducers/query/streaming/reducers.js.map +1 -1
  307. package/dist/store/reducers/query/types.d.ts +8 -4
  308. package/dist/store/reducers/query/utils.d.ts +10 -2
  309. package/dist/store/reducers/query/utils.js +37 -6
  310. package/dist/store/reducers/query/utils.js.map +1 -1
  311. package/dist/store/reducers/storage/prepareGroupsDisks.d.ts +10 -3
  312. package/dist/store/reducers/storage/prepareGroupsDisks.js +43 -6
  313. package/dist/store/reducers/storage/prepareGroupsDisks.js.map +1 -1
  314. package/dist/store/reducers/storage/types.d.ts +1 -0
  315. package/dist/store/reducers/storage/utils.js +4 -7
  316. package/dist/store/reducers/storage/utils.js.map +1 -1
  317. package/dist/store/reducers/table/constants.d.ts +6 -0
  318. package/dist/store/reducers/table/constants.js +36 -0
  319. package/dist/store/reducers/table/constants.js.map +1 -0
  320. package/dist/store/reducers/table/table.d.ts +19 -0
  321. package/dist/store/reducers/table/table.js +104 -0
  322. package/dist/store/reducers/table/table.js.map +1 -0
  323. package/dist/store/reducers/table/types.d.ts +193 -0
  324. package/dist/store/reducers/table/types.js +12 -0
  325. package/dist/store/reducers/table/types.js.map +1 -0
  326. package/dist/store/reducers/table/utils.d.ts +17 -0
  327. package/dist/store/reducers/table/utils.js +485 -0
  328. package/dist/store/reducers/table/utils.js.map +1 -0
  329. package/dist/store/reducers/topic/topic.d.ts +1762 -0
  330. package/dist/store/reducers/topic/topic.js +172 -0
  331. package/dist/store/reducers/topic/topic.js.map +1 -0
  332. package/dist/store/reducers/topic/utils.d.ts +23 -0
  333. package/dist/store/reducers/topic/utils.js +75 -0
  334. package/dist/store/reducers/topic/utils.js.map +1 -0
  335. package/dist/types/api/pdisk.d.ts +6 -1
  336. package/dist/types/api/pdisk.js.map +1 -1
  337. package/dist/types/api/storage.d.ts +3 -1
  338. package/dist/types/api/storage.js.map +1 -1
  339. package/dist/types/api/topic.d.ts +18 -0
  340. package/dist/types/api/topic.js +8 -0
  341. package/dist/types/api/topic.js.map +1 -1
  342. package/dist/types/api/vdisk.d.ts +8 -0
  343. package/dist/types/api/vdisk.js.map +1 -1
  344. package/dist/uiFactory/types.d.ts +5 -0
  345. package/dist/uiFactory/uiFactory.d.ts +4 -1
  346. package/dist/uiFactory/uiFactory.js +8 -1
  347. package/dist/uiFactory/uiFactory.js.map +1 -1
  348. package/dist/utils/capacityAlerts.d.ts +1 -0
  349. package/dist/utils/capacityAlerts.js +3 -0
  350. package/dist/utils/capacityAlerts.js.map +1 -1
  351. package/dist/utils/constants.d.ts +1 -1
  352. package/dist/utils/constants.js +1 -1
  353. package/dist/utils/constants.js.map +1 -1
  354. package/dist/utils/disks/displayState.d.ts +5 -0
  355. package/dist/utils/disks/displayState.js.map +1 -1
  356. package/dist/utils/disks/iconCalculators.d.ts +1 -3
  357. package/dist/utils/disks/iconCalculators.js +5 -6
  358. package/dist/utils/disks/iconCalculators.js.map +1 -1
  359. package/dist/utils/disks/prepareDisks.d.ts +1 -1
  360. package/dist/utils/disks/prepareDisks.js +44 -3
  361. package/dist/utils/disks/prepareDisks.js.map +1 -1
  362. package/dist/utils/disks/severityCalculators.d.ts +1 -4
  363. package/dist/utils/disks/severityCalculators.js +2 -6
  364. package/dist/utils/disks/severityCalculators.js.map +1 -1
  365. package/dist/utils/disks/types.d.ts +8 -0
  366. package/dist/utils/emptyDataPlaceholder.d.ts +1 -0
  367. package/dist/utils/emptyDataPlaceholder.js +2 -0
  368. package/dist/utils/emptyDataPlaceholder.js.map +1 -0
  369. package/dist/utils/hooks/useSelectedColumns.d.ts +3 -0
  370. package/dist/utils/hooks/useSelectedColumns.js +18 -0
  371. package/dist/utils/hooks/useSelectedColumns.js.map +1 -1
  372. package/dist/utils/query.d.ts +4 -1
  373. package/dist/utils/query.js +34 -1
  374. package/dist/utils/query.js.map +1 -1
  375. package/dist/utils/storageMetrics.d.ts +5 -1
  376. package/dist/utils/storageMetrics.js +35 -4
  377. package/dist/utils/storageMetrics.js.map +1 -1
  378. package/dist/utils/utils.js +2 -1
  379. package/dist/utils/utils.js.map +1 -1
  380. package/package.json +1 -1
  381. package/dist/store/reducers/topic.d.ts +0 -1291
  382. package/dist/store/reducers/topic.js +0 -83
  383. package/dist/store/reducers/topic.js.map +0 -1
@@ -0,0 +1,172 @@
1
+ /* eslint-disable camelcase */
2
+ import { createSelector } from '@reduxjs/toolkit';
3
+ import { convertBytesObjectToSpeed } from '../../../utils/bytesParsers';
4
+ import { isQueryErrorResponse, parseQueryAPIResponse } from '../../../utils/query';
5
+ import { parseLag, parseTimestampToIdleTime } from '../../../utils/timeParsers';
6
+ import { api } from '../api';
7
+ import { AutoPartitioningStrategy, buildAlterTopicQuery, buildCreateTopicQuery } from './utils';
8
+ export const TOPIC_MESSAGE_SIZE_LIMIT = 100;
9
+ const DEFAULT_WRITE_QUOTA_BYTES = 1024 * 1024;
10
+ export const topicApi = api.injectEndpoints({
11
+ endpoints: (build) => ({
12
+ getTopic: build.query({
13
+ queryFn: async ({ path, database, databaseFullPath, useMetaProxy, }) => {
14
+ try {
15
+ const data = await window.api.viewer.getTopic({
16
+ path: { path, databaseFullPath, useMetaProxy },
17
+ database,
18
+ });
19
+ // On older version it can return HTML page of Developer UI with an error
20
+ if (typeof data !== 'object') {
21
+ return { error: {} };
22
+ }
23
+ return { data };
24
+ }
25
+ catch (error) {
26
+ return { error };
27
+ }
28
+ },
29
+ providesTags: ['All'],
30
+ }),
31
+ getTopicData: build.query({
32
+ queryFn: async ({ clusterName, useMeta, ...params }) => {
33
+ try {
34
+ const requestParams = {
35
+ message_size_limit: TOPIC_MESSAGE_SIZE_LIMIT,
36
+ ...params,
37
+ };
38
+ const data = useMeta && window.api.meta
39
+ ? await window.api.meta.getSchemaTopicData({
40
+ ...requestParams,
41
+ clusterName,
42
+ })
43
+ : await window.api.viewer.getTopicData(requestParams);
44
+ return { data };
45
+ }
46
+ catch (error) {
47
+ return { error };
48
+ }
49
+ },
50
+ keepUnusedDataFor: 0,
51
+ }),
52
+ createTopic: build.mutation({
53
+ queryFn: async ({ database, formData, }) => {
54
+ try {
55
+ const query = buildCreateTopicQuery(formData);
56
+ const response = await window.api.viewer.sendQuery({
57
+ query,
58
+ database,
59
+ action: 'execute-query',
60
+ });
61
+ if (isQueryErrorResponse(response)) {
62
+ return { error: response };
63
+ }
64
+ return { data: parseQueryAPIResponse(response) };
65
+ }
66
+ catch (error) {
67
+ return { error };
68
+ }
69
+ },
70
+ invalidatesTags: (_result, error) => (error ? [] : ['All']),
71
+ }),
72
+ updateTopic: build.mutation({
73
+ queryFn: async ({ database, formData, }) => {
74
+ try {
75
+ const query = buildAlterTopicQuery(formData);
76
+ const response = await window.api.viewer.sendQuery({
77
+ query,
78
+ database,
79
+ action: 'execute-query',
80
+ });
81
+ if (isQueryErrorResponse(response)) {
82
+ return { error: response };
83
+ }
84
+ return { data: parseQueryAPIResponse(response) };
85
+ }
86
+ catch (error) {
87
+ return { error };
88
+ }
89
+ },
90
+ invalidatesTags: (_result, error) => (error ? [] : ['All']),
91
+ }),
92
+ }),
93
+ overrideExisting: 'throw',
94
+ });
95
+ const createGetTopicSelector = createSelector((path) => path, (_path, database) => database, (_path, _database, databaseFullPath) => databaseFullPath, (_path, _database, _databaseFullPath, useMetaProxy) => useMetaProxy, (path, database, databaseFullPath, useMetaProxy) => topicApi.endpoints.getTopic.select({ path, database, databaseFullPath, useMetaProxy }));
96
+ const selectTopicStats = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => { var _a; return (_a = selectGetTopic(state).data) === null || _a === void 0 ? void 0 : _a.topic_stats; });
97
+ const selectConsumers = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => { var _a; return (_a = selectGetTopic(state).data) === null || _a === void 0 ? void 0 : _a.consumers; });
98
+ export const selectConsumersNames = createSelector(selectConsumers, (consumers) => {
99
+ return consumers === null || consumers === void 0 ? void 0 : consumers.map((consumer) => consumer === null || consumer === void 0 ? void 0 : consumer.name).filter((consumer) => consumer !== undefined);
100
+ });
101
+ export const selectPreparedTopicStats = createSelector(selectTopicStats, (rawTopicStats) => {
102
+ if (!rawTopicStats) {
103
+ return undefined;
104
+ }
105
+ const { store_size_bytes = '0', min_last_write_time, max_write_time_lag, bytes_written, } = rawTopicStats || {};
106
+ return {
107
+ storeSize: store_size_bytes,
108
+ partitionsIdleTime: parseTimestampToIdleTime(min_last_write_time),
109
+ partitionsWriteLag: parseLag(max_write_time_lag),
110
+ writeSpeed: convertBytesObjectToSpeed(bytes_written),
111
+ };
112
+ });
113
+ export const selectPreparedConsumersData = createSelector(selectConsumers, (consumers) => {
114
+ return consumers === null || consumers === void 0 ? void 0 : consumers.map((consumer) => {
115
+ const { name, consumer_stats } = consumer || {};
116
+ const { min_partitions_last_read_time, max_read_time_lag, max_write_time_lag, bytes_read } = consumer_stats || {};
117
+ return {
118
+ name,
119
+ readSpeed: convertBytesObjectToSpeed(bytes_read),
120
+ writeLag: parseLag(max_write_time_lag),
121
+ readLag: parseLag(max_read_time_lag),
122
+ readIdleTime: parseTimestampToIdleTime(min_partitions_last_read_time),
123
+ };
124
+ });
125
+ });
126
+ function parseDurationToSeconds(duration) {
127
+ if (!duration) {
128
+ return undefined;
129
+ }
130
+ if (typeof duration === 'string') {
131
+ const match = duration.match(/^(\d+)s$/);
132
+ return match ? parseInt(match[1], 10) : undefined;
133
+ }
134
+ if (typeof duration === 'object' && duration.seconds !== undefined) {
135
+ return typeof duration.seconds === 'string'
136
+ ? parseInt(duration.seconds, 10)
137
+ : duration.seconds;
138
+ }
139
+ return undefined;
140
+ }
141
+ export const selectTopicFormValues = createSelector((state) => state, (_state, path, database, databaseFullPath, useMetaProxy) => createGetTopicSelector(path, database, databaseFullPath, useMetaProxy), (state, selectGetTopic) => {
142
+ var _a, _b, _c, _d, _e, _f, _g, _h;
143
+ const topicData = selectGetTopic(state).data;
144
+ if (!topicData) {
145
+ return undefined;
146
+ }
147
+ const minActivePartitions = parseInt((_b = (_a = topicData.partitioning_settings) === null || _a === void 0 ? void 0 : _a.min_active_partitions) !== null && _b !== void 0 ? _b : '1', 10);
148
+ const maxActivePartitions = parseInt((_d = (_c = topicData.partitioning_settings) === null || _c === void 0 ? void 0 : _c.max_active_partitions) !== null && _d !== void 0 ? _d : '0', 10);
149
+ const parsedWriteQuotaBytes = parseInt((_e = topicData.partition_write_speed_bytes_per_second) !== null && _e !== void 0 ? _e : '', 10);
150
+ const writeQuotaBytes = Number.isFinite(parsedWriteQuotaBytes)
151
+ ? parsedWriteQuotaBytes
152
+ : DEFAULT_WRITE_QUOTA_BYTES;
153
+ const autoPartitioningSettings = (_f = topicData.partitioning_settings) === null || _f === void 0 ? void 0 : _f.auto_partitioning_settings;
154
+ const autoPartitioningStrategy = String((_g = autoPartitioningSettings === null || autoPartitioningSettings === void 0 ? void 0 : autoPartitioningSettings.strategy) !== null && _g !== void 0 ? _g : AutoPartitioningStrategy.Unspecified);
155
+ const autoPartitioningEnabled = autoPartitioningStrategy !== AutoPartitioningStrategy.Disabled &&
156
+ autoPartitioningStrategy !== AutoPartitioningStrategy.Unspecified;
157
+ const partitionWriteSpeed = autoPartitioningSettings === null || autoPartitioningSettings === void 0 ? void 0 : autoPartitioningSettings.partition_write_speed;
158
+ return {
159
+ name: (_h = topicData.self) === null || _h === void 0 ? void 0 : _h.name,
160
+ shards: minActivePartitions,
161
+ writeQuotaBytes,
162
+ autoPartitioning: {
163
+ enabled: autoPartitioningEnabled,
164
+ mode: autoPartitioningStrategy,
165
+ minPartitions: minActivePartitions,
166
+ maxPartitions: maxActivePartitions > 0 ? maxActivePartitions : undefined,
167
+ stabilizationWindow: parseDurationToSeconds(partitionWriteSpeed === null || partitionWriteSpeed === void 0 ? void 0 : partitionWriteSpeed.stabilization_window),
168
+ upUtilization: partitionWriteSpeed === null || partitionWriteSpeed === void 0 ? void 0 : partitionWriteSpeed.up_utilization_percent,
169
+ },
170
+ };
171
+ });
172
+ //# sourceMappingURL=topic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../../src/store/reducers/topic/topic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export declare enum AutoPartitioningStrategy {
2
+ Disabled = "AUTO_PARTITIONING_STRATEGY_DISABLED",
3
+ Unspecified = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED",
4
+ Paused = "AUTO_PARTITIONING_STRATEGY_PAUSED",
5
+ ScaleUp = "AUTO_PARTITIONING_STRATEGY_SCALE_UP",
6
+ ScaleUpAndDown = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN"
7
+ }
8
+ export interface TopicFormValues {
9
+ path?: string;
10
+ name?: string;
11
+ shards: number;
12
+ writeQuotaBytes: number;
13
+ autoPartitioning: {
14
+ enabled: boolean;
15
+ mode: string;
16
+ minPartitions?: number;
17
+ maxPartitions?: number;
18
+ stabilizationWindow?: number;
19
+ upUtilization?: number;
20
+ };
21
+ }
22
+ export declare function buildCreateTopicQuery(formData: TopicFormValues): string;
23
+ export declare function buildAlterTopicQuery(formData: TopicFormValues): string;
@@ -0,0 +1,75 @@
1
+ export var AutoPartitioningStrategy;
2
+ (function (AutoPartitioningStrategy) {
3
+ AutoPartitioningStrategy["Disabled"] = "AUTO_PARTITIONING_STRATEGY_DISABLED";
4
+ AutoPartitioningStrategy["Unspecified"] = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED";
5
+ AutoPartitioningStrategy["Paused"] = "AUTO_PARTITIONING_STRATEGY_PAUSED";
6
+ AutoPartitioningStrategy["ScaleUp"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP";
7
+ AutoPartitioningStrategy["ScaleUpAndDown"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN";
8
+ })(AutoPartitioningStrategy || (AutoPartitioningStrategy = {}));
9
+ const AUTO_PARTITIONING_STRATEGY_TO_YQL = {
10
+ [AutoPartitioningStrategy.Disabled]: 'disabled',
11
+ [AutoPartitioningStrategy.Unspecified]: 'unspecified',
12
+ [AutoPartitioningStrategy.Paused]: 'paused',
13
+ [AutoPartitioningStrategy.ScaleUp]: 'scale_up',
14
+ [AutoPartitioningStrategy.ScaleUpAndDown]: 'scale_up_and_down',
15
+ };
16
+ const NAME_REGEX = /^[a-z_][a-z0-9_]*$/i;
17
+ function prepareTopicEntityName(path) {
18
+ return NAME_REGEX.test(path)
19
+ ? path
20
+ : `\`${path.replaceAll('\\', '\\\\').replaceAll('`', '\\`')}\``;
21
+ }
22
+ function buildTopicPath(path, name) {
23
+ const topicPath = [path, name].filter(Boolean).join('/');
24
+ if (topicPath) {
25
+ return prepareTopicEntityName(topicPath);
26
+ }
27
+ throw new Error('Topic name or path is required');
28
+ }
29
+ function formatAutoPartitioningStrategy(strategy) {
30
+ var _a;
31
+ return ((_a = AUTO_PARTITIONING_STRATEGY_TO_YQL[strategy]) !== null && _a !== void 0 ? _a : strategy.replace(/^AUTO_PARTITIONING_STRATEGY_/, '').toLowerCase());
32
+ }
33
+ function buildTopicSettings(formData, { includeDisabledAutoPartitioningStrategy = true, } = {}) {
34
+ var _a;
35
+ const { shards, writeQuotaBytes, autoPartitioning } = formData;
36
+ const settings = [];
37
+ const minActivePartitions = autoPartitioning.enabled
38
+ ? ((_a = autoPartitioning.minPartitions) !== null && _a !== void 0 ? _a : shards)
39
+ : shards;
40
+ settings.push(`MIN_ACTIVE_PARTITIONS = ${minActivePartitions}`);
41
+ if (autoPartitioning.enabled) {
42
+ if (autoPartitioning.maxPartitions !== undefined) {
43
+ settings.push(`MAX_ACTIVE_PARTITIONS = ${autoPartitioning.maxPartitions}`);
44
+ }
45
+ }
46
+ settings.push(`PARTITION_WRITE_SPEED_BYTES_PER_SECOND = ${writeQuotaBytes}`);
47
+ if (autoPartitioning.enabled || includeDisabledAutoPartitioningStrategy) {
48
+ const strategy = autoPartitioning.enabled
49
+ ? formatAutoPartitioningStrategy(autoPartitioning.mode)
50
+ : formatAutoPartitioningStrategy(AutoPartitioningStrategy.Disabled);
51
+ settings.push(`AUTO_PARTITIONING_STRATEGY = '${strategy}'`);
52
+ }
53
+ if (autoPartitioning.enabled) {
54
+ if (autoPartitioning.stabilizationWindow !== undefined) {
55
+ settings.push(`AUTO_PARTITIONING_STABILIZATION_WINDOW = Interval('PT${autoPartitioning.stabilizationWindow}S')`);
56
+ }
57
+ if (autoPartitioning.upUtilization !== undefined) {
58
+ settings.push(`AUTO_PARTITIONING_UP_UTILIZATION_PERCENT = ${autoPartitioning.upUtilization}`);
59
+ }
60
+ }
61
+ return settings;
62
+ }
63
+ export function buildCreateTopicQuery(formData) {
64
+ const topicRef = buildTopicPath(formData.path, formData.name);
65
+ const settings = buildTopicSettings(formData);
66
+ return `CREATE TOPIC ${topicRef} WITH (\n ${settings.join(',\n ')}\n);`;
67
+ }
68
+ export function buildAlterTopicQuery(formData) {
69
+ const topicRef = buildTopicPath(formData.path, formData.name);
70
+ const settings = buildTopicSettings(formData, {
71
+ includeDisabledAutoPartitioningStrategy: false,
72
+ });
73
+ return `ALTER TOPIC ${topicRef} SET (\n ${settings.join(',\n ')}\n);`;
74
+ }
75
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/topic/utils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,wBAMX;AAND,WAAY,wBAAwB;IAChC,4EAAgD,CAAA;IAChD,kFAAsD,CAAA;IACtD,wEAA4C,CAAA;IAC5C,2EAA+C,CAAA;IAC/C,2FAA+D,CAAA;AACnE,CAAC,EANW,wBAAwB,KAAxB,wBAAwB,QAMnC;AAiBD,MAAM,iCAAiC,GAA6C;IAChF,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EAAE,UAAU;IAC/C,CAAC,wBAAwB,CAAC,WAAW,CAAC,EAAE,aAAa;IACrD,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,QAAQ;IAC3C,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,UAAU;IAC9C,CAAC,wBAAwB,CAAC,cAAc,CAAC,EAAE,mBAAmB;CACjE,CAAC;AAEF,MAAM,UAAU,GAAG,qBAAqB,CAAC;AAEzC,SAAS,sBAAsB,CAAC,IAAY;IACxC,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QACxB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,SAAS,cAAc,CAAC,IAAwB,EAAE,IAAwB;IACtE,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,IAAI,SAAS,EAAE,CAAC;QACZ,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,8BAA8B,CAAC,QAAgB;;IACpD,OAAO,CACH,MAAA,iCAAiC,CAAC,QAAoC,CAAC,mCACvE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CACrE,CAAC;AACN,CAAC;AAED,SAAS,kBAAkB,CACvB,QAAyB,EACzB,EACI,uCAAuC,GAAG,IAAI,MACO,EAAE;;IAE3D,MAAM,EAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAC,GAAG,QAAQ,CAAC;IAE7D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,OAAO;QAChD,CAAC,CAAC,CAAC,MAAA,gBAAgB,CAAC,aAAa,mCAAI,MAAM,CAAC;QAC5C,CAAC,CAAC,MAAM,CAAC;IACb,QAAQ,CAAC,IAAI,CAAC,2BAA2B,mBAAmB,EAAE,CAAC,CAAC;IAEhE,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,gBAAgB,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,2BAA2B,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,4CAA4C,eAAe,EAAE,CAAC,CAAC;IAE7E,IAAI,gBAAgB,CAAC,OAAO,IAAI,uCAAuC,EAAE,CAAC;QACtE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO;YACrC,CAAC,CAAC,8BAA8B,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACvD,CAAC,CAAC,8BAA8B,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACxE,QAAQ,CAAC,IAAI,CAAC,iCAAiC,QAAQ,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,gBAAgB,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACrD,QAAQ,CAAC,IAAI,CACT,wDAAwD,gBAAgB,CAAC,mBAAmB,KAAK,CACpG,CAAC;QACN,CAAC;QACD,IAAI,gBAAgB,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CACT,8CAA8C,gBAAgB,CAAC,aAAa,EAAE,CACjF,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAyB;IAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC9C,OAAO,gBAAgB,QAAQ,gBAAgB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAyB;IAC1D,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,EAAE;QAC1C,uCAAuC,EAAE,KAAK;KACjD,CAAC,CAAC;IACH,OAAO,eAAe,QAAQ,eAAe,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAChF,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { EFlag } from './enums';
1
+ import type { ECapacityAlert, EFlag } from './enums';
2
2
  import type { TVDiskStateInfo, TVSlotEntry } from './vdisk';
3
3
  /**
4
4
  * endpoint: /viewer/json/pdiskinfo
@@ -47,6 +47,11 @@ export interface TPDiskStateInfo {
47
47
  EnforcedDynamicSlotSize?: string;
48
48
  ExpectedSlotCount?: number;
49
49
  NumActiveSlots?: number;
50
+ /** uint32; slot size in allocation units. */
51
+ SlotSizeInUnits?: number;
52
+ /** float; percent in the 0..100 scale. */
53
+ PDiskUsage?: number;
54
+ PDiskCapacityAlert?: ECapacityAlert | string;
50
55
  }
51
56
  export declare enum TPDiskState {
52
57
  Initial = "Initial",
@@ -1 +1 @@
1
- {"version":3,"file":"pdisk.js","sourceRoot":"","sources":["../../../src/types/api/pdisk.ts"],"names":[],"mappings":"AAqDA,MAAM,CAAN,IAAY,WAsBX;AAtBD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,kEAAmD,CAAA;IACnD,4DAA6C,CAAA;IAC7C,sEAAuD,CAAA;IACvD,wEAAyD,CAAA;IACzD,8DAA+C,CAAA;IAC/C,gCAAiB,CAAA;IACjB,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,8CAA+B,CAAA;IAC/B,kCAAmB,CAAA;IAEnB,4BAA4B;IAC5B,kCAAmB,CAAA;IACnB,kCAAmB,CAAA;IACnB,oDAAqC,CAAA;IACrC,kCAAmB,CAAA;AACvB,CAAC,EAtBW,WAAW,KAAX,WAAW,QAsBtB"}
1
+ {"version":3,"file":"pdisk.js","sourceRoot":"","sources":["../../../src/types/api/pdisk.ts"],"names":[],"mappings":"AA0DA,MAAM,CAAN,IAAY,WAsBX;AAtBD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,sDAAuC,CAAA;IACvC,gEAAiD,CAAA;IACjD,kEAAmD,CAAA;IACnD,4DAA6C,CAAA;IAC7C,sEAAuD,CAAA;IACvD,wEAAyD,CAAA;IACzD,8DAA+C,CAAA;IAC/C,gCAAiB,CAAA;IACjB,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,8CAA+B,CAAA;IAC/B,kCAAmB,CAAA;IAEnB,4BAA4B;IAC5B,kCAAmB,CAAA;IACnB,kCAAmB,CAAA;IACnB,oDAAqC,CAAA;IACrC,kCAAmB,CAAA;AACvB,CAAC,EAtBW,WAAW,KAAX,WAAW,QAsBtB"}
@@ -134,6 +134,8 @@ export interface TGroupsStorageGroupInfo {
134
134
  ErasureSpecies?: Erasure;
135
135
  /** uint64 */
136
136
  AllocationUnits?: string;
137
+ /** uint32; group slot weight in allocation units. */
138
+ GroupSizeInUnits?: number;
137
139
  /**
138
140
  * Could be one of:
139
141
  * ok - group is okay
@@ -240,7 +242,7 @@ export type StorageV2Sort = BackendSortParam<StorageV2SortValue>;
240
242
  export type GroupsSort = BackendSortParam<GroupsSortField>;
241
243
  export type StorageWithFilter = 'space' | 'missing' | 'all';
242
244
  export type GroupsGroupByField = 'GroupId' | 'Erasure' | 'Usage' | 'DiskSpaceUsage' | 'PoolName' | 'PileName' | 'Kind' | 'Encryption' | 'MediaType' | 'MissingDisks' | 'State' | 'Latency' | 'CapacityAlert';
243
- export type GroupsRequiredField = 'GroupId' | 'PoolName' | 'PileName' | 'Kind' | 'MediaType' | 'Erasure' | 'MissingDisks' | 'Degraded' | 'State' | 'Used' | 'Limit' | 'Usage' | 'Available' | 'DiskSpaceUsage' | 'Encryption' | 'AllocationUnits' | 'Read' | 'Write' | 'PDisk' | 'VDisk' | 'Latency' | 'MaxPDiskUsage' | 'MaxVDiskSlotUsage' | 'MaxVDiskRawUsage' | 'MaxNormalizedOccupancy' | 'CapacityAlert';
245
+ export type GroupsRequiredField = 'GroupId' | 'PoolName' | 'PileName' | 'Kind' | 'MediaType' | 'Erasure' | 'MissingDisks' | 'Degraded' | 'State' | 'Used' | 'Limit' | 'Usage' | 'Available' | 'DiskSpaceUsage' | 'Encryption' | 'AllocationUnits' | 'GroupSizeInUnits' | 'Read' | 'Write' | 'PDisk' | 'VDisk' | 'Latency' | 'MaxPDiskUsage' | 'MaxVDiskSlotUsage' | 'MaxVDiskRawUsage' | 'MaxNormalizedOccupancy' | 'CapacityAlert';
244
246
  interface BaseStorageRequestParams {
245
247
  database?: string;
246
248
  pool?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/types/api/storage.ts"],"names":[],"mappings":"AAiaA,MAAM,CAAN,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC5B,0DAAkC,CAAA;AACtC,CAAC,EAFW,oBAAoB,KAApB,oBAAoB,QAE/B"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/types/api/storage.ts"],"names":[],"mappings":"AAoaA,MAAM,CAAN,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC5B,0DAAkC,CAAA;AACtC,CAAC,EAFW,oBAAoB,KAApB,oBAAoB,QAE/B"}
@@ -108,6 +108,7 @@ interface PartitioningSettings {
108
108
  * Zero value means default - 1.
109
109
  */
110
110
  min_active_partitions?: string;
111
+ max_active_partitions?: string;
111
112
  /**
112
113
  * int64
113
114
  *
@@ -116,6 +117,23 @@ interface PartitioningSettings {
116
117
  * Zero value means default - 100.
117
118
  */
118
119
  partition_count_limit?: string;
120
+ auto_partitioning_settings?: AutoPartitioningSettings;
121
+ }
122
+ interface AutoPartitioningSettings {
123
+ strategy?: AutoPartitioningStrategy;
124
+ partition_write_speed?: AutoPartitioningWriteSpeedStrategy;
125
+ }
126
+ interface AutoPartitioningWriteSpeedStrategy {
127
+ stabilization_window?: string | IProtobufTimeObject;
128
+ up_utilization_percent?: number;
129
+ down_utilization_percent?: number;
130
+ }
131
+ declare enum AutoPartitioningStrategy {
132
+ AUTO_PARTITIONING_STRATEGY_UNSPECIFIED = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED",
133
+ AUTO_PARTITIONING_STRATEGY_DISABLED = "AUTO_PARTITIONING_STRATEGY_DISABLED",
134
+ AUTO_PARTITIONING_STRATEGY_SCALE_UP = "AUTO_PARTITIONING_STRATEGY_SCALE_UP",
135
+ AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN",
136
+ AUTO_PARTITIONING_STRATEGY_PAUSED = "AUTO_PARTITIONING_STRATEGY_PAUSED"
119
137
  }
120
138
  declare enum MeteringMode {
121
139
  /** Use default */
@@ -1,3 +1,11 @@
1
+ var AutoPartitioningStrategy;
2
+ (function (AutoPartitioningStrategy) {
3
+ AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_UNSPECIFIED"] = "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED";
4
+ AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_DISABLED"] = "AUTO_PARTITIONING_STRATEGY_DISABLED";
5
+ AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_SCALE_UP"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP";
6
+ AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN"] = "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN";
7
+ AutoPartitioningStrategy["AUTO_PARTITIONING_STRATEGY_PAUSED"] = "AUTO_PARTITIONING_STRATEGY_PAUSED";
8
+ })(AutoPartitioningStrategy || (AutoPartitioningStrategy = {}));
1
9
  var MeteringMode;
2
10
  (function (MeteringMode) {
3
11
  /** Use default */
@@ -1 +1 @@
1
- {"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/types/api/topic.ts"],"names":[],"mappings":"AAwJA,IAAK,YASJ;AATD,WAAK,YAAY;IACb,kBAAkB;IAClB,uEAAuD,CAAA;IAEvD,6CAA6C;IAC7C,mFAAmE,CAAA;IAEnE,qDAAqD;IACrD,2EAA2D,CAAA;AAC/D,CAAC,EATI,YAAY,KAAZ,YAAY,QAShB"}
1
+ {"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/types/api/topic.ts"],"names":[],"mappings":"AAuKA,IAAK,wBAMJ;AAND,WAAK,wBAAwB;IACzB,6GAAiF,CAAA;IACjF,uGAA2E,CAAA;IAC3E,uGAA2E,CAAA;IAC3E,yHAA6F,CAAA;IAC7F,mGAAuE,CAAA;AAC3E,CAAC,EANI,wBAAwB,KAAxB,wBAAwB,QAM5B;AAED,IAAK,YASJ;AATD,WAAK,YAAY;IACb,kBAAkB;IAClB,uEAAuD,CAAA;IAEvD,6CAA6C;IAC7C,mFAAmE,CAAA;IAEnE,qDAAqD;IACrD,2EAA2D,CAAA;AAC/D,CAAC,EATI,YAAY,KAAZ,YAAY,QAShB"}
@@ -14,6 +14,14 @@ export interface TVDiskStateInfo {
14
14
  PDiskId?: number;
15
15
  PDisk?: TPDiskStateInfo;
16
16
  VDiskSlotId?: number;
17
+ /** uint32; VDisk slot weight in allocation units. */
18
+ GroupSizeInUnits?: number;
19
+ /** float; percent in the 0..100 scale. */
20
+ VDiskSlotUsage?: number;
21
+ /** float; percent in the 0..100 scale. */
22
+ VDiskRawUsage?: number;
23
+ /** float; backend normalized occupancy value. */
24
+ NormalizedOccupancy?: number;
17
25
  /** uint64 */
18
26
  Guid?: string;
19
27
  /** uint64 */
@@ -1 +1 @@
1
- {"version":3,"file":"vdisk.js","sourceRoot":"","sources":["../../../src/types/api/vdisk.ts"],"names":[],"mappings":"AAyHA,MAAM,CAAN,IAAY,WAOX;AAPD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,wDAAyC,CAAA;IACzC,oDAAqC,CAAA;IACrC,8DAA+C,CAAA;IAC/C,wBAAS,CAAA;IACT,wCAAyB,CAAA;AAC7B,CAAC,EAPW,WAAW,KAAX,WAAW,QAOtB"}
1
+ {"version":3,"file":"vdisk.js","sourceRoot":"","sources":["../../../src/types/api/vdisk.ts"],"names":[],"mappings":"AAiIA,MAAM,CAAN,IAAY,WAOX;AAPD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,wDAAyC,CAAA;IACzC,oDAAqC,CAAA;IACrC,8DAA+C,CAAA;IAC/C,wBAAS,CAAA;IACT,wCAAyB,CAAA;AAC7B,CAAC,EAPW,WAAW,KAAX,WAAW,QAOtB"}
@@ -63,6 +63,8 @@ export interface UIFactory<H extends string = CommonIssueCategory, T extends str
63
63
  databasesEnvironmentsConfig?: DatabasesEnvironmentsConfig;
64
64
  getReportProblemUrl?: GetReportProblemUrl;
65
65
  isDetailedStorageViewAvailable?: IsDetailedStorageViewAvailable;
66
+ /** Maximum number of disks in a storage group. */
67
+ maxVDisksInStorageGroup?: number;
66
68
  illustrations?: Partial<Record<IllustrationName, IllustrationComponent>>;
67
69
  hideNewFeaturesNotifications?: {
68
70
  navigationV2?: boolean;
@@ -88,6 +90,8 @@ export interface DocsConfig {
88
90
  basePath: string;
89
91
  /** Path to the article about the auto partitioning max partitions count setting. */
90
92
  autoPartitioningMaxPartitionsCount?: string;
93
+ /** Path to the distributed storage channel glossary entry. */
94
+ distributedStorageChannel?: string;
91
95
  }
92
96
  export type HandleCreateDB = (params: {
93
97
  clusterName: string;
@@ -143,6 +147,7 @@ export type RenderNodeTooltipActions = (props: {
143
147
  }) => React.ReactNode;
144
148
  export interface UiMetricaGoals {
145
149
  runQuery?: string;
150
+ explainAnalyzeQuery?: string;
146
151
  stopQuery?: string;
147
152
  openManagePartitioning?: string;
148
153
  applyManagePartitioning?: string;
@@ -1,7 +1,10 @@
1
1
  import type { UIFactory } from './types';
2
+ type ResolvedUIFactory = Omit<UIFactory, 'maxVDisksInStorageGroup'> & {
3
+ maxVDisksInStorageGroup: number;
4
+ };
2
5
  type UIFactoryOverrides<H extends string, T extends string> = Omit<Partial<UIFactory<H, T>>, 'healthcheck'> & {
3
6
  healthcheck?: Partial<UIFactory<H, T>['healthcheck']>;
4
7
  };
5
8
  export declare function configureUIFactory<H extends string, T extends string = string>(overrides: UIFactoryOverrides<H, T>): void;
6
- export declare const uiFactory: UIFactory<import("../containers/Tenant/Healthcheck/shared").CommonIssueCategory, string>;
9
+ export declare const uiFactory: ResolvedUIFactory;
7
10
  export {};
@@ -17,9 +17,10 @@ const uiFactoryBase = {
17
17
  enableMultiTabQueryEditor: false,
18
18
  hasDeveloperUi: true,
19
19
  isDetailedStorageViewAvailable: () => true,
20
+ maxVDisksInStorageGroup: 9,
20
21
  };
21
22
  export function configureUIFactory(overrides) {
22
- const { healthcheck, hasAccess, ...restOverrides } = overrides;
23
+ const { healthcheck, hasAccess, maxVDisksInStorageGroup, ...restOverrides } = overrides;
23
24
  Object.assign(uiFactoryBase, restOverrides);
24
25
  // Only override hasAccess when an actual function is provided.
25
26
  // Forwarding an optional config field could pass `undefined` here,
@@ -27,6 +28,12 @@ export function configureUIFactory(overrides) {
27
28
  if (typeof hasAccess === 'function') {
28
29
  uiFactoryBase.hasAccess = hasAccess;
29
30
  }
31
+ if (maxVDisksInStorageGroup !== undefined) {
32
+ if (!Number.isInteger(maxVDisksInStorageGroup) || maxVDisksInStorageGroup <= 0) {
33
+ throw new Error('UIFactory misconfiguration: `maxVDisksInStorageGroup` must be a positive integer.');
34
+ }
35
+ uiFactoryBase.maxVDisksInStorageGroup = maxVDisksInStorageGroup;
36
+ }
30
37
  if (healthcheck) {
31
38
  const merged = { ...uiFactoryBase.healthcheck, ...healthcheck };
32
39
  if (merged.issueCategories.some((c) => c.toLowerCase() === 'unknown')) {
@@ -1 +1 @@
1
- {"version":3,"file":"uiFactory.js","sourceRoot":"","sources":["../../src/uiFactory/uiFactory.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EACH,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,GAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACH,wBAAwB,IAAI,+BAA+B,EAC3D,iBAAiB,IAAI,wBAAwB,GAChD,MAAM,qBAAqB,CAAC;AAI7B,MAAM,aAAa,GAAc;IAC7B,iBAAiB,EAAE,wBAAwB;IAC3C,wBAAwB,EAAE,+BAA+B;IACzD,WAAW,EAAE;QACT,eAAe;QACf,qBAAqB;QACrB,wBAAwB;QACxB,wBAAwB;KAC3B;IACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,SAAS;IAC1B,IAAI,EAAE,SAAS;IACf,yBAAyB,EAAE,KAAK;IAChC,cAAc,EAAE,IAAI;IACpB,8BAA8B,EAAE,GAAG,EAAE,CAAC,IAAI;CAC7C,CAAC;AASF,MAAM,UAAU,kBAAkB,CAC9B,SAAmC;IAEnC,MAAM,EAAC,WAAW,EAAE,SAAS,EAAE,GAAG,aAAa,EAAC,GAAG,SAAS,CAAC;IAE7D,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE5C,+DAA+D;IAC/D,mEAAmE;IACnE,+EAA+E;IAC/E,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;QAClC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;IACxC,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,EAAC,GAAG,aAAa,CAAC,WAAW,EAAE,GAAG,WAAW,EAAC,CAAC;QAE9D,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACX,wIAAwI,CAC3I,CAAC;QACN,CAAC;QAED,IACI,CAAC,OAAO,CACJ,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,EACjC,MAAM,CAAC,wBAAwB,EAAE,CAAC,QAAQ,EAAE,CAC/C,EACH,CAAC;YACC,MAAM,IAAI,KAAK,CACX,2GAA2G,CAC9G,CAAC;QACN,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE;IAC9C,GAAG,EAAE,GAAG,EAAE;QACN,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1F,CAAC;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"uiFactory.js","sourceRoot":"","sources":["../../src/uiFactory/uiFactory.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EACH,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,GAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACH,wBAAwB,IAAI,+BAA+B,EAC3D,iBAAiB,IAAI,wBAAwB,GAChD,MAAM,qBAAqB,CAAC;AAQ7B,MAAM,aAAa,GAAsB;IACrC,iBAAiB,EAAE,wBAAwB;IAC3C,wBAAwB,EAAE,+BAA+B;IACzD,WAAW,EAAE;QACT,eAAe;QACf,qBAAqB;QACrB,wBAAwB;QACxB,wBAAwB;KAC3B;IACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,SAAS;IAC1B,IAAI,EAAE,SAAS;IACf,yBAAyB,EAAE,KAAK;IAChC,cAAc,EAAE,IAAI;IACpB,8BAA8B,EAAE,GAAG,EAAE,CAAC,IAAI;IAC1C,uBAAuB,EAAE,CAAC;CAC7B,CAAC;AASF,MAAM,UAAU,kBAAkB,CAC9B,SAAmC;IAEnC,MAAM,EAAC,WAAW,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,aAAa,EAAC,GAAG,SAAS,CAAC;IAEtF,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE5C,+DAA+D;IAC/D,mEAAmE;IACnE,+EAA+E;IAC/E,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;QAClC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;IACxC,CAAC;IACD,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,uBAAuB,IAAI,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,KAAK,CACX,mFAAmF,CACtF,CAAC;QACN,CAAC;QACD,aAAa,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;IACpE,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,EAAC,GAAG,aAAa,CAAC,WAAW,EAAE,GAAG,WAAW,EAAC,CAAC;QAE9D,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACX,wIAAwI,CAC3I,CAAC;QACN,CAAC;QAED,IACI,CAAC,OAAO,CACJ,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,EACjC,MAAM,CAAC,wBAAwB,EAAE,CAAC,QAAQ,EAAE,CAC/C,EACH,CAAC;YACC,MAAM,IAAI,KAAK,CACX,2GAA2G,CAC9G,CAAC;QACN,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE;IAC9C,GAAG,EAAE,GAAG,EAAE;QACN,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1F,CAAC;CACJ,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { LabelProps } from '@gravity-ui/uikit';
2
2
  import type { ECapacityAlert } from '../types/api/enums';
3
3
  import type { DataSeverity } from './disks/types';
4
+ export declare function normalizeCapacityAlert(value: unknown): string | undefined;
4
5
  export declare function getCapacityAlertSeverity(capacityAlert?: ECapacityAlert): DataSeverity;
5
6
  export declare function getCapacityAlertTheme(capacityAlert?: ECapacityAlert): LabelProps['theme'];
@@ -7,6 +7,9 @@ const SEVERITY_TO_THEME = {
7
7
  4: 'danger', // DATA_SEVERITY.ORANGE
8
8
  5: 'danger', // DATA_SEVERITY.RED
9
9
  };
10
+ export function normalizeCapacityAlert(value) {
11
+ return typeof value === 'string' && value.trim() ? value : undefined;
12
+ }
10
13
  export function getCapacityAlertSeverity(capacityAlert) {
11
14
  switch (capacityAlert) {
12
15
  case 'GREEN':
@@ -1 +1 @@
1
- {"version":3,"file":"capacityAlerts.js","sourceRoot":"","sources":["../../src/utils/capacityAlerts.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAGhD,MAAM,iBAAiB,GAA8C;IACjE,CAAC,EAAE,QAAQ,EAAE,qBAAqB;IAClC,CAAC,EAAE,SAAS,EAAE,sBAAsB;IACpC,CAAC,EAAE,MAAM,EAAE,qBAAqB;IAChC,CAAC,EAAE,SAAS,EAAE,uBAAuB;IACrC,CAAC,EAAE,QAAQ,EAAE,uBAAuB;IACpC,CAAC,EAAE,QAAQ,EAAE,oBAAoB;CACpC,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,aAA8B;IACnE,QAAQ,aAAa,EAAE,CAAC;QACpB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACP,OAAO,aAAa,CAAC,KAAK,CAAC;QAC/B,KAAK,cAAc;YACf,OAAO,aAAa,CAAC,MAAM,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,OAAO;YACR,OAAO,aAAa,CAAC,GAAG,CAAC;QAC7B;YACI,OAAO,aAAa,CAAC,IAAI,CAAC;IAClC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAA8B;IAChE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACzD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"capacityAlerts.js","sourceRoot":"","sources":["../../src/utils/capacityAlerts.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAGhD,MAAM,iBAAiB,GAA8C;IACjE,CAAC,EAAE,QAAQ,EAAE,qBAAqB;IAClC,CAAC,EAAE,SAAS,EAAE,sBAAsB;IACpC,CAAC,EAAE,MAAM,EAAE,qBAAqB;IAChC,CAAC,EAAE,SAAS,EAAE,uBAAuB;IACrC,CAAC,EAAE,QAAQ,EAAE,uBAAuB;IACpC,CAAC,EAAE,QAAQ,EAAE,oBAAoB;CACpC,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACjD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,aAA8B;IACnE,QAAQ,aAAa,EAAE,CAAC;QACpB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACP,OAAO,aAAa,CAAC,KAAK,CAAC;QAC/B,KAAK,cAAc;YACf,OAAO,aAAa,CAAC,MAAM,CAAC;QAChC,KAAK,QAAQ,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,OAAO;YACR,OAAO,aAAa,CAAC,GAAG,CAAC;QAC7B;YACI,OAAO,aAAa,CAAC,IAAI,CAAC;IAClC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,aAA8B;IAChE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACzD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Settings } from '@gravity-ui/react-data-table';
2
+ export { EMPTY_DATA_PLACEHOLDER } from './emptyDataPlaceholder';
2
3
  export declare const KILOBYTE = 1000;
3
4
  export declare const MEGABYTE = 1000000;
4
5
  export declare const GIGABYTE = 1000000000;
@@ -27,7 +28,6 @@ export declare const SECTION_IDS: {
27
28
  readonly ABOUT: "aboutSettingsSection";
28
29
  };
29
30
  export declare const TENANT_OVERVIEW_TABLES_LIMIT = 3;
30
- export declare const EMPTY_DATA_PLACEHOLDER = "\u2014";
31
31
  export declare const UNBREAKABLE_GAP = "\u00A0";
32
32
  export declare const QUERY_TECHNICAL_MARK = "/*UI-QUERY-EXCLUDE*/";
33
33
  export declare const DEVELOPER_UI_TITLE = "Developer UI";
@@ -1,5 +1,6 @@
1
1
  import DataTable from '@gravity-ui/react-data-table';
2
2
  import { EType } from '../types/api/tablet';
3
+ export { EMPTY_DATA_PLACEHOLDER } from './emptyDataPlaceholder';
3
4
  // by agreement, display all byte values in decimal scale
4
5
  // values in data are always in bytes, never in higher units,
5
6
  // therefore there is no issue arbitrary converting them in UI
@@ -55,7 +56,6 @@ export const SECTION_IDS = {
55
56
  ABOUT: 'aboutSettingsSection',
56
57
  };
57
58
  export const TENANT_OVERVIEW_TABLES_LIMIT = 3;
58
- export const EMPTY_DATA_PLACEHOLDER = '—';
59
59
  export const UNBREAKABLE_GAP = '\u00A0';
60
60
  export const QUERY_TECHNICAL_MARK = '/*UI-QUERY-EXCLUDE*/';
61
61
  // ==== Titles ====
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,13 @@ import type { DisplaySeverity, PreparedVDisk } from './types';
4
4
  export interface DiskDisplayState {
5
5
  severity: DisplaySeverity;
6
6
  icon: IconData | IconWithColor[] | string | undefined;
7
+ capacityAlertIndicator?: IconData | string;
8
+ frontQueuesIndicator?: IconData;
9
+ compactionIndicator?: IconWithColor[];
10
+ allModeHasIssues?: boolean;
7
11
  modeModifier: string | undefined;
8
12
  isLegendInactive?: boolean;
13
+ showNoDataPlaceholder?: boolean;
9
14
  }
10
15
  export type DiskDisplayStateGetter = (vDisk: PreparedVDisk, isDonor?: boolean) => DiskDisplayState;
11
16
  export declare function getDefaultDiskDisplayState(vDisk: PreparedVDisk): DiskDisplayState;
@@ -1 +1 @@
1
- {"version":3,"file":"displayState.js","sourceRoot":"","sources":["../../../src/utils/disks/displayState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAa1C,MAAM,UAAU,0BAA0B,CAAC,KAAoB;;IAC3D,OAAO;QACH,QAAQ,EAAE,CAAC,MAAA,KAAK,CAAC,QAAQ,mCAAI,aAAa,CAAC,IAAI,CAAoB;QACnE,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,SAAS;QACvB,gBAAgB,EAAE,KAAK;KAC1B,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"displayState.js","sourceRoot":"","sources":["../../../src/utils/disks/displayState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAkB1C,MAAM,UAAU,0BAA0B,CAAC,KAAoB;;IAC3D,OAAO;QACH,QAAQ,EAAE,CAAC,MAAA,KAAK,CAAC,QAAQ,mCAAI,aAAa,CAAC,IAAI,CAAoB;QACnE,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,SAAS;QACvB,gBAAgB,EAAE,KAAK;KAC1B,CAAC;AACN,CAAC"}
@@ -44,8 +44,6 @@ export declare function calculateFrontQueuesIcon(vDisk: PreparedVDisk, isDonor?:
44
44
  */
45
45
  export declare function calculateCompactionIcon(vDisk: PreparedVDisk, isDonor?: boolean): IconData | IconWithColor[] | undefined;
46
46
  /**
47
- * All mode - complex mode showing multiple indicators
48
- * For now, uses default icon logic
49
- * TODO: Implement advanced "All" mode icon logic
47
+ * Calculate the All mode icon using VDiskState semantics.
50
48
  */
51
49
  export declare function calculateAllIcon(vDisk: PreparedVDisk, isDonor?: boolean): IconData | undefined;