ydb-embedded-ui 6.23.1 → 6.25.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/CellWithPopover/CellWithPopover.js +2 -1
- package/dist/components/CellWithPopover/CellWithPopover.js.map +1 -1
- package/dist/components/NodeHostWrapper/NodeHostWrapper.d.ts +6 -2
- package/dist/components/NodeHostWrapper/NodeHostWrapper.js.map +1 -1
- package/dist/components/PDiskPopup/PDiskPopup.js +8 -1
- package/dist/components/PDiskPopup/PDiskPopup.js.map +1 -1
- package/dist/components/PaginatedTable/PaginatedTable.d.ts +3 -2
- package/dist/components/PaginatedTable/PaginatedTable.js +15 -21
- package/dist/components/PaginatedTable/PaginatedTable.js.map +1 -1
- package/dist/components/PaginatedTable/TableChunk.d.ts +1 -2
- package/dist/components/PaginatedTable/TableChunk.js +5 -19
- package/dist/components/PaginatedTable/TableChunk.js.map +1 -1
- package/dist/components/PaginatedTable/useScrollBasedChunks.d.ts +9 -0
- package/dist/components/PaginatedTable/useScrollBasedChunks.js +35 -0
- package/dist/components/PaginatedTable/useScrollBasedChunks.js.map +1 -0
- package/dist/components/TabletsStatistic/TabletsStatistic.d.ts +2 -2
- package/dist/components/TabletsStatistic/TabletsStatistic.js +2 -2
- package/dist/components/TabletsStatistic/TabletsStatistic.js.map +1 -1
- package/dist/components/VDisk/VDisk.js +12 -26
- package/dist/components/VDisk/VDisk.js.map +1 -1
- package/dist/components/VDisk/VDisk.scss +2 -0
- package/dist/components/VDisk/VDiskWithDonorsStack.js +2 -2
- package/dist/components/VDisk/VDiskWithDonorsStack.js.map +1 -1
- package/dist/components/VDisk/utils.d.ts +2 -0
- package/dist/components/VDisk/utils.js +23 -0
- package/dist/components/VDisk/utils.js.map +1 -0
- package/dist/components/VDiskInfo/VDiskInfo.js +2 -2
- package/dist/components/VDiskInfo/VDiskInfo.js.map +1 -1
- package/dist/components/VDiskPopup/VDiskPopup.d.ts +2 -3
- package/dist/components/VDiskPopup/VDiskPopup.js +29 -3
- package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
- package/dist/components/nodesColumns/columns.d.ts +55 -0
- package/dist/components/nodesColumns/columns.js +187 -0
- package/dist/components/nodesColumns/columns.js.map +1 -0
- package/dist/components/nodesColumns/constants.d.ts +39 -0
- package/dist/components/nodesColumns/constants.js +73 -0
- package/dist/components/nodesColumns/constants.js.map +1 -0
- package/dist/{containers/Nodes/columns → components/nodesColumns}/i18n/en.json +4 -3
- package/dist/components/nodesColumns/i18n/index.d.ts +2 -0
- package/dist/{containers/Nodes/columns → components/nodesColumns}/i18n/index.js +1 -1
- package/dist/components/nodesColumns/i18n/index.js.map +1 -0
- package/dist/components/nodesColumns/types.d.ts +8 -0
- package/dist/components/nodesColumns/types.js.map +1 -0
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js +8 -4
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js.map +1 -1
- package/dist/containers/Authentication/Authentication.js +12 -10
- package/dist/containers/Authentication/Authentication.js.map +1 -1
- package/dist/containers/Cluster/Cluster.js +3 -1
- package/dist/containers/Cluster/Cluster.js.map +1 -1
- package/dist/containers/Cluster/utils.d.ts +4 -0
- package/dist/containers/Cluster/utils.js +6 -1
- package/dist/containers/Cluster/utils.js.map +1 -1
- package/dist/containers/Node/Node.js +1 -1
- package/dist/containers/Node/Node.js.map +1 -1
- package/dist/containers/Nodes/Nodes.js +1 -1
- package/dist/containers/Nodes/Nodes.js.map +1 -1
- package/dist/containers/Nodes/NodesWrapper.d.ts +2 -2
- package/dist/containers/Nodes/NodesWrapper.js +2 -2
- package/dist/containers/Nodes/NodesWrapper.js.map +1 -1
- package/dist/containers/Nodes/PaginatedNodes.d.ts +3 -2
- package/dist/containers/Nodes/PaginatedNodes.js +3 -3
- package/dist/containers/Nodes/PaginatedNodes.js.map +1 -1
- package/dist/containers/Nodes/columns/columns.d.ts +2 -7
- package/dist/containers/Nodes/columns/columns.js +13 -187
- package/dist/containers/Nodes/columns/columns.js.map +1 -1
- package/dist/containers/Nodes/columns/constants.d.ts +1 -38
- package/dist/containers/Nodes/columns/constants.js +0 -68
- package/dist/containers/Nodes/columns/constants.js.map +1 -1
- package/dist/containers/Nodes/columns/hooks.d.ts +3 -3
- package/dist/containers/Nodes/columns/hooks.js +2 -1
- package/dist/containers/Nodes/columns/hooks.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +2 -2
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/Storage/Disks/Disks.d.ts +2 -2
- package/dist/containers/Storage/Disks/Disks.js +5 -6
- package/dist/containers/Storage/Disks/Disks.js.map +1 -1
- package/dist/containers/Storage/PDisk/PDisk.d.ts +2 -2
- package/dist/containers/Storage/PDisk/PDisk.js +13 -11
- package/dist/containers/Storage/PDisk/PDisk.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorage.d.ts +4 -1
- package/dist/containers/Storage/PaginatedStorage.js +3 -2
- package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroups.js +7 -6
- package/dist/containers/Storage/PaginatedStorageGroups.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageNodes.js +9 -8
- package/dist/containers/Storage/PaginatedStorageNodes.js.map +1 -1
- package/dist/containers/Storage/Storage.d.ts +3 -1
- package/dist/containers/Storage/Storage.js +3 -3
- package/dist/containers/Storage/Storage.js.map +1 -1
- package/dist/containers/Storage/StorageControls/StorageControls.js +2 -2
- package/dist/containers/Storage/StorageGroups/PaginatedStorageGroupsTable.d.ts +3 -2
- package/dist/containers/Storage/StorageGroups/PaginatedStorageGroupsTable.js +2 -2
- package/dist/containers/Storage/StorageGroups/PaginatedStorageGroupsTable.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/StorageGroupsColumns.scss +10 -1
- package/dist/containers/Storage/StorageGroups/columns/columns.js +21 -16
- package/dist/containers/Storage/StorageGroups/columns/columns.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/constants.js +1 -1
- package/dist/containers/Storage/StorageGroups/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/hooks.d.ts +3 -2
- package/dist/containers/Storage/StorageGroups/columns/hooks.js +5 -5
- package/dist/containers/Storage/StorageGroups/columns/hooks.js.map +1 -1
- package/dist/containers/Storage/StorageGroups/columns/i18n/en.json +1 -1
- package/dist/containers/Storage/StorageGroups/columns/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/StorageGroups/columns/types.d.ts +3 -2
- package/dist/containers/Storage/StorageNodes/PaginatedStorageNodesTable.d.ts +3 -2
- package/dist/containers/Storage/StorageNodes/PaginatedStorageNodesTable.js +2 -2
- package/dist/containers/Storage/StorageNodes/PaginatedStorageNodesTable.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/columns.d.ts +2 -38
- package/dist/containers/Storage/StorageNodes/columns/columns.js +34 -71
- package/dist/containers/Storage/StorageNodes/columns/columns.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/constants.d.ts +20 -4
- package/dist/containers/Storage/StorageNodes/columns/constants.js +4 -32
- package/dist/containers/Storage/StorageNodes/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/hooks.d.ts +2 -39
- package/dist/containers/Storage/StorageNodes/columns/hooks.js +4 -4
- package/dist/containers/Storage/StorageNodes/columns/hooks.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/i18n/en.json +0 -8
- package/dist/containers/Storage/StorageNodes/columns/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/StorageNodes/columns/types.d.ts +5 -5
- package/dist/containers/Storage/StorageWrapper.d.ts +6 -3
- package/dist/containers/Storage/StorageWrapper.js +10 -3
- package/dist/containers/Storage/StorageWrapper.js.map +1 -1
- package/dist/containers/Storage/types.d.ts +6 -0
- package/dist/containers/Storage/types.js +2 -0
- package/dist/containers/Storage/types.js.map +1 -0
- package/dist/containers/Storage/utils/index.d.ts +4 -6
- package/dist/containers/Storage/utils/index.js +35 -9
- package/dist/containers/Storage/utils/index.js.map +1 -1
- package/dist/containers/StorageGroupPage/StorageGroupPage.js +2 -2
- package/dist/containers/StorageGroupPage/StorageGroupPage.js.map +1 -1
- package/dist/containers/Tablet/components/TabletStorageInfo/TabletStorageInfo.scss +2 -9
- package/dist/containers/Tablets/Tablets.js +2 -123
- package/dist/containers/Tablets/Tablets.js.map +1 -1
- package/dist/containers/Tablets/TabletsTable.d.ts +10 -0
- package/dist/containers/Tablets/TabletsTable.js +129 -0
- package/dist/containers/Tablets/TabletsTable.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js +4 -4
- package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.d.ts +4 -0
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js +18 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByCpu.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js +22 -3
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopNodesByLoad.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopQueries.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantCpu/TopShards.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js +23 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantMemory/TopNodesByMemory.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js +2 -6
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopGroups.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/TopTables.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/en.json +2 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js +4 -2
- package/dist/containers/Tenant/Diagnostics/TopQueries/RunningQueriesData.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js +2 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueriesData.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js +2 -1
- package/dist/containers/Tenant/Diagnostics/TopShards/TopShards.js.map +1 -1
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js +5 -7
- package/dist/containers/Tenant/Query/ExecuteResult/ExecuteResult.js.map +1 -1
- package/dist/containers/Tenant/Query/ExplainResult/components/SimplifiedPlan/SimplifiedPlan.scss +1 -1
- package/dist/containers/Tenant/Query/Preview/Preview.js +3 -2
- package/dist/containers/Tenant/Query/Preview/Preview.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js +1 -4
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.d.ts +4 -4
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.js +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/constants.js.map +1 -1
- package/dist/containers/Tenants/Tenants.js +10 -2
- package/dist/containers/Tenants/Tenants.js.map +1 -1
- package/dist/containers/UserSettings/i18n/en.json +0 -2
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +0 -1
- package/dist/containers/UserSettings/settings.js +2 -7
- package/dist/containers/UserSettings/settings.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js +3 -4
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/services/api.d.ts +3 -4
- package/dist/services/api.js +1 -3
- package/dist/services/api.js.map +1 -1
- package/dist/services/settings.d.ts +1 -2
- package/dist/services/settings.js +1 -2
- package/dist/services/settings.js.map +1 -1
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js +62 -40
- package/dist/store/reducers/cluster/__test__/parseGroupsStatsQueryResponse.test.js.map +1 -1
- package/dist/store/reducers/cluster/cluster.js +0 -1
- package/dist/store/reducers/cluster/cluster.js.map +1 -1
- package/dist/store/reducers/cluster/utils.d.ts +1 -1
- package/dist/store/reducers/cluster/utils.js +2 -1
- package/dist/store/reducers/cluster/utils.js.map +1 -1
- package/dist/store/reducers/executeQuery.d.ts +0 -2
- package/dist/store/reducers/executeQuery.js +1 -2
- package/dist/store/reducers/executeQuery.js.map +1 -1
- package/dist/store/reducers/executeTopQueries/executeTopQueries.d.ts +1 -1
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js +4 -4
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js.map +1 -1
- package/dist/store/reducers/nodes/types.d.ts +2 -7
- package/dist/store/reducers/nodes/utils.js +0 -6
- package/dist/store/reducers/nodes/utils.js.map +1 -1
- package/dist/store/reducers/preview.js +1 -1
- package/dist/store/reducers/preview.js.map +1 -1
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js +0 -1
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js.map +1 -1
- package/dist/store/reducers/storage/types.d.ts +6 -7
- package/dist/store/reducers/storage/utils.js +23 -9
- package/dist/store/reducers/storage/utils.js.map +1 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js +0 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js.map +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js +0 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js.map +1 -1
- package/dist/store/reducers/tenants/types.d.ts +1 -0
- package/dist/store/reducers/tenants/utils.js +4 -2
- package/dist/store/reducers/tenants/utils.js.map +1 -1
- package/dist/store/reducers/viewSchema/viewSchema.js +2 -2
- package/dist/store/reducers/viewSchema/viewSchema.js.map +1 -1
- package/dist/types/additionalProps.d.ts +1 -1
- package/dist/types/api/cluster.d.ts +2 -0
- package/dist/types/api/cluster.js +3 -1
- package/dist/types/api/cluster.js.map +1 -1
- package/dist/types/api/nodes.d.ts +3 -0
- package/dist/types/api/nodes.js.map +1 -1
- package/dist/types/api/query.d.ts +16 -30
- package/dist/types/api/storage.d.ts +2 -2
- package/dist/types/store/query.d.ts +0 -1
- package/dist/utils/constants.d.ts +0 -1
- package/dist/utils/constants.js +0 -2
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +1 -2
- package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js.map +1 -1
- package/dist/utils/disks/calculateVDiskSeverity.js +2 -3
- package/dist/utils/disks/calculateVDiskSeverity.js.map +1 -1
- package/dist/utils/disks/prepareDisks.js +3 -0
- package/dist/utils/disks/prepareDisks.js.map +1 -1
- package/dist/utils/disks/types.d.ts +1 -0
- package/dist/utils/nodes.d.ts +4 -2
- package/dist/utils/nodes.js +10 -1
- package/dist/utils/nodes.js.map +1 -1
- package/dist/utils/query.d.ts +5 -5
- package/dist/utils/query.js +7 -22
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/query.test.js +221 -56
- package/dist/utils/query.test.js.map +1 -1
- package/dist/utils/storage.d.ts +1 -0
- package/dist/utils/storage.js +3 -0
- package/dist/utils/storage.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/PaginatedTable/useIntersectionObserver.d.ts +0 -9
- package/dist/components/PaginatedTable/useIntersectionObserver.js +0 -28
- package/dist/components/PaginatedTable/useIntersectionObserver.js.map +0 -1
- package/dist/containers/Nodes/columns/i18n/index.d.ts +0 -2
- package/dist/containers/Nodes/columns/i18n/index.js.map +0 -1
- package/dist/containers/Nodes/columns/types.d.ts +0 -9
- package/dist/containers/Nodes/columns/types.js.map +0 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/utils.d.ts +0 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/utils.js +0 -7
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantStorage/utils.js.map +0 -1
- /package/dist/{containers/Nodes/columns → components/nodesColumns}/types.js +0 -0
@@ -11,7 +11,9 @@ import { isFullVDiskData } from '../../utils/disks/helpers';
|
|
11
11
|
import { useTypedSelector } from '../../utils/hooks';
|
12
12
|
import { bytesToGB, bytesToSpeed } from '../../utils/utils';
|
13
13
|
import { InfoViewer } from '../InfoViewer';
|
14
|
+
import { InternalLink } from '../InternalLink';
|
14
15
|
import { preparePDiskData } from '../PDiskPopup/PDiskPopup';
|
16
|
+
import { getVDiskLink } from '../VDisk/utils';
|
15
17
|
import './VDiskPopup.scss';
|
16
18
|
const b = cn('vdisk-storage-popup');
|
17
19
|
const prepareUnavailableVDiskData = (data) => {
|
@@ -25,9 +27,9 @@ const prepareUnavailableVDiskData = (data) => {
|
|
25
27
|
};
|
26
28
|
const prepareVDiskData = (data) => {
|
27
29
|
var _a, _b, _c, _d, _e, _f;
|
28
|
-
const {
|
30
|
+
const { StringifiedId, VDiskState, SatisfactionRank, DiskSpace, FrontQueues, Replicated, UnsyncedVDisks, AllocatedSize, ReadThroughput, WriteThroughput, StoragePoolName, } = data;
|
29
31
|
const vdiskData = [
|
30
|
-
{ label: 'VDisk', value:
|
32
|
+
{ label: 'VDisk', value: StringifiedId },
|
31
33
|
{ label: 'State', value: VDiskState !== null && VDiskState !== void 0 ? VDiskState : 'not available' },
|
32
34
|
];
|
33
35
|
if (StoragePoolName) {
|
@@ -88,13 +90,37 @@ const prepareVDiskData = (data) => {
|
|
88
90
|
};
|
89
91
|
export const VDiskPopup = ({ data, ...props }) => {
|
90
92
|
const isFullData = isFullVDiskData(data);
|
93
|
+
const [isPopupContentHovered, setIsPopupContentHovered] = React.useState(false);
|
94
|
+
const onMouseLeave = React.useCallback(() => {
|
95
|
+
setIsPopupContentHovered(false);
|
96
|
+
}, []);
|
97
|
+
const onMouseEnter = React.useCallback(() => {
|
98
|
+
setIsPopupContentHovered(true);
|
99
|
+
}, []);
|
91
100
|
const vdiskInfo = React.useMemo(() => (isFullData ? prepareVDiskData(data) : prepareUnavailableVDiskData(data)), [data, isFullData]);
|
92
101
|
const nodeHostsMap = useTypedSelector(selectNodeHostsMap);
|
93
102
|
const nodeHost = valueIsDefined(data.NodeId) ? nodeHostsMap === null || nodeHostsMap === void 0 ? void 0 : nodeHostsMap.get(data.NodeId) : undefined;
|
94
103
|
const pdiskInfo = React.useMemo(() => isFullData && data.PDisk && preparePDiskData(data.PDisk, nodeHost), [data, nodeHost, isFullData]);
|
104
|
+
const donorsInfo = [];
|
105
|
+
if ('Donors' in data && data.Donors) {
|
106
|
+
const donors = data.Donors;
|
107
|
+
for (const donor of donors) {
|
108
|
+
const isFullDonorData = isFullVDiskData(donor);
|
109
|
+
donorsInfo.push({
|
110
|
+
label: 'VDisk',
|
111
|
+
value: (_jsx(InternalLink, { to: getVDiskLink(donor), children: stringifyVdiskId(isFullDonorData
|
112
|
+
? donor.VDiskId
|
113
|
+
: {
|
114
|
+
NodeId: donor.NodeId,
|
115
|
+
PDiskId: donor.PDiskId,
|
116
|
+
VSlotId: donor.VSlotId,
|
117
|
+
}) })),
|
118
|
+
});
|
119
|
+
}
|
120
|
+
}
|
95
121
|
return (_jsxs(Popup, { contentClassName: b(), placement: ['top', 'bottom'], hasArrow: true,
|
96
122
|
// bigger offset for easier switching to neighbour nodes
|
97
123
|
// matches the default offset for popup with arrow out of a sense of beauty
|
98
|
-
offset: [0, 12], ...props, children: [data.DonorMode && _jsx(Label, { className: b('donor-label'), children: "Donor" }), _jsx(InfoViewer, { title: "VDisk", info: vdiskInfo, size: "s" }), pdiskInfo && _jsx(InfoViewer, { title: "PDisk", info: pdiskInfo, size: "s" })] }));
|
124
|
+
offset: [0, 12], onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ...props, open: isPopupContentHovered || props.open, children: [data.DonorMode && _jsx(Label, { className: b('donor-label'), children: "Donor" }), _jsx(InfoViewer, { title: "VDisk", info: vdiskInfo, size: "s" }), pdiskInfo && _jsx(InfoViewer, { title: "PDisk", info: pdiskInfo, size: "s" }), donorsInfo.length > 0 && _jsx(InfoViewer, { title: "Donors", info: donorsInfo, size: "s" })] }));
|
99
125
|
};
|
100
126
|
//# sourceMappingURL=VDiskPopup.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VDiskPopup.js","sourceRoot":"","sources":["../../../src/components/VDiskPopup/VDiskPopup.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAC,KAAK,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,KAAK,EAAC,MAAM,uBAAuB,CAAC;
|
1
|
+
{"version":3,"file":"VDiskPopup.js","sourceRoot":"","sources":["../../../src/components/VDiskPopup/VDiskPopup.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import type { TPoolStats } from '../../types/api/nodes';
|
2
|
+
import type { TTabletStateInfo } from '../../types/api/tablet';
|
3
|
+
import type { NodeHostData } from '../NodeHostWrapper/NodeHostWrapper';
|
4
|
+
import type { Column, GetNodesColumnsParams } from './types';
|
5
|
+
export declare function getNodeIdColumn<T extends {
|
6
|
+
NodeId?: string | number;
|
7
|
+
}>(): Column<T>;
|
8
|
+
export declare function getHostColumn<T extends NodeHostData>({ getNodeRef, database, }: GetNodesColumnsParams): Column<T>;
|
9
|
+
export declare function getNodeNameColumn<T extends {
|
10
|
+
NodeName?: string;
|
11
|
+
}>(): Column<T>;
|
12
|
+
export declare function getDataCenterColumn<T extends {
|
13
|
+
DC?: string;
|
14
|
+
}>(): Column<T>;
|
15
|
+
export declare function getRackColumn<T extends {
|
16
|
+
Rack?: string;
|
17
|
+
}>(): Column<T>;
|
18
|
+
export declare function getVersionColumn<T extends {
|
19
|
+
Version?: string;
|
20
|
+
}>(): Column<T>;
|
21
|
+
export declare function getUptimeColumn<T extends {
|
22
|
+
StartTime?: string;
|
23
|
+
Uptime?: string;
|
24
|
+
}>(): Column<T>;
|
25
|
+
export declare function getMemoryColumn<T extends {
|
26
|
+
MemoryUsed?: string;
|
27
|
+
MemoryLimit?: string;
|
28
|
+
}>(): Column<T>;
|
29
|
+
export declare function getSharedCacheUsageColumn<T extends {
|
30
|
+
SharedCacheUsed?: string | number;
|
31
|
+
SharedCacheLimit?: string | number;
|
32
|
+
}>(): Column<T>;
|
33
|
+
export declare function getCpuColumn<T extends {
|
34
|
+
PoolStats?: TPoolStats[];
|
35
|
+
}>(): Column<T>;
|
36
|
+
export declare function getLoadAverageColumn<T extends {
|
37
|
+
LoadAveragePercents?: number[];
|
38
|
+
}>(): Column<T>;
|
39
|
+
export declare function getLoadColumn<T extends {
|
40
|
+
LoadAveragePercents?: number[];
|
41
|
+
}>(): Column<T>;
|
42
|
+
export declare function getDiskSpaceUsageColumn<T extends {
|
43
|
+
DiskSpaceUsage?: number;
|
44
|
+
}>(): Column<T>;
|
45
|
+
export declare function getSessionsColumn<T extends {
|
46
|
+
TotalSessions?: number;
|
47
|
+
}>(): Column<T>;
|
48
|
+
export declare function getTabletsColumn<T extends {
|
49
|
+
TenantName?: string;
|
50
|
+
NodeId: string | number;
|
51
|
+
Tablets?: TTabletStateInfo[];
|
52
|
+
}>({ database }: GetNodesColumnsParams): Column<T>;
|
53
|
+
export declare function getMissingDisksColumn<T extends {
|
54
|
+
Missing?: number;
|
55
|
+
}>(): Column<T>;
|
@@ -0,0 +1,187 @@
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
2
|
+
import DataTable from '@gravity-ui/react-data-table';
|
3
|
+
import { getLoadSeverityForNode } from '../../store/reducers/nodes/utils';
|
4
|
+
import { valueIsDefined } from '../../utils';
|
5
|
+
import { EMPTY_DATA_PLACEHOLDER } from '../../utils/constants';
|
6
|
+
import { formatStorageValuesToGb } from '../../utils/dataFormatters/dataFormatters';
|
7
|
+
import { getSpaceUsageSeverity } from '../../utils/storage';
|
8
|
+
import { CellWithPopover } from '../CellWithPopover/CellWithPopover';
|
9
|
+
import { NodeHostWrapper } from '../NodeHostWrapper/NodeHostWrapper';
|
10
|
+
import { PoolsGraph } from '../PoolsGraph/PoolsGraph';
|
11
|
+
import { ProgressViewer } from '../ProgressViewer/ProgressViewer';
|
12
|
+
import { TabletsStatistic } from '../TabletsStatistic';
|
13
|
+
import { UsageLabel } from '../UsageLabel/UsageLabel';
|
14
|
+
import { NODES_COLUMNS_IDS, NODES_COLUMNS_TITLES } from './constants';
|
15
|
+
export function getNodeIdColumn() {
|
16
|
+
return {
|
17
|
+
name: NODES_COLUMNS_IDS.NodeId,
|
18
|
+
header: '#',
|
19
|
+
width: 80,
|
20
|
+
render: ({ row }) => row.NodeId,
|
21
|
+
align: DataTable.RIGHT,
|
22
|
+
};
|
23
|
+
}
|
24
|
+
export function getHostColumn({ getNodeRef, database, }) {
|
25
|
+
return {
|
26
|
+
name: NODES_COLUMNS_IDS.Host,
|
27
|
+
header: NODES_COLUMNS_TITLES.Host,
|
28
|
+
render: ({ row }) => {
|
29
|
+
return _jsx(NodeHostWrapper, { node: row, getNodeRef: getNodeRef, database: database });
|
30
|
+
},
|
31
|
+
width: 350,
|
32
|
+
align: DataTable.LEFT,
|
33
|
+
};
|
34
|
+
}
|
35
|
+
export function getNodeNameColumn() {
|
36
|
+
return {
|
37
|
+
name: NODES_COLUMNS_IDS.NodeName,
|
38
|
+
header: NODES_COLUMNS_TITLES.NodeName,
|
39
|
+
align: DataTable.LEFT,
|
40
|
+
render: ({ row }) => row.NodeName || EMPTY_DATA_PLACEHOLDER,
|
41
|
+
width: 200,
|
42
|
+
};
|
43
|
+
}
|
44
|
+
export function getDataCenterColumn() {
|
45
|
+
return {
|
46
|
+
name: NODES_COLUMNS_IDS.DC,
|
47
|
+
header: NODES_COLUMNS_TITLES.DC,
|
48
|
+
align: DataTable.LEFT,
|
49
|
+
render: ({ row }) => row.DC || EMPTY_DATA_PLACEHOLDER,
|
50
|
+
width: 60,
|
51
|
+
};
|
52
|
+
}
|
53
|
+
export function getRackColumn() {
|
54
|
+
return {
|
55
|
+
name: NODES_COLUMNS_IDS.Rack,
|
56
|
+
header: NODES_COLUMNS_TITLES.Rack,
|
57
|
+
align: DataTable.LEFT,
|
58
|
+
render: ({ row }) => row.Rack || EMPTY_DATA_PLACEHOLDER,
|
59
|
+
width: 100,
|
60
|
+
};
|
61
|
+
}
|
62
|
+
export function getVersionColumn() {
|
63
|
+
return {
|
64
|
+
name: NODES_COLUMNS_IDS.Version,
|
65
|
+
header: NODES_COLUMNS_TITLES.Version,
|
66
|
+
width: 200,
|
67
|
+
align: DataTable.LEFT,
|
68
|
+
render: ({ row }) => {
|
69
|
+
return _jsx(CellWithPopover, { content: row.Version, children: row.Version });
|
70
|
+
},
|
71
|
+
};
|
72
|
+
}
|
73
|
+
export function getUptimeColumn() {
|
74
|
+
return {
|
75
|
+
name: NODES_COLUMNS_IDS.Uptime,
|
76
|
+
header: NODES_COLUMNS_TITLES.Uptime,
|
77
|
+
sortAccessor: ({ StartTime }) => (StartTime ? -StartTime : 0),
|
78
|
+
render: ({ row }) => row.Uptime,
|
79
|
+
align: DataTable.RIGHT,
|
80
|
+
width: 110,
|
81
|
+
};
|
82
|
+
}
|
83
|
+
export function getMemoryColumn() {
|
84
|
+
return {
|
85
|
+
name: NODES_COLUMNS_IDS.Memory,
|
86
|
+
header: NODES_COLUMNS_TITLES.Memory,
|
87
|
+
sortAccessor: ({ MemoryUsed = 0 }) => Number(MemoryUsed),
|
88
|
+
defaultOrder: DataTable.DESCENDING,
|
89
|
+
render: ({ row }) => (_jsx(ProgressViewer, { value: row.MemoryUsed, capacity: row.MemoryLimit, formatValues: formatStorageValuesToGb, colorizeProgress: true })),
|
90
|
+
align: DataTable.LEFT,
|
91
|
+
width: 140,
|
92
|
+
resizeMinWidth: 140,
|
93
|
+
};
|
94
|
+
}
|
95
|
+
export function getSharedCacheUsageColumn() {
|
96
|
+
return {
|
97
|
+
name: NODES_COLUMNS_IDS.SharedCacheUsage,
|
98
|
+
header: NODES_COLUMNS_TITLES.SharedCacheUsage,
|
99
|
+
render: ({ row }) => (_jsx(ProgressViewer, { value: row.SharedCacheUsed, capacity: row.SharedCacheLimit, formatValues: formatStorageValuesToGb, colorizeProgress: true })),
|
100
|
+
align: DataTable.LEFT,
|
101
|
+
width: 140,
|
102
|
+
resizeMinWidth: 140,
|
103
|
+
};
|
104
|
+
}
|
105
|
+
export function getCpuColumn() {
|
106
|
+
return {
|
107
|
+
name: NODES_COLUMNS_IDS.CPU,
|
108
|
+
header: NODES_COLUMNS_TITLES.CPU,
|
109
|
+
sortAccessor: ({ PoolStats = [] }) => Math.max(...PoolStats.map(({ Usage }) => Number(Usage))),
|
110
|
+
defaultOrder: DataTable.DESCENDING,
|
111
|
+
render: ({ row }) => row.PoolStats ? _jsx(PoolsGraph, { pools: row.PoolStats }) : EMPTY_DATA_PLACEHOLDER,
|
112
|
+
align: DataTable.LEFT,
|
113
|
+
width: 80,
|
114
|
+
resizeMinWidth: 60,
|
115
|
+
};
|
116
|
+
}
|
117
|
+
export function getLoadAverageColumn() {
|
118
|
+
return {
|
119
|
+
name: NODES_COLUMNS_IDS.LoadAverage,
|
120
|
+
header: NODES_COLUMNS_TITLES.LoadAverage,
|
121
|
+
sortAccessor: ({ LoadAveragePercents = [] }) => LoadAveragePercents[0],
|
122
|
+
defaultOrder: DataTable.DESCENDING,
|
123
|
+
render: ({ row }) => (_jsx(ProgressViewer, { value: row.LoadAveragePercents && row.LoadAveragePercents.length > 0
|
124
|
+
? row.LoadAveragePercents[0]
|
125
|
+
: undefined, percents: true, colorizeProgress: true, capacity: 100 })),
|
126
|
+
align: DataTable.LEFT,
|
127
|
+
width: 140,
|
128
|
+
resizeMinWidth: 140,
|
129
|
+
};
|
130
|
+
}
|
131
|
+
// The same as loadAverage, but more compact
|
132
|
+
export function getLoadColumn() {
|
133
|
+
return {
|
134
|
+
name: NODES_COLUMNS_IDS.Load,
|
135
|
+
header: NODES_COLUMNS_TITLES.Load,
|
136
|
+
sortAccessor: ({ LoadAveragePercents = [] }) => LoadAveragePercents[0],
|
137
|
+
defaultOrder: DataTable.DESCENDING,
|
138
|
+
render: ({ row }) => row.LoadAveragePercents && row.LoadAveragePercents.length > 0 ? (_jsx(UsageLabel, { value: row.LoadAveragePercents[0].toFixed(), theme: getLoadSeverityForNode(row.LoadAveragePercents[0]) })) : (EMPTY_DATA_PLACEHOLDER),
|
139
|
+
align: DataTable.LEFT,
|
140
|
+
width: 80,
|
141
|
+
resizeMinWidth: 70,
|
142
|
+
};
|
143
|
+
}
|
144
|
+
export function getDiskSpaceUsageColumn() {
|
145
|
+
return {
|
146
|
+
name: NODES_COLUMNS_IDS.DiskSpaceUsage,
|
147
|
+
header: NODES_COLUMNS_TITLES.DiskSpaceUsage,
|
148
|
+
render: ({ row }) => {
|
149
|
+
return valueIsDefined(row.DiskSpaceUsage) ? (_jsx(UsageLabel, { value: Math.floor(row.DiskSpaceUsage), theme: getSpaceUsageSeverity(row.DiskSpaceUsage) })) : (EMPTY_DATA_PLACEHOLDER);
|
150
|
+
},
|
151
|
+
align: DataTable.LEFT,
|
152
|
+
width: 115,
|
153
|
+
resizeMinWidth: 75,
|
154
|
+
};
|
155
|
+
}
|
156
|
+
export function getSessionsColumn() {
|
157
|
+
return {
|
158
|
+
name: NODES_COLUMNS_IDS.TotalSessions,
|
159
|
+
header: NODES_COLUMNS_TITLES.TotalSessions,
|
160
|
+
render: ({ row }) => { var _a; return (_a = row.TotalSessions) !== null && _a !== void 0 ? _a : EMPTY_DATA_PLACEHOLDER; },
|
161
|
+
align: DataTable.RIGHT,
|
162
|
+
width: 100,
|
163
|
+
};
|
164
|
+
}
|
165
|
+
export function getTabletsColumn({ database }) {
|
166
|
+
return {
|
167
|
+
name: NODES_COLUMNS_IDS.Tablets,
|
168
|
+
header: NODES_COLUMNS_TITLES.Tablets,
|
169
|
+
width: 500,
|
170
|
+
resizeMinWidth: 500,
|
171
|
+
render: ({ row }) => {
|
172
|
+
return row.Tablets ? (_jsx(TabletsStatistic, { tenantName: database !== null && database !== void 0 ? database : row.TenantName, nodeId: row.NodeId, tablets: row.Tablets })) : (EMPTY_DATA_PLACEHOLDER);
|
173
|
+
},
|
174
|
+
align: DataTable.LEFT,
|
175
|
+
sortable: false,
|
176
|
+
};
|
177
|
+
}
|
178
|
+
export function getMissingDisksColumn() {
|
179
|
+
return {
|
180
|
+
name: NODES_COLUMNS_IDS.Missing,
|
181
|
+
header: NODES_COLUMNS_TITLES.Missing,
|
182
|
+
render: ({ row }) => row.Missing,
|
183
|
+
align: DataTable.CENTER,
|
184
|
+
defaultOrder: DataTable.DESCENDING,
|
185
|
+
};
|
186
|
+
}
|
187
|
+
//# sourceMappingURL=columns.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../src/components/nodesColumns/columns.tsx"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAC,sBAAsB,EAAC,MAAM,kCAAkC,CAAC;AAGxE,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAC,uBAAuB,EAAC,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAC,qBAAqB,EAAC,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAC,iBAAiB,EAAE,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAGpE,MAAM,UAAU,eAAe;IAC3B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,MAAM;QAC9B,MAAM,EAAE,GAAG;QACX,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM;QAC7B,KAAK,EAAE,SAAS,CAAC,KAAK;KACzB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,aAAa,CAAyB,EAClD,UAAU,EACV,QAAQ,GACY;IACpB,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,IAAI;QAC5B,MAAM,EAAE,oBAAoB,CAAC,IAAI;QACjC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE;YACd,OAAO,KAAC,eAAe,IAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAAC;QACtF,CAAC;QACD,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,SAAS,CAAC,IAAI;KACxB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,iBAAiB;IAC7B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,QAAQ;QAChC,MAAM,EAAE,oBAAoB,CAAC,QAAQ;QACrC,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,IAAI,sBAAsB;QACzD,KAAK,EAAE,GAAG;KACb,CAAC;AACN,CAAC;AACD,MAAM,UAAU,mBAAmB;IAC/B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,EAAE;QAC1B,MAAM,EAAE,oBAAoB,CAAC,EAAE;QAC/B,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,sBAAsB;QACnD,KAAK,EAAE,EAAE;KACZ,CAAC;AACN,CAAC;AACD,MAAM,UAAU,aAAa;IACzB,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,IAAI;QAC5B,MAAM,EAAE,oBAAoB,CAAC,IAAI;QACjC,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,sBAAsB;QACrD,KAAK,EAAE,GAAG;KACb,CAAC;AACN,CAAC;AACD,MAAM,UAAU,gBAAgB;IAC5B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,OAAO;QAC/B,MAAM,EAAE,oBAAoB,CAAC,OAAO;QACpC,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE;YACd,OAAO,KAAC,eAAe,IAAC,OAAO,EAAE,GAAG,CAAC,OAAO,YAAG,GAAG,CAAC,OAAO,GAAmB,CAAC;QAClF,CAAC;KACJ,CAAC;AACN,CAAC;AACD,MAAM,UAAU,eAAe;IAC3B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,MAAM;QAC9B,MAAM,EAAE,oBAAoB,CAAC,MAAM;QACnC,YAAY,EAAE,CAAC,EAAC,SAAS,EAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM;QAC7B,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,KAAK,EAAE,GAAG;KACb,CAAC;AACN,CAAC;AACD,MAAM,UAAU,eAAe;IAG3B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,MAAM;QAC9B,MAAM,EAAE,oBAAoB,CAAC,MAAM;QACnC,YAAY,EAAE,CAAC,EAAC,UAAU,GAAG,CAAC,EAAC,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;QACtD,YAAY,EAAE,SAAS,CAAC,UAAU;QAClC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,CACf,KAAC,cAAc,IACX,KAAK,EAAE,GAAG,CAAC,UAAU,EACrB,QAAQ,EAAE,GAAG,CAAC,WAAW,EACzB,YAAY,EAAE,uBAAuB,EACrC,gBAAgB,EAAE,IAAI,GACxB,CACL;QACD,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,GAAG;QACV,cAAc,EAAE,GAAG;KACtB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,yBAAyB;IAGrC,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,gBAAgB;QACxC,MAAM,EAAE,oBAAoB,CAAC,gBAAgB;QAC7C,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,CACf,KAAC,cAAc,IACX,KAAK,EAAE,GAAG,CAAC,eAAe,EAC1B,QAAQ,EAAE,GAAG,CAAC,gBAAgB,EAC9B,YAAY,EAAE,uBAAuB,EACrC,gBAAgB,EAAE,IAAI,GACxB,CACL;QACD,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,GAAG;QACV,cAAc,EAAE,GAAG;KACtB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,YAAY;IACxB,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,GAAG;QAC3B,MAAM,EAAE,oBAAoB,CAAC,GAAG;QAChC,YAAY,EAAE,CAAC,EAAC,SAAS,GAAG,EAAE,EAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,YAAY,EAAE,SAAS,CAAC,UAAU;QAClC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CACd,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,KAAK,EAAE,GAAG,CAAC,SAAS,GAAI,CAAC,CAAC,CAAC,sBAAsB;QACjF,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,EAAE;QACT,cAAc,EAAE,EAAE;KACrB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,oBAAoB;IAChC,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,WAAW;QACnC,MAAM,EAAE,oBAAoB,CAAC,WAAW;QACxC,YAAY,EAAE,CAAC,EAAC,mBAAmB,GAAG,EAAE,EAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpE,YAAY,EAAE,SAAS,CAAC,UAAU;QAClC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,CACf,KAAC,cAAc,IACX,KAAK,EACD,GAAG,CAAC,mBAAmB,IAAI,GAAG,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;gBACzD,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAC5B,CAAC,CAAC,SAAS,EAEnB,QAAQ,EAAE,IAAI,EACd,gBAAgB,EAAE,IAAI,EACtB,QAAQ,EAAE,GAAG,GACf,CACL;QACD,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,GAAG;QACV,cAAc,EAAE,GAAG;KACtB,CAAC;AACN,CAAC;AACD,4CAA4C;AAC5C,MAAM,UAAU,aAAa;IACzB,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,IAAI;QAC5B,MAAM,EAAE,oBAAoB,CAAC,IAAI;QACjC,YAAY,EAAE,CAAC,EAAC,mBAAmB,GAAG,EAAE,EAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpE,YAAY,EAAE,SAAS,CAAC,UAAU;QAClC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CACd,GAAG,CAAC,mBAAmB,IAAI,GAAG,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC5D,KAAC,UAAU,IACP,KAAK,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAC3C,KAAK,EAAE,sBAAsB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAC3D,CACL,CAAC,CAAC,CAAC,CACA,sBAAsB,CACzB;QACL,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,EAAE;QACT,cAAc,EAAE,EAAE;KACrB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,uBAAuB;IACnC,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,cAAc;QACtC,MAAM,EAAE,oBAAoB,CAAC,cAAc;QAC3C,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE;YACd,OAAO,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CACxC,KAAC,UAAU,IACP,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EACrC,KAAK,EAAE,qBAAqB,CAAC,GAAG,CAAC,cAAc,CAAC,GAClD,CACL,CAAC,CAAC,CAAC,CACA,sBAAsB,CACzB,CAAC;QACN,CAAC;QACD,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,KAAK,EAAE,GAAG;QACV,cAAc,EAAE,EAAE;KACrB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,iBAAiB;IAC7B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,aAAa;QACrC,MAAM,EAAE,oBAAoB,CAAC,aAAa;QAC1C,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,aAAa,mCAAI,sBAAsB,CAAA,EAAA;QAC9D,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,KAAK,EAAE,GAAG;KACb,CAAC;AACN,CAAC;AACD,MAAM,UAAU,gBAAgB,CAM9B,EAAC,QAAQ,EAAwB;IAC/B,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,OAAO;QAC/B,MAAM,EAAE,oBAAoB,CAAC,OAAO;QACpC,KAAK,EAAE,GAAG;QACV,cAAc,EAAE,GAAG;QACnB,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE;YACd,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CACjB,KAAC,gBAAgB,IACb,UAAU,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,GAAG,CAAC,UAAU,EACtC,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,OAAO,EAAE,GAAG,CAAC,OAAO,GACtB,CACL,CAAC,CAAC,CAAC,CACA,sBAAsB,CACzB,CAAC;QACN,CAAC;QACD,KAAK,EAAE,SAAS,CAAC,IAAI;QACrB,QAAQ,EAAE,KAAK;KAClB,CAAC;AACN,CAAC;AACD,MAAM,UAAU,qBAAqB;IACjC,OAAO;QACH,IAAI,EAAE,iBAAiB,CAAC,OAAO;QAC/B,MAAM,EAAE,oBAAoB,CAAC,OAAO;QACpC,MAAM,EAAE,CAAC,EAAC,GAAG,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO;QAC9B,KAAK,EAAE,SAAS,CAAC,MAAM;QACvB,YAAY,EAAE,SAAS,CAAC,UAAU;KACrC,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import type { ValueOf } from '../../types/common';
|
2
|
+
export declare const NODES_COLUMNS_WIDTH_LS_KEY = "nodesTableColumnsWidth";
|
3
|
+
export declare const NODES_COLUMNS_IDS: {
|
4
|
+
readonly NodeId: "NodeId";
|
5
|
+
readonly Host: "Host";
|
6
|
+
readonly NodeName: "NodeName";
|
7
|
+
readonly DC: "DC";
|
8
|
+
readonly Rack: "Rack";
|
9
|
+
readonly Version: "Version";
|
10
|
+
readonly Uptime: "Uptime";
|
11
|
+
readonly Memory: "Memory";
|
12
|
+
readonly CPU: "CPU";
|
13
|
+
readonly LoadAverage: "LoadAverage";
|
14
|
+
readonly Load: "Load";
|
15
|
+
readonly DiskSpaceUsage: "DiskSpaceUsage";
|
16
|
+
readonly SharedCacheUsage: "SharedCacheUsage";
|
17
|
+
readonly TotalSessions: "TotalSessions";
|
18
|
+
readonly Missing: "Missing";
|
19
|
+
readonly Tablets: "Tablets";
|
20
|
+
};
|
21
|
+
export type NodesColumnId = ValueOf<typeof NODES_COLUMNS_IDS>;
|
22
|
+
export declare const NODES_COLUMNS_TITLES: {
|
23
|
+
readonly NodeId: string;
|
24
|
+
readonly Host: string;
|
25
|
+
readonly NodeName: string;
|
26
|
+
readonly DC: string;
|
27
|
+
readonly Rack: string;
|
28
|
+
readonly Version: string;
|
29
|
+
readonly Uptime: string;
|
30
|
+
readonly Memory: string;
|
31
|
+
readonly CPU: string;
|
32
|
+
readonly LoadAverage: string;
|
33
|
+
readonly Load: string;
|
34
|
+
readonly DiskSpaceUsage: string;
|
35
|
+
readonly SharedCacheUsage: string;
|
36
|
+
readonly TotalSessions: string;
|
37
|
+
readonly Missing: string;
|
38
|
+
readonly Tablets: string;
|
39
|
+
};
|
@@ -0,0 +1,73 @@
|
|
1
|
+
import i18n from './i18n';
|
2
|
+
export const NODES_COLUMNS_WIDTH_LS_KEY = 'nodesTableColumnsWidth';
|
3
|
+
export const NODES_COLUMNS_IDS = {
|
4
|
+
NodeId: 'NodeId',
|
5
|
+
Host: 'Host',
|
6
|
+
NodeName: 'NodeName',
|
7
|
+
DC: 'DC',
|
8
|
+
Rack: 'Rack',
|
9
|
+
Version: 'Version',
|
10
|
+
Uptime: 'Uptime',
|
11
|
+
Memory: 'Memory',
|
12
|
+
CPU: 'CPU',
|
13
|
+
LoadAverage: 'LoadAverage',
|
14
|
+
Load: 'Load',
|
15
|
+
DiskSpaceUsage: 'DiskSpaceUsage',
|
16
|
+
SharedCacheUsage: 'SharedCacheUsage',
|
17
|
+
TotalSessions: 'TotalSessions',
|
18
|
+
Missing: 'Missing',
|
19
|
+
Tablets: 'Tablets',
|
20
|
+
};
|
21
|
+
// This code is running when module is initialized and correct language may not be set yet
|
22
|
+
// get functions guarantee that i18n fields will be inited on render with current render language
|
23
|
+
export const NODES_COLUMNS_TITLES = {
|
24
|
+
get NodeId() {
|
25
|
+
return i18n('node-id');
|
26
|
+
},
|
27
|
+
get Host() {
|
28
|
+
return i18n('host');
|
29
|
+
},
|
30
|
+
get NodeName() {
|
31
|
+
return i18n('node-name');
|
32
|
+
},
|
33
|
+
get DC() {
|
34
|
+
return i18n('dc');
|
35
|
+
},
|
36
|
+
get Rack() {
|
37
|
+
return i18n('rack');
|
38
|
+
},
|
39
|
+
get Version() {
|
40
|
+
return i18n('version');
|
41
|
+
},
|
42
|
+
get Uptime() {
|
43
|
+
return i18n('uptime');
|
44
|
+
},
|
45
|
+
get Memory() {
|
46
|
+
return i18n('memory');
|
47
|
+
},
|
48
|
+
get CPU() {
|
49
|
+
return i18n('cpu');
|
50
|
+
},
|
51
|
+
get LoadAverage() {
|
52
|
+
return i18n('load-average');
|
53
|
+
},
|
54
|
+
get Load() {
|
55
|
+
return i18n('load');
|
56
|
+
},
|
57
|
+
get DiskSpaceUsage() {
|
58
|
+
return i18n('disk-usage');
|
59
|
+
},
|
60
|
+
get SharedCacheUsage() {
|
61
|
+
return i18n('caches');
|
62
|
+
},
|
63
|
+
get TotalSessions() {
|
64
|
+
return i18n('sessions');
|
65
|
+
},
|
66
|
+
get Missing() {
|
67
|
+
return i18n('missing');
|
68
|
+
},
|
69
|
+
get Tablets() {
|
70
|
+
return i18n('tablets');
|
71
|
+
},
|
72
|
+
};
|
73
|
+
//# sourceMappingURL=constants.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/nodesColumns/constants.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AAEnE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,WAAW,EAAE,aAAa;IAC1B,IAAI,EAAE,MAAM;IACZ,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;IAC9B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CACZ,CAAC;AAIX,0FAA0F;AAC1F,iGAAiG;AACjG,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;CAC6C,CAAC"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
{
|
2
|
-
"node-id": "Node
|
2
|
+
"node-id": "Node ID",
|
3
3
|
"host": "Host",
|
4
4
|
"node-name": "Node Name",
|
5
5
|
"dc": "DC",
|
@@ -8,10 +8,11 @@
|
|
8
8
|
"uptime": "Uptime",
|
9
9
|
"memory": "Memory",
|
10
10
|
"cpu": "CPU",
|
11
|
+
"disk-usage": "Disk usage",
|
11
12
|
"tablets": "Tablets",
|
12
13
|
"load-average": "Load Average",
|
13
14
|
"load": "Load",
|
14
|
-
"process": "Process",
|
15
15
|
"caches": "Caches",
|
16
|
-
"sessions": "Sessions"
|
16
|
+
"sessions": "Sessions",
|
17
|
+
"missing": "Missing"
|
17
18
|
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
declare const _default: (key: "missing" | "version" | "host" | "tablets" | "cpu" | "memory" | "uptime" | "load" | "node-id" | "node-name" | "dc" | "rack" | "disk-usage" | "load-average" | "caches" | "sessions", params?: import("@gravity-ui/i18n").Params) => string;
|
2
|
+
export default _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/nodesColumns/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,MAAM,WAAW,CAAC;AAE3B,MAAM,SAAS,GAAG,mBAAmB,CAAC;AAEtC,eAAe,eAAe,CAAC,SAAS,EAAE,EAAC,EAAE,EAAC,CAAC,CAAC"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { Column as DataTableColumn } from '@gravity-ui/react-data-table';
|
2
|
+
import type { GetNodeRefFunc } from '../../types/additionalProps';
|
3
|
+
import type { Column as PaginatedTableColumn } from '../PaginatedTable';
|
4
|
+
export type Column<T> = PaginatedTableColumn<T> & DataTableColumn<T>;
|
5
|
+
export interface GetNodesColumnsParams {
|
6
|
+
getNodeRef?: GetNodeRefFunc;
|
7
|
+
database?: string;
|
8
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/nodesColumns/types.ts"],"names":[],"mappings":""}
|
@@ -4,7 +4,7 @@ import { MonitoringButton } from '../../../components/MonitoringButton/Monitorin
|
|
4
4
|
import { getVersionColors, getVersionMap } from '../../../utils/clusterVersionColors';
|
5
5
|
import { cn } from '../../../utils/cn';
|
6
6
|
import { getCleanBalancerValue, removeViewerPathname } from '../../../utils/parseBalancer';
|
7
|
-
import { getBackendFromNodeHost } from '../../../utils/prepareBackend';
|
7
|
+
import { getBackendFromNodeHost, getBackendFromRawNodeData } from '../../../utils/prepareBackend';
|
8
8
|
import { useClusterData } from '../useClusterData';
|
9
9
|
import './ExtendedCluster.scss';
|
10
10
|
const b = cn('extended-cluster');
|
@@ -37,7 +37,8 @@ const getAdditionalVersionsProps = (versions = []) => {
|
|
37
37
|
};
|
38
38
|
const getAdditionalTenantsProps = (clusterName, monitoring, balancer, useClusterBalancerAsBackend, getMonitoringLink) => {
|
39
39
|
const additionalTenantsProps = {};
|
40
|
-
additionalTenantsProps.prepareTenantBackend = (
|
40
|
+
additionalTenantsProps.prepareTenantBackend = (nodeHostOrAddress) => {
|
41
|
+
var _a;
|
41
42
|
// Proxy received from balancer value, so it's necessary
|
42
43
|
if (!balancer) {
|
43
44
|
return undefined;
|
@@ -45,10 +46,13 @@ const getAdditionalTenantsProps = (clusterName, monitoring, balancer, useCluster
|
|
45
46
|
if (useClusterBalancerAsBackend) {
|
46
47
|
return removeViewerPathname(balancer);
|
47
48
|
}
|
48
|
-
if (!
|
49
|
+
if (!nodeHostOrAddress) {
|
49
50
|
return undefined;
|
50
51
|
}
|
51
|
-
|
52
|
+
if (typeof nodeHostOrAddress === 'string') {
|
53
|
+
return getBackendFromNodeHost(nodeHostOrAddress, balancer);
|
54
|
+
}
|
55
|
+
return (_a = getBackendFromRawNodeData(nodeHostOrAddress, balancer, true)) !== null && _a !== void 0 ? _a : undefined;
|
52
56
|
};
|
53
57
|
if (monitoring && getMonitoringLink) {
|
54
58
|
additionalTenantsProps.getMonitoringLink = (dbName, dbType) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExtendedCluster.js","sourceRoot":"","sources":["../../../../src/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uDAAuD,CAAC;
|
1
|
+
{"version":3,"file":"ExtendedCluster.js","sourceRoot":"","sources":["../../../../src/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uDAAuD,CAAC;AASvF,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAC,EAAE,EAAC,MAAM,mBAAmB,CAAC;AAErC,OAAO,EAAC,qBAAqB,EAAE,oBAAoB,EAAC,MAAM,8BAA8B,CAAC;AACzF,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAC,MAAM,+BAA+B,CAAC;AAEhG,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,OAAO,wBAAwB,CAAC;AAEhC,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC;AAEjC,MAAM,yBAAyB,GAAG,CAAC,QAAgB,EAAE,EAAE;IACnD,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAErD,OAAO;QACH,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,CACH,eAAK,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,aACxB,YAAY,EACb,KAAC,eAAe,IAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAI,IAChF,CACT;KACJ,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAC9B,WAA+B,EAC/B,UAA8B,EAC9B,QAA4B,EAC5B,wBAAmD,EACrD,EAAE;IACA,MAAM,sBAAsB,GAA2B,EAAE,CAAC;IAE1D,IAAI,UAAU,IAAI,wBAAwB,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,wBAAwB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAEtE,IAAI,WAAW,EAAE,CAAC;YACd,sBAAsB,CAAC,KAAK,GAAG,CAAC,EAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAC,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACX,sBAAsB,CAAC,IAAI,GAAG,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,sBAAsB,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAC/B,WAAiC,EAAE,EACZ,EAAE;IACzB,OAAO;QACH,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,gBAAgB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrD,CAAC;KACJ,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAC9B,WAA+B,EAC/B,UAA8B,EAC9B,QAA4B,EAC5B,2BAAgD,EAChD,iBAAqC,EACvC,EAAE;IACA,MAAM,sBAAsB,GAA2B,EAAE,CAAC;IAE1D,sBAAsB,CAAC,oBAAoB,GAAG,CAC1C,iBAAmD,EACrD,EAAE;;QACA,wDAAwD;QACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,2BAA2B,EAAE,CAAC;YAC9B,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,sBAAsB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,MAAA,yBAAyB,CAAC,iBAAiB,EAAE,QAAQ,EAAE,IAAI,CAAC,mCAAI,SAAS,CAAC;IACrF,CAAC,CAAC;IAEF,IAAI,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAClC,sBAAsB,CAAC,iBAAiB,GAAG,CAAC,MAAe,EAAE,MAAoB,EAAE,EAAE;YACjF,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,iBAAiB,CAAC,EAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC,CAAC;gBAC1E,OAAO,KAAC,gBAAgB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;YAC5C,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;IACN,CAAC;IAED,OAAO,sBAAsB,CAAC;AAClC,CAAC,CAAC;AAOF,MAAM,UAAU,eAAe,CAAC,EAC5B,SAAS,EAAE,gBAAgB,EAC3B,iBAAiB,EACjB,wBAAwB,GACL;IACnB,MAAM,EACF,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,2BAA2B,EAC3B,oBAAoB,GACvB,GAAG,cAAc,EAAE,CAAC;IAErB,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,KAAC,gBAAgB,IACb,sBAAsB,EAAE,yBAAyB,CAC7C,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EACb,UAAU,EACV,QAAQ,EACR,wBAAwB,CAC3B,EACD,uBAAuB,EAAE,0BAA0B,CAAC,QAAQ,CAAC,EAC7D,sBAAsB,EAAE,yBAAyB,CAC7C,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EACb,UAAU,EACV,QAAQ,EACR,2BAA2B,EAC3B,iBAAiB,CACpB,EACD,oBAAoB,EAAE,oBAAoB,GAC5C,GACA,CACT,CAAC;AACN,CAAC"}
|
@@ -13,21 +13,13 @@ const b = cn('authentication');
|
|
13
13
|
function Authentication({ closable = false }) {
|
14
14
|
const history = useHistory();
|
15
15
|
const location = useLocation();
|
16
|
-
const [authenticate, {
|
16
|
+
const [authenticate, { isLoading }] = authenticationApi.useAuthenticateMutation(undefined);
|
17
17
|
const { returnUrl } = parseQuery(location);
|
18
18
|
const [login, setLogin] = React.useState('');
|
19
19
|
const [password, setPass] = React.useState('');
|
20
20
|
const [loginError, setLoginError] = React.useState('');
|
21
21
|
const [passwordError, setPasswordError] = React.useState('');
|
22
22
|
const [showPassword, setShowPassword] = React.useState(false);
|
23
|
-
React.useEffect(() => {
|
24
|
-
if (isUserError(error)) {
|
25
|
-
setLoginError(error.data.error);
|
26
|
-
}
|
27
|
-
if (isPasswordError(error)) {
|
28
|
-
setPasswordError(error.data.error);
|
29
|
-
}
|
30
|
-
}, [error]);
|
31
23
|
const onLoginUpdate = (value) => {
|
32
24
|
setLogin(value);
|
33
25
|
setLoginError('');
|
@@ -37,7 +29,9 @@ function Authentication({ closable = false }) {
|
|
37
29
|
setPasswordError('');
|
38
30
|
};
|
39
31
|
const onLoginClick = () => {
|
40
|
-
authenticate({ user: login, password })
|
32
|
+
authenticate({ user: login, password })
|
33
|
+
.unwrap()
|
34
|
+
.then(() => {
|
41
35
|
if (returnUrl) {
|
42
36
|
const decodedUrl = decodeURIComponent(returnUrl.toString());
|
43
37
|
// to prevent page reload we use router history
|
@@ -47,6 +41,14 @@ function Authentication({ closable = false }) {
|
|
47
41
|
const path = url.pathname + url.search;
|
48
42
|
history.replace(path);
|
49
43
|
}
|
44
|
+
})
|
45
|
+
.catch((error) => {
|
46
|
+
if (isUserError(error)) {
|
47
|
+
setLoginError(error.data.error);
|
48
|
+
}
|
49
|
+
if (isPasswordError(error)) {
|
50
|
+
setPasswordError(error.data.error);
|
51
|
+
}
|
50
52
|
});
|
51
53
|
};
|
52
54
|
const onEnterClick = (e) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Authentication.js","sourceRoot":"","sources":["../../../src/containers/Authentication/Authentication.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAC,MAAM,EAAE,IAAI,IAAI,YAAY,EAAE,IAAI,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,iBAAiB,EAAC,MAAM,oDAAoD,CAAC;AACrF,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAElC,OAAO,EAAC,eAAe,EAAE,WAAW,EAAC,MAAM,SAAS,CAAC;AAErD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,OAAO,uBAAuB,CAAC;AAE/B,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;AAM/B,SAAS,cAAc,CAAC,EAAC,QAAQ,GAAG,KAAK,EAAsB;IAC3D,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,CAAC,YAAY,EAAE,EAAC,
|
1
|
+
{"version":3,"file":"Authentication.js","sourceRoot":"","sources":["../../../src/containers/Authentication/Authentication.tsx"],"names":[],"mappings":"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"}
|