* Fix getting the youtube video id regardless where the id is defined in the link
* feedback review
* Simplify and add unit tests for getYouTubeVideoId
* 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
* 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
* 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
* 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
* 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
* Improvements on iOS Share Extension
* Switch NSUserDefaults with a file based solution
* create a new entities object instead of mutating
* Clarify the function for requiring emm authentication
* ensure entities is not a shallow copy
* 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 timeout for api calls that take too long
This will allow any api call that takes too long to fail faster.
Specially for Client4.createPost. If the api never returns the post is in a pending state and the user is not able to retry.
* Add canTimeout flag
* 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
* Track analytics for start time, channel and team switching
* Update analytics to include currentUserId and ip 0.0.0.0
* Include diagnostic id with every segment request
* feedback review