* Channel notification setting for disabling channel mentions (#MM-8404)
* Replaces raw string value by constants (#MM-8404)
* Updates import according to redux update (#MM-8404)
* Theme selection screen (initial commit)
PR Review changes
Add custom theme option for users who are already using a custom theme
Fix for limited allowed themes
Selected item case fix
Memoized available themes request, other optimizations
updated snapshots
* Custom theme option changes - title. spacing, save option on state for life-cycle of screen
* 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
* [#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-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
* 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
* 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
* 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 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
* 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
* 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
* 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>
* 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.
* 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
* 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
* 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
* 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-469 Added the ability to cancel a ping when on the select server screen
* RN-369 Added i18n strings for new button
* Made sure config and license are downloaded before moving to login screen
* Have SelectServer screen still show connecting while waiting for config
* Don't show SelectServer screen as connected if an error occurs
* 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
* Add recently used section and section icons
* Improve section scrolling indication
* Modify Makefile and use onMomentumScrollEnd
* Make sure top section maintains highlight when scrolled to top
* Sort emojis by startsWith then includes when filtering
* Config to enable when clicking on username to fill input with @mention
* Rename to experimental and move tenary from componet to variable
* Use getCurrentChannelId in insertToPostDraft action
* Change to work with rebase
* Refactor thread reducer and blacklist currentThreadId
* Review feedback
* Review feedback 2
* White label about modal. Move strings to config.
* Refactor styling and add powered by Mattermost
* Review feedback
* Use full bundle ids for about modal check
* RN-73 Fixed code block text colour being incorrect (#868)
* RN-220 Add "in:" and "from:" search modifiers (#869)
* Fix search and search preview
* Add "in:" and "from:" search modifiers
* Version Bump to 49 (#875)
* Version Bump to 49 (#876)
* Update minimum server version (#878)
* translations PR 20170905 (#882)
* Added JS code for Sentry
* Removed leftover initializeSentry call
* Added SentryOptions config setting
* Added native components for react-native-exception-handler
* Removed default props from ErrorText
* Moved where Sentry is initialized
* Added ios/sentry.properties to .gitignore
* Added linking react-native-sentry to Fastlane
* Fixed fastlane to include newlines in sentry.properties
* Moved to manually link react-native-sentry
* Captured redux errors with Sentry
* Redid how Sentry is optionally compiled to be simpler
* Added Sentry middleware to create redux breadcrumbs
* Added Sentry tags for server version
* Initialize Sentry when testing
* Fixed string replacement for SentryEnabled in fastlane
* Added react-native-sentry to NOTICE.txt
* RN-152 Added ability to open group messages from MoreDirectMessages
* Refactored row components for CustomList
* Added CustomSectionList component to mirror CustomList
* Added control to display all selected users in More DMs list
* Updated title of More DMs modal
* Updated yarn.lock
* Fixed channel name not being set when creating GM channel
* Fixed error on Android
* Fix offline indicator UI
* Add search screen with recent mentions functionality
* Fix make start
* Add autocomplete to the search box
* Fix search bar in other screens
* Get search results and scroll the list
* Add reply arrow to search result posts
* Search result preview and jump to channel
* Feedback review
* RN-166 follow user prefs for join/leave messages
* RN-158 Fix Android input textbox offscreen issue
* RN-181 Use device locale as default locale
* Upgrade mattermost-redux
* Fix TouchableHighlight in the channel drawer items
* Update channel title when switching channels
* Fix channel name title when switching teams
* Fix unit test
* Fix bad merge for navigation modal
* Fix modal props for options and image preview
* PLT-5721 Show Group Messages and correct channel info
* Set fixed commit on mattermost-redux
* address feedback
* WIP Global error handler
Adding components
Adding actions
* Add general errors where errors are caught
* Filter out non displayable errors
* Initial setup to email errors
* Add current user/team to error email
* Fix a few lints
* Ensure errors are cleared when reporting a problem
* Add clear all and internationalization
* Fix trailing comma issue
* fix lints
* Use Formatted Text component
* Move error list out of channel
* Add mobile prefix to i18n id for connection error
* Set shouldRender to true in RightMenuDrawerItem.defaultProps
* Update component name for RightMenuDrawerItem
* Clean up propTypes in RightMenuDrawerItem
* Clean up styles in RightMenuDrawerItem
* Use selector to filter displayable errors
* Clarify code for constructing wrapper style in ErrorList
* Avoid indenting email body for error report
* Remove extraneous params from errors actions
* Rename action type for logging errors
* Rename action for logging errors
* Set shouldRender to true in RightMenuDrawerItem.defaultProps
* Make logged errors displayable by default
* Don't log error when websocket connection is closed
* Hide button to dismiss all errors if ShowErrorsList isn't enabled
* Display only last error in alert bar when ShowErrorsList is disabled
* Add error logging where missing in actions
* Always show button to report problem
* Only include errors in report problem email if any have been logged
* Clarify subject of report problem email
* Set ShowErrorsList to false in default config.json
* Remove unused component + translation for connection errors
* Capture entire error object not just message
* Display fallback if error.message is blank
* Log errors in login actions
* Fix construction of errors email body
* Group addDatesToPostList options into object
* Clean up imports in PostList
* Dry up code for adding dates to posts in PostList
* Allow user to load more posts in channel post list
* Load more posts upon scrolling to end instead of with button
* Wait for initial posts to be loaded before loading more
* Return data in getPosts actions
* Check how many posts were fetched to determine if there are more
* Insert load-more-posts into list in PostList not post_utils.js
* Rename component for LoadMorePosts
* Use LoadMorePosts to indicate if more posts are loading
* Only try to load more posts if initial posts have been loaded
* Don’t show LoadMorePosts if posts list is empty
* Don’t try to load more posts if first post has been loaded
* Don’t show LoadMorePosts if first post has been loaded
* Set hasFirstPost in willReceiveProps of PostList
* Use constant for load-more-posts token string
* Only show LoadMorePosts if pagination is enabled on PostList
* Fix logic for determining if posts loaded in PostList
* Ensure PostList ListView rerenders
* Move load more posts logic into ChannelPostList
* Remove unused getTheme from ChannelPostList container
* Avoid clever variable assignment in LoadMorePosts