import { FamilyPostForm, InviteMemberForm } from "@/components/family-guard-actions"; import { PanelShell } from "@/components/panel-shell"; import { requireFamilyWorkspace } from "@/lib/family-page"; import { formatDateTime } from "@/lib/panel-format"; import { requireCaregiverSession } from "@/lib/page-auth"; import { getCaregiverDisplayName } from "@/lib/session"; export const dynamic = "force-dynamic"; const roleLabel = { ADMIN: "管理员", CAREGIVER: "照护成员", CARING: "关怀成员" } as const; const avatarStyles = [ { background: "rgba(192,90,30,.1)", color: "var(--accent)" }, { background: "rgba(101,118,90,.12)", color: "var(--olive)" }, { background: "rgba(33,30,26,.06)", color: "var(--muted)" }, ]; export default async function FamilyPage() { const caregiver = await requireCaregiverSession("/family"); const workspace = await requireFamilyWorkspace(caregiver.id); const deviceUuid = workspace.elderProfile.elderDevice.deviceUuid; return (

家庭动态

{workspace.posts.length ? workspace.posts.map((post) => (
{post.elderAuthored ? `${workspace.elderProfile.preferredName}通过安智伴说` : post.author?.nickname || post.author?.username || "家里人"} {formatDateTime(post.createdAt)}

{post.content}

{post.visibility === "FAMILY_ONLY" ? "仅家人" : post.visibility === "ELDER_ONLY" ? "只给长辈" : "全家可见"}
)) :
发出第一条家庭动态,让关心流动起来。
}

家庭成员

{workspace.memberships.map((member, index) => { const name = member.caregiver.nickname || member.caregiver.username || "家庭成员"; return (
{name.slice(-1)} {name} {member.relationLabel || "家人"}{member.dutyOrder ? ` · 值守顺序 ${member.dutyOrder}` : ""} {roleLabel[member.role]}
); })}

邀请家人

链接 24 小时有效
); }