fix: enable page virtualization in worksheet creator

Only pass initialPreview to WorksheetPreview when viewing a shared
worksheet (isFromShare). In the worksheet creator, we want
virtualization enabled for performance with multi-page worksheets.

This ensures:
- Worksheet creator: virtualizes pages (lazy render)
- Shared worksheets: shows all pages immediately (no lazy loading)

The page indicator now works correctly in both modes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Thomas Hallock 2025-11-11 16:26:54 -06:00
parent 3d157e32ed
commit b675f6c96e
2 changed files with 6 additions and 2 deletions

View File

@ -137,7 +137,7 @@ export function AdditionWorksheetClient({
<Panel defaultSize={75} minSize={60}>
<PreviewCenter
formState={debouncedFormState}
initialPreview={initialPreview}
initialPreview={isFromShare ? initialPreview : undefined}
onGenerate={handleGenerate}
status={status}
/>

View File

@ -115,7 +115,11 @@ function PreviewContent({ formState, initialData, isScrolling = false }: Workshe
// When initialData is provided (e.g., shared worksheets), show all pages immediately
// Otherwise use virtualization for performance
// Store this as state so it persists after initialData is consumed
const [shouldVirtualize] = useState(() => !initialData)
const [shouldVirtualize] = useState(() => {
const shouldVirt = !initialData
console.log('[PAGE INDICATOR] Determining shouldVirtualize - initialData:', initialData ? 'provided' : 'none', '-> shouldVirtualize:', shouldVirt)
return shouldVirt
})
// Initialize visible pages based on whether we should virtualize
const [visiblePages, setVisiblePages] = useState<Set<number>>(() => {