[keysever/lib/native] extend joinThread to handle auto join functionality
Summary:
This diff introduces two new changes to joinThread to support auto join functionality
- We introduce an optional defaultSubscription option where we can define what we want the default subscription of the thread to be when we initially join.
- We introduce a new check to see if the thread the user is trying to join is a root thread that has a farcaster channel tag which means it is "discoverable" and we can bypass the standard threadPermission check
Depends on D12444
Test Plan:
EDIT: Confirmed that I was still getting the same result as the video below. Also confirmed that a user can still join a thread through the standard join thread button
Please see the demo video below
Reviewers: ashoat, kamil
Reviewed By: ashoat
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D12459