added "members" for an event that help the admins to moderate. members must be invited via email.
This commit is contained in:
@@ -331,10 +331,12 @@ export type EventMember = {
|
||||
id: number;
|
||||
name: string;
|
||||
email: string | null;
|
||||
role: 'tenant_admin' | 'member' | 'guest' | string;
|
||||
role: 'tenant_admin' | 'member';
|
||||
status?: 'pending' | 'active' | 'invited' | string;
|
||||
joined_at?: string | null;
|
||||
avatar_url?: string | null;
|
||||
permissions?: string[] | null;
|
||||
user_id?: number | null;
|
||||
};
|
||||
|
||||
type EventListResponse = { data?: JsonValue[] };
|
||||
@@ -815,6 +817,12 @@ function normalizeMember(member: JsonValue): EventMember {
|
||||
status: member.status ?? 'active',
|
||||
joined_at: member.joined_at ?? member.created_at ?? null,
|
||||
avatar_url: member.avatar_url ?? member.avatar ?? null,
|
||||
permissions: Array.isArray(member.permissions)
|
||||
? (member.permissions as string[])
|
||||
: member.permissions
|
||||
? String(member.permissions).split(',').map((entry) => entry.trim())
|
||||
: null,
|
||||
user_id: member.user_id ?? null,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1695,7 +1703,10 @@ export async function getEventMembers(eventIdentifier: number | string, page = 1
|
||||
};
|
||||
}
|
||||
|
||||
export async function inviteEventMember(eventIdentifier: number | string, payload: { email: string; role?: string; name?: string }): Promise<EventMember> {
|
||||
export async function inviteEventMember(
|
||||
eventIdentifier: number | string,
|
||||
payload: { email: string; role: EventMember['role']; name?: string }
|
||||
): Promise<EventMember> {
|
||||
const response = await authorizedFetch(
|
||||
`/api/v1/tenant/events/${encodeURIComponent(String(eventIdentifier))}/members`,
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user