Files
Tom Moor 1a893b0e45 Group sync framework (#11684)
Adds group sync from external authentication providers, allowing team group memberships to be automatically managed based on provider data on sign-in in the future.
2026-03-14 23:02:20 -04:00

27 lines
718 B
TypeScript

import type Group from "@server/models/Group";
import presentExternalGroup from "./externalGroup";
/**
* Presents a group for the API response.
*
* @param group - the group to present.
* @returns the presented group object.
*/
export default async function presentGroup(group: Group) {
const externalGroup = group.externalGroups?.[0];
return {
id: group.id,
name: group.name,
description: group.description,
externalId: group.externalId,
memberCount: await group.memberCount,
disableMentions: group.disableMentions,
externalGroup: externalGroup
? presentExternalGroup(externalGroup)
: undefined,
createdAt: group.createdAt,
updatedAt: group.updatedAt,
};
}