[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