* Fix crash on Android when session expired notification is presented
* react-native-notification patch for schedule fix on android and open local notification on iOS
* Fix android scheduled session notification crash
* patch react-native-navigation to support blur/focus AppState on Android
* remove schedule session expired notification from login entry point
* schedule session expired notification actions
* add session manager
* Handle open session expired notification
* Ensure no unresolved types in the definition files
* Address feedback and general cleanup
* Move import from @constants/x to @constants where relevant
* Remove unneeded "import as"
* Fix navigation stack tracking
* Fix hardwareBackPress handlers
* Use user locale for formattedTime
* Show in-app notifications when in a thread but hide when in the same thread
* Fix post draft archived & read only safe area
* Do not show reply post option in thread screen
* Open permalink as full screen modal
* Fix crash when using chinese locale
* Fix team list and call handle team change
* Fix search bar style
* MM-42983 Align mention badge on channel list item
* MM-42985 polish channel intro UI
* MM-42984 update fonts on 'Show' bottom sheet
* MM-42982 Increase tap area of back button on channel view
* Set StatusBar style based on theme sidebarBg
* Reconnect other WS after 20 seconds insted of 5
* Only fetch missing profiles for DM/GMs
* Database prepare records optimization
* Do not use fallbackUsername for storing GM/DM in the database
* fix filter for fetching missing dm/gm
* remove use of indexOf inside another loop
* remove use of includes inside another loop
* remove use of find inside another loop
* Add missing translations
* disable Flipper on iOS
* Remove Flipper code from AppDelegate
* feedback review
* trim DM display name to make sure is not empty
* fixing missing direct channels display name
* UI/UX feedback
* fix WS channel viewed and mark as unread
* Remove duplicate emojis from reaction bar
* Extract common observers to queries
* Separate also queries and more agressive refactoring
* Use query to avoid throws from findAndObserve
* Fix minor error
* Address feedback
* Address feedback
* Address feedback
* Fix model types
* Address feedback
* Edit Server display name
* Lock iPhone to portrait and iPad to landscape
* Create actions for app global to store device token and multi server tutorial
* Add MutliServer tutorial on first use
* WebSocket reconnection priority
* have isRecordGlobalEqualToRaw to not check for value
* Return early on edit server if error is found
* Prepopulate server screen with last logged out server address and name
* Add CompassIcon to circleCI asset generation
* Servers logout and websocket state
* addNewServer uility and rename file
* add LaunchType for add new server
* added time to LaunchProps type
* Remove unnecessary props for launchToHome
* Fix local action updateLastPostAt
* Batch fetchProfilesPerChannels requests in chunks of 50
* WS handleUserAddedToChannelEvent to return early if no channelId is set
* WS handleNewPostEvent to batch update last_post_at
* add common actions to sync other servers
* Entry actions to sync other servers data
* Do not attempt to fetch notification data if payload does not contain a channelId
* Set database as default at the end of the login flow
* Handle logout when other servers remain
* Handle Server options
* Show alert when logging out from the account screen
* Add workaround to have Lottie animate the loading component
* Fix badge position in ServerIcon component
* Server screen to support adding new server
* Fix login screen to display error when credentials do not match
* add localization strings
* fix DatabaseProvider to update on server switch
* Fix home icon and server icon subscriptions and badge display
* Add dependencies to onLogout callback
* feedback
* Only updateLastPostAt if needed
* Fix & small refactor to the app entry logic and WS reconnection
* Remove not needed log in MainActivity
* Replace async forEach with for await
* extract getClient to its own block
* replace double filter with reduce
* fix select channel on WS reconnect and user no longer belongs to current team
* feedback review on WS users actions
* Add windowFocusChanged for Android only
* on WS reconnection set team & channel if not member of current team
* reduce suggestion
* feedback review
* Initial commit post input
* Fix message posting, add create direct channel and minor fixes
* Fix "is typing" and "react to last post" behaviour
* Some reordering, better handling of upload error, properly clear draft on send message, and fix minor progress bar misbehavior
* Add keyboard listener for shift-enter, add selection between video or photo while attaching, add alert when trying to attach more than you are allowed, add paste functionality, minor fixes and reordering
* Add library patch
* Fix lint
* Address feedback
* Address feedback
* Add missing negation
* Check for group name and fix typo on draft comparisons
* Address feedback
* Address feedback
* Address feedback
* Address feedback
* Fix several bugs
* Remove @app imports
* Address feedback
* fix post list & post draft layout on iOS
* Fix post draft cursor position
* Fix file upload route
* Allow to pick multiple images using the image picker
* accurately get the channel member count
* remove android cursor workaround
* Remove local const INPUT_LINE_HEIGHT
* move getPlaceHolder out of the component
* use substring instead of legacy substr for hardward keyboard
* Move onAppStateChange above the effects
* Fix camera action bottom sheet
* no need to memo SendButton
* properly use memberCount in sender handler
* Refactor how to get memberCount
* Fix queryRecentPostsInThread
* Remove unused isDirectChannelVisible && isGroupChannelVisible util functions
* rename errorBadUser to errorUnkownUser
* extract localized strings
* use ClientErrorProps instead of ClientError
* Minor improvements
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>