mirror of
https://github.com/luckyyzh/pi-agent-integrated.git
synced 2026-10-03 02:59:35 +00:00
23 lines
799 B
TypeScript
23 lines
799 B
TypeScript
export const VISIBLE_PAGE_SIZE = 50;
|
|
|
|
export function getVisibleRenderWindow(totalCount: number, visibleCount: number): {
|
|
startIndex: number;
|
|
hasMore: boolean;
|
|
} {
|
|
const clampedVisibleCount = Math.min(Math.max(visibleCount, 0), Math.max(totalCount, 0));
|
|
const startIndex = Math.max(0, totalCount - clampedVisibleCount);
|
|
return { startIndex, hasMore: startIndex > 0 };
|
|
}
|
|
|
|
export function getNextVisibleCount(currentVisibleCount: number, pageSize = VISIBLE_PAGE_SIZE): number {
|
|
return currentVisibleCount + pageSize;
|
|
}
|
|
|
|
export function captureScrollDistance(scrollHeight: number, scrollTop: number): number {
|
|
return scrollHeight - scrollTop;
|
|
}
|
|
|
|
export function restoreScrollTop(scrollHeight: number, savedDistance: number): number {
|
|
return Math.max(0, scrollHeight - savedDistance);
|
|
}
|