ydb-embedded-ui 8.11.1 → 8.13.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/DateRange/__test__/fromDateRangeValues.test.js +4 -4
- package/dist/components/DateRange/__test__/fromDateRangeValues.test.js.map +1 -1
- package/dist/components/DateRange/__test__/getdatePickerSize.test.js +4 -4
- package/dist/components/DateRange/__test__/getdatePickerSize.test.js.map +1 -1
- package/dist/components/DateRange/__test__/toDateRangeValues.test.js +4 -4
- package/dist/components/DateRange/__test__/toDateRangeValues.test.js.map +1 -1
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts +3 -7
- package/dist/components/ErrorBoundary/ErrorBoundary.js +44 -7
- package/dist/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/dist/components/ErrorBoundary/ErrorBoundary.scss +26 -30
- package/dist/components/ErrorBoundary/i18n/en.json +7 -5
- package/dist/components/ErrorBoundary/i18n/index.d.ts +1 -1
- package/dist/components/ErrorBoundary/i18n/index.js +1 -2
- package/dist/components/ErrorBoundary/i18n/index.js.map +1 -1
- package/dist/components/ErrorBoundary/utils.d.ts +17 -0
- package/dist/components/ErrorBoundary/utils.js +43 -0
- package/dist/components/ErrorBoundary/utils.js.map +1 -0
- package/dist/components/Errors/ResponseError/ResponseError.js +3 -16
- package/dist/components/Errors/ResponseError/ResponseError.js.map +1 -1
- package/dist/components/FullNodeViewer/i18n/index.d.ts +1 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.d.ts +2 -2
- package/dist/components/PDiskInfo/PDiskInfo.d.ts +0 -1
- package/dist/components/PDiskInfo/PDiskInfo.js +3 -7
- package/dist/components/PDiskInfo/PDiskInfo.js.map +1 -1
- package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +8 -4
- package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
- package/dist/components/QueryExecutionStatus/QueryExecutionStatus.js +49 -17
- package/dist/components/QueryExecutionStatus/QueryExecutionStatus.js.map +1 -1
- package/dist/components/QueryExecutionStatus/QueryExecutionStatus.scss +0 -12
- package/dist/components/QueryResultTable/QueryResultTable.d.ts +2 -0
- package/dist/components/QueryResultTable/QueryResultTable.js +16 -11
- package/dist/components/QueryResultTable/QueryResultTable.js.map +1 -1
- package/dist/components/QueryResultTable/QueryResultTable.scss +6 -0
- package/dist/components/StorageGroupInfo/i18n/index.d.ts +1 -1
- package/dist/components/TabletNameWrapper/TabletNameWrapper.js +2 -3
- package/dist/components/TabletNameWrapper/TabletNameWrapper.js.map +1 -1
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js +2 -3
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js.map +1 -1
- package/dist/components/TooltipsContent/NodeEndpointsTooltipContent/NodeEndpointsTooltipContent.js +2 -3
- package/dist/components/TooltipsContent/NodeEndpointsTooltipContent/NodeEndpointsTooltipContent.js.map +1 -1
- package/dist/components/VDiskInfo/VDiskInfo.js +4 -4
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskInfo/VDiskInfo.scss +0 -6
- package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
- package/dist/components/VDiskPopup/VDiskPopup.js +7 -4
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/components/nodesColumns/__test__/utils.test.js +4 -4
- package/dist/components/nodesColumns/__test__/utils.test.js.map +1 -1
- package/dist/components/nodesColumns/constants.d.ts +1 -0
- package/dist/components/nodesColumns/constants.js +5 -0
- package/dist/components/nodesColumns/constants.js.map +1 -1
- package/dist/containers/App/App.d.ts +1 -1
- package/dist/containers/App/App.scss +10 -0
- package/dist/containers/App/Content.js +13 -3
- package/dist/containers/App/Content.js.map +1 -1
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js +7 -2
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js.map +1 -1
- package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.js +3 -3
- package/dist/containers/AppWithClusters/ExtendedTenant/ExtendedTenant.js.map +1 -1
- package/dist/containers/AppWithClusters/useClusterData.d.ts +1 -13
- package/dist/containers/AppWithClusters/useClusterData.js +4 -18
- package/dist/containers/AppWithClusters/useClusterData.js.map +1 -1
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js +15 -2
- package/dist/containers/AsideNavigation/YdbInternalUser/YdbInternalUser.js.map +1 -1
- package/dist/containers/Authentication/Authentication.js +16 -4
- package/dist/containers/Authentication/Authentication.js.map +1 -1
- package/dist/containers/Authentication/utils.d.ts +1 -0
- package/dist/containers/Authentication/utils.js +3 -0
- package/dist/containers/Authentication/utils.js.map +1 -1
- package/dist/containers/Cluster/Cluster.js +1 -1
- package/dist/containers/Cluster/Cluster.js.map +1 -1
- package/dist/containers/Cluster/Cluster.scss +0 -7
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.d.ts +0 -2
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.js.map +1 -1
- package/dist/containers/Header/Header.js +2 -2
- package/dist/containers/Header/Header.js.map +1 -1
- package/dist/containers/Node/Node.js +1 -1
- package/dist/containers/Node/Node.js.map +1 -1
- package/dist/containers/Node/NodeStructure/Pdisk.js +2 -3
- package/dist/containers/Node/NodeStructure/Pdisk.js.map +1 -1
- package/dist/containers/Nodes/Nodes.js +11 -3
- package/dist/containers/Nodes/Nodes.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +3 -3
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorage.js +4 -1
- package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes.js +2 -4
- package/dist/containers/Storage/PaginatedStorageNodes.js.map +1 -1
- package/dist/containers/Storage/StorageControls/StorageControls.js +4 -1
- package/dist/containers/Storage/StorageControls/StorageControls.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/constants.d.ts +1 -0
- package/dist/containers/Storage/StorageGroups/columns/constants.js +10 -0
- package/dist/containers/Storage/StorageGroups/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/hooks.js +9 -3
- package/dist/containers/Storage/StorageGroups/columns/hooks.js.map +1 -1
- package/dist/containers/Tablet/Tablet.js +3 -3
- package/dist/containers/Tablet/Tablet.js.map +1 -1
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js +2 -3
- package/dist/containers/Tablet/components/TabletControls/TabletControls.js.map +1 -1
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js +2 -3
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.js.map +1 -1
- package/dist/containers/Tablets/Tablets.d.ts +1 -2
- package/dist/containers/Tablets/Tablets.js +7 -11
- package/dist/containers/Tablets/Tablets.js.map +1 -1
- package/dist/containers/Tablets/TabletsTable.d.ts +2 -1
- package/dist/containers/Tablets/TabletsTable.js +22 -9
- package/dist/containers/Tablets/TabletsTable.js.map +1 -1
- package/dist/containers/Tablets/i18n/en.json +3 -1
- package/dist/containers/Tablets/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js +1 -0
- package/dist/containers/Tenant/Diagnostics/DiagnosticsPages.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js +1 -0
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.js.map +1 -1
- package/dist/containers/Tenant/ObjectSummary/__test__/transformPath.test.js +6 -6
- package/dist/containers/Tenant/ObjectSummary/__test__/transformPath.test.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +43 -16
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/helpers.d.ts +10 -0
- package/dist/containers/Tenant/Query/QueryEditor/helpers.js +15 -0
- package/dist/containers/Tenant/Query/QueryEditor/helpers.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.d.ts +15 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js +26 -0
- package/dist/containers/Tenant/Query/QueryEditorControls/EditorButton.js.map +1 -0
- package/dist/containers/Tenant/Query/{CancelQueryButton/CancelQueryButton.scss → QueryEditorControls/EditorButton.scss} +7 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.d.ts +4 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js +77 -18
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/QueryEditorControls.scss +3 -4
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.js +3 -3
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettings.test.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.js +3 -3
- package/dist/containers/Tenant/Query/QueryEditorControls/utils/getChangedQueryExecutionSettingsDescription.test.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.d.ts +4 -2
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +23 -14
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.scss +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryInfoDropdown/useQueryInfoMenuItems.js +2 -7
- package/dist/containers/Tenant/Query/QueryResult/components/QueryInfoDropdown/useQueryInfoMenuItems.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js +7 -3
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryResultError/QueryResultError.scss +2 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.d.ts +4 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js +28 -18
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.scss +7 -7
- package/dist/containers/Tenant/Query/QueryResult/i18n/en.json +7 -3
- package/dist/containers/Tenant/Query/QueryResult/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.js +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.js.map +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsBanner/QuerySettingsBanner.scss +3 -1
- package/dist/containers/Tenant/Query/QueryStoppedBanner/QueryStoppedBanner.d.ts +2 -0
- package/dist/containers/Tenant/Query/QueryStoppedBanner/QueryStoppedBanner.js +17 -0
- package/dist/containers/Tenant/Query/QueryStoppedBanner/QueryStoppedBanner.js.map +1 -0
- package/dist/containers/Tenant/Query/QueryStoppedBanner/QueryStoppedBanner.scss +5 -0
- package/dist/containers/Tenant/Query/i18n/en.json +5 -1
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js +17 -2
- package/dist/containers/Tenant/Query/utils/isQueryCancelledError.js.map +1 -1
- package/dist/containers/Tenant/utils/controls.js +1 -0
- package/dist/containers/Tenant/utils/controls.js.map +1 -1
- package/dist/containers/Tenant/utils/schema.js +7 -0
- package/dist/containers/Tenant/utils/schema.js.map +1 -1
- package/dist/containers/Tenant/utils/schemaActions.js +1 -0
- package/dist/containers/Tenant/utils/schemaActions.js.map +1 -1
- package/dist/containers/UserSettings/i18n/en.json +2 -0
- 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 +8 -4
- package/dist/containers/UserSettings/settings.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +3 -3
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/Versions/NodesTable/NodesTable.js +3 -5
- package/dist/containers/Versions/NodesTable/NodesTable.js.map +1 -1
- package/dist/services/api/auth.d.ts +1 -0
- package/dist/services/api/auth.js.map +1 -1
- package/dist/services/api/base.d.ts +1 -0
- package/dist/services/api/base.js.map +1 -1
- package/dist/services/api/index.d.ts +2 -0
- package/dist/services/api/index.js +2 -0
- package/dist/services/api/index.js.map +1 -1
- package/dist/services/api/streaming.d.ts +12 -0
- package/dist/services/api/streaming.js +65 -0
- package/dist/services/api/streaming.js.map +1 -0
- package/dist/services/api/viewer.d.ts +4 -15
- package/dist/services/api/viewer.js +3 -2
- package/dist/services/api/viewer.js.map +1 -1
- package/dist/services/settings.d.ts +2 -0
- package/dist/services/settings.js +3 -1
- package/dist/services/settings.js.map +1 -1
- package/dist/store/configureStore.js +11 -7
- package/dist/store/configureStore.js.map +1 -1
- package/dist/store/reducers/authentication/authentication.d.ts +1 -0
- package/dist/store/reducers/authentication/authentication.js.map +1 -1
- package/dist/store/reducers/capabilities/capabilities.d.ts +126 -1
- package/dist/store/reducers/capabilities/capabilities.js +6 -2
- package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
- package/dist/store/reducers/capabilities/hooks.d.ts +3 -0
- package/dist/store/reducers/capabilities/hooks.js +14 -1
- package/dist/store/reducers/capabilities/hooks.js.map +1 -1
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js +1 -1
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js.map +1 -1
- package/dist/store/reducers/query/__test__/utils.test.js +4 -4
- package/dist/store/reducers/query/__test__/utils.test.js.map +1 -1
- package/dist/store/reducers/query/preparePlanData.d.ts +5 -0
- package/dist/store/reducers/query/preparePlanData.js +57 -0
- package/dist/store/reducers/query/preparePlanData.js.map +1 -0
- package/dist/store/reducers/query/prepareQueryData.js +8 -54
- package/dist/store/reducers/query/prepareQueryData.js.map +1 -1
- package/dist/store/reducers/query/query.d.ts +14 -1
- package/dist/store/reducers/query/query.js +109 -3
- package/dist/store/reducers/query/query.js.map +1 -1
- package/dist/store/reducers/query/streamingReducers.d.ts +6 -0
- package/dist/store/reducers/query/streamingReducers.js +97 -0
- package/dist/store/reducers/query/streamingReducers.js.map +1 -0
- package/dist/store/reducers/query/types.d.ts +2 -0
- package/dist/store/reducers/query/utils.d.ts +4 -0
- package/dist/store/reducers/query/utils.js +12 -0
- package/dist/store/reducers/query/utils.js.map +1 -1
- package/dist/styles/illustrations.scss +20 -0
- package/dist/styles/index.scss +1 -0
- package/dist/types/additionalProps.d.ts +1 -1
- package/dist/types/api/capabilities.d.ts +4 -0
- package/dist/types/api/query.d.ts +17 -1
- package/dist/types/api/schema/schema.d.ts +2 -1
- package/dist/types/api/schema/schema.js +1 -0
- package/dist/types/api/schema/schema.js.map +1 -1
- package/dist/types/store/streaming.d.ts +37 -0
- package/dist/types/store/streaming.js +2 -0
- package/dist/types/store/streaming.js.map +1 -0
- package/dist/utils/__test__/getColumnWidth.test.js +15 -15
- package/dist/utils/__test__/getColumnWidth.test.js.map +1 -1
- package/dist/utils/__test__/monitoring.test.js +4 -4
- package/dist/utils/__test__/monitoring.test.js.map +1 -1
- package/dist/utils/__test__/parseBalancer.test.js +9 -9
- package/dist/utils/__test__/parseBalancer.test.js.map +1 -1
- package/dist/utils/__test__/prepareBackend.test.js +3 -3
- package/dist/utils/__test__/prepareBackend.test.js.map +1 -1
- package/dist/utils/bytesParsers/__test__/formatBytes.test.js +6 -6
- package/dist/utils/bytesParsers/__test__/formatBytes.test.js.map +1 -1
- package/dist/utils/constants.d.ts +3 -1
- package/dist/utils/constants.js +2 -0
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/createToast.d.ts +2 -1
- package/dist/utils/createToast.js +2 -2
- package/dist/utils/createToast.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatNumbers.test.js +9 -9
- package/dist/utils/dataFormatters/__test__/formatNumbers.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatStorageValues.test.js +7 -7
- package/dist/utils/dataFormatters/__test__/formatStorageValues.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/formatUptime.test.js +11 -11
- package/dist/utils/dataFormatters/__test__/formatUptime.test.js.map +1 -1
- package/dist/utils/dataFormatters/__test__/roundToSignificant.test.js +2 -2
- package/dist/utils/dataFormatters/__test__/roundToSignificant.test.js.map +1 -1
- package/dist/utils/developerUI/__test__/developerUI.test.js +12 -12
- package/dist/utils/developerUI/__test__/developerUI.test.js.map +1 -1
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js +5 -5
- package/dist/utils/disks/__test__/calculatePDiskSeverity.test.js.map +1 -1
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +8 -8
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js.map +1 -1
- package/dist/utils/disks/__test__/prepareDisks.test.js +7 -7
- package/dist/utils/disks/__test__/prepareDisks.test.js.map +1 -1
- package/dist/utils/downloadFile.d.ts +2 -0
- package/dist/utils/downloadFile.js +17 -0
- package/dist/utils/downloadFile.js.map +1 -0
- package/dist/utils/hooks/__test__/useTableSort.test.js +3 -3
- package/dist/utils/hooks/__test__/useTableSort.test.js.map +1 -1
- package/dist/utils/hooks/useAdditionalNodesProps.d.ts +2 -0
- package/dist/utils/hooks/useAdditionalNodesProps.js +14 -0
- package/dist/utils/hooks/useAdditionalNodesProps.js.map +1 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.d.ts +1 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.js +6 -0
- package/dist/utils/hooks/useIsUserAllowedToMakeChanges.js.map +1 -0
- package/dist/utils/hooks/useNodeDeveloperUIHref.js +4 -7
- package/dist/utils/hooks/useNodeDeveloperUIHref.js.map +1 -1
- package/dist/utils/prepareBackend.d.ts +2 -1
- package/dist/utils/prepareBackend.js +3 -2
- package/dist/utils/prepareBackend.js.map +1 -1
- package/dist/utils/prepareErrorMessage.d.ts +1 -0
- package/dist/utils/prepareErrorMessage.js +18 -0
- package/dist/utils/prepareErrorMessage.js.map +1 -0
- package/dist/utils/query.d.ts +3 -2
- package/dist/utils/query.js +18 -31
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/query.test.js +19 -19
- package/dist/utils/query.test.js.map +1 -1
- package/dist/utils/response.js +2 -1
- package/dist/utils/response.js.map +1 -1
- package/dist/utils/timeParsers/__test__/formatDuration.test.js +6 -6
- package/dist/utils/timeParsers/__test__/formatDuration.test.js.map +1 -1
- package/dist/utils/timeParsers/__test__/protobuf.test.js +10 -10
- package/dist/utils/timeParsers/__test__/protobuf.test.js.map +1 -1
- package/package.json +12 -7
- package/dist/components/ElapsedTime/ElapsedTime.d.ts +0 -5
- package/dist/components/ElapsedTime/ElapsedTime.js +0 -25
- package/dist/components/ElapsedTime/ElapsedTime.js.map +0 -1
- package/dist/components/ElapsedTime/ElapsedTime.scss +0 -3
- package/dist/components/ErrorBoundary/i18n/ru.json +0 -7
- package/dist/components/PDiskInfo/PDiskInfo.scss +0 -7
- package/dist/containers/Tablets/index.d.ts +0 -1
- package/dist/containers/Tablets/index.js +0 -2
- package/dist/containers/Tablets/index.js.map +0 -1
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.d.ts +0 -7
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.js +0 -17
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.js.map +0 -1
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.d.ts +0 -6
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.js +0 -15
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.js.map +0 -1
- package/dist/containers/Tenant/Query/QueryDuration/QueryDuration.scss +0 -27
- package/dist/containers/Tenant/Query/QueryResult/components/QueryInfoDropdown/utils.d.ts +0 -1
- package/dist/containers/Tenant/Query/QueryResult/components/QueryInfoDropdown/utils.js +0 -9
- package/dist/containers/Tenant/Query/QueryResult/components/QueryInfoDropdown/utils.js.map +0 -1
@@ -0,0 +1,97 @@
|
|
1
|
+
import { parseResult } from '../../../utils/query';
|
2
|
+
import { preparePlanData } from './preparePlanData';
|
3
|
+
import { prepareQueryData } from './prepareQueryData';
|
4
|
+
export const setStreamSession = (state, action) => {
|
5
|
+
if (!state.result) {
|
6
|
+
return;
|
7
|
+
}
|
8
|
+
if (!state.result.data) {
|
9
|
+
state.result.data = prepareQueryData(null);
|
10
|
+
}
|
11
|
+
const chunk = action.payload;
|
12
|
+
state.result.isLoading = true;
|
13
|
+
state.result.queryId = chunk.meta.query_id;
|
14
|
+
state.result.data.traceId = chunk.meta.trace_id;
|
15
|
+
};
|
16
|
+
export const setStreamQueryResponse = (state, action) => {
|
17
|
+
if (!state.result) {
|
18
|
+
return;
|
19
|
+
}
|
20
|
+
if (!state.result.data) {
|
21
|
+
state.result.data = prepareQueryData(null);
|
22
|
+
}
|
23
|
+
state.result.isLoading = false;
|
24
|
+
const chunk = action.payload;
|
25
|
+
if ('error' in chunk) {
|
26
|
+
state.result.error = chunk;
|
27
|
+
}
|
28
|
+
else if ('plan' in chunk) {
|
29
|
+
if (!state.result.data) {
|
30
|
+
state.result.data = prepareQueryData(null);
|
31
|
+
}
|
32
|
+
const { plan: rawPlan, stats } = chunk;
|
33
|
+
const { simplifiedPlan, ...planData } = preparePlanData(rawPlan, stats);
|
34
|
+
state.result.data.preparedPlan = Object.keys(planData).length > 0 ? planData : undefined;
|
35
|
+
state.result.data.simplifiedPlan = simplifiedPlan;
|
36
|
+
state.result.data.plan = chunk.plan;
|
37
|
+
state.result.data.stats = chunk.stats;
|
38
|
+
}
|
39
|
+
state.result.endTime = Date.now();
|
40
|
+
};
|
41
|
+
const getEmptyResultSet = () => {
|
42
|
+
return {
|
43
|
+
columns: [],
|
44
|
+
result: [],
|
45
|
+
truncated: false,
|
46
|
+
};
|
47
|
+
};
|
48
|
+
export const addStreamingChunks = (state, action) => {
|
49
|
+
var _a;
|
50
|
+
if (!state.result) {
|
51
|
+
return;
|
52
|
+
}
|
53
|
+
state.result.data = state.result.data || prepareQueryData(null);
|
54
|
+
state.result.data.resultSets = state.result.data.resultSets || [];
|
55
|
+
// Merge chunks by result index
|
56
|
+
const mergedChunks = action.payload.reduce((acc, chunk) => {
|
57
|
+
var _a;
|
58
|
+
const resultIndex = chunk.meta.result_index;
|
59
|
+
const currentMergedChunk = acc.get(resultIndex);
|
60
|
+
if (currentMergedChunk) {
|
61
|
+
(_a = currentMergedChunk.result.rows) === null || _a === void 0 ? void 0 : _a.push(...(chunk.result.rows || []));
|
62
|
+
currentMergedChunk.result.truncated =
|
63
|
+
currentMergedChunk.result.truncated || chunk.result.truncated;
|
64
|
+
}
|
65
|
+
else {
|
66
|
+
acc.set(resultIndex, {
|
67
|
+
...chunk,
|
68
|
+
result: {
|
69
|
+
...chunk.result,
|
70
|
+
rows: chunk.result.rows || [],
|
71
|
+
truncated: chunk.result.truncated,
|
72
|
+
},
|
73
|
+
});
|
74
|
+
}
|
75
|
+
return acc;
|
76
|
+
}, new Map());
|
77
|
+
// Process merged chunks
|
78
|
+
for (const [resultIndex, chunk] of mergedChunks.entries()) {
|
79
|
+
const { columns, rows } = chunk.result;
|
80
|
+
const resultSets = state.result.data.resultSets;
|
81
|
+
if (!resultSets[resultIndex]) {
|
82
|
+
resultSets[resultIndex] = getEmptyResultSet();
|
83
|
+
}
|
84
|
+
const resultSet = resultSets[resultIndex];
|
85
|
+
if (columns && !((_a = resultSet.columns) === null || _a === void 0 ? void 0 : _a.length)) {
|
86
|
+
resultSet.columns = columns;
|
87
|
+
}
|
88
|
+
const safeRows = rows || [];
|
89
|
+
const formattedRows = parseResult(safeRows, resultSet.columns || []);
|
90
|
+
formattedRows.forEach((row) => {
|
91
|
+
var _a;
|
92
|
+
(_a = resultSet.result) === null || _a === void 0 ? void 0 : _a.push(row);
|
93
|
+
});
|
94
|
+
resultSet.truncated = chunk.result.truncated;
|
95
|
+
}
|
96
|
+
};
|
97
|
+
//# sourceMappingURL=streamingReducers.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"streamingReducers.js","sourceRoot":"","sources":["../../../../src/store/reducers/query/streamingReducers.ts"],"names":[],"mappings":"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"}
|
@@ -1,7 +1,11 @@
|
|
1
1
|
import type { QueryAction, QueryMode, QuerySyntax } from '../../../types/store/query';
|
2
|
+
import type { QueryResponseChunk, SessionChunk, StreamDataChunk, StreamingChunk } from '../../../types/store/streaming';
|
2
3
|
import type { QueryInHistory } from './types';
|
3
4
|
export declare function getActionAndSyntaxFromQueryMode(baseAction?: QueryAction, queryMode?: QueryMode): {
|
4
5
|
action: "execute" | "explain" | "execute-scan" | "execute-script" | "execute-data" | "execute-query" | "explain-scan" | "explain-script" | "explain-data" | "explain-query";
|
5
6
|
syntax: QuerySyntax;
|
6
7
|
};
|
7
8
|
export declare function getQueryInHistory(rawQuery: string | QueryInHistory): QueryInHistory;
|
9
|
+
export declare function isSessionChunk(content: StreamingChunk): content is SessionChunk;
|
10
|
+
export declare function isStreamDataChunk(content: StreamingChunk): content is StreamDataChunk;
|
11
|
+
export declare function isQueryResponseChunk(content: StreamingChunk): content is QueryResponseChunk;
|
@@ -18,4 +18,16 @@ export function getQueryInHistory(rawQuery) {
|
|
18
18
|
}
|
19
19
|
return rawQuery;
|
20
20
|
}
|
21
|
+
export function isSessionChunk(content) {
|
22
|
+
var _a;
|
23
|
+
return ((_a = content === null || content === void 0 ? void 0 : content.meta) === null || _a === void 0 ? void 0 : _a.event) === 'SessionCreated';
|
24
|
+
}
|
25
|
+
export function isStreamDataChunk(content) {
|
26
|
+
var _a;
|
27
|
+
return ((_a = content === null || content === void 0 ? void 0 : content.meta) === null || _a === void 0 ? void 0 : _a.event) === 'StreamData';
|
28
|
+
}
|
29
|
+
export function isQueryResponseChunk(content) {
|
30
|
+
var _a;
|
31
|
+
return ((_a = content === null || content === void 0 ? void 0 : content.meta) === null || _a === void 0 ? void 0 : _a.event) === 'QueryResponse';
|
32
|
+
}
|
21
33
|
//# sourceMappingURL=utils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/query/utils.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/query/utils.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,+BAA+B,CAC3C,aAA0B,SAAS,EACnC,YAAuB,OAAO;IAE9B,IAAI,MAAM,GAAY,UAAU,CAAC;IACjC,IAAI,MAAM,GAAgB,QAAQ,CAAC;IAEnC,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,UAAU,QAAQ,CAAC;QAC/B,MAAM,GAAG,IAAI,CAAC;IAClB,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAiC;IAC/D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO;YACH,SAAS,EAAE,QAAQ;SACtB,CAAC;IACN,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAuB;;IAClD,OAAO,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,KAAK,MAAK,gBAAgB,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAuB;;IACrD,OAAO,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,KAAK,MAAK,YAAY,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAuB;;IACxD,OAAO,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,KAAK,MAAK,eAAe,CAAC;AACpD,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
@forward '@gravity-ui/illustrations/styles/styles.scss';
|
2
|
+
|
3
|
+
// Replace yellow and orange colors with blue
|
4
|
+
|
5
|
+
.g-root {
|
6
|
+
&_theme_light,
|
7
|
+
&_theme_light-hc {
|
8
|
+
--gil-color-object-base: var(--g-color-private-blue-450-solid);
|
9
|
+
--gil-color-object-accent-heavy: var(--g-color-private-blue-850-solid);
|
10
|
+
--gil-color-object-hightlight: var(--g-color-private-blue-350-solid);
|
11
|
+
--gil-color-shadow-over-object: var(--g-color-private-blue-650-solid);
|
12
|
+
}
|
13
|
+
&_theme_dark,
|
14
|
+
&_theme_dark-hc {
|
15
|
+
--gil-color-object-base: var(--g-color-private-blue-450-solid);
|
16
|
+
--gil-color-object-accent-heavy: var(--g-color-private-blue-850-solid);
|
17
|
+
--gil-color-object-hightlight: var(--g-color-private-blue-350-solid);
|
18
|
+
--gil-color-shadow-over-object: var(--g-color-private-blue-650-solid);
|
19
|
+
}
|
20
|
+
}
|
package/dist/styles/index.scss
CHANGED
@@ -18,7 +18,7 @@ export interface AdditionalTenantsProps {
|
|
18
18
|
getMonitoringLink?: (name?: string, type?: ETenantType) => string | null;
|
19
19
|
}
|
20
20
|
export type NodeAddress = Pick<TSystemStateInfo, 'Host' | 'Endpoints' | 'NodeId'>;
|
21
|
-
export type GetNodeRefFunc = (node?: NodeAddress) => string |
|
21
|
+
export type GetNodeRefFunc = (node?: NodeAddress) => string | undefined;
|
22
22
|
export interface AdditionalNodesProps extends Record<string, unknown> {
|
23
23
|
getNodeRef?: GetNodeRefFunc;
|
24
24
|
}
|
@@ -3,5 +3,9 @@
|
|
3
3
|
*/
|
4
4
|
export interface CapabilitiesResponse {
|
5
5
|
Capabilities: Record<Partial<Capability>, number>;
|
6
|
+
Settings?: {
|
7
|
+
Security?: Record<Partial<SecuritySetting>, boolean>;
|
8
|
+
};
|
6
9
|
}
|
7
10
|
export type Capability = '/pdisk/info' | '/scheme/directory' | '/storage/groups' | '/viewer/query' | '/viewer/feature_flags' | '/viewer/cluster' | '/viewer/nodes';
|
11
|
+
export type SecuritySetting = 'UseLoginProvider' | 'DomainLoginOnly';
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { StatisticsMode } from '../store/query';
|
1
|
+
import type { QuerySyntax, StatisticsMode, TransactionMode } from '../store/query';
|
2
2
|
interface Position {
|
3
3
|
row?: number;
|
4
4
|
column?: number;
|
@@ -240,6 +240,22 @@ export type GenericExecuteResponse<Action extends ExecuteActions> = Action exten
|
|
240
240
|
export type CancelResponse = {
|
241
241
|
stats?: TKqpStatsQuery;
|
242
242
|
};
|
243
|
+
export interface SendQueryParams<Action extends Actions> {
|
244
|
+
query?: string;
|
245
|
+
database?: string;
|
246
|
+
action?: Action;
|
247
|
+
syntax?: QuerySyntax;
|
248
|
+
stats?: Stats;
|
249
|
+
tracingLevel?: TracingLevel;
|
250
|
+
transaction_mode?: TransactionMode;
|
251
|
+
timeout?: Timeout;
|
252
|
+
query_id?: string;
|
253
|
+
limit_rows?: number;
|
254
|
+
}
|
255
|
+
export interface StreamQueryParams<Action extends Actions> extends SendQueryParams<Action> {
|
256
|
+
output_chunk_max_size?: number;
|
257
|
+
concurrent_results?: boolean;
|
258
|
+
}
|
243
259
|
export type QueryAPIResponseByAction<Action extends Actions> = Action extends ExplainActions ? GenericExplainResponse<Action> : Action extends ExecuteActions ? GenericExecuteResponse<Action> : Action extends CancelActions ? CancelResponse : never;
|
244
260
|
type QueryAPIResponseMeta = {
|
245
261
|
_meta?: {
|
@@ -240,7 +240,8 @@ export declare enum EPathType {
|
|
240
240
|
EPathTypeExternalDataSource = "EPathTypeExternalDataSource",
|
241
241
|
EPathTypeExternalTable = "EPathTypeExternalTable",
|
242
242
|
EPathTypeView = "EPathTypeView",
|
243
|
-
EPathTypeReplication = "EPathTypeReplication"
|
243
|
+
EPathTypeReplication = "EPathTypeReplication",
|
244
|
+
EPathTypeResourcePool = "EPathTypeResourcePool"
|
244
245
|
}
|
245
246
|
export declare enum EPathSubType {
|
246
247
|
EPathSubTypeEmpty = "EPathSubTypeEmpty",
|
@@ -42,6 +42,7 @@ export var EPathType;
|
|
42
42
|
EPathType["EPathTypeExternalTable"] = "EPathTypeExternalTable";
|
43
43
|
EPathType["EPathTypeView"] = "EPathTypeView";
|
44
44
|
EPathType["EPathTypeReplication"] = "EPathTypeReplication";
|
45
|
+
EPathType["EPathTypeResourcePool"] = "EPathTypeResourcePool";
|
45
46
|
})(EPathType || (EPathType = {}));
|
46
47
|
export var EPathSubType;
|
47
48
|
(function (EPathSubType) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/types/api/schema/schema.ts"],"names":[],"mappings":"AAiCA,IAAK,OAmBJ;AAnBD,WAAK,OAAO;IACR,0CAA+B,CAAA;IAC/B,4CAAiC,CAAA;IACjC,4DAAiD,CAAA;IACjD,gEAAqD,CAAA;IACrD,sDAA2C,CAAA;IAC3C,kDAAuC,CAAA;IACvC,oDAAyC,CAAA;IACzC,4DAAiD,CAAA;IACjD,sEAA2D,CAAA;IAC3D,4CAAiC,CAAA;IACjC,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IACrD,oDAAyC,CAAA;IACzC,oDAAyC,CAAA;IACzC,gEAAqD,CAAA;IACrD,wDAA6C,CAAA;IAC7C,sDAA2C,CAAA;IAC3C,8DAAmD,CAAA;AACvD,CAAC,EAnBI,OAAO,KAAP,OAAO,QAmBX;AAwMD,IAAK,OAIJ;AAJD,WAAK,OAAO;IACR,8BAAqB,CAAA;IACrB,wBAAe,CAAA;IACf,0BAAiB,CAAA;AACrB,CAAC,EAJI,OAAO,KAAP,OAAO,QAIX;AAuBD,aAAa;AACb,MAAM,CAAN,IAAY,
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/types/api/schema/schema.ts"],"names":[],"mappings":"AAiCA,IAAK,OAmBJ;AAnBD,WAAK,OAAO;IACR,0CAA+B,CAAA;IAC/B,4CAAiC,CAAA;IACjC,4DAAiD,CAAA;IACjD,gEAAqD,CAAA;IACrD,sDAA2C,CAAA;IAC3C,kDAAuC,CAAA;IACvC,oDAAyC,CAAA;IACzC,4DAAiD,CAAA;IACjD,sEAA2D,CAAA;IAC3D,4CAAiC,CAAA;IACjC,sDAA2C,CAAA;IAC3C,gEAAqD,CAAA;IACrD,oDAAyC,CAAA;IACzC,oDAAyC,CAAA;IACzC,gEAAqD,CAAA;IACrD,wDAA6C,CAAA;IAC7C,sDAA2C,CAAA;IAC3C,8DAAmD,CAAA;AACvD,CAAC,EAnBI,OAAO,KAAP,OAAO,QAmBX;AAwMD,IAAK,OAIJ;AAJD,WAAK,OAAO;IACR,8BAAqB,CAAA;IACrB,wBAAe,CAAA;IACf,0BAAiB,CAAA;AACrB,CAAC,EAJI,OAAO,KAAP,OAAO,QAIX;AAuBD,aAAa;AACb,MAAM,CAAN,IAAY,SAoBX;AApBD,WAAY,SAAS;IACjB,kDAAqC,CAAA;IACrC,0CAA6B,CAAA;IAC7B,8CAAiC,CAAA;IACjC,gEAAmD,CAAA;IACnD,sDAAyC,CAAA;IAEzC,wDAA2C,CAAA;IAC3C,4DAA+C,CAAA;IAE/C,0DAA6C,CAAA;IAC7C,0DAA6C,CAAA;IAC7C,sDAAyC,CAAA;IAEzC,wEAA2D,CAAA;IAC3D,8DAAiD,CAAA;IACjD,4CAA+B,CAAA;IAE/B,0DAA6C,CAAA;IAC7C,4DAA+C,CAAA;AACnD,CAAC,EApBW,SAAS,KAAT,SAAS,QAoBpB;AAED,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,uDAAuC,CAAA;IACvC,iFAAiE,CAAA;IACjE,mFAAmE,CAAA;IACnE,iEAAiD,CAAA;AACrD,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,IAAK,UAYJ;AAZD,WAAK,UAAU;IACX,uDAAyC,CAAA;IACzC,yDAA2C,CAAA;IAC3C,mDAAqC,CAAA;IACrC,iDAAmC,CAAA;IACnC,+CAAiC,CAAA;IACjC,qDAAuC,CAAA;IACvC,mDAAqC,CAAA;IACrC,qDAAuC,CAAA;IACvC,uDAAyC,CAAA;IACzC,qDAAuC,CAAA;IACvC,mDAAqC,CAAA;AACzC,CAAC,EAZI,UAAU,KAAV,UAAU,QAYd"}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import type { ArrayRow, ColumnType, ErrorResponse, QueryPlan, ScriptPlan, TKqpStatsQuery } from '../api/query';
|
2
|
+
export interface SessionChunk {
|
3
|
+
meta: {
|
4
|
+
event: 'SessionCreated';
|
5
|
+
node_id: number;
|
6
|
+
query_id: string;
|
7
|
+
session_id: string;
|
8
|
+
trace_id?: string;
|
9
|
+
};
|
10
|
+
}
|
11
|
+
export interface StreamDataChunk {
|
12
|
+
meta: {
|
13
|
+
event: 'StreamData';
|
14
|
+
seq_no: number;
|
15
|
+
result_index: number;
|
16
|
+
};
|
17
|
+
result: {
|
18
|
+
columns?: ColumnType[];
|
19
|
+
rows: ArrayRow[] | null;
|
20
|
+
truncated?: boolean;
|
21
|
+
};
|
22
|
+
}
|
23
|
+
export interface SuccessQueryResponseData {
|
24
|
+
stats?: TKqpStatsQuery;
|
25
|
+
plan?: ScriptPlan | QueryPlan;
|
26
|
+
ast?: string;
|
27
|
+
}
|
28
|
+
export type ErrorQueryResponseData = ErrorResponse;
|
29
|
+
export interface BaseQueryResponseChunk {
|
30
|
+
meta: {
|
31
|
+
event: 'QueryResponse';
|
32
|
+
version: string;
|
33
|
+
type: string;
|
34
|
+
};
|
35
|
+
}
|
36
|
+
export type QueryResponseChunk = BaseQueryResponseChunk & (SuccessQueryResponseData | ErrorQueryResponseData);
|
37
|
+
export type StreamingChunk = SessionChunk | StreamDataChunk | QueryResponseChunk;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["../../../src/types/store/streaming.ts"],"names":[],"mappings":""}
|
@@ -1,72 +1,72 @@
|
|
1
1
|
import { HEADER_PADDING, MAX_COLUMN_WIDTH, PIXELS_PER_CHARACTER, SORT_ICON_TO_CHARACTERS, getColumnWidth, } from '../getColumnWidth';
|
2
2
|
describe('getColumnWidth', () => {
|
3
|
-
|
3
|
+
test('returns minimum width for empty data', () => {
|
4
4
|
const result = getColumnWidth({ data: [], name: 'test' });
|
5
5
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
6
6
|
});
|
7
|
-
|
7
|
+
test('calculates correct width for string columns', () => {
|
8
8
|
const data = [{ test: 'short' }, { test: 'medium length' }, { test: 'this is a longer string' }];
|
9
9
|
const result = getColumnWidth({ data, name: 'test' });
|
10
10
|
expect(result).toBe(HEADER_PADDING + 'this is a longer string'.length * PIXELS_PER_CHARACTER);
|
11
11
|
});
|
12
|
-
|
12
|
+
test('calculates correct width for columns with sorting', () => {
|
13
13
|
const result = getColumnWidth({ data: [], name: 'test', sortable: true });
|
14
14
|
expect(result).toBe(HEADER_PADDING + ('test'.length + SORT_ICON_TO_CHARACTERS) * PIXELS_PER_CHARACTER);
|
15
15
|
});
|
16
|
-
|
16
|
+
test('calculates correct width for columns with sorting and column name wider than header', () => {
|
17
17
|
const data = [{ test: 'this is a longer string' }];
|
18
18
|
const result = getColumnWidth({ data, name: 'test', sortable: true });
|
19
19
|
expect(result).toBe(HEADER_PADDING + 'this is a longer string'.length * PIXELS_PER_CHARACTER);
|
20
20
|
});
|
21
|
-
|
21
|
+
test('calculates correct width for columns with header', () => {
|
22
22
|
const result = getColumnWidth({ data: [], name: 'test', header: 'a' });
|
23
23
|
expect(result).toBe(HEADER_PADDING + 'a'.length * PIXELS_PER_CHARACTER);
|
24
24
|
});
|
25
|
-
|
25
|
+
test('returns MAX_COLUMN_WIDTH when calculated width exceeds it', () => {
|
26
26
|
const data = [{ test: 'a'.repeat(100) }];
|
27
27
|
const result = getColumnWidth({ data, name: 'test' });
|
28
28
|
expect(result).toBe(MAX_COLUMN_WIDTH);
|
29
29
|
});
|
30
|
-
|
30
|
+
test('handles undefined data correctly', () => {
|
31
31
|
const result = getColumnWidth({ name: 'test' });
|
32
32
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
33
33
|
});
|
34
|
-
|
34
|
+
test('handles missing values in data correctly', () => {
|
35
35
|
const data = [{ test: 'short' }, {}, { test: 'longer string' }];
|
36
36
|
const result = getColumnWidth({ data, name: 'test' });
|
37
37
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
38
38
|
});
|
39
|
-
|
39
|
+
test('uses column name length when all values are shorter', () => {
|
40
40
|
const data = [{ longColumnName: 'a' }, { longColumnName: 'bb' }];
|
41
41
|
const result = getColumnWidth({ data, name: 'longColumnName' });
|
42
42
|
expect(result).toBe(HEADER_PADDING + 'longColumnName'.length * PIXELS_PER_CHARACTER);
|
43
43
|
});
|
44
|
-
|
44
|
+
test('handles null values in data correctly', () => {
|
45
45
|
const data = [{ test: 'a' }, { test: null }];
|
46
46
|
const result = getColumnWidth({ data, name: 'test' });
|
47
47
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
48
48
|
});
|
49
|
-
|
49
|
+
test('handles undefined values in data correctly', () => {
|
50
50
|
const data = [{ test: 'a' }, { test: undefined }];
|
51
51
|
const result = getColumnWidth({ data, name: 'test' });
|
52
52
|
expect(result).toBe(HEADER_PADDING + 'test'.length * PIXELS_PER_CHARACTER);
|
53
53
|
});
|
54
|
-
|
54
|
+
test('handles empty string values in data correctly', () => {
|
55
55
|
const data = [{ test: 'short' }, { test: '' }, { test: 'longer string' }];
|
56
56
|
const result = getColumnWidth({ data, name: 'test' });
|
57
57
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
58
58
|
});
|
59
|
-
|
59
|
+
test('handles an array of numbers correctly', () => {
|
60
60
|
const data = [{ test: 1 }, { test: 123 }, { test: 12345 }];
|
61
61
|
const result = getColumnWidth({ data, name: 'test' });
|
62
62
|
expect(result).toBe(HEADER_PADDING + '12345'.length * PIXELS_PER_CHARACTER);
|
63
63
|
});
|
64
|
-
|
64
|
+
test('handles an array of mixed data types correctly', () => {
|
65
65
|
const data = [{ test: 'short' }, { test: 123 }, { test: null }, { test: 'longer string' }];
|
66
66
|
const result = getColumnWidth({ data, name: 'test' });
|
67
67
|
expect(result).toBe(HEADER_PADDING + 'longer string'.length * PIXELS_PER_CHARACTER);
|
68
68
|
});
|
69
|
-
|
69
|
+
test('handles empty name correctly', () => {
|
70
70
|
const data = [{ test: 'test' }];
|
71
71
|
const result = getColumnWidth({ data, name: '' });
|
72
72
|
expect(result).toBe(HEADER_PADDING);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getColumnWidth.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/getColumnWidth.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,GACjB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC5B,
|
1
|
+
{"version":3,"file":"getColumnWidth.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/getColumnWidth.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getMonitoringClusterLink, getMonitoringLink } from '../monitoring';
|
2
2
|
describe('getMonitoringLink', () => {
|
3
|
-
|
3
|
+
test('should create database monitoring link from JSON', () => {
|
4
4
|
const solomonRaw = {
|
5
5
|
monitoring_url: 'https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards',
|
6
6
|
serverless_dashboard: '',
|
@@ -14,7 +14,7 @@ describe('getMonitoringLink', () => {
|
|
14
14
|
dbType: 'Dedicated',
|
15
15
|
})).toBe('https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards/aol34hftdn7o4fls50sv?p.cluster=global&p.host=cluster&p.slot=static&p.database=database');
|
16
16
|
});
|
17
|
-
|
17
|
+
test('should create cluster monitoring link from JSON', () => {
|
18
18
|
const solomonRaw = {
|
19
19
|
monitoring_url: 'https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards',
|
20
20
|
cluster_dashboard: 'aol34hftdn7o4fls50sv',
|
@@ -22,7 +22,7 @@ describe('getMonitoringLink', () => {
|
|
22
22
|
const solomonString = JSON.stringify(solomonRaw);
|
23
23
|
expect(getMonitoringClusterLink(solomonString, 'clusterName')).toBe('https://monitoring.test.ai/projects/yc.ydb.ydbaas-cloud/dashboards/aol34hftdn7o4fls50sv/view?p.cluster=clusterName&p.database=-');
|
24
24
|
});
|
25
|
-
|
25
|
+
test('should not parse ready to use database monitoring link', () => {
|
26
26
|
const solomonRaw = {
|
27
27
|
monitoring_url: 'https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv?p.cluster=cluster_name&a=',
|
28
28
|
};
|
@@ -33,7 +33,7 @@ describe('getMonitoringLink', () => {
|
|
33
33
|
dbType: 'Dedicated',
|
34
34
|
})).toBe('https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv?p.cluster=cluster_name&a=&p.host=cluster&p.slot=static&p.database=database');
|
35
35
|
});
|
36
|
-
|
36
|
+
test('should not parse ready to use cluster monitoring link', () => {
|
37
37
|
const solomonRaw = {
|
38
38
|
monitoring_url: 'https://monitoring.test.ai/projects/ydbaas/dashboards/aol34hftdn7o4fls50sv/view?p.cluster=cluster_name&a=',
|
39
39
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"monitoring.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/monitoring.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE1E,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,
|
1
|
+
{"version":3,"file":"monitoring.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/monitoring.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE1E,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,UAAU,GAAG;YACf,cAAc,EAAE,oEAAoE;YACpF,oBAAoB,EAAE,EAAE;YACxB,mBAAmB,EAAE,sBAAsB;SAC9C,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CACF,iBAAiB,CAAC;YACd,UAAU,EAAE,aAAa;YACzB,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,WAAW;SACtB,CAAC,CACL,CAAC,IAAI,CACF,2JAA2J,CAC9J,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,UAAU,GAAG;YACf,cAAc,EAAE,oEAAoE;YACpF,iBAAiB,EAAE,sBAAsB;SAC5C,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAC/D,iIAAiI,CACpI,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,UAAU,GAAG;YACf,cAAc,EACV,sGAAsG;SAC7G,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CACF,iBAAiB,CAAC;YACd,UAAU,EAAE,aAAa;YACzB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,WAAW;SACtB,CAAC,CACL,CAAC,IAAI,CACF,uJAAuJ,CAC1J,CAAC;IACN,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,UAAU,GAAG;YACf,cAAc,EACV,2GAA2G;SAClH,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAChD,wHAAwH,CAC3H,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getCleanBalancerValue, parseBalancer, removePort, removeProtocol, removeViewerPathname, } from '../parseBalancer';
|
2
2
|
describe('parseBalancer', () => {
|
3
|
-
|
3
|
+
test('should parse balancer with viewer proxy', () => {
|
4
4
|
const rawValue = 'https://viewer.ydb.ru:443/ydb-testing-0000.search.ydb.net:8765/viewer/json';
|
5
5
|
const balancer = 'ydb-testing-0000.search.ydb.net:8765';
|
6
6
|
const proxy = 'viewer.ydb.ru:443';
|
@@ -8,7 +8,7 @@ describe('parseBalancer', () => {
|
|
8
8
|
expect(parsedBalancerWithViewer.balancer).toBe(balancer);
|
9
9
|
expect(parsedBalancerWithViewer.proxy).toBe(proxy);
|
10
10
|
});
|
11
|
-
|
11
|
+
test('should parse balancer with bastion proxy', () => {
|
12
12
|
const rawValue = 'https://ydb.bastion.cloud.ru:443/ydbproxy.ydb.cloud.net:8765/viewer/json';
|
13
13
|
const balancer = 'ydbproxy.ydb.cloud.net:8765';
|
14
14
|
const proxy = 'ydb.bastion.cloud.ru:443';
|
@@ -16,7 +16,7 @@ describe('parseBalancer', () => {
|
|
16
16
|
expect(parsedBalancerWithBastion.balancer).toBe(balancer);
|
17
17
|
expect(parsedBalancerWithBastion.proxy).toBe(proxy);
|
18
18
|
});
|
19
|
-
|
19
|
+
test('should parse balancer with custom proxy', () => {
|
20
20
|
const rawValue = 'https://proxy.ydb.mdb.cloud-preprod.net:443/ydbproxy-public.ydb.cloud-preprod.net:8765/viewer/json';
|
21
21
|
const balancer = 'ydbproxy-public.ydb.cloud-preprod.net:8765';
|
22
22
|
const proxy = 'proxy.ydb.mdb.cloud-preprod.net:443';
|
@@ -24,14 +24,14 @@ describe('parseBalancer', () => {
|
|
24
24
|
expect(parsedBalancerWithCustomProxy.balancer).toBe(balancer);
|
25
25
|
expect(parsedBalancerWithCustomProxy.proxy).toBe(proxy);
|
26
26
|
});
|
27
|
-
|
27
|
+
test('should parse balancer without proxy', () => {
|
28
28
|
const rawValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
29
29
|
const balancer = 'ydb-testing-0000.search.net:8765';
|
30
30
|
const parsedBalancerWithoutProxy = parseBalancer(rawValue);
|
31
31
|
expect(parsedBalancerWithoutProxy.balancer).toBe(balancer);
|
32
32
|
expect(parsedBalancerWithoutProxy.proxy).toBe(undefined);
|
33
33
|
});
|
34
|
-
|
34
|
+
test('should parse pure balancer', () => {
|
35
35
|
const pureBalancer = 'ydb-testing-0000.search.net:8765';
|
36
36
|
const parsedPureBalancer = parseBalancer(pureBalancer);
|
37
37
|
expect(parsedPureBalancer.balancer).toBe(pureBalancer);
|
@@ -39,28 +39,28 @@ describe('parseBalancer', () => {
|
|
39
39
|
});
|
40
40
|
});
|
41
41
|
describe('removeViewerPathname', () => {
|
42
|
-
|
42
|
+
test('should remove pathname', () => {
|
43
43
|
const initialValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
44
44
|
const result = 'https://ydb-testing-0000.search.net:8765';
|
45
45
|
expect(removeViewerPathname(initialValue)).toBe(result);
|
46
46
|
});
|
47
47
|
});
|
48
48
|
describe('removeProtocol', () => {
|
49
|
-
|
49
|
+
test('should remove protocol', () => {
|
50
50
|
const initialValue = 'https://ydb-testing-0000.search.net:8765/viewer/json';
|
51
51
|
const result = 'ydb-testing-0000.search.net:8765/viewer/json';
|
52
52
|
expect(removeProtocol(initialValue)).toBe(result);
|
53
53
|
});
|
54
54
|
});
|
55
55
|
describe('removePort', () => {
|
56
|
-
|
56
|
+
test('should remove port', () => {
|
57
57
|
const initialValue = 'ydb-testing-0000.search.net:8765';
|
58
58
|
const result = 'ydb-testing-0000.search.net';
|
59
59
|
expect(removePort(initialValue)).toBe(result);
|
60
60
|
});
|
61
61
|
});
|
62
62
|
describe('getCleanBalancerValue', () => {
|
63
|
-
|
63
|
+
test('should return balancer value without protocol, proxy, port and pathname', () => {
|
64
64
|
const initialValue = 'https://ydb.bastion.cloud.ru:443/ydbproxy.ydb.cloud.net:8765/viewer/json';
|
65
65
|
const result = 'ydbproxy.ydb.cloud.net';
|
66
66
|
expect(getCleanBalancerValue(initialValue)).toBe(result);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parseBalancer.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/parseBalancer.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,UAAU,EACV,cAAc,EACd,oBAAoB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC3B,
|
1
|
+
{"version":3,"file":"parseBalancer.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/parseBalancer.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { getBackendFromNodeHost, getBackendFromRawNodeData, prepareHost } from '../prepareBackend';
|
2
2
|
describe('prepareHost', () => {
|
3
|
-
|
3
|
+
test('should add vm prefix to cloud din nodes', () => {
|
4
4
|
const cloudDinNodeInitialHost = 'vm-cc8mco0j0snqehgh7r2a-ru-central1-c-nlmw-aniq.cc8mco0j0snqehgh7r2a.ydb.mdb.cloud-preprod.net';
|
5
5
|
const cloudDinNodeResultHost = 'u-vm-cc8mco0j0snqehgh7r2a-ru-central1-c-nlmw-aniq.cc8mco0j0snqehgh7r2a.ydb.mdb.cloud-preprod.net';
|
6
6
|
const commonNodeHost = 'sas09-ct5-1.cloud.net';
|
@@ -9,7 +9,7 @@ describe('prepareHost', () => {
|
|
9
9
|
});
|
10
10
|
});
|
11
11
|
describe('getBackendFromNodeHost', () => {
|
12
|
-
|
12
|
+
test('should prepare correct backend value from node host', () => {
|
13
13
|
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
14
14
|
const nodeHost = 'ydb-dev02-001.search.net:31012';
|
15
15
|
const result = 'https://viewer.ydb.ru:443/ydb-dev02-001.search.net:31012';
|
@@ -17,7 +17,7 @@ describe('getBackendFromNodeHost', () => {
|
|
17
17
|
});
|
18
18
|
});
|
19
19
|
describe('getBackendFromRawNodeData', () => {
|
20
|
-
|
20
|
+
test('should prepare correct backend value from raw node data', () => {
|
21
21
|
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
22
22
|
const node = {
|
23
23
|
Host: 'ydb-dev02-000.search.net',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEjG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,
|
1
|
+
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEjG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,uBAAuB,GACzB,gGAAgG,CAAC;QACrG,MAAM,sBAAsB,GACxB,kGAAkG,CAAC;QAEvG,MAAM,cAAc,GAAG,uBAAuB,CAAC;QAE/C,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1E,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,QAAQ,GAAG,8CAA8C,CAAC;QAChE,MAAM,QAAQ,GAAG,gCAAgC,CAAC;QAClD,MAAM,MAAM,GAAG,0DAA0D,CAAC;QAE1E,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACvC,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,QAAQ,GAAG,8CAA8C,CAAC;QAChE,MAAM,IAAI,GAAG;YACT,IAAI,EAAE,0BAA0B;YAChC,SAAS,EAAE;gBACP;oBACI,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,OAAO;iBACnB;gBACD;oBACI,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,QAAQ;iBACpB;gBACD;oBACI,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,OAAO;iBACnB;aACJ;SACJ,CAAC;QACF,MAAM,MAAM,GAAG,yDAAyD,CAAC;QAEzE,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|