about summary refs log tree commit diff
path: root/src/screens/Messages
Commit message (Collapse)AuthorAgeFilesLines
...
* [🐴] Error recovery (#4036)Eric Bailey2024-05-162-44/+36
| | | | | | | | | | | | | | | | | | | | | * 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
* [🐴] Only scroll down one "screen" in height when foregrounding (#4027)Hailey2024-05-161-12/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maintain position after foreground * one possibility * don't overscroll when content size changes. * ignore the rule on 1 item * fix * [🐴] Pill for additional unreads when coming from background (#4043) * create a pill with some animatons * add some basic styles to the pill * make the animations reusable * bit better styling * rm logs --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * import --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* [🐴] Remove keyboard controller lib (#4038)Hailey2024-05-163-68/+89
| | | | | | | | | | | | | | | | | | | * remove library * implement using just reanimated * always return false for `keyboardIsOpening` on web * undo comment * handle input focus scroll more elegantly * add back minimal shell toggle on mobile web * adjust initialnumtorender * oops * nit
* [🐴] use Toggle component in settings screen (#4048)Samuel Newman2024-05-161-26/+62
| | | | | * use Toggle component * nits + notifs sounds native only
* [🐴] Tweak padding of web input (#4033)Hailey2024-05-161-3/+8
| | | | | * tweak more * nit
* [🐴] Copy tweaks (#4042)Hailey2024-05-162-2/+2
| | | | | | | | | * `notifications` -> `conversation` * `users` -> `people` * `other participants` -> `the other participant` * rename
* [🐴] Disable hover card when blocked or blocking (#4041)Hailey2024-05-161-0/+1
|
* [🐴] A few tweaks to message input on native (#4035)Hailey2024-05-161-1/+9
| | | | | | | | | * tweaks * only apply the padding on ios * use a hitslop of 10 instead * version bump
* Add push notification extensions (#4005)Hailey2024-05-151-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add wav * add sound to config * add extension to `updateExtensions.sh` * add ios source files * add a build extension * add a new module * use correct type on ios * update the build plugin * add android handler * create a patch for expo-notifications * basic android implementation * add entitlements for notifications extension * add some generic logic for ios * add age check logic * add extension to app config * remove dash * move directory * rename again * update privacy manifest * add prefs storage ios * better types * create interface for setting and getting prefs * add notifications prefs for android * add functions to module * add types to js * add prefs context * add web stub * wrap the app * fix types * more preferences for ios * add a test toggle * swap vars * update patch * fix patch error * fix typo * sigh * sigh * get stored prefs on launch * anotehr type * simplify * about finished * comment * adjust plugin * use supported file types * update NSE * futureproof ios * futureproof android * update sound file name * handle initialization * more cleanup * update js types * strict js types * set the notification channel * rm * add silent channel * add mute logic * update patch * podfile * adjust channels * fix android channel * update readme * oreo or higher * nit * don't use getValue * nit
* [🐴] Tweak list on mobile web (#3958)Hailey2024-05-153-9/+20
| | | | | | | | | | | | | * mobile web tweaks chat screen * revert a change * remove unnecessary prop * Spacing tweaks --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [🐴] Better retry styling (#4032)Eric Bailey2024-05-152-8/+1
| | | | | | | | | | | | | * 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
* [🐴] Show if user can be messaged in new chat search (#4021)Samuel Newman2024-05-151-9/+9
| | | | | | | | | | | | | * show if user can be messaged * allow 2 lines in handle field due to new text * cannot -> can't * rework canBeMessaged logic and move to new file --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [🐴] change `Follows Only` to `People I Follow` (#4028)Hailey2024-05-141-1/+1
|
* [🐴] Block states, read only (#4022)Eric Bailey2024-05-143-57/+129
| | | | | | | | | | | * Refactor ChatListItem for mod state * Refactor Conversation Header for mod state * Invalidate query for list when blocking/unblocking * Remove unused prop, restore border * Add mutations, hook up profile shadow to list query, use shadow-aware query for convo (#4024)
* remove serviceurl gate (#4019)Samuel Newman2024-05-142-112/+0
|
* [🐴] show deleted account for `missing.invalid` (#4014)Hailey2024-05-142-14/+26
| | | | | * show deleted account for `missing.invalid` * sigh
* [🐴] use "Chats" instead of "Messages" (#4013)Samuel Newman2024-05-141-2/+2
| | | | | | | * use "Chats" instead of "Messages" * chats to chat * use messages in the header
* 100vh settings screen (#4015)Samuel Newman2024-05-141-1/+1
|
* [🐴] Settings screen (#3830)Samuel Newman2024-05-142-24/+70
| | | | | | | | | * create settings screen + api * update api package * use putrecord API with validate false * create new RadioGroup component
* [🐴] Message drafts (#3993)Samuel Newman2024-05-142-4/+20
| | | | | | | | | | | * drafts * don't throw if no convo ID * Remove labs package --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Fix dep (#4011)Eric Bailey2024-05-141-1/+1
|
* [🐴] Make status checks easier, fix load state (#4010)Eric Bailey2024-05-142-17/+15
| | | | | | | | | * Make status checks easier, fix load state * Make naming more clear * Split up types for easier re-use * Replace hacky usage
* [🐴] Chat muted state (#3988)Samuel Newman2024-05-142-184/+212
| | | | | * separate out chatlistitem and add muted icon * move bell icon to the right of the timeelapsed
* [🐴] Swap in new package, update usages (#3992)Eric Bailey2024-05-141-1/+1
| | | | | | | * Swap in new package, update usages * Remove uneccessary patch * Override type in safe place
* dont send message if >1000 graphemes (#3995)Samuel Newman2024-05-132-4/+17
|
* [🐴] Mutate data instead of invalidating queries when muting or unmuting ↵Hailey2024-05-101-16/+11
| | | | | | | | | | | | | | | | | | | | | (#3946) * mutate for mutes * mutate data for mutes * add initial data, `useConvoQuery` in `ConvoMenu` * `useInitialData` * don't use `identifier` for notifications, use `dates` instead * better implementation * simplify * simplify * fix types
* [🐴] Move `KeyboardAvoidingView` up to the main screen (#3953)Hailey2024-05-102-44/+42
|
* [🐴] Adjust messages list styles (#3945)Hailey2024-05-102-97/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * some initial tweaks * tweaks * more tweaks * tweak chat header * properly align placeholders * tweak web header * one more... * remove extra loading states from chat * limit line count for display name * Tweaks styles (#3949) * Adjust sizing * Consistent font size * Adjust header * oops * fix accessibility in list * don't use `identifier` for notifications, use `dates` instead --------- Co-authored-by: Eric Bailey <git@esb.lol>
* [🐴] 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-092-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* [🐴] Add hover context menu for convo list on web (#3923)Hailey2024-05-091-10/+41
| | | | | | | | | | | | | | | | | | | | | * remove some unnecessary props * add hover trigger on web for convo list * lint * use `UserAvatar` to not affect accessibility * remove extra wrapper * add `label` * always show on mobile * adjust size of dots * make the message trigger dots the same size * ❓
* [🐴] Skeleton header (#3921)Samuel Newman2024-05-081-22/+45
|
* add sideborders prop (#3920)Samuel Newman2024-05-081-0/+1
|
* [🐴] Mark as read in convo menu (#3913)Samuel Newman2024-05-081-1/+2
| | | | | | | * add mark as read option * optimistic update + link up menu * rm messageid
* [🐴] Reorg convo files (#3909)Eric Bailey2024-05-073-26/+26
| | | | | * Remove unused prop * Reorganize
* Handle invalid service URLs (#3908)Eric Bailey2024-05-072-3/+19
|
* [🐴] 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
|
* Assorted clipclop fixes (#3853)Samuel Newman2024-05-041-2/+3
| | | | | | | | | | | | | | | * empty state for new chat dialog * use terniary * dark mode pending state * copy message text option * fix service url input (scrollview ftw) * whoops, fix equality * slightly reduce horizontal message padding
* 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