ydb-embedded-ui 19.0.0 → 20.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -0
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js +15 -2
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.js.map +1 -1
- package/dist/components/DiskStateProgressBar/DiskStateProgressBar.scss +77 -10
- package/dist/components/FullNodeViewer/i18n/index.d.ts +1 -1
- package/dist/components/QueryExecutionLabel/i18n/index.d.ts +1 -1
- package/dist/components/StorageGroupInfo/i18n/index.d.ts +1 -1
- package/dist/containers/App/Content.js +2 -2
- package/dist/containers/App/Content.js.map +1 -1
- package/dist/containers/App/NavigationWrapper.js +2 -15
- package/dist/containers/App/NavigationWrapper.js.map +1 -1
- package/dist/containers/Authentication/Authentication.js +22 -5
- package/dist/containers/Authentication/Authentication.js.map +1 -1
- package/dist/containers/Authentication/Authentication.scss +4 -0
- package/dist/containers/Authentication/i18n/en.json +2 -1
- package/dist/containers/Authentication/i18n/index.d.ts +1 -1
- package/dist/containers/Authentication/utils.d.ts +8 -0
- package/dist/containers/Authentication/utils.js +32 -0
- package/dist/containers/Authentication/utils.js.map +1 -1
- package/dist/containers/Cluster/Cluster.js +3 -4
- package/dist/containers/Cluster/Cluster.js.map +1 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.d.ts +1 -1
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.js +0 -6
- package/dist/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.js.map +1 -1
- package/dist/containers/Configs/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/Disks/Disks.js +5 -3
- package/dist/containers/Storage/Disks/Disks.js.map +1 -1
- package/dist/containers/Storage/PDisk/PDisk.d.ts +3 -1
- package/dist/containers/Storage/PDisk/PDisk.js +7 -18
- package/dist/containers/Storage/PDisk/PDisk.js.map +1 -1
- package/dist/containers/Storage/PDisk/PDiskVDisks.d.ts +13 -0
- package/dist/containers/Storage/PDisk/PDiskVDisks.js +20 -0
- package/dist/containers/Storage/PDisk/PDiskVDisks.js.map +1 -0
- package/dist/containers/Storage/PaginatedStorage.js +2 -1
- package/dist/containers/Storage/PaginatedStorage.js.map +1 -1
- package/dist/containers/Storage/PaginatedStorageGroupsTable/columns/columns.js +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js +40 -4
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.scss +8 -4
- package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.d.ts +2 -4
- package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.js +3 -17
- package/dist/containers/Storage/StorageExpertModePanel/components/CompactionLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.js +16 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDeviceLegend.d.ts +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDeviceLegend.js +7 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDeviceLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.js +17 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.js +23 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskMaintenanceLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskStateLegend.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskStateLegend.js +23 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/PDiskStateLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.d.ts +3 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js +4 -4
- package/dist/containers/Storage/StorageExpertModePanel/components/SpaceLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/StateLegend.js +3 -3
- package/dist/containers/Storage/StorageExpertModePanel/components/StateLegend.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.d.ts +6 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.js +21 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/StatusPairLegend.js.map +1 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.d.ts +3 -2
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js +13 -7
- package/dist/containers/Storage/StorageExpertModePanel/components/getSpaceLegendSelection.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/index.d.ts +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/index.js +5 -0
- package/dist/containers/Storage/StorageExpertModePanel/components/index.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.d.ts +2 -6
- package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js +10 -6
- package/dist/containers/Storage/StorageExpertModePanel/components/useSpaceLegendSelection.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/constants.d.ts +19 -0
- package/dist/containers/Storage/StorageExpertModePanel/constants.js +10 -0
- package/dist/containers/Storage/StorageExpertModePanel/constants.js.map +1 -1
- package/dist/containers/Storage/StorageExpertModePanel/i18n/en.json +23 -0
- package/dist/containers/Storage/StorageExpertModePanel/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/i18n/en.json +1 -1
- package/dist/containers/Storage/i18n/index.d.ts +1 -1
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.d.ts +2 -0
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.js +142 -0
- package/dist/containers/Storage/useStoragePDiskDisplayStateGetter.js.map +1 -0
- package/dist/containers/Storage/useStorageQueryParams.d.ts +5 -1
- package/dist/containers/Storage/useStorageQueryParams.js +26 -2
- package/dist/containers/Storage/useStorageQueryParams.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js +2 -3
- package/dist/containers/Tenant/Diagnostics/Network/NetworkWrapper.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.d.ts +2 -1
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.js +6 -2
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/DatabaseInfo.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/utils.d.ts +2 -0
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/utils.js +9 -0
- package/dist/containers/Tenant/Diagnostics/Overview/DatabaseInfo/utils.js.map +1 -0
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js +1 -1
- package/dist/containers/Tenant/Diagnostics/Overview/Overview.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.js +1 -4
- package/dist/containers/Tenant/Diagnostics/TenantOverview/MetricsTabs/MetricsTabs.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js +1 -6
- package/dist/containers/Tenant/Diagnostics/TenantOverview/TenantNetwork/TenantNetwork.js.map +1 -1
- package/dist/containers/Tenant/Diagnostics/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js +3 -4
- package/dist/containers/Tenant/Query/QueryResult/QueryResultViewer.js.map +1 -1
- package/dist/containers/Tenant/Query/QueryResult/utils.d.ts +2 -0
- package/dist/containers/Tenant/Query/QueryResult/utils.js +9 -0
- package/dist/containers/Tenant/Query/QueryResult/utils.js.map +1 -0
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js +4 -15
- package/dist/containers/Tenant/Query/QuerySettingsDialog/QuerySettingsDialog.js.map +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/en.json +0 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/index.d.ts +1 -1
- package/dist/containers/Tenant/Query/QuerySettingsDialog/i18n/ru.json +0 -1
- package/dist/containers/Tenants/TenantsTable.js +21 -26
- package/dist/containers/Tenants/TenantsTable.js.map +1 -1
- package/dist/containers/UserSettings/i18n/en.json +1 -4
- package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
- package/dist/containers/UserSettings/settings.d.ts +3 -8
- package/dist/containers/UserSettings/settings.js +11 -58
- package/dist/containers/UserSettings/settings.js.map +1 -1
- package/dist/lib.d.ts +1 -1
- package/dist/lib.js.map +1 -1
- package/dist/store/reducers/capabilities/hooks.d.ts +1 -0
- package/dist/store/reducers/capabilities/hooks.js +5 -0
- package/dist/store/reducers/capabilities/hooks.js.map +1 -1
- package/dist/store/reducers/query/api.js +4 -0
- package/dist/store/reducers/query/api.js.map +1 -1
- package/dist/store/reducers/query/types.d.ts +2 -1
- package/dist/store/reducers/settings/constants.d.ts +2 -8
- package/dist/store/reducers/settings/constants.js +2 -8
- package/dist/store/reducers/settings/constants.js.map +1 -1
- package/dist/store/reducers/storage/prepareGroupsDisks.d.ts +3 -1
- package/dist/store/reducers/storage/prepareGroupsDisks.js +3 -1
- package/dist/store/reducers/storage/prepareGroupsDisks.js.map +1 -1
- package/dist/store/reducers/tenant/tenant.d.ts +1 -0
- package/dist/store/reducers/tenant/tenant.js +1 -0
- package/dist/store/reducers/tenant/tenant.js.map +1 -1
- package/dist/styles/mixins.scss +8 -8
- package/dist/styles/space-colors.scss +48 -4
- package/dist/types/api/capabilities.d.ts +1 -1
- package/dist/types/api/pdisk.d.ts +2 -0
- package/dist/types/api/storage.d.ts +2 -1
- package/dist/types/api/storage.js.map +1 -1
- package/dist/types/api/tenant.d.ts +2 -0
- package/dist/types/api/tenant.js.map +1 -1
- package/dist/uiFactory/types.d.ts +5 -0
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.js +1 -5
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/disks/displayState.d.ts +7 -1
- package/dist/utils/disks/displayState.js +11 -0
- package/dist/utils/disks/displayState.js.map +1 -1
- package/dist/utils/disks/helpers.d.ts +2 -2
- package/dist/utils/disks/iconCalculators.d.ts +2 -0
- package/dist/utils/disks/iconCalculators.js +24 -19
- package/dist/utils/disks/iconCalculators.js.map +1 -1
- package/dist/utils/disks/pdiskState.d.ts +8 -0
- package/dist/utils/disks/pdiskState.js +165 -0
- package/dist/utils/disks/pdiskState.js.map +1 -0
- package/dist/utils/disks/severityCalculators.d.ts +6 -5
- package/dist/utils/disks/severityCalculators.js +17 -32
- package/dist/utils/disks/severityCalculators.js.map +1 -1
- package/dist/utils/disks/types.d.ts +3 -1
- package/dist/utils/hooks/useChangedQuerySettings.d.ts +2 -2
- package/dist/utils/hooks/useQueryExecutionSettings.d.ts +11 -2
- package/dist/utils/hooks/useQueryExecutionSettings.js +2 -18
- package/dist/utils/hooks/useQueryExecutionSettings.js.map +1 -1
- package/dist/utils/hooks/useQueryStreamingSetting.js +1 -8
- package/dist/utils/hooks/useQueryStreamingSetting.js.map +1 -1
- package/package.json +2 -2
- package/dist/components/NetworkTable/hooks.d.ts +0 -2
- package/dist/components/NetworkTable/hooks.js +0 -14
- package/dist/components/NetworkTable/hooks.js.map +0 -1
|
@@ -9,9 +9,8 @@ import { DrawerContextProvider } from '../../components/Drawer/DrawerContext';
|
|
|
9
9
|
import { EntityStatus } from '../../components/EntityStatus/EntityStatus';
|
|
10
10
|
import { InternalLink } from '../../components/InternalLink';
|
|
11
11
|
import { NetworkTable } from '../../components/NetworkTable/NetworkTable';
|
|
12
|
-
import { useShouldShowClusterNetworkTable } from '../../components/NetworkTable/hooks';
|
|
13
12
|
import routes, { getClusterPath, getLocationObjectFromHref } from '../../routes';
|
|
14
|
-
import { useClusterDashboardAvailable, useConfigAvailable, } from '../../store/reducers/capabilities/hooks';
|
|
13
|
+
import { useClusterDashboardAvailable, useConfigAvailable, useNodesHandlerHasWorkingClusterNetworkStats, } from '../../store/reducers/capabilities/hooks';
|
|
15
14
|
import { INITIAL_DEFAULT_CLUSTER_TAB, clusterApi, selectClusterTabletsWithFqdn, selectClusterTitle, updateDefaultClusterTab, useClusterBaseInfo, } from '../../store/reducers/cluster/cluster';
|
|
16
15
|
import { setHeaderBreadcrumbs } from '../../store/reducers/header/header';
|
|
17
16
|
import { EFlag } from '../../types/api/enums';
|
|
@@ -38,7 +37,7 @@ export function Cluster({ additionalClusterProps, additionalTenantsProps }) {
|
|
|
38
37
|
var _a;
|
|
39
38
|
const container = React.useRef(null);
|
|
40
39
|
const isClusterDashboardAvailable = useClusterDashboardAvailable();
|
|
41
|
-
const shouldShowNetworkTable =
|
|
40
|
+
const shouldShowNetworkTable = useNodesHandlerHasWorkingClusterNetworkStats();
|
|
42
41
|
const shouldShowEventsTab = useShouldShowEventsTab();
|
|
43
42
|
const isViewerUser = useIsViewerUser();
|
|
44
43
|
const isConfigsAvailable = useConfigAvailable();
|
|
@@ -103,7 +102,7 @@ function useClusterTab() {
|
|
|
103
102
|
return isClusterTab(savedDefaultTab) ? savedDefaultTab : undefined;
|
|
104
103
|
}, [savedDefaultTab]);
|
|
105
104
|
const defaultTab = savedDefaultTabValidated !== null && savedDefaultTabValidated !== void 0 ? savedDefaultTabValidated : defaultTabFromStore;
|
|
106
|
-
const shouldShowNetworkTable =
|
|
105
|
+
const shouldShowNetworkTable = useNodesHandlerHasWorkingClusterNetworkStats();
|
|
107
106
|
const shouldShowEventsTab = useShouldShowEventsTab();
|
|
108
107
|
const match = useRouteMatch(routes.cluster);
|
|
109
108
|
const { activeTab: activeTabFromParams } = (match === null || match === void 0 ? void 0 : match.params) || {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cluster.js","sourceRoot":"","sources":["../../../src/containers/Cluster/Cluster.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAC,kBAAkB,EAAC,MAAM,wDAAwD,CAAC;AAC1F,OAAO,EAAC,qBAAqB,EAAC,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAC,YAAY,EAAC,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,4CAA4C,CAAC;AACxE,OAAO,
|
|
1
|
+
{"version":3,"file":"Cluster.js","sourceRoot":"","sources":["../../../src/containers/Cluster/Cluster.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ interface ClusterMetricsNetworkProps extends ClusterMetricsBaseProps {
|
|
|
3
3
|
percentsValue: number;
|
|
4
4
|
throughput?: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function ClusterMetricsNetwork({ percentsValue, throughput, collapsed, ...rest }: ClusterMetricsNetworkProps): import("react/jsx-runtime").JSX.Element
|
|
6
|
+
export declare function ClusterMetricsNetwork({ percentsValue, throughput, collapsed, ...rest }: ClusterMetricsNetworkProps): import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export {};
|
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { SETTING_KEYS } from '../../../../store/reducers/settings/constants';
|
|
3
|
-
import { useSetting } from '../../../../utils/hooks/useSetting';
|
|
4
2
|
import { formatNetworkMetric } from '../../../../utils/metrics/formatMetricLegend';
|
|
5
3
|
import { calculateBaseDiagramValues } from '../../../../utils/metrics/getDiagramValues';
|
|
6
4
|
import i18n from '../../i18n';
|
|
7
5
|
import { ClusterMetricsCardContent } from './ClusterMetricsCard';
|
|
8
6
|
export function ClusterMetricsNetwork({ percentsValue, throughput, collapsed, ...rest }) {
|
|
9
|
-
const [showNetworkUtilization] = useSetting(SETTING_KEYS.SHOW_NETWORK_UTILIZATION);
|
|
10
|
-
if (!showNetworkUtilization) {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
7
|
const { status, percents, progressValue } = calculateBaseDiagramValues({
|
|
14
8
|
fillWidth: percentsValue * 100,
|
|
15
9
|
...rest,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterMetricsNetwork.js","sourceRoot":"","sources":["../../../../../src/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"ClusterMetricsNetwork.js","sourceRoot":"","sources":["../../../../../src/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAC,0BAA0B,EAAC,MAAM,4CAA4C,CAAC;AACtF,OAAO,IAAI,MAAM,YAAY,CAAC;AAG9B,OAAO,EAAC,yBAAyB,EAAC,MAAM,sBAAsB,CAAC;AAO/D,MAAM,UAAU,qBAAqB,CAAC,EAClC,aAAa,EACb,UAAU,EACV,SAAS,EACT,GAAG,IAAI,EACkB;IACzB,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAC,GAAG,0BAA0B,CAAC;QACjE,SAAS,EAAE,aAAa,GAAG,GAAG;QAC9B,GAAG,IAAI;KACV,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAE/C,OAAO,CACH,KAAC,yBAAyB,IACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC;YAClC,IAAI,EAAE,IAAI,CAAC,6BAA6B,CAAC;SAC5C,GACH,CACL,CAAC;AACN,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: (key: "disabled" | "
|
|
1
|
+
declare const _default: (key: "disabled" | "no-data" | "enabled" | "td-feature-flag" | "td-default" | "td-current" | "flag-touched" | "search-placeholder" | "search-empty" | "title_current" | "title_startup" | "title_features" | "action_copy-config", params?: import("@gravity-ui/i18n").Params) => string;
|
|
2
2
|
export default _default;
|
|
@@ -5,6 +5,7 @@ import { VDiskWithDonorsStack } from '../../../components/VDisk/VDiskWithDonorsS
|
|
|
5
5
|
import { cn } from '../../../utils/cn';
|
|
6
6
|
import { PDisk } from '../PDisk';
|
|
7
7
|
import { DISKS_POPUP_DEBOUNCE_TIMEOUT } from '../shared';
|
|
8
|
+
import { useStoragePDiskDisplayStateGetter } from '../useStoragePDiskDisplayStateGetter';
|
|
8
9
|
import { useStorageVDiskDisplayStateGetter } from '../useStorageVDiskDisplayStateGetter';
|
|
9
10
|
import { isPdiskActive, isVdiskActive, useVDisksWithDCMargins } from '../utils';
|
|
10
11
|
import { calculateCompactVDiskWidths } from './calculateCompactVDiskWidths';
|
|
@@ -14,6 +15,7 @@ const b = cn('ydb-storage-disks');
|
|
|
14
15
|
export function Disks({ vDisks = [], viewContext, erasure, withIcon, isAllVDisksLayout, }) {
|
|
15
16
|
const vDisksWithDCMargins = useVDisksWithDCMargins(vDisks, erasure);
|
|
16
17
|
const getVDiskDisplayState = useStorageVDiskDisplayStateGetter();
|
|
18
|
+
const getPDiskDisplayState = useStoragePDiskDisplayStateGetter();
|
|
17
19
|
const [highlightedVDisk, setHighlightedVDisk] = React.useState();
|
|
18
20
|
const { theme: { spaceBaseSize }, } = useLayoutContext();
|
|
19
21
|
const compactVDiskWidths = React.useMemo(() => calculateCompactVDiskWidths(vDisks, spaceBaseSize), [spaceBaseSize, vDisks]);
|
|
@@ -25,7 +27,7 @@ export function Disks({ vDisks = [], viewContext, erasure, withIcon, isAllVDisks
|
|
|
25
27
|
: VDISKS_CONTAINER_WIDTH;
|
|
26
28
|
return (_jsxs("div", { className: b(null), children: [_jsx(Flex, { direction: "row", gap: 1, grow: true, style: { width: vDisksContainerWidth }, children: vDisks === null || vDisks === void 0 ? void 0 : vDisks.map((vDisk, index) => (_jsx(VDiskItem, { vDisk: vDisk, inactive: !isVdiskActive(vDisk, viewContext), highlightedVDisk: highlightedVDisk, setHighlightedVDisk: setHighlightedVDisk, compactVDiskWidth: compactVDiskWidths[index], withIcon: withIcon, getDisplayState: getVDiskDisplayState, isAllVDisksLayout: isAllVDisksLayout }, vDisk.StringifiedId || index))) }), _jsx("div", { className: b('pdisks-wrapper'), children: vDisks === null || vDisks === void 0 ? void 0 : vDisks.map((vDisk, index) => {
|
|
27
29
|
var _a;
|
|
28
|
-
return (_jsx(PDiskItem, { vDisk: vDisk, viewContext: viewContext, highlightedVDisk: highlightedVDisk, setHighlightedVDisk: setHighlightedVDisk, withDCMargin: vDisksWithDCMargins.includes(index), withIcon: withIcon }, ((_a = vDisk === null || vDisk === void 0 ? void 0 : vDisk.PDisk) === null || _a === void 0 ? void 0 : _a.StringifiedId) || index));
|
|
30
|
+
return (_jsx(PDiskItem, { vDisk: vDisk, viewContext: viewContext, highlightedVDisk: highlightedVDisk, setHighlightedVDisk: setHighlightedVDisk, withDCMargin: vDisksWithDCMargins.includes(index), withIcon: withIcon, getDisplayState: getPDiskDisplayState }, ((_a = vDisk === null || vDisk === void 0 ? void 0 : vDisk.PDisk) === null || _a === void 0 ? void 0 : _a.StringifiedId) || index));
|
|
29
31
|
}) })] }));
|
|
30
32
|
}
|
|
31
33
|
function VDiskItem({ vDisk, highlightedVDisk, inactive, setHighlightedVDisk, compactVDiskWidth, withIcon, getDisplayState, isAllVDisksLayout, }) {
|
|
@@ -36,12 +38,12 @@ function VDiskItem({ vDisk, highlightedVDisk, inactive, setHighlightedVDisk, com
|
|
|
36
38
|
: { width: compactVDiskWidth, flexBasis: compactVDiskWidth };
|
|
37
39
|
return (_jsxs("div", { style: style, className: b('vdisk-item', { all: isAllVDisksLayout }), children: [isAllVDisksLayout ? (_jsx("div", { "aria-hidden": true, className: b('vdisk-size-indicator'), style: { width: compactVDiskWidth } })) : null, _jsx(VDiskWithDonorsStack, { data: vDiskToShow, compact: !isAllVDisksLayout, withIcon: withIcon, inactive: inactive, delayOpen: DISKS_POPUP_DEBOUNCE_TIMEOUT, delayClose: DISKS_POPUP_DEBOUNCE_TIMEOUT, highlightedVDisk: highlightedVDisk, setHighlightedVDisk: setHighlightedVDisk, progressBarClassName: b('vdisk-progress-bar'), getDisplayState: getDisplayState })] }));
|
|
38
40
|
}
|
|
39
|
-
function PDiskItem({ vDisk, viewContext, highlightedVDisk, setHighlightedVDisk, withDCMargin, withIcon, }) {
|
|
41
|
+
function PDiskItem({ vDisk, viewContext, highlightedVDisk, setHighlightedVDisk, withDCMargin, withIcon, getDisplayState, }) {
|
|
40
42
|
const vDiskId = vDisk.StringifiedId;
|
|
41
43
|
const isHighlighted = highlightedVDisk === vDiskId;
|
|
42
44
|
if (!vDisk.PDisk) {
|
|
43
45
|
return null;
|
|
44
46
|
}
|
|
45
|
-
return (_jsx(PDisk, { className: b('pdisk-item', { ['with-dc-margin']: withDCMargin }), progressBarClassName: b('pdisk-progress-bar'), data: vDisk.PDisk, inactive: !isPdiskActive(vDisk.PDisk, viewContext), showPopup: isHighlighted, delayOpen: DISKS_POPUP_DEBOUNCE_TIMEOUT, delayClose: DISKS_POPUP_DEBOUNCE_TIMEOUT, onShowPopup: () => setHighlightedVDisk === null || setHighlightedVDisk === void 0 ? void 0 : setHighlightedVDisk(vDiskId), onHidePopup: () => setHighlightedVDisk === null || setHighlightedVDisk === void 0 ? void 0 : setHighlightedVDisk(undefined), withIcon: withIcon, highlighted: isHighlighted }));
|
|
47
|
+
return (_jsx(PDisk, { className: b('pdisk-item', { ['with-dc-margin']: withDCMargin }), progressBarClassName: b('pdisk-progress-bar'), data: vDisk.PDisk, inactive: !isPdiskActive(vDisk.PDisk, viewContext), showPopup: isHighlighted, delayOpen: DISKS_POPUP_DEBOUNCE_TIMEOUT, delayClose: DISKS_POPUP_DEBOUNCE_TIMEOUT, onShowPopup: () => setHighlightedVDisk === null || setHighlightedVDisk === void 0 ? void 0 : setHighlightedVDisk(vDiskId), onHidePopup: () => setHighlightedVDisk === null || setHighlightedVDisk === void 0 ? void 0 : setHighlightedVDisk(undefined), withIcon: withIcon, highlighted: isHighlighted, getDisplayState: getDisplayState }));
|
|
46
48
|
}
|
|
47
49
|
//# sourceMappingURL=Disks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Disks.js","sourceRoot":"","sources":["../../../../src/containers/Storage/Disks/Disks.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,IAAI,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAC,EAAE,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Disks.js","sourceRoot":"","sources":["../../../../src/containers/Storage/Disks/Disks.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PDiskDisplayStateGetter } from '../../../utils/disks/displayState';
|
|
1
2
|
import type { PreparedPDisk, PreparedVDisk } from '../../../utils/disks/types';
|
|
2
3
|
import type { StorageViewContext } from '../types';
|
|
3
4
|
import './PDisk.scss';
|
|
@@ -18,6 +19,7 @@ interface PDiskProps {
|
|
|
18
19
|
highlighted?: boolean;
|
|
19
20
|
highlightedDisk?: string;
|
|
20
21
|
setHighlightedDisk?: (id?: string) => void;
|
|
22
|
+
getDisplayState?: PDiskDisplayStateGetter;
|
|
21
23
|
}
|
|
22
|
-
export declare const PDisk: ({ data, vDisks, showPopup, onShowPopup, onHidePopup, className, progressBarClassName, viewContext, width, delayOpen, delayClose, withIcon, inactive, highlighted, highlightedDisk, setHighlightedDisk, }: PDiskProps) => import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export declare const PDisk: ({ data, vDisks, showPopup, onShowPopup, onHidePopup, className, progressBarClassName, viewContext, width, delayOpen, delayClose, withIcon, inactive, highlighted, highlightedDisk, setHighlightedDisk, getDisplayState, }: PDiskProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
25
|
export {};
|
|
@@ -5,36 +5,25 @@ import { DiskStateProgressBar } from '../../../components/DiskStateProgressBar/D
|
|
|
5
5
|
import { HoverPopup } from '../../../components/HoverPopup/HoverPopup';
|
|
6
6
|
import { InternalLink } from '../../../components/InternalLink';
|
|
7
7
|
import { PDiskPopup } from '../../../components/PDiskPopup/PDiskPopup';
|
|
8
|
-
import { VDisk } from '../../../components/VDisk/VDisk';
|
|
9
8
|
import { getPDiskPagePath } from '../../../routes';
|
|
10
9
|
import { cn } from '../../../utils/cn';
|
|
10
|
+
import { getDefaultPDiskDisplayState } from '../../../utils/disks/displayState';
|
|
11
11
|
import i18n from '../i18n';
|
|
12
12
|
import { DISKS_POPUP_DEBOUNCE_TIMEOUT } from '../shared';
|
|
13
|
-
import {
|
|
13
|
+
import { PDiskVDisks } from './PDiskVDisks';
|
|
14
14
|
import './PDisk.scss';
|
|
15
15
|
const b = cn('pdisk-storage');
|
|
16
|
-
export const PDisk = ({ data = {}, vDisks, showPopup, onShowPopup, onHidePopup, className, progressBarClassName, viewContext, width, delayOpen = DISKS_POPUP_DEBOUNCE_TIMEOUT, delayClose = DISKS_POPUP_DEBOUNCE_TIMEOUT, withIcon, inactive, highlighted, highlightedDisk, setHighlightedDisk, }) => {
|
|
16
|
+
export const PDisk = ({ data = {}, vDisks, showPopup, onShowPopup, onHidePopup, className, progressBarClassName, viewContext, width, delayOpen = DISKS_POPUP_DEBOUNCE_TIMEOUT, delayClose = DISKS_POPUP_DEBOUNCE_TIMEOUT, withIcon, inactive, highlighted, highlightedDisk, setHighlightedDisk, getDisplayState, }) => {
|
|
17
|
+
var _a;
|
|
17
18
|
const { NodeId, PDiskId } = data;
|
|
18
19
|
const pDiskIdsDefined = !isNil(NodeId) && !isNil(PDiskId);
|
|
19
20
|
const anchorRef = React.useRef(null);
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
return null;
|
|
23
|
-
}
|
|
24
|
-
return (_jsx("div", { className: b('vdisks'), children: vDisks.map((vdisk) => {
|
|
25
|
-
const vDiskId = vdisk.StringifiedId;
|
|
26
|
-
const vDiskHighlighted = highlightedDisk === vDiskId;
|
|
27
|
-
return (_jsx("div", { className: b('vdisks-item'), style: {
|
|
28
|
-
// 1 is small enough for empty disks to be of the minimum width
|
|
29
|
-
// but if all of them are empty, `flex-grow: 1` would size them evenly
|
|
30
|
-
flexGrow: Number(vdisk.AllocatedSize) || 1,
|
|
31
|
-
}, children: _jsx(VDisk, { withIcon: withIcon, data: vdisk, inactive: !isVdiskActive(vdisk, viewContext), compact: true, delayOpen: delayOpen, delayClose: delayClose, showPopup: vDiskHighlighted, onShowPopup: () => setHighlightedDisk === null || setHighlightedDisk === void 0 ? void 0 : setHighlightedDisk(vDiskId), onHidePopup: () => setHighlightedDisk === null || setHighlightedDisk === void 0 ? void 0 : setHighlightedDisk(undefined), highlighted: vDiskHighlighted }) }, vDiskId));
|
|
32
|
-
}) }));
|
|
33
|
-
};
|
|
21
|
+
const displayState = React.useMemo(() => (getDisplayState !== null && getDisplayState !== void 0 ? getDisplayState : getDefaultPDiskDisplayState)(data), [data, getDisplayState]);
|
|
22
|
+
const noDataPlaceholder = displayState.showNoDataPlaceholder === false ? undefined : i18n('no-data');
|
|
34
23
|
let pDiskPath;
|
|
35
24
|
if (pDiskIdsDefined) {
|
|
36
25
|
pDiskPath = getPDiskPagePath(PDiskId, NodeId);
|
|
37
26
|
}
|
|
38
|
-
return (_jsxs("div", { className: b(null, className), ref: anchorRef, style: { width }, children: [
|
|
27
|
+
return (_jsxs("div", { className: b(null, className), ref: anchorRef, style: { width: (_a = displayState.width) !== null && _a !== void 0 ? _a : width }, children: [_jsx(PDiskVDisks, { vDisks: vDisks, viewContext: viewContext, withIcon: withIcon, delayOpen: delayOpen, delayClose: delayClose, highlightedDisk: highlightedDisk, setHighlightedDisk: setHighlightedDisk }), _jsx(HoverPopup, { showPopup: showPopup, offset: { mainAxis: 2, crossAxis: 0 }, anchorRef: anchorRef, onShowPopup: onShowPopup, onHidePopup: onHidePopup, renderPopupContent: () => _jsx(PDiskPopup, { data: data }), delayOpen: delayOpen, delayClose: delayClose, children: _jsx(InternalLink, { to: pDiskPath, className: b('content'), children: _jsx(DiskStateProgressBar, { withIcon: withIcon, diskAllocatedPercent: displayState.allocatedPercent, severity: displayState.severity, icon: displayState.icon, modeModifier: displayState.modeModifier, className: progressBarClassName, inactive: inactive, highlighted: highlighted, isLegendInactive: displayState.isLegendInactive, noDataPlaceholder: noDataPlaceholder }) }) })] }));
|
|
39
28
|
};
|
|
40
29
|
//# sourceMappingURL=PDisk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PDisk.js","sourceRoot":"","sources":["../../../../src/containers/Storage/PDisk/PDisk.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,KAAK,EAAC,MAAM,QAAQ,CAAC;AAE7B,OAAO,EAAC,oBAAoB,EAAC,MAAM,+DAA+D,CAAC;AACnG,OAAO,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"PDisk.js","sourceRoot":"","sources":["../../../../src/containers/Storage/PDisk/PDisk.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PreparedVDisk } from '../../../utils/disks/types';
|
|
2
|
+
import type { StorageViewContext } from '../types';
|
|
3
|
+
interface PDiskVDisksProps {
|
|
4
|
+
vDisks?: PreparedVDisk[];
|
|
5
|
+
viewContext?: StorageViewContext;
|
|
6
|
+
withIcon?: boolean;
|
|
7
|
+
delayOpen: number;
|
|
8
|
+
delayClose: number;
|
|
9
|
+
highlightedDisk?: string;
|
|
10
|
+
setHighlightedDisk?: (id?: string) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare function PDiskVDisks({ vDisks, viewContext, withIcon, delayOpen, delayClose, highlightedDisk, setHighlightedDisk, }: PDiskVDisksProps): import("react/jsx-runtime").JSX.Element | null;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { VDisk } from '../../../components/VDisk/VDisk';
|
|
3
|
+
import { cn } from '../../../utils/cn';
|
|
4
|
+
import { isVdiskActive } from '../utils';
|
|
5
|
+
const b = cn('pdisk-storage');
|
|
6
|
+
export function PDiskVDisks({ vDisks, viewContext, withIcon, delayOpen, delayClose, highlightedDisk, setHighlightedDisk, }) {
|
|
7
|
+
if (!(vDisks === null || vDisks === void 0 ? void 0 : vDisks.length)) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
return (_jsx("div", { className: b('vdisks'), children: vDisks.map((vDisk) => {
|
|
11
|
+
const vDiskId = vDisk.StringifiedId;
|
|
12
|
+
const highlighted = highlightedDisk === vDiskId;
|
|
13
|
+
return (_jsx("div", { className: b('vdisks-item'), style: {
|
|
14
|
+
// 1 is small enough for empty disks to be of the minimum width
|
|
15
|
+
// but if all of them are empty, `flex-grow: 1` would size them evenly
|
|
16
|
+
flexGrow: Number(vDisk.AllocatedSize) || 1,
|
|
17
|
+
}, children: _jsx(VDisk, { withIcon: withIcon, data: vDisk, inactive: !isVdiskActive(vDisk, viewContext), compact: true, delayOpen: delayOpen, delayClose: delayClose, showPopup: highlighted, onShowPopup: () => setHighlightedDisk === null || setHighlightedDisk === void 0 ? void 0 : setHighlightedDisk(vDiskId), onHidePopup: () => setHighlightedDisk === null || setHighlightedDisk === void 0 ? void 0 : setHighlightedDisk(undefined), highlighted: highlighted }) }, vDiskId));
|
|
18
|
+
}) }));
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=PDiskVDisks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PDiskVDisks.js","sourceRoot":"","sources":["../../../../src/containers/Storage/PDisk/PDiskVDisks.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAC,EAAE,EAAC,MAAM,mBAAmB,CAAC;AAGrC,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;AAY9B,MAAM,UAAU,WAAW,CAAC,EACxB,MAAM,EACN,WAAW,EACX,QAAQ,EACR,SAAS,EACT,UAAU,EACV,eAAe,EACf,kBAAkB,GACH;IACf,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YACtB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAClB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;YACpC,MAAM,WAAW,GAAG,eAAe,KAAK,OAAO,CAAC;YAEhD,OAAO,CACH,cAEI,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,EAC3B,KAAK,EAAE;oBACH,+DAA+D;oBAC/D,sEAAsE;oBACtE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;iBAC7C,YAED,KAAC,KAAK,IACF,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,EAC5C,OAAO,QACP,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,WAAW,EACtB,WAAW,EAAE,GAAG,EAAE,CAAC,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAG,OAAO,CAAC,EAChD,WAAW,EAAE,GAAG,EAAE,CAAC,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAG,SAAS,CAAC,EAClD,WAAW,EAAE,WAAW,GAC1B,IAnBG,OAAO,CAoBV,CACT,CAAC;QACN,CAAC,CAAC,GACA,CACT,CAAC;AACN,CAAC"}
|
|
@@ -2,13 +2,14 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { useIsUserAllowedToMakeChanges } from '../../utils/hooks/useIsUserAllowedToMakeChanges';
|
|
3
3
|
import { PaginatedStorageGroups } from './PaginatedStorageGroups';
|
|
4
4
|
import { PaginatedStorageNodes } from './PaginatedStorageNodes';
|
|
5
|
-
import { useSaveStorageExpertMode, useSaveStorageType, useSaveVDisksGroupBy, useStorageQueryParams, } from './useStorageQueryParams';
|
|
5
|
+
import { useSavePDisksGroupBy, useSaveStorageExpertMode, useSaveStorageType, useSaveVDisksGroupBy, useStorageQueryParams, } from './useStorageQueryParams';
|
|
6
6
|
import { getStorageGroupsInitialEntitiesCount, getStorageNodesInitialEntitiesCount } from './utils';
|
|
7
7
|
export const PaginatedStorage = (props) => {
|
|
8
8
|
const { storageType } = useStorageQueryParams();
|
|
9
9
|
useSaveStorageType();
|
|
10
10
|
useSaveStorageExpertMode();
|
|
11
11
|
useSaveVDisksGroupBy();
|
|
12
|
+
useSavePDisksGroupBy();
|
|
12
13
|
const isUserAllowedToMakeChanges = useIsUserAllowedToMakeChanges();
|
|
13
14
|
const isNodes = storageType === 'nodes';
|
|
14
15
|
// Hide storage node details for users with only viewer rights
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginatedStorage.js","sourceRoot":"","sources":["../../../src/containers/Storage/PaginatedStorage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,iDAAiD,CAAC;AAE9F,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACH,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,oCAAoC,EAAE,mCAAmC,EAAC,MAAM,SAAS,CAAC;AAelG,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAA4B,EAAE,EAAE;IAC7D,MAAM,EAAC,WAAW,EAAC,GAAG,qBAAqB,EAAE,CAAC;IAC9C,kBAAkB,EAAE,CAAC;IACrB,wBAAwB,EAAE,CAAC;IAC3B,oBAAoB,EAAE,CAAC;IACvB,MAAM,0BAA0B,GAAG,6BAA6B,EAAE,CAAC;IAEnE,MAAM,OAAO,GAAG,WAAW,KAAK,OAAO,CAAC;IAExC,8DAA8D;IAC9D,IAAI,OAAO,IAAI,0BAA0B,EAAE,CAAC;QACxC,OAAO,CACH,KAAC,qBAAqB,IAClB,oBAAoB,EAAE,mCAAmC,CAAC,KAAK,CAAC,WAAW,CAAC,KACxE,KAAK,GACX,CACL,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,sBAAsB,IACnB,oBAAoB,EAAE,oCAAoC,CAAC,KAAK,CAAC,WAAW,CAAC,KACzE,KAAK,GACX,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"PaginatedStorage.js","sourceRoot":"","sources":["../../../src/containers/Storage/PaginatedStorage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,iDAAiD,CAAC;AAE9F,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACH,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,oCAAoC,EAAE,mCAAmC,EAAC,MAAM,SAAS,CAAC;AAelG,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAA4B,EAAE,EAAE;IAC7D,MAAM,EAAC,WAAW,EAAC,GAAG,qBAAqB,EAAE,CAAC;IAC9C,kBAAkB,EAAE,CAAC;IACrB,wBAAwB,EAAE,CAAC;IAC3B,oBAAoB,EAAE,CAAC;IACvB,oBAAoB,EAAE,CAAC;IACvB,MAAM,0BAA0B,GAAG,6BAA6B,EAAE,CAAC;IAEnE,MAAM,OAAO,GAAG,WAAW,KAAK,OAAO,CAAC;IAExC,8DAA8D;IAC9D,IAAI,OAAO,IAAI,0BAA0B,EAAE,CAAC;QACxC,OAAO,CACH,KAAC,qBAAqB,IAClB,oBAAoB,EAAE,mCAAmC,CAAC,KAAK,CAAC,WAAW,CAAC,KACxE,KAAK,GACX,CACL,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,sBAAsB,IACnB,oBAAoB,EAAE,oCAAoC,CAAC,KAAK,CAAC,WAAW,CAAC,KACzE,KAAK,GACX,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -26,7 +26,7 @@ import i18n from '../i18n';
|
|
|
26
26
|
import { STORAGE_GROUPS_COLUMNS_IDS, STORAGE_GROUPS_COLUMNS_TITLES, STORAGE_GROUPS_DISKS_COLUMN_TITLES, isSortableStorageGroupsColumn, } from './constants';
|
|
27
27
|
import './StorageGroupsColumns.scss';
|
|
28
28
|
const b = cn('ydb-storage-groups-columns');
|
|
29
|
-
const DISKS_COLUMN_WIDTH =
|
|
29
|
+
const DISKS_COLUMN_WIDTH = 825;
|
|
30
30
|
const poolNameColumn = {
|
|
31
31
|
name: STORAGE_GROUPS_COLUMNS_IDS.PoolName,
|
|
32
32
|
header: STORAGE_GROUPS_COLUMNS_TITLES.PoolName,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Flex, SegmentedRadioGroup, Text } from '@gravity-ui/uikit';
|
|
3
3
|
import { useStorageQueryParams } from '../useStorageQueryParams';
|
|
4
|
-
import { AllLegend, CompactionLegend, FrontQueuesLegend, SpaceLegend, StateLegend, } from './components';
|
|
5
|
-
import { VDisksGroupBy, b } from './constants';
|
|
4
|
+
import { AllLegend, CompactionLegend, FrontQueuesLegend, PDiskDecommitLegend, PDiskDeviceLegend, PDiskDriveLegend, PDiskMaintenanceLegend, PDiskStateLegend, SpaceLegend, StateLegend, } from './components';
|
|
5
|
+
import { PDisksGroupBy, VDisksGroupBy, b } from './constants';
|
|
6
6
|
import i18n from './i18n';
|
|
7
7
|
import './StorageExpertModePanel.scss';
|
|
8
8
|
function renderLegend(vdisksGroupBy) {
|
|
@@ -21,8 +21,44 @@ function renderLegend(vdisksGroupBy) {
|
|
|
21
21
|
return null;
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
+
function getPDisksGroupByLabel(pdisksGroupBy) {
|
|
25
|
+
switch (pdisksGroupBy) {
|
|
26
|
+
case PDisksGroupBy.Space:
|
|
27
|
+
return i18n('value_pdisks-space');
|
|
28
|
+
case PDisksGroupBy.Drive:
|
|
29
|
+
return i18n('value_pdisks-drive');
|
|
30
|
+
case PDisksGroupBy.Decommit:
|
|
31
|
+
return i18n('value_pdisks-decommit');
|
|
32
|
+
case PDisksGroupBy.Maintenance:
|
|
33
|
+
return i18n('value_pdisks-maintenance');
|
|
34
|
+
case PDisksGroupBy.Device:
|
|
35
|
+
return i18n('value_pdisks-device');
|
|
36
|
+
case PDisksGroupBy.All:
|
|
37
|
+
return i18n('value_pdisks-all');
|
|
38
|
+
default:
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function renderPDiskLegend(pdisksGroupBy) {
|
|
43
|
+
switch (pdisksGroupBy) {
|
|
44
|
+
case PDisksGroupBy.State:
|
|
45
|
+
return _jsx(PDiskStateLegend, {});
|
|
46
|
+
case PDisksGroupBy.Space:
|
|
47
|
+
return _jsx(SpaceLegend, { selectionScope: "pdisks" });
|
|
48
|
+
case PDisksGroupBy.Drive:
|
|
49
|
+
return _jsx(PDiskDriveLegend, {});
|
|
50
|
+
case PDisksGroupBy.Decommit:
|
|
51
|
+
return _jsx(PDiskDecommitLegend, {});
|
|
52
|
+
case PDisksGroupBy.Maintenance:
|
|
53
|
+
return _jsx(PDiskMaintenanceLegend, {});
|
|
54
|
+
case PDisksGroupBy.Device:
|
|
55
|
+
return _jsx(PDiskDeviceLegend, {});
|
|
56
|
+
default:
|
|
57
|
+
return _jsx("div", { children: getPDisksGroupByLabel(pdisksGroupBy) });
|
|
58
|
+
}
|
|
59
|
+
}
|
|
24
60
|
export function StorageExpertModePanel({ className }) {
|
|
25
|
-
const { vdisksGroupBy, handleVDisksGroupByChange } = useStorageQueryParams();
|
|
26
|
-
return (
|
|
61
|
+
const { vdisksGroupBy, pdisksGroupBy, handleVDisksGroupByChange, handlePDisksGroupByChange } = useStorageQueryParams();
|
|
62
|
+
return (_jsxs("div", { className: b(null, className), children: [_jsxs(Flex, { gap: 3, alignItems: "center", children: [_jsx(Text, { variant: "subheader-1", children: i18n('label_vdisks') }), _jsxs(SegmentedRadioGroup, { value: vdisksGroupBy, onUpdate: handleVDisksGroupByChange, size: "s", children: [_jsx(SegmentedRadioGroup.Option, { value: VDisksGroupBy.State, children: i18n('value_state') }), _jsx(SegmentedRadioGroup.Option, { value: VDisksGroupBy.Space, children: i18n('value_space') }), _jsx(SegmentedRadioGroup.Option, { value: VDisksGroupBy.FrontQueues, children: i18n('value_front-queues') }), _jsx(SegmentedRadioGroup.Option, { value: VDisksGroupBy.Compaction, children: i18n('value_compaction') }), _jsx(SegmentedRadioGroup.Option, { value: VDisksGroupBy.All, children: i18n('value_all') })] }), renderLegend(vdisksGroupBy)] }), _jsxs(Flex, { gap: 3, alignItems: "center", children: [_jsx(Text, { variant: "subheader-1", children: i18n('label_pdisks') }), _jsxs(SegmentedRadioGroup, { qa: "storage-pdisks-expert-mode", value: pdisksGroupBy, onUpdate: handlePDisksGroupByChange, size: "s", children: [_jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.State, children: i18n('value_pdisks-state') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.Space, children: i18n('value_pdisks-space') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.Drive, children: i18n('value_pdisks-drive') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.Decommit, children: i18n('value_pdisks-decommit') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.Maintenance, children: i18n('value_pdisks-maintenance') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.Device, children: i18n('value_pdisks-device') }), _jsx(SegmentedRadioGroup.Option, { value: PDisksGroupBy.All, children: i18n('value_pdisks-all') })] }), _jsx("div", { "data-qa": "storage-pdisks-expert-mode-legend", children: renderPDiskLegend(pdisksGroupBy) })] })] }));
|
|
27
63
|
}
|
|
28
64
|
//# sourceMappingURL=StorageExpertModePanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageExpertModePanel.js","sourceRoot":"","sources":["../../../../src/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAElE,OAAO,EAAC,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EACH,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,WAAW,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,aAAa,EAAE,CAAC,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"StorageExpertModePanel.js","sourceRoot":"","sources":["../../../../src/containers/Storage/StorageExpertModePanel/StorageExpertModePanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,13 @@
|
|
|
4
4
|
$block: '.ydb-storage-expert-mode-panel';
|
|
5
5
|
|
|
6
6
|
#{$block} {
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
gap: var(--g-spacing-2);
|
|
10
|
+
|
|
7
11
|
width: 100%;
|
|
8
|
-
height:
|
|
9
|
-
padding: var(--g-spacing-
|
|
12
|
+
height: 80px;
|
|
13
|
+
padding: var(--g-spacing-3);
|
|
10
14
|
|
|
11
15
|
border-radius: var(--g-border-radius-l);
|
|
12
16
|
background-color: var(--g-color-base-generic);
|
|
@@ -36,10 +40,10 @@ $block: '.ydb-storage-expert-mode-panel';
|
|
|
36
40
|
|
|
37
41
|
// When the expert-mode panel is rendered inside the table layout, grow the
|
|
38
42
|
// controls slot height so its sticky-header offset accounts for the panel
|
|
39
|
-
// (62px controls row + 8px Flex gap +
|
|
43
|
+
// (62px controls row + 8px Flex gap + 80px panel = 150px), and align the
|
|
40
44
|
// extra-controls (column setup) with the top controls row instead of the
|
|
41
45
|
// vertical center of the taller controls block.
|
|
42
46
|
.ydb-table-with-controls-layout:has(#{$block}) {
|
|
43
|
-
--ydb-table-with-controls-layout-controls-height:
|
|
47
|
+
--ydb-table-with-controls-layout-controls-height: 150px;
|
|
44
48
|
--ydb-table-with-controls-layout-controls-align-items: baseline;
|
|
45
49
|
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
export declare function CompactionLegend({ className }: {
|
|
2
2
|
className?: string;
|
|
3
|
-
}
|
|
4
|
-
export declare function CompactionLegend({ className }: CompactionLegendProps): import("react/jsx-runtime").JSX.Element;
|
|
5
|
-
export {};
|
|
3
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,21 +1,7 @@
|
|
|
1
|
-
import { jsx as _jsx
|
|
2
|
-
import { CircleCheckFill, CircleExclamationFill, CircleXmarkFill, TriangleExclamationFill, } from '@gravity-ui/icons';
|
|
3
|
-
import { Flex, Icon, Label, Text } from '@gravity-ui/uikit';
|
|
4
|
-
import { b } from '../constants';
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
2
|
import i18n from '../i18n';
|
|
6
|
-
|
|
7
|
-
const legendItems = [
|
|
8
|
-
{ text: i18n('compaction_ok'), theme: 'success', icon: CircleCheckFill },
|
|
9
|
-
{ text: i18n('compaction_notice'), theme: 'warning', icon: TriangleExclamationFill },
|
|
10
|
-
{ text: i18n('compaction_warning'), theme: 'danger', icon: CircleExclamationFill },
|
|
11
|
-
{
|
|
12
|
-
text: i18n('compaction_impaired'),
|
|
13
|
-
theme: 'danger',
|
|
14
|
-
icon: CircleXmarkFill,
|
|
15
|
-
className: b('label-danger-heavy'),
|
|
16
|
-
},
|
|
17
|
-
];
|
|
3
|
+
import { StatusPairLegend } from './StatusPairLegend';
|
|
18
4
|
export function CompactionLegend({ className }) {
|
|
19
|
-
return (
|
|
5
|
+
return _jsx(StatusPairLegend, { className: className, label: i18n('compaction_key') });
|
|
20
6
|
}
|
|
21
7
|
//# sourceMappingURL=CompactionLegend.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompactionLegend.js","sourceRoot":"","sources":["../../../../../src/containers/Storage/StorageExpertModePanel/components/CompactionLegend.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"CompactionLegend.js","sourceRoot":"","sources":["../../../../../src/containers/Storage/StorageExpertModePanel/components/CompactionLegend.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD,MAAM,UAAU,gBAAgB,CAAC,EAAC,SAAS,EAAuB;IAC9D,OAAO,KAAC,gBAAgB,IAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAI,CAAC;AACrF,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ArrowUpFromLine, HourglassStart, Xmark } from '@gravity-ui/icons';
|
|
3
|
+
import { Flex, Icon, Label, Text } from '@gravity-ui/uikit';
|
|
4
|
+
import { b } from '../constants';
|
|
5
|
+
import i18n from '../i18n';
|
|
6
|
+
const iconSize = 12;
|
|
7
|
+
const legendItems = [
|
|
8
|
+
{ text: i18n('value_decommit-imminent'), theme: 'danger', icon: ArrowUpFromLine },
|
|
9
|
+
{ text: i18n('value_decommit-rejected'), theme: 'warning', icon: Xmark },
|
|
10
|
+
{ text: i18n('value_decommit-pending'), theme: 'info', icon: HourglassStart },
|
|
11
|
+
{ text: i18n('value_decommit-none'), theme: 'success' },
|
|
12
|
+
];
|
|
13
|
+
export function PDiskDecommitLegend({ className }) {
|
|
14
|
+
return (_jsxs(Flex, { className: className, gap: 3, alignItems: "center", wrap: "wrap", children: [_jsx(Flex, { gap: 2, alignItems: "center", wrap: "wrap", children: legendItems.map(({ text, theme, icon }) => (_jsx(Label, { size: "xs", theme: theme, icon: icon ? _jsx(Icon, { data: icon, size: iconSize }) : undefined, children: text }, text))) }), _jsx(Text, { className: b('empty-statistics'), color: "secondary", children: i18n('context_no-statistics') })] }));
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=PDiskDecommitLegend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PDiskDecommitLegend.js","sourceRoot":"","sources":["../../../../../src/containers/Storage/StorageExpertModePanel/components/PDiskDecommitLegend.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAC,CAAC,EAAC,MAAM,cAAc,CAAC;AAC/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAY3B,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB,MAAM,WAAW,GAA8B;IAC3C,EAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAC;IAC/E,EAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAC;IACtE,EAAC,IAAI,EAAE,IAAI,CAAC,wBAAwB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAC;IAC3E,EAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAC;CACxD,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,EAAC,SAAS,EAA2B;IACrE,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,aAC/D,KAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,YACxC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC,CACtC,KAAC,KAAK,IAEF,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAI,CAAC,CAAC,CAAC,SAAS,YAE5D,IAAI,IALA,IAAI,CAML,CACX,CAAC,GACC,EACP,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAC,WAAW,YACpD,IAAI,CAAC,uBAAuB,CAAC,GAC3B,IACJ,CACV,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function PDiskDeviceLegend(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import i18n from '../i18n';
|
|
3
|
+
import { StatusPairLegend } from './StatusPairLegend';
|
|
4
|
+
export function PDiskDeviceLegend() {
|
|
5
|
+
return _jsx(StatusPairLegend, { label: i18n('device_key') });
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=PDiskDeviceLegend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PDiskDeviceLegend.js","sourceRoot":"","sources":["../../../../../src/containers/Storage/StorageExpertModePanel/components/PDiskDeviceLegend.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD,MAAM,UAAU,iBAAiB;IAC7B,OAAO,KAAC,gBAAgB,IAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,GAAI,CAAC;AAC3D,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CircleExclamation, CircleXmark, Clock, TrashBin } from '@gravity-ui/icons';
|
|
3
|
+
import { Flex, Icon, Label, Text } from '@gravity-ui/uikit';
|
|
4
|
+
import { b } from '../constants';
|
|
5
|
+
import i18n from '../i18n';
|
|
6
|
+
const iconSize = 12;
|
|
7
|
+
const legendItems = [
|
|
8
|
+
{ text: i18n('drive_active'), theme: 'success' },
|
|
9
|
+
{ text: i18n('drive_inactive'), theme: 'warning', icon: Clock },
|
|
10
|
+
{ text: i18n('drive_to-be-removed'), theme: 'warning', icon: TrashBin },
|
|
11
|
+
{ text: i18n('drive_faulty'), theme: 'danger', icon: CircleExclamation },
|
|
12
|
+
{ text: i18n('drive_broken'), theme: 'danger', icon: CircleXmark },
|
|
13
|
+
];
|
|
14
|
+
export function PDiskDriveLegend({ className }) {
|
|
15
|
+
return (_jsxs(Flex, { className: className, gap: 3, alignItems: "center", wrap: "wrap", children: [_jsx(Flex, { gap: 2, alignItems: "center", wrap: "wrap", children: legendItems.map(({ text, theme, icon }) => (_jsx(Label, { size: "xs", theme: theme, icon: icon ? _jsx(Icon, { data: icon, size: iconSize }) : undefined, children: text }, text))) }), _jsx(Text, { className: b('empty-statistics'), color: "secondary", children: i18n('context_no-statistics') })] }));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=PDiskDriveLegend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PDiskDriveLegend.js","sourceRoot":"","sources":["../../../../../src/containers/Storage/StorageExpertModePanel/components/PDiskDriveLegend.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,iBAAiB,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAElF,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAC,CAAC,EAAC,MAAM,cAAc,CAAC;AAC/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAY3B,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB,MAAM,WAAW,GAA2B;IACxC,EAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAC;IAC9C,EAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAC;IAC7D,EAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAC;IACrE,EAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAC;IACtE,EAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAC;CACnE,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,EAAC,SAAS,EAAwB;IAC/D,OAAO,CACH,MAAC,IAAI,IAAC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,aAC/D,KAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,YACxC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC,CACtC,KAAC,KAAK,IAEF,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAI,CAAC,CAAC,CAAC,SAAS,YAE5D,IAAI,IALA,IAAI,CAML,CACX,CAAC,GACC,EACP,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAC,WAAW,YACpD,IAAI,CAAC,uBAAuB,CAAC,GAC3B,IACJ,CACV,CAAC;AACN,CAAC"}
|