Commit Graph

51 Commits

Author SHA1 Message Date
Renan Mav b7ddb07d90 fix: typo in filename list-converations (#7036) 2024-12-10 20:59:35 +00:00
Eric Bailey 400c432283 Reduce calls to getLogs (#6381) 2024-11-15 11:43:21 -06:00
Eric Bailey db39f3e98a Reduce listConvos requests (#6378)
* Reduce page size for request

* Remove refetch interval entirely

* Add comment

* Optimistically mark as read

* Drop default active poll interval to 60s from 5min

* Only optimistically update unread count if success
2024-11-15 11:34:31 -06:00
Samuel Newman 7e79c7f768 [🐴] Reduce amount that message sent date is shown (#4228) 2024-10-03 18:19:38 +03:00
Samuel Newman cd3b502b34 [🐴] Option to share via chat in post dropdown (#4231)
* add send via chat button to post dropdown

(cherry picked from commit d8458c0bc344f993266f7bc7e325d47e40619648)

* let usePostQuery take uris with DIDs

(cherry picked from commit 16b577ce749fd07e1d5f8461e8ca71c5b874a936)

* add embed preview in composer

(cherry picked from commit 795ceb98d55b6a3ab5b83187a582f9656d71db69)

* rm log

(cherry picked from commit 374d6b8869459f08d8442a3a47d67149e8d9ddd4)

* remove params properly, or at least as close to

(cherry picked from commit c20e0062c2ca4d9c2b28324eee5e713a1a3ab251)

* show images in preview

(cherry picked from commit 5bb617a3ce00f67bfc79784b2f81ef8dcb5bfc25)

* Register embed immediately

(cherry picked from commit ee120d5438a2c91c8980288665576d6a29b4c7e7)

* Add hover to match embeds

(cherry picked from commit 5297a5b06e499f46a9f6da510124610005db2448)

* Update post dropdown copy

(cherry picked from commit bc7e9f6a4303926a53c5c889f1f1b136faf20491)

* Embed preview style tweaks

(cherry picked from commit 9e3ccb0f25ac2f3ce6af538bb29112a3e96e01b1)

* use hydrated posts from API and just use postembed component

(cherry picked from commit cc0b84db87ca812d76cc69f46170ae84cfdde4ef)

* fix type error

(cherry picked from commit 9c49b940e1248e8a7c3b64190c5cb20750043619)

* undo needless export

(cherry picked from commit 1186701c997c50c0b29a809637cb9bc061b8c0a0)

* fix overflow

(cherry picked from commit 8868d5075062d0199c8ef6946fabde27e46ea378)

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-31 11:10:00 -05:00
Samuel Newman 8eb3cebb36 [🐴] send record via link in text (Record DMs - base PR) (#4227)
* send record via link in text

* re-trim text after removing link
2024-05-31 10:41:06 -05:00
dan 9bd411c151 Replace getAgent() with reading agent (#4243)
* Replace getAgent() with agent

* Replace {agent} with agent
2024-05-28 16:37:51 +01:00
Samuel Newman dc9d80d2a8 [🐴] update convo list from message bus (#4189)
* update convo list from message bus

* don't increase unread count if you're the sender

* add refetch interval back

* Fix deleted message state copy

* only enable if `hasSession`

* Fix logged out handling

* increase refetch interval to 60s

* request 10s interval when message screen active

* use useAppState hook for convo resume/background

* Combine forces

* fix useFocusEffect logic

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-24 13:59:28 -05:00
Eric Bailey c0175af76a Recover from initial failed firehose state (#4211) 2024-05-24 13:50:50 -05:00
Eric Bailey 2897b79bef Make sure failed messages enter error state (#4210) 2024-05-24 10:01:30 -05:00
Eric Bailey 9096655955 Reduce polling (#4204)
* Reduce polling a bit

* Bump to 60

* Increase all

* ok 3
2024-05-23 17:21:47 -05:00
Eric Bailey 3d1ed04a70 [🐴] Do not init event bus if no session (#4193)
* Do not init event bus if no session

* Be explicit

* Simplify, fix log
2024-05-23 12:00:56 -05:00
Eric Bailey 9011c11eaf Reduce polling when app is backgrounded (#4192) 2024-05-23 11:54:22 -05:00
Eric Bailey 2c6c906934 [🐴] Suspend event bus when switching accounts (#4190)
* Suspend event bus when switching accounts

* Make effect symmetrical
2024-05-23 10:08:37 -05:00
Samuel Newman 4a7436886d remove DMs gate (#4112) 2024-05-20 19:29:22 -05:00
Eric Bailey 2414559b80 [🐴] Don't retry sends (#4111)
* Don't retry sends

* Don't retry batch sends
2024-05-20 09:56:57 -05:00
Eric Bailey 7de0b0a58c [🐴] Convo agent cleanup (#4109)
* Move comment, remove unused code

* Clean up sending

* Remove temp hack

* Remove debug
2024-05-19 18:52:51 -05:00
Eric Bailey 49314e2d1f [🐴] Mod disabled (#4089)
* Handle send failures

* Add chat disabled state
2024-05-17 16:05:21 -07:00
Eric Bailey 0444e69c35 Revert "Aggregate quickly-sent messages into batches (#4061)" (#4069)
This reverts commit d424945eed.
2024-05-16 19:51:26 -05:00
Eric Bailey d424945eed Aggregate quickly-sent messages into batches (#4061) 2024-05-16 16:39:05 -05:00
Eric Bailey 4bceabc21c [🐴] Error recovery (#4036)
* Handle block state when sending messages

* Handle different pending failures

* Use existing profile data to handle blocks

* Better cleanup, leave room for more

* Attempt recover upon next send

* Reset pending failure

* Capture unexpected error

* Gracefully handle network errors and recovery

* Re-align error components and types

* Include history fetching in recoverable states
2024-05-16 14:01:39 -05:00
Eric Bailey 3674c8abce Remove error for refresh, not necessary (#4034) 2024-05-15 15:32:40 -05:00
Eric Bailey 04aea93192 [🐴] Better retry styling (#4032)
* Pass whole object to MessageItem for clarity

* Add retry to pending-message

* Style send failure, retry

* Group pending messages

* Remove todos

* Fix types with fake message
2024-05-15 11:45:18 -05:00
Eric Bailey 6382fec732 Reset after 5 min (#4026) 2024-05-14 21:21:09 -05:00
Samuel Newman 9861494e34 [🐴] Message drafts (#3993)
* drafts

* don't throw if no convo ID

* Remove labs package

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-14 18:55:43 +01:00
Eric Bailey 1c51a48764 [🐴] Make status checks easier, fix load state (#4010)
* Make status checks easier, fix load state

* Make naming more clear

* Split up types for easier re-use

* Replace hacky usage
2024-05-14 11:59:53 -05:00
Eric Bailey 9173be686c [🐴] Swap in new package, update usages (#3992)
* Swap in new package, update usages

* Remove uneccessary patch

* Override type in safe place
2024-05-14 09:22:09 -05:00
Eric Bailey f84a2def29 [🐴] Simplify message passing, cleanup (#3952)
* Simplify message passing

* Setup/teardown events
2024-05-10 12:44:55 -05:00
Eric Bailey d7f3a8d01f [🐴] Clean up after deleting message (#3950)
* Clean up after removal

* Remove console
2024-05-10 10:40:52 -05:00
Hailey 1a90426026 [🐴] Remove extra spinner states from chat screen (#3947)
* remove extra loading states from chat

* nits

* fix scrolling animation to bottom

* nit

* move spinner to top
2024-05-10 07:49:08 -07:00
Eric Bailey 195c9f1045 [🐴] Handle errors, improve styling (#3937)
* Handle errors, improve styling

* Remove old UI
2024-05-10 08:23:37 -05:00
Eric Bailey 55fdbc7399 Add retries to all handlers (#3935) 2024-05-09 16:31:36 -05:00
Eric Bailey 3bac0182b5 [🐴] Integrate event bus (#3915)
* Integrate event bus

* Fixes

* Move events mgmt into Convo class

* Clean up poll interval updates

* Remove unused

* Remove annoying log
2024-05-08 18:01:07 -05:00
Eric Bailey ce2eddca8e [🐴] Refactor event bus (#3919)
* Refactor to singleton class outside react

* Fix retry, remove debug logs
2024-05-08 17:41:10 -05:00
Eric Bailey 7d06fb9432 Move to requestPollInterval handling (#3914) 2024-05-08 11:34:04 -05:00
Eric Bailey 56f713077f [🐴] Reorg convo files (#3909)
* Remove unused prop

* Reorganize
2024-05-07 19:46:59 -07:00
Samuel Newman 4fe5a869c3 [🐴] Unread messages badge (#3901)
* add badge

* move stringify logic to hook

* add mutation hooks

* optimistic mark convo as read

* don't count muted chats

* Integrate new context

* Integrate mark unread mutation

* Remove unused edit

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-07 21:23:09 -05:00
Eric Bailey 165fdb7049 [🐴] Integrate global event bus (#3904)
* Conditionally run global event bus

* Add current convo id context, bundle providers
2024-05-07 20:25:58 -05:00
Eric Bailey f78126e01a [🐴] State transitions (#3880)
* Handle init/resume/suspend/background and polling

* Add debug and temp guard

* Make state transitions sync

* Make init sync also

* Checkpoint: confusing but working state machine

* Reducer-esque

* Remove poll events

* Guard fetchConvo

(cherry picked from commit 8385579d31500bb4bfb60afeecdc1eb3ddd7e747)

* Clean up polling, make sync

(cherry picked from commit 7f75cd04c3bf81c94662785748698640a84bef51)

* Update history handling

(cherry picked from commit b82b552ba4040adf7ead2377541132a386964ff8)

* Check for screen focus in app state listener

* Get rid of ad-hoc status checks
2024-05-07 17:54:52 -05:00
Eric Bailey 87cb4c105e [🐴] Global event mgmt (#3897)
* Add global event bus for messages logs

* Add rev to state

* Better handle error

* Clean up polling, add backgrounding

* Add trailConvo method

* Extend polling until we're ready for this
2024-05-07 17:54:34 -05:00
Eric Bailey 0b6ace990e [Clipclops] All my clops gone (#3850)
* Handle two common errors, provide more clarity around error states

* Handle failed polling

* Remove unused error type

* format
2024-05-06 15:35:05 -05:00
Hailey c4160c25a3 [Clipclops] Delete message in dialog (#3849)
* delete and copy

* add retry dialog if message send fails

* add layout animation

* fix `nextMessage` being incorrect

---------

Co-authored-by: Samuel Newman <mozzius@protonmail.com>
2024-05-05 02:06:10 +01:00
Hailey feff55a14a Clipclop tweaks (#3851)
* scroll on input resize

* add back the padding 🙊

* fix timestamps
2024-05-03 15:08:59 -07:00
Hailey 876816675e [Clipclops] Refactor message list (#3832)
* rework the list for accessibility

* Reverse reverse

* progress

* good to start testing

* memo `MessageItem`

* small hack

* use our custom `List` impl

* use `ScrollProvider` for `onScroll` event

* remove use of `runOnJS`

* actually, let's keep it

* add some comments

---------

Co-authored-by: Eric Bailey <git@esb.lol>
2024-05-03 14:18:01 -07:00
Eric Bailey 051e897a2b [Clipclops] Moar error (#3837)
* Add history error

* Log error

* Add period
2024-05-03 09:39:40 -05:00
Eric Bailey c9cf608f78 [Clipclops] External store, suspend/resume (#3829)
* Initial working external store

* Clean up WIP, explore suspend/resume

* Clean up state, bindings, snapshots, add some logs

* Reduce snapshots, add better logic check

* Bump interval a smidge

* Remove unused type
2024-05-02 20:57:51 -05:00
Eric Bailey a20fe4c9a0 [Clipclops] Deletions (#3824)
* Handle message deletions

* Handle failures
2024-05-02 13:12:34 -05:00
Samuel Newman e19f882450 [Clipclops] Clop menu, leave clop, mute/unmute clop (#3804)
* convo menu

* memoize convomenu

* add convoId to useChat + memoize value

* leave convo

* Create mute-conversation.ts

* add mutes, remove changes to useChat and use chat.convo instead

* add todo comments

* leave convo confirm prompt

* remove dependency on useChat and pass in props instead

* show menu on long press

* optimistic update

* optimistic update leave + add error capture

* don't `popToTop` when unnecessary

---------

Co-authored-by: Hailey <me@haileyok.com>
2024-05-02 00:15:10 +01:00
Eric Bailey 5148b957b7 [Clipclops] Pending messages (#3803)
* Make pending message like normal message

* Remove getter

* Make props public
2024-05-01 16:29:34 -05:00
Eric Bailey fc0eab2d03 Retry clops (#3800)
* Add convo retries, sketch out tests

* Only append nextMessage to messages

* Remove debug code
2024-05-01 15:24:56 -05:00