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,14 +1,4 @@
|
|
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 } from "react/jsx-runtime";
|
13
3
|
import { useEffect, useState } from 'react';
|
14
4
|
import cn from 'bem-cn-lite';
|
@@ -4,7 +4,7 @@ export interface InfoViewerItem {
|
|
4
4
|
label: ReactNode;
|
5
5
|
value: ReactNode;
|
6
6
|
}
|
7
|
-
interface InfoViewerProps {
|
7
|
+
export interface InfoViewerProps {
|
8
8
|
title?: string;
|
9
9
|
info?: InfoViewerItem[];
|
10
10
|
dots?: boolean;
|
@@ -13,5 +13,5 @@ interface InfoViewerProps {
|
|
13
13
|
multilineLabels?: boolean;
|
14
14
|
renderEmptyState?: (props?: Pick<InfoViewerProps, 'title' | 'size'>) => ReactNode;
|
15
15
|
}
|
16
|
-
declare const InfoViewer: ({ title, info, dots, size, className, multilineLabels, renderEmptyState, }: InfoViewerProps) => JSX.Element;
|
16
|
+
export declare const InfoViewer: ({ title, info, dots, size, className, multilineLabels, renderEmptyState, }: InfoViewerProps) => JSX.Element;
|
17
17
|
export default InfoViewer;
|
@@ -2,7 +2,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
2
2
|
import cn from 'bem-cn-lite';
|
3
3
|
import './InfoViewer.scss';
|
4
4
|
const b = cn('info-viewer');
|
5
|
-
const InfoViewer = ({ title, info, dots = true, size, className, multilineLabels, renderEmptyState, }) => {
|
5
|
+
export const InfoViewer = ({ title, info, dots = true, size, className, multilineLabels, renderEmptyState, }) => {
|
6
6
|
if ((!info || !info.length) && renderEmptyState) {
|
7
7
|
return _jsx(_Fragment, { children: renderEmptyState({ title, size }) });
|
8
8
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { TCdcStreamDescription } from '../../../types/api/schema';
|
2
2
|
export declare const formatCdcStreamItem: <Key extends keyof TCdcStreamDescription>(label: Key, value: TCdcStreamDescription[Key]) => {
|
3
3
|
label: string;
|
4
|
-
value:
|
4
|
+
value: {} | TCdcStreamDescription[Key] | null | undefined;
|
5
5
|
};
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { TDirEntry } from '../../../types/api/schema';
|
2
2
|
export declare const formatCommonItem: <Key extends keyof TDirEntry>(label: Key, value: TDirEntry[Key]) => {
|
3
3
|
label: string;
|
4
|
-
value:
|
4
|
+
value: {} | TDirEntry[Key] | null | undefined;
|
5
5
|
};
|
@@ -1,13 +1,13 @@
|
|
1
1
|
import { TPersQueueGroupDescription, TPQPartitionConfig, TPQTabletConfig } from '../../../types/api/schema';
|
2
2
|
export declare const formatPQGroupItem: <Key extends keyof TPersQueueGroupDescription>(label: Key, value: TPersQueueGroupDescription[Key]) => {
|
3
3
|
label: string;
|
4
|
-
value:
|
4
|
+
value: {} | TPersQueueGroupDescription[Key] | null | undefined;
|
5
5
|
};
|
6
6
|
export declare const formatPQTabletConfig: <Key extends keyof TPQTabletConfig>(label: Key, value: TPQTabletConfig[Key]) => {
|
7
7
|
label: string;
|
8
|
-
value:
|
8
|
+
value: {} | TPQTabletConfig[Key] | null | undefined;
|
9
9
|
};
|
10
10
|
export declare const formatPQPartitionConfig: <Key extends keyof TPQPartitionConfig>(label: Key, value: TPQPartitionConfig[Key]) => {
|
11
11
|
label: string;
|
12
|
-
value:
|
12
|
+
value: {} | TPQPartitionConfig[Key] | null | undefined;
|
13
13
|
};
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { TIndexDescription } from '../../../types/api/schema';
|
2
2
|
export declare const formatTableIndexItem: <Key extends keyof TIndexDescription>(label: Key, value: TIndexDescription[Key]) => {
|
3
3
|
label: string;
|
4
|
-
value:
|
4
|
+
value: {} | TIndexDescription[Key] | null | undefined;
|
5
5
|
};
|
@@ -2,17 +2,17 @@ import type { TFollowerGroup, TPartitionConfig, TTableStats } from '../../../typ
|
|
2
2
|
import type { TMetrics } from '../../../types/api/tenant';
|
3
3
|
export declare const formatTabletMetricsItem: <Key extends keyof TMetrics>(label: Key, value: TMetrics[Key]) => {
|
4
4
|
label: string;
|
5
|
-
value:
|
5
|
+
value: {} | TMetrics[Key] | null | undefined;
|
6
6
|
};
|
7
7
|
export declare const formatFollowerGroupItem: <Key extends keyof TFollowerGroup>(label: Key, value: TFollowerGroup[Key]) => {
|
8
8
|
label: string;
|
9
|
-
value:
|
9
|
+
value: {} | TFollowerGroup[Key] | null | undefined;
|
10
10
|
};
|
11
11
|
export declare const formatPartitionConfigItem: <Key extends keyof TPartitionConfig>(label: Key, value: TPartitionConfig[Key]) => {
|
12
12
|
label: string;
|
13
|
-
value:
|
13
|
+
value: {} | TPartitionConfig[Key] | null | undefined;
|
14
14
|
};
|
15
15
|
export declare const formatTableStatsItem: <Key extends keyof TTableStats>(label: Key, value: TTableStats[Key]) => {
|
16
16
|
label: string;
|
17
|
-
value:
|
17
|
+
value: {} | TTableStats[Key] | null | undefined;
|
18
18
|
};
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import type { ReactNode } from 'react';
|
2
2
|
import { InfoViewerItem } from './InfoViewer';
|
3
|
-
|
3
|
+
type LabelMap<T> = {
|
4
4
|
[label in keyof T]?: string;
|
5
5
|
};
|
6
|
-
|
6
|
+
type ValueFormatters<T> = {
|
7
7
|
[label in keyof T]?: (value: T[label]) => ReactNode;
|
8
8
|
};
|
9
9
|
interface CreateInfoFormatterOptions<Shape> {
|
@@ -13,7 +13,7 @@ interface CreateInfoFormatterOptions<Shape> {
|
|
13
13
|
}
|
14
14
|
export declare function createInfoFormatter<Shape extends Record<string, any>>({ values: valueFormatters, labels: labelMap, defaultValueFormatter, }: CreateInfoFormatterOptions<Shape>): <Key extends keyof Shape>(label: Key, value: Shape[Key]) => {
|
15
15
|
label: keyof Shape | NonNullable<LabelMap<Shape>[keyof Shape]>;
|
16
|
-
value:
|
16
|
+
value: {} | Shape[Key] | null | undefined;
|
17
17
|
};
|
18
18
|
export declare const formatObject: <Shape extends Record<string, any>>(formatter: <Key extends keyof Shape>(value: Key, label: Shape[Key]) => InfoViewerItem, obj?: Partial<Shape> | undefined) => InfoViewerItem[];
|
19
19
|
export {};
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import block from 'bem-cn-lite';
|
3
|
+
import { Skeleton } from '@gravity-ui/uikit';
|
4
|
+
import './InfoViewerSkeleton.scss';
|
5
|
+
const b = block('ydb-info-viewer-skeleton');
|
6
|
+
const SkeletonLabel = () => (_jsxs("div", Object.assign({ className: b('label') }, { children: [_jsx(Skeleton, { className: b('label__text') }), _jsx("div", { className: b('label__dots') })] })));
|
7
|
+
export const InfoViewerSkeleton = ({ rows = 8, className }) => (_jsx("div", Object.assign({ className: b(null, className) }, { children: [...new Array(rows)].map((_, index) => (_jsxs("div", Object.assign({ className: b('row') }, { children: [_jsx(SkeletonLabel, {}), _jsx(Skeleton, { className: b('value') })] }), `skeleton-row-${index}`))) })));
|
@@ -1,10 +1,8 @@
|
|
1
|
-
.ydb-
|
1
|
+
.ydb-info-viewer-skeleton {
|
2
2
|
display: flex;
|
3
3
|
flex-direction: column;
|
4
4
|
gap: 16px;
|
5
5
|
|
6
|
-
margin-top: 5px;
|
7
|
-
|
8
6
|
&__row {
|
9
7
|
display: flex;
|
10
8
|
align-items: flex-start;
|
@@ -39,10 +37,4 @@
|
|
39
37
|
min-width: 200px;
|
40
38
|
max-width: 20%;
|
41
39
|
}
|
42
|
-
|
43
|
-
&__versions {
|
44
|
-
min-width: 400px;
|
45
|
-
max-width: 40%;
|
46
|
-
height: 36px;
|
47
|
-
}
|
48
40
|
}
|
@@ -1,14 +1,4 @@
|
|
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 } from "react/jsx-runtime";
|
13
3
|
import { Link } from 'react-router-dom';
|
14
4
|
import cn from 'bem-cn-lite';
|
@@ -1,14 +1,4 @@
|
|
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 } from "react/jsx-runtime";
|
13
3
|
import { Link } from '@gravity-ui/uikit';
|
14
4
|
import { createExternalUILink, parseQuery } from '../../routes';
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import block from 'bem-cn-lite';
|
3
|
+
import { Link } from '@gravity-ui/uikit';
|
4
|
+
import { ArrowUpRightFromSquare } from '@gravity-ui/icons';
|
5
|
+
import { InternalLink } from '../InternalLink';
|
6
|
+
import './LinkWithIcon.scss';
|
7
|
+
const b = block('ydb-link-with-icon');
|
8
|
+
export const LinkWithIcon = ({ title, url, external = true }) => {
|
9
|
+
const linkContent = (_jsxs(_Fragment, { children: [title, '\u00a0', _jsx(ArrowUpRightFromSquare, {})] }));
|
10
|
+
if (external) {
|
11
|
+
return (_jsx(Link, Object.assign({ href: url, target: "_blank", className: b() }, { children: linkContent })));
|
12
|
+
}
|
13
|
+
return (_jsx(InternalLink, Object.assign({ to: url, className: b() }, { children: linkContent })));
|
14
|
+
};
|
@@ -2,6 +2,7 @@ import type { TimeFrame } from '../../utils/timeframes';
|
|
2
2
|
import type { ChartOptions, MetricDescription, OnChartDataStatusChange } from './types';
|
3
3
|
import './MetricChart.scss';
|
4
4
|
interface DiagnosticsChartProps {
|
5
|
+
database: string;
|
5
6
|
title?: string;
|
6
7
|
metrics: MetricDescription[];
|
7
8
|
timeFrame?: TimeFrame;
|
@@ -17,5 +18,5 @@ interface DiagnosticsChartProps {
|
|
17
18
|
*/
|
18
19
|
isChartVisible?: boolean;
|
19
20
|
}
|
20
|
-
export declare const MetricChart: ({ title, metrics, timeFrame, autorefresh, width, height, chartOptions, onChartDataStatusChange, isChartVisible, }: DiagnosticsChartProps) => JSX.Element;
|
21
|
+
export declare const MetricChart: ({ database, title, metrics, timeFrame, autorefresh, width, height, chartOptions, onChartDataStatusChange, isChartVisible, }: DiagnosticsChartProps) => JSX.Element;
|
21
22
|
export {};
|
@@ -11,6 +11,7 @@ import { convertResponse } from './convertReponse';
|
|
11
11
|
import { getDefaultDataFormatter } from './getDefaultDataFormatter';
|
12
12
|
import { getChartData } from './getChartData';
|
13
13
|
import { chartReducer, initialChartState, setChartData, setChartDataLoading, setChartDataWasNotLoaded, setChartError, } from './reducer';
|
14
|
+
import i18n from './i18n';
|
14
15
|
import './MetricChart.scss';
|
15
16
|
const b = cn('ydb-metric-chart');
|
16
17
|
settings.set({ plugins: [YagrPlugin] });
|
@@ -66,7 +67,7 @@ const prepareWidgetData = (data, options = {}) => {
|
|
66
67
|
},
|
67
68
|
};
|
68
69
|
};
|
69
|
-
export const MetricChart = ({ title, metrics, timeFrame = '1h', autorefresh, width = 400, height = width / 1.5, chartOptions, onChartDataStatusChange, isChartVisible, }) => {
|
70
|
+
export const MetricChart = ({ database, title, metrics, timeFrame = '1h', autorefresh, width = 400, height = width / 1.5, chartOptions, onChartDataStatusChange, isChartVisible, }) => {
|
70
71
|
const mounted = useRef(false);
|
71
72
|
useEffect(() => {
|
72
73
|
mounted.current = true;
|
@@ -97,6 +98,7 @@ export const MetricChart = ({ title, metrics, timeFrame = '1h', autorefresh, wid
|
|
97
98
|
// should be width > maxDataPoints to prevent points that cannot be selected
|
98
99
|
// more px per dataPoint - easier to select, less - chart is smoother
|
99
100
|
const response = await getChartData({
|
101
|
+
database,
|
100
102
|
metrics,
|
101
103
|
timeFrame,
|
102
104
|
maxDataPoints: width / 2,
|
@@ -105,7 +107,8 @@ export const MetricChart = ({ title, metrics, timeFrame = '1h', autorefresh, wid
|
|
105
107
|
if (!mounted.current) {
|
106
108
|
return;
|
107
109
|
}
|
108
|
-
//
|
110
|
+
// Response could be a plain html for ydb versions without charts support
|
111
|
+
// Or there could be an error in response with 200 status code
|
109
112
|
// It happens when request is OK, but chart data cannot be returned due to some reason
|
110
113
|
// Example: charts are not enabled in the DB ('GraphShard is not enabled' error)
|
111
114
|
if (Array.isArray(response)) {
|
@@ -113,7 +116,9 @@ export const MetricChart = ({ title, metrics, timeFrame = '1h', autorefresh, wid
|
|
113
116
|
dispatch(setChartData(preparedData));
|
114
117
|
}
|
115
118
|
else {
|
116
|
-
const err = {
|
119
|
+
const err = {
|
120
|
+
statusText: typeof response === 'string' ? i18n('not-supported') : response.error,
|
121
|
+
};
|
117
122
|
throw err;
|
118
123
|
}
|
119
124
|
}
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import { type TimeFrame } from '../../utils/timeframes';
|
2
2
|
import type { MetricDescription } from './types';
|
3
3
|
interface GetChartDataParams {
|
4
|
+
database: string;
|
4
5
|
metrics: MetricDescription[];
|
5
6
|
timeFrame: TimeFrame;
|
6
7
|
maxDataPoints: number;
|
7
8
|
}
|
8
|
-
export declare const getChartData: ({ metrics, timeFrame, maxDataPoints }: GetChartDataParams) => Promise<import("../../types/api/render").JsonRenderResponse>;
|
9
|
+
export declare const getChartData: ({ database, metrics, timeFrame, maxDataPoints, }: GetChartDataParams) => Promise<import("../../types/api/render").JsonRenderResponse>;
|
9
10
|
export {};
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { TIMEFRAMES } from '../../utils/timeframes';
|
2
|
-
export const getChartData = async ({ metrics, timeFrame, maxDataPoints }) => {
|
2
|
+
export const getChartData = async ({ database, metrics, timeFrame, maxDataPoints, }) => {
|
3
3
|
const targetString = metrics.map((metric) => `target=${metric.target}`).join('&');
|
4
4
|
const until = Math.round(Date.now() / 1000);
|
5
5
|
const from = until - TIMEFRAMES[timeFrame];
|
6
|
-
return window.api.getChartData({ target: targetString, from, until, maxDataPoints }, { concurrentId: `getChartData|${targetString}` });
|
6
|
+
return window.api.getChartData({ target: targetString, from, until, maxDataPoints, database }, { concurrentId: `getChartData|${targetString}` });
|
7
7
|
};
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import type { ChartDataType, ChartValue } from './types';
|
2
|
-
export declare const getDefaultDataFormatter: (dataType?: ChartDataType
|
2
|
+
export declare const getDefaultDataFormatter: (dataType?: ChartDataType) => typeof formatChartValueToMs | undefined;
|
3
3
|
declare function formatChartValueToMs(value: ChartValue): string;
|
4
4
|
export {};
|
@@ -14,7 +14,7 @@ export declare const setChartError: (error: IResponseError) => {
|
|
14
14
|
export declare const setChartDataWasNotLoaded: () => {
|
15
15
|
readonly type: "chart/SET_DATA_WAS_NOT_LOADED";
|
16
16
|
};
|
17
|
-
|
17
|
+
type ChartAction = ReturnType<typeof setChartDataLoading> | ReturnType<typeof setChartData> | ReturnType<typeof setChartError> | ReturnType<typeof setChartDataWasNotLoaded>;
|
18
18
|
interface ChartState {
|
19
19
|
loading: boolean;
|
20
20
|
wasLoaded: boolean;
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export
|
1
|
+
export type Metric = 'queries.requests' | 'queries.latencies.p50' | 'queries.latencies.p75' | 'queries.latencies.p90' | 'queries.latencies.p99' | 'resources.cpu.usage' | 'resources.memory.used_bytes' | 'resources.storage.used_bytes';
|
2
2
|
export interface MetricDescription {
|
3
3
|
target: Metric;
|
4
4
|
title?: string;
|
@@ -11,10 +11,10 @@ export interface PreparedMetricsData {
|
|
11
11
|
timeline: number[];
|
12
12
|
metrics: PreparedMetric[];
|
13
13
|
}
|
14
|
-
export
|
15
|
-
export
|
14
|
+
export type ChartValue = number | string | null;
|
15
|
+
export type ChartDataType = 'ms' | 'size';
|
16
16
|
export interface ChartOptions {
|
17
17
|
dataType?: ChartDataType;
|
18
18
|
}
|
19
|
-
export
|
20
|
-
export
|
19
|
+
export type ChartDataStatus = 'loading' | 'success' | 'error';
|
20
|
+
export type OnChartDataStatusChange = (newStatus: ChartDataStatus) => void;
|
@@ -3,7 +3,7 @@ import block from 'bem-cn-lite';
|
|
3
3
|
import { Button, PopoverBehavior } from '@gravity-ui/uikit';
|
4
4
|
import { getDefaultNodePath } from '../../containers/Node/NodePages';
|
5
5
|
import { isUnavailableNode } from '../../utils/nodes';
|
6
|
-
import EntityStatus from '../EntityStatus/EntityStatus';
|
6
|
+
import { EntityStatus } from '../EntityStatus/EntityStatus';
|
7
7
|
import { NodeEndpointsTooltipContent } from '../TooltipsContent';
|
8
8
|
import { Icon } from '../Icon';
|
9
9
|
import { CellWithPopover } from '../CellWithPopover/CellWithPopover';
|
@@ -0,0 +1,11 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { PreparedPDisk } from '../../utils/disks/types';
|
3
|
+
import { type InfoViewerProps } from '../InfoViewer/InfoViewer';
|
4
|
+
import './PDiskInfo.scss';
|
5
|
+
interface PDiskInfoProps<T extends PreparedPDisk> extends Omit<InfoViewerProps, 'info'> {
|
6
|
+
pDisk: T;
|
7
|
+
nodeId?: number | string | null;
|
8
|
+
isPDiskPage?: boolean;
|
9
|
+
}
|
10
|
+
export declare function PDiskInfo<T extends PreparedPDisk>({ pDisk, nodeId, isPDiskPage, ...infoViewerProps }: PDiskInfoProps<T>): JSX.Element;
|
11
|
+
export {};
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { __rest } from "tslib";
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
3
|
+
import { createPDiskDeveloperUILink } from '../../utils/developerUI/developerUI';
|
4
|
+
import { cn } from '../../utils/cn';
|
5
|
+
import { formatStorageValuesToGb } from '../../utils/dataFormatters/dataFormatters';
|
6
|
+
import { valueIsDefined } from '../../utils';
|
7
|
+
import { EMPTY_DATA_PLACEHOLDER } from '../../utils/constants';
|
8
|
+
import { getPDiskPagePath } from '../../routes';
|
9
|
+
import { InfoViewer } from '../InfoViewer/InfoViewer';
|
10
|
+
import { EntityStatus } from '../EntityStatus/EntityStatus';
|
11
|
+
import { LinkWithIcon } from '../LinkWithIcon/LinkWithIcon';
|
12
|
+
import { ProgressViewer } from '../ProgressViewer/ProgressViewer';
|
13
|
+
import { pDiskInfoKeyset } from './i18n';
|
14
|
+
import './PDiskInfo.scss';
|
15
|
+
const b = cn('ydb-pdisk-info');
|
16
|
+
export function PDiskInfo(_a) {
|
17
|
+
var { pDisk, nodeId, isPDiskPage = false } = _a, infoViewerProps = __rest(_a, ["pDisk", "nodeId", "isPDiskPage"]);
|
18
|
+
const { PDiskId, Path, Guid, Category, Type, Device, Realtime, State, SerialNumber, TotalSize, AvailableSize, } = pDisk;
|
19
|
+
const total = Number(TotalSize);
|
20
|
+
const available = Number(AvailableSize);
|
21
|
+
const pdiskInfo = [];
|
22
|
+
if (valueIsDefined(Path)) {
|
23
|
+
pdiskInfo.push({ label: pDiskInfoKeyset('path'), value: Path });
|
24
|
+
}
|
25
|
+
if (valueIsDefined(Guid)) {
|
26
|
+
pdiskInfo.push({ label: pDiskInfoKeyset('guid'), value: Guid });
|
27
|
+
}
|
28
|
+
if (valueIsDefined(Category)) {
|
29
|
+
pdiskInfo.push({ label: pDiskInfoKeyset('category'), value: Category });
|
30
|
+
pdiskInfo.push({ label: pDiskInfoKeyset('type'), value: Type });
|
31
|
+
}
|
32
|
+
if (total >= 0 && available >= 0) {
|
33
|
+
pdiskInfo.push({
|
34
|
+
label: pDiskInfoKeyset('size'),
|
35
|
+
value: (_jsx(ProgressViewer, { value: total - available, capacity: total, formatValues: formatStorageValuesToGb, colorizeProgress: true })),
|
36
|
+
});
|
37
|
+
}
|
38
|
+
if (valueIsDefined(State)) {
|
39
|
+
pdiskInfo.push({ label: pDiskInfoKeyset('state'), value: State });
|
40
|
+
}
|
41
|
+
if (valueIsDefined(Device)) {
|
42
|
+
pdiskInfo.push({
|
43
|
+
label: pDiskInfoKeyset('device'),
|
44
|
+
value: _jsx(EntityStatus, { status: Device }),
|
45
|
+
});
|
46
|
+
}
|
47
|
+
if (valueIsDefined(Realtime)) {
|
48
|
+
pdiskInfo.push({
|
49
|
+
label: pDiskInfoKeyset('realtime'),
|
50
|
+
value: _jsx(EntityStatus, { status: Realtime }),
|
51
|
+
});
|
52
|
+
}
|
53
|
+
if (valueIsDefined(SerialNumber)) {
|
54
|
+
pdiskInfo.push({
|
55
|
+
label: pDiskInfoKeyset('serial-number'),
|
56
|
+
value: SerialNumber || EMPTY_DATA_PLACEHOLDER,
|
57
|
+
});
|
58
|
+
}
|
59
|
+
if (valueIsDefined(PDiskId) && valueIsDefined(nodeId)) {
|
60
|
+
const pDiskPagePath = getPDiskPagePath(PDiskId, nodeId);
|
61
|
+
const pDiskInternalViewerPath = createPDiskDeveloperUILink({
|
62
|
+
nodeId,
|
63
|
+
pDiskId: PDiskId,
|
64
|
+
});
|
65
|
+
pdiskInfo.push({
|
66
|
+
label: pDiskInfoKeyset('links'),
|
67
|
+
value: (_jsxs("span", Object.assign({ className: b('links') }, { children: [!isPDiskPage && (_jsx(LinkWithIcon, { title: pDiskInfoKeyset('pdisk-page'), url: pDiskPagePath, external: false })), _jsx(LinkWithIcon, { title: pDiskInfoKeyset('developer-ui'), url: pDiskInternalViewerPath })] }))),
|
68
|
+
});
|
69
|
+
}
|
70
|
+
return _jsx(InfoViewer, Object.assign({ info: pdiskInfo }, infoViewerProps));
|
71
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
{
|
2
|
+
"path": "Path",
|
3
|
+
"guid": "GUID",
|
4
|
+
"category": "Category",
|
5
|
+
"type": "Type",
|
6
|
+
"size": "Size",
|
7
|
+
"state": "State",
|
8
|
+
"device": "Device",
|
9
|
+
"realtime": "Realtime",
|
10
|
+
"serial-number": "SerialNumber",
|
11
|
+
"links": "Links",
|
12
|
+
"developer-ui": "Developer UI",
|
13
|
+
"pdisk-page": "PDisk page"
|
14
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const pDiskInfoKeyset: (key: "path" | "type" | "state" | "size" | "links" | "guid" | "category" | "device" | "realtime" | "serial-number" | "developer-ui" | "pdisk-page", params?: import("@gravity-ui/i18n").Params | undefined) => string;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
2
|
+
import { cn } from '../../utils/cn';
|
3
|
+
import './PageMeta.scss';
|
4
|
+
const b = cn('ydb-page-meta');
|
5
|
+
export function PageMeta({ items, className }) {
|
6
|
+
return (_jsx("div", Object.assign({ className: b(null, className) }, { children: items.filter((item) => Boolean(item)).join('\u00a0\u00a0\u00B7\u00a0\u00a0') })));
|
7
|
+
}
|
@@ -10,7 +10,7 @@ export declare const PROGRESS_VIEWER_SIZE_IDS: {
|
|
10
10
|
readonly l: "l";
|
11
11
|
readonly head: "head";
|
12
12
|
};
|
13
|
-
|
13
|
+
type ProgressViewerSize = ValueOf<typeof PROGRESS_VIEWER_SIZE_IDS>;
|
14
14
|
interface ProgressViewerProps {
|
15
15
|
value?: number | string;
|
16
16
|
capacity?: number | string;
|
@@ -1,11 +1,11 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import React, { useEffect } from 'react';
|
3
|
-
import {
|
3
|
+
import { useTypedDispatch } from '../../../utils/hooks';
|
4
4
|
import { showTooltip, hideTooltip } from '../../../store/reducers/tooltip';
|
5
5
|
import { b } from '../QueryResultTable';
|
6
6
|
export const Cell = React.memo(function Cell(props) {
|
7
7
|
const { className, value } = props;
|
8
|
-
const dispatch =
|
8
|
+
const dispatch = useTypedDispatch();
|
9
9
|
useEffect(() => () => {
|
10
10
|
dispatch(hideTooltip());
|
11
11
|
}, [dispatch]);
|
@@ -1,14 +1,4 @@
|
|
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 } from "react/jsx-runtime";
|
13
3
|
import { useMemo } from 'react';
|
14
4
|
import cn from 'bem-cn-lite';
|
@@ -0,0 +1,12 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import { EFlag } from '../../types/api/enums';
|
3
|
+
import './StatusIcon.scss';
|
4
|
+
export type StatusIconMode = 'color' | 'icons';
|
5
|
+
export type StatusIconSize = 'xs' | 's' | 'm' | 'l';
|
6
|
+
interface StatusIconProps {
|
7
|
+
status?: EFlag;
|
8
|
+
size?: StatusIconSize;
|
9
|
+
mode?: StatusIconMode;
|
10
|
+
}
|
11
|
+
export declare function StatusIcon({ status, size, mode }: StatusIconProps): JSX.Element;
|
12
|
+
export {};
|