Workspaces Page

The workspaces page is the first page displayed after logging in. If the user is logging in with a join link, or has no workspaces, they will be shown the Join Workspace component. If they have workspaces and have not logged in with a join link, then they will be directed to the Active Workspaces component. If there was an error loading the user’s workspaces, the user is signed out.

Active Workspaces Component

This component displays a list of the user’s active workspaces. If the user has no active workspaces, this component is not visible.

When the component is initialized, it will retrieve the user’s active workspaces. If the user logged in with a deep link, the application will search for a user-workspace pair with access to the deep linked instance. If one is found, the user will enter that workspace with that user account and be navigated to the instance. If no valid deep link is present, nothing happens. If the user has only 1 workspace available, the user will be signed into that workspace.

When the user selects a workspace from the list of active workspaces, they will be signed into that workspace.

Join Workspaces Component

The JoinWorkspace component allows an authenticated user to join a workspace if they have a valid join key.

The user will enter the JoinWorkspace component with an action name and a join key. By default, the join action is “No Action” and the join key is an empty GUID.

In the OnInitializedAsync method, the ActionName is checked. If the action is “Join” and there is a provided join key, the key is validated. If the action is “JoinDefault”, the default join key is validated. If the action is “JoinExistingPortal” the join key and portal guid are validated. If the action name is “JoinWorkspaceOwnerAdmin” the command is validated, then if the command is valid, the command is executed. If the ActionName is “JoinServerOwnerAdmin”, the command is validated and then executed.

Join links are validated by connecting to the API and querying the database. If the join link is valid, the join page content is loaded and displayed. Once the user has joined the database, if the join link creates an active user, the component navigates to the user’s default application. If the join link creates an inactive user, the component loads and displays the invite’s specified post-join content.

Updated on August 15, 2023

Was this article helpful?

Related Articles

Need Support?
Can’t find the answer you’re looking for? Don’t worry we’re here to help!
Contact Support

Leave a Comment