autoJoin function
Auto-joins organizations by email domain on sign-in.
Implementation
@riverpod
Future<void> autoJoin(Ref ref) async {
final authState = ref.watch(authStateProvider);
final state = authState.valueOrNull;
if (state == null) return;
if (state.event != AuthChangeEvent.signedIn) return;
final email = state.session?.user.email;
if (email == null || email.isEmpty) return;
try {
final ds = OrgDatasource(Supabase.instance.client);
await ds.autoJoinByDomain(email);
} catch (_) {
// Auto-join is best-effort; don't block sign-in
}
}