Implementation
Future<OrgInvitationModel> createInvitation({
required String orgId,
required String email,
String role = 'member',
}) async {
final userId = await _client.rpc(
'find_user_by_email',
params: {'p_email': email},
);
if (userId == null) {
throw StateError('No user found with email: $email');
}
final response = await _client
.from('org_invitations')
.insert({
'org_id': orgId,
'invited_user_id': userId as String,
'invited_by_user_id': _userId,
'role': role,
})
.select('*, organizations(name)')
.single();
return OrgInvitationModel.fromJson(response);
}