[lib] Convert the operations
Summary:
Add a conversion between DB and client types.
https://linear.app/comm/issue/ENG-10331/modify-the-reducer-to-support-the-db-operations
Depends on D14451
Test Plan:
Tested the whole stack on both native and web:
- Run the app on Redux version 86 with a modification to processDMOperation making all the INBOUND messages unsupported
- On one platform created a thread and sent a text message. These were visible on the sender, and invisible on the recipient
- Closed the recipient and added a migration that unshimms the thread creation operations, e.g.
unshimDMOperations( state, dmOperationTypes.CREATE_THREAD, handleReduxMigrationFailure, ): MigrationFunction<WebNavInfo, AppState>),
- Run the recipient and noticed the thread appearing
- Added another migration, this time unshimming text messages
- Run the recipient and noticed messages appearing
Reviewers: kamil, bartek
Reviewed By: kamil
Subscribers: ashoat
Differential Revision: https://phab.comm.dev/D14452