Skip to content

Commit b6f366b

Browse files
authored
Assign keys to account menu dividers (#4829)
1 parent 3b20547 commit b6f366b

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

packages/page-accounts/src/Accounts/Account.tsx

+9-9
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
208208
);
209209

210210
const menuItems = useMemo(() => [
211-
createMenuGroup([
211+
createMenuGroup('identityGroup', [
212212
isFunction(api.api.tx.identity?.setIdentity) && !isHardware && (
213213
<Menu.Item
214214
key='identityMain'
@@ -242,7 +242,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
242242
</Menu.Item>
243243
)
244244
]),
245-
createMenuGroup([
245+
createMenuGroup('deriveGroup', [
246246
!(isExternal || isHardware || isInjected || isMultisig) && (
247247
<Menu.Item
248248
key='deriveAccount'
@@ -260,7 +260,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
260260
</Menu.Item>
261261
)
262262
]),
263-
createMenuGroup([
263+
createMenuGroup('backupGroup', [
264264
!(isExternal || isHardware || isInjected || isMultisig || isDevelopment) && (
265265
<Menu.Item
266266
key='backupJson'
@@ -286,7 +286,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
286286
</Menu.Item>
287287
)
288288
]),
289-
isFunction(api.api.tx.recovery?.createRecovery) && createMenuGroup([
289+
isFunction(api.api.tx.recovery?.createRecovery) && createMenuGroup('reoveryGroup', [
290290
!recoveryInfo && (
291291
<Menu.Item
292292
key='makeRecoverable'
@@ -302,7 +302,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
302302
{t('Initiate recovery for another')}
303303
</Menu.Item>
304304
]),
305-
isFunction(api.api.tx.multisig?.asMulti) && isMultisig && createMenuGroup([
305+
isFunction(api.api.tx.multisig?.asMulti) && isMultisig && createMenuGroup('multisigGroup', [
306306
<Menu.Item
307307
disabled={!multiInfos || !multiInfos.length}
308308
key='multisigApprovals'
@@ -311,7 +311,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
311311
{t('Multisig approvals')}
312312
</Menu.Item>
313313
]),
314-
isFunction(api.api.query.democracy?.votingOf) && delegation?.accountDelegated && createMenuGroup([
314+
isFunction(api.api.query.democracy?.votingOf) && delegation?.accountDelegated && createMenuGroup('undelegateGroup', [
315315
<Menu.Item
316316
key='changeDelegate'
317317
onClick={toggleDelegate}
@@ -325,15 +325,15 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
325325
{t('Undelegate')}
326326
</Menu.Item>
327327
]),
328-
isFunction(api.api.query.democracy?.votingOf) && !delegation?.accountDelegated && createMenuGroup([
328+
isFunction(api.api.query.democracy?.votingOf) && !delegation?.accountDelegated && createMenuGroup('delegateGroup', [
329329
<Menu.Item
330330
key='delegate'
331331
onClick={toggleDelegate}
332332
>
333333
{t('Delegate democracy votes')}
334334
</Menu.Item>
335335
]),
336-
isFunction(api.api.query.proxy?.proxies) && createMenuGroup([
336+
isFunction(api.api.query.proxy?.proxies) && createMenuGroup('proxyGroup', [
337337
<Menu.Item
338338
key='proxy-overview'
339339
onClick={toggleProxyOverview}
@@ -344,7 +344,7 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
344344
}
345345
</Menu.Item>
346346
]),
347-
isEditable && !api.isDevelopment && createMenuGroup([
347+
isEditable && !api.isDevelopment && createMenuGroup('genesisGroup', [
348348
<ChainLock
349349
className='accounts--network-toggle'
350350
genesisHash={genesisHash}

packages/page-accounts/src/Accounts/index.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
240240
delegation={delegation}
241241
filter={filterOn}
242242
isFavorite={isFavorite}
243-
key={account.address}
243+
key={`${index}:${account.address}`}
244244
proxy={proxies?.[index]}
245245
setBalance={_setBalance}
246246
toggleFavorite={toggleFavorite}

packages/page-accounts/src/util.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ import React from 'react';
99
import { Menu } from '@polkadot/react-components';
1010
import { keyring } from '@polkadot/ui-keyring';
1111

12-
export function createMenuGroup (items: (React.ReactNode | false | undefined | null)[]): React.ReactNode | null {
12+
export function createMenuGroup (key: string, items: (React.ReactNode | false | undefined | null)[]): React.ReactNode | null {
1313
const filtered = items.filter((item): item is React.ReactNode => !!item);
1414

1515
return filtered.length
16-
? <><Menu.Divider />{filtered}</>
16+
? <React.Fragment key={key}><Menu.Divider />{filtered}</React.Fragment>
1717
: null;
1818
}
1919

0 commit comments

Comments
 (0)