Page MenuHomePhabricator

D8616.diff
No OneTemporary

D8616.diff

diff --git a/lib/ops/thread-store-ops.js b/lib/ops/thread-store-ops.js
new file mode 100644
--- /dev/null
+++ b/lib/ops/thread-store-ops.js
@@ -0,0 +1,35 @@
+// @flow
+
+import type {
+ ClientDBThreadInfo,
+ RawThreadInfo,
+} from '../types/thread-types.js';
+
+export type RemoveThreadOperation = {
+ +type: 'remove',
+ +payload: { +ids: $ReadOnlyArray<string> },
+};
+
+export type RemoveAllThreadsOperation = {
+ +type: 'remove_all',
+};
+
+export type ReplaceThreadOperation = {
+ +type: 'replace',
+ +payload: { +id: string, +threadInfo: RawThreadInfo },
+};
+
+export type ThreadStoreOperation =
+ | RemoveThreadOperation
+ | RemoveAllThreadsOperation
+ | ReplaceThreadOperation;
+
+export type ClientDBReplaceThreadOperation = {
+ +type: 'replace',
+ +payload: ClientDBThreadInfo,
+};
+
+export type ClientDBThreadStoreOperation =
+ | RemoveThreadOperation
+ | RemoveAllThreadsOperation
+ | ClientDBReplaceThreadOperation;
diff --git a/lib/reducers/thread-reducer.js b/lib/reducers/thread-reducer.js
--- a/lib/reducers/thread-reducer.js
+++ b/lib/reducers/thread-reducer.js
@@ -25,6 +25,7 @@
registerActionTypes,
updateSubscriptionActionTypes,
} from '../actions/user-actions.js';
+import type { ThreadStoreOperation } from '../ops/thread-store-ops.js';
import type { BaseAction } from '../types/redux-types.js';
import {
type ClientThreadInconsistencyReportCreationRequest,
@@ -38,11 +39,7 @@
fullStateSyncActionType,
incrementalStateSyncActionType,
} from '../types/socket-types.js';
-import type {
- RawThreadInfo,
- ThreadStore,
- ThreadStoreOperation,
-} from '../types/thread-types.js';
+import type { RawThreadInfo, ThreadStore } from '../types/thread-types.js';
import { updateTypes } from '../types/update-types-enum.js';
import {
type ClientUpdateInfo,
diff --git a/lib/types/store-ops-types.js b/lib/types/store-ops-types.js
--- a/lib/types/store-ops-types.js
+++ b/lib/types/store-ops-types.js
@@ -11,16 +11,16 @@
MessageStoreOperation,
ClientDBThreadMessageInfo,
} from './message-types.js';
-import type {
- ClientDBThreadInfo,
- ClientDBThreadStoreOperation,
- ThreadStoreOperation,
-} from './thread-types.js';
+import type { ClientDBThreadInfo } from './thread-types.js';
import type {
ReportStoreOperation,
ClientDBReport,
ClientDBReportStoreOperation,
} from '../ops/report-store-ops.js';
+import type {
+ ClientDBThreadStoreOperation,
+ ThreadStoreOperation,
+} from '../ops/thread-store-ops.js';
export type StoreOperations = {
+draftStoreOperations: $ReadOnlyArray<DraftStoreOperation>,
diff --git a/lib/types/thread-types.js b/lib/types/thread-types.js
--- a/lib/types/thread-types.js
+++ b/lib/types/thread-types.js
@@ -21,8 +21,8 @@
} from './subscription-types.js';
import {
type ThreadPermissionsInfo,
- type ThreadRolePermissionsBlob,
threadPermissionsInfoValidator,
+ type ThreadRolePermissionsBlob,
threadRolePermissionsBlobValidator,
} from './thread-permission-types.js';
import { type ThreadType, threadTypeValidator } from './thread-types-enum.js';
@@ -217,25 +217,6 @@
threadInfos: t.dict(tID, rawThreadInfoValidator),
});
-export type RemoveThreadOperation = {
- +type: 'remove',
- +payload: { +ids: $ReadOnlyArray<string> },
-};
-
-export type RemoveAllThreadsOperation = {
- +type: 'remove_all',
-};
-
-export type ReplaceThreadOperation = {
- +type: 'replace',
- +payload: { +id: string, +threadInfo: RawThreadInfo },
-};
-
-export type ThreadStoreOperation =
- | RemoveThreadOperation
- | RemoveAllThreadsOperation
- | ReplaceThreadOperation;
-
export type ClientDBThreadInfo = {
+id: string,
+type: number,
@@ -255,16 +236,6 @@
+pinnedCount?: number,
};
-export type ClientDBReplaceThreadOperation = {
- +type: 'replace',
- +payload: ClientDBThreadInfo,
-};
-
-export type ClientDBThreadStoreOperation =
- | RemoveThreadOperation
- | RemoveAllThreadsOperation
- | ClientDBReplaceThreadOperation;
-
export type ThreadDeletionRequest = {
+threadID: string,
+accountPassword: ?string,
diff --git a/lib/utils/thread-ops-utils.js b/lib/utils/thread-ops-utils.js
--- a/lib/utils/thread-ops-utils.js
+++ b/lib/utils/thread-ops-utils.js
@@ -1,10 +1,12 @@
// @flow
+import type {
+ ClientDBThreadStoreOperation,
+ ThreadStoreOperation,
+} from '../ops/thread-store-ops.js';
import { assertThreadType } from '../types/thread-types-enum.js';
import {
type ClientDBThreadInfo,
- type ThreadStoreOperation,
- type ClientDBThreadStoreOperation,
type RawThreadInfo,
} from '../types/thread-types.js';
diff --git a/native/redux/client-db-utils.js b/native/redux/client-db-utils.js
--- a/native/redux/client-db-utils.js
+++ b/native/redux/client-db-utils.js
@@ -1,5 +1,6 @@
// @flow
+import type { ClientDBThreadStoreOperation } from 'lib/ops/thread-store-ops.js';
import type {
ClientDBMessageStoreOperation,
RawMessageInfo,
@@ -8,7 +9,6 @@
} from 'lib/types/message-types.js';
import type {
ClientDBThreadInfo,
- ClientDBThreadStoreOperation,
RawThreadInfo,
ThreadStoreThreadInfos,
} from 'lib/types/thread-types.js';
diff --git a/native/redux/persist.js b/native/redux/persist.js
--- a/native/redux/persist.js
+++ b/native/redux/persist.js
@@ -21,6 +21,7 @@
convertReportStoreOperationToClientDBReportStoreOperation,
convertReportsToReplaceReportOps,
} from 'lib/ops/report-store-ops.js';
+import type { ClientDBThreadStoreOperation } from 'lib/ops/thread-store-ops.js';
import { highestLocalIDSelector } from 'lib/selectors/local-id-selectors.js';
import { createAsyncMigrate } from 'lib/shared/create-async-migrate.js';
import { inconsistencyResponsesToReports } from 'lib/shared/report-utils.js';
@@ -45,10 +46,7 @@
ClientReportCreationRequest,
} from 'lib/types/report-types.js';
import { defaultConnectionInfo } from 'lib/types/socket-types.js';
-import type {
- ClientDBThreadStoreOperation,
- ClientDBThreadInfo,
-} from 'lib/types/thread-types.js';
+import type { ClientDBThreadInfo } from 'lib/types/thread-types.js';
import {
convertMessageStoreOperationsToClientDBOperations,
translateClientDBMessageInfoToRawMessageInfo,
diff --git a/native/redux/redux-setup.js b/native/redux/redux-setup.js
--- a/native/redux/redux-setup.js
+++ b/native/redux/redux-setup.js
@@ -13,6 +13,7 @@
deleteAccountActionTypes,
logInActionTypes,
} from 'lib/actions/user-actions.js';
+import type { ThreadStoreOperation } from 'lib/ops/thread-store-ops.js';
import baseReducer from 'lib/reducers/master-reducer.js';
import { processThreadStoreOperations } from 'lib/reducers/thread-reducer.js';
import {
@@ -26,7 +27,6 @@
import { rehydrateActionType } from 'lib/types/redux-types.js';
import type { SetSessionPayload } from 'lib/types/session-types.js';
import { defaultConnectionInfo } from 'lib/types/socket-types.js';
-import type { ThreadStoreOperation } from 'lib/types/thread-types.js';
import { reduxLoggerMiddleware } from 'lib/utils/action-logger.js';
import { setNewSessionActionType } from 'lib/utils/action-utils.js';
import { defaultNotifPermissionAlertInfo } from 'lib/utils/push-alerts.js';
diff --git a/native/schema/CommCoreModuleSchema.js b/native/schema/CommCoreModuleSchema.js
--- a/native/schema/CommCoreModuleSchema.js
+++ b/native/schema/CommCoreModuleSchema.js
@@ -6,6 +6,7 @@
import type { TurboModule } from 'react-native/Libraries/TurboModule/RCTExport.js';
import type { ClientDBReportStoreOperation } from 'lib/ops/report-store-ops.js';
+import type { ClientDBThreadStoreOperation } from 'lib/ops/thread-store-ops.js';
import type { OLMOneTimeKeys } from 'lib/types/crypto-types';
import type { ClientDBDraftStoreOperation } from 'lib/types/draft-types.js';
import type {
@@ -13,10 +14,7 @@
ClientDBMessageStoreOperation,
} from 'lib/types/message-types.js';
import type { ClientDBStore } from 'lib/types/store-ops-types';
-import type {
- ClientDBThreadInfo,
- ClientDBThreadStoreOperation,
-} from 'lib/types/thread-types.js';
+import type { ClientDBThreadInfo } from 'lib/types/thread-types.js';
type ClientPublicKeys = {
+primaryIdentityPublicKeys: {

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 29, 5:01 PM (19 h, 12 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2597538
Default Alt Text
D8616.diff (7 KB)

Event Timeline