Page MenuHomePhabricator

D13484.diff
No OneTemporary

D13484.diff

diff --git a/lib/shared/dm-ops/dm-op-utils.js b/lib/shared/dm-ops/dm-op-utils.js
--- a/lib/shared/dm-ops/dm-op-utils.js
+++ b/lib/shared/dm-ops/dm-op-utils.js
@@ -8,6 +8,9 @@
import { type ProcessDMOperationUtilities } from './dm-op-spec.js';
import { dmOpSpecs } from './dm-op-specs.js';
import { useProcessAndSendDMOperation } from './process-dm-ops.js';
+import { useFindUserIdentities } from '../../actions/user-actions.js';
+import { useLoggedInUserInfo } from '../../hooks/account-hooks.js';
+import { useGetLatestMessageEdit } from '../../hooks/latest-message-edit.js';
import { mergeUpdatesWithMessageInfos } from '../../reducers/message-reducer.js';
import type {
CreateThickRawThreadInfoInput,
@@ -359,9 +362,32 @@
return newUpdateInfos;
}
+function useSendDMOperationUtils(): $ReadOnly<{
+ ...ProcessDMOperationUtilities,
+ viewerID: ?string,
+}> {
+ const fetchMessage = useGetLatestMessageEdit();
+ const threadInfos = useSelector(state => state.threadStore.threadInfos);
+ const entryInfos = useSelector(state => state.entryStore.entryInfos);
+ const findUserIdentities = useFindUserIdentities();
+ const loggedInUserInfo = useLoggedInUserInfo();
+ const viewerID = loggedInUserInfo?.id;
+ return React.useMemo(
+ () => ({
+ viewerID,
+ fetchMessage,
+ threadInfos,
+ entryInfos,
+ findUserIdentities,
+ }),
+ [viewerID, fetchMessage, threadInfos, entryInfos, findUserIdentities],
+ );
+}
+
export {
createMessagesToPeersFromDMOp,
useAddDMThreadMembers,
getCreateThickRawThreadInfoInputFromThreadInfo,
getThreadUpdatesForNewMessages,
+ useSendDMOperationUtils,
};
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
@@ -12,14 +12,10 @@
dmOperationSpecificationTypes,
type OutboundComposableDMOperationSpecification,
getThreadUpdatesForNewMessages,
+ useSendDMOperationUtils,
} from './dm-op-utils.js';
import { useProcessBlobHolders } from '../../actions/holder-actions.js';
-import {
- processNewUserIDsActionType,
- useFindUserIdentities,
-} from '../../actions/user-actions.js';
-import { useLoggedInUserInfo } from '../../hooks/account-hooks.js';
-import { useGetLatestMessageEdit } from '../../hooks/latest-message-edit.js';
+import { processNewUserIDsActionType } from '../../actions/user-actions.js';
import { useDispatchWithMetadata } from '../../hooks/ops-hooks.js';
import { getAllPeerUserIDAndDeviceIDs } from '../../selectors/user-selectors.js';
import {
@@ -37,25 +33,6 @@
import { extractUserIDsFromPayload } from '../../utils/conversion-utils.js';
import { useSelector, useDispatch } from '../../utils/redux-utils.js';
-function useSendDMOperationUtils() {
- const fetchMessage = useGetLatestMessageEdit();
- const threadInfos = useSelector(state => state.threadStore.threadInfos);
- const entryInfos = useSelector(state => state.entryStore.entryInfos);
- const findUserIdentities = useFindUserIdentities();
- const loggedInUserInfo = useLoggedInUserInfo();
- const viewerID = loggedInUserInfo?.id;
- return React.useMemo(
- () => ({
- viewerID,
- fetchMessage,
- threadInfos,
- entryInfos,
- findUserIdentities,
- }),
- [viewerID, fetchMessage, threadInfos, entryInfos, findUserIdentities],
- );
-}
-
function useProcessDMOperation(): (
dmOperationSpecification: DMOperationSpecification,
dmOpID: ?string,

File Metadata

Mime Type
text/plain
Expires
Mon, Sep 30, 10:46 AM (21 h, 12 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2204827
Default Alt Text
D13484.diff (3 KB)

Event Timeline