* post menu and file attachments
* Fix post list selector test
* Use new Gesture handler to avoid gesture conflicts in post menu and reaction list
* Allow reaction list to scroll the header on Android
* Feedback review
* Add some comments
* Fix eslint
* Add widgets and interactive dialogs
* Update snapshots
* Updates per feedback and fix slash command
* Fix style
* Update styling
* Updates per feedback
* Updates per feedback
* More styling changes
* Remove extra space above message menu
* Use post metadata to prevent scroll pop
* Fix not to fetch for reactions every time
* Update post-metadata mm-redux ref
* Update mattermost-redux to include post-metadata
* Fix network indicator layout and reconnect logic
* Reconnection logic to cover more use cases
* Check for internet connectivity when bringing the app to the foreground
* iOS clear notifications from a specific channel when clear push notification received
* Android leave notifications until channel is read
* use redux-connect currentChannelId in network indicator
* [#MM-12410] Custom Terms of Service Modal.
- Create a new screen for terms of service
- Register it in app navigation
- Open it as a modal when login succeeds or app is opened when already logged in.
- Get terms of service and render it as markdown
* Refactor service terms to terms of service
* Show terms modal when launching channel instead of componentDidMount
* Remove footer text
* Close modal before logging out
* Use dismissAllModals instead od this.close
* Update header styles
* Update the back icon
* Add left icon conditinally based on os
* Update en.json
* - Integrate Accept/Reject API
- Refactor show navigator to util
- Remove title
- Code refactoring
* Handle Accept/Reject API errors
* Update package-lock
* - Show Alert to handle API error
- Handle API error for GetTerms error, Accept/Reject error and Reject success
- Changes in en.json
- Remove error banner
- Open terms modal in sso and experimental certificate
* Enable navigator buttons after getting terms
* Rename Ok to OK in Alert
* Add retry for API error
* Fix check-style
* Fix FailedNetworkAction Error Message
* - Use Close button instead of back button
- Update en.json
* Remove unused import
* Disable hashtags and atmentions in terms modal
* Enable close button when terms text fails to load
* Minor changes
* Fix show terms on sso login
* Handle restartApp event
* Add test cases
* Revert change to app/components/formatted_markdown_text.js
* Show the terms modal on the channel page
* Remove remaining references to showTermsOfService
* Disable Hashtags, AtMentions and ChannelLinks
* Update the props to markdown component
* Pass the text as literal to renderText
* Return the generated renderTexts
* Fix lint
* Render ~, #, @ with Channel link, Hashtags and At Mentions
* Fix failing tests
Revert unwanted changes
* Hide the channel page content before the terms are accepted
* Fix lint and failing tests
* Revert changes to hide channel while terms are not accepted
* Open modal in componentDidMount instead of constructor
Code refactoring
Disable back button on android
* Remove unused import
* No need to await for showModal
* No need to await for accept and reject
* Update flag for updateTermsOfServiceStatus to updateMyTermsOfServiceStatus
- as phase 2 redux PR was mered.
* Fix check-style
* Change opacity in terms of service text
- Fix tests
* Revert package-lock.json changes
* MM-12901 Create showSearchModal action and use for hashtags
* MM-12901 Improve handling of hashtags on Recent Mentions, Flagged Posts, and Permalink screens
* Slide up panel for reaction list
* Feedback review
* UI Feedback review
* Feedback review
* Improve slide speed and fix end position
* Scroll to top when changing reaction view
* dismiss modal without animation so backdrop does not scroll down
* Smooth animation to show/hide
* Change animation speed
* Allow channel drawer to close when showing the team list
* prevent closing the sidebar when jump to is active
* Add proper header to drawer_layout.js
* Fix for LHS populating you next to current user
* Add test cases
* Refactor to use avaiable props conditions in component
instead of passing flags from connector
* Add isArchived flag for all DM's and channels
* Exclude search results from channel_list component to show
results when isSearchResult flag is set
This is to let user search for deactivated users from jumpto
* MM-12189 Set autocomplete max height based off available space
* Have each autocomplete type determine its own max height since DateSuggestion needs more space
* Remove unused props and ref
* MM-11567: Autocomplete search in: for DMs and GMs
* More robust behavior on older versions and a fix on autocompletion
* Moving get display_name for search to a selector
* MM-11974, MM-11980 Add deactivated user to LHS search
* Add (you) to current user in jumpto search
* Change to use old format of objects for non-search results
* Remove deactivated when searched using JumpTo
* Use archive icon in JumpTo Search for deactivates users
* Update snapshots
* Change snapshots to use getElement
* Fix snapshot
* MM-10273 Add hashtag support
* Put hashtag search in a proper modal
* Change hashtag search style to match regular search
* Move Hashtag component and explicitly pass props
* Add unit tests for Hashtag component
* Fix merge conflict
* MM-11725: Using the new server endpoint to autocomplete channels
* Fixing suggestions from the PR
* Updating mattermost-redux dependency
* Removing unnecesary Client4.getServerVersion usage
* Remove PixelRatio from emoji
* Fix removeSubclippedViews in emoji picker
* Add system emojis to the store handler
* Pass element to whyDidYouUpdate util
* Fix post avoidable re-renders
* Fix emoji on Android
* Feedback review
* initial partial implementation of search date flags UI (on: before: after:)
* Make the calendar show correctly
* dismiss keyboard when showing the date suggestion since this type of input will primarily be entered through the calendar and later edited if needed
* fixed code style errors
* updates as per pull request comments
* fixed eslint errors
* changes as per pull request comments, removing unnecessary code
* added handling for hiding the date filter feature if the server version doesn't support it
* fixed eslint errors
* removed unnecessary property defaults and server version checks, as per PR suggestions
* this default is needed for the initial load of the component
* changed the way we capture the flag from the search string, this handles scenarios where multiple flags might be present in the search string that are handled by the same suggestion component as is the case here with date based flags
* need property declared to pass jslint rules
* eslint style fix, moved regex out into constants
* removed unused code and references
* updated as per pull request feedback
* updated to latest redux version
* changed to new search posts api that supports passing in of time zone utc offset to support date based search flags
* updated to the upcoming release version in preparation for merging to master
* Properly memoize DateSuggestion mapStateToProps
* Remove moment-timezone
* MM-11318: Expands shortened links inline.
* MM-11318: Accepts only image/* mime types. Switches to HEAD request.
* MM-11318: Fix for YouTube links.
* MM-11318: Renames function because it handles non-images.
* MM-11318: Checks for unmounted. Doesn't request known youtube redirects.
* filter system_remove_channel messages of a current user based on hiding/showing join/leave messages
* update mattermost-redux
* makes the remove_from_channel/team shows after leave_channel/team
* update per comments
* revert change on mattermost-redux commit to prevent conflict with existing PR
* add protection in accessing ".team_id" field when it's immediately accessed after the object is created.
* remove lastChannelId since lastChannel is being checked already
* Fix style issues with consecutive posts
* Remove commented on message for immediate comment by
same user.
* Change replyBar to be on post and not on postHeader
* Fix padding on messages
* Fix date_header spacing
* Fix snapshots
* Change renderReplyBar variable name
* add profile pop-up to combined system messages and fix it's translation issue
* Pushing userlink changes
* add spacing
* fix styling and spacing issue. also removed tests due to transpiling issue
* update per comment
* MM-11198: avoid duplicate keys in date lines
Ensure each dateline rendered as part of search, recent mentions, or flagged post list has a unique key, even if the same date itself appears multiple times.
* update post_list.test.js to actually test date boundaries, relying on TZ=utc export in package.json
* unit test makePreparePostIdsForSearchPosts
* fix eslint issues
* try TZ=GMT
* encode date lines using timestamps instead
This requires a few extra changes to the post list proper, but largely
simplifies things anyway.
* Upgrade mattermost-redux
* Check if url start with http before pinging
* Remove required status prop in settings sidebar
* Prevent the app to get into a bad state and if that happens try and recover
* Fix getting the youtube video id regardless where the id is defined in the link
* feedback review
* Simplify and add unit tests for getYouTubeVideoId
* fix saving of email notification props when email batching is enabled
* fix email notification settings for android
* make screen for Android email notification
* update per comment
* leave as is "...email.everyXMinutes", and fix prop type error on emailInterval
* add "mobile." prefix to newly introduced translation ID
* MM-10970: Adds new FormattedMarkdownText to format translations using markdown.
* MM-10970: Makes defaultText required. Changes prop validation of theme. Moves computing styles to render.
* Add automatic and manual timezone support
Update users timezone and scrollTo selected timezone in SelectTimezone coponent
Clean styles for SelectTimezone screen
Add auto-timezone update when login or enter app
Hide timezone feature behind config
Fix requested changes
Parse SupportedTimezone from config
Add localTime and localized post stamps
Add trailing commas
Include all timezone util methods from redux
Remove EnableTimezoneSelection flag
WIP get timezones from server
Pull supportedTimezones from api
Minor fixes
Remove wrapWithPreventDoubleTap
Revert back to react-intl formatDate
Include timeZone prop in FormattedTime
Refactor Timezone row into component
Minor cosmetic changes
Add minimum server support for the timezone feature
Move getSupportedTimezones to componentWillMount
Move autoUpdateTimezone function to handleSuccessfulLogin
Specify user timezone in profile_header
Remove format props from FormattedTime
Add ExperimentalTimezone flag
Replace Client().getServerVersion() with entities.general.serverVersion
Add isTimezoneEnabled helper function
Move isMinimumServerVersion to utils/timezone.js
* Fix style errors
* Remove date-time-format-timezone polyfill
* Feedback changes
* Use timezone selector from redux
* Explicitly pass hour12 props to intl.formatDate
* Update package-lock
* Revert iOS project file changes
* Fix license header
* Include timezone related paths in modulePaths
* Fix license header
* Fix minor issue with rebasing
* Fix issue with getconfig in GeneralSettings
* Update package-lock
* Add Auto Responder support
Add Auto Responder message support for <Post/>
Add Out Of Office support
Add Confirmation dialog for Out Of Office status reset
Fixing styling issues
Ensure AutoResponder is enabled in settings with ooo status
Save AutoResponder according to Out Of Office status
Fix copy for AutoResponder hint
Fix eslint errors
* Add constants from Redux
* Small refactor
* Add name consistency with the feature "auto responder"
* Add minimum server version of 4.9 for AutoResponder support
* Add ViewTypes.PROFILE_PICTURE_SIZE in post_profile_picture
* Add ExperimentalEnableAutomaticReplies flag
* Update copy and auto responder styles
* Remove unwanted imports
* AutoResponder feauture in 4.9
* Add AutoResponder Thread support
* Fix OOF copy from review
* Change copy for Auto Responder
* Address feedback
* Fix license headers
* Status name translated in Alert
* Add umbrella icon for AutoResponder
* Fix minor issues with rebase
* Fix License headers
* MM-10717: Update longpress buttons when add reaction, edit post, or delete post permissions change.
* MM-10717: Makes tooltip actions prop required.
* MM-10717: Switches all direct access of 'config' and 'license' to use selectors.
* CBA Support
* cba support for iOS Share extension
* Autologin with credentials
* Set initial config for ExperimentalClientSideCertEnable as false
* Fix mattermost-redux to cba branch
* feedback review
* Fix eslint
* fix missing username by supporting backward compatibility on `addedUsername` props when adding user to the channel or team
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* updated mattermost-redux with related PR merged
* fix bundling failed with "mime-db" error
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* fix display name of other user after joining a channel
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* make hidden town-square (on read-only) be available to view by joining in more channels
* updated
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* add feature to combine system messages
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* updated copyright to 2015
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* updated per comments
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
* Switch to SingleDex and remove all locales
* WIP Mattermost Start Component for lazy loading modules
* Add files changed for native modules
* Add Entry component and app global object
* dispatch setStatusBarHeight for iOS
* Update screen imports
* Include Entry screen
* Refactor app to mattermost.android.js
* Override unnecessary java files
* Fix minor issues in changes
* Display empty state based on user credentials
Also, add proper background theme for empty loading screen
* Add native module constant cache support
* Fix startup theme regression
* Add Keychain support for credentials
* Fix Orientation regression
* Fix SharedExtension regression
* Emit NATIVE_APP_LAUNCHED across bridge only once during cold start
* Add iOS Support
* Revert to previous implementation of i18n
* Fix styling issues
* Include listener for SERVER_VERSION_CHANGED
* Add SafeAreaView in Entry screen
* Register deviceToken early, in order to get iOS PN Support
* Include StartTimeModule
* Add ReplyFromPush support and remove NATIVE_APP_LAUNCHED listener
* Package native constants in StartTimeModule and avoid bridge calls
* Fix check-style errors
* Code cleanup
* Rename StartTimeModule to InitializationModule
* Remove NavigationApplication
* Documentation and minor changes
* Account for app opening after SharedExtension
* Refactor getIntl to getTranslations
* Move native module constants into it's own forked repos
* Include FetchBlob and DeviceInfo forked repos
* Attempted to fix profile pictures on Android
* Fixed uploading profile pictures
* Added warning when ImageCacheManager.cache is called without callback
* Fix image cache so the files are not too long
* Fix reply count in post header
* Make channel loader to trigger manually
* post list selector for search
* Include date separators in search results
* Flagged posts
* Recent Mentions
* Retry option for flagged posts and recent mentions
* feedback review
* Update mattermost-redux
* Remove ability to edit town-square and hide post textbox
* Add placeholder to read only TS post textbox.
* Only run townHallFilter if ExperimentalHideReadOnlyTownSquare is true
* Fix eslint errors
* Refactor to use new read only channel selectors
* Change canEditChannel to check if channel is read only
* Fix rebase issues
* Fix lint errors.
* [XYZ-45] New permissions implementation
* Changing mattermost-redux branch in packages.json
* Changed yarn.lock file to point to advanced-permissions-phase-1
* MM-9620: Add reactions permissions (#1451)
* Fixing some code styles warnings
* Fix mobile app to use latest Mattermost redux
* Some merge errors fixed
* Long post support
* Split file upload component
* Use fetch blob fork
* add progress to file upload
* Remove SERVER.PID from Makefile
* Preview only images
* remove unused prop
* add feature to add user to channel after at-mention
* update per comment and update mattermost-redux
* move sendAddToChannelEphemeralPost to actions folder
* rebase and fix merge conflicts, do clean up a bit
* Long post support
* Fix upload preview
* Add MaxPostSize validation
* Fix show more button container
* localization
* feedback review
* UI feedback review
* Upgrade mattermost-redux
* Fix long post attachment list
* Moved ChannelPostList footer out of PostList
* Fixed typo in constant
* Added debounce to loadMorePosts
* Fixed post list footer not being rerendered properly
* Fix team_icon to reference the pure component
* Fix team icon in Android extension
* Fix team icon in select team screen
* Fix team switch divider in channel drawer
* Fix team_icon to reference the pure component
* Fix team icon in Android extension
* Fix team icon in select team screen
* Fix team switch divider in channel drawer
* Add text preview screen
* Add text/plain mime in supported docs format
* Add previewTextFile method to view text file in TextPreview Screen
* Fix delay for ui to update progress
* Add styling for text preview screen
* Align line numbers on right
* Start read file for preview before delay
* Wait for animation frame before initial rendering of post list
Improves startup experience.
(you can see yourself how big a difference is between booting to an empty channel and to a 'busy' channel, and since rendering post list is a heavy task, this change makes the initial UI appear sooner. In my testing it is about 0.7 seconds)
* eslint
* actually render empty screen when loading posts
* delay channel drawer actions after drawer is fully closed
* lazy render FlatList
* eslint
* eslint
* PLT-7567: Integration of team icons in
channel drawer teams, switch team button, team selection, os share extenions
* PLT-7567: adopt updated eslint changes
* PLT-7567: Component for team icon display, refactoring
* PLT-7567: removed redundant styles
* PLT-7567: redux connected component for team icon, error handling
* update eslint's `comma-dangle` rule to `always-multiline`
* add check and fix scripts to package.json
* Invoke `yarn fix` to adopt the updated eslint rules. No other changes are included.
* ICU-624 Added initial table rendering support
* ICU-624 Added full table view
* Added proper pluralization to +X more lines in code blocks
* ICU-624 Added support for images in tables
* Stopped using injectIntl for tables
* ICU-624 Updated commonmark-react-renderer
* ICU-624 Hid scroll indicator in collapsed table view
* Addressed feedback
* Add async handling of custom emoji to posts and channel info
* Add server request to emoji autocomplete
* Add custom emoji paging and server search to emoji picker
* Fix android
* Update mattermost-redux and revert temp change
* Backwards compatibility fixes
* Updates per feedback
* Set server version when user is not logged in
* Reset section index when search is cleared or cancelled
* Some small fixes and upgrade mattermost-redux
* Minor sorting changes
* Internalized value to local state so that there is less ‘delay’ and less surface area for bugs to happen
* removed toLowercase on comparison and fixed parent components instead
* Update more_channels.js
* added arrow style functions to eslint
* added padding to text boxes to decrease chance of cutoff
* Removed fontSize prop from Emoji
* base sizes on stylesheet
* normalized font sizes across devices
* minor tweaks
* tweaks
* text to default
* text size relative too
* remove Margintop hack
* Final tweaks
* fixed func name
* fixed scale to always be based on portait mode
* re-added margintop hack
* set Text paddingBottom in markdown file
* Fix style names and setup
* fixed import
* reversed size of edit label
* fix eslint
* Add support for DM with deactivated channel (teammate)
* add archive_icon
* add extra protection to prevent error when teammate is evetually deactivated
* Improve scrolling to new messages
* Experimental scrollTo with measurement
* Add search support
* Review feedback
* Added comment for moreNewMessages index`
* objective-C share extension
* MattermostBucket module to share data between the main app and the extension
* middleware that shares the data between the main app and the extension
* Fix setState when safe area in unmounted
* Share extension for iOS
* Fastlane changes to include iOS share extension
* Fix unit test
* Feedback review
* define proptypes for icons
* Add set status feature
Small code refactoring
Add Do Not Disturb option
* Add Account Settings screen
Add username, nicname, and position fields
Add email field
get deviceHeight from redux
Clean up onPress handler in Settings
Refactor each account settings item to it's own component
Clean up email field and updateUser action method
Use mobile localization format in en.json
Update profile image
Clean up ProfilePicture for editing
Add loading and error components in AccountSettings
Refactor updateRequest state into a function
Follow design specs
Remove unnecessary this.state.emailUpdated
Polish AccountSettings and secondary components
Refactor AttachmentButton into it's own componentg
Add Account Settings icon in General Settings
Add TODO comments
* Update user status
* Edit Profile screen refactored
* Fix edit profile item text color
* Add right sidebar
* initial implementation of the right drawer
* Do not hide status bar on drawer open
* initial options in the RHD
* Fix android layout
* feedback review
* Enforce max file count and wait until all images finish loading
Replaced Text with FormattedText
Remove unnecessary Text import
Clean up post_textbox and file_upload_preview
* Fix localization string for mobile
* change MAX_IMAGE_COUNT to MAX_FILE_COUNT
* RN-519: Expands AtMentions and ChannelMentions searches to use entire device height.
* RN-519: Fix for ~ and @ search list heights.
* RN-519: Optimization.
* Add Channel Info Edit options to ChannelInfo screen
Refactor CreateChannel to CreateChannel and ChannelInfo
Add EditChannel screen
add updateChannelRequest
display header option only if channel is DM or GM
Add editing prop to ChannelInfo
Add saving state to ChannelInfo
Clean up EditChannel and change saving to updating
Add channel name (url) field in EditChannel
Clean up enableRightButton logic for EditChannel
Add error handling for EditChannel fields
Remove leftButton declaration from EditChannel
Add wrapWithPreventDoubleTap to click handlers in ChannelInfo
Move channel info to parent component (CreateChannel)
Add editing support for channel info in parent component
Remove ownProps from connected components
Remove passing parent props using the spread operator
* Strip out channel url field from EditChannel
* Comment out channelUrl textInput ref
Make eslint happy
* Remove injectIntl in favor of intl context props
* Add mobile prefix to json string
* Remove unnecessary actions declaration in ChannelInfo
* Refactor creating | editing to saving
* Safe check refs when blurring in ChannelInfo
* pass channelType for displayingHeaderOnly in EditChannelInfo
* Refactor ChannelInfo component to EditChannelInfo
* pass 1to1 props instead of object
* Add required to certain props in EditChannelInfo
* Use Stylesheet for container styles
* Add InvalidPermission method when updating channel
* Clean up onDisplayNameChangeText and safe check scrollToEnd
* Add {deviceWidth, deviceHeight} from redux
* Remove style.navTitle
* Add wrapper methods for delete and leave channel
* remove alertErrorIfInvalidPermissions
* Fix mobile localization strings to use prefix mobile.-
* Add TODO for channel URL
* RN-173 Added support for Markdown images
* RN-173 Added proper alt text when image fails to load
* Changed (edited) indicator not add itself as a child of an image
* RN-173 Removed space between an image and the following text
* Made sure MarkdownImage is mounted when setState is called
* Fixed images in links having their location overwritten
* Made images work in links
* Fixed uppercase links not working on Android
* Added vertical margin around images
* RN-173 Added styling for markdown image error text
* RN-173 Added error when image exceeds max dimensions on Android