* 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
* [MM-31133]: participants screen component (#5116)
* Fixed imports
* Misc fixes
* Added i18n string
* Moved '(you)' after the name
* [MM-30386][MM-30387] Client and redux changes for collapsed reply threads (#5175)
* [MM-30386][MM-30387] Client and redux changes for collapsed reply threads
* fix tests
* add and use flat shim
* use test helper function
* use test helper function
* revert crt changes to unused client and action functions
* use toEqual
* incorporate code review feedback
* don't assume server success
* batch actions
* clearer code
* WIP in changes, websockets and more redux changes
* Added mark thread as read and mark all as read in a team
* Added isCollapsedThreadEnabled entity
* Fixed loading global screens on load if it's the last visited screen
* Added root count and websocker and redux events related to threads
* Fixed Message, Mention count root count on init and decrement actions
* Moved old client to new client/rest
* Misc fix
* Misc fix
* Misc.
* Old redux test cases fix
* Added polyfill back for array flat
* Fixes mark as unread and pariticipants error in thread
* Fixed initial load when CRT not enabled
* Handling CRT preference change
* Get threads fallsback to search in posts in case of unfollowed or unloaded threads
* Gets threads on reconnect
* DM, Channel counter fix
* Added threads redux tests
* Fixed channel dot issue when child post is arrived channel not active
* Cleaning up threads on load, not letting posts included in threads getting deleted which can trigger many posts to be loaded at once
* Fixed crash on team switch, partly fixed enable/disable from webapp
* Fix when viewing a post from notification, to prevent from navigating back to global threads
* Fixed when preferences are changed before app is launched
* Fixed issue of NO THREADS appearing on reconnect
* Excludes CRT handling for newly logged in users
* Fixed unread dot showing even when all messages are read
* Update app/mm-redux/selectors/entities/threads.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Not viewing threads action is pushed only when suer is in Global Threads
* Fixed cleanup to exclude current team when cleanup starts on app going to background
* Dispatch is not passed as param, misc code fixes
* Preferences check and handling code refactored
* added redux-mock-store
* Preference change fix
* Removed user login dispatch when handling crt change
* Fixed fallback thread support
* Return getThread
* Added threads to sidebar, moved teamId logic to action
* [MM-29106, MM-34847, MM-34843, MM-34846] Collapsed reply threads, Global Threads & In Channel experience UI implementation (#5376)
* feat: global threads screen
* Refactored global thread menu and misc design fixes
* Added empty states for threads, unread. Removing markdown from thread messages.
* Added friendly date, fixed long usernames & channel names in threads view.
* Mark thread as read
* Added intl, refactored code, seperated thread footer from thread item
* Added intl to global threads, added global threads to android
* Added Follow button to thread view
* Added thread badges
* In Channel experience .. WIP
* Clean posts in channel incase CRT is enabled.
* Added follow button, deleted messages doesnot have footer and design is now according to figma
* Removed old post and post header
* Added for follow/unfollow thread and fixed old one
* MISC design & code fixes
* Added options-follow/unfollow to the post's long press menu
* Shows ORIGINAL MESSAGE DELETED in thread when root post gets deleted
* Post list ts fix
* Old testcases fix
* Eslint fix
* Added custom status emoji in at mention autocomplete
* Fixed the width of the displayname and username
* Changed the max width for the full name and username in the autocomplete item
* Review fixes
Changed the behaviour of ellipses for long names
* Removed safearea bottom
* Fixes Mark and unread and thread header theme
* Fixes mark as unread and pariticipants error in thread
* Unfollowing post fix and misc
* Merge with master fix
* Added fallback to get thread from posts in case of not following/unloaded threads
* Refactored code and added tests for screens
* Loads threads from global threads screen, marks thread as marked on new thread posts
* Fixed tabs render on no threads, threads footer items styling and tests
* Loads threads based on tab and items according to constant
* Added infinite loading, unreads based on redux and not active thread list
* Fixed the username cutting off after truncating display name issue
* Changed avatars to touchableOpacity and added prop for parent component to style
* Fixed infinite loading, tab switching scroll to top, misc styles, team switching, scroll indicator insets
* Added follow button to DMs, moved follow button further right only on ios
* Snapshot updated
* Moved from useSelector to connect HOC
* Scrolls to top on team change, changed thread constant from mm-redux
* Fix merge issue
* Test case fix
* Fixed participants list
* Update app/components/global_threads/global_threads.tsx
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/components/global_threads/thread_footer/thread_footer.tsx
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/components/sidebars/main/channels_list/channel_item/index.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/screens/thread/index.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Moved date numbers to constants
* Fixed global threads component issues
* Thread item display logic moved to redux
* Misc fixes
* Reverted to TouchableWithFeedback with opacity
* Removed obselete snapshots
* Removing currentTeamId as we aregetting it in action
* Moved to connect component from useSelect for sidebar
* Thread read issue fix
* Removed react-native-navigation mock
Co-authored-by: Anurag Shivarathri <anurag6713@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Manoj <manoj@brightscout.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Anurag Shivarathri <anurag6713@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Manoj <manoj@brightscout.com>
Co-authored-by: Ashish Bhate <bhate.ashish@gmail.com>
Co-authored-by: Ashish Bhate <ashish.bhate@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Manoj <manoj@brightscout.com>
* Unable to open previews from search, pinned and mentions
* Granular data retention initialised
* Added server version check, logic to remove posts & test cases
* Restructured reducer & runs the job only one time a day
* Updated minimum server version with 5.36
* Reverting client.ts changes
* Added client rest calls & removed config check for data retention enabled or not & fixed test case
* Added check for license
* Update app/actions/views/login.js
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Update app/store/middlewares/helpers.js
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Update app/store/middlewares/helpers.js
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Fixed lint error
* Update app/client/rest/general.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/client/rest/general.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Added redux migration
* Updated server version to 5.37
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* 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>
* Unable to open previews from search, pinned and mentions
* Updated Compass Icons
* Added Icon to LHS and Channel Info
* Added Icons to Manage/View Members list
* Added Icon to shared users in posts
* Added icon to channel header, fixed header style
* Added Icons in autocomplete
* WIP: Add shared shannels to browse
* Adding Shared Channels string to i18n
* Added remote organization to remote user profile
* Updated snapshot for channel header
* Added browsing shared channels
* Removed the exmpty line
* Added snapshot when user is remote
* Reverted compass icons and added icons only needed for shared channels
* Fixed i18n swapped
* Copied compass-icons from webapp
* Fixed showing shared channels as deleted after browsing them
* Added new compass ttf to android & fixed icon style for browse channel listing
* Fixed search for shared channels
* user profile snapshot updated with testId
* User list row snapshot updated with testID
* Moved shared user check to util function
* Fixed required props warning for ChannelIcon component
* Update app/screens/user_profile/index.js
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Removed Request related redux
* Reverted client4
* Added rest calls
* Updated snapshot
* Reverted files
* Adding back shared channels stuff to channel icon & showing shared channels only when enabled in browse channels
* Fixed misc issues
* moved empty array outside the function to avoid re-render
* Removed renaming fields
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
* Update dependencies
* Fix lint, use npm@6
* Fix unit tests
* Dowgrade Fastlane
* Fix Fastlane script
* use android:api-29-node ci image
* Infer gradle json file from apk output folder
* Fastlane to Parse new version of gradle output-metadata.json
Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Michael Kochell <6913320+mickmister@users.noreply.github.com>
Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.com>
* Added join prompt when sys admin clicks on private channel perma links
* Moved isChannelMember to utils
* Update app/actions/views/permalink.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Added error messages
* Added error messages
* Moved checks to screen components
* Removed unused Alert import
* Removed unused translations and showing channel 'display' name
* fixed eslint error
* Moved private channel check logic from component to handleSelectChannelByName to avoid issues while pressing on url from different team
* Detox test WIP
* Test link fixes
* Added e2e test
* Hiding <Loading component on RN Alert as detox is unable to press on the Join button
* Updated message
* Added team membership check and auto-joining teams before viewing posts
* Fixed testcases
* Leaves newly joined team on any error while joining the channel
* Leaves the team if newly joined if cancelled the prompt
* Moved code to tapping_channel_url_link_joins_channel and refactored code
* Removed unwanted optional chaining operator
Co-authored-by: anurag shivarathri <anuragindianbraves@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Revert "[MM-29225] Define LSApplicationQueriesSchemes so Linking.canOpenURL can work (#5007)"
This reverts commit f3baaa6aa3.
* Create and use tryOpenURL
* Add missing onError functions
* Update app/components/markdown/markdown_link/markdown_link.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* First draft to handle go to location on mobile
* Fix lint
* Fix test
* Remove unnecessary change
* Add not handled cases
* Add i18n missing string
* Fix typo
* Extract handleGotoLocation into an action
* Fix minor issues and extract showPermalinkView to an action
* Fix minor issues and extract showPermalinkView to an action
* Add missing change
* Fix this reference
* Remove unneeded event handlers, sort imports, early handle errors, make group channel visible, remove duplications and move functions to the right place
* Fix tests
* Handle error when opening permalink
* add emojis available in the post to recent emojis
* made add recent reactions more performant
* lint fix
* added support for namedicons, update only if send post is success
* updated emojiUnicode function
* limit the number of recent emojis
* added e2e tests for MM-T3495
* filter out aliases
* Typo fix
* return data:true when success false when fails
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
* [MM-28100] Reload state for newly fetched channels before checking reachability
* join selected channel if not already a member
* fix destructuring
* Revert joining channels in handleSelectChannel
* refactor channel joining
* use different server endpoint to work around requiring a server update
* Show Confirmation Dialogue WIP First Commit
Show Confirmation Dialogue WIP Second Commit
refactoring according to comments
refactor code according to comments
Fix linting problems
add i18n strings
Update regex pattern
add test and make fixes
fix message not submitting
Fix linting
fix index.js
fix conflicts
address PR comments
address PR comments
single dispatch
Address PR comments
add test
* Show Confirmation Dialogue WIP First Commit
Show Confirmation Dialogue WIP Second Commit
refactoring according to comments
refactor code according to comments
Fix linting problems
add i18n strings
Update regex pattern
add test and make fixes
fix message not submitting
Fix linting
fix index.js
fix conflicts
address PR comments
address PR comments
single dispatch
Address PR comments
add test
* make some changes
* fix test failures
* Address PR comments
* Update app/mm-redux/types/channels.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/mm-redux/selectors/entities/channels.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/mm-redux/selectors/entities/channels.test.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/constants/autocomplete.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Address PR comments
* make group mention mapping its own function
* Address PR comments
* Update app/components/post_draft/post_draft.js
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Merge branch 'master' of https://github.com/mattermost/mattermost-mobile into MM-23785-ShowConfirmationDialogue-2
* Merge branch 'master' into MM-23785-ShowConfirmationDialogue-2
* Address MM-26987
* Retrieve group information on mount RN: Group Mention confirmation prompt not shown on default channel load
* Update Regex to fix MM-26976
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Add more messages button
* Update existing tests
* Various fixes:
* Use viewAreaCoveragePercentThreshold over itemVisiblePercentThreshold
* Remove currentUserId check when adding New Message line to postIds and
instead update the channel last viewed time when an own post is received
* Update snapshots
* Add showMoreMessagesButton prop and default to false
* Android fixes
* Add tests
* Localize more messages text
* Use FormattedText
* i18 extract
* Style fixes
* Account for network indicator
* Fix for failing tests
* Various fixes:
* Set the unreadMessageCount when POST_UNREAD_SUCCESS is dispatched
with a positive deltaMsgs
* Hide the more messages button when the unread count decreases or
when the new message line is removed shortly after loading the
channel
* No need for POST_UNREAD_SUCCESS if we manually call onViewableItemsChanged
* Reset unread count if current channel on channel mount
* Animate text opacity
* Compare indeces to determine when scrolling has ended
* Fix opacity animation trigger
* try with scrolling to the last rendered item
* Add onScrollEndIndex
* Improve animations
* Don't track moreCount in state
* Use moreText over prevNewMessageLineIndex to determine firstPage
* Update intl message format and call cancel in componentDidUpdate when needed
* Fix intl format
* Remove opacity animation and countText
* Fix pressed not being reset
* No need to separate intl func
* Return after resetting
* Fix accidental removal of setState call
* Reset pressed when newLineMessageIndex changes
* Use default windowSize and lower POST_CHUNK_SIZE and delays
* Queue a cancel timer that gets cleared only when the newMessageLineIndex changes
* Define uncancel func
* Increase cancelTimer delay
* Subtract read posts from unread count and account for retry indicator
* Add retry bar indicator tests
* Use props.unreadCount
* Fix handling of newMessageLineIndex change
* Fix handling of newMessageLineIndex change take 2
* Fix handling of newMessageLineIndex change take 3
* Use 'native' TouchableWithFeedback with dark overlay
* Fix handling of manually unread
* Update chunk and window sizes
* Fix hsl
* Update text only when newMessageLineIndex/endIndex is reached
* Don't delay cancel if when no more unreads
* Fixes for when opening the app
* No need to process viewableItems when unreadCount is 0
* Remove line
* Don't show if unreadCount is 0
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* MM-24501 Load all (joinable) teams when resetting app state
The subsequent `loadMe` only fetches a user's already-joined teams, which doesn't populate `state.entities.teams.teams` with the entire set of teams available, including potentially joinable teams.
Fixes https://github.com/mattermost/mattermost-mobile/issues/4209
* Add names to batched team action groups
* Using new getKnownUsers api to cleanup the users on leave channel
* Fixing tests
* Addressing PR comments
* Removing unnused variables
* Fixing proptypes annotation
* Addressing PR review comments
* Fixing minimun version check
* Changing the import to use
* Adding tests for version check
* Addressing PR review comments
* Small change to no change accidentaly the previous behavior
* Adding small fix proposed by Elias
* 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>