From f348a58616127e10f05b095ebba4353b10d71149 Mon Sep 17 00:00:00 2001 From: inokawa <48897392+inokawa@users.noreply.github.com> Date: Fri, 12 Jan 2024 11:27:18 +0900 Subject: [PATCH] Fix swr minify issue in Next.js --- src/core/store.ts | 4 +++- src/react/Virtualizer.tsx | 3 +-- src/react/WindowVirtualizer.tsx | 3 +-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/core/store.ts b/src/core/store.ts index 2be21fb6b..74b07cde5 100644 --- a/src/core/store.ts +++ b/src/core/store.ts @@ -175,7 +175,7 @@ export const createVirtualStore = ( elementsCount: number, itemSize: number = 40, ssrCount: number = 0, - cache: Cache = initCache(elementsCount, itemSize), + cacheSnapshot?: CacheSnapshot | undefined, shouldAutoEstimateItemSize?: boolean | undefined, startSpacerSize: number = 0, endSpacerSize: number = 0 @@ -195,6 +195,8 @@ export const createVirtualStore = ( : null; let _prevRange: ItemsRange = [0, 0]; + const cache = + (cacheSnapshot as Cache | undefined) || initCache(elementsCount, itemSize); const subscribers = new Set<[number, Subscriber]>(); const getTotalSize = (): number => computeTotalSize(cache); const getScrollableSize = (): number => diff --git a/src/react/Virtualizer.tsx b/src/react/Virtualizer.tsx index ba2520d28..4ddf383db 100644 --- a/src/react/Virtualizer.tsx +++ b/src/react/Virtualizer.tsx @@ -28,7 +28,6 @@ import { useLatestRef } from "./useLatestRef"; import { createResizer } from "../core/resizer"; import { ListItem } from "./ListItem"; import { CacheSnapshot, ScrollToIndexOpts } from "../core/types"; -import { Cache } from "../core/cache"; import { flushSync } from "react-dom"; import { useRerender } from "./useRerender"; import { useChildren } from "./useChildren"; @@ -208,7 +207,7 @@ export const Virtualizer = forwardRef( count, itemSize, ssrCount, - cache as unknown as Cache | undefined, + cache, !itemSize, startMargin, endMargin diff --git a/src/react/WindowVirtualizer.tsx b/src/react/WindowVirtualizer.tsx index ddd19f6a5..1409200a2 100644 --- a/src/react/WindowVirtualizer.tsx +++ b/src/react/WindowVirtualizer.tsx @@ -25,7 +25,6 @@ import { createWindowResizer } from "../core/resizer"; import { CacheSnapshot } from "../core/types"; import { CustomContainerComponent, CustomItemComponent } from "./types"; import { ListItem } from "./ListItem"; -import { Cache } from "../core/cache"; import { flushSync } from "react-dom"; import { useRerender } from "./useRerender"; import { useChildren } from "./useChildren"; @@ -151,7 +150,7 @@ export const WindowVirtualizer = forwardRef< count, itemSize, ssrCount, - cache as unknown as Cache | undefined, + cache, !itemSize );