* Downgrade RNN to avoid bug that cuts off permalink view on iOS
* Bring back permalink view on search/recent mentions/pinned and saved posts
* fix test snapshot
Fixed MM-36571 and MM-36601 issues by dispatching RECEIVED_ME action on websocket reconnecting
Added memoization in makeGetCustomStatus in custom status emoji component
Fixed e2e test case failing due to post header custom status emoji
* 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>
* 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>
* migrate app selector to AutocompleteSelector
* add if statement to avoid missing prop
* add tests for dynamic values
* clean up
* remove old files
Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.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>
* 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>
* 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-23391] Sort sidebar teams order by user preference
* Update imports
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Small changes to selector from review
* Select first ordered team in user preference on login
* Check teams length instead
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Return early if teamsOrder is empty
* Return sorted copy of teams instead of mutating original array
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
* [MM-29037]: Unit and e2e tests for MM-28100
* e2e test
* review fixes
* move test to correct folder
* update to latest master
* remove console log
* skip query when not required
* re-add console.log
* [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
* GH-13222: Shows an alert when you are removed from the channel that you are currently viewing
* GH-13222: Removed channel alert improved text
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
* Add popDismissToChannel
* Use popToRoot + dismissAllModals
* Just dismissAllModals and popToRoot
* Revert unnecessary changes
* Close permalink on popToRoot
* Emit after dismissAllModals and popToRoot
* 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>
* Initial Commit for Group Highlights
* Fix some stuff
* Get my groups
* update channel.js
* Address PR comments
* Address PR comments
* Update app/actions/views/channel.js
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* update selector stuff
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
* MM-26749 Fix race condition when open from PN
* setStartFromNotification earlier
* Fix Android race condition when closing the app with the back button
* 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>