* Don't retry nor use response message on 401
* Explicitly call contentHandler on retry exhaustion
* Handle all non 200 responses for id_loaded notifications
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Fix SSO and clear cookies
* Fix unit tests
* Removed unnecessary argument
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Bug found in #4302 that delayed delivery/receipt of normal (non id-loaded) iOS push notifications. Response handling was happening within the guard block for id-loaded messages.
* MM-22181 Backoff retries for ID-loaded push notification messages
Fibonacci backoffs. 6 attempts in ~20 seconds, not including response latency for each failure.
0 seconds to attempt 1 (original try)
1 seconds to attempt 2
2 seconds to attempt 3
3 seconds to attempt 4
5 seconds to attempt 5
8 seconds to attempt 6
* PR review: Reset re-request counter when server call succeeds
* PR Review: Localize scope of recursion counter
This handles scenario where multiple notification requests are being made at the same time for multiple messages. Counter will be isolated for each fetch request.
* PR Review: Remove unnecessary class variable
* Trigger Build
Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
* Enable ESLint no-unused-vars
* Use FastImage instead of Image
* Update fast-image patch to support multiple cookies
* Fix ESLint errors
* Have jest run timers for post_textbox tests
* Feedback review
* Update snapshots
* MM-24463 Run message retention cleanup off of pre-existing state
Instead of a reconstructed "zero" state.
Only posts in channels, searched posts and flag posts are recalculated (as per data retention policy, if applicable). The rest of state is cloned from existing state.
* Mark hydrationComplete only if _persist state is undefined
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Remove redux-offline and configure redux-persist
* Fix typo
* Fix configure store
* Upgrade to redux-persist 6.0.0
* Add migration from redux-persist v4 to v6
* Replace AsyncStorage with MMKVStorage to boost storage speed
* Mock RNFastStorage
* Fix reactions test
* Fix clearing the store on logout
* Remove the need for LOGOUT_SUCCESS
* No need to pass persistConfig to middlewares()
* Remove unused imports
* Export connection
Accidentally removed this export.
* Add batch action name
Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>
* Add batch action name
Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>
* Add batch action name
Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>
* Add batch action name
Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>
* Fix delete post
* Fix leave channel
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Upgrade Navigation library
* Fix background color on Select Server
* Upgrade Navigation library
* Apply patch to nav lib
* Upgrade RNN to 6.1.1
* Update Dependencies
* Feedback review
* Call clearNavigationComponents when reset to channel
* Upgrade Navigation library
* Feedback review on Navigation Library
* Fix select server background color
* Fix iPhone 11 and 11 Pro Max navbar height
* Fix background color on Select Server
* Upgrade nav lib to 6.1.0
* Apply patch to nav lib
* Upgrade RNN to 6.1.1
* Reacting to shift-enter events on iOS
* moving keyEvent logic to handleHardwareEnterPress
* configured android to work with keyEvents
* using dispatchKeyEvent instead of onKeyUp
* using react-native-hw-keyboard-event
* cleanup
* updated package name
* update package name
* using react-native-hw-keyboard-event v0.0.2
* reverted cocoapods version change
* Documentation
* fix detection of Shift-Enter on android
* simplify dispatchKeyEvent()
* fix for stacked hardware keyboard events
* Update android/app/src/main/java/com/mattermost/rnbeta/MainActivity.java
Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>
* simplify dispatchKeyEvent
* removed yarn.lock
* using react-native-hw-keyboard-event v0.0.4
* Using ACTION_UP instead of ACTION_DOWN
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Adding base button functionality
Moving file upload previews to be under textbox
* Ensuring textbox is scrollable when in landscape mode
* Updated image picker to use mixed camera option
* Added unit tests, fixed other tests affected by dependency update
* Updated patch for react-native-image-picker to 1.1.0
* Fixing incorrect import of DocumentPicker
* MM-20989: Ensuring keyboard doesn't dismiss while submitting post (#3758)
* Ensuring keyboard doesn't dismiss while submitting post
* Update snapshot
* Preventing the @ icon from being repeatedly tappable (#3777)
* Fix snapshot from merge
* MM-21736 Select/Take images and videos for Android
* MM-21737 Fix attachment error message position on iOS
* Remove FileUploadPreview from the iOS Thread screen
* Fix android camera permissions
* Fix post input box sizing and disable scrollview
* Fix iOS photo gallery videos
Co-authored-by: Andre Vasconcelos <andre.onogoro@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Default deep link URL prefix: `mattermost-beta`
To set to `mattermost-mobile` (or anything else, for that matter) in production releases, set fastlane ENV var `DEEPLINK_PREFIX` to `mattermost-mobile`