* Add icons for file types
* Compress image files for file type icons
* Add constants for file types
* Add utils for file metadata
* Add actions & reducers for fetching file attachments
* Render file attachments in posts
* Add reducers for handling files requests
* Refactor getFileType in file utils
* Refactor getFileIconPath in file utils
* Refactor getFormattedFileSize in file utils
* Trim trailing whitespace in getTruncatedFilename
* Style file attachment metadata
* Remove entity store reducer for files fetch failure
* Change filesForPost to fileIdsForPost in files store
* Use a selector for getFilesForPost
* Memoize getFilesForPost selector
* Dispatch postId with getFilesForPost
* Add test for getFilesForPost
* Upload seed file in getFilesForPost test
* Display correct icon for image attachments
* Fix reducers for receiving files for post
Expect response data to be array not object
* Style attachment post
* Merge headers (defaults + opts) in Client.doFetch
* Upload file as FormData
* Use form-data lib instead of built-in polyfill
* Associate file with post in getFilesForPost test
* Improve assertions in getFilesForPost test
* Check for createPost failure in getFilesForPost test
* Use correct post id in getFilesForPost test
* Use client not action to create post in getFilesForPost test
* Fix file upload in getFilesForPost test
* Add assertion for name of uploaded file
* Update attachment post style
* Fix spelling of loadFilesForPostIfNecessary
* Remove eslint-disable no-magic-numbers from file_utils.js
* Remove unused index prop from FileAttachment
* Clarify code for merging headers in Client.getOptions
* Dynamically truncate file attachment names
* Extract component for FileAttachmentIcon
* Use white bg for FileAttachmentIcon to match webapp styles
* Match webapp styles for file attachment borders
* Move file icon path lookup to FileAttachmentIcon
* Use more logical ordering for file type lookup
* Initial setup to delete channels
* Combine leave and delete
* Working delete when removing the current channel id delete
* Initial working delete with handling web sockets
* Move go back out of component
* Refactor alert function and handle after leave navigation
* Remove promise then
* Allow channel membership to default to empty object
* Ensure that channel is present to avoid method on undefined
* Remove view channel delete action
* Remove unused type
* Setup for leaving a channel (does not include navigating once successfully leaving)
* Initial setup to navigate from leaving a channel
* Conditionally render leave channel row based on default channel
* Use setInitial from inside the action
* Refactor navigating after leave
* Ensure that channel is not DM
* Rename to shouldRender
* Updated post rendering in center channel to include dates, display names, themeing, profile pictures, and threads
* Added status to ProfilePicture component
* Changed MemberListRow to use a ProfilePicture
* Removed unused prop
* Fixed incorrect copyright year on new file
* Removed unnecessary ref
* modal options and channel long press
* PureComponent optimization (#183)
* Bug fix when leaving the current channel
* Rebased with new navigation
* Add disabled drawer to unit test
* re-organize modal up in the stack and controlled by redux
* renaming modalOptions to optionsModal