Page MenuHomePhabricator

D13051.diff
No OneTemporary

D13051.diff

diff --git a/lib/shared/dm-ops/process-dm-ops.js b/lib/shared/dm-ops/process-dm-ops.js
--- a/lib/shared/dm-ops/process-dm-ops.js
+++ b/lib/shared/dm-ops/process-dm-ops.js
@@ -14,13 +14,16 @@
type DMOperation,
processDMOpsActionType,
queueDMOpsActionType,
+ scheduleP2PNotifsActionType,
} from '../../types/dm-ops.js';
import { updateTypes } from '../../types/update-types-enum.js';
-import { useSelector } from '../../utils/redux-utils.js';
+import { useSelector, useDispatch } from '../../utils/redux-utils.js';
+import { messageDataFromRawMessageInfo } from '../message-utils.js';
function useProcessDMOperation(): (
dmOp: DMOperation,
metadata: ?MessageSourceMetadata,
+ isSender?: boolean,
) => Promise<void> {
const fetchMessage = useGetLatestMessageEdit();
const threadInfos = useSelector(state => state.threadStore.threadInfos);
@@ -34,10 +37,16 @@
);
const dispatchWithMessageSource = useDispatchWithMessageSource();
+ const dispatch = useDispatch();
+
const loggedInUserInfo = useLoggedInUserInfo();
const viewerID = loggedInUserInfo?.id;
return React.useCallback(
- async (dmOp: DMOperation, metadata: ?MessageSourceMetadata) => {
+ async (
+ dmOp: DMOperation,
+ metadata: ?MessageSourceMetadata,
+ isSender?: boolean,
+ ) => {
if (!viewerID) {
console.log('ignored DMOperation because logged out');
return;
@@ -103,8 +112,23 @@
},
metadata,
);
+
+ if (!isSender) {
+ return;
+ }
+
+ const notificationsCreationData = {
+ messageDatas: allNewMessageInfos.map(messageDataFromRawMessageInfo),
+ };
+
+ dispatch({
+ type: scheduleP2PNotifsActionType,
+ payload: {
+ notificationsCreationData,
+ },
+ });
},
- [viewerID, utilities, dispatchWithMessageSource],
+ [viewerID, utilities, dispatchWithMessageSource, dispatch],
);
}

File Metadata

Mime Type
text/plain
Expires
Fri, Sep 20, 12:58 AM (9 h, 46 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2143594
Default Alt Text
D13051.diff (1 KB)

Event Timeline