From da7d714a19ba2caec17e16bee421b262a6f92468 Mon Sep 17 00:00:00 2001 From: Jaco Date: Mon, 18 Apr 2022 13:13:29 +0200 Subject: [PATCH] Render tippers via ExpanderScroll (#7387) * Render tippers via ExpanderScroll * Remove TODO --- packages/page-treasury/src/Tips/Tip.tsx | 41 +++++++++++-------- .../react-components/src/ExpanderScroll.tsx | 2 - 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/packages/page-treasury/src/Tips/Tip.tsx b/packages/page-treasury/src/Tips/Tip.tsx index 67489e5588..d190f762db 100644 --- a/packages/page-treasury/src/Tips/Tip.tsx +++ b/packages/page-treasury/src/Tips/Tip.tsx @@ -5,10 +5,10 @@ import type { AccountId, Balance, BlockNumber, OpenTipTo225 } from '@polkadot/ty import type { PalletTipsOpenTip } from '@polkadot/types/lookup'; import type { BN } from '@polkadot/util'; -import React, { useEffect, useMemo, useState } from 'react'; +import React, { useCallback, useEffect, useMemo, useState } from 'react'; import styled from 'styled-components'; -import { AddressMini, AddressSmall, Checkbox, Expander, Icon, LinkExternal, TxButton } from '@polkadot/react-components'; +import { AddressMini, AddressSmall, Checkbox, ExpanderScroll, Icon, LinkExternal, TxButton } from '@polkadot/react-components'; import { useAccounts, useApi } from '@polkadot/react-hooks'; import { BlockToTime, FormatBalance } from '@polkadot/react-query'; import { BN_ZERO, formatNumber } from '@polkadot/util'; @@ -94,6 +94,18 @@ function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, const [isMedianSelected, setMedianTip] = useState(false); + const renderTippers = useCallback( + () => tip.tips.map(([tipper, balance]) => ( + + )), + [tip] + ); + useEffect((): void => { onSelect(hash, isMedianSelected, median); }, [hash, isMedianSelected, median, onSelect]); @@ -122,22 +134,15 @@ function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, {tips.length !== 0 && ( - -
{t('Tippers ({{count}})', { replace: { count: tips.length } })}
- - - } - > - {tips.map(([tipper, balance]) => ( - - ))} -
+ +
{t('Tippers ({{count}})', { replace: { count: tips.length } })}
+ + + } + /> )} diff --git a/packages/react-components/src/ExpanderScroll.tsx b/packages/react-components/src/ExpanderScroll.tsx index 2dc5b7c395..2978e451e6 100644 --- a/packages/react-components/src/ExpanderScroll.tsx +++ b/packages/react-components/src/ExpanderScroll.tsx @@ -14,8 +14,6 @@ interface Props extends ExpanderProps { renderChildren?: () => React.ReactNode[]; } -// TODO Not 100% convinced we need a table here since we only have a single row, -// however at this point we convert as-is, but it should probably get a re-look function ExpanderScroll ({ children, className, empty, help, helpIcon, renderChildren, summary }: Props): React.ReactElement { const hasContent = useMemo( () => !!(renderChildren || children),