about summary refs log tree commit diff
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
* Performance improvements: structural sharing & moderation opts context (#3785)Paul Frazee2024-04-301-0/+87
| | | | | | | | | | | | | * Fix: correctly apply structural sharing to preferences object * Move moderation opts into a context * Fix import * Remove log * Pass userdid directly * Pass moderationPrefs directly
* Session fixes, pt. 1 (#3762)dan2024-04-301-5/+14
| | | | | | | | | | | | | | | | | * Update persisted schema for new source of truth, implement in existing session (cherry picked from commit b1e5f12baee932721d66c60dd51c981b46b0c274) * Improve toasts, log caught error, during switch account (cherry picked from commit fe0d1507063d2e532b7b1a447670b689292d1dc3) * Handle thrown errors from initSession during login (cherry picked from commit 2c85c045917e923901284b9ba310a82e28f37b5c) --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Send Bluesky feeds and suggested follows more data (#3695)Eric Bailey2024-04-294-1/+55
| | | | | | | | | | | | | | | | | * WIP * Fix constructors * Clean up * Tweak * Rm extra assignment * Narrow down the argument --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Account for momentum when hiding minimal shell (#3740)dan2024-04-281-1/+4
| | | | | | | | | * Add optional momentum events to scroll context * If there is a velocity, don't snap until momentum end * Don't show bar on scroll down * Rm onMomentumBegin
* YouTube Music as supported player (#3736)Mary2024-04-271-1/+2
|
* [Clipclops] New routes with placeholder screens (#3725)Samuel Newman2024-04-275-2/+17
| | | | | | | | | | | * add new routes with placeholder screens * gate content * add filled envelope style * swap filled state * switch to `useAgent`
* Special-case bsky.app/download to open share sheet or copy to clipboard (#3710)Samuel Newman2024-04-272-6/+15
| | | | | | | | | | | * special-case bsky.app/download to share * Address feedback * Improve detection --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [Session] Drill `getAgent` into notifications handlers (#3705)Eric Bailey2024-04-251-1/+4
| | | | | | | | | | | * Drill into notifications handlers (cherry picked from commit 7ac9e500866732e1f2e205bbe96e70db331e5ffb) * Thread getAgent instead --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [Session] Drill `getAgent` into feed APIs (#3701)Eric Bailey2024-04-257-49/+172
| | | | | | | | | | | * Update to desired post-feed usage * Drill agent into feed apis * Thread getAgent instead --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [Session] Base (#3541)Eric Bailey2024-04-251-0/+1
| | | | | * Add readLastActiveAccount to use accounts[] as source of truth * Add public service constant, use
* Cleanup files after each iteration of compression and downloading (#3599)Hailey2024-04-252-29/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | * delete image on each iteration of compression * replace a few other instances of `unlink()` * ensure that moving to the permanent path will succeed * use `cacheDirectory` * missing file extension? * assert * Remove extra . * Extract safeDeleteAsync, fix normalization * Normalize everywhere * Use safeDeleteAsync in more places * Delete .bin too --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Ignore image responses on non-200 status (#3693)dan2024-04-241-5/+11
| | | | | * Ignore image responses on non-200 status * Fix tests
* Remove old Suggested Follows logic (#3689)dan2024-04-241-1/+0
|
* Remove old old onboarding (#3674)Eric Bailey2024-04-231-1/+0
|
* use mp4 over webm (#3666)Hailey2024-04-231-2/+11
| | | | | | | * use mp4 over webm * tinymp4 * safari only
* [Statsig] Add test gates and events (#3659)dan2024-04-232-0/+12
| | | | | * [Statsig] Add test gates and events * Better types
* GIF Viewer (#3605)Hailey2024-04-232-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ios player autoplay after recycle remove all items from AVPlayer queue recurururururursion use managers in the view add prefetch make sure player items stay in order add controller and item managers start of the view create module, ios * android player smoother basic caching prep cache somewhat works backup other files android impl blegh lets go touchup add prefetch to js use caching * bogus testing commit * add dims to type * save * add the dimensions to the embed info * add a new case * add a new case * limit this case to giphy * use gate * Revert "bogus testing commit" This reverts commit b3c8751b71f7108de9aa843b22ded4e0249fa854. * add web player base * flip mp4/webp * basic mp4 player for web * move some stuff into `ExternalLinkEmbed` instead * use a class component for web * remove extra component * add `onPlayerStateChange` event type on web * layer properly * fix tests * add new test * about ready. native portions done, a few touch ups on web needed show placeholder on ios fix type rm log display thumbnail until video is ready to play add oncanplay, playsinline remove unused method add `isLoaded` change event release player when finished apply gc to the view cleanup logs android gc rm log automatic gc for assets make `nativeRef` private remove unnecessary `await` cleanup rev log only play on prepare whenever needed rm unused perfperfperf rm var comment + android width native height calculations rm pressable add event dispatcher on android add event dispatcher on ios * ready to test ios fix autoplay ios clean oops * autoplay on web * normalize across all platforms add check for `ALT:` separate gif embed logic to another file handle permissions requests flatten web styles normalize styles normalize styles prefetch functions pause animatable on foreground android nits one more oops idk where that code went lint rethink the usage wrap up android clear bg update gradle more android rename dir update android namespace web ios add deps use webp rm unused update types use webp on mobile * rm gate from types * remove unused event param * only start placeholder op if doesn't exist in disk cache * fix gifs animating on app resume android * remove comment * add `isLoaded` for ios * add `isLoaded` to Android * onload for web * add visual loading state * rm a log * implement isloaded for android * dialogs * replace `webpSource` with `source` * update prop name * Move to Tenor for GIFs (#3654) * update some urls * right order for dimensions * add GIF coder for ios * remove giphy check * rewrite tenor urls * remove all the unnecessary stuff for consent * rm print * rm log * check if id and filename are strings * full size playback controls * pass tests * add accessibility to gifs * use `onPlay` and `onPause` * rm unused logic for description * add accessibility label to the controls * add gif into to external embed in composer * make it optional * gif dimensions * make the jsx look nicer --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com> Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Ungate profile scroll fix (#3655)dan2024-04-231-1/+0
|
* [GIFs] Replace GIPHY with Tenor (#3651)Samuel Newman2024-04-221-8/+6
| | | | | | | | | * replace GIPHY with Tenor * remove "directly" wording * replace GIPHY wording * remove log
* properly close the switch account dialog (#3558)Hailey2024-04-221-14/+4
| | | | | | | | | | | | | | | | | | | * properly close the switch account dialog * use it for switch account as well * ensure dialog is closed on unmount Revert "properly check if the ref is null" This reverts commit 8f563808a5d39389b0bc47a31e73cd147d1e7e8b. properly check if the ref is null ensure dialog is closed on unmount * Revert "ensure dialog is closed on unmount" This reverts commit a48548fd8ed53ae3eb08a0e05bb89f641c112b95.
* remove gate from updates (#3646)Hailey2024-04-222-4/+1
|
* Player improvement pre-reqs (#3618)Hailey2024-04-192-5/+24
| | | | | | | | | | | | | | | | | | | | | * add dims to type * save * add the dimensions to the embed info * add a new case * add a new case * limit this case to giphy * use gate * flip mp4/webp * fix tests * add new test
* Add disable autoplay preference and group related settings into a dedicated ↵Samuel Newman2024-04-191-0/+1
| | | | | | | | | | | | | | | page (#3626) * add autoplay preference * group accessibility settings into a dedicated page * fix gray background on web * Put a11y first --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Ungate Top/Latest search (#3627)dan2024-04-191-1/+0
|
* [Statsig] Send locale info (#3621)dan2024-04-191-0/+6
|
* [Statsig] Update experiments (#3617)dan2024-04-191-5/+5
|
* Add GIF select to composer (#3600)Samuel Newman2024-04-192-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * create dialog with flatlist in it * use alf for composer photos/camera/gif buttons * add gif icons * focus textinput on gif dialog close * add giphy API + gif grid * web support * add consent confirmation * track gif select * desktop web consent styles * use InlineLinkText instead of Link * add error/loading state * hide sideborders on web * disable composer buttons where necessary * skip cardyb and set thumbnail directly * switch legacy analytics to statsig * remove autoplay prop * disable photo/gif buttons if external media is present * memoize listmaybeplaceholder * fix pagination * don't set `value` of TextInput, clear via ref * remove console.log * close modal if press escape * pass alt text in the description * Fix typo * Rm dialog --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* [Statsig] Slightly block the UI on gates (#3608)dan2024-04-181-0/+26
|
* [Statsig] Prefetch configs for other accounts (#3607)dan2024-04-181-21/+46
| | | | | | | | | | | | | * Poll both current and other accounts * Make createStatsigOptions a function * Pass prefetchUsers with the initial request * Add initializeCalled check * Be resilient to object identity changes * Decrease poll interval to 1 minute
* Add our own cache in front of Statsig (#3604)dan2024-04-181-32/+45
|
* [Statsig] Make gate checks lazily (#3594)dan2024-04-182-16/+20
|
* Cleanup files after upload on native (#3597)Hailey2024-04-171-6/+25
| | | | | | | | | | | | | | | | | | | * cleanup images after uploading from the composer cleanup external embed images as well cleanup files after upload add `expo-file-system` * remove test log * await * Revert "await" This reverts commit 771814b40ce1395cac4f56853d8a9e793ca92c2f. * just log an error if it throws
* Better dist strings for Sentry (#3584)Hailey2024-04-162-12/+6
| | | | | | | * better version codes for sentry * use a `.` to follow the same intended format as before * ignore dist build number
* Make ref_ always strings (#3583)dan2024-04-161-6/+18
| | | | | * Make ref_ always strings * Harden types
* Always send ref_ params (#3582)dan2024-04-161-4/+4
|
* Improve the language behaviors around the PWI (#3545)Paul Frazee2024-04-131-10/+71
| | | | | | | | | * Handle leftnav overflow with longer languages' copy * Update the language dropdown to set ALL language prefs * Add hackfix to language cachebusting on PWI * Reset feeds on language change
* [Statsig] Send ref source (#3531)dan2024-04-131-0/+11
| | | | | | | * [Statsig] Send ref source * Add is web check * Fix types
* [Embeds] "Embed post" post dropdown option (#3513)Samuel Newman2024-04-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | * add embed option to post dropdown menu * put embed post button behind a gate * increase line height in dialog * add gate to gate name union * hide embed button if PWI optout * Ungate embed button * Escape HTML, align implementations * Make dialog conditionally rendered * Memoize EmbedDialog * Render dialog lazily --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Remove vertical scrollbars from views on native (#3429)Hailey2024-04-121-0/+1
| | | | | | | | | | | | | * remove vertical scrollbars * add to a few missing lists * gate this change * use `hide_vertical_scroll_indicators` * fix gate lint * fix bool
* Profile card hover preview (#3508)Eric Bailey2024-04-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat: initial user card hover * feat: flesh it out some more * fix: initialize middlewares once * chore: remove floating-ui react-native * chore: clean up * Update moderation apis, fix lint * Refactor profile hover card to alf * Clean up * Debounce, fix positioning when loading * Fix going away * Close on all link presses * Tweak styles * Disable on mobile web * cleanup some of the changes pt. 1 * cleanup some of the changes pt. 2 * cleanup some of the changes pt. 3 * cleanup some of the changes pt. 4 * Re-revert files * Fix handle presentation * Don't follow yourself, silly * Collapsed notifications group * ProfileCard * Tree view replies * Suggested follows * Fix hover-back-on-card edge case * Moar --------- Co-authored-by: Mary <git@mary.my.id> Co-authored-by: Hailey <me@haileyok.com>
* Enable updates for `production` behind `receive_updates` gate (#3496)Hailey2024-04-123-34/+38
| | | | | | | | | | | * add gate type * gate the updates * enable updates in `production` * web placeholder for `useOTAUpdates()` * update comment
* Fix stale Notifications after push (#3507)dan2024-04-121-0/+4
|
* Dont apply the content-language filter if it will remove all content (#3492)Paul Frazee2024-04-121-5/+15
| | | | | * Dont apply the content-language filter if it will remove all content * Improve code
* Use getSuggestions endpoint behind the gate (#3499)dan2024-04-122-1/+5
| | | | | | | | | * Move suggested follows out of the component * Add new suggestions implementation * Put new endpoint behind the gate * Make bottom less weird
* Added `new_profile_scroll_component` to `Gate` type (#3487)Hailey2024-04-111-0/+1
| | | | | | | | | * added to the types * alphabetical pls --------- Co-authored-by: dan <dan.abramov@gmail.com>
* Improve Android haptic, offer toggle for haptics in the app (#3482)Hailey2024-04-111-36/+9
| | | | | | | | | | | | | | | * improve android haptics, offer toggle for haptics * update haptics.ts * default to false * simplify to `playHaptic` * just leave them as `feedInfo` * use a hook for `playHaptic` * missed one of them
* [Statsig] Mark Testflight as staging tier (#3470)dan2024-04-101-1/+7
|
* [Statsig] Typecheck gates (#3467)dan2024-04-102-4/+10
| | | | | | | * Typecheck gates * Lint against untyped useGate() * Alphabetic
* Search - extra tabs (#3408)Samuel Newman2024-04-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | * add extra tab to search and translate tab names * add feature gate * flatten pager children * Revert "flatten pager children" This reverts commit 0050d42558c2c9b7bc4f2ad2df4ae2908fa26f65. * have pager children as array * move gate to custom hook * bundle titles and pages together * remove comment * Fix a crash * Use Views as children --------- Co-authored-by: dan <dan.abramov@gmail.com>
* [Statsig] Instrument feed display (#3455)dan2024-04-091-0/+6
| | | | | * [Statsig] Instrument feed display * Back out leftover change