Implement multi-user support
With the new storage changes, where the cache and the information are stored on a by-user basis, we should be able to implement the multiuser support.
-
Change the session storage to support multiple users -
Implement the user selector and login with other user options -
Implement the user change logic - Ensure to fire the logout event so all the previous user data is cleared from the stores
- Maybe it would be good to show the splash screen for a moment while switching users to hide the re-render of the main screen
Design assets and notes
- Click through: https://www.sketch.com/s/d8dc6725-6ebb-4dcf-a558-958b8107779e/a/YGLZqee/play
- Revise nav drawer. Inclusion of switch profile icon: https://www.sketch.com/s/d8dc6725-6ebb-4dcf-a558-958b8107779e/a/3OjO9GZ
- New switch channel screen: https://www.sketch.com/s/d8dc6725-6ebb-4dcf-a558-958b8107779e/a/7yJyvg2
- Switch channel action sheet (from ellipsis): https://www.sketch.com/s/d8dc6725-6ebb-4dcf-a558-958b8107779e/a/oYJMMPx
There will be dependancy to have a 'modalised' variation of the login and registration processes to allow the user to login/register without losing context. I will create a follow up task for login / registration and will reference here.
- Unseen notification count is to be displayed per channel
- Tapping on a channel will switch the user and navigate to the newsfeed of the respective channel. Would be good to throw a toast notification here. e.g.
Switched to @channelName
- When tapping on the ellipsis icon, an action sheet is displayed. They may explicitly 'Switch channel' or 'Logout'. The switch channel menu option would not appear if the selected channel is active.
- Logging out from here would then bring the user to the next available channel. Where the user logs out of the the only available channel, the user would then be redirected to the home screen.
Issues
Edited by Juan Manuel Solaro