From 0d6388b3d9b55ad7836da58cecc00da71d4e85be Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Fri, 19 Sep 2025 14:35:34 +0200 Subject: [PATCH] Saved Gifts: Update saved gifts after upgrade gift (#6259) --- src/global/actions/api/payments.ts | 9 +++++++-- src/global/actions/apiUpdaters/payments.ts | 4 ++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/global/actions/api/payments.ts b/src/global/actions/api/payments.ts index 300e42654..684703dbb 100644 --- a/src/global/actions/api/payments.ts +++ b/src/global/actions/api/payments.ts @@ -1002,7 +1002,7 @@ addActionHandler('launchPrepaidStarsGiveaway', async (global, actions, payload): actions.openBoostStatistics({ chatId, tabId }); }); -addActionHandler('upgradeGift', (global, actions, payload): ActionReturnType => { +addActionHandler('upgradeGift', async (global, actions, payload): Promise => { const { gift, shouldKeepOriginalDetails, upgradeStars, tabId = getCurrentTabId(), } = payload; @@ -1023,11 +1023,16 @@ addActionHandler('upgradeGift', (global, actions, payload): ActionReturnType => actions.closeGiftInfoModal({ tabId }); if (!upgradeStars) { - callApi('upgradeStarGift', { + const result = await callApi('upgradeStarGift', { inputSavedGift: requestSavedGift, shouldKeepOriginalDetails: shouldKeepOriginalDetails || undefined, }); + global = getGlobal(); + if (result && global.currentUserId) { + actions.reloadPeerSavedGifts({ peerId: global.currentUserId }); + } + return; } diff --git a/src/global/actions/apiUpdaters/payments.ts b/src/global/actions/apiUpdaters/payments.ts index 7cb53d057..47bee44e6 100644 --- a/src/global/actions/apiUpdaters/payments.ts +++ b/src/global/actions/apiUpdaters/payments.ts @@ -170,6 +170,10 @@ addActionHandler('apiUpdate', (global, actions, update): ActionReturnType => { } } + if (inputInvoice?.type === 'stargiftUpgrade' && global.currentUserId) { + actions.reloadPeerSavedGifts({ peerId: global.currentUserId }); + } + break; }