* fixes MM-37294 MM-37296 MM-37297
* Added conditions to check for post & thread existence
* Update app/mm-redux/selectors/entities/threads.ts
Co-authored-by: Kyriakos Z. <3829551+koox00@users.noreply.github.com>
* type fix
* Never disabling Mark All as unread
* Added follow/unfollow message for not yet thread posts
* Test case fix for mark all as unread enabled all the time
* Removed hardcoded condition
* Fixed MM-37509
* Updated snapshot for sidebar
* Global thread actions init
* Added options
* Update post_options.js
* Test cases fix
* Added border bottom for each thread option
* Update test case
* Reverting snapshot
* Updated snapshot
* Moved options to screens & removed redundants translations
* Reusing post_option for thread_option
* Component name changed to PostOption from ThreadOption
* Snapshot updated
* Removed factory
* Update app/screens/thread_options/index.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/screens/thread_options/index.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Kyriakos Z. <3829551+koox00@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Ensure post options always have the bindings for its channel
* Mimic webapp model
* Address feedback
* Add return to validate bindings
* Address feedback
* Use empty bindings constant to avoid rerenderings
Co-authored-by: Michael Kochell <6913320+mickmister@users.noreply.github.com>
* MM-37781: Only check deprecated config settings if server is older than v6.
* Feedback review
* Add isMinimumServerVersion helper for iOS Native
* MM-37781: Adds missing parameters.
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* new themes and theme type updates
* update theme processing
port newer functionality from webapp
* update theme UI
including new svg-based thumbnail
* lint fixes
* update snapshots and tests
* update theme tile border approach
* remove unused path component
* remove old variable typo
* remove old variable type from theme type
* lint and snapshot updates
* update snapshots
* fixes MM-37294 MM-37296 MM-37297
* Added conditions to check for post & thread existence
* Update app/mm-redux/selectors/entities/threads.ts
Co-authored-by: Kyriakos Z. <3829551+koox00@users.noreply.github.com>
* type fix
* Never disabling Mark All as unread
* Added follow/unfollow message for not yet thread posts
* Test case fix for mark all as unread enabled all the time
* Removed hardcoded condition
* Fixed MM-37509
* Updated snapshot for sidebar
Co-authored-by: Kyriakos Z. <3829551+koox00@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.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
* [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>
* 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>
* Allow post option modal to close before opening app modal
* lint
* revert commits
25ea111d9ab1441094de2b27e1af18a22d863a33 and c0d9e2128610eb02123ccd7362597fd0499d11be
* wait for post options to close before kicking off request
* Apps bindings support (#5012)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* Add defaults to send ephemeral
* Update variable naming
* Rename shouldProcessApps by a more meaningful appsEnabled
* Embedded forms (#5169)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* Add Embedded Forms
* Fix snapshots
* Add Embedded Forms
* Improve naming, change the root element to be a binding and improve binding handling
* Get post down on the buttons, remove unneeded variables and minor fixes from the review
* Allow undefined bindings to fillBindingsInformation and add logging for error.
* Address review feedback
* Add App Forms (#5177)
* Add App Forms
* Address feedback and self review
* Add dynamic select
* Fixes and improvements
* Add the ability to refresh on submit.
* Use AppFormValue instead of redoing the type
* Address feedback
* [MM-31508] Rename URL to Path in Call (#5186)
* Add user agent to call context (#5193)
* Remove unneeded state reference (#5196)
* Change user agent query on fetch bindings (#5201)
* Add refresh websocket event to refetch bindings (#5194)
* Add refresh websocket event to refetch bindings
* Add missing changes
* Declare socket event constant and separate the handler to a different function
* Add binding validation on binding fetch (#5200)
* Apps commands (#5107)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* apps modals draft
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* reuse command parser throughout slash_suggestion component's lifecycle
* fix prop and lint
* using alert to show error message. need another way
* duplicate import
* types
* types
* types
* rename file
* copy webapp parser and test
* dependencies moved. tests pass
* move app command parser into its own folder
* converted to typescript, all tests are passing
* automated and manual tests work
* lint
* lint
* remove fall throughs with blocks
* types
* doAppCall type
* extract displayError to deps file
* test types
* lint
* fix tests
* unused import
* PR feedback
* fix imports and show errors
* types
* remove execute suggestion for mobile
* watch feature flag
* fix tests
* change form text arugment behavior to show user input and not hint
* return call response error in doAppCall
* update tests to remove hint from text field suggestions
* lint
* use new base command structure
* fix tests
* wrap appsEnabled
* typescript actions/command.ts
* update app constants
* PR feedback
* fix error handling from doAppCall action
* Use App CallRequest structure (#5212)
* error handling
* move test files
* remove unused import
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* Add feature flag (#5207)
* Add feature flag
* Simplify return
* Add localization, call validation and use call type on subpath (#5221)
* Add localization, call validation and use call type on subpath
* Add more localization to the parser and bring fixes from webapp
* Fix ephemerals and channel header / post options crashes
* fix app command parser deps and alert messages
* Improve suggestion handling
* Fix test
* Fix lint
* Return errors as error
* Address PR feedback
* return error property
* fix error string wordings
Co-authored-by: Michael Kochell <6913320+mickmister@users.noreply.github.com>
* show bindings in threads and all post menus
* unused import
* fallback on post id in case this is the root post
* fix ephemeral reply for modal submissions
* fix merge typo
Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.com>
* Apps bindings support (#5012)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* Add defaults to send ephemeral
* Update variable naming
* Rename shouldProcessApps by a more meaningful appsEnabled
* Embedded forms (#5169)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* Add Embedded Forms
* Fix snapshots
* Add Embedded Forms
* Improve naming, change the root element to be a binding and improve binding handling
* Get post down on the buttons, remove unneeded variables and minor fixes from the review
* Allow undefined bindings to fillBindingsInformation and add logging for error.
* Address review feedback
* Add App Forms (#5177)
* Add App Forms
* Address feedback and self review
* Add dynamic select
* Fixes and improvements
* Add the ability to refresh on submit.
* Use AppFormValue instead of redoing the type
* Address feedback
* [MM-31508] Rename URL to Path in Call (#5186)
* Add user agent to call context (#5193)
* Remove unneeded state reference (#5196)
* Change user agent query on fetch bindings (#5201)
* Add refresh websocket event to refetch bindings (#5194)
* Add refresh websocket event to refetch bindings
* Add missing changes
* Declare socket event constant and separate the handler to a different function
* Add binding validation on binding fetch (#5200)
* Apps commands (#5107)
* Add redux related information
* Add binding loading on channel refresh
* Add channel header and post option bindings
* Fix test
* Minor fixes
* Fix snapshots
* apps modals draft
* Handle errors and show bindings only on main channel
* Update Expand Levels keys and values to match latest changes
* Add NAVIGATE call response handling.
* Add more isolation to apps related code
* reuse command parser throughout slash_suggestion component's lifecycle
* fix prop and lint
* using alert to show error message. need another way
* duplicate import
* types
* types
* types
* rename file
* copy webapp parser and test
* dependencies moved. tests pass
* move app command parser into its own folder
* converted to typescript, all tests are passing
* automated and manual tests work
* lint
* lint
* remove fall throughs with blocks
* types
* doAppCall type
* extract displayError to deps file
* test types
* lint
* fix tests
* unused import
* PR feedback
* fix imports and show errors
* types
* remove execute suggestion for mobile
* watch feature flag
* fix tests
* change form text arugment behavior to show user input and not hint
* return call response error in doAppCall
* update tests to remove hint from text field suggestions
* lint
* use new base command structure
* fix tests
* wrap appsEnabled
* typescript actions/command.ts
* update app constants
* PR feedback
* fix error handling from doAppCall action
* Use App CallRequest structure (#5212)
* error handling
* move test files
* remove unused import
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* Add feature flag (#5207)
* Add feature flag
* Simplify return
* Add localization, call validation and use call type on subpath (#5221)
* Add localization, call validation and use call type on subpath
* Add more localization to the parser and bring fixes from webapp
* Fix ephemerals and channel header / post options crashes
* fix app command parser deps and alert messages
* Improve suggestion handling
* Fix test
* Fix lint
* Return errors as error
* Address PR feedback
* return error property
* fix error string wordings
Co-authored-by: Michael Kochell <6913320+mickmister@users.noreply.github.com>
* leave the channel info screen when the call is successful. stay if there is an error
* fix intl in tests
Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
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>
* MM-30286 Detox/E2E: Add e2e test for MM-T3222 and some cleanup
* Fix merge issues
* Fix more issues
* Fixed new line
* Remove redundant check
* Updated instance to getElement
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
* Upgrade to RN 0.63
* Bump to RN 0.63.1
* Fix RN patch
* Use JSC Intl version
* Update android/app/build.gradle
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* Fix Android external storage permission
* Fix emoji imageUrl when no server url is present
* Patch react-native-image-picker
* Allow to post attachment only messages
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* MM-25820 prevent double tap in post options
* Fix weird behavior on iOS when doble tapping on add reaction and edit in post options
* Callback after close
* MM-24891 Allow permissions to have defaults set in case where roles not in state
* MM-24891 Add tests for haveIPermission
* MM-24891 Apply the defaults to more channel permission checks
* WIP: Implementing quick reaction functionality
* Making closing animations smoother
- Added haptic feedback + timeouts for a smooth flow
* Fixing clipping of post options on android
* updating snapshots
* Refactoring code & fixing styles
- Fixed paddings element sizes to comply with design specs
- Replaced reaction image to one with a higher resolution
- Made sizes of emojis to be conditional on deviceWidth
* Apply suggestions from code review
* Adding component to avoid extra re-renders
* Refactoring function call in reaction_button
Am ashamed i didn't catch this before pushing the rest
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
* MM-20790 Mark as Unread option should not be available on mobile if the server does not support it
* Check for server version with min 5.18v for showing the option
to mark as unread
* Change if condition
* MM-17838 Wrap reactions when they exceed screen size
* Hide add reaction button after 40 reactions
* Hide add reaction button after 40 reactions
* Fix tests
* Fix crash when post has no reactions and convert to factory
* Create constant and use a separate prop for allowing more reactions
* Revert "Update mattermost-redux"
This reverts commit 04b3897ecb.
* Revert "[MM-17068] Add set post as unread option to menu (#3202)"
This reverts commit c7a29eea6a.
* [MM-17068] Add set post as unread option to menu
* [MM-17068] Fix tests
* [MM-17068] add english assets
* [MM-17068] Add bookmark icons for marking as unread
* [MM-17068] reorder menu items
* [MM-17068] fix snapshots
* [MM-17068] merge my post options and others post options