
* refactored settings/team landing page * changed team edit flow, WIP * merge conflict fix for teams.tsx * minor fixes to edit team, WIP * invite-member and disband team APIs attached inside edit-team page * added remove-member API in edit-team page, minor fixes * minor code fix, WIP * WIP * add logo, bio, branding to team schema * bio, logo, branding, slug patch API and minor code fix-- WIP * fn to Disband team directly from the dropdown menu in settings/teams page, removed debug remnants --WIP * Pull latest data after an action in settings/teams-edit page * added slug conflict check at Patch time * code clean-up * initial change request fixes --WIP * prop type fix and add warn button color theme --WIP * added warn Button to Dialog * remaining change request fixes * added noop from react-query * updated invited team-list design * prettier fix for api/teams/profile * removed noop import and added custom noop * minor Button fix * requested changes addressed
31 lines
800 B
TypeScript
31 lines
800 B
TypeScript
import MemberListItem from "./MemberListItem";
|
|
import { Member } from "@lib/member";
|
|
|
|
export default function MemberList(props: {
|
|
members: Member[];
|
|
onRemoveMember: (text: Member) => void;
|
|
onChange: (text: string) => void;
|
|
}) {
|
|
const selectAction = (action: string, member: Member) => {
|
|
switch (action) {
|
|
case "remove":
|
|
props.onRemoveMember(member);
|
|
break;
|
|
}
|
|
};
|
|
|
|
return (
|
|
<div>
|
|
<ul className="px-4 mb-2 bg-white border divide-y divide-gray-200 rounded">
|
|
{props.members.map((member) => (
|
|
<MemberListItem
|
|
onChange={props.onChange}
|
|
key={member.id}
|
|
member={member}
|
|
onActionSelect={(action: string) => selectAction(action, member)}
|
|
/>
|
|
))}
|
|
</ul>
|
|
</div>
|
|
);
|
|
}
|