ydb-embedded-ui 22.0.0 → 22.2.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.
- package/dist/components/DiskStateProgressBar/AllModeCapacityAlertIndicator.d.ts +2 -1
- package/dist/components/DiskStateProgressBar/AllModeCapacityAlertIndicator.js +5 -2
- package/dist/components/DiskStateProgressBar/AllModeCapacityAlertIndicator.js.map +1 -1
- package/dist/components/DiskStateProgressBar/AllModeIndicators.d.ts +2 -1
- package/dist/components/DiskStateProgressBar/AllModeIndicators.js +7 -2
- package/dist/components/DiskStateProgressBar/AllModeIndicators.js.map +1 -1
- package/dist/components/DiskStateProgressBar/DiskIndicator.d.ts +7 -2
- package/dist/components/DiskStateProgressBar/DiskIndicator.js +10 -6
- package/dist/components/DiskStateProgressBar/DiskIndicator.js.map +1 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +1 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js.map +1 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +96 -46
- package/dist/components/DiskStateProgressBar/PDiskAllModeIndicators.js +9 -1
- package/dist/components/DiskStateProgressBar/PDiskAllModeIndicators.js.map +1 -1
- package/dist/components/EvictVDiskButton/EvictVDiskButton.js +7 -3
- package/dist/components/EvictVDiskButton/EvictVDiskButton.js.map +1 -1
- package/dist/components/FullNodeViewer/FullNodeViewer.js +40 -17
- package/dist/components/FullNodeViewer/FullNodeViewer.js.map +1 -1
- package/dist/components/FullNodeViewer/FullNodeViewer.scss +3 -3
- package/dist/components/FullNodeViewer/i18n/en.json +2 -1
- package/dist/components/FullNodeViewer/i18n/index.d.ts +1 -1
- package/dist/components/HoverPopup/HoverPopup.js +9 -2
- package/dist/components/HoverPopup/HoverPopup.js.map +1 -1
- package/dist/components/InfoViewer/InfoViewer.js +1 -1
- package/dist/components/InfoViewer/InfoViewer.js.map +1 -1
- package/dist/components/InfoViewer/formatters/pqGroup.js +6 -1
- package/dist/components/InfoViewer/formatters/pqGroup.js.map +1 -1
- package/dist/components/InfoViewer/schemaInfo/i18n/en.json +1 -0
- package/dist/components/InfoViewer/schemaInfo/i18n/index.d.ts +1 -1
- package/dist/components/InfoViewer/schemaInfo/utils.js +6 -1
- package/dist/components/InfoViewer/schemaInfo/utils.js.map +1 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.d.ts +4 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.js +13 -9
- package/dist/components/NodeHostWrapper/NodeHostWrapper.js.map +1 -1
- package/dist/components/PDiskInfo/PDiskInfo.js +2 -1
- package/dist/components/PDiskInfo/PDiskInfo.js.map +1 -1
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +5 -1
- package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
- package/dist/components/PaginatedTable/KeyboardNavigation.d.ts +9 -0
- package/dist/components/PaginatedTable/KeyboardNavigation.js +14 -0
- package/dist/components/PaginatedTable/KeyboardNavigation.js.map +1 -0
- package/dist/components/PaginatedTable/PaginatedTable.d.ts +4 -1
- package/dist/components/PaginatedTable/PaginatedTable.js +103 -18
- package/dist/components/PaginatedTable/PaginatedTable.js.map +1 -1
- package/dist/components/PaginatedTable/PaginatedTable.scss +10 -0
- package/dist/components/PaginatedTable/PaginatedTableContext.d.ts +2 -3
- package/dist/components/PaginatedTable/PaginatedTableContext.js +10 -11
- package/dist/components/PaginatedTable/PaginatedTableContext.js.map +1 -1
- package/dist/components/PaginatedTable/PaginatedTableWithLayout.d.ts +2 -1
- package/dist/components/PaginatedTable/PaginatedTableWithLayout.js +2 -2
- package/dist/components/PaginatedTable/PaginatedTableWithLayout.js.map +1 -1
- package/dist/components/PaginatedTable/ResizeablePaginatedTable.js +2 -1
- package/dist/components/PaginatedTable/ResizeablePaginatedTable.js.map +1 -1
- package/dist/components/PaginatedTable/TableChunk.d.ts +1 -1
- package/dist/components/PaginatedTable/TableChunk.js +8 -11
- package/dist/components/PaginatedTable/TableChunk.js.map +1 -1
- package/dist/components/PaginatedTable/TableChunksRenderer.d.ts +3 -2
- package/dist/components/PaginatedTable/TableChunksRenderer.js +6 -1
- package/dist/components/PaginatedTable/TableChunksRenderer.js.map +1 -1
- package/dist/components/PaginatedTable/TableRow.d.ts +3 -1
- package/dist/components/PaginatedTable/TableRow.js +24 -8
- package/dist/components/PaginatedTable/TableRow.js.map +1 -1
- package/dist/components/PaginatedTable/getTableChunkQueryParams.d.ts +23 -0
- package/dist/components/PaginatedTable/getTableChunkQueryParams.js +12 -0
- package/dist/components/PaginatedTable/getTableChunkQueryParams.js.map +1 -0
- package/dist/components/PaginatedTable/rowLookup.d.ts +8 -0
- package/dist/components/PaginatedTable/rowLookup.js +35 -0
- package/dist/components/PaginatedTable/rowLookup.js.map +1 -0
- package/dist/components/PaginatedTable/tableCounts.d.ts +19 -0
- package/dist/components/PaginatedTable/tableCounts.js +30 -0
- package/dist/components/PaginatedTable/tableCounts.js.map +1 -0
- package/dist/components/PaginatedTable/useKeyboardNavigation.d.ts +27 -0
- package/dist/components/PaginatedTable/useKeyboardNavigation.js +70 -0
- package/dist/components/PaginatedTable/useKeyboardNavigation.js.map +1 -0
- package/dist/components/ResizeableDataTable/DataTableKeyboardNavigation.d.ts +24 -0
- package/dist/components/ResizeableDataTable/DataTableKeyboardNavigation.js +144 -0
- package/dist/components/ResizeableDataTable/DataTableKeyboardNavigation.js.map +1 -0
- package/dist/components/ResizeableDataTable/ResizeableDataTable.d.ts +4 -1
- package/dist/components/ResizeableDataTable/ResizeableDataTable.js +28 -4
- package/dist/components/ResizeableDataTable/ResizeableDataTable.js.map +1 -1
- package/dist/components/ResizeableDataTable/ResizeableDataTable.scss +10 -0
- package/dist/components/ResizeableDataTable/getDataTableOrder.d.ts +2 -0
- package/dist/components/ResizeableDataTable/getDataTableOrder.js +12 -0
- package/dist/components/ResizeableDataTable/getDataTableOrder.js.map +1 -0
- package/dist/components/Search/Search.d.ts +2 -1
- package/dist/components/Search/Search.js +6 -2
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/ShardsTable/columns.js +6 -3
- package/dist/components/ShardsTable/columns.js.map +1 -1
- package/dist/components/ShardsTable/i18n/en.json +1 -0
- package/dist/components/ShardsTable/i18n/index.d.ts +1 -1
- package/dist/components/TableKeyboardNavigation/TableKeyboardNavigation.d.ts +54 -0
- package/dist/components/TableKeyboardNavigation/TableKeyboardNavigation.js +389 -0
- package/dist/components/TableKeyboardNavigation/TableKeyboardNavigation.js.map +1 -0
- package/dist/components/TableKeyboardNavigation/TableKeyboardNavigation.scss +16 -0
- package/dist/components/TableKeyboardNavigation/i18n/en.json +4 -0
- package/dist/components/TableKeyboardNavigation/i18n/index.d.ts +2 -0
- package/dist/components/TableKeyboardNavigation/i18n/index.js +4 -0
- package/dist/components/TableKeyboardNavigation/i18n/index.js.map +1 -0
- package/dist/components/TableKeyboardNavigation/utils.d.ts +3 -0
- package/dist/components/TableKeyboardNavigation/utils.js +24 -0
- package/dist/components/TableKeyboardNavigation/utils.js.map +1 -0
- package/dist/components/TableWithControlsLayout/TableWithControlsLayout.d.ts +4 -1
- package/dist/components/TableWithControlsLayout/TableWithControlsLayout.js +4 -2
- package/dist/components/TableWithControlsLayout/TableWithControlsLayout.js.map +1 -1
- package/dist/components/TenantNameWrapper/TenantNameWrapper.d.ts +3 -1
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js +8 -12
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js.map +1 -1
- package/dist/components/TenantNameWrapper/utils.d.ts +10 -0
- package/dist/components/TenantNameWrapper/utils.js +11 -0
- package/dist/components/TenantNameWrapper/utils.js.map +1 -1
- package/dist/components/UptimeViewer/UptimeViewer.d.ts +2 -2
- package/dist/components/VDisk/VDisk.d.ts +6 -1
- package/dist/components/VDisk/VDisk.js +97 -32
- package/dist/components/VDisk/VDisk.js.map +1 -1
- package/dist/components/VDisk/VDiskWithDonorsStack.d.ts +6 -2
- package/dist/components/VDisk/VDiskWithDonorsStack.js +9 -4
- package/dist/components/VDisk/VDiskWithDonorsStack.js.map +1 -1
- package/dist/components/VDisk/i18n/en.json +14 -1
- package/dist/components/VDisk/i18n/index.d.ts +1 -1
- package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/nodesColumns/columns.d.ts +4 -1
- package/dist/components/nodesColumns/columns.js +13 -0
- package/dist/components/nodesColumns/columns.js.map +1 -1
- package/dist/components/nodesColumns/constants.d.ts +2 -0
- package/dist/components/nodesColumns/constants.js +6 -0
- package/dist/components/nodesColumns/constants.js.map +1 -1
- package/dist/components/nodesColumns/i18n/en.json +2 -1
- package/dist/components/nodesColumns/i18n/index.d.ts +1 -1
- package/dist/containers/Clusters/Clusters.js +11 -7
- package/dist/containers/Clusters/Clusters.js.map +1 -1
- package/dist/containers/Node/NodeNetwork/NodeNetworkControls/NodeNetworkControls.js +1 -1
- package/dist/containers/Node/NodeNetwork/NodeNetworkControls/NodeNetworkControls.js.map +1 -1
- package/dist/containers/Node/NodeNetwork/NodeNetworkTable.js +11 -1
- package/dist/containers/Node/NodeNetwork/NodeNetworkTable.js.map +1 -1
- package/dist/containers/Node/Threads/ThreadStatesBar/ThreadStatesBar.d.ts +1 -1
- package/dist/containers/Nodes/NodesControls/NodesControls.js +1 -1
- package/dist/containers/Nodes/NodesControls/NodesControls.js.map +1 -1
- package/dist/containers/Nodes/NodesTable.js +12 -1
- package/dist/containers/Nodes/NodesTable.js.map +1 -1
- package/dist/containers/Nodes/PaginatedNodes/GroupedNodesComponent.js +1 -1
- package/dist/containers/Nodes/PaginatedNodes/GroupedNodesComponent.js.map +1 -1
- package/dist/containers/Nodes/columns/columns.js +2 -1
- package/dist/containers/Nodes/columns/columns.js.map +1 -1
- package/dist/containers/Storage/Disks/Disks.d.ts +2 -1
- package/dist/containers/Storage/Disks/Disks.js +32 -23
- package/dist/containers/Storage/Disks/Disks.js.map +1 -1
- package/dist/containers/Storage/Disks/Disks.scss +5 -0
- package/dist/containers/Storage/PDisk/PDisk.d.ts +6 -9
- package/dist/containers/Storage/PDisk/PDisk.js +99 -37
- package/dist/containers/Storage/PDisk/PDisk.js.map +1 -1
- package/dist/containers/Storage/PDisk/PDisk.scss +79 -1
- package/dist/containers/Storage/PDisk/PDiskWithVDisks.d.ts +17 -0
- package/dist/containers/Storage/PDisk/PDiskWithVDisks.js +48 -0
- package/dist/containers/Storage/PDisk/PDiskWithVDisks.js.map +1 -0
- package/dist/containers/Storage/PDisk/i18n/en.json +9 -0
- package/dist/containers/Storage/PDisk/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/PDisk/index.d.ts +1 -0
- package/dist/containers/Storage/PDisk/index.js +1 -0
- package/dist/containers/Storage/PDisk/index.js.map +1 -1
- package/dist/containers/Storage/PDisks/PDisks.d.ts +4 -1
- package/dist/containers/Storage/PDisks/PDisks.js +52 -6
- package/dist/containers/Storage/PDisks/PDisks.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorage.js +3 -1
- package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroups/GroupedStorageGroupsComponent.js +1 -1
- package/dist/containers/Storage/PaginatedStorageGroups/GroupedStorageGroupsComponent.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js +2 -2
- package/dist/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/PaginatedStorageGroupsTable.js +10 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/PaginatedStorageGroupsTable.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes/GroupedStorageNodesComponent.d.ts +1 -0
- package/dist/containers/Storage/PaginatedStorageNodes/GroupedStorageNodesComponent.js +8 -5
- package/dist/containers/Storage/PaginatedStorageNodes/GroupedStorageNodesComponent.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes/StorageNodesComponent.js +6 -3
- package/dist/containers/Storage/PaginatedStorageNodes/StorageNodesComponent.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes/StorageNodesControls.js +17 -5
- package/dist/containers/Storage/PaginatedStorageNodes/StorageNodesControls.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes/nodeExpertModeLayout.d.ts +16 -0
- package/dist/containers/Storage/PaginatedStorageNodes/nodeExpertModeLayout.js +68 -0
- package/dist/containers/Storage/PaginatedStorageNodes/nodeExpertModeLayout.js.map +1 -0
- package/dist/containers/Storage/PaginatedStorageNodesTable/PaginatedStorageNodesTable.d.ts +2 -1
- package/dist/containers/Storage/PaginatedStorageNodesTable/PaginatedStorageNodesTable.js +14 -2
- package/dist/containers/Storage/PaginatedStorageNodesTable/PaginatedStorageNodesTable.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/columns.js +2 -2
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/columns.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js +7 -2
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/hooks.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodesTable/columns/types.d.ts +2 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageGroupsExpertModePanel.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageGroupsExpertModePanel.js +33 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageGroupsExpertModePanel.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageNodesExpertModePanel.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageNodesExpertModePanel.js +31 -0
- package/dist/containers/Storage/StorageExpertModePanel/StorageNodesExpertModePanel.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/DriveTypeLegend.d.ts +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/DriveTypeLegend.js +7 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/DriveTypeLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/ExpertModePanelLayout.d.ts +21 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/ExpertModePanelLayout.js +13 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/ExpertModePanelLayout.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.js +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.js +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.js +3 -2
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.js +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js +4 -4
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.js +3 -3
- package/dist/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.d.ts +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/renderExpertModeLegend.d.ts +4 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/renderExpertModeLegend.js +54 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/renderExpertModeLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/constants.d.ts +23 -0
- package/dist/containers/Storage/StorageExpertModePanel/constants.js +23 -0
- package/dist/containers/Storage/StorageExpertModePanel/constants.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/i18n/en.json +6 -2
- package/dist/containers/Storage/StorageExpertModePanel/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/TableGroup/TableGroup.js +2 -1
- package/dist/containers/Storage/TableGroup/TableGroup.js.map +1 -1
- package/dist/containers/Storage/VDisks/VDisks.d.ts +2 -1
- package/dist/containers/Storage/VDisks/VDisks.js +11 -4
- package/dist/containers/Storage/VDisks/VDisks.js.map +1 -1
- package/dist/containers/Storage/VDisks/VDisks.scss +3 -0
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.d.ts +1 -0
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.js +80 -102
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.js.map +1 -1
- package/dist/containers/Storage/useStorageQueryParams.d.ts +13 -5
- package/dist/containers/Storage/useStorageQueryParams.js +50 -2
- package/dist/containers/Storage/useStorageQueryParams.js.map +1 -1
- package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.d.ts +1 -0
- package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js +59 -13
- package/dist/containers/Storage/useStorageVDiskDisplayStateGetter.js.map +1 -1
- package/dist/containers/Storage/utils/useStorageColumnsSettings.d.ts +4 -1
- package/dist/containers/Storage/utils/useStorageColumnsSettings.js +49 -39
- package/dist/containers/Storage/utils/useStorageColumnsSettings.js.map +1 -1
- package/dist/containers/Storage/utils/useVirtualizedDiskList.d.ts +10 -0
- package/dist/containers/Storage/utils/useVirtualizedDiskList.js +131 -0
- package/dist/containers/Storage/utils/useVirtualizedDiskList.js.map +1 -0
- package/dist/containers/Tablet/Tablet.js +4 -2
- package/dist/containers/Tablet/Tablet.js.map +1 -1
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js +3 -1
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js.map +1 -1
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js +9 -3
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js.map +1 -1
- package/dist/containers/Tablets/TabletsTable.js +25 -1
- package/dist/containers/Tablets/TabletsTable.js.map +1 -1
- package/dist/containers/Tablets/i18n/en.json +2 -1
- package/dist/containers/Tablets/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/AsyncReplicationPaths/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +2 -1
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/ResourcePoolInfo.d.ts +7 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/ResourcePoolInfo.js +69 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/ResourcePoolInfo.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/en.json +9 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/index.js +5 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/index.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/index.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/index.js +2 -0
- package/dist/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/index.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.js +3 -3
- package/dist/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.js +3 -2
- package/dist/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/columns/columns.d.ts +3 -3
- package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js +2 -1
- package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js.map +1 -1
- package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js +1 -1
- package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js.map +1 -1
- package/dist/containers/Tenants/TenantsTable.js +37 -6
- package/dist/containers/Tenants/TenantsTable.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +10 -2
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/services/api/tablets.d.ts +6 -4
- package/dist/services/api/tablets.js +9 -8
- package/dist/services/api/tablets.js.map +1 -1
- package/dist/store/reducers/capabilities/capabilities.d.ts +4 -4
- package/dist/store/reducers/capabilities/hooks.d.ts +1 -0
- package/dist/store/reducers/capabilities/hooks.js +8 -0
- package/dist/store/reducers/capabilities/hooks.js.map +1 -1
- package/dist/store/reducers/nodesList.d.ts +3 -261
- package/dist/store/reducers/nodesList.js +1 -1
- package/dist/store/reducers/nodesList.js.map +1 -1
- package/dist/store/reducers/settings/constants.d.ts +4 -0
- package/dist/store/reducers/settings/constants.js +4 -0
- package/dist/store/reducers/settings/constants.js.map +1 -1
- package/dist/store/reducers/storage/prepareGroupsDisks.d.ts +1 -0
- package/dist/store/reducers/storage/prepareGroupsDisks.js +17 -13
- package/dist/store/reducers/storage/prepareGroupsDisks.js.map +1 -1
- package/dist/store/reducers/storage/utils.js +11 -5
- package/dist/store/reducers/storage/utils.js.map +1 -1
- package/dist/store/reducers/table/table.js +6 -0
- package/dist/store/reducers/table/table.js.map +1 -1
- package/dist/store/reducers/tableData.d.ts +1 -1
- package/dist/store/reducers/tableData.js.map +1 -1
- package/dist/store/reducers/tablet.d.ts +3 -0
- package/dist/store/reducers/tablet.js +6 -6
- package/dist/store/reducers/tablet.js.map +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js.map +1 -1
- package/dist/store/reducers/topic/topic.js +7 -1
- package/dist/store/reducers/topic/topic.js.map +1 -1
- package/dist/types/api/capabilities.d.ts +2 -2
- package/dist/types/api/pdisk.d.ts +2 -0
- package/dist/types/api/pdisk.js.map +1 -1
- package/dist/types/api/schema/persQueueGroup.d.ts +2 -2
- package/dist/types/api/schema/schema.d.ts +15 -0
- package/dist/types/api/schema/schema.js.map +1 -1
- package/dist/types/api/schema/tableIndex.d.ts +1 -0
- package/dist/types/api/storage.d.ts +4 -0
- package/dist/types/api/storage.js.map +1 -1
- package/dist/types/api/vdisk.d.ts +2 -0
- package/dist/types/api/vdisk.js.map +1 -1
- package/dist/uiFactory/types.d.ts +6 -0
- package/dist/utils/developerUI/tabletDevUi.d.ts +1 -0
- package/dist/utils/developerUI/tabletDevUi.js +4 -0
- package/dist/utils/developerUI/tabletDevUi.js.map +1 -0
- package/dist/utils/disks/displayState.d.ts +5 -2
- package/dist/utils/disks/displayState.js.map +1 -1
- package/dist/utils/disks/driveType.d.ts +3 -0
- package/dist/utils/disks/driveType.js +27 -0
- package/dist/utils/disks/driveType.js.map +1 -0
- package/dist/utils/disks/getDiskBarTone.d.ts +4 -2
- package/dist/utils/disks/getDiskBarTone.js +8 -1
- package/dist/utils/disks/getDiskBarTone.js.map +1 -1
- package/dist/utils/disks/getPDiskType.d.ts +1 -0
- package/dist/utils/disks/getPDiskType.js +3 -0
- package/dist/utils/disks/getPDiskType.js.map +1 -1
- package/dist/utils/disks/groupBy.d.ts +1 -0
- package/dist/utils/disks/groupBy.js +1 -0
- package/dist/utils/disks/groupBy.js.map +1 -1
- package/dist/utils/disks/iconCalculators.d.ts +1 -1
- package/dist/utils/disks/iconCalculators.js +2 -2
- package/dist/utils/disks/iconCalculators.js.map +1 -1
- package/dist/utils/disks/pdiskState.js +2 -2
- package/dist/utils/disks/pdiskState.js.map +1 -1
- package/dist/utils/disks/prepareDisks.js +19 -9
- package/dist/utils/disks/prepareDisks.js.map +1 -1
- package/dist/utils/disks/types.d.ts +3 -2
- package/dist/utils/objectCreationMetrics.d.ts +5 -0
- package/dist/utils/objectCreationMetrics.js +38 -0
- package/dist/utils/objectCreationMetrics.js.map +1 -0
- package/dist/utils/query.d.ts +1 -0
- package/dist/utils/query.js +6 -0
- package/dist/utils/query.js.map +1 -1
- package/package.json +1 -1
- package/src/components/DiskStateProgressBar/AllModeCapacityAlertIndicator.tsx +15 -2
- package/src/components/DiskStateProgressBar/AllModeIndicators.tsx +30 -6
- package/src/components/DiskStateProgressBar/DiskIndicator.tsx +27 -8
- package/src/components/DiskStateProgressBar/DiskStateProgressBar.scss +96 -46
- package/src/components/DiskStateProgressBar/DiskStateProgressBar.tsx +1 -1
- package/src/components/DiskStateProgressBar/PDiskAllModeIndicators.tsx +16 -3
- package/src/components/EvictVDiskButton/EvictVDiskButton.tsx +10 -3
- package/src/components/FullNodeViewer/FullNodeViewer.scss +3 -3
- package/src/components/FullNodeViewer/FullNodeViewer.tsx +81 -34
- package/src/components/FullNodeViewer/i18n/en.json +2 -1
- package/src/components/HoverPopup/HoverPopup.tsx +21 -16
- package/src/components/InfoViewer/InfoViewer.tsx +4 -2
- package/src/components/InfoViewer/formatters/pqGroup.ts +6 -2
- package/src/components/InfoViewer/schemaInfo/i18n/en.json +1 -0
- package/src/components/InfoViewer/schemaInfo/utils.tsx +9 -0
- package/src/components/NodeHostWrapper/NodeHostWrapper.tsx +23 -13
- package/src/components/PDiskInfo/PDiskInfo.tsx +2 -1
- package/src/components/PDiskPopup/PDiskPopup.tsx +5 -1
- package/src/components/PaginatedTable/KeyboardNavigation.tsx +30 -0
- package/src/components/PaginatedTable/PaginatedTable.scss +10 -0
- package/src/components/PaginatedTable/PaginatedTable.tsx +154 -20
- package/src/components/PaginatedTable/PaginatedTableContext.tsx +14 -19
- package/src/components/PaginatedTable/PaginatedTableWithLayout.tsx +6 -1
- package/src/components/PaginatedTable/ResizeablePaginatedTable.tsx +6 -1
- package/src/components/PaginatedTable/TableChunk.tsx +9 -16
- package/src/components/PaginatedTable/TableChunksRenderer.tsx +13 -1
- package/src/components/PaginatedTable/TableRow.tsx +54 -20
- package/src/components/PaginatedTable/getTableChunkQueryParams.ts +25 -0
- package/src/components/PaginatedTable/rowLookup.ts +63 -0
- package/src/components/PaginatedTable/tableCounts.ts +50 -0
- package/src/components/PaginatedTable/useKeyboardNavigation.ts +115 -0
- package/src/components/ResizeableDataTable/DataTableKeyboardNavigation.tsx +194 -0
- package/src/components/ResizeableDataTable/ResizeableDataTable.scss +10 -0
- package/src/components/ResizeableDataTable/ResizeableDataTable.tsx +100 -5
- package/src/components/ResizeableDataTable/getDataTableOrder.ts +18 -0
- package/src/components/Search/Search.tsx +8 -1
- package/src/components/ShardsTable/columns.tsx +14 -5
- package/src/components/ShardsTable/i18n/en.json +1 -0
- package/src/components/TableKeyboardNavigation/TableKeyboardNavigation.scss +16 -0
- package/src/components/TableKeyboardNavigation/TableKeyboardNavigation.tsx +519 -0
- package/src/components/TableKeyboardNavigation/i18n/en.json +4 -0
- package/src/components/TableKeyboardNavigation/i18n/index.ts +5 -0
- package/src/components/TableKeyboardNavigation/utils.ts +36 -0
- package/src/components/TableWithControlsLayout/TableWithControlsLayout.tsx +26 -1
- package/src/components/TenantNameWrapper/TenantNameWrapper.tsx +14 -15
- package/src/components/TenantNameWrapper/utils.ts +26 -0
- package/src/components/VDisk/VDisk.tsx +141 -44
- package/src/components/VDisk/VDiskWithDonorsStack.tsx +23 -4
- package/src/components/VDisk/i18n/en.json +14 -1
- package/src/components/nodesColumns/columns.tsx +13 -1
- package/src/components/nodesColumns/constants.ts +6 -0
- package/src/components/nodesColumns/i18n/en.json +2 -1
- package/src/containers/Clusters/Clusters.tsx +47 -29
- package/src/containers/Node/NodeNetwork/NodeNetworkControls/NodeNetworkControls.tsx +1 -0
- package/src/containers/Node/NodeNetwork/NodeNetworkTable.tsx +17 -0
- package/src/containers/Nodes/NodesControls/NodesControls.tsx +1 -0
- package/src/containers/Nodes/NodesTable.tsx +17 -1
- package/src/containers/Nodes/PaginatedNodes/GroupedNodesComponent.tsx +1 -0
- package/src/containers/Nodes/columns/columns.tsx +2 -0
- package/src/containers/Storage/Disks/Disks.scss +5 -0
- package/src/containers/Storage/Disks/Disks.tsx +157 -95
- package/src/containers/Storage/PDisk/PDisk.scss +79 -1
- package/src/containers/Storage/PDisk/PDisk.tsx +166 -81
- package/src/containers/Storage/PDisk/PDiskWithVDisks.tsx +181 -0
- package/src/containers/Storage/PDisk/i18n/en.json +9 -0
- package/src/containers/Storage/PDisk/index.ts +1 -0
- package/src/containers/Storage/PDisks/PDisks.tsx +157 -22
- package/src/containers/Storage/PaginatedStorage.tsx +4 -0
- package/src/containers/Storage/PaginatedStorageGroups/GroupedStorageGroupsComponent.tsx +1 -0
- package/src/containers/Storage/PaginatedStorageGroups/StorageGroupsControls.tsx +3 -2
- package/src/containers/Storage/PaginatedStorageGroupsTable/PaginatedStorageGroupsTable.tsx +13 -0
- package/src/containers/Storage/PaginatedStorageNodes/GroupedStorageNodesComponent.tsx +10 -2
- package/src/containers/Storage/PaginatedStorageNodes/StorageNodesComponent.tsx +6 -2
- package/src/containers/Storage/PaginatedStorageNodes/StorageNodesControls.tsx +76 -41
- package/src/containers/Storage/PaginatedStorageNodes/nodeExpertModeLayout.ts +103 -0
- package/src/containers/Storage/PaginatedStorageNodesTable/PaginatedStorageNodesTable.tsx +24 -1
- package/src/containers/Storage/PaginatedStorageNodesTable/columns/columns.tsx +3 -1
- package/src/containers/Storage/PaginatedStorageNodesTable/columns/hooks.ts +8 -1
- package/src/containers/Storage/PaginatedStorageNodesTable/columns/types.ts +2 -0
- package/src/containers/Storage/StorageExpertModePanel/StorageGroupsExpertModePanel.tsx +65 -0
- package/src/containers/Storage/StorageExpertModePanel/StorageNodesExpertModePanel.tsx +67 -0
- package/src/containers/Storage/StorageExpertModePanel/components/DriveTypeLegend.tsx +22 -0
- package/src/containers/Storage/StorageExpertModePanel/components/ExpertModePanelLayout.tsx +63 -0
- package/src/containers/Storage/StorageExpertModePanel/components/FrontQueuesLegend.tsx +1 -0
- package/src/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.tsx +1 -0
- package/src/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.tsx +3 -2
- package/src/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.tsx +1 -0
- package/src/containers/Storage/StorageExpertModePanel/components/SpaceLegend.tsx +3 -0
- package/src/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.tsx +7 -9
- package/src/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.ts +1 -1
- package/src/containers/Storage/StorageExpertModePanel/components/renderExpertModeLegend.tsx +63 -0
- package/src/containers/Storage/StorageExpertModePanel/constants.ts +27 -0
- package/src/containers/Storage/StorageExpertModePanel/i18n/en.json +6 -2
- package/src/containers/Storage/TableGroup/TableGroup.tsx +6 -1
- package/src/containers/Storage/VDisks/VDisks.scss +3 -0
- package/src/containers/Storage/VDisks/VDisks.tsx +29 -7
- package/src/containers/Storage/useStoragePDiskDisplayStateGetter.ts +102 -135
- package/src/containers/Storage/useStorageQueryParams.ts +120 -1
- package/src/containers/Storage/useStorageVDiskDisplayStateGetter.ts +75 -10
- package/src/containers/Storage/utils/useStorageColumnsSettings.ts +77 -49
- package/src/containers/Storage/utils/useVirtualizedDiskList.ts +156 -0
- package/src/containers/Tablet/Tablet.tsx +4 -2
- package/src/containers/Tablet/components/TabletControls/TabletControls.tsx +7 -3
- package/src/containers/Tablet/components/TabletInfo/TabletInfo.tsx +13 -3
- package/src/containers/Tablets/TabletsTable.tsx +50 -10
- package/src/containers/Tablets/i18n/en.json +2 -1
- package/src/containers/Tenant/Diagnostics/Overview/Overview.tsx +2 -1
- package/src/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/ResourcePoolInfo.tsx +106 -0
- package/src/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/en.json +9 -0
- package/src/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/i18n/index.ts +7 -0
- package/src/containers/Tenant/Diagnostics/Overview/ResourcePoolInfo/index.ts +1 -0
- package/src/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.ts +3 -3
- package/src/containers/Tenant/Diagnostics/TopQueries/QueriesTableWithDrawer.tsx +6 -0
- package/src/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.tsx +4 -0
- package/src/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.tsx +7 -1
- package/src/containers/Tenant/Diagnostics/TopShards/TopShards.tsx +1 -1
- package/src/containers/Tenant/Query/QueriesHistory/QueriesHistory.tsx +5 -0
- package/src/containers/Tenant/Query/SavedQueries/SavedQueries.tsx +6 -0
- package/src/containers/Tenants/TenantsTable.tsx +70 -12
- package/src/containers/VDiskPage/VDiskPage.tsx +10 -2
- package/src/services/api/tablets.ts +16 -7
- package/src/store/reducers/capabilities/hooks.ts +9 -0
- package/src/store/reducers/nodesList.ts +2 -3
- package/src/store/reducers/settings/constants.ts +4 -0
- package/src/store/reducers/storage/prepareGroupsDisks.ts +16 -11
- package/src/store/reducers/storage/utils.ts +12 -5
- package/src/store/reducers/table/table.ts +6 -0
- package/src/store/reducers/tableData.ts +1 -1
- package/src/store/reducers/tablet.ts +25 -6
- package/src/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.ts +1 -1
- package/src/store/reducers/topic/topic.ts +7 -1
- package/src/types/api/capabilities.ts +2 -2
- package/src/types/api/pdisk.ts +2 -0
- package/src/types/api/schema/persQueueGroup.ts +2 -2
- package/src/types/api/schema/schema.ts +18 -0
- package/src/types/api/schema/tableIndex.ts +1 -0
- package/src/types/api/storage.ts +4 -0
- package/src/types/api/vdisk.ts +2 -0
- package/src/uiFactory/types.ts +6 -0
- package/src/utils/developerUI/tabletDevUi.ts +3 -0
- package/src/utils/disks/displayState.ts +5 -1
- package/src/utils/disks/driveType.ts +30 -0
- package/src/utils/disks/getDiskBarTone.ts +15 -1
- package/src/utils/disks/getPDiskType.ts +4 -0
- package/src/utils/disks/groupBy.ts +1 -0
- package/src/utils/disks/iconCalculators.ts +2 -2
- package/src/utils/disks/pdiskState.ts +2 -2
- package/src/utils/disks/prepareDisks.ts +25 -9
- package/src/utils/disks/types.ts +3 -2
- package/src/utils/objectCreationMetrics.ts +47 -0
- package/src/utils/query.ts +7 -0
- package/dist/containers/Storage/PDisk/PDiskVDisks.d.ts +0 -13
- package/dist/containers/Storage/PDisk/PDiskVDisks.js +0 -20
- package/dist/containers/Storage/PDisk/PDiskVDisks.js.map +0 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.d.ts +0 -6
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js +0 -66
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js.map +0 -1
- package/src/containers/Storage/PDisk/PDiskVDisks.tsx +0 -65
- package/src/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.tsx +0 -151
|
@@ -199,6 +199,15 @@ export const useAnalyzeOperationAvailable = () => {
|
|
|
199
199
|
return operationListVersion >= 2 && Boolean(analyzeLongRunningOperationEnabled);
|
|
200
200
|
};
|
|
201
201
|
|
|
202
|
+
export const useTabletDevUiSecurePath = () => {
|
|
203
|
+
const database = useDatabaseFromQuery();
|
|
204
|
+
|
|
205
|
+
return useTypedSelector((state) => {
|
|
206
|
+
const {data, isError} = selectDatabaseCapabilities(state, database);
|
|
207
|
+
return !isError && data?.Settings?.Features?.EnableTabletDevUiSecurePath === true;
|
|
208
|
+
});
|
|
209
|
+
};
|
|
210
|
+
|
|
202
211
|
export const useGraphShardExists = () => {
|
|
203
212
|
const database = useDatabaseFromQuery();
|
|
204
213
|
|
|
@@ -27,7 +27,6 @@ const createGetNodesListSelector = createSelector(
|
|
|
27
27
|
);
|
|
28
28
|
|
|
29
29
|
export const selectNodesMap = createSelector(
|
|
30
|
-
(state: RootState) => state,
|
|
31
|
-
|
|
32
|
-
(state, selectNodesList) => prepareNodesMap(selectNodesList(state).data),
|
|
30
|
+
(state: RootState, database?: string) => createGetNodesListSelector(database)(state).data,
|
|
31
|
+
prepareNodesMap,
|
|
33
32
|
);
|
|
@@ -45,6 +45,8 @@ export const SETTING_KEYS = {
|
|
|
45
45
|
STORAGE_EXPERT_MODE: 'storageExpertMode',
|
|
46
46
|
STORAGE_VDISKS_GROUP_BY: 'storageVDisksGroupBy',
|
|
47
47
|
STORAGE_PDISKS_GROUP_BY: 'storagePDisksGroupBy',
|
|
48
|
+
STORAGE_NODES_VDISKS_GROUP_BY: 'storageNodesVDisksGroupBy',
|
|
49
|
+
STORAGE_NODES_PDISKS_GROUP_BY: 'storageNodesPDisksGroupBy',
|
|
48
50
|
} as const;
|
|
49
51
|
|
|
50
52
|
export type SettingKey = ValueOf<typeof SETTING_KEYS>;
|
|
@@ -87,6 +89,8 @@ export const DEFAULT_USER_SETTINGS = {
|
|
|
87
89
|
[SETTING_KEYS.STORAGE_EXPERT_MODE]: false,
|
|
88
90
|
[SETTING_KEYS.STORAGE_VDISKS_GROUP_BY]: 'State',
|
|
89
91
|
[SETTING_KEYS.STORAGE_PDISKS_GROUP_BY]: 'State',
|
|
92
|
+
[SETTING_KEYS.STORAGE_NODES_VDISKS_GROUP_BY]: 'State',
|
|
93
|
+
[SETTING_KEYS.STORAGE_NODES_PDISKS_GROUP_BY]: 'State',
|
|
90
94
|
} as const satisfies Record<SettingKey, unknown>;
|
|
91
95
|
|
|
92
96
|
export const SETTINGS_OPTIONS: Record<string, SettingOptions | undefined> = {
|
|
@@ -9,6 +9,7 @@ import type {PDiskType, PreparedVDisk} from '../../../utils/disks/types';
|
|
|
9
9
|
import {parseOptionalNonNegativeNumber} from '../../../utils/utils';
|
|
10
10
|
|
|
11
11
|
export function prepareGroupsVDisk(data: TStorageVDisk = {}): PreparedVDisk {
|
|
12
|
+
const hasWhiteboardData = data.HasWhiteboardData ?? Boolean(data.Whiteboard);
|
|
12
13
|
const {Whiteboard: whiteboardVDisk = {}, PDisk, ...bscVDisk} = data;
|
|
13
14
|
|
|
14
15
|
const mergedVDiskData = {
|
|
@@ -36,13 +37,14 @@ export function prepareGroupsVDisk(data: TStorageVDisk = {}): PreparedVDisk {
|
|
|
36
37
|
const whiteboardSlotSize = parseOptionalNonNegativeNumber(
|
|
37
38
|
PDisk?.Whiteboard?.EnforcedDynamicSlotSize,
|
|
38
39
|
);
|
|
39
|
-
const whiteboardSizeFields =
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
40
|
+
const whiteboardSizeFields =
|
|
41
|
+
hasWhiteboardData && data.Whiteboard
|
|
42
|
+
? prepareVDiskSizeFields({
|
|
43
|
+
AvailableSize: whiteboardAvailableSize,
|
|
44
|
+
AllocatedSize: whiteboardAllocatedSize,
|
|
45
|
+
SlotSize: whiteboardSlotSize,
|
|
46
|
+
})
|
|
47
|
+
: undefined;
|
|
46
48
|
const WhiteboardSize = whiteboardSizeFields
|
|
47
49
|
? {
|
|
48
50
|
AllocatedSize:
|
|
@@ -72,6 +74,7 @@ export function prepareGroupsVDisk(data: TStorageVDisk = {}): PreparedVDisk {
|
|
|
72
74
|
return {
|
|
73
75
|
...mergedVDiskData,
|
|
74
76
|
...vDiskSizeFields,
|
|
77
|
+
HasWhiteboardData: hasWhiteboardData,
|
|
75
78
|
...(WhiteboardSize ? {WhiteboardSize} : {}),
|
|
76
79
|
PDisk: preparedPDisk,
|
|
77
80
|
Donors: preparedDonors,
|
|
@@ -82,6 +85,7 @@ export function prepareGroupsVDisk(data: TStorageVDisk = {}): PreparedVDisk {
|
|
|
82
85
|
}
|
|
83
86
|
|
|
84
87
|
export function prepareGroupsPDisk(data: TStoragePDisk & {NodeId?: number} = {}) {
|
|
88
|
+
const hasWhiteboardData = data.HasWhiteboardData ?? Boolean(data.Whiteboard);
|
|
85
89
|
const {Whiteboard: whiteboardPDisk, Status: DriveStatus, ...bscPDisk} = data;
|
|
86
90
|
|
|
87
91
|
const mergedPDiskData = {
|
|
@@ -109,12 +113,12 @@ export function prepareGroupsPDisk(data: TStoragePDisk & {NodeId?: number} = {})
|
|
|
109
113
|
const whiteboardAvailableSize = parseOptionalNonNegativeNumber(whiteboardPDisk?.AvailableSize);
|
|
110
114
|
const whiteboardTotalSize = parseOptionalNonNegativeNumber(whiteboardPDisk?.TotalSize);
|
|
111
115
|
const whiteboardSizeFields =
|
|
112
|
-
|
|
113
|
-
?
|
|
114
|
-
: preparePDiskSizeFields({
|
|
116
|
+
hasWhiteboardData && whiteboardPDisk
|
|
117
|
+
? preparePDiskSizeFields({
|
|
115
118
|
AvailableSize: whiteboardAvailableSize,
|
|
116
119
|
TotalSize: whiteboardTotalSize,
|
|
117
|
-
})
|
|
120
|
+
})
|
|
121
|
+
: undefined;
|
|
118
122
|
const WhiteboardSize = whiteboardSizeFields
|
|
119
123
|
? {
|
|
120
124
|
AllocatedSize:
|
|
@@ -138,6 +142,7 @@ export function prepareGroupsPDisk(data: TStoragePDisk & {NodeId?: number} = {})
|
|
|
138
142
|
|
|
139
143
|
return {
|
|
140
144
|
...mergedPDiskData,
|
|
145
|
+
HasWhiteboardData: hasWhiteboardData,
|
|
141
146
|
StringifiedId,
|
|
142
147
|
AllocatedPercent,
|
|
143
148
|
AllocatedSize,
|
|
@@ -76,14 +76,21 @@ const prepareStorageNodeData = (
|
|
|
76
76
|
}).length || 0;
|
|
77
77
|
|
|
78
78
|
const pDisks = PDisks?.map((pDisk) => {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
79
|
+
// Older viewers have no marker; identity and sizes can also come from BSC.
|
|
80
|
+
const hasWhiteboardData =
|
|
81
|
+
pDisk.HasWhiteboardData ??
|
|
82
|
+
(pDisk.State !== undefined ||
|
|
83
|
+
pDisk.StateFlag !== undefined ||
|
|
84
|
+
pDisk.Overall !== undefined ||
|
|
85
|
+
pDisk.CreateTime !== undefined ||
|
|
86
|
+
pDisk.ChangeTime !== undefined ||
|
|
87
|
+
pDisk.Device !== undefined ||
|
|
88
|
+
pDisk.Realtime !== undefined);
|
|
89
|
+
return prepareWhiteboardPDiskData({...pDisk, NodeId}, hasWhiteboardData ? pDisk : null);
|
|
83
90
|
});
|
|
84
91
|
const vDisks = VDisks?.map((vDisk) => {
|
|
85
92
|
return {
|
|
86
|
-
...prepareWhiteboardVDiskData(vDisk),
|
|
93
|
+
...prepareWhiteboardVDiskData({...vDisk, VDiskId: vDisk.VDiskId}),
|
|
87
94
|
NodeId,
|
|
88
95
|
};
|
|
89
96
|
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type {SchemaPathParam} from '../../../types/api/common';
|
|
2
2
|
import type {TEvDescribeSchemeResult} from '../../../types/api/schema/schema';
|
|
3
|
+
import {reachObjectCreationGoal} from '../../../utils/objectCreationMetrics';
|
|
3
4
|
import {isQueryErrorResponse, parseQueryAPIResponse} from '../../../utils/query';
|
|
4
5
|
import {api} from '../api';
|
|
5
6
|
|
|
@@ -42,6 +43,8 @@ export const tableApi = api.injectEndpoints({
|
|
|
42
43
|
database: string;
|
|
43
44
|
formValues: TableFormValues;
|
|
44
45
|
}) => {
|
|
46
|
+
const objectType = formValues.type === 'row' ? 'row_table' : 'column_table';
|
|
47
|
+
reachObjectCreationGoal('createObject', objectType);
|
|
45
48
|
try {
|
|
46
49
|
const {
|
|
47
50
|
type,
|
|
@@ -79,12 +82,15 @@ export const tableApi = api.injectEndpoints({
|
|
|
79
82
|
});
|
|
80
83
|
|
|
81
84
|
if (isQueryErrorResponse(response)) {
|
|
85
|
+
reachObjectCreationGoal('createObjectError', objectType, response);
|
|
82
86
|
return {error: response};
|
|
83
87
|
}
|
|
84
88
|
|
|
85
89
|
const data = parseQueryAPIResponse(response);
|
|
90
|
+
reachObjectCreationGoal('createObjectSuccess', objectType);
|
|
86
91
|
return {data};
|
|
87
92
|
} catch (error) {
|
|
93
|
+
reachObjectCreationGoal('createObjectError', objectType, error);
|
|
88
94
|
return {error};
|
|
89
95
|
}
|
|
90
96
|
},
|
|
@@ -16,7 +16,7 @@ interface PaginatedTableParams<T, F> {
|
|
|
16
16
|
noBatching?: boolean;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
function endpoints<T, F>(build: EndpointBuilder<BaseQueryFn, string,
|
|
19
|
+
function endpoints<T, F>(build: EndpointBuilder<BaseQueryFn, string, typeof api.reducerPath>) {
|
|
20
20
|
return {
|
|
21
21
|
fetchTableChunk: build.query<PaginatedTableData<T>, PaginatedTableParams<T, F>>({
|
|
22
22
|
queryFn: async (
|
|
@@ -120,10 +120,13 @@ export const tabletApi = api.injectEndpoints({
|
|
|
120
120
|
},
|
|
121
121
|
}),
|
|
122
122
|
getAdvancedTableInfo: build.query({
|
|
123
|
-
queryFn: async (
|
|
123
|
+
queryFn: async (
|
|
124
|
+
{id, hiveId, useSecurePath}: {id: string; hiveId: string; useSecurePath?: boolean},
|
|
125
|
+
{signal},
|
|
126
|
+
) => {
|
|
124
127
|
try {
|
|
125
128
|
const tabletResponseData = await window.api.tablets.getTabletFromHive(
|
|
126
|
-
{id, hiveId},
|
|
129
|
+
{id, hiveId, useSecurePath},
|
|
127
130
|
{signal},
|
|
128
131
|
);
|
|
129
132
|
|
|
@@ -153,9 +156,17 @@ export const tabletApi = api.injectEndpoints({
|
|
|
153
156
|
},
|
|
154
157
|
}),
|
|
155
158
|
stopTablet: build.mutation({
|
|
156
|
-
queryFn: async ({
|
|
159
|
+
queryFn: async ({
|
|
160
|
+
id,
|
|
161
|
+
hiveId,
|
|
162
|
+
useSecurePath,
|
|
163
|
+
}: {
|
|
164
|
+
id: string;
|
|
165
|
+
hiveId: string;
|
|
166
|
+
useSecurePath?: boolean;
|
|
167
|
+
}) => {
|
|
157
168
|
try {
|
|
158
|
-
const data = await window.api.tablets.stopTablet(id, hiveId);
|
|
169
|
+
const data = await window.api.tablets.stopTablet(id, hiveId, useSecurePath);
|
|
159
170
|
return {data};
|
|
160
171
|
} catch (error) {
|
|
161
172
|
return {error};
|
|
@@ -169,9 +180,17 @@ export const tabletApi = api.injectEndpoints({
|
|
|
169
180
|
},
|
|
170
181
|
}),
|
|
171
182
|
resumeTablet: build.mutation({
|
|
172
|
-
queryFn: async ({
|
|
183
|
+
queryFn: async ({
|
|
184
|
+
id,
|
|
185
|
+
hiveId,
|
|
186
|
+
useSecurePath,
|
|
187
|
+
}: {
|
|
188
|
+
id: string;
|
|
189
|
+
hiveId: string;
|
|
190
|
+
useSecurePath?: boolean;
|
|
191
|
+
}) => {
|
|
173
192
|
try {
|
|
174
|
-
const data = await window.api.tablets.resumeTablet(id, hiveId);
|
|
193
|
+
const data = await window.api.tablets.resumeTablet(id, hiveId, useSecurePath);
|
|
175
194
|
return {data};
|
|
176
195
|
} catch (error) {
|
|
177
196
|
return {error};
|
|
@@ -7,7 +7,7 @@ function createShardQuery(path: string, databaseFullPath: string) {
|
|
|
7
7
|
return createPartitionStatsQuery({
|
|
8
8
|
databaseFullPath,
|
|
9
9
|
path,
|
|
10
|
-
selectFields: ['Path', 'TabletId', 'CPUCores'],
|
|
10
|
+
selectFields: ['Path', 'TabletId', 'CPUCores', 'FollowerId'],
|
|
11
11
|
sortOrder: [{columnId: 'CPUCores', order: -1}],
|
|
12
12
|
limit: TENANT_OVERVIEW_TABLES_LIMIT,
|
|
13
13
|
});
|
|
@@ -4,6 +4,7 @@ import {createSelector} from '@reduxjs/toolkit';
|
|
|
4
4
|
import type {IProtobufTimeObject} from '../../../types/api/common';
|
|
5
5
|
import type {TopicDataRequest} from '../../../types/api/topic';
|
|
6
6
|
import {convertBytesObjectToSpeed} from '../../../utils/bytesParsers';
|
|
7
|
+
import {reachObjectCreationGoal} from '../../../utils/objectCreationMetrics';
|
|
7
8
|
import {isQueryErrorResponse, parseQueryAPIResponse} from '../../../utils/query';
|
|
8
9
|
import {parseLag, parseTimestampToIdleTime} from '../../../utils/timeParsers';
|
|
9
10
|
import type {RootState} from '../../defaultStore';
|
|
@@ -82,6 +83,7 @@ export const topicApi = api.injectEndpoints({
|
|
|
82
83
|
database: string;
|
|
83
84
|
formData: TopicFormValues;
|
|
84
85
|
}) => {
|
|
86
|
+
reachObjectCreationGoal('createObject', 'topic');
|
|
85
87
|
try {
|
|
86
88
|
const query = buildCreateTopicQuery(formData);
|
|
87
89
|
|
|
@@ -92,11 +94,15 @@ export const topicApi = api.injectEndpoints({
|
|
|
92
94
|
});
|
|
93
95
|
|
|
94
96
|
if (isQueryErrorResponse(response)) {
|
|
97
|
+
reachObjectCreationGoal('createObjectError', 'topic', response);
|
|
95
98
|
return {error: response};
|
|
96
99
|
}
|
|
97
100
|
|
|
98
|
-
|
|
101
|
+
const data = parseQueryAPIResponse(response);
|
|
102
|
+
reachObjectCreationGoal('createObjectSuccess', 'topic');
|
|
103
|
+
return {data};
|
|
99
104
|
} catch (error) {
|
|
105
|
+
reachObjectCreationGoal('createObjectError', 'topic', error);
|
|
100
106
|
return {error};
|
|
101
107
|
}
|
|
102
108
|
},
|
|
@@ -5,7 +5,7 @@ export interface CapabilitiesResponse {
|
|
|
5
5
|
Capabilities: Record<Partial<Capability>, number>;
|
|
6
6
|
Settings?: {
|
|
7
7
|
Security?: Record<Partial<SecuritySetting>, boolean>;
|
|
8
|
-
Features?: Record<
|
|
8
|
+
Features?: Partial<Record<FeatureSetting, boolean>>;
|
|
9
9
|
Database?: {
|
|
10
10
|
GraphShardExists?: boolean;
|
|
11
11
|
};
|
|
@@ -34,7 +34,7 @@ export type Capability =
|
|
|
34
34
|
|
|
35
35
|
export type SecuritySetting = 'UseLoginProvider' | 'DomainLoginOnly';
|
|
36
36
|
|
|
37
|
-
export type FeatureSetting = 'EnableAnalyzeLongRunningOperation';
|
|
37
|
+
export type FeatureSetting = 'EnableAnalyzeLongRunningOperation' | 'EnableTabletDevUiSecurePath';
|
|
38
38
|
|
|
39
39
|
export interface MetaCapabilitiesResponse {
|
|
40
40
|
Capabilities: Record<Partial<MetaCapability>, number>;
|
package/src/types/api/pdisk.ts
CHANGED
|
@@ -17,6 +17,8 @@ export interface TEvPDiskStateResponse {
|
|
|
17
17
|
* source: https://github.com/ydb-platform/ydb/blob/main/ydb/core/protos/node_whiteboard.proto
|
|
18
18
|
*/
|
|
19
19
|
export interface TPDiskStateInfo {
|
|
20
|
+
/** Whether viewer received Whiteboard data for this disk. */
|
|
21
|
+
HasWhiteboardData?: boolean;
|
|
20
22
|
PDiskId?: number;
|
|
21
23
|
/** uint64 */
|
|
22
24
|
CreateTime?: string;
|
|
@@ -8,7 +8,7 @@ export interface TPersQueueGroupDescription {
|
|
|
8
8
|
PartitionsToDelete?: number[];
|
|
9
9
|
NextPartitionId?: number;
|
|
10
10
|
PartitionPerTablet?: number;
|
|
11
|
-
PQTabletConfig
|
|
11
|
+
PQTabletConfig?: TPQTabletConfig;
|
|
12
12
|
Partitions?: TPartition[];
|
|
13
13
|
/** uint64 */
|
|
14
14
|
AlterVersion?: string;
|
|
@@ -23,7 +23,7 @@ export interface TPersQueueGroupDescription {
|
|
|
23
23
|
export interface TPQTabletConfig {
|
|
24
24
|
/** uint64 */
|
|
25
25
|
CacheSize?: string;
|
|
26
|
-
PartitionConfig
|
|
26
|
+
PartitionConfig?: TPQPartitionConfig;
|
|
27
27
|
/** @deprecated use Partitions */
|
|
28
28
|
PartitionIds?: number[];
|
|
29
29
|
TopicName?: string;
|
|
@@ -6,6 +6,7 @@ import type {TExternalDataSourceDescription} from './externalDataSource';
|
|
|
6
6
|
import type {TExternalTableDescription} from './externalTable';
|
|
7
7
|
import type {TPersQueueGroupDescription} from './persQueueGroup';
|
|
8
8
|
import type {TReplicationDescription} from './replication';
|
|
9
|
+
import type {TPathID} from './shared';
|
|
9
10
|
import type {TSysViewDescription} from './sysView';
|
|
10
11
|
import type {TTableDescription, TTableStats} from './table';
|
|
11
12
|
import type {TIndexDescription} from './tableIndex';
|
|
@@ -90,6 +91,9 @@ export interface TPathDescription {
|
|
|
90
91
|
SysViewDescription?: TSysViewDescription;
|
|
91
92
|
|
|
92
93
|
ReplicationDescription?: TReplicationDescription;
|
|
94
|
+
|
|
95
|
+
// for resource pool
|
|
96
|
+
ResourcePoolDescription?: TResourcePoolDescription;
|
|
93
97
|
}
|
|
94
98
|
|
|
95
99
|
export interface TDirEntry {
|
|
@@ -349,3 +353,17 @@ interface TUserAttribute {
|
|
|
349
353
|
Key?: string;
|
|
350
354
|
Value?: string;
|
|
351
355
|
}
|
|
356
|
+
|
|
357
|
+
/**
|
|
358
|
+
* source: https://github.com/ydb-platform/ydb/blob/main/ydb/core/protos/flat_scheme_op.proto
|
|
359
|
+
*
|
|
360
|
+
* TResourcePoolDescription from flat_scheme_op.proto
|
|
361
|
+
*/
|
|
362
|
+
export interface TResourcePoolDescription {
|
|
363
|
+
Name?: string;
|
|
364
|
+
PathId?: TPathID;
|
|
365
|
+
Version?: string;
|
|
366
|
+
Properties?: {
|
|
367
|
+
Properties?: Record<string, string>;
|
|
368
|
+
};
|
|
369
|
+
}
|
package/src/types/api/storage.ts
CHANGED
|
@@ -106,6 +106,8 @@ export interface TGroupsStorageGroupInfo {
|
|
|
106
106
|
* VDisk data from storage/groups handler
|
|
107
107
|
*/
|
|
108
108
|
export interface TStorageVDisk {
|
|
109
|
+
/** Whether viewer received Whiteboard data for this disk. */
|
|
110
|
+
HasWhiteboardData?: boolean;
|
|
109
111
|
VDiskId?: string;
|
|
110
112
|
NodeId?: number;
|
|
111
113
|
/** uint64 */
|
|
@@ -123,6 +125,8 @@ export interface TStorageVDisk {
|
|
|
123
125
|
* PDisk data from storage/groups handler
|
|
124
126
|
*/
|
|
125
127
|
export interface TStoragePDisk {
|
|
128
|
+
/** Whether viewer received Whiteboard data for this disk. */
|
|
129
|
+
HasWhiteboardData?: boolean;
|
|
126
130
|
PDiskId?: string;
|
|
127
131
|
Path?: string;
|
|
128
132
|
Type?: 'hdd' | 'ssd' | 'nvme';
|
package/src/types/api/vdisk.ts
CHANGED
|
@@ -6,6 +6,8 @@ import type {TPDiskStateInfo} from './pdisk';
|
|
|
6
6
|
* source: https://github.com/ydb-platform/ydb/blob/main/ydb/core/protos/node_whiteboard.proto
|
|
7
7
|
*/
|
|
8
8
|
export interface TVDiskStateInfo {
|
|
9
|
+
/** Whether viewer received Whiteboard data for this disk. */
|
|
10
|
+
HasWhiteboardData?: boolean;
|
|
9
11
|
VDiskId?: TVDiskID;
|
|
10
12
|
/** uint64 */
|
|
11
13
|
CreateTime?: string;
|
package/src/uiFactory/types.ts
CHANGED
|
@@ -216,6 +216,12 @@ export type RenderHealthcheckAssistantAction = (
|
|
|
216
216
|
) => React.ReactNode;
|
|
217
217
|
|
|
218
218
|
export interface UiMetricaGoals {
|
|
219
|
+
/** Creation attempt after form validation. Params: objectType (row_table, column_table, topic). */
|
|
220
|
+
createObject?: string;
|
|
221
|
+
/** Successful creation response. Params: objectType. */
|
|
222
|
+
createObjectSuccess?: string;
|
|
223
|
+
/** Failed creation. Params: objectType, errorType (ydb, http, network, timeout, cancelled, unknown), httpStatus (HTTP errors only). */
|
|
224
|
+
createObjectError?: string;
|
|
219
225
|
runQuery?: string;
|
|
220
226
|
explainAnalyzeQuery?: string;
|
|
221
227
|
stopQuery?: string;
|
|
@@ -2,13 +2,14 @@ import type {IconData} from '@gravity-ui/uikit';
|
|
|
2
2
|
|
|
3
3
|
import {DATA_SEVERITY, DISK_COLOR_STATE_TO_NUMERIC_SEVERITY} from './constants';
|
|
4
4
|
import type {IconWithColor} from './iconCalculators';
|
|
5
|
-
import type {DisplaySeverity, PreparedPDisk, PreparedVDisk} from './types';
|
|
5
|
+
import type {DisplaySeverity, PDiskType, PreparedPDisk, PreparedVDisk} from './types';
|
|
6
6
|
|
|
7
7
|
export type DiskDisplayMode =
|
|
8
8
|
| 'state'
|
|
9
9
|
| 'space'
|
|
10
10
|
| 'frontQueues'
|
|
11
11
|
| 'compaction'
|
|
12
|
+
| 'driveType'
|
|
12
13
|
| 'all'
|
|
13
14
|
| 'drive'
|
|
14
15
|
| 'decommit'
|
|
@@ -42,11 +43,14 @@ export interface PDiskAllModeDisplayState {
|
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
export interface BaseDiskDisplayState {
|
|
46
|
+
driveType?: PDiskType;
|
|
45
47
|
severity: DisplaySeverity;
|
|
46
48
|
icon: DiskIndicatorValue | undefined;
|
|
47
49
|
mode: DiskDisplayMode | undefined;
|
|
48
50
|
isLegendInactive?: boolean;
|
|
51
|
+
borderless?: boolean;
|
|
49
52
|
showNoDataPlaceholder?: boolean;
|
|
53
|
+
isNoData?: boolean;
|
|
50
54
|
}
|
|
51
55
|
|
|
52
56
|
export interface VDiskDisplayState extends BaseDiskDisplayState {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {CircleQuestionFill} from '@gravity-ui/icons';
|
|
2
|
+
|
|
3
|
+
import {NOT_AVAILABLE_SEVERITY} from './constants';
|
|
4
|
+
import type {BaseDiskDisplayState} from './displayState';
|
|
5
|
+
import {formatPDiskType} from './getPDiskType';
|
|
6
|
+
import type {PDiskType, PreparedPDisk} from './types';
|
|
7
|
+
|
|
8
|
+
export function getDriveTypeDisplayState(pDisk: PreparedPDisk = {}): BaseDiskDisplayState {
|
|
9
|
+
const hasWhiteboardData = pDisk.HasWhiteboardData ?? pDisk.WhiteboardSize !== undefined;
|
|
10
|
+
const isNoData = !hasWhiteboardData;
|
|
11
|
+
let driveType: PDiskType | undefined;
|
|
12
|
+
if (hasWhiteboardData) {
|
|
13
|
+
switch (pDisk.Type) {
|
|
14
|
+
case 'SSD':
|
|
15
|
+
case 'HDD':
|
|
16
|
+
case 'NVME':
|
|
17
|
+
driveType = pDisk.Type;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
return {
|
|
22
|
+
mode: 'driveType',
|
|
23
|
+
driveType,
|
|
24
|
+
severity: NOT_AVAILABLE_SEVERITY,
|
|
25
|
+
icon: isNoData ? undefined : (formatPDiskType(driveType) ?? CircleQuestionFill),
|
|
26
|
+
isNoData,
|
|
27
|
+
borderless: true,
|
|
28
|
+
showNoDataPlaceholder: isNoData,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import {CircleQuestionFill} from '@gravity-ui/icons';
|
|
2
2
|
|
|
3
|
+
import {EFlag} from '../../types/api/enums';
|
|
4
|
+
|
|
3
5
|
import {DONOR_COLOR, NOT_AVAILABLE_SEVERITY} from './constants';
|
|
4
6
|
import type {DiskIndicatorValue} from './displayState';
|
|
5
7
|
import {getDisplaySeverityColor} from './helpers';
|
|
6
|
-
import type {DiskBarTone} from './types';
|
|
8
|
+
import type {DiskBarTone, PDiskType} from './types';
|
|
7
9
|
|
|
8
10
|
interface GetDiskBarToneParams {
|
|
11
|
+
driveType?: PDiskType;
|
|
9
12
|
severity?: number;
|
|
10
13
|
isDonor?: boolean;
|
|
11
14
|
showIndicator?: boolean;
|
|
12
15
|
indicator?: DiskIndicatorValue;
|
|
16
|
+
isNoData?: boolean;
|
|
13
17
|
}
|
|
14
18
|
|
|
15
19
|
function hasMissingDataIndicator(indicator: DiskIndicatorValue | undefined) {
|
|
@@ -21,15 +25,25 @@ function hasMissingDataIndicator(indicator: DiskIndicatorValue | undefined) {
|
|
|
21
25
|
}
|
|
22
26
|
|
|
23
27
|
export function getDiskBarTone({
|
|
28
|
+
driveType,
|
|
24
29
|
severity,
|
|
25
30
|
isDonor,
|
|
26
31
|
showIndicator,
|
|
27
32
|
indicator,
|
|
33
|
+
isNoData,
|
|
28
34
|
}: GetDiskBarToneParams): DiskBarTone {
|
|
35
|
+
if (driveType) {
|
|
36
|
+
return driveType;
|
|
37
|
+
}
|
|
38
|
+
|
|
29
39
|
if (isDonor) {
|
|
30
40
|
return DONOR_COLOR;
|
|
31
41
|
}
|
|
32
42
|
|
|
43
|
+
if (isNoData) {
|
|
44
|
+
return EFlag.Grey;
|
|
45
|
+
}
|
|
46
|
+
|
|
33
47
|
if (
|
|
34
48
|
showIndicator &&
|
|
35
49
|
severity === NOT_AVAILABLE_SEVERITY &&
|
|
@@ -32,6 +32,10 @@ export const PDISK_TYPES = {
|
|
|
32
32
|
MVME: 'NVME',
|
|
33
33
|
} as const;
|
|
34
34
|
|
|
35
|
+
export function formatPDiskType(type?: string) {
|
|
36
|
+
return type === 'NVME' ? 'NVMe' : type;
|
|
37
|
+
}
|
|
38
|
+
|
|
35
39
|
// Bear with me.
|
|
36
40
|
// Disk type is determined by the field Category.
|
|
37
41
|
// Category is a bit field defined as follows:
|
|
@@ -165,7 +165,7 @@ function getFlagIconWithColor(flag: EFlag | undefined): IconWithColor | undefine
|
|
|
165
165
|
if (!flag || flag === EFlag.Grey) {
|
|
166
166
|
return {
|
|
167
167
|
icon: CircleQuestionFill,
|
|
168
|
-
color: '
|
|
168
|
+
color: 'var(--g-color-text-hint)',
|
|
169
169
|
};
|
|
170
170
|
}
|
|
171
171
|
|
|
@@ -230,7 +230,7 @@ export function calculateFlagPairIcon(
|
|
|
230
230
|
* - Yellow: TriangleExclamationFill (text-warning)
|
|
231
231
|
* - Orange: CircleExclamationFill (text-danger)
|
|
232
232
|
* - Red: CircleXmarkFill (text-primary)
|
|
233
|
-
* - Missing: CircleQuestionFill (
|
|
233
|
+
* - Missing: CircleQuestionFill (text-hint)
|
|
234
234
|
*/
|
|
235
235
|
export function calculateCompactionIcon(
|
|
236
236
|
vDisk: PreparedVDisk,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ArrowUpFromLine,
|
|
3
3
|
Ban,
|
|
4
|
-
CircleExclamation,
|
|
5
4
|
CircleExclamationFill,
|
|
6
5
|
CircleQuestionFill,
|
|
7
6
|
CircleStopFill,
|
|
@@ -11,6 +10,7 @@ import {
|
|
|
11
10
|
ClockFill,
|
|
12
11
|
HourglassStart,
|
|
13
12
|
TrashBin,
|
|
13
|
+
TriangleExclamation,
|
|
14
14
|
Wrench,
|
|
15
15
|
Xmark,
|
|
16
16
|
} from '@gravity-ui/icons';
|
|
@@ -128,7 +128,7 @@ const PDISK_DRIVE_DISPLAY_STATE: Record<EDriveStatus, PDiskStateDisplayState> =
|
|
|
128
128
|
},
|
|
129
129
|
FAULTY: {
|
|
130
130
|
severity: DISK_COLOR_STATE_TO_NUMERIC_SEVERITY.Red,
|
|
131
|
-
icon:
|
|
131
|
+
icon: TriangleExclamation,
|
|
132
132
|
},
|
|
133
133
|
BROKEN: {
|
|
134
134
|
severity: DISK_COLOR_STATE_TO_NUMERIC_SEVERITY.Red,
|