* extract non-react log helpers out of custom hook
* git mv useLogs to more appropriate name / location
* update logmgmt imports, clean up getLogs
* git mv Log.js Log.tsx
* remove sharing functionality from log preview screen
* reorganize debug screen w/ headers
* refactor all Debug sections for consistency
* add rolling log config, switch existing logmgmt to 'legacy' var
* factor path out of share/email for legacy wrappers
* add 'legacy' log category in prep for showing new logs
* add legacy flag to log preview screen params
* add useLogPreview for Log screen supporting legacy and aggregated recent rolling logs
* actually support sharing the new logs w/ a tmp file of concatenated recent logs
* delete low value developer screen test
* fix double reverse and handle bad filename
* Reapply "Update react-native-sensitive-info to 5.6.2 (#3346)"
This reverts commit 4bd596074c.
* Explicitly set keychainService to "app" for all calls to RNSInfo
So, apparently the default string used to save sensitive items changed from "app" to "default" between versions 6.0.0-alpha.9 and 5.6.2.
So if we install an app update built with 5.6.2 on top of our previous version (using 6.0.0-alpha.9) we can no longer find our previously stored secrets.
I am leaving the key as overridable by actual options propped in, in case someone wants to build a separate slice at one point. In contrast to accessControl which probably should not be a decision in engineerings court.
* Add comment
* Update test helpers
* Update react-native-sensitive-info
* Delete react-native-sensitive-info+6.0.0-alpha.9.patch
* Migrate sensitive info error handling
* Lint rules changes
* Add comment
* Remove incomplete type
* Add hasItem mock
* Update type
* Remove exported function getUsername
This is nowhere imported, used only in AuthenticationService. Have added the only function that makes use of getSensitiveItem( "username" ) = isCurrentUser to the Auth integration test instead.
* Update package-lock.json
* Update Podfile.lock
* Replace string with exported error code
* Add try catch to hasItem call
* extract imperative offline sugg logic and sneak that into online query for experiment
* fire-and-forget promise before await, fix types & function names
* fix useOffline's useEffect misfiring
* additional context when submitting user feedback
* remove log
* add local obs count
* add a generic breakpoint mapper as a shared function and migrate media query breakpoints to use it
* remove original getBreakpoint impl after test validated
* switch feedback logging to structured data