Skip to content

Commit ac7c341

Browse files
tmp
1 parent 8dc599c commit ac7c341

File tree

62 files changed

+572
-405
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+572
-405
lines changed

src/components/DiskStateProgressBar/DiskStateProgressBar.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import React from 'react';
22

33
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
4+
import {useSetting} from '../../store/reducers/settings/useSetting';
45
import {cn} from '../../utils/cn';
56
import {getSeverityColor} from '../../utils/disks/helpers';
6-
import {useSetting} from '../../utils/hooks';
77

88
import './DiskStateProgressBar.scss';
99

@@ -30,7 +30,7 @@ export function DiskStateProgressBar({
3030
content,
3131
className,
3232
}: DiskStateProgressBarProps) {
33-
const [inverted] = useSetting<boolean | undefined>(SETTING_KEYS.INVERTED_DISKS);
33+
const {value: inverted} = useSetting<boolean | undefined>(SETTING_KEYS.INVERTED_DISKS);
3434

3535
const mods: Record<string, boolean | undefined> = {inverted, compact, faded, empty, inactive};
3636

src/components/JsonViewer/JsonViewer.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import DataTable from '@gravity-ui/react-data-table';
66
import {ActionTooltip, Button, Flex, Icon} from '@gravity-ui/uikit';
77

88
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
9-
import {useSetting} from '../../utils/hooks';
9+
import {useSetting} from '../../store/reducers/settings/useSetting';
1010
import type {ClipboardButtonProps} from '../ClipboardButton/ClipboardButton';
1111
import {ClipboardButton} from '../ClipboardButton/ClipboardButton';
1212

@@ -121,9 +121,8 @@ function JsonViewerComponent({
121121
toolbarClassName,
122122
withClipboardButton,
123123
}: JsonViewerComponentProps) {
124-
const [caseSensitiveSearch, setCaseSensitiveSearch] = useSetting(
124+
const {value: caseSensitiveSearch, saveValue: setCaseSensitiveSearch} = useSetting<boolean>(
125125
SETTING_KEYS.CASE_SENSITIVE_JSON_SEARCH,
126-
false,
127126
);
128127

129128
const [collapsedState, setCollapsedState] = React.useState<CollapsedState>(() => {

src/components/NetworkTable/hooks.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@ import {
33
useViewerNodesHandlerHasNetworkStats,
44
} from '../../store/reducers/capabilities/hooks';
55
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
6-
import {useSetting} from '../../utils/hooks';
6+
import {useSetting} from '../../store/reducers/settings/useSetting';
77

88
export function useShouldShowDatabaseNetworkTable() {
99
const viewerNodesHasNetworkStats = useViewerNodesHandlerHasNetworkStats();
10-
const [networkTableEnabled] = useSetting(SETTING_KEYS.ENABLE_NETWORK_TABLE);
10+
const {value: networkTableEnabled} = useSetting(SETTING_KEYS.ENABLE_NETWORK_TABLE);
1111

1212
return Boolean(viewerNodesHasNetworkStats && networkTableEnabled);
1313
}
1414

1515
export function useShouldShowClusterNetworkTable() {
1616
const nodesHasWorkingClusterNetworkStats = useNodesHandlerHasWorkingClusterNetworkStats();
17-
const [networkTableEnabled] = useSetting(SETTING_KEYS.ENABLE_NETWORK_TABLE);
17+
const {value: networkTableEnabled} = useSetting(SETTING_KEYS.ENABLE_NETWORK_TABLE);
1818

1919
return Boolean(nodesHasWorkingClusterNetworkStats && networkTableEnabled);
2020
}

src/containers/App/Providers.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ import {ComponentsProvider} from '../../components/ComponentsProvider/Components
1414
import {componentsRegistry as defaultComponentsRegistry} from '../../components/ComponentsProvider/componentsRegistry';
1515
import type {ComponentsRegistry} from '../../components/ComponentsProvider/componentsRegistry';
1616
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
17+
import {useSetting} from '../../store/reducers/settings/useSetting';
1718
import {toaster} from '../../utils/createToast';
18-
import {useSetting} from '../../utils/hooks';
1919

2020
import {AppTitleProvider} from './AppTitleContext';
2121

@@ -57,7 +57,7 @@ export function Providers({
5757
}
5858

5959
function Theme({children}: {children: React.ReactNode}) {
60-
const [theme] = useSetting<string | undefined>(SETTING_KEYS.THEME);
60+
const {value: theme} = useSetting<string | undefined>(SETTING_KEYS.THEME);
6161

6262
return <ThemeProvider theme={theme}>{children}</ThemeProvider>;
6363
}

src/containers/AppWithClusters/utils/useAdditionalTenantsProps.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ import {isNil} from 'lodash';
22

33
import {useClusterBaseInfo} from '../../../store/reducers/cluster/cluster';
44
import {SETTING_KEYS} from '../../../store/reducers/settings/constants';
5+
import {useSetting} from '../../../store/reducers/settings/useSetting';
56
import type {AdditionalTenantsProps} from '../../../types/additionalProps';
67
import type {ETenantType} from '../../../types/api/tenant';
78
import type {GetDatabaseLinks} from '../../../uiFactory/types';
89
import {uiFactory} from '../../../uiFactory/uiFactory';
9-
import {useSetting} from '../../../utils/hooks';
1010
import type {GetLogsLink} from '../../../utils/logs';
1111
import type {GetMonitoringLink} from '../../../utils/monitoring';
1212
import {prepareBackendFromBalancer} from '../../../utils/parseBalancer';
@@ -23,7 +23,7 @@ export function useAdditionalTenantsProps({
2323
getDatabaseLinks,
2424
}: GetAdditionalTenantsProps) {
2525
const clusterInfo = useClusterBaseInfo();
26-
const [useClusterBalancerAsBackend] = useSetting<boolean>(
26+
const {value: useClusterBalancerAsBackend} = useSetting<boolean>(
2727
SETTING_KEYS.USE_CLUSTER_BALANCER_AS_BACKEND,
2828
);
2929

src/containers/AsideNavigation/AsideNavigation.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import type {IconData} from '@gravity-ui/uikit';
77
import {useHistory} from 'react-router-dom';
88

99
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
10+
import {useSetting} from '../../store/reducers/settings/useSetting';
1011
import {cn} from '../../utils/cn';
11-
import {useSetting} from '../../utils/hooks';
1212

1313
import {InformationPopup} from './InformationPopup';
1414
import {useHotkeysPanel} from './hooks/useHotkeysPanel';
@@ -76,7 +76,9 @@ export function AsideNavigation(props: AsideNavigationProps) {
7676

7777
const [visiblePanel, setVisiblePanel] = React.useState<Panel>();
7878
const [informationPopupVisible, setInformationPopupVisible] = React.useState(false);
79-
const [compact, setIsCompact] = useSetting<boolean>(SETTING_KEYS.ASIDE_HEADER_COMPACT);
79+
const {value: compact, saveValue: setIsCompact} = useSetting<boolean>(
80+
SETTING_KEYS.ASIDE_HEADER_COMPACT,
81+
);
8082

8183
const toggleInformationPopup = () => setInformationPopupVisible((prev) => !prev);
8284

@@ -110,7 +112,7 @@ export function AsideNavigation(props: AsideNavigationProps) {
110112
onClick: () => history.push('/'),
111113
}}
112114
menuItems={props.menuItems}
113-
compact={compact}
115+
compact={Boolean(compact)}
114116
onChangeCompact={setIsCompact}
115117
className={b()}
116118
renderContent={() => props.content}

src/containers/AsideNavigation/InformationPopup/InformationPopup.tsx

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
import {Keyboard} from '@gravity-ui/icons';
22
import {Flex, Hotkey, Icon, Link, List, Text} from '@gravity-ui/uikit';
33

4-
import {settingsManager} from '../../../services/settings';
5-
import {SETTING_KEYS} from '../../../store/reducers/settings/constants';
64
import {cn} from '../../../utils/cn';
75
import {SHORTCUTS_HOTKEY} from '../hooks/useHotkeysPanel';
86
import i18n from '../i18n';
@@ -16,14 +14,6 @@ export interface InformationPopupProps {
1614
}
1715

1816
export function InformationPopup({onKeyboardShortcutsClick}: InformationPopupProps) {
19-
const getDocumentationLink = () => {
20-
const lang = settingsManager.readUserSettingsValue(
21-
SETTING_KEYS.LANGUAGE,
22-
navigator.language,
23-
);
24-
return lang === 'ru' ? 'https://ydb.tech/docs/ru/' : 'https://ydb.tech/docs/en/';
25-
};
26-
2717
return (
2818
<div className={b('content', {})}>
2919
<div className={b('docs')}>
@@ -35,7 +25,7 @@ export function InformationPopup({onKeyboardShortcutsClick}: InformationPopupPro
3525
items={[
3626
{
3727
text: i18n('help-center.item.documentation'),
38-
url: getDocumentationLink(),
28+
url: 'https://ydb.tech/docs',
3929
},
4030
]}
4131
filterable={false}

src/containers/Cluster/ClusterOverview/ClusterOverview.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ import {
99
} from '../../../store/reducers/capabilities/hooks';
1010
import type {ClusterGroupsStats} from '../../../store/reducers/cluster/types';
1111
import {SETTING_KEYS} from '../../../store/reducers/settings/constants';
12+
import {useSetting} from '../../../store/reducers/settings/useSetting';
1213
import type {AdditionalClusterProps} from '../../../types/additionalProps';
1314
import {isClusterInfoV2, isClusterInfoV5} from '../../../types/api/cluster';
1415
import type {TClusterInfo} from '../../../types/api/cluster';
1516
import type {IResponseError} from '../../../types/api/error';
1617
import {valueIsDefined} from '../../../utils';
17-
import {useSetting} from '../../../utils/hooks/useSetting';
1818
import {ClusterInfo} from '../ClusterInfo/ClusterInfo';
1919
import i18n from '../i18n';
2020
import {getTotalStorageGroupsUsed} from '../utils';
@@ -40,7 +40,7 @@ interface ClusterOverviewProps {
4040
}
4141

4242
export function ClusterOverview(props: ClusterOverviewProps) {
43-
const [expandDashboard, setExpandDashboard] = useSetting<boolean>(
43+
const {value: expandDashboard, saveValue: setExpandDashboard} = useSetting<boolean>(
4444
SETTING_KEYS.EXPAND_CLUSTER_DASHBOARD,
4545
);
4646
const bridgeModeEnabled = useBridgeModeEnabled();

src/containers/Cluster/ClusterOverview/components/ClusterMetricsNetwork.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import {DoughnutMetrics} from '../../../../components/DoughnutMetrics/DoughnutMetrics';
22
import {SETTING_KEYS} from '../../../../store/reducers/settings/constants';
3+
import {useSetting} from '../../../../store/reducers/settings/useSetting';
34
import {formatBytes} from '../../../../utils/bytesParsers';
4-
import {useSetting} from '../../../../utils/hooks/useSetting';
55
import i18n from '../../i18n';
66
import type {ClusterMetricsBaseProps} from '../shared';
77
import {calculateBaseDiagramValues} from '../utils';
@@ -23,7 +23,9 @@ export function ClusterMetricsNetwork({
2323
collapsed,
2424
...rest
2525
}: ClusterMetricsNetworkProps) {
26-
const [showNetworkUtilization] = useSetting<boolean>(SETTING_KEYS.SHOW_NETWORK_UTILIZATION);
26+
const {value: showNetworkUtilization} = useSetting<boolean>(
27+
SETTING_KEYS.SHOW_NETWORK_UTILIZATION,
28+
);
2729
if (!showNetworkUtilization) {
2830
return null;
2931
}

src/containers/Tenant/Diagnostics/HotKeys/HotKeys.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ import {ResizeableDataTable} from '../../../../components/ResizeableDataTable/Re
1010
import {hotKeysApi} from '../../../../store/reducers/hotKeys/hotKeys';
1111
import {overviewApi} from '../../../../store/reducers/overview/overview';
1212
import {SETTING_KEYS} from '../../../../store/reducers/settings/constants';
13+
import {useSetting} from '../../../../store/reducers/settings/useSetting';
1314
import type {HotKey} from '../../../../types/api/hotkeys';
1415
import {cn} from '../../../../utils/cn';
1516
import {DEFAULT_TABLE_SETTINGS} from '../../../../utils/constants';
16-
import {useAutoRefreshInterval, useSetting} from '../../../../utils/hooks';
17+
import {useAutoRefreshInterval} from '../../../../utils/hooks';
1718

1819
import i18n from './i18n';
1920

@@ -121,7 +122,9 @@ export function HotKeys({path, database, databaseFullPath}: HotKeysProps) {
121122
}
122123

123124
function HelpCard() {
124-
const [helpHidden, setHelpHidden] = useSetting(SETTING_KEYS.IS_HOTKEYS_HELP_HIDDEN);
125+
const {value: helpHidden, saveValue: setHelpHidden} = useSetting(
126+
SETTING_KEYS.IS_HOTKEYS_HELP_HIDDEN,
127+
);
125128

126129
if (helpHidden) {
127130
return null;

0 commit comments

Comments
 (0)