import { noop } from 'lodash/fp';
import { GroupClass, GroupResource } from 'models/group';
import { getUserDisplayName, UserResource } from 'models/user';
-import { ResourceKind } from 'models/resource';
+import { Resource, ResourceKind } from 'models/resource';
import { ListResults } from 'services/common-service/common-service';
export interface Participant {
uuid: string;
}
-type ParticipantResource = GroupResource & UserResource;
+type ParticipantResource = GroupResource | UserResource;
interface ParticipantSelectProps {
items: Participant[];
suggestions: ParticipantResource[];
}
-const getDisplayName = (item: GroupResource & UserResource) => {
+const getDisplayName = (item: GroupResource | UserResource) => {
switch (item.kind) {
case ResourceKind.USER:
return getUserDisplayName(item, true);
case ResourceKind.GROUP:
return item.name;
default:
- return item.uuid;
+ return (item as Resource).uuid;
}
};