Page MenuHomePhabricator

[native] Create invitation modal
ClosedPublic

Authored by tomek on Apr 19 2023, 5:34 AM.
Tags
None
Referenced Files
F3389225: D7524.id25765.diff
Fri, Nov 29, 6:02 PM
Unknown Object (File)
Tue, Nov 26, 6:20 AM
Unknown Object (File)
Fri, Nov 8, 11:57 AM
Unknown Object (File)
Fri, Nov 8, 9:53 AM
Unknown Object (File)
Fri, Nov 8, 7:42 AM
Unknown Object (File)
Mon, Nov 4, 6:50 AM
Unknown Object (File)
Oct 28 2024, 1:26 AM
Unknown Object (File)
Oct 28 2024, 1:26 AM
Subscribers

Details

Summary

After user clicks a link, we're going to call link verification endpoint. Based on the result, we will navigate user to this modal.

invite-invalid.png (2×1 px, 226 KB)
invite-valid.png (2×1 px, 220 KB)

Depends on D7522

Test Plan

Open a link that:

  • is valid => user should see two buttons, one for joining and one for canceling
  • is invalid => user should see an error message
  • points to a community where the user is a member => modal should not be displayed

Diff Detail

Repository
rCOMM Comm
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

native/navigation/invite-link-modal.react.js
62

This function is introduced in later diff

tomek requested review of this revision.Apr 19 2023, 6:03 AM

Would it make sense to add an invariant to check that this modal is not called with `status: 'already_joined'? Currently there is nothing stopping someone from doing that, because there is no type checking. And the modal would be displayed without errors, with a message that would be incorrect and misleading.

This revision is now accepted and ready to land.Apr 21 2023, 2:25 AM
In D7524#223171, @inka wrote:

Would it make sense to add an invariant to check that this modal is not called with `status: 'already_joined'? Currently there is nothing stopping someone from doing that, because there is no type checking. And the modal would be displayed without errors, with a message that would be incorrect and misleading.

Yeah, adding some validation is a good idea!

Do not show a modal in already_joined state

In D7524#226197, @tomek wrote:
In D7524#223171, @inka wrote:

Would it make sense to add an invariant to check that this modal is not called with `status: 'already_joined'? Currently there is nothing stopping someone from doing that, because there is no type checking. And the modal would be displayed without errors, with a message that would be incorrect and misleading.

Yeah, adding some validation is a good idea!

Instead of using an invariant I decided that we can simply close the modal. This is consistent with our approach that a modal shouldn't be opened when a user is a member of the community.

This revision was automatically updated to reflect the committed changes.