Skip to content

Commit fd5644c

Browse files
committed
feat: add feature flag for menu
1 parent 7e1a561 commit fd5644c

File tree

2 files changed

+43
-15
lines changed

2 files changed

+43
-15
lines changed

ui/components/multichain/network-list-item/network-list-item.js

+39-14
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import React, { useEffect, useRef, useState } from 'react';
22
import classnames from 'classnames';
33
import PropTypes from 'prop-types';
4+
import { useSelector } from 'react-redux';
45
import {
56
AlignItems,
67
BackgroundColor,
@@ -10,6 +11,8 @@ import {
1011
Display,
1112
JustifyContent,
1213
TextColor,
14+
Size,
15+
IconColor,
1316
} from '../../../helpers/constants/design-system';
1417
import {
1518
AvatarNetwork,
@@ -23,6 +26,7 @@ import { useI18nContext } from '../../../hooks/useI18nContext';
2326
import { getAvatarNetworkColor } from '../../../helpers/utils/accounts';
2427
import Tooltip from '../../ui/tooltip/tooltip';
2528
import { NetworkListItemMenu } from '../network-list-item-menu';
29+
import { getLocalNetworkMenuRedesignFeatureFlag } from '../../../helpers/utils/feature-flags';
2630

2731
const MAXIMUM_CHARACTERS_WITHOUT_TOOLTIP = 20;
2832

@@ -43,9 +47,42 @@ export const NetworkListItem = ({
4347
const setNetworkListItemMenuRef = (ref) => {
4448
setNetworkListItemMenuElement(ref);
4549
};
46-
4750
const [networkOptionsMenuOpen, setNetworkOptionsMenuOpen] = useState(false);
51+
const networkMenuRedesign = useSelector(
52+
getLocalNetworkMenuRedesignFeatureFlag,
53+
);
54+
55+
const renderButton = () => {
56+
if (networkMenuRedesign) {
57+
return onDeleteClick || onEditClick ? (
58+
<ButtonIcon
59+
iconName={IconName.MoreVertical}
60+
ref={setNetworkListItemMenuRef}
61+
data-testid="network-list-item-options-button"
62+
ariaLabel={t('networkOptions')}
63+
onClick={(e) => {
64+
e.stopPropagation();
65+
setNetworkOptionsMenuOpen(true);
66+
}}
67+
size={ButtonIconSize.Sm}
68+
/>
69+
) : null;
70+
}
4871

72+
return onDeleteClick ? (
73+
<ButtonIcon
74+
className="multichain-network-list-item__delete"
75+
color={IconColor.errorDefault}
76+
iconName={IconName.Trash}
77+
ariaLabel={t('deleteNetwork')}
78+
size={Size.SM}
79+
onClick={(e) => {
80+
e.stopPropagation();
81+
onDeleteClick();
82+
}}
83+
/>
84+
) : null;
85+
};
4986
useEffect(() => {
5087
if (networkRef.current && focus) {
5188
networkRef.current.focus();
@@ -112,19 +149,7 @@ export const NetworkListItem = ({
112149
)}
113150
</Text>
114151
</Box>
115-
{onDeleteClick || onEditClick ? (
116-
<ButtonIcon
117-
iconName={IconName.MoreVertical}
118-
ref={setNetworkListItemMenuRef}
119-
data-testid="network-list-item-options-button"
120-
ariaLabel={t('networkOptions')}
121-
onClick={(e) => {
122-
e.stopPropagation();
123-
setNetworkOptionsMenuOpen(true);
124-
}}
125-
size={ButtonIconSize.Sm}
126-
/>
127-
) : null}
152+
{renderButton()}
128153
<NetworkListItemMenu
129154
anchorElement={networkListItemMenuElement}
130155
isOpen={networkOptionsMenuOpen}

ui/pages/home/home.component.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ import BetaHomeFooter from './beta/beta-home-footer.component';
7272
///: END:ONLY_INCLUDE_IF
7373
///: BEGIN:ONLY_INCLUDE_IF(build-flask)
7474
import FlaskHomeFooter from './flask/flask-home-footer.component';
75+
import { setEditedNetwork } from '../../store/actions';
7576
///: END:ONLY_INCLUDE_IF
7677

7778
function shouldCloseNotificationPopup({
@@ -470,6 +471,7 @@ export default class Home extends PureComponent {
470471
setRemoveNftMessage('');
471472
setNewTokensImported(''); // Added this so we dnt see the notif if user does not close it
472473
setNewTokensImportedError('');
474+
setEditedNetwork({});
473475
};
474476

475477
const autoHideDelay = 5 * SECOND;
@@ -576,11 +578,12 @@ export default class Home extends PureComponent {
576578
}
577579
/>
578580
) : null}
579-
{console.log('IM HERE ***********', editedNetwork)}
580581
{editedNetwork ? (
581582
<ActionableMessage
582583
type="success"
583584
className="home__new-network-notification"
585+
autoHideTime={autoHideDelay}
586+
onAutoHide={onAutoHide}
584587
message={
585588
<Box display={Display.InlineFlex}>
586589
<i className="fa fa-check-circle home__new-network-notification-icon" />

0 commit comments

Comments
 (0)