Page MenuHomePhabricator

D13060.diff
No OneTemporary

D13060.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
@@ -5,10 +5,12 @@
import uuid from 'uuid';
import { dmOpSpecs } from './dm-op-specs.js';
+import type { DMOperationSpecification } from './dm-op-utils.js';
import { useLoggedInUserInfo } from '../../hooks/account-hooks.js';
import { useGetLatestMessageEdit } from '../../hooks/latest-message-edit.js';
import { useDispatchWithMessageSource } from '../../hooks/ops-hooks.js';
import { mergeUpdatesWithMessageInfos } from '../../reducers/message-reducer.js';
+import { usePeerToPeerCommunication } from '../../tunnelbroker/peer-to-peer-context.js';
import type { MessageSourceMetadata } from '../../types/db-ops-types.js';
import {
type DMOperation,
@@ -108,4 +110,19 @@
);
}
-export { useProcessDMOperation };
+function useProcessAndSendDMOperation(): (
+ dmOperationSpecification: DMOperationSpecification,
+) => Promise<void> {
+ const processDMOps = useProcessDMOperation();
+ const { sendDMOperation } = usePeerToPeerCommunication();
+
+ return React.useCallback(
+ async (dmOperationSpecification: DMOperationSpecification) => {
+ await processDMOps(dmOperationSpecification.op);
+ await sendDMOperation(dmOperationSpecification);
+ },
+ [processDMOps, sendDMOperation],
+ );
+}
+
+export { useProcessDMOperation, useProcessAndSendDMOperation };

File Metadata

Mime Type
text/plain
Expires
Mon, Sep 30, 11:19 AM (19 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2204934
Default Alt Text
D13060.diff (1 KB)

Event Timeline