diff --git a/packages/web/src/components/RedeemModal.tsx b/packages/web/src/components/RedeemModal.tsx index 29bc1e0..31e1b03 100644 --- a/packages/web/src/components/RedeemModal.tsx +++ b/packages/web/src/components/RedeemModal.tsx @@ -151,11 +151,20 @@ export default function RedeemModal({ stamp, onRedeem, onClose }: RedeemModalPro {prize ? (

Reward

- {prize.description ? ( -

{prize.description}

- ) : ( -

暂未填写权益说明

+

{prize.name}

+ {prize.description && ( +

{prize.description}

)} +
+ 剩余库存 + 0 ? "var(--jade)" : "var(--terracotta)" }} + > + {prize.stock} + + +
) : (
@@ -171,6 +180,9 @@ export default function RedeemModal({ stamp, onRedeem, onClose }: RedeemModalPro {mode === "redeemed" && (

你已经兑换过这枚图章对应的奖品

)} + {mode === "sold-out" && ( +

该奖品库存已耗尽,暂无法兑换

+ )} {error &&

{error}

} @@ -227,6 +239,7 @@ export default function RedeemModal({ stamp, onRedeem, onClose }: RedeemModalPro

Reward

+

{prize.name}

{prize.description && (

{prize.description}

)} diff --git a/packages/web/src/components/StampPopup.tsx b/packages/web/src/components/StampPopup.tsx index fc482ce..7a7bc53 100644 --- a/packages/web/src/components/StampPopup.tsx +++ b/packages/web/src/components/StampPopup.tsx @@ -49,10 +49,23 @@ export default function StampPopup({ name, imageColor, note, prize, status, onCo {note &&

{note}

} {/* Prize rule (preview only) */} - {status === "preview" && prize?.description && ( + {status === "preview" && prize && (

Reward

-

{prize.description}

+

{prize.name}

+ {prize.description && ( +

{prize.description}

+ )} +
+ 剩余库存 + 0 ? "var(--jade)" : "var(--terracotta)" }} + > + {prize.stock} + + +
)}