* Expand currentAccountDid into currentAgentState
* Inline all callsites of upsertAccount
* Inline all internal callsites of clearCurrentAccount
* Add agent to currentAgentState
* Collapse extra setStates
* Add TODOs
* 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>
* 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>
* 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
* Move isInitialLoad and isSwitchingAccounts out of main state
* Remove spreads, order object keys
* Track need to persist on state object
* Reoder state variables
* sentry errors for captcha web views
* include handles with errors
* log all registration request failures
* rm
* use a better trigger for web captcha errors
* add another trigger for recording a possible signup error
* unknown error type
* don't needlessly log on href errors
* honestly i probably cant always do a captcha in 20 seconds
* rm log
* timeout on back
* remove unnecessary colons
* Move types to another file
Co-authored-by: dan <dan.abramov@gmail.com>
* Move utilities out
Co-authored-by: dan <dan.abramov@gmail.com>
* Move PUBLIC_BSKY_AGENT
Co-authored-by: dan <dan.abramov@gmail.com>
* Move createPersistSessionHandler inline
Co-authored-by: dan <dan.abramov@gmail.com>
* Call configureModeration when clearing account too
This ensures that the app labelers get reset in a test environment.
Co-authored-by: dan <dan.abramov@gmail.com>
* Make guest configureModeration sync, non-guest async
* Extract isSessionExpired
Co-authored-by: dan <dan.abramov@gmail.com>
* Flip isSessionExpired condition
Co-authored-by: dan <dan.abramov@gmail.com>
* Extract agentToSessionAccount
Co-authored-by: dan <dan.abramov@gmail.com>
* Extract createAgent*
Co-authored-by: dan <dan.abramov@gmail.com>
* Simplify isSessionExpired
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* 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
* 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>
* 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>
* 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>