HomePhabricator
Diffusion Comm d5e299a6a2fb

[lib] introduce resetting Outbound P2P Messages to `SQLiteAPI`

Description

[lib] introduce resetting Outbound P2P Messages to SQLiteAPI

Summary:
This diff introduces a shared interface on SQLiteAPI so the JS code in lib can use this API on both platforms.

Depends on D13030

Test Plan:
Tested in D13032

Additionally, run this code:

const deviceID = 'deviceID';

await processDBStoreOperations({
  outboundP2PMessages: [
    {
      messageID: 'reset-1',
      deviceID,
      userID: 'user-1',
      timestamp: '1',
      plaintext: 'decrypted-1',
      ciphertext: 'encrypted-1',
      status: 'encrypted',
      supportsAutoRetry: true,
    },
    {
      messageID: 'reset-2',
      deviceID,
      userID: 'user-1',
      timestamp: '1',
      plaintext: 'decrypted-1',
      ciphertext: 'encrypted-1',
      status: 'sent',
      supportsAutoRetry: false,
    },
    {
      messageID: 'reset-3',
      deviceID,
      userID: 'user-1',
      timestamp: '3',
      plaintext: 'decrypted-1',
      ciphertext: 'encrypted-1',
      status: 'encrypted',
      supportsAutoRetry: false,
    },
  ],
});

const before = await sqliteAPI.getAllOutboundP2PMessages();
console.log(before.filter(msg => msg.deviceID === deviceID));
const ids =
  await sqliteAPI.resetOutboundP2PMessagesForDevice(deviceID);
console.log(ids);
const after = await sqliteAPI.getAllOutboundP2PMessages();
console.log(after.filter(msg => msg.deviceID === deviceID));

Reviewers: tomek

Reviewed By: tomek

Subscribers: ashoat

Differential Revision: https://phab.comm.dev/D13031

Details

Provenance
kamilAuthored on Aug 7 2024, 6:01 AM
Reviewer
tomek
Differential Revision
D13031: [lib] introduce resetting Outbound P2P Messages to `SQLiteAPI`
Parents
rCOMM12da08a568d6: [native] introduce resetting Outbound P2P Messages to `CommCoreModule`
Branches
Unknown
Tags
Unknown