diff --git a/src/assets/localization/fallback.strings b/src/assets/localization/fallback.strings index d9e9c318a..c9f38d161 100644 --- a/src/assets/localization/fallback.strings +++ b/src/assets/localization/fallback.strings @@ -1439,6 +1439,7 @@ "GiftInfoPeerDescriptionOutConverted_one" = "{peer} converted this gift to **{amount}** Star."; "GiftInfoPeerDescriptionOutConverted_other" = "{peer} converted this gift to **{amount}** Stars."; "GiftInfoDescriptionFreeUpgrade" = "Upgrade this gift for free to turn it to a unique collectible."; +"GiftInfoDescriptionUpgrade" = "Upgrade this gift to turn it to a unique collectible."; "GiftInfoPeerDescriptionFreeUpgradeOut" = "{peer} can turn this gift to a unique collectible"; "GiftInfoDescriptionUpgraded" = "This gift was turned into a unique collectible."; "GiftInfoFrom" = "From"; @@ -1487,6 +1488,7 @@ "GiftInfoViewUpgraded" = "View Upgraded Gift"; "GiftInfoUpgradeBadge" = "upgrade"; "GiftInfoUpgradeForFree" = "Upgrade For Free"; +"GiftInfoUpgrade" = "Upgrade"; "GiftInfoWithdraw" = "Withdraw"; "GiftInfoWear" = "Wear"; "GiftInfoTakeOff" = "Take Off"; diff --git a/src/components/modals/gift/info/GiftInfoModal.module.scss b/src/components/modals/gift/info/GiftInfoModal.module.scss index a997a24eb..8e35f5438 100644 --- a/src/components/modals/gift/info/GiftInfoModal.module.scss +++ b/src/components/modals/gift/info/GiftInfoModal.module.scss @@ -16,6 +16,12 @@ color: var(--color-text-secondary); } +.upgradeIcon { + transform: rotateX(180deg); + margin-left: 0.25rem; + font-size: 1.25rem; +} + .header { display: flex; flex-direction: column; diff --git a/src/components/modals/gift/info/GiftInfoModal.tsx b/src/components/modals/gift/info/GiftInfoModal.tsx index 3acd69da7..02eeadd63 100644 --- a/src/components/modals/gift/info/GiftInfoModal.tsx +++ b/src/components/modals/gift/info/GiftInfoModal.tsx @@ -272,6 +272,16 @@ const GiftInfoModal = ({ return ( + ); + } + + if (canManage && savedGift.canUpgrade && !savedGift.upgradeMsgId) { + return ( + ); } @@ -316,7 +326,10 @@ const GiftInfoModal = ({ if (isTargetChat) return undefined; if (savedGift.upgradeMsgId) return lang('GiftInfoDescriptionUpgraded'); - if (savedGift.canUpgrade && savedGift.alreadyPaidUpgradeStars) { + if (canManage && savedGift.canUpgrade && savedGift.alreadyPaidUpgradeStars && !savedGift.upgradeMsgId) { + return lang('GiftInfoDescriptionUpgrade'); + } + if (savedGift.canUpgrade && canManage) { return canManage ? lang('GiftInfoDescriptionFreeUpgrade') : lang('GiftInfoPeerDescriptionFreeUpgradeOut', { peer: getPeerTitle(lang, renderingTargetPeer!)! }); @@ -547,7 +560,6 @@ const GiftInfoModal = ({ lang('GiftInfoStatus'),