diff --git a/app/(auth)/_layout.tsx b/app/(auth)/_layout.tsx index 31de7c7..3f470fe 100644 --- a/app/(auth)/_layout.tsx +++ b/app/(auth)/_layout.tsx @@ -23,9 +23,16 @@ import NavToDosIcon from "@/assets/svgs/NavToDosIcon"; import NavBrainDumpIcon from "@/assets/svgs/NavBrainDumpIcon"; import NavCalendarIcon from "@/assets/svgs/NavCalendarIcon"; import NavSettingsIcon from "@/assets/svgs/NavSettingsIcon"; +import { useAtom } from "jotai"; +import { + settingsPageIndex, + userSettingsView, +} from "@/components/pages/calendar/atoms"; export default function TabLayout() { const { mutateAsync: signOut } = useSignOut(); + const [pageIndex, setPageIndex] = useAtom(settingsPageIndex); + const [userView, setUserView] = useAtom(userSettingsView); return ( props.navigation.navigate("calendar")} + pressFunc={() => { + props.navigation.navigate("calendar"); + setPageIndex(0); + setUserView(true); + }} icon={} /> props.navigation.navigate("grocery")} + pressFunc={() => { + props.navigation.navigate("grocery"); + setPageIndex(0); + setUserView(true); + }} icon={} /> @@ -95,21 +110,33 @@ export default function TabLayout() { color="#8005eb" title={"To Do's"} bgColor={"#f3e6fd"} - pressFunc={() => props.navigation.navigate("todos")} + pressFunc={() => { + props.navigation.navigate("todos"); + setPageIndex(0); + setUserView(true); + }} icon={} /> props.navigation.navigate("brain_dump")} + pressFunc={() => { + props.navigation.navigate("brain_dump"); + setPageIndex(0); + setUserView(true); + }} icon={} /> {/* signOut()} />*/} - - - setShowAddUserDialog(false)} - center - marginT-30 - > - Return to user settings - + + + + + {member.userType === ProfileType.PARENT + ? `Admin${ + member.uid === user?.uid ? " (You)" : "" + }` + : "Child"} + + setShowQRCodeDialog(val)} + showQRCodeDialog={showQRCodeDialog === member?.uid} + userId={member?.uid!} + /> + - + ))} + + )} - setShowNewUserInfoDialog(false)} - > - - - - - - New User Information - - { - setShowNewUserInfoDialog(false) - }}> - - - - + {!!caregivers.length && ( + <> + + Caregivers + + {caregivers?.map((member) => ( + + + + + {member.firstName} {member.lastName} + + + Caregiver + + - - - } - backgroundColor={Colors.grey60} - style={{borderRadius: 25}} - center - /> - { - }}> - - Upload User Profile Photo - - - + - Member Status - - setSelectedStatus(item)} - showSearch - floatingPlaceholder - style={styles.inViewPicker} - trailingAccessory={ - - - - } - > - - - - - - + setShowQRCodeDialog(val)} + showQRCodeDialog={showQRCodeDialog === member?.uid} + userId={member?.uid!} + /> + + ))} + + )} - - {selectedStatus === ProfileType.FAMILY_DEVICE - ? "Device Name" - : "First Name"} - - { - lNameRef.current?.focus() - }} - blurOnSubmit={false} - returnKeyType="next" - /> + {!!familyDevices.length && ( + <> + + Family Devices + + {familyDevices?.map((member, index) => ( + + + + {member.firstName} + + Family Device + + - {selectedStatus !== ProfileType.FAMILY_DEVICE && ( - <> - Last Name - { - emailRef.current?.focus() - }} - blurOnSubmit={false} - returnKeyType="next" + - /> - - )} + setShowQRCodeDialog(val)} + showQRCodeDialog={showQRCodeDialog === member?.uid} + userId={member?.uid!} + /> + + ))} + + )} + + - {selectedStatus !== ProfileType.FAMILY_DEVICE && ( - <> - Email Address (Optional) - - - )} + setShowNewUserInfoDialog(true), + style: styles.bottomButton, + }} + /> - - - ); + setShowAddUserDialog(false)} + panDirection={PanningProvider.Directions.DOWN} + > + + + Add a new user device + + + + + + setShowAddUserDialog(false)} + center + marginT-30 + > + Return to user settings + + + + + setShowNewUserInfoDialog(false)} + > + + + + + + New User Information + + { + setShowNewUserInfoDialog(false); + }} + > + + + + + + + + } + backgroundColor={Colors.grey60} + style={{ borderRadius: 25 }} + center + /> + {}}> + + Upload User Profile Photo + + + + + Member Status + + setSelectedStatus(item)} + showSearch + floatingPlaceholder + style={styles.inViewPicker} + trailingAccessory={ + + + + } + > + + + + + + + + + {selectedStatus === ProfileType.FAMILY_DEVICE + ? "Device Name" + : "First Name"} + + { + lNameRef.current?.focus(); + }} + blurOnSubmit={false} + returnKeyType="next" + /> + + {selectedStatus !== ProfileType.FAMILY_DEVICE && ( + <> + Last Name + { + emailRef.current?.focus(); + }} + blurOnSubmit={false} + returnKeyType="next" + /> + + )} + + {selectedStatus !== ProfileType.FAMILY_DEVICE && ( + <> + Email Address (Optional) + + + )} + + + + ); }; const styles = StyleSheet.create({ - dialogBtn: { - height: 47, - width: 279, - }, - dialogTitle: {fontFamily: "Manrope_600SemiBold", fontSize: 22}, - dialogBackBtn: { - fontFamily: "PlusJakartaSans_500Medium", - fontSize: 15, - color: "#a7a7a7", - }, - card: { - marginVertical: 15, - backgroundColor: "white", - width: "100%", - borderRadius: 15, - padding: 20, - }, - bottomButton: { - position: "absolute", - bottom: 80, - width: "100%", - }, - familyCard: { - marginBottom: 10, - borderRadius: 10, - backgroundColor: Colors.white, - width: "100%", - }, - inputField: { - fontFamily: "PlusJakartaSans_500Medium", - fontSize: 13, - color: "#565656", - borderRadius: 50, - paddingVertical: 12, - paddingHorizontal: 16, - backgroundColor: Colors.grey80, - marginBottom: 16, - borderColor: Colors.grey50, - borderWidth: 1, - height: 40, - }, - picker: { - borderRadius: 50, - paddingVertical: 12, - paddingHorizontal: 16, - backgroundColor: Colors.grey80, - marginBottom: 16, - borderColor: Colors.grey50, - borderWidth: 1, - marginTop: -20, - height: 40, - zIndex: 10, - }, - viewPicker: { - borderRadius: 50, - backgroundColor: Colors.grey80, - marginBottom: 16, - borderColor: Colors.grey50, - borderWidth: 1, - marginTop: 0, - height: 40, - zIndex: 10, - }, - inViewPicker: { - borderRadius: 50, - paddingVertical: 12, - paddingHorizontal: 16, - marginBottom: 16, - marginTop: -20, - height: 40, - zIndex: 10, - }, - label: { - marginBottom: 5, - fontSize: 12, - color: Colors.grey40, - }, - dialogCard: { - borderRadius: 10, - gap: 10, - }, - subTit: { - fontFamily: "Manrope_500Medium", - fontSize: 15, - }, - dialogBtnLbl: { - fontFamily: "PlusJakartaSans_500Medium", - fontSize: 15, - color: "white", - }, - divider: {height: 0.7, backgroundColor: "#e6e6e6", width: "100%"}, - jakarta12: { - fontFamily: "PlusJakartaSans_500Medium", - fontSize: 12, - color: "#a1a1a1", - }, - jakarta13: { - fontFamily: "PlusJakartaSans_500Medium", - fontSize: 13, - }, + dialogBtn: { + height: 47, + width: 279, + }, + dialogTitle: { fontFamily: "Manrope_600SemiBold", fontSize: 22 }, + dialogBackBtn: { + fontFamily: "PlusJakartaSans_500Medium", + fontSize: 15, + color: "#a7a7a7", + }, + card: { + marginVertical: 15, + backgroundColor: "white", + width: "100%", + borderRadius: 12, + paddingHorizontal: 21, + paddingVertical: 20, + }, + bottomButton: { + position: "absolute", + bottom: 80, + width: "100%", + }, + familyCard: { + marginBottom: 10, + borderRadius: 10, + backgroundColor: Colors.white, + width: "100%", + }, + inputField: { + fontFamily: "PlusJakartaSans_500Medium", + fontSize: 13, + color: "#565656", + borderRadius: 50, + paddingVertical: 12, + paddingHorizontal: 16, + backgroundColor: Colors.grey80, + marginBottom: 16, + borderColor: Colors.grey50, + borderWidth: 1, + height: 40, + }, + picker: { + borderRadius: 50, + paddingVertical: 12, + paddingHorizontal: 16, + backgroundColor: Colors.grey80, + marginBottom: 16, + borderColor: Colors.grey50, + borderWidth: 1, + marginTop: -20, + height: 40, + zIndex: 10, + }, + viewPicker: { + borderRadius: 50, + backgroundColor: Colors.grey80, + marginBottom: 16, + borderColor: Colors.grey50, + borderWidth: 1, + marginTop: 0, + height: 40, + zIndex: 10, + }, + inViewPicker: { + borderRadius: 50, + paddingVertical: 12, + paddingHorizontal: 16, + marginBottom: 16, + marginTop: -20, + height: 40, + zIndex: 10, + }, + label: { + marginBottom: 5, + fontSize: 12, + color: Colors.grey40, + }, + dialogCard: { + borderRadius: 10, + gap: 10, + }, + subTit: { + fontFamily: "Manrope_500Medium", + fontSize: 15, + }, + dialogBtnLbl: { + fontFamily: "PlusJakartaSans_500Medium", + fontSize: 15, + color: "white", + }, + divider: { height: 0.7, backgroundColor: "#e6e6e6", width: "100%" }, + jakarta12: { + fontFamily: "PlusJakartaSans_500Medium", + fontSize: 12, + color: "#a1a1a1", + }, + jakarta13: { + fontFamily: "PlusJakartaSans_500Medium", + fontSize: 13, + }, + pfp: { aspectRatio: 1, width: 37.03, borderRadius: 10.56 }, + userType: { + fontFamily: "Manrope_500Medium", + fontSize: 12, + color: "#858585", + }, + name: { + fontFamily: "Manrope_600SemiBold", + fontSize: 16, + }, }); export default MyGroup;