ydb-embedded-ui 6.11.0 → 6.13.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/AutoRefreshControl/i18n/index.d.ts +1 -1
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.d.ts +3 -2
- package/dist/components/ButtonWithConfirmDialog/ButtonWithConfirmDialog.js +9 -5
- package/dist/components/CriticalActionDialog/CriticalActionDialog.d.ts +5 -3
- package/dist/components/CriticalActionDialog/CriticalActionDialog.js +8 -7
- package/dist/components/CriticalActionDialog/CriticalActionDialog.scss +1 -1
- package/dist/components/CriticalActionDialog/i18n/en.json +1 -0
- package/dist/components/CriticalActionDialog/i18n/index.d.ts +1 -1
- package/dist/components/DateRange/DateRange.d.ts +4 -4
- package/dist/components/DateRange/DateRange.js +23 -26
- package/dist/components/DateRange/DateRange.scss +14 -13
- package/dist/components/DateRange/__test__/fromDateRangeValues.test.js +80 -0
- package/dist/components/DateRange/__test__/getdatePickerSize.test.d.ts +1 -0
- package/dist/components/DateRange/__test__/getdatePickerSize.test.js +56 -0
- package/dist/components/DateRange/__test__/toDateRangeValues.test.d.ts +1 -0
- package/dist/components/DateRange/__test__/toDateRangeValues.test.js +80 -0
- package/dist/components/DateRange/i18n/en.json +4 -0
- package/dist/components/DateRange/i18n/index.d.ts +2 -0
- package/dist/components/DateRange/i18n/index.js +5 -0
- package/dist/components/DateRange/i18n/ru.json +4 -0
- package/dist/components/DateRange/utils.d.ts +5 -0
- package/dist/components/DateRange/utils.js +41 -0
- package/dist/components/DeveloperUILinkButton/DeveloperUILinkButton.d.ts +8 -0
- package/dist/components/{DeveloperUiLink/DeveloperUiLink.js → DeveloperUILinkButton/DeveloperUILinkButton.js} +3 -3
- package/dist/components/{DeveloperUiLink/DeveloperUiLink.scss → DeveloperUILinkButton/DeveloperUILinkButton.scss} +3 -2
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.d.ts +6 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +22 -12
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +45 -45
- package/dist/components/EntityStatus/EntityStatus.js +1 -1
- package/dist/components/EntityStatus/EntityStatus.scss +6 -2
- package/dist/components/Errors/PageError/PageError.d.ts +11 -0
- package/dist/components/Errors/PageError/PageError.js +19 -0
- package/dist/components/Errors/i18n/en.json +2 -1
- package/dist/components/Errors/i18n/index.d.ts +1 -1
- package/dist/components/Errors/i18n/ru.json +2 -1
- package/dist/components/Fullscreen/Fullscreen.d.ts +1 -1
- package/dist/components/Fullscreen/Fullscreen.js +34 -27
- package/dist/components/Fullscreen/Fullscreen.scss +16 -8
- package/dist/components/Graph/Graph.d.ts +13 -0
- package/dist/components/Graph/Graph.js +41 -0
- package/dist/components/LabelWithPopover/LabelWithPopover.d.ts +4 -1
- package/dist/components/LabelWithPopover/LabelWithPopover.js +1 -1
- package/dist/components/Loader/Loader.d.ts +2 -1
- package/dist/components/Loader/Loader.js +6 -1
- package/dist/components/LoaderWrapper/LoaderWrapper.d.ts +10 -0
- package/dist/components/LoaderWrapper/LoaderWrapper.js +8 -0
- package/dist/components/MetricChart/reducer.d.ts +2 -2
- package/dist/components/MonacoEditor/MonacoEditor.js +0 -2
- package/dist/components/NodeHostWrapper/NodeHostWrapper.d.ts +0 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.js +3 -6
- package/dist/components/PDiskInfo/PDiskInfo.d.ts +8 -5
- package/dist/components/PDiskInfo/PDiskInfo.js +76 -26
- package/dist/components/PDiskInfo/PDiskInfo.scss +15 -1
- package/dist/components/PDiskInfo/i18n/en.json +11 -5
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +8 -2
- package/dist/components/ProgressViewer/ProgressViewer.js +3 -0
- package/dist/components/QueryExecutionStatus/QueryExecutionStatus.js +13 -3
- package/dist/components/QueryExecutionStatus/QueryExecutionStatus.scss +4 -0
- package/dist/components/QuerySettingsDescription/QuerySettingsDescription.d.ts +7 -0
- package/dist/components/QuerySettingsDescription/QuerySettingsDescription.js +8 -0
- package/dist/components/QuerySettingsDescription/QuerySettingsDescription.scss +8 -0
- package/dist/components/QuerySettingsDescription/index.d.ts +1 -0
- package/dist/components/QuerySettingsDescription/index.js +1 -0
- package/dist/components/VDisk/VDisk.js +3 -4
- package/dist/components/VDiskInfo/VDiskInfo.d.ts +4 -3
- package/dist/components/VDiskInfo/VDiskInfo.js +12 -5
- package/dist/components/VDiskInfo/VDiskInfo.scss +7 -1
- package/dist/components/VDiskInfo/i18n/en.json +2 -1
- package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
- package/dist/containers/App/Content.js +15 -19
- package/dist/containers/AsideNavigation/AsideNavigation.js +2 -1
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +4 -4
- package/dist/containers/Authentication/Authentication.js +8 -10
- package/dist/containers/Authentication/utils.d.ts +8 -0
- package/dist/containers/Authentication/utils.js +15 -0
- package/dist/containers/Cluster/Cluster.scss +1 -4
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js +6 -6
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +1 -1
- package/dist/containers/Clusters/constants.d.ts +1 -1
- package/dist/containers/Heatmap/Heatmap.d.ts +2 -1
- package/dist/containers/Heatmap/Heatmap.js +7 -6
- package/dist/containers/Node/Node.js +5 -7
- package/dist/containers/Node/Node.scss +5 -4
- package/dist/containers/Node/NodeStructure/NodeStructure.js +4 -4
- package/dist/containers/Node/NodeStructure/NodeStructure.scss +4 -20
- package/dist/containers/Node/NodeStructure/Pdisk.js +3 -3
- package/dist/containers/Nodes/Nodes.js +6 -8
- package/dist/containers/Nodes/getNodesColumns.js +6 -21
- package/dist/containers/PDiskPage/PDiskGroups/PDiskGroups.d.ts +6 -0
- package/dist/containers/PDiskPage/PDiskGroups/PDiskGroups.js +24 -0
- package/dist/containers/PDiskPage/PDiskPage.js +79 -30
- package/dist/containers/PDiskPage/PDiskPage.scss +8 -5
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.d.ts +7 -0
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.js +93 -0
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/PDiskSpaceDistribution.scss +52 -0
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/utils.d.ts +4 -0
- package/dist/containers/PDiskPage/PDiskSpaceDistribution/utils.js +9 -0
- package/dist/containers/PDiskPage/i18n/en.json +9 -1
- package/dist/containers/PDiskPage/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/PDisk/PDisk.js +3 -4
- package/dist/containers/Storage/Storage.js +4 -6
- package/dist/containers/Storage/StorageGroups/getStorageGroupsColumns.js +16 -6
- package/dist/containers/Tablet/Tablet.js +2 -2
- package/dist/containers/Tablet/TabletControls/TabletControls.js +2 -1
- package/dist/containers/Tablets/Tablets.js +14 -13
- package/dist/containers/Tenant/Acl/Acl.d.ts +2 -1
- package/dist/containers/Tenant/Acl/Acl.js +10 -8
- package/dist/containers/Tenant/Acl/Acl.scss +8 -8
- package/dist/containers/Tenant/Acl/i18n/en.json +6 -0
- package/dist/containers/Tenant/Acl/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/Acl/i18n/index.js +4 -0
- package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.js +2 -5
- package/dist/containers/Tenant/Diagnostics/Describe/Describe.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/Describe/Describe.js +14 -17
- package/dist/containers/Tenant/Diagnostics/DetailedOverview/DetailedOverview.js +1 -1
- package/dist/containers/Tenant/Diagnostics/DetailedOverview/DetailedOverview.scss +1 -0
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +3 -3
- package/dist/containers/Tenant/Diagnostics/Diagnostics.scss +3 -1
- package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.js +3 -3
- package/dist/containers/Tenant/Diagnostics/Network/Network.js +8 -11
- package/dist/containers/Tenant/Diagnostics/Network/Network.scss +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +8 -10
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/i18n/en.json +14 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/i18n/index.js +1 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/prepareTableInfo.js +36 -17
- package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.js +3 -4
- package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.js +1 -4
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +8 -5
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.js +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverviewTableLayout.js +3 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/getSectionTitle.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/getSectionTitle.js +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +3 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.js +6 -5
- package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.d.ts +2 -2
- package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.js +14 -14
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +7 -6
- package/dist/containers/Tenant/Diagnostics/TopShards/getTopShardsColumns.js +4 -4
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +31 -18
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.d.ts +2 -2
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js +56 -20
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.scss +10 -6
- package/dist/containers/Tenant/Query/ExecuteResult/i18n/en.json +7 -0
- package/dist/containers/Tenant/Query/ExecuteResult/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/Query/ExecuteResult/i18n/index.js +4 -0
- package/dist/containers/Tenant/Query/ExecuteResult/utils.d.ts +18 -0
- package/dist/containers/Tenant/Query/ExecuteResult/utils.js +36 -0
- package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.d.ts +23 -1
- package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.js +56 -111
- package/dist/containers/Tenant/Query/ExplainResult/ExplainResult.scss +1 -30
- package/dist/containers/Tenant/Query/ExplainResult/components/Ast/Ast.d.ts +7 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/Ast/Ast.js +18 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/Ast/Ast.scss +8 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/Graph/Graph.d.ts +8 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/Graph/Graph.js +14 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/Graph/Graph.scss +14 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/MetricsCell.d.ts +6 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/MetricsCell.js +11 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/OperationCell.d.ts +13 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/OperationCell.js +48 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/OperationParams.d.ts +6 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/OperationParams.js +66 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/SimplifiedPlan.d.ts +7 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/SimplifiedPlan.js +100 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/SimplifiedPlan.scss +128 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/types.d.ts +5 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/types.js +1 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/utils.d.ts +5 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/utils.js +59 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/TextExplain/TextExplain.d.ts +8 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/TextExplain/TextExplain.js +11 -0
- package/dist/containers/Tenant/Query/ExplainResult/components/TextExplain/TextExplain.scss +14 -0
- package/dist/containers/Tenant/Query/ExplainResult/i18n/en.json +8 -0
- package/dist/containers/Tenant/Query/ExplainResult/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/Query/ExplainResult/i18n/index.js +4 -0
- package/dist/containers/Tenant/Query/Preview/Preview.js +2 -3
- package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.js +1 -19
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.js +1 -1
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.scss +11 -0
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.d.ts +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +96 -95
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.d.ts +5 -6
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js +18 -47
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.d.ts +2 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.js +5 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.d.ts +1 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.js +42 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.d.ts +5 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.js +19 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.d.ts +1 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.js +56 -0
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.d.ts +2 -0
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.js +12 -0
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.scss +3 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.d.ts +2 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js +35 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.scss +63 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsSelect.d.ts +15 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsSelect.js +14 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsSelect.scss +19 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.d.ts +215 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.js +131 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/en.json +13 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/index.d.ts +2 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/index.js +5 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/ru.json +13 -0
- package/dist/containers/Tenant/Query/i18n/en.json +17 -1
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Schema/CreateDirectoryDialog/CreateDirectoryDialog.d.ts +3 -2
- package/dist/containers/Tenant/Schema/CreateDirectoryDialog/CreateDirectoryDialog.js +2 -2
- package/dist/containers/Tenant/Schema/SchemaTree/SchemaTree.js +8 -8
- package/dist/containers/Tenant/Schema/SchemaViewer/SchemaViewer.js +6 -3
- package/dist/containers/Tenant/Schema/SchemaViewer/columns.d.ts +2 -1
- package/dist/containers/Tenant/Schema/SchemaViewer/columns.js +13 -1
- package/dist/containers/Tenant/Schema/SchemaViewer/i18n/en.json +1 -0
- package/dist/containers/Tenant/Schema/SchemaViewer/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Schema/SchemaViewer/prepareData.js +3 -2
- package/dist/containers/Tenant/Schema/SchemaViewer/types.d.ts +1 -0
- package/dist/containers/Tenant/Tenant.js +4 -8
- package/dist/containers/Tenant/TenantPages.d.ts +12 -1
- package/dist/containers/Tenant/TenantPages.js +1 -1
- package/dist/containers/Tenant/i18n/en.json +2 -2
- package/dist/containers/Tenant/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/utils/schema.js +1 -1
- package/dist/containers/Tenant/utils/schemaActions.d.ts +2 -2
- package/dist/containers/Tenant/utils/schemaActions.js +2 -2
- package/dist/containers/Tenants/Tenants.js +5 -8
- package/dist/containers/Tenants/Tenants.scss +0 -4
- package/dist/containers/UserSettings/i18n/en.json +3 -3
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +2 -2
- package/dist/containers/UserSettings/settings.js +18 -19
- package/dist/containers/VDiskPage/VDiskPage.js +27 -13
- package/dist/containers/VDiskPage/i18n/en.json +1 -0
- package/dist/containers/VDiskPage/i18n/index.d.ts +1 -1
- package/dist/routes.js +2 -2
- package/dist/services/api.d.ts +59 -28
- package/dist/services/api.js +74 -98
- package/dist/services/settings.d.ts +11 -3
- package/dist/services/settings.js +7 -5
- package/dist/store/configureStore.d.ts +7 -7
- package/dist/store/defaultStore.d.ts +3 -3
- package/dist/store/reducers/api.d.ts +1 -1
- package/dist/store/reducers/api.js +1 -1
- package/dist/store/reducers/authentication/authentication.d.ts +37 -24
- package/dist/store/reducers/authentication/authentication.js +77 -57
- package/dist/store/reducers/authentication/types.d.ts +0 -8
- package/dist/store/reducers/capabilities/capabilities.d.ts +106 -0
- package/dist/store/reducers/capabilities/capabilities.js +22 -0
- package/dist/store/reducers/capabilities/hooks.d.ts +2 -0
- package/dist/store/reducers/capabilities/hooks.js +13 -0
- package/dist/store/reducers/cluster/cluster.d.ts +2 -2
- package/dist/store/reducers/clusterNodes/clusterNodes.d.ts +2 -2
- package/dist/store/reducers/clusters/clusters.d.ts +2 -2
- package/dist/store/reducers/describe.d.ts +5 -2
- package/dist/store/reducers/describe.js +2 -2
- package/dist/store/reducers/executeQuery.d.ts +7 -14
- package/dist/store/reducers/executeQuery.js +19 -14
- package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +2 -2
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js +19 -14
- package/dist/store/reducers/executeTopQueries/types.d.ts +2 -2
- package/dist/store/reducers/executeTopQueries/utils.js +11 -7
- package/dist/store/reducers/explainQuery/explainQuery.d.ts +5 -4
- package/dist/store/reducers/explainQuery/explainQuery.js +20 -5
- package/dist/store/reducers/explainQuery/types.d.ts +13 -1
- package/dist/store/reducers/explainQuery/utils.js +7 -2
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.d.ts +58 -58
- package/dist/store/reducers/heatmap.d.ts +2 -2
- package/dist/store/reducers/heatmap.js +3 -3
- package/dist/store/reducers/hotKeys/hotKeys.d.ts +3 -2
- package/dist/store/reducers/hotKeys/hotKeys.js +3 -3
- package/dist/store/reducers/index.d.ts +6 -6
- package/dist/store/reducers/network/network.d.ts +2 -2
- package/dist/store/reducers/network/network.js +1 -1
- package/dist/store/reducers/node/node.d.ts +3 -3
- package/dist/store/reducers/node/selectors.d.ts +1 -1
- package/dist/store/reducers/node/selectors.js +2 -2
- package/dist/store/reducers/nodes/nodes.d.ts +3 -3
- package/dist/store/reducers/nodesList.d.ts +3 -3
- package/dist/store/reducers/overview/overview.d.ts +5 -2
- package/dist/store/reducers/overview/overview.js +2 -2
- package/dist/store/reducers/partitions/partitions.d.ts +2 -2
- package/dist/store/reducers/pdisk/pdisk.d.ts +3 -3
- package/dist/store/reducers/pdisk/pdisk.js +15 -2
- package/dist/store/reducers/pdisk/types.d.ts +17 -1
- package/dist/store/reducers/pdisk/utils.d.ts +2 -2
- package/dist/store/reducers/pdisk/utils.js +68 -8
- package/dist/store/reducers/preview.d.ts +2 -2
- package/dist/store/reducers/preview.js +1 -1
- package/dist/store/reducers/queryActions/types.d.ts +1 -1
- package/dist/store/reducers/schema/schema.d.ts +28 -10
- package/dist/store/reducers/schema/schema.js +20 -14
- package/dist/store/reducers/schemaAcl/schemaAcl.d.ts +4 -2
- package/dist/store/reducers/schemaAcl/schemaAcl.js +9 -3
- package/dist/store/reducers/shardsWorkload/shardsWorkload.d.ts +2 -2
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js +22 -6
- package/dist/store/reducers/shardsWorkload/types.d.ts +2 -2
- package/dist/store/reducers/storage/storage.d.ts +3 -3
- package/dist/store/reducers/tablet.d.ts +3 -3
- package/dist/store/reducers/tablets.d.ts +13 -13
- package/dist/store/reducers/tabletsFilters.d.ts +1 -1
- package/dist/store/reducers/tenant/tenant.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js +1 -1
- package/dist/store/reducers/tenantOverview/topNodes/topNodes.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.d.ts +2 -2
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js +1 -1
- package/dist/store/reducers/tenantOverview/topStorageGroups/topStorageGroups.d.ts +2 -2
- package/dist/store/reducers/tenants/selectors.d.ts +31 -30
- package/dist/store/reducers/tenants/selectors.js +8 -2
- package/dist/store/reducers/tenants/tenants.d.ts +2 -2
- package/dist/store/reducers/topic.d.ts +44 -44
- package/dist/store/reducers/vdisk/vdisk.d.ts +2 -2
- package/dist/store/reducers/vdisk/vdisk.js +1 -1
- package/dist/store/reducers/viewSchema/viewSchema.d.ts +2 -2
- package/dist/store/reducers/viewSchema/viewSchema.js +1 -1
- package/dist/store/state-url-mapping.d.ts +70 -0
- package/dist/store/state-url-mapping.js +1 -5
- package/dist/styles/mixins.scss +13 -0
- package/dist/types/api/acl.d.ts +1 -0
- package/dist/types/api/capabilities.d.ts +7 -0
- package/dist/types/api/capabilities.js +1 -0
- package/dist/types/api/modifyDisk.d.ts +8 -0
- package/dist/types/api/modifyDisk.js +1 -0
- package/dist/types/api/pdisk.d.ts +65 -2
- package/dist/types/api/query.d.ts +39 -3
- package/dist/types/api/query.js +9 -1
- package/dist/types/api/schema/shared.d.ts +8 -0
- package/dist/types/api/vdisk.d.ts +33 -2
- package/dist/types/common.d.ts +3 -0
- package/dist/types/store/heatmap.d.ts +1 -0
- package/dist/types/store/query.d.ts +11 -1
- package/dist/utils/__test__/prepareQueryExplain.test.d.ts +1 -0
- package/dist/utils/__test__/prepareQueryExplain.test.js +115 -0
- package/dist/utils/constants.d.ts +13 -3
- package/dist/utils/constants.js +15 -3
- package/dist/utils/dataFormatters/dataFormatters.d.ts +0 -5
- package/dist/utils/dataFormatters/dataFormatters.js +3 -12
- package/dist/utils/developerUI/developerUI.d.ts +1 -0
- package/dist/utils/developerUI/developerUI.js +3 -0
- package/dist/utils/disks/getPDiskType.d.ts +3 -3
- package/dist/utils/disks/helpers.d.ts +1 -0
- package/dist/utils/disks/helpers.js +3 -0
- package/dist/utils/disks/prepareDisks.d.ts +2 -2
- package/dist/utils/disks/prepareDisks.js +17 -22
- package/dist/utils/disks/types.d.ts +7 -5
- package/dist/utils/hooks/index.d.ts +2 -1
- package/dist/utils/hooks/index.js +2 -1
- package/dist/utils/hooks/useChangedQuerySettings.d.ts +10 -0
- package/dist/utils/hooks/useChangedQuerySettings.js +46 -0
- package/dist/utils/hooks/useDelayed.d.ts +1 -0
- package/dist/utils/hooks/useDelayed.js +13 -0
- package/dist/utils/hooks/useEventHandler.d.ts +6 -0
- package/dist/utils/hooks/useEventHandler.js +17 -0
- package/dist/utils/hooks/useLastQueryExecutionSettings.d.ts +2 -0
- package/dist/utils/hooks/useLastQueryExecutionSettings.js +5 -0
- package/dist/utils/hooks/useQueryExecutionSettings.d.ts +8 -0
- package/dist/utils/hooks/useQueryExecutionSettings.js +15 -0
- package/dist/utils/monaco/constats.d.ts +2 -0
- package/dist/utils/monaco/constats.js +2 -0
- package/dist/utils/monaco/yql/constants.d.ts +0 -1
- package/dist/utils/monaco/yql/constants.js +0 -1
- package/dist/utils/monaco/yql/yql.completionItemProvider.js +2 -2
- package/dist/utils/prepareQueryExplain.d.ts +3 -1
- package/dist/utils/prepareQueryExplain.js +54 -2
- package/dist/utils/query.d.ts +24 -1
- package/dist/utils/query.js +41 -0
- package/dist/utils/query.test.js +3 -0
- package/dist/utils/utils.d.ts +8 -7
- package/dist/utils/utils.js +23 -11
- package/package.json +8 -2
- package/dist/components/DeveloperUiLink/DeveloperUiLink.d.ts +0 -8
- package/dist/components/NodeHostWrapper/NodeHostWrapper.scss +0 -15
- package/dist/containers/Node/NodeStructure/Vdisk.d.ts +0 -6
- package/dist/containers/Node/NodeStructure/Vdisk.js +0 -13
- package/dist/containers/PDiskPage/PDiskGroups.d.ts +0 -9
- package/dist/containers/PDiskPage/PDiskGroups.js +0 -20
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/i18n/ru.json +0 -5
- package/dist/containers/Tenant/Query/ExplainResult/utils.d.ts +0 -2
- package/dist/containers/Tenant/Query/ExplainResult/utils.js +0 -4
- package/dist/store/reducers/tenantOverview/topQueries/tenantOverviewTopQueries.d.ts +0 -5
- package/dist/store/reducers/tenantOverview/topQueries/tenantOverviewTopQueries.js +0 -38
- package/dist/store/utils.d.ts +0 -23
- package/dist/store/utils.js +0 -49
- package/dist/types/api/restartPDisk.d.ts +0 -4
- package/dist/utils/hooks/useQueryModes.d.ts +0 -2
- package/dist/utils/hooks/useQueryModes.js +0 -5
- package/dist/utils/monaco/index.d.ts +0 -1
- package/dist/utils/monaco/index.js +0 -6
- package/dist/utils/monaco/s-expression/constants.d.ts +0 -1
- package/dist/utils/monaco/s-expression/constants.js +0 -1
- package/dist/utils/monaco/s-expression/registerLanguage.d.ts +0 -1
- package/dist/utils/monaco/s-expression/registerLanguage.js +0 -59
- package/dist/utils/monaco/yql/registerLanguage.d.ts +0 -1
- package/dist/utils/monaco/yql/registerLanguage.js +0 -8
- package/dist/utils/monaco/yql/yql.d.ts +0 -7
- package/dist/utils/monaco/yql/yql.js +0 -180
- package/dist/utils/monaco/yql/yql.keywords.d.ts +0 -3
- package/dist/utils/monaco/yql/yql.keywords.js +0 -3
- /package/dist/{types/api/restartPDisk.js → components/DateRange/__test__/fromDateRangeValues.test.d.ts} +0 -0
package/dist/routes.js
CHANGED
@@ -42,11 +42,11 @@ const prepareRoute = (route) => {
|
|
42
42
|
};
|
43
43
|
export function createHref(route, params, query = {}) {
|
44
44
|
let extendedQuery = query;
|
45
|
-
const isBackendInQuery = Boolean(query.backend);
|
45
|
+
const isBackendInQuery = 'backend' in query && Boolean(query.backend);
|
46
46
|
if (backend && !isBackendInQuery && webVersion) {
|
47
47
|
extendedQuery = { ...query, backend };
|
48
48
|
}
|
49
|
-
const isClusterNameInQuery = Boolean(query.clusterName);
|
49
|
+
const isClusterNameInQuery = 'clusterName' in query && Boolean(query.clusterName);
|
50
50
|
if (clusterName && !isClusterNameInQuery && webVersion) {
|
51
51
|
extendedQuery = { ...extendedQuery, clusterName };
|
52
52
|
}
|
package/dist/services/api.d.ts
CHANGED
@@ -4,19 +4,20 @@ import type { ComputeApiRequestParams, NodesApiRequestParams } from '../store/re
|
|
4
4
|
import type { StorageApiRequestParams } from '../store/reducers/storage/types';
|
5
5
|
import type { TMetaInfo } from '../types/api/acl';
|
6
6
|
import type { TQueryAutocomplete } from '../types/api/autocomplete';
|
7
|
+
import type { CapabilitiesResponse } from '../types/api/capabilities';
|
7
8
|
import type { TClusterInfo } from '../types/api/cluster';
|
8
9
|
import type { TComputeInfo } from '../types/api/compute';
|
9
10
|
import type { DescribeConsumerResult } from '../types/api/consumer';
|
10
11
|
import type { HealthCheckAPIResponse } from '../types/api/healthcheck';
|
11
12
|
import type { JsonHotKeysResponse } from '../types/api/hotkeys';
|
12
13
|
import type { MetaClusters } from '../types/api/meta';
|
14
|
+
import type { ModifyDiskResponse } from '../types/api/modifyDisk';
|
13
15
|
import type { TNetInfo } from '../types/api/netInfo';
|
14
16
|
import type { TNodesInfo } from '../types/api/nodes';
|
15
17
|
import type { TEvNodesInfo } from '../types/api/nodesList';
|
16
|
-
import type { TEvPDiskStateResponse } from '../types/api/pdisk';
|
17
|
-
import type { Actions, ErrorResponse,
|
18
|
+
import type { TEvPDiskStateResponse, TPDiskInfoResponse } from '../types/api/pdisk';
|
19
|
+
import type { Actions, ErrorResponse, QueryAPIResponse, Schemas, Stats, Timeout, TracingLevel, TransactionMode } from '../types/api/query';
|
18
20
|
import type { JsonRenderRequestParams, JsonRenderResponse } from '../types/api/render';
|
19
|
-
import type { RestartPDiskResponse } from '../types/api/restartPDisk';
|
20
21
|
import type { TEvDescribeSchemeResult } from '../types/api/schema';
|
21
22
|
import type { TStorageInfo } from '../types/api/storage';
|
22
23
|
import type { TEvSystemStateResponse } from '../types/api/systemState';
|
@@ -30,57 +31,73 @@ import type { Nullable } from '../utils/typecheckers';
|
|
30
31
|
type AxiosOptions = {
|
31
32
|
concurrentId?: string;
|
32
33
|
signal?: AbortSignal;
|
34
|
+
withRetries?: boolean;
|
33
35
|
};
|
34
36
|
export declare class YdbEmbeddedAPI extends AxiosWrapper {
|
37
|
+
DEFAULT_RETRIES_COUNT: number;
|
35
38
|
constructor(options?: AxiosWrapperOptions);
|
36
39
|
getPath(path: string): string;
|
40
|
+
getClusterCapabilities(): Promise<CapabilitiesResponse>;
|
37
41
|
getClusterInfo(clusterName?: string, { concurrentId, signal }?: AxiosOptions): Promise<TClusterInfo>;
|
38
42
|
getClusterNodes({ concurrentId, signal }?: AxiosOptions): Promise<TEvSystemStateResponse>;
|
39
43
|
getNodeInfo(id?: string | number, { concurrentId, signal }?: AxiosOptions): Promise<TEvSystemStateResponse>;
|
40
44
|
getTenants(clusterName?: string, { concurrentId, signal }?: AxiosOptions): Promise<TTenantInfo>;
|
41
|
-
getTenantInfo({ path }: {
|
45
|
+
getTenantInfo({ path, database }: {
|
42
46
|
path: string;
|
47
|
+
database?: string;
|
43
48
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TTenantInfo>;
|
44
49
|
getNodes({ visibleEntities, type, tablets, sortOrder, sortValue, ...params }: NodesApiRequestParams, { concurrentId, signal }?: AxiosOptions): Promise<TNodesInfo>;
|
45
50
|
/** @deprecated use getNodes instead */
|
46
51
|
getCompute({ sortOrder, sortValue, ...params }: ComputeApiRequestParams, { concurrentId, signal }?: AxiosOptions): Promise<TComputeInfo>;
|
47
52
|
getStorageInfo({ tenant, visibleEntities, nodeId, poolName, groupId, sortOrder, sortValue, ...params }: StorageApiRequestParams, { concurrentId, signal }?: AxiosOptions): Promise<TStorageInfo>;
|
48
|
-
|
53
|
+
getNodeWhiteboardPDiskInfo({ nodeId, pDiskId }: {
|
49
54
|
nodeId: string | number;
|
50
55
|
pDiskId: string | number;
|
51
56
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TEvPDiskStateResponse>;
|
57
|
+
getPDiskInfo({ nodeId, pDiskId }: {
|
58
|
+
nodeId: string | number;
|
59
|
+
pDiskId: string | number;
|
60
|
+
}, { concurrentId, signal }?: AxiosOptions): Promise<TPDiskInfoResponse>;
|
52
61
|
getVDiskInfo({ vDiskSlotId, pDiskId, nodeId, }: {
|
53
62
|
vDiskSlotId: string | number;
|
54
63
|
pDiskId: string | number;
|
55
64
|
nodeId: string | number;
|
56
65
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TEvVDiskStateResponse>;
|
57
66
|
getGroupInfo(groupId: string | number, { concurrentId, signal }?: AxiosOptions): Promise<TStorageInfo>;
|
58
|
-
|
59
|
-
getTabletsInfo({ nodes, path }: {
|
67
|
+
getTabletsInfo({ nodes, path, database }: {
|
60
68
|
nodes?: string[];
|
61
69
|
path?: string;
|
70
|
+
database?: string;
|
62
71
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TEvTabletStateResponse>;
|
63
|
-
getSchema({ path }: {
|
72
|
+
getSchema({ path, database }: {
|
64
73
|
path: string;
|
74
|
+
database: string;
|
65
75
|
}, { concurrentId, signal }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
|
66
|
-
getDescribe({ path }: {
|
76
|
+
getDescribe({ path, database }: {
|
67
77
|
path: string;
|
78
|
+
database: string;
|
68
79
|
}, { concurrentId, signal }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
|
69
|
-
getSchemaAcl({ path }: {
|
80
|
+
getSchemaAcl({ path, database }: {
|
70
81
|
path: string;
|
82
|
+
database: string;
|
71
83
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TMetaInfo>;
|
72
|
-
getHeatmapData({ path }: {
|
84
|
+
getHeatmapData({ path, database }: {
|
73
85
|
path: string;
|
86
|
+
database: string;
|
74
87
|
}, { concurrentId, signal }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
|
75
|
-
getNetwork(
|
76
|
-
|
88
|
+
getNetwork({ path, database }: {
|
89
|
+
path: string;
|
90
|
+
database: string;
|
91
|
+
}, { concurrentId, signal }?: AxiosOptions): Promise<TNetInfo>;
|
92
|
+
getTopic({ path, database }: {
|
77
93
|
path?: string;
|
94
|
+
database?: string;
|
78
95
|
}, { concurrentId, signal }?: AxiosOptions): Promise<DescribeTopicResult>;
|
79
|
-
getConsumer({ path, consumer }: {
|
96
|
+
getConsumer({ path, consumer, database }: {
|
80
97
|
path: string;
|
81
98
|
consumer: string;
|
99
|
+
database?: string;
|
82
100
|
}, { concurrentId, signal }?: AxiosOptions): Promise<DescribeConsumerResult>;
|
83
|
-
getPoolInfo(poolName: string, { concurrentId, signal }?: AxiosOptions): Promise<TStorageInfo>;
|
84
101
|
getTablet({ id }: {
|
85
102
|
id?: string;
|
86
103
|
}, { concurrentId, signal }?: AxiosOptions): Promise<TEvTabletStateResponse>;
|
@@ -89,37 +106,48 @@ export declare class YdbEmbeddedAPI extends AxiosWrapper {
|
|
89
106
|
}, { concurrentId, signal }?: AxiosOptions): Promise<UnmergedTEvTabletStateResponse>;
|
90
107
|
getNodesList({ concurrentId, signal }?: AxiosOptions): Promise<TEvNodesInfo>;
|
91
108
|
getTenantsList({ concurrentId, signal }?: AxiosOptions): Promise<TTenants>;
|
92
|
-
sendQuery<Action extends Actions, Schema extends Schemas = undefined>(
|
109
|
+
sendQuery<Action extends Actions, Schema extends Schemas = undefined>(params: {
|
93
110
|
query?: string;
|
94
111
|
database?: string;
|
95
112
|
action?: Action;
|
96
|
-
stats?: string;
|
97
113
|
schema?: Schema;
|
98
114
|
syntax?: QuerySyntax;
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
115
|
+
stats?: Stats;
|
116
|
+
tracingLevel?: TracingLevel;
|
117
|
+
transaction_mode?: TransactionMode;
|
118
|
+
timeout?: Timeout;
|
119
|
+
}, { concurrentId, signal, withRetries }?: AxiosOptions): Promise<ErrorResponse | QueryAPIResponse<Action, Schema>>;
|
120
|
+
getHotKeys({ path, database, enableSampling }: {
|
121
|
+
path: string;
|
122
|
+
database: string;
|
123
|
+
enableSampling: boolean;
|
124
|
+
}, { concurrentId, signal }?: AxiosOptions): Promise<JsonHotKeysResponse>;
|
103
125
|
getHealthcheckInfo({ database, maxLevel }: {
|
104
126
|
database: string;
|
105
127
|
maxLevel?: number;
|
106
128
|
}, { concurrentId, signal }?: AxiosOptions): Promise<HealthCheckAPIResponse>;
|
107
|
-
evictVDisk({ groupId, groupGeneration, failRealmIdx, failDomainIdx, vDiskIdx, }: {
|
129
|
+
evictVDisk({ groupId, groupGeneration, failRealmIdx, failDomainIdx, vDiskIdx, force, }: {
|
108
130
|
groupId: string | number;
|
109
131
|
groupGeneration: string | number;
|
110
132
|
failRealmIdx: string | number;
|
111
133
|
failDomainIdx: string | number;
|
112
134
|
vDiskIdx: string | number;
|
113
|
-
|
114
|
-
|
135
|
+
force?: boolean;
|
136
|
+
}): Promise<ModifyDiskResponse>;
|
137
|
+
restartPDisk({ nodeId, pDiskId, force, }: {
|
138
|
+
nodeId: number | string;
|
139
|
+
pDiskId: number | string;
|
140
|
+
force?: boolean;
|
141
|
+
}): Promise<ModifyDiskResponse>;
|
115
142
|
killTablet(id?: string): Promise<string>;
|
116
143
|
stopTablet(id?: string, hiveId?: string): Promise<string>;
|
117
144
|
resumeTablet(id?: string, hiveId?: string): Promise<string>;
|
118
145
|
getTabletDescribe(tenantId: TDomainKey, { concurrentId, signal }?: AxiosOptions): Promise<Nullable<TEvDescribeSchemeResult>>;
|
119
146
|
getChartData({ target, from, until, maxDataPoints, database }: JsonRenderRequestParams, { concurrentId, signal }?: AxiosOptions): Promise<JsonRenderResponse>;
|
120
|
-
|
121
|
-
|
122
|
-
|
147
|
+
authenticate(params: {
|
148
|
+
user: string;
|
149
|
+
password: string;
|
150
|
+
}): Promise<any>;
|
123
151
|
logout(): Promise<any>;
|
124
152
|
whoami(): Promise<TUserToken>;
|
125
153
|
autocomplete(params: {
|
@@ -131,7 +159,10 @@ export declare class YdbEmbeddedAPI extends AxiosWrapper {
|
|
131
159
|
getClustersList(_?: never, { signal }?: {
|
132
160
|
signal?: AbortSignal;
|
133
161
|
}): Promise<MetaClusters>;
|
134
|
-
createSchemaDirectory(database
|
162
|
+
createSchemaDirectory({ database, path }: {
|
163
|
+
database: string;
|
164
|
+
path: string;
|
165
|
+
}, { signal }?: {
|
135
166
|
signal?: AbortSignal;
|
136
167
|
}): Promise<{
|
137
168
|
test: string;
|
package/dist/services/api.js
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
import AxiosWrapper from '@gravity-ui/axios-wrapper';
|
2
2
|
import axiosRetry from 'axios-retry';
|
3
|
+
import qs from 'qs';
|
3
4
|
import { backend as BACKEND, metaBackend as META_BACKEND } from '../store';
|
4
5
|
import { BINARY_DATA_IN_PLAIN_TEXT_DISPLAY } from '../utils/constants';
|
5
|
-
import { createPDiskDeveloperUILink } from '../utils/developerUI/developerUI';
|
6
6
|
import { prepareSortValue } from '../utils/filters';
|
7
7
|
import { parseMetaCluster } from './parsers/parseMetaCluster';
|
8
8
|
import { parseMetaTenants } from './parsers/parseMetaTenants';
|
@@ -10,8 +10,9 @@ import { settingsManager } from './settings';
|
|
10
10
|
export class YdbEmbeddedAPI extends AxiosWrapper {
|
11
11
|
constructor(options) {
|
12
12
|
super(options);
|
13
|
+
this.DEFAULT_RETRIES_COUNT = 3;
|
13
14
|
axiosRetry(this._axios, {
|
14
|
-
retries:
|
15
|
+
retries: this.DEFAULT_RETRIES_COUNT,
|
15
16
|
retryDelay: axiosRetry.exponentialDelay,
|
16
17
|
});
|
17
18
|
// Interceptor to process OIDC auth
|
@@ -22,7 +23,7 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
22
23
|
// authUrl - external auth service link, after successful auth additional cookies will be appended
|
23
24
|
// that will allow access to clusters where OIDC proxy is a balancer
|
24
25
|
if (response && response.status === 401 && ((_a = response.data) === null || _a === void 0 ? void 0 : _a.authUrl)) {
|
25
|
-
|
26
|
+
window.location.assign(response.data.authUrl);
|
26
27
|
}
|
27
28
|
return Promise.reject(error);
|
28
29
|
});
|
@@ -30,6 +31,9 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
30
31
|
getPath(path) {
|
31
32
|
return `${BACKEND !== null && BACKEND !== void 0 ? BACKEND : ''}${path}`;
|
32
33
|
}
|
34
|
+
getClusterCapabilities() {
|
35
|
+
return this.get(this.getPath('/viewer/capabilities'), {}, {});
|
36
|
+
}
|
33
37
|
getClusterInfo(clusterName, { concurrentId, signal } = {}) {
|
34
38
|
return this.get(this.getPath('/viewer/json/cluster'), {
|
35
39
|
name: clusterName,
|
@@ -51,16 +55,17 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
51
55
|
cluster_name: clusterName,
|
52
56
|
}, { concurrentId, requestConfig: { signal } });
|
53
57
|
}
|
54
|
-
getTenantInfo({ path }, { concurrentId, signal } = {}) {
|
58
|
+
getTenantInfo({ path, database = path }, { concurrentId, signal } = {}) {
|
55
59
|
return this.get(this.getPath('/viewer/json/tenantinfo'), {
|
60
|
+
database,
|
56
61
|
path,
|
57
62
|
tablets: true,
|
58
63
|
storage: true,
|
59
|
-
}, { concurrentId
|
64
|
+
}, { concurrentId, requestConfig: { signal } });
|
60
65
|
}
|
61
66
|
getNodes({ visibleEntities, type = 'any', tablets = true, sortOrder, sortValue, ...params }, { concurrentId, signal } = {}) {
|
62
67
|
const sort = prepareSortValue(sortValue, sortOrder);
|
63
|
-
return this.get(this.getPath('/viewer/json/nodes?enums=true'), { with: visibleEntities, type, tablets, sort, ...params }, { concurrentId, requestConfig: { signal } });
|
68
|
+
return this.get(this.getPath('/viewer/json/nodes?enums=true'), { with: visibleEntities, type, tablets, sort, database: params.tenant, ...params }, { concurrentId, requestConfig: { signal } });
|
64
69
|
}
|
65
70
|
/** @deprecated use getNodes instead */
|
66
71
|
getCompute({ sortOrder, sortValue, ...params }, { concurrentId, signal } = {}) {
|
@@ -70,6 +75,7 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
70
75
|
getStorageInfo({ tenant, visibleEntities, nodeId, poolName, groupId, sortOrder, sortValue, ...params }, { concurrentId, signal } = {}) {
|
71
76
|
const sort = prepareSortValue(sortValue, sortOrder);
|
72
77
|
return this.get(this.getPath(`/viewer/json/storage?enums=true`), {
|
78
|
+
database: tenant,
|
73
79
|
tenant,
|
74
80
|
node_id: nodeId,
|
75
81
|
pool: poolName,
|
@@ -79,11 +85,17 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
79
85
|
...params,
|
80
86
|
}, { concurrentId, requestConfig: { signal } });
|
81
87
|
}
|
82
|
-
|
88
|
+
getNodeWhiteboardPDiskInfo({ nodeId, pDiskId }, { concurrentId, signal } = {}) {
|
83
89
|
return this.get(this.getPath('/viewer/json/pdiskinfo?enums=true'), {
|
84
90
|
filter: `(NodeId=${nodeId}${pDiskId ? `;PDiskId=${pDiskId}` : ''})`,
|
85
91
|
}, { concurrentId, requestConfig: { signal } });
|
86
92
|
}
|
93
|
+
getPDiskInfo({ nodeId, pDiskId }, { concurrentId, signal } = {}) {
|
94
|
+
return this.get(this.getPath('/pdisk/info'), {
|
95
|
+
node_id: nodeId,
|
96
|
+
pdisk_id: pDiskId,
|
97
|
+
}, { concurrentId, requestConfig: { signal } });
|
98
|
+
}
|
87
99
|
getVDiskInfo({ vDiskSlotId, pDiskId, nodeId, }, { concurrentId, signal } = {}) {
|
88
100
|
return this.get(this.getPath('/viewer/json/vdiskinfo?enums=true'), {
|
89
101
|
node_id: nodeId,
|
@@ -95,19 +107,18 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
95
107
|
group_id: groupId,
|
96
108
|
}, { concurrentId, requestConfig: { signal } });
|
97
109
|
}
|
98
|
-
|
99
|
-
return this.get(this.getPath('/viewer/json/sysinfo?node_id=.&enums=true'), { concurrentId, requestConfig: { signal } });
|
100
|
-
}
|
101
|
-
getTabletsInfo({ nodes = [], path }, { concurrentId, signal } = {}) {
|
110
|
+
getTabletsInfo({ nodes = [], path, database }, { concurrentId, signal } = {}) {
|
102
111
|
const filter = nodes.length > 0 && `(NodeId=[${nodes.join(',')}])`;
|
103
112
|
return this.get(this.getPath('/viewer/json/tabletinfo'), {
|
113
|
+
database,
|
104
114
|
filter,
|
105
115
|
path,
|
106
116
|
enums: true,
|
107
117
|
}, { concurrentId, requestConfig: { signal } });
|
108
118
|
}
|
109
|
-
getSchema({ path }, { concurrentId, signal } = {}) {
|
119
|
+
getSchema({ path, database }, { concurrentId, signal } = {}) {
|
110
120
|
return this.get(this.getPath('/viewer/json/describe'), {
|
121
|
+
database,
|
111
122
|
path,
|
112
123
|
enums: true,
|
113
124
|
backup: false,
|
@@ -118,22 +129,25 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
118
129
|
subs: 1,
|
119
130
|
}, { concurrentId, requestConfig: { signal } });
|
120
131
|
}
|
121
|
-
getDescribe({ path }, { concurrentId, signal } = {}) {
|
132
|
+
getDescribe({ path, database }, { concurrentId, signal } = {}) {
|
122
133
|
return this.get(this.getPath('/viewer/json/describe'), {
|
134
|
+
database,
|
123
135
|
path,
|
124
136
|
enums: true,
|
125
137
|
partition_stats: true,
|
126
138
|
subs: 0,
|
127
139
|
}, { concurrentId: concurrentId || `getDescribe|${path}`, requestConfig: { signal } });
|
128
140
|
}
|
129
|
-
getSchemaAcl({ path }, { concurrentId, signal } = {}) {
|
141
|
+
getSchemaAcl({ path, database }, { concurrentId, signal } = {}) {
|
130
142
|
return this.get(this.getPath('/viewer/json/acl'), {
|
143
|
+
database,
|
131
144
|
path,
|
132
145
|
merge_rules: true,
|
133
|
-
}, { concurrentId
|
146
|
+
}, { concurrentId, requestConfig: { signal } });
|
134
147
|
}
|
135
|
-
getHeatmapData({ path }, { concurrentId, signal } = {}) {
|
148
|
+
getHeatmapData({ path, database }, { concurrentId, signal } = {}) {
|
136
149
|
return this.get(this.getPath('/viewer/json/describe'), {
|
150
|
+
database,
|
137
151
|
path,
|
138
152
|
enums: true,
|
139
153
|
backup: false,
|
@@ -142,33 +156,30 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
142
156
|
partition_stats: true,
|
143
157
|
}, { concurrentId, requestConfig: { signal } });
|
144
158
|
}
|
145
|
-
getNetwork(path, { concurrentId, signal } = {}) {
|
159
|
+
getNetwork({ path, database }, { concurrentId, signal } = {}) {
|
146
160
|
return this.get(this.getPath('/viewer/json/netinfo'), {
|
147
161
|
enums: true,
|
162
|
+
database,
|
148
163
|
path,
|
149
164
|
}, { concurrentId, requestConfig: { signal } });
|
150
165
|
}
|
151
|
-
getTopic({ path }, { concurrentId, signal } = {}) {
|
166
|
+
getTopic({ path, database }, { concurrentId, signal } = {}) {
|
152
167
|
return this.get(this.getPath('/viewer/json/describe_topic'), {
|
153
168
|
enums: true,
|
154
169
|
include_stats: true,
|
170
|
+
database,
|
155
171
|
path,
|
156
172
|
}, { concurrentId, requestConfig: { signal } });
|
157
173
|
}
|
158
|
-
getConsumer({ path, consumer }, { concurrentId, signal } = {}) {
|
174
|
+
getConsumer({ path, consumer, database }, { concurrentId, signal } = {}) {
|
159
175
|
return this.get(this.getPath('/viewer/json/describe_consumer'), {
|
160
176
|
enums: true,
|
161
177
|
include_stats: true,
|
178
|
+
database,
|
162
179
|
path,
|
163
180
|
consumer,
|
164
181
|
}, { concurrentId: concurrentId || 'getConsumer', requestConfig: { signal } });
|
165
182
|
}
|
166
|
-
getPoolInfo(poolName, { concurrentId, signal } = {}) {
|
167
|
-
return this.get(this.getPath('/viewer/json/storage'), {
|
168
|
-
pool: poolName,
|
169
|
-
enums: true,
|
170
|
-
}, { concurrentId, requestConfig: { signal } });
|
171
|
-
}
|
172
183
|
getTablet({ id }, { concurrentId, signal } = {}) {
|
173
184
|
return this.get(this.getPath(`/viewer/json/tabletinfo?filter=(TabletId=${id})`), {
|
174
185
|
enums: true,
|
@@ -203,88 +214,64 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
203
214
|
requestConfig: { signal },
|
204
215
|
});
|
205
216
|
}
|
206
|
-
sendQuery(
|
207
|
-
// Time difference to ensure that timeout from ui will be shown rather than backend error
|
208
|
-
const uiTimeout = 9 * 60 * 1000;
|
209
|
-
const backendTimeout = 10 * 60 * 1000;
|
217
|
+
sendQuery(params, { concurrentId, signal, withRetries } = {}) {
|
210
218
|
/**
|
211
219
|
* Return strings using base64 encoding.
|
212
220
|
* @link https://github.com/ydb-platform/ydb/pull/647
|
213
221
|
*/
|
214
222
|
const base64 = !settingsManager.readUserSettingsValue(BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, true);
|
215
|
-
return this.post(this.getPath(
|
223
|
+
return this.post(this.getPath('/viewer/json/query'), { ...params, base64 }, {}, {
|
216
224
|
concurrentId,
|
217
|
-
timeout:
|
218
|
-
requestConfig: {
|
225
|
+
timeout: params.timeout,
|
226
|
+
requestConfig: {
|
227
|
+
signal,
|
228
|
+
'axios-retry': { retries: withRetries ? this.DEFAULT_RETRIES_COUNT : 0 },
|
229
|
+
},
|
230
|
+
headers: params.tracingLevel
|
231
|
+
? {
|
232
|
+
'X-Trace-Verbosity': params.tracingLevel,
|
233
|
+
}
|
234
|
+
: undefined,
|
219
235
|
});
|
220
236
|
}
|
221
|
-
|
222
|
-
return this.post(this.getPath('/viewer/json/query'), {
|
223
|
-
query,
|
224
|
-
database,
|
225
|
-
action: action || 'explain',
|
226
|
-
syntax,
|
227
|
-
timeout: 600000,
|
228
|
-
}, {});
|
229
|
-
}
|
230
|
-
getExplainQueryAst(query, database) {
|
231
|
-
return this.post(this.getPath('/viewer/json/query'), {
|
232
|
-
query,
|
233
|
-
database,
|
234
|
-
action: 'explain-ast',
|
235
|
-
timeout: 600000,
|
236
|
-
}, {});
|
237
|
-
}
|
238
|
-
getHotKeys(path, enableSampling, { concurrentId, signal } = {}) {
|
237
|
+
getHotKeys({ path, database, enableSampling }, { concurrentId, signal } = {}) {
|
239
238
|
return this.get(this.getPath('/viewer/json/hotkeys'), {
|
239
|
+
database,
|
240
240
|
path,
|
241
241
|
enable_sampling: enableSampling,
|
242
242
|
}, { concurrentId: concurrentId || 'getHotKeys', requestConfig: { signal } });
|
243
243
|
}
|
244
244
|
getHealthcheckInfo({ database, maxLevel }, { concurrentId, signal } = {}) {
|
245
|
-
return this.get(this.getPath('/viewer/json/healthcheck?merge_records=true'), { tenant: database, max_level: maxLevel }, { concurrentId, requestConfig: { signal } });
|
246
|
-
}
|
247
|
-
evictVDisk({ groupId, groupGeneration, failRealmIdx, failDomainIdx, vDiskIdx, }) {
|
248
|
-
// BSC Id is constant for all ydb clusters
|
249
|
-
const BSC_TABLET_ID = '72057594037932033';
|
250
|
-
return this.post(this.getPath(`/tablets/app?TabletID=${BSC_TABLET_ID}&exec=1`), {
|
251
|
-
Command: {
|
252
|
-
ReassignGroupDisk: {
|
253
|
-
GroupId: groupId,
|
254
|
-
GroupGeneration: groupGeneration,
|
255
|
-
FailRealmIdx: failRealmIdx,
|
256
|
-
FailDomainIdx: failDomainIdx,
|
257
|
-
VDiskIdx: vDiskIdx,
|
258
|
-
},
|
259
|
-
},
|
260
|
-
}, {}, {
|
261
|
-
headers: {
|
262
|
-
// This handler requires exactly this string
|
263
|
-
// Automatic headers may not suit
|
264
|
-
Accept: 'application/json',
|
265
|
-
},
|
266
|
-
});
|
245
|
+
return this.get(this.getPath('/viewer/json/healthcheck?merge_records=true'), { database, tenant: database, max_level: maxLevel }, { concurrentId, requestConfig: { signal } });
|
267
246
|
}
|
268
|
-
|
269
|
-
const
|
270
|
-
|
271
|
-
|
272
|
-
|
247
|
+
evictVDisk({ groupId, groupGeneration, failRealmIdx, failDomainIdx, vDiskIdx, force, }) {
|
248
|
+
const params = {
|
249
|
+
group_id: groupId,
|
250
|
+
group_generation_id: groupGeneration,
|
251
|
+
fail_realm_idx: failRealmIdx,
|
252
|
+
fail_domain_idx: failDomainIdx,
|
253
|
+
vdisk_idx: vDiskIdx,
|
254
|
+
force,
|
255
|
+
};
|
256
|
+
const paramsString = qs.stringify(params);
|
257
|
+
const path = this.getPath(`/vdisk/evict?${paramsString}`);
|
258
|
+
return this.post(path, {}, {}, {
|
259
|
+
requestConfig: { 'axios-retry': { retries: 0 } },
|
273
260
|
});
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
},
|
261
|
+
}
|
262
|
+
restartPDisk({ nodeId, pDiskId, force, }) {
|
263
|
+
return this.post(this.getPath(`/pdisk/restart?node_id=${nodeId}&pdisk_id=${pDiskId}&force=${force}`), {}, {}, {
|
264
|
+
requestConfig: { 'axios-retry': { retries: 0 } },
|
278
265
|
});
|
279
266
|
}
|
280
267
|
killTablet(id) {
|
281
|
-
return this.get(this.getPath(`/tablets?KillTabletID=${id}`), {});
|
268
|
+
return this.get(this.getPath(`/tablets?KillTabletID=${id}`), {}, { requestConfig: { 'axios-retry': { retries: 0 } } });
|
282
269
|
}
|
283
270
|
stopTablet(id, hiveId) {
|
284
|
-
return this.get(this.getPath(`/tablets/app?TabletID=${hiveId}&page=StopTablet&tablet=${id}`), {});
|
271
|
+
return this.get(this.getPath(`/tablets/app?TabletID=${hiveId}&page=StopTablet&tablet=${id}`), {}, { requestConfig: { 'axios-retry': { retries: 0 } } });
|
285
272
|
}
|
286
273
|
resumeTablet(id, hiveId) {
|
287
|
-
return this.get(this.getPath(`/tablets/app?TabletID=${hiveId}&page=ResumeTablet&tablet=${id}`), {});
|
274
|
+
return this.get(this.getPath(`/tablets/app?TabletID=${hiveId}&page=ResumeTablet&tablet=${id}`), {}, { requestConfig: { 'axios-retry': { retries: 0 } } });
|
288
275
|
}
|
289
276
|
getTabletDescribe(tenantId, { concurrentId, signal } = {}) {
|
290
277
|
return this.get(this.getPath('/viewer/json/describe'), {
|
@@ -302,19 +289,8 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
302
289
|
requestConfig: { signal },
|
303
290
|
});
|
304
291
|
}
|
305
|
-
|
306
|
-
|
307
|
-
return this.request({
|
308
|
-
method: 'PATCH',
|
309
|
-
url: settingsApi,
|
310
|
-
data: { [name]: value },
|
311
|
-
});
|
312
|
-
}
|
313
|
-
authenticate(user, password) {
|
314
|
-
return this.post(this.getPath('/login'), {
|
315
|
-
user,
|
316
|
-
password,
|
317
|
-
}, {});
|
292
|
+
authenticate(params) {
|
293
|
+
return this.post(this.getPath('/login'), params, {});
|
318
294
|
}
|
319
295
|
logout() {
|
320
296
|
return this.post(this.getPath('/logout'), {}, {});
|
@@ -333,7 +309,7 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
|
|
333
309
|
requestConfig: { signal },
|
334
310
|
});
|
335
311
|
}
|
336
|
-
createSchemaDirectory(database, path, { signal } = {}) {
|
312
|
+
createSchemaDirectory({ database, path }, { signal } = {}) {
|
337
313
|
return this.post(this.getPath('/scheme/directory'), {}, {
|
338
314
|
database,
|
339
315
|
path,
|
@@ -9,18 +9,26 @@ export declare const DEFAULT_USER_SETTINGS: {
|
|
9
9
|
readonly binaryDataInPlainTextDisplay: true;
|
10
10
|
readonly saved_queries: readonly [];
|
11
11
|
readonly saved_tenant_initial_tab: "query";
|
12
|
-
readonly query_initial_mode: "script";
|
13
12
|
readonly last_used_query_action: "execute";
|
14
13
|
readonly asideHeaderCompact: true;
|
15
14
|
readonly partitionsHiddenColumns: readonly [];
|
16
15
|
readonly useBackendParamsForTables: false;
|
17
16
|
readonly useClusterBalancerAsBacked: true;
|
18
|
-
readonly useSeparateDisksPages: false;
|
19
17
|
readonly enableAutocomplete: true;
|
20
18
|
readonly autocompleteOnEnter: true;
|
21
19
|
readonly isHotKeysHelpHidden: false;
|
22
20
|
readonly "auto-refresh-interval": 0;
|
23
|
-
readonly
|
21
|
+
readonly enableTracingLevel: false;
|
22
|
+
readonly showDomainDatabase: false;
|
23
|
+
readonly last_query_execution_settings: undefined;
|
24
|
+
readonly querySettingsBannerLastClosed: undefined;
|
25
|
+
readonly queryExecutionSettings: {
|
26
|
+
queryMode: "script";
|
27
|
+
isolationLevel: "serializable-read-write";
|
28
|
+
timeout: string;
|
29
|
+
statisticsMode: "none";
|
30
|
+
tracingLevel: "detailed";
|
31
|
+
};
|
24
32
|
};
|
25
33
|
declare class SettingsManager {
|
26
34
|
/**
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { TENANT_PAGES_IDS } from '../store/reducers/tenant/constants';
|
2
|
-
import { ASIDE_HEADER_COMPACT_KEY, AUTOCOMPLETE_ON_ENTER, AUTO_REFRESH_INTERVAL, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, ENABLE_AUTOCOMPLETE, INVERTED_DISKS_KEY, IS_HOTKEYS_HELP_HIDDEN_KEY, LANGUAGE_KEY, LAST_USED_QUERY_ACTION_KEY, PARTITIONS_HIDDEN_COLUMNS_KEY,
|
3
|
-
import { QUERY_ACTIONS
|
2
|
+
import { ASIDE_HEADER_COMPACT_KEY, AUTOCOMPLETE_ON_ENTER, AUTO_REFRESH_INTERVAL, BINARY_DATA_IN_PLAIN_TEXT_DISPLAY, DEFAULT_QUERY_SETTINGS, ENABLE_AUTOCOMPLETE, ENABLE_TRACING_LEVEL_KEY, INVERTED_DISKS_KEY, IS_HOTKEYS_HELP_HIDDEN_KEY, LANGUAGE_KEY, LAST_QUERY_EXECUTION_SETTINGS_KEY, LAST_USED_QUERY_ACTION_KEY, PARTITIONS_HIDDEN_COLUMNS_KEY, QUERY_EXECUTION_SETTINGS_KEY, QUERY_SETTINGS_BANNER_LAST_CLOSED_KEY, QUERY_USE_MULTI_SCHEMA_KEY, SAVED_QUERIES_KEY, SHOW_DOMAIN_DATABASE_KEY, TENANT_INITIAL_PAGE_KEY, THEME_KEY, USE_CLUSTER_BALANCER_AS_BACKEND_KEY, USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY, USE_PAGINATED_TABLES_KEY, } from '../utils/constants';
|
3
|
+
import { QUERY_ACTIONS } from '../utils/query';
|
4
4
|
import { parseJson } from '../utils/utils';
|
5
5
|
/** User settings keys and their default values */
|
6
6
|
export const DEFAULT_USER_SETTINGS = {
|
@@ -12,18 +12,20 @@ export const DEFAULT_USER_SETTINGS = {
|
|
12
12
|
[BINARY_DATA_IN_PLAIN_TEXT_DISPLAY]: true,
|
13
13
|
[SAVED_QUERIES_KEY]: [],
|
14
14
|
[TENANT_INITIAL_PAGE_KEY]: TENANT_PAGES_IDS.query,
|
15
|
-
[QUERY_INITIAL_MODE_KEY]: QUERY_MODES.script,
|
16
15
|
[LAST_USED_QUERY_ACTION_KEY]: QUERY_ACTIONS.execute,
|
17
16
|
[ASIDE_HEADER_COMPACT_KEY]: true,
|
18
17
|
[PARTITIONS_HIDDEN_COLUMNS_KEY]: [],
|
19
18
|
[USE_PAGINATED_TABLES_KEY]: false,
|
20
19
|
[USE_CLUSTER_BALANCER_AS_BACKEND_KEY]: true,
|
21
|
-
[USE_SEPARATE_DISKS_PAGES_KEY]: false,
|
22
20
|
[ENABLE_AUTOCOMPLETE]: true,
|
23
21
|
[AUTOCOMPLETE_ON_ENTER]: true,
|
24
22
|
[IS_HOTKEYS_HELP_HIDDEN_KEY]: false,
|
25
23
|
[AUTO_REFRESH_INTERVAL]: 0,
|
26
|
-
[
|
24
|
+
[ENABLE_TRACING_LEVEL_KEY]: false,
|
25
|
+
[SHOW_DOMAIN_DATABASE_KEY]: false,
|
26
|
+
[LAST_QUERY_EXECUTION_SETTINGS_KEY]: undefined,
|
27
|
+
[QUERY_SETTINGS_BANNER_LAST_CLOSED_KEY]: undefined,
|
28
|
+
[QUERY_EXECUTION_SETTINGS_KEY]: DEFAULT_QUERY_SETTINGS,
|
27
29
|
};
|
28
30
|
class SettingsManager {
|
29
31
|
constructor() {
|