import React from "react"; import {StyleSheet} from "react-native"; import {Image, Text, TouchableOpacity, View} from "react-native-ui-lib"; import RemoveAssigneeBtn from "./RemoveAssigneeBtn"; import {useGetFamilyMembers} from "@/hooks/firebase/useGetFamilyMembers"; const AssigneesDisplay = ({selectedAttendees, setSelectedAttendees}: { selectedAttendees: string[], setSelectedAttendees: (value: React.SetStateAction) => void }) => { const {data: members} = useGetFamilyMembers(true); const selectedMembers = members?.filter((x) => selectedAttendees?.includes(x?.uid!)); const getInitials = (firstName: string, lastName: string) => { return `${firstName.charAt(0)}${lastName.charAt(0)}`; }; const removeAttendee = (uid: string) => { setSelectedAttendees((prev) => prev.filter((x) => x !== uid)); } return ( {selectedMembers?.map((member) => ( removeAttendee(member.uid!)}> {member?.pfp ? ( } /> ) : ( {getInitials(member.firstName, member.lastName)} )} ))} {selectedAttendees?.length === 0 && No attendees added} ); }; const styles = StyleSheet.create({ assigneeWrapper: { position: 'relative', width: 58.08, aspectRatio: 1, }, image: { aspectRatio: 1, width: '100%', borderRadius: 100, // Makes the image circular overflow: 'hidden', }, initialsCircle: { justifyContent: 'center', alignItems: 'center', borderRadius: 100, // Circular shape width: '100%', height: '100%', }, initialsText: { color: '#fff', fontSize: 24, fontWeight: 'bold', }, }); export default AssigneesDisplay;