Show progress dialog during delete

This commit is contained in:
Scott Nonnenberg 2021-01-12 16:42:15 -08:00 committed by GitHub
parent 8c25ffd6f5
commit 8116a8561d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 135 additions and 130 deletions

View file

@ -238,7 +238,8 @@ export type ServerInterface = DataInterface & {
conversationId: string
) => Promise<Array<MessageType>>;
removeConversation: (id: Array<string> | string) => Promise<void>;
removeMessage: (id: Array<string> | string) => Promise<void>;
removeMessage: (id: string) => Promise<void>;
removeMessages: (ids: Array<string>) => Promise<void>;
saveMessage: (
data: MessageType,
options: { forceSave?: boolean }
@ -266,51 +267,41 @@ export type ServerInterface = DataInterface & {
};
export type ClientInterface = DataInterface & {
getAllConversations: ({
ConversationCollection,
}: {
getAllConversations: (options: {
ConversationCollection: typeof ConversationModelCollectionType;
}) => Promise<ConversationModelCollectionType>;
getAllGroupsInvolvingId: (
id: string,
{
ConversationCollection,
}: {
options: {
ConversationCollection: typeof ConversationModelCollectionType;
}
) => Promise<ConversationModelCollectionType>;
getAllPrivateConversations: ({
ConversationCollection,
}: {
getAllPrivateConversations: (options: {
ConversationCollection: typeof ConversationModelCollectionType;
}) => Promise<ConversationModelCollectionType>;
getConversationById: (
id: string,
{ Conversation }: { Conversation: typeof ConversationModel }
options: { Conversation: typeof ConversationModel }
) => Promise<ConversationModel>;
getExpiredMessages: ({
MessageCollection,
}: {
getExpiredMessages: (options: {
MessageCollection: typeof MessageModelCollectionType;
}) => Promise<MessageModelCollectionType>;
getMessageById: (
id: string,
{ Message }: { Message: typeof MessageModel }
options: { Message: typeof MessageModel }
) => Promise<MessageType | undefined>;
getMessageBySender: (
options: {
data: {
source: string;
sourceUuid: string;
sourceDevice: string;
sent_at: number;
},
{ Message }: { Message: typeof MessageModel }
options: { Message: typeof MessageModel }
) => Promise<MessageModel | null>;
getMessagesBySentAt: (
sentAt: number,
{
MessageCollection,
}: { MessageCollection: typeof MessageModelCollectionType }
options: { MessageCollection: typeof MessageModelCollectionType }
) => Promise<MessageModelCollectionType>;
getOlderMessagesByConversation: (
conversationId: string,
@ -341,39 +332,33 @@ export type ClientInterface = DataInterface & {
Message: typeof MessageModel;
}
) => Promise<MessageModel | undefined>;
getNextExpiringMessage: ({
Message,
}: {
getNextExpiringMessage: (options: {
Message: typeof MessageModel;
}) => Promise<MessageModel | null>;
getNextTapToViewMessageToAgeOut: ({
Message,
}: {
getNextTapToViewMessageToAgeOut: (options: {
Message: typeof MessageModel;
}) => Promise<MessageModel | null>;
getOutgoingWithoutExpiresAt: ({
MessageCollection,
}: {
getOutgoingWithoutExpiresAt: (options: {
MessageCollection: typeof MessageModelCollectionType;
}) => Promise<MessageModelCollectionType>;
getTapToViewMessagesNeedingErase: ({
MessageCollection,
}: {
getTapToViewMessagesNeedingErase: (options: {
MessageCollection: typeof MessageModelCollectionType;
}) => Promise<MessageModelCollectionType>;
getUnreadByConversation: (
conversationId: string,
{
MessageCollection,
}: { MessageCollection: typeof MessageModelCollectionType }
options: { MessageCollection: typeof MessageModelCollectionType }
) => Promise<MessageModelCollectionType>;
removeConversation: (
id: string,
{ Conversation }: { Conversation: typeof ConversationModel }
options: { Conversation: typeof ConversationModel }
) => Promise<void>;
removeMessage: (
id: string,
{ Message }: { Message: typeof MessageModel }
options: { Message: typeof MessageModel }
) => Promise<void>;
removeMessages: (
ids: Array<string>,
options: { Message: typeof MessageModel }
) => Promise<void>;
saveMessage: (
data: MessageType,
@ -383,9 +368,7 @@ export type ClientInterface = DataInterface & {
// Test-only
_getAllMessages: ({
MessageCollection,
}: {
_getAllMessages: (options: {
MessageCollection: typeof MessageModelCollectionType;
}) => Promise<MessageModelCollectionType>;
@ -394,9 +377,10 @@ export type ClientInterface = DataInterface & {
shutdown: () => Promise<void>;
removeAllMessagesInConversation: (
conversationId: string,
{
MessageCollection,
}: { MessageCollection: typeof MessageModelCollectionType }
options: {
logId: string;
MessageCollection: typeof MessageModelCollectionType;
}
) => Promise<void>;
removeOtherData: () => Promise<void>;
cleanupOrphanedAttachments: () => Promise<void>;
@ -405,7 +389,6 @@ export type ClientInterface = DataInterface & {
// Client-side only, and test-only
_removeConversations: (ids: Array<string>) => Promise<void>;
_removeMessages: (ids: Array<string>) => Promise<void>;
_cleanData: (data: any, path?: string) => any;
_jobs: { [id: string]: ClientJobType };
};