From 30fe7cdc08ad090ea46d45c26570884a7dc2a645 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Thu, 25 Apr 2024 21:54:18 +0400 Subject: [PATCH] Mini Apps: Fix links opening (#4514) --- src/global/reducers/messages.ts | 4 +--- src/util/deepLinkParser.ts | 15 +++++++++++++++ src/util/deeplink.ts | 3 +++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/global/reducers/messages.ts b/src/global/reducers/messages.ts index f196b2813..4d5aca17c 100644 --- a/src/global/reducers/messages.ts +++ b/src/global/reducers/messages.ts @@ -425,9 +425,7 @@ export function deleteChatScheduledMessages( byChatId: { ...global.scheduledMessages.byChatId, [chatId]: { - byId: { - ...newById, - }, + byId: newById, }, }, }, diff --git a/src/util/deepLinkParser.ts b/src/util/deepLinkParser.ts index c5b73d6cc..8328477bc 100644 --- a/src/util/deepLinkParser.ts +++ b/src/util/deepLinkParser.ts @@ -60,6 +60,9 @@ interface PublicUsernameOrBotLink { type: 'publicUsernameOrBotLink'; username: string; start?: string; + startApp?: string; + startAttach?: string; + attach?: string; text?: string; } @@ -182,6 +185,9 @@ function parseTgLink(url: URL) { username: queryParams.domain, start: queryParams.start, text: queryParams.text, + startApp: queryParams.startapp, + startAttach: queryParams.startattach, + attach: queryParams.attach, }); case 'businessChatLink': return buildBusinessChatLink({ slug: queryParams.slug }); @@ -266,6 +272,9 @@ function parseHttpLink(url: URL) { username: pathParams[0], start: queryParams.start, text: queryParams.text, + startApp: queryParams.startapp, + startAttach: queryParams.startattach, + attach: queryParams.attach, }); case 'businessChatLink': return buildBusinessChatLink({ slug: pathParams[1] }); @@ -487,6 +496,9 @@ function buildPublicUsernameOrBotLink( username, start, text, + startApp, + startAttach, + attach, } = params; if (!username) { return undefined; @@ -498,6 +510,9 @@ function buildPublicUsernameOrBotLink( type: 'publicUsernameOrBotLink', username, start, + startApp, + startAttach, + attach, text, }; } diff --git a/src/util/deeplink.ts b/src/util/deeplink.ts index 8f7d17a99..e9ed4180c 100644 --- a/src/util/deeplink.ts +++ b/src/util/deeplink.ts @@ -22,6 +22,9 @@ export const processDeepLink = (url: string): boolean => { username: parsedLink.username, startParam: parsedLink.start, text: parsedLink.text, + startApp: parsedLink.startApp, + startAttach: parsedLink.startAttach, + attach: parsedLink.attach, }); return true; case 'businessChatLink':