ydb-embedded-ui 6.37.1 → 7.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/BasicNodeViewer/BasicNodeViewer.scss +2 -2
- package/dist/components/DeveloperUILinkButton/DeveloperUILinkButton.scss +2 -2
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +2 -2
- package/dist/components/EmptyState/EmptyState.scss +4 -4
- package/dist/components/EntityPageTitle/EntityPageTitle.scss +2 -2
- package/dist/components/EntityStatus/EntityStatus.scss +4 -4
- package/dist/components/ErrorBoundary/ErrorBoundary.scss +3 -3
- package/dist/components/FullNodeViewer/FullNodeViewer.scss +2 -2
- package/dist/components/Fullscreen/Fullscreen.js +1 -1
- package/dist/components/Fullscreen/Fullscreen.js.map +1 -1
- package/dist/components/Fullscreen/Fullscreen.scss +8 -1
- package/dist/components/MemoryViewer/MemoryViewer.js +8 -7
- package/dist/components/MemoryViewer/MemoryViewer.js.map +1 -1
- package/dist/components/MemoryViewer/MemoryViewer.scss +0 -2
- package/dist/components/MemoryViewer/utils.d.ts +3 -1
- package/dist/components/MemoryViewer/utils.js +15 -13
- package/dist/components/MemoryViewer/utils.js.map +1 -1
- package/dist/components/MetricChart/getChartData.js +1 -1
- package/dist/components/MetricChart/getChartData.js.map +1 -1
- package/dist/components/PageMeta/PageMeta.scss +2 -2
- package/dist/components/PaginatedTable/PaginatedTable.scss +4 -4
- package/dist/components/PoolUsage/PoolUsage.scss +2 -2
- package/dist/components/ProgressViewer/ProgressViewer.scss +2 -2
- package/dist/components/QueryResultTable/QueryResultTable.js +4 -3
- package/dist/components/QueryResultTable/QueryResultTable.js.map +1 -1
- package/dist/components/QueryResultTable/QueryResultTable.scss +2 -2
- package/dist/components/TableWithControlsLayout/TableWithControlsLayout.scss +4 -4
- package/dist/components/User/User.scss +2 -2
- package/dist/components/YDBDefinitionList/YDBDefinitionList.scss +3 -3
- package/dist/components/nodesColumns/columns.js +1 -0
- package/dist/components/nodesColumns/columns.js.map +1 -1
- package/dist/components/nodesColumns/i18n/index.d.ts +1 -1
- package/dist/containers/App/App.scss +7 -6
- package/dist/containers/AsideNavigation/AsideNavigation.js +11 -2
- package/dist/containers/AsideNavigation/AsideNavigation.js.map +1 -1
- package/dist/containers/Authentication/Authentication.scss +2 -2
- package/dist/containers/Cluster/Cluster.scss +4 -4
- package/dist/containers/Cluster/ClusterDashboard/ClusterDashboard.scss +2 -2
- package/dist/containers/Cluster/ClusterInfo/ClusterInfo.scss +2 -2
- package/dist/containers/Cluster/ClusterInfo/components/NodesState/NodesState.scss +2 -2
- package/dist/containers/Clusters/constants.d.ts +1 -1
- package/dist/containers/Header/Header.scss +0 -2
- package/dist/containers/Heatmap/Heatmap.scss +3 -3
- package/dist/containers/Node/Node.scss +4 -4
- package/dist/containers/Node/NodeStructure/NodeStructure.scss +3 -3
- package/dist/containers/Nodes/Nodes.d.ts +2 -1
- package/dist/containers/Nodes/Nodes.js +12 -11
- package/dist/containers/Nodes/Nodes.js.map +1 -1
- package/dist/containers/Nodes/Nodes.scss +2 -2
- package/dist/containers/Nodes/NodesControls/NodesControls.d.ts +2 -1
- package/dist/containers/Nodes/NodesControls/NodesControls.js +7 -4
- package/dist/containers/Nodes/NodesControls/NodesControls.js.map +1 -1
- package/dist/containers/Nodes/NodesTable.d.ts +3 -2
- package/dist/containers/Nodes/NodesTable.js +12 -2
- package/dist/containers/Nodes/NodesTable.js.map +1 -1
- package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.d.ts +7 -0
- package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.js +9 -0
- package/dist/containers/Nodes/PeerRoleFilter/PeerRoleFilter.js.map +1 -0
- package/dist/containers/Nodes/PeerRoleFilter/utils.d.ts +4 -0
- package/dist/containers/Nodes/PeerRoleFilter/utils.js +20 -0
- package/dist/containers/Nodes/PeerRoleFilter/utils.js.map +1 -0
- package/dist/containers/Nodes/columns/columns.js +4 -4
- package/dist/containers/Nodes/columns/columns.js.map +1 -1
- package/dist/containers/Nodes/columns/constants.js +3 -6
- package/dist/containers/Nodes/columns/constants.js.map +1 -1
- package/dist/containers/Nodes/getNodes.js +3 -2
- package/dist/containers/Nodes/getNodes.js.map +1 -1
- package/dist/containers/Nodes/i18n/en.json +6 -1
- package/dist/containers/Nodes/i18n/index.d.ts +1 -1
- package/dist/containers/Nodes/useNodesPageQueryParams.d.ts +3 -1
- package/dist/containers/Nodes/useNodesPageQueryParams.js +8 -0
- package/dist/containers/Nodes/useNodesPageQueryParams.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.js +2 -2
- package/dist/containers/PDiskPage/PDiskPage.js.map +1 -1
- package/dist/containers/PDiskPage/PDiskPage.scss +2 -2
- package/dist/containers/ReduxTooltip/ReduxTooltip.scss +2 -2
- package/dist/containers/Storage/Storage.scss +2 -2
- package/dist/containers/Storage/StorageGroups/columns/constants.js +0 -5
- package/dist/containers/Storage/StorageGroups/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/columns.js +6 -6
- package/dist/containers/Storage/StorageNodes/columns/columns.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/columns/constants.js +2 -3
- package/dist/containers/Storage/StorageNodes/columns/constants.js.map +1 -1
- package/dist/containers/Storage/StorageNodes/getNodes.js +1 -1
- package/dist/containers/Storage/StorageNodes/getNodes.js.map +1 -1
- package/dist/containers/StorageGroupPage/StorageGroupPage.scss +2 -2
- package/dist/containers/Tablet/Tablet.scss +2 -2
- package/dist/containers/Tablet/components/TabletInfo/TabletInfo.scss +2 -2
- package/dist/containers/Tablet/components/TabletStorageInfo/TabletStorageInfo.scss +4 -4
- package/dist/containers/Tablets/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Acl/Acl.scss +3 -3
- package/dist/containers/Tenant/Diagnostics/Consumers/Consumers.scss +6 -6
- package/dist/containers/Tenant/Diagnostics/Consumers/TopicStats/ConsumersTopicStats.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/Describe/Describe.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/Diagnostics.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/HotKeys/HotKeys.scss +0 -2
- package/dist/containers/Tenant/Diagnostics/Network/Network.scss +6 -6
- package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/AsyncReplicationPaths/AsyncReplicationPaths.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TableInfo/TableInfo.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/Overview/TopicStats/TopicStats.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/Partitions/Partitions.scss +6 -6
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/Healthcheck.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/IssuesViewer/IssueTree.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsCards/MetricCard/MetricCard.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss +2 -2
- package/dist/containers/Tenant/Diagnostics/TenantOverview/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Diagnostics/TopQueries/TopQueries.scss +3 -3
- package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.js +1 -0
- package/dist/containers/Tenant/Diagnostics/TopQueries/getTopQueriesColumns.js.map +1 -1
- package/dist/containers/Tenant/ObjectGeneral/ObjectGeneral.scss +0 -2
- package/dist/containers/Tenant/ObjectSummary/ObjectSummary.scss +3 -3
- package/dist/containers/Tenant/Query/CancelQueryButton/CancelQueryButton.scss +2 -2
- package/dist/containers/Tenant/Query/Preview/Preview.js +11 -5
- package/dist/containers/Tenant/Query/Preview/Preview.js.map +1 -1
- package/dist/containers/Tenant/Query/Preview/Preview.scss +4 -3
- package/dist/containers/Tenant/Query/QueriesHistory/QueriesHistory.scss +3 -3
- package/dist/containers/Tenant/Query/Query.scss +2 -2
- package/dist/containers/Tenant/Query/QueryEditor/QueryEditor.scss +2 -2
- package/dist/containers/Tenant/Query/QueryResult/components/QueryJSONViewer/QueryJSONViewer.scss +2 -2
- package/dist/containers/Tenant/Query/QueryResult/components/ResultSetsViewer/ResultSetsViewer.scss +2 -2
- package/dist/containers/Tenant/Query/QueryResult/components/SimplifiedPlan/SimplifiedPlan.scss +4 -4
- package/dist/containers/Tenant/Query/SavedQueries/SavedQueries.scss +3 -3
- package/dist/containers/Tenant/Query/i18n/en.json +1 -0
- package/dist/containers/Tenant/Query/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Schema/SchemaViewer/SchemaViewer.scss +3 -3
- package/dist/containers/Tenant/Tenant.scss +3 -3
- package/dist/containers/Tenants/Tenants.scss +2 -2
- package/dist/containers/VDiskPage/VDiskPage.js +1 -1
- package/dist/containers/VDiskPage/VDiskPage.js.map +1 -1
- package/dist/containers/VDiskPage/VDiskPage.scss +2 -2
- package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.d.ts +2 -2
- package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.js.map +1 -1
- package/dist/containers/Versions/GroupedNodesTree/GroupedNodesTree.scss +2 -5
- package/dist/containers/Versions/NodesTable/NodesTable.d.ts +2 -2
- package/dist/containers/Versions/NodesTable/NodesTable.js +16 -85
- package/dist/containers/Versions/NodesTable/NodesTable.js.map +1 -1
- package/dist/containers/Versions/Versions.scss +0 -2
- package/dist/containers/Versions/groupNodes.d.ts +4 -4
- package/dist/containers/Versions/groupNodes.js.map +1 -1
- package/dist/containers/Versions/types.d.ts +2 -2
- package/dist/lib.d.ts +1 -1
- package/dist/lib.js +1 -1
- package/dist/lib.js.map +1 -1
- package/dist/services/api/auth.d.ts +8 -0
- package/dist/services/api/auth.js +10 -0
- package/dist/services/api/auth.js.map +1 -0
- package/dist/services/api/base.d.ts +13 -0
- package/dist/services/api/base.js +57 -0
- package/dist/services/api/base.js.map +1 -0
- package/dist/services/api/index.d.ts +31 -0
- package/dist/services/api/index.js +32 -0
- package/dist/services/api/index.js.map +1 -0
- package/dist/services/api/meta.d.ts +12 -0
- package/dist/services/api/meta.js +30 -0
- package/dist/services/api/meta.js.map +1 -0
- package/dist/services/api/operation.d.ts +8 -0
- package/dist/services/api/operation.js +22 -0
- package/dist/services/api/operation.js.map +1 -0
- package/dist/services/api/pdisk.d.ts +25 -0
- package/dist/services/api/pdisk.js +43 -0
- package/dist/services/api/pdisk.js.map +1 -0
- package/dist/services/api/scheme.d.ts +11 -0
- package/dist/services/api/scheme.js +12 -0
- package/dist/services/api/scheme.js.map +1 -0
- package/dist/services/api/storage.d.ts +6 -0
- package/dist/services/api/storage.js +28 -0
- package/dist/services/api/storage.js.map +1 -0
- package/dist/services/api/tablets.d.ts +21 -0
- package/dist/services/api/tablets.js +44 -0
- package/dist/services/api/tablets.js.map +1 -0
- package/dist/services/api/trace.d.ts +7 -0
- package/dist/services/api/trace.js +33 -0
- package/dist/services/api/trace.js.map +1 -0
- package/dist/services/api/vdisk.d.ts +12 -0
- package/dist/services/api/vdisk.js +16 -0
- package/dist/services/api/vdisk.js.map +1 -0
- package/dist/services/api/viewer.d.ts +129 -0
- package/dist/services/api/viewer.js +251 -0
- package/dist/services/api/viewer.js.map +1 -0
- package/dist/store/reducers/authentication/authentication.js +3 -3
- package/dist/store/reducers/authentication/authentication.js.map +1 -1
- package/dist/store/reducers/cancelQuery.js +1 -1
- package/dist/store/reducers/cancelQuery.js.map +1 -1
- package/dist/store/reducers/capabilities/capabilities.js +1 -1
- package/dist/store/reducers/capabilities/capabilities.js.map +1 -1
- package/dist/store/reducers/capabilities/hooks.js +1 -1
- package/dist/store/reducers/cluster/cluster.js +8 -3
- package/dist/store/reducers/cluster/cluster.js.map +1 -1
- package/dist/store/reducers/clusters/clusters.js +7 -2
- package/dist/store/reducers/clusters/clusters.js.map +1 -1
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js +2 -2
- package/dist/store/reducers/executeTopQueries/executeTopQueries.js.map +1 -1
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.js +1 -1
- package/dist/store/reducers/healthcheckInfo/healthcheckInfo.js.map +1 -1
- package/dist/store/reducers/heatmap.js +2 -2
- package/dist/store/reducers/heatmap.js.map +1 -1
- package/dist/store/reducers/hotKeys/hotKeys.js +2 -2
- package/dist/store/reducers/hotKeys/hotKeys.js.map +1 -1
- package/dist/store/reducers/network/network.js +1 -1
- package/dist/store/reducers/network/network.js.map +1 -1
- package/dist/store/reducers/node/node.js +2 -2
- package/dist/store/reducers/node/node.js.map +1 -1
- package/dist/store/reducers/nodes/nodes.js +1 -1
- package/dist/store/reducers/nodes/nodes.js.map +1 -1
- package/dist/store/reducers/nodes/types.d.ts +2 -1
- package/dist/store/reducers/nodesList.js +1 -1
- package/dist/store/reducers/nodesList.js.map +1 -1
- package/dist/store/reducers/operations.js +3 -3
- package/dist/store/reducers/operations.js.map +1 -1
- package/dist/store/reducers/overview/overview.js +2 -2
- package/dist/store/reducers/overview/overview.js.map +1 -1
- package/dist/store/reducers/partitions/partitions.js +2 -2
- package/dist/store/reducers/partitions/partitions.js.map +1 -1
- package/dist/store/reducers/pdisk/pdisk.js +3 -3
- package/dist/store/reducers/pdisk/pdisk.js.map +1 -1
- package/dist/store/reducers/planToSvg.js +1 -1
- package/dist/store/reducers/planToSvg.js.map +1 -1
- package/dist/store/reducers/preview.d.ts +1 -0
- package/dist/store/reducers/preview.js +2 -2
- package/dist/store/reducers/preview.js.map +1 -1
- package/dist/store/reducers/query/query.js +1 -1
- package/dist/store/reducers/query/query.js.map +1 -1
- package/dist/store/reducers/schema/schema.js +2 -2
- package/dist/store/reducers/schema/schema.js.map +1 -1
- package/dist/store/reducers/schemaAcl/schemaAcl.js +1 -1
- package/dist/store/reducers/schemaAcl/schemaAcl.js.map +1 -1
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js +1 -1
- package/dist/store/reducers/shardsWorkload/shardsWorkload.js.map +1 -1
- package/dist/store/reducers/storage/requestStorageData.d.ts +1 -1
- package/dist/store/reducers/storage/requestStorageData.js +2 -2
- package/dist/store/reducers/storage/requestStorageData.js.map +1 -1
- package/dist/store/reducers/storage/storage.js +1 -1
- package/dist/store/reducers/storage/storage.js.map +1 -1
- package/dist/store/reducers/tablet.js +10 -8
- package/dist/store/reducers/tablet.js.map +1 -1
- package/dist/store/reducers/tablets.js +1 -1
- package/dist/store/reducers/tablets.js.map +1 -1
- package/dist/store/reducers/tenant/tenant.js +2 -2
- package/dist/store/reducers/tenant/tenant.js.map +1 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js +1 -1
- package/dist/store/reducers/tenantOverview/executeTopTables/executeTopTables.js.map +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js +1 -1
- package/dist/store/reducers/tenantOverview/topShards/tenantOverviewTopShards.js.map +1 -1
- package/dist/store/reducers/tenants/tenants.js +3 -1
- package/dist/store/reducers/tenants/tenants.js.map +1 -1
- package/dist/store/reducers/tooltip.d.ts +1 -1
- package/dist/store/reducers/topic.js +1 -1
- package/dist/store/reducers/topic.js.map +1 -1
- package/dist/store/reducers/trace.js +1 -1
- package/dist/store/reducers/trace.js.map +1 -1
- package/dist/store/reducers/vdisk/vdisk.js +3 -3
- package/dist/store/reducers/vdisk/vdisk.js.map +1 -1
- package/dist/store/reducers/viewSchema/viewSchema.js +1 -1
- package/dist/store/reducers/viewSchema/viewSchema.js.map +1 -1
- package/dist/styles/mixins.scss +2 -1
- package/dist/styles/themes.scss +8 -8
- package/dist/types/api/nodes.d.ts +4 -1
- package/dist/types/api/nodes.js.map +1 -1
- package/dist/utils/hooks/useLastQueryExecutionSettings.d.ts +2 -2
- package/dist/utils/hooks/useQueryExecutionSettings.d.ts +1 -1
- package/dist/utils/monaco/yql/generateSuggestions.js +6 -2
- package/dist/utils/monaco/yql/generateSuggestions.js.map +1 -1
- package/dist/utils/query.d.ts +3 -3
- package/dist/utils/query.js +2 -2
- package/dist/utils/query.js.map +1 -1
- package/dist/utils/versions/getVersionsColors.d.ts +1 -1
- package/dist/utils/versions/getVersionsColors.js +3 -2
- package/dist/utils/versions/getVersionsColors.js.map +1 -1
- package/package.json +2 -2
- package/dist/services/api.d.ts +0 -219
- package/dist/services/api.js +0 -522
- package/dist/services/api.js.map +0 -1
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: (key: "
|
1
|
+
declare const _default: (key: "tablets" | "cpu" | "memory" | "database" | "missing" | "host" | "version" | "uptime" | "load" | "min" | "ping" | "max" | "node-id" | "node-name" | "dc" | "rack" | "ram" | "pools" | "disk-usage" | "load-average" | "sessions" | "pdisks" | "field_memory-used" | "field_memory-limit" | "system-state" | "connect-status" | "utilization" | "network-utilization" | "connections" | "clock-skew" | "skew" | "ping-time" | "send" | "receive" | "avg" | "sum", params?: import("@gravity-ui/i18n").Params) => string;
|
2
2
|
export default _default;
|
@@ -1,5 +1,6 @@
|
|
1
|
+
@use '../../styles/mixins.scss';
|
2
|
+
|
1
3
|
@import url('https://fonts.googleapis.com/css2?family=Rubik&display=swap');
|
2
|
-
@import '../../styles/mixins.scss';
|
3
4
|
|
4
5
|
* {
|
5
6
|
// FIXME: this is an overkill, potentially could break external components, needs refactoring
|
@@ -36,7 +37,7 @@ body,
|
|
36
37
|
}
|
37
38
|
|
38
39
|
.g-root {
|
39
|
-
--ydb-data-table-color-hover: var(--g-color-base-
|
40
|
+
--ydb-data-table-color-hover: var(--g-color-base-simple-hover-solid);
|
40
41
|
|
41
42
|
// Colors for tablets, status icons and progress bars
|
42
43
|
--ydb-color-status-grey: var(--g-color-base-neutral-heavy);
|
@@ -73,17 +74,17 @@ body,
|
|
73
74
|
}
|
74
75
|
|
75
76
|
.loader {
|
76
|
-
@include loader();
|
77
|
+
@include mixins.loader();
|
77
78
|
}
|
78
79
|
|
79
80
|
.app {
|
80
81
|
height: 100%;
|
81
|
-
@include flex-container();
|
82
|
-
@include data-table-styles();
|
82
|
+
@include mixins.flex-container();
|
83
|
+
@include mixins.data-table-styles();
|
83
84
|
|
84
85
|
&__main {
|
85
86
|
overflow: auto;
|
86
|
-
@include flex-container();
|
87
|
+
@include mixins.flex-container();
|
87
88
|
}
|
88
89
|
}
|
89
90
|
|
@@ -3,8 +3,9 @@ import React from 'react';
|
|
3
3
|
import { CircleQuestion, Gear, Person } from '@gravity-ui/icons';
|
4
4
|
import { AsideHeader, FooterItem } from '@gravity-ui/navigation';
|
5
5
|
import { useHistory } from 'react-router-dom';
|
6
|
+
import { settingsManager } from '../../services/settings';
|
6
7
|
import { cn } from '../../utils/cn';
|
7
|
-
import { ASIDE_HEADER_COMPACT_KEY } from '../../utils/constants';
|
8
|
+
import { ASIDE_HEADER_COMPACT_KEY, LANGUAGE_KEY } from '../../utils/constants';
|
8
9
|
import { useSetting } from '../../utils/hooks';
|
9
10
|
import i18n from './i18n';
|
10
11
|
import userSecret from '../../assets/icons/user-secret.svg';
|
@@ -27,6 +28,14 @@ var Panel;
|
|
27
28
|
(function (Panel) {
|
28
29
|
Panel["UserSettings"] = "UserSettings";
|
29
30
|
})(Panel || (Panel = {}));
|
31
|
+
function getDocumentationLink() {
|
32
|
+
// Use saved language from settings if it's present, otherwise use browser language
|
33
|
+
const lang = settingsManager.readUserSettingsValue(LANGUAGE_KEY, navigator.language);
|
34
|
+
if (lang === 'ru') {
|
35
|
+
return 'https://ydb.tech/docs/ru/';
|
36
|
+
}
|
37
|
+
return 'https://ydb.tech/docs/en/';
|
38
|
+
}
|
30
39
|
export function AsideNavigation(props) {
|
31
40
|
const history = useHistory();
|
32
41
|
const [visiblePanel, setVisiblePanel] = React.useState();
|
@@ -40,7 +49,7 @@ export function AsideNavigation(props) {
|
|
40
49
|
title: i18n('navigation-item.documentation'),
|
41
50
|
icon: CircleQuestion,
|
42
51
|
onItemClick: () => {
|
43
|
-
window.open(
|
52
|
+
window.open(getDocumentationLink(), '_blank', 'noreferrer');
|
44
53
|
},
|
45
54
|
} }), _jsx(FooterItem, { item: {
|
46
55
|
id: 'user-settings',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AsideNavigation.js","sourceRoot":"","sources":["../../../src/containers/AsideNavigation/AsideNavigation.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,cAAc,EAAE,IAAI,EAAE,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAC,WAAW,EAAE,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAC,EAAE,EAAC,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAC,wBAAwB,EAAC,MAAM,uBAAuB,CAAC;
|
1
|
+
{"version":3,"file":"AsideNavigation.js","sourceRoot":"","sources":["../../../src/containers/AsideNavigation/AsideNavigation.tsx"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@
|
1
|
+
@use '../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.authentication {
|
4
4
|
display: flex;
|
@@ -45,7 +45,7 @@
|
|
45
45
|
margin: 34px 0 16px;
|
46
46
|
|
47
47
|
font-weight: 600;
|
48
|
-
@include header-2-typography;
|
48
|
+
@include mixins.header-2-typography;
|
49
49
|
}
|
50
50
|
|
51
51
|
&__form-wrapper {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@
|
1
|
+
@use '../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.ydb-cluster {
|
4
4
|
position: relative;
|
@@ -18,7 +18,7 @@
|
|
18
18
|
|
19
19
|
&__title {
|
20
20
|
font-weight: var(--g-text-header-font-weight);
|
21
|
-
@include header-1-typography();
|
21
|
+
@include mixins.header-1-typography();
|
22
22
|
}
|
23
23
|
|
24
24
|
&__title-skeleton {
|
@@ -36,11 +36,11 @@
|
|
36
36
|
padding-left: 20px;
|
37
37
|
|
38
38
|
transform: translateX(-20px);
|
39
|
-
@include sticky-top();
|
39
|
+
@include mixins.sticky-top();
|
40
40
|
}
|
41
41
|
&__tabs {
|
42
42
|
display: flex;
|
43
|
-
@include tabs-wrapper-styles();
|
43
|
+
@include mixins.tabs-wrapper-styles();
|
44
44
|
}
|
45
45
|
|
46
46
|
&__sticky-wrapper {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@
|
1
|
+
@use '../../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.ydb-cluster-dashboard {
|
4
4
|
position: sticky;
|
@@ -7,7 +7,7 @@
|
|
7
7
|
padding-top: 16px;
|
8
8
|
|
9
9
|
&__error {
|
10
|
-
@include body-2-typography();
|
10
|
+
@include mixins.body-2-typography();
|
11
11
|
}
|
12
12
|
&__card {
|
13
13
|
display: flex;
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@
|
1
|
+
@use '../../../../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.ydb-nodes-state {
|
4
4
|
display: flex;
|
@@ -13,5 +13,5 @@
|
|
13
13
|
color: var(--entity-state-font-color);
|
14
14
|
border-radius: var(--g-spacing-1);
|
15
15
|
background-color: var(--entity-state-background-color);
|
16
|
-
@include entity-state-colors();
|
16
|
+
@include mixins.entity-state-colors();
|
17
17
|
}
|
@@ -14,7 +14,7 @@ export declare const COLUMNS_NAMES: {
|
|
14
14
|
readonly DESCRIPTION: "description";
|
15
15
|
readonly BALANCER: "balancer";
|
16
16
|
};
|
17
|
-
export declare const DEFAULT_COLUMNS: ("
|
17
|
+
export declare const DEFAULT_COLUMNS: ("nodes" | "storage" | "status" | "hosts" | "versions" | "balancer" | "tenants" | "service" | "load" | "owner" | "title")[];
|
18
18
|
export declare const COLUMNS_TITLES: {
|
19
19
|
readonly title: "Cluster";
|
20
20
|
readonly versions: "Versions";
|
@@ -1,10 +1,10 @@
|
|
1
|
-
@
|
1
|
+
@use '../../styles/mixins';
|
2
2
|
|
3
3
|
.heatmap {
|
4
4
|
overflow: auto;
|
5
5
|
|
6
6
|
height: 100%;
|
7
|
-
@include flex-container();
|
7
|
+
@include mixins.flex-container();
|
8
8
|
|
9
9
|
&__limits {
|
10
10
|
display: flex;
|
@@ -43,7 +43,7 @@
|
|
43
43
|
font-weight: 500;
|
44
44
|
text-transform: uppercase;
|
45
45
|
|
46
|
-
@include body-2-typography();
|
46
|
+
@include mixins.body-2-typography();
|
47
47
|
|
48
48
|
&_overall {
|
49
49
|
margin-right: 15px;
|
@@ -1,8 +1,8 @@
|
|
1
|
-
@
|
1
|
+
@use '../../styles/mixins';
|
2
2
|
|
3
3
|
.node {
|
4
4
|
overflow: auto;
|
5
|
-
@include flex-container();
|
5
|
+
@include mixins.flex-container();
|
6
6
|
|
7
7
|
&__header {
|
8
8
|
margin: 16px 20px;
|
@@ -12,7 +12,7 @@
|
|
12
12
|
position: relative;
|
13
13
|
|
14
14
|
overflow: auto;
|
15
|
-
@include flex-container();
|
15
|
+
@include mixins.flex-container();
|
16
16
|
}
|
17
17
|
|
18
18
|
&__storage {
|
@@ -28,7 +28,7 @@
|
|
28
28
|
align-items: center;
|
29
29
|
|
30
30
|
padding: 0 20px;
|
31
|
-
@include tabs-wrapper-styles();
|
31
|
+
@include mixins.tabs-wrapper-styles();
|
32
32
|
}
|
33
33
|
|
34
34
|
&__tab {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@
|
1
|
+
@use '../../../styles/mixins.scss';
|
2
2
|
|
3
3
|
.kv-node-structure {
|
4
4
|
position: relative;
|
@@ -7,8 +7,8 @@
|
|
7
7
|
overflow: auto;
|
8
8
|
flex-direction: column;
|
9
9
|
flex-shrink: 0;
|
10
|
-
@include flex-container();
|
11
|
-
@include body-2-typography();
|
10
|
+
@include mixins.flex-container();
|
11
|
+
@include mixins.body-2-typography();
|
12
12
|
|
13
13
|
&__error {
|
14
14
|
padding: 20px 20px 0;
|
@@ -10,10 +10,11 @@ export interface NodesProps {
|
|
10
10
|
database?: string;
|
11
11
|
parentRef: React.RefObject<HTMLElement>;
|
12
12
|
additionalNodesProps?: AdditionalNodesProps;
|
13
|
+
withPeerRoleFilter?: boolean;
|
13
14
|
columns?: Column<NodesPreparedEntity>[];
|
14
15
|
defaultColumnsIds?: NodesColumnId[];
|
15
16
|
requiredColumnsIds?: NodesColumnId[];
|
16
17
|
selectedColumnsKey?: string;
|
17
18
|
groupByParams?: NodesGroupByField[];
|
18
19
|
}
|
19
|
-
export declare function Nodes({ path, database, parentRef, additionalNodesProps, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }: NodesProps): import("react/jsx-runtime").JSX.Element;
|
20
|
+
export declare function Nodes({ path, database, parentRef, additionalNodesProps, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }: NodesProps): import("react/jsx-runtime").JSX.Element;
|
@@ -20,7 +20,7 @@ import i18n from './i18n';
|
|
20
20
|
import { b } from './shared';
|
21
21
|
import { useNodesPageQueryParams } from './useNodesPageQueryParams';
|
22
22
|
import './Nodes.scss';
|
23
|
-
export function Nodes({ path, database, parentRef, additionalNodesProps, columns = getNodesColumns({ database, getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef }), defaultColumnsIds = DEFAULT_NODES_COLUMNS, requiredColumnsIds = REQUIRED_NODES_COLUMNS, selectedColumnsKey = NODES_TABLE_SELECTED_COLUMNS_LS_KEY, groupByParams = ALL_NODES_GROUP_BY_PARAMS, }) {
|
23
|
+
export function Nodes({ path, database, parentRef, additionalNodesProps, withPeerRoleFilter, columns = getNodesColumns({ database, getNodeRef: additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef }), defaultColumnsIds = DEFAULT_NODES_COLUMNS, requiredColumnsIds = REQUIRED_NODES_COLUMNS, selectedColumnsKey = NODES_TABLE_SELECTED_COLUMNS_LS_KEY, groupByParams = ALL_NODES_GROUP_BY_PARAMS, }) {
|
24
24
|
const { uptimeFilter, groupByParam, handleUptimeFilterChange } = useNodesPageQueryParams(groupByParams);
|
25
25
|
const { problemFilter, handleProblemFilterChange } = useProblemFilter();
|
26
26
|
const capabilitiesLoaded = useCapabilitiesLoaded();
|
@@ -42,30 +42,31 @@ export function Nodes({ path, database, parentRef, additionalNodesProps, columns
|
|
42
42
|
]);
|
43
43
|
const renderContent = () => {
|
44
44
|
if (viewerNodesHandlerHasGrouping && groupByParam) {
|
45
|
-
return (_jsx(GroupedNodesComponent, { path: path, database: database, parentRef: parentRef, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
|
45
|
+
return (_jsx(GroupedNodesComponent, { path: path, database: database, parentRef: parentRef, withPeerRoleFilter: withPeerRoleFilter, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
|
46
46
|
}
|
47
|
-
return (_jsx(NodesComponent, { path: path, database: database, parentRef: parentRef, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
|
47
|
+
return (_jsx(NodesComponent, { path: path, database: database, parentRef: parentRef, withPeerRoleFilter: withPeerRoleFilter, columns: columns, defaultColumnsIds: defaultColumnsIds, requiredColumnsIds: requiredColumnsIds, selectedColumnsKey: selectedColumnsKey, groupByParams: groupByParams }));
|
48
48
|
};
|
49
49
|
return _jsx(LoaderWrapper, { loading: !capabilitiesLoaded, children: renderContent() });
|
50
50
|
}
|
51
|
-
function NodesComponent({ path, database, parentRef, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
|
52
|
-
const { searchValue, uptimeFilter } = useNodesPageQueryParams(groupByParams);
|
51
|
+
function NodesComponent({ path, database, parentRef, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
|
52
|
+
const { searchValue, uptimeFilter, peerRoleFilter } = useNodesPageQueryParams(groupByParams);
|
53
53
|
const { problemFilter } = useProblemFilter();
|
54
54
|
const viewerNodesHandlerHasGrouping = useViewerNodesHandlerHasGrouping();
|
55
55
|
const { columnsToShow, columnsToSelect, setColumns } = useSelectedColumns(columns, selectedColumnsKey, NODES_COLUMNS_TITLES, defaultColumnsIds, requiredColumnsIds);
|
56
56
|
const renderControls = ({ totalEntities, foundEntities, inited }) => {
|
57
|
-
return (_jsx(NodesControls, { withGroupBySelect: viewerNodesHandlerHasGrouping, groupByParams: groupByParams, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: foundEntities, entitiesCountTotal: totalEntities, entitiesLoading: !inited }));
|
57
|
+
return (_jsx(NodesControls, { withGroupBySelect: viewerNodesHandlerHasGrouping, groupByParams: groupByParams, withPeerRoleFilter: withPeerRoleFilter, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: foundEntities, entitiesCountTotal: totalEntities, entitiesLoading: !inited }));
|
58
58
|
};
|
59
|
-
return (_jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: problemFilter, uptimeFilter: uptimeFilter, columns: columnsToShow, parentRef: parentRef, renderControls: renderControls }));
|
59
|
+
return (_jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: problemFilter, uptimeFilter: uptimeFilter, peerRoleFilter: peerRoleFilter, columns: columnsToShow, parentRef: parentRef, renderControls: renderControls }));
|
60
60
|
}
|
61
|
-
function GroupedNodesComponent({ path, database, parentRef, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
|
62
|
-
const { searchValue, groupByParam } = useNodesPageQueryParams(groupByParams);
|
61
|
+
function GroupedNodesComponent({ path, database, parentRef, withPeerRoleFilter, columns, defaultColumnsIds, requiredColumnsIds, selectedColumnsKey, groupByParams, }) {
|
62
|
+
const { searchValue, peerRoleFilter, groupByParam } = useNodesPageQueryParams(groupByParams);
|
63
63
|
const [autoRefreshInterval] = useAutoRefreshInterval();
|
64
64
|
const { columnsToShow, columnsToSelect, setColumns } = useSelectedColumns(columns, selectedColumnsKey, NODES_COLUMNS_TITLES, defaultColumnsIds, requiredColumnsIds);
|
65
65
|
const { currentData, isFetching, error } = nodesApi.useGetNodesQuery({
|
66
66
|
path,
|
67
67
|
database,
|
68
68
|
filter: searchValue,
|
69
|
+
filter_peer_role: peerRoleFilter,
|
69
70
|
group: groupByParam,
|
70
71
|
limit: 0,
|
71
72
|
}, {
|
@@ -75,13 +76,13 @@ function GroupedNodesComponent({ path, database, parentRef, columns, defaultColu
|
|
75
76
|
const { NodeGroups: tableGroups, FoundNodes: found = 0, TotalNodes: total = 0, } = currentData || {};
|
76
77
|
const { expandedGroups, setIsGroupExpanded } = useExpandedGroups(tableGroups);
|
77
78
|
const renderControls = () => {
|
78
|
-
return (_jsx(NodesControls, { withGroupBySelect: true, groupByParams: groupByParams, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: found, entitiesCountTotal: total, entitiesLoading: isLoading }));
|
79
|
+
return (_jsx(NodesControls, { withGroupBySelect: true, groupByParams: groupByParams, withPeerRoleFilter: withPeerRoleFilter, columnsToSelect: columnsToSelect, handleSelectedColumnsUpdate: setColumns, entitiesCountCurrent: found, entitiesCountTotal: total, entitiesLoading: isLoading }));
|
79
80
|
};
|
80
81
|
const renderGroups = () => {
|
81
82
|
if (tableGroups === null || tableGroups === void 0 ? void 0 : tableGroups.length) {
|
82
83
|
return tableGroups.map(({ name, count }) => {
|
83
84
|
const isExpanded = expandedGroups[name];
|
84
|
-
return (_jsx(TableGroup, { title: name, count: count, entityName: i18n('nodes'), expanded: isExpanded, onIsExpandedChange: setIsGroupExpanded, children: _jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: 'All', uptimeFilter: NodesUptimeFilterValues.All, filterGroup: name, filterGroupBy: groupByParam, initialEntitiesCount: count, columns: columnsToShow, parentRef: parentRef }) }, name));
|
85
|
+
return (_jsx(TableGroup, { title: name, count: count, entityName: i18n('nodes'), expanded: isExpanded, onIsExpandedChange: setIsGroupExpanded, children: _jsx(NodesTable, { path: path, database: database, searchValue: searchValue, problemFilter: 'All', uptimeFilter: NodesUptimeFilterValues.All, peerRoleFilter: peerRoleFilter, filterGroup: name, filterGroupBy: groupByParam, initialEntitiesCount: count, columns: columnsToShow, parentRef: parentRef }) }, name));
|
85
86
|
});
|
86
87
|
}
|
87
88
|
return i18n('no-nodes-groups');
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Nodes.js","sourceRoot":"","sources":["../../../src/containers/Nodes/Nodes.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,aAAa,EAAC,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAC,aAAa,EAAC,MAAM,8CAA8C,CAAC;AAE3E,OAAO,EAAC,uBAAuB,EAAC,MAAM,kEAAkE,CAAC;AACzG,OAAO,EAAC,oBAAoB,EAAC,MAAM,yCAAyC,CAAC;AAE7E,OAAO,EACH,qBAAqB,EACrB,gCAAgC,GACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAE1D,OAAO,EAAC,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAGrE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,kBAAkB,EAAC,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,8CAA8C,CAAC;AAE/E,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACH,yBAAyB,EACzB,qBAAqB,EACrB,mCAAmC,EACnC,sBAAsB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,CAAC,EAAC,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAC,uBAAuB,EAAC,MAAM,2BAA2B,CAAC;AAElE,OAAO,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"Nodes.js","sourceRoot":"","sources":["../../../src/containers/Nodes/Nodes.tsx"],"names":[],"mappings":"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"}
|
@@ -3,11 +3,12 @@ import type { NodesGroupByField } from '../../../types/api/nodes';
|
|
3
3
|
interface NodesControlsProps {
|
4
4
|
withGroupBySelect?: boolean;
|
5
5
|
groupByParams: NodesGroupByField[] | undefined;
|
6
|
+
withPeerRoleFilter?: boolean;
|
6
7
|
columnsToSelect: TableColumnSetupItem[];
|
7
8
|
handleSelectedColumnsUpdate: (updated: TableColumnSetupItem[]) => void;
|
8
9
|
entitiesCountCurrent: number;
|
9
10
|
entitiesCountTotal?: number;
|
10
11
|
entitiesLoading: boolean;
|
11
12
|
}
|
12
|
-
export declare function NodesControls({ withGroupBySelect, groupByParams, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }: NodesControlsProps): import("react/jsx-runtime").JSX.Element;
|
13
|
+
export declare function NodesControls({ withGroupBySelect, groupByParams, withPeerRoleFilter, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }: NodesControlsProps): import("react/jsx-runtime").JSX.Element;
|
13
14
|
export {};
|
@@ -5,20 +5,23 @@ import { EntitiesCount } from '../../../components/EntitiesCount';
|
|
5
5
|
import { ProblemFilter } from '../../../components/ProblemFilter';
|
6
6
|
import { Search } from '../../../components/Search';
|
7
7
|
import { UptimeFilter } from '../../../components/UptimeFIlter';
|
8
|
-
import { useViewerNodesHandlerHasGroupingBySystemState } from '../../../store/reducers/capabilities/hooks';
|
8
|
+
import { useViewerNodesHandlerHasGroupingBySystemState, useViewerNodesHandlerHasNetworkStats, } from '../../../store/reducers/capabilities/hooks';
|
9
9
|
import { useProblemFilter } from '../../../store/reducers/settings/hooks';
|
10
|
+
import { PeerRoleFilter } from '../PeerRoleFilter/PeerRoleFilter';
|
10
11
|
import { getNodesGroupByOptions } from '../columns/constants';
|
11
12
|
import i18n from '../i18n';
|
12
13
|
import { b } from '../shared';
|
13
14
|
import { useNodesPageQueryParams } from '../useNodesPageQueryParams';
|
14
|
-
export function NodesControls({ withGroupBySelect, groupByParams = [], columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }) {
|
15
|
-
const { searchValue, uptimeFilter, groupByParam, handleSearchQueryChange, handleUptimeFilterChange, handleGroupByParamChange, } = useNodesPageQueryParams(groupByParams);
|
15
|
+
export function NodesControls({ withGroupBySelect, groupByParams = [], withPeerRoleFilter, columnsToSelect, handleSelectedColumnsUpdate, entitiesCountCurrent, entitiesCountTotal, entitiesLoading, }) {
|
16
|
+
const { searchValue, uptimeFilter, peerRoleFilter, groupByParam, handleSearchQueryChange, handleUptimeFilterChange, handlePeerRoleFilterChange, handleGroupByParamChange, } = useNodesPageQueryParams(groupByParams);
|
16
17
|
const { problemFilter, handleProblemFilterChange } = useProblemFilter();
|
17
18
|
const systemStateGroupingAvailable = useViewerNodesHandlerHasGroupingBySystemState();
|
18
19
|
const groupByoptions = getNodesGroupByOptions(groupByParams, systemStateGroupingAvailable);
|
20
|
+
const networStatsAvailable = useViewerNodesHandlerHasNetworkStats();
|
21
|
+
const shouldDisplayPeerRoleFilter = withPeerRoleFilter && networStatsAvailable;
|
19
22
|
const handleGroupBySelectUpdate = (value) => {
|
20
23
|
handleGroupByParamChange(value[0]);
|
21
24
|
};
|
22
|
-
return (_jsxs(React.Fragment, { children: [_jsx(Search, { onChange: handleSearchQueryChange, placeholder: i18n('controls_search-placeholder'), width: 238, value: searchValue }), systemStateGroupingAvailable && withGroupBySelect ? null : (_jsx(ProblemFilter, { value: problemFilter, onChange: handleProblemFilterChange })), withGroupBySelect ? null : (_jsx(UptimeFilter, { value: uptimeFilter, onChange: handleUptimeFilterChange })), _jsx(TableColumnSetup, { popupWidth: 200, items: columnsToSelect, showStatus: true, onUpdate: handleSelectedColumnsUpdate, sortable: false }), withGroupBySelect ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_group-by-placeholder') }), _jsx(Select, { hasClear: true, placeholder: '-', width: 150, defaultValue: groupByParam ? [groupByParam] : undefined, onUpdate: handleGroupBySelectUpdate, options: groupByoptions, className: b('group-by-select'), popupClassName: b('group-by-popup') })] })) : null, _jsx(EntitiesCount, { current: entitiesCountCurrent, total: entitiesCountTotal, label: i18n('nodes'), loading: entitiesLoading })] }));
|
25
|
+
return (_jsxs(React.Fragment, { children: [_jsx(Search, { onChange: handleSearchQueryChange, placeholder: i18n('controls_search-placeholder'), width: 238, value: searchValue }), systemStateGroupingAvailable && withGroupBySelect ? null : (_jsx(ProblemFilter, { value: problemFilter, onChange: handleProblemFilterChange })), withGroupBySelect ? null : (_jsx(UptimeFilter, { value: uptimeFilter, onChange: handleUptimeFilterChange })), shouldDisplayPeerRoleFilter ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_peer-role-label') }), _jsx(PeerRoleFilter, { value: peerRoleFilter, onChange: handlePeerRoleFilterChange })] })) : null, _jsx(TableColumnSetup, { popupWidth: 200, items: columnsToSelect, showStatus: true, onUpdate: handleSelectedColumnsUpdate, sortable: false }), withGroupBySelect ? (_jsxs(React.Fragment, { children: [_jsx(Text, { variant: "body-2", children: i18n('controls_group-by-placeholder') }), _jsx(Select, { hasClear: true, placeholder: '-', width: 150, defaultValue: groupByParam ? [groupByParam] : undefined, onUpdate: handleGroupBySelectUpdate, options: groupByoptions, className: b('group-by-select'), popupClassName: b('group-by-popup') })] })) : null, _jsx(EntitiesCount, { current: entitiesCountCurrent, total: entitiesCountTotal, label: i18n('nodes'), loading: entitiesLoading })] }));
|
23
26
|
}
|
24
27
|
//# sourceMappingURL=NodesControls.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NodesControls.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/NodesControls/NodesControls.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAC,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAC,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAO,
|
1
|
+
{"version":3,"file":"NodesControls.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/NodesControls/NodesControls.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAC,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAC,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EACH,6CAA6C,EAC7C,oCAAoC,GACvC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAC5D,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAC,CAAC,EAAC,MAAM,WAAW,CAAC;AAC5B,OAAO,EAAC,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AAgBnE,MAAM,UAAU,aAAa,CAAC,EAC1B,iBAAiB,EACjB,aAAa,GAAG,EAAE,EAElB,kBAAkB,EAElB,eAAe,EACf,2BAA2B,EAE3B,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GACE;IACjB,MAAM,EACF,WAAW,EACX,YAAY,EACZ,cAAc,EACd,YAAY,EAEZ,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,GAC3B,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;IAC3C,MAAM,EAAC,aAAa,EAAE,yBAAyB,EAAC,GAAG,gBAAgB,EAAE,CAAC;IAEtE,MAAM,4BAA4B,GAAG,6CAA6C,EAAE,CAAC;IACrF,MAAM,cAAc,GAAG,sBAAsB,CAAC,aAAa,EAAE,4BAA4B,CAAC,CAAC;IAE3F,MAAM,oBAAoB,GAAG,oCAAoC,EAAE,CAAC;IACpE,MAAM,2BAA2B,GAAG,kBAAkB,IAAI,oBAAoB,CAAC;IAE/E,MAAM,yBAAyB,GAAG,CAAC,KAAe,EAAE,EAAE;QAClD,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,OAAO,CACH,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,MAAM,IACH,QAAQ,EAAE,uBAAuB,EACjC,WAAW,EAAE,IAAI,CAAC,6BAA6B,CAAC,EAChD,KAAK,EAAE,GAAG,EACV,KAAK,EAAE,WAAW,GACpB,EACD,4BAA4B,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxD,KAAC,aAAa,IAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,yBAAyB,GAAI,CAC/E,EACA,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxB,KAAC,YAAY,IAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,wBAAwB,GAAI,CAC5E,EACA,2BAA2B,CAAC,CAAC,CAAC,CAC3B,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,YAAE,IAAI,CAAC,0BAA0B,CAAC,GAAQ,EAChE,KAAC,cAAc,IAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,0BAA0B,GAAI,IAClE,CACpB,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,gBAAgB,IACb,UAAU,EAAE,GAAG,EACf,KAAK,EAAE,eAAe,EACtB,UAAU,QACV,QAAQ,EAAE,2BAA2B,EACrC,QAAQ,EAAE,KAAK,GACjB,EACD,iBAAiB,CAAC,CAAC,CAAC,CACjB,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,YAAE,IAAI,CAAC,+BAA+B,CAAC,GAAQ,EACrE,KAAC,MAAM,IACH,QAAQ,QACR,WAAW,EAAE,GAAG,EAChB,KAAK,EAAE,GAAG,EACV,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,EACvD,QAAQ,EAAE,yBAAyB,EACnC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,CAAC,CAAC,iBAAiB,CAAC,EAC/B,cAAc,EAAE,CAAC,CAAC,gBAAgB,CAAC,GACrC,IACW,CACpB,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,aAAa,IACV,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EACpB,OAAO,EAAE,eAAe,GAC1B,IACW,CACpB,CAAC;AACN,CAAC"}
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
2
2
|
import type { RenderControls } from '../../components/PaginatedTable';
|
3
3
|
import type { NodesPreparedEntity } from '../../store/reducers/nodes/types';
|
4
4
|
import type { ProblemFilterValue } from '../../store/reducers/settings/types';
|
5
|
-
import type { NodesGroupByField } from '../../types/api/nodes';
|
5
|
+
import type { NodesGroupByField, NodesPeerRole } from '../../types/api/nodes';
|
6
6
|
import { NodesUptimeFilterValues } from '../../utils/nodes';
|
7
7
|
import type { Column } from '../../utils/tableUtils/types';
|
8
8
|
interface NodesTableProps {
|
@@ -11,6 +11,7 @@ interface NodesTableProps {
|
|
11
11
|
searchValue: string;
|
12
12
|
problemFilter: ProblemFilterValue;
|
13
13
|
uptimeFilter: NodesUptimeFilterValues;
|
14
|
+
peerRoleFilter?: NodesPeerRole;
|
14
15
|
filterGroup?: string;
|
15
16
|
filterGroupBy?: NodesGroupByField;
|
16
17
|
columns: Column<NodesPreparedEntity>[];
|
@@ -18,5 +19,5 @@ interface NodesTableProps {
|
|
18
19
|
renderControls?: RenderControls;
|
19
20
|
initialEntitiesCount?: number;
|
20
21
|
}
|
21
|
-
export declare function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }: NodesTableProps): import("react/jsx-runtime").JSX.Element;
|
22
|
+
export declare function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, peerRoleFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }: NodesTableProps): import("react/jsx-runtime").JSX.Element;
|
22
23
|
export {};
|
@@ -7,7 +7,7 @@ import { NodesUptimeFilterValues } from '../../utils/nodes';
|
|
7
7
|
import { getNodes } from './getNodes';
|
8
8
|
import i18n from './i18n';
|
9
9
|
import { getRowClassName, renderPaginatedTableErrorMessage } from './shared';
|
10
|
-
export function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }) {
|
10
|
+
export function NodesTable({ path, database, searchValue, problemFilter, uptimeFilter, peerRoleFilter, filterGroup, filterGroupBy, columns, parentRef, renderControls, initialEntitiesCount, }) {
|
11
11
|
const tableFilters = React.useMemo(() => {
|
12
12
|
return {
|
13
13
|
path,
|
@@ -15,10 +15,20 @@ export function NodesTable({ path, database, searchValue, problemFilter, uptimeF
|
|
15
15
|
searchValue,
|
16
16
|
problemFilter,
|
17
17
|
uptimeFilter,
|
18
|
+
peerRoleFilter,
|
18
19
|
filterGroup,
|
19
20
|
filterGroupBy,
|
20
21
|
};
|
21
|
-
}, [
|
22
|
+
}, [
|
23
|
+
path,
|
24
|
+
database,
|
25
|
+
searchValue,
|
26
|
+
problemFilter,
|
27
|
+
uptimeFilter,
|
28
|
+
peerRoleFilter,
|
29
|
+
filterGroup,
|
30
|
+
filterGroupBy,
|
31
|
+
]);
|
22
32
|
const renderEmptyDataMessage = () => {
|
23
33
|
if (problemFilter !== 'All' || uptimeFilter !== NodesUptimeFilterValues.All) {
|
24
34
|
return _jsx(Illustration, { name: "thumbsUp", width: "200" });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NodesTable.js","sourceRoot":"","sources":["../../../src/containers/Nodes/NodesTable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,wBAAwB,EAAC,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAC,0BAA0B,EAAC,MAAM,yCAAyC,CAAC;AAInF,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,eAAe,EAAE,gCAAgC,EAAC,MAAM,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"NodesTable.js","sourceRoot":"","sources":["../../../src/containers/Nodes/NodesTable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,wBAAwB,EAAC,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAC,0BAA0B,EAAC,MAAM,yCAAyC,CAAC;AAInF,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAC,eAAe,EAAE,gCAAgC,EAAC,MAAM,UAAU,CAAC;AAqB3E,MAAM,UAAU,UAAU,CAAC,EACvB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,OAAO,EACP,SAAS,EACT,cAAc,EACd,oBAAoB,GACN;IACd,MAAM,YAAY,GAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClD,OAAO;YACH,IAAI;YACJ,QAAQ;YACR,WAAW;YACX,aAAa;YACb,YAAY;YACZ,cAAc;YACd,WAAW;YACX,aAAa;SAChB,CAAC;IACN,CAAC,EAAE;QACC,IAAI;QACJ,QAAQ;QACR,WAAW;QACX,aAAa;QACb,YAAY;QACZ,cAAc;QACd,WAAW;QACX,aAAa;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAChC,IAAI,aAAa,KAAK,KAAK,IAAI,YAAY,KAAK,uBAAuB,CAAC,GAAG,EAAE,CAAC;YAC1E,OAAO,KAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,GAAG,CAAC;QACxD,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,wBAAwB,IACrB,iBAAiB,EAAE,0BAA0B,EAC7C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,QAAQ,EACnB,KAAK,EAAE,EAAE,EACT,oBAAoB,EAAE,oBAAoB,EAC1C,cAAc,EAAE,cAAc,EAC9B,kBAAkB,EAAE,gCAAgC,EACpD,sBAAsB,EAAE,sBAAsB,EAC9C,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,YAAY,EACrB,SAAS,EAAC,OAAO,GACnB,CACL,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import type { NodesPeerRole } from '../../../types/api/nodes';
|
2
|
+
interface PeerRoleFilterProps {
|
3
|
+
value?: NodesPeerRole;
|
4
|
+
onChange: (value: NodesPeerRole) => void;
|
5
|
+
}
|
6
|
+
export declare function PeerRoleFilter({ value, onChange }: PeerRoleFilterProps): import("react/jsx-runtime").JSX.Element;
|
7
|
+
export {};
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
2
|
+
import { RadioButton } from '@gravity-ui/uikit';
|
3
|
+
import { NODES_PEER_ROLES, NODES_PEER_ROLES_TITLES } from './utils';
|
4
|
+
export function PeerRoleFilter({ value = 'database', onChange }) {
|
5
|
+
return (_jsx(RadioButton, { value: value, onUpdate: onChange, children: NODES_PEER_ROLES.map((role) => {
|
6
|
+
return (_jsx(RadioButton.Option, { value: role, children: NODES_PEER_ROLES_TITLES[role] }, role));
|
7
|
+
}) }));
|
8
|
+
}
|
9
|
+
//# sourceMappingURL=PeerRoleFilter.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"PeerRoleFilter.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/PeerRoleFilter/PeerRoleFilter.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAI9C,OAAO,EAAC,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAOlE,MAAM,UAAU,cAAc,CAAC,EAAC,KAAK,GAAG,UAAU,EAAE,QAAQ,EAAsB;IAC9E,OAAO,CACH,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,YACxC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3B,OAAO,CACH,KAAC,WAAW,CAAC,MAAM,IAAY,KAAK,EAAE,IAAI,YACrC,uBAAuB,CAAC,IAAI,CAAC,IADT,IAAI,CAER,CACxB,CAAC;QACN,CAAC,CAAC,GACQ,CACjB,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import type { NodesPeerRole } from '../../../types/api/nodes';
|
2
|
+
export declare const NODES_PEER_ROLES: NodesPeerRole[];
|
3
|
+
export declare const NODES_PEER_ROLES_TITLES: Record<NodesPeerRole, string>;
|
4
|
+
export declare function parseNodesPeerRoleFilter(paramToParse: unknown): NodesPeerRole | undefined;
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import i18n from '../i18n';
|
2
|
+
export const NODES_PEER_ROLES = ['database', 'static', 'other', 'any'];
|
3
|
+
export const NODES_PEER_ROLES_TITLES = {
|
4
|
+
get database() {
|
5
|
+
return i18n('database');
|
6
|
+
},
|
7
|
+
get static() {
|
8
|
+
return i18n('static');
|
9
|
+
},
|
10
|
+
get other() {
|
11
|
+
return i18n('other');
|
12
|
+
},
|
13
|
+
get any() {
|
14
|
+
return i18n('any');
|
15
|
+
},
|
16
|
+
};
|
17
|
+
export function parseNodesPeerRoleFilter(paramToParse) {
|
18
|
+
return NODES_PEER_ROLES.find((peerRoleParam) => peerRoleParam === paramToParse);
|
19
|
+
}
|
20
|
+
//# sourceMappingURL=utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/PeerRoleFilter/utils.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,MAAM,CAAC,MAAM,gBAAgB,GAAoB,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,uBAAuB,GAAkC;IAClE,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACJ,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,YAAqB;IAC1D,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,KAAK,YAAY,CAAC,CAAC;AACpF,CAAC"}
|
@@ -7,13 +7,13 @@ export function getNodesColumns(params) {
|
|
7
7
|
getNodeNameColumn(),
|
8
8
|
getDataCenterColumn(),
|
9
9
|
getRackColumn(),
|
10
|
-
getVersionColumn(),
|
11
10
|
getUptimeColumn(),
|
12
|
-
getMemoryColumn(),
|
13
|
-
getRAMColumn(),
|
14
|
-
getPoolsColumn(),
|
15
11
|
getCpuColumn(),
|
12
|
+
getPoolsColumn(),
|
13
|
+
getRAMColumn(),
|
14
|
+
getMemoryColumn(),
|
16
15
|
getLoadAverageColumn(),
|
16
|
+
getVersionColumn(),
|
17
17
|
getTabletsColumn(params),
|
18
18
|
];
|
19
19
|
return columns.map((column) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/columns/columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACnB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4CAA4C,CAAC;AAKjF,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,MAAM,OAAO,GAAG;QACZ,eAAe,EAAuB;QACtC,aAAa,CAAsB,MAAM,CAAC;QAC1C,iBAAiB,EAAuB;QACxC,mBAAmB,EAAuB;QAC1C,aAAa,EAAuB;QACpC,
|
1
|
+
{"version":3,"file":"columns.js","sourceRoot":"","sources":["../../../../src/containers/Nodes/columns/columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACnB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,4CAA4C,CAAC;AAKjF,MAAM,UAAU,eAAe,CAAC,MAA6B;IACzD,MAAM,OAAO,GAAG;QACZ,eAAe,EAAuB;QACtC,aAAa,CAAsB,MAAM,CAAC;QAC1C,iBAAiB,EAAuB;QACxC,mBAAmB,EAAuB;QAC1C,aAAa,EAAuB;QACpC,eAAe,EAAuB;QACtC,YAAY,EAAuB;QACnC,cAAc,EAAuB;QACrC,YAAY,EAAuB;QACnC,eAAe,EAAuB;QACtC,oBAAoB,EAAuB;QAC3C,gBAAgB,EAAuB;QACvC,gBAAgB,CAAsB,MAAM,CAAC;KAChD,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1B,OAAO,EAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACP,CAAC"}
|