refactor: remove loadedPages and fetchingPages state

Remove state management for tracking loaded/fetching pages:
- Remove loadedPages Map (all pages are loaded upfront now)
- Remove fetchingPages Set (no dynamic fetching anymore)
- Remove setState calls for these from reset effect
- Simplify state initialization

Since all pages are fetched in a single query, we no longer need
to track which pages are loaded vs loading.

🤖 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-17 10:47:31 -06:00
parent fbb035b12b
commit 90fb88b72a

View File

@@ -134,7 +134,7 @@ function PreviewContent({
// Always virtualize multi-page worksheets for performance // Always virtualize multi-page worksheets for performance
const shouldVirtualize = totalPages > 1 const shouldVirtualize = totalPages > 1
// Track which pages are visible in viewport // Initialize visible pages - start with first page only
const [visiblePages, setVisiblePages] = useState<Set<number>>(() => new Set([0])) const [visiblePages, setVisiblePages] = useState<Set<number>>(() => new Set([0]))
// Track which pages are currently being fetched // Track which pages are currently being fetched
@@ -152,6 +152,11 @@ function PreviewContent({
setFetchingPages(new Set()) setFetchingPages(new Set())
pageRefs.current = [] pageRefs.current = []
setRefsReady(false) setRefsReady(false)
// Update loaded pages with new pages
const map = new Map<number, string>()
pages.forEach((page, index) => map.set(index, page))
setLoadedPages(map)
}, [pages]) }, [pages])
// Fetch pages as they become visible // Fetch pages as they become visible