From dfc87bd7bdc17eda8e61d2fe901c1af7b878a190 Mon Sep 17 00:00:00 2001 From: Thibaut Sardan <33178835+Tbaut@users.noreply.github.com> Date: Fri, 30 Oct 2020 10:00:00 +0100 Subject: [PATCH] Trigger tip counter refresh on change (#3945) * trigger for refresh * trigger onSuccess for close or cancel * remove stray import * Apply suggestions from code review Co-authored-by: Jaco Greeff * alpha ordering Co-authored-by: Jaco Greeff --- packages/page-treasury/src/Tips/Tip.tsx | 5 ++++- packages/page-treasury/src/Tips/Tips.tsx | 4 +++- packages/page-treasury/src/Tips/index.tsx | 1 + 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/page-treasury/src/Tips/Tip.tsx b/packages/page-treasury/src/Tips/Tip.tsx index 34a4655475..16df421a93 100644 --- a/packages/page-treasury/src/Tips/Tip.tsx +++ b/packages/page-treasury/src/Tips/Tip.tsx @@ -22,6 +22,7 @@ interface Props { hash: string; isMember: boolean; members: string[]; + onRefresh: () => void; onSelect: (hash: string, isSelected: boolean, value: BN) => void; onlyUntipped: boolean; tip: OpenTip | OpenTipTo225; @@ -75,7 +76,7 @@ function extractTipState (tip: OpenTip | OpenTipTo225, hash: string, allAccounts }; } -function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, onSelect, onlyUntipped, tip }: Props): React.ReactElement | null { +function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, onRefresh, onSelect, onlyUntipped, tip }: Props): React.ReactElement | null { const { t } = useTranslation(); const { allAccounts } = useAccounts(); @@ -150,6 +151,7 @@ function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, icon='times' isDisabled={!isFinder} label={t('Cancel')} + onSuccess={onRefresh} params={[hash]} tx='treasury.retractTip' /> @@ -171,6 +173,7 @@ function Tip ({ bestNumber, className = '', defaultId, hash, isMember, members, accountId={councilId} icon='times' label={t('Close')} + onSuccess={onRefresh} params={[hash]} tx='treasury.closeTip' /> diff --git a/packages/page-treasury/src/Tips/Tips.tsx b/packages/page-treasury/src/Tips/Tips.tsx index d1504945c4..c64d3dac31 100644 --- a/packages/page-treasury/src/Tips/Tips.tsx +++ b/packages/page-treasury/src/Tips/Tips.tsx @@ -19,6 +19,7 @@ interface Props { hashes?: string[] | null; isMember: boolean; members: string[]; + onRefresh: () => void; onSelectTip: (hash: string, isSelected: boolean, value: BN) => void, } @@ -43,7 +44,7 @@ function extractTips (optTips?: Option[], hashes?: string[] | null): Ti ); } -function Tips ({ className = '', defaultId, hashes, isMember, members, onSelectTip }: Props): React.ReactElement { +function Tips ({ className = '', defaultId, hashes, isMember, members, onRefresh, onSelectTip }: Props): React.ReactElement { const { t } = useTranslation(); const { api } = useApi(); const [onlyUntipped, setOnlyUntipped] = useState(false); @@ -89,6 +90,7 @@ function Tips ({ className = '', defaultId, hashes, isMember, members, onSelectT isMember={isMember} key={hash} members={members} + onRefresh={onRefresh} onSelect={onSelectTip} onlyUntipped={onlyUntipped} tip={tip} diff --git a/packages/page-treasury/src/Tips/index.tsx b/packages/page-treasury/src/Tips/index.tsx index 47c54b9482..aeb92466c5 100644 --- a/packages/page-treasury/src/Tips/index.tsx +++ b/packages/page-treasury/src/Tips/index.tsx @@ -77,6 +77,7 @@ function TipsEntry ({ className, hashes, isMember, members, trigger }: Props): R hashes={hashes} isMember={isMember} members={members} + onRefresh={trigger} onSelectTip={_selectTip} />