Currently, we have code that handles selecting vthe iewer. App is navigation to personal DM thread, this is handled here on web and here on native.
The only edge case is when the Farcaster thread type is selected and users select viewer, then it still navigates to a pending private thread for the Farcaster protocol, which is not supported. To mitigate that, we just need to exclude viewers from users who support the Farcaster protocol.