In order to support a timeout correctly on both platforms we had to change how we store the status on native.
Added a new status which represents a timeout and is handled in the same way as an invalid link - the only difference is a displayed message.
https://linear.app/comm/issue/ENG-7924/improve-invite-link-join-timeout-handling
Web timeout
Web invalid
Web success
Native timeout
Native invalid
Native success