* Some extra work on voice channels interface
* Fixing some TODOs
* Improving styling of call in channel
* Improve calls monitoring
* Replacing some of the fontawesome icons with the compass ones
* Improving the layout
* Migrating to webrtc2 for unified plan
* Add screen on and off behavior
* Adding incall manager plugin
* Moving everything into the products/calls folder
* Make products modules routes relatives
* Make products modules routes @mmproducts
* Removing initiator parameter
* Removing trickle parameter
* Simplifying code
* Removing underscore from private variables
* Removing underscore from private things
* More simplifications
* More simplifications
* More simplifications
* Changing sha sum for mmjstool
* Fixing typo
* Migrating simple-peer to typescript
* Migrating simple-peer to typescript
* Improving the size of the screen share
* Adding feature flag to disable the calls feature in mobile
* Fixing some tests
* Removing obsolte tests
* Added call ended support for the post messages
* Fixing some warnings in the tests
* Adding JoinCall tests
* Adding CallMessage tests
* Adding CurrentCall unit tests
* Adding CallAvatar unit tests
* Adding FloatingCallContainer unit tests
* Adding StartCall unit tests
* Adding EnableDisableCalls unit tests
* Adding CallDuration tests
* Improving CallDuration tests
* Adding CallScreen unit tests
* Adding CallOtherActions screen tests
* Fixing some dark theme styles
* Fixing tests
* More robustness around connecting/disconnecting
* Adding FormattedRelativeTime tests
* Adding tests for ChannelItem
* Adding tests for ChannelInfo
* Adding selectors tests
* Adding reducers unit tests
* Adding actions tests
* Removing most of the TODOs
* Removing another TODO
* Updating tests snapshots
* Removing the last TODO
* Fixed a small problem on pressing while a call is ongoing
* Remove all the inlined functions
* Replacing usage of isLandscape selector with useWindowDimensions
* Removed unnecesary makeStyleSheetFromTheme
* Removing unneded properties from call_duration
* Fixing possible null channels return from getChannel selector
* Moving other inlined functions to its own constant
* Simplifiying enable/disable calls component
* Improving the behavior when you are in the call of the current channel
* Adding missing translation strings
* Simplified a bit the EnableDisableCalls component
* Moving other inlined functions to its own constant
* Updating snapshots
* Improving usage of makeStyleSheetFromTheme
* Moving data reformating from the rest client to the redux action
* Adding calls to the blocklist to the redux-persist
* Fixing tests
* Updating snapshots
* Update file icon name to the last compass icons version
* Fix loading state
* Only show the call connected if the websocket gets connected
* Taking into consideration the indicator bar to position the calls new bars
* Making the MoreMessagesButton component aware of calls components
* Updating snapshots
* Fixing tests
* Updating snapshot
* Fixing different use cases for start call channel menu
* Fixing tests
* Ask for confirmation to start a call when you are already in another call
* Update app/products/calls/components/floating_call_container.tsx
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Memoizing userIds in join call
* Applying suggestion around combine the blocklist for calls with the one for typing
* Adding explicit types to the rest client
* Removing unneeded permission
* Making updateIntervalInSeconds prop optional in FormattedRelativeTime
* Making updateIntervalInSeconds prop optional in CallDuration
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Add linter rules for import order and type member delimiters
* Remove unneeded group
* Group all app/* imports before the internal imports
* Move app/ imports before parent imports
* Separate @node_modules imports into a different group
* Substitute app paths by aliases
* Fix @node_modules import order and add test related modules
* Add aliases for types and test, and group import types
* Update transform to make Android's post list scroll smooth
* set start since metric when appStarted is false
* Refactor Formatted components
* Downgrade RNN to 7.13.0 & patch XCDYouTube to allow video playback
* Refactor Post list and all related components
* review suggestion rename hour12 to isMilitaryTime
* feedback review use aliases
* feedback review deconstruct actions in markdown_link
* feedback review simplify if/else statement in combined_used_activity
* Simplify if statement for consecutive posts
* Specify npm version to build iOS on CI
* Refactor network_indicator
* render Icon in file gallery with transparent background
* Increase timeout to scroll to bottom when posting a new message
* fix: scroll when tapping on the new messages bar
* fix: dismiss all modals
* fix navigation tests
* Handle dismissAllModals for iOS to prevent blank screens
* Prevent modal from dismissing when showing the thread screen in the stack
* Update app/components/image_viewport.tsx
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Update app/utils/post.ts
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* fix: rename selector and prop
* Fix XCDYouTube patch
* Fix posting from a thread in the right channel
* do not render reply bar on the thread screen
* close previous permalink before showing a new one
* move XCDYouTube patch to ios/patches folder
* closePermalink directly instead of using an onClose prop
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
*Summary*
- This PR adds storybook into the mobile repo, and adds a sample story for the existing "loading" component.
- In the root of the repo run `npm run storybook`. This step automatically scans and loads all stories. A new browser tab will open with the storybook interface. You can configure the storybook host url by updating the .env file in the root of the repo. This might be required if you're using a real device. When running in an emulator, the code tries to use the default network values.
- Then run the usual `npm run android` (or `npm run ios`) and `npm run start` commands
- Storybook has been integrated into the react-native-dev-menu. When the app is running in the emulator press CTRL+M or CMD+M to open the dev menu and select "Storybook". If running on a real device, shaking the device will bring up the react-native dev menu. You can also press d in the terminal where you ran npm run start to get the app running.
- The storybook interface will open in the mobile app. The stories can be controlled either through the desktop browser storybook UI or the mobile browser storybook UI. Both will render the component on the device.
*Ticket Link*
https://mattermost.atlassian.net/browse/MM-28845
*Device Information*
This PR was tested on:
Iphone 11 emulator running ios 13.7
Pixel 3XL emulator running Android 10
* 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
* 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>
* Port WebSocket from mm-redux and batch actions
* Update mm-redux and fix tests
* Change action name
* Naming batch actions
* Fix unit tests
* Dispatch connection change only if its different
* Remove comment
* Add Lint to TypeScript and fix linting errors
* Add WebSocket Unit Tests
* Revert from unwanted RN 0.62