diff --git a/packages/extension-koni-ui/src/Popup/Account/AccountDetail.tsx b/packages/extension-koni-ui/src/Popup/Account/AccountDetail.tsx index 540a0c6804..68fe9fa347 100644 --- a/packages/extension-koni-ui/src/Popup/Account/AccountDetail.tsx +++ b/packages/extension-koni-ui/src/Popup/Account/AccountDetail.tsx @@ -64,9 +64,18 @@ const Component: React.FC = (props: Props) => { maxEnergy: energyConfig?.maxEnergy }); + const currentRank = account?.attributes.rank || 'iron'; + const currentPoint = account?.attributes.point || 0; + const pointPercent = useMemo(() => { + const currentRankInfo = rankInfoMap?.[currentRank]; + + if (currentRankInfo && currentPoint > 0) { + return (currentPoint - currentRankInfo.minPoint) * 100 / (currentRankInfo.maxPoint - currentRankInfo.minPoint); + } + return 0; - }, []); + }, [currentPoint, currentRank, rankInfoMap]); useEffect(() => { const accountSub = apiSDK.subscribeAccount().subscribe((data) => { @@ -185,10 +194,10 @@ const Component: React.FC = (props: Props) => { rank - {rankNameMap[account?.attributes.rank || 'iron']} + {rankNameMap[currentRank]} @@ -201,11 +210,11 @@ const Component: React.FC = (props: Props) => { /> - {formatInteger(account?.attributes.point || 0)} + {formatInteger(currentPoint)} - /{formatInteger(rankInfoMap?.[account?.attributes.rank || 'iron'].maxPoint || 0)} + /{formatInteger(rankInfoMap?.[currentRank].maxPoint || 0)}