| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add blocking announcement dialog feature
* WIP custom dialog
* Rework dialog and add native FocusScope
* Lock scroll on web, fix backdrop
* Add web FocusScope
* Create custom Outlet for these announcements
* Clean up FocusScope native impl
* Comments
* Some styling fixes
* Handle screen reader specifically
* Clean up state, remove Portal edits
* Reorg, rename
* Add syncing, tests
* Revert dialog updates
* Revert formatting
* Delete unused file
* Format
* Add FullWindowOverlay
* remove mmkv storage in debug btn
* Add debug code
* fix taps passing through on iOS
* Reorg
* Reorg, rename everything
* Complete policy update after signup
* Add logger
* Move context around, unmount portals on native
* Move a11y prop into FocusScope
* Remove useMemo
* Update dates
* Move debug to dev settings
* Unmount web portals until policy update completed
* UPdate dates
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add some comments
* Decouple language settings
* Normalize on read/write
* Refactor
* Support device locale on app startup
* Cleanup, port to web
* Clean up comments
* Comment
* Try not to mutate
* Protect util handling, update test
* Dedupe array values
|
|
|
|
|
|
|
| |
* Add fast path for guaranteed noop updates
* Change persisted.onUpdate() API to take a key
* Implement granular broadcast listeners
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Broadcast the update in the same tick
The motivation for the original code is unclear. I was not able to reproduce the described behavior and have not seen it mentioned on the web. I'll assume that this was a misunderstanding.
* Remove defensive programming
The only places in this code that we can expect to throw are schema.parse(), JSON.parse(), JSON.stringify(), and localStorage.getItem/setItem/removeItem. Let's push try/catch'es where we expect them to be necessary.
* Don't write or clobber defaults
Writing defaults to local storage is unnecessary. We would write them as a part of next update anyway. So I'm removing that to reduce the number of moving pieces.
However, we do need to be wary of _state being set to defaults. Because _state gets mutated on write. We don't want to mutate the defaults object. To avoid having to think about this, let's copy on write. We don't write to this object very often.
* Refactor: extract tryParse
* Refactor: move string parsing into tryParse
* Extract tryStringify, split logging by platform
Shared data parsing/stringification errors are always logged. Storage errors are only logged on native because we trust the web APIs to work.
* Add a layer of caching to readFromStorage to web
We're going to be doing a read on every write so let's add a fast path that avoids parsing and validating.
* Fix the race condition causing clobbered writes between tabs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Delete logic for legacy storage
* Delete superfluous tests
At this point these tests aren't testing anything useful, let's just get rid of them.
* Inline store.ts methods into persisted/index.ts
* Fork persisted/index.ts into index.web.ts
* Remove non-essential code and comments from both forks
* Remove async/await from web fork of persisted/index.ts
* Remove unused return
* Enforce that forked types match
|
| |
|
|
|
|
|
| |
* scale back sentry logs
* update migrate log tests
|
|
|
|
|
|
|
| |
* Change prop name for sentry ingestion
* Fix test
* Add default object
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix session email/emailConfirmed types, update usage for safer access
* Handle fallback better, better errors
* Better handling, add test
* Add test for default data
* Remove fallback, not needed, update logs
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Move broadcast channel to lib
* Refactor view/com/post/Post and remove temporary 2 components
* Add useModerationOpts hook
* Refactor notifications to use react-query
* Fix: only trigger updates in useModerationOpts when the values have changed
* Implement unread notification tracking
* Add moderation filtering to notifications
* Handle native/push notifications
* Remove dead code
---------
Co-authored-by: Eric Bailey <git@esb.lol>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* First pass at a session handler
* TODOs
* Fix recursion
* Couple more things
* Add back resume session concept
* Handle ready
* Cleanup of initial loading states
* Handle init failure
* Cleanup
* Remove account
* Add updateCurrentAccount
* Remove log
* Cleanup
* Integrate removeAccount
* Add hasSession
* Add to App.native, harden migration
* Use effect to persist data
|
| |
|
|
* Add persistent state provider
* Catch write error
* Handle read errors, update error msgs
* Fix lint
* Don't provide initial state to loader
* Remove colorMode from shell state
* Idea: hook into persisted context from other files
* Migrate settings to new hook
* Rework persisted state to split individual contexts
* Tweak persisted schema and validation
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
|