ydb-embedded-ui 5.2.0 → 5.3.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/BasicNodeViewer/BasicNodeViewer.js +1 -1
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.d.ts +13 -0
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.js +32 -0
- package/dist/components/CellWithPopover/CellWithPopover.js +1 -11
- package/dist/components/ClipboardButton/ClipboardButton.js +1 -11
- package/dist/components/ComponentsProvider/ComponentsProvider.d.ts +2 -2
- package/dist/components/ComponentsProvider/componentsRegistry.d.ts +1 -1
- package/dist/components/ComponentsProvider/registry.d.ts +3 -3
- package/dist/components/ContentWithPopup/ContentWithPopup.js +1 -11
- package/dist/components/CriticalActionDialog/CriticalActionDialog.d.ts +6 -4
- package/dist/components/CriticalActionDialog/CriticalActionDialog.js +32 -7
- package/dist/components/CriticalActionDialog/CriticalActionDialog.scss +8 -19
- package/dist/components/CriticalActionDialog/i18n/en.json +7 -0
- package/dist/components/CriticalActionDialog/i18n/index.d.ts +1 -0
- package/dist/components/CriticalActionDialog/i18n/index.js +4 -0
- package/dist/components/EnableFullscreenButton/EnableFullscreenButton.js +2 -2
- package/dist/components/EntityStatus/EntityStatus.d.ts +20 -37
- package/dist/components/EntityStatus/EntityStatus.js +17 -66
- package/dist/components/EntityStatus/EntityStatus.scss +1 -57
- package/dist/components/Errors/403/AccessDenied.js +1 -11
- package/dist/components/FormattedBytes/FormattedBytes.d.ts +1 -1
- package/dist/components/FormattedBytes/FormattedBytes.js +1 -11
- package/dist/components/FormattedBytes/utils.d.ts +1 -1
- package/dist/components/FullNodeViewer/FullNodeViewer.js +1 -2
- package/dist/components/Fullscreen/Fullscreen.js +11 -11
- package/dist/components/Illustration/Illustration.js +1 -11
- package/dist/components/InfoViewer/InfoViewer.d.ts +2 -2
- package/dist/components/InfoViewer/InfoViewer.js +1 -1
- package/dist/components/InfoViewer/formatters/cdcStream.d.ts +1 -1
- package/dist/components/InfoViewer/formatters/common.d.ts +1 -1
- package/dist/components/InfoViewer/formatters/pqGroup.d.ts +3 -3
- package/dist/components/InfoViewer/formatters/schema.d.ts +1 -1
- package/dist/components/InfoViewer/formatters/table.d.ts +4 -4
- package/dist/components/InfoViewer/utils.d.ts +3 -3
- package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.d.ts +7 -0
- package/dist/components/InfoViewerSkeleton/InfoViewerSkeleton.js +7 -0
- package/dist/{containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.scss → components/InfoViewerSkeleton/InfoViewerSkeleton.scss} +1 -9
- package/dist/components/InternalLink/InternalLink.js +1 -11
- package/dist/components/LinkToSchemaObject/LinkToSchemaObject.js +1 -11
- package/dist/components/LinkWithIcon/LinkWithIcon.d.ts +8 -0
- package/dist/components/LinkWithIcon/LinkWithIcon.js +14 -0
- package/dist/components/{ExternalLinkWithIcon/ExternalLinkWithIcon.scss → LinkWithIcon/LinkWithIcon.scss} +1 -1
- package/dist/components/MetricChart/MetricChart.d.ts +2 -1
- package/dist/components/MetricChart/MetricChart.js +8 -3
- package/dist/components/MetricChart/getChartData.d.ts +2 -1
- package/dist/components/MetricChart/getChartData.js +2 -2
- package/dist/components/MetricChart/getDefaultDataFormatter.d.ts +1 -1
- package/dist/components/MetricChart/i18n/en.json +3 -0
- package/dist/components/MetricChart/i18n/index.d.ts +2 -0
- package/dist/components/MetricChart/i18n/index.js +4 -0
- package/dist/components/MetricChart/reducer.d.ts +1 -1
- package/dist/components/MetricChart/types.d.ts +5 -5
- package/dist/components/NodeHostWrapper/NodeHostWrapper.js +1 -1
- package/dist/components/PDiskInfo/PDiskInfo.d.ts +11 -0
- package/dist/components/PDiskInfo/PDiskInfo.js +71 -0
- package/dist/components/PDiskInfo/PDiskInfo.scss +8 -0
- package/dist/components/PDiskInfo/i18n/en.json +14 -0
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -0
- package/dist/components/PDiskInfo/i18n/index.js +4 -0
- package/dist/components/PageMeta/PageMeta.d.ts +8 -0
- package/dist/components/PageMeta/PageMeta.js +7 -0
- package/dist/components/PageMeta/PageMeta.scss +10 -0
- package/dist/components/ProgressViewer/ProgressViewer.d.ts +1 -1
- package/dist/components/QueryResultTable/Cell/Cell.js +2 -2
- package/dist/components/QueryResultTable/QueryResultTable.js +1 -11
- package/dist/components/ShortyString/ShortyString.d.ts +1 -1
- package/dist/components/StatusIcon/StatusIcon.d.ts +12 -0
- package/dist/components/StatusIcon/StatusIcon.js +23 -0
- package/dist/components/StatusIcon/StatusIcon.scss +69 -0
- package/dist/components/Tablet/Tablet.scss +1 -1
- package/dist/components/TabletsOverall/TabletsOverall.js +6 -6
- package/dist/components/TabletsStatistic/TabletsStatistic.d.ts +1 -1
- package/dist/components/TabletsStatistic/TabletsStatistic.scss +1 -1
- package/dist/components/Tag/Tag.d.ts +1 -1
- package/dist/components/UsageLabel/UsageLabel.js +1 -11
- package/dist/components/VirtualTable/TableHead.js +2 -2
- package/dist/components/VirtualTable/reducer.d.ts +2 -2
- package/dist/components/VirtualTable/types.d.ts +13 -13
- package/dist/components/slots/types.d.ts +1 -1
- package/dist/containers/App/App.d.ts +1 -1
- package/dist/containers/App/Content.js +10 -4
- package/dist/containers/App/Providers.d.ts +1 -1
- package/dist/containers/App/appSlots.d.ts +6 -0
- package/dist/containers/App/appSlots.js +1 -0
- package/dist/containers/AppWithClusters/AppWithClusters.d.ts +1 -1
- package/dist/containers/AppWithClusters/AppWithClusters.js +1 -1
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +2 -3
- package/dist/containers/Authentication/Authentication.js +2 -5
- package/dist/containers/Cluster/Cluster.js +4 -5
- package/dist/containers/Cluster/Cluster.scss +3 -0
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +4 -4
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +4 -0
- package/dist/containers/Cluster/ClusterInfo/utils.d.ts +1 -1
- package/dist/containers/Cluster/utils.d.ts +2 -2
- package/dist/containers/Clusters/Clusters.js +2 -4
- package/dist/containers/Clusters/Clusters.scss +1 -1
- package/dist/containers/Clusters/constants.d.ts +1 -1
- package/dist/containers/Clusters/useClustersList.js +2 -2
- package/dist/containers/Clusters/useSelectedColumns.d.ts +1 -1
- package/dist/containers/Header/Header.js +4 -5
- package/dist/containers/Header/breadcrumbs.js +28 -5
- package/dist/containers/Header/i18n/en.json +7 -0
- package/dist/containers/Header/i18n/index.d.ts +1 -0
- package/dist/containers/Header/i18n/index.js +4 -0
- package/dist/containers/Heatmap/Heatmap.js +3 -4
- package/dist/containers/Heatmap/HeatmapCanvas/HeatmapCanvas.js +1 -1
- package/dist/containers/Node/Node.js +2 -3
- package/dist/containers/Node/NodeStructure/NodeStructure.d.ts +0 -1
- package/dist/containers/Node/NodeStructure/NodeStructure.js +2 -6
- package/dist/containers/Node/NodeStructure/Pdisk.js +9 -65
- package/dist/containers/Node/NodeStructure/Vdisk.d.ts +1 -1
- package/dist/containers/Node/NodeStructure/Vdisk.js +5 -3
- package/dist/containers/Nodes/Nodes.js +2 -3
- package/dist/containers/Nodes/NodesWrapper.js +1 -11
- package/dist/containers/Nodes/getNodes.js +1 -11
- package/dist/containers/Nodes/getNodesColumns.d.ts +1 -1
- package/dist/containers/PDisk/PDisk.d.ts +3 -0
- package/dist/containers/PDisk/PDisk.js +68 -0
- package/dist/containers/PDisk/PDisk.scss +41 -0
- package/dist/containers/PDisk/PDiskGroups.d.ts +10 -0
- package/dist/containers/PDisk/PDiskGroups.js +20 -0
- package/dist/containers/PDisk/i18n/en.json +6 -0
- package/dist/containers/PDisk/i18n/index.d.ts +1 -0
- package/dist/containers/PDisk/i18n/index.js +4 -0
- package/dist/containers/PDisk/shared.d.ts +10 -0
- package/dist/containers/PDisk/shared.js +2 -0
- package/dist/containers/ReduxTooltip/ReduxTooltip.d.ts +1 -1
- package/dist/containers/ReduxTooltip/ReduxTooltip.js +3 -2
- package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.d.ts +1 -9
- package/dist/containers/Storage/DiskStateProgressBar/DiskStateProgressBar.js +2 -12
- package/dist/containers/Storage/PDisk/PDisk.d.ts +3 -3
- package/dist/containers/Storage/PDisk/PDisk.js +6 -53
- package/dist/containers/Storage/PDiskPopup/PDiskPopup.d.ts +3 -3
- package/dist/containers/Storage/PDiskPopup/PDiskPopup.js +3 -14
- package/dist/containers/Storage/Storage.js +2 -3
- package/dist/containers/Storage/StorageGroups/getGroups.js +1 -11
- package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.d.ts +2 -1
- package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.js +22 -8
- package/dist/containers/Storage/StorageNodes/getNodes.js +1 -11
- package/dist/containers/Storage/StorageNodes/getStorageNodesColumns.js +1 -1
- package/dist/containers/Storage/StorageWrapper.js +1 -11
- package/dist/containers/Storage/UsageFilter/UsageFilter.js +1 -1
- package/dist/containers/Storage/VDisk/VDisk.d.ts +2 -3
- package/dist/containers/Storage/VDisk/VDisk.js +4 -64
- package/dist/containers/Storage/VDiskPopup/VDiskPopup.js +2 -12
- package/dist/containers/Storage/VirtualStorage.js +2 -3
- package/dist/containers/Storage/utils/index.d.ts +1 -3
- package/dist/containers/Storage/utils/index.js +0 -6
- package/dist/containers/Tablet/Tablet.js +4 -5
- package/dist/containers/Tablet/TabletControls/TabletControls.d.ts +3 -2
- package/dist/containers/Tablet/TabletControls/TabletControls.js +2 -49
- package/dist/containers/Tablet/TabletTable/TabletTable.js +1 -1
- package/dist/containers/Tablets/Tablets.js +2 -3
- package/dist/containers/TabletsFilters/TabletsFilters.d.ts +2 -2
- package/dist/containers/Tenant/Acl/Acl.js +2 -3
- package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +2 -3
- package/dist/containers/Tenant/Diagnostics/Describe/Describe.js +3 -3
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +6 -4
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.js +2 -3
- package/dist/containers/Tenant/Diagnostics/Network/Network.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.js +7 -5
- package/dist/containers/Tenant/Diagnostics/Network/NodeNetwork/NodeNetwork.scss +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +9 -5
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/prepareTableInfo.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/utils/prepareTopicSchemaInfo.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +2 -3
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.d.ts +5 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/DefaultOverviewContent/DefaultOverviewContent.js +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +0 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +3 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.js +3 -12
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTreeItem/IssueTreeItem.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TenantCpu.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantDashboard/TenantDashboard.js +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TenantMemory.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +6 -7
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js +1 -11
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TenantStorage.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js +2 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/useHealthcheck.js +3 -4
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js +2 -5
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +2 -3
- package/dist/containers/Tenant/Info/ExternalDataSource/ExternalDataSource.js +1 -1
- package/dist/containers/Tenant/Info/ExternalTable/ExternalTable.js +3 -3
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.d.ts +1 -0
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +3 -2
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +2 -3
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js +2 -3
- package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.js +3 -3
- package/dist/containers/Tenant/Query/Issues/models.d.ts +1 -1
- package/dist/containers/Tenant/Query/Preview/Preview.js +2 -3
- package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js +2 -3
- package/dist/containers/Tenant/Query/Query.js +2 -3
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +8 -12
- package/dist/containers/Tenant/Query/QueryEditor/helpers.d.ts +4 -0
- package/dist/containers/Tenant/Query/QueryEditor/helpers.js +17 -0
- package/dist/containers/Tenant/Query/SaveQuery/SaveQuery.js +4 -4
- package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.js +2 -2
- package/dist/containers/Tenant/Query/i18n/en.json +5 -1
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/i18n/index.js +2 -5
- package/dist/containers/Tenant/Schema/SchemaTree/SchemaTree.js +5 -3
- package/dist/containers/Tenant/Tenant.js +24 -8
- package/dist/containers/Tenant/utils/index.d.ts +1 -1
- package/dist/containers/Tenant/utils/schema.d.ts +12 -12
- package/dist/containers/Tenant/utils/schemaActions.d.ts +1 -1
- package/dist/containers/Tenants/Tenants.js +3 -4
- package/dist/containers/UserSettings/Setting.d.ts +1 -1
- package/dist/containers/UserSettings/i18n/en.json +4 -0
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +4 -1
- package/dist/containers/UserSettings/settings.js +21 -6
- package/dist/containers/Versions/NodesTable/NodesTable.js +1 -1
- package/dist/containers/Versions/Versions.js +2 -3
- package/dist/reportWebVitals.d.ts +1 -1
- package/dist/routes.d.ts +5 -2
- package/dist/routes.js +6 -1
- package/dist/services/api.d.ts +8 -7
- package/dist/services/api.js +3 -13
- package/dist/services/settings.d.ts +1 -1
- package/dist/services/settings.js +2 -1
- package/dist/store/configureStore.d.ts +310 -0
- package/dist/store/configureStore.js +56 -0
- package/dist/store/defaultStore.d.ts +168 -0
- package/dist/store/defaultStore.js +2 -0
- package/dist/store/getUrlData.d.ts +3 -3
- package/dist/store/getUrlData.js +4 -4
- package/dist/store/index.d.ts +3 -97
- package/dist/store/index.js +2 -49
- package/dist/store/reducers/authentication/authentication.d.ts +247 -4
- package/dist/store/reducers/authentication/types.d.ts +1 -1
- package/dist/store/reducers/cluster/cluster.d.ts +83 -2
- package/dist/store/reducers/cluster/types.d.ts +3 -3
- package/dist/store/reducers/clusterNodes/clusterNodes.d.ts +83 -2
- package/dist/store/reducers/clusterNodes/types.d.ts +1 -1
- package/dist/store/reducers/clusters/clusters.d.ts +83 -2
- package/dist/store/reducers/clusters/selectors.d.ts +20 -6
- package/dist/store/reducers/clusters/selectors.js +1 -1
- package/dist/store/reducers/clusters/types.d.ts +1 -1
- package/dist/store/reducers/describe.d.ts +165 -3
- package/dist/store/reducers/describe.js +4 -3
- package/dist/store/reducers/executeQuery.d.ts +83 -2
- package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +3 -3
- package/dist/store/reducers/executeTopQueries/types.d.ts +1 -1
- package/dist/store/reducers/explainQuery.d.ts +165 -3
- package/dist/store/reducers/header/header.d.ts +1 -1
- package/dist/store/reducers/header/types.d.ts +7 -4
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +101 -0
- package/dist/store/reducers/{healthcheckInfo.js → healthcheckInfo/healthcheckInfo.js} +2 -2
- package/dist/store/reducers/healthcheckInfo/types.d.ts +19 -0
- package/dist/store/reducers/healthcheckInfo/utils.d.ts +3 -0
- package/dist/store/reducers/healthcheckInfo/utils.js +11 -0
- package/dist/store/reducers/heatmap.d.ts +83 -2
- package/dist/store/reducers/heatmap.js +2 -2
- package/dist/store/reducers/host.d.ts +83 -2
- package/dist/store/reducers/hotKeys/hotKeys.d.ts +1 -1
- package/dist/store/reducers/hotKeys/types.d.ts +1 -1
- package/dist/store/reducers/index.d.ts +95 -45
- package/dist/store/reducers/index.js +4 -2
- package/dist/store/reducers/network/network.d.ts +83 -2
- package/dist/store/reducers/network/types.d.ts +1 -1
- package/dist/store/reducers/node/node.d.ts +165 -3
- package/dist/store/reducers/node/selectors.d.ts +1 -1
- package/dist/store/reducers/node/selectors.js +5 -4
- package/dist/store/reducers/node/types.d.ts +8 -10
- package/dist/store/reducers/node/utils.js +3 -2
- package/dist/store/reducers/nodes/nodes.d.ts +165 -3
- package/dist/store/reducers/nodes/nodes.js +1 -11
- package/dist/store/reducers/nodes/selectors.d.ts +1 -1
- package/dist/store/reducers/nodes/selectors.js +1 -1
- package/dist/store/reducers/nodes/types.d.ts +4 -3
- package/dist/store/reducers/nodes/utils.d.ts +1 -1
- package/dist/store/reducers/nodes/utils.js +3 -2
- package/dist/store/reducers/nodesList.d.ts +83 -2
- package/dist/store/reducers/olapStats.d.ts +83 -2
- package/dist/store/reducers/overview/overview.d.ts +166 -4
- package/dist/store/reducers/overview/overview.js +3 -3
- package/dist/store/reducers/overview/types.d.ts +6 -5
- package/dist/store/reducers/partitions/partitions.d.ts +83 -2
- package/dist/store/reducers/partitions/types.d.ts +1 -1
- package/dist/store/reducers/partitions/utils.d.ts +2 -2
- package/dist/store/reducers/pdisk/pdisk.d.ts +210 -0
- package/dist/store/reducers/pdisk/pdisk.js +64 -0
- package/dist/store/reducers/pdisk/types.d.ts +23 -0
- package/dist/store/reducers/pdisk/types.js +1 -0
- package/dist/store/reducers/pdisk/utils.d.ts +32 -0
- package/dist/store/reducers/pdisk/utils.js +32 -0
- package/dist/store/reducers/preview.d.ts +82 -1
- package/dist/store/reducers/saveQuery.d.ts +3 -3
- package/dist/store/reducers/schema/schema.d.ts +84 -4
- package/dist/store/reducers/schema/schema.js +4 -4
- package/dist/store/reducers/schema/types.d.ts +3 -3
- package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +83 -2
- package/dist/store/reducers/schemaAcl/types.d.ts +1 -1
- package/dist/store/reducers/settings/settings.d.ts +2 -2
- package/dist/store/reducers/settings/types.d.ts +3 -3
- package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +83 -2
- package/dist/store/reducers/shardsWorkload/types.d.ts +1 -1
- package/dist/store/reducers/storage/selectors.d.ts +1 -1
- package/dist/store/reducers/storage/selectors.js +1 -1
- package/dist/store/reducers/storage/storage.d.ts +165 -3
- package/dist/store/reducers/storage/storage.js +1 -11
- package/dist/store/reducers/storage/types.d.ts +10 -10
- package/dist/store/reducers/storage/utils.d.ts +4 -2
- package/dist/store/reducers/storage/utils.js +23 -30
- package/dist/store/reducers/tablet.d.ts +165 -3
- package/dist/store/reducers/tablet.js +1 -1
- package/dist/store/reducers/tablets.d.ts +83 -2
- package/dist/store/reducers/tabletsFilters.d.ts +101 -2
- package/dist/store/reducers/tabletsFilters.js +1 -1
- package/dist/store/reducers/tenant/tenant.d.ts +83 -2
- package/dist/store/reducers/tenant/types.d.ts +6 -6
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/executeTopTables/types.d.ts +1 -1
- package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topNodesByCpu/topNodesByCpu.js +1 -11
- package/dist/store/reducers/tenantOverview/topNodesByCpu/types.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topNodesByLoad/topNodesByLoad.js +1 -11
- package/dist/store/reducers/tenantOverview/topNodesByLoad/types.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topNodesByMemory/topNodesByMemory.js +1 -11
- package/dist/store/reducers/tenantOverview/topNodesByMemory/types.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topQueries/tenantOverviewTopQueries.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topQueries/types.d.ts +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topShards/types.d.ts +1 -1
- package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.d.ts +83 -2
- package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.js +1 -11
- package/dist/store/reducers/tenantOverview/topStorageGroups/types.d.ts +2 -2
- package/dist/store/reducers/tenants/selectors.d.ts +2 -2
- package/dist/store/reducers/tenants/selectors.js +1 -1
- package/dist/store/reducers/tenants/tenants.d.ts +83 -2
- package/dist/store/reducers/tenants/types.d.ts +2 -2
- package/dist/store/reducers/tenants/utils.d.ts +6 -6
- package/dist/store/reducers/tooltip.d.ts +4 -3
- package/dist/store/reducers/tooltip.js +2 -4
- package/dist/store/reducers/topic.d.ts +83 -3
- package/dist/store/reducers/topic.js +1 -1
- package/dist/store/state-url-mapping.d.ts +5 -3
- package/dist/store/state-url-mapping.js +9 -18
- package/dist/store/utils.d.ts +4 -4
- package/dist/types/additionalProps.d.ts +2 -2
- package/dist/types/api/enums.d.ts +1 -0
- package/dist/types/api/enums.js +1 -0
- package/dist/types/api/error.d.ts +1 -1
- package/dist/types/api/nodes.d.ts +1 -1
- package/dist/types/api/nodesList.d.ts +1 -1
- package/dist/types/api/query.d.ts +19 -19
- package/dist/types/api/render.d.ts +6 -3
- package/dist/types/api/storage.d.ts +1 -1
- package/dist/types/api/tablet.d.ts +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/store/describe.d.ts +3 -3
- package/dist/types/store/executeQuery.d.ts +2 -2
- package/dist/types/store/explainQuery.d.ts +3 -3
- package/dist/types/store/heatmap.d.ts +3 -3
- package/dist/types/store/host.d.ts +1 -1
- package/dist/types/store/nodesList.d.ts +2 -2
- package/dist/types/store/olapStats.d.ts +1 -1
- package/dist/types/store/query.d.ts +5 -5
- package/dist/types/store/tablet.d.ts +3 -3
- package/dist/types/store/tablets.d.ts +2 -2
- package/dist/types/store/tooltip.d.ts +3 -5
- package/dist/types/store/topic.d.ts +1 -1
- package/dist/types/versions.d.ts +2 -2
- package/dist/utils/additionalProps.d.ts +1 -1
- package/dist/utils/additionalProps.js +1 -1
- package/dist/utils/bytesParsers/formatBytes.d.ts +2 -2
- package/dist/utils/bytesParsers/formatBytes.js +1 -11
- package/dist/utils/clusterVersionColors.d.ts +1 -1
- package/dist/utils/clusterVersionColors.js +2 -2
- package/dist/utils/constants.d.ts +2 -1
- package/dist/utils/constants.js +5 -4
- package/dist/utils/dataFormatters/dataFormatters.d.ts +12 -11
- package/dist/utils/developerUI/developerUI.d.ts +1 -1
- package/dist/utils/diagnostics.d.ts +2 -2
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.d.ts +1 -0
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js +36 -0
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.d.ts +1 -0
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +142 -0
- package/dist/utils/disks/calculatePDiskSeverity.d.ts +2 -0
- package/dist/utils/disks/calculatePDiskSeverity.js +18 -0
- package/dist/utils/disks/calculateVDiskSeverity.d.ts +2 -0
- package/dist/utils/disks/calculateVDiskSeverity.js +36 -0
- package/dist/utils/disks/constants.d.ts +25 -0
- package/dist/utils/disks/constants.js +38 -0
- package/dist/utils/disks/getPDiskType.d.ts +7 -0
- package/dist/utils/{pdisk.js → disks/getPDiskType.js} +13 -15
- package/dist/utils/disks/helpers.d.ts +3 -0
- package/dist/utils/disks/helpers.js +10 -0
- package/dist/utils/disks/prepareDisks.d.ts +5 -0
- package/dist/utils/disks/prepareDisks.js +40 -0
- package/dist/utils/disks/types.d.ts +15 -0
- package/dist/utils/disks/types.js +1 -0
- package/dist/utils/hooks/index.d.ts +1 -0
- package/dist/utils/hooks/index.js +1 -0
- package/dist/utils/hooks/useSetting.js +2 -2
- package/dist/utils/hooks/useTableResize.d.ts +3 -3
- package/dist/utils/hooks/useTableSort.d.ts +1 -1
- package/dist/utils/hooks/useTypedDispatch.d.ts +2 -0
- package/dist/utils/hooks/useTypedDispatch.js +2 -0
- package/dist/utils/hooks/useTypedSelector.d.ts +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/monaco.d.ts +1 -0
- package/dist/utils/monaco.js +14 -0
- package/dist/utils/monitoring.d.ts +3 -3
- package/dist/utils/nodes.d.ts +8 -2
- package/dist/utils/nodes.js +11 -0
- package/dist/utils/prepareBackend.d.ts +2 -2
- package/dist/utils/query.d.ts +2 -2
- package/dist/utils/query.js +1 -11
- package/dist/utils/storage.d.ts +1 -3
- package/dist/utils/storage.js +0 -1
- package/dist/utils/tablet.d.ts +1 -1
- package/dist/utils/timeframes.d.ts +1 -1
- package/dist/utils/typecheckers.d.ts +1 -0
- package/dist/utils/versions/getVersionsColors.d.ts +1 -1
- package/dist/utils/versions/getVersionsColors.js +2 -2
- package/dist/utils/versions/parseNodesToVersionsValues.d.ts +1 -1
- package/dist/utils/yqlSuggestions/constants.d.ts +7 -0
- package/dist/utils/yqlSuggestions/constants.js +696 -0
- package/dist/utils/yqlSuggestions/generateSuggestions.d.ts +27 -0
- package/dist/utils/yqlSuggestions/generateSuggestions.js +252 -0
- package/dist/utils/yqlSuggestions/yqlSuggestions.d.ts +4 -0
- package/dist/utils/yqlSuggestions/yqlSuggestions.js +76 -0
- package/package.json +14 -10
- package/dist/assets/icons/flask.svg +0 -3
- package/dist/assets/icons/star.svg +0 -1
- package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.d.ts +0 -7
- package/dist/components/ExternalLinkWithIcon/ExternalLinkWithIcon.js +0 -9
- package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.d.ts +0 -7
- package/dist/containers/Cluster/ClusterInfoSkeleton/ClusterInfoSkeleton.js +0 -7
- package/dist/containers/Storage/utils/constants.d.ts +0 -2
- package/dist/containers/Storage/utils/constants.js +0 -2
- package/dist/containers/Tenant/Query/i18n/ru.json +0 -21
- package/dist/store/reducers/healthcheckInfo.d.ts +0 -21
- package/dist/types/store/healthcheck.d.ts +0 -20
- package/dist/utils/pdisk.d.ts +0 -17
- /package/dist/{types/store/healthcheck.js → store/reducers/healthcheckInfo/types.js} +0 -0
@@ -1,17 +1,16 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
2
2
|
import { useCallback, useEffect, useRef } from 'react';
|
3
3
|
import { useLocation, useParams } from 'react-router';
|
4
|
-
import { useDispatch } from 'react-redux';
|
5
4
|
import cn from 'bem-cn-lite';
|
6
5
|
import { Link as ExternalLink } from '@gravity-ui/uikit';
|
7
6
|
import { Helmet } from 'react-helmet-async';
|
8
7
|
import { backend } from '../../store';
|
9
8
|
import { getTablet, getTabletDescribe, clearTabletData } from '../../store/reducers/tablet';
|
10
9
|
import { setHeaderBreadcrumbs } from '../../store/reducers/header/header';
|
11
|
-
import { useAutofetcher, useTypedSelector } from '../../utils/hooks';
|
10
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch } from '../../utils/hooks';
|
12
11
|
import { CLUSTER_DEFAULT_TITLE, DEVELOPER_UI_TITLE } from '../../utils/constants';
|
13
12
|
import { parseQuery } from '../../routes';
|
14
|
-
import EntityStatus from '../../components/EntityStatus/EntityStatus';
|
13
|
+
import { EntityStatus } from '../../components/EntityStatus/EntityStatus';
|
15
14
|
import { ResponseError } from '../../components/Errors/ResponseError';
|
16
15
|
import { Tag } from '../../components/Tag';
|
17
16
|
import { Icon } from '../../components/Icon';
|
@@ -26,7 +25,7 @@ export const b = cn('tablet-page');
|
|
26
25
|
export const Tablet = () => {
|
27
26
|
var _a;
|
28
27
|
const isFirstDataFetchRef = useRef(true);
|
29
|
-
const dispatch =
|
28
|
+
const dispatch = useTypedDispatch();
|
30
29
|
const location = useLocation();
|
31
30
|
const params = useParams();
|
32
31
|
const { id } = params;
|
@@ -48,7 +47,7 @@ export const Tablet = () => {
|
|
48
47
|
}
|
49
48
|
}, [dispatch, tablet]);
|
50
49
|
const fetchData = useCallback(() => {
|
51
|
-
dispatch(getTablet(id));
|
50
|
+
return dispatch(getTablet(id));
|
52
51
|
}, [dispatch, id]);
|
53
52
|
useAutofetcher(fetchData, [fetchData], true);
|
54
53
|
useEffect(() => {
|
@@ -1,7 +1,8 @@
|
|
1
|
-
import { TTabletStateInfo } from '../../../types/api/tablet';
|
1
|
+
import { type TTabletStateInfo } from '../../../types/api/tablet';
|
2
|
+
import type { ITabletHandledResponse } from '../../../types/store/tablet';
|
2
3
|
interface TabletControlsProps {
|
3
4
|
tablet: TTabletStateInfo;
|
4
|
-
fetchData:
|
5
|
+
fetchData: () => Promise<ITabletHandledResponse | undefined>;
|
5
6
|
}
|
6
7
|
export declare const TabletControls: ({ tablet, fetchData }: TabletControlsProps) => JSX.Element;
|
7
8
|
export {};
|
@@ -1,46 +1,17 @@
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
-
import { useEffect, useState } from 'react';
|
3
|
-
import { Button } from '@gravity-ui/uikit';
|
4
2
|
import { ETabletState } from '../../../types/api/tablet';
|
5
|
-
import {
|
3
|
+
import { ButtonWithConfirmDialog } from '../../../components/ButtonWithConfirmDialog/ButtonWithConfirmDialog';
|
6
4
|
import i18n from '../i18n';
|
7
5
|
import { b } from '../Tablet';
|
8
|
-
var EVisibleDialogType;
|
9
|
-
(function (EVisibleDialogType) {
|
10
|
-
EVisibleDialogType["kill"] = "kill";
|
11
|
-
EVisibleDialogType["stop"] = "stop";
|
12
|
-
EVisibleDialogType["resume"] = "resume";
|
13
|
-
})(EVisibleDialogType || (EVisibleDialogType = {}));
|
14
6
|
export const TabletControls = ({ tablet, fetchData }) => {
|
15
7
|
const { TabletId, HiveId } = tablet;
|
16
|
-
const [isDialogVisible, setIsDialogVisible] = useState(false);
|
17
|
-
const [visibleDialogType, setVisibleDialogType] = useState(null);
|
18
|
-
const [isTabletActionLoading, setIsTabletActionLoading] = useState(false);
|
19
|
-
// Enable controls after data update
|
20
|
-
useEffect(() => {
|
21
|
-
setIsTabletActionLoading(false);
|
22
|
-
}, [tablet]);
|
23
|
-
const makeShowDialog = (type) => () => {
|
24
|
-
setIsDialogVisible(true);
|
25
|
-
setVisibleDialogType(type);
|
26
|
-
};
|
27
|
-
const showKillDialog = makeShowDialog(EVisibleDialogType.kill);
|
28
|
-
const showStopDialog = makeShowDialog(EVisibleDialogType.stop);
|
29
|
-
const showResumeDialog = makeShowDialog(EVisibleDialogType.resume);
|
30
|
-
const hideDialog = () => {
|
31
|
-
setIsDialogVisible(false);
|
32
|
-
setVisibleDialogType(null);
|
33
|
-
};
|
34
8
|
const _onKillClick = () => {
|
35
|
-
setIsTabletActionLoading(true);
|
36
9
|
return window.api.killTablet(TabletId);
|
37
10
|
};
|
38
11
|
const _onStopClick = () => {
|
39
|
-
setIsTabletActionLoading(true);
|
40
12
|
return window.api.stopTablet(TabletId, HiveId);
|
41
13
|
};
|
42
14
|
const _onResumeClick = () => {
|
43
|
-
setIsTabletActionLoading(true);
|
44
15
|
return window.api.resumeTablet(TabletId, HiveId);
|
45
16
|
};
|
46
17
|
const hasHiveId = () => {
|
@@ -48,23 +19,5 @@ export const TabletControls = ({ tablet, fetchData }) => {
|
|
48
19
|
};
|
49
20
|
const isDisabledResume = tablet.State !== ETabletState.Stopped && tablet.State !== ETabletState.Dead;
|
50
21
|
const isDisabledStop = tablet.State === ETabletState.Stopped || tablet.State === ETabletState.Deleted;
|
51
|
-
|
52
|
-
if (!isDialogVisible) {
|
53
|
-
return null;
|
54
|
-
}
|
55
|
-
switch (visibleDialogType) {
|
56
|
-
case EVisibleDialogType.kill: {
|
57
|
-
return (_jsx(CriticalActionDialog, { visible: isDialogVisible, text: i18n('dialog.kill'), onClose: hideDialog, onConfirm: _onKillClick, onConfirmActionFinish: fetchData }));
|
58
|
-
}
|
59
|
-
case EVisibleDialogType.stop: {
|
60
|
-
return (_jsx(CriticalActionDialog, { visible: isDialogVisible, text: i18n('dialog.stop'), onClose: hideDialog, onConfirm: _onStopClick, onConfirmActionFinish: fetchData }));
|
61
|
-
}
|
62
|
-
case EVisibleDialogType.resume: {
|
63
|
-
return (_jsx(CriticalActionDialog, { visible: isDialogVisible, text: i18n('dialog.resume'), onClose: hideDialog, onConfirm: _onResumeClick, onConfirmActionFinish: fetchData }));
|
64
|
-
}
|
65
|
-
default:
|
66
|
-
return null;
|
67
|
-
}
|
68
|
-
};
|
69
|
-
return (_jsxs("div", Object.assign({ className: b('controls') }, { children: [_jsx(Button, Object.assign({ onClick: showKillDialog, view: "action", loading: isTabletActionLoading, className: b('control') }, { children: i18n('controls.kill') })), hasHiveId() ? (_jsxs(_Fragment, { children: [_jsx(Button, Object.assign({ onClick: showStopDialog, view: "action", disabled: isDisabledStop, loading: !isDisabledStop && isTabletActionLoading, className: b('control') }, { children: i18n('controls.stop') })), _jsx(Button, Object.assign({ onClick: showResumeDialog, view: "action", disabled: isDisabledResume, loading: !isDisabledResume && isTabletActionLoading, className: b('control') }, { children: i18n('controls.resume') }))] })) : null, renderDialog()] })));
|
22
|
+
return (_jsxs("div", Object.assign({ className: b('controls') }, { children: [_jsx(ButtonWithConfirmDialog, Object.assign({ dialogContent: i18n('dialog.kill'), onConfirmAction: _onKillClick, onConfirmActionSuccess: fetchData, buttonClassName: b('control') }, { children: i18n('controls.kill') })), hasHiveId() ? (_jsxs(_Fragment, { children: [_jsx(ButtonWithConfirmDialog, Object.assign({ dialogContent: i18n('dialog.stop'), onConfirmAction: _onStopClick, onConfirmActionSuccess: fetchData, buttonClassName: b('control'), buttonDisabled: isDisabledStop }, { children: i18n('controls.stop') })), _jsx(ButtonWithConfirmDialog, Object.assign({ dialogContent: i18n('dialog.resume'), onConfirmAction: _onResumeClick, onConfirmActionSuccess: fetchData, buttonClassName: b('control'), buttonDisabled: isDisabledResume }, { children: i18n('controls.resume') }))] })) : null] })));
|
70
23
|
};
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import DataTable from '@gravity-ui/react-data-table';
|
3
|
-
import EntityStatus from '../../../components/EntityStatus/EntityStatus';
|
3
|
+
import { EntityStatus } from '../../../components/EntityStatus/EntityStatus';
|
4
4
|
import { InternalLink } from '../../../components/InternalLink/InternalLink';
|
5
5
|
import { calcUptime } from '../../../utils/dataFormatters/dataFormatters';
|
6
6
|
import { getDefaultNodePath } from '../../Node/NodePages';
|
@@ -1,19 +1,18 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import { useCallback, useEffect, useMemo, useState } from 'react';
|
3
|
-
import { useDispatch } from 'react-redux';
|
4
3
|
import cn from 'bem-cn-lite';
|
5
4
|
import ReactList from 'react-list';
|
6
5
|
import { Select } from '@gravity-ui/uikit';
|
7
6
|
import { Tablet } from '../../components/Tablet';
|
8
7
|
import TabletsOverall from '../../components/TabletsOverall/TabletsOverall';
|
9
8
|
import { Loader } from '../../components/Loader';
|
10
|
-
import { useAutofetcher, useTypedSelector } from '../../utils/hooks';
|
9
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch } from '../../utils/hooks';
|
11
10
|
import { getTabletsInfo, clearWasLoadingFlag, setStateFilter, setTypeFilter, } from '../../store/reducers/tablets';
|
12
11
|
import './Tablets.scss';
|
13
12
|
import i18n from './i18n';
|
14
13
|
const b = cn('tablets');
|
15
14
|
export const Tablets = ({ path, nodeId, className }) => {
|
16
|
-
const dispatch =
|
15
|
+
const dispatch = useTypedDispatch();
|
17
16
|
const { data, wasLoaded, loading, error, stateFilter, typeFilter } = useTypedSelector((state) => state.tablets);
|
18
17
|
const { autorefresh } = useTypedSelector((state) => state.schema);
|
19
18
|
const tablets = useMemo(() => (data === null || data === void 0 ? void 0 : data.TabletStateInfo) || [], [data]);
|
@@ -42,7 +42,7 @@ export class TabletsFilters extends React.Component<any, any, any> {
|
|
42
42
|
renderView: () => JSX.Element;
|
43
43
|
render(): JSX.Element;
|
44
44
|
}
|
45
|
-
declare
|
45
|
+
declare const _default: import("react-redux").ConnectedComponent<typeof TabletsFilters, import("react-redux").Omit<PropTypes.InferProps<{
|
46
46
|
wasLoaded: PropTypes.Requireable<boolean>;
|
47
47
|
loading: PropTypes.Requireable<boolean>;
|
48
48
|
getTabletsInfo: PropTypes.Requireable<(...args: any[]) => any>;
|
@@ -58,7 +58,7 @@ declare var _default: import("react-redux").ConnectedComponent<typeof TabletsFil
|
|
58
58
|
typeFilter: PropTypes.Requireable<any[]>;
|
59
59
|
error: PropTypes.Requireable<PropTypes.Requireable<string> | PropTypes.Requireable<object>>;
|
60
60
|
setHeader: PropTypes.Requireable<(...args: any[]) => any>;
|
61
|
-
}>, "nodes" | "tablets" | "
|
61
|
+
}>, "nodes" | "tablets" | "loading" | "wasLoaded" | "error" | "stateFilter" | "typeFilter" | "setStateFilter" | "setTypeFilter" | "clearWasLoadingFlag" | "getTabletsInfo" | "filteredTablets" | "timeoutForRequest">>;
|
62
62
|
export default _default;
|
63
63
|
import React from "react";
|
64
64
|
import PropTypes from "prop-types";
|
@@ -1,10 +1,9 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
-
import { useDispatch } from 'react-redux';
|
3
2
|
import { useEffect } from 'react';
|
4
3
|
import cn from 'bem-cn-lite';
|
5
4
|
import DataTable from '@gravity-ui/react-data-table';
|
6
5
|
import { DEFAULT_TABLE_SETTINGS } from '../../../utils/constants';
|
7
|
-
import { useTypedSelector } from '../../../utils/hooks';
|
6
|
+
import { useTypedSelector, useTypedDispatch } from '../../../utils/hooks';
|
8
7
|
import { getSchemaAcl, setAclWasNotLoaded } from '../../../store/reducers/schemaAcl/schemaAcl';
|
9
8
|
import { ResponseError } from '../../../components/Errors/ResponseError';
|
10
9
|
import { Loader } from '../../../components/Loader';
|
@@ -58,7 +57,7 @@ const columns = [
|
|
58
57
|
},
|
59
58
|
];
|
60
59
|
export const Acl = () => {
|
61
|
-
const dispatch =
|
60
|
+
const dispatch = useTypedDispatch();
|
62
61
|
const { currentSchemaPath } = useTypedSelector((state) => state.schema);
|
63
62
|
const { loading, error, acl, owner, wasLoaded } = useTypedSelector((state) => state.schemaAcl);
|
64
63
|
useEffect(() => {
|
@@ -1,13 +1,12 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import { useCallback, useMemo, useState } from 'react';
|
3
|
-
import { useDispatch } from 'react-redux';
|
4
3
|
import block from 'bem-cn-lite';
|
5
4
|
import { escapeRegExp } from 'lodash/fp';
|
6
5
|
import DataTable from '@gravity-ui/react-data-table';
|
7
6
|
import { Loader } from '../../../../components/Loader';
|
8
7
|
import { Search } from '../../../../components/Search';
|
9
8
|
import { ResponseError } from '../../../../components/Errors/ResponseError';
|
10
|
-
import { useAutofetcher, useTypedSelector } from '../../../../utils/hooks';
|
9
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch } from '../../../../utils/hooks';
|
11
10
|
import { DEFAULT_TABLE_SETTINGS } from '../../../../utils/constants';
|
12
11
|
import { selectPreparedConsumersData, selectPreparedTopicStats, getTopic, setDataWasNotLoaded, } from '../../../../store/reducers/topic';
|
13
12
|
import { isCdcStreamEntityType } from '../../utils/schema';
|
@@ -18,7 +17,7 @@ import './Consumers.scss';
|
|
18
17
|
const b = block('ydb-diagnostics-consumers');
|
19
18
|
export const Consumers = ({ path, type }) => {
|
20
19
|
const isCdcStream = isCdcStreamEntityType(type);
|
21
|
-
const dispatch =
|
20
|
+
const dispatch = useTypedDispatch();
|
22
21
|
const [searchValue, setSearchValue] = useState('');
|
23
22
|
const { autorefresh } = useTypedSelector((state) => state.schema);
|
24
23
|
const { loading, wasLoaded, error } = useTypedSelector((state) => state.topic);
|
@@ -1,12 +1,12 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import { useCallback, useEffect, useState } from 'react';
|
3
|
-
import { shallowEqual
|
3
|
+
import { shallowEqual } from 'react-redux';
|
4
4
|
import cn from 'bem-cn-lite';
|
5
5
|
import JSONTree from 'react-json-inspector';
|
6
6
|
import 'react-json-inspector/json-inspector.css';
|
7
7
|
import { Loader } from '../../../../components/Loader';
|
8
8
|
import { ResponseError } from '../../../../components/Errors/ResponseError';
|
9
|
-
import { useAutofetcher, useTypedSelector } from '../../../../utils/hooks';
|
9
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch } from '../../../../utils/hooks';
|
10
10
|
import { getDescribe, setDataWasNotLoaded, setCurrentDescribePath, getDescribeBatched, } from '../../../../store/reducers/describe';
|
11
11
|
import { selectSchemaMergedChildrenPaths } from '../../../../store/reducers/schema/schema';
|
12
12
|
import { isEntityWithMergedImplementation } from '../../utils/schema';
|
@@ -14,7 +14,7 @@ import './Describe.scss';
|
|
14
14
|
const b = cn('kv-describe');
|
15
15
|
const expandMap = new Map();
|
16
16
|
const Describe = ({ tenant, type }) => {
|
17
|
-
const dispatch =
|
17
|
+
const dispatch = useTypedDispatch();
|
18
18
|
const { currentDescribe, error, loading, wasLoaded } = useTypedSelector((state) => state.describe);
|
19
19
|
const [preparedDescribeData, setPreparedDescribeData] = useState();
|
20
20
|
useEffect(() => {
|
@@ -3,11 +3,10 @@ import { useMemo, useRef } from 'react';
|
|
3
3
|
import qs from 'qs';
|
4
4
|
import cn from 'bem-cn-lite';
|
5
5
|
import { Link } from 'react-router-dom';
|
6
|
-
import { useDispatch, useSelector } from 'react-redux';
|
7
6
|
import { useLocation } from 'react-router';
|
8
7
|
import { Helmet } from 'react-helmet-async';
|
9
8
|
import { Switch, Tabs } from '@gravity-ui/uikit';
|
10
|
-
import { useTypedSelector } from '../../../utils/hooks';
|
9
|
+
import { useTypedSelector, useTypedDispatch } from '../../../utils/hooks';
|
11
10
|
import routes, { createHref } from '../../../routes';
|
12
11
|
import { enableAutorefresh, disableAutorefresh } from '../../../store/reducers/schema/schema';
|
13
12
|
import { setDiagnosticsTab } from '../../../store/reducers/tenant/tenant';
|
@@ -32,8 +31,8 @@ import './Diagnostics.scss';
|
|
32
31
|
const b = cn('kv-tenant-diagnostics');
|
33
32
|
function Diagnostics(props) {
|
34
33
|
const container = useRef(null);
|
35
|
-
const dispatch =
|
36
|
-
const { currentSchemaPath, autorefresh, wasLoaded } =
|
34
|
+
const dispatch = useTypedDispatch();
|
35
|
+
const { currentSchemaPath, autorefresh, wasLoaded } = useTypedSelector((state) => state.schema);
|
37
36
|
const { diagnosticsTab = TENANT_DIAGNOSTICS_TABS_IDS.overview } = useTypedSelector((state) => state.tenant);
|
38
37
|
const location = useLocation();
|
39
38
|
const queryParams = qs.parse(location.search, {
|
@@ -101,12 +100,15 @@ function Diagnostics(props) {
|
|
101
100
|
return _jsx(Describe, { tenant: tenantNameString, type: type });
|
102
101
|
}
|
103
102
|
case TENANT_DIAGNOSTICS_TABS_IDS.hotKeys: {
|
103
|
+
// @ts-expect-error
|
104
104
|
return _jsx(HotKeys, { path: currentSchemaPath });
|
105
105
|
}
|
106
106
|
case TENANT_DIAGNOSTICS_TABS_IDS.graph: {
|
107
|
+
// @ts-expect-error
|
107
108
|
return _jsx(Heatmap, { path: currentSchemaPath });
|
108
109
|
}
|
109
110
|
case TENANT_DIAGNOSTICS_TABS_IDS.consumers: {
|
111
|
+
// @ts-expect-error
|
110
112
|
return _jsx(Consumers, { path: currentSchemaPath, type: type });
|
111
113
|
}
|
112
114
|
case TENANT_DIAGNOSTICS_TABS_IDS.partitions: {
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import type { TenantDiagnosticsTab } from '../../../store/reducers/tenant/types';
|
2
2
|
import { EPathType } from '../../../types/api/schema';
|
3
|
-
|
3
|
+
type Page = {
|
4
4
|
id: TenantDiagnosticsTab;
|
5
5
|
title: string;
|
6
6
|
};
|
@@ -129,5 +129,5 @@ export declare const EXTERNAL_TABLE_PAGES: ({
|
|
129
129
|
id: "describe";
|
130
130
|
title: string;
|
131
131
|
})[];
|
132
|
-
export declare const getPagesByType: (type?: EPathType
|
132
|
+
export declare const getPagesByType: (type?: EPathType) => Page[];
|
133
133
|
export {};
|
@@ -1,10 +1,9 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import { useEffect, useMemo, useRef } from 'react';
|
3
|
-
import { useDispatch } from 'react-redux';
|
4
3
|
import DataTable from '@gravity-ui/react-data-table';
|
5
4
|
import { Icon } from '../../../../components/Icon';
|
6
5
|
import { ResponseError } from '../../../../components/Errors/ResponseError';
|
7
|
-
import { useTypedSelector } from '../../../../utils/hooks';
|
6
|
+
import { useTypedSelector, useTypedDispatch } from '../../../../utils/hooks';
|
8
7
|
import { cn } from '../../../../utils/cn';
|
9
8
|
import { DEFAULT_TABLE_SETTINGS } from '../../../../utils/constants';
|
10
9
|
import { setHotKeysData, setHotKeysDataWasNotLoaded, setHotKeysError, setHotKeysLoading, } from '../../../../store/reducers/hotKeys/hotKeys';
|
@@ -36,7 +35,7 @@ const getHotKeysColumns = (keyColumnsIds = []) => {
|
|
36
35
|
};
|
37
36
|
export function HotKeys({ path }) {
|
38
37
|
var _a, _b, _c;
|
39
|
-
const dispatch =
|
38
|
+
const dispatch = useTypedDispatch();
|
40
39
|
const collectSamplesTimerRef = useRef();
|
41
40
|
const { loading, wasLoaded, data, error } = useTypedSelector((state) => state.hotKeys);
|
42
41
|
const { loading: schemaLoading, data: schemaData } = useTypedSelector((state) => state.schema);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
declare
|
1
|
+
declare const _default: import("react-redux").ConnectedComponent<typeof Network, import("react-redux").Omit<Pick<PropTypes.InferProps<{
|
2
2
|
getNetworkInfo: PropTypes.Requireable<(...args: any[]) => any>;
|
3
3
|
setDataWasNotLoaded: PropTypes.Requireable<(...args: any[]) => any>;
|
4
4
|
netWorkInfo: PropTypes.Requireable<object>;
|
@@ -11,7 +11,7 @@ declare var _default: import("react-redux").ConnectedComponent<typeof Network, i
|
|
11
11
|
path: PropTypes.Requireable<string>;
|
12
12
|
filter: PropTypes.Requireable<string>;
|
13
13
|
changeFilter: PropTypes.Requireable<(...args: any[]) => any>;
|
14
|
-
}>, "filter" | "
|
14
|
+
}>, "filter" | "loading" | "wasLoaded" | "error" | "path" | "autorefresh" | "showTooltip" | "hideTooltip" | "getNetworkInfo" | "setDataWasNotLoaded" | "changeFilter" | "netWorkInfo"> & Partial<Pick<PropTypes.InferProps<{
|
15
15
|
getNetworkInfo: PropTypes.Requireable<(...args: any[]) => any>;
|
16
16
|
setDataWasNotLoaded: PropTypes.Requireable<(...args: any[]) => any>;
|
17
17
|
netWorkInfo: PropTypes.Requireable<object>;
|
@@ -2,7 +2,7 @@ export class NodeNetwork extends React.Component<any, any, any> {
|
|
2
2
|
static propTypes: {
|
3
3
|
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
|
4
4
|
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
5
|
-
nodeId: PropTypes.Requireable<string | number
|
5
|
+
nodeId: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
6
6
|
connected: PropTypes.Requireable<number>;
|
7
7
|
capacity: PropTypes.Requireable<number>;
|
8
8
|
rack: PropTypes.Requireable<string>;
|
@@ -2,21 +2,22 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import React from 'react';
|
3
3
|
import cn from 'bem-cn-lite';
|
4
4
|
import PropTypes from 'prop-types';
|
5
|
+
import { EFlag } from '../../../../../types/api/enums';
|
5
6
|
import './NodeNetwork.scss';
|
6
7
|
const b = cn('node-network');
|
7
8
|
const getNodeModifier = (connected, capacity) => {
|
8
9
|
const percents = Math.floor((connected / capacity) * 100);
|
9
10
|
if (percents === 100) {
|
10
|
-
return
|
11
|
+
return EFlag.Green;
|
11
12
|
}
|
12
13
|
else if (percents >= 70) {
|
13
|
-
return
|
14
|
+
return EFlag.Yellow;
|
14
15
|
}
|
15
16
|
else if (percents >= 1) {
|
16
|
-
return
|
17
|
+
return EFlag.Red;
|
17
18
|
}
|
18
19
|
else {
|
19
|
-
return
|
20
|
+
return EFlag.Grey;
|
20
21
|
}
|
21
22
|
};
|
22
23
|
export class NodeNetwork extends React.Component {
|
@@ -34,8 +35,9 @@ export class NodeNetwork extends React.Component {
|
|
34
35
|
}
|
35
36
|
render() {
|
36
37
|
const { nodeId, connected, capacity, status, onClick, showID, isBlurred } = this.props;
|
38
|
+
const color = status || getNodeModifier(connected, capacity);
|
37
39
|
return (_jsx("div", Object.assign({ ref: this.node, className: b({
|
38
|
-
[
|
40
|
+
[color.toLowerCase()]: true,
|
39
41
|
id: showID,
|
40
42
|
blur: isBlurred,
|
41
43
|
}), onMouseEnter: this._onNodeHover, onMouseLeave: this._onNodeLeave, onClick: () => onClick(nodeId) }, { children: showID && nodeId })));
|
@@ -1,11 +1,11 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import { useCallback } from 'react';
|
3
|
-
import { shallowEqual
|
3
|
+
import { shallowEqual } from 'react-redux';
|
4
4
|
import { Loader } from '../../../../components/Loader';
|
5
5
|
import { TableIndexInfo } from '../../../../components/InfoViewer/schemaInfo';
|
6
6
|
import { ResponseError } from '../../../../components/Errors/ResponseError';
|
7
7
|
import { EPathType } from '../../../../types/api/schema';
|
8
|
-
import { useAutofetcher, useTypedSelector } from '../../../../utils/hooks';
|
8
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch } from '../../../../utils/hooks';
|
9
9
|
import { selectSchemaMergedChildrenPaths } from '../../../../store/reducers/schema/schema';
|
10
10
|
import { getTopic } from '../../../../store/reducers/topic';
|
11
11
|
import { getOlapStats, resetLoadingState as resetOlapLoadingState, } from '../../../../store/reducers/olapStats';
|
@@ -17,9 +17,9 @@ import { TopicInfo } from './TopicInfo';
|
|
17
17
|
import { ChangefeedInfo } from './ChangefeedInfo';
|
18
18
|
import { TableInfo } from './TableInfo';
|
19
19
|
function Overview({ type, tenantName }) {
|
20
|
-
const dispatch =
|
20
|
+
const dispatch = useTypedDispatch();
|
21
21
|
const { autorefresh, currentSchemaPath } = useTypedSelector((state) => state.schema);
|
22
|
-
const { data, additionalData, loading: overviewLoading, wasLoaded: overviewWasLoaded, error: overviewError, } = useTypedSelector((state) => state.overview);
|
22
|
+
const { data: rawData, additionalData, loading: overviewLoading, wasLoaded: overviewWasLoaded, error: overviewError, } = useTypedSelector((state) => state.overview);
|
23
23
|
const { data: { result: olapStats } = { result: undefined }, loading: olapStatsLoading, wasLoaded: olapStatsWasLoaded, } = useTypedSelector((state) => state.olapStats);
|
24
24
|
const isEntityWithMergedImpl = isEntityWithMergedImplementation(type);
|
25
25
|
// shalloEqual prevents rerenders when new schema data is loaded
|
@@ -61,6 +61,7 @@ function Overview({ type, tenantName }) {
|
|
61
61
|
useAutofetcher(fetchData, [fetchData], autorefresh);
|
62
62
|
const renderContent = () => {
|
63
63
|
var _a;
|
64
|
+
const data = rawData !== null && rawData !== void 0 ? rawData : undefined;
|
64
65
|
// verbose mapping to guarantee a correct render for new path types
|
65
66
|
// TS will error when a new type is added but not mapped here
|
66
67
|
const pathTypeToComponent = {
|
@@ -72,7 +73,10 @@ function Overview({ type, tenantName }) {
|
|
72
73
|
[EPathType.EPathTypeExtSubDomain]: undefined,
|
73
74
|
[EPathType.EPathTypeColumnStore]: undefined,
|
74
75
|
[EPathType.EPathTypeColumnTable]: undefined,
|
75
|
-
[EPathType.EPathTypeCdcStream]: () =>
|
76
|
+
[EPathType.EPathTypeCdcStream]: () => {
|
77
|
+
var _a;
|
78
|
+
return (_jsx(ChangefeedInfo, { data: data, topic: (_a = additionalData === null || additionalData === void 0 ? void 0 : additionalData[0]) !== null && _a !== void 0 ? _a : undefined }));
|
79
|
+
},
|
76
80
|
[EPathType.EPathTypePersQueueGroup]: () => _jsx(TopicInfo, { data: data }),
|
77
81
|
[EPathType.EPathTypeExternalTable]: () => _jsx(ExternalTableInfo, { data: data }),
|
78
82
|
[EPathType.EPathTypeExternalDataSource]: () => _jsx(ExternalDataSourceInfo, { data: data }),
|
@@ -3,7 +3,7 @@ import type { KeyValueRow } from '../../../../../types/api/query';
|
|
3
3
|
import { EPathType } from '../../../../../types/api/schema';
|
4
4
|
import { InfoViewerItem } from '../../../../../components/InfoViewer';
|
5
5
|
/** Prepares data for Table, ColumnTable and ColumnStore */
|
6
|
-
export declare const prepareTableInfo: (data?: TEvDescribeSchemeResult
|
6
|
+
export declare const prepareTableInfo: (data?: TEvDescribeSchemeResult, type?: EPathType, olapStats?: KeyValueRow[]) => {
|
7
7
|
generalInfo?: undefined;
|
8
8
|
tableStatsInfo?: undefined;
|
9
9
|
tabletMetricsInfo?: undefined;
|
@@ -1,3 +1,3 @@
|
|
1
1
|
import type { TEvDescribeSchemeResult } from '../../../../../types/api/schema';
|
2
2
|
import { InfoViewerItem } from '../../../../../components/InfoViewer';
|
3
|
-
export declare const prepareTopicSchemaInfo: (data?: TEvDescribeSchemeResult
|
3
|
+
export declare const prepareTopicSchemaInfo: (data?: TEvDescribeSchemeResult) => Array<InfoViewerItem>;
|
@@ -1,9 +1,8 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import block from 'bem-cn-lite';
|
3
3
|
import { useCallback, useEffect, useMemo, useState } from 'react';
|
4
|
-
import { useDispatch } from 'react-redux';
|
5
4
|
import DataTable from '@gravity-ui/react-data-table';
|
6
|
-
import { useAutofetcher, useTypedSelector, useSetting } from '../../../../utils/hooks';
|
5
|
+
import { useAutofetcher, useTypedSelector, useTypedDispatch, useSetting, } from '../../../../utils/hooks';
|
7
6
|
import { DEFAULT_TABLE_SETTINGS, PARTITIONS_HIDDEN_COLUMNS_KEY } from '../../../../utils/constants';
|
8
7
|
import { getNodesList, selectNodesMap } from '../../../../store/reducers/nodesList';
|
9
8
|
import { cleanTopicData, getTopic, selectConsumersNames, setDataWasNotLoaded as setTopicDataWasNotLoaded, } from '../../../../store/reducers/topic';
|
@@ -17,7 +16,7 @@ import i18n from './i18n';
|
|
17
16
|
import './Partitions.scss';
|
18
17
|
export const b = block('ydb-diagnostics-partitions');
|
19
18
|
export const Partitions = ({ path }) => {
|
20
|
-
const dispatch =
|
19
|
+
const dispatch = useTypedDispatch();
|
21
20
|
// Manual path control to ensure that topic state will be reset before data fetch
|
22
21
|
// so no request with wrong params will be sent
|
23
22
|
const [componentCurrentPath, setComponentCurrentPath] = useState(path);
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import DataTable from '@gravity-ui/react-data-table';
|
3
3
|
import block from 'bem-cn-lite';
|
4
4
|
import { SpeedMultiMeter } from '../../../../../components/SpeedMultiMeter';
|
5
|
-
import EntityStatus from '../../../../../components/EntityStatus/EntityStatus';
|
5
|
+
import { EntityStatus } from '../../../../../components/EntityStatus/EntityStatus';
|
6
6
|
import { getDefaultNodePath } from '../../../../Node/NodePages';
|
7
7
|
import { formatBytes, formatMsToUptime } from '../../../../../utils/dataFormatters/dataFormatters';
|
8
8
|
import { isNumeric } from '../../../../../utils/utils';
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import type { PreparedPartitionData } from '../../../../../store/reducers/partitions/types';
|
2
2
|
import type { NodesMap } from '../../../../../types/store/nodesList';
|
3
3
|
import type { PreparedPartitionDataWithHosts } from './types';
|
4
|
-
export declare const addHostToPartitions: (partitions?: PreparedPartitionData[], nodesMap?: NodesMap
|
4
|
+
export declare const addHostToPartitions: (partitions?: PreparedPartitionData[], nodesMap?: NodesMap) => PreparedPartitionDataWithHosts[];
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import { TenantDashboard } from '../TenantDashboard/TenantDashboard';
|
3
3
|
import { defaultDashboardConfig } from './defaultDashboardConfig';
|
4
|
-
export const DefaultOverviewContent = () => {
|
5
|
-
return _jsx(TenantDashboard, { charts: defaultDashboardConfig });
|
4
|
+
export const DefaultOverviewContent = ({ database }) => {
|
5
|
+
return _jsx(TenantDashboard, { database: database, charts: defaultDashboardConfig });
|
6
6
|
};
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckDetails.d.ts
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
/// <reference types="react" />
|
2
2
|
import type { IResponseError } from '../../../../../types/api/error';
|
3
|
-
import type {
|
3
|
+
import type { IssuesTree } from '../../../../../store/reducers/healthcheckInfo/types';
|
4
4
|
import './Healthcheck.scss';
|
5
5
|
interface HealthcheckDetailsProps {
|
6
|
-
issueTrees?:
|
6
|
+
issueTrees?: IssuesTree[];
|
7
7
|
loading?: boolean;
|
8
8
|
wasLoaded?: boolean;
|
9
9
|
error?: IResponseError;
|
@@ -2,8 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
2
2
|
import cn from 'bem-cn-lite';
|
3
3
|
import { Button, Icon } from '@gravity-ui/uikit';
|
4
4
|
import updateArrow from '../../../../../assets/icons/update-arrow.svg';
|
5
|
+
import { hcStatusToColorFlag } from '../../../../../store/reducers/healthcheckInfo/utils';
|
5
6
|
import { DiagnosticCard } from '../../../../../components/DiagnosticCard/DiagnosticCard';
|
6
|
-
import EntityStatus from '../../../../../components/EntityStatus/EntityStatus';
|
7
|
+
import { EntityStatus } from '../../../../../components/EntityStatus/EntityStatus';
|
7
8
|
import { ResponseError } from '../../../../../components/Errors/ResponseError';
|
8
9
|
import { Loader } from '../../../../../components/Loader';
|
9
10
|
import i18n from './i18n';
|
@@ -25,7 +26,7 @@ export function HealthcheckPreview(props) {
|
|
25
26
|
if (loading && !wasLoaded) {
|
26
27
|
return _jsx(Loader, { size: "m" });
|
27
28
|
}
|
28
|
-
return (_jsx("div", Object.assign({ className: b('preview-content') }, { children: !issuesStatistics || !issuesStatistics.length ? (i18n('status_message.ok')) : (_jsxs(_Fragment, { children: [_jsx("div", { children: i18n('label.issues') }), _jsx("div", Object.assign({ className: b('issues-statistics') }, { children: issuesStatistics.map(([status, count]) => (_jsx(EntityStatus, { mode: "icons", status: status, label: count.toString(), size: "l" }, status))) }))] })) })));
|
29
|
+
return (_jsx("div", Object.assign({ className: b('preview-content') }, { children: !issuesStatistics || !issuesStatistics.length ? (i18n('status_message.ok')) : (_jsxs(_Fragment, { children: [_jsx("div", { children: i18n('label.issues') }), _jsx("div", Object.assign({ className: b('issues-statistics') }, { children: issuesStatistics.map(([status, count]) => (_jsx(EntityStatus, { mode: "icons", status: hcStatusToColorFlag[status], label: count.toString(), size: "l" }, status))) }))] })) })));
|
29
30
|
};
|
30
31
|
return (_jsxs(DiagnosticCard, Object.assign({ className: b('preview'), active: active }, { children: [renderHeader(), renderContent()] })));
|
31
32
|
}
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.d.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
import {
|
1
|
+
import { IssuesTree } from '../../../../../../store/reducers/healthcheckInfo/types';
|
2
2
|
import './IssueTree.scss';
|
3
3
|
interface IssuesViewerProps {
|
4
|
-
issueTree:
|
4
|
+
issueTree: IssuesTree;
|
5
5
|
}
|
6
6
|
declare const IssueTree: ({ issueTree }: IssuesViewerProps) => JSX.Element;
|
7
7
|
export default IssueTree;
|
package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.js
CHANGED
@@ -1,20 +1,11 @@
|
|
1
|
-
|
2
|
-
var t = {};
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
-
t[p] = s[p];
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
-
t[p[i]] = s[p[i]];
|
9
|
-
}
|
10
|
-
return t;
|
11
|
-
};
|
1
|
+
import { __rest } from "tslib";
|
12
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
13
3
|
import { useCallback, useState } from 'react';
|
14
4
|
import cn from 'bem-cn-lite';
|
15
5
|
import _omit from 'lodash/omit';
|
16
6
|
import JSONTree from 'react-json-inspector';
|
17
7
|
import { TreeView } from 'ydb-ui-components';
|
8
|
+
import { hcStatusToColorFlag } from '../../../../../../store/reducers/healthcheckInfo/utils';
|
18
9
|
import { IssueTreeItem } from './IssueTreeItem';
|
19
10
|
import './IssueTree.scss';
|
20
11
|
const b = cn('issue-tree');
|
@@ -28,7 +19,7 @@ const IssueTree = ({ issueTree }) => {
|
|
28
19
|
const toggleCollapsed = () => {
|
29
20
|
setCollapsedIssues((collapsedIssues) => (Object.assign(Object.assign({}, collapsedIssues), { [id]: !isCollapsed })));
|
30
21
|
};
|
31
|
-
return (_jsxs(TreeView, Object.assign({ name: _jsx(IssueTreeItem, { status: status, message: message, type: type }), collapsed: isCollapsed, hasArrow: true, onClick: toggleCollapsed, onArrowClick: toggleCollapsed, level: level - 1 }, { children: [renderInfoPanel(_omit(rest, ['reason'])), renderTree(reasonsItems || [])] }), id));
|
22
|
+
return (_jsxs(TreeView, Object.assign({ name: _jsx(IssueTreeItem, { status: hcStatusToColorFlag[status], message: message, type: type }), collapsed: isCollapsed, hasArrow: true, onClick: toggleCollapsed, onArrowClick: toggleCollapsed, level: level - 1 }, { children: [renderInfoPanel(_omit(rest, ['reason'])), renderTree(reasonsItems || [])] }), id));
|
32
23
|
});
|
33
24
|
}, [issueTree, collapsedIssues]);
|
34
25
|
const renderInfoPanel = useCallback((info) => {
|