Commit graph

46 commits

Author SHA1 Message Date
Chris Duarte
2638a9c75d PLT-5517 Image file previewer (#344)
* PLT-5517 RN: Image file previewer

Add preview component and client routes
Add fade transition for modal
Add paging controls, title header, and info footer
Add drag to dismiss behavior
Fix android layout issues
Handle orientation change

* Fix tests

* Review feedback

* Review feedback
2017-03-17 09:04:35 -04:00
Chris Duarte
1e63ac2667 PLT-5599 RN: Modal options for Android (#353) 2017-03-16 15:13:36 -04:00
enahum
548633f5c0 PLT-5857 replace the service folder with mattermost-redux library (#348) 2017-03-14 10:52:24 -03:00
enahum
d852587268 Fix android error handler (#347) 2017-03-14 00:09:23 -03:00
Chris Duarte
d36dc3412a PLT-5492 Add Account Settings > Notifications (#323)
* PLT-5492 RN: Add Account Settings > Notifications

* Review feedback
2017-03-13 15:37:44 -03:00
enahum
6324f22095 PLT-5630 Implement push notifications and unread badge on app icon (#338)
* enable ios push notifications

* enable android push notifications

* NOTICE for push notification and message bar

* include message in noty

* re-wording notices

* feedback review
2017-03-13 09:51:21 -04:00
Chris Duarte
e17eb6c237 PLT-5709 Global error handler (#187)
* 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
2017-03-12 14:42:02 -03:00
enahum
f3dbb72f65 PLT-5836 Smooth transitions and add activity indicators (#339) 2017-03-10 20:52:52 -03:00
enahum
c13a436d18 Enable SAML authentication (#325)
* enable saml authentication

* Fix unit tests

* Fix android cookies

* Feedback review
2017-03-09 14:07:18 -03:00
enahum
ba582b2edc PLT-5606 Pre-fill the server URL from async storage if you have it. (#326) 2017-03-06 11:04:45 -05:00
enahum
c121097974 PLT-5587 Create channel (#300)
* PLT-5587 Create channel

* Feedback review

* hidding options in account settings
2017-02-27 16:17:18 -05:00
enahum
c1318fe834 PLT-5589 Reload configuration when the server config changes (#301) 2017-02-27 13:15:51 -05:00
Chris Duarte
a36702f7d4 PLT-5634 Add account settings scene (#297)
* PLT-5634 RN: Add account settings scene

* Rebase
2017-02-25 19:48:30 -03:00
Chris Duarte
b09dbbb79c PLT-5493 Add a profile scene that shows user information (#287)
* PLT-5493 React Native: Add a profile scene that shows user information

* Review feedback
2017-02-24 10:17:05 -03:00
enahum
e74ecfa5f2 PLT-5510 Show user is typing (#278)
* PLT-5510 Show user is typing

* Move autocomplete below the user typing
2017-02-20 17:39:20 -03:00
enahum
3eb7e377cf More Channels (#276)
* More Channels

* Fix cleaning search

* feeback review
2017-02-20 16:51:02 -03:00
Harrison Healey
6c527300d7 Improved how posts are loaded when switching to a channel (#265) 2017-02-20 16:33:39 -03:00
Chris Duarte
230cbf7530 Post draft persist (#271) 2017-02-18 15:06:49 -03:00
Chris Duarte
3b7a6df617 PLT-5530 Render placeholder icons + metadata for file attachments in posts list (#249)
* 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
2017-02-17 17:40:40 -05:00
enahum
51e8ee6ea2 More Direct Messages scene (#244)
* More Direct Messages scene

* Adding search_bar.js to mock tests

* Feedback review

* Address feedback review 2
2017-02-14 11:49:41 -05:00
Harrison Healey
249312b852 PLT-5252 Added Thread view (#239)
* Added Thread view

* Fixed added unit test

* Fixed copyright date on added file

* Moved scene-specific selector into service directory
2017-02-13 18:08:26 -03:00
Chris Duarte
e0631c2663 Store post drafts (#241) 2017-02-13 10:25:11 -05:00
Chris Duarte
263fd50887 Channel info delete (#222)
* 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
2017-02-09 09:12:44 -08:00
Chris Duarte
8c0f5c70d7 Manage member permissions (#223)
* Manage member permissions

* Review feedback
2017-02-08 13:01:17 -08:00
Chris Duarte
088a2c7737 Navigation Drawer and Modal (#220)
Navigation header now responds to theme changes
Improve channel selection transition
Implement navigation modal
Reword options modal
2017-02-08 12:16:24 -08:00
enahum
b3b3d9a39a Squashing several bugs (#221)
* Squashing several bugs

* Fix websocket tests
2017-02-08 10:28:27 -08:00
Chris Duarte
c933da341a Channel Add Members (#218)
* Channel Add Members

Add ability to select rows
Change member list to accept datasource instead of manage it’s own
Add navbar button
Add alert for empty member selection
Add batched method to send to server

* Feedback changes
2017-02-07 17:57:52 -08:00
Chris Duarte
89ebae1108 Channel info leave (#211)
* 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
2017-02-02 15:52:27 -05:00
Chris Duarte
c9e513f83b Team selection causes blank channel view fix (#203) 2017-01-31 09:08:25 -05:00
Chris Duarte
4cdc4b21a4 Channel members (#189)
* Channel members

Add scene
Add navigation
Add selector
Add channel member row
Move list view to component for reusability
Add user profile picture
Add list paging
Add onRowPress
Add section headers

* Review feedback
2017-01-30 19:38:31 -03:00
enahum
bfd70f742c Modal with options (#179)
* 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
2017-01-30 08:41:14 -05:00
enahum
79902e8ceb Mfa (#182)
* Adding MFA support

* specific actions on mfa

* Fix header on new navigation

* review feedback
2017-01-24 16:08:09 -05:00
Harrison Healey
cea81f6497 Reorganized navigation (#181)
* Moved ChannelDrawer into its own scene

* Moved RightSideMenu to a separate route

* Moved title back above scenes

* Moved right side menu into a separate scene

* Reorganized navigation so that it centers around ChannelView when logged in

* Stopped using NavigationExperimental to manage drawers

* Fixed copyright date

* Added unit tests for navigation drawers

* Renamed RightSideMenu to RightMenuDrawer

* Removed unnecessary ChannelDrawer style
2017-01-24 11:56:35 -03:00
Chris Duarte
d180f324c5 Select last channel viewed (#172)
* Select last channel viewed

Now saving last channel id to local storage

Reworked local storage saving

* Feedback review
2017-01-23 16:20:11 -03:00
enahum
a6b735ba28 Ability to remove DM's from channel drawer (#171)
* Ability to remove DM's from channel drawer

* review feedback

* Adding confirmation on removal
2017-01-23 10:26:19 -05:00
Chris Duarte
e0eb79656e Add channel-info (#164)
Adding channel info screen.
2017-01-20 15:17:28 -05:00
Chris Duarte
c94a0840fd Show town square when selecting a team (#166)
Now selects the first channel if the default channel can’t be found
2017-01-19 09:55:32 -05:00
Chris Duarte
677f7a8cb0 Auto select last team viewed (#161)
* WIP Autoselect last team viewed

* Auto select last team viewed

* Fix auto login in root.

* Fix per PR comments

Remove unused actions. Use currentTeam selector.
2017-01-17 09:27:53 -05:00
Harrison Healey
d0481605fb Add ability to post messages (#158)
* Fixed copyright date

* Removed unnecessary components folder from channel scene

* Added initial version of post textbox

* Moved getTheme into a proper selector

* Moved ChannelHeader into its own component

* Flipped post list so that the most recent posts appear at the bottom

* Moved post textbox value into redux view store

* Switched new components from PureRenderMixin to React.PureComponent
2017-01-13 10:40:00 -03:00
enahum
fdc9b5cc0e Bug fixes (#157)
* Fix team switch

* Fix getThemes

* Fix drawer unread indicators
2017-01-10 11:47:11 -05:00
enahum
81526fbb09 Channel drawer (#154)
* Channel list drawer
* Get channels by category
* Fix and connect websocket
* Fix Select first team using the team members

* create loadMe and fix login actions to loads the teams

* Add android back button handler for the channel drawer

* Channel drawer styling and functionality

* Mark channel as viewed and fixed reset unread counts

* Unread above/below indicators

* Improve performance replacing ScrollView with ListView

* Fix unread indicators

* Addressing review feedback
2017-01-03 19:49:28 -03:00
Harrison Healey
4ecd3758e7 Render posts for the current channel (#153)
* Added selectChannel action

* Fixed selected team not being cleared on logout

* Fixed posts and postsByChannel not being initialized correctly

* Added basic post rendering

* Renamed selectors files to be plural

* Removed empty file

* Fixed unit tests after merge

* Removing unnecessary code
2016-12-23 10:55:33 -03:00
enahum
7e426b6029 Add WebSocket support (#144)
* Add WebSocket support

* fix unit tests

* Add actions to websocket and fix unit tests
2016-12-21 12:54:23 -05:00
enahum
d2f2678880 Reauthenticate from stored token when app is reloaded (#137)
* Reauthenticate from stored token when app is reloaded

* Address feedback
2016-12-15 13:17:26 -05:00
Harrison Healey
61c4d8b585 Added basic theming support (#131)
* Moved all view action types into a single file

* Moved preferences into their own constants section

* Added basic theming support
2016-12-12 21:05:59 -03:00
enahum
e2f3f7b803 project folder structure (#107)
* project folder structure

* Moving store to be called from app folder
2016-12-09 10:34:17 -05:00