about summary refs log tree commit diff
path: root/src/view/com/composer/Composer.tsx
Commit message (Collapse)AuthorAgeFilesLines
...
* Move self-label button (#5780)Hailey2024-10-171-58/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * move self label button? * rm * make sure its usable on large font sizes * tweak wording * update icon * tweaks * change button label and change opacity when no media (#5794) * Tweak it moar (#5807) * Tweak it moar * Pluralize * Labels --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> Co-authored-by: Eric Bailey <git@esb.lol>
* Composer - Self label dialog ALF rewrite (#4354)Samuel Newman2024-10-161-9/+1
|
* translate video state strings (#5762)surfdude292024-10-151-5/+5
|
* ext gif check (#5725)Hailey2024-10-111-0/+2
|
* Allow nested sheets without boilerplate (#5660)Samuel Newman2024-10-091-16/+4
| | | | Co-authored-by: Hailey <me@haileyok.com>
* Move Dialogs to Radix (#5648)Samuel Newman2024-10-081-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use Redix FocusTrap (#5638) * Use Redix FocusTrap * force resolutions on radix libs * add focus guards * use @radix-ui/dismissable-layer for escape handling * fix banner menu keypress by using `Pressable` * add menu in dialog example to storybook --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * use DismissableLayer/FocusScope for composer * fix storybook dialog * thread Portal through Prompt and avatar/banner * fix dialog style regression * remove tamagui --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Nicer error message for disabled quotes (#5644)dan2024-10-081-0/+3
|
* Move remaining composer state into reducer (#5623)dan2024-10-071-73/+48
| | | | | | Co-authored-by: Mary <git@mary.my.id> Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* Fetch link previews from RQ (#5608)dan2024-10-071-107/+69
| | | | | Co-authored-by: Mary <git@mary.my.id> Co-authored-by: Hailey <me@haileyok.com>
* Use composer state as source of truth for embeds/links on publish (#5606)dan2024-10-071-2/+0
| | | | | Co-authored-by: Mary <git@mary.my.id> Co-authored-by: Hailey <me@haileyok.com>
* [Video] Add dimension info to share intent (#5639)Hailey2024-10-071-1/+1
|
* Fix composer char progress layout (#5620)Hailey2024-10-061-48/+50
| | | | | * fix composer * more fixes
* [Sheets] [Pt. 1] Root PR (#5557)Hailey2024-10-041-275/+295
| | | | | | | Co-authored-by: Samuel Newman <mozzius@protonmail.com> Co-authored-by: Eric Bailey <git@esb.lol> Co-authored-by: dan <dan.abramov@gmail.com> Co-authored-by: Hailey <me@haileyok.com>
* Make composer reducer source of truth for images/video when publishing (#5595)dan2024-10-051-24/+23
| | | | | * Move caption and altText state into video reducer * Make composer state source of truth for images and video publish
* Track links and embeds in the composer reducer (#5593)dan2024-10-051-2/+15
| | | | | | | | | * Scaffold embed draft types These don't map 1:1 to the record structure. Rather, we select data from the draft on posting. * Prefill initial quote * Implement the reducer
* Rename some files and variables (#5587)dan2024-10-031-66/+54
| | | | | | | * Move composer reducers together * videoUploadState -> videoState * Inline videoDispatch
* Manage video reducer from composer reducer (#5573)dan2024-10-031-20/+29
| | | | | | | | | | | | | | | * Move video state into composer state * Represent video as embed This is slightly broken. In particular, we can't remove video yet because there's no action that results in video embed being removed. * Properly represent video as embed This aligns the video state lifetime with the embed lifetime. Video can now be properly added and removed. * Disable Add Video when we have images * Ignore empty image pick
* Refactor video uploads (#5570)dan2024-10-031-46/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unused video field * Stop exposing video dispatch * Move cancellation out of the reducer * Make useUploadStatusQuery controlled by jobId * Rename SetStatus to SetProcessing This action only has one callsite and it's always passing "processing". * Move jobId into video reducer state * Make cancellation scoped * Inline useCompressVideoMutation * Move processVideo down the file * Extract getErrorMessage * useServiceAuthToken -> getServiceAuthToken * useVideoAgent -> createVideoAgent * useVideoUploadLimits -> getVideoUploadLimits * useUploadVideoMutation -> uploadVideo * Use async/await in processVideo * Inline onVideoCompressed into processVideo * Use async/await for uploadVideo * Factor out error messages * Guard dispatch with signal This lets us remove the scattered signal checks around dispatch. * Move job polling out of RQ * Handle poll failures * Remove unnecessary guards * Slightly more accurate condition * Move initVideoUri handling out of the hook * Remove dead argument It wasn't being used before either. * Remove unused detailed status This isn't being used because we're only respecting that state variable when isProcessing=true, but isProcessing is always false during video upload. If we want to re-add this later, it should really just be derived from the reducer state. * Harden the video reducer * Tie all spawned work to a signal * Preserve asset/media for nicer error state * Rename actions to match states * Inline useUploadVideo This abstraction is getting in the way of some future work. * Move MIME check to the only place that handles it
* Introduce a composer reducer and move image state there (#5547)dan2024-10-021-6/+23
| | | | | | | | | | | | | | | | | | | * Add composer reducer * Support adding images Co-authored-by: Mary <git@mary.my.id> * Support updating and deleting images Co-authored-by: Mary <git@mary.my.id> * Derive images state from composer state Co-authored-by: Mary <git@mary.my.id> --------- Co-authored-by: Mary <git@mary.my.id>
* Remove Segment (#5518)Hailey2024-09-271-9/+1
|
* [Share Extension] Move away from deprecated API, implement JS side of things ↵Hailey2024-09-261-0/+2
| | | | (#5509)
* MobX removal take 2 (#5381)Mary2024-09-251-28/+39
| | | | | | | | | * mobx removal take 2 * Actually rm mobx --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Enable video_upload gate (#5311)dan2024-09-121-9/+6
|
* [Video] Allow drag-and-drop & pasting video (#5252)Samuel Newman2024-09-101-2/+6
| | | | | * allow DnD/pasting video * rm await
* [Video] Upload tweaks (#5228)Samuel Newman2024-09-081-2/+4
| | | | | * use correct mime type * fix wheel progress
* [Video] Tweak order of elements in composer (#5213)Hailey2024-09-071-32/+32
|
* Add emoji picker to chat composer (#5196)Eric Bailey2024-09-061-3/+3
| | | | | Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: Adrov Igor <nucleartux@gmail.com>
* [Video] Fix alt text dialog on iOS and Android (#5177)Hailey2024-09-061-2/+2
| | | | Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* [Video] Error banner improvements (#5163)Samuel Newman2024-09-051-81/+128
|
* [Video] Enter/exit animations for video in composer (#5164)Samuel Newman2024-09-051-24/+34
| | | | | | | | | * enter/exit animations for video in composer * use zoom out animation * unify margin between different steps * skip animation when posting
* allow only posting video (#5142)Samuel Newman2024-09-041-2/+9
|
* Add slight spacing between Post and CW button (#5125)Marco Buono2024-09-041-2/+6
|
* [Video] `withRepeat` for spinner (#5141)Hailey2024-09-041-4/+8
|
* [Video] Show better progress (#5133)Hailey2024-09-041-14/+32
|
* [Video] Error handling in composer, fix auto-send (#5122)Samuel Newman2024-09-031-130/+176
| | | | | | | | | | | | | * tweak * error state for upload toolbar * catch errors in upload status query * stop query on error --------- Co-authored-by: Hailey <me@haileyok.com>
* [Video] Upload errors and UI improvements (#5092)Samuel Newman2024-09-031-10/+34
| | | | | | | | | | | * surface errors in UI * style progress indicator * remove job status progress * rm log * fix webm ext
* [Video] Split 'videos' gate in two (#5037)Samuel Newman2024-08-301-1/+1
|
* [Video] Captions and alt text (#5009)Samuel Newman2024-08-301-10/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | * video settings modal in composer * show done button on web * rm download options * fix logic for showing settings button * add language picker (wip) * subtitle list with language select * send captions & alt text with video when posting * style "ensure you have selected a language" text * include aspect ratio with video * filter out captions where the lang is not set * rm log * fix label and add hint * minor scrubber fix
* [Video] Make compress/upload cancelable (#4996)Samuel Newman2024-08-291-8/+2
| | | | | | | * add abort controller to video upload system * rm log * rm log 2
* [Video] Add uploaded video to post (#4884)Samuel Newman2024-08-291-1/+2
| | | | | | | | | | | | | | | | | | | | | * video uploads! * use video upload lexicons * add missing postgate * remove references to prerelease package * fix scrubber showing a "0" * Delete types.ts * rm logs * rm upload header --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Detached QPs and hidden replies (#4878)Eric Bailey2024-08-211-15/+54
| | | | Co-authored-by: Hailey <me@haileyok.com>
* Show quote posts (#4865)Samuel Newman2024-08-211-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * show quote posts * fix filter * fix keyExtractor * move likedby and repostedby to new file structure * use modern list component * remove relative imports * update quotes count after quoting * call `onPost` after updating quote count * Revert "update quotes count after quoting" This reverts commit 1f1887730a210c57c1e5a0eb0f47c42c42cf1b4b. * implement * update like count in quotes list * only add `onPostReply` where needed * Filter quotes with detached embeds * Bump SDK * Don't show error for no results --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Eric Bailey <git@esb.lol>
* Show just-posted replies above OP replies (#4901)dan2024-08-081-1/+1
| | | | | | | | | * Unify onPostReply handler * Show just-posted replies above OP replies * Only do this for the highlighted post or thread mode It's confusing to have your post displace OP thread or other people's leaf posts.
* [Video] Uploads (#4754)Hailey2024-07-301-57/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * state for video uploads * get upload working * add a debug log * add post progress * progress * fetch data * add some progress info, web uploads * post on finished uploading (wip) * add a note * add some todos * clear video * merge some stuff * convert to `createUploadTask` * patch expo modules core * working native upload progress * platform fork * upload progress for web * cleanup * cleanup * more tweaks * simplify * fix type errors --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Replace `import hairlineWidth =` with const (#4831)Samuel Newman2024-07-251-5/+4
| | | | | | | | | * replace import with const * just use `StyleSheet.hairlineWidth` --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* ALF post button (#4767)Hailey2024-07-101-38/+35
|
* Video compression in composer (#4638)Samuel Newman2024-07-051-4/+38
| | | | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* Wait for AppView when posting (#4584)dan2024-06-201-0/+34
|
* Calculate correct keyboard offset in composer (#4500)Samuel Newman2024-06-131-2/+17
| | | | | | | * calculate correct keyboard offset * give viewHeight a default value * much simpler approach
* Only enable keyboard controller when necessary (#4483)Samuel Newman2024-06-111-184/+163
| | | | | | | | | | | | | | | | | | | * Only enable keyboard controller when necessary * make it screen only * rm keyboard padding * rm keyboardpadding file * revert using keyboard controller in composer * remove styles.outer (unnecessary for revert) * continue to use keyboard padding in the report dialog for dms --------- Co-authored-by: Hailey <me@haileyok.com>