The biggest change in this PR is a change in how we fetch data for lists. Before, we had ConversationLoader and MessageLoader that had a published array of objects that views consumed. Now we're using GRDBQuery to have queries that observe DB changes in our views. This should make things a bit more consistent and let us do a bit more work trying to keep things up to date manually. It should also fix https://github.com/xmtp-labs/xmtp-inbox-ios/issues/93.
Add 5 second polling to conversation list view as well
Replaces AlertToast dependency with a more imperative Flash system that can show errors, success messages and info messages. Did I do this just because I don't care for the word "Toast?" Maybe.
The biggest change in this PR is a change in how we fetch data for lists. Before, we had
ConversationLoader
andMessageLoader
that had a published array of objects that views consumed. Now we're usingGRDBQuery
to have queries that observe DB changes in our views. This should make things a bit more consistent and let us do a bit more work trying to keep things up to date manually. It should also fix https://github.com/xmtp-labs/xmtp-inbox-ios/issues/93.Other stuff:
UpdatingRelativeTimestamp
for displaying timestamps that will stay updated (Fixes https://github.com/xmtp-labs/xmtp-inbox-ios/issues/95)AlertToast
dependency with a more imperativeFlash
system that can show errors, success messages and info messages. Did I do this just because I don't care for the word "Toast?" Maybe.Bonus: