mirror of
https://github.com/urosran/cally.git
synced 2025-07-10 15:17:17 +00:00
Merge branch 'dev'
# Conflicts: # components/pages/calendar/MonthCalendar.tsx
This commit is contained in:
@ -7,26 +7,36 @@ import { ProfileType, useAuthContext } from "@/contexts/AuthContext";
|
||||
import { useAtom } from "jotai";
|
||||
import { selectedUserAtom } from "@/components/pages/calendar/atoms";
|
||||
|
||||
type UserProfile = {
|
||||
uid: string;
|
||||
firstName: string;
|
||||
lastName: string;
|
||||
userType: string;
|
||||
eventColor: string;
|
||||
pfp?: string;
|
||||
};
|
||||
|
||||
const UsersList = () => {
|
||||
const { user: currentUser } = useAuthContext();
|
||||
const { data: familyMembers, refetch: refetchFamilyMembers } =
|
||||
useGetFamilyMembers();
|
||||
const [selectedUser, setSelectedUser] = useAtom(selectedUserAtom);
|
||||
const [selectedUser, setSelectedUser] = useAtom<UserProfile | null>(selectedUserAtom);
|
||||
|
||||
useEffect(() => {
|
||||
refetchFamilyMembers();
|
||||
}, []);
|
||||
|
||||
const sortedMembers = useMemo(() => {
|
||||
const filtered = familyMembers
|
||||
?.filter((member) => member.userType !== ProfileType.FAMILY_DEVICE);
|
||||
const filtered = familyMembers?.filter(
|
||||
(member) => member.userType !== ProfileType.FAMILY_DEVICE
|
||||
) || [];
|
||||
|
||||
const currentUserData = filtered?.find(m => m.uid === currentUser?.uid);
|
||||
const parents = filtered?.filter(m => m.userType === ProfileType.PARENT && m.uid !== currentUser?.uid) || [];
|
||||
const children = filtered?.filter(m => m.userType === ProfileType.CHILD && m.uid !== currentUser?.uid) || [];
|
||||
const caregivers = filtered?.filter(m => m.userType === ProfileType.CAREGIVER && m.uid !== currentUser?.uid) || [];
|
||||
const currentUserData = filtered.find(m => m.uid === currentUser?.uid);
|
||||
const parents = filtered.filter(m => m.userType === ProfileType.PARENT && m.uid !== currentUser?.uid);
|
||||
const children = filtered.filter(m => m.userType === ProfileType.CHILD && m.uid !== currentUser?.uid);
|
||||
const caregivers = filtered.filter(m => m.userType === ProfileType.CAREGIVER && m.uid !== currentUser?.uid);
|
||||
|
||||
const familyViewOption = {
|
||||
const familyViewOption: UserProfile = {
|
||||
uid: 'family-view',
|
||||
firstName: 'Family',
|
||||
lastName: 'View',
|
||||
@ -66,8 +76,11 @@ const UsersList = () => {
|
||||
key={index}
|
||||
source={{ uri: member.pfp }}
|
||||
style={styles.pfp}
|
||||
borderRadius={200}
|
||||
imageStyle={{ borderWidth: 2, borderColor: "red" }}
|
||||
imageStyle={{
|
||||
borderRadius: 200,
|
||||
borderWidth: 2,
|
||||
borderColor: member.eventColor || colorMap.teal
|
||||
}}
|
||||
/>
|
||||
) : (
|
||||
<View
|
||||
@ -77,8 +90,8 @@ const UsersList = () => {
|
||||
backgroundColor={member.eventColor || colorMap.teal}
|
||||
>
|
||||
<Text color="white">
|
||||
{member.firstName.at(0)}
|
||||
{member.lastName.at(0)}
|
||||
{member.firstName.charAt(0)}
|
||||
{member.lastName.charAt(0)}
|
||||
</Text>
|
||||
</View>
|
||||
)}
|
||||
|
@ -73,7 +73,7 @@ export const EventCell: React.FC<EventCellProps> = React.memo((
|
||||
const styles = StyleSheet.create({
|
||||
eventCell: {
|
||||
flex: 1,
|
||||
borderRadius: 4,
|
||||
borderRadius: 5,
|
||||
paddingHorizontal: 8,
|
||||
paddingBottom: 8,
|
||||
height: '100%',
|
||||
|
Reference in New Issue
Block a user