ydb-embedded-ui 14.16.1 → 15.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.d.ts +6 -2
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.js +3 -3
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.js.map +1 -1
- package/dist/components/ConfirmationDialog/ConfirmationDialog.js +2 -2
- package/dist/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
- package/dist/components/CriticalActionDialog/CriticalActionDialog.d.ts +6 -2
- package/dist/components/CriticalActionDialog/CriticalActionDialog.js +8 -5
- package/dist/components/CriticalActionDialog/CriticalActionDialog.js.map +1 -1
- package/dist/components/CriticalActionDialog/CriticalActionDialog.scss +0 -40
- package/dist/components/EvictVDiskButton/EvictVDiskButton.d.ts +10 -0
- package/dist/components/EvictVDiskButton/EvictVDiskButton.js +48 -0
- package/dist/components/EvictVDiskButton/EvictVDiskButton.js.map +1 -0
- package/dist/components/EvictVDiskButton/i18n/en.json +10 -0
- package/dist/components/EvictVDiskButton/i18n/index.d.ts +1 -0
- package/dist/components/EvictVDiskButton/i18n/index.js +5 -0
- package/dist/components/EvictVDiskButton/i18n/index.js.map +1 -0
- package/dist/components/MetricChart/reducer.d.ts +2 -2
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/PaginatedTable/PaginatedTable.scss +1 -1
- package/dist/components/QueriesActivityBar/useQueriesActivityData.js +4 -23
- package/dist/components/QueriesActivityBar/useQueriesActivityData.js.map +1 -1
- package/dist/components/ResizeableDataTable/ResizeableDataTable.d.ts +2 -1
- package/dist/components/ResizeableDataTable/ResizeableDataTable.js +2 -2
- package/dist/components/ResizeableDataTable/ResizeableDataTable.js.map +1 -1
- package/dist/components/ResizeableDataTable/ResizeableDataTable.scss +4 -2
- package/dist/components/ServerlessDBLabel/ServerlessDBLabel.d.ts +3 -0
- package/dist/components/ServerlessDBLabel/ServerlessDBLabel.js +7 -0
- package/dist/components/ServerlessDBLabel/ServerlessDBLabel.js.map +1 -0
- package/dist/components/ServerlessDBLabel/i18n/en.json +4 -0
- package/dist/components/ServerlessDBLabel/i18n/index.d.ts +1 -0
- package/dist/components/ServerlessDBLabel/i18n/index.js +5 -0
- package/dist/components/ServerlessDBLabel/i18n/index.js.map +1 -0
- package/dist/components/TooltipsContent/NodeEndpointsTooltipContent/i18n/index.d.ts +1 -1
- package/dist/components/VDiskInfo/VDiskInfo.d.ts +1 -2
- package/dist/components/VDiskInfo/VDiskInfo.js +2 -2
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskPopup/VDiskPopup.js +34 -22
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/components/YDBDefinitionList/YDBDefinitionList.d.ts +1 -2
- package/dist/components/YDBDefinitionList/YDBDefinitionList.js +3 -4
- package/dist/components/YDBDefinitionList/YDBDefinitionList.js.map +1 -1
- package/dist/components/YDBDefinitionList/YDBDefinitionList.scss +0 -15
- package/dist/containers/App/Content.js +1 -1
- package/dist/containers/App/Content.js.map +1 -1
- package/dist/containers/AsideNavigation/Navigation.js +12 -7
- package/dist/containers/AsideNavigation/Navigation.js.map +1 -1
- package/dist/containers/AsideNavigation/Navigation.scss +5 -6
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js +2 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsStorage.js.map +1 -1
- package/dist/containers/Header/Header.d.ts +1 -2
- package/dist/containers/Header/Header.js +84 -68
- package/dist/containers/Header/Header.js.map +1 -1
- package/dist/containers/Header/Header.scss +4 -0
- package/dist/containers/Header/HeaderActionsMenu.d.ts +9 -0
- package/dist/containers/Header/HeaderActionsMenu.js +96 -0
- package/dist/containers/Header/HeaderActionsMenu.js.map +1 -0
- package/dist/containers/Header/breadcrumbs.d.ts +1 -0
- package/dist/containers/Header/breadcrumbs.js +14 -9
- package/dist/containers/Header/breadcrumbs.js.map +1 -1
- package/dist/containers/Header/i18n/en.json +8 -3
- package/dist/containers/Header/i18n/index.d.ts +1 -1
- package/dist/containers/Operations/useOperationsInfiniteQuery.d.ts +1 -1
- package/dist/containers/PDiskPage/DecommissionButton/DecommissionButton.js +1 -1
- package/dist/containers/PDiskPage/DecommissionButton/DecommissionButton.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.js +3 -3
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.scss +0 -4
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js +1 -1
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js.map +1 -1
- package/dist/containers/Tablets/TabletsTable.js +4 -4
- package/dist/containers/Tablets/TabletsTable.js.map +1 -1
- package/dist/containers/Tablets/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +12 -3
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.scss +6 -0
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.d.ts +3 -2
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js +38 -22
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/DiagnosticsTabs/DiagnosticsTabs.js +1 -1
- package/dist/containers/Tenant/Diagnostics/DiagnosticsTabs/DiagnosticsTabs.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.js +1 -2
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.scss +1 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/ManagePartitioningDialog/utils.d.ts +6 -6
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/TableInfo.js +2 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/TableInfo.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/TableInfo.scss +0 -4
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/Columns.scss +20 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/CommittedOffsetCell.d.ts +9 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/CommittedOffsetCell.js +164 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/CommittedOffsetCell.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js +2 -4
- package/dist/containers/Tenant/Diagnostics/Partitions/columns/columns.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/i18n/en.json +20 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/i18n/index.js +1 -2
- package/dist/containers/Tenant/Diagnostics/Partitions/i18n/index.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/constants.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showMoveOffsetConfirmation.d.ts +7 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showMoveOffsetConfirmation.js +17 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showMoveOffsetConfirmation.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showSpecifyOffsetConfirmation.d.ts +5 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showSpecifyOffsetConfirmation.js +81 -0
- package/dist/containers/Tenant/Diagnostics/Partitions/utils/showSpecifyOffsetConfirmation.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.d.ts +7 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.js +16 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/MediaSectionSummary.scss +43 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsage.d.ts +9 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsage.js +66 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsage.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsage.scss +6 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageSections.d.ts +9 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageSections.js +21 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageSections.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageSections.scss +9 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageTable.d.ts +13 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageTable.js +95 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageTable.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/StorageUsageTable.scss +88 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/__test__/storageUsageFormatters.test.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/__test__/storageUsageFormatters.test.js +26 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/__test__/storageUsageFormatters.test.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/storageUsageFormatters.d.ts +7 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/storageUsageFormatters.js +70 -0
- package/dist/containers/Tenant/Diagnostics/StorageUsage/storageUsageFormatters.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +16 -5
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/i18n/en.json +1 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/StatsWrapper/StatsWrapper.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +20 -38
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +0 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.scss +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/__test__/utils.test.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/__test__/utils.test.js +181 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/__test__/utils.test.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/columns.js +35 -2
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/columns.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/constants.d.ts +4 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/constants.js +26 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/constants.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/i18n/en.json +9 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/columns/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/utils.js +61 -13
- package/dist/containers/Tenant/Diagnostics/TopQueries/utils.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js +15 -1
- package/dist/containers/Tenant/Diagnostics/TopicData/useTopicProbeQuery.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/__test__/DiagnosticsPages.test.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/__test__/DiagnosticsPages.test.js +34 -0
- package/dist/containers/Tenant/Diagnostics/__test__/DiagnosticsPages.test.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/__test__/useDiagnosticsPages.test.d.ts +1 -0
- package/dist/containers/Tenant/Diagnostics/__test__/useDiagnosticsPages.test.js +71 -0
- package/dist/containers/Tenant/Diagnostics/__test__/useDiagnosticsPages.test.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/i18n/en.json +19 -1
- package/dist/containers/Tenant/Diagnostics/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/tabsContent.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/tabsContent.js +34 -78
- package/dist/containers/Tenant/Diagnostics/tabsContent.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/useDiagnosticsPages.js +18 -10
- package/dist/containers/Tenant/Diagnostics/useDiagnosticsPages.js.map +1 -1
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.d.ts +4 -1
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js +5 -5
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.d.ts +3 -1
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +2 -2
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js.map +1 -1
- package/dist/containers/Tenant/Query/Query.d.ts +3 -0
- package/dist/containers/Tenant/Query/Query.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.d.ts +4 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +2 -2
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js +18 -3
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js.map +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.d.ts +8 -3
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.js +10 -5
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.js.map +1 -1
- package/dist/containers/Tenant/Query/i18n/en.json +1 -0
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Tenant.js +42 -33
- package/dist/containers/Tenant/Tenant.js.map +1 -1
- package/dist/containers/Tenant/TenantContext.d.ts +1 -6
- package/dist/containers/Tenant/TenantContext.js +2 -4
- package/dist/containers/Tenant/TenantContext.js.map +1 -1
- package/dist/containers/Tenant/TenantNavigation/TenantNavigation.js +1 -1
- package/dist/containers/Tenant/TenantNavigation/TenantNavigation.js.map +1 -1
- package/dist/containers/Tenant/TenantNavigation/useTenantNavigation.d.ts +9 -7
- package/dist/containers/Tenant/TenantNavigation/useTenantNavigation.js +25 -7
- package/dist/containers/Tenant/TenantNavigation/useTenantNavigation.js.map +1 -1
- package/dist/containers/Tenant/i18n/en.json +2 -1
- package/dist/containers/Tenant/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/i18n/en.json +2 -1
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +1 -0
- package/dist/containers/UserSettings/settings.js +5 -0
- package/dist/containers/UserSettings/settings.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +16 -50
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/VDiskPage/i18n/en.json +0 -6
- package/dist/containers/VDiskPage/i18n/index.d.ts +1 -1
- package/dist/services/api/viewer.d.ts +4 -1
- package/dist/services/api/viewer.js +21 -0
- package/dist/services/api/viewer.js.map +1 -1
- package/dist/store/configureStore.d.ts +4 -4
- package/dist/store/defaultStore.d.ts +2 -2
- package/dist/store/reducers/api.d.ts +1 -1
- package/dist/store/reducers/api.js +2 -0
- package/dist/store/reducers/api.js.map +1 -1
- package/dist/store/reducers/authentication/authentication.d.ts +4 -4
- package/dist/store/reducers/cancelQuery.d.ts +2 -2
- package/dist/store/reducers/capabilities/capabilities.d.ts +39 -39
- package/dist/store/reducers/capabilities/hooks.d.ts +8 -5
- package/dist/store/reducers/capabilities/hooks.js +10 -0
- package/dist/store/reducers/capabilities/hooks.js.map +1 -1
- package/dist/store/reducers/cluster/cluster.d.ts +5 -5
- package/dist/store/reducers/cluster/utils.js +2 -5
- package/dist/store/reducers/cluster/utils.js.map +1 -1
- package/dist/store/reducers/clusters/clusters.d.ts +2 -2
- package/dist/store/reducers/codeAssist/codeAssist.d.ts +6 -6
- package/dist/store/reducers/configs.d.ts +3 -3
- package/dist/store/reducers/environments/environments.d.ts +2 -2
- package/dist/store/reducers/executeTopQueries/__test__/utils.test.d.ts +1 -0
- package/dist/store/reducers/executeTopQueries/__test__/utils.test.js +109 -0
- package/dist/store/reducers/executeTopQueries/__test__/utils.test.js.map +1 -0
- package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +10 -3
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js +46 -9
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js.map +1 -1
- package/dist/store/reducers/executeTopQueries/utils.d.ts +2 -0
- package/dist/store/reducers/executeTopQueries/utils.js +27 -0
- package/dist/store/reducers/executeTopQueries/utils.js.map +1 -1
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +44 -44
- package/dist/store/reducers/heatmap.d.ts +2 -2
- package/dist/store/reducers/hotKeys/hotKeys.d.ts +2 -2
- package/dist/store/reducers/index.d.ts +3 -3
- package/dist/store/reducers/network/network.d.ts +2 -2
- package/dist/store/reducers/node/node.d.ts +3 -3
- package/dist/store/reducers/node/selectors.d.ts +1 -1
- package/dist/store/reducers/nodes/nodes.d.ts +2 -2
- package/dist/store/reducers/nodesList.d.ts +12 -12
- package/dist/store/reducers/operations.d.ts +4 -4
- package/dist/store/reducers/overview/overview.d.ts +2 -2
- package/dist/store/reducers/partitions/partitions.d.ts +4 -2
- package/dist/store/reducers/partitions/partitions.js +20 -1
- package/dist/store/reducers/partitions/partitions.js.map +1 -1
- package/dist/store/reducers/partitions/types.d.ts +9 -0
- package/dist/store/reducers/pdisk/pdisk.d.ts +2 -2
- package/dist/store/reducers/pdisk/utils.js +6 -1
- package/dist/store/reducers/pdisk/utils.js.map +1 -1
- package/dist/store/reducers/planToSvg.d.ts +2 -2
- package/dist/store/reducers/preview.d.ts +2 -2
- package/dist/store/reducers/query/api.d.ts +4 -4
- package/dist/store/reducers/replication.d.ts +2 -2
- package/dist/store/reducers/schema/schema.d.ts +16 -16
- package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +39 -39
- package/dist/store/reducers/settings/api.d.ts +4 -4
- package/dist/store/reducers/settings/constants.d.ts +2 -0
- package/dist/store/reducers/settings/constants.js +2 -0
- package/dist/store/reducers/settings/constants.js.map +1 -1
- package/dist/store/reducers/settings/settings.d.ts +1 -1
- package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +2 -2
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js +4 -4
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js.map +1 -1
- package/dist/store/reducers/showCreateTable/showCreateTable.d.ts +2 -2
- package/dist/store/reducers/storage/prepareGroupsDisks.d.ts +1 -0
- package/dist/store/reducers/storage/storage.d.ts +3 -3
- package/dist/store/reducers/storage/utils.js +8 -50
- package/dist/store/reducers/storage/utils.js.map +1 -1
- package/dist/store/reducers/storageUsage/StorageUsage.d.ts +80 -0
- package/dist/store/reducers/storageUsage/StorageUsage.js +219 -0
- package/dist/store/reducers/storageUsage/StorageUsage.js.map +1 -0
- package/dist/store/reducers/storageUsage/__test__/storageUsage.test.d.ts +1 -0
- package/dist/store/reducers/storageUsage/__test__/storageUsage.test.js +474 -0
- package/dist/store/reducers/storageUsage/__test__/storageUsage.test.js.map +1 -0
- package/dist/store/reducers/streamingQuery/streamingQuery.d.ts +2 -2
- package/dist/store/reducers/tableData.d.ts +1 -1
- package/dist/store/reducers/tableData.js +1 -1
- package/dist/store/reducers/tableData.js.map +1 -1
- package/dist/store/reducers/tablePartitioning/tablePartitioning.d.ts +2 -2
- package/dist/store/reducers/tableSchemaData.d.ts +2 -2
- package/dist/store/reducers/tablet.d.ts +7 -7
- package/dist/store/reducers/tablets.d.ts +3 -3
- package/dist/store/reducers/tenant/constants.d.ts +2 -1
- package/dist/store/reducers/tenant/constants.js +2 -1
- package/dist/store/reducers/tenant/constants.js.map +1 -1
- package/dist/store/reducers/tenant/tenant.d.ts +3 -2
- package/dist/store/reducers/tenant/tenant.js +2 -1
- package/dist/store/reducers/tenant/tenant.js.map +1 -1
- package/dist/store/reducers/tenant/types.d.ts +1 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +2 -2
- package/dist/store/reducers/tenants/tenants.d.ts +2 -2
- package/dist/store/reducers/tenants/utils.js +6 -2
- package/dist/store/reducers/tenants/utils.js.map +1 -1
- package/dist/store/reducers/topic.d.ts +45 -45
- package/dist/store/reducers/vdisk/vdisk.d.ts +3 -3
- package/dist/store/reducers/viewSchema/viewSchema.d.ts +2 -2
- package/dist/types/api/capabilities.d.ts +1 -1
- package/dist/types/api/storage.d.ts +58 -3
- package/dist/types/api/tenant.d.ts +1 -0
- package/dist/types/api/tenant.js.map +1 -1
- package/dist/uiFactory/types.d.ts +4 -8
- package/dist/utils/__test__/shardsQueryBuilders.test.d.ts +1 -0
- package/dist/utils/__test__/shardsQueryBuilders.test.js +222 -0
- package/dist/utils/__test__/shardsQueryBuilders.test.js.map +1 -0
- package/dist/utils/bytesParsers/formatBytes.d.ts +5 -1
- package/dist/utils/bytesParsers/formatBytes.js +8 -1
- package/dist/utils/bytesParsers/formatBytes.js.map +1 -1
- package/dist/utils/bytesParsers/i18n/en.json +1 -0
- package/dist/utils/bytesParsers/i18n/index.d.ts +1 -1
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.js +1 -0
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/developerUI/developerUI.d.ts +1 -1
- package/dist/utils/developerUI/developerUI.js +1 -1
- package/dist/utils/developerUI/developerUI.js.map +1 -1
- package/dist/utils/disks/__test__/donorRecipientReferences.test.d.ts +1 -0
- package/dist/utils/disks/__test__/donorRecipientReferences.test.js +259 -0
- package/dist/utils/disks/__test__/donorRecipientReferences.test.js.map +1 -0
- package/dist/utils/disks/calculateVDiskSeverity.d.ts +0 -1
- package/dist/utils/disks/calculateVDiskSeverity.js +2 -2
- package/dist/utils/disks/calculateVDiskSeverity.js.map +1 -1
- package/dist/utils/disks/helpers.d.ts +20 -0
- package/dist/utils/disks/helpers.js +63 -0
- package/dist/utils/disks/helpers.js.map +1 -1
- package/dist/utils/disks/normalizeMediaType.d.ts +5 -0
- package/dist/utils/disks/normalizeMediaType.js +20 -0
- package/dist/utils/disks/normalizeMediaType.js.map +1 -0
- package/dist/utils/hooks/__test__/useQueryExecutionSettings.test.js +56 -1
- package/dist/utils/hooks/__test__/useQueryExecutionSettings.test.js.map +1 -1
- package/dist/utils/hooks/useLastQueryExecutionSettings.d.ts +2 -2
- package/dist/utils/hooks/useQueryExecutionSettings.d.ts +1 -1
- package/dist/utils/hooks/useQueryExecutionSettings.js +7 -2
- package/dist/utils/hooks/useQueryExecutionSettings.js.map +1 -1
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/query.d.ts +7 -3
- package/dist/utils/query.js +3 -1
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/shardsQueryBuilders.d.ts +20 -0
- package/dist/utils/shardsQueryBuilders.js +121 -8
- package/dist/utils/shardsQueryBuilders.js.map +1 -1
- package/package.json +5 -5
- package/dist/components/InfoViewerTitle/InfoViewerTitle.d.ts +0 -6
- package/dist/components/InfoViewerTitle/InfoViewerTitle.js +0 -8
- package/dist/components/InfoViewerTitle/InfoViewerTitle.js.map +0 -1
- package/dist/components/InfoViewerTitle/InfoViewerTitle.scss +0 -5
- package/dist/containers/Tenant/Diagnostics/Partitions/i18n/ru.json +0 -13
|
@@ -5,15 +5,19 @@ interface ButtonWithConfirmDialogProps<T, K> {
|
|
|
5
5
|
onConfirmAction: (isRetry?: boolean) => Promise<T>;
|
|
6
6
|
onConfirmActionSuccess?: (() => Promise<K>) | VoidFunction;
|
|
7
7
|
dialogHeader: string;
|
|
8
|
-
dialogText
|
|
8
|
+
dialogText?: string;
|
|
9
|
+
dialogWarning?: string;
|
|
9
10
|
retryButtonText?: string;
|
|
11
|
+
applyButtonText?: string;
|
|
10
12
|
buttonDisabled?: ButtonProps['disabled'];
|
|
11
13
|
buttonView?: ButtonProps['view'];
|
|
14
|
+
applyButtonView?: ButtonProps['view'];
|
|
15
|
+
buttonWidth?: ButtonProps['width'];
|
|
12
16
|
buttonClassName?: ButtonProps['className'];
|
|
13
17
|
withPopover?: boolean;
|
|
14
18
|
popoverContent?: PopoverProps['content'];
|
|
15
19
|
popoverPlacement?: PopoverProps['placement'];
|
|
16
20
|
popoverDisabled?: PopoverProps['disabled'];
|
|
17
21
|
}
|
|
18
|
-
export declare function ButtonWithConfirmDialog<T, K>({ children, onConfirmAction, onConfirmActionSuccess, dialogHeader, dialogText, retryButtonText, buttonDisabled, buttonView, buttonClassName, withPopover, popoverContent, popoverPlacement, popoverDisabled, }: ButtonWithConfirmDialogProps<T, K>): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function ButtonWithConfirmDialog<T, K>({ children, onConfirmAction, onConfirmActionSuccess, dialogHeader, dialogText, dialogWarning, applyButtonText, retryButtonText, buttonDisabled, buttonView, buttonWidth, buttonClassName, withPopover, popoverContent, popoverPlacement, popoverDisabled, applyButtonView, }: ButtonWithConfirmDialogProps<T, K>): import("react/jsx-runtime").JSX.Element;
|
|
19
23
|
export {};
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { Button, Popover } from '@gravity-ui/uikit';
|
|
4
4
|
import { CriticalActionDialog } from '../CriticalActionDialog/CriticalActionDialog';
|
|
5
5
|
import { isErrorWithRetry } from '../CriticalActionDialog/utils';
|
|
6
|
-
export function ButtonWithConfirmDialog({ children, onConfirmAction, onConfirmActionSuccess, dialogHeader, dialogText, retryButtonText, buttonDisabled = false, buttonView = 'action', buttonClassName, withPopover = false, popoverContent, popoverPlacement = 'right', popoverDisabled = true, }) {
|
|
6
|
+
export function ButtonWithConfirmDialog({ children, onConfirmAction, onConfirmActionSuccess, dialogHeader, dialogText, dialogWarning, applyButtonText, retryButtonText, buttonDisabled = false, buttonView = 'action', buttonWidth, buttonClassName, withPopover = false, popoverContent, popoverPlacement = 'right', popoverDisabled = true, applyButtonView, }) {
|
|
7
7
|
const [isConfirmDialogVisible, setIsConfirmDialogVisible] = React.useState(false);
|
|
8
8
|
const [buttonLoading, setButtonLoading] = React.useState(false);
|
|
9
9
|
const [withRetry, setWithRetry] = React.useState(false);
|
|
@@ -25,7 +25,7 @@ export function ButtonWithConfirmDialog({ children, onConfirmAction, onConfirmAc
|
|
|
25
25
|
setButtonLoading(false);
|
|
26
26
|
};
|
|
27
27
|
const renderButton = () => {
|
|
28
|
-
return (_jsx(Button, { onClick: () => setIsConfirmDialogVisible(true), view: buttonView, disabled: buttonDisabled, loading: !buttonDisabled && buttonLoading, className: buttonClassName, children: children }));
|
|
28
|
+
return (_jsx(Button, { onClick: () => setIsConfirmDialogVisible(true), view: buttonView, width: buttonWidth, disabled: buttonDisabled, loading: !buttonDisabled && buttonLoading, className: buttonClassName, children: children }));
|
|
29
29
|
};
|
|
30
30
|
// keep <span>: if button is disabled, popover won't open without this wrapper
|
|
31
31
|
const renderContent = () => {
|
|
@@ -34,7 +34,7 @@ export function ButtonWithConfirmDialog({ children, onConfirmAction, onConfirmAc
|
|
|
34
34
|
}
|
|
35
35
|
return renderButton();
|
|
36
36
|
};
|
|
37
|
-
return (_jsxs(React.Fragment, { children: [_jsx(CriticalActionDialog, { visible: isConfirmDialogVisible, header: dialogHeader,
|
|
37
|
+
return (_jsxs(React.Fragment, { children: [_jsx(CriticalActionDialog, { visible: isConfirmDialogVisible, header: dialogHeader, description: dialogText, warningText: dialogWarning, applyButtonText: applyButtonText, withRetry: withRetry, retryButtonText: retryButtonText, onConfirm: handleConfirmAction, applyButtonView: applyButtonView, onConfirmActionSuccess: handleConfirmActionSuccess, onConfirmActionError: handleConfirmActionError, onClose: () => {
|
|
38
38
|
setIsConfirmDialogVisible(false);
|
|
39
39
|
} }), renderContent()] }));
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonWithConfirmDialog.js","sourceRoot":"","sources":["../../../src/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,MAAM,EAAE,OAAO,EAAC,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAC,oBAAoB,EAAC,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAC,gBAAgB,EAAC,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ButtonWithConfirmDialog.js","sourceRoot":"","sources":["../../../src/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,MAAM,EAAE,OAAO,EAAC,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAC,oBAAoB,EAAC,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAC,gBAAgB,EAAC,MAAM,+BAA+B,CAAC;AAsB/D,MAAM,UAAU,uBAAuB,CAAO,EAC1C,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,UAAU,EACV,aAAa,EACb,eAAe,EACf,eAAe,EACf,cAAc,GAAG,KAAK,EACtB,UAAU,GAAG,QAAQ,EACrB,WAAW,EACX,eAAe,EACf,WAAW,GAAG,KAAK,EACnB,cAAc,EACd,gBAAgB,GAAG,OAAO,EAC1B,eAAe,GAAG,IAAI,EACtB,eAAe,GACkB;IACjC,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAiB,EAAE,EAAE;QACpD,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,MAAM,0BAA0B,GAAG,KAAK,IAAI,EAAE;QAC1C,YAAY,CAAC,KAAK,CAAC,CAAC;QAEpB,IAAI,CAAC;YACD,MAAM,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,EAAI,CAAA,CAAC;QACrC,CAAC;gBAAS,CAAC;YACP,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,KAAc,EAAE,EAAE;QAChD,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACtB,OAAO,CACH,KAAC,MAAM,IACH,OAAO,EAAE,GAAG,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAC9C,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,CAAC,cAAc,IAAI,aAAa,EACzC,SAAS,EAAE,eAAe,YAEzB,QAAQ,GACJ,CACZ,CAAC;IACN,CAAC,CAAC;IAEF,8EAA8E;IAC9E,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,CACH,KAAC,OAAO,IACJ,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,eAAe,YAEzB,yBAAO,YAAY,EAAE,GAAQ,GACvB,CACb,CAAC;QACN,CAAC;QAED,OAAO,YAAY,EAAE,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,CACH,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,oBAAoB,IACjB,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,UAAU,EACvB,WAAW,EAAE,aAAa,EAC1B,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,mBAAmB,EAC9B,eAAe,EAAE,eAAe,EAChC,sBAAsB,EAAE,0BAA0B,EAClD,oBAAoB,EAAE,wBAAwB,EAC9C,OAAO,EAAE,GAAG,EAAE;oBACV,yBAAyB,CAAC,KAAK,CAAC,CAAC;gBACrC,CAAC,GACH,EACD,aAAa,EAAE,IACH,CACpB,CAAC;AACN,CAAC"}
|
|
@@ -6,8 +6,8 @@ import { confirmationDialogKeyset } from './i18n';
|
|
|
6
6
|
import './ConfirmationDialog.scss';
|
|
7
7
|
const block = cn('confirmation-dialog');
|
|
8
8
|
export const CONFIRMATION_DIALOG = 'confirmation-dialog';
|
|
9
|
-
function ConfirmationDialog({ caption = '', children, onConfirm, onClose, progress, textButtonApply, textButtonCancel, buttonApplyView = 'normal', className, renderButtons, open, }) {
|
|
10
|
-
return (_jsxs(Dialog, { className: block(null, className), size: "s", onClose: onClose, disableOutsideClick: true, open: open, children: [_jsx(Dialog.Header, { caption: _jsx("span", { className: block('caption'), children: caption }) }), _jsx(Dialog.Body, { children: children }), _jsx(Dialog.Footer, { onClickButtonApply: onConfirm, propsButtonApply: { view: buttonApplyView }, textButtonApply: textButtonApply, textButtonCancel: textButtonCancel !== null && textButtonCancel !== void 0 ? textButtonCancel : confirmationDialogKeyset('action_cancel'), onClickButtonCancel: onClose, loading: progress, renderButtons: renderButtons })] }));
|
|
9
|
+
function ConfirmationDialog({ caption = '', children, onConfirm, onClose, progress, textButtonApply, textButtonCancel, buttonApplyView = 'normal', className, renderButtons, open, confirmOnEnter, }) {
|
|
10
|
+
return (_jsxs(Dialog, { className: block(null, className), size: "s", onClose: onClose, disableOutsideClick: true, open: open, onEnterKeyDown: confirmOnEnter ? onConfirm : undefined, children: [_jsx(Dialog.Header, { caption: _jsx("span", { className: block('caption'), children: caption }) }), _jsx(Dialog.Body, { children: children }), _jsx(Dialog.Footer, { onClickButtonApply: onConfirm, propsButtonApply: { view: buttonApplyView }, textButtonApply: textButtonApply, textButtonCancel: textButtonCancel !== null && textButtonCancel !== void 0 ? textButtonCancel : confirmationDialogKeyset('action_cancel'), onClickButtonCancel: onClose, loading: progress, renderButtons: renderButtons })] }));
|
|
11
11
|
}
|
|
12
12
|
export const ConfirmationDialogNiceModal = NiceModal.create((props) => {
|
|
13
13
|
const modal = NiceModal.useModal();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmationDialog.js","sourceRoot":"","sources":["../../../src/components/ConfirmationDialog/ConfirmationDialog.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAElC,OAAO,EAAC,wBAAwB,EAAC,MAAM,QAAQ,CAAC;AAEhD,OAAO,2BAA2B,CAAC;AAEnC,MAAM,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfirmationDialog.js","sourceRoot":"","sources":["../../../src/components/ConfirmationDialog/ConfirmationDialog.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAElC,OAAO,EAAC,wBAAwB,EAAC,MAAM,QAAQ,CAAC;AAEhD,OAAO,2BAA2B,CAAC;AAEnC,MAAM,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;AA0BxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AACzD,SAAS,kBAAkB,CAAC,EACxB,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,GAAG,QAAQ,EAC1B,SAAS,EACT,aAAa,EACb,IAAI,EACJ,cAAc,GACQ;IACtB,OAAO,CACH,MAAC,MAAM,IACH,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EACjC,IAAI,EAAC,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,mBAAmB,QACnB,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,aAEtD,KAAC,MAAM,CAAC,MAAM,IAAC,OAAO,EAAE,eAAM,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,YAAG,OAAO,GAAQ,GAAI,EAC/E,KAAC,MAAM,CAAC,IAAI,cAAE,QAAQ,GAAe,EACrC,KAAC,MAAM,CAAC,MAAM,IACV,kBAAkB,EAAE,SAAS,EAC7B,gBAAgB,EAAE,EAAC,IAAI,EAAE,eAAe,EAAC,EACzC,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,wBAAwB,CAAC,eAAe,CAAC,EAC/E,mBAAmB,EAAE,OAAO,EAC5B,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,aAAa,GAC9B,IACG,CACZ,CAAC;AACN,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,SAAS,CAAC,MAAM,CACvD,CAAC,KAAuC,EAAE,EAAE;IACxC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IAEnC,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,KAAK,CAAC,MAAM,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,kBAAkB,OACX,KAAK,EACT,SAAS,EAAE,KAAK,IAAI,EAAE;;YAClB,MAAM,CAAA,MAAA,KAAK,CAAC,SAAS,qDAAI,CAAA,CAAC;YAC1B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpB,WAAW,EAAE,CAAC;QAClB,CAAC,EACD,OAAO,EAAE,GAAG,EAAE;;YACV,MAAA,KAAK,CAAC,OAAO,qDAAI,CAAC;YAClB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACrB,WAAW,EAAE,CAAC;QAClB,CAAC,EACD,IAAI,EAAE,KAAK,CAAC,OAAO,GACrB,CACL,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,2BAA2B,CAAC,CAAC"}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { ButtonView } from '@gravity-ui/uikit';
|
|
2
3
|
import './CriticalActionDialog.scss';
|
|
3
4
|
interface CriticalActionDialogProps<T> {
|
|
4
5
|
visible: boolean;
|
|
5
6
|
header?: React.ReactNode;
|
|
6
|
-
|
|
7
|
+
description?: string;
|
|
8
|
+
warningText?: string;
|
|
7
9
|
withRetry?: boolean;
|
|
8
10
|
retryButtonText?: string;
|
|
11
|
+
applyButtonText?: string;
|
|
12
|
+
applyButtonView?: ButtonView;
|
|
9
13
|
withCheckBox?: boolean;
|
|
10
14
|
onClose: VoidFunction;
|
|
11
15
|
onConfirm: (isRetry?: boolean) => Promise<T>;
|
|
12
16
|
onConfirmActionSuccess: VoidFunction;
|
|
13
17
|
onConfirmActionError: (error: unknown) => void;
|
|
14
18
|
}
|
|
15
|
-
export declare function CriticalActionDialog<T>({ visible, header,
|
|
19
|
+
export declare function CriticalActionDialog<T>({ visible, header, description, warningText, withRetry, retryButtonText, applyButtonText, applyButtonView, withCheckBox, onClose, onConfirm, onConfirmActionSuccess, onConfirmActionError, }: CriticalActionDialogProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
16
20
|
export {};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import { Checkbox, Dialog, Icon } from '@gravity-ui/uikit';
|
|
3
|
+
import { Alert, Checkbox, Dialog, Flex, Text } from '@gravity-ui/uikit';
|
|
5
4
|
import { ResultIssues } from '../../containers/Tenant/Query/Issues/Issues';
|
|
6
5
|
import { cn } from '../../utils/cn';
|
|
7
6
|
import { isResponseError, isResponseErrorWithIssues } from '../../utils/response';
|
|
@@ -25,7 +24,7 @@ const parseError = (error) => {
|
|
|
25
24
|
}
|
|
26
25
|
return criticalActionDialogKeyset('default-error');
|
|
27
26
|
};
|
|
28
|
-
export function CriticalActionDialog({ visible, header,
|
|
27
|
+
export function CriticalActionDialog({ visible, header, description, warningText, withRetry, retryButtonText, applyButtonText = criticalActionDialogKeyset('button-confirm'), applyButtonView, withCheckBox, onClose, onConfirm, onConfirmActionSuccess, onConfirmActionError, }) {
|
|
29
28
|
const [isLoading, setIsLoading] = React.useState(false);
|
|
30
29
|
const [error, setError] = React.useState();
|
|
31
30
|
const [checkBoxChecked, setCheckBoxChecked] = React.useState(false);
|
|
@@ -56,11 +55,15 @@ export function CriticalActionDialog({ visible, header, text, withRetry, retryBu
|
|
|
56
55
|
};
|
|
57
56
|
const renderDialogContent = () => {
|
|
58
57
|
if (error) {
|
|
59
|
-
return (_jsxs(React.Fragment, { children: [_jsx(Dialog.Header, { caption: header }), _jsx(Dialog.Body, {
|
|
58
|
+
return (_jsxs(React.Fragment, { children: [_jsx(Dialog.Header, { caption: header }), _jsx(Dialog.Body, { children: _jsx(Alert, { theme: "danger", message: parseError(error), view: "outlined" }) }), _jsx(Dialog.Footer, { loading: false, preset: "default", textButtonApply: withRetry
|
|
60
59
|
? retryButtonText || criticalActionDialogKeyset('button-retry')
|
|
61
60
|
: undefined, textButtonCancel: criticalActionDialogKeyset('button-close'), onClickButtonApply: () => onApply(true), onClickButtonCancel: onClose })] }));
|
|
62
61
|
}
|
|
63
|
-
return (_jsxs(React.Fragment, { children: [_jsx(Dialog.Header, { caption: header }),
|
|
62
|
+
return (_jsxs(React.Fragment, { children: [_jsx(Dialog.Header, { caption: header }), _jsx(Dialog.Body, { children: _jsxs(Flex, { direction: "column", gap: 4, children: [description && _jsx(Text, { as: "div", children: description }), warningText && _jsx(Alert, { theme: "warning", message: warningText }), renderCheckBox()] }) }), _jsx(Dialog.Footer, { loading: isLoading, preset: "default", textButtonApply: applyButtonText, textButtonCancel: criticalActionDialogKeyset('button-cancel'), propsButtonApply: {
|
|
63
|
+
type: 'submit',
|
|
64
|
+
disabled: withCheckBox && !checkBoxChecked,
|
|
65
|
+
view: applyButtonView,
|
|
66
|
+
}, onClickButtonCancel: onClose, onClickButtonApply: () => onApply() })] }));
|
|
64
67
|
};
|
|
65
68
|
return (_jsx(Dialog, { open: visible, hasCloseButton: false, className: b(), size: "s", onClose: onClose, onTransitionOutComplete: handleTransitionExited, children: renderDialogContent() }));
|
|
66
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CriticalActionDialog.js","sourceRoot":"","sources":["../../../src/components/CriticalActionDialog/CriticalActionDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"CriticalActionDialog.js","sourceRoot":"","sources":["../../../src/components/CriticalActionDialog/CriticalActionDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,43 +1,3 @@
|
|
|
1
1
|
.ydb-critical-dialog {
|
|
2
2
|
padding-top: var(--g-spacing-3);
|
|
3
|
-
|
|
4
|
-
&__warning-icon {
|
|
5
|
-
margin-right: 16px;
|
|
6
|
-
|
|
7
|
-
color: var(--ydb-color-status-yellow);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
&__error-icon {
|
|
11
|
-
height: 24px;
|
|
12
|
-
margin-right: 16px;
|
|
13
|
-
|
|
14
|
-
color: var(--ydb-color-status-red);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
&__body {
|
|
18
|
-
display: flex;
|
|
19
|
-
flex-direction: column;
|
|
20
|
-
gap: var(--g-spacing-6);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
&__body-message {
|
|
24
|
-
display: flex;
|
|
25
|
-
align-items: center;
|
|
26
|
-
|
|
27
|
-
&_warning,
|
|
28
|
-
&_error {
|
|
29
|
-
padding: var(--g-spacing-4) var(--g-spacing-5);
|
|
30
|
-
|
|
31
|
-
border: 1px solid;
|
|
32
|
-
border-radius: var(--g-modal-border-radius, 5px);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
&_warning {
|
|
36
|
-
border-color: var(--ydb-color-status-yellow);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
&_error {
|
|
40
|
-
border-color: var(--ydb-color-status-red);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
3
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TVDiskID } from '../../types/api/vdisk';
|
|
2
|
+
interface EvictVDiskButtonProps {
|
|
3
|
+
vDiskId: Required<TVDiskID>;
|
|
4
|
+
donorMode?: boolean;
|
|
5
|
+
fullWidth?: boolean;
|
|
6
|
+
onSuccess?: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare function isAllVdiskParamsDefined(vDiskId?: TVDiskID): vDiskId is Required<TVDiskID>;
|
|
9
|
+
export declare const EvictVDiskButton: ({ vDiskId, donorMode, fullWidth, onSuccess, }: EvictVDiskButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { ArrowsOppositeToDots } from '@gravity-ui/icons';
|
|
4
|
+
import { Icon } from '@gravity-ui/uikit';
|
|
5
|
+
import { isNil } from 'lodash';
|
|
6
|
+
import { useDiskPagesAvailable } from '../../store/reducers/capabilities/hooks';
|
|
7
|
+
import { useIsUserAllowedToMakeChanges } from '../../utils/hooks/useIsUserAllowedToMakeChanges';
|
|
8
|
+
import { ButtonWithConfirmDialog } from '../ButtonWithConfirmDialog/ButtonWithConfirmDialog';
|
|
9
|
+
import { evictVDiskButtonKeyset } from './i18n';
|
|
10
|
+
export function isAllVdiskParamsDefined(vDiskId) {
|
|
11
|
+
return (!isNil(vDiskId === null || vDiskId === void 0 ? void 0 : vDiskId.GroupID) &&
|
|
12
|
+
!isNil(vDiskId === null || vDiskId === void 0 ? void 0 : vDiskId.GroupGeneration) &&
|
|
13
|
+
!isNil(vDiskId === null || vDiskId === void 0 ? void 0 : vDiskId.Ring) &&
|
|
14
|
+
!isNil(vDiskId === null || vDiskId === void 0 ? void 0 : vDiskId.Domain) &&
|
|
15
|
+
!isNil(vDiskId === null || vDiskId === void 0 ? void 0 : vDiskId.VDisk));
|
|
16
|
+
}
|
|
17
|
+
export const EvictVDiskButton = ({ vDiskId, donorMode, fullWidth, onSuccess, }) => {
|
|
18
|
+
const isUserAllowedToMakeChanges = useIsUserAllowedToMakeChanges();
|
|
19
|
+
const newDiskApiAvailable = useDiskPagesAvailable();
|
|
20
|
+
const handleEvictVDisk = React.useCallback(async (isRetry) => {
|
|
21
|
+
const requestParams = {
|
|
22
|
+
groupId: vDiskId.GroupID,
|
|
23
|
+
groupGeneration: vDiskId.GroupGeneration,
|
|
24
|
+
failRealmIdx: vDiskId.Ring,
|
|
25
|
+
failDomainIdx: vDiskId.Domain,
|
|
26
|
+
vDiskIdx: vDiskId.VDisk,
|
|
27
|
+
force: isRetry,
|
|
28
|
+
};
|
|
29
|
+
let response;
|
|
30
|
+
if (newDiskApiAvailable) {
|
|
31
|
+
response = await window.api.vdisk.evictVDisk(requestParams);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
response = await window.api.tablets.evictVDiskOld(requestParams);
|
|
35
|
+
}
|
|
36
|
+
if ((response === null || response === void 0 ? void 0 : response.result) === false) {
|
|
37
|
+
const err = {
|
|
38
|
+
statusText: response.error,
|
|
39
|
+
retryPossible: response.forceRetryPossible,
|
|
40
|
+
};
|
|
41
|
+
throw err;
|
|
42
|
+
}
|
|
43
|
+
}, [vDiskId, newDiskApiAvailable]);
|
|
44
|
+
return (_jsxs(ButtonWithConfirmDialog, { onConfirmAction: handleEvictVDisk, onConfirmActionSuccess: onSuccess, buttonDisabled: !isUserAllowedToMakeChanges || donorMode, buttonView: "normal", buttonWidth: fullWidth ? 'max' : undefined, dialogHeader: evictVDiskButtonKeyset('title_evict-dialog'), dialogText: evictVDiskButtonKeyset('confirm_evict'), dialogWarning: evictVDiskButtonKeyset('alert_evict'), applyButtonText: evictVDiskButtonKeyset('action_evict-short'), applyButtonView: "outlined-danger", retryButtonText: evictVDiskButtonKeyset('action_force-evict'), withPopover: true, popoverContent: donorMode
|
|
45
|
+
? evictVDiskButtonKeyset('alert_donor-mode-impossible')
|
|
46
|
+
: evictVDiskButtonKeyset('alert_not-allowed'), popoverDisabled: isUserAllowedToMakeChanges && !donorMode, children: [_jsx(Icon, { data: ArrowsOppositeToDots }), evictVDiskButtonKeyset('action_evict')] }));
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=EvictVDiskButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EvictVDiskButton.js","sourceRoot":"","sources":["../../../src/components/EvictVDiskButton/EvictVDiskButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"action_evict": "Evict VDisk",
|
|
3
|
+
"action_evict-short": "Evict",
|
|
4
|
+
"action_force-evict": "Evict anyway",
|
|
5
|
+
"title_evict-dialog": "Evict VDisk?",
|
|
6
|
+
"confirm_evict": "The VDisk will be evicted from the node. All data will be moved to other VDisks in the storage pool.",
|
|
7
|
+
"alert_evict": "This action is irreversible. It cannot be cancelled.",
|
|
8
|
+
"alert_not-allowed": "You don't have enough rights to evict VDisk",
|
|
9
|
+
"alert_donor-mode-impossible": "Evicting a donor VDisk is not possible"
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const evictVDiskButtonKeyset: (key: "action_evict" | "action_evict-short" | "action_force-evict" | "title_evict-dialog" | "confirm_evict" | "alert_evict" | "alert_not-allowed" | "alert_donor-mode-impossible", params?: import("@gravity-ui/i18n").Params) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/EvictVDiskButton/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,MAAM,WAAW,CAAC;AAE3B,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAEpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC,SAAS,EAAE,EAAC,EAAE,EAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { GetChartDataParams } from './getChartData';
|
|
2
2
|
export declare const chartApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../../store/reducers/api")._NEVER, unknown, {}>, {
|
|
3
|
-
getChartData: import("@reduxjs/toolkit/query").QueryDefinition<GetChartDataParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../../store/reducers/api")._NEVER, unknown, {}>, "Events" | "All" | "Conversations" | "PDiskData" | "PreviewData" | "SchemaTree" | "StorageData" | "Tablet" | "UserData" | "VDiskData" | "VDiskBlobIndexStat" | "AccessRights" | "Backups" | "BackupsSchedule", import("./types").PreparedMetricsData | undefined, "api", any>;
|
|
4
|
-
}, "api", "Events" | "All" | "Conversations" | "PDiskData" | "PreviewData" | "SchemaTree" | "StorageData" | "Tablet" | "UserData" | "VDiskData" | "VDiskBlobIndexStat" | "AccessRights" | "Backups" | "BackupsSchedule", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName>;
|
|
3
|
+
getChartData: import("@reduxjs/toolkit/query").QueryDefinition<GetChartDataParams, import("@reduxjs/toolkit/query").BaseQueryFn<void, typeof import("../../store/reducers/api")._NEVER, unknown, {}>, "Events" | "All" | "Conversations" | "PDiskData" | "PreviewData" | "SchemaTree" | "StorageData" | "TableData" | "Partitions" | "Tablet" | "UserData" | "VDiskData" | "VDiskBlobIndexStat" | "AccessRights" | "Backups" | "BackupsSchedule", import("./types").PreparedMetricsData | undefined, "api", any>;
|
|
4
|
+
}, "api", "Events" | "All" | "Conversations" | "PDiskData" | "PreviewData" | "SchemaTree" | "StorageData" | "TableData" | "Partitions" | "Tablet" | "UserData" | "VDiskData" | "VDiskBlobIndexStat" | "AccessRights" | "Backups" | "BackupsSchedule", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pDiskInfoKeyset: (key: "space" | "
|
|
1
|
+
export declare const pDiskInfoKeyset: (key: "space" | "path" | "type" | "links" | "state" | "yes" | "guid" | "serial-number" | "shared-with-os" | "drive-status" | "device" | "realtime" | "usage" | "slots" | "log-size" | "system-size" | "developer-ui", params?: import("@gravity-ui/i18n").Params) => string;
|
|
@@ -15,9 +15,8 @@ export function useQueriesActivityData(database) {
|
|
|
15
15
|
// Respect GraphShardExists if explicitly false for the specific tenant
|
|
16
16
|
const graphShardExists = useTypedSelector((state) => selectGraphShardExists(state, database));
|
|
17
17
|
const skipCharts = graphShardExists === false;
|
|
18
|
-
const { data:
|
|
18
|
+
const { data: runningQueriesCountData } = topQueriesApi.useGetRunningQueriesCountQuery({
|
|
19
19
|
database,
|
|
20
|
-
filters: {},
|
|
21
20
|
}, { pollingInterval: shouldRefresh });
|
|
22
21
|
const { data: queriesPerSecData, isSuccess: queriesSuccess, isError: queriesError, } = chartApi.useGetChartDataQuery({
|
|
23
22
|
database,
|
|
@@ -31,7 +30,9 @@ export function useQueriesActivityData(database) {
|
|
|
31
30
|
timeFrame: LATENCIES_TIME_FRAME,
|
|
32
31
|
maxDataPoints: 30,
|
|
33
32
|
}, { pollingInterval: shouldRefresh, skip: skipCharts });
|
|
34
|
-
const runningQueriesCount = (
|
|
33
|
+
const runningQueriesCount = (_a = runningQueriesCountData === null || runningQueriesCountData === void 0 ? void 0 : runningQueriesCountData.runningQueriesCount) !== null && _a !== void 0 ? _a : 0;
|
|
34
|
+
const uniqueApplications = (_b = runningQueriesCountData === null || runningQueriesCountData === void 0 ? void 0 : runningQueriesCountData.uniqueApplications) !== null && _b !== void 0 ? _b : 0;
|
|
35
|
+
const uniqueUsers = (_c = runningQueriesCountData === null || runningQueriesCountData === void 0 ? void 0 : runningQueriesCountData.uniqueUsers) !== null && _c !== void 0 ? _c : 0;
|
|
35
36
|
// Determine chart availability from queries API success/error state
|
|
36
37
|
const areChartsAvailable = React.useMemo(() => {
|
|
37
38
|
if (skipCharts) {
|
|
@@ -47,26 +48,6 @@ export function useQueriesActivityData(database) {
|
|
|
47
48
|
}, [queriesSuccess, queriesError, skipCharts]);
|
|
48
49
|
const qps = React.useMemo(() => { var _a, _b; return calculateQueriesPerSecond((_b = (_a = queriesPerSecData === null || queriesPerSecData === void 0 ? void 0 : queriesPerSecData.metrics) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.data); }, [(_e = (_d = queriesPerSecData === null || queriesPerSecData === void 0 ? void 0 : queriesPerSecData.metrics) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.data]);
|
|
49
50
|
const latency = React.useMemo(() => { var _a, _b; return calculateLatency((_b = (_a = latencyData === null || latencyData === void 0 ? void 0 : latencyData.metrics) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.data); }, [(_g = (_f = latencyData === null || latencyData === void 0 ? void 0 : latencyData.metrics) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.data]);
|
|
50
|
-
const uniqueApplications = React.useMemo(() => {
|
|
51
|
-
var _a, _b, _c;
|
|
52
|
-
const apps = new Set();
|
|
53
|
-
(_c = (_b = (_a = runningQueriesData === null || runningQueriesData === void 0 ? void 0 : runningQueriesData.resultSets) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.result) === null || _c === void 0 ? void 0 : _c.forEach((row) => {
|
|
54
|
-
if (row.ApplicationName) {
|
|
55
|
-
apps.add(String(row.ApplicationName));
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
return apps.size;
|
|
59
|
-
}, [runningQueriesData]);
|
|
60
|
-
const uniqueUsers = React.useMemo(() => {
|
|
61
|
-
var _a, _b, _c;
|
|
62
|
-
const users = new Set();
|
|
63
|
-
(_c = (_b = (_a = runningQueriesData === null || runningQueriesData === void 0 ? void 0 : runningQueriesData.resultSets) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.result) === null || _c === void 0 ? void 0 : _c.forEach((row) => {
|
|
64
|
-
if (row.UserSID) {
|
|
65
|
-
users.add(String(row.UserSID));
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
return users.size;
|
|
69
|
-
}, [runningQueriesData]);
|
|
70
51
|
return {
|
|
71
52
|
runningQueriesCount,
|
|
72
53
|
uniqueApplications,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQueriesActivityData.js","sourceRoot":"","sources":["../../../src/components/QueriesActivityBar/useQueriesActivityData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,sBAAsB,EAAC,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAC,aAAa,EAAC,MAAM,0DAA0D,CAAC;
|
|
1
|
+
{"version":3,"file":"useQueriesActivityData.js","sourceRoot":"","sources":["../../../src/components/QueriesActivityBar/useQueriesActivityData.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { DataTableProps, SortOrder } from '@gravity-ui/react-data-table';
|
|
|
2
2
|
import './ResizeableDataTable.scss';
|
|
3
3
|
export interface ResizeableDataTableProps<T> extends Omit<DataTableProps<T>, 'theme' | 'onResize'> {
|
|
4
4
|
columnsWidthLSKey?: string;
|
|
5
|
+
reserveResizePadding?: boolean;
|
|
5
6
|
wrapperClassName?: string;
|
|
6
7
|
/**
|
|
7
8
|
* Not enough meta data (settings, sizes, features, etc.) to properly render table columns
|
|
@@ -16,4 +17,4 @@ export interface ResizeableDataTableProps<T> extends Omit<DataTableProps<T>, 'th
|
|
|
16
17
|
loadingSkeletonRowsCount?: number;
|
|
17
18
|
onSortChange?: (params: SortOrder | SortOrder[] | undefined) => void;
|
|
18
19
|
}
|
|
19
|
-
export declare function ResizeableDataTable<T>({ columnsWidthLSKey, columns, settings, wrapperClassName, isLoading, isFetching, loadingSkeletonRowsCount, onSort, onSortChange, data, ...props }: ResizeableDataTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare function ResizeableDataTable<T>({ columnsWidthLSKey, columns, settings, reserveResizePadding, wrapperClassName, isLoading, isFetching, loadingSkeletonRowsCount, onSort, onSortChange, data, ...props }: ResizeableDataTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -7,7 +7,7 @@ import { useTableResize } from '../../utils/hooks/useTableResize';
|
|
|
7
7
|
import { TableSkeleton } from '../TableSkeleton/TableSkeleton';
|
|
8
8
|
import './ResizeableDataTable.scss';
|
|
9
9
|
const b = cn('ydb-resizeable-data-table');
|
|
10
|
-
export function ResizeableDataTable({ columnsWidthLSKey, columns, settings, wrapperClassName, isLoading, isFetching, loadingSkeletonRowsCount = 2, onSort, onSortChange, data, ...props }) {
|
|
10
|
+
export function ResizeableDataTable({ columnsWidthLSKey, columns, settings, reserveResizePadding = true, wrapperClassName, isLoading, isFetching, loadingSkeletonRowsCount = 2, onSort, onSortChange, data, ...props }) {
|
|
11
11
|
const [tableColumnsWidth, setTableColumnsWidth, isTableWidthLoading] = useTableResize(columnsWidthLSKey);
|
|
12
12
|
const handleSort = React.useCallback((params) => {
|
|
13
13
|
onSort === null || onSort === void 0 ? void 0 : onSort(params); // Original onSort if provided
|
|
@@ -40,6 +40,6 @@ export function ResizeableDataTable({ columnsWidthLSKey, columns, settings, wrap
|
|
|
40
40
|
if (isLoading || isTableWidthLoading) {
|
|
41
41
|
return _jsx(TableSkeleton, { rows: loadingSkeletonRowsCount });
|
|
42
42
|
}
|
|
43
|
-
return (_jsx("div", { className: b(
|
|
43
|
+
return (_jsx("div", { className: b({ 'reserve-resize-padding': reserveResizePadding }, wrapperClassName), children: _jsx(DataTable, { theme: "yandex-cloud", columns: updatedColumns, onResize: setTableColumnsWidth, onSort: handleSort, settings: newSettings, data: processedData, ...props }) }));
|
|
44
44
|
}
|
|
45
45
|
//# sourceMappingURL=ResizeableDataTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResizeableDataTable.js","sourceRoot":"","sources":["../../../src/components/ResizeableDataTable/ResizeableDataTable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,SAAS,EAAE,EAAC,kBAAkB,EAAC,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,aAAa,EAAC,MAAM,gCAAgC,CAAC;AAE7D,OAAO,4BAA4B,CAAC;AAEpC,MAAM,CAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ResizeableDataTable.js","sourceRoot":"","sources":["../../../src/components/ResizeableDataTable/ResizeableDataTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
.ydb-resizeable-data-table {
|
|
2
2
|
width: max-content;
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
&_reserve-resize-padding {
|
|
5
|
+
// padding for easier resize of the last column
|
|
6
|
+
padding-right: var(--g-spacing-5);
|
|
7
|
+
}
|
|
6
8
|
|
|
7
9
|
&__row-skeleton {
|
|
8
10
|
width: 100%;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Flex, HelpMark, Label } from '@gravity-ui/uikit';
|
|
3
|
+
import { serverlessDBLabelKeyset } from './i18n';
|
|
4
|
+
export function ServerlessDBLabel({ className }) {
|
|
5
|
+
return (_jsx(Label, { theme: "clear", size: "xs", className: className, children: _jsxs(Flex, { alignItems: "center", gap: "2", children: [serverlessDBLabelKeyset('value_serverless'), _jsx(HelpMark, { iconSize: "s", children: serverlessDBLabelKeyset('context_serverless-tooltip') })] }) }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=ServerlessDBLabel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServerlessDBLabel.js","sourceRoot":"","sources":["../../../src/components/ServerlessDBLabel/ServerlessDBLabel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAC,uBAAuB,EAAC,MAAM,QAAQ,CAAC;AAE/C,MAAM,UAAU,iBAAiB,CAAC,EAAC,SAAS,EAAuB;IAC/D,OAAO,CACH,KAAC,KAAK,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,EAAE,SAAS,YAC/C,MAAC,IAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAC,GAAG,aAC5B,uBAAuB,CAAC,kBAAkB,CAAC,EAC5C,KAAC,QAAQ,IAAC,QAAQ,EAAC,GAAG,YACjB,uBAAuB,CAAC,4BAA4B,CAAC,GAC/C,IACR,GACH,CACX,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const serverlessDBLabelKeyset: (key: "value_serverless" | "context_serverless-tooltip", params?: import("@gravity-ui/i18n").Params) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ServerlessDBLabel/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,MAAM,WAAW,CAAC;AAE3B,MAAM,SAAS,GAAG,yBAAyB,CAAC;AAE5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC,SAAS,EAAE,EAAC,EAAE,EAAC,CAAC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: (key: "
|
|
1
|
+
declare const _default: (key: "field_links" | "field_rack" | "field_host" | "context_developer-ui" | "field_database" | "field_roles", params?: import("@gravity-ui/i18n").Params) => string;
|
|
2
2
|
export default _default;
|
|
@@ -5,8 +5,7 @@ interface VDiskInfoProps<T extends PreparedVDisk> {
|
|
|
5
5
|
withVDiskPageLink?: boolean;
|
|
6
6
|
withTitle?: boolean;
|
|
7
7
|
className?: string;
|
|
8
|
-
titleClassName?: string;
|
|
9
8
|
wrap?: true;
|
|
10
9
|
}
|
|
11
|
-
export declare function VDiskInfo<T extends PreparedVDisk>({ data, withVDiskPageLink, withTitle, className, wrap,
|
|
10
|
+
export declare function VDiskInfo<T extends PreparedVDisk>({ data, withVDiskPageLink, withTitle, className, wrap, }: VDiskInfoProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
12
11
|
export {};
|
|
@@ -17,7 +17,7 @@ import { vDiskInfoKeyset } from './i18n';
|
|
|
17
17
|
import './VDiskInfo.scss';
|
|
18
18
|
const b = cn('ydb-vdisk-info');
|
|
19
19
|
// eslint-disable-next-line complexity
|
|
20
|
-
export function VDiskInfo({ data, withVDiskPageLink, withTitle, className, wrap,
|
|
20
|
+
export function VDiskInfo({ data, withVDiskPageLink, withTitle, className, wrap, }) {
|
|
21
21
|
var _a, _b, _c, _d;
|
|
22
22
|
const hasDeveloperUi = useHasDeveloperUi();
|
|
23
23
|
const getVDiskPagePath = useVDiskPagePath();
|
|
@@ -189,7 +189,7 @@ export function VDiskInfo({ data, withVDiskPageLink, withTitle, className, wrap,
|
|
|
189
189
|
const title = data && withTitle ? _jsx(VDiskTitle, { data: data }) : null;
|
|
190
190
|
// Component is used both on vdisk page and in popups
|
|
191
191
|
// Display in two columns on page (row + wrap) and in one column in popups (column + nowrap)
|
|
192
|
-
return (_jsxs(Flex, { className: className, gap: 2, direction: wrap ? 'row' : 'column', wrap: wrap, children: [leftColumn.length > 0 && (_jsx(YDBDefinitionList, {
|
|
192
|
+
return (_jsxs(Flex, { className: className, gap: 2, direction: wrap ? 'row' : 'column', wrap: wrap, children: [leftColumn.length > 0 && (_jsx(YDBDefinitionList, { title: title, items: leftColumn, wrapperClassName: b('info') })), rightColumn.length > 0 && (_jsx(YDBDefinitionList, { items: rightColumn, wrapperClassName: b('info') }))] }));
|
|
193
193
|
}
|
|
194
194
|
function VDiskTitle({ data }) {
|
|
195
195
|
return (_jsxs(Flex, { gap: 2, alignItems: "center", children: [vDiskInfoKeyset('vdiks-title'), _jsx(StatusIcon, { status: getSeverityColor(data.Severity) }), data.StringifiedId] }));
|