Commit graph

47 commits

Author SHA1 Message Date
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
Eric Bailey
538ca8dff1
[Clipclops] 2 Clipped 2 Clopped (#3796)
* Add new pkg

* copy queries over to new file

* useConvoQuery

* useListConvos

* Use useListConvos

* extract useConvoQuery

* useGetConvoForMembers

* Delete unused

* exract useListConvos

* Replace imports

* Messages/List/index.tsx

* extract getconvoformembers

* MessageItem

* delete chatLog and rename query.ts

* Update import

* Clipclop service (#3794)

* Add Chat service

* Better handle deletions

* Rollback unneeded changes

* Better insertion order

* Use clipclops

* don't show FAB if error

* clean up imports

* Update Convo service

* Remove temp files

---------

Co-authored-by: Samuel Newman <mozzius@protonmail.com>
2024-05-01 10:14:41 -07:00