import { languages, languageSelect } from "@/constants/languages" import { profileEdit } from "@/constants/routes/myPages" import { getProfile } from "@/lib/trpc/memoizedRequests" import { CalendarIcon, EmailIcon, GlobeIcon, LocationIcon, LockIcon, PhoneIcon, } from "@/components/Icons" import CommunicationSlot from "@/components/MyPages/myprofile/communication/communication" import CreditCardSlot from "@/components/MyPages/myprofile/creditCards/creditCards" import MembershipCardSlot from "@/components/MyPages/myprofile/membershipCards/membershipcards" import Header from "@/components/Profile/Header" import Button from "@/components/TempDesignSystem/Button" import Divider from "@/components/TempDesignSystem/Divider" import Link from "@/components/TempDesignSystem/Link" import Body from "@/components/TempDesignSystem/Text/Body" import Title from "@/components/TempDesignSystem/Text/Title" import { getIntl } from "@/i18n" import { getLang } from "@/i18n/serverContext" import styles from "./profile.module.css" export default async function Profile() { const intl = await getIntl() const lang = getLang() const user = await getProfile() if (!user || "error" in user) { return null } const addressParts = [] if (user.address.streetAddress) { addressParts.push(user.address.streetAddress) } if (user.address.city) { addressParts.push(user.address.city) } if (user.address.country) { addressParts.push(user.address.country) } const addressOutput = addressParts.length > 0 ? addressParts.join(", ") : intl.formatMessage({ id: "N/A" }) const defaultLanguage = languages[lang] const language = languageSelect.find((l) => l.value === user.language) return ( <>
{intl.formatMessage({ id: "Welcome" })} {user.name}
{intl.formatMessage({ id: "Date of Birth" })} {user.dateOfBirth}
{intl.formatMessage({ id: "Phone number" })} {user.phoneNumber}
{intl.formatMessage({ id: "Language" })} {language?.label ?? defaultLanguage}
{intl.formatMessage({ id: "Email" })} {user.email}
{intl.formatMessage({ id: "Address" })} {addressOutput}
{intl.formatMessage({ id: "Password" })} **********
) }