'use client';

import { useSelectedLayoutSegment } from 'next/navigation';
import { PatientPickerRail } from '@/components/plans/patient-picker-rail';

/**
 * /plans 段布局 — 详情页的"一页式工作台"骨架。
 *
 * 选中某个 plan(/plans/[planId])时:固定左栏(选患者列)+ 右侧详情(原三列)= 4 列。
 * 布局挂在动态段**之上** → 切患者(planId 变)只重渲染右侧 page,左栏不重挂:
 * 筛选条件 / 已加载分页 / 滚动位置全部保留(这正是把列表并进详情页的意义)。
 * /plans 列表页本身(无 planId 段)不渲染左栏,维持原样(该页面后续弃用)。
 */
export default function PlansLayout({ children }: { children: React.ReactNode }) {
  // 下一层动态段的值:/plans → null;/plans/<planId> → planId
  const planId = useSelectedLayoutSegment();

  if (!planId) return <>{children}</>;

  return (
    <div className="flex h-screen overflow-hidden bg-slate-50">
      <PatientPickerRail currentPlanId={planId} />
      <div className="min-w-0 flex-1 overflow-y-auto">{children}</div>
    </div>
  );
}
