import { useCallback, type ReactNode } from "react";
import { VirtualList } from "../virtual/VirtualListEngine";
import styles from "./VirtualPage.module.scss";
export type VirtualPageSection = {
key: string;
estimatedHeight: number;
content: ReactNode;
};
export function VirtualPage({ title, sections, className, contentClassName }: { title?: ReactNode; sections: VirtualPageSection[]; className?: string; contentClassName?: string }) {
const getKey = useCallback((section: VirtualPageSection) => section.key, []);
const estimateSize = useCallback((section: VirtualPageSection) => section.estimatedHeight, []);
const renderItem = useCallback((section: VirtualPageSection, { index }: { index: number }) =>
{index === 0 && title != null && {title}
}
{section.content}
, [title]);
return ;
}