[lib] Join a community on an overridden keyserver
Summary:
In order to join a keyserver we need to make sure that the user is authenticated. To do that, we need to make sure that the keyserver is present in the store and that the keyserver connection handler successfully performed the auth.
The solution is to replace a simple async action with creating a new promise, that is resolved or rejected after a timeout or after a successful or unsuccessful join operation.
Depends on D10991
Test Plan:
Check on web that:
- An invalid link is displayed as invalid
- We are able to accept a link to a keyserver we're authenticated with
- A timeout is performed if the auth takes too long
I haven't tested if joining a community works when the handler performs successful auth - this requires first testing https://linear.app/comm/issue/ENG-6114/final-testing-task
Reviewers: michal, bartek, rohan, inka
Reviewed By: inka
Subscribers: ashoat
Differential Revision: https://phab.comm.dev/D10992