From 9d25636cf4918fd4fc68bfab8d38983823fb8068 Mon Sep 17 00:00:00 2001 From: Gleidson Daniel Silva Date: Wed, 19 Jan 2022 17:37:06 -0300 Subject: [PATCH 1/3] [FIX] App crashes when opening a notification while app is closed (#3629) --- app/definitions/INotification.ts | 1 + app/notifications/push/index.ts | 5 +++-- app/notifications/push/push.ios.ts | 2 +- app/notifications/push/push.ts | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/definitions/INotification.ts b/app/definitions/INotification.ts index 77467d9d7..4974b0c91 100644 --- a/app/definitions/INotification.ts +++ b/app/definitions/INotification.ts @@ -9,4 +9,5 @@ export interface INotification { from: string; image: string; soundname: string; + getData: () => INotification; } diff --git a/app/notifications/push/index.ts b/app/notifications/push/index.ts index af25c9eed..09fa86027 100644 --- a/app/notifications/push/index.ts +++ b/app/notifications/push/index.ts @@ -16,9 +16,10 @@ interface IEjson { messageId: string; } -export const onNotification = (notification: INotification): void => { - if (notification) { +export const onNotification = (push: INotification): void => { + if (push) { try { + const notification = push?.getData(); const { rid, name, sender, type, host, messageType, messageId }: IEjson = EJSON.parse(notification.ejson); const types: Record = { diff --git a/app/notifications/push/push.ios.ts b/app/notifications/push/push.ios.ts index 92c2d3a6c..a6b1118c5 100644 --- a/app/notifications/push/push.ios.ts +++ b/app/notifications/push/push.ios.ts @@ -22,7 +22,7 @@ class PushNotification { // TODO REDUX MIGRATION TO TS const { background } = reduxStore.getState().app; if (background) { - this.onNotification(notification?.getData()); + this.onNotification(notification); } completion(); }); diff --git a/app/notifications/push/push.ts b/app/notifications/push/push.ts index 16aa8cf5c..11eccbcb5 100644 --- a/app/notifications/push/push.ts +++ b/app/notifications/push/push.ts @@ -16,7 +16,7 @@ class PushNotification { }); NotificationsAndroid.setNotificationOpenedListener((notification: Notification) => { - this.onNotification(notification?.getData()); + this.onNotification(notification); }); } From 44d2b4b0e1433a9c9d982e8506c3a82a4c8d65c0 Mon Sep 17 00:00:00 2001 From: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com> Date: Wed, 19 Jan 2022 17:41:21 -0300 Subject: [PATCH 2/3] [FIX] makeThreadName asserting undefined as non-null (#3628) --- app/utils/room.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/utils/room.ts b/app/utils/room.ts index 3e4e0ef44..d39e40490 100644 --- a/app/utils/room.ts +++ b/app/utils/room.ts @@ -60,6 +60,6 @@ export const getBadgeColor = ({ }; export const makeThreadName = (messageRecord: { id?: string; msg?: string; attachments?: IAttachment[] }): string | undefined => - messageRecord.msg || messageRecord.attachments![0].title; + messageRecord.msg || messageRecord?.attachments?.[0]?.title; export const isTeamRoom = ({ teamId, joined }: { teamId: string; joined: boolean }): boolean => !!teamId && joined; From e91bb905435744239732d5bdd88d9d351891b20c Mon Sep 17 00:00:00 2001 From: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com> Date: Wed, 19 Jan 2022 17:54:12 -0300 Subject: [PATCH 3/3] [FIX] Threads' pagination not working (#3631) --- app/views/ThreadMessagesView/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/ThreadMessagesView/index.tsx b/app/views/ThreadMessagesView/index.tsx index 230a6778d..2b53159bf 100644 --- a/app/views/ThreadMessagesView/index.tsx +++ b/app/views/ThreadMessagesView/index.tsx @@ -284,7 +284,7 @@ class ThreadMessagesView extends React.Component buildMessage(m)); // filter threads - threadsToCreate = update.filter(i1 => allThreadsRecords.find((i2: { id: string }) => i1._id === i2.id)); + threadsToCreate = update.filter(i1 => !allThreadsRecords.find((i2: { id: string }) => i1._id === i2.id)); threadsToUpdate = allThreadsRecords.filter((i1: { id: string }) => update.find(i2 => i1.id === i2._id)); threadsToCreate = threadsToCreate.map(thread => threadsCollection.prepareCreate(