about summary refs log tree commit diff
path: root/src/screens/Messages/Conversation
Commit message (Collapse)AuthorAgeFilesLines
...
* [🐴] Remove extra spinner states from chat screen (#3947)Hailey2024-05-102-31/+78
| | | | | | | | | | | * remove extra loading states from chat * nits * fix scrolling animation to bottom * nit * move spinner to top
* [🐴] Handle errors, improve styling (#3937)Eric Bailey2024-05-102-46/+36
| | | | | * Handle errors, improve styling * Remove old UI
* [🐴] Rich text in messages (#3926)Samuel Newman2024-05-091-3/+23
| | | | | | | | | | | | | | | | | * add facets to message * richtext messages * undo richtexttag changes * whoops, don't redetect facets * dont set color directly * shorten links and filter invalid facets * fix link shortening * pass in underline style
* Handle push notifications for DMs (#3895)Hailey2024-05-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add some better handling for notifications prep merge move `useNotificationsListener` into shell progress better structure only show messages notifications while using app if it is the current account progress only emit on native current chat emitter only show alerts for the current chat type add logs setup handlers * remove event emitter * just needs cleanup * oops * remove unnecessary `queryClient` param * few fixes * cleanup * nit * remove folds * remove comment * simplify if * add back invalidate * comment out other navigations for now * rename type * handle various navigation cases * push to conversation from notification * update badge in all cases except `chat-message` * ensure no duplicate notifications * rm unused `animationOnReplace` * revert to using `goBack` in the conversation header * add todo comment
* [🐴] Skeleton header (#3921)Samuel Newman2024-05-081-22/+45
|
* add sideborders prop (#3920)Samuel Newman2024-05-081-0/+1
|
* [🐴] Reorg convo files (#3909)Eric Bailey2024-05-073-26/+26
| | | | | * Remove unused prop * Reorganize
* [🐴] Integrate global event bus (#3904)Eric Bailey2024-05-071-1/+12
| | | | | * Conditionally run global event bus * Add current convo id context, bundle providers
* [🐴] State transitions (#3880)Eric Bailey2024-05-072-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* [Clipclops] All my clops gone (#3850)Eric Bailey2024-05-063-24/+24
| | | | | | | | | * Handle two common errors, provide more clarity around error states * Handle failed polling * Remove unused error type * format
* [🐴] Finalize web message screen (#3868)Hailey2024-05-061-35/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add `onStartReached` to web list * fix `rootMargin` * Add `contain`, handle scroll events * improve types, fix typo * simplify * adjust `scrollToTop` and `scrollToOffset` to support `contain`, add `scrollToEnd` * rename `handleWindowScroll` to `handleScroll` * support basic `maintainVisibleContentPosition` * rename `contain` to `containWeb` * remove unnecessary `flex: 1` * add missing props * add root prop to `Visibility` * add root prop to `Visibility` * revert adding `maintainVisibleContentPosition` * remove unnecessary wrapper * add style * oops * maintain position for web * always apply `flex: 1` to styles when contained * add a contained list to storybook * make `onScroll` a worklet in storybook * revert test code * remove unnecessary `flex: 1`
* only use `KeyboardProvider` in conversation screen (#3869)Hailey2024-05-051-4/+7
|
* [🐴] Improve message pressing (#3864)Samuel Newman2024-05-051-0/+1
| | | | | | | | | | | * allow tapping message when keyboard open * dismiss keyboard on open msg menu * show message info on press * Revert "show message info on press" This reverts commit 61d039a7024c27583aed7d1e9f1ff5b919dc7d30.
* [🐴] Dismiss keyboard before opening convo menu (#3862)Samuel Newman2024-05-051-1/+1
| | | | | * Dismiss keyboard before opening convo menu * call `props.onPress()` instead
* [🐴] List Adjustments (#3857)Hailey2024-05-044-53/+48
|
* Clipclop tweaks (#3851)Hailey2024-05-033-12/+14
| | | | | | | * scroll on input resize * add back the padding 🙊 * fix timestamps
* [Clipclops] Refactor message list (#3832)Hailey2024-05-035-67/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* [Clipclops] Pending message style with layout animation (#3844)Samuel Newman2024-05-031-1/+7
| | | | | | | * decrease group gap to 3 mins * pending style with layout animation * make pending state lighter
* reenable tabs (#3847)Samuel Newman2024-05-031-12/+5
|
* remove broken keyboard offset code (#3842)Samuel Newman2024-05-031-16/+4
|
* [Clipclops] Header tweaks (#3839)Samuel Newman2024-05-031-2/+4
| | | | | * wrap text * add dividers to convo menu
* [Clipclops] Moar error (#3837)Eric Bailey2024-05-032-0/+57
| | | | | | | * Add history error * Log error * Add period
* [Clipclops] External store, suspend/resume (#3829)Eric Bailey2024-05-022-25/+22
| | | | | | | | | | | | | * 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
* visually align icon (#3831)Samuel Newman2024-05-032-2/+2
|
* [Clipclops] Message actions for native and web (#3807)Hailey2024-05-022-166/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * haptic on long press * add animation to press and hold * eslint disable for now * adjust styles * dont trigger if animation is cancelled * organize * add a delete menu * reset scale automatically * message actions dialog cleanup center the trigger handle focus/unfocus better make triggers accessible weg dropdown menu add a wep specific wrapper decrease press delay add report button improve shrink logic use `self_end` instead of `margin: auto` rm extra `?` move `MessageItem` to `components` add delete button * rm some padding * update after merge * fix merge * web only types * fix crash * add an explanation * fix web types --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* create keyboardverticaloffset hook (#3823)Samuel Newman2024-05-021-3/+28
|
* rename "MessagesList" to "Messages" (#3826)Samuel Newman2024-05-021-1/+1
|
* [Clipclops] Minor web tweaks (#3822)Samuel Newman2024-05-021-1/+4
| | | | | * add a11y + onPress to web send button * only adjust leading on web, due to overflow issue
* [Clipclop] Input polish (#3819)Samuel Newman2024-05-024-91/+109
| | | | | * tweak input styles + add min-shell mode * android tweaks + hitslop
* [Clipclops] rm `<Trans>` from header (#3818)Hailey2024-05-021-4/+2
|
* [Clipclops] Remove viewability config (#3805)Hailey2024-05-011-26/+41
| | | | | * remove viewability config * use `onScroll` for keeping track of content offset
* [Clipclops] Clop menu, leave clop, mute/unmute clop (#3804)Samuel Newman2024-05-021-24/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* [Clipclops] Pending messages (#3803)Eric Bailey2024-05-011-3/+1
| | | | | | | * Make pending message like normal message * Remove getter * Make props public
* [Clipclops] Replace 🐴 with real icon (#3802)Samuel Newman2024-05-012-4/+4
| | | | | * replace 🐴 with paper plane icon * replace envelope with plus
* Retry clops (#3800)Eric Bailey2024-05-011-0/+9
| | | | | | | * Add convo retries, sketch out tests * Only append nextMessage to messages * Remove debug code
* [Clipclops] Dynamic input height (#3778)Hailey2024-05-012-10/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * input max height/scrollability * remove unused imports * add a web-specific version * enter and shift enter for web * missing onSubmit for native * missing attributes * improve layout of input on web * use the correct text color in the input * trim messages * remove `onSubmit` * move prop up * trim message on web * remove extra function call --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* [Clipclops] Fix list, rework structure (#3799)Hailey2024-05-012-63/+80
| | | | | | | | | | | | | | | * proper min index * move keyextractor out of react * move onSendMessage out * don't render the flatlist conditionally * add loader * rework structure * remove some unneeded logic
* [Clipclops] 2 Clipped 2 Clopped (#3796)Eric Bailey2024-05-013-129/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* replace getDate with toIsoString().slice(0,10) (#3792)Samuel Newman2024-05-011-4/+8
|
* [Clipclops] Improve message list behaviour (#3789)Samuel Newman2024-05-011-4/+4
| | | | | | | * improve message list behaviour * replace useAgent with useSession * add explicit types to appease linter
* [Clipclops] Separate messages if there's a time gap (#3777)Samuel Newman2024-04-301-2/+20
| | | | | * separate msg groups by age * clean up logic and add comments
* [Clipclops] Header for chat (#3775)Hailey2024-04-301-10/+104
| | | | | | | | | | | | | | | | | | | | | | | * add temp `getchat` query * properly get the other profile * add basic header * normalize layout on all devices * remove unused imports, adjust style * remove unnecessary log * remove another log * remove some more imports * cleanup * use `Button` instead in the header * lint
* [Clipclops] adjust scroll position, keyboard color (#3771)Hailey2024-04-302-3/+4
| | | | | * use the correct keyboard appearance based on theme * i guess the min index should be 1
* [Clipclops] Add clop sent time to clipclop (#3772)Samuel Newman2024-04-302-43/+154
| | | | | * add message sent time to message * fix last message in group logic
* [Clipclops] Use API data for clipclop list (#3769)Samuel Newman2024-04-301-1/+1
| | | | | | | | | | | | | | | * use real API * remove extra tab icon * messages list web layout + style improvements * use style's text color for input * make new chat button way more obvious --------- Co-authored-by: Hailey <me@haileyok.com>
* [Clipclops] New clipclop dialog (#3750)Samuel Newman2024-04-302-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add new routes with placeholder screens * add clops list * add a clop input * add some better padding to the clops * some more adjustments * add rnkc * implement rnkc * implement rnkc * be a little less weird about it * rename clop stuff * rename more clop * one more * add codegenerated lexicon * replace hailey's types * use codegen'd types in components * fix error + throw if fetch failed * remove bad imports * update messageslist and messageitem * import useState * replace hailey's types * use codegen'd types in components * add FAB * new chat dialog * error + default search term * fix typo * fix web styles * optimistically set chat data * use cursor instead of last rev * [Clipclops] Temp codegenerated lexicon (#3749) * add codegenerated lexicon * replace hailey's types * use codegen'd types in components * fix error + throw if fetch failed * remove bad imports * update messageslist and messageitem * import useState * add clop service URL hook * add dm service url storage * use context * use context for service url (temp) * remove log * cleanup merge * fix merge error * disable hack * sender-based message styles * temporary filter * merge cleanup * add `hideBackButton` * rm unneeded return * tried to be smart * hide go back button * use `searchActorTypeahead` instead --------- Co-authored-by: Hailey <me@haileyok.com>
* [Clipclops] Add screen to view and send clip clops (#3754)Hailey2024-04-294-4/+293
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add new routes with placeholder screens * add clops list * add a clop input * add some better padding to the clops * some more adjustments * add rnkc * implement rnkc * implement rnkc * be a little less weird about it * rename clop stuff * rename more clop * one more * [Clipclops] Temp codegenerated lexicon (#3749) * add codegenerated lexicon * replace hailey's types * use codegen'd types in components * fix error + throw if fetch failed * remove bad imports * update messageslist and messageitem * import useState * add clop service URL hook * add dm service url storage * use context * use context for service url (temp) * remove log * nits --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* [Clipclops] New routes with placeholder screens (#3725)Samuel Newman2024-04-271-0/+32
* add new routes with placeholder screens * gate content * add filled envelope style * swap filled state * switch to `useAgent`