I would probably do an event-source architecture, where you record events on the client and then push them to the server when you're reconnected. It has a lot of benefits, for instance, trivial auditing and free serialization.
yeah essentially, see electricsql
though they also have "pglite" running in wasm.
same concept though, sync slices to an embedded db.